diff --git a/.tx/config b/.tx/config index a8ac07f0c8bb8ce9629dd1cbe50bbff891183816..e6fbdc34190b9844f5ecdeb8ef30c4d3c1254af8 100644 --- a/.tx/config +++ b/.tx/config @@ -332,6 +332,12 @@ source_file = htdocs/langs/en_US/suppliers.lang source_lang = en_US type = MOZILLAPROPERTIES +[dolibarr.supplier_proposal] +file_filter = htdocs/langs/<lang>/supplier_proposal.lang +source_file = htdocs/langs/en_US/supplier_proposal.lang +source_lang = en_US +type = MOZILLAPROPERTIES + [dolibarr.trips] file_filter = htdocs/langs/<lang>/trips.lang source_file = htdocs/langs/en_US/trips.lang diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a39f6b84a59b39453a774d63c8279fa71321658e..ab328c8e785c8a87bc6a1d4721292d449324e5eb 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,7 +4,7 @@ How to contribute to Dolibarr Bug reports and feature requests -------------------------------- -<a name=not-a-support-forum></a>*Note*: Issues are not a support forum. If you need help using the software, please use [the forums](http://www.dolibarr.org/forum). +<a name="not-a-support-forum"></a>*Note*: Issues are not a support forum. If you need help using the software, please use [the forums](http://www.dolibarr.org/forum). Issues are managed on [GitHub](https://github.com/Dolibarr/dolibarr/Issues). @@ -13,9 +13,9 @@ Issues are managed on [GitHub](https://github.com/Dolibarr/dolibarr/Issues). 4. Tell us the version you are using! 3. Write a report with as much detail as possible (Use [screenshots](https://help.github.com/articles/issue-attachments) or even screencasts and provide logging and debugging informations whenever possible). -We're still figuring out how to migrate old issues to GitHub. In the meantime, they are still available at [Doliforge](https://doliforge.org/projects/dolibarr). -<a name=code></a>Code + +<a name="code"></a>Code --------------------- ### Basic workflow @@ -26,7 +26,7 @@ We're still figuring out how to migrate old issues to GitHub. In the meantime, t 4. Commit and push your changes. 5. [Make a pull request](https://help.github.com/articles/creating-a-pull-request). -### <a name=branches></a>Branches +### <a name="branches"></a>Branches Unless you're fixing a bug, all pull requests should be made against the *develop* branch. @@ -40,7 +40,7 @@ Choose your base branch accordingly. ### General rules Please don't edit the ChangeLog file. File will be generated from your commit messages during release process by the project manager. -### <a name=commits></a>Commits +### <a name="commits"></a>Commits Use clear commit messages with the following structure: ``` @@ -98,8 +98,11 @@ If your pull request only contains one commit, GitHub will be smart enough to fi Otherwise, please be a bit verbose about what you're providing. Your Pull Request must pass the Continuous Integration checks. -Also, if you want to include a new external library (into htdocs/includes directory), please ask before to the project -leader to see if such a library can be accepted. +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 leader to see if such a library can be accepted. + +* if you add a new table, you must first create a page on http://wiki.dolibarr.org/index.php/Category:Table_SQL (copy an existing page changing its name to see it into this index page). Than ask the project leader if the new data model you plan to add can be accepted as you suggest. ### Resources [Developer documentation](http://wiki.dolibarr.org/index.php/Developer_documentation) diff --git a/ChangeLog b/ChangeLog index 4cf2322adbb0e1a3778b8e0ea15d60a28bb86490..9cb28633bfddc74c6c8f4d9de464704fc92711c6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -29,6 +29,63 @@ This is list of hooks modified: +***** ChangeLog for 3.8.2 compared to 3.8.1 ***** +FIX: Add a protection to not make release if ChangeLog was not generated. +FIX: 1/ update_extra() function must not be in "if(!empty(MAIN_DISABLE_CONTACTS_TAB)" test. 2/ Reindented code +FIX: #3240 +FIX: #3541 Bypass authentication when user was created using LDAP +FIX: #3605 deleting a shipping +FIX: #3661 Margin is not selected correctly when adding a product +FIX: #3689 Bug on workflow module +FIX: #3724 Bug: Blank page after cloning proposal if we changed client +FIX: #3726 Better support for PRODUCT_USE_OLD_PATH_FOR_PHOTO +FIX: #3726 Not showing images on product card +FIX: #3757 Can't set amount in a social contribution with some languages +FIX: #3786 Translation of select box. +FIX: #3841 creation of a task completed has not status set to finished by default +FIX: #3878 Storing and deleting files on emailing was done at wrong place +FIX: #3880 +FIX: #3882 +FIX: action not appear before an update because of a lack of line in action ressource +FIX: add tag myuser_job into ODT replacement +FIX: Avoid changing the state to a thirdparty who shouldn't be contacted anymore +FIX: bad calculation for stock value +FIX: Bad parameters +FIX: Bad picto for expense report +FIX: bad property so after creating an event from calendar, filter were lost. +FIX: bad stock valorisation +FIX: better fix to generate a PROV ref after clone +FIX: bug invoice classified in propale next update commonobject class in 3.8 +FIX: Can export a field into task time table with export project profile +FIX: change order date on clone (as everywhere else) +FIX: clone customer order create new order with validate ref and not with PROV +FIX: Contacts are not added to the list with the status "no contact" +FIX: Default thirdparty when cloning invoice was not set. +FIX: double db escape add too quote +FIX: event's data lost on user assign update +FIX: Filter in customer price per product of a thirdparty returned error +FIX: filters on supplier invoices list are not used, search_status instead +FIX: fix HTML into formconfirm box +FIX: IF autocomplete was set on thirdparty list, it was not possible to open list of extrafields. +FIX: If no end date is set on survey, we should be able to vote. +FIX: loss data also if update was cancel by error of ended state with no end date, try a generic patch +FIX: no need to remove file into mail form, the temp dir will be deleted after any sending +FIX: pmp calculation +FIX: Preview pages was not using correct style for ref +FIX: project was not retrieved on invoice creation form +FIX: Revert option WORKFLOW_PROPAL_CAN_CLASSIFIED_BILLED_WITHOUT_INVOICES into option WORKFLOW_PROPAL_NEED_INVOICE_TO_BE_CLASSIFIED_BILLED for better compatibility with old versions +FIX: Search status not saved into list +FIX: search_status not used in mergefusiontool +FIX: Show category selector if we have permission to view products or services +FIX: Show product image on getNomUrl() +FIX: skeleton class must use db->order rather than ORDER BY into fetchAll +FIX: Societe::set_parent() function needs societe object to be fetched to update parent +FIX: supplier rights for orderToInvoice +FIX: tag object_total_vat_x need x to be a string with unknown decimal lenght. Now use for x the real vat real with no more decimal (x = 20 or x = 8.5 or x = 5.99, ...) +FIX: The preview of PDF was never refreshed if PDF document was changed +FIX: The thumb of user into top menu was using the image in full size. This make a large download at each page call. We must use the mini thumbs. +FIX: Total in summary was not same than into detail on the referrer page. + ***** ChangeLog for 3.8.1 compared to 3.8.0 ***** FIX: #3521 postgresql migration error FIX: #3524 @@ -315,25 +372,94 @@ Dolibarr better: to make difference between creation from contact or not. - Function get_exdir require now 6 parameters. This is to prepare a future feature. + ***** ChangeLog for 3.7.2 compared to 3.7.1 ***** -FIX [ bug #2855 ] Wrong translation key in localtax report page -FIX [ bug #1852 ] JS error when editing a customer order line -FIX [ bug #2900 ] Courtesy title is not stored in create thirdparty form -FIX [ bug #3055 ] Product image thumbnails were not deleted after deleting the image -FIX [ bug 1634 ] Error deleting a project when it had many linked objects -FIX [ bug 1925 ] "Link to order" option in supplier invoices is not working properly -FIX [ bug #3198 ] Trigger LINECONTRACT_INSERT passes Contrat as $object instead of ContratLigne -FIX: Not showing delivery date on rouget pdf +FIX: #2957 : missing $langs object for trigger +FIX: #2983 Load gravatar avatar images securely over HTTPS +FIX: #3009: Better filtering to prevent SQL injection +FIX: #3091 TotalHT amount in supplier order is bold unlike the rest of Dolibarr +FIX: #3262 Webservice getProductsForCategory() +FIX: #3318 +FIX: [ #3460 ] Selected bank account was not saved when an error happened when trying to create a customer invoice +FIX: #3530 +FIX: #3630 - Wrong balance report when module salaries and donation disabled +FIX: #3679 Error when deleting a Localtax2 special payment +FIX: #3707 Thirdparty bank account page table has a glitch +FIX: #3724 Bug: Blank page after cloning proposal with changed client +FIX: #3836 Unable to upload a document to an invoice under some circunstances +FIX: #3841 creation of a task completed has not status set to finished by default +FIX: Add a protection to not make release if ChangeLog was not generated. +FIX: adjusted test for affecting supplier reference +FIX: Admin fiche inter page do not take good action +FIX: Avoid warning strict mode when hosting server do not have php5_curl installed +FIX: bad calculation for stock value +FIX: Bad condition into invoice export request making reporting too many rows. +FIX: bad stock valorisation +FIX: Bad visualization of suppliers name on Incomes-Expenses mode +FIX: Better management error into the color conversion functions +FIX: [ bug 1634 ] Error deleting a project when it had many linked objects +FIX: [ bug 1925 ] "Link to order" option in supplier invoices is not working properly +FIX: [ bug #2893 ] Dolibarr error when viewing an invoice after changing invoice mask +FIX: [ bug #3211 ] Error about sold to pay (Montant encours) +FIX: [ bug #3321 ] Users with certain permissions were shown a "forbidden access" page even if they had the rights +FIX: [ bug #3358 ] Tasks box does not work with PostgreSQL +FIX: [ bug #3383 ] Company name is overlapped with company direction in PDF models +FIX: [ bug #3426 ] Unable to create an invoice from a contract with extrafields +FIX: [ bug #3431 ] Invoice bank account is not respected +FIX: [ bug #3432 ] Spaces should be removed from IBAN when formatting it +FIX: Can create Proposal on close thridparty #3526 +FIX: change order date on clone (as everywhere else) +FIX: Close #2835 Customer prices of a product shows incorrect history order +FIX: Close #2837 Product list table column header does not match column body +FIX: Close bug #2855 Wrong translation key in localtax report page +FIX: Close bug #2861 Undefined variable $res when migrating from 3.6.2 to 3.7.0 +FIX: Close bug #2891 Category hooks do not work +FIX: Close bug #2900 Courtesy title is not stored in create thirdparty form +FIX: Close bug #2976: "Report" tab is the current tab but it is not marked as selected by the UI +FIX: contact country had wrong display if the country dont have translate +FIX: Display country name instead of country id (display country id makes no sense on vcard files) +FIX: display error on extrafields on ficheinter +FIX: double db escape add too quote +FIX: Email selector contact must not include inactive contact +FIX: End log must use same level then start log. +FIX: error in SQL due to a previous fix +FIX: event's data lost on user assign update +FIX: Export of tags for contact and member +FIX: facturestat bad sql when customer view is limited +FIX: if multicompany enabled, call to undifend method _setCookie instead of setCookie +FIX: If supplier invoice block linked element is display after other block total HT amount is not reset to 0 and sum other block (like customer orders values) +FIX: keep filter by category or by not enough stock if we switch page +FIX: Line break display as a block +FIX: load propal langs for availability traduction +FIX: loss data also if update was cancel by error of ended state with no end date, try a generic patch +FIX: Mass Mailing activity don't display all status +FIX: Missing to set context into workflow actions, so triggers can't know we are creating an invoice from order or an order from a proposal. +FIX: multientity warehouse management +FIX: New adherent from, always redirect on entity +FIX: No check warehouse is provided if module stock is not enabled. +FIX: no need to remove file into mail form, the temp dir will be deleted after any sending +FIX: no projet_task_time id from trigger TASK_TIMESPENT_CREATE FIX: Not showing task extrafields when creating from left menu -FIX [ bug #3288 ] Tasks box is not properly drawn -FIX [ bug #3211 ] Outstading bill amount of a client showed wrong amounts -FIX [ bug #3321 ] Users with certain permissions were shown a "forbidden access" page even if they had the rights -FIX [ bug #3426 ] Unable to create an invoice from a contract with extrafields -FIX [ bug #3431 ] Invoice bank account is not respected -FIX [ bug #3432 ] Spaces should be removed from IBAN when formatting it -FIX [ bug #3358 ] Tasks box does not work with PostgreSQL -FIX [ bug #3383 ] Company name is overlapped with company direction in PDF models -FIX [ bug #3460 ] Bank account is not saved when creating a customer invoice and facing an error message +FIX: only active customer should be return into new invoice creation select list +FIX: Payed invoices are showed as canceled FIX: Bad date filter on customer order +FIX: WAP calculation +FIX: Save of filters into export profiles failed. +FIX: supplier rights for orderToInvoice +FIX: Syntax error in Debian Apache configuration +FIX: The hours of date filter aren't correct +FIX: tool export handle the type "select" extrafields and return the value instead of id +FIX: total amount in tpl linked object are not reset +FIX: translate Jabberid on contact page with edit view +FIX: translation for 1 word do not work if product/service module are disabled because the translation search in products.lang +FIX: update2.php test res befre assign it +FIX: When delete actioncomm also delete actioncomm_resources +FIX: when fetch_optionnal_by_label in Extrafields with $this->db cannot work because this->db is never instanciated +FIX: when mailing is deleted, the targets list was kept in database +FIX: when multicompany was enabled, this function didn't check just on the good entity (problem when both company use same mask) +FIX: When we add an user on event in create mode, we lose linked object +FIX: When we automatically creta an order from a proposal with workflow module, if some extrafields of propal don't exist in order object, insertExtraFields() function tries to insert extrafields in unexistant column of commande_extrafields table. +FIX: When we clone a propal, if it has a project which is not assigned to a third, it was not on new propal because fk_project was always set to empty string if new propal is for another third. +FIX: XSS security using the onerror and missing escapement on type of member page. NEW: Created new ContratLigne::insert function @@ -559,9 +685,43 @@ Dolibarr better: warehouse module and your Point Of Sale module setup if you use one. - Replaced USER_UPDATE_SESSION trigger with an updateSession hook may break modules using it. + ***** ChangeLog for 3.6.5 compared to 3.6.4 ***** -- Fix: [ bug #1776 ] Undefined $deliverycompany variable in pdf_build_address -- Fix: [ bug #1794 ] Error when cloning Proposal gives error in a malformed page +FIX: #2957 : missing $langs object for trigger +FIX: #2983 Load gravatar avatar images securely over HTTPS +FIX: #3009: Better filtering to prevent SQL injection +FIX: #3841 creation of a task completed has not status set to finished by default +FIX: #3890 Expected transactions bank account page, shows negative numbers +FIX: #3928 Creating a Customer order and a Customer invoice from a project, does not inherit payment conditions and method of payment of customer card +FIX: bad calculation for stock value +FIX: bad stock valo +FIX: bad stock valorisation +FIX: [ bug #2893 ] Dolibarr error when viewing an invoice after changing invoice mask +FIX: button create payment hide if tax amount is less than 1 +FIX: change object statut on close shipping and remove erratic db commit +FIX: change order date on clone (as everywhere else) +FIX: Close #2835 Customer prices of a product shows incorrect history order +FIX: Close #2837 Product list table column header does not match column body +FIX: Close bug #2861 Undefined variable $res when migrating from 3.6.2 to 3.7.0 +FIX: Close bug #2891 Category hooks do not work +FIX: Close bug #2976: "Report" tab is the current tab but it is not marked as selected by the UI +FIX: contact country had wrong display if the country dont have translate +FIX: double db escape add too quote +FIX: End log must use same level then start log. +FIX: error in SQL due to a previous fix +FIX: event for restricted user was restricted if company null +FIX: facturestat bad sql when customer view is limited +FIX: If supplier invoice block linked element is display after other block total HT amount is not reset to 0 and sum other block (like customer orders values) +FIX: keep filter by category or by not enough stock if we switch page +FIX: no need to remove file into mail form, the temp dir will be deleted after any sending +FIX: no projet_task_time id from trigger TASK_TIMESPENT_CREATE +FIX: pmp +FIX: send mail, copy sendto don't read the list of contact +FIX: The hours of date filter aren't correct +FIX: tool export handle the type "select" extrafields and return the value instead of id +FIX: top links menu have target attribute with wrong value +FIX: total amount in tpl linked object are not reset +FIX: when multicompany was enabled, this function didn't check just on the good entity (problem when both company use same mask) ***** ChangeLog for 3.6.4 compared to 3.6.3 ***** - Fix: [ bug #2893 ] Dolibarr error when viewing an invoice after changing invoice mask diff --git a/README.md b/README.md index 91f99dc80252b1a2b4caa5e01af9037e99765a25..0c3507f62f6e1b21c566d9bcf0f2c1ae879aa120 100644 --- a/README.md +++ b/README.md @@ -149,6 +149,10 @@ These are features that Dolibarr does **not** yet fully support: Administrator, user, developer and translator's documentations are available along with other community resources on the [Wiki](http://wiki.dolibarr.org). +## CONTRIBUTING + +See file [CONTRIBUTING](https://github.com/Dolibarr/dolibarr/blob/develop/CONTRIBUTING.md) + ## CREDITS Dolibarr is the work of many contributors over the years and uses some fine libraries. diff --git a/build/makepack-dolibarr.pl b/build/makepack-dolibarr.pl index 99ec7b3543afb7e595d2ca331d8f4ab7fb58c099..fbae52f972682dddd0a0d2e6dd091e49234aa729 100755 --- a/build/makepack-dolibarr.pl +++ b/build/makepack-dolibarr.pl @@ -22,7 +22,8 @@ $PUBLISHSTABLE="eldy,dolibarr\@frs.sourceforge.net:/home/frs/project/dolibarr"; $PUBLISHBETARC="ldestailleur\@asso.dolibarr.org:/home/dolibarr/dolibarr.org/httpdocs/files"; -@LISTETARGET=("TGZ","ZIP","RPM_GENERIC","RPM_FEDORA","RPM_MANDRIVA","RPM_OPENSUSE","DEB","APS","EXEDOLIWAMP","SNAPSHOT"); # Possible packages +#@LISTETARGET=("TGZ","ZIP","RPM_GENERIC","RPM_FEDORA","RPM_MANDRIVA","RPM_OPENSUSE","DEB","APS","EXEDOLIWAMP","SNAPSHOT"); # Possible packages +@LISTETARGET=("TGZ","ZIP","RPM_GENERIC","RPM_FEDORA","RPM_MANDRIVA","RPM_OPENSUSE","DEB","EXEDOLIWAMP","SNAPSHOT"); # Possible packages %REQUIREMENTPUBLISH=( "SF"=>"git ssh rsync", "ASSO"=>"git ssh rsync" @@ -351,6 +352,28 @@ if ($nboftargetok) { print "Go to directory $SOURCE\n"; $olddir=getcwd(); chdir("$SOURCE"); + + # Test that the ChangeLog is ok + $ret=`grep "ChangeLog for $MAJOR.$MINOR\.$BUILD" "$SOURCE/ChangeLog" 2>&1`; + if (! $ret) + { + print "Error: The ChangeLogFile was not updated. Run the following command first:\n"; + if (! $BUILD) + { + print 'cd ~/git/dolibarr_'.$MAJOR.'.'.$MINOR.'; git log `git rev-list --boundary '.$MAJOR.'.'.$MINOR.'..origin/develop | grep ^- | cut -c2- | head -n`.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e \'^FIX\|NEW\' | sort -u | sed \'s/FIXED:/FIX:/g\' | sed \'s/FIXED :/FIX:/g\' | sed \'s/FIX :/FIX:/g\' | sed \'s/FIX /FIX: /g\' | sed \'s/NEW :/NEW:/g\' | sed \'s/NEW /NEW: /g\' > /tmp/aaa'; + } + else + { + print 'cd ~/git/dolibarr_'.$MAJOR.'.'.$MINOR.'; git log '.$MAJOR.'.'.$MINOR.'.'.($BUILD-1).'.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e \'^FIX\|NEW\' | sort -u | sed \'s/FIXED:/FIX:/g\' | sed \'s/FIXED :/FIX:/g\' | sed \'s/FIX :/FIX:/g\' | sed \'s/FIX /FIX: /g\' | sed \'s/NEW :/NEW:/g\' | sed \'s/NEW /NEW: /g\' > /tmp/aaa'; + } + print "\n"; + exit; + } + else + { + print "ChangeLog for $MAJOR.$MINOR\.$BUILD was found into '$SOURCE/ChangeLog'\n"; + } + print 'Run git tag -a -m "'.$MAJOR.'.'.$MINOR.'.'.$BUILD.'" "'.$MAJOR.'.'.$MINOR.'.'.$BUILD.'"'."\n"; $ret=`git tag -a -m "$MAJOR.$MINOR.$BUILD" "$MAJOR.$MINOR.$BUILD" 2>&1`; if ($ret =~ /already exists/) diff --git a/build/makepack-howto.txt b/build/makepack-howto.txt index 953e207d28dc37f1e8af7238bdc51faab29430bb..2bf516dfe88b343b88a1e88dc8634ffcbc779db9 100644 --- a/build/makepack-howto.txt +++ b/build/makepack-howto.txt @@ -9,8 +9,8 @@ beta version of Dolibarr, step by step. - Check all files are commited. - Update version/info in ChangeLog. -To generate a changelog of a major new version x.y.0, you can do "cd ~/git/dolibarr_x.y; git log `git merge-base x-1.y-1.0 origin/develop`.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e '^FIX\|NEW' | sort -u | sed 's/FIXED:/FIX:/g' | sed 's/FIXED :/FIX:/g' | sed 's/FIX :/FIX:/g' | sed 's/FIX /FIX: /g' | sed 's/NEW :/NEW:/g' | sed 's/NEW /NEW: /g' > /tmp/aaa" -To generate a changelog of a maintenance version x.y.z, you can do "cd ~/git/dolibarr_x.y; git log `git merge-base x.y.z-1 origin/develop`.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e '^FIX\|NEW' | sort -u | sed 's/FIXED:/FIX:/g' | sed 's/FIXED :/FIX:/g' | sed 's/FIX :/FIX:/g' | sed 's/FIX /FIX: /g' | sed 's/NEW :/NEW:/g' | sed 's/NEW /NEW: /g' > /tmp/aaa" +To generate a changelog of a major new version x.y.0, you can do "cd ~/git/dolibarr_x.y; git log `git rev-list --boundary x.y..origin/develop | grep ^- | cut -c2- | head -n`.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e '^FIX\|NEW' | sort -u | sed 's/FIXED:/FIX:/g' | sed 's/FIXED :/FIX:/g' | sed 's/FIX :/FIX:/g' | sed 's/FIX /FIX: /g' | sed 's/NEW :/NEW:/g' | sed 's/NEW /NEW: /g' > /tmp/aaa" +To generate a changelog of a maintenance version x.y.z, you can do "cd ~/git/dolibarr_x.y; git log x.y.z-1.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e '^FIX\|NEW' | sort -u | sed 's/FIXED:/FIX:/g' | sed 's/FIXED :/FIX:/g' | sed 's/FIX :/FIX:/g' | sed 's/FIX /FIX: /g' | sed 's/NEW :/NEW:/g' | sed 's/NEW /NEW: /g' > /tmp/aaa" - Update version number with x.y.z-w in htdocs/filefunc.inc.php - Commit all changes. @@ -31,8 +31,8 @@ complete release of Dolibarr, step by step. - Check all files are commited. - Update version/info in ChangeLog. -To generate a changelog of a major new version x.y.0, you can do "cd ~/git/dolibarr_x.y; git log `git merge-base x-1.y-1.0 origin/develop`.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e '^FIX\|NEW' | sort -u | sed 's/FIXED:/FIX:/g' | sed 's/FIXED :/FIX:/g' | sed 's/FIX :/FIX:/g' | sed 's/FIX /FIX: /g' | sed 's/NEW :/NEW:/g' | sed 's/NEW /NEW: /g' > /tmp/aaa" -To generate a changelog of a maintenance version x.y.z, you can do "cd ~/git/dolibarr_x.y; git log `git merge-base x.y.z-1 origin/develop`.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e '^FIX\|NEW' | sort -u | sed 's/FIXED:/FIX:/g' | sed 's/FIXED :/FIX:/g' | sed 's/FIX :/FIX:/g' | sed 's/FIX /FIX: /g' | sed 's/NEW :/NEW:/g' | sed 's/NEW /NEW: /g' > /tmp/aaa" +To generate a changelog of a major new version x.y.0, you can do "cd ~/git/dolibarr_x.y; git log `git rev-list --boundary x.y..origin/develop | grep ^- | cut -c2- | head -n`.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e '^FIX\|NEW' | sort -u | sed 's/FIXED:/FIX:/g' | sed 's/FIXED :/FIX:/g' | sed 's/FIX :/FIX:/g' | sed 's/FIX /FIX: /g' | sed 's/NEW :/NEW:/g' | sed 's/NEW /NEW: /g' > /tmp/aaa" +To generate a changelog of a maintenance version x.y.z, you can do "cd ~/git/dolibarr_x.y; git log x.y.z-1.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e '^FIX\|NEW' | sort -u | sed 's/FIXED:/FIX:/g' | sed 's/FIXED :/FIX:/g' | sed 's/FIX :/FIX:/g' | sed 's/FIX /FIX: /g' | sed 's/NEW :/NEW:/g' | sed 's/NEW /NEW: /g' > /tmp/aaa" - Update version number with x.y.z in htdocs/filefunc.inc.php - Commit all changes. diff --git a/dev/skeletons/modMyModule.class.php b/dev/skeletons/modMyModule.class.php index 518b4f4d018a6379770124e3893e6a9abafaf187..86d9636809ad3b393796372e5e6fb8005fb35f39 100644 --- a/dev/skeletons/modMyModule.class.php +++ b/dev/skeletons/modMyModule.class.php @@ -53,6 +53,7 @@ class modMyModule extends DolibarrModules // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "other"; + $this->module_position = 500; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) diff --git a/htdocs/.gitignore b/htdocs/.gitignore index b0b84be129e8043c3c30560989a0cb9d3551fc01..bf0c3b10ffab905b15fafbc6bfacfbffaef34a80 100644 --- a/htdocs/.gitignore +++ b/htdocs/.gitignore @@ -15,3 +15,8 @@ /teclib* /test.php /ultimatepdf* +/lead +/dolimed* +/allscreens* +/ecommerce/ +/cabinetmed* \ No newline at end of file diff --git a/htdocs/accountancy/customer/card.php b/htdocs/accountancy/customer/card.php index a3e179c1701f5bba59013ddc05668419ec2d5b47..964e39efebf7eaa839aa1d018ccb12434d95e3c3 100644 --- a/htdocs/accountancy/customer/card.php +++ b/htdocs/accountancy/customer/card.php @@ -1,4 +1,4 @@ -<?PHP +<?php /* Copyright (C) 2013-2014 Olivier Geffroy <jeff@jeffinfo.com> * Copyright (C) 2013-2014 Florian Henry <florian.henry@open-concept.pro> * Copyright (C) 2013-2015 Alexandre Spangaro <aspangaro.dolibarr@gmail.com> @@ -19,7 +19,7 @@ /** * \file htdocs/accountancy/customer/card.php - * \ingroup Accounting Expert + * \ingroup Accountancy * \brief Card customer ventilation */ @@ -88,7 +88,6 @@ if (! empty($id)) { $sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "accounting_account as aa ON l.fk_code_ventilation = aa.rowid"; $sql .= " INNER JOIN " . MAIN_DB_PREFIX . "facture as f ON f.rowid = l.fk_facture"; $sql .= " WHERE f.fk_statut > 0 AND l.rowid = " . $id; - if (! empty($conf->multicompany->enabled)) { $sql .= " AND f.entity IN (" . getEntity("facture", 1) . ")"; } diff --git a/htdocs/accountancy/customer/list.php b/htdocs/accountancy/customer/list.php index 3af8d012d760466677f772931a8c90a6716d5eb2..820596de166afce91d101231d3f9148940c7ec42 100644 --- a/htdocs/accountancy/customer/list.php +++ b/htdocs/accountancy/customer/list.php @@ -21,7 +21,7 @@ /** * \file htdocs/accountancy/customer/list.php - * \ingroup Accounting Expert + * \ingroup Accountancy * \brief Ventilation page from customers invoices */ require '../../main.inc.php'; @@ -166,16 +166,27 @@ if ($action == 'ventil' && !empty($btn_ventil)) { * Customer Invoice lines */ -$sql = "SELECT f.facnumber, f.rowid as facid, f.datef, f.type as ftype, l.fk_product, l.description, l.total_ht, l.rowid, l.fk_code_ventilation,"; -$sql .= " p.rowid as product_id, p.ref as product_ref, p.label as product_label, p.fk_product_type as type, p.accountancy_code_sell as code_sell, p.tva_tx as tva_tx_prod"; -$sql .= " , aa.rowid as aarowid"; -$sql .= " , l.product_type as type_l, l.tva_tx as tva_tx_line"; +if (! empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION)) { + $limit = $conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION; +} else if ($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION <= 0) { + $limit = $conf->liste_limit; +} else { + $limit = $conf->liste_limit; +} + +$offset = $limit * $page; + +$sql = "SELECT f.facnumber, f.rowid as facid, f.datef, f.type as ftype, l.fk_product, l.description, l.total_ht, l.rowid, l.fk_code_ventilation, l.product_type as type_l, l.tva_tx as tva_tx_line,"; +$sql .= " p.rowid as product_id, p.ref as product_ref, p.label as product_label, p.fk_product_type as type, p.accountancy_code_sell as code_sell, p.tva_tx as tva_tx_prod,"; +$sql .= " aa.rowid as aarowid"; $sql .= " FROM " . MAIN_DB_PREFIX . "facture as f"; $sql .= " INNER JOIN " . MAIN_DB_PREFIX . "facturedet as l ON f.rowid = l.fk_facture"; $sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "product as p ON p.rowid = l.fk_product"; $sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "accounting_account as aa ON p.accountancy_code_sell = aa.account_number"; $sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "accounting_system as accsys ON accsys.pcg_version = aa.fk_pcg_version"; -$sql .= " WHERE f.fk_statut > 0 AND fk_code_ventilation <= 0"; +$sql .= " WHERE f.fk_statut > 0"; +$sql .= " AND fk_code_ventilation <= 0"; +$sql .= " AND product_type <= 2"; $sql .= " AND (accsys.rowid='" . $conf->global->CHARTOFACCOUNTS . "' OR p.accountancy_code_sell IS NULL OR p.accountancy_code_sell ='')"; // Add search filter like diff --git a/htdocs/accountancy/supplier/card.php b/htdocs/accountancy/supplier/card.php index 61b225fbc163246cce12fede40bfc5d536f17a7a..d11d72951dc02c41c3cfc280760bd5cfedc262d6 100644 --- a/htdocs/accountancy/supplier/card.php +++ b/htdocs/accountancy/supplier/card.php @@ -23,7 +23,7 @@ */ /** * \file htdocs/accountancy/supplier/card.php - * \ingroup Accounting Expert + * \ingroup Accountancy * \brief Card supplier ventilation */ @@ -88,7 +88,6 @@ if (! empty($id)) { $sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "accounting_account as aa ON l.fk_code_ventilation = aa.rowid"; $sql .= " INNER JOIN " . MAIN_DB_PREFIX . "facture_fourn as f ON f.rowid = l.fk_facture_fourn "; $sql .= " WHERE f.fk_statut > 0 AND l.rowid = " . $id; - if (! empty($conf->multicompany->enabled)) { $sql .= " AND f.entity IN (" . getEntity("facture_fourn", 1) . ")"; } diff --git a/htdocs/accountancy/supplier/list.php b/htdocs/accountancy/supplier/list.php index b0a3fe50d9883fa7c44e6ef4c200095ea22d4dc8..891d8b1439ed0d9cfdcf55bfea652df397f76d76 100644 --- a/htdocs/accountancy/supplier/list.php +++ b/htdocs/accountancy/supplier/list.php @@ -21,7 +21,7 @@ /** * \file htdocs/accountancy/supplier/list.php - * \ingroup Accounting Expert + * \ingroup Accountancy * \brief Ventilation page from suppliers invoices */ require '../../main.inc.php'; @@ -171,19 +171,27 @@ if ($action == 'ventil' && !empty($btn_ventil)) { * */ -$sql = "SELECT f.ref, f.rowid as facid, f.ref_supplier, l.fk_product, l.description, l.total_ht as price, l.rowid, l.fk_code_ventilation, l.tva_tx as tva_tx_line, "; +if (! empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION)) { + $limit = $conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION; +} else if ($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION <= 0) { + $limit = $conf->liste_limit; +} else { + $limit = $conf->liste_limit; +} + +$offset = $limit * $page; + +$sql = "SELECT f.ref, f.rowid as facid, f.ref_supplier, f.datef, l.fk_product, l.description, l.total_ht as price, l.rowid, l.fk_code_ventilation, l.product_type as type_l, l.tva_tx as tva_tx_line, "; $sql .= " p.rowid as product_id, p.ref as product_ref, p.label as product_label, p.fk_product_type as type, p.accountancy_code_buy as code_buy, p.tva_tx as tva_tx_prod"; $sql .= " , aa.rowid as aarowid"; -$sql .= " , f.datef"; -$sql .= " , l.product_type as type_l"; $sql .= " FROM " . MAIN_DB_PREFIX . "facture_fourn as f"; $sql .= " INNER JOIN " . MAIN_DB_PREFIX . "facture_fourn_det as l ON f.rowid = l.fk_facture_fourn"; $sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "product as p ON p.rowid = l.fk_product"; $sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "accounting_account as aa ON p.accountancy_code_buy = aa.account_number"; $sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "accounting_system as accsys ON accsys.pcg_version = aa.fk_pcg_version"; $sql .= " WHERE f.fk_statut > 0 AND fk_code_ventilation <= 0"; +$sql .= " AND product_type <= 2"; $sql .= " AND (accsys.rowid='" . $conf->global->CHARTOFACCOUNTS . "' OR p.accountancy_code_sell IS NULL OR p.accountancy_code_buy ='')"; - // Add search filter like if (strlen(trim($search_invoice))) { $sql .= " AND (f.ref like '%" . $search_invoice . "%')"; diff --git a/htdocs/admin/boxes.php b/htdocs/admin/boxes.php index 5b6d64801b5f46846475805ccf6558da88c8c1c1..9e09bf87b1dfead16be59da1143e46c38b27d2c5 100644 --- a/htdocs/admin/boxes.php +++ b/htdocs/admin/boxes.php @@ -48,7 +48,8 @@ $boxes = array(); if ($action == 'addconst') { - dolibarr_set_const($db, "MAIN_BOXES_MAXLINES",$_POST["MAIN_BOXES_MAXLINES"],'',0,'',$conf->entity); + dolibarr_set_const($db, "MAIN_BOXES_MAXLINES", $_POST["MAIN_BOXES_MAXLINES"],'',0,'',$conf->entity); + dolibarr_set_const($db, "MAIN_ACTIVATE_FILECACHE", $_POST["MAIN_ACTIVATE_FILECACHE"],'chaine',0,'',$conf->entity); } if ($action == 'add') { @@ -456,8 +457,8 @@ $var=false; print '<tr class="liste_titre">'; print '<td class="liste_titre">'.$langs->trans("Parameter").'</td>'; print '<td class="liste_titre">'.$langs->trans("Value").'</td>'; -print '<td class="liste_titre"></td>'; print '</tr>'; + print '<tr '.$bc[$var].'>'; print '<td>'; print $langs->trans("MaxNbOfLinesForBoxes"); @@ -465,12 +466,21 @@ print '</td>'."\n"; print '<td>'; print '<input type="text" class="flat" size="6" name="MAIN_BOXES_MAXLINES" value="'.$conf->global->MAIN_BOXES_MAXLINES.'">'; print '</td>'; -print '<td align="right">'; -print '<input type="submit" class="button" value="'.$langs->trans("Save").'" name="Button">'; -print '</td>'."\n"; print '</tr>'; +// Activate FileCache - Developement +if ($conf->global->MAIN_FEATURES_LEVEL == 2 || ! empty($conf->global->MAIN_ACTIVATE_FILECACHE)) { + $var=!$var; + print '<tr '.$bc[$var].'><td width="35%">'.$langs->trans("EnableFileCache").'</td><td>'; + print $form->selectyesno('MAIN_ACTIVATE_FILECACHE',$conf->global->MAIN_ACTIVATE_FILECACHE,1); + print '</td>'; + print '</tr>'; +} + print '</table>'; + +print '<div class="center"><input type="submit" class="button" value="'.$langs->trans("Save").'" name="Button"></div>'; + print '</form>'; print "\n".'<!-- End Other Const -->'."\n"; diff --git a/htdocs/admin/company.php b/htdocs/admin/company.php index e84bdf2a3fa5225c4eedb1f505cb556ebeb22858..be7756e5900d4ab71000e654f032c1ae31a3d447 100644 --- a/htdocs/admin/company.php +++ b/htdocs/admin/company.php @@ -594,7 +594,7 @@ if ($action == 'edit' || $action == 'updateedit') // Note: When option is not set, it must not appears as set on on, because there is no default value for this option print "<tr ".$bc[$var]."><td width=\"140\"><input type=\"radio\" name=\"optionlocaltax1\" id=\"lt1\" value=\"localtax1on\"".(($conf->global->FACTURE_LOCAL_TAX1_OPTION == '1' || $conf->global->FACTURE_LOCAL_TAX1_OPTION == "localtax1on")?" checked":"")."> ".$langs->transcountry("LocalTax1IsUsed",$mysoc->country_code)."</td>"; print '<td colspan="2">'; - print "<table>"; + print '<table class="nobordernopadding">'; print "<tr><td><label for=\"lt1\">".$langs->transcountry("LocalTax1IsUsedDesc",$mysoc->country_code)."</label></td></tr>"; $example=$langs->transcountry("LocalTax1IsUsedExample",$mysoc->country_code); print ($example!="LocalTax1IsUsedExample"?"<tr><td><i>".$langs->trans("Example").': '.$langs->transcountry("LocalTax1IsUsedExample",$mysoc->country_code)."</i></td></tr>\n":""); @@ -602,8 +602,8 @@ if ($action == 'edit' || $action == 'updateedit') { print '<tr><td align="left"><label for="lt1">'.$langs->trans("LTRate").'</label>: '; $formcompany->select_localtax(1,$conf->global->MAIN_INFO_VALUE_LOCALTAX1, "lt1"); + print '</td></tr>'; } - print '</td></tr>'; $opcions=array($langs->trans("CalcLocaltax1").' '.$langs->trans("CalcLocaltax1Desc"),$langs->trans("CalcLocaltax2").' - '.$langs->trans("CalcLocaltax2Desc"),$langs->trans("CalcLocaltax3").' - '.$langs->trans("CalcLocaltax3Desc")); @@ -614,7 +614,7 @@ if ($action == 'edit' || $action == 'updateedit') print "</td></tr>\n"; $var=!$var; - print "<tr ".$bc[$var]."><td width=\"140\"><input type=\"radio\" name=\"optionlocaltax1\" id=\"nolt1\" value=\"localtax1off\"".($conf->global->FACTURE_LOCAL_TAX1_OPTION == "localtax1off"?" checked":"")."> ".$langs->transcountry("LocalTax1IsNotUsed",$mysoc->country_code)."</td>"; + print "<tr ".$bc[$var]."><td width=\"140\"><input type=\"radio\" name=\"optionlocaltax1\" id=\"nolt1\" value=\"localtax1off\"".((empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) || $conf->global->FACTURE_LOCAL_TAX1_OPTION == "localtax1off")?" checked":"")."> ".$langs->transcountry("LocalTax1IsNotUsed",$mysoc->country_code)."</td>"; print '<td colspan="2">'; print "<table>"; print "<tr><td><label for=\"nolt1\">".$langs->transcountry("LocalTax1IsNotUsedDesc",$mysoc->country_code)."</label></td></tr>"; @@ -639,14 +639,14 @@ if ($action == 'edit' || $action == 'updateedit') // Note: When option is not set, it must not appears as set on on, because there is no default value for this option print "<tr ".$bc[$var]."><td width=\"140\"><input type=\"radio\" name=\"optionlocaltax2\" id=\"lt2\" value=\"localtax2on\"".(($conf->global->FACTURE_LOCAL_TAX2_OPTION == '1' || $conf->global->FACTURE_LOCAL_TAX2_OPTION == "localtax2on")?" checked":"")."> ".$langs->transcountry("LocalTax2IsUsed",$mysoc->country_code)."</td>"; print '<td colspan="2">'; - print "<table>"; + print '<table class="nobordernopadding">'; print "<tr><td><label for=\"lt2\">".$langs->transcountry("LocalTax2IsUsedDesc",$mysoc->country_code)."</label></td></tr>"; $example=$langs->transcountry("LocalTax2IsUsedExample",$mysoc->country_code); print ($example!="LocalTax2IsUsedExample"?"<tr><td><i>".$langs->trans("Example").': '.$langs->transcountry("LocalTax2IsUsedExample",$mysoc->country_code)."</i></td></tr>\n":""); - print '<tr><td align="left"><label for="lt2">'.$langs->trans("LTRate").'</label>: '; if(! isOnlyOneLocalTax(2)) { - $formcompany->select_localtax(2,$conf->global->MAIN_INFO_VALUE_LOCALTAX2, "lt2"); + print '<tr><td align="left"><label for="lt2">'.$langs->trans("LTRate").'</label>: '; + $formcompany->select_localtax(2,$conf->global->MAIN_INFO_VALUE_LOCALTAX2, "lt2"); print '</td></tr>'; } print '<tr><td align="left"><label for="clt2">'.$langs->trans("CalcLocaltax").'</label>: '; @@ -656,7 +656,7 @@ if ($action == 'edit' || $action == 'updateedit') print "</td></tr>\n"; $var=!$var; - print "<tr ".$bc[$var]."><td width=\"140\"><input type=\"radio\" name=\"optionlocaltax2\" id=\"nolt2\" value=\"localtax2off\"".($conf->global->FACTURE_LOCAL_TAX2_OPTION == "localtax2off"?" checked":"")."> ".$langs->transcountry("LocalTax2IsNotUsed",$mysoc->country_code)."</td>"; + print "<tr ".$bc[$var]."><td width=\"140\"><input type=\"radio\" name=\"optionlocaltax2\" id=\"nolt2\" value=\"localtax2off\"".((empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) || $conf->global->FACTURE_LOCAL_TAX2_OPTION == "localtax2off")?" checked":"")."> ".$langs->transcountry("LocalTax2IsNotUsed",$mysoc->country_code)."</td>"; print '<td colspan="2">'; print "<table>"; print "<tr><td><label for=\"nolt2\">".$langs->transcountry("LocalTax2IsNotUsedDesc",$mysoc->country_code)."</label></td></tr>"; @@ -965,7 +965,7 @@ else $var=true; $var=!$var; - print "<tr ".$bc[$var]."><td width=\"140\"><input ".$bc[$var]." type=\"radio\" name=\"optiontva\" id=\"use_vat\" disabled value=\"1\"".(empty($conf->global->FACTURE_TVAOPTION)?"":" checked")."> ".$langs->trans("VATIsUsed")."</td>"; + print "<tr ".$bc[$var]."><td width=\"160\"><input ".$bc[$var]." type=\"radio\" name=\"optiontva\" id=\"use_vat\" disabled value=\"1\"".(empty($conf->global->FACTURE_TVAOPTION)?"":" checked")."> ".$langs->trans("VATIsUsed")."</td>"; print '<td colspan="2">'; print "<table>"; print "<tr><td><label for=\"use_vat\">".$langs->trans("VATIsUsedDesc")."</label></td></tr>"; @@ -974,7 +974,7 @@ else print "</td></tr>\n"; $var=!$var; - print "<tr ".$bc[$var]."><td width=\"140\"><input ".$bc[$var]." type=\"radio\" name=\"optiontva\" id=\"no_vat\" disabled value=\"0\"".(empty($conf->global->FACTURE_TVAOPTION)?" checked":"")."> ".$langs->trans("VATIsNotUsed")."</td>"; + print "<tr ".$bc[$var]."><td width=\"160\"><input ".$bc[$var]." type=\"radio\" name=\"optiontva\" id=\"no_vat\" disabled value=\"0\"".(empty($conf->global->FACTURE_TVAOPTION)?" checked":"")."> ".$langs->trans("VATIsNotUsed")."</td>"; print '<td colspan="2">'; print "<table>"; print "<tr><td><label=\"no_vat\">".$langs->trans("VATIsNotUsedDesc")."</label></td></tr>"; @@ -988,7 +988,7 @@ else /* * Local Taxes */ - if ($mysoc->useLocalTax(1)) + if ($mysoc->useLocalTax(1)) // True if we found at least on vat with a setup adding a localtax 1 { // Local Tax 1 print '<br>'; @@ -1000,7 +1000,7 @@ else $var=true; $var=!$var; - print "<tr ".$bc[$var]."><td width=\"140\"><input ".$bc[$var]." type=\"radio\" name=\"optionlocaltax1\" id=\"lt1\" disabled value=\"localtax1on\"".(($conf->global->FACTURE_LOCAL_TAX1_OPTION == '1' || $conf->global->FACTURE_LOCAL_TAX1_OPTION == "localtax1on")?" checked":"")."> ".$langs->transcountry("LocalTax1IsUsed",$mysoc->country_code)."</td>"; + print "<tr ".$bc[$var]."><td width=\"160\"><input ".$bc[$var]." type=\"radio\" name=\"optionlocaltax1\" id=\"lt1\" disabled value=\"localtax1on\"".(($conf->global->FACTURE_LOCAL_TAX1_OPTION == '1' || $conf->global->FACTURE_LOCAL_TAX1_OPTION == "localtax1on")?" checked":"")."> ".$langs->transcountry("LocalTax1IsUsed",$mysoc->country_code)."</td>"; print '<td colspan="2">'; print "<table>"; print "<tr><td></label for=\"lt1\">".$langs->transcountry("LocalTax1IsUsedDesc",$mysoc->country_code)."</label></td></tr>"; @@ -1028,7 +1028,7 @@ else print "</td></tr>\n"; $var=!$var; - print "<tr ".$bc[$var]."><td width=\"140\"><input ".$bc[$var]." type=\"radio\" name=\"optionlocaltax1\" id=\"nolt1\" disabled value=\"localtax1off\"".($conf->global->FACTURE_LOCAL_TAX1_OPTION == "localtax1off"?" checked":"")."> ".$langs->transcountry("LocalTax1IsNotUsed",$mysoc->country_code)."</td>"; + print "<tr ".$bc[$var]."><td width=\"160\"><input ".$bc[$var]." type=\"radio\" name=\"optionlocaltax1\" id=\"nolt1\" disabled value=\"localtax1off\"".((empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) || $conf->global->FACTURE_LOCAL_TAX1_OPTION == "localtax1off")?" checked":"")."> ".$langs->transcountry("LocalTax1IsNotUsed",$mysoc->country_code)."</td>"; print '<td colspan="2">'; print "<table>"; print "<tr><td><label for=\"no_lt1\">".$langs->transcountry("LocalTax1IsNotUsedDesc",$mysoc->country_code)."</label></td></tr>"; @@ -1039,7 +1039,7 @@ else print "</table>"; } - if ($mysoc->useLocalTax(2)) + if ($mysoc->useLocalTax(2)) // True if we found at least on vat with a setup adding a localtax 1 { // Local Tax 2 print '<br>'; @@ -1051,7 +1051,7 @@ else $var=true; $var=!$var; - print "<tr ".$bc[$var]."><td width=\"140\"><input ".$bc[$var]." type=\"radio\" name=\"optionlocaltax2\" id=\"lt2\" disabled value=\"localtax2on\"".(($conf->global->FACTURE_LOCAL_TAX2_OPTION == '1' || $conf->global->FACTURE_LOCAL_TAX2_OPTION == "localtax2on")?" checked":"")."> ".$langs->transcountry("LocalTax2IsUsed",$mysoc->country_code)."</td>"; + print "<tr ".$bc[$var]."><td width=\"160\"><input ".$bc[$var]." type=\"radio\" name=\"optionlocaltax2\" id=\"lt2\" disabled value=\"localtax2on\"".(($conf->global->FACTURE_LOCAL_TAX2_OPTION == '1' || $conf->global->FACTURE_LOCAL_TAX2_OPTION == "localtax2on")?" checked":"")."> ".$langs->transcountry("LocalTax2IsUsed",$mysoc->country_code)."</td>"; print '<td colspan="2">'; print "<table>"; print "<tr><td><label for=\"lt2\">".$langs->transcountry("LocalTax2IsUsedDesc",$mysoc->country_code)."</label></td></tr>"; @@ -1080,7 +1080,7 @@ else print "</td></tr>\n"; $var=!$var; - print "<tr ".$bc[$var]."><td width=\"140\"><input ".$bc[$var]." type=\"radio\" name=\"optionlocaltax2\" id=\"nolt2\" disabled value=\"localtax2off\"".($conf->global->FACTURE_LOCAL_TAX2_OPTION == "localtax2off"?" checked":"")."> ".$langs->transcountry("LocalTax2IsNotUsed",$mysoc->country_code)."</td>"; + print "<tr ".$bc[$var]."><td width=\"160\"><input ".$bc[$var]." type=\"radio\" name=\"optionlocaltax2\" id=\"nolt2\" disabled value=\"localtax2off\"".((empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) || $conf->global->FACTURE_LOCAL_TAX2_OPTION == "localtax2off")?" checked":"")."> ".$langs->transcountry("LocalTax2IsNotUsed",$mysoc->country_code)."</td>"; print '<td colspan="2">'; print "<table>"; print "<tr><td><label for=\"nolt2\">".$langs->transcountry("LocalTax2IsNotUsedDesc",$mysoc->country_code)."</label></td></tr>"; diff --git a/htdocs/admin/dict.php b/htdocs/admin/dict.php index 7022c5877ebd25e824cefd264b16eff23ed2c44a..973c1b9c961bca6d0c6208054c5484cea4e4a16e 100644 --- a/htdocs/admin/dict.php +++ b/htdocs/admin/dict.php @@ -150,7 +150,7 @@ $tabsql[6] = "SELECT a.id as rowid, a.code as code, a.libelle AS libelle, a.t $tabsql[7] = "SELECT a.id as rowid, a.code as code, a.libelle AS libelle, a.accountancy_code as accountancy_code, a.deductible, c.code as country_code, c.label as country, a.fk_pays as country_id, a.active FROM ".MAIN_DB_PREFIX."c_chargesociales AS a, ".MAIN_DB_PREFIX."c_country as c WHERE a.fk_pays=c.rowid and c.active=1"; $tabsql[8] = "SELECT t.id as rowid, t.code as code, t.libelle, t.fk_country as country_id, c.code as country_code, c.label as country, t.active FROM ".MAIN_DB_PREFIX."c_typent as t LEFT JOIN ".MAIN_DB_PREFIX."c_country as c ON t.fk_country=c.rowid"; $tabsql[9] = "SELECT c.code_iso as code, c.label, c.unicode, c.active FROM ".MAIN_DB_PREFIX."c_currencies AS c"; -$tabsql[10]= "SELECT t.rowid, t.taux, t.localtax1_type, t.localtax1, t.localtax2_type, t.localtax2, c.label as country, c.code as country_code, t.fk_pays as country_id, t.recuperableonly, t.note, t.active, t.accountancy_code_sell, t.accountancy_code_buy FROM ".MAIN_DB_PREFIX."c_tva as t, ".MAIN_DB_PREFIX."c_country as c WHERE t.fk_pays=c.rowid"; +$tabsql[10]= "SELECT t.rowid, t.code, t.taux, t.localtax1_type, t.localtax1, t.localtax2_type, t.localtax2, c.label as country, c.code as country_code, t.fk_pays as country_id, t.recuperableonly, t.note, t.active, t.accountancy_code_sell, t.accountancy_code_buy FROM ".MAIN_DB_PREFIX."c_tva as t, ".MAIN_DB_PREFIX."c_country as c WHERE t.fk_pays=c.rowid"; $tabsql[11]= "SELECT t.rowid as rowid, element, source, code, libelle, active FROM ".MAIN_DB_PREFIX."c_type_contact AS t"; $tabsql[12]= "SELECT c.rowid as rowid, c.code, c.libelle, c.libelle_facture, c.nbjour, c.fdm, c.decalage, c.active, c.sortorder FROM ".MAIN_DB_PREFIX.'c_payment_term AS c'; $tabsql[13]= "SELECT c.id as rowid, c.code, c.libelle, c.type, c.active, c.accountancy_code FROM ".MAIN_DB_PREFIX."c_paiement AS c"; @@ -182,7 +182,7 @@ $tabsqlsort[6] ="a.type ASC, a.module ASC, a.position ASC, a.code ASC"; $tabsqlsort[7] ="country ASC, code ASC, a.libelle ASC"; $tabsqlsort[8] ="country DESC, libelle ASC"; $tabsqlsort[9] ="label ASC"; -$tabsqlsort[10]="country ASC, taux ASC, recuperableonly ASC, localtax1 ASC, localtax2 ASC"; +$tabsqlsort[10]="country ASC, code ASC, taux ASC, recuperableonly ASC, localtax1 ASC, localtax2 ASC"; $tabsqlsort[11]="element ASC, source ASC, code ASC"; $tabsqlsort[12]="sortorder ASC, code ASC"; $tabsqlsort[13]="code ASC"; @@ -214,7 +214,7 @@ $tabfield[6] = "code,libelle,type,color,position"; $tabfield[7] = "code,libelle,country,accountancy_code,deductible"; $tabfield[8] = "code,libelle,country_id,country"; $tabfield[9] = "code,label,unicode"; -$tabfield[10]= "country_id,country,taux,recuperableonly,localtax1_type,localtax1,localtax2_type,localtax2,accountancy_code_sell,accountancy_code_buy,note"; +$tabfield[10]= "country_id,country,code,taux,recuperableonly,localtax1_type,localtax1,localtax2_type,localtax2,accountancy_code_sell,accountancy_code_buy,note"; $tabfield[11]= "element,source,code,libelle"; $tabfield[12]= "code,libelle,libelle_facture,nbjour,fdm,decalage,sortorder"; $tabfield[13]= "code,libelle,type,accountancy_code"; @@ -246,7 +246,7 @@ $tabfieldvalue[6] = "code,libelle,type,color,position"; $tabfieldvalue[7] = "code,libelle,country,accountancy_code,deductible"; $tabfieldvalue[8] = "code,libelle,country"; $tabfieldvalue[9] = "code,label,unicode"; -$tabfieldvalue[10]= "country,taux,recuperableonly,localtax1_type,localtax1,localtax2_type,localtax2,accountancy_code_sell,accountancy_code_buy,note"; +$tabfieldvalue[10]= "country,code,taux,recuperableonly,localtax1_type,localtax1,localtax2_type,localtax2,accountancy_code_sell,accountancy_code_buy,note"; $tabfieldvalue[11]= "element,source,code,libelle"; $tabfieldvalue[12]= "code,libelle,libelle_facture,nbjour,fdm,decalage,sortorder"; $tabfieldvalue[13]= "code,libelle,type,accountancy_code"; @@ -278,7 +278,7 @@ $tabfieldinsert[6] = "code,libelle,type,color,position"; $tabfieldinsert[7] = "code,libelle,fk_pays,accountancy_code,deductible"; $tabfieldinsert[8] = "code,libelle,fk_country"; $tabfieldinsert[9] = "code_iso,label,unicode"; -$tabfieldinsert[10]= "fk_pays,taux,recuperableonly,localtax1_type,localtax1,localtax2_type,localtax2,accountancy_code_sell,accountancy_code_buy,note"; +$tabfieldinsert[10]= "fk_pays,code,taux,recuperableonly,localtax1_type,localtax1,localtax2_type,localtax2,accountancy_code_sell,accountancy_code_buy,note"; $tabfieldinsert[11]= "element,source,code,libelle"; $tabfieldinsert[12]= "code,libelle,libelle_facture,nbjour,fdm,decalage,sortorder"; $tabfieldinsert[13]= "code,libelle,type,accountancy_code"; @@ -376,7 +376,7 @@ $tabhelp[6] = array('code'=>$langs->trans("EnterAnyCode"), 'position'=>$langs-> $tabhelp[7] = array('code'=>$langs->trans("EnterAnyCode")); $tabhelp[8] = array('code'=>$langs->trans("EnterAnyCode")); $tabhelp[9] = array('code'=>$langs->trans("EnterAnyCode"), 'unicode'=>$langs->trans("UnicodeCurrency")); -$tabhelp[10] = array('taux'=>$langs->trans("SellTaxRate"), 'recuperableonly'=>$langs->trans("RecuperableOnly"), 'localtax1_type'=>$langs->trans("LocalTaxDesc"), 'localtax2_type'=>$langs->trans("LocalTaxDesc")); +$tabhelp[10] = array('code'=>$langs->trans("EnterAnyCode"), 'taux'=>$langs->trans("SellTaxRate"), 'recuperableonly'=>$langs->trans("RecuperableOnly"), 'localtax1_type'=>$langs->trans("LocalTaxDesc"), 'localtax2_type'=>$langs->trans("LocalTaxDesc")); $tabhelp[11] = array(); $tabhelp[12] = array('code'=>$langs->trans("EnterAnyCode")); $tabhelp[13] = array('code'=>$langs->trans("EnterAnyCode")); @@ -486,7 +486,7 @@ if ($id == 25) 'shipping_send' => $langs->trans('MailToSendShipment'), 'fichinter_send' => $langs->trans('MailToSendIntervention'), - 'askpricesupplier_send' => $langs->trans('MailToSendSupplierRequestForQuotation'), + 'supplier_proposal_send' => $langs->trans('MailToSendSupplierRequestForQuotation'), 'order_supplier_send' => $langs->trans('MailToSendSupplierOrder'), 'invoice_supplier_send' => $langs->trans('MailToSendSupplierInvoice'), @@ -522,8 +522,8 @@ if (GETPOST('actionadd') || GETPOST('actionmodify')) $ok=1; foreach ($listfield as $f => $value) { - if ($value == 'country_id' && in_array($tablib[$id],array('DictionaryVAT','DictionaryRegion','DictionaryCompanyType','DictionaryHolidayTypes', 'DictionaryRevenueStamp'))) continue; // For some pages, country is not mandatory - if ($value == 'country' && in_array($tablib[$id],array('DictionaryCanton','DictionaryCompanyType', 'DictionaryRevenueStamp'))) continue; // For some pages, country is not mandatory + if ($value == 'country_id' && in_array($tablib[$id],array('DictionaryVAT','DictionaryRegion','DictionaryCompanyType','DictionaryHolidayTypes','DictionaryRevenueStamp'))) continue; // For some pages, country is not mandatory + if ($value == 'country' && in_array($tablib[$id],array('DictionaryCanton','DictionaryCompanyType','DictionaryRevenueStamp'))) continue; // For some pages, country is not mandatory if ($value == 'localtax1' && empty($_POST['localtax1_type'])) continue; if ($value == 'localtax2' && empty($_POST['localtax2_type'])) continue; if ($value == 'color' && empty($_POST['color'])) continue; @@ -1321,7 +1321,7 @@ if ($id) // Can an entry be erased or disabled ? $iserasable=1;$isdisable=1; // true by default - if (isset($obj->code)) + if (isset($obj->code) && $id != 10) { if (($obj->code == '0' || $obj->code == '' || preg_match('/unknown/i',$obj->code))) { $iserasable = 0; $isdisable = 0; } else if ($obj->code == 'RECEP') { $iserasable = 0; $isdisable = 0; } @@ -1356,7 +1356,7 @@ if ($id) print "</td>"; // Modify link - if ($iserasable) print '<td align="center"><a href="'.$url.'action=edit#'.(! empty($obj->rowid)?$obj->rowid:(! empty($obj->code)?$obj->code:'')).'">'.img_edit().'</a></td>'; + if ($iserasable) print '<td align="center"><a class="reposition" href="'.$url.'action=edit">'.img_edit().'</a></td>'; else print '<td> </td>'; // Delete link @@ -1479,7 +1479,7 @@ function fieldList($fieldlist, $obj='', $tabname='', $context='') } // For state page, we do not show the country input (we link to region, not country) print '<td>'; $fieldname='country'; - print $form->select_country((! empty($obj->country_code)?$obj->country_code:(! empty($obj->country)?$obj->country:'')), $fieldname, '', 28); + print $form->select_country((! empty($obj->country_code)?$obj->country_code:(! empty($obj->country)?$obj->country:'')), $fieldname, '', 28, 'maxwidth300'); print '</td>'; } elseif ($fieldlist[$field] == 'country_id') diff --git a/htdocs/admin/events.php b/htdocs/admin/events.php index a2b5a24c82aa37be72a5229310e2173fc5e769e6..6092a95d0b9fd07f75e993a759dea89c2ca8dd65 100644 --- a/htdocs/admin/events.php +++ b/htdocs/admin/events.php @@ -70,7 +70,8 @@ if ($action == "save") * View */ -llxHeader('',$langs->trans("Audit")); +$wikihelp='EN:Setup_Security|FR:Paramétrage_Sécurité|ES:Configuración_Seguridad'; +llxHeader('',$langs->trans("Audit"),$wikihelp); //$linkback='<a href="'.DOL_URL_ROOT.'/admin/modules.php">'.$langs->trans("BackToModuleList").'</a>'; print load_fiche_titre($langs->trans("SecuritySetup"),'','title_setup'); diff --git a/htdocs/admin/ihm.php b/htdocs/admin/ihm.php index 6907e30f9795fb1c5cd223ac6cba1e9358e9cb43..af560e73c46a2b01938f98e6190213093bc5616d 100644 --- a/htdocs/admin/ihm.php +++ b/htdocs/admin/ihm.php @@ -56,24 +56,28 @@ if (empty($conf->use_javascript_ajax)) $searchformmodule=array('Module1Name','Module1Name','Module50Name','Module50Name','Module310Name','Module400Name'); } + +/* + * Action + */ + +if (GETPOST('cancel')) +{ + $action=''; +} + if ($action == 'update') { dolibarr_set_const($db, "MAIN_LANG_DEFAULT", $_POST["main_lang_default"],'chaine',0,'',$conf->entity); dolibarr_set_const($db, "MAIN_MULTILANGS", $_POST["main_multilangs"],'chaine',0,'',$conf->entity); - dolibarr_set_const($db, "MAIN_SIZE_LISTE_LIMIT", $_POST["main_size_liste_limit"],'chaine',0,'',$conf->entity); - dolibarr_set_const($db, "MAIN_SIZE_SHORTLISTE_LIMIT", $_POST["main_size_shortliste_limit"],'chaine',0,'',$conf->entity); - dolibarr_set_const($db, "MAIN_DISABLE_JAVASCRIPT", $_POST["main_disable_javascript"],'chaine',0,'',$conf->entity); - dolibarr_set_const($db, "MAIN_BUTTON_HIDE_UNAUTHORIZED", $_POST["MAIN_BUTTON_HIDE_UNAUTHORIZED"],'chaine',0,'',$conf->entity); - dolibarr_set_const($db, "MAIN_START_WEEK", $_POST["MAIN_START_WEEK"],'chaine',0,'',$conf->entity); - dolibarr_set_const($db, "MAIN_DEFAULT_WORKING_DAYS", $_POST["MAIN_DEFAULT_WORKING_DAYS"],'chaine',0,'',$conf->entity); - dolibarr_set_const($db, "MAIN_DEFAULT_WORKING_HOURS", $_POST["MAIN_DEFAULT_WORKING_HOURS"],'chaine',0,'',$conf->entity); - dolibarr_set_const($db, "MAIN_SHOW_LOGO", $_POST["MAIN_SHOW_LOGO"],'chaine',0,'',$conf->entity); - dolibarr_set_const($db, "MAIN_ACTIVATE_FILECACHE", $_POST["MAIN_ACTIVATE_FILECACHE"],'chaine',0,'',$conf->entity); - dolibarr_set_const($db, "MAIN_FIRSTNAME_NAME_POSITION", $_POST["MAIN_FIRSTNAME_NAME_POSITION"],'chaine',0,'',$conf->entity); dolibarr_set_const($db, "MAIN_THEME", $_POST["main_theme"],'chaine',0,'',$conf->entity); - $val=(join(',',(colorStringToArray(GETPOST('THEME_ELDY_TOPMENU_BACK1'),array())))); + $val=(join(',',(colorStringToArray(GETPOST('THEME_ELDY_BACKBODY'),array())))); + if ($val == '') dolibarr_del_const($db, 'THEME_ELDY_BACKBODY', $conf->entity); + else dolibarr_set_const($db, 'THEME_ELDY_BACKBODY', join(',',colorStringToArray(GETPOST('THEME_ELDY_BACKBODY'),array())),'chaine',0,'',$conf->entity); + + $val=(join(',',(colorStringToArray(GETPOST('THEME_ELDY_TOPMENU_BACK1'),array())))); if ($val == '') dolibarr_del_const($db, 'THEME_ELDY_TOPMENU_BACK1', $conf->entity); else dolibarr_set_const($db, 'THEME_ELDY_TOPMENU_BACK1', join(',',colorStringToArray(GETPOST('THEME_ELDY_TOPMENU_BACK1'),array())),'chaine',0,'',$conf->entity); @@ -81,7 +85,14 @@ if ($action == 'update') if ($val == '') dolibarr_del_const($db, 'THEME_ELDY_BACKTITLE1', $conf->entity); else dolibarr_set_const($db, 'THEME_ELDY_BACKTITLE1', join(',',colorStringToArray(GETPOST('THEME_ELDY_BACKTITLE1'),array())),'chaine',0,'',$conf->entity); - /* + if (GETPOST('THEME_ELDY_USE_HOVER') == '') dolibarr_del_const($db, "THEME_ELDY_USE_HOVER", $conf->entity); + else dolibarr_set_const($db, "THEME_ELDY_USE_HOVER", $_POST["THEME_ELDY_USE_HOVER"], 'chaine', 0, '', $conf->entity); + + $val=(join(',',(colorStringToArray(GETPOST('THEME_ELDY_TEXTLINK'),array())))); + if ($val == '') dolibarr_del_const($db, 'THEME_ELDY_TEXTLINK', $conf->entity); + else dolibarr_set_const($db, 'THEME_ELDY_TEXTLINK', join(',',colorStringToArray(GETPOST('THEME_ELDY_TEXTLINK'),array())),'chaine',0,'',$conf->entity); + + /* dolibarr_set_const($db, "MAIN_SEARCHFORM_CONTACT", $_POST["MAIN_SEARCHFORM_CONTACT"],'chaine',0,'',$conf->entity); dolibarr_set_const($db, "MAIN_SEARCHFORM_SOCIETE", $_POST["MAIN_SEARCHFORM_SOCIETE"],'chaine',0,'',$conf->entity); dolibarr_set_const($db, "MAIN_SEARCHFORM_PRODUITSERVICE", $_POST["MAIN_SEARCHFORM_PRODUITSERVICE"],'chaine',0,'',$conf->entity); @@ -91,15 +102,22 @@ if ($action == 'update') dolibarr_set_const($db, "MAIN_SEARCHFORM_EMPLOYEE", $_POST["MAIN_SEARCHFORM_EMPLOYEE"],'chaine',0,'',$conf->entity); */ + dolibarr_set_const($db, "MAIN_SIZE_LISTE_LIMIT", $_POST["main_size_liste_limit"],'chaine',0,'',$conf->entity); + dolibarr_set_const($db, "MAIN_SIZE_SHORTLISTE_LIMIT", $_POST["main_size_shortliste_limit"],'chaine',0,'',$conf->entity); + dolibarr_set_const($db, "MAIN_DISABLE_JAVASCRIPT", $_POST["main_disable_javascript"],'chaine',0,'',$conf->entity); + dolibarr_set_const($db, "MAIN_BUTTON_HIDE_UNAUTHORIZED", $_POST["MAIN_BUTTON_HIDE_UNAUTHORIZED"],'chaine',0,'',$conf->entity); + dolibarr_set_const($db, "MAIN_START_WEEK", $_POST["MAIN_START_WEEK"],'chaine',0,'',$conf->entity); + dolibarr_set_const($db, "MAIN_DEFAULT_WORKING_DAYS", $_POST["MAIN_DEFAULT_WORKING_DAYS"],'chaine',0,'',$conf->entity); + dolibarr_set_const($db, "MAIN_DEFAULT_WORKING_HOURS", $_POST["MAIN_DEFAULT_WORKING_HOURS"],'chaine',0,'',$conf->entity); + dolibarr_set_const($db, "MAIN_SHOW_LOGO", $_POST["MAIN_SHOW_LOGO"],'chaine',0,'',$conf->entity); + dolibarr_set_const($db, "MAIN_FIRSTNAME_NAME_POSITION", $_POST["MAIN_FIRSTNAME_NAME_POSITION"],'chaine',0,'',$conf->entity); + dolibarr_set_const($db, "MAIN_HELPCENTER_DISABLELINK", $_POST["MAIN_HELPCENTER_DISABLELINK"],'chaine',0,'',0); // Param for all entities dolibarr_set_const($db, "MAIN_MOTD", dol_htmlcleanlastbr($_POST["main_motd"]),'chaine',0,'',$conf->entity); dolibarr_set_const($db, "MAIN_HOME", dol_htmlcleanlastbr($_POST["main_home"]),'chaine',0,'',$conf->entity); dolibarr_set_const($db, "MAIN_HELP_DISABLELINK", $_POST["MAIN_HELP_DISABLELINK"],'chaine',0,'',0); // Param for all entities dolibarr_set_const($db, "MAIN_BUGTRACK_ENABLELINK", $_POST["MAIN_BUGTRACK_ENABLELINK"],'chaine',0,'',$conf->entity); - if (GETPOST('THEME_ELDY_USE_HOVER') == '') dolibarr_del_const($db, "THEME_ELDY_USE_HOVER", $conf->entity); - else dolibarr_set_const($db, "THEME_ELDY_USE_HOVER", $_POST["THEME_ELDY_USE_HOVER"], 'chaine', 0, '', $conf->entity); - // This one is not always defined if (isset($_POST["MAIN_USE_PREVIEW_TABS"])) dolibarr_set_const($db, "MAIN_USE_PREVIEW_TABS", $_POST["MAIN_USE_PREVIEW_TABS"],'chaine',0,'',$conf->entity); @@ -199,16 +217,6 @@ if ($action == 'edit') // Edit print '<td width="20"> </td>'; print '</tr>'; - // Activate FileCache - Developement - if ($conf->global->MAIN_FEATURES_LEVEL == 2 || ! empty($conf->global->MAIN_ACTIVATE_FILECACHE)) { - $var=!$var; - print '<tr '.$bc[$var].'><td width="35%">'.$langs->trans("EnableFileCache").'</td><td>'; - print $form->selectyesno('MAIN_ACTIVATE_FILECACHE',$conf->global->MAIN_ACTIVATE_FILECACHE,1); - print '</td>'; - print '<td width="20"> </td>'; - print '</tr>'; - } - // Max size of lists $var=!$var; print '<tr '.$bc[$var].'><td>'.$langs->trans("DefaultMaxSizeList").'</td><td><input class="flat" name="main_size_liste_limit" size="4" value="' . $conf->global->MAIN_SIZE_LISTE_LIMIT . '"></td>'; @@ -327,11 +335,12 @@ if ($action == 'edit') // Edit print '<br><div class="center">'; - print '<input class="button" type="submit" value="'.$langs->trans("Save").'">'; + print '<input class="button" type="submit" name="submit" value="'.$langs->trans("Save").'">'; + print ' '; + print '<input class="button" type="submit" name="cancel" value="'.$langs->trans("Cancel").'">'; print '</div>'; print '</form>'; - print '<br>'; } else // Show { @@ -393,14 +402,6 @@ else // Show print '<td width="20"> </td>'; print "</tr>"; - // Activate FileCache - Developement - if ($conf->global->MAIN_FEATURES_LEVEL == 2 || ! empty($conf->global->MAIN_ACTIVATE_FILECACHE)) { - $var=!$var; - print '<tr '.$bc[$var].'><td>'.$langs->trans("EnableFileCache").'</td><td>' . yn($conf->global->MAIN_ACTIVATE_FILECACHE) . '</td>'; - print '<td width="20"> </td>'; - print "</tr>"; - } - $var=!$var; print '<tr '.$bc[$var].'><td>'.$langs->trans("DefaultMaxSizeList").'</td><td>' . $conf->global->MAIN_SIZE_LISTE_LIMIT . '</td>'; print '<td width="20"> </td>'; @@ -505,7 +506,6 @@ else // Show print '<div class="tabsAction">'; print '<a class="butAction" href="'.$_SERVER["PHP_SELF"].'?action=edit">'.$langs->trans("Modify").'</a>'; print '</div>'; - print '<br>'; } diff --git a/htdocs/admin/modules.php b/htdocs/admin/modules.php index 25868b7b2c2cc86b8c0dd8b9ff1bef637f31aca2..92cc7d3bff53fd4b2cb06dbc4a17351d5be218f4 100644 --- a/htdocs/admin/modules.php +++ b/htdocs/admin/modules.php @@ -164,10 +164,15 @@ foreach ($modulesdir as $dir) $special = $objMod->special; $familykey = $objMod->family; + $moduleposition = ($objMod->module_position?$objMod->module_position:'500'); + if ($moduleposition == 500 && ($objMod->isCoreOrExternalModule() == 'external')) + { + $moduleposition = 800; + } if ($special == 1) $familykey='interface'; - $orders[$i] = $familyinfo[$familykey]['position']."_".$familykey."_".$j; // Sort by family, then by module number + $orders[$i] = $familyinfo[$familykey]['position']."_".$familykey."_".$moduleposition."_".$j; // Sort by family, then by module position then number $dirmod[$i] = $dir; // Set categ[$i] $specialstring = isset($specialtostring[$special])?$specialtostring[$special]:'unknown'; @@ -312,7 +317,7 @@ if ($mode != 'marketplace') foreach ($orders as $key => $value) { $tab=explode('_',$value); - $familypos=$tab[0]; $familykey=$tab[1]; $numero=$tab[2]; + $familyposition=$tab[0]; $familykey=$tab[1]; $module_position=$tab[2]; $numero=$tab[3]; $modName = $filename[$key]; $objMod = $modules[$key]; @@ -426,12 +431,13 @@ if ($mode != 'marketplace') } else { - print '<a class="reposition" href="modules.php?id='.$objMod->numero.'&action=reset&value=' . $modName . '&mode=' . $mode . '">'; + print '<a class="reposition" href="modules.php?id='.$objMod->numero.'&module_position='.$module_position.'&action=reset&value=' . $modName . '&mode=' . $mode . '">'; print img_picto($langs->trans("Activated"),'switch_on'); print '</a>'; } print '</td>'."\n"; + // Config link if (! empty($objMod->config_page_url) && !$disableSetup) { if (is_array($objMod->config_page_url)) @@ -489,7 +495,7 @@ if ($mode != 'marketplace') else { // Module non actif - print '<a class="reposition" href="modules.php?id='.$objMod->numero.'&action=set&value=' . $modName . '&mode=' . $mode . '">'; + print '<a class="reposition" href="modules.php?id='.$objMod->numero.'&module_position='.$module_position.'&action=set&value=' . $modName . '&mode=' . $mode . '">'; print img_picto($langs->trans("Disabled"),'switch_off'); print "</a>\n"; } diff --git a/htdocs/admin/perms.php b/htdocs/admin/perms.php index cf9dce45c08a8953d8149962d18e481f03300d92..aaf2f91688af5e758e2acb7b96d87a2324f99646 100644 --- a/htdocs/admin/perms.php +++ b/htdocs/admin/perms.php @@ -62,7 +62,8 @@ if ($action == 'remove') * View */ -llxHeader('',$langs->trans("DefaultRights")); +$wikihelp='EN:Setup_Security|FR:Paramétrage_Sécurité|ES:Configuración_Seguridad'; +llxHeader('',$langs->trans("DefaultRights"), $wikihelp); print load_fiche_titre($langs->trans("SecuritySetup"),'','title_setup'); diff --git a/htdocs/admin/proxy.php b/htdocs/admin/proxy.php index 080dafca744b12b5199a3ebb41cb82cd4931d6f6..4591c4636a8849a65cc26e8c8604c5fa499c994c 100644 --- a/htdocs/admin/proxy.php +++ b/htdocs/admin/proxy.php @@ -79,7 +79,8 @@ if (GETPOST("action") == 'set_proxy') $form = new Form($db); -llxHeader('',$langs->trans("Proxy")); +$wikihelp='EN:Setup_Security|FR:Paramétrage_Sécurité|ES:Configuración_Seguridad'; +llxHeader('',$langs->trans("Proxy"), $wikihelp); print load_fiche_titre($langs->trans("SecuritySetup"),'','title_setup'); diff --git a/htdocs/admin/security.php b/htdocs/admin/security.php index ea81e63305e58ca69b103087ded95ec5517972e6..97cae20377c6c32bc1d4ca406a84e343a85ee569 100644 --- a/htdocs/admin/security.php +++ b/htdocs/admin/security.php @@ -187,7 +187,8 @@ if ($action == 'maj_pattern') */ $form = new Form($db); -llxHeader('',$langs->trans("Passwords")); +$wikihelp='EN:Setup_Security|FR:Paramétrage_Sécurité|ES:Configuración_Seguridad'; +llxHeader('',$langs->trans("Passwords"),$wikihelp); print load_fiche_titre($langs->trans("SecuritySetup"),'','title_setup'); diff --git a/htdocs/admin/security_file.php b/htdocs/admin/security_file.php index d1237a8c734414732736f35f28eb7a449edad7cd..1213a9b22388ea260a22f246c5bf9d17cc7f2406 100644 --- a/htdocs/admin/security_file.php +++ b/htdocs/admin/security_file.php @@ -109,7 +109,8 @@ else if ($action == 'delete') $form = new Form($db); -llxHeader('',$langs->trans("Files")); +$wikihelp='EN:Setup_Security|FR:Paramétrage_Sécurité|ES:Configuración_Seguridad'; +llxHeader('',$langs->trans("Files"),$wikihelp); print load_fiche_titre($langs->trans("SecuritySetup"),'','title_setup'); diff --git a/htdocs/admin/security_other.php b/htdocs/admin/security_other.php index cd84962107d85068bce8babff5525eb1c2437746..ac0a1e883eb465c0209be20da36c97e8b704f53d 100644 --- a/htdocs/admin/security_other.php +++ b/htdocs/admin/security_other.php @@ -87,7 +87,8 @@ else if ($action == 'updateform') $form = new Form($db); -llxHeader('',$langs->trans("Miscellaneous")); +$wikihelp='EN:Setup_Security|FR:Paramétrage_Sécurité|ES:Configuración_Seguridad'; +llxHeader('',$langs->trans("Miscellaneous"),$wikihelp); print load_fiche_titre($langs->trans("SecuritySetup"),'','title_setup'); diff --git a/htdocs/admin/askpricesupplier.php b/htdocs/admin/supplier_proposal.php similarity index 80% rename from htdocs/admin/askpricesupplier.php rename to htdocs/admin/supplier_proposal.php index 9afcd1a8f62bb0c8b293f883ad25994d61f54f1f..64122636a089ab84ae9b1d2b85b42785b9ab1d35 100644 --- a/htdocs/admin/askpricesupplier.php +++ b/htdocs/admin/supplier_proposal.php @@ -25,12 +25,12 @@ require '../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/comm/askpricesupplier/class/askpricesupplier.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/askpricesupplier.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/supplier_proposal/class/supplier_proposal.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/supplier_proposal.lib.php'; $langs->load("admin"); $langs->load("errors"); $langs->load('other'); -$langs->load('askpricesupplier'); +$langs->load('supplier_proposal'); if (! $user->admin) accessforbidden(); @@ -38,7 +38,7 @@ $action = GETPOST('action','alpha'); $value = GETPOST('value','alpha'); $label = GETPOST('label','alpha'); $scandir = GETPOST('scandir','alpha'); -$type='askpricesupplier'; +$type='supplier_proposal'; /* * Actions @@ -46,9 +46,9 @@ $type='askpricesupplier'; $error=0; if ($action == 'updateMask') { - $maskconstaskpricesupplier=GETPOST('maskconstaskpricesupplier','alpha'); - $maskaskpricesupplier=GETPOST('maskaskpricesupplier','alpha'); - if ($maskconstaskpricesupplier) $res = dolibarr_set_const($db,$maskconstaskpricesupplier,$maskaskpricesupplier,'chaine',0,'',$conf->entity); + $maskconstsupplier_proposal=GETPOST('maskconstsupplier_proposal','alpha'); + $masksupplier_proposal=GETPOST('masksupplier_proposal','alpha'); + if ($maskconstsupplier_proposal) $res = dolibarr_set_const($db,$maskconstsupplier_proposal,$masksupplier_proposal,'chaine',0,'',$conf->entity); if (! $res > 0) $error++; @@ -66,15 +66,15 @@ if ($action == 'specimen') { $modele=GETPOST('module','alpha'); - $askpricesupplier = new AskPriceSupplier($db); - $askpricesupplier->initAsSpecimen(); + $supplier_proposal = new SupplierProposal($db); + $supplier_proposal->initAsSpecimen(); // 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/askpricesupplier/doc/pdf_".$modele.".modules.php"); + $file=dol_buildpath($reldir."core/modules/supplier_proposal/doc/pdf_".$modele.".modules.php"); if (file_exists($file)) { $filefound=1; @@ -89,9 +89,9 @@ if ($action == 'specimen') $module = new $classname($db); - if ($module->write_file($askpricesupplier,$langs) > 0) + if ($module->write_file($supplier_proposal,$langs) > 0) { - header("Location: ".DOL_URL_ROOT."/document.php?modulepart=askpricesupplier&file=SPECIMEN.pdf"); + header("Location: ".DOL_URL_ROOT."/document.php?modulepart=supplier_proposal&file=SPECIMEN.pdf"); return; } else @@ -107,11 +107,11 @@ if ($action == 'specimen') } } -if ($action == 'set_ASKPRICESUPPLIER_DRAFT_WATERMARK') +if ($action == 'set_SUPPLIER_PROPOSAL_DRAFT_WATERMARK') { - $draft = GETPOST('ASKPRICESUPPLIER_DRAFT_WATERMARK','alpha'); + $draft = GETPOST('SUPPLIER_PROPOSAL_DRAFT_WATERMARK','alpha'); - $res = dolibarr_set_const($db, "ASKPRICESUPPLIER_DRAFT_WATERMARK",trim($draft),'chaine',0,'',$conf->entity); + $res = dolibarr_set_const($db, "SUPPLIER_PROPOSAL_DRAFT_WATERMARK",trim($draft),'chaine',0,'',$conf->entity); if (! $res > 0) $error++; if (! $error) @@ -124,11 +124,11 @@ if ($action == 'set_ASKPRICESUPPLIER_DRAFT_WATERMARK') } } -if ($action == 'set_ASKPRICESUPPLIER_FREE_TEXT') +if ($action == 'set_SUPPLIER_PROPOSAL_FREE_TEXT') { - $freetext = GETPOST('ASKPRICESUPPLIER_FREE_TEXT'); // No alpha here, we want exact string + $freetext = GETPOST('SUPPLIER_PROPOSAL_FREE_TEXT'); // No alpha here, we want exact string - $res = dolibarr_set_const($db, "ASKPRICESUPPLIER_FREE_TEXT",$freetext,'chaine',0,'',$conf->entity); + $res = dolibarr_set_const($db, "SUPPLIER_PROPOSAL_FREE_TEXT",$freetext,'chaine',0,'',$conf->entity); if (! $res > 0) $error++; @@ -142,9 +142,9 @@ if ($action == 'set_ASKPRICESUPPLIER_FREE_TEXT') } } -if ($action == 'set_BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER') +if ($action == 'set_BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL') { - $res = dolibarr_set_const($db, "BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER",$value,'chaine',0,'',$conf->entity); + $res = dolibarr_set_const($db, "BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL",$value,'chaine',0,'',$conf->entity); if (! $res > 0) $error++; @@ -198,15 +198,15 @@ else if ($action == 'del') $ret = delDocumentModel($value, $type); if ($ret > 0) { - if ($conf->global->ASKPRICESUPPLIER_ADDON_PDF == "$value") dolibarr_del_const($db, 'ASKPRICESUPPLIER_ADDON_PDF',$conf->entity); + if ($conf->global->SUPPLIER_PROPOSAL_ADDON_PDF == "$value") dolibarr_del_const($db, 'SUPPLIER_PROPOSAL_ADDON_PDF',$conf->entity); } } else if ($action == 'setdoc') { - if (dolibarr_set_const($db, "ASKPRICESUPPLIER_ADDON_PDF",$value,'chaine',0,'',$conf->entity)) + if (dolibarr_set_const($db, "SUPPLIER_PROPOSAL_ADDON_PDF",$value,'chaine',0,'',$conf->entity)) { - $conf->global->ASKPRICESUPPLIER_ADDON_PDF = $value; + $conf->global->SUPPLIER_PROPOSAL_ADDON_PDF = $value; } // On active le modele @@ -222,7 +222,7 @@ else if ($action == 'setmod') // TODO Verifier si module numerotation choisi peut etre active // par appel methode canBeActivated - dolibarr_set_const($db, "ASKPRICESUPPLIER_ADDON",$value,'chaine',0,'',$conf->entity); + dolibarr_set_const($db, "SUPPLIER_PROPOSAL_ADDON",$value,'chaine',0,'',$conf->entity); } @@ -233,23 +233,23 @@ else if ($action == 'setmod') $dirmodels=array_merge(array('/'),(array) $conf->modules_parts['models']); -llxHeader('',$langs->trans("AskPriceSupplierSetup")); +llxHeader('',$langs->trans("SupplierProposalSetup")); $form=new Form($db); //if ($mesg) print $mesg; $linkback='<a href="'.DOL_URL_ROOT.'/admin/modules.php">'.$langs->trans("BackToModuleList").'</a>'; -print load_fiche_titre($langs->trans("AskPriceSupplierSetup"),$linkback,'title_setup'); +print load_fiche_titre($langs->trans("SupplierProposalSetup"),$linkback,'title_setup'); -$head = askpricesupplier_admin_prepare_head(); +$head = supplier_proposal_admin_prepare_head(); -dol_fiche_head($head, 'general', $langs->trans("CommRequests"), 0, 'askpricesupplier'); +dol_fiche_head($head, 'general', $langs->trans("CommRequests"), 0, 'supplier_proposal'); /* * Module numerotation */ -print load_fiche_titre($langs->trans("AskPriceSupplierNumberingModules"),'',''); +print load_fiche_titre($langs->trans("SupplierProposalNumberingModules"),'',''); print '<table class="noborder" width="100%">'; print '<tr class="liste_titre">'; @@ -263,7 +263,7 @@ print '</tr>'."\n"; clearstatcache(); foreach ($dirmodels as $reldir) { - $dir = dol_buildpath($reldir."core/modules/askpricesupplier/"); + $dir = dol_buildpath($reldir."core/modules/supplier_proposal/"); if (is_dir($dir)) { @@ -274,7 +274,7 @@ foreach ($dirmodels as $reldir) while (($file = readdir($handle))!==false) { - if (substr($file, 0, 21) == 'mod_askpricesupplier_' && substr($file, dol_strlen($file)-3, 3) == 'php') + if (substr($file, 0, 21) == 'mod_supplier_proposal_' && substr($file, dol_strlen($file)-3, 3) == 'php') { $file = substr($file, 0, dol_strlen($file)-4); @@ -302,7 +302,7 @@ foreach ($dirmodels as $reldir) print '</td>'."\n"; print '<td align="center">'; - if ($conf->global->ASKPRICESUPPLIER_ADDON == "$file") + if ($conf->global->SUPPLIER_PROPOSAL_ADDON == "$file") { print img_picto($langs->trans("Activated"),'switch_on'); } @@ -314,13 +314,13 @@ foreach ($dirmodels as $reldir) } print '</td>'; - $askpricesupplier=new AskPriceSupplier($db); - $askpricesupplier->initAsSpecimen(); + $supplier_proposal=new SupplierProposal($db); + $supplier_proposal->initAsSpecimen(); // Info $htmltooltip=''; $htmltooltip.=''.$langs->trans("Version").': <b>'.$module->getVersion().'</b><br>'; - $nextval=$module->getNextValue($mysoc,$askpricesupplier); + $nextval=$module->getNextValue($mysoc,$supplier_proposal); if ("$nextval" != $langs->trans("NotAvailable")) { // Keep " on nextval $htmltooltip.=''.$langs->trans("NextValue").': '; if ($nextval) { @@ -351,7 +351,7 @@ print "</table><br>\n"; * Document templates generators */ -print load_fiche_titre($langs->trans("AskPriceSupplierPDFModules"),'',''); +print load_fiche_titre($langs->trans("SupplierProposalPDFModules"),'',''); // Load array def with activated templates $def = array(); @@ -394,7 +394,7 @@ foreach ($dirmodels as $reldir) { foreach (array('','/doc') as $valdir) { - $dir = dol_buildpath($reldir."core/modules/askpricesupplier".$valdir); + $dir = dol_buildpath($reldir."core/modules/supplier_proposal".$valdir); if (is_dir($dir)) { @@ -452,7 +452,7 @@ foreach ($dirmodels as $reldir) // Defaut print "<td align=\"center\">"; - if ($conf->global->ASKPRICESUPPLIER_ADDON_PDF == "$name") + if ($conf->global->SUPPLIER_PROPOSAL_ADDON_PDF == "$name") { print img_picto($langs->trans("Default"),'on'); } @@ -526,10 +526,10 @@ print "</tr>"; $var=! $var; print '<form action="'.$_SERVER["PHP_SELF"].'" method="post">'; print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">'; -print '<input type="hidden" name="action" value="set_ASKPRICESUPPLIER_FREE_TEXT">'; +print '<input type="hidden" name="action" value="set_SUPPLIER_PROPOSAL_FREE_TEXT">'; print '<tr '.$bc[$var].'><td colspan="2">'; -print $langs->trans("FreeLegalTextOnAskPriceSupplier").' ('.$langs->trans("AddCRIfTooLong").')<br>'; -$variablename='ASKPRICESUPPLIER_FREE_TEXT'; +print $langs->trans("FreeLegalTextOnSupplierProposal").' ('.$langs->trans("AddCRIfTooLong").')<br>'; +$variablename='SUPPLIER_PROPOSAL_FREE_TEXT'; if (empty($conf->global->PDF_ALLOW_HTML_FOR_FREE_TEXT)) { print '<textarea name="'.$variablename.'" class="flat" cols="120">'.$conf->global->$variablename.'</textarea>'; @@ -548,10 +548,10 @@ print '</form>'; $var=!$var; print "<form method=\"post\" action=\"".$_SERVER["PHP_SELF"]."\">"; print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">'; -print "<input type=\"hidden\" name=\"action\" value=\"set_ASKPRICESUPPLIER_DRAFT_WATERMARK\">"; +print "<input type=\"hidden\" name=\"action\" value=\"set_SUPPLIER_PROPOSAL_DRAFT_WATERMARK\">"; print '<tr '.$bc[$var].'><td colspan="2">'; -print $langs->trans("WatermarkOnDraftAskPriceSupplier").'<br>'; -print '<input size="50" class="flat" type="text" name="ASKPRICESUPPLIER_DRAFT_WATERMARK" value="'.$conf->global->ASKPRICESUPPLIER_DRAFT_WATERMARK.'">'; +print $langs->trans("WatermarkOnDraftSupplierProposal").'<br>'; +print '<input size="50" class="flat" type="text" name="SUPPLIER_PROPOSAL_DRAFT_WATERMARK" value="'.$conf->global->SUPPLIER_PROPOSAL_DRAFT_WATERMARK.'">'; print '</td><td align="right">'; print '<input type="submit" class="button" value="'.$langs->trans("Modify").'">'; print "</td></tr>\n"; @@ -561,20 +561,20 @@ if ($conf->banque->enabled) { $var=!$var; print '<tr '.$bc[$var].'><td>'; - print $langs->trans("BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER").'</td><td> </td><td align="right">'; + print $langs->trans("BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL").'</td><td> </td><td align="right">'; if (! empty($conf->use_javascript_ajax)) { - print ajax_constantonoff('BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER'); + print ajax_constantonoff('BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL'); } else { - if (empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER)) + if (empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL)) { - print '<a href="'.$_SERVER['PHP_SELF'].'?action=set_BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER&value=1">'.img_picto($langs->trans("Disabled"),'switch_off').'</a>'; + print '<a href="'.$_SERVER['PHP_SELF'].'?action=set_BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL&value=1">'.img_picto($langs->trans("Disabled"),'switch_off').'</a>'; } else { - print '<a href="'.$_SERVER['PHP_SELF'].'?action=set_BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER&value=0">'.img_picto($langs->trans("Enabled"),'switch_on').'</a>'; + print '<a href="'.$_SERVER['PHP_SELF'].'?action=set_BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL&value=0">'.img_picto($langs->trans("Enabled"),'switch_on').'</a>'; } } print '</td></tr>'; @@ -583,7 +583,7 @@ else { $var=!$var; print '<tr '.$bc[$var].'><td>'; - print $langs->trans("BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER").'</td><td> </td><td align="center">'.$langs->trans('NotAvailable').'</td></tr>'; + print $langs->trans("BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL").'</td><td> </td><td align="center">'.$langs->trans('NotAvailable').'</td></tr>'; } print '</table>'; @@ -601,7 +601,7 @@ print "<tr class=\"liste_titre\">\n"; print " <td>".$langs->trans("Name")."</td>\n"; print " <td>".$langs->trans("Value")."</td>\n"; print "</tr>\n"; -print "<tr ".$bc[false].">\n <td width=\"140\">".$langs->trans("PathDirectory")."</td>\n <td>".$conf->askpricesupplier->dir_output."</td>\n</tr>\n"; +print "<tr ".$bc[false].">\n <td width=\"140\">".$langs->trans("PathDirectory")."</td>\n <td>".$conf->supplier_proposal->dir_output."</td>\n</tr>\n"; print "</table>\n<br>"; $db->close(); diff --git a/htdocs/admin/user.php b/htdocs/admin/user.php index 85ea850110768495d08ed84fd099e5af5091c2fb..f76762c8334c0af2a606859750a1dd27a118f682 100644 --- a/htdocs/admin/user.php +++ b/htdocs/admin/user.php @@ -100,7 +100,7 @@ print load_fiche_titre($langs->trans("UsersSetup"),$linkback,'title_setup'); $head=user_admin_prepare_head(); -dol_fiche_head($head,'card', $langs->trans("User"), 0, 'user'); +dol_fiche_head($head,'card', $langs->trans("MenuUsersAndGroups"), 0, 'user'); print '<table class="noborder" width="100%">'; print '<tr class="liste_titre">'; diff --git a/htdocs/categories/class/categorie.class.php b/htdocs/categories/class/categorie.class.php index 46a48b31bf868925145a08d3a513ebb6184a78bf..18ae5e764e38e210ae12e11f18d95eb6985ecde9 100644 --- a/htdocs/categories/class/categorie.class.php +++ b/htdocs/categories/class/categorie.class.php @@ -1508,9 +1508,11 @@ class Categorie extends CommonObject /** * Update ou cree les traductions des infos produits * + * @param User $user Object user + * * @return int <0 if KO, >0 if OK */ - function setMultiLangs() + function setMultiLangs($user) { global $langs; @@ -1574,6 +1576,15 @@ class Categorie extends CommonObject } } } + + // Call trigger + $result = $this->call_trigger('CATEGORY_SET_MULTILANGS',$user); + if ($result < 0) { + $this->error = $this->db->lasterror(); + return -1; + } + // End call triggers + return 1; } diff --git a/htdocs/categories/traduction.php b/htdocs/categories/traduction.php index 98f02c7a7428ab7fd19d95b6d84bf4e25ca03a18..02033b27bff51657d0a11388f53ab414b78feb03 100644 --- a/htdocs/categories/traduction.php +++ b/htdocs/categories/traduction.php @@ -88,7 +88,7 @@ $cancel != $langs->trans("Cancel") && } // sauvegarde en base - if ( $object->setMultiLangs() > 0 ) + if ( $object->setMultiLangs($user) > 0 ) { $action = ''; } @@ -121,7 +121,7 @@ $cancel != $langs->trans("Cancel") && } } - if ( $object->setMultiLangs() > 0 ) + if ( $object->setMultiLangs($user) > 0 ) { $action = ''; } diff --git a/htdocs/comm/action/card.php b/htdocs/comm/action/card.php index b2669740f38ce7440c5f9874fc36bc9e7051b2f8..955e8d9e0f148c864efd83a4e9ed333a8abdf572 100644 --- a/htdocs/comm/action/card.php +++ b/htdocs/comm/action/card.php @@ -1173,7 +1173,7 @@ if ($id > 0) } // Title - print '<tr><td>'.$langs->trans("Title").'</td><td colspan="3">'.$object->label.'</td></tr>'; + print '<tr><td>'.$langs->trans("Title").'</td><td colspan="3">'.dol_htmlentities($object->label).'</td></tr>'; // Full day event print '<tr><td>'.$langs->trans("EventOnFullDay").'</td><td colspan="3">'.yn($object->fulldayevent, 3).'</td></tr>'; diff --git a/htdocs/comm/action/class/actioncomm.class.php b/htdocs/comm/action/class/actioncomm.class.php index acee9c383743e9769b9dc129e45453f50dd85a9d..55dd28d80293dce5d7df7a37f91fd2e2cc2c4901 100644 --- a/htdocs/comm/action/class/actioncomm.class.php +++ b/htdocs/comm/action/class/actioncomm.class.php @@ -189,6 +189,7 @@ class ActionComm extends CommonObject // Check parameters if (empty($this->userownerid)) { + dol_syslog("You tried to create an event but mandatory property ownerid was not defined", LOG_WARNING); $this->errors[]='ErrorPropertyUserowneridNotDefined'; return -1; } diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index fcac4ba9de112e6f2de8cfdaf77c33c80f22484d..9bb7a815d4635ea40f4a3b6c71d13f1bd077173f 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -439,7 +439,8 @@ class Propal extends CommonObject // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $localtaxes_type=getLocalTaxesFromRate($txtva,0,$this->thirdparty,$mysoc); - + $txtva = preg_replace('/\s*\(.*\)/','',$txtva); // Remove code into vatrate. + $tabprice=calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $product_type, $mysoc, $localtaxes_type); $total_ht = $tabprice[0]; @@ -600,7 +601,8 @@ class Propal extends CommonObject // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $localtaxes_type=getLocalTaxesFromRate($txtva,0,$this->thirdparty,$mysoc); - + $txtva = preg_replace('/\s*\(.*\)/','',$txtva); // Remove code into vatrate. + $tabprice=calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $type, $mysoc, $localtaxes_type); $total_ht = $tabprice[0]; $total_tva = $tabprice[1]; @@ -2739,7 +2741,7 @@ class Propal extends CommonObject if (! empty($this->total_ht)) $label.= '<br><b>' . $langs->trans('AmountHT') . ':</b> ' . price($this->total_ht, 0, $langs, 0, -1, -1, $conf->currency); if (! empty($this->total_tva)) - $label.= '<br><b>' . $langs->trans('TVA') . ':</b> ' . price($this->total_tva, 0, $langs, 0, -1, -1, $conf->currency); + $label.= '<br><b>' . $langs->trans('VAT') . ':</b> ' . price($this->total_tva, 0, $langs, 0, -1, -1, $conf->currency); if (! empty($this->total_ttc)) $label.= '<br><b>' . $langs->trans('AmountTTC') . ':</b> ' . price($this->total_ttc, 0, $langs, 0, -1, -1, $conf->currency); $linkclose = '" title="'.dol_escape_htmltag($label, 1).'" class="classfortooltip">'; diff --git a/htdocs/comm/propal/list.php b/htdocs/comm/propal/list.php index 8bd5407ef03fb224f45cd3cb794b2b0a81318027..2237f41b2996287639824c776ea430159aca08e1 100644 --- a/htdocs/comm/propal/list.php +++ b/htdocs/comm/propal/list.php @@ -306,7 +306,7 @@ if ($result) $moreforfilter.='</div>'; } // If the user can view prospects other than his' - if ($conf->categorie->enabled && $user->rights->produit->lire) + if ($conf->categorie->enabled && ($user->rights->produit->lire || $user->rights->service->lire)) { include_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php'; $moreforfilter.='<div class="divsearchfield">'; @@ -322,7 +322,7 @@ if ($result) print '</div>'; } - print '<table class="tagtable liste'.($moreforfilter?" listwithfilterbefore":"").'">'; + print '<table class="tagtable liste'.($moreforfilter?" listwithfilterbefore":"").'">'."\n"; print '<tr class="liste_titre">'; print_liste_field_titre($langs->trans('Ref'),$_SERVER["PHP_SELF"],'p.ref','',$param,'',$sortfield,$sortorder); diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php index cfa0d773acc04a1e871bdbbc0302d1d6dc2bd3b1..fbaba482c502c53736ed1f72755c190f59486db5 100644 --- a/htdocs/commande/card.php +++ b/htdocs/commande/card.php @@ -255,6 +255,7 @@ if (empty($reshook)) $object->demand_reason_id = GETPOST('demand_reason_id'); $object->date_livraison = $datelivraison; $object->shipping_method_id = GETPOST('shipping_method_id', 'int'); + $object->warehouse_id = GETPOST('warehouse_id', 'int'); $object->fk_delivery_address = GETPOST('fk_address'); $object->contactid = GETPOST('contactid'); $object->fk_incoterms = GETPOST('incoterm_id', 'int'); @@ -549,6 +550,14 @@ if (empty($reshook)) } } + // warehouse + else if ($action == 'setwarehouse' && $user->rights->commande->creer) { + $result = $object->setWarehouse(GETPOST('warehouse_id', 'int')); + if ($result < 0) { + setEventMessages($object->error, $object->errors, 'errors'); + } + } + else if ($action == 'setremisepercent' && $user->rights->commande->creer) { $result = $object->set_remise($user, GETPOST('remise_percent')); } @@ -1249,8 +1258,10 @@ if ($action == 'create' && $user->rights->commande->creer) if ($socid > 0) $res = $soc->fetch($socid); - if (! empty($origin) && ! empty($originid)) - { + $projectid = 0; + $remise_absolue = 0; + + if (! empty($origin) && ! empty($originid)) { // Parse element/subelement (ex: project_task) $element = $subelement = $origin; if (preg_match('/^([^_]+)_([^_]+)/i', $origin, $regs)) { @@ -1260,6 +1271,20 @@ if ($action == 'create' && $user->rights->commande->creer) if ($element == 'project') { $projectid = $originid; + + if (!$cond_reglement_id) { + $cond_reglement_id = $soc->cond_reglement_id; + } + if (!$mode_reglement_id) { + $mode_reglement_id = $soc->mode_reglement_id; + } + if (!$remise_percent) { + $remise_percent = $soc->remise_percent; + } + if (!$dateorder) { + // Do not set 0 here (0 for a date is 1970) + $dateorder = (empty($dateinvoice)?(empty($conf->global->MAIN_AUTOFILL_DATE_ODER)?-1:''):$dateorder); + } } else { // For compatibility if ($element == 'order' || $element == 'commande') { @@ -1295,6 +1320,7 @@ if ($action == 'create' && $user->rights->commande->creer) $fk_account = (! empty($objectsrc->fk_account)?$objectsrc->fk_account:(! empty($soc->fk_account)?$soc->fk_account:0)); $availability_id = (!empty($objectsrc->availability_id)?$objectsrc->availability_id:(!empty($soc->availability_id)?$soc->availability_id:0)); $shipping_method_id = (! empty($objectsrc->shipping_method_id)?$objectsrc->shipping_method_id:(! empty($soc->shipping_method_id)?$soc->shipping_method_id:0)); + $warehouse_id = (! empty($objectsrc->warehouse_id)?$objectsrc->warehouse_id:(! empty($soc->warehouse_id)?$soc->warehouse_id:0)); $demand_reason_id = (!empty($objectsrc->demand_reason_id)?$objectsrc->demand_reason_id:(!empty($soc->demand_reason_id)?$soc->demand_reason_id:0)); $remise_percent = (!empty($objectsrc->remise_percent)?$objectsrc->remise_percent:(!empty($soc->remise_percent)?$soc->remise_percent:0)); $remise_absolue = (!empty($objectsrc->remise_absolue)?$objectsrc->remise_absolue:(!empty($soc->remise_absolue)?$soc->remise_absolue:0)); @@ -1316,6 +1342,7 @@ if ($action == 'create' && $user->rights->commande->creer) $fk_account = $soc->fk_account; $availability_id = $soc->availability_id; $shipping_method_id = $soc->shipping_method_id; + $warehouse_id = $soc->warehouse_id; $demand_reason_id = $soc->demand_reason_id; $remise_percent = $soc->remise_percent; $remise_absolue = 0; @@ -1448,6 +1475,15 @@ if ($action == 'create' && $user->rights->commande->creer) print '</td></tr>'; } + // Warehouse + if (! empty($conf->expedition->enabled) && ! empty($conf->global->WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER)) { + require_once DOL_DOCUMENT_ROOT.'/product/class/html.formproduct.class.php'; + $formproduct=new FormProduct($db); + print '<tr><td>' . $langs->trans('Warehouse') . '</td><td colspan="2">'; + print $formproduct->selectWarehouses($warehouse_id, 'warehouse_id', '', 1); + print '</td></tr>'; + } + // What trigger creation print '<tr><td>' . $langs->trans('Source') . '</td><td colspan="2">'; $form->selectInputReason($demand_reason_id, 'demand_reason_id', '', 1); @@ -1536,9 +1572,23 @@ if ($action == 'create' && $user->rights->commande->creer) print '<input type="hidden" name="origin" value="' . $objectsrc->element . '">'; print '<input type="hidden" name="originid" value="' . $objectsrc->id . '">'; - $newclassname = $classname; - if ($newclassname == 'Propal') - $newclassname = 'CommercialProposal'; + switch ($classname) { + case 'Propal': + $newclassname = 'CommercialProposal'; + break; + case 'Commande': + $newclassname = 'Order'; + break; + case 'Expedition': + $newclassname = 'Sending'; + break; + case 'Contrat': + $newclassname = 'Contract'; + break; + default: + $newclassname = $classname; + } + print '<tr><td>' . $langs->trans($newclassname) . '</td><td colspan="2">' . $objectsrc->getNomUrl(1) . '</td></tr>'; print '<tr><td>' . $langs->trans('TotalHT') . '</td><td colspan="2">' . price($objectsrc->total_ht) . '</td></tr>'; print '<tr><td>' . $langs->trans('TotalVAT') . '</td><td colspan="2">' . price($objectsrc->total_tva) . "</td></tr>"; @@ -1946,6 +1996,27 @@ if ($action == 'create' && $user->rights->commande->creer) print '</tr>'; } + // Warehouse + if (! empty($conf->expedition->enabled) && ! empty($conf->global->WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER)) { + require_once DOL_DOCUMENT_ROOT.'/product/class/html.formproduct.class.php'; + $formproduct=new FormProduct($db); + print '<tr><td>'; + print '<table width="100%" class="nobordernopadding"><tr><td>'; + print $langs->trans('Warehouse'); + print '</td>'; + if ($action != 'editwarehouse' && $user->rights->commande->creer) + print '<td align="right"><a href="'.$_SERVER["PHP_SELF"].'?action=editwarehouse&id='.$object->id.'">'.img_edit($langs->trans('SetWarehouse'),1).'</a></td>'; + print '</tr></table>'; + print '</td><td colspan="3">'; + if ($action == 'editwarehouse') { + $formproduct->formSelectWarehouses($_SERVER['PHP_SELF'].'?id='.$object->id, $object->warehouse_id, 'warehouse_id', 1); + } else { + $formproduct->formSelectWarehouses($_SERVER['PHP_SELF'].'?id='.$object->id, $object->warehouse_id, 'none'); + } + print '</td>'; + print '</tr>'; + } + // Terms of payment print '<tr><td height="10">'; print '<table class="nobordernopadding" width="100%"><tr><td>'; diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index 3c0df82fc888cf3dc3f6dbf2f94676de012912f3..abff0a9c078abecf7e892a004d0536ca47e380ce 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -1159,7 +1159,7 @@ class Commande extends CommonOrder { global $mysoc, $conf, $langs; - dol_syslog(get_class($this)."::addline commandeid=$this->id, desc=$desc, pu_ht=$pu_ht, qty=$qty, txtva=$txtva, fk_product=$fk_product, remise_percent=$remise_percent, info_bits=$info_bits, fk_remise_except=$fk_remise_except, price_base_type=$price_base_type, pu_ttc=$pu_ttc, date_start=$date_start, date_end=$date_end, type=$type, fk_unit=$fk_unit", LOG_DEBUG); + dol_syslog(get_class($this)."::addline commandeid=$this->id, desc=$desc, pu_ht=$pu_ht, qty=$qty, txtva=$txtva, fk_product=$fk_product, remise_percent=$remise_percent, info_bits=$info_bits, fk_remise_except=$fk_remise_except, price_base_type=$price_base_type, pu_ttc=$pu_ttc, date_start=$date_start, date_end=$date_end, type=$type special_code=$special_code, fk_unit=$fk_unit", LOG_DEBUG); include_once DOL_DOCUMENT_ROOT.'/core/lib/price.lib.php'; @@ -1220,7 +1220,8 @@ class Commande extends CommonOrder // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $localtaxes_type=getLocalTaxesFromRate($txtva,0,$this->thirdparty,$mysoc); - + $txtva = preg_replace('/\s*\(.*\)/','',$txtva); // Remove code into vatrate. + $tabprice = calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $product_type,'', $localtaxes_type); $total_ht = $tabprice[0]; $total_tva = $tabprice[1]; @@ -2442,7 +2443,8 @@ class Commande extends CommonOrder // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $localtaxes_type=getLocalTaxesFromRate($txtva,0,$this->thirdparty, $mysoc); - + $txtva = preg_replace('/\s*\(.*\)/','',$txtva); // Remove code into vatrate. + $tabprice=calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $type, $mysoc, $localtaxes_type); $total_ht = $tabprice[0]; $total_tva = $tabprice[1]; @@ -2964,7 +2966,7 @@ class Commande extends CommonOrder if (! empty($this->total_ht)) $label.= '<br><b>' . $langs->trans('AmountHT') . ':</b> ' . price($this->total_ht, 0, $langs, 0, -1, -1, $conf->currency); if (! empty($this->total_tva)) - $label.= '<br><b>' . $langs->trans('TVA') . ':</b> ' . price($this->total_tva, 0, $langs, 0, -1, -1, $conf->currency); + $label.= '<br><b>' . $langs->trans('VAT') . ':</b> ' . price($this->total_tva, 0, $langs, 0, -1, -1, $conf->currency); if (! empty($this->total_ttc)) $label.= '<br><b>' . $langs->trans('AmountTTC') . ':</b> ' . price($this->total_ttc, 0, $langs, 0, -1, -1, $conf->currency); diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php index 46ee8687fbb7118b1d6122f48820c578a2369e92..0323bd4ec09ecb494a4c9637f3008dacf131e140 100644 --- a/htdocs/commande/list.php +++ b/htdocs/commande/list.php @@ -302,8 +302,8 @@ if ($resql) $moreforfilter.=$form->select_dolusers($search_user, 'search_user', 1, '', 0, '', '', 0, 0, 0, '', 0, '', 'maxwidth300'); $moreforfilter.='</div>'; } - // If the user can view categories or products - if ($conf->categorie->enabled && $user->rights->produit->lire) + // If the user can view prospects other than his' + if ($conf->categorie->enabled && ($user->rights->produit->lire || $user->rights->service->lire)) { include_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php'; $moreforfilter.='<div class="divsearchfield">'; diff --git a/htdocs/compta/bank/search.php b/htdocs/compta/bank/search.php index b585f48565f8052dd9ddcbc9d63d25acb4f26e49..0fd5336af7e4f7c28e353a80fb8f3fff77f808be 100644 --- a/htdocs/compta/bank/search.php +++ b/htdocs/compta/bank/search.php @@ -179,19 +179,23 @@ if ($resql) print '<form method="post" action="search.php" name="search_form">'."\n"; print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">'."\n"; + $moreforfilter = ''; + + $moreforfilter.='<div class="divsearchfield">'; $moreforfilter .= $langs->trans('Period') . ' ('.$langs->trans('DateOperationShort').') : ' . $langs->trans('StartDate') . ' '; $moreforfilter .= $form->select_date($search_dt_start, 'search_start_dt', 0, 0, 1, "search_form", 1, 0, 1); $moreforfilter .= ' - '; $moreforfilter .= $langs->trans('EndDate') . ' ' . $form->select_date($search_dt_end, 'search_end_dt', 0, 0, 1, "search_form", 1, 0, 1); + $moreforfilter .= '</div>'; - - if ($moreforfilter) { + if ($moreforfilter) + { print '<div class="liste_titre liste_titre_bydiv centpercent">'; print $moreforfilter; print '</div>'."\n"; } - print '<table class="liste">'."\n"; + print '<table class="tagtable liste'.($moreforfilter?" listwithfilterbefore":"").'">'."\n"; print '<tr class="liste_titre">'; print_liste_field_titre($langs->trans('Ref'),$_SERVER['PHP_SELF'],'b.rowid','',$param,'',$sortfield,$sortorder); print_liste_field_titre($langs->trans('DateOperationShort'),$_SERVER['PHP_SELF'],'b.dateo','',$param,'align="center"',$sortfield,$sortorder); diff --git a/htdocs/compta/bank/treso.php b/htdocs/compta/bank/treso.php index 38f6b94952ecb4db20ca6b15d52096cbbb066430..cbdb769789f1a355ea8996235371ccd7bb5e7566 100644 --- a/htdocs/compta/bank/treso.php +++ b/htdocs/compta/bank/treso.php @@ -2,6 +2,7 @@ /* Copyright (C) 2005-2009 Regis Houssin <regis.houssin@capnetworks.com> * Copyright (C) 2008-2009 Laurent Destailleur (Eldy) <eldy@users.sourceforge.net> * Copyright (C) 2008 Raphael Bertrand (Resultic) <raphael.bertrand@resultic.fr> + * Copyright (C) 2015 Marcos García <marcosgdf@gmail.com * * 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 @@ -309,7 +310,7 @@ if ($_REQUEST["account"] || $_REQUEST["ref"]) print "</td>"; print "<td>".$ref."</td>"; print "<td>".$refcomp."</td>"; - if ($obj->total_ttc < 0) { print "<td align=\"right\">".price($total_ttc)."</td><td> </td>"; }; + if ($obj->total_ttc < 0) { print "<td align=\"right\">".price(abs($total_ttc))."</td><td> </td>"; }; if ($obj->total_ttc >= 0) { print "<td> </td><td align=\"right\">".price($total_ttc)."</td>"; }; print '<td align="right">'.price($solde).'</td>'; print "</tr>"; diff --git a/htdocs/compta/charges/index.php b/htdocs/compta/charges/index.php index 69b95d16e034524e4156b6138181f0f27fea631c..e192d1e9d82d42266659e86d3469072c989d7fd4 100644 --- a/htdocs/compta/charges/index.php +++ b/htdocs/compta/charges/index.php @@ -85,87 +85,6 @@ if (GETPOST("mode") != 'sconly') print "<br>"; } -// Payment Salary -if ($conf->salaries->enabled) -{ - if (empty($_GET["mode"]) || $_GET["mode"] != 'sconly') - { - $sal = new PaymentSalary($db); - - print load_fiche_titre($langs->trans("SalariesPayments").($year?' ('.$langs->trans("Year").' '.$year.')':''), '', ''); - - $sql = "SELECT s.rowid, s.amount, s.label, s.datep as datep, s.datev as datev, s.datesp, s.dateep, s.salary, u.salary as current_salary"; - $sql.= " FROM ".MAIN_DB_PREFIX."payment_salary as s, ".MAIN_DB_PREFIX."user as u"; - $sql.= " WHERE s.entity IN (".getEntity('user',1).")"; - $sql.= " AND u.rowid = s.fk_user"; - if ($year > 0) - { - $sql.= " AND (s.datesp between '".$db->idate(dol_get_first_day($year,1,false))."' AND '".$db->idate(dol_get_last_day($year,12,false))."'"; - $sql.= " OR s.dateep between '".$db->idate(dol_get_first_day($year,1,false))."' AND '".$db->idate(dol_get_last_day($year,12,false))."')"; - } - if (preg_match('/^s\./',$sortfield)) $sql.= $db->order($sortfield,$sortorder); - - $result = $db->query($sql); - if ($result) - { - $num = $db->num_rows($result); - $i = 0; - $total = 0 ; - print '<table class="noborder" width="100%">'; - print '<tr class="liste_titre">'; - print_liste_field_titre($langs->trans("PeriodEndDate"),$_SERVER["PHP_SELF"],"s.dateep","",$param,'width="140px"',$sortfield,$sortorder); - print_liste_field_titre($langs->trans("Label"),$_SERVER["PHP_SELF"],"s.label","",$param,'',$sortfield,$sortorder); - print_liste_field_titre($langs->trans("ExpectedToPay"),$_SERVER["PHP_SELF"],"s.amount","",$param,'align="right"',$sortfield,$sortorder); - print_liste_field_titre($langs->trans("RefPayment"),$_SERVER["PHP_SELF"],"s.rowid","",$param,'',$sortfield,$sortorder); - print_liste_field_titre($langs->trans("DatePayment"),$_SERVER["PHP_SELF"],"s.datep","",$param,'align="center"',$sortfield,$sortorder); - print_liste_field_titre($langs->trans("PayedByThisPayment"),$_SERVER["PHP_SELF"],"s.amount","",$param,'align="right"',$sortfield,$sortorder); - print "</tr>\n"; - $var=1; - while ($i < $num) - { - $obj = $db->fetch_object($result); - - $total = $total + $obj->amount; - - $var=!$var; - print "<tr ".$bc[$var].">"; - - print '<td align="left">'.dol_print_date($db->jdate($obj->dateep),'day').'</td>'."\n"; - - print "<td>".$obj->label."</td>\n"; - - print '<td align="right">'.($obj->salary?price($obj->salary):'')."</td>"; - - // Ref payment - $sal_static->id=$obj->rowid; - $sal_static->ref=$obj->rowid; - print '<td align="left">'.$sal_static->getNomUrl(1)."</td>\n"; - - print '<td align="center">'.dol_print_date($db->jdate($obj->datep),'day')."</td>\n"; - print '<td align="right">'.price($obj->amount)."</td>"; - print "</tr>\n"; - - $i++; - } - print '<tr class="liste_total"><td colspan="2">'.$langs->trans("Total").'</td>'; - print '<td align="right">'."</td>"; - print '<td align="center"> </td>'; - print '<td align="center"> </td>'; - print '<td align="right">'.price($total)."</td>"; - print "</tr>"; - - print "</table>"; - $db->free($result); - - print "<br>"; - } - else - { - dol_print_error($db); - } - } -} - if ($conf->tax->enabled) { @@ -356,7 +275,8 @@ if ($conf->tax->enabled) } } } -//localtax + +// Localtax if($mysoc->localtax1_assuj=="1" && $mysoc->localtax2_assuj=="1") { $j=1; @@ -460,6 +380,91 @@ while($j<$numlt) } + +// Payment Salary +if ($conf->salaries->enabled) +{ + if (empty($_GET["mode"]) || $_GET["mode"] != 'sconly') + { + $sal = new PaymentSalary($db); + + print '<br>'; + print load_fiche_titre($langs->trans("SalariesPayments").($year?' ('.$langs->trans("Year").' '.$year.')':''), '', ''); + + $sql = "SELECT s.rowid, s.amount, s.label, s.datep as datep, s.datev as datev, s.datesp, s.dateep, s.salary, u.salary as current_salary"; + $sql.= " FROM ".MAIN_DB_PREFIX."payment_salary as s, ".MAIN_DB_PREFIX."user as u"; + $sql.= " WHERE s.entity IN (".getEntity('user',1).")"; + $sql.= " AND u.rowid = s.fk_user"; + if ($year > 0) + { + $sql.= " AND (s.datesp between '".$db->idate(dol_get_first_day($year,1,false))."' AND '".$db->idate(dol_get_last_day($year,12,false))."'"; + $sql.= " OR s.dateep between '".$db->idate(dol_get_first_day($year,1,false))."' AND '".$db->idate(dol_get_last_day($year,12,false))."')"; + } + if (preg_match('/^s\./',$sortfield)) $sql.= $db->order($sortfield,$sortorder); + + $result = $db->query($sql); + if ($result) + { + $num = $db->num_rows($result); + $i = 0; + $total = 0 ; + print '<table class="noborder" width="100%">'; + print '<tr class="liste_titre">'; + print_liste_field_titre($langs->trans("PeriodEndDate"),$_SERVER["PHP_SELF"],"s.dateep","",$param,'width="140px"',$sortfield,$sortorder); + print_liste_field_titre($langs->trans("Label"),$_SERVER["PHP_SELF"],"s.label","",$param,'',$sortfield,$sortorder); + print_liste_field_titre($langs->trans("ExpectedToPay"),$_SERVER["PHP_SELF"],"s.amount","",$param,'align="right"',$sortfield,$sortorder); + print_liste_field_titre($langs->trans("RefPayment"),$_SERVER["PHP_SELF"],"s.rowid","",$param,'',$sortfield,$sortorder); + print_liste_field_titre($langs->trans("DatePayment"),$_SERVER["PHP_SELF"],"s.datep","",$param,'align="center"',$sortfield,$sortorder); + print_liste_field_titre($langs->trans("PayedByThisPayment"),$_SERVER["PHP_SELF"],"s.amount","",$param,'align="right"',$sortfield,$sortorder); + print "</tr>\n"; + $var=1; + while ($i < $num) + { + $obj = $db->fetch_object($result); + + $total = $total + $obj->amount; + + $var=!$var; + print "<tr ".$bc[$var].">"; + + print '<td align="left">'.dol_print_date($db->jdate($obj->dateep),'day').'</td>'."\n"; + + print "<td>".$obj->label."</td>\n"; + + print '<td align="right">'.($obj->salary?price($obj->salary):'')."</td>"; + + // Ref payment + $sal_static->id=$obj->rowid; + $sal_static->ref=$obj->rowid; + print '<td align="left">'.$sal_static->getNomUrl(1)."</td>\n"; + + print '<td align="center">'.dol_print_date($db->jdate($obj->datep),'day')."</td>\n"; + print '<td align="right">'.price($obj->amount)."</td>"; + print "</tr>\n"; + + $i++; + } + print '<tr class="liste_total"><td colspan="2">'.$langs->trans("Total").'</td>'; + print '<td align="right">'."</td>"; + print '<td align="center"> </td>'; + print '<td align="center"> </td>'; + print '<td align="right">'.price($total)."</td>"; + print "</tr>"; + + print "</table>"; + $db->free($result); + + print "<br>"; + } + else + { + dol_print_error($db); + } + } +} + + + llxFooter(); $db->close(); diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index 19368863df971bd7417fdd138ce6c1e5333ea107..63efabe486179778c681b8e334b38bc31c5dff14 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -140,7 +140,7 @@ if (empty($reshook)) header("Location: " . $_SERVER['PHP_SELF'] . '?facid=' . $result); exit(); } else { - setEventMessage($object->error, 'errors'); + setEventMessages($object->error, $object->errors, 'errors'); $action = ''; } } @@ -156,7 +156,7 @@ if (empty($reshook)) header('Location: ' . $_SERVER["PHP_SELF"] . '?facid=' . $id); exit(); } else { - setEventMessage($object->error, 'errors'); + setEventMessages($object->error, $object->errors, 'errors'); } } } @@ -180,7 +180,7 @@ if (empty($reshook)) header('Location: ' . DOL_URL_ROOT . '/compta/facture/list.php'); exit(); } else { - setEventMessage($object->error, 'errors'); + setEventMessages($object->error, $object->errors, 'errors'); $action=''; } } @@ -213,7 +213,7 @@ if (empty($reshook)) exit(); } } else { - setEventMessage($object->error, 'errors'); + setEventMessages($object->error, $object->errors, 'errors'); $action = ''; } } @@ -235,13 +235,13 @@ if (empty($reshook)) if ($object->type == Facture::TYPE_CREDIT_NOTE) { // Si avoir, le signe doit etre negatif if ($object->total_ht >= 0) { - setEventMessage($langs->trans("ErrorInvoiceAvoirMustBeNegative"), 'errors'); + setEventMessages($langs->trans("ErrorInvoiceAvoirMustBeNegative"), null, 'errors'); $action = ''; } } else { // Si non avoir, le signe doit etre positif if (empty($conf->global->FACTURE_ENABLE_NEGATIVE) && $object->total_ht < 0) { - setEventMessage($langs->trans("ErrorInvoiceOfThisTypeMustBePositive"), 'errors'); + setEventMessages($langs->trans("ErrorInvoiceOfThisTypeMustBePositive"), null, 'errors'); $action = ''; } } @@ -311,7 +311,7 @@ if (empty($reshook)) $object->date_lim_reglement = dol_mktime(12, 0, 0, $_POST['paymenttermmonth'], $_POST['paymenttermday'], $_POST['paymenttermyear']); if ($object->date_lim_reglement < $object->date) { $object->date_lim_reglement = $object->calculate_date_lim_reglement(); - setEventMessage($langs->trans("DatePaymentTermCantBeLowerThanObjectDate"), 'warnings'); + setEventMessages($langs->trans("DatePaymentTermCantBeLowerThanObjectDate"), null, 'warnings'); } $result = $object->update($user); if ($result < 0) @@ -354,7 +354,7 @@ if (empty($reshook)) if ($ret > 0) { $result = $object->insert_discount($_POST["remise_id"]); if ($result < 0) { - setEventMessage($object->error, 'errors'); + setEventMessages($object->error, $object->errors, 'errors'); } } else { dol_print_error($db, $object->error); @@ -367,7 +367,7 @@ if (empty($reshook)) $result = $discount->link_to_invoice(0, $id); if ($result < 0) { - setEventMessage($discount->error, 'errors'); + setEventMessages($discount->error, $discount->errors, 'errors'); } } } @@ -449,7 +449,7 @@ if (empty($reshook)) else { if (count($object->errors)) setEventMessage($object->errors, 'errors'); - else setEventMessage($object->error, 'errors'); + else setEventMessages($object->error, $object->errors, 'errors'); } } } @@ -477,7 +477,7 @@ if (empty($reshook)) { if (! $idwarehouse || $idwarehouse == - 1) { $error ++; - setEventMessage($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv("Warehouse")), 'errors'); + setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv("Warehouse")), null, 'errors'); $action = ''; } } @@ -511,7 +511,7 @@ if (empty($reshook)) if ($resteapayer == $object->total_ttc && $object->paye == 0 && $ventilExportCompta == 0) { $result=$object->set_draft($user, $idwarehouse); - if ($result<0) setEventMessage($object->error,'errors'); + if ($result<0) setEventMessages($object->error, $object->errors, 'errors'); // Define output language @@ -539,7 +539,7 @@ if (empty($reshook)) { $object->fetch($id); $result = $object->set_paid($user); - if ($result<0) setEventMessage($object->error,'errors'); + if ($result<0) setEventMessages($object->error, $object->errors, 'errors'); } // Classif "paid partialy" else if ($action == 'confirm_paid_partially' && $confirm == 'yes' && $user->rights->facture->paiement) { @@ -548,7 +548,7 @@ if (empty($reshook)) $close_note = $_POST["close_note"]; if ($close_code) { $result = $object->set_paid($user, $close_code, $close_note); - if ($result<0) setEventMessage($object->error,'errors'); + if ($result<0) setEventMessages($object->error, $object->errors, 'errors'); } else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Reason")), null, 'errors'); } @@ -559,7 +559,7 @@ if (empty($reshook)) $close_note = $_POST["close_note"]; if ($close_code) { $result = $object->set_canceled($user, $close_code, $close_note); - if ($result<0) setEventMessage($object->error,'errors'); + if ($result<0) setEventMessages($object->error, $object->errors, 'errors'); } else { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Reason")), null, 'errors'); } @@ -603,7 +603,7 @@ if (empty($reshook)) elseif ($object->type == Facture::TYPE_DEPOSIT) $discount->description = '(DEPOSIT)'; else { - setEventMessage($langs->trans('CantConvertToReducAnInvoiceOfThisType'),'errors'); + setEventMessages($langs->trans('CantConvertToReducAnInvoiceOfThisType'), null, 'errors'); } $discount->tva_tx = abs($object->total_ttc); $discount->fk_soc = $object->socid; @@ -636,13 +636,13 @@ if (empty($reshook)) } else { - setEventMessage($object->error,'errors'); + setEventMessages($object->error, $object->errors, 'errors'); $db->rollback(); } } else { - setEventMessage($discount->error,'errors'); + setEventMessages($discount->error, $discount->errors, 'errors'); $db->rollback(); } } @@ -705,7 +705,7 @@ if (empty($reshook)) $id = $object->createFromCurrent($user); if ($id <= 0) { - setEventMessage($object->error, 'errors'); + setEventMessages($object->error, $object->errors, 'errors'); } } } @@ -979,7 +979,7 @@ if (empty($reshook)) $amountdeposit = ($totalamount * $valuedeposit) / 100; } } else { - setEventMessage($srcobject->error, 'errors'); + setEventMessages($srcobject->error, $srcobject->errors, 'errors'); $error ++; } } @@ -1119,12 +1119,12 @@ if (empty($reshook)) if ($reshook < 0) $error ++; } else { - setEventMessage($srcobject->error, 'errors'); + setEventMessages($srcobject->error, $srcobject->errors, 'errors'); $error ++; } } } else { - setEventMessage($object->error, 'errors'); + setEventMessages($object->error, $object->errors, 'errors'); $error ++; } } // If some invoice's lines already known @@ -1237,11 +1237,11 @@ if (empty($reshook)) } if (empty($idprod) && ($price_ht < 0) && ($qty < 0)) { - setEventMessage($langs->trans('ErrorBothFieldCantBeNegative', $langs->transnoentitiesnoconv('UnitPriceHT'), $langs->transnoentitiesnoconv('Qty')), 'errors'); + setEventMessages($langs->trans('ErrorBothFieldCantBeNegative', $langs->transnoentitiesnoconv('UnitPriceHT'), $langs->transnoentitiesnoconv('Qty')), null, 'errors'); $error ++; } if (GETPOST('prod_entry_mode') == 'free' && empty($idprod) && GETPOST('type') < 0) { - setEventMessage($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Type')), 'errors'); + setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Type')), null, 'errors'); $error ++; } if (GETPOST('prod_entry_mode') == 'free' && empty($idprod) && (! ($price_ht >= 0) || $price_ht == '')) // Unit price can be 0 but not '' @@ -1250,16 +1250,16 @@ if (empty($reshook)) $error ++; } if ($qty == '') { - setEventMessage($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Qty')), 'errors'); + setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Qty')), null, 'errors'); $error ++; } if (GETPOST('prod_entry_mode') == 'free' && empty($idprod) && empty($product_desc)) { - setEventMessage($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Description')), 'errors'); + setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Description')), null, 'errors'); $error ++; } if ($qty < 0) { $langs->load("errors"); - setEventMessage($langs->trans('ErrorQtyForCustomerInvoiceCantBeNegative'), 'errors'); + setEventMessages($langs->trans('ErrorQtyForCustomerInvoiceCantBeNegative'), null, 'errors'); $error ++; } if (! $error && ($qty >= 0) && (! empty($product_desc) || ! empty($idprod))) { @@ -1401,19 +1401,19 @@ if (empty($reshook)) // Margin $fournprice = price2num(GETPOST('fournprice' . $predef) ? GETPOST('fournprice' . $predef) : ''); - $buyingprice = price2num(GETPOST('buying_price' . $predef) != '' ? GETPOST('buying_price' . $predef) : ''); // If buying_price is '0', we muste keep this value + $buyingprice = price2num(GETPOST('buying_price' . $predef) != '' ? GETPOST('buying_price' . $predef) : ''); // If buying_price is '0', we must keep this value // Local Taxes - $localtax1_tx = get_localtax($tva_tx, 1, $object->thirdparty); - $localtax2_tx = get_localtax($tva_tx, 2, $object->thirdparty); - + $localtax1_tx = get_localtax($tva_tx, 1, $object->thirdparty, $mysoc); + $localtax2_tx = get_localtax($tva_tx, 2, $object->thirdparty, $mysoc); + $info_bits = 0; if ($tva_npr) $info_bits |= 0x01; if (! 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)); - setEventMessage($mesg, 'errors'); + setEventMessages($mesg, null, 'errors'); } else { // Insert line $result = $object->addline($desc, $pu_ht, $qty, $tva_tx, $localtax1_tx, $localtax2_tx, $idprod, $remise_percent, $date_start, $date_end, 0, $info_bits, '', $price_base_type, $pu_ttc, $type, - 1, $special_code, '', 0, GETPOST('fk_parent_line'), $fournprice, $buyingprice, $label, $array_options, $_POST['progress'], '', $fk_unit); @@ -1473,7 +1473,7 @@ if (empty($reshook)) unset($_POST['situations']); unset($_POST['progress']); } else { - setEventMessage($object->error, 'errors'); + setEventMessages($object->error, $object->errors, 'errors'); } $action = ''; @@ -1555,7 +1555,7 @@ if (empty($reshook)) // Check price is not lower than minimum (check is done only for standard or replacement invoices) if (($object->type == Facture::TYPE_STANDARD || $object->type == Facture::TYPE_REPLACEMENT) && $price_min && (price2num($pu_ht) * (1 - price2num(GETPOST('remise_percent')) / 100) < price2num($price_min))) { - setEventMessage($langs->trans("CantBeLessThanMinPrice", price(price2num($price_min, 'MU'), 0, $langs, 0, 0, - 1, $conf->currency)), 'errors'); + setEventMessages($langs->trans("CantBeLessThanMinPrice", price(price2num($price_min, 'MU'), 0, $langs, 0, 0, - 1, $conf->currency)), null, 'errors'); $error ++; } } else { @@ -1570,7 +1570,7 @@ if (empty($reshook)) } if ($qty < 0) { $langs->load("errors"); - setEventMessage($langs->trans('ErrorQtyForCustomerInvoiceCantBeNegative'), 'errors'); + setEventMessages($langs->trans('ErrorQtyForCustomerInvoiceCantBeNegative'), null, 'errors'); $error ++; } @@ -1634,7 +1634,7 @@ if (empty($reshook)) unset($_POST['situations']); unset($_POST['progress']); } else { - setEventMessage($object->error, 'errors'); + setEventMessages($object->error, $object->errors, 'errors'); } } } @@ -1728,8 +1728,8 @@ if (empty($reshook)) $upload_dir = $conf->facture->dir_output; $file = $upload_dir . '/' . GETPOST('file'); $ret = dol_delete_file($file, 0, 0, 0, $object); - if ($ret) setEventMessage($langs->trans("FileWasRemoved", GETPOST('urlfile'))); - else setEventMessage($langs->trans("ErrorFailToDeleteFile", GETPOST('urlfile')), 'errors'); + if ($ret) setEventMessages($langs->trans("FileWasRemoved", GETPOST('urlfile')), null, 'mesgs'); + else setEventMessages($langs->trans("ErrorFailToDeleteFile", GETPOST('urlfile')), null, 'errors'); $action = ''; } } elseif ($action == 'update_extras') { @@ -1775,9 +1775,9 @@ if (empty($reshook)) } else { if ($object->error == 'DB_ERROR_RECORD_ALREADY_EXISTS') { $langs->load("errors"); - setEventMessage($langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"), 'errors'); + setEventMessages($langs->trans("ErrorThisContactIsAlreadyDefinedAsThisType"), null, 'errors'); } else { - setEventMessage($object->error, 'errors'); + setEventMessages($object->error, $object->errors, 'errors'); } } } // bascule du statut d'un contact @@ -1843,6 +1843,8 @@ if ($action == 'create') $res = $soc->fetch($socid); // Load objectsrc + $remise_absolue = 0; + if (! empty($origin) && ! empty($originid)) { // Parse element/subelement (ex: project_task) @@ -1854,6 +1856,20 @@ if ($action == 'create') if ($element == 'project') { $projectid = $originid; + + if (!$cond_reglement_id) { + $cond_reglement_id = $soc->cond_reglement_id; + } + if (!$mode_reglement_id) { + $mode_reglement_id = $soc->mode_reglement_id; + } + if (!$remise_percent) { + $remise_percent = $soc->remise_percent; + } + if (!$dateinvoice) { + // Do not set 0 here (0 for a date is 1970) + $dateinvoice = (empty($dateinvoice)?(empty($conf->global->MAIN_AUTOFILL_DATE)?-1:''):$dateinvoice); + } } else { // For compatibility if ($element == 'order' || $element == 'commande') { @@ -1898,7 +1914,6 @@ if ($action == 'create') $objectsrc->fetch_optionals($originid); $object->array_options = $objectsrc->array_options; } - $dateinvoice = empty($conf->global->MAIN_AUTOFILL_DATE) ? -1 : ''; // Dot not set 0 here (0 for a date is 1970) } else { @@ -1909,6 +1924,7 @@ if ($action == 'create') $remise_absolue = 0; $dateinvoice = (empty($dateinvoice)?(empty($conf->global->MAIN_AUTOFILL_DATE)?-1:''):$dateinvoice); // Do not set 0 here (0 for a date is 1970) } + $absolute_discount = $soc->getAvailableDiscounts(); if (! empty($conf->use_javascript_ajax)) @@ -1959,8 +1975,8 @@ if ($action == 'create') else { print '<td colspan="2">'; - print $form->select_company('', 'socid', 's.client = 1 OR s.client = 3', 1); - // reload page to retrieve customer informations + print $form->select_company('', 'socid', '(s.client = 1 OR s.client = 3) AND status=1', 1); + // Option to reload page to retrieve customer informations. Note, this clear other input if (!empty($conf->global->RELOAD_PAGE_ON_CUSTOMER_CHANGE)) { print '<script type="text/javascript"> @@ -2371,7 +2387,7 @@ if ($action == 'create') $cntinvoice=count($objectsrc->linkedObjects['facture']); if ($cntinvoice>=1) { - setEventMessage('WarningBillExist','warnings'); + setEventMessages('WarningBillExist', null, 'warnings'); echo ' ('.$langs->trans('LatestRelatedBill').end($objectsrc->linkedObjects['facture'])->getNomUrl(1).')'; } echo '</td></tr>'; diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php index ca7afeb7959d28530e69258eba8dab7192218a3e..de240910ac7b12eb4c30adc7c640bed9e48f9096 100644 --- a/htdocs/compta/facture/class/facture.class.php +++ b/htdocs/compta/facture/class/facture.class.php @@ -898,7 +898,7 @@ class Facture extends CommonInvoice if (! empty($this->total_ht)) $label.= '<br><b>' . $langs->trans('AmountHT') . ':</b> ' . price($this->total_ht, 0, $langs, 0, -1, -1, $conf->currency); if (! empty($this->total_tva)) - $label.= '<br><b>' . $langs->trans('TVA') . ':</b> ' . price($this->total_tva, 0, $langs, 0, -1, -1, $conf->currency); + $label.= '<br><b>' . $langs->trans('VAT') . ':</b> ' . price($this->total_tva, 0, $langs, 0, -1, -1, $conf->currency); if (! empty($this->total_ttc)) $label.= '<br><b>' . $langs->trans('AmountTTC') . ':</b> ' . price($this->total_ttc, 0, $langs, 0, -1, -1, $conf->currency); if ($this->type == self::TYPE_REPLACEMENT) $label=$langs->transnoentitiesnoconv("ShowInvoiceReplace").': '.$this->ref; @@ -2045,8 +2045,8 @@ class Facture extends CommonInvoice * @param double $pu_ht Unit price without tax (> 0 even for credit note) * @param double $qty Quantity * @param double $txtva Force vat rate, -1 for auto - * @param double $txlocaltax1 Local tax 1 rate - * @param double $txlocaltax2 Local tax 2 rate + * @param double $txlocaltax1 Local tax 1 rate (deprecated) + * @param double $txlocaltax2 Local tax 2 rate (deprecated) * @param int $fk_product Id of predefined product/service * @param double $remise_percent Percent of discount on line * @param int $date_start Date start of service @@ -2141,6 +2141,7 @@ class Facture extends CommonInvoice // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $localtaxes_type=getLocalTaxesFromRate($txtva,0,$this->thirdparty, $mysoc); + $txtva = preg_replace('/\s*\(.*\)/','',$txtva); // Remove code into vatrate. $tabprice = calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $product_type, $mysoc, $localtaxes_type, $situation_percent); @@ -2299,7 +2300,8 @@ class Facture extends CommonInvoice // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $localtaxes_type=getLocalTaxesFromRate($txtva,0,$this->thirdparty, $mysoc); - + $txtva = preg_replace('/\s*\(.*\)/','',$txtva); // Remove code into vatrate. + $tabprice=calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $type, $mysoc, $localtaxes_type, $situation_percent); $total_ht = $tabprice[0]; @@ -3633,23 +3635,27 @@ class Facture extends CommonInvoice /** * Checks if the invoice is the last in its cycle * - * @return int 0 or 1 if OK, -1 if error + * @return bool Last of the cycle status * */ function is_last_in_cycle() { - $sql = 'SELECT max(situation_counter) FROM ' . MAIN_DB_PREFIX . 'facture WHERE situation_cycle_ref = ' . $this->situation_cycle_ref; - $resql = $this->db->query($sql); - - if ($resql && $resql->num_rows > 0) { - $res = $this->db->fetch_array($resql); - $last = $res['max(situation_counter)']; - return ($last == $this->situation_counter); + if (!empty($this->situation_cycle_ref)) { + // No point in testing anything if we're not inside a cycle + $sql = 'SELECT max(situation_counter) FROM ' . MAIN_DB_PREFIX . 'facture WHERE situation_cycle_ref = ' . $this->situation_cycle_ref; + $resql = $this->db->query($sql); + + if ($resql && $resql->num_rows > 0) { + $res = $this->db->fetch_array($resql); + $last = $res['max(situation_counter)']; + return ($last == $this->situation_counter); + } else { + $this->error = $this->db->lasterror(); + dol_syslog(get_class($this) . "::select Error " . $this->error, LOG_ERR); + return false; + } } else { - $this->error = $this->db->lasterror(); - dol_syslog(get_class($this) . "::select Error " . $this->error, LOG_ERR); - $this->db->rollback(); - return -1; + return true; } } diff --git a/htdocs/compta/facture/list.php b/htdocs/compta/facture/list.php index 43160b68f99c77237c07fc731b1c66b806aaaead..3205427c811bc298661e328dc18d20167a9abb2d 100644 --- a/htdocs/compta/facture/list.php +++ b/htdocs/compta/facture/list.php @@ -318,7 +318,7 @@ if ($resql) $moreforfilter.='</div>'; } // If the user can view prospects other than his' - if ($conf->categorie->enabled && $user->rights->produit->lire) + if ($conf->categorie->enabled && ($user->rights->produit->lire || $user->rights->service->lire)) { include_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php'; $moreforfilter.='<div class="divsearchfield">'; diff --git a/htdocs/compta/index.php b/htdocs/compta/index.php index fea0708e2a8d7a41975d03587736d77a5b7eefcd..099a3063127f66a4687719f7b87948acf54721bc 100644 --- a/htdocs/compta/index.php +++ b/htdocs/compta/index.php @@ -580,7 +580,7 @@ if (! empty($conf->tax->enabled) && $user->rights->tax->charges->lire) print '<td align="center">'.$langs->trans("DateDue").'</td>'; print '<td align="right">'.$langs->trans("AmountTTC").'</td>'; print '<td align="right">'.$langs->trans("Paid").'</td>'; - print '<td> </td>'; + print '<td align="center" width="16"> </td>'; print '</tr>'; if ($num) { diff --git a/htdocs/compta/localtax/card.php b/htdocs/compta/localtax/card.php index 579d80ea91932c5cf24ffb3cf6f559a8db0e96d3..b5140c54842c52f36d3fc21c45dcfe88a0d20432 100644 --- a/htdocs/compta/localtax/card.php +++ b/htdocs/compta/localtax/card.php @@ -1,5 +1,6 @@ <?php /* Copyright (C) 2011-2014 Juanjo Menent <jmenent@2byte.es> + * Copyright (C) 2015 Marcos García <marcosgdf@gmail.com> * * 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 @@ -104,7 +105,7 @@ if ($_GET["action"] == 'delete') if ($result > 0) { $db->commit(); - header("Location: ".DOL_URL_ROOT.'/compta/localtax/reglement.php'); + header("Location: ".DOL_URL_ROOT.'/compta/localtax/reglement.php?localTaxType='.$localtax->ltt); exit; } else diff --git a/htdocs/compta/paiement.php b/htdocs/compta/paiement.php index 8c028b23aaa9adced6249c02a7a017b33825292c..393070d410b061cb893d45505dfb60142ee02007 100644 --- a/htdocs/compta/paiement.php +++ b/htdocs/compta/paiement.php @@ -118,7 +118,7 @@ if (empty($reshook)) { $langs->load("errors"); //$error++; - setEventMessage($langs->transnoentities("WarningPaymentDateLowerThanInvoiceDate", dol_print_date($datepaye,'day'), dol_print_date($tmpinvoice->date, 'day'), $tmpinvoice->ref), 'warnings'); + setEventMessages($langs->transnoentities("WarningPaymentDateLowerThanInvoiceDate", dol_print_date($datepaye,'day'), dol_print_date($tmpinvoice->date, 'day'), $tmpinvoice->ref), null, 'warnings'); } } @@ -129,7 +129,7 @@ if (empty($reshook)) // Check parameters if (! GETPOST('paiementcode')) { - setEventMessage($langs->transnoentities('ErrorFieldRequired',$langs->transnoentities('PaymentMode')), 'errors'); + setEventMessages($langs->transnoentities('ErrorFieldRequired',$langs->transnoentities('PaymentMode')), null, 'errors'); $error++; } @@ -138,20 +138,20 @@ if (empty($reshook)) // If bank module is on, account is required to enter a payment if (GETPOST('accountid') <= 0) { - setEventMessage($langs->transnoentities('ErrorFieldRequired',$langs->transnoentities('AccountToCredit')), 'errors'); + setEventMessages($langs->transnoentities('ErrorFieldRequired',$langs->transnoentities('AccountToCredit')), null, 'errors'); $error++; } } if (empty($totalpayment) && empty($atleastonepaymentnotnull)) { - setEventMessage($langs->transnoentities('ErrorFieldRequired',$langs->trans('PaymentAmount')), 'errors'); + setEventMessages($langs->transnoentities('ErrorFieldRequired',$langs->trans('PaymentAmount')), null, 'errors'); $error++; } if (empty($datepaye)) { - setEventMessage($langs->transnoentities('ErrorFieldRequired',$langs->transnoentities('Date')), 'errors'); + setEventMessages($langs->transnoentities('ErrorFieldRequired',$langs->transnoentities('Date')), null, 'errors'); $error++; } } @@ -194,7 +194,7 @@ if (empty($reshook)) // Si module bank actif, un compte est obligatoire lors de la saisie d'un paiement if (GETPOST('accountid') <= 0) { - setEventMessage($langs->trans('ErrorFieldRequired',$langs->transnoentities('AccountToCredit')), 'errors'); + setEventMessages($langs->trans('ErrorFieldRequired',$langs->transnoentities('AccountToCredit')), null, 'errors'); $error++; } } @@ -212,7 +212,7 @@ if (empty($reshook)) $paiement_id = $paiement->create($user, (GETPOST('closepaidinvoices')=='on'?1:0)); if ($paiement_id < 0) { - setEventMessage($paiement->error, 'errors'); + setEventMessages($paiement->error, $paiement->errors, 'errors'); $error++; } } @@ -224,7 +224,7 @@ if (empty($reshook)) $result=$paiement->addPaymentToBank($user,'payment',$label,GETPOST('accountid'),GETPOST('chqemetteur'),GETPOST('chqbank')); if ($result < 0) { - setEventMessage($paiement->error, 'errors'); + setEventMessages($paiement->error, $paiement->errors, 'errors'); $error++; } } diff --git a/htdocs/compta/payment_sc/card.php b/htdocs/compta/payment_sc/card.php index dc2fad6d35d20f377d18ef6028554205a83816e3..ad59687b43c23294445dd1e2cd52499422fee282 100644 --- a/htdocs/compta/payment_sc/card.php +++ b/htdocs/compta/payment_sc/card.php @@ -70,7 +70,7 @@ if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->tax->char } else { - setEventMessage($paiement->error, 'errors'); + setEventMessages($paiement->error, $paiement->errors, 'errors'); $db->rollback(); } } @@ -108,7 +108,7 @@ if ($action == 'confirm_valide' && $confirm == 'yes' && $user->rights->tax->char } else { - setEventMessage($paiement->error); + setEventMessages($paiement->error, $paiement->errors, 'errors'); $db->rollback(); } } @@ -140,7 +140,7 @@ $h++; dol_fiche_head($head, $hselected, $langs->trans("PaymentSocialContribution"), 0, 'payment'); /* - * Confirmation de la suppression du paiement + * Deletion confirmation of payment */ if ($action == 'delete') { @@ -149,7 +149,7 @@ if ($action == 'delete') } /* - * Confirmation de la validation du paiement + * Validation confirmation of payment */ if ($action == 'valide') { diff --git a/htdocs/compta/prelevement/ligne.php b/htdocs/compta/prelevement/ligne.php index fa01e9c5e9e8e4b03ff8eefe92e7f0b5c4b14e75..d43ba27ef2665da439ba2ff81c80f1f4d1c71e33 100644 --- a/htdocs/compta/prelevement/ligne.php +++ b/htdocs/compta/prelevement/ligne.php @@ -68,7 +68,7 @@ if ($action == 'confirm_rejet') { $error++; $langs->load("error"); - setEventMessage($langs->transnoentities("ErrorDateMustBeBeforeToday"),'errors'); + setEventMessages($langs->transnoentities("ErrorDateMustBeBeforeToday"), null, 'errors'); } if (GETPOST('motif','alpha') == 0) @@ -261,7 +261,7 @@ if ($id) if ($sortfield == "") $sortfield="pl.fk_soc"; /* - * Liste des factures + * List of invoices */ $sql = "SELECT pf.rowid"; $sql.= " ,f.rowid as facid, f.facnumber as ref, f.total_ttc, f.paye, f.fk_statut"; diff --git a/htdocs/compta/salaries/card.php b/htdocs/compta/salaries/card.php index 969b840aeb989546a55f5652dc41504b2e867df1..4b5b0edd784e1949fcde2a84a0437b75b666ec60 100644 --- a/htdocs/compta/salaries/card.php +++ b/htdocs/compta/salaries/card.php @@ -166,18 +166,18 @@ if ($action == 'delete') { $object->error=$accountline->error; $db->rollback(); - setEventMessage($object->error,'errors'); + setEventMessages($object->error, $object->errors, 'errors'); } } else { $db->rollback(); - setEventMessage($object->error,'errors'); + setEventMessages($object->error, $object->errors, 'errors'); } } else { - setEventMessage('Error try do delete a line linked to a conciliated bank transaction','errors'); + setEventMessages('Error try do delete a line linked to a conciliated bank transaction', null, 'errors'); } } diff --git a/htdocs/compta/sociales/charges.php b/htdocs/compta/sociales/charges.php index 780598fc0732a2aea32a9616ed1fd08e32372a9e..2a9894be87a72813bbbb37fc90ed630868d59fe7 100644 --- a/htdocs/compta/sociales/charges.php +++ b/htdocs/compta/sociales/charges.php @@ -103,7 +103,7 @@ if ($action == 'add' && $user->rights->tax->charges->creer) } elseif (! is_numeric($amount)) { - setEventMessage($langs->trans("ErrorFieldMustBeANumeric",$langs->transnoentities("Amount")), 'errors'); + setEventMessages($langs->trans("ErrorFieldMustBeANumeric",$langs->transnoentities("Amount")), null, 'errors'); $action = 'create'; } else @@ -148,7 +148,7 @@ if ($action == 'update' && ! $_POST["cancel"] && $user->rights->tax->charges->cr } elseif (! is_numeric($amount)) { - setEventMessage($langs->trans("ErrorFieldMustBeANumeric",$langs->transnoentities("Amount")), 'errors'); + setEventMessages($langs->trans("ErrorFieldMustBeANumeric",$langs->transnoentities("Amount")), null, 'errors'); $action = 'create'; } else @@ -164,7 +164,7 @@ if ($action == 'update' && ! $_POST["cancel"] && $user->rights->tax->charges->cr $result=$chargesociales->update($user); if ($result <= 0) { - setEventMessage($chargesociales->error, 'errors'); + setEventMessages($chargesociales->error, $chargesociales->errors, 'errors'); } } } diff --git a/htdocs/compta/tva/card.php b/htdocs/compta/tva/card.php index 5c362fda9942dd5ab7a91eb11902904b0d393ecf..ed80ee21a4ed0730a2ed462fe7648518f01ad8ba 100644 --- a/htdocs/compta/tva/card.php +++ b/htdocs/compta/tva/card.php @@ -114,7 +114,7 @@ if ($action == 'add' && $_POST["cancel"] <> $langs->trans("Cancel")) else { $db->rollback(); - setEventMessage($tva->error, 'errors'); + setEventMessages($tva->error, $tva->errors, 'errors'); $action="create"; } } @@ -150,18 +150,18 @@ if ($action == 'delete') { $tva->error=$accountline->error; $db->rollback(); - setEventMessage($tva->error,'errors'); + setEventMessages($tva->error, $tva->errors, 'errors'); } } else { $db->rollback(); - setEventMessage($tva->error,'errors'); + setEventMessages($tva->error, $tva->errors, 'errors'); } } else { - setEventMessage('Error try do delete a line linked to a conciliated bank transaction','errors'); + setEventMessages('Error try do delete a line linked to a conciliated bank transaction', null, 'errors'); } } diff --git a/htdocs/compta/tva/class/tva.class.php b/htdocs/compta/tva/class/tva.class.php index d556a84a8046d0d0a56f819b78392229390902f4..eb4ee3a24080b7880e2f1a19e98806a57781c4fa 100644 --- a/htdocs/compta/tva/class/tva.class.php +++ b/htdocs/compta/tva/class/tva.class.php @@ -549,7 +549,7 @@ class Tva extends CommonObject $result = $this->db->query($sql); if ($result) { - $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."tva"); // TODO should be called paiementtva + $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."tva"); // TODO should be called 'payment_vat' // Call trigger //XXX: Should be done just befor commit no ? diff --git a/htdocs/contrat/class/contrat.class.php b/htdocs/contrat/class/contrat.class.php index e38bb254f79e5324262e2e1acd7b537df13911d9..27fcee1dbeb770e98bbd132da24c5ca79ce9efc5 100644 --- a/htdocs/contrat/class/contrat.class.php +++ b/htdocs/contrat/class/contrat.class.php @@ -1260,7 +1260,8 @@ class Contrat extends CommonObject // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $localtaxes_type=getLocalTaxesFromRate($txtva, 0, $this->societe, $mysoc); - + $txtva = preg_replace('/\s*\(.*\)/','',$txtva); // Remove code into vatrate. + $tabprice=calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, 1,$mysoc, $localtaxes_type); $total_ht = $tabprice[0]; $total_tva = $tabprice[1]; @@ -1441,7 +1442,8 @@ class Contrat extends CommonObject // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $localtaxes_type=getLocalTaxesFromRate($tvatx, 0, $this->societe, $mysoc); - + $txtva = preg_replace('/\s*\(.*\)/','',$txtva); // Remove code into vatrate. + $tabprice=calcul_price_total($qty, $pu, $remise_percent, $tvatx, $localtax1tx, $localtax2tx, 0, $price_base_type, $info_bits, 1, $mysoc, $localtaxes_type); $total_ht = $tabprice[0]; $total_tva = $tabprice[1]; diff --git a/htdocs/core/ajax/contacts.php b/htdocs/core/ajax/contacts.php index 97f29c4069d808d3896b3ddaf4f55851c9356b56..c0cd9ecfd706cdf0da857bbf7d73c2a9248830e4 100644 --- a/htdocs/core/ajax/contacts.php +++ b/htdocs/core/ajax/contacts.php @@ -50,7 +50,7 @@ if (! empty($id) && ! empty($action) && ! empty($htmlname)) $return=array(); if (empty($showempty)) $showempty=0; - $return['value'] = $form->selectcontacts($id,'','contactid',$showempty,'','',0,'',true); + $return['value'] = $form->selectcontacts($id,'',$htmlname,$showempty,'','',0,'',true); $return['num'] = $form->num; $return['error'] = $form->error; diff --git a/htdocs/core/ajax/selectsearchbox.php b/htdocs/core/ajax/selectsearchbox.php index 10694adf8d77c2b4983da71f38948f17a91b13e6..6c91974b4a4d9e0acb2dbdd84aec27a86eb81180 100644 --- a/htdocs/core/ajax/selectsearchbox.php +++ b/htdocs/core/ajax/selectsearchbox.php @@ -94,9 +94,9 @@ if (! empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_SEARCHFORM { $arrayresult['searchintosupplierorder']=array('text'=>img_picto('','object_order').' '.$langs->trans("SearchIntoSupplierOrders", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/fourn/commande/list.php?search_all='.urlencode($search_boxvalue)); } -if (! empty($conf->askpricesupplier->enabled) && empty($conf->global->MAIN_SEARCHFORM_SUPPLIER_PROPAL_DISABLED) && $user->rights->askpricesupplier->lire) +if (! empty($conf->supplier_proposal->enabled) && empty($conf->global->MAIN_SEARCHFORM_SUPPLIER_PROPAL_DISABLED) && $user->rights->supplier_proposal->lire) { - $arrayresult['searchintosupplierpropal']=array('text'=>img_picto('','object_propal').' '.$langs->trans("SearchIntoSupplierProposals", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/askpricesupplier/list.php?sall='.urlencode($search_boxvalue)); + $arrayresult['searchintosupplierpropal']=array('text'=>img_picto('','object_propal').' '.$langs->trans("SearchIntoSupplierProposals", $search_boxvalue), 'url'=>DOL_URL_ROOT.'/supplier_proposal/list.php?sall='.urlencode($search_boxvalue)); } if (! empty($conf->contrat->enabled) && empty($conf->global->MAIN_SEARCHFORM_CONTRACT_DISABLED) && $user->rights->contrat->lire) diff --git a/htdocs/core/boxes/box_factures_fourn_imp.php b/htdocs/core/boxes/box_factures_fourn_imp.php index 9bf302b2e1844171723152ac11c74c6560c309bb..4e54b590955bb3568756d1d16768bab22f359a83 100644 --- a/htdocs/core/boxes/box_factures_fourn_imp.php +++ b/htdocs/core/boxes/box_factures_fourn_imp.php @@ -96,12 +96,20 @@ class box_factures_fourn_imp extends ModeleBoxes { $objp = $db->fetch_object($result); $datelimite=$db->jdate($objp->datelimite); + $date=$db->jdate($objp->df); + $datem=$db->jdate($objp->tms); + $facturestatic->id = $objp->facid; + $facturestatic->ref = $objp->ref; + $facturestatic->total_ht = $objp->total_ht; + $facturestatic->total_tva = $objp->total_tva; + $facturestatic->total_ttc = $objp->total_ttc; + $facturestatic->date_echeance = $datelimite; + $facturestatic->statut = $objp->fk_statut; $thirdpartytmp->id = $objp->socid; - $thirdpartytmp->name = $objp->name; - $thirdpartytmp->code_client = $objp->code_client; + $thirdpartytmp->name = $objp->name; + $thirdpartytmp->fournisseur = 1; + $thirdpartytmp->code_fournisseur = $objp->code_fournisseur; $thirdpartytmp->logo = $objp->logo; - $facturestatic->date_echeance = $datelimite; - $facturestatic->statut = $objp->fk_statut; $late=''; if ($facturestatic->hasDelay()) { @@ -118,10 +126,9 @@ class box_factures_fourn_imp extends ModeleBoxes $this->info_box_contents[$line][] = array( 'td' => 'align="left"', - 'text' => ($objp->ref?$objp->ref:$objp->facid), + 'text' => $facturestatic->getNomUrl(1), 'text2'=> $late, - 'tooltip' => $tooltip, - 'url' => DOL_URL_ROOT."/fourn/facture/card.php?facid=".$objp->facid, + 'asisi' => 1 ); $this->info_box_contents[$line][] = array( diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index e4bb572a3eb2bb6749d5b2414285ca825a53ecec..934eb672c7c6e3b3d600486454a48cb58444fe46 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -2183,7 +2183,7 @@ abstract class CommonObject if ($this->element == 'facture_fourn' || $this->element == 'invoice_supplier') $fieldtva='total_tva'; if ($this->element == 'propal') $fieldttc='total'; if ($this->element == 'expensereport') $fieldtva='total_tva'; - if ($this->element == 'askpricesupplier') $fieldttc='total'; + if ($this->element == 'supplier_proposal') $fieldttc='total'; if (empty($nodatabaseupdate)) { @@ -2394,8 +2394,8 @@ abstract class CommonObject else if ($objecttype == 'propal') { $classpath = 'comm/propal/class'; } - else if ($objecttype == 'askpricesupplier') { - $classpath = 'comm/askpricesupplier/class'; + else if ($objecttype == 'supplier_proposal') { + $classpath = 'supplier_proposal/class'; } else if ($objecttype == 'shipping') { $classpath = 'expedition/class'; $subelement = 'expedition'; $module = 'expedition_bon'; @@ -3046,9 +3046,9 @@ abstract class CommonObject // Description print '<td class="linecoldescription">'.$langs->trans('Description').'</td>'; - if ($this->element == 'askpricesupplier') + if ($this->element == 'supplier_proposal') { - print '<td class="linerefsupplier" align="right"><span id="title_fourn_ref">'.$langs->trans("AskPriceSupplierRefFourn").'</span></td>'; + print '<td class="linerefsupplier" align="right"><span id="title_fourn_ref">'.$langs->trans("SupplierProposalRefFourn").'</span></td>'; } // VAT diff --git a/htdocs/core/class/conf.class.php b/htdocs/core/class/conf.class.php index 9aa2d868369bb3c74441723b1f308e9e76fa3f24..3aac36f3f37bbe8168c6d9446050adece7b218f6 100644 --- a/htdocs/core/class/conf.class.php +++ b/htdocs/core/class/conf.class.php @@ -193,6 +193,7 @@ class Conf { $modulename=strtolower($reg[1]); if ($modulename == 'propale') $modulename='propal'; + if ($modulename == 'supplierproposal') $modulename='supplier_proposal'; if (! isset($this->$modulename) || ! is_object($this->$modulename)) $this->$modulename=new stdClass(); $this->$modulename->enabled=true; $this->modules[]=$modulename; // Add this module in list of enabled modules @@ -451,10 +452,10 @@ class Conf $this->maxfilesize = (empty($this->global->MAIN_UPLOAD_DOC) ? 0 : $this->global->MAIN_UPLOAD_DOC * 1024); // Define list of limited modules - if (! isset($this->global->MAIN_MODULES_FOR_EXTERNAL)) $this->global->MAIN_MODULES_FOR_EXTERNAL='user,askpricesupplier,facture,categorie,commande,fournisseur,contact,propal,projet,contrat,societe,ficheinter,expedition,agenda,adherent'; // '' means 'all'. Note that contact is added here as it should be a module later. + if (! isset($this->global->MAIN_MODULES_FOR_EXTERNAL)) $this->global->MAIN_MODULES_FOR_EXTERNAL='user,supplier_proposal,facture,categorie,commande,fournisseur,contact,propal,projet,contrat,societe,ficheinter,expedition,agenda,adherent'; // '' means 'all'. Note that contact is added here as it should be a module later. // Enable select2 - if (empty($this->global->MAIN_USE_JQUERY_MULTISELECT)) $this->global->MAIN_USE_JQUERY_MULTISELECT='select2'; + if (empty($this->global->MAIN_USE_JQUERY_MULTISELECT) || $this->global->MAIN_USE_JQUERY_MULTISELECT == '1') $this->global->MAIN_USE_JQUERY_MULTISELECT='select2'; // Timeouts if (empty($this->global->MAIN_USE_CONNECT_TIMEOUT)) $this->global->MAIN_USE_CONNECT_TIMEOUT=10; diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 555b44423e145616deec598e326f3c2eb669639a..6974daabc0096f8e095444b1b4123ee79a1f41f6 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -3857,12 +3857,12 @@ class Form dol_syslog(__METHOD__, LOG_DEBUG); - $sql = "SELECT DISTINCT t.taux, t.recuperableonly"; + $sql = "SELECT DISTINCT t.code, t.taux, t.recuperableonly"; $sql.= " FROM ".MAIN_DB_PREFIX."c_tva as t, ".MAIN_DB_PREFIX."c_country as c"; $sql.= " WHERE t.fk_pays = c.rowid"; $sql.= " AND t.active > 0"; $sql.= " AND c.code IN (".$country_code.")"; - $sql.= " ORDER BY t.taux ASC, t.recuperableonly ASC"; + $sql.= " ORDER BY t.code ASC, t.taux ASC, t.recuperableonly ASC"; $resql=$this->db->query($sql); if ($resql) @@ -3873,8 +3873,9 @@ class Form for ($i = 0; $i < $num; $i++) { $obj = $this->db->fetch_object($resql); + $this->cache_vatrates[$i]['code'] = $obj->code; $this->cache_vatrates[$i]['txtva'] = $obj->taux; - $this->cache_vatrates[$i]['libtva'] = $obj->taux.'%'; + $this->cache_vatrates[$i]['libtva'] = $obj->taux.'%'.($obj->code?' ('.$obj->code.')':''); // Label must contains only 0-9 , . % or * $this->cache_vatrates[$i]['nprtva'] = $obj->recuperableonly; } @@ -3897,7 +3898,7 @@ class Form * Output an HTML select vat rate. * The name of this function should be selectVat. We keep bad name for compatibility purpose. * - * @param string $htmlname Name of html select field + * @param string $htmlname Name of HTML select field * @param float $selectedrate Force preselected vat rate. Use '' for no forcing. * @param Societe $societe_vendeuse Thirdparty seller * @param Societe $societe_acheteuse Thirdparty buyer @@ -3910,10 +3911,11 @@ class Form * Si vendeur et acheteur dans Communauté européenne et acheteur= particulier alors TVA par défaut=TVA du produit vendu. Fin de règle. * Si vendeur et acheteur dans Communauté européenne et acheteur= entreprise alors TVA par défaut=0. Fin de règle. * Sinon la TVA proposee par defaut=0. Fin de regle. - * @param bool $options_only Return options only (for ajax treatment) + * @param bool $options_only Return HTML options lines only (for ajax treatment) + * @param int $addcode Add code into key in select list * @return string */ - function load_tva($htmlname='tauxtva', $selectedrate='', $societe_vendeuse='', $societe_acheteuse='', $idprod=0, $info_bits=0, $type='', $options_only=false) + function load_tva($htmlname='tauxtva', $selectedrate='', $societe_vendeuse='', $societe_acheteuse='', $idprod=0, $info_bits=0, $type='', $options_only=false, $addcode=0) { global $langs,$conf,$mysoc; @@ -4016,13 +4018,16 @@ class Form $return.= '<option value="'.$rate['txtva']; $return.= $rate['nprtva'] ? '*': ''; + if ($addcode && $rate['code']) $return.=' ('.$rate['code'].')'; $return.= '"'; if ($rate['txtva'] == $defaulttx && $rate['nprtva'] == $defaultnpr) { $return.= ' selected'; } $return.= '>'.vatrate($rate['libtva']); + //$return.=($rate['code']?' '.$rate['code']:''); $return.= $rate['nprtva'] ? ' *': ''; + $return.= '</option>'; } @@ -4890,9 +4895,9 @@ class Form $tplpath = 'comm/'.$element; if (empty($conf->propal->enabled)) continue; // Do not show if module disabled } - else if ($objecttype == 'askpricesupplier') { + else if ($objecttype == 'supplier_proposal') { $tplpath = 'comm/'.$element; - if (empty($conf->askpricesupplier->enabled)) continue; // Do not show if module disabled + if (empty($conf->supplier_proposal->enabled)) continue; // Do not show if module disabled } else if ($objecttype == 'shipping' || $objecttype == 'shipment') { $tplpath = 'expedition'; @@ -5299,7 +5304,7 @@ class Form $entity = (! empty($object->entity) ? $object->entity : $conf->entity); $id = (! empty($object->id) ? $object->id : $object->rowid); - $ret='';$dir='';$file='';$altfile='';$email=''; + $ret='';$dir='';$file='';$originalfile='';$altfile='';$email=''; if ($modulepart=='societe') { @@ -5308,9 +5313,11 @@ class Form $smallfile=preg_replace('/(\.png|\.gif|\.jpg|\.jpeg|\.bmp)/i','_small\\1',$smallfile); if (! empty($object->logo)) { + // TODO Introduce get_exdir if ((string) $imagesize == 'mini') $file=$id.'/logos/thumbs/'.getImageFileNameForSize($object->logo, '_mini'); else if ((string) $imagesize == 'small') $file=$id.'/logos/thumbs/'.getImageFileNameForSize($object->logo, '_small'); else $file=$id.'/logos/thumbs/'.$smallfile; + $originalfile=$id.'/logos/thumbs/'.$smallfile; } } else if ($modulepart=='contact') @@ -5318,9 +5325,11 @@ class Form $dir=$conf->societe->multidir_output[$entity].'/contact'; if (! empty($object->photo)) { + // TODO Introduce get_exdir if ((string) $imagesize == 'mini') $file=$id.'/photos/thumbs/'.getImageFileNameForSize($object->photo, '_mini'); else if ((string) $imagesize == 'small') $file=$id.'/photos/thumbs/'.getImageFileNameForSize($object->photo, '_small'); else $file=$id.'/photos/'.$object->photo; + $originalfile=$id.'/photos/'.$object->photo; } } else if ($modulepart=='userphoto') @@ -5331,6 +5340,7 @@ class Form if ((string) $imagesize == 'mini') $file=get_exdir($id, 2, 0, 0, $object, 'user').getImageFileNameForSize($object->photo, '_mini'); else if ((string) $imagesize == 'small') $file=get_exdir($id, 2, 0, 0, $object, 'user').getImageFileNameForSize($object->photo, '_small'); else $file=get_exdir($id, 2, 0, 0, $object, 'user').$object->photo; + $originalfile=get_exdir($id, 2, 0, 0, $object, 'user').$object->photo; } if (! empty($conf->global->MAIN_OLD_IMAGE_LINKS)) $altfile=$object->id.".jpg"; // For backward compatibility $email=$object->email; @@ -5343,6 +5353,7 @@ class Form if ((string) $imagesize == 'mini') $file=get_exdir($id, 2, 0, 0, $object, 'member').'photos/'.getImageFileNameForSize($object->photo, '_mini'); else if ((string) $imagesize == 'small') $file=get_exdir($id, 2, 0, 0, $object, 'member').'photos/'.getImageFileNameForSize($object->photo, '_small'); else $file=get_exdir($id, 2, 0, 0, $object, 'member').'photos/'.$object->photo; + $originalfile=get_exdir($id, 2, 0, 0, $object, 'member').'photos/'.$object->photo; } if (! empty($conf->global->MAIN_OLD_IMAGE_LINKS)) $altfile=$object->id.".jpg"; // For backward compatibility $email=$object->email; @@ -5355,6 +5366,7 @@ class Form if ((string) $imagesize == 'mini') $file=get_exdir($id, 2, 0, 0, $object, $modulepart).'photos/'.getImageFileNameForSize($object->photo, '_mini'); else if ((string) $imagesize == 'small') $file=get_exdir($id, 2, 0, 0, $object, $modulepart).'photos/'.getImageFileNameForSize($object->photo, '_small'); else $file=get_exdir($id, 2, 0, 0, $object, $modulepart).'photos/'.$object->photo; + $originalfile=get_exdir($id, 2, 0, 0, $object, $modulepart).'photos/'.$object->photo; } if (! empty($conf->global->MAIN_OLD_IMAGE_LINKS)) $altfile=$object->id.".jpg"; // For backward compatibility $email=$object->email; @@ -5364,13 +5376,13 @@ class Form { if ($file && file_exists($dir."/".$file)) { - if ($addlinktofullsize) $ret.='<a href="'.DOL_URL_ROOT.'/viewimage.php?modulepart='.$modulepart.'&entity='.$entity.'&file='.urlencode($file).'&cache='.$cache.'">'; + if ($addlinktofullsize) $ret.='<a href="'.DOL_URL_ROOT.'/viewimage.php?modulepart='.$modulepart.'&entity='.$entity.'&file='.urlencode($originalfile).'&cache='.$cache.'">'; $ret.='<img alt="Photo" id="photologo'.(preg_replace('/[^a-z]/i','_',$file)).'" class="'.$cssclass.'" '.($width?' width="'.$width.'"':'').($height?' height="'.$height.'"':'').' src="'.DOL_URL_ROOT.'/viewimage.php?modulepart='.$modulepart.'&entity='.$entity.'&file='.urlencode($file).'&cache='.$cache.'">'; if ($addlinktofullsize) $ret.='</a>'; } else if ($altfile && file_exists($dir."/".$altfile)) { - if ($addlinktofullsize) $ret.='<a href="'.DOL_URL_ROOT.'/viewimage.php?modulepart='.$modulepart.'&entity='.$entity.'&file='.urlencode($file).'&cache='.$cache.'">'; + if ($addlinktofullsize) $ret.='<a href="'.DOL_URL_ROOT.'/viewimage.php?modulepart='.$modulepart.'&entity='.$entity.'&file='.urlencode($originalfile).'&cache='.$cache.'">'; $ret.='<img alt="Photo alt" id="photologo'.(preg_replace('/[^a-z]/i','_',$file)).'" class="'.$cssclass.'" '.($width?' width="'.$width.'"':'').($height?' height="'.$height.'"':'').' src="'.DOL_URL_ROOT.'/viewimage.php?modulepart='.$modulepart.'&entity='.$entity.'&file='.urlencode($altfile).'&cache='.$cache.'">'; if ($addlinktofullsize) $ret.='</a>'; } diff --git a/htdocs/core/class/html.formactions.class.php b/htdocs/core/class/html.formactions.class.php index a5404135982a20c16ade8dd43c451cc4c3cfc2fb..94a642efce3eee9ed2e8b97c88a146d975249150 100644 --- a/htdocs/core/class/html.formactions.class.php +++ b/htdocs/core/class/html.formactions.class.php @@ -171,7 +171,7 @@ class FormActions if ($typeelement == 'invoice') $title=$langs->trans('ActionsOnBill'); elseif ($typeelement == 'invoice_supplier' || $typeelement == 'supplier_invoice') $title=$langs->trans('ActionsOnBill'); elseif ($typeelement == 'propal') $title=$langs->trans('ActionsOnPropal'); - elseif ($typeelement == 'askpricesupplier') $title=$langs->trans('ActionsOnAskPriceSupplier'); + elseif ($typeelement == 'supplier_proposal') $title=$langs->trans('ActionsOnSupplierProposal'); elseif ($typeelement == 'order') $title=$langs->trans('ActionsOnOrder'); elseif ($typeelement == 'order_supplier' || $typeelement == 'supplier_order') $title=$langs->trans('ActionsOnOrder'); elseif ($typeelement == 'project') $title=$langs->trans('ActionsOnProject'); diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index b4f1bef9ccdb3001d78da79736418e6eb2903494..689f5c1d8a5b50f272033f08afd123c53c6b9a2d 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -285,7 +285,7 @@ class FormFile } $printer=0; - if (in_array($modulepart,array('facture','askpricesupplier','propal','proposal','order','commande','expedition', 'commande_fournisseur'))) // The direct print feature is implemented only for such elements + if (in_array($modulepart,array('facture','supplier_proposal','propal','proposal','order','commande','expedition', 'commande_fournisseur'))) // The direct print feature is implemented only for such elements { $printer = (!empty($user->rights->printing->read) && !empty($conf->printing->enabled))?true:false; } @@ -329,13 +329,13 @@ class FormFile $modellist=ModelePDFPropales::liste_modeles($this->db); } } - else if ($modulepart == 'askpricesupplier') + else if ($modulepart == 'supplier_proposal') { if (is_array($genallowed)) $modellist=$genallowed; else { - include_once DOL_DOCUMENT_ROOT.'/core/modules/askpricesupplier/modules_askpricesupplier.php'; - $modellist=ModelePDFAskPriceSupplier::liste_modeles($this->db); + include_once DOL_DOCUMENT_ROOT.'/core/modules/supplier_proposal/modules_supplier_proposal.php'; + $modellist=ModelePDFSupplierProposal::liste_modeles($this->db); } } else if ($modulepart == 'commande') @@ -992,10 +992,10 @@ class FormFile include_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php'; $object_instance=new Propal($this->db); } - else if ($modulepart == 'askpricesupplier') + else if ($modulepart == 'supplier_proposal') { - include_once DOL_DOCUMENT_ROOT.'/comm/askpricesupplier/class/askpricesupplier.class.php'; - $object_instance=new AskPriceSupplier($this->db); + include_once DOL_DOCUMENT_ROOT.'/supplier_proposal/class/supplier_proposal.class.php'; + $object_instance=new SupplierProposal($this->db); } else if ($modulepart == 'order') { @@ -1058,7 +1058,7 @@ class FormFile if ($modulepart == 'invoice') { preg_match('/(.*)\/[^\/]+$/',$relativefile,$reg); $ref=(isset($reg[1])?$reg[1]:''); } if ($modulepart == 'invoice_supplier') { preg_match('/([^\/]+)\/[^\/]+$/',$relativefile,$reg); $ref=(isset($reg[1])?$reg[1]:''); if (is_numeric($ref)) { $id=$ref; $ref=''; } } // $ref may be also id with old supplier invoices if ($modulepart == 'propal') { preg_match('/(.*)\/[^\/]+$/',$relativefile,$reg); $ref=(isset($reg[1])?$reg[1]:''); } - if ($modulepart == 'askpricesupplier') { preg_match('/(.*)\/[^\/]+$/',$relativefile,$reg); $ref=(isset($reg[1])?$reg[1]:''); } + if ($modulepart == 'supplier_proposal') { preg_match('/(.*)\/[^\/]+$/',$relativefile,$reg); $ref=(isset($reg[1])?$reg[1]:''); } if ($modulepart == 'order') { preg_match('/(.*)\/[^\/]+$/',$relativefile,$reg); $ref=(isset($reg[1])?$reg[1]:''); } if ($modulepart == 'order_supplier') { preg_match('/(.*)\/[^\/]+$/',$relativefile,$reg); $ref=(isset($reg[1])?$reg[1]:''); } if ($modulepart == 'contract') { preg_match('/(.*)\/[^\/]+$/',$relativefile,$reg); $ref=(isset($reg[1])?$reg[1]:''); } diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index 084747765125eec0a318080be21b1150472ded75..34668e23c90db42584d6b56bd8fb23f9f63b779f 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -524,7 +524,7 @@ class FormMail extends Form $showinfobcc=''; if (! empty($conf->global->MAIN_MAIL_AUTOCOPY_PROPOSAL_TO) && ! empty($this->param['models']) && $this->param['models'] == 'propal_send') $showinfobcc=$conf->global->MAIN_MAIL_AUTOCOPY_PROPOSAL_TO; - if (! empty($conf->global->MAIN_MAIL_AUTOCOPY_ASKPRICESUPPLIER_TO) && ! empty($this->param['models']) && $this->param['models'] == 'askpricesupplier_send') $showinfobcc=$conf->global->MAIN_MAIL_AUTOCOPY_ASKPRICESUPPLIER_TO; + if (! empty($conf->global->MAIN_MAIL_AUTOCOPY_SUPPLIER_PROPOSAL_TO) && ! empty($this->param['models']) && $this->param['models'] == 'supplier_proposal_send') $showinfobcc=$conf->global->MAIN_MAIL_AUTOCOPY_SUPPLIER_PROPOSAL_TO; if (! empty($conf->global->MAIN_MAIL_AUTOCOPY_ORDER_TO) && ! empty($this->param['models']) && $this->param['models'] == 'order_send') $showinfobcc=$conf->global->MAIN_MAIL_AUTOCOPY_ORDER_TO; if (! empty($conf->global->MAIN_MAIL_AUTOCOPY_INVOICE_TO) && ! empty($this->param['models']) && $this->param['models'] == 'facture_send') $showinfobcc=$conf->global->MAIN_MAIL_AUTOCOPY_INVOICE_TO; if ($showinfobcc) $out.=' + '.$showinfobcc; @@ -544,7 +544,7 @@ class FormMail extends Form { $defaultvaluefordeliveryreceipt=0; if (! empty($conf->global->MAIL_FORCE_DELIVERY_RECEIPT_PROPAL) && ! empty($this->param['models']) && $this->param['models'] == 'propal_send') $defaultvaluefordeliveryreceipt=1; - if (! empty($conf->global->MAIL_FORCE_DELIVERY_RECEIPT_ASKPRICESUPPLIER) && ! empty($this->param['models']) && $this->param['models'] == 'askpricesupplier_send') $defaultvaluefordeliveryreceipt=1; + if (! empty($conf->global->MAIL_FORCE_DELIVERY_RECEIPT_SUPPLIER_PROPOSAL) && ! empty($this->param['models']) && $this->param['models'] == 'supplier_proposal_send') $defaultvaluefordeliveryreceipt=1; if (! empty($conf->global->MAIL_FORCE_DELIVERY_RECEIPT_ORDER) && ! empty($this->param['models']) && $this->param['models'] == 'order_send') $defaultvaluefordeliveryreceipt=1; if (! empty($conf->global->MAIL_FORCE_DELIVERY_RECEIPT_INVOICE) && ! empty($this->param['models']) && $this->param['models'] == 'facture_send') $defaultvaluefordeliveryreceipt=1; $out.= $form->selectyesno('deliveryreceipt', (isset($_POST["deliveryreceipt"])?$_POST["deliveryreceipt"]:$defaultvaluefordeliveryreceipt), 1); @@ -786,7 +786,7 @@ class FormMail extends Form if ($type_template=='facture_send') { $defaultmessage=$outputlangs->transnoentities("PredefinedMailContentSendInvoice"); } elseif ($type_template=='facture_relance') { $defaultmessage=$outputlangs->transnoentities("PredefinedMailContentSendInvoiceReminder"); } elseif ($type_template=='propal_send') { $defaultmessage=$outputlangs->transnoentities("PredefinedMailContentSendProposal"); } - elseif ($type_template=='askpricesupplier_send') { $defaultmessage=$outputlangs->transnoentities("PredefinedMailContentSendAskPriceSupplier"); } + elseif ($type_template=='supplier_proposal_send') { $defaultmessage=$outputlangs->transnoentities("PredefinedMailContentSendSupplierProposal"); } elseif ($type_template=='order_send') { $defaultmessage=$outputlangs->transnoentities("PredefinedMailContentSendOrder"); } elseif ($type_template=='order_supplier_send') { $defaultmessage=$outputlangs->transnoentities("PredefinedMailContentSendSupplierOrder"); } elseif ($type_template=='invoice_supplier_send') { $defaultmessage=$outputlangs->transnoentities("PredefinedMailContentSendSupplierInvoice"); } diff --git a/htdocs/core/class/html.formaskpricesupplier.class.php b/htdocs/core/class/html.formsupplier_proposal.class.php similarity index 93% rename from htdocs/core/class/html.formaskpricesupplier.class.php rename to htdocs/core/class/html.formsupplier_proposal.class.php index 770c88ac844665d920ce3c45216ec6d1b695d8c4..d317778e1a0cc7e166f286e16f6fbe09e10a81ed 100644 --- a/htdocs/core/class/html.formaskpricesupplier.class.php +++ b/htdocs/core/class/html.formsupplier_proposal.class.php @@ -25,7 +25,7 @@ /** * Class to manage generation of HTML components for proposal management */ -class FormAskPriceSupplier +class FormSupplierProposal { var $db; var $error; @@ -49,18 +49,18 @@ class FormAskPriceSupplier * @param int $short Use short labels * @return void */ - function selectAskPriceSupplierStatus($selected='',$short=0) + function selectSupplierProposalStatus($selected='',$short=0) { global $langs; $sql = "SELECT id, code, label, active FROM ".MAIN_DB_PREFIX."c_propalst"; $sql .= " WHERE active = 1"; - dol_syslog(get_class($this)."::selectAskPriceSupplierStatus", LOG_DEBUG); + dol_syslog(get_class($this)."::selectSupplierProposalStatus", LOG_DEBUG); $resql=$this->db->query($sql); if ($resql) { - print '<select class="flat" name="askpricesupplier_statut">'; + print '<select class="flat" name="supplier_proposal_statut">'; print '<option value=""> </option>'; $num = $this->db->num_rows($resql); $i = 0; diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index d6cadaaadec0a1cbe590869ae5cc60913037adeb..3e35e66336fda11409a93acc98fd8d0c34abd273 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -2,6 +2,7 @@ /* Copyright (C) 2008-2012 Laurent Destailleur <eldy@users.sourceforge.net> * Copyright (C) 2012-2015 Regis Houssin <regis.houssin@capnetworks.com> * Copyright (C) 2012 Juanjo Menent <jmenent@2byte.es> + * Copyright (C) 2015 Marcos García <marcosgdf@gmail.com> * * 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 @@ -1440,6 +1441,9 @@ function dol_add_file_process($upload_dir, $allowoverwrite=0, $donotupdatesessio // Define $destpath (path to file including filename) and $destfile (only filename) $destpath=$upload_dir . "/" . $_FILES[$varfiles]['name']; $destfile=$_FILES[$varfiles]['name']; + + $savingdocmask = dol_sanitizeFileName($savingdocmask); + if ($savingdocmask) { $destpath=$upload_dir . "/" . preg_replace('/__file__/',$_FILES[$varfiles]['name'],$savingdocmask); diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index daa96d767755cafd0455ec009b63dd74c85366e6..5685a2fbb92ccde264f9fc15de7d4886d6d25a85 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -892,7 +892,7 @@ function dol_banner_tab($object, $paramid, $morehtml='', $shownav=1, $fieldid='r $showimage=$object->is_photo_available($conf->product->multidir_output[$object->entity]); $maxvisiblephotos=(isset($conf->global->PRODUCT_MAX_VISIBLE_PHOTO)?$conf->global->PRODUCT_MAX_VISIBLE_PHOTO:5); if ($conf->browser->phone) $maxvisiblephotos=1; - if ($showimage) $morehtmlleft.='<div class="floatleft inline-block valignmiddle divphotoref">'.$object->show_photos($conf->product->multidir_output[$object->entity],1,-$maxvisiblephotos,0,0,0,$width,0).'</div>'; + if ($showimage) $morehtmlleft.='<div class="floatleft inline-block valignmiddle divphotoref">'.$object->show_photos($conf->product->multidir_output[$object->entity],'small',-$maxvisiblephotos,0,0,0,$width,0).'</div>'; else { $nophoto='/public/theme/common/nophoto.png'; @@ -901,7 +901,7 @@ function dol_banner_tab($object, $paramid, $morehtml='', $shownav=1, $fieldid='r } else { - if ($showimage) $morehtmlleft.='<div class="floatleft inline-block valignmiddle divphotoref">'.$form->showphoto($modulepart,$object,0,0,0,'photoref','',1,0,$maxvisiblephotos).'</div>'; + if ($showimage) $morehtmlleft.='<div class="floatleft inline-block valignmiddle divphotoref">'.$form->showphoto($modulepart,$object,0,0,0,'photoref','small',1,0,$maxvisiblephotos).'</div>'; } if ($showbarcode) $morehtmlleft.='<div class="floatleft inline-block valignmiddle divphotoref">'.$form->showbarcode($object).'</div>'; if ($object->element == 'societe' && ! empty($conf->use_javascript_ajax) && $user->rights->societe->creer && ! empty($conf->global->MAIN_DIRECT_STATUS_UPDATE)) { @@ -3088,12 +3088,18 @@ function print_fleche_navigation($page, $file, $options='', $nextpage=0, $betwee */ function vatrate($rate,$addpercent=false,$info_bits=0,$usestarfornpr=0) { - // Test for compatibility - if (preg_match('/%/',$rate)) + $morelabel=''; + + if (preg_match('/%/',$rate)) { $rate=str_replace('%','',$rate); $addpercent=true; } + if (preg_match('/\((.*)\)/',$rate,$reg)) + { + $morelabel=' ('.$reg[1].')'; + $rate=preg_replace('/'.preg_quote($morelabel,'/').'/','',$rate); + } if (preg_match('/\*/',$rate) || preg_match('/'.constant('MAIN_LABEL_MENTION_NPR').'/i',$rate)) { $rate=str_replace('*','',$rate); @@ -3102,6 +3108,7 @@ function vatrate($rate,$addpercent=false,$info_bits=0,$usestarfornpr=0) $ret=price($rate,0,'',0,0).($addpercent?'%':''); if ($info_bits & 1) $ret.=' '.($usestarfornpr?'*':constant('MAIN_LABEL_MENTION_NPR')); + $ret.=$morelabel; return $ret; } @@ -3283,35 +3290,43 @@ function price2num($amount,$rounding='',$alreadysqlnb=0) } /** - * Return localtax rate for a particular vat, when selling a product with vat $tva, from a $thirdparty_buyer to a $thirdparty_seller + * Return localtax rate for a particular vat, when selling a product with vat $vatrate, from a $thirdparty_buyer to a $thirdparty_seller * Note: This function applies same rules than get_default_tva * - * @param float $tva Vat taxe + * @param float $vatrate Vat rate * @param int $local Local tax to search and return (1 or 2 return only tax rate 1 or tax rate 2) * @param Societe $thirdparty_buyer Object of buying third party * @param Societe $thirdparty_seller Object of selling third party - * @return mixed 0 if not found, localtax if found + * @return mixed 0 if not found, localtax rate if found * @see get_default_tva */ -function get_localtax($tva, $local, $thirdparty_buyer="", $thirdparty_seller="") +function get_localtax($vatrate, $local, $thirdparty_buyer="", $thirdparty_seller="") { global $db, $conf, $mysoc; if (empty($thirdparty_seller) || ! is_object($thirdparty_seller)) $thirdparty_seller=$mysoc; - dol_syslog("get_localtax tva=".$tva." local=".$local." thirdparty_buyer id=".(is_object($thirdparty_buyer)?$thirdparty_buyer->id:'')."/country_code=".(is_object($thirdparty_buyer)?$thirdparty_buyer->country_code:'')." thirdparty_seller id=".$thirdparty_seller->id."/country_code=".$thirdparty_seller->country_code." thirdparty_seller localtax1_assuj=".$thirdparty_seller->localtax1_assuj." thirdparty_seller localtax2_assuj=".$thirdparty_seller->localtax2_assuj); + dol_syslog("get_localtax tva=".$vatrate." local=".$local." thirdparty_buyer id=".(is_object($thirdparty_buyer)?$thirdparty_buyer->id:'')."/country_code=".(is_object($thirdparty_buyer)?$thirdparty_buyer->country_code:'')." thirdparty_seller id=".$thirdparty_seller->id."/country_code=".$thirdparty_seller->country_code." thirdparty_seller localtax1_assuj=".$thirdparty_seller->localtax1_assuj." thirdparty_seller localtax2_assuj=".$thirdparty_seller->localtax2_assuj); - if($thirdparty_buyer->country_code!=$thirdparty_seller->country_code) + $vatratecleaned = $vatrate; + if (preg_match('/^(.*)\s*\((.*)\)$/', $vatrate, $reg)) // If vat is "xx (yy)" { - return 0; + $vatratecleaned = $reg[1]; + $vatratecode = $reg[2]; } + + /*if ($thirdparty_buyer->country_code != $thirdparty_seller->country_code) + { + return 0; + }*/ + // Some test to guess with no need to make database access if ($mysoc->country_code == 'ES') // For spain localtaxes 1 and 2, tax is qualified if buyer use local taxe { if ($local == 1) { - if(! $mysoc->localtax1_assuj) return 0; - if ($thirdparty_seller->id==$mysoc->id) + if (! $mysoc->localtax1_assuj) return 0; + if ($thirdparty_seller->id == $mysoc->id) { if (! $thirdparty_buyer->localtax1_assuj) return 0; } @@ -3323,8 +3338,8 @@ function get_localtax($tva, $local, $thirdparty_buyer="", $thirdparty_seller="") if ($local == 2) { - if(! $mysoc->localtax2_assuj) return 0; - if ($thirdparty_seller->id==$mysoc->id ) + if (! $mysoc->localtax2_assuj) return 0; + if ($thirdparty_seller->id == $mysoc->id) { if (! $thirdparty_buyer->localtax2_assuj) return 0; } @@ -3350,63 +3365,72 @@ function get_localtax($tva, $local, $thirdparty_buyer="", $thirdparty_seller="") }*/ // Search local taxes - if ($local==1) - { - if($thirdparty_seller!=$mysoc ) - { - if(!isOnlyOneLocalTax($local)) - { - return $thirdparty_seller->localtax1_value; - } - } - else - { - if(!isOnlyOneLocalTax($local)) - { - return $conf->global->MAIN_INFO_VALUE_LOCALTAX1; - } - } - } - if ($local==2) - { - if($thirdparty_seller!=$mysoc) - { - if(!isOnlyOneLocalTax($local)) - { - return $thirdparty_seller->localtax2_value; - } - } - else - { - if(!isOnlyOneLocalTax($local)) - { - return $conf->global->MAIN_INFO_VALUE_LOCALTAX2; - } - } - } - + if ($mysoc->country_code == 'ES' || ! empty($conf->global->MAIN_GET_LOCALTAXES_VALUES_FROM_THIRDPARTY)) + { + if ($local==1) + { + if ($thirdparty_seller != $mysoc) + { + if (!isOnlyOneLocalTax($local)) // TODO We should provide $vatrate to search on correct line and not always on line with highest vat rate + { + return $thirdparty_seller->localtax1_value; + } + } + 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. + { + return $conf->global->MAIN_INFO_VALUE_LOCALTAX1; + } + } + } + if ($local==2) + { + if ($thirdparty_seller != $mysoc) + { + if (!isOnlyOneLocalTax($local)) // TODO We should provide $vatrate to search on correct line and not always on line with highest vat rate + // TODO We should also return value defined on thirdparty only if defined + { + return $thirdparty_seller->localtax2_value; + } + } + else // i am the seller + { + if (!isOnlyOneLocalTax($local)) // This is for spain only, we don't return value found into datbase even if there is only one locatax vat. + { + return $conf->global->MAIN_INFO_VALUE_LOCALTAX2; + } + } + } + } + + // By default, search value of local tax on line of common tax $sql = "SELECT t.localtax1, t.localtax2, t.localtax1_type, t.localtax2_type"; - $sql .= " FROM ".MAIN_DB_PREFIX."c_tva as t, ".MAIN_DB_PREFIX."c_country as c"; - $sql .= " WHERE t.fk_pays = c.rowid AND c.code = '".$thirdparty_seller->country_code."'"; - $sql .= " AND t.taux = ".((float) $tva)." AND t.active = 1"; - dol_syslog("get_localtax", LOG_DEBUG); - $resql=$db->query($sql); - if ($resql) - { - $obj = $db->fetch_object($resql); - if ($local==1) return $obj->localtax1; - elseif ($local==2) return $obj->localtax2; + $sql .= " FROM ".MAIN_DB_PREFIX."c_tva as t, ".MAIN_DB_PREFIX."c_country as c"; + $sql .= " WHERE t.fk_pays = c.rowid AND c.code = '".$thirdparty_seller->country_code."'"; + $sql .= " AND t.taux = ".((float) $vatratecleaned)." AND t.active = 1"; + if ($vatratecode) $sql.= " AND t.code ='".$vatratecode."'"; + dol_syslog("get_localtax", LOG_DEBUG); + $resql=$db->query($sql); + + if ($resql) + { + $obj = $db->fetch_object($resql); + if ($local==1) return $obj->localtax1; + elseif ($local==2) return $obj->localtax2; } - + return 0; } /** - * Return true if LocalTax is unique + * Return true if LocalTax (1 or 2) is unique. + * Example: If localtax1 is 5 on line with highest common vat rate, return true + * Example: If localtax1 is 5:8:15 on line with highest common vat rate, return false * - * @param int $local Local taxt to test - * @return boolean True if LocalTax have multiple values, False if not + * @param int $local Local tax to test (1 or 2) + * @return boolean True if LocalTax have multiple values, False if not */ function isOnlyOneLocalTax($local) { @@ -3414,7 +3438,7 @@ function isOnlyOneLocalTax($local) $valors=explode(":", $tax); - if(count($valors)>1) + if (count($valors)>1) { return false; } @@ -3425,7 +3449,7 @@ function isOnlyOneLocalTax($local) } /** - * Get values of localtaxes + * Get values of localtaxes (1 or 2) for company country for the common vat with the highest value * * @param int $local LocalTax to get * @return number Values of localtax @@ -3435,9 +3459,10 @@ function get_localtax_by_third($local) global $db, $mysoc; $sql ="SELECT t.localtax1, t.localtax2 "; $sql.=" FROM ".MAIN_DB_PREFIX."c_tva as t inner join ".MAIN_DB_PREFIX."c_country as c ON c.rowid=t.fk_pays"; - $sql.=" WHERE c.code = '".$mysoc->country_code."' AND t.taux=(SELECT max(tt.taux)"; - $sql.=" FROM ".MAIN_DB_PREFIX."c_tva as tt inner join ".MAIN_DB_PREFIX."c_country as c ON c.rowid=tt.fk_pays"; - $sql.=" WHERE c.code = '".$mysoc->country_code."')"; + $sql.=" WHERE c.code = '".$mysoc->country_code."' AND t.active = 1 AND t.taux=("; + $sql.=" SELECT max(tt.taux) FROM ".MAIN_DB_PREFIX."c_tva as tt inner join ".MAIN_DB_PREFIX."c_country as c ON c.rowid=tt.fk_pays"; + $sql.=" WHERE c.code = '".$mysoc->country_code."' AND tt.active = 1"; + $sql.=" )"; $resql=$db->query($sql); if ($resql) @@ -3456,7 +3481,7 @@ function get_localtax_by_third($local) * Get type and rate of localtaxes for a particular vat rate/country fo thirdparty * TODO * This function is also called to retrieve type for building PDF. Such call of function must be removed. - * Instead this function must be called when adding a line to get (array of localtax and type) and + * Instead this function must be called when adding a line to get the array of localtax and type, and then * provide it to the function calcul_price_total. * * @param float $vatrate VAT Rate @@ -3467,15 +3492,24 @@ function get_localtax_by_third($local) */ function getLocalTaxesFromRate($vatrate, $local, $buyer, $seller) { - global $db; + global $db, $mysoc; dol_syslog("getLocalTaxesFromRate vatrate=".$vatrate." local=".$local); + $vatratecleaned = $vatrate; + if (preg_match('/^(.*)\s*\((.*)\)$/', $vatrate, $reg)) // If vat is "xx (yy)" + { + $vatratecleaned = $reg[1]; + $vatratecode = $reg[2]; + } + // Search local taxes $sql = "SELECT 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, ".MAIN_DB_PREFIX."c_country as c"; - $sql .= " WHERE t.fk_pays = c.rowid AND c.code = '".$buyer->country_code."'"; - $sql .= " AND t.taux = ".((float) $vatrate)." AND t.active = 1"; + if ($mysoc->country_code == 'ES') $sql .= " WHERE t.fk_pays = c.rowid AND c.code = '".$buyer->country_code."'"; + else $sql .= " WHERE t.fk_pays = c.rowid AND c.code = '".$seller->country_code."'"; + $sql .= " AND t.taux = ".((float) $vatratecleaned)." AND t.active = 1"; + if ($vatratecode) $sql.= " AND t.code ='".$vatratecode."'"; $resql=$db->query($sql); if ($resql) @@ -5057,8 +5091,9 @@ function printCommonFooter($zone='private') print '<!-- Set handler to add page_y param on some a href links -->'."\n"; print 'jQuery(".reposition").click(function() { var page_y = $(document).scrollTop(); + /* alert(page_y); */ this.href=this.href+\'&page_y=\'+page_y; - });'; + });'."\n"; print '});'."\n"; print '</script>'."\n"; @@ -5290,7 +5325,7 @@ function natural_search($fields, $value, $mode=0, $nofirstand=0) * * @param string $file Original filename (full or relative path) * @param string $extName Extension to differenciate thumb file name ('', '_small', '_mini') - * @param string $extImgTarget Force image extension for thumbs. Use '' to keep same extension than original image. + * @param string $extImgTarget Force image extension for thumbs. Use '' to keep same extension than original image. Use '.png' for generated thumb files. * @return string New file name (full or relative path, including the thumbs/) */ function getImageFileNameForSize($file, $extName, $extImgTarget='') diff --git a/htdocs/core/lib/functions2.lib.php b/htdocs/core/lib/functions2.lib.php index 651e4ea54acbb6f6b7f5a807ffbf4b8bcb015b25..8bc635f74a8f053fb56bd8e1ade26030f81db309 100644 --- a/htdocs/core/lib/functions2.lib.php +++ b/htdocs/core/lib/functions2.lib.php @@ -1608,8 +1608,8 @@ function dolGetElementUrl($objectid,$objecttype,$withpicto=0,$option='') if ($objecttype == 'propal') { $classpath = 'comm/propal/class'; } - if ($objecttype == 'askpricesupplier') { - $classpath = 'comm/askpricesupplier/class'; + if ($objecttype == 'supplier_proposal') { + $classpath = 'supplier_proposal/class'; } if ($objecttype == 'shipping') { $classpath = 'expedition/class'; @@ -1842,8 +1842,8 @@ function getElementProperties($element_type) if ($element_type == 'propal') { $classpath = 'comm/propal/class'; } - if ($element_type == 'askpricesupplier') { - $classpath = 'comm/askpricesupplier/class'; + if ($element_type == 'supplier_proposal') { + $classpath = 'supplier_proposal/class'; } if ($element_type == 'shipping') { $classpath = 'expedition/class'; diff --git a/htdocs/core/lib/pdf.lib.php b/htdocs/core/lib/pdf.lib.php index 881415555bcbfc3700ae3b2967dbf50329744514..c29d9c5a04dff2f28b7936f62b00fbca5330f965 100644 --- a/htdocs/core/lib/pdf.lib.php +++ b/htdocs/core/lib/pdf.lib.php @@ -173,7 +173,7 @@ function pdf_getInstance($format='',$metric='mm',$pagetype='P') * This class is an enhanced FPDI class that support method writeHTMLCell */ class FPDI_DolExtended extends FPDI - { + { /** * __call * @@ -726,7 +726,8 @@ function pdf_bank(&$pdf,$outputlangs,$curx,$cury,$account,$onlynumber=0,$default $ibanDisplay_temp = str_replace(' ', '', $outputlangs->convToOutputCharset($account->iban)); $ibanDisplay = ""; - for($i = 0; $i < dol_strlen($ibanDisplay_temp); $i++) + $nbIbanDisplay_temp = dol_strlen($ibanDisplay_temp); + for ($i = 0; $i < $nbIbanDisplay_temp; $i++) { $ibanDisplay .= $ibanDisplay_temp[$i]; if($i%4 == 3 && $i > 0) $ibanDisplay .= " "; diff --git a/htdocs/core/lib/security2.lib.php b/htdocs/core/lib/security2.lib.php index 0d94357a2011b5801636a03202ff8bdcca333856..a32805b6169fa8d8d5f08d49e91f59f517659c05 100644 --- a/htdocs/core/lib/security2.lib.php +++ b/htdocs/core/lib/security2.lib.php @@ -148,8 +148,10 @@ function dol_loginfunction($langs,$conf,$mysoc) if (! preg_match('/mainmenu=/',$php_self)) $php_self.=(preg_match('/\?/',$php_self)?'&':'?').'mainmenu=home'; // Title - $title='Dolibarr '.DOL_VERSION; + $appli=constant('DOL_APPLICATION_TITLE'); + $title=$appli.' '.DOL_VERSION; if (! empty($conf->global->MAIN_APPLICATION_TITLE)) $title=$conf->global->MAIN_APPLICATION_TITLE; + $titletruedolibarrversion=DOL_VERSION; // $title used by login template after the @ to inform of true Dolibarr version // Note: $conf->css looks like '/theme/eldy/style.css.php' $conf->css = "/theme/".(GETPOST('theme')?GETPOST('theme','alpha'):$conf->theme)."/style.css.php"; diff --git a/htdocs/core/lib/askpricesupplier.lib.php b/htdocs/core/lib/supplier_proposal.lib.php similarity index 72% rename from htdocs/core/lib/askpricesupplier.lib.php rename to htdocs/core/lib/supplier_proposal.lib.php index eec34ea91330ef777699cc7e473a1df738639164..f73ae6727d78c617e74356d5adca2ff91b405015 100644 --- a/htdocs/core/lib/askpricesupplier.lib.php +++ b/htdocs/core/lib/supplier_proposal.lib.php @@ -29,17 +29,17 @@ * @param object $object Object related to tabs * @return array Array of tabs to show */ -function askpricesupplier_prepare_head($object) +function supplier_proposal_prepare_head($object) { global $langs, $conf, $user; - $langs->load("askpricesupplier"); + $langs->load("supplier_proposal"); $langs->load("compta"); $h = 0; $head = array(); - $head[$h][0] = DOL_URL_ROOT.'/comm/askpricesupplier/card.php?id='.$object->id; - $head[$h][1] = $langs->trans('AskPriceSupplierCard'); + $head[$h][0] = DOL_URL_ROOT.'/supplier_proposal/card.php?id='.$object->id; + $head[$h][1] = $langs->trans('SupplierProposalCard'); $head[$h][2] = 'comm'; $h++; @@ -48,14 +48,14 @@ function askpricesupplier_prepare_head($object) // Entries must be declared in modules descriptor with line // $this->tabs = array('entity:+tabname:Title:@mymodule:/mymodule/mypage.php?id=__ID__'); to add new tab // $this->tabs = array('entity:-tabname); to remove a tab - complete_head_from_modules($conf,$langs,$object,$head,$h,'askpricesupplier'); + complete_head_from_modules($conf,$langs,$object,$head,$h,'supplier_proposal'); if (empty($conf->global->MAIN_DISABLE_NOTES_TAB)) { $nbNote = 0; if(!empty($object->note_private)) $nbNote++; if(!empty($object->note_public)) $nbNote++; - $head[$h][0] = DOL_URL_ROOT.'/comm/askpricesupplier/note.php?id='.$object->id; + $head[$h][0] = DOL_URL_ROOT.'/supplier_proposal/note.php?id='.$object->id; $head[$h][1] = $langs->trans('Notes'); if ($nbNote > 0) $head[$h][1].= ' <span class="badge">'.$nbNote.'</span>'; $head[$h][2] = 'note'; @@ -63,20 +63,20 @@ function askpricesupplier_prepare_head($object) } require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; - $upload_dir = $conf->askpricesupplier->dir_output . "/" . dol_sanitizeFileName($object->ref); + $upload_dir = $conf->supplier_proposal->dir_output . "/" . dol_sanitizeFileName($object->ref); $nbFiles = count(dol_dir_list($upload_dir,'files',0,'','(\.meta|_preview\.png)$')); - $head[$h][0] = DOL_URL_ROOT.'/comm/askpricesupplier/document.php?id='.$object->id; + $head[$h][0] = DOL_URL_ROOT.'/supplier_proposal/document.php?id='.$object->id; $head[$h][1] = $langs->trans('Documents'); if($nbFiles > 0) $head[$h][1].= ' <span class="badge">'.$nbFiles.'</span>'; $head[$h][2] = 'document'; $h++; - $head[$h][0] = DOL_URL_ROOT.'/comm/askpricesupplier/info.php?id='.$object->id; + $head[$h][0] = DOL_URL_ROOT.'/supplier_proposal/info.php?id='.$object->id; $head[$h][1] = $langs->trans('Info'); $head[$h][2] = 'info'; $h++; - complete_head_from_modules($conf,$langs,$object,$head,$h,'askpricesupplier','remove'); + complete_head_from_modules($conf,$langs,$object,$head,$h,'supplier_proposal','remove'); return $head; } @@ -86,14 +86,14 @@ function askpricesupplier_prepare_head($object) * * @return array head array with tabs */ -function askpricesupplier_admin_prepare_head() +function supplier_proposal_admin_prepare_head() { global $langs, $conf, $user; $h = 0; $head = array(); - $head[$h][0] = DOL_URL_ROOT.'/admin/askpricesupplier.php'; + $head[$h][0] = DOL_URL_ROOT.'/admin/supplier_proposal.php'; $head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'general'; $h++; @@ -102,19 +102,19 @@ function askpricesupplier_admin_prepare_head() // Entries must be declared in modules descriptor with line // $this->tabs = array('entity:+tabname:Title:@mymodule:/mymodule/mypage.php?id=__ID__'); to add new tab // $this->tabs = array('entity:-tabname:Title:@mymodule:/mymodule/mypage.php?id=__ID__'); to remove a tab - complete_head_from_modules($conf,$langs,null,$head,$h,'askpricesupplier_admin'); + complete_head_from_modules($conf,$langs,null,$head,$h,'supplier_proposal_admin'); - $head[$h][0] = DOL_URL_ROOT.'/comm/admin/askpricesupplier_extrafields.php'; + $head[$h][0] = DOL_URL_ROOT.'/supplier_proposal/admin/supplier_proposal_extrafields.php'; $head[$h][1] = $langs->trans("ExtraFields"); $head[$h][2] = 'attributes'; $h++; - $head[$h][0] = DOL_URL_ROOT.'/comm/admin/askpricesupplierdet_extrafields.php'; + $head[$h][0] = DOL_URL_ROOT.'/supplier_proposal/admin/supplier_proposaldet_extrafields.php'; $head[$h][1] = $langs->trans("ExtraFieldsLines"); $head[$h][2] = 'attributeslines'; $h++; - complete_head_from_modules($conf,$langs,null,$head,$h,'askpricesupplier_admin','remove'); + complete_head_from_modules($conf,$langs,null,$head,$h,'supplier_proposal_admin','remove'); return $head; } diff --git a/htdocs/core/lib/usergroups.lib.php b/htdocs/core/lib/usergroups.lib.php index 526f6e481850a0739371a8a0e355aa3b608175d2..b653cfbf5c002dd1e6dc9aca370e1231587f25b7 100644 --- a/htdocs/core/lib/usergroups.lib.php +++ b/htdocs/core/lib/usergroups.lib.php @@ -382,46 +382,51 @@ function show_theme($fuser,$edit=0,$foruserprofile=false) print '</td></tr>'; - // Use Hover - $var=!$var; + // BackgroundColor if ($foruserprofile) - { - /* Must first change option to choose color of highlight insteado of yes or no. - print '<tr '.$bc[$var].'>'; - print '<td>'.$langs->trans("HighlightLinesOnMouseHover").'</td>'; - print '<td><input '.$bc[$var].' name="check_THEME_ELDY_USE_HOVER" disabled="disabled" type="checkbox" '.($conf->global->THEME_ELDY_USE_HOVER?" checked":"").'></td>'; - print '<td align="left" class="nowrap" width="20%"><input '.$bc[$var].' name="check_MAIN_THEME"'.($edit?'':' disabled').' type="checkbox" '.($selected_theme?" checked":"").'> '.$langs->trans("UsePersonalValue").'</td>'; - print '<td><input '.$bc[$var].' name="check_THEME_ELDY_USE_HOVER"'.($edit?'':' disabled="disabled"').' type="checkbox" '.($hoverdisabled?"":" checked").'>'; - print ' ('.$langs->trans("NotSupportedByAllThemes").', '.$langs->trans("PressF5AfterChangingThis").')'; - print '</td>'; - print '</tr>'; - */ - } - else - { - print '<tr '.$bc[$var].'>'; - print '<td>'.$langs->trans("HighlightLinesColor").'</td>'; - print '<td colspan="'.($colspan-1).'">'; - //print '<input '.$bc[$var].' name="check_THEME_ELDY_USE_HOVER"'.($edit?'':' disabled').' type="checkbox" '.($hoverdisabled?"":" checked").'>'; - //print ' ('.$langs->trans("NotSupportedByAllThemes").', '.$langs->trans("PressF5AfterChangingThis").')'; + { + /*$var=!$var; + print '<tr '.$bc[$var].'>'; + print '<td>'.$langs->trans("TopMenuBackgroundColor").'</td>'; + print '<td>'.($conf->global->THEME_ELDY_TOPMENU_BACK1?$conf->global->THEME_ELDY_TOPMENU_BACK1:$langs->trans("Default")).'</td>'; + print '<td align="left" class="nowrap" width="20%"><input '.$bc[$var].' name="check_THEME_ELDY_TOPMENU_BACK1" id="check_THEME_ELDY_TOPMENU_BACK1" type="checkbox" '.(! empty($object->conf->THEME_ELDY_TOPMENU_BACK1)?" checked":""); + print (empty($dolibarr_main_demo) && $edit)?'':' disabled="disabled"'; // Disabled for demo + print '> '.$langs->trans("UsePersonalValue").'</td>'; + print '<td>'; if ($edit) { - if ($conf->global->THEME_ELDY_USE_HOVER == '1') $color='edf4fb'; - else $color = colorArrayToHex(colorStringToArray($conf->global->THEME_ELDY_USE_HOVER,array()),''); - print $formother->selectColor($color,'THEME_ELDY_USE_HOVER','formcolor',1).' '; + print $formother->selectColor(colorArrayToHex(colorStringToArray($conf->global->THEME_ELDY_TOPMENU_BACK1,array()),''),'THEME_ELDY_TOPMENU_BACK1','formcolor',1).' '; + } + else + { + $color = colorArrayToHex(colorStringToArray($conf->global->THEME_ELDY_TOPMENU_BACK1,array()),''); + if ($color) print '<input type="text" class="colorthumb" disabled style="padding: 1px; margin-top: 0; margin-bottom: 0; width: 40px; background-color: #'.$color.'" value="'.$color.'">'; + else print ''; + } + if ($edit) print '<br>('.$langs->trans("NotSupportedByAllThemes").', '.$langs->trans("PressF5AfterChangingThis").')'; + print '</td>';*/ + } + else + { + $var=!$var; + print '<tr '.$bc[$var].'>'; + print '<td>'.$langs->trans("BackgroundColor").'</td>'; + print '<td colspan="'.($colspan-1).'">'; + //var_dump($conf->global->THEME_ELDY_BACKBODY); + if ($edit) + { + print $formother->selectColor(colorArrayToHex(colorStringToArray($conf->global->THEME_ELDY_BACKBODY,array()),''),'THEME_ELDY_BACKBODY','formcolor',1).' '; } else { - if ($conf->global->THEME_ELDY_USE_HOVER == '1') $color='edf4fb'; - else $color = colorArrayToHex(colorStringToArray($conf->global->THEME_ELDY_USE_HOVER,array()),''); + $color = colorArrayToHex(colorStringToArray($conf->global->THEME_ELDY_BACKBODY,array()),''); if ($color) print '<input type="text" class="colorthumb" disabled="disabled" style="padding: 1px; margin-top: 0; margin-bottom: 0; width: 40px; background-color: #'.$color.'" value="'.$color.'">'; - else print $langs->trans("None"); + else print $langs->trans("Default"); } - print ' ('.$langs->trans("Default").': <strong>edf4fb</strong>, '.$langs->trans("NotSupportedByAllThemes").', '.$langs->trans("PressF5AfterChangingThis").')'; - print '</td>'; - print '</tr>'; - } - + print ' ('.$langs->trans("Default").': <strong>ffffff</strong>, '.$langs->trans("NotSupportedByAllThemes").', '.$langs->trans("PressF5AfterChangingThis").')'; + print '</td>'; + } + // TopMenuBackgroundColor if ($foruserprofile) { @@ -492,6 +497,90 @@ function show_theme($fuser,$edit=0,$foruserprofile=false) print '</tr>'; } + // Use Hover + $var=!$var; + if ($foruserprofile) + { + /* Must first change option to choose color of highlight instead of yes or no. + print '<tr '.$bc[$var].'>'; + print '<td>'.$langs->trans("HighlightLinesOnMouseHover").'</td>'; + print '<td><input '.$bc[$var].' name="check_THEME_ELDY_USE_HOVER" disabled="disabled" type="checkbox" '.($conf->global->THEME_ELDY_USE_HOVER?" checked":"").'></td>'; + print '<td align="left" class="nowrap" width="20%"><input '.$bc[$var].' name="check_MAIN_THEME"'.($edit?'':' disabled').' type="checkbox" '.($selected_theme?" checked":"").'> '.$langs->trans("UsePersonalValue").'</td>'; + print '<td><input '.$bc[$var].' name="check_THEME_ELDY_USE_HOVER"'.($edit?'':' disabled="disabled"').' type="checkbox" '.($hoverdisabled?"":" checked").'>'; + print ' ('.$langs->trans("NotSupportedByAllThemes").', '.$langs->trans("PressF5AfterChangingThis").')'; + print '</td>'; + print '</tr>'; + */ + } + else + { + print '<tr '.$bc[$var].'>'; + print '<td>'.$langs->trans("HighlightLinesColor").'</td>'; + print '<td colspan="'.($colspan-1).'">'; + //print '<input '.$bc[$var].' name="check_THEME_ELDY_USE_HOVER"'.($edit?'':' disabled').' type="checkbox" '.($hoverdisabled?"":" checked").'>'; + //print ' ('.$langs->trans("NotSupportedByAllThemes").', '.$langs->trans("PressF5AfterChangingThis").')'; + if ($edit) + { + if ($conf->global->THEME_ELDY_USE_HOVER == '1') $color='edf4fb'; + else $color = colorArrayToHex(colorStringToArray($conf->global->THEME_ELDY_USE_HOVER,array()),''); + print $formother->selectColor($color,'THEME_ELDY_USE_HOVER','formcolor',1).' '; + } + else + { + if ($conf->global->THEME_ELDY_USE_HOVER == '1') $color='edf4fb'; + else $color = colorArrayToHex(colorStringToArray($conf->global->THEME_ELDY_USE_HOVER,array()),''); + if ($color) print '<input type="text" class="colorthumb" disabled="disabled" style="padding: 1px; margin-top: 0; margin-bottom: 0; width: 40px; background-color: #'.$color.'" value="'.$color.'">'; + else print $langs->trans("None"); + } + print ' ('.$langs->trans("Default").': <strong>edf4fb</strong>, '.$langs->trans("NotSupportedByAllThemes").', '.$langs->trans("PressF5AfterChangingThis").')'; + print '</td>'; + print '</tr>'; + } + + // TopMenuBackgroundColor + if ($foruserprofile) + { + /*$var=!$var; + print '<tr '.$bc[$var].'>'; + print '<td>'.$langs->trans("TopMenuBackgroundColor").'</td>'; + print '<td>'.($conf->global->THEME_ELDY_TOPMENU_BACK1?$conf->global->THEME_ELDY_TOPMENU_BACK1:$langs->trans("Default")).'</td>'; + print '<td align="left" class="nowrap" width="20%"><input '.$bc[$var].' name="check_THEME_ELDY_TOPMENU_BACK1" id="check_THEME_ELDY_TOPMENU_BACK1" type="checkbox" '.(! empty($object->conf->THEME_ELDY_TOPMENU_BACK1)?" checked":""); + print (empty($dolibarr_main_demo) && $edit)?'':' disabled="disabled"'; // Disabled for demo + print '> '.$langs->trans("UsePersonalValue").'</td>'; + print '<td>'; + if ($edit) + { + print $formother->selectColor(colorArrayToHex(colorStringToArray($conf->global->THEME_ELDY_TOPMENU_BACK1,array()),''),'THEME_ELDY_TOPMENU_BACK1','formcolor',1).' '; + } + else + { + $color = colorArrayToHex(colorStringToArray($conf->global->THEME_ELDY_TOPMENU_BACK1,array()),''); + if ($color) print '<input type="text" class="colorthumb" disabled style="padding: 1px; margin-top: 0; margin-bottom: 0; width: 40px; background-color: #'.$color.'" value="'.$color.'">'; + else print ''; + } + if ($edit) print '<br>('.$langs->trans("NotSupportedByAllThemes").', '.$langs->trans("PressF5AfterChangingThis").')'; + print '</td>';*/ + } + else + { + $var=!$var; + print '<tr '.$bc[$var].'>'; + print '<td>'.$langs->trans("LinkColor").'</td>'; + print '<td colspan="'.($colspan-1).'">'; + if ($edit) + { + print $formother->selectColor(colorArrayToHex(colorStringToArray($conf->global->THEME_ELDY_TEXTLINK,array()),''),'THEME_ELDY_TEXTLINK','formcolor',1).' '; + } + else + { + $color = colorArrayToHex(colorStringToArray($conf->global->THEME_ELDY_TEXTLINK,array()),''); + if ($color) print '<input type="text" class="colorthumb" disabled="disabled" style="padding: 1px; margin-top: 0; margin-bottom: 0; width: 40px; background-color: #'.$color.'" value="'.$color.'">'; + else print $langs->trans("Default"); + } + print ' ('.$langs->trans("Default").': <strong>000078</strong>, '.$langs->trans("NotSupportedByAllThemes").', '.$langs->trans("PressF5AfterChangingThis").')'; + print '</td>'; + } + print '</table>'; } diff --git a/htdocs/core/login/functions_ldap.php b/htdocs/core/login/functions_ldap.php index 208ccd0c37c0d2bf9115687c533f26c3babad8dc..71b93f8ee82ac6f13cf3a4a44d1def14efc589f4 100644 --- a/htdocs/core/login/functions_ldap.php +++ b/htdocs/core/login/functions_ldap.php @@ -138,7 +138,7 @@ function check_user_password_ldap($usertotest,$passwordtotest,$entitytotest) $ldap->searchUser=$ldapuserattr."=".$usertotest.",".$ldapdn; // Default dn (will work if LDAP accept a dn with login value inside) // But if LDAP need a dn with name like "cn=Jhon Bloggs,ou=People,dc=foo,dc=com", previous part must have been executed to have // dn detected into ldapUserDN. - if ($resultFetchLdapUser) $ldap->searchUser = $ldap->ldapUserDN; + if ($resultFetchLdapUser AND !empty($ldap->ldapUserDN)) $ldap->searchUser = $ldap->ldapUserDN; $ldap->searchPassword=$passwordtotest; // Test with this->seachUser and this->searchPassword diff --git a/htdocs/core/menus/standard/eldy.lib.php b/htdocs/core/menus/standard/eldy.lib.php index 6d31fbc52f6b57dc4046ed43305d5aefcc9f7d21..d26e8e4407807f50b4cc9311a90f8ed1c264c08d 100644 --- a/htdocs/core/menus/standard/eldy.lib.php +++ b/htdocs/core/menus/standard/eldy.lib.php @@ -444,7 +444,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu print '<div class="menu_titre" id="menu_titre_logo"></div>'; print '<div class="menu_top" id="menu_top_logo"></div>'; print '<div class="menu_contenu" id="menu_contenu_logo">'; - print '<div class="center"><img title="'.dol_escape_htmltag($title).'" alt="" src="'.$urllogo.'" style="max-width: 80%"></div>'."\n"; + print '<div class="center"><img class="companylogo" title="'.dol_escape_htmltag($title).'" alt="" src="'.$urllogo.'" style="max-width: 80%"></div>'."\n"; print '</div>'; print '<div class="menu_end" id="menu_end_logo"></div>'; print '</div>'."\n"; @@ -672,11 +672,11 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu { $langs->load("companies"); - // Propal + // Customer proposal if (! empty($conf->propal->enabled)) { $langs->load("propal"); - $newmenu->add("/comm/propal/index.php?leftmenu=propals", $langs->trans("Prop"), 0, $user->rights->propale->lire, '', $mainmenu, 'propals'); + $newmenu->add("/comm/propal/index.php?leftmenu=propals", $langs->trans("Prop"), 0, $user->rights->propale->lire, '', $mainmenu, 'propals', 100); $newmenu->add("/comm/propal.php?action=create&leftmenu=propals", $langs->trans("NewPropal"), 1, $user->rights->propale->creer); $newmenu->add("/comm/propal/list.php?leftmenu=propals", $langs->trans("List"), 1, $user->rights->propale->lire); if (empty($leftmenu) || $leftmenu=="propals") $newmenu->add("/comm/propal/list.php?leftmenu=propals&viewstatut=0", $langs->trans("PropalsDraft"), 2, $user->rights->propale->lire); @@ -692,7 +692,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu if (! empty($conf->commande->enabled)) { $langs->load("orders"); - $newmenu->add("/commande/index.php?leftmenu=orders", $langs->trans("CustomersOrders"), 0, $user->rights->commande->lire, '', $mainmenu, 'orders'); + $newmenu->add("/commande/index.php?leftmenu=orders", $langs->trans("CustomersOrders"), 0, $user->rights->commande->lire, '', $mainmenu, 'orders', 200); $newmenu->add("/commande/card.php?action=create&leftmenu=orders", $langs->trans("NewOrder"), 1, $user->rights->commande->creer); $newmenu->add("/commande/list.php?leftmenu=orders", $langs->trans("List"), 1, $user->rights->commande->lire); if (empty($leftmenu) || $leftmenu=="orders") $newmenu->add("/commande/list.php?leftmenu=orders&viewstatut=0", $langs->trans("StatusOrderDraftShort"), 2, $user->rights->commande->lire); @@ -708,7 +708,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu if (! empty($conf->fournisseur->enabled)) { $langs->load("orders"); - $newmenu->add("/fourn/commande/index.php?leftmenu=orders_suppliers",$langs->trans("SuppliersOrders"), 0, $user->rights->fournisseur->commande->lire, '', $mainmenu, 'orders_suppliers'); + $newmenu->add("/fourn/commande/index.php?leftmenu=orders_suppliers",$langs->trans("SuppliersOrders"), 0, $user->rights->fournisseur->commande->lire, '', $mainmenu, 'orders_suppliers', 400); $newmenu->add("/fourn/commande/card.php?action=create&leftmenu=orders_suppliers", $langs->trans("NewOrder"), 1, $user->rights->fournisseur->commande->creer); $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers", $langs->trans("List"), 1, $user->rights->fournisseur->commande->lire); @@ -729,7 +729,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu if (! empty($conf->contrat->enabled)) { $langs->load("contracts"); - $newmenu->add("/contrat/index.php?leftmenu=contracts", $langs->trans("Contracts"), 0, $user->rights->contrat->lire, '', $mainmenu, 'contracts'); + $newmenu->add("/contrat/index.php?leftmenu=contracts", $langs->trans("Contracts"), 0, $user->rights->contrat->lire, '', $mainmenu, 'contracts', 2000); $newmenu->add("/contrat/card.php?action=create&leftmenu=contracts", $langs->trans("NewContract"), 1, $user->rights->contrat->creer); $newmenu->add("/contrat/list.php?leftmenu=contracts", $langs->trans("List"), 1, $user->rights->contrat->lire); $newmenu->add("/contrat/services.php?leftmenu=contracts", $langs->trans("MenuServices"), 1, $user->rights->contrat->lire); @@ -743,7 +743,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu if (! empty($conf->ficheinter->enabled)) { $langs->load("interventions"); - $newmenu->add("/fichinter/index.php?leftmenu=ficheinter", $langs->trans("Interventions"), 0, $user->rights->ficheinter->lire, '', $mainmenu, 'ficheinter', 200); + $newmenu->add("/fichinter/index.php?leftmenu=ficheinter", $langs->trans("Interventions"), 0, $user->rights->ficheinter->lire, '', $mainmenu, 'ficheinter', 2200); $newmenu->add("/fichinter/card.php?action=create&leftmenu=ficheinter", $langs->trans("NewIntervention"), 1, $user->rights->ficheinter->creer, '', '', '', 201); $newmenu->add("/fichinter/list.php?leftmenu=ficheinter", $langs->trans("List"), 1, $user->rights->ficheinter->lire, '', '', '', 202); } @@ -1400,6 +1400,17 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu //var_dump($menu_array);exit; if (! is_array($menu_array)) return 0; + // TODO Use the position property in menu_array to reorder the $menu_array + //var_dump($menu_array); + /*$new_menu_array = array(); + $level=0; $cusor=0; $position=0; + $nbentry = count($menu_array); + while (findNextEntryForLevel($menu_array, $cursor, $position, $level)) + { + + $cursor++; + }*/ + // Show menu $invert=empty($conf->global->MAIN_MENU_INVERT)?"":"invert"; if (empty($noout)) diff --git a/htdocs/core/modules/DolibarrModules.class.php b/htdocs/core/modules/DolibarrModules.class.php index 58548a1a7329d30599f30d1e54350a7f3b42512b..504b5cb7e4c19ac01da3490f0cb93d1f6baac821 100644 --- a/htdocs/core/modules/DolibarrModules.class.php +++ b/htdocs/core/modules/DolibarrModules.class.php @@ -34,21 +34,31 @@ */ class DolibarrModules // Can not be abstract, because we need to instantiant it into unActivateModule to be able to disable a module whose files were removed. { + /** + * @var DoliDb Database handler + */ + public $db; + /** * @var int Module unique ID */ public $numero; + /** + * @var string Family + */ + public $family; + + /** + * @var int module_position + */ + public $module_position=500; + /** * @var string Module name */ public $name; - /** - * @var DoliDb Database handler - */ - public $db; - /** * @var array Paths to create when module is activated */ diff --git a/htdocs/core/modules/modAccounting.class.php b/htdocs/core/modules/modAccounting.class.php index 0fd9c265bfb293311fd7316b90f160ba6d553396..e2c50c23d532a1da17db5fd0319951ca20b0aee7 100644 --- a/htdocs/core/modules/modAccounting.class.php +++ b/htdocs/core/modules/modAccounting.class.php @@ -44,6 +44,7 @@ class modAccounting extends DolibarrModules $this->numero = 50400; $this->family = "financial"; + $this->module_position = 610; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Advanced accounting management"; diff --git a/htdocs/core/modules/modAdherent.class.php b/htdocs/core/modules/modAdherent.class.php index a0132a3659991f92fe453c39f8e0226f7f674559..7ec92e17fa6fab88369a09948659ecc325442003 100644 --- a/htdocs/core/modules/modAdherent.class.php +++ b/htdocs/core/modules/modAdherent.class.php @@ -49,6 +49,7 @@ class modAdherent extends DolibarrModules $this->numero = 310; $this->family = "hr"; + $this->module_position = 20; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Management of members of a foundation or association"; diff --git a/htdocs/core/modules/modAgenda.class.php b/htdocs/core/modules/modAgenda.class.php index 0e7c20dcca5fabe2ccf97dee8c5d7b46d7646e77..482846032dcf13e36ca8df0feab71185a0ebdbf7 100644 --- a/htdocs/core/modules/modAgenda.class.php +++ b/htdocs/core/modules/modAgenda.class.php @@ -50,6 +50,7 @@ class modAgenda extends DolibarrModules $this->numero = 2400; $this->family = "projects"; + $this->module_position = 15; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion de l'agenda et des actions"; diff --git a/htdocs/core/modules/modBanque.class.php b/htdocs/core/modules/modBanque.class.php index 5222137e692a7bb43868322ac25239300cc62f7d..ae556b6d7f2351079148032e86299d7fbdfe6892 100644 --- a/htdocs/core/modules/modBanque.class.php +++ b/htdocs/core/modules/modBanque.class.php @@ -49,6 +49,7 @@ class modBanque extends DolibarrModules $this->numero = 85; $this->family = "financial"; + $this->module_position = 510; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion des comptes financiers de type Comptes bancaires ou postaux"; diff --git a/htdocs/core/modules/modCashDesk.class.php b/htdocs/core/modules/modCashDesk.class.php index 430d62146f579d5cf12aa3891746f0513927c156..4668305662e5f0a5088ccf08765ff575e2c5e474 100644 --- a/htdocs/core/modules/modCashDesk.class.php +++ b/htdocs/core/modules/modCashDesk.class.php @@ -46,6 +46,7 @@ class modCashDesk extends DolibarrModules $this->rights_class = 'cashdesk'; $this->family = "portal"; + $this->module_position = 10; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "CashDesk module"; diff --git a/htdocs/core/modules/modCommande.class.php b/htdocs/core/modules/modCommande.class.php index 62b42cd1608fe09616df231bec9116ad26142260..24a1c87182aebf7390a34cd5798af23f1a020a37 100644 --- a/htdocs/core/modules/modCommande.class.php +++ b/htdocs/core/modules/modCommande.class.php @@ -51,6 +51,7 @@ class modCommande extends DolibarrModules $this->numero = 25; $this->family = "crm"; + $this->module_position = 30; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion des commandes clients"; @@ -182,7 +183,43 @@ class modCommande extends DolibarrModules $this->export_TypeFields_array[$r]=array('s.nom'=>'Text','s.address'=>'Text','s.zip'=>'Text','s.town'=>'Text','co.label'=>'List:c_country:label:label','co.code'=>'Text','s.phone'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','c.ref'=>"Text",'c.ref_client'=>"Text",'c.date_creation'=>"Date",'c.date_commande'=>"Date",'c.amount_ht'=>"Numeric",'c.remise_percent'=>"Numeric",'c.total_ht'=>"Numeric",'c.total_ttc'=>"Numeric",'c.facture'=>"Boolean",'c.fk_statut'=>'Status','c.note_public'=>"Text",'c.date_livraison'=>'Date','cd.description'=>"Text",'cd.product_type'=>'Boolean','cd.tva_tx'=>"Numeric",'cd.qty'=>"Numeric",'cd.total_ht'=>"Numeric",'cd.total_tva'=>"Numeric",'cd.total_ttc'=>"Numeric",'p.rowid'=>'List:product:ref','p.ref'=>'Text','p.label'=>'Text'); $this->export_entities_array[$r]=array('s.rowid'=>"company",'s.nom'=>'company','s.address'=>'company','s.zip'=>'company','s.town'=>'company','co.label'=>'company','co.code'=>'company','s.phone'=>'company','s.siren'=>'company','s.ape'=>'company','s.idprof4'=>'company','s.siret'=>'company','c.rowid'=>"order",'c.ref'=>"order",'c.ref_client'=>"order",'c.fk_soc'=>"order",'c.date_creation'=>"order",'c.date_commande'=>"order",'c.amount_ht'=>"order",'c.remise_percent'=>"order",'c.total_ht'=>"order",'c.total_ttc'=>"order",'c.facture'=>"order",'c.fk_statut'=>"order",'c.note'=>"order",'c.date_livraison'=>"order",'cd.rowid'=>'order_line','cd.label'=>"order_line",'cd.description'=>"order_line",'cd.product_type'=>'order_line','cd.tva_tx'=>"order_line",'cd.qty'=>"order_line",'cd.total_ht'=>"order_line",'cd.total_tva'=>"order_line",'cd.total_ttc'=>"order_line",'p.rowid'=>'product','p.ref'=>'product','p.label'=>'product'); $this->export_dependencies_array[$r]=array('order_line'=>'cd.rowid','product'=>'cd.rowid'); // To add unique key if we ask a field of a child to avoid the DISTINCT to discard them - + // Add extra fields + $sql="SELECT name, label, type FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'commande' AND entity IN (0, ".$conf->entity.')'; + $resql=$this->db->query($sql); + if ($resql) // This can fail when class is used on old database (during migration for example) + { + while ($obj=$this->db->fetch_object($resql)) + { + $fieldname='extra.'.$obj->name; + $fieldlabel=ucfirst($obj->label); + $typeFilter="Text"; + switch($obj->type) + { + case 'int': + case 'double': + case 'price': + $typeFilter="Numeric"; + break; + case 'date': + case 'datetime': + $typeFilter="Date"; + break; + case 'boolean': + $typeFilter="Boolean"; + break; + case 'sellist': + $tmp=''; + $tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null + if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options'])); + if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp; + break; + } + $this->export_fields_array[$r][$fieldname]=$fieldlabel; + $this->export_TypeFields_array[$r][$fieldname]=$typeFilter; + $this->export_entities_array[$r][$fieldname]='order'; + } + } + // End add extra fields $this->export_sql_start[$r]='SELECT DISTINCT '; $this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'societe as s'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as co ON s.fk_pays = co.rowid,'; diff --git a/htdocs/core/modules/modComptabilite.class.php b/htdocs/core/modules/modComptabilite.class.php index 26aea67d1d04b72d5574a85ee8d0b6189ee66b9c..864c0012dec9227d2aa59c3fecf0da637400f5e2 100644 --- a/htdocs/core/modules/modComptabilite.class.php +++ b/htdocs/core/modules/modComptabilite.class.php @@ -48,6 +48,7 @@ class modComptabilite extends DolibarrModules $this->numero = 10; $this->family = "financial"; + $this->module_position = 600; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion sommaire de comptabilite"; diff --git a/htdocs/core/modules/modDocumentGeneration.class.php b/htdocs/core/modules/modDocumentGeneration.class.php index e64115df9acd6aa6b153e5c67b009e3f2c1a4abb..9111ec11099e2e323c038703e5fa5f15ff2ce52a 100644 --- a/htdocs/core/modules/modDocumentGeneration.class.php +++ b/htdocs/core/modules/modDocumentGeneration.class.php @@ -45,6 +45,7 @@ class modDocumentGeneration extends DolibarrModules $this->numero = 1520; $this->family = "technic"; + $this->module_position = 10000; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Direct mail document generation"; diff --git a/htdocs/core/modules/modECM.class.php b/htdocs/core/modules/modECM.class.php index 2bf3542186ad015571e7a3412b89fca607146d16..b185e2962f25090000968dcd2dc3b3ebf009027b 100644 --- a/htdocs/core/modules/modECM.class.php +++ b/htdocs/core/modules/modECM.class.php @@ -48,6 +48,7 @@ class modECM extends DolibarrModules // Family can be 'crm','financial','hr','projects','product','ecm','technic','other' // It is used to sort modules in module setup page $this->family = "ecm"; + $this->module_position = 10; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); // Module description used if translation string 'ModuleXXXDesc' not found (XXX is id value) diff --git a/htdocs/core/modules/modExpedition.class.php b/htdocs/core/modules/modExpedition.class.php index 826bfc47f5d2e756602cf2ef4855b05e2099cf1c..7a8d014f1201b1c198c0a32ba68747fa3c13280a 100644 --- a/htdocs/core/modules/modExpedition.class.php +++ b/htdocs/core/modules/modExpedition.class.php @@ -49,6 +49,7 @@ class modExpedition extends DolibarrModules $this->numero = 80; $this->family = "crm"; + $this->module_position = 40; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion des expeditions"; diff --git a/htdocs/core/modules/modExpenseReport.class.php b/htdocs/core/modules/modExpenseReport.class.php index f71605145eac50d6e9e9bb67b516cb1c5f033bbd..a4dae0bab07d0eb8c3ff0f08376018e7c4725b53 100644 --- a/htdocs/core/modules/modExpenseReport.class.php +++ b/htdocs/core/modules/modExpenseReport.class.php @@ -52,6 +52,7 @@ class modExpenseReport extends DolibarrModules // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "hr"; + $this->module_position = 40; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) diff --git a/htdocs/core/modules/modFacture.class.php b/htdocs/core/modules/modFacture.class.php index bdecf8bdb9b64a643d0cc0898f96f524b1cdea6b..807a2673849f0f74c83851663bde7755c562fbbf 100644 --- a/htdocs/core/modules/modFacture.class.php +++ b/htdocs/core/modules/modFacture.class.php @@ -48,6 +48,7 @@ class modFacture extends DolibarrModules $this->numero = 30; $this->family = "financial"; + $this->module_position = 10; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion des factures"; diff --git a/htdocs/core/modules/modFournisseur.class.php b/htdocs/core/modules/modFournisseur.class.php index 56e85b610a271e6eac6199ca58dd0248198b8693..1ef3a2bb573bc2420f29f2961e7377e68a121ef6 100644 --- a/htdocs/core/modules/modFournisseur.class.php +++ b/htdocs/core/modules/modFournisseur.class.php @@ -48,6 +48,7 @@ class modFournisseur extends DolibarrModules $this->numero = 40; $this->family = "products"; + $this->module_position = 10; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion des fournisseurs"; diff --git a/htdocs/core/modules/modHoliday.class.php b/htdocs/core/modules/modHoliday.class.php index 9ca28f0c040283aa0b9d99f2b2b6fda8e78974ed..d3907ed1dbfc9cc1c127d145d25c80cc9357f0ec 100644 --- a/htdocs/core/modules/modHoliday.class.php +++ b/htdocs/core/modules/modHoliday.class.php @@ -53,6 +53,7 @@ class modHoliday extends DolibarrModules // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "hr"; + $this->module_position = 30; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) diff --git a/htdocs/core/modules/modMargin.class.php b/htdocs/core/modules/modMargin.class.php index 749bfc1c7ef704b9ac8615ad45159c2e79fff81d..2aa81102fa8576f254574d72aaaaa8db79c17318 100644 --- a/htdocs/core/modules/modMargin.class.php +++ b/htdocs/core/modules/modMargin.class.php @@ -48,6 +48,7 @@ class modMargin extends DolibarrModules // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "financial"; + $this->module_position = 550; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) diff --git a/htdocs/core/modules/modOauth.class.php b/htdocs/core/modules/modOauth.class.php index 35be63a5c59b746f2a4f0cbeae7d77762646b6e5..20fc68444d6a08098d9dbdfc8b95489135a0e1d4 100644 --- a/htdocs/core/modules/modOauth.class.php +++ b/htdocs/core/modules/modOauth.class.php @@ -47,6 +47,7 @@ class modOauth extends DolibarrModules // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "technic"; + $this->module_position = 510; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) diff --git a/htdocs/core/modules/modOpenSurvey.class.php b/htdocs/core/modules/modOpenSurvey.class.php index db93cae5220ee7fac5e5ed800b817cd9ba941ec2..2ab7a8aa54f0086daeff940d174b88ed5f04801b 100644 --- a/htdocs/core/modules/modOpenSurvey.class.php +++ b/htdocs/core/modules/modOpenSurvey.class.php @@ -52,6 +52,7 @@ class modOpenSurvey extends DolibarrModules // Family can be 'crm','financial','hr','projects','product','technic','other' // It is used to group modules in module setup page $this->family = "projects"; + $this->module_position = 40; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); // Module description used if translation string 'ModuleXXXDesc' not found (XXX is value MyModule) diff --git a/htdocs/core/modules/modPrelevement.class.php b/htdocs/core/modules/modPrelevement.class.php index 107b8e25c1623f8b35cf9f060e1832c91ab54999..b2d0589f82831ad4ba65516427d78cb38143fa4f 100644 --- a/htdocs/core/modules/modPrelevement.class.php +++ b/htdocs/core/modules/modPrelevement.class.php @@ -48,6 +48,7 @@ class modPrelevement extends DolibarrModules $this->numero = 57; $this->family = "financial"; + $this->module_position = 520; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion des Prelevements"; diff --git a/htdocs/core/modules/modPrinting.class.php b/htdocs/core/modules/modPrinting.class.php index a02e8fa034564f681a4117058955e450b377be3c..d28aafc3050f72d661cdd809eb5e792034fd9b64 100644 --- a/htdocs/core/modules/modPrinting.class.php +++ b/htdocs/core/modules/modPrinting.class.php @@ -47,6 +47,7 @@ class modPrinting extends DolibarrModules // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "technic"; + $this->module_position = 520; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) diff --git a/htdocs/core/modules/modProduct.class.php b/htdocs/core/modules/modProduct.class.php index a466c004d4a6590edcafa275754fa24bc617d3d9..e0f1c2af8fe68013b36716b3e5792609e4578e91 100644 --- a/htdocs/core/modules/modProduct.class.php +++ b/htdocs/core/modules/modProduct.class.php @@ -50,6 +50,7 @@ class modProduct extends DolibarrModules $this->numero = 50; $this->family = "products"; + $this->module_position = 20; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion des produits"; diff --git a/htdocs/core/modules/modProductBatch.class.php b/htdocs/core/modules/modProductBatch.class.php index b55dba2945aad12845ad0a32c110b4244eef70ce..5557104c7f6064e547f52f42026563ca38582b11 100644 --- a/htdocs/core/modules/modProductBatch.class.php +++ b/htdocs/core/modules/modProductBatch.class.php @@ -46,6 +46,8 @@ class modProductBatch extends DolibarrModules $this->numero = 39000; $this->family = "products"; + $this->module_position = 45; + $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Batch number, eat-by and sell-by date management module"; diff --git a/htdocs/core/modules/modProjet.class.php b/htdocs/core/modules/modProjet.class.php index 975c48b517db61dc00d51af4c0f34b9331c0e1a7..af2f630b54c43fbcebb94255b78310f71b4c61b2 100644 --- a/htdocs/core/modules/modProjet.class.php +++ b/htdocs/core/modules/modProjet.class.php @@ -50,6 +50,7 @@ class modProjet extends DolibarrModules $this->numero = 400; $this->family = "projects"; + $this->module_position = 10; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion des projets"; diff --git a/htdocs/core/modules/modPropale.class.php b/htdocs/core/modules/modPropale.class.php index 78fa9b53211c6c14eed95f7eefdcd58a3c5a3a0f..62fe7d2defe22a3e96e9555426e1fe221ac85b02 100644 --- a/htdocs/core/modules/modPropale.class.php +++ b/htdocs/core/modules/modPropale.class.php @@ -49,6 +49,7 @@ class modPropale extends DolibarrModules $this->numero = 20; $this->family = "crm"; + $this->module_position = 20; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion des propositions commerciales"; @@ -175,7 +176,43 @@ class modPropale extends DolibarrModules $this->export_TypeFields_array[$r]=array('s.nom'=>'Text','s.address'=>'Text','s.zip'=>'Text','s.town'=>'Text','co.code'=>'Text','s.phone'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','c.ref'=>"Text",'c.ref_client'=>"Text",'c.datec'=>"Date",'c.datep'=>"Date",'c.fin_validite'=>"Date",'c.remise_percent'=>"Numeric",'c.total_ht'=>"Numeric",'c.total'=>"Numeric",'c.fk_statut'=>'Status','c.note_public'=>"Text",'c.date_livraison'=>'Date','cd.description'=>"Text",'cd.product_type'=>'Boolean','cd.tva_tx'=>"Numeric",'cd.qty'=>"Numeric",'cd.total_ht'=>"Numeric",'cd.total_tva'=>"Numeric",'cd.total_ttc'=>"Numeric",'p.ref'=>'Text','p.label'=>'Text'); $this->export_entities_array[$r]=array('s.rowid'=>"company",'s.nom'=>'company','s.address'=>'company','s.zip'=>'company','s.town'=>'company','co.code'=>'company','s.phone'=>'company','s.siren'=>'company','s.ape'=>'company','s.idprof4'=>'company','s.siret'=>'company','c.rowid'=>"propal",'c.ref'=>"propal",'c.ref_client'=>"propal",'c.fk_soc'=>"propal",'c.datec'=>"propal",'c.datep'=>"propal",'c.fin_validite'=>"propal",'c.remise_percent'=>"propal",'c.total_ht'=>"propal",'c.total'=>"propal",'c.fk_statut'=>"propal",'c.note_public'=>"propal",'c.date_livraison'=>"propal",'cd.rowid'=>'propal_line','cd.label'=>"propal_line",'cd.description'=>"propal_line",'cd.product_type'=>'propal_line','cd.tva_tx'=>"propal_line",'cd.qty'=>"propal_line",'cd.total_ht'=>"propal_line",'cd.total_tva'=>"propal_line",'cd.total_ttc'=>"propal_line",'p.rowid'=>'product','p.ref'=>'product','p.label'=>'product'); $this->export_dependencies_array[$r]=array('propal_line'=>'cd.rowid','product'=>'cd.rowid'); // To add unique key if we ask a field of a child to avoid the DISTINCT to discard them - + // Add extra fields + $sql="SELECT name, label, type FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'propal' AND entity IN (0, ".$conf->entity.')'; + $resql=$this->db->query($sql); + if ($resql) // This can fail when class is used on old database (during migration for example) + { + while ($obj=$this->db->fetch_object($resql)) + { + $fieldname='extra.'.$obj->name; + $fieldlabel=ucfirst($obj->label); + $typeFilter="Text"; + switch($obj->type) + { + case 'int': + case 'double': + case 'price': + $typeFilter="Numeric"; + break; + case 'date': + case 'datetime': + $typeFilter="Date"; + break; + case 'boolean': + $typeFilter="Boolean"; + break; + case 'sellist': + $tmp=''; + $tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null + if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options'])); + if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp; + break; + } + $this->export_fields_array[$r][$fieldname]=$fieldlabel; + $this->export_TypeFields_array[$r][$fieldname]=$typeFilter; + $this->export_entities_array[$r][$fieldname]='propal'; + } + } + // End add extra fields $this->export_sql_start[$r]='SELECT DISTINCT '; $this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'societe as s '; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as co ON s.fk_pays = co.rowid,'; diff --git a/htdocs/core/modules/modReceiptPrinter.class.php b/htdocs/core/modules/modReceiptPrinter.class.php index 975226819fb098daf0861eb0a1b3e42d2973adf0..4e8a89076df72d55147f53827a37978d31faf074 100644 --- a/htdocs/core/modules/modReceiptPrinter.class.php +++ b/htdocs/core/modules/modReceiptPrinter.class.php @@ -47,6 +47,7 @@ class modReceiptPrinter extends DolibarrModules // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "technic"; + $this->module_position = 530; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) diff --git a/htdocs/core/modules/modResource.class.php b/htdocs/core/modules/modResource.class.php index 94a4b56427a7d52afbc9adf0b9020f4ff2c47ce2..5997f44714b43587e473694040d9b0fdeafff8a1 100644 --- a/htdocs/core/modules/modResource.class.php +++ b/htdocs/core/modules/modResource.class.php @@ -47,12 +47,14 @@ class modResource extends DolibarrModules // Use a free id here // (See in Home -> System information -> Dolibarr for list of used modules id). $this->numero = 63000; + // Key text used to identify module (for permissions, menus, etc...) $this->rights_class = 'resource'; // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "projects"; + $this->module_position = 20; // Module label (no space allowed) // used if translation string 'ModuleXXXName' not found // (where XXX is value of numeric property 'numero' of module) diff --git a/htdocs/core/modules/modService.class.php b/htdocs/core/modules/modService.class.php index fc327d2f4bb7f0952b7729909861b5ed535bd319..92d54acc2751c972a4592fe0a2a14cd0233899e3 100644 --- a/htdocs/core/modules/modService.class.php +++ b/htdocs/core/modules/modService.class.php @@ -48,6 +48,7 @@ class modService extends DolibarrModules $this->numero = 53; $this->family = "products"; + $this->module_position = 30; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion des services"; diff --git a/htdocs/core/modules/modSociete.class.php b/htdocs/core/modules/modSociete.class.php index 7cb31274b681fe3c0babfc7074ea608e0b27e960..6af37fb9c4ff8bdbcd8b34a390f62a08b0aa8332 100644 --- a/htdocs/core/modules/modSociete.class.php +++ b/htdocs/core/modules/modSociete.class.php @@ -49,6 +49,7 @@ class modSociete extends DolibarrModules $this->numero = 1; $this->family = "crm"; + $this->module_position = 10; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion des societes et contacts"; diff --git a/htdocs/core/modules/modStock.class.php b/htdocs/core/modules/modStock.class.php index f2a57a81ab9dfa36cad3a695e1472cd473d7faa6..67bebc0d6d765e3e8c292a21c894915909c8efbd 100644 --- a/htdocs/core/modules/modStock.class.php +++ b/htdocs/core/modules/modStock.class.php @@ -48,6 +48,7 @@ class modStock extends DolibarrModules $this->numero = 52; $this->family = "products"; + $this->module_position = 40; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion des stocks"; diff --git a/htdocs/core/modules/modAskPriceSupplier.class.php b/htdocs/core/modules/modSupplierProposal.class.php similarity index 65% rename from htdocs/core/modules/modAskPriceSupplier.class.php rename to htdocs/core/modules/modSupplierProposal.class.php index 7c536e33a6f883fe78ca908c8059dc01c017e399..98320a6f08b02f32dc29edbb319fd0e589c5b746 100644 --- a/htdocs/core/modules/modAskPriceSupplier.class.php +++ b/htdocs/core/modules/modSupplierProposal.class.php @@ -21,11 +21,11 @@ */ /** - * \defgroup askpricesupplier Module askpricesupplier + * \defgroup supplier_proposal Module supplier_proposal * \brief Module to request supplier price proposals - * \file htdocs/core/modules/modAskPriceSupplier.class.php - * \ingroup askpricesupplier - * \brief File to describe and activate module AskPriceSupplier + * \file htdocs/core/modules/modSupplierProposal.class.php + * \ingroup supplier_proposal + * \brief File to describe and activate module SupplierProposal */ include_once DOL_DOCUMENT_ROOT .'/core/modules/DolibarrModules.class.php'; @@ -33,7 +33,7 @@ include_once DOL_DOCUMENT_ROOT .'/core/modules/DolibarrModules.class.php'; /** * Class to describe and enable module AskPriceSupllier */ -class modAskPriceSupplier extends DolibarrModules +class modSupplierProposal extends DolibarrModules { /** @@ -50,43 +50,43 @@ class modAskPriceSupplier extends DolibarrModules $this->family = "products"; $this->name = preg_replace('/^mod/i','',get_class($this)); - $this->description = "askpricesupplierDESC"; + $this->description = "supplier_proposalDESC"; $this->version = 'experimental'; $this->const_name = 'MAIN_MODULE_'.strtoupper($this->name); $this->special = 0; - $this->picto='askpricesupplier'; + $this->picto='supplier_proposal'; $this->dirs = array(); // Dependancies $this->depends = array('modFournisseur'); $this->requiredby = array(); - $this->config_page_url = array("askpricesupplier.php"); - $this->langfiles = array("askpricesupplier"); + $this->config_page_url = array("supplier_proposal.php"); + $this->langfiles = array("supplier_proposal"); // Constants $this->const = array(); $r=0; - $this->const[$r][0] = "ASKPRICESUPPLIER_ADDON_PDF"; + $this->const[$r][0] = "SUPPLIER_PROPOSAL_ADDON_PDF"; $this->const[$r][1] = "chaine"; $this->const[$r][2] = "aurore"; $this->const[$r][3] = 'Name of submodule to generate PDF for supplier quotation request'; $this->const[$r][4] = 0; $r++; - $this->const[$r][0] = "ASKPRICESUPPLIER_ADDON"; + $this->const[$r][0] = "SUPPLIER_PROPOSAL_ADDON"; $this->const[$r][1] = "chaine"; - $this->const[$r][2] = "mod_askpricesupplier_marbre"; + $this->const[$r][2] = "mod_supplier_proposal_marbre"; $this->const[$r][3] = 'Name of submodule to number supplier quotation request'; $this->const[$r][4] = 0; $r++; - $this->const[$r][0] = "ASKPRICESUPPLIER_ADDON_PDF_ODT_PATH"; + $this->const[$r][0] = "SUPPLIER_PROPOSAL_ADDON_PDF_ODT_PATH"; $this->const[$r][1] = "chaine"; - $this->const[$r][2] = "DOL_DATA_ROOT/doctemplates/askpricesupplier"; + $this->const[$r][2] = "DOL_DATA_ROOT/doctemplates/supplier_proposal"; $this->const[$r][3] = ""; $this->const[$r][4] = 0; @@ -95,7 +95,7 @@ class modAskPriceSupplier extends DolibarrModules // Permissions $this->rights = array(); - $this->rights_class = 'askpricesupplier'; + $this->rights_class = 'supplier_proposal'; $r=0; $r++; @@ -142,40 +142,40 @@ class modAskPriceSupplier extends DolibarrModules $this->menu[$r]=array( 'fk_menu'=>'fk_mainmenu=commercial', // 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'=>'askpricesupplierMENU_LEFT_TITLE', - 'leftmenu'=>'askpricesuppliersubmenu', - 'url'=>'/comm/askpricesupplier/index.php', - 'langs'=>'askpricesupplier', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. - 'enabled'=>'$conf->askpricesupplier->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->askpricesupplier->lire', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules + 'titre'=>'supplier_proposalMENU_LEFT_TITLE', + 'leftmenu'=>'supplier_proposalsubmenu', + 'url'=>'/supplier_proposal/index.php', + 'langs'=>'supplier_proposal', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. + 'enabled'=>'$conf->supplier_proposal->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->supplier_proposal->lire', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules 'user'=>2, // 0=Menu for internal users, 1=external users, 2=both - 'position'=>30 + 'position'=>300 ); $r++; $this->menu[$r]=array( - 'fk_menu'=>'fk_mainmenu=commercial,fk_leftmenu=askpricesuppliersubmenu', + 'fk_menu'=>'fk_mainmenu=commercial,fk_leftmenu=supplier_proposalsubmenu', 'type'=>'left', - 'titre'=>'askpricesupplierMENU_LEFT_TITLE_NEW', - 'url'=>'/comm/askpricesupplier/card.php?action=create', - 'langs'=>'askpricesupplier', - 'enabled'=>'$conf->askpricesupplier->enabled', - 'perms'=>'$user->rights->askpricesupplier->creer', + 'titre'=>'supplier_proposalMENU_LEFT_TITLE_NEW', + 'url'=>'/supplier_proposal/card.php?action=create', + 'langs'=>'supplier_proposal', + 'enabled'=>'$conf->supplier_proposal->enabled', + 'perms'=>'$user->rights->supplier_proposal->creer', 'user'=>2, - 'position'=>31 + 'position'=>301 ); $r++; $this->menu[$r]=array( - 'fk_menu'=>'fk_mainmenu=commercial,fk_leftmenu=askpricesuppliersubmenu', + 'fk_menu'=>'fk_mainmenu=commercial,fk_leftmenu=supplier_proposalsubmenu', 'type'=>'left', - 'titre'=>'askpricesupplierMENU_LEFT_TITLE_LIST', - 'url'=>'/comm/askpricesupplier/list.php', - 'langs'=>'askpricesupplier', - 'enabled'=>'$conf->askpricesupplier->enabled', - 'perms'=>'$user->rights->askpricesupplier->lire', + 'titre'=>'supplier_proposalMENU_LEFT_TITLE_LIST', + 'url'=>'/supplier_proposal/list.php', + 'langs'=>'supplier_proposal', + 'enabled'=>'$conf->supplier_proposal->enabled', + 'perms'=>'$user->rights->supplier_proposal->lire', 'user'=>2, - 'position'=>32 + 'position'=>302 ); $r++; } @@ -197,9 +197,9 @@ class modAskPriceSupplier extends DolibarrModules $this->remove($options); //ODT template - $src=DOL_DOCUMENT_ROOT.'/install/doctemplates/askpricesupplier/template_askpricesupplier.odt'; - $dirodt=DOL_DATA_ROOT.'/doctemplates/askpricesupplier'; - $dest=$dirodt.'/template_askpricesupplier.odt'; + $src=DOL_DOCUMENT_ROOT.'/install/doctemplates/supplier_proposal/template_supplier_proposal.odt'; + $dirodt=DOL_DATA_ROOT.'/doctemplates/supplier_proposal'; + $dest=$dirodt.'/template_supplier_proposal.odt'; if (file_exists($src) && ! file_exists($dest)) { @@ -216,9 +216,29 @@ class modAskPriceSupplier extends DolibarrModules $sql = array( "DELETE FROM ".MAIN_DB_PREFIX."document_model WHERE nom = '".$this->const[0][2]."' AND entity = ".$conf->entity, - "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom, type, entity) VALUES('".$this->const[0][2]."','askpricesupplier',".$conf->entity.")", + "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom, type, entity) VALUES('".$this->const[0][2]."','supplier_proposal',".$conf->entity.")", ); 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( + "DELETE FROM ".MAIN_DB_PREFIX."rights_def WHERE module = 'askpricesupplier'" + ); + + return $this->_remove($sql, $options); + } + } \ No newline at end of file diff --git a/htdocs/core/modules/modUser.class.php b/htdocs/core/modules/modUser.class.php index d3be64d0560f7754be582e732d234126a55e39aa..02a085c4a8b07b726a9f3933ff6eb1eb6b863b03 100644 --- a/htdocs/core/modules/modUser.class.php +++ b/htdocs/core/modules/modUser.class.php @@ -46,6 +46,7 @@ class modUser extends DolibarrModules $this->numero = 0; $this->family = "hr"; // Family for module (or "base" if core module) + $this->module_position = 10; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Gestion des utilisateurs (requis)"; diff --git a/htdocs/core/modules/modWebsite.class.php b/htdocs/core/modules/modWebsite.class.php index 7bb5a27a0c5a21ba10c005263eeddadb666fea0f..4b5c1d134cb13b3f3a4d234d918d4ba0404504c6 100644 --- a/htdocs/core/modules/modWebsite.class.php +++ b/htdocs/core/modules/modWebsite.class.php @@ -42,10 +42,11 @@ class modWebsite extends DolibarrModules $this->db = $db; $this->numero = 10000; - + // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "portal"; + $this->module_position = 20; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i','',get_class($this)); $this->description = "Enable the public website with CMS features"; diff --git a/htdocs/core/modules/askpricesupplier/doc/doc_generic_askpricesupplier_odt.modules.php b/htdocs/core/modules/supplier_proposal/doc/doc_generic_supplier_proposal_odt.modules.php similarity index 88% rename from htdocs/core/modules/askpricesupplier/doc/doc_generic_askpricesupplier_odt.modules.php rename to htdocs/core/modules/supplier_proposal/doc/doc_generic_supplier_proposal_odt.modules.php index ddc995cc69a193328aea48aebe00d15522765798..a19e634f6cd5cea053ddfb8aa53141b4b24dc43b 100644 --- a/htdocs/core/modules/askpricesupplier/doc/doc_generic_askpricesupplier_odt.modules.php +++ b/htdocs/core/modules/supplier_proposal/doc/doc_generic_supplier_proposal_odt.modules.php @@ -23,7 +23,7 @@ * \brief File of class to build ODT documents for third parties */ -require_once DOL_DOCUMENT_ROOT.'/core/modules/askpricesupplier/modules_askpricesupplier.php'; +require_once DOL_DOCUMENT_ROOT.'/core/modules/supplier_proposal/modules_supplier_proposal.php'; require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; @@ -34,7 +34,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/doc.lib.php'; /** * Class to build documents using ODF templates generator */ -class doc_generic_askpricesupplier_odt extends ModelePDFAskPriceSupplier +class doc_generic_supplier_proposal_odt extends ModelePDFSupplierProposal { var $emetteur; // Objet societe qui emet @@ -57,7 +57,7 @@ class doc_generic_askpricesupplier_odt extends ModelePDFAskPriceSupplier $this->db = $db; $this->name = "ODT templates"; $this->description = $langs->trans("DocumentModelOdt"); - $this->scandir = 'ASKPRICESUPPLIER_ADDON_PDF_ODT_PATH'; // Name of constant that is used to save list of directories to scan + $this->scandir = 'SUPPLIER_PROPOSAL_ADDON_PDF_ODT_PATH'; // Name of constant that is used to save list of directories to scan // Dimension page pour format A4 $this->type = 'odt'; @@ -105,19 +105,19 @@ class doc_generic_askpricesupplier_odt extends ModelePDFAskPriceSupplier $texte.= '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">'; $texte.= '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">'; $texte.= '<input type="hidden" name="action" value="setModuleOptions">'; - $texte.= '<input type="hidden" name="param1" value="ASKPRICESUPPLIER_ADDON_PDF_ODT_PATH">'; - if ($conf->global->MAIN_ASKPRICESUPPLIER_CHOOSE_ODT_DOCUMENT > 0) + $texte.= '<input type="hidden" name="param1" value="SUPPLIER_PROPOSAL_ADDON_PDF_ODT_PATH">'; + if ($conf->global->MAIN_SUPPLIER_PROPOSAL_CHOOSE_ODT_DOCUMENT > 0) { - $texte.= '<input type="hidden" name="param2" value="ASKPRICESUPPLIER_ADDON_PDF_ODT_DEFAULT">'; - $texte.= '<input type="hidden" name="param3" value="ASKPRICESUPPLIER_ADDON_PDF_ODT_TOBILL">'; - $texte.= '<input type="hidden" name="param4" value="ASKPRICESUPPLIER_ADDON_PDF_ODT_CLOSED">'; + $texte.= '<input type="hidden" name="param2" value="SUPPLIER_PROPOSAL_ADDON_PDF_ODT_DEFAULT">'; + $texte.= '<input type="hidden" name="param3" value="SUPPLIER_PROPOSAL_ADDON_PDF_ODT_TOBILL">'; + $texte.= '<input type="hidden" name="param4" value="SUPPLIER_PROPOSAL_ADDON_PDF_ODT_CLOSED">'; } $texte.= '<table class="nobordernopadding" width="100%">'; // List of directories area $texte.= '<tr><td>'; $texttitle=$langs->trans("ListOfDirectories"); - $listofdir=explode(',',preg_replace('/[\r\n]+/',',',trim($conf->global->ASKPRICESUPPLIER_ADDON_PDF_ODT_PATH))); + $listofdir=explode(',',preg_replace('/[\r\n]+/',',',trim($conf->global->SUPPLIER_PROPOSAL_ADDON_PDF_ODT_PATH))); $listoffiles=array(); foreach($listofdir as $key=>$tmpdir) { @@ -141,7 +141,7 @@ class doc_generic_askpricesupplier_odt extends ModelePDFAskPriceSupplier $texte.= $form->textwithpicto($texttitle,$texthelp,1,'help','',1); $texte.= '<div><div style="display: inline-block; min-width: 100px; vertical-align: middle;">'; $texte.= '<textarea class="flat" cols="60" name="value1">'; - $texte.=$conf->global->ASKPRICESUPPLIER_ADDON_PDF_ODT_PATH; + $texte.=$conf->global->SUPPLIER_PROPOSAL_ADDON_PDF_ODT_PATH; $texte.= '</textarea>'; $texte.= '</div><div style="display: inline-block; vertical-align: middle;">'; $texte.= '<input type="submit" class="button" value="'.$langs->trans("Modify").'" name="Button">'; @@ -152,27 +152,27 @@ class doc_generic_askpricesupplier_odt extends ModelePDFAskPriceSupplier { $texte.=$langs->trans("NumberOfModelFilesFound").': <b>'.count($listoffiles).'</b>'; - if ($conf->global->MAIN_ASKPRICESUPPLIER_CHOOSE_ODT_DOCUMENT > 0) + if ($conf->global->MAIN_SUPPLIER_PROPOSAL_CHOOSE_ODT_DOCUMENT > 0) { // Model for creation - $liste=ModelePDFAskPriceSupplier::liste_modeles($this->db); + $liste=ModelePDFSupplierProposal::liste_modeles($this->db); $texte.= '<table width="50%;">'; $texte.= '<tr>'; - $texte.= '<td width="60%;">'.$langs->trans("DefaultModelAskPriceSupplierCreate").'</td>'; + $texte.= '<td width="60%;">'.$langs->trans("DefaultModelSupplierProposalCreate").'</td>'; $texte.= '<td colspan="">'; - $texte.= $form->selectarray('value2',$liste,$conf->global->ASKPRICESUPPLIER_ADDON_PDF_ODT_DEFAULT); + $texte.= $form->selectarray('value2',$liste,$conf->global->SUPPLIER_PROPOSAL_ADDON_PDF_ODT_DEFAULT); $texte.= "</td></tr>"; $texte.= '<tr>'; - $texte.= '<td width="60%;">'.$langs->trans("DefaultModelAskPriceSupplierToBill").'</td>'; + $texte.= '<td width="60%;">'.$langs->trans("DefaultModelSupplierProposalToBill").'</td>'; $texte.= '<td colspan="">'; - $texte.= $form->selectarray('value3',$liste,$conf->global->ASKPRICESUPPLIER_ADDON_PDF_ODT_TOBILL); + $texte.= $form->selectarray('value3',$liste,$conf->global->SUPPLIER_PROPOSAL_ADDON_PDF_ODT_TOBILL); $texte.= "</td></tr>"; $texte.= '<tr>'; - $texte.= '<td width="60%;">'.$langs->trans("DefaultModelAskPriceSupplierClosed").'</td>'; + $texte.= '<td width="60%;">'.$langs->trans("DefaultModelSupplierProposalClosed").'</td>'; $texte.= '<td colspan="">'; - $texte.= $form->selectarray('value4',$liste,$conf->global->ASKPRICESUPPLIER_ADDON_PDF_ODT_CLOSED); + $texte.= $form->selectarray('value4',$liste,$conf->global->SUPPLIER_PROPOSAL_ADDON_PDF_ODT_CLOSED); $texte.= "</td></tr>"; $texte.= '</table>'; } @@ -230,13 +230,13 @@ class doc_generic_askpricesupplier_odt extends ModelePDFAskPriceSupplier $outputlangs->load("companies"); $outputlangs->load("bills"); - if ($conf->askpricesupplier->dir_output) + if ($conf->supplier_proposal->dir_output) { // If $object is id instead of object if (! is_object($object)) { $id = $object; - $object = new AskPriceSupplier($this->db); + $object = new SupplierProposal($this->db); $result=$object->fetch($id); if ($result < 0) { @@ -245,7 +245,7 @@ class doc_generic_askpricesupplier_odt extends ModelePDFAskPriceSupplier } } - $dir = $conf->askpricesupplier->dir_output; + $dir = $conf->supplier_proposal->dir_output; $objectref = dol_sanitizeFileName($object->ref); if (! preg_match('/specimen/i',$objectref)) $dir.= "/" . $objectref; $file = $dir . "/" . $objectref . ".odt"; @@ -285,7 +285,7 @@ class doc_generic_askpricesupplier_odt extends ModelePDFAskPriceSupplier //print "file=".$file; //print "conf->propal->dir_temp=".$conf->propal->dir_temp; - dol_mkdir($conf->askpricesupplier->dir_temp); + dol_mkdir($conf->supplier_proposal->dir_temp); // If BILLING contact defined on invoice, we use it @@ -324,7 +324,7 @@ class doc_generic_askpricesupplier_odt extends ModelePDFAskPriceSupplier // Line of free text $newfreetext=''; - $paramfreetext='ASKPRICESUPPLIER_FREE_TEXT'; + $paramfreetext='SUPPLIER_PROPOSAL_FREE_TEXT'; if (! empty($conf->global->$paramfreetext)) { $newfreetext=make_substitutions($conf->global->$paramfreetext,$substitutionarray); @@ -336,7 +336,7 @@ class doc_generic_askpricesupplier_odt extends ModelePDFAskPriceSupplier $odfHandler = new odf( $srctemplatepath, array( - 'PATH_TO_TMP' => $conf->askpricesupplier->dir_temp, + 'PATH_TO_TMP' => $conf->supplier_proposal->dir_temp, 'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy. 'DELIMITER_LEFT' => '{', 'DELIMITER_RIGHT' => '}' diff --git a/htdocs/comm/askpricesupplier/class/index.html b/htdocs/core/modules/supplier_proposal/doc/index.html similarity index 100% rename from htdocs/comm/askpricesupplier/class/index.html rename to htdocs/core/modules/supplier_proposal/doc/index.html diff --git a/htdocs/core/modules/askpricesupplier/doc/pdf_aurore.modules.php b/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php similarity index 97% rename from htdocs/core/modules/askpricesupplier/doc/pdf_aurore.modules.php rename to htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php index db021bcb89e7c914c6d00ec7fe49470fdb1acf9a..f2d40713daf2e1911407d109f5b40ad7e5915875 100644 --- a/htdocs/core/modules/askpricesupplier/doc/pdf_aurore.modules.php +++ b/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php @@ -25,7 +25,7 @@ * \ingroup propale * \brief Fichier de la classe permettant de generer les propales au modele Azur */ -require_once DOL_DOCUMENT_ROOT.'/core/modules/askpricesupplier/modules_askpricesupplier.php'; +require_once DOL_DOCUMENT_ROOT.'/core/modules/supplier_proposal/modules_supplier_proposal.php'; require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; @@ -35,7 +35,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/pdf.lib.php'; /** * Class to generate PDF proposal Azur */ -class pdf_aurore extends ModelePDFAskPriceSupplier +class pdf_aurore extends ModelePDFSupplierProposal { var $db; var $name; @@ -103,7 +103,7 @@ class pdf_aurore extends ModelePDFAskPriceSupplier // Define position of columns $this->posxdesc=$this->marge_gauche+1; $this->posxtva=102; - $this->posxup=116; + $this->posxup=126; $this->posxqty=145; $this->posxdiscount=162; $this->postotalht=174; @@ -149,14 +149,14 @@ class pdf_aurore extends ModelePDFAskPriceSupplier $outputlangs->load("dict"); $outputlangs->load("companies"); $outputlangs->load("bills"); - $outputlangs->load("askpricesupplier"); + $outputlangs->load("supplier_proposal"); $outputlangs->load("products"); $nblignes = count($object->lines); // Loop on each lines to detect if there is at least one image to show $realpatharray=array(); - if (! empty($conf->global->MAIN_GENERATE_ASKPRICESUPPLIER_WITH_PICTURE)) + if (! empty($conf->global->MAIN_GENERATE_SUPPLIER_PROPOSAL_WITH_PICTURE)) { for ($i = 0 ; $i < $nblignes ; $i++) { @@ -182,7 +182,7 @@ class pdf_aurore extends ModelePDFAskPriceSupplier } if (count($realpatharray) == 0) $this->posxpicture=$this->posxtva; - if ($conf->askpricesupplier->dir_output) + if ($conf->supplier_proposal->dir_output) { $object->fetch_thirdparty(); @@ -191,13 +191,13 @@ class pdf_aurore extends ModelePDFAskPriceSupplier // Definition of $dir and $file if ($object->specimen) { - $dir = $conf->askpricesupplier->dir_output; + $dir = $conf->supplier_proposal->dir_output; $file = $dir . "/SPECIMEN.pdf"; } else { $objectref = dol_sanitizeFileName($object->ref); - $dir = $conf->askpricesupplier->dir_output . "/" . $objectref; + $dir = $conf->supplier_proposal->dir_output . "/" . $objectref; $file = $dir . "/" . $objectref . ".pdf"; } @@ -421,6 +421,7 @@ class pdf_aurore extends ModelePDFAskPriceSupplier $pdf->SetFont('','', $default_font_size - 1); // On repositionne la police par defaut // VAT Rate + /* if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) { $vat_rate = pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails); @@ -433,13 +434,15 @@ class pdf_aurore extends ModelePDFAskPriceSupplier $pdf->SetXY($this->posxup, $curY); if ($up_excl_tax > 0) $pdf->MultiCell($this->posxqty-$this->posxup-0.8, 3, $up_excl_tax, 0, 'R', 0); - + */ + // Quantity $qty = pdf_getlineqty($object, $i, $outputlangs, $hidedetails); $pdf->SetXY($this->posxqty, $curY); $pdf->MultiCell($this->posxdiscount-$this->posxqty-0.8, 3, $qty, 0, 'R'); // Enough for 6 chars // Discount on line + /* if ($object->lines[$i]->remise_percent) { $pdf->SetXY($this->posxdiscount-2, $curY); @@ -452,7 +455,8 @@ class pdf_aurore extends ModelePDFAskPriceSupplier $pdf->SetXY($this->postotalht, $curY); if ($total_excl_tax > 0) $pdf->MultiCell($this->page_largeur-$this->marge_droite-$this->postotalht, 3, $total_excl_tax, 0, 'R', 0); - + */ + // Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva $tvaligne=$object->lines[$i]->total_tva; $localtax1ligne=$object->lines[$i]->total_localtax1; @@ -591,7 +595,7 @@ class pdf_aurore extends ModelePDFAskPriceSupplier } else { - $this->error=$langs->trans("ErrorConstantNotDefined","ASKSUPPLIERPICE_OUTPUTDIR"); + $this->error=$langs->trans("ErrorConstantNotDefined","SUPPLIER_PROPOSAL_OUTPUTDIR"); return 0; } } @@ -685,7 +689,7 @@ class pdf_aurore extends ModelePDFAskPriceSupplier }*/ // Show payments conditions - if (empty($conf->global->ASKPRICESUPPLIER_PDF_HIDE_PAYMENTTERMCOND) && ($object->cond_reglement_code || $object->cond_reglement)) + if (empty($conf->global->SUPPLIER_PROPOSAL_PDF_HIDE_PAYMENTTERMCOND) && ($object->cond_reglement_code || $object->cond_reglement)) { $pdf->SetFont('','B', $default_font_size - 2); $pdf->SetXY($this->marge_gauche, $posy); @@ -715,7 +719,7 @@ class pdf_aurore extends ModelePDFAskPriceSupplier $posy=$pdf->GetY()+3; } - if (empty($conf->global->ASKPRICESUPPLIER_PDF_HIDE_PAYMENTTERMCOND)) + if (empty($conf->global->SUPPLIER_PROPOSAL_PDF_HIDE_PAYMENTTERMCOND)) { // Show payment mode if ($object->mode_reglement_code @@ -1148,7 +1152,7 @@ class pdf_aurore extends ModelePDFAskPriceSupplier if (empty($hidetop)) { $pdf->SetXY($this->posxup-1, $tab_top+1); - $pdf->MultiCell($this->posxqty-$this->posxup-1,2, $outputlangs->transnoentities("AskPriceSupplierUHT"),'','C'); + $pdf->MultiCell($this->posxqty-$this->posxup-1,2, $outputlangs->transnoentities("PriceUHT"),'','C'); } $pdf->line($this->posxqty-1, $tab_top, $this->posxqty-1, $tab_top + $tab_height); @@ -1193,7 +1197,7 @@ class pdf_aurore extends ModelePDFAskPriceSupplier $outputlangs->load("main"); $outputlangs->load("bills"); - $outputlangs->load("askpricesupplier"); + $outputlangs->load("supplier_proposal"); $outputlangs->load("companies"); $default_font_size = pdf_getPDFFontSize($outputlangs); @@ -1201,9 +1205,9 @@ class pdf_aurore extends ModelePDFAskPriceSupplier pdf_pagehead($pdf,$outputlangs,$this->page_hauteur); // Show Draft Watermark - if($object->statut==0 && (! empty($conf->global->ASKPRICESUPPLIER_DRAFT_WATERMARK)) ) + if($object->statut==0 && (! empty($conf->global->SUPPLIER_PROPOSAL_DRAFT_WATERMARK)) ) { - pdf_watermark($pdf,$outputlangs,$this->page_hauteur,$this->page_largeur,'mm',$conf->global->ASKPRICESUPPLIER_DRAFT_WATERMARK); + pdf_watermark($pdf,$outputlangs,$this->page_hauteur,$this->page_largeur,'mm',$conf->global->SUPPLIER_PROPOSAL_DRAFT_WATERMARK); } $pdf->SetTextColor(0,0,60); @@ -1264,7 +1268,7 @@ class pdf_aurore extends ModelePDFAskPriceSupplier $posy+=4; $pdf->SetXY($posx,$posy); $pdf->SetTextColor(0,0,60); - $pdf->MultiCell(100, 3, $outputlangs->transnoentities("AskPriceSupplierDate")." : " . dol_print_date($object->date_livraison,"day",false,$outputlangs,true), '', 'R'); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("SupplierProposalDate")." : " . dol_print_date($object->date_livraison,"day",false,$outputlangs,true), '', 'R'); */ if ($object->client->code_client) @@ -1386,7 +1390,7 @@ class pdf_aurore extends ModelePDFAskPriceSupplier function _pagefoot(&$pdf,$object,$outputlangs,$hidefreetext=0) { $showdetails=0; - return pdf_pagefoot($pdf,$outputlangs,'ASKPRICESUPPLIER_FREE_TEXT',$this->emetteur,$this->marge_basse,$this->marge_gauche,$this->page_hauteur,$object,$showdetails,$hidefreetext); + return pdf_pagefoot($pdf,$outputlangs,'SUPPLIER_PROPOSAL_FREE_TEXT',$this->emetteur,$this->marge_basse,$this->marge_gauche,$this->page_hauteur,$object,$showdetails,$hidefreetext); } } diff --git a/htdocs/comm/askpricesupplier/tpl/index.html b/htdocs/core/modules/supplier_proposal/index.html similarity index 100% rename from htdocs/comm/askpricesupplier/tpl/index.html rename to htdocs/core/modules/supplier_proposal/index.html diff --git a/htdocs/core/modules/askpricesupplier/mod_askpricesupplier_marbre.php b/htdocs/core/modules/supplier_proposal/mod_supplier_proposal_marbre.php similarity index 90% rename from htdocs/core/modules/askpricesupplier/mod_askpricesupplier_marbre.php rename to htdocs/core/modules/supplier_proposal/mod_supplier_proposal_marbre.php index d1912b98a9a1e2d3c8d9d5ace8468b83ccad4491..9d07dd19514789cf7e6b73247e12663e2de585b5 100644 --- a/htdocs/core/modules/askpricesupplier/mod_askpricesupplier_marbre.php +++ b/htdocs/core/modules/supplier_proposal/mod_supplier_proposal_marbre.php @@ -23,13 +23,13 @@ * \brief File of class to manage commercial proposal numbering rules Marbre */ -require_once DOL_DOCUMENT_ROOT .'/core/modules/askpricesupplier/modules_askpricesupplier.php'; +require_once DOL_DOCUMENT_ROOT .'/core/modules/supplier_proposal/modules_supplier_proposal.php'; /** * Class to manage customer order numbering rules Marbre */ -class mod_askpricesupplier_marbre extends ModeleNumRefAskPriceSupplier +class mod_supplier_proposal_marbre extends ModeleNumRefSupplierProposal { var $version='dolibarr'; // 'development', 'experimental', 'dolibarr' var $prefix='DF'; @@ -74,7 +74,7 @@ class mod_askpricesupplier_marbre extends ModeleNumRefAskPriceSupplier $posindice=8; $sql = "SELECT MAX(CAST(SUBSTRING(ref FROM ".$posindice.") AS SIGNED)) as max"; - $sql.= " FROM ".MAIN_DB_PREFIX."askpricesupplier"; + $sql.= " FROM ".MAIN_DB_PREFIX."supplier_proposal"; $sql.= " WHERE ref LIKE '".$this->prefix."____-%'"; $sql.= " AND entity = ".$conf->entity; @@ -101,17 +101,17 @@ class mod_askpricesupplier_marbre extends ModeleNumRefAskPriceSupplier * Return next value * * @param Societe $objsoc Object third party - * @param Propal $askpricesupplier Object commercial proposal + * @param Propal $supplier_proposal Object commercial proposal * @return string Next value */ - function getNextValue($objsoc,$askpricesupplier) + function getNextValue($objsoc,$supplier_proposal) { global $db,$conf; // D'abord on recupere la valeur max $posindice=8; $sql = "SELECT MAX(CAST(SUBSTRING(ref FROM ".$posindice.") AS SIGNED)) as max"; // This is standard SQL - $sql.= " FROM ".MAIN_DB_PREFIX."askpricesupplier"; + $sql.= " FROM ".MAIN_DB_PREFIX."supplier_proposal"; $sql.= " WHERE ref LIKE '".$this->prefix."____-%'"; $sql.= " AND entity = ".$conf->entity; diff --git a/htdocs/core/modules/askpricesupplier/mod_askpricesupplier_saphir.php b/htdocs/core/modules/supplier_proposal/mod_supplier_proposal_saphir.php similarity index 83% rename from htdocs/core/modules/askpricesupplier/mod_askpricesupplier_saphir.php rename to htdocs/core/modules/supplier_proposal/mod_supplier_proposal_saphir.php index 22582308f22f3200383fe9d4f635f0fab5f1ae4c..8781628917f2b5f677fe9e0578db61b2a86843d8 100644 --- a/htdocs/core/modules/askpricesupplier/mod_askpricesupplier_saphir.php +++ b/htdocs/core/modules/supplier_proposal/mod_supplier_proposal_saphir.php @@ -25,13 +25,13 @@ * \brief File that contains the numbering module rules Saphir */ -require_once DOL_DOCUMENT_ROOT .'/core/modules/askpricesupplier/modules_askpricesupplier.php'; +require_once DOL_DOCUMENT_ROOT .'/core/modules/supplier_proposal/modules_supplier_proposal.php'; /** * Class of file that contains the numbering module rules Saphir */ -class mod_askpricesupplier_saphir extends ModeleNumRefAskPriceSupplier +class mod_supplier_proposal_saphir extends ModeleNumRefSupplierProposal { var $version='dolibarr'; // 'development', 'experimental', 'dolibarr' var $error = ''; @@ -55,7 +55,7 @@ class mod_askpricesupplier_saphir extends ModeleNumRefAskPriceSupplier $texte.= '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">'; $texte.= '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">'; $texte.= '<input type="hidden" name="action" value="updateMask">'; - $texte.= '<input type="hidden" name="maskconstaskpricesupplier" value="ASKPRICESUPPLIER_SAPHIR_MASK">'; + $texte.= '<input type="hidden" name="maskconstsupplier_proposal" value="SUPPLIER_PROPOSAL_SAPHIR_MASK">'; $texte.= '<table class="nobordernopadding" width="100%">'; $tooltip=$langs->trans("GenericMaskCodes",$langs->transnoentities("CommRequest"),$langs->transnoentities("CommRequest")); @@ -66,7 +66,7 @@ class mod_askpricesupplier_saphir extends ModeleNumRefAskPriceSupplier // Parametrage du prefix $texte.= '<tr><td>'.$langs->trans("Mask").':</td>'; - $texte.= '<td align="right">'.$form->textwithpicto('<input type="text" class="flat" size="24" name="maskaskpricesupplier" value="'.$conf->global->ASKPRICESUPPLIER_SAPHIR_MASK.'">',$tooltip,1,1).'</td>'; + $texte.= '<td align="right">'.$form->textwithpicto('<input type="text" class="flat" size="24" name="masksupplier_proposal" value="'.$conf->global->SUPPLIER_PROPOSAL_SAPHIR_MASK.'">',$tooltip,1,1).'</td>'; $texte.= '<td align="left" rowspan="2"> <input type="submit" class="button" value="'.$langs->trans("Modify").'" name="Button"></td>'; @@ -103,17 +103,17 @@ class mod_askpricesupplier_saphir extends ModeleNumRefAskPriceSupplier * Return next value * * @param Societe $objsoc Object third party - * @param Propal $askpricesupplier Object askpricesupplier + * @param Propal $supplier_proposal Object supplier_proposal * @return string Value if OK, 0 if KO */ - function getNextValue($objsoc,$askpricesupplier) + function getNextValue($objsoc,$supplier_proposal) { global $db,$conf; require_once DOL_DOCUMENT_ROOT .'/core/lib/functions2.lib.php'; // On defini critere recherche compteur - $mask=$conf->global->ASKPRICESUPPLIER_SAPHIR_MASK; + $mask=$conf->global->SUPPLIER_PROPOSAL_SAPHIR_MASK; if (! $mask) { @@ -121,9 +121,9 @@ class mod_askpricesupplier_saphir extends ModeleNumRefAskPriceSupplier return 0; } - $date=$askpricesupplier->datep; + $date=$supplier_proposal->datep; $customercode=$objsoc->code_client; - $numFinal=get_next_value($db,$mask,'askpricesupplier','ref','',$customercode,$date); + $numFinal=get_next_value($db,$mask,'supplier_proposal','ref','',$customercode,$date); return $numFinal; } diff --git a/htdocs/core/modules/askpricesupplier/modules_askpricesupplier.php b/htdocs/core/modules/supplier_proposal/modules_supplier_proposal.php similarity index 88% rename from htdocs/core/modules/askpricesupplier/modules_askpricesupplier.php rename to htdocs/core/modules/supplier_proposal/modules_supplier_proposal.php index 4bff78bff54f2f275537be0567e24430d0253059..715dc294d9187287412b5817e51d0cb7596e59ce 100644 --- a/htdocs/core/modules/askpricesupplier/modules_askpricesupplier.php +++ b/htdocs/core/modules/supplier_proposal/modules_supplier_proposal.php @@ -34,7 +34,7 @@ require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; // Requ /** * Classe mere des modeles de propale */ -abstract class ModelePDFAskPriceSupplier extends CommonDocGenerator +abstract class ModelePDFSupplierProposal extends CommonDocGenerator { var $error=''; @@ -50,7 +50,7 @@ abstract class ModelePDFAskPriceSupplier extends CommonDocGenerator { global $conf; - $type='askpricesupplier'; + $type='supplier_proposal'; $liste=array(); include_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; @@ -64,7 +64,7 @@ abstract class ModelePDFAskPriceSupplier extends CommonDocGenerator /** * Classe mere des modeles de numerotation des references de propales */ -abstract class ModeleNumRefAskPriceSupplier +abstract class ModeleNumRefSupplierProposal { var $error=''; @@ -86,7 +86,7 @@ abstract class ModeleNumRefAskPriceSupplier function info() { global $langs; - $langs->load("askpricesupplier"); + $langs->load("supplier_proposal"); return $langs->trans("NoDescription"); } @@ -98,7 +98,7 @@ abstract class ModeleNumRefAskPriceSupplier function getExample() { global $langs; - $langs->load("askpricesupplier"); + $langs->load("supplier_proposal"); return $langs->trans("NoExample"); } @@ -149,17 +149,17 @@ abstract class ModeleNumRefAskPriceSupplier * Create a document onto disk according to template module. * * @param DoliDB $db Database handler - * @param AskPriceSupplier $object Object askpricesupplier + * @param SupplierProposal $object Object supplier_proposal * @param string $modele Force model to use ('' to not force) * @param Translate $outputlangs Object langs to use for output * @param int $hidedetails Hide details of lines * @param int $hidedesc Hide description * @param int $hideref Hide ref * @return int 0 if KO, 1 if OK - * @deprecated Use the new function generateDocument of AskPriceSupplier class - * @see AskPriceSupplier::generateDocument() + * @deprecated Use the new function generateDocument of SupplierProposal class + * @see SupplierProposal::generateDocument() */ -function askpricesupplier_pdf_create(DoliDB $db, AskPriceSupplier $object, $modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) +function supplier_proposal_pdf_create(DoliDB $db, SupplierProposal $object, $modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) { dol_syslog(__METHOD__ . " is deprecated", LOG_WARNING); diff --git a/htdocs/core/tpl/document_actions_post_headers.tpl.php b/htdocs/core/tpl/document_actions_post_headers.tpl.php index 84b869cd8138c389319fd959a723848489d2b7e7..a983bf7f36e2c3011000219a621c7addbea5de83 100644 --- a/htdocs/core/tpl/document_actions_post_headers.tpl.php +++ b/htdocs/core/tpl/document_actions_post_headers.tpl.php @@ -1,6 +1,7 @@ <?php /* Copyright (C) 2013 Cédric Salvador <csalvador@gpcsolutions.fr> * Copyright (C) 2013-2014 Laurent Destailleur <eldy@users.sourceforge.net> + * Copyright (C) 2015 Marcos García <marcosgdf@gmail.com> * * 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 @@ -47,9 +48,9 @@ $savingdocmask=''; if (empty($conf->global->MAIN_DISABLE_SUGGEST_REF_AS_PREFIX)) { //var_dump($modulepart); - if (in_array($modulepart,array('facture_fournisseur','commande_fournisseur','facture','commande','propal','askpricesupplier','ficheinter','contract','project','project_task','expensereport'))) + if (in_array($modulepart,array('facture_fournisseur','commande_fournisseur','facture','commande','propal','supplier_proposal','ficheinter','contract','project','project_task','expensereport'))) { - $savingdocmask=$object->ref.'-__file__'; + $savingdocmask=dol_sanitizeFileName($object->ref).'-__file__'; } /*if (in_array($modulepart,array('member'))) { diff --git a/htdocs/core/tpl/login.tpl.php b/htdocs/core/tpl/login.tpl.php index c0af2a25b744284f5d65839977d5564b0aed0590..1debab7b10b2ca00405d9c3b8a645b6e20f804cc 100644 --- a/htdocs/core/tpl/login.tpl.php +++ b/htdocs/core/tpl/login.tpl.php @@ -33,7 +33,7 @@ $arrayofjs=array( '/includes/jstz/jstz.min.js'.(empty($conf->dol_use_jmobile)?'':'?version='.urlencode(DOL_VERSION)), '/core/js/dst.js'.(empty($conf->dol_use_jmobile)?'':'?version='.urlencode(DOL_VERSION)) ); -$titleofloginpage=$langs->trans('Login').' @ '.$title; // title is defined by dol_loginfunction in security2.lib.php. We must keep the @, some tools use it to know it is login page. +$titleofloginpage=$langs->trans('Login').' @ '.$titletruedolibarrversion; // $titletruedolibarrversion is defined by dol_loginfunction in security2.lib.php. We must keep the @, some tools use it to know it is login page and find true dolibarr version. print top_htmlhead('',$titleofloginpage,0,0,$arrayofjs); ?> @@ -93,7 +93,7 @@ $(document).ready(function () { <!-- Login --> <tr> <td class="nowrap center valignmiddle"> -<label for="username" hidden><?php echo $langs->trans("Login"); ?></label> +<?php if (! empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) { ?><label for="username" class="hidden"><?php echo $langs->trans("Login"); ?></label><?php } ?> <span class="span-icon-user"> <input type="text" id="username" placeholder="<?php echo $langs->trans("Login"); ?>" name="username" class="flat input-icon-user" size="20" value="<?php echo dol_escape_htmltag($login); ?>" tabindex="1" autofocus="autofocus" /> </span> @@ -102,7 +102,7 @@ $(document).ready(function () { <!-- Password --> <tr> <td class="nowrap center valignmiddle"> -<label for="password" hidden><?php echo $langs->trans("Password"); ?></label> +<?php if (! empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) { ?><label for="password" hidden><?php echo $langs->trans("Password"); ?></label><?php } ?> <span class="span-icon-password"> <input id="password" placeholder="<?php echo $langs->trans("Password"); ?>" name="password" class="flat input-icon-password" type="password" size="20" value="<?php echo dol_escape_htmltag($password); ?>" tabindex="2" autocomplete="off" /> </span> diff --git a/htdocs/core/tpl/notes.tpl.php b/htdocs/core/tpl/notes.tpl.php index 46e7d154533c562f3587f4ae39789736ffca11ee..c68aa599310840e4816aef9c6326b71ede653557 100644 --- a/htdocs/core/tpl/notes.tpl.php +++ b/htdocs/core/tpl/notes.tpl.php @@ -50,7 +50,7 @@ if (! empty($conf->global->MAIN_AUTO_TIMESTAMP_IN_PRIVATE_NOTES)) // Special cases if ($module == 'propal') { $permission=$user->rights->propale->creer;} -elseif ($module == 'askpricesupplier') { $permission=$user->rights->askpricesupplier->creer;} +elseif ($module == 'supplier_proposal') { $permission=$user->rights->supplier_proposal->creer;} elseif ($module == 'fichinter') { $permission=$user->rights->ficheinter->creer;} elseif ($module == 'project') { $permission=$user->rights->projet->creer;} elseif ($module == 'project_task') { $permission=$user->rights->projet->creer;} diff --git a/htdocs/core/tpl/objectline_create.tpl.php b/htdocs/core/tpl/objectline_create.tpl.php index c757efa23b47f03f5ebb768b5df1c6182556be71..886c3fb9d1f6b75dca4ce56fe8eba9dcc21cdc82 100644 --- a/htdocs/core/tpl/objectline_create.tpl.php +++ b/htdocs/core/tpl/objectline_create.tpl.php @@ -32,7 +32,10 @@ $usemargins=0; -if (! empty($conf->margin->enabled) && ! empty($object->element) && in_array($object->element,array('facture','propal','askpricesupplier','commande'))) $usemargins=1; +if (! empty($conf->margin->enabled) && ! empty($object->element) && in_array($object->element,array('facture','propal','commande'))) +{ + $usemargins=1; +} global $forceall, $senderissupplier, $inputalsopricewithtax; if (empty($dateSelector)) $dateSelector=0; @@ -43,7 +46,7 @@ if (empty($inputalsopricewithtax)) $inputalsopricewithtax=0; // Define colspan for button Add $colspan = 3; // Col total ht + col edit + col delete -if (in_array($object->element,array('propal', 'askpricesupplier','facture','invoice','commande','order','order_supplier','invoice_supplier'))) $colspan++; // With this, there is a column move button +if (in_array($object->element,array('propal', 'supplier_proposal','facture','invoice','commande','order','order_supplier','invoice_supplier'))) $colspan++; // With this, there is a column move button //print $object->element; ?> @@ -53,8 +56,8 @@ if (in_array($object->element,array('propal', 'askpricesupplier','facture','invo <td class="linecoldescription" <?php echo (! empty($conf->global->MAIN_VIEW_LINE_NUMBER) ? ' colspan="2"' : ''); ?>> <div id="add"></div><span class="hideonsmartphone"><?php echo $langs->trans('AddNewLine'); ?></span><?php // echo $langs->trans("FreeZone"); ?> </td> - <?php if ($object->element == 'askpricesupplier') { ?> - <tdclass="linecolrefsupplier" align="right"><span id="title_fourn_ref"><?php echo $langs->trans('AskPriceSupplierRefFourn'); ?></span></td> + <?php if ($object->element == 'supplier_proposal') { ?> + <td class="linecolrefsupplier" align="right"><span id="title_fourn_ref"><?php echo $langs->trans('SupplierProposalRefFourn'); ?></span></td> <?php } ?> <td class="linecolvat" align="right"><span id="title_vat"><?php echo $langs->trans('VAT'); ?></span></td> <td class="linecoluht" align="right"><span id="title_up_ht"><?php echo $langs->trans('PriceUHT'); ?></span></td> @@ -211,13 +214,13 @@ else { ?> </td> - <?php if ($object->element == 'askpricesupplier') { ?> + <?php if ($object->element == 'supplier_proposal') { ?> <td class="nobottom linecolresupplier" align="right"><input id="fourn_ref" name="fourn_ref" class="flat" value="" size="12"></td> <?php } ?> <td class="nobottom linecolvat" align="right"><?php if ($seller->tva_assuj == "0") echo '<input type="hidden" name="tva_tx" id="tva_tx" value="0">'.vatrate(0, true); - else echo $form->load_tva('tva_tx', (isset($_POST["tva_tx"])?$_POST["tva_tx"]:-1), $seller, $buyer); + else echo $form->load_tva('tva_tx', (isset($_POST["tva_tx"])?$_POST["tva_tx"]:-1), $seller, $buyer, 0, 0, '', false, 1); ?> </td> <td class="nobottom linecoluht" align="right"> @@ -291,8 +294,8 @@ else { elseif ($this->table_element_line=='propaldet') { $newline = new PropaleLigne($this->db); } - elseif ($this->table_element_line=='askpricesupplierdet') { - $newline = new AskPriceSupplierLine($this->db); + elseif ($this->table_element_line=='supplier_proposaldet') { + $newline = new SupplierProposalLine($this->db); } elseif ($this->table_element_line=='facturedet') { $newline = new FactureLigne($this->db); @@ -338,7 +341,7 @@ if ((! empty($conf->service->enabled) || ($object->element == 'contrat')) && $da // With this, there is a column move button ONLY if lines > 1 if (in_array($object->element, array( 'propal', - 'askpricesupplier', + 'supplier_proposal', 'facture', 'invoice', 'commande', diff --git a/htdocs/core/tpl/objectline_edit.tpl.php b/htdocs/core/tpl/objectline_edit.tpl.php index d61831cfec259d5dabf1e31044980b2382f433a1..883c1f5eea9246d4cc1bbe45995e8d4e34786c2c 100644 --- a/htdocs/core/tpl/objectline_edit.tpl.php +++ b/htdocs/core/tpl/objectline_edit.tpl.php @@ -32,7 +32,7 @@ $usemargins=0; -if (! empty($conf->margin->enabled) && ! empty($object->element) && in_array($object->element,array('facture','propal', 'askpricesupplier','commande'))) $usemargins=1; +if (! empty($conf->margin->enabled) && ! empty($object->element) && in_array($object->element,array('facture','propal','commande'))) $usemargins=1; global $forceall, $senderissupplier, $inputalsopricewithtax; if (empty($dateSelector)) $dateSelector=0; @@ -44,7 +44,7 @@ if (empty($inputalsopricewithtax)) $inputalsopricewithtax=0; // Define colspan for button Add $colspan = 3; // Col total ht + col edit + col delete if (! empty($inputalsopricewithtax)) $colspan++; // We add 1 if col total ttc -if (in_array($object->element,array('propal','askpricesupplier','facture','invoice','commande','order','order_supplier','invoice_supplier'))) $colspan++; // With this, there is a column move button +if (in_array($object->element,array('propal','supplier_proposal','facture','invoice','commande','order','order_supplier','invoice_supplier'))) $colspan++; // With this, there is a column move button ?> <!-- BEGIN PHP TEMPLATE objectline_edit.tpl.php --> @@ -104,14 +104,14 @@ $coldisplay=-1; // We remove first td ?> </td> - <?php if ($object->element == 'askpricesupplier') { ?> + <?php if ($object->element == 'supplier_proposal') { ?> <td align="right"><input id="fourn_ref" name="fourn_ref" class="flat" value="<?php echo $line->ref_fourn; ?>" size="12"></td> <?php } ?> <?php $coldisplay++; if ($this->situation_counter == 1 || !$this->situation_cycle_ref) { - print '<td align="right">' . $form->load_tva('tva_tx',$line->tva_tx,$seller,$buyer,0,$line->info_bits,$line->product_type) . '</td>'; + print '<td align="right">' . $form->load_tva('tva_tx', $line->tva_tx, $seller, $buyer, 0, $line->info_bits, $line->product_type, false, 1) . '</td>'; } else { print '<td align="right"><input size="1" type="text" class="flat" name="tva_tx" value="' . price($line->tva_tx) . '" readonly />%</td>'; } diff --git a/htdocs/core/tpl/objectline_view.tpl.php b/htdocs/core/tpl/objectline_view.tpl.php index 7cf7f40020d25381210ba968b98d1447624f5cc0..f71b2b484d1d42fe765e5922f2d96e1617fe240b 100644 --- a/htdocs/core/tpl/objectline_view.tpl.php +++ b/htdocs/core/tpl/objectline_view.tpl.php @@ -37,7 +37,7 @@ global $forceall, $senderissupplier, $inputalsopricewithtax, $usemargins; $usemargins=0; -if (! empty($conf->margin->enabled) && ! empty($object->element) && in_array($object->element,array('facture','propal', 'askpricesupplier','commande'))) $usemargins=1; +if (! empty($conf->margin->enabled) && ! empty($object->element) && in_array($object->element,array('facture','propal','commande'))) $usemargins=1; if (empty($dateSelector)) $dateSelector=0; if (empty($forceall)) $forceall=0; @@ -124,7 +124,7 @@ if (empty($usemargins)) $usemargins=0; } ?> </td> - <?php if ($object->element == 'askpricesupplier') { ?> + <?php if ($object->element == 'supplier_proposal') { ?> <td class="linecolrefsupplier" align="right"><?php echo $line->ref_fourn; ?></td> <?php } ?> <td align="right" class="linecolvat nowrap"><?php $coldisplay++; ?><?php echo vatrate($line->tva_tx,'%',$line->info_bits); ?></td> diff --git a/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php b/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php index d144f365533f55a77b10f1d9686eaef19b48a913..4d3afeb8d928bcce0e5e8ea01d4b7ae176e3f693 100644 --- a/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php +++ b/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php @@ -61,6 +61,10 @@ class InterfaceWorkflowManager extends DolibarrTriggers include_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php'; $newobject = new Commande($this->db); + $newobject->context['createfrompropal'] = 'createfrompropal'; + $newobject->context['origin'] = $object->element; + $newobject->context['origin_id'] = $object->id; + $ret=$newobject->createFromProposal($object); if ($ret < 0) { $this->error=$newobject->error; $this->errors[]=$newobject->error; } return $ret; @@ -76,6 +80,10 @@ class InterfaceWorkflowManager extends DolibarrTriggers include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; $newobject = new Facture($this->db); + $newobject->context['createfromorder'] = 'createfromorder'; + $newobject->context['origin'] = $object->element; + $newobject->context['origin_id'] = $object->id; + $ret=$newobject->createFromOrder($object); if ($ret < 0) { $this->error=$newobject->error; $this->errors[]=$newobject->error; } return $ret; diff --git a/htdocs/core/triggers/interface_90_all_Demo.class.php-NORUN b/htdocs/core/triggers/interface_90_all_Demo.class.php-NORUN index 84f67660c4134ce3422f44933493243814325621..32d09238fd522bd66e8d53ba0054c0c87ffe0d88 100644 --- a/htdocs/core/triggers/interface_90_all_Demo.class.php-NORUN +++ b/htdocs/core/triggers/interface_90_all_Demo.class.php-NORUN @@ -100,6 +100,7 @@ class InterfaceDemo extends DolibarrTriggers case 'PRODUCT_MODIFY': case 'PRODUCT_DELETE': case 'PRODUCT_PRICE_MODIFY': + case 'PRODUCT_SET_MULTILANGS': //Stock mouvement case 'STOCK_MOVEMENT': @@ -149,17 +150,17 @@ class InterfaceDemo extends DolibarrTriggers case 'LINEPROPAL_DELETE': // Askpricesupplier - case 'ASKPRICESUPPLIER_CREATE': - case 'ASKPRICESUPPLIER_CLONE': - case 'ASKPRICESUPPLIER_MODIFY': - case 'ASKPRICESUPPLIER_VALIDATE': - case 'ASKPRICESUPPLIER_SENTBYMAIL': - case 'ASKPRICESUPPLIER_CLOSE_SIGNED': - case 'ASKPRICESUPPLIER_CLOSE_REFUSED': - case 'ASKPRICESUPPLIER_DELETE': - case 'LINEASKPRICESUPPLIER_INSERT': - case 'LINEASKPRICESUPPLIER_UPDATE': - case 'LINEASKPRICESUPPLIER_DELETE': + case 'SUPPLIER_PROPOSAL_CREATE': + case 'SUPPLIER_PROPOSAL_CLONE': + 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': @@ -234,6 +235,7 @@ class InterfaceDemo extends DolibarrTriggers case 'CATEGORY_CREATE': case 'CATEGORY_MODIFY': case 'CATEGORY_DELETE': + case 'CATEGORY_SET_MULTILANGS': // Projects case 'PROJECT_CREATE': diff --git a/htdocs/expedition/class/expedition.class.php b/htdocs/expedition/class/expedition.class.php index 181f0138bf23cc43765a63d0a87f60dea46556b9..d7bfc9aed9873c17a52eeb30e7d071349d0d1948 100644 --- a/htdocs/expedition/class/expedition.class.php +++ b/htdocs/expedition/class/expedition.class.php @@ -34,7 +34,7 @@ if (! empty($conf->propal->enabled)) require_once DOL_DOCUMENT_ROOT.'/comm/propa if (! empty($conf->commande->enabled)) require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php'; if (! empty($conf->productbatch->enabled)) require_once DOL_DOCUMENT_ROOT.'/expedition/class/expeditionbatch.class.php'; - + /** * Class to manage shipments */ @@ -1048,7 +1048,7 @@ class Expedition extends CommonObject // 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("ShipmentDeletedInDolibarr", $this->ref)); // price is set to 0 because we dont want to see WAP changed + $result=$mouvS->reception($user, $obj->fk_product, $obj->fk_entrepot, $obj->qty, 0, $langs->trans("ShipmentDeletedInDolibarr", $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; @@ -1061,7 +1061,7 @@ class Expedition extends CommonObject // We use warehouse selected for each line foreach($lotArray as $lot) { - $result=$mouvS->reception($user, $obj->fk_product, $obj->fk_entrepot, $lot->dluo_qty, 0, $langs->trans("ShipmentDeletedInDolibarr", $this->ref), $lot->eatby, $lot->sellby, $lot->batch); // price is set to 0 because we dont want to see WAP changed + $result=$mouvS->reception($user, $obj->fk_product, $obj->fk_entrepot, $lot->dluo_qty, 0, $langs->trans("ShipmentDeletedInDolibarr", $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; diff --git a/htdocs/fichinter/card.php b/htdocs/fichinter/card.php index e9b4d94bee6bb3b279cb42725f8d687dc3417462..116305dc86d8c87dbd554b241e95202e9c1c5b4c 100644 --- a/htdocs/fichinter/card.php +++ b/htdocs/fichinter/card.php @@ -113,6 +113,7 @@ if (empty($reshook)) if ($action == 'confirm_validate' && $confirm == 'yes' && $user->rights->ficheinter->creer) { $result = $object->setValid($user); + if ($result >= 0) { // Define output language diff --git a/htdocs/fourn/card.php b/htdocs/fourn/card.php index a8b6d18a93521e7cd690d36a5dbd7a69463be12d..cab8c96b62a144b80c19e14538be990431469683 100644 --- a/htdocs/fourn/card.php +++ b/htdocs/fourn/card.php @@ -541,10 +541,10 @@ if ($object->id > 0) print '<a class="butAction" href="'.DOL_URL_ROOT.'/fourn/facture/card.php?action=create&socid='.$object->id.'">'.$langs->trans("AddBill").'</a>'; } - if ($conf->askpricesupplier->enabled && $user->rights->askpricesupplier->creer) + if ($conf->supplier_proposal->enabled && $user->rights->supplier_proposal->creer) { - $langs->load("askpricesupplier"); - print '<a class="butAction" href="'.DOL_URL_ROOT.'/comm/askpricesupplier/card.php?action=create&socid='.$object->id.'">'.$langs->trans("AddAskPriceSupplier").'</a>'; + $langs->load("supplier_proposal"); + print '<a class="butAction" href="'.DOL_URL_ROOT.'/supplier_proposal/card.php?action=create&socid='.$object->id.'">'.$langs->trans("AddSupplierProposal").'</a>'; } if ($user->rights->fournisseur->facture->creer) diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php index e988893dbb4d9e180c44b4170bc5cfc48ddc83a9..3f9d7b1246ae58893977e5c80ccfea7383b78802 100644 --- a/htdocs/fourn/class/fournisseur.commande.class.php +++ b/htdocs/fourn/class/fournisseur.commande.class.php @@ -113,7 +113,7 @@ class CommandeFournisseur extends CommonOrder * @var CommandeFournisseurLigne[] */ public $lines = array(); - //Ajout pour askpricesupplier + //Ajout pour supplier_proposal var $origin; var $origin_id; var $linked_objects=array(); @@ -589,7 +589,7 @@ class CommandeFournisseur extends CommonOrder if (! empty($this->total_ht)) $label.= '<br><b>' . $langs->trans('AmountHT') . ':</b> ' . price($this->total_ht, 0, $langs, 0, -1, -1, $conf->currency); if (! empty($this->total_tva)) - $label.= '<br><b>' . $langs->trans('TVA') . ':</b> ' . price($this->total_tva, 0, $langs, 0, -1, -1, $conf->currency); + $label.= '<br><b>' . $langs->trans('VAT') . ':</b> ' . price($this->total_tva, 0, $langs, 0, -1, -1, $conf->currency); if (! empty($this->total_ttc)) $label.= '<br><b>' . $langs->trans('AmountTTC') . ':</b> ' . price($this->total_ttc, 0, $langs, 0, -1, -1, $conf->currency); @@ -1314,7 +1314,8 @@ class CommandeFournisseur extends CommonOrder // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $localtaxes_type=getLocalTaxesFromRate($txtva,0,$mysoc,$this->thirdparty); - + $txtva = preg_replace('/\s*\(.*\)/','',$txtva); // Remove code into vatrate. + $tabprice = calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $product_type, $this->thirdparty, $localtaxes_type); $total_ht = $tabprice[0]; $total_tva = $tabprice[1]; @@ -2072,7 +2073,8 @@ class CommandeFournisseur extends CommonOrder // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $localtaxes_type=getLocalTaxesFromRate($txtva,0,$mysoc, $this->thirdparty); - + $txtva = preg_replace('/\s*\(.*\)/','',$txtva); // Remove code into vatrate. + $tabprice=calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $type, $this->thirdparty, $localtaxes_type); $total_ht = $tabprice[0]; $total_tva = $tabprice[1]; diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php index 05330fa23198552092bf9c7b0563a750db8c11e8..64c988e74e1187b67603a546e8ee077e63f8cf1b 100644 --- a/htdocs/fourn/class/fournisseur.facture.class.php +++ b/htdocs/fourn/class/fournisseur.facture.class.php @@ -1269,7 +1269,8 @@ class FactureFournisseur extends CommonInvoice // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $localtaxes_type=getLocalTaxesFromRate($vatrate,0,$mysoc, $this->thirdparty); - + $txtva = preg_replace('/\s*\(.*\)/','',$txtva); // Remove code into vatrate. + $tabprice = calcul_price_total($qty, $pu, $remise_percent, $vatrate, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $type, $this->thirdparty, $localtaxes_type); $total_ht = $tabprice[0]; $total_tva = $tabprice[1]; @@ -1485,7 +1486,7 @@ class FactureFournisseur extends CommonInvoice if (! empty($this->total_ht)) $label.= '<br><b>' . $langs->trans('AmountHT') . ':</b> ' . price($this->total_ht, 0, $langs, 0, -1, -1, $conf->currency); if (! empty($this->total_tva)) - $label.= '<br><b>' . $langs->trans('TVA') . ':</b> ' . price($this->total_tva, 0, $langs, 0, -1, -1, $conf->currency); + $label.= '<br><b>' . $langs->trans('VAT') . ':</b> ' . price($this->total_tva, 0, $langs, 0, -1, -1, $conf->currency); if (! empty($this->total_ttc)) $label.= '<br><b>' . $langs->trans('AmountTTC') . ':</b> ' . price($this->total_ttc, 0, $langs, 0, -1, -1, $conf->currency); diff --git a/htdocs/fourn/commande/card.php b/htdocs/fourn/commande/card.php index e80f1e6a9f12213cb8839e3165c7c000cb50639f..83b94bd74d9365594c6d27d69a470a055041e958 100644 --- a/htdocs/fourn/commande/card.php +++ b/htdocs/fourn/commande/card.php @@ -40,8 +40,8 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; -if (! empty($conf->askpricesupplier->enabled)) - require DOL_DOCUMENT_ROOT . '/comm/askpricesupplier/class/askpricesupplier.class.php'; +if (! empty($conf->supplier_proposal->enabled)) + require DOL_DOCUMENT_ROOT . '/supplier_proposal/class/supplier_proposal.class.php'; if (!empty($conf->produit->enabled)) require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; if (!empty($conf->projet->enabled)) @@ -54,7 +54,7 @@ $langs->load('sendings'); $langs->load('companies'); $langs->load('bills'); $langs->load('propal'); -$langs->load('askpricesupplier'); +$langs->load('supplier_proposal'); $langs->load('deliveries'); $langs->load('products'); $langs->load('stocks'); @@ -916,8 +916,8 @@ if (empty($reshook)) // If creation from another object of another module (Example: origin=propal, originid=1) if (! empty($origin) && ! empty($originid)) { - $element = 'comm/askpricesupplier'; - $subelement = 'askpricesupplier'; + $element = 'supplier_proposal'; + $subelement = 'supplier_proposal'; $object->origin = $origin; $object->origin_id = $originid; @@ -1429,8 +1429,8 @@ if ($action=='create') $subelement = $regs [2]; } - $element = 'comm/askpricesupplier'; - $subelement = 'askpricesupplier'; + $element = 'supplier_proposal'; + $subelement = 'supplier_proposal'; dol_include_once('/' . $element . '/class/' . $subelement . '.class.php'); @@ -1579,8 +1579,8 @@ if ($action=='create') print '<input type="hidden" name="originid" value="' . $objectsrc->id . '">'; $newclassname = $classname; - if ($newclassname == 'AskPriceSupplier') - $newclassname = 'CommercialAskPriceSupplier'; + if ($newclassname == 'SupplierProposal') + $newclassname = 'CommercialSupplierProposal'; print '<tr><td>' . $langs->trans($newclassname) . '</td><td colspan="2">' . $objectsrc->getNomUrl(1) . '</td></tr>'; print '<tr><td>' . $langs->trans('TotalHT') . '</td><td colspan="2">' . price($objectsrc->total_ht) . '</td></tr>'; print '<tr><td>' . $langs->trans('TotalVAT') . '</td><td colspan="2">' . price($objectsrc->total_tva) . "</td></tr>"; diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php index 1084bbe382172b5130cbdd4b7191cb24a1ce3081..fe6582fd35573e41f54f772b66c84663c97cd1df 100644 --- a/htdocs/fourn/facture/card.php +++ b/htdocs/fourn/facture/card.php @@ -84,6 +84,7 @@ $extralabels=$extrafields->fetch_name_optionals_label($object->table_element); if ($id > 0 || ! empty($ref)) { $ret=$object->fetch($id, $ref); + $object->fetch_thirdparty(); } $permissionnote=$user->rights->fournisseur->facture->creer; // Used by the include of actions_setnotes.inc.php @@ -1521,7 +1522,7 @@ if ($action == 'create') if ($cntinvoice>=1) { setEventMessage('WarningBillExist','warnings'); - echo ' ('.$langs->trans('LatestRelatedBill').end($objectsrc->linkedObjects['facture'])->getNomUrl(1).')'; + echo ' ('.$langs->trans('LatestRelatedBill').end($objectsrc->linkedObjects['invoice_supplier'])->getNomUrl(1).')'; } echo '</td></tr>'; print '<tr><td>'.$langs->trans('TotalHT').'</td><td colspan="2">'.price($objectsrc->total_ht).'</td></tr>'; @@ -2101,10 +2102,10 @@ else global $forceall, $senderissupplier, $dateSelector, $inputalsopricewithtax; $forceall=1; $senderissupplier=1; $dateSelector=0; $inputalsopricewithtax=1; - + // Show object lines if (! empty($object->lines)) - $ret = $object->printObjectLines($action, $soc, $mysoc, $lineid, 1); + $ret = $object->printObjectLines($action, $societe, $mysoc, $lineid, 1); $num=count($object->lines); diff --git a/htdocs/includes/jquery/plugins/jcrop/js/jquery.Jcrop.js b/htdocs/includes/jquery/plugins/jcrop/js/jquery.Jcrop.js index ad261f97aecf7407bc4cca2b6aee92401eac3c91..a31a0a10592cd2159597fc86512853e6fd2b0fdf 100755 --- a/htdocs/includes/jquery/plugins/jcrop/js/jquery.Jcrop.js +++ b/htdocs/includes/jquery/plugins/jcrop/js/jquery.Jcrop.js @@ -43,13 +43,11 @@ $.Jcrop = function(obj,opt) // Some on-the-fly fixes for MSIE...sigh if (!('trackDocument' in opt)) { - opt.trackDocument = $.browser.msie ? false : true; - if ($.browser.msie && $.browser.version.split('.')[0] == '8') - opt.trackDocument = true; + opt.trackDocument = true; } if (!('keySupport' in opt)) - opt.keySupport = $.browser.msie ? false : true; + opt.keySupport = true; // }}} // Extend the default options {{{ @@ -416,7 +414,7 @@ $.Jcrop = function(obj,opt) if (options.drawBorders) { borders = { top: insertBorder('hline') - .css('top',$.browser.msie?px(-1):px(0)), + .css('top',px(0)), bottom: insertBorder('hline'), left: insertBorder('vline'), right: insertBorder('vline') @@ -965,7 +963,6 @@ $.Jcrop = function(obj,opt) function newTracker() { var trk = $('<div></div>').addClass(cssClass('tracker')); - $.browser.msie && trk.css({ opacity: 0, backgroundColor: 'white' }); return trk; }; diff --git a/htdocs/includes/jquery/plugins/jcrop/js/jquery.Jcrop.min.js b/htdocs/includes/jquery/plugins/jcrop/js/jquery.Jcrop.min.js index 9002b9787f2c97b0a1d51942a78c2c52a0b732dd..c3c932b834902396afc5740855c22ec800e741fc 100755 --- a/htdocs/includes/jquery/plugins/jcrop/js/jquery.Jcrop.min.js +++ b/htdocs/includes/jquery/plugins/jcrop/js/jquery.Jcrop.min.js @@ -8,10 +8,9 @@ (function($){$.Jcrop=function(obj,opt) {var obj=obj,opt=opt;if(typeof(obj)!=='object')obj=$(obj)[0];if(typeof(opt)!=='object')opt={};if(!('trackDocument'in opt)) -{opt.trackDocument=$.browser.msie?false:true;if($.browser.msie&&$.browser.version.split('.')[0]=='8') -opt.trackDocument=true;} +{opt.trackDocument=true;} if(!('keySupport'in opt)) -opt.keySupport=$.browser.msie?false:true;var defaults={trackDocument:false,baseClass:'jcrop',addClass:null,bgColor:'black',bgOpacity:.6,borderOpacity:.4,handleOpacity:.5,handlePad:5,handleSize:9,handleOffset:5,edgeMargin:14,aspectRatio:0,keySupport:true,cornerHandles:true,sideHandles:true,drawBorders:true,dragEdges:true,boxWidth:0,boxHeight:0,boundary:8,animationDelay:20,swingSpeed:3,allowSelect:true,allowMove:true,allowResize:true,minSelect:[0,0],maxSize:[0,0],minSize:[0,0],onChange:function(){},onSelect:function(){}};var options=defaults;setOptions(opt);var $origimg=$(obj);var $img=$origimg.clone().removeAttr('id').css({position:'absolute'});$img.width($origimg.width());$img.height($origimg.height());$origimg.after($img).hide();presize($img,options.boxWidth,options.boxHeight);var boundx=$img.width(),boundy=$img.height(),$div=$('<div />').width(boundx).height(boundy).addClass(cssClass('holder')).css({position:'relative',backgroundColor:options.bgColor}).insertAfter($origimg).append($img);;if(options.addClass)$div.addClass(options.addClass);var $img2=$('<img />').attr('src',$img.attr('src')).css('position','absolute').width(boundx).height(boundy);var $img_holder=$('<div />').width(pct(100)).height(pct(100)).css({zIndex:310,position:'absolute',overflow:'hidden'}).append($img2);var $hdl_holder=$('<div />').width(pct(100)).height(pct(100)).css('zIndex',320);var $sel=$('<div />').css({position:'absolute',zIndex:300}).insertBefore($img).append($img_holder,$hdl_holder);var bound=options.boundary;var $trk=newTracker().width(boundx+(bound*2)).height(boundy+(bound*2)).css({position:'absolute',top:px(-bound),left:px(-bound),zIndex:290}).mousedown(newSelection);var xlimit,ylimit,xmin,ymin;var xscale,yscale,enabled=true;var docOffset=getPos($img),btndown,lastcurs,dimmed,animating,shift_down;var Coords=function() +opt.keySupport=true;var defaults={trackDocument:false,baseClass:'jcrop',addClass:null,bgColor:'black',bgOpacity:.6,borderOpacity:.4,handleOpacity:.5,handlePad:5,handleSize:9,handleOffset:5,edgeMargin:14,aspectRatio:0,keySupport:true,cornerHandles:true,sideHandles:true,drawBorders:true,dragEdges:true,boxWidth:0,boxHeight:0,boundary:8,animationDelay:20,swingSpeed:3,allowSelect:true,allowMove:true,allowResize:true,minSelect:[0,0],maxSize:[0,0],minSize:[0,0],onChange:function(){},onSelect:function(){}};var options=defaults;setOptions(opt);var $origimg=$(obj);var $img=$origimg.clone().removeAttr('id').css({position:'absolute'});$img.width($origimg.width());$img.height($origimg.height());$origimg.after($img).hide();presize($img,options.boxWidth,options.boxHeight);var boundx=$img.width(),boundy=$img.height(),$div=$('<div />').width(boundx).height(boundy).addClass(cssClass('holder')).css({position:'relative',backgroundColor:options.bgColor}).insertAfter($origimg).append($img);;if(options.addClass)$div.addClass(options.addClass);var $img2=$('<img />').attr('src',$img.attr('src')).css('position','absolute').width(boundx).height(boundy);var $img_holder=$('<div />').width(pct(100)).height(pct(100)).css({zIndex:310,position:'absolute',overflow:'hidden'}).append($img2);var $hdl_holder=$('<div />').width(pct(100)).height(pct(100)).css('zIndex',320);var $sel=$('<div />').css({position:'absolute',zIndex:300}).insertBefore($img).append($img_holder,$hdl_holder);var bound=options.boundary;var $trk=newTracker().width(boundx+(bound*2)).height(boundy+(bound*2)).css({position:'absolute',top:px(-bound),left:px(-bound),zIndex:290}).mousedown(newSelection);var xlimit,ylimit,xmin,ymin;var xscale,yscale,enabled=true;var docOffset=getPos($img),btndown,lastcurs,dimmed,animating,shift_down;var Coords=function() {var x1=0,y1=0,x2=0,y2=0,ox,oy;function setPressed(pos) {var pos=rebound(pos);x2=x1=pos[0];y2=y1=pos[1];};function setCurrent(pos) {var pos=rebound(pos);ox=pos[0]-x2;oy=pos[1]-y2;x2=pos[0];y2=pos[1];};function getOffset() @@ -57,7 +56,7 @@ if(x1>boundx){var delta=x1-boundy;y2-=delta;y1-=delta;} if(y1>boundy){var delta=y1-boundy;y2-=delta;y1-=delta;} return makeObj(flipCoords(x1,y1,x2,y2));};function makeObj(a) {return{x:a[0],y:a[1],x2:a[2],y2:a[3],w:a[2]-a[0],h:a[3]-a[1]};};return{flipCoords:flipCoords,setPressed:setPressed,setCurrent:setCurrent,getOffset:getOffset,moveOffset:moveOffset,getCorner:getCorner,getFixed:getFixed};}();var Selection=function() -{var start,end,dragmode,awake,hdep=370;var borders={};var handle={};var seehandles=false;var hhs=options.handleOffset;if(options.drawBorders){borders={top:insertBorder('hline').css('top',$.browser.msie?px(-1):px(0)),bottom:insertBorder('hline'),left:insertBorder('vline'),right:insertBorder('vline')};} +{var start,end,dragmode,awake,hdep=370;var borders={};var handle={};var seehandles=false;var hhs=options.handleOffset;if(options.drawBorders){borders={top:insertBorder('hline').css('top',px(0)),bottom:insertBorder('hline'),left:insertBorder('vline'),right:insertBorder('vline')};} if(options.dragEdges){handle.t=insertDragbar('n');handle.b=insertDragbar('s');handle.r=insertDragbar('e');handle.l=insertDragbar('w');} options.sideHandles&&createHandles(['n','s','e','w']);options.cornerHandles&&createHandles(['sw','nw','ne','se']);function insertBorder(type) {var jq=$('<div />').css({position:'absolute',opacity:options.borderOpacity}).addClass(cssClass(type));$img_holder.append(jq);return jq;};function dragDiv(ord,zi) @@ -134,7 +133,7 @@ else Tracker.setCursor(options.allowSelect?'crosshair':'default');};function newSelection(e) {if(options.disabled)return false;if(!options.allowSelect)return false;btndown=true;docOffset=getPos($img);Selection.disableHandles();myCursor('crosshair');var pos=mouseAbs(e);Coords.setPressed(pos);Tracker.activateHandlers(selectDrag,doneSelect);KeyManager.watchKeys();Selection.update();e.stopPropagation();e.preventDefault();return false;};function selectDrag(pos) {Coords.setCurrent(pos);Selection.update();};function newTracker() -{var trk=$('<div></div>').addClass(cssClass('tracker'));$.browser.msie&&trk.css({opacity:0,backgroundColor:'white'});return trk;};function animateTo(a) +{var trk=$('<div></div>').addClass(cssClass('tracker'));return trk;};function animateTo(a) {var x1=a[0]/xscale,y1=a[1]/yscale,x2=a[2]/xscale,y2=a[3]/yscale;if(animating)return;var animto=Coords.flipCoords(x1,y1,x2,y2);var c=Coords.getFixed();var animat=initcr=[c.x,c.y,c.x2,c.y2];var interv=options.animationDelay;var x=animat[0];var y=animat[1];var x2=animat[2];var y2=animat[3];var ix1=animto[0]-initcr[0];var iy1=animto[1]-initcr[1];var ix2=animto[2]-initcr[2];var iy2=animto[3]-initcr[3];var pcent=0;var velocity=options.swingSpeed;Selection.animMode(true);var animator=function() {return function() {pcent+=(100-pcent)/velocity;animat[0]=x+((pcent/100)*ix1);animat[1]=y+((pcent/100)*iy1);animat[2]=x2+((pcent/100)*ix2);animat[3]=y2+((pcent/100)*iy2);if(pcent<100)animateStart();else Selection.done();if(pcent>=99.8)pcent=100;setSelectRaw(animat);};}();function animateStart() diff --git a/htdocs/index.php b/htdocs/index.php index 818da8f9ecd134735d967be07c10326005338b51..5926e4e374cfcc8bca3b2a90060e5867916063c9 100644 --- a/htdocs/index.php +++ b/htdocs/index.php @@ -131,10 +131,9 @@ if (empty($user->societe_id)) print '<br>'; print '<table summary="'.$langs->trans("DolibarrStateBoard").'" class="noborder" width="100%">'; print '<tr class="liste_titre">'; - print '<th class="liste_titre" colspan="2">'.$langs->trans("DolibarrStateBoard").'</th>'; - print '<th class="liste_titre" align="right"> </th>'; + print '<th class="liste_titre">'.$langs->trans("DolibarrStateBoard").'</th>'; print '</tr>'; - print '<tr class="impair"><td colspan="3" class="tdboxstats nohover">'; + print '<tr class="impair"><td class="tdboxstats nohover">'; $var=true; @@ -279,7 +278,7 @@ if (empty($user->societe_id)) $var=!$var; if (!empty($langfile[$key])) $langs->load($langfile[$key]); $text=$langs->trans($titres[$key]); - print '<a href="'.$links[$key].'" class="nobold nounderline">'; + print '<a href="'.$links[$key].'" class="thumbstat nobold nounderline">'; print '<div class="boxstats">'; print img_object("",$icons[$key]).' '.$text.'<br>'; //print '</a>'; diff --git a/htdocs/core/modules/askpricesupplier/doc/index.html b/htdocs/install/doctemplates/supplier_proposal/index.html similarity index 100% rename from htdocs/core/modules/askpricesupplier/doc/index.html rename to htdocs/install/doctemplates/supplier_proposal/index.html diff --git a/htdocs/install/doctemplates/askpricesupplier/template_askpricesupplier.odt b/htdocs/install/doctemplates/supplier_proposal/template_supplier_proposal.odt similarity index 100% rename from htdocs/install/doctemplates/askpricesupplier/template_askpricesupplier.odt rename to htdocs/install/doctemplates/supplier_proposal/template_supplier_proposal.odt diff --git a/htdocs/install/mysql/data/llx_10_c_regions.sql b/htdocs/install/mysql/data/llx_10_c_regions.sql index 6ef8096d8b42caaa8f3de51afee9403ab9d5a3a9..c201cdbbec44ddae0ac11c2899e194069fdd4e17 100644 --- a/htdocs/install/mysql/data/llx_10_c_regions.sql +++ b/htdocs/install/mysql/data/llx_10_c_regions.sql @@ -8,6 +8,7 @@ -- Copyright (C) 2010-2011 Juanjo Menent <jmenent@2byte.es> -- Copyright (C) 2012 Sebastian Neuwert <sebastian.neuwert@modula71.de> -- Copyright (C) 2012 Ricardo Schluter <info@ripasch.nl> +-- Copyright (C) 2015 Ferran Marcet <fmarcet@2byte.es> -- -- 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 @@ -271,3 +272,13 @@ INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) v INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 12, 1215, '', 0, 'Laâyoune-Boujdour-Sakia el Hamra', 1); INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 12, 1216, '', 0, 'Oued Ed-Dahab Lagouira', 1); +-- Regions Bolivia (id country=52) +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5201, '', 0, 'Chuquisaca', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5202, '', 0, 'La Paz', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5203, '', 0, 'Cochabamba', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5204, '', 0, 'Oruro', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5205, '', 0, 'Potosí', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5206, '', 0, 'Tarija', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5207, '', 0, 'Santa Cruz', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5208, '', 0, 'El Beni', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5209, '', 0, 'Pando', 1); \ No newline at end of file diff --git a/htdocs/install/mysql/data/llx_20_c_departements.sql b/htdocs/install/mysql/data/llx_20_c_departements.sql index 76544173bbf4ef4d4784c6c8170f5409cd4c0c94..e8d8c9f6ae1e290dd1fe79f140d29d74239f7bd1 100644 --- a/htdocs/install/mysql/data/llx_20_c_departements.sql +++ b/htdocs/install/mysql/data/llx_20_c_departements.sql @@ -8,6 +8,7 @@ -- Copyright (C) 2010-2013 Juanjo Menent <jmenent@2byte.es> -- Copyright (C) 2012 Sebastian Neuwert <sebastian.neuwert@modula71.de> -- Copyright (C) 2012 Ricardo Schluter <info@ripasch.nl> +-- Copyright (C) 2015 Ferran Marcet <fmarcet@2byte.es> -- -- 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 @@ -1100,3 +1101,116 @@ INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, nc INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES('TN23', 1001, '', 0, '', 'Tunis', 1); INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES('TN24', 1001, '', 0, '', 'Zaghouan', 1); +-- Provinces Bolivia (id country=52) +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('001', 5201, '', 0, '', 'Belisario Boeto', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('002', 5201, '', 0, '', 'Hernando Siles', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('003', 5201, '', 0, '', 'Jaime Zudáñez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('004', 5201, '', 0, '', 'Juana Azurduy de Padilla', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('005', 5201, '', 0, '', 'Luis Calvo', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('006', 5201, '', 0, '', 'Nor Cinti', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('007', 5201, '', 0, '', 'Oropeza', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('008', 5201, '', 0, '', 'Sud Cinti', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('009', 5201, '', 0, '', 'Tomina', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('010', 5201, '', 0, '', 'Yamparáez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('011', 5202, '', 0, '', 'Abel Iturralde', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('012', 5202, '', 0, '', 'Aroma', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('013', 5202, '', 0, '', 'Bautista Saavedra', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('014', 5202, '', 0, '', 'Caranavi', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('015', 5202, '', 0, '', 'Eliodoro Camacho', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('016', 5202, '', 0, '', 'Franz Tamayo', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('017', 5202, '', 0, '', 'Gualberto Villarroel', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('018', 5202, '', 0, '', 'Ingaví', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('019', 5202, '', 0, '', 'Inquisivi', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('020', 5202, '', 0, '', 'José Ramón Loayza', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('021', 5202, '', 0, '', 'Larecaja', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('022', 5202, '', 0, '', 'Los Andes (Bolivia)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('023', 5202, '', 0, '', 'Manco Kapac', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('024', 5202, '', 0, '', 'Muñecas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('025', 5202, '', 0, '', 'Nor Yungas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('026', 5202, '', 0, '', 'Omasuyos', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('027', 5202, '', 0, '', 'Pacajes', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('028', 5202, '', 0, '', 'Pedro Domingo Murillo', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('029', 5202, '', 0, '', 'Sud Yungas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('030', 5202, '', 0, '', 'General José Manuel Pando', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('031', 5203, '', 0, '', 'Arani', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('032', 5203, '', 0, '', 'Arque', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('033', 5203, '', 0, '', 'Ayopaya', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('034', 5203, '', 0, '', 'Bolívar (Bolivia)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('035', 5203, '', 0, '', 'Campero', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('036', 5203, '', 0, '', 'Capinota', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('037', 5203, '', 0, '', 'Cercado (Cochabamba)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('038', 5203, '', 0, '', 'Esteban Arze', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('039', 5203, '', 0, '', 'Germán Jordán', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('040', 5203, '', 0, '', 'José Carrasco', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('041', 5203, '', 0, '', 'Mizque', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('042', 5203, '', 0, '', 'Punata', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('043', 5203, '', 0, '', 'Quillacollo', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('044', 5203, '', 0, '', 'Tapacarí', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('045', 5203, '', 0, '', 'Tiraque', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('046', 5203, '', 0, '', 'Chapare', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('047', 5204, '', 0, '', 'Carangas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('048', 5204, '', 0, '', 'Cercado (Oruro)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('049', 5204, '', 0, '', 'Eduardo Avaroa', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('050', 5204, '', 0, '', 'Ladislao Cabrera', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('051', 5204, '', 0, '', 'Litoral de Atacama', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('052', 5204, '', 0, '', 'Mejillones', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('053', 5204, '', 0, '', 'Nor Carangas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('054', 5204, '', 0, '', 'Pantaleón Dalence', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('055', 5204, '', 0, '', 'Poopó', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('056', 5204, '', 0, '', 'Sabaya', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('057', 5204, '', 0, '', 'Sajama', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('058', 5204, '', 0, '', 'San Pedro de Totora', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('059', 5204, '', 0, '', 'Saucarí', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('060', 5204, '', 0, '', 'Sebastián Pagador', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('061', 5204, '', 0, '', 'Sud Carangas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('062', 5204, '', 0, '', 'Tomás Barrón', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('063', 5205, '', 0, '', 'Alonso de Ibáñez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('064', 5205, '', 0, '', 'Antonio Quijarro', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('065', 5205, '', 0, '', 'Bernardino Bilbao', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('066', 5205, '', 0, '', 'Charcas (Potosí)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('067', 5205, '', 0, '', 'Chayanta', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('068', 5205, '', 0, '', 'Cornelio Saavedra', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('069', 5205, '', 0, '', 'Daniel Campos', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('070', 5205, '', 0, '', 'Enrique Baldivieso', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('071', 5205, '', 0, '', 'José María Linares', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('072', 5205, '', 0, '', 'Modesto Omiste', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('073', 5205, '', 0, '', 'Nor Chichas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('074', 5205, '', 0, '', 'Nor Lípez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('075', 5205, '', 0, '', 'Rafael Bustillo', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('076', 5205, '', 0, '', 'Sud Chichas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('077', 5205, '', 0, '', 'Sud Lípez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('078', 5205, '', 0, '', 'Tomás Frías', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('079', 5206, '', 0, '', 'Aniceto Arce', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('080', 5206, '', 0, '', 'Burdet O''Connor', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('081', 5206, '', 0, '', 'Cercado (Tarija)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('082', 5206, '', 0, '', 'Eustaquio Méndez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('083', 5206, '', 0, '', 'José María Avilés', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('084', 5206, '', 0, '', 'Gran Chaco', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('085', 5207, '', 0, '', 'Andrés Ibáñez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('086', 5207, '', 0, '', 'Caballero', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('087', 5207, '', 0, '', 'Chiquitos', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('088', 5207, '', 0, '', 'Cordillera (Bolivia)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('089', 5207, '', 0, '', 'Florida', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('090', 5207, '', 0, '', 'Germán Busch', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('091', 5207, '', 0, '', 'Guarayos', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('092', 5207, '', 0, '', 'Ichilo', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('093', 5207, '', 0, '', 'Obispo Santistevan', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('094', 5207, '', 0, '', 'Sara', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('095', 5207, '', 0, '', 'Vallegrande', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('096', 5207, '', 0, '', 'Velasco', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('097', 5207, '', 0, '', 'Warnes', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('098', 5207, '', 0, '', 'Ángel Sandóval', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('099', 5207, '', 0, '', 'Ñuflo de Chaves', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('100', 5208, '', 0, '', 'Cercado (Beni)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('101', 5208, '', 0, '', 'Iténez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('102', 5208, '', 0, '', 'Mamoré', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('103', 5208, '', 0, '', 'Marbán', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('104', 5208, '', 0, '', 'Moxos', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('105', 5208, '', 0, '', 'Vaca Díez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('106', 5208, '', 0, '', 'Yacuma', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('107', 5208, '', 0, '', 'General José Ballivián Segurola', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('108', 5209, '', 0, '', 'Abuná', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('109', 5209, '', 0, '', 'Madre de Dios', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('110', 5209, '', 0, '', 'Manuripi', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('111', 5209, '', 0, '', 'Nicolás Suárez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('112', 5209, '', 0, '', 'General Federico Román', 1); \ No newline at end of file diff --git a/htdocs/install/mysql/migration/3.7.0-3.8.0.sql b/htdocs/install/mysql/migration/3.7.0-3.8.0.sql index 2241c35f00db8fdac6b16be49531f95437a80300..2c0a788e4464fa4b0e603603e02bd1c488958e77 100755 --- a/htdocs/install/mysql/migration/3.7.0-3.8.0.sql +++ b/htdocs/install/mysql/migration/3.7.0-3.8.0.sql @@ -14,7 +14,7 @@ -- To make pk to be auto increment (mysql): VMYSQL4.3 ALTER TABLE llx_c_shipment_mode CHANGE COLUMN rowid rowid INTEGER NOT NULL AUTO_INCREMENT; -- To make pk to be auto increment (postgres): VPGSQL8.2 NOT POSSIBLE. MUST DELETE/CREATE TABLE -- To set a field as NULL: VPGSQL8.2 ALTER TABLE llx_table ALTER COLUMN name DROP NOT NULL; --- To set a field as default NULL: VPGSQL8.2 ALTER TABLE llx_table ALTER COLUMN name SET DEFAULT NULL; +-- To set a field as DEFAULT NULL: VPGSQL8.2 ALTER TABLE llx_table ALTER COLUMN name SET DEFAULT NULL; -- To delete orphelins: VMYSQL4.1 DELETE FROM llx_usergroup_user WHERE fk_usergroup NOT IN (SELECT rowid from llx_usergroup); -- To delete orphelins: VPGSQL8.2 DELETE FROM llx_usergroup_user WHERE fk_user NOT IN (SELECT rowid from llx_user); @@ -30,8 +30,8 @@ insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,localtax1,localtax1_typ -- Taiwan VAT Rates insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 2131, 213, '5', '0', 'VAT 5%', 1); -ALTER TABLE llx_societe_rib ADD COLUMN rum varchar(32) after default_rib; -ALTER TABLE llx_societe_rib ADD COLUMN frstrecur varchar(16) default 'FRST' after rum; +ALTER TABLE llx_societe_rib ADD COLUMN rum varchar(32) AFTER default_rib; +ALTER TABLE llx_societe_rib ADD COLUMN frstrecur varchar(16) DEFAULT 'FRST' AFTER rum; ALTER TABLE llx_cronjob ADD COLUMN entity integer DEFAULT 0; ALTER TABLE llx_cronjob MODIFY COLUMN params text NULL; @@ -45,16 +45,16 @@ create table llx_loan tms timestamp, label varchar(80) NOT NULL, fk_bank integer, - capital real default 0 NOT NULL, + capital real DEFAULT 0 NOT NULL, datestart date, dateend date, nbterm real, rate double NOT NULL, note_private text, note_public text, - capital_position real default 0, + capital_position real DEFAULT 0, date_position date, - paid smallint default 0 NOT NULL, + paid smallint DEFAULT 0 NOT NULL, accountancy_account_capital varchar(32), accountancy_account_insurance varchar(32), accountancy_account_interest varchar(32), @@ -83,10 +83,10 @@ create table llx_payment_loan )ENGINE=innodb; ALTER TABLE llx_extrafields ADD COLUMN fieldrequired integer DEFAULT 0; -ALTER TABLE llx_extrafields ADD COLUMN perms varchar(255) after fieldrequired; -ALTER TABLE llx_extrafields ADD COLUMN list integer DEFAULT 0 after perms; +ALTER TABLE llx_extrafields ADD COLUMN perms varchar(255) AFTER fieldrequired; +ALTER TABLE llx_extrafields ADD COLUMN list integer DEFAULT 0 AFTER perms; -ALTER TABLE llx_payment_salary ADD COLUMN salary real after datev; +ALTER TABLE llx_payment_salary ADD COLUMN salary real AFTER datev; ALTER TABLE llx_payment_salary ADD INDEX idx_payment_salary_ref (num_payment); ALTER TABLE llx_payment_salary ADD INDEX idx_payment_salary_user (fk_user, entity); @@ -98,7 +98,7 @@ ALTER TABLE llx_payment_salary ADD CONSTRAINT fk_payment_salary_user FOREIGN KEY UPDATE llx_projet_task_time SET task_datehour = task_date where task_datehour IS NULL; -ALTER TABLE llx_projet_task_time ADD COLUMN task_date_withhour integer DEFAULT 0 after task_datehour; +ALTER TABLE llx_projet_task_time ADD COLUMN task_date_withhour integer DEFAULT 0 AFTER task_datehour; ALTER TABLE llx_projet_task MODIFY COLUMN duration_effective real DEFAULT 0 NULL; ALTER TABLE llx_projet_task MODIFY COLUMN planned_workload real DEFAULT 0 NULL; @@ -129,8 +129,8 @@ ALTER TABLE llx_product_fournisseur_price ADD COLUMN fk_supplier_price_expressio ALTER TABLE llx_product ADD COLUMN fk_price_expression integer DEFAULT NULL; ALTER TABLE llx_product_price ADD COLUMN fk_price_expression integer DEFAULT NULL; -ALTER TABLE llx_product ADD COLUMN fifo double(24,8) after pmp; -ALTER TABLE llx_product ADD COLUMN lifo double(24,8) after fifo; +ALTER TABLE llx_product ADD COLUMN fifo double(24,8) AFTER pmp; +ALTER TABLE llx_product ADD COLUMN lifo double(24,8) AFTER fifo; --create table for user conf of printing driver @@ -148,8 +148,6 @@ CREATE TABLE llx_printing userid integer )ENGINE=innodb; -ALTER TABLE llx_product_fournisseur_price ADD COLUMN fk_price_expression integer DEFAULT NULL; - -- Add situation invoices ALTER TABLE llx_facture ADD COLUMN situation_cycle_ref smallint; ALTER TABLE llx_facture ADD COLUMN situation_counter smallint; @@ -244,7 +242,7 @@ CREATE TABLE llx_expensereport ( fk_user_cancel integer DEFAULT NULL, fk_statut integer NOT NULL, -- 1=brouillon, 2=validé (attente approb), 4=annulé, 5=approuvé, 6=payed, 99=refusé fk_c_paiement integer DEFAULT NULL, - paid smallint default 0 NOT NULL, + paid smallint DEFAULT 0 NOT NULL, note_public text, note_private text, detail_refuse varchar(255) DEFAULT NULL, @@ -330,15 +328,15 @@ ALTER TABLE llx_facture_fourn_det_extrafields ADD INDEX idx_facture_fourn_det_ex ALTER TABLE llx_facture_fourn_det ADD COLUMN special_code integer DEFAULT 0; ALTER TABLE llx_facture_fourn_det ADD COLUMN rang integer DEFAULT 0; -ALTER TABLE llx_facture_fourn_det ADD COLUMN fk_parent_line integer NULL after fk_facture_fourn; +ALTER TABLE llx_facture_fourn_det ADD COLUMN fk_parent_line integer NULL AFTER fk_facture_fourn; ALTER TABLE llx_commande_fournisseurdet ADD COLUMN special_code integer DEFAULT 0; ALTER TABLE llx_commande_fournisseurdet ADD COLUMN rang integer DEFAULT 0; -ALTER TABLE llx_commande_fournisseurdet ADD COLUMN fk_parent_line integer NULL after fk_commande; +ALTER TABLE llx_commande_fournisseurdet ADD COLUMN fk_parent_line integer NULL AFTER fk_commande; ALTER TABLE llx_projet ADD COLUMN date_close datetime DEFAULT NULL; ALTER TABLE llx_projet ADD COLUMN fk_user_close integer DEFAULT NULL; -ALTER TABLE llx_projet ADD COLUMN fk_opp_status integer DEFAULT NULL after fk_statut; +ALTER TABLE llx_projet ADD COLUMN fk_opp_status integer DEFAULT NULL AFTER fk_statut; ALTER TABLE llx_projet ADD COLUMN opp_amount double(24,8) DEFAULT NULL; @@ -430,8 +428,8 @@ CREATE TABLE llx_askpricesupplierdet_extrafields ( -- End Module AskPriceSupplier -- -ALTER TABLE llx_commande_fournisseur ADD COLUMN date_approve2 datetime after date_approve; -ALTER TABLE llx_commande_fournisseur ADD COLUMN fk_user_approve2 integer after fk_user_approve; +ALTER TABLE llx_commande_fournisseur ADD COLUMN date_approve2 datetime AFTER date_approve; +ALTER TABLE llx_commande_fournisseur ADD COLUMN fk_user_approve2 integer AFTER fk_user_approve; ALTER TABLE llx_societe ADD COLUMN fk_incoterms integer; ALTER TABLE llx_societe ADD COLUMN location_incoterms varchar(255); @@ -476,9 +474,9 @@ ALTER TABLE llx_societe_extrafields DROP INDEX idx_societe_extrafields; ALTER TABLE llx_societe_extrafields ADD UNIQUE INDEX uk_societe_extrafields (fk_object); -- Module Donation -ALTER TABLE llx_don ADD COLUMN fk_country integer NOT NULL after country; +ALTER TABLE llx_don ADD COLUMN fk_country integer NOT NULL DEFAULT 0 AFTER country; ALTER TABLE llx_don CHANGE COLUMN fk_paiement fk_payment integer; -ALTER TABLE llx_don ADD COLUMN paid smallint default 0 NOT NULL after fk_payment; +ALTER TABLE llx_don ADD COLUMN paid smallint DEFAULT 0 NOT NULL AFTER fk_payment; ALTER TABLE llx_don CHANGE COLUMN fk_don_projet fk_projet integer NULL; ALTER TABLE llx_don CHANGE COLUMN fk_project fk_projet integer NULL; @@ -569,7 +567,7 @@ create table llx_c_price_global_variable_updater )ENGINE=innodb; ALTER TABLE llx_adherent CHANGE COLUMN note note_private text DEFAULT NULL; -ALTER TABLE llx_adherent ADD COLUMN note_public text DEFAULT NULL after note_private; +ALTER TABLE llx_adherent ADD COLUMN note_public text DEFAULT NULL AFTER note_private; CREATE TABLE IF NOT EXISTS llx_propal_merge_pdf_product ( rowid integer NOT NULL auto_increment PRIMARY KEY, @@ -607,28 +605,28 @@ INSERT INTO llx_c_units ( code, label, short_label, active) VALUES ('M2','square INSERT INTO llx_c_units ( code, label, short_label, active) VALUES ('M3','cubic meter','m3', 1); INSERT INTO llx_c_units ( code, label, short_label, active) VALUES ('L','liter','l', 1); -alter table llx_product add fk_unit integer default NULL; +alter table llx_product add fk_unit integer DEFAULT NULL; ALTER TABLE llx_product ADD CONSTRAINT fk_product_fk_unit FOREIGN KEY (fk_unit) REFERENCES llx_c_units (rowid); -alter table llx_facturedet_rec add fk_unit integer default NULL; +alter table llx_facturedet_rec add fk_unit integer DEFAULT NULL; ALTER TABLE llx_facturedet_rec ADD CONSTRAINT fk_facturedet_rec_fk_unit FOREIGN KEY (fk_unit) REFERENCES llx_c_units (rowid); -alter table llx_facturedet add fk_unit integer default NULL; +alter table llx_facturedet add fk_unit integer DEFAULT NULL; ALTER TABLE llx_facturedet ADD CONSTRAINT fk_facturedet_fk_unit FOREIGN KEY (fk_unit) REFERENCES llx_c_units (rowid); -alter table llx_propaldet add fk_unit integer default NULL; +alter table llx_propaldet add fk_unit integer DEFAULT NULL; ALTER TABLE llx_propaldet ADD CONSTRAINT fk_propaldet_fk_unit FOREIGN KEY (fk_unit) REFERENCES llx_c_units (rowid); -alter table llx_commandedet add fk_unit integer default NULL; +alter table llx_commandedet add fk_unit integer DEFAULT NULL; ALTER TABLE llx_commandedet ADD CONSTRAINT fk_commandedet_fk_unit FOREIGN KEY (fk_unit) REFERENCES llx_c_units (rowid); -alter table llx_contratdet add fk_unit integer default NULL; +alter table llx_contratdet add fk_unit integer DEFAULT NULL; ALTER TABLE llx_contratdet ADD CONSTRAINT fk_contratdet_fk_unit FOREIGN KEY (fk_unit) REFERENCES llx_c_units (rowid); -alter table llx_commande_fournisseurdet add fk_unit integer default NULL; +alter table llx_commande_fournisseurdet add fk_unit integer DEFAULT NULL; ALTER TABLE llx_commande_fournisseurdet ADD CONSTRAINT fk_commande_fournisseurdet_fk_unit FOREIGN KEY (fk_unit) REFERENCES llx_c_units (rowid); -alter table llx_facture_fourn_det add fk_unit integer default NULL; +alter table llx_facture_fourn_det add fk_unit integer DEFAULT NULL; ALTER TABLE llx_facture_fourn_det ADD CONSTRAINT fk_facture_fourn_det_fk_unit FOREIGN KEY (fk_unit) REFERENCES llx_c_units (rowid); diff --git a/htdocs/install/mysql/migration/3.8.0-3.9.0.sql b/htdocs/install/mysql/migration/3.8.0-3.9.0.sql index 20ec018ad28fbe5cc4358ed1eee8a4e908cb054e..74a6d89ab23f96f8aea07e9752e6a846b0763f38 100755 --- a/htdocs/install/mysql/migration/3.8.0-3.9.0.sql +++ b/htdocs/install/mysql/migration/3.8.0-3.9.0.sql @@ -15,6 +15,7 @@ -- To make pk to be auto increment (postgres): VPGSQL8.2 NOT POSSIBLE. MUST DELETE/CREATE TABLE -- To set a field as NULL: VPGSQL8.2 ALTER TABLE llx_table ALTER COLUMN name DROP 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. -- -- VPGSQL8.2 DELETE FROM llx_usergroup_user WHERE fk_user NOT IN (SELECT rowid from llx_user); -- -- VMYSQL4.1 DELETE FROM llx_usergroup_user WHERE fk_usergroup NOT IN (SELECT rowid from llx_usergroup); @@ -23,6 +24,12 @@ ALTER TABLE llx_don ADD COLUMN fk_country integer NOT NULL DEFAULT 0 after country; +ALTER TABLE llx_askpricesupplier RENAME TO llx_supplier_proposal; +ALTER TABLE llx_askpricesupplierdet RENAME TO llx_supplier_proposaldet; +ALTER TABLE llx_askpricesupplier_extrafields RENAME TO llx_supplier_proposal_extrafields; +ALTER TABLE llx_askpricesupplierdet_extrafields RENAME TO llx_supplier_proposaldet_extrafields; +ALTER TABLE llx_supplier_proposaldet CHANGE COLUMN fk_asksupplierprice fk_supplier_proposal integer NOT NULL; + -- Fix bad data update llx_opensurvey_sondage set format = 'D' where format = 'D+'; update llx_opensurvey_sondage set format = 'A' where format = 'A+'; @@ -48,6 +55,11 @@ ALTER TABLE llx_societe_commerciaux ADD COLUMN import_key varchar(14) AFTER fk_u ALTER TABLE llx_categorie ADD COLUMN color varchar(8); +ALTER TABLE llx_cronjob ADD COLUMN maxrun integer NOT NULL DEFAULT 0; +ALTER TABLE llx_cronjob ADD COLUMN autodelete integer DEFAULT 0; +ALTER TABLE llx_cronjob ADD COLUMN fk_mailing integer DEFAULT NULL; + + create table llx_overwrite_trans ( rowid integer AUTO_INCREMENT PRIMARY KEY, @@ -66,7 +78,7 @@ ALTER TABLE llx_paiement ADD COLUMN ref varchar(30) NOT NULL DEFAULT '' AFTER ro ALTER TABLE llx_socpeople ADD COLUMN photo varchar(255) AFTER skype; ALTER TABLE llx_user_param MODIFY COLUMN param varchar(255) NOT NULL DEFAULT ''; -ALTER TABLE llx_user_param MODIFY COLUMN value text NOT NULL DEFAULT ''; +ALTER TABLE llx_user_param MODIFY COLUMN value text NOT NULL; ALTER TABLE llx_expedition ADD COLUMN import_key varchar(14); ALTER TABLE llx_expedition ADD COLUMN extraparams varchar(255); @@ -305,6 +317,131 @@ ALTER TABLE llx_categorie_project ADD CONSTRAINT fk_categorie_project_categorie_ ALTER TABLE llx_categorie_project ADD CONSTRAINT fk_categorie_project_fk_project FOREIGN KEY (fk_project) REFERENCES llx_projet (rowid); - - - +ALTER TABLE llx_c_tva ADD COLUMN code varchar(10) DEFAULT '' after fk_pays; +DROP INDEX uk_c_tva_id ON llx_c_tva; +ALTER TABLE llx_c_tva ADD UNIQUE INDEX uk_c_tva_id (fk_pays, code, taux, recuperableonly); + +-- Regions Bolivia (id country=52) +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5201, '', 0, 'Chuquisaca', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5202, '', 0, 'La Paz', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5203, '', 0, 'Cochabamba', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5204, '', 0, 'Oruro', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5205, '', 0, 'Potosí', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5206, '', 0, 'Tarija', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5207, '', 0, 'Santa Cruz', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5208, '', 0, 'El Beni', 1); +INSERT INTO llx_c_regions (fk_pays, code_region, cheflieu, tncc, nom, active) values ( 52, 5209, '', 0, 'Pando', 1); + +-- Provinces Bolivia (id country=52) +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('001', 5201, '', 0, '', 'Belisario Boeto', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('002', 5201, '', 0, '', 'Hernando Siles', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('003', 5201, '', 0, '', 'Jaime Zudáñez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('004', 5201, '', 0, '', 'Juana Azurduy de Padilla', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('005', 5201, '', 0, '', 'Luis Calvo', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('006', 5201, '', 0, '', 'Nor Cinti', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('007', 5201, '', 0, '', 'Oropeza', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('008', 5201, '', 0, '', 'Sud Cinti', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('009', 5201, '', 0, '', 'Tomina', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('010', 5201, '', 0, '', 'Yamparáez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('011', 5202, '', 0, '', 'Abel Iturralde', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('012', 5202, '', 0, '', 'Aroma', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('013', 5202, '', 0, '', 'Bautista Saavedra', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('014', 5202, '', 0, '', 'Caranavi', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('015', 5202, '', 0, '', 'Eliodoro Camacho', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('016', 5202, '', 0, '', 'Franz Tamayo', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('017', 5202, '', 0, '', 'Gualberto Villarroel', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('018', 5202, '', 0, '', 'Ingaví', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('019', 5202, '', 0, '', 'Inquisivi', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('020', 5202, '', 0, '', 'José Ramón Loayza', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('021', 5202, '', 0, '', 'Larecaja', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('022', 5202, '', 0, '', 'Los Andes (Bolivia)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('023', 5202, '', 0, '', 'Manco Kapac', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('024', 5202, '', 0, '', 'Muñecas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('025', 5202, '', 0, '', 'Nor Yungas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('026', 5202, '', 0, '', 'Omasuyos', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('027', 5202, '', 0, '', 'Pacajes', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('028', 5202, '', 0, '', 'Pedro Domingo Murillo', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('029', 5202, '', 0, '', 'Sud Yungas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('030', 5202, '', 0, '', 'General José Manuel Pando', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('031', 5203, '', 0, '', 'Arani', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('032', 5203, '', 0, '', 'Arque', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('033', 5203, '', 0, '', 'Ayopaya', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('034', 5203, '', 0, '', 'Bolívar (Bolivia)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('035', 5203, '', 0, '', 'Campero', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('036', 5203, '', 0, '', 'Capinota', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('037', 5203, '', 0, '', 'Cercado (Cochabamba)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('038', 5203, '', 0, '', 'Esteban Arze', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('039', 5203, '', 0, '', 'Germán Jordán', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('040', 5203, '', 0, '', 'José Carrasco', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('041', 5203, '', 0, '', 'Mizque', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('042', 5203, '', 0, '', 'Punata', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('043', 5203, '', 0, '', 'Quillacollo', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('044', 5203, '', 0, '', 'Tapacarí', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('045', 5203, '', 0, '', 'Tiraque', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('046', 5203, '', 0, '', 'Chapare', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('047', 5204, '', 0, '', 'Carangas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('048', 5204, '', 0, '', 'Cercado (Oruro)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('049', 5204, '', 0, '', 'Eduardo Avaroa', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('050', 5204, '', 0, '', 'Ladislao Cabrera', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('051', 5204, '', 0, '', 'Litoral de Atacama', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('052', 5204, '', 0, '', 'Mejillones', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('053', 5204, '', 0, '', 'Nor Carangas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('054', 5204, '', 0, '', 'Pantaleón Dalence', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('055', 5204, '', 0, '', 'Poopó', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('056', 5204, '', 0, '', 'Sabaya', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('057', 5204, '', 0, '', 'Sajama', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('058', 5204, '', 0, '', 'San Pedro de Totora', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('059', 5204, '', 0, '', 'Saucarí', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('060', 5204, '', 0, '', 'Sebastián Pagador', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('061', 5204, '', 0, '', 'Sud Carangas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('062', 5204, '', 0, '', 'Tomás Barrón', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('063', 5205, '', 0, '', 'Alonso de Ibáñez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('064', 5205, '', 0, '', 'Antonio Quijarro', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('065', 5205, '', 0, '', 'Bernardino Bilbao', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('066', 5205, '', 0, '', 'Charcas (Potosí)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('067', 5205, '', 0, '', 'Chayanta', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('068', 5205, '', 0, '', 'Cornelio Saavedra', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('069', 5205, '', 0, '', 'Daniel Campos', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('070', 5205, '', 0, '', 'Enrique Baldivieso', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('071', 5205, '', 0, '', 'José María Linares', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('072', 5205, '', 0, '', 'Modesto Omiste', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('073', 5205, '', 0, '', 'Nor Chichas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('074', 5205, '', 0, '', 'Nor Lípez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('075', 5205, '', 0, '', 'Rafael Bustillo', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('076', 5205, '', 0, '', 'Sud Chichas', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('077', 5205, '', 0, '', 'Sud Lípez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('078', 5205, '', 0, '', 'Tomás Frías', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('079', 5206, '', 0, '', 'Aniceto Arce', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('080', 5206, '', 0, '', 'Burdet O''Connor', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('081', 5206, '', 0, '', 'Cercado (Tarija)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('082', 5206, '', 0, '', 'Eustaquio Méndez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('083', 5206, '', 0, '', 'José María Avilés', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('084', 5206, '', 0, '', 'Gran Chaco', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('085', 5207, '', 0, '', 'Andrés Ibáñez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('086', 5207, '', 0, '', 'Caballero', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('087', 5207, '', 0, '', 'Chiquitos', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('088', 5207, '', 0, '', 'Cordillera (Bolivia)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('089', 5207, '', 0, '', 'Florida', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('090', 5207, '', 0, '', 'Germán Busch', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('091', 5207, '', 0, '', 'Guarayos', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('092', 5207, '', 0, '', 'Ichilo', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('093', 5207, '', 0, '', 'Obispo Santistevan', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('094', 5207, '', 0, '', 'Sara', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('095', 5207, '', 0, '', 'Vallegrande', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('096', 5207, '', 0, '', 'Velasco', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('097', 5207, '', 0, '', 'Warnes', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('098', 5207, '', 0, '', 'Ángel Sandóval', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('099', 5207, '', 0, '', 'Ñuflo de Chaves', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('100', 5208, '', 0, '', 'Cercado (Beni)', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('101', 5208, '', 0, '', 'Iténez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('102', 5208, '', 0, '', 'Mamoré', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('103', 5208, '', 0, '', 'Marbán', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('104', 5208, '', 0, '', 'Moxos', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('105', 5208, '', 0, '', 'Vaca Díez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('106', 5208, '', 0, '', 'Yacuma', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('107', 5208, '', 0, '', 'General José Ballivián Segurola', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('108', 5209, '', 0, '', 'Abuná', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('109', 5209, '', 0, '', 'Madre de Dios', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('110', 5209, '', 0, '', 'Manuripi', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('111', 5209, '', 0, '', 'Nicolás Suárez', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('112', 5209, '', 0, '', 'General Federico Román', 1); diff --git a/htdocs/install/mysql/tables/llx_c_tva.key.sql b/htdocs/install/mysql/tables/llx_c_tva.key.sql index e1ea6d37dabdce897a37181b8a98111658d2635c..7911284fdb16bea9bbe0eb10a1f1f6468094c99f 100644 --- a/htdocs/install/mysql/tables/llx_c_tva.key.sql +++ b/htdocs/install/mysql/tables/llx_c_tva.key.sql @@ -1,5 +1,5 @@ -- ======================================================================== --- Copyright (C) 2014 Laurent Destailleur <eldy@users.sourceforge.net> +-- Copyright (C) 2014-2015 Laurent Destailleur <eldy@users.sourceforge.net> -- -- 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 @@ -16,4 +16,6 @@ -- -- ======================================================================== -ALTER TABLE llx_c_tva ADD UNIQUE INDEX uk_c_tva_id (fk_pays, taux, recuperableonly); +ALTER TABLE llx_c_tva ADD UNIQUE INDEX uk_c_tva_id (fk_pays, code, taux, recuperableonly); + +-- ALTER TABLE llx_c_tva ADD UNIQUE INDEX uk_c_tva_id (fk_pays, code, recuperableonly); -- Not yet possible for compatibility reason, where old code is '' diff --git a/htdocs/install/mysql/tables/llx_c_tva.sql b/htdocs/install/mysql/tables/llx_c_tva.sql index dec81d43ed35518c32c19d15c86fd3e16efa5818..91e141ad4d1d877214a6859faf12731b8d484303 100644 --- a/htdocs/install/mysql/tables/llx_c_tva.sql +++ b/htdocs/install/mysql/tables/llx_c_tva.sql @@ -22,6 +22,7 @@ create table llx_c_tva ( rowid integer NOT NULL AUTO_INCREMENT PRIMARY KEY, fk_pays integer NOT NULL, + code varchar(10) DEFAULT '', -- a key to describe vat entry, for example FR20 taux double NOT NULL, localtax1 varchar(20) NOT NULL DEFAULT '0', localtax1_type varchar(10) NOT NULL DEFAULT '0', diff --git a/htdocs/install/mysql/tables/llx_cronjob.sql b/htdocs/install/mysql/tables/llx_cronjob.sql index 5580b5ab83099bac71d5ab6587223f41fdfc1d44..96784189b053e80e8a6d318585d6ac84adf5851c 100644 --- a/htdocs/install/mysql/tables/llx_cronjob.sql +++ b/htdocs/install/mysql/tables/llx_cronjob.sql @@ -26,27 +26,32 @@ CREATE TABLE llx_cronjob jobtype varchar(10) NOT NULL, label text NOT NULL, command varchar(255), - classesname varchar(255), + classesname varchar(255), objectname varchar(255), methodename varchar(255), params text, md5params varchar(32), - module_name varchar(255), + module_name varchar(255), priority integer DEFAULT 0, - datelastrun datetime, -- date last run and when should be next - datenextrun datetime, -- job will be run if current date higher that this date + datelastrun datetime, -- date last run and when should be next + datenextrun datetime, -- job will be run if current date higher that this date datestart datetime, -- before this date no jobs will be run dateend datetime, -- after this date, no more jobs will be run - datelastresult datetime, - lastresult text, - lastoutput text, - unitfrequency integer NOT NULL DEFAULT 0, + datelastresult datetime, + lastresult text, + lastoutput text, + unitfrequency integer NOT NULL DEFAULT 0, frequency integer NOT NULL DEFAULT 0, - nbrun integer, + maxrun integer NOT NULL DEFAULT 0, -- set this to 1 for a job queued for on run only + nbrun integer, -- nb of run complete (failed or not) + autodelete integer DEFAULT 0, -- Job can be delete once finished status integer NOT NULL DEFAULT 1, - fk_user_author integer DEFAULT NULL, - fk_user_mod integer DEFAULT NULL, - note text, + fk_user_author integer DEFAULT NULL, + fk_user_mod integer DEFAULT NULL, + fk_mailing integer DEFAULT NULL, -- id of emailing if job was queued to send mass emailing + note text, libname varchar(255), entity integer DEFAULT 0 )ENGINE=innodb; + + diff --git a/htdocs/install/mysql/tables/llx_askpricesupplier.sql b/htdocs/install/mysql/tables/llx_supplier_proposal.sql similarity index 98% rename from htdocs/install/mysql/tables/llx_askpricesupplier.sql rename to htdocs/install/mysql/tables/llx_supplier_proposal.sql index ff62595bd0b3ed1b63ff3e9d684617f67bf19995..ef307b85c9fb2de3b99785d3d810d60faa892055 100644 --- a/htdocs/install/mysql/tables/llx_askpricesupplier.sql +++ b/htdocs/install/mysql/tables/llx_supplier_proposal.sql @@ -15,7 +15,7 @@ -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- ======================================================================== -CREATE TABLE llx_askpricesupplier ( +CREATE TABLE llx_supplier_proposal ( rowid integer NOT NULL AUTO_INCREMENT PRIMARY KEY, ref varchar(30) NOT NULL, entity integer NOT NULL DEFAULT '1', diff --git a/htdocs/install/mysql/tables/llx_askpricesupplier_extrafields.sql b/htdocs/install/mysql/tables/llx_supplier_proposal_extrafields.sql similarity index 95% rename from htdocs/install/mysql/tables/llx_askpricesupplier_extrafields.sql rename to htdocs/install/mysql/tables/llx_supplier_proposal_extrafields.sql index 4552b4d0079b4aa992b5ecb88beb6698a713a00a..fdd12cbf317f5ed080456f0dac46ec856286e6c1 100644 --- a/htdocs/install/mysql/tables/llx_askpricesupplier_extrafields.sql +++ b/htdocs/install/mysql/tables/llx_supplier_proposal_extrafields.sql @@ -15,7 +15,7 @@ -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- ======================================================================== -CREATE TABLE llx_askpricesupplier_extrafields ( +CREATE TABLE llx_supplier_proposal_extrafields ( rowid integer AUTO_INCREMENT PRIMARY KEY, tms timestamp, fk_object integer NOT NULL, diff --git a/htdocs/install/mysql/tables/llx_askpricesupplierdet.sql b/htdocs/install/mysql/tables/llx_supplier_proposaldet.sql similarity index 95% rename from htdocs/install/mysql/tables/llx_askpricesupplierdet.sql rename to htdocs/install/mysql/tables/llx_supplier_proposaldet.sql index 5755fdcb83fa8972593718765b37f00fd1b953a3..81b6f2ef2ccaa2969aee7188d05247bea16df4d1 100644 --- a/htdocs/install/mysql/tables/llx_askpricesupplierdet.sql +++ b/htdocs/install/mysql/tables/llx_supplier_proposaldet.sql @@ -15,9 +15,9 @@ -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- ======================================================================== -CREATE TABLE llx_askpricesupplierdet ( +CREATE TABLE llx_supplier_proposaldet ( rowid integer NOT NULL AUTO_INCREMENT PRIMARY KEY, - fk_askpricesupplier integer NOT NULL, + fk_supplier_proposal integer NOT NULL, fk_parent_line integer DEFAULT NULL, fk_product integer DEFAULT NULL, label varchar(255) DEFAULT NULL, diff --git a/htdocs/install/mysql/tables/llx_askpricesupplierdet_extrafields.sql b/htdocs/install/mysql/tables/llx_supplier_proposaldet_extrafields.sql similarity index 95% rename from htdocs/install/mysql/tables/llx_askpricesupplierdet_extrafields.sql rename to htdocs/install/mysql/tables/llx_supplier_proposaldet_extrafields.sql index 7bfab6e408c0590a29c214b094538f5b061e6f51..7bf951225b81f3002a6df0269a048fe8a85f1c8e 100644 --- a/htdocs/install/mysql/tables/llx_askpricesupplierdet_extrafields.sql +++ b/htdocs/install/mysql/tables/llx_supplier_proposaldet_extrafields.sql @@ -15,7 +15,7 @@ -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- ======================================================================== -CREATE TABLE llx_askpricesupplierdet_extrafields ( +CREATE TABLE llx_supplier_proposaldet_extrafields ( rowid integer AUTO_INCREMENT PRIMARY KEY, tms timestamp, fk_object integer NOT NULL, diff --git a/htdocs/langs/ar_SA/admin.lang b/htdocs/langs/ar_SA/admin.lang index 6cd2f14954de8a1bc96a15d8ce089274edccc613..1902385df15270d0e13caec80ad642bc5303e06b 100644 --- a/htdocs/langs/ar_SA/admin.lang +++ b/htdocs/langs/ar_SA/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=خط من المنتجات / الخدمات ذات ا FreeLegalTextOnProposal=نص تجارية حرة على مقترحات WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=أوامر إدارة الإعداد OrdersNumberingModules=أوامر الترقيم نمائط diff --git a/htdocs/langs/ar_SA/main.lang b/htdocs/langs/ar_SA/main.lang index 9a77b5900fa7a574ba54d871b6461001b26f4ae1..665bbde94611b1560bba5a23b0e675aad484a196 100644 --- a/htdocs/langs/ar_SA/main.lang +++ b/htdocs/langs/ar_SA/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=سعر الوحدة (صافي) UnitPriceTTC=سعر الوحدة PriceU=ارتفاع PriceUHT=ارتفاع (صافي) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=مبلغ AmountInvoice=مبلغ الفاتورة diff --git a/htdocs/langs/ar_SA/other.lang b/htdocs/langs/ar_SA/other.lang index 92f6ed52491f09f19f4df7fc262be884a1f1634c..a9f6eab62fa330903f33b01517e6f78927fdff9b 100644 --- a/htdocs/langs/ar_SA/other.lang +++ b/htdocs/langs/ar_SA/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=هذا هو البريد <b>الاختبار</b> (الا PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/ar_SA/printipp.lang b/htdocs/langs/ar_SA/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/ar_SA/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/bg_BG/admin.lang b/htdocs/langs/bg_BG/admin.lang index 76d8d3824276bfeda282be157d6eeb5d7b3fd463..39ee84bcef7d36fa55edf579431752679e352037 100644 --- a/htdocs/langs/bg_BG/admin.lang +++ b/htdocs/langs/bg_BG/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Линия на продукт / услуга с ну FreeLegalTextOnProposal=Свободен текст на търговски предложения WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Настройки за управление на поръчки OrdersNumberingModules=Поръчки номериране модули diff --git a/htdocs/langs/bg_BG/main.lang b/htdocs/langs/bg_BG/main.lang index 91eabdab90ba7d52952a17c00a53b647fbb933c4..851ad25c81d811828384f1466918ab0c5783e46c 100644 --- a/htdocs/langs/bg_BG/main.lang +++ b/htdocs/langs/bg_BG/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Единична цена (нето) UnitPriceTTC=Единична цена PriceU=U.P. PriceUHT=U.P. (нето) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (с данък) Amount=Сума AmountInvoice=Фактурирана стойност diff --git a/htdocs/langs/bg_BG/other.lang b/htdocs/langs/bg_BG/other.lang index 623efc8863cfea422a55e1536182bd09ba3add50..1c8187eee155ef2a8da95865e42f234194b71769 100644 --- a/htdocs/langs/bg_BG/other.lang +++ b/htdocs/langs/bg_BG/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Това е <b>тестов</b> имейл (думата PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/bg_BG/printipp.lang b/htdocs/langs/bg_BG/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/bg_BG/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/bn_BD/admin.lang b/htdocs/langs/bn_BD/admin.lang index a5ee8d10ba53c1a5685dda891ec88dea5ed18749..887ba75d0e01eb91ce92938ebddea706524dd3b3 100644 --- a/htdocs/langs/bn_BD/admin.lang +++ b/htdocs/langs/bn_BD/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/bn_BD/main.lang b/htdocs/langs/bn_BD/main.lang index 49c2c3eec37c2789daec48d94d649e4557d9919e..3eec2987d4167fe4ac34fbfa9ba5397f2c1c9324 100644 --- a/htdocs/langs/bn_BD/main.lang +++ b/htdocs/langs/bn_BD/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/bn_BD/other.lang b/htdocs/langs/bn_BD/other.lang index c49606b8f7504a06d7daba530169d75d21dc7607..d6972e16de48844d714fe9e6eb92a31771fb7f2f 100644 --- a/htdocs/langs/bn_BD/other.lang +++ b/htdocs/langs/bn_BD/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/bs_BA/admin.lang b/htdocs/langs/bs_BA/admin.lang index 4baddc5f3dfcb087930bc0bc93e4f834ab800fd4..dfcc2e5ef4e1d876127ff431e1d5e96cf1d0cc1e 100644 --- a/htdocs/langs/bs_BA/admin.lang +++ b/htdocs/langs/bs_BA/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/bs_BA/main.lang b/htdocs/langs/bs_BA/main.lang index 79ef94ddc7f6cba09f96c1cf2713b9f2dd536cfa..a2b0d33d19ba439f854d6473b967675d4be19637 100644 --- a/htdocs/langs/bs_BA/main.lang +++ b/htdocs/langs/bs_BA/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/bs_BA/other.lang b/htdocs/langs/bs_BA/other.lang index c49606b8f7504a06d7daba530169d75d21dc7607..d6972e16de48844d714fe9e6eb92a31771fb7f2f 100644 --- a/htdocs/langs/bs_BA/other.lang +++ b/htdocs/langs/bs_BA/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/bs_BA/printipp.lang b/htdocs/langs/bs_BA/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/bs_BA/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/ca_ES/admin.lang b/htdocs/langs/ca_ES/admin.lang index e25f1a04234a05dacc52016c4e3bc3f585bc7454..722d5459945f6c9349daff308ef392297c602925 100644 --- a/htdocs/langs/ca_ES/admin.lang +++ b/htdocs/langs/ca_ES/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Una línia de producte/servei que té una quantitat nu 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Configuració del mòdul Sol·licituds a proveïdor -AskPriceSupplierNumberingModules=Mòdels de numeració de solicitut de preus a proveïdor -AskPriceSupplierPDFModules=Mòdels de docuements de solicituts de preus de proveïdors -FreeLegalTextOnAskPriceSupplier=Text lliure en sol·licituds de preus a proveïdors -WatermarkOnDraftAskPriceSupplier=Marca d'aigua en sol·licituds de preus a proveïdors (en cas de estar buit) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Preguntar per compte bancari per utilitzar en el pressupost +##### SupplierProposal ##### +SupplierProposalSetup=Configuració del mòdul Sol·licituds a proveïdor +SupplierProposalNumberingModules=Mòdels de numeració de solicitut de preus a proveïdor +SupplierProposalPDFModules=Mòdels de docuements de solicituts de preus de proveïdors +FreeLegalTextOnSupplierProposal=Text lliure en sol·licituds de preus a proveïdors +WatermarkOnDraftSupplierProposal=Marca d'aigua en sol·licituds de preus a proveïdors (en cas de estar buit) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Preguntar per compte bancari per utilitzar en el pressupost ##### Orders ##### OrdersSetup=Configuració del mòdul comandes OrdersNumberingModules=Mòduls de numeració de les comandes diff --git a/htdocs/langs/ca_ES/main.lang b/htdocs/langs/ca_ES/main.lang index 42189ae338ebce040b83600e59f3f24ec116f4e6..7cf3c051c7f7f7ced4bb61d1a977beae2cf968f5 100644 --- a/htdocs/langs/ca_ES/main.lang +++ b/htdocs/langs/ca_ES/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Preu base UnitPriceTTC=Preu unitari total PriceU=P.U. PriceUHT=P.U. -AskPriceSupplierUHT=Preu Unitari sol·licitat +SupplierProposalUHT=Preu Unitari sol·licitat PriceUTTC=Preu unitari (IVA inclòs) Amount=Import AmountInvoice=Import factura diff --git a/htdocs/langs/ca_ES/other.lang b/htdocs/langs/ca_ES/other.lang index c5b54076c7361538004ad6fb9a23ec5214e1e7f4..417ec04e748c85198b4a402d1a2fe298665bbf7f 100644 --- a/htdocs/langs/ca_ES/other.lang +++ b/htdocs/langs/ca_ES/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Això és un e-mail de <b>prova</b> (la paraula prova ha PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nLi adjuntem la factura __FACREF__\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nVolem recordar-li que la seva factura __FACREF__ sembla estar pendent de pagament. Li adjuntem la factura en cuestio, com a recordatori.\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nLi adjuntem el pressupost __PROPREF__\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nLi adjuntem la sol·licitud de preus __ASKREF__\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nLi adjuntem la sol·licitud de preus __ASKREF__\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nLi adjuntem la comanda __ORDERREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nLi adjuntem la nostre comanda __ORDERREF__\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nLi adjuntem la factura __FACREF__\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ diff --git a/htdocs/langs/ca_ES/printipp.lang b/htdocs/langs/ca_ES/printipp.lang deleted file mode 100644 index 1ea5fce8f89b59e3da82eefa93de0c8075cca39e..0000000000000000000000000000000000000000 --- a/htdocs/langs/ca_ES/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Configuració del mòdul Impressió Directe -PrintIPPDesc=Aquest mòdul afegeix un boto per enviar documents directament a una impressora. Es necessari un SO Linux amb CUPS instal·lat. -PRINTIPP_ENABLED=Mostrar icona "Impressió directe" en els llistats de documents -PRINTIPP_HOST=Servidor d'impressió -PRINTIPP_PORT=Port -PRINTIPP_USER=Usuari -PRINTIPP_PASSWORD=Contrasenya -NoPrinterFound=No es pot trobar impressores (Comprovi la configuració del CUPS) -FileWasSentToPrinter=L'arxiu %s ha sigut enviat a l'impressora -NoDefaultPrinterDefined=No hi han impressores definides per defecte -DefaultPrinter=Impresores per defecte -Printer=Impressora -CupsServer=Servidor CUPS diff --git a/htdocs/langs/cs_CZ/admin.lang b/htdocs/langs/cs_CZ/admin.lang index 5cf105fb8a71456f3f5a234b5786617a8673c06f..18bedef7be7078ec51cddbe69d1cb43073ca28c9 100644 --- a/htdocs/langs/cs_CZ/admin.lang +++ b/htdocs/langs/cs_CZ/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Řada výrobků / služeb s nulové hodnoty je považo FreeLegalTextOnProposal=Volný text o obchodních návrhů WatermarkOnDraftProposal=Vodoznak na předloh návrhů komerčních (none-li prázdný) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Zeptejte se na umístění bankovního účtu nabídky -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Cena požaduje nastavení dodavatelé modul -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Volný text na žádosti o cenový dodavatele -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Zeptejte se na bankovní účet destinaci nabídce ceny +##### SupplierProposal ##### +SupplierProposalSetup=Cena požaduje nastavení dodavatelé modul +SupplierProposalNumberingModules=Price requests suppliers numbering models +SupplierProposalPDFModules=Price requests suppliers documents models +FreeLegalTextOnSupplierProposal=Volný text na žádosti o cenový dodavatele +WatermarkOnDraftSupplierProposal=Watermark on draft price requests suppliers (none if empty) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Zeptejte se na bankovní účet destinaci nabídce ceny ##### Orders ##### OrdersSetup=Objednat řízení nastavení OrdersNumberingModules=Objednávky číslování modelů diff --git a/htdocs/langs/cs_CZ/main.lang b/htdocs/langs/cs_CZ/main.lang index c9d2cefaf74b40a13b5c8f9763fdc94ad593d4b7..abc1a05188809481a1dc493fbf6534c0646a3f7c 100644 --- a/htdocs/langs/cs_CZ/main.lang +++ b/htdocs/langs/cs_CZ/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Jednotková cena (bez DPH) UnitPriceTTC=Jednotková cena PriceU=UP PriceUHT=UP (bez DPH) -AskPriceSupplierUHT=U.P. net Požadováno +SupplierProposalUHT=U.P. net Požadováno PriceUTTC=U.P. (inc. tax) Amount=Množství AmountInvoice=Fakturovaná částka diff --git a/htdocs/langs/cs_CZ/other.lang b/htdocs/langs/cs_CZ/other.lang index 5f14fd018c2d0b2ee727988fef08989dd7ab65cc..9b7775943c6dc5bf324d0f7258164e89ce99306b 100644 --- a/htdocs/langs/cs_CZ/other.lang +++ b/htdocs/langs/cs_CZ/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Toto je <b>testovací</b> mail (slovo testovací musí b PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nNajdete zde fakturu __FACREF__\n\n__PERSONALIZED__S pozdravem\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nDovolujeme si vás upozornit, že faktura __FACREF__ pravděpodobně nebyla uhrazena. Jako upomínku vám ji v příloze zasíláme znovu.\n\n__PERSONALIZED__S pozdravem\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nNajdete zde obchodní návrh __PROPREF__\n\n__PERSONALIZED__S pozdravem\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nNajdete zde cenový požadavek __ASKREF__\n\n__PERSONALIZED__S pozdravem\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nNajdete zde cenový požadavek __ASKREF__\n\n__PERSONALIZED__S pozdravem\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nNajdete zde objednávku __ORDERREF__\n\n__PERSONALIZED__S pozdravem\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nNajdete zde naši objednávku __ORDERREF__\n\n__PERSONALIZED__S pozdravem\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nNajdete zde fakturu __FACREF__\n\n__PERSONALIZED__S pozdravem\n\n__SIGNATURE__ diff --git a/htdocs/langs/cs_CZ/printipp.lang b/htdocs/langs/cs_CZ/printipp.lang deleted file mode 100644 index 9aaa2aade01debec47b5730f584a9d2c509aabbc..0000000000000000000000000000000000000000 --- a/htdocs/langs/cs_CZ/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Nastavení tiskového modulu Direct -PrintIPPDesc=Tento modul přidá tlačítko Tisk pro odeslání dokumentu přímo na tiskárnu. To vyžaduje systém Linux s nainstalovaným CUPS. -PRINTIPP_ENABLED=Zobrazit ikonu "Přímý tisk" v seznamech dokumentů -PRINTIPP_HOST=Tiskový server -PRINTIPP_PORT=Port -PRINTIPP_USER=Přihlášení -PRINTIPP_PASSWORD=Heslo -NoPrinterFound=Nebyly nalezeny žádné tiskárny (zkontrolujte nastavení CUPS) -FileWasSentToPrinter=Soubor %s byl poslán na tiskárnu -NoDefaultPrinterDefined=Není definována žádná výchozí tiskárna -DefaultPrinter=Výchozí tiskárna -Printer=Tiskárna -CupsServer=CUPS server diff --git a/htdocs/langs/da_DK/admin.lang b/htdocs/langs/da_DK/admin.lang index 98ad0003d8ad9c50db258c83c68606c737be37c4..632ec24991faa94ffae5fe0fb406c638ed2169f6 100644 --- a/htdocs/langs/da_DK/admin.lang +++ b/htdocs/langs/da_DK/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=En linje af produkt / service med et nul beløb anses FreeLegalTextOnProposal=Fri tekst på kommercielle forslag WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Ordrer «forvaltning setup OrdersNumberingModules=Ordrer nummerressourcer moduler diff --git a/htdocs/langs/da_DK/main.lang b/htdocs/langs/da_DK/main.lang index e4f41d0d5804cc4f017383db918116abc9fe3787..c0914268760e7f1d6750db1043a068fdc998ae26 100644 --- a/htdocs/langs/da_DK/main.lang +++ b/htdocs/langs/da_DK/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Enhedspris (netto) UnitPriceTTC=Enhedspris PriceU=UP PriceUHT=UP (netto) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Mængde AmountInvoice=Fakturabeløbet diff --git a/htdocs/langs/da_DK/other.lang b/htdocs/langs/da_DK/other.lang index 9b12e35bd0639dbb08ca20931ef7e5b9744bceda..901d8e46210fdddb56bb8902f89a46b5950b88ce 100644 --- a/htdocs/langs/da_DK/other.lang +++ b/htdocs/langs/da_DK/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Dette er en <b>test</b> mail (ordet test skal være i fed PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/da_DK/printipp.lang b/htdocs/langs/da_DK/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/da_DK/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/de_DE/admin.lang b/htdocs/langs/de_DE/admin.lang index bccd449a822c7c34f2d00356653826a0bdf81fe6..aba9014289506046aca4debe26c4a4fb8cdb2bb4 100644 --- a/htdocs/langs/de_DE/admin.lang +++ b/htdocs/langs/de_DE/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Produkt-/Servicezeilen mit Nullmenge zulässig FreeLegalTextOnProposal=Freier Rechtstext für Angebote WatermarkOnDraftProposal=Wasserzeichen auf Angebots-Entwurf (keines, falls leer) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Fragen Sie nach dem Bankkonto bei einem Angebot -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Lieferanten Preisauskunft Moduleinstellungen -AskPriceSupplierNumberingModules=Nummerierungsmodul Preisanfragen Lieferanten -AskPriceSupplierPDFModules=Lieferanten Preisauskunft Dokumentvorlagen -FreeLegalTextOnAskPriceSupplier=Freier Text auf Preisauskunft Lieferanten -WatermarkOnDraftAskPriceSupplier=Wasserzeichen auf Lieferanten-Preisauskunft Entwurf (keines, wenn leer) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Fragen Sie nach Bankkonto Bestimmungsort von der Preisauskunft +##### SupplierProposal ##### +SupplierProposalSetup=Lieferanten Preisauskunft Moduleinstellungen +SupplierProposalNumberingModules=Nummerierungsmodul Preisanfragen Lieferanten +SupplierProposalPDFModules=Lieferanten Preisauskunft Dokumentvorlagen +FreeLegalTextOnSupplierProposal=Freier Text auf Preisauskunft Lieferanten +WatermarkOnDraftSupplierProposal=Wasserzeichen auf Lieferanten-Preisauskunft Entwurf (keines, wenn leer) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Fragen Sie nach Bankkonto Bestimmungsort von der Preisauskunft ##### Orders ##### OrdersSetup=Bestellverwaltungseinstellungen OrdersNumberingModules=Bestellnumerierungs-Module diff --git a/htdocs/langs/de_DE/main.lang b/htdocs/langs/de_DE/main.lang index 30273d93dcf295ed6f851f5c8606619951552d70..a91757f22eba616e006773740f9d6a324b6d923b 100644 --- a/htdocs/langs/de_DE/main.lang +++ b/htdocs/langs/de_DE/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Stückpreis (netto) UnitPriceTTC=Stückpreis (brutto) PriceU=VP PriceUHT=VP (netto) -AskPriceSupplierUHT=Nettopreis anfordern +SupplierProposalUHT=Nettopreis anfordern PriceUTTC=E.P. (inkl. Steuern) Amount=Betrag AmountInvoice=Rechnungsbetrag diff --git a/htdocs/langs/de_DE/other.lang b/htdocs/langs/de_DE/other.lang index 862b28652463bbbc52fb4ee82027bd90dee4405e..9179816826b4d0b4005a82cef1b9281b0532f470 100644 --- a/htdocs/langs/de_DE/other.lang +++ b/htdocs/langs/de_DE/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Dies ist ein (HTML)-<b>Test</b> Mail (das Wort Test muss PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Anbei erhalten Sie die Rechnung __FACREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Bedauerlicherweise scheint die Rechnung __FACREF__ bislang unbeglichen. Als Erinnerung übersenden wir Ihnen diese nochmals im Anhang.\n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Bitte entnehmen Sie dem Anhang unser Angebot __PROPREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__ \n\n Anbei erhalten Sie die Rechnung __ FACREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__ \n\n Anbei erhalten Sie die Rechnung __ FACREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Bitte entnehmen Sie dem Anhang die Bestellung __ORDERREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Bitte entnehmen Sie dem Anhang die Bestellung __ORDERREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Anbei erhalten Sie die Rechnung __ FACREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ diff --git a/htdocs/langs/de_DE/printipp.lang b/htdocs/langs/de_DE/printipp.lang deleted file mode 100644 index b2e884cbfdbb82fc589bf8547fb05bfc4c91ee7a..0000000000000000000000000000000000000000 --- a/htdocs/langs/de_DE/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Einstellungen des DirektDruck-Moduls -PrintIPPDesc=Dieses Modul fügt einen "Drucken"-Button zu, um Dokumente direkt zu einen Drucker zu senden. Dies erfordert ein Linux-System mit installiertem CUPS. -PRINTIPP_ENABLED="Direktdruck"-Symbol in Dokumentlisten anzeigen -PRINTIPP_HOST=Druckserver -PRINTIPP_PORT=Port -PRINTIPP_USER=Benutzername -PRINTIPP_PASSWORD=Passwort -NoPrinterFound=Keine Drucker gefunden (CUPS-Konfiguration prüfen) -FileWasSentToPrinter=Datei %s zum Drucker gesandt -NoDefaultPrinterDefined=Kein Standarddrucker defininert -DefaultPrinter=Standarddrucker -Printer=Drucker -CupsServer=CUPS-Server diff --git a/htdocs/langs/el_GR/admin.lang b/htdocs/langs/el_GR/admin.lang index 30d21a7e88c2424c913b68e0860bd22084a54034..dd25dfd6fb964cb76c6d04488be4ab19ce79e792 100644 --- a/htdocs/langs/el_GR/admin.lang +++ b/htdocs/langs/el_GR/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid FreeLegalTextOnProposal=Free text on commercial proposals WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ρωτήστε για τον τραπεζικό λογαριασμό προορισμού της προσφοράς -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/el_GR/main.lang b/htdocs/langs/el_GR/main.lang index f722e34f853f177c82970a318062277b96fa5483..7f80378a780b61aa07d817c2d28e15ced00e9040 100644 --- a/htdocs/langs/el_GR/main.lang +++ b/htdocs/langs/el_GR/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Τιμή Μονάδος (χ. Φ.Π.Α) UnitPriceTTC=Τιμή Μονάδος PriceU=Τιμή μον. PriceUHT=Τιμή μον. -AskPriceSupplierUHT=Αιτήματα για τιμές μονάδας +SupplierProposalUHT=Αιτήματα για τιμές μονάδας PriceUTTC=Τιμή μον. (συμπ. Φ.Π.Α.) Amount=Ποσό AmountInvoice=Ποσό Τιμολογίου diff --git a/htdocs/langs/el_GR/other.lang b/htdocs/langs/el_GR/other.lang index b1723bf35f7eb1980d3703967c1c6eb2b8b57d62..104ff52e1a796063e40d7cca1bdb989ffd2bad88 100644 --- a/htdocs/langs/el_GR/other.lang +++ b/htdocs/langs/el_GR/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Αυτό είναι ένα μήνυμα <b>δοκιμής PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nΕδώ θα βρείτε το τιμολόγιο __FACREF__\n\n__PERSONALIZED__Με εκτίμηση\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nΘα ήθελα να σας προειδοποιήσω ότι το τιμολόγιο __FACREF__ φαίνεται να μην έχει πληρωθεί. Στο συνημμένο βρίσκεται το τιμολόγιο που φαίνεται να μην έχει πληρωθεί.\n\n__PERSONALIZED__Με εκτίμηση\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nΕδώ θα βρείτε την προσφορά __PROPREF__\n\n__PERSONALIZED__Με εκτίμηση\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nΕδώ θα βρείτε το αίτημα των τιμών __ASKREF__\n\n__PERSONALIZED__Με εκτίμηση\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nΕδώ θα βρείτε το αίτημα των τιμών __ASKREF__\n\n__PERSONALIZED__Με εκτίμηση\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nΕδώ θα βρείτε τη παραγγελία __ORDERREF__\n\n__PERSONALIZED__Με εκτίμηση\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nΕδώ θα βρείτε την παραγγελία μας __ORDERREF__\n\n__PERSONALIZED__Με εκτίμηση\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nΕδώ θα βρείτε το τιμολόγιο __FACREF__\n\n__PERSONALIZED__Με εκτίμηση\n\n__SIGNATURE__ diff --git a/htdocs/langs/el_GR/printipp.lang b/htdocs/langs/el_GR/printipp.lang deleted file mode 100644 index 04a8bfda5b9be8e93f1199b12001f7035dc4e559..0000000000000000000000000000000000000000 --- a/htdocs/langs/el_GR/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Ρύθμιση του module Άμεση Εκτύπωση -PrintIPPDesc=Το module αυτό προσθέτει ένα κουμπί Εκτύπωσης για να στείλετε έγγραφα απευθείας σε έναν εκτυπωτή. Απαιτεί ένα σύστημα Linux με εγκατεστημένο CUPS. -PRINTIPP_ENABLED=Εμφάνιση εικονιδίου "Απευθείας εκτύπωση" στις λίστες εγγράφων -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Σύνδεση -PRINTIPP_PASSWORD=Κωδικός -NoPrinterFound=Δεν βρέθηκαν εκτυπωτές (ελέγξτε τη ρύθμιση του CUPS) -FileWasSentToPrinter=Το αρχείο %s στάλθηκε στον εκτυπωτή -NoDefaultPrinterDefined=Δεν έχει οριστεί προεπιλεγμένος εκτυπωτής -DefaultPrinter=Προεπιλογμένος εκτυπωτής -Printer=Εκτυπωτής -CupsServer=CUPS Server diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 8f8428b3c75ecae4f8cb54fabef68fde08b9e154..f4d311c8f278e4f028f3ef4765a1f19fed588d0a 100755 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -333,7 +333,7 @@ UMaskExplanation=This parameter allow you to define permissions set by default o SeeWikiForAllTeam=Take a look at the wiki page for full list of all actors and their organisation UseACacheDelay= Delay for caching export response in seconds (0 or empty for no cache) DisableLinkToHelpCenter=Hide link "<b>Need help or support</b>" on login page -DisableLinkToHelp=Hide link "<b>%s Online help</b>" on left menu +DisableLinkToHelp=Hide link to online help "<b>%s</b>" AddCRIfTooLong=There is no automatic wrapping, so if line is out of page on documents because too long, you must add yourself carriage returns in the textarea. ModuleDisabled=Module disabled ModuleDisabledSoNoEvent=Module disabled so event never created @@ -846,14 +846,12 @@ VATIsUsedExampleFR=In France, it means companies or organisations having a real VATIsNotUsedExampleFR=In France, it means associations that are non VAT declared or companies, organisations or liberal professions that have chosen the micro enterprise fiscal system (VAT in franchise) and paid a franchise VAT without any VAT declaration. This choice will display the reference "Non applicable VAT - art-293B of CGI" on invoices. ##### Local Taxes ##### LTRate=Rate -LocalTax1IsUsed=Use second tax LocalTax1IsNotUsed=Do not use second tax LocalTax1IsUsedDesc=Use a second type of tax (other than VAT) LocalTax1IsNotUsedDesc=Do not use other type of tax (other than VAT) LocalTax1Management=Second type of tax LocalTax1IsUsedExample= LocalTax1IsNotUsedExample= -LocalTax2IsUsed=Use third tax LocalTax2IsNotUsed=Do not use third tax LocalTax2IsUsedDesc=Use a third type of tax (other than VAT) LocalTax2IsNotUsedDesc=Do not use other type of tax (other than VAT) @@ -1208,13 +1206,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup diff --git a/htdocs/langs/en_US/companies.lang b/htdocs/langs/en_US/companies.lang index 3e93a48d7b58251f1e3843aed89655ee7650bc0b..297556d6533b3a1f5b3372a61b3567b4ae2c4b65 100644 --- a/htdocs/langs/en_US/companies.lang +++ b/htdocs/langs/en_US/companies.lang @@ -89,8 +89,10 @@ VATIsNotUsed=VAT is not used CopyAddressFromSoc=Fill address with thirdparty address NoEmailDefined=There is no email defined ##### 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 LocalTax1ES=RE diff --git a/htdocs/langs/en_US/compta.lang b/htdocs/langs/en_US/compta.lang index 20c0a144121cd4f2c5a6a4dc25acb058dfbeece0..c7cbb6d0a9b515a03698ae90696ec287a27bf6e3 100644 --- a/htdocs/langs/en_US/compta.lang +++ b/htdocs/langs/en_US/compta.lang @@ -83,12 +83,18 @@ DatePayment=Payment date DateStartPeriod=Date start period DateEndPeriod=Date end period NewVATPayment=New VAT payment -newLT2PaymentES=New IRPF payment +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 -LT2PaymentES=IRPF Payment -LT2PaymentsES=IRPF Payments +newLT2PaymentES=New IRPF payment LT1PaymentES=RE Payment LT1PaymentsES=RE Payments +LT2PaymentES=IRPF Payment +LT2PaymentsES=IRPF Payments VATPayment=VAT Payment VATPayments=VAT Payments VATRefund=VAT Refund diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang index a05b2b7c06e546ced9282b6753e035107ee65f68..070bc5c3d568c90c0def2fa9c3e26cfbe3d90341 100644 --- a/htdocs/langs/en_US/main.lang +++ b/htdocs/langs/en_US/main.lang @@ -306,7 +306,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/en_US/other.lang b/htdocs/langs/en_US/other.lang index 7485aada8dc1e5fd647d4b4dae43782d2fdc8b58..1ff53d367972a1f01c4757cc36fcf39daa3be846 100644 --- a/htdocs/langs/en_US/other.lang +++ b/htdocs/langs/en_US/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/en_US/sendings.lang b/htdocs/langs/en_US/sendings.lang index 53a4e4dae7a4e11385c618cc0a6b15c865c97de1..29567c24b377d011a0c608632938c2386bdfafe0 100644 --- a/htdocs/langs/en_US/sendings.lang +++ b/htdocs/langs/en_US/sendings.lang @@ -69,7 +69,7 @@ ProductQtyInCustomersOrdersRunning=Product quantity into opened customers orders ProductQtyInSuppliersOrdersRunning=Product quantity into opened suppliers orders ProductQtyInShipmentAlreadySent=Product quantity from opened customer order already sent ProductQtyInSuppliersShipmentAlreadyRecevied=Product quantity from opened supplier order already received -NoProductToShipFoundIntoStock=No product to ship found into warehouse <b>%s</b>. Correct sotck or go back to choose another warehouse. +NoProductToShipFoundIntoStock=No product to ship found into warehouse <b>%s</b>. Correct stock or go back to choose another warehouse. # Sending methods SendingMethodCATCH=Catch by customer diff --git a/htdocs/langs/en_US/askpricesupplier.lang b/htdocs/langs/en_US/supplier_proposal.lang similarity index 64% rename from htdocs/langs/en_US/askpricesupplier.lang rename to htdocs/langs/en_US/supplier_proposal.lang index 0cf337b96e64c5e2cc12a5e703a246c21724faa9..b0e2887feb05c2ab94b67986a237ed38ab6f759e 100644 --- a/htdocs/langs/en_US/askpricesupplier.lang +++ b/htdocs/langs/en_US/supplier_proposal.lang @@ -1,25 +1,25 @@ -# Dolibarr language file - Source file is en_US - askpricesupplier -AskPriceSupplier=Supplier commercial proposals -askpricesupplierDESC=Manage price requests to suppliers -askpricesupplierMENU_LEFT_TITLE=Price request supplier -askpricesupplierMENU_LEFT_TITLE_NEW=New request -askpricesupplierMENU_LEFT_TITLE_LIST=List +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Supplier commercial proposals +supplier_proposalDESC=Manage price requests to suppliers +supplier_proposalMENU_LEFT_TITLE=Supplier proposals +supplier_proposalMENU_LEFT_TITLE_NEW=New request +supplier_proposalMENU_LEFT_TITLE_LIST=List CommRequest=Price request CommRequests=Price requests SearchRequest=Find a request DraftRequests=Draft requests LastModifiedRequests=Last %s modified price requests RequestsOpened=Open price requests -AskPriceSupplierArea=Area price requests suppliers -Askpricesupplier=Price request supplier +SupplierProposalArea=Supplier proposals area +Askpricesupplier=Supplier proposals NewAskPrice=New price request NewAsk=New request ShowAskpricesupplier=Show price request -AddAskPriceSupplier=Create a price request -AskPriceSupplierRefFourn=Supplier ref -AskPriceSupplierDate=Delivery date -AskPriceSupplierRefFournNotice=Before closing to "Accepted", think to grasp suppliers references. -RelatedAskPriceSupplier=Related price requests suppliers +AddSupplierProposal=Create a price request +SupplierProposalRefFourn=Supplier ref +SupplierProposalDate=Delivery date +SupplierProposalRefFournNotice=Before closing to "Accepted", think to grasp suppliers references. +RelatedSupplierProposal=Related price requests suppliers ConfirmValidateAsk=Are you sure you want to validate this price request under name <b>%s</b> ? DateAsk=Date of request DeleteAsk=Delete request @@ -48,12 +48,12 @@ ConfirmCloneAsk=Are you sure you want to clone the price request <b>%s</b> ? ConfirmReOpenAsk=Are you sure you want to open back the price request <b>%s</b> ? SendAskByMail=Send price request by mail SendAskRef=Sending the price request %s -AskPriceSupplierCard=Request card +SupplierProposalCard=Request card ConfirmDeleteAsk=Are you sure you want to delete this price request ? -ActionsOnAskPriceSupplier=Events on price request +ActionsOnSupplierProposal=Events on price request DocModelAuroreDescription=A complete request model (logo...) CommercialAsk=Price request -DefaultModelAskPriceSupplierCreate=Default model creation -DefaultModelAskPriceSupplierToBill=Default template when closing a price request (accepted) -DefaultModelAskPriceSupplierClosed=Default template when closing a price request (refused) -ListOfAskPriceSupplier=Liste des demandes de prix fournisseurs +DefaultModelSupplierProposalCreate=Default model creation +DefaultModelSupplierProposalToBill=Default template when closing a price request (accepted) +DefaultModelSupplierProposalClosed=Default template when closing a price request (refused) +ListOfSupplierProposal=List of supplier proposal requests diff --git a/htdocs/langs/es_ES/admin.lang b/htdocs/langs/es_ES/admin.lang index 1b5358f2b79032254df1e45c610569704cfa33ab..9eccba0d95f75fd5a3b76a5726c1124746ea9782 100644 --- a/htdocs/langs/es_ES/admin.lang +++ b/htdocs/langs/es_ES/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Una línea de producto/servicio que tiene una cantidad 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Configuración del módulo Solicitudes a proveedor -AskPriceSupplierNumberingModules=Modelos de numeración de solicitud de precios a proveedor -AskPriceSupplierPDFModules=Modelos de documentos de solicitud de precios a proveedores -FreeLegalTextOnAskPriceSupplier=Texto libre en solicitudes de precios a proveedores -WatermarkOnDraftAskPriceSupplier=Marca de agua en solicitudes de precios a proveedor (en caso de estar vacío) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Preguntar por cuenta bancaria a usar en el presupuesto +##### SupplierProposal ##### +SupplierProposalSetup=Configuración del módulo Solicitudes a proveedor +SupplierProposalNumberingModules=Modelos de numeración de solicitud de precios a proveedor +SupplierProposalPDFModules=Modelos de documentos de solicitud de precios a proveedores +FreeLegalTextOnSupplierProposal=Texto libre en solicitudes de precios a proveedores +WatermarkOnDraftSupplierProposal=Marca de agua en solicitudes de precios a proveedor (en caso de estar vacío) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Preguntar por cuenta bancaria a usar en el presupuesto ##### Orders ##### OrdersSetup=Configuración del módulo pedidos OrdersNumberingModules=Módulos de numeración de los pedidos diff --git a/htdocs/langs/es_ES/main.lang b/htdocs/langs/es_ES/main.lang index 66bcd6d4b85bd8e1794007a0b08d47713357f671..3bbe0724cecb85c9d04e3650b479e116cb335486 100644 --- a/htdocs/langs/es_ES/main.lang +++ b/htdocs/langs/es_ES/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Precio base UnitPriceTTC=Precio unitario total PriceU=P.U. PriceUHT=P.U. -AskPriceSupplierUHT=P.U. neto solicitado +SupplierProposalUHT=P.U. neto solicitado PriceUTTC=P.U. (i.i.) Amount=Importe AmountInvoice=Importe factura diff --git a/htdocs/langs/es_ES/other.lang b/htdocs/langs/es_ES/other.lang index 622c5c91c3935c2479b5f679b5356f89349c2e9a..4cb1a885c4b319b0cb2c371ffafbcec591c2851f 100644 --- a/htdocs/langs/es_ES/other.lang +++ b/htdocs/langs/es_ES/other.lang @@ -60,7 +60,7 @@ PredefinedMailTestHtml=Esto es un e-mail de <b>prueba</b>(la palabra prueba debe PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nLe adjuntamos la factura __FACREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nQueremos recordarle que su factura __FACREF__ parece estar pendiente de pago. Le adjuntamos la factura en cuestión, como recordatorio.\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nLe adjuntamos el presupuesto __PROPREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nLe adjuntamos la solicitud de precios __ASKREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nLe adjuntamos la solicitud de precios __ASKREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nLe adjuntamos el pedido __ORDERREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nLe adjuntamos nuestro pedido __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nLe adjuntamos la factura __FACREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ diff --git a/htdocs/langs/es_ES/printipp.lang b/htdocs/langs/es_ES/printipp.lang deleted file mode 100644 index e97bd15c596e3dde75d435a1a92a99e04b142f5d..0000000000000000000000000000000000000000 --- a/htdocs/langs/es_ES/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Configuración del módulo Impresión Directa -PrintIPPDesc=Este módulo añade un botón para enviar documentos directamente a una impresora. Es necesario un SO Linux con CUPS instalado. -PRINTIPP_ENABLED=Mostrar icono "Impresión directa" en los listados de documentos -PRINTIPP_HOST=Servidor de impresión -PRINTIPP_PORT=Puerto -PRINTIPP_USER=Usuario -PRINTIPP_PASSWORD=Contraseña -NoPrinterFound=No se han encontrado impresoras (Compruebe la configuración de su CUPS) -FileWasSentToPrinter=El archivo %s ha sido enviado a la impresora -NoDefaultPrinterDefined=No hay impresora por defecto definida -DefaultPrinter=Impresora por defecto -Printer=Impresora -CupsServer=Servidor CUPS diff --git a/htdocs/langs/et_EE/admin.lang b/htdocs/langs/et_EE/admin.lang index 54b4ced593f8538a41e34f44c1946d082d13b9f1..4a6f97936da80245d4f4fd69031b9288267efebc 100644 --- a/htdocs/langs/et_EE/admin.lang +++ b/htdocs/langs/et_EE/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Toote/teenuse rida, mille koguseks on märgitud 0, pee 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Tellimuste haldamise seadistamine OrdersNumberingModules=Tellimuste numeratsiooni mudelid diff --git a/htdocs/langs/et_EE/main.lang b/htdocs/langs/et_EE/main.lang index e07606ee685eb9cbee9ea60c5a90cc239442c842..17690a08d1cf8408ce68e5da884a264d74abea5f 100644 --- a/htdocs/langs/et_EE/main.lang +++ b/htdocs/langs/et_EE/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Ühiku hind (neto) UnitPriceTTC=Ühiku hind PriceU=ÜH PriceUHT=ÜH (neto) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Summa AmountInvoice=Arve summa diff --git a/htdocs/langs/et_EE/other.lang b/htdocs/langs/et_EE/other.lang index c89032a204b7c1fb34c49cd9327add2eb11b405b..dc2541fc541e63d529359119ecaf30833ab84edd 100644 --- a/htdocs/langs/et_EE/other.lang +++ b/htdocs/langs/et_EE/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=See on <b>test</b> kiri (sõna test peab olema rasvases k PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/et_EE/printipp.lang b/htdocs/langs/et_EE/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/et_EE/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/eu_ES/admin.lang b/htdocs/langs/eu_ES/admin.lang index 6e6e891ae29f6b564dcbf07f982e046e22b41044..3b99014487f9bdfbb01ed90206ac4387a470b335 100644 --- a/htdocs/langs/eu_ES/admin.lang +++ b/htdocs/langs/eu_ES/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/eu_ES/main.lang b/htdocs/langs/eu_ES/main.lang index b20667c3c86c8f9d1a1003a48e82770caa95693e..40a4f4621f89889e5c1313d3ce56a064ed01fc66 100644 --- a/htdocs/langs/eu_ES/main.lang +++ b/htdocs/langs/eu_ES/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/eu_ES/other.lang b/htdocs/langs/eu_ES/other.lang index c49606b8f7504a06d7daba530169d75d21dc7607..d6972e16de48844d714fe9e6eb92a31771fb7f2f 100644 --- a/htdocs/langs/eu_ES/other.lang +++ b/htdocs/langs/eu_ES/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/eu_ES/printipp.lang b/htdocs/langs/eu_ES/printipp.lang deleted file mode 100644 index f9c36810b91e175e2ba5d3a3d6868dcb59fe6489..0000000000000000000000000000000000000000 --- a/htdocs/langs/eu_ES/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Direct Print modulua konfiguratu -PrintIPPDesc=Modulu honek "Inprimatu" botoia gehitzen du dokumentuak zuzenean inprimagailu batera bidaltzeko. CUPS instalatuta duen Linux sistema behar du. -PRINTIPP_ENABLED=Dokumentuen zerrendetan "Direct Print" ikonoa erakutsi -PRINTIPP_HOST=Inprimatzeko zerbitzaria -PRINTIPP_PORT=Ataka -PRINTIPP_USER=Hasi saioa honela -PRINTIPP_PASSWORD=Pasahitza -NoPrinterFound=Ez da inprimagailurik aurkitu (CUPS konfigurazioa egiaztatu) -FileWasSentToPrinter=%s fitxategia inprimagailura bidali da -NoDefaultPrinterDefined=Ez da lehenetsitako inprimagailurik ezarri -DefaultPrinter=Lehenetsitako inprimagailua -Printer=Inprimagailua -CupsServer=CUPS zerbitzaria diff --git a/htdocs/langs/fa_IR/admin.lang b/htdocs/langs/fa_IR/admin.lang index ab7e526cc8faba0e7d8fd56800de743ee6021f5d..bb75e25d09a2b2da6936eb819be4b980e45df5c9 100644 --- a/htdocs/langs/fa_IR/admin.lang +++ b/htdocs/langs/fa_IR/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=یک خط از محصول / خدمات با مقدار FreeLegalTextOnProposal=متن رایگان در طرح های تجاری WatermarkOnDraftProposal=تعیین میزان مد آب در پیش نویس طرح تجاری (هیچ اگر خالی) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=راه اندازی مدیریت سفارش OrdersNumberingModules=سفارشات شماره مدل diff --git a/htdocs/langs/fa_IR/main.lang b/htdocs/langs/fa_IR/main.lang index c9d5f36bb1918e18cab5862ec138fb513d43c844..1af11d729e34c8b2a2f1e636a290751c4820c43d 100644 --- a/htdocs/langs/fa_IR/main.lang +++ b/htdocs/langs/fa_IR/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=قیمت واحد (خالص) UnitPriceTTC=قیمت واحد PriceU=UP PriceUHT=UP (خالص) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=مقدار AmountInvoice=مقدار فاکتور diff --git a/htdocs/langs/fa_IR/other.lang b/htdocs/langs/fa_IR/other.lang index 817e117f606a711aa9a8bd3bd6ceb44761c91a54..d372dd4b585217c67625095b55a0c4c953fdd40f 100644 --- a/htdocs/langs/fa_IR/other.lang +++ b/htdocs/langs/fa_IR/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=این ایمیل <b>آزمون</b> (آزمون کلمه PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ شما در اینجا خواهید دید فاکتور __ FACREF__ __ PERSONALIZED__Sincerely __ SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ ما می خواهیم به شما هشدار می دهند که فاکتور __ FACREF__ به نظر می رسد که غیر انتفایی نیست. پس این فاکتور در پیوست است دوباره، به عنوان یک یادآوری. __PERSONALIZED__Sincerely __ SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__ شما در اینجا خواهید دید پیشنهاد تجاری __ PROPREF__ __ PERSONALIZED__Sincerely __ SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__ شما در اینجا خواهید دید که منظور __ ORDERREF__ __ PERSONALIZED__Sincerely __ SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ شما در اینجا خواهید دید منظور ما __ ORDERREF__ __ PERSONALIZED__Sincerely __ SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ شما در اینجا خواهید دید فاکتور __ FACREF__ __ PERSONALIZED__Sincerely __ SIGNATURE__ diff --git a/htdocs/langs/fa_IR/printipp.lang b/htdocs/langs/fa_IR/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/fa_IR/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/fi_FI/admin.lang b/htdocs/langs/fi_FI/admin.lang index b6bd4cd14c97c3c9d69dc9dfd8cbbfbaf48742a3..1b186c2997494f239a7c9d8e4550f70e56337078 100644 --- a/htdocs/langs/fi_FI/admin.lang +++ b/htdocs/langs/fi_FI/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Rivi tuotteen / palvelun nolla määrä pidetään vai 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Tilaukset hallinto-setup OrdersNumberingModules=Tilaukset numerointiin modules diff --git a/htdocs/langs/fi_FI/main.lang b/htdocs/langs/fi_FI/main.lang index 22249c98571be8ec25a90f4b9b886dd99fbed7df..775007e91ed299fef016fdfa4aba1f3cf8cf1645 100644 --- a/htdocs/langs/fi_FI/main.lang +++ b/htdocs/langs/fi_FI/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Yksikköhinta (netto) UnitPriceTTC=Yksikköhinta PriceU=UP PriceUHT=UP (netto) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Määrä AmountInvoice=Laskun summa diff --git a/htdocs/langs/fi_FI/other.lang b/htdocs/langs/fi_FI/other.lang index c96d7454d538544b2e2d4d005e23e7a03a05b104..0936173965637adf04187159dfe897a01370fb36 100644 --- a/htdocs/langs/fi_FI/other.lang +++ b/htdocs/langs/fi_FI/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Tämä on <b>testi</b> postitse (sana testi on lihavoitu) PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/fi_FI/printipp.lang b/htdocs/langs/fi_FI/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/fi_FI/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/fr_CA/main.lang b/htdocs/langs/fr_CA/main.lang index e43f0431d516d058a58a0b78259fcc012c36203d..4b2df3d27a5d003f4da9778bc98000a87bb80676 100644 --- a/htdocs/langs/fr_CA/main.lang +++ b/htdocs/langs/fr_CA/main.lang @@ -21,7 +21,7 @@ FormatDateHourTextShort=%d %b %Y %H:%M FormatDateHourText=%d %B %Y %H:%M ErrorNoSocialContributionForSellerCountry=Erreur, aucun type de charges défini pour le pays '%s'. PriceUHT=Prix -AskPriceSupplierUHT=P.U. HT. demandé +SupplierProposalUHT=P.U. HT. demandé PriceUTTC=P.U. TTC AmountVAT=Montant TPS AmountLT1=Montant TVQ diff --git a/htdocs/langs/fr_FR/admin.lang b/htdocs/langs/fr_FR/admin.lang index 0de11174d415983314863901e16992dfc8ed3757..b0f0935d67430f9917188ee99feb66515cb044a0 100644 --- a/htdocs/langs/fr_FR/admin.lang +++ b/htdocs/langs/fr_FR/admin.lang @@ -1194,13 +1194,13 @@ UseOptionLineIfNoQuantity=Une ligne de produit/service ayant une quantité nulle 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Configuration du module Demande de tarifs forunisseurs -AskPriceSupplierNumberingModules=Modèles de numérotation des demandes de prix -AskPriceSupplierPDFModules=Modèles de documents des demandes de prix -FreeLegalTextOnAskPriceSupplier=Texte libre sur les demande de tarifs fournisseurs -WatermarkOnDraftAskPriceSupplier=Filigrane sur le document de demande de prix fournisseurs (aucun si vide) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Demander le compte bancaire cible durant la création de la demande de prix fournisseur +##### SupplierProposal ##### +SupplierProposalSetup=Configuration du module Demande de tarifs forunisseurs +SupplierProposalNumberingModules=Modèles de numérotation des demandes de prix +SupplierProposalPDFModules=Modèles de documents des demandes de prix +FreeLegalTextOnSupplierProposal=Texte libre sur les demande de tarifs fournisseurs +WatermarkOnDraftSupplierProposal=Filigrane sur le document de demande de prix fournisseurs (aucun si vide) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Demander le compte bancaire cible durant la création de la demande de prix fournisseur ##### Orders ##### OrdersSetup=Configuration du module Commandes OrdersNumberingModules=Modèles de numérotation des commandes diff --git a/htdocs/langs/fr_FR/main.lang b/htdocs/langs/fr_FR/main.lang index 1d1000a7f4604661048f586005def65bad500efb..79d041bed9fd8a42c76b0e96b88299be82181a71 100644 --- a/htdocs/langs/fr_FR/main.lang +++ b/htdocs/langs/fr_FR/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Prix unitaire HT UnitPriceTTC=Prix unitaire TTC PriceU=P.U. PriceUHT=P.U. HT -AskPriceSupplierUHT=Prix unitaire net requis +SupplierProposalUHT=Prix unitaire net requis PriceUTTC=P.U TTC Amount=Montant AmountInvoice=Montant facture diff --git a/htdocs/langs/fr_FR/other.lang b/htdocs/langs/fr_FR/other.lang index 9c63ec046659a364ac245a3ad5252d924374db31..628f09acf155e76a55254154b137b8fa550efc61 100644 --- a/htdocs/langs/fr_FR/other.lang +++ b/htdocs/langs/fr_FR/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Ceci est un message de <b>test</b> (le mot test doit êtr PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nVeuillez trouver ci-joint la facture __FACREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\nNous voudrions porter à votre connaissance que la facture __FACREF__ ne semble pas avoir été réglée. La voici donc, pour rappel, en pièce jointe.\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nVeuillez trouver ci-joint la proposition commerciale __PROPREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nVeuillez trouver ci-joint notre demande de tarif __ASKREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nVeuillez trouver ci-joint notre demande de tarif __ASKREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nVeuillez trouver ci-joint la commande __ORDERREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nVeuillez trouver ci-joint notre commande __ORDERREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nVeuillez trouver ci-joint la facture __FACREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ diff --git a/htdocs/langs/fr_FR/printipp.lang b/htdocs/langs/fr_FR/printipp.lang deleted file mode 100644 index 13e24fc74086b6c44902cf1e9d800bcefbff4587..0000000000000000000000000000000000000000 --- a/htdocs/langs/fr_FR/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Réglages du module Direct Print -PrintIPPDesc=Ce module ajoute un bouton Imprimer afin d'envoyer directement les documents à une imprimante. Un système Linux installé avec CUPS est nécessaire. -PRINTIPP_ENABLED=Afficher l'icône « Impression directe » dans les listes de documents -PRINTIPP_HOST=Serveur d'impression -PRINTIPP_PORT=Port -PRINTIPP_USER=Identifiant -PRINTIPP_PASSWORD=Mot de passe -NoPrinterFound=Aucune imprimante trouvée (vérifiez votre configuration CUPS) -FileWasSentToPrinter=Le fichier %s a été envoyé à l'imprimante -NoDefaultPrinterDefined=Il n'y a pas d'imprimante définie par défaut -DefaultPrinter=Imprimante par défaut -Printer=Imprimante -CupsServer=Serveur CUPS diff --git a/htdocs/langs/fr_FR/askpricesupplier.lang b/htdocs/langs/fr_FR/supplier_proposal.lang similarity index 66% rename from htdocs/langs/fr_FR/askpricesupplier.lang rename to htdocs/langs/fr_FR/supplier_proposal.lang index 50ba0c96d8d7e6629b1d086a0893edd8e580b465..2bbf73507ba52143d250241d6dd136850d0aca18 100644 --- a/htdocs/langs/fr_FR/askpricesupplier.lang +++ b/htdocs/langs/fr_FR/supplier_proposal.lang @@ -1,25 +1,25 @@ -# Dolibarr language file - Source file is en_US - askpricesupplier -AskPriceSupplier=Proposition commerciales fournisseurs -askpricesupplierDESC=Gestion des demandes de prix aux fournisseurs -askpricesupplierMENU_LEFT_TITLE=Demandes de prix fourn. -askpricesupplierMENU_LEFT_TITLE_NEW=Nouvelle demande -askpricesupplierMENU_LEFT_TITLE_LIST=Liste +# Dolibarr language file - Source file is en_US - supplier_proposal +SupplierProposal=Proposition commerciales fournisseurs +supplier_proposalDESC=Gestion des demandes de prix aux fournisseurs +supplier_proposalMENU_LEFT_TITLE=Demandes de prix fourn. +supplier_proposalMENU_LEFT_TITLE_NEW=Nouvelle demande +supplier_proposalMENU_LEFT_TITLE_LIST=Liste CommRequest=Demande de prix CommRequests=Demandes de prix SearchRequest=Rechercher une demande DraftRequests=Demandes brouillons LastModifiedRequests=Les %s dernières demandes de prix modifiées RequestsOpened=Demandes de prix ouvertes -AskPriceSupplierArea=Espace des demandes de prix fournisseurs +SupplierProposalArea=Espace des demandes de prix fournisseurs Askpricesupplier=Demande de prix fournisseur NewAskPrice=Nouvelle demande de prix NewAsk=Nouvelle demande ShowAskpricesupplier=Afficher la demande de prix -AddAskPriceSupplier=Créer une demande de prix -AskPriceSupplierRefFourn=Réf. fournisseur -AskPriceSupplierDate=Date de livraison -AskPriceSupplierRefFournNotice=Avant de clôturer à "Acceptée", pensez à saisir les références fournisseurs. -RelatedAskPriceSupplier=Demandes de prix fournisseurs associées +AddSupplierProposal=Créer une demande de prix +SupplierProposalRefFourn=Réf. fournisseur +SupplierProposalDate=Date de livraison +SupplierProposalRefFournNotice=Avant de clôturer à "Acceptée", pensez à saisir les références fournisseurs. +RelatedSupplierProposal=Demandes de prix fournisseurs associées ConfirmValidateAsk=Êtes-vous sûr de vouloir valider cette demande de prix sous la référence <b>%s</b> ? DateAsk=Date de demande DeleteAsk=Supprimer demande @@ -46,12 +46,12 @@ ConfirmCloneAsk=Êtes-vous sûr de vouloir cloner la demande de prix <b>%s</b> ? ConfirmReOpenAsk=Êtes-vous sûr de vouloir réouvrir la demande de prix <b>%s</b> ? SendAskByMail=Envoyer demande de prix par email SendAskRef=Envoi de la demande de prix %s -AskPriceSupplierCard=Fiche demande +SupplierProposalCard=Fiche demande ConfirmDeleteAsk=Êtes-vous sûr de vouloir effacer cette demande de prix <b>%s</b> ? -ActionsOnAskPriceSupplier=Événements sur la demande +ActionsOnSupplierProposal=Événements sur la demande DocModelAuroreDescription=Modèle de demande de prix fournisseur complet (logo…) CommercialAsk=Demande de prix -DefaultModelAskPriceSupplierCreate=Modèle par défaut à la création -DefaultModelAskPriceSupplierToBill=Modèle par défaut lors de la clôture d'une demande de prix (à accéptée) -DefaultModelAskPriceSupplierClosed=Modèle par défaut lors de la clôture d'une demande de prix (refusée) -ListOfAskPriceSupplier=Liste des demandes de prix fournisseurs \ No newline at end of file +DefaultModelSupplierProposalCreate=Modèle par défaut à la création +DefaultModelSupplierProposalToBill=Modèle par défaut lors de la clôture d'une demande de prix (à accéptée) +DefaultModelSupplierProposalClosed=Modèle par défaut lors de la clôture d'une demande de prix (refusée) +ListOfSupplierProposal=Liste des demandes de prix fournisseurs \ No newline at end of file diff --git a/htdocs/langs/he_IL/admin.lang b/htdocs/langs/he_IL/admin.lang index 4f64383c9f8b52da3de4baf3cea5cd0c3db50f29..9561ffa50de1bf2726395a556c1e892b98a9eb3d 100644 --- a/htdocs/langs/he_IL/admin.lang +++ b/htdocs/langs/he_IL/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=קו של המוצר / שירות עם כמות אפס FreeLegalTextOnProposal=טקסט חופשי על הצעות מסחריות WatermarkOnDraftProposal=סימן מים על הצעות טיוטה מסחריים (כל אם ריק) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=התקנה וניהול של סדר OrdersNumberingModules=הזמנות מספור מודולים diff --git a/htdocs/langs/he_IL/main.lang b/htdocs/langs/he_IL/main.lang index e07d2f997475d2245e8cb9585e80215efa0ee393..c46ee354b5b0e990048ecc5c8020ce8adf44d0d4 100644 --- a/htdocs/langs/he_IL/main.lang +++ b/htdocs/langs/he_IL/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/he_IL/other.lang b/htdocs/langs/he_IL/other.lang index ee0dc8f520308993695df8313fd129c4aa6a9a14..dc0343bdda0a2bff98a7ab0fca321f9ce8ea1fae 100644 --- a/htdocs/langs/he_IL/other.lang +++ b/htdocs/langs/he_IL/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/he_IL/printipp.lang b/htdocs/langs/he_IL/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/he_IL/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/hr_HR/admin.lang b/htdocs/langs/hr_HR/admin.lang index 77bbc62586f467ffe62079a6453431c7b8c13203..9f6b24df1995bfba1679d257e11f36d95f99c4ee 100644 --- a/htdocs/langs/hr_HR/admin.lang +++ b/htdocs/langs/hr_HR/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/hr_HR/main.lang b/htdocs/langs/hr_HR/main.lang index cca3d72d8d4b047af9676581504d5a1b21ff40ba..3195a70c2ad12abd95eb24d7f7ef693d557377b8 100644 --- a/htdocs/langs/hr_HR/main.lang +++ b/htdocs/langs/hr_HR/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/hr_HR/other.lang b/htdocs/langs/hr_HR/other.lang index c49606b8f7504a06d7daba530169d75d21dc7607..d6972e16de48844d714fe9e6eb92a31771fb7f2f 100644 --- a/htdocs/langs/hr_HR/other.lang +++ b/htdocs/langs/hr_HR/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/hr_HR/printipp.lang b/htdocs/langs/hr_HR/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/hr_HR/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/hu_HU/admin.lang b/htdocs/langs/hu_HU/admin.lang index 9eb5868acfc5a23ddf233a97c498e0aa522ce852..be9d72891c31d344e31efe114a9fa8dbef85704b 100644 --- a/htdocs/langs/hu_HU/admin.lang +++ b/htdocs/langs/hu_HU/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Egy sor termék / szolgáltatás nulla összeg szóba, 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order Management Setup OrdersNumberingModules=Megrendelés számozási modulok diff --git a/htdocs/langs/hu_HU/main.lang b/htdocs/langs/hu_HU/main.lang index 3b5bdc36be3ee27b6e7a3b146ad8341ce0b85620..2862f33388b5902b0250d5002329d63215e59117 100644 --- a/htdocs/langs/hu_HU/main.lang +++ b/htdocs/langs/hu_HU/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Egység ár (nettó) UnitPriceTTC=Egység ár PriceU=E.Á. PriceUHT=E.Á. (nettó) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Mennyiség AmountInvoice=Számla mennyiség diff --git a/htdocs/langs/hu_HU/other.lang b/htdocs/langs/hu_HU/other.lang index d79d3d03b48a53808c2c726f02f9965ec691d596..b6165f9a508df74b19a7e4ceb7ee59f81d0ca6da 100644 --- a/htdocs/langs/hu_HU/other.lang +++ b/htdocs/langs/hu_HU/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Ez egy <b>teszt</b> mail (a szó vizsgálatot kell vastag PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/hu_HU/printipp.lang b/htdocs/langs/hu_HU/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/hu_HU/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/id_ID/admin.lang b/htdocs/langs/id_ID/admin.lang index e8bf7adf9b2acfc08d513c8559fa45db51a55059..16b02f38038e70b7428ef3291c345ce7255c8e66 100644 --- a/htdocs/langs/id_ID/admin.lang +++ b/htdocs/langs/id_ID/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/id_ID/main.lang b/htdocs/langs/id_ID/main.lang index c7f35694d73234cf5d9b2057bb05c87a26a2ef20..2a447f0d1201b740f6261820d55a5daf1d0f2253 100644 --- a/htdocs/langs/id_ID/main.lang +++ b/htdocs/langs/id_ID/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/id_ID/other.lang b/htdocs/langs/id_ID/other.lang index 7a38b9f6aba10c49596940fa74b4b2666772c90d..a90be693f547fe79ccb0dd0b16ab3b7046bbaf21 100644 --- a/htdocs/langs/id_ID/other.lang +++ b/htdocs/langs/id_ID/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/id_ID/printipp.lang b/htdocs/langs/id_ID/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/id_ID/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/is_IS/admin.lang b/htdocs/langs/is_IS/admin.lang index ff5f580b28a5b16a49d403e8e6fae5468b01f91a..e65160d61a6ce7338ba2960c63b2617cc0930c3f 100644 --- a/htdocs/langs/is_IS/admin.lang +++ b/htdocs/langs/is_IS/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A lína af vöru / þjónustu með núll upphæð er t 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Stjórn Order's skipulag OrdersNumberingModules=Pantanir tala mát diff --git a/htdocs/langs/is_IS/main.lang b/htdocs/langs/is_IS/main.lang index e644d3aad3530d9c061b136170a6aa2fe04477c6..696554d24da3263fd71f5b04fd5b979fb2aab349 100644 --- a/htdocs/langs/is_IS/main.lang +++ b/htdocs/langs/is_IS/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit verð (nettó) UnitPriceTTC=Eining verðs PriceU=UPP PriceUHT=UP (nettó) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Upphæð AmountInvoice=Invoice upphæð diff --git a/htdocs/langs/is_IS/other.lang b/htdocs/langs/is_IS/other.lang index 485ffc7841f3d5eaedd98e33dd2fe3b0eb772f7a..2f40cd2fbde0d564590f82fb2debf15dc11b2708 100644 --- a/htdocs/langs/is_IS/other.lang +++ b/htdocs/langs/is_IS/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Þetta er <b>prófun</b> póstur (orðið próf verður f PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/is_IS/printipp.lang b/htdocs/langs/is_IS/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/is_IS/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/it_IT/admin.lang b/htdocs/langs/it_IT/admin.lang index e8a80b8fdc114ce7944f0f206c43c92459d2b5f0..1eb38b5c2edd994fc98fc8207fcf6950b88b6691 100644 --- a/htdocs/langs/it_IT/admin.lang +++ b/htdocs/langs/it_IT/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Una linea di prodotto/servizio con un importo pari a 0 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Configurazione della gestione ordini OrdersNumberingModules=Modelli di numerazione degli ordini diff --git a/htdocs/langs/it_IT/main.lang b/htdocs/langs/it_IT/main.lang index 1d67b0be9595a3d95629ef9dfe8aa01d970a1a6f..bca67cab22c9dc5c0c06b9249243fec38c9d6905 100644 --- a/htdocs/langs/it_IT/main.lang +++ b/htdocs/langs/it_IT/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Prezzo unitario (netto) UnitPriceTTC=Prezzo unitario (lordo) PriceU=P.U. PriceUHT=P.U.(netto) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Importo AmountInvoice=Importo della fattura diff --git a/htdocs/langs/it_IT/other.lang b/htdocs/langs/it_IT/other.lang index a1ff97351db73da89a560a5a85567b4655f53e53..11b44cc0d732902e6a74149e3b8035542e491043 100644 --- a/htdocs/langs/it_IT/other.lang +++ b/htdocs/langs/it_IT/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Questa è una mail <b>di test</b> (la parola test deve ri PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nGentile Cliente,\nin allegato trova la nostra fattura numero __FACREF__\n\n__PERSONALIZED__Cordiali saluti\n\nIl presente invio SOSTITUISCE INTEGRALMENTE quello effettuato in modo tradizionale a mezzo servizio postale.\n\nTale operazione è ammessa dalla normativa fiscale in essere, relativa alla "Trasmissione delle Fatture" per via Telematica:\nR.M. n. 571134 del 19/07/88 - (posta elettronica);\nR.M. n. 450217 del 30/07/90 - (procedure informatizzate);R.M. n. 107 del 04/07/01 - (trasmissione atture);\nR.M. n. 202/E del 04/12/01 - (archiviazione fatture).\nRisoluzioni che forniscono chiarimenti in ordine alle condizioni necessarie per l'ammissibilità ai sensi dell'art. 21 D.P.R. 26/10/72, n.633, della procedura di trasmissione e memorizzazione delle fatture mediante sistemi combinati fondati sull'impiego congiunto di supporti informatici, telefax\ne posta elettronica.\n\n È necessario GENERARNE UNA STAMPA e procedere alla relativa archiviazione come da prassi a norma di legge.\n\nRimaniamo a completa disposizione per qualsiasi informazione.\n\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \nVorremmo portare alla Vostra attenzione che la fattura __FACREF__ sembra non essere stata saldata. La fattura è allegata alla presente, come promemoria.\n\n__PERSONALIZED__Cordiali Saluti\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nAlleghiamo la proposta commerciale __PROPREF__ \n\n__PERSONALIZED__ Cordiali Saluti\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nAlleghiamo l'ordine __ORDERREF__\n\n__PERSONALIZED__ Cordiali Saluti\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nAlleghiamo il nostro ordine __ORDERREF__\n\n__PERSONALIZED__Cordiali Saluti\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nGentile Cliente,\nin allegato trova la nostra fattura __FACREF__\n\n__PERSONALIZED__Cordiali Saluti\n\nIl presente invio SOSTITUISCE INTEGRALMENTE quello effettuato in modo tradizionale a mezzo servizio postale.\n\nTale operazione è ammessa dalla normativa fiscale in essere, relativa alla "Trasmissione delle Fatture" per via Telematica:\nR.M. n. 571134 del 19/07/88 - (posta elettronica);\nR.M. n. 450217 del 30/07/90 - (procedure informatizzate);R.M. n. 107 del 04/07/01 - (trasmissione atture);\nR.M. n. 202/E del 04/12/01 - (archiviazione fatture).\nRisoluzioni che forniscono chiarimenti in ordine alle condizioni necessarie per l'ammissibilità ai sensi dell'art. 21 D.P.R. 26/10/72, n.633, della procedura di trasmissione e memorizzazione delle fatture mediante sistemi combinati fondati sull'impiego congiunto di supporti informatici, telefax\ne posta elettronica.\n\n È necessario GENERARNE UNA STAMPA e procedere alla relativa archiviazione come da prassi a norma di legge.\n\nRimaniamo a completa disposizione per qualsiasi informazione.\n\n__SIGNATURE__ diff --git a/htdocs/langs/it_IT/printipp.lang b/htdocs/langs/it_IT/printipp.lang deleted file mode 100644 index dd6c2dd584b2b36a33390571831e21593e216e19..0000000000000000000000000000000000000000 --- a/htdocs/langs/it_IT/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Impostazioni modulo Direct Print -PrintIPPDesc=Questo modulo aggiunge un pulsante per la stampa diretta dei documenti. Funziona solo su Linux con sistema di stampa CUPS. -PRINTIPP_ENABLED=Mostra icona "Stampa diretta" nella lista dei documenti -PRINTIPP_HOST=Server -PRINTIPP_PORT=Porta -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=Nessuna stampante trovata (controlla la tua installazione di CUPS) -FileWasSentToPrinter=Il file %s è stato inviato alla stampante -NoDefaultPrinterDefined=Non è presente una stampante predefinita -DefaultPrinter=Stampante predefinita -Printer=Stampante -CupsServer=Server CUPS diff --git a/htdocs/langs/ja_JP/admin.lang b/htdocs/langs/ja_JP/admin.lang index 46d534d10e24d67965fe981f91d4b78584b7d23a..3eb5b0c0da8ff3df29a359f9c544ca7229506cab 100644 --- a/htdocs/langs/ja_JP/admin.lang +++ b/htdocs/langs/ja_JP/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=ゼロ量と製品/サービスのラインは、オ FreeLegalTextOnProposal=商業的な提案でフリーテキスト WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=注文の管理セットアップ OrdersNumberingModules=モジュールの番号受注 diff --git a/htdocs/langs/ja_JP/main.lang b/htdocs/langs/ja_JP/main.lang index 5c83ef3a01d9fedecb2a6ffbd031bd14374afb8d..917414dc2bdca62df3db397b43a6b7dea6c251e4 100644 --- a/htdocs/langs/ja_JP/main.lang +++ b/htdocs/langs/ja_JP/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=単価(純額) UnitPriceTTC=単価 PriceU=UP PriceUHT=UP(純額) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=量 AmountInvoice=請求額 diff --git a/htdocs/langs/ja_JP/other.lang b/htdocs/langs/ja_JP/other.lang index 4baf53dc6ad5a98471e85a330ee518b3d76972ae..8b61273e70c289359e86338b36f16d125e8e506d 100644 --- a/htdocs/langs/ja_JP/other.lang +++ b/htdocs/langs/ja_JP/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=これは<b>テスト</b>メール(ワードテスト PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/ja_JP/printipp.lang b/htdocs/langs/ja_JP/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/ja_JP/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/ka_GE/admin.lang b/htdocs/langs/ka_GE/admin.lang index a5ee8d10ba53c1a5685dda891ec88dea5ed18749..887ba75d0e01eb91ce92938ebddea706524dd3b3 100644 --- a/htdocs/langs/ka_GE/admin.lang +++ b/htdocs/langs/ka_GE/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/ka_GE/main.lang b/htdocs/langs/ka_GE/main.lang index 49c2c3eec37c2789daec48d94d649e4557d9919e..3eec2987d4167fe4ac34fbfa9ba5397f2c1c9324 100644 --- a/htdocs/langs/ka_GE/main.lang +++ b/htdocs/langs/ka_GE/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/ka_GE/other.lang b/htdocs/langs/ka_GE/other.lang index c49606b8f7504a06d7daba530169d75d21dc7607..d6972e16de48844d714fe9e6eb92a31771fb7f2f 100644 --- a/htdocs/langs/ka_GE/other.lang +++ b/htdocs/langs/ka_GE/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/ka_GE/printipp.lang b/htdocs/langs/ka_GE/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/ka_GE/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/kn_IN/admin.lang b/htdocs/langs/kn_IN/admin.lang index a5ee8d10ba53c1a5685dda891ec88dea5ed18749..887ba75d0e01eb91ce92938ebddea706524dd3b3 100644 --- a/htdocs/langs/kn_IN/admin.lang +++ b/htdocs/langs/kn_IN/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/kn_IN/main.lang b/htdocs/langs/kn_IN/main.lang index 49c2c3eec37c2789daec48d94d649e4557d9919e..3eec2987d4167fe4ac34fbfa9ba5397f2c1c9324 100644 --- a/htdocs/langs/kn_IN/main.lang +++ b/htdocs/langs/kn_IN/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/kn_IN/other.lang b/htdocs/langs/kn_IN/other.lang index c49606b8f7504a06d7daba530169d75d21dc7607..d6972e16de48844d714fe9e6eb92a31771fb7f2f 100644 --- a/htdocs/langs/kn_IN/other.lang +++ b/htdocs/langs/kn_IN/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/kn_IN/printipp.lang b/htdocs/langs/kn_IN/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/kn_IN/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/ko_KR/admin.lang b/htdocs/langs/ko_KR/admin.lang index cefbf8dc630f721927d1349dbbbb80a485cc577e..842ca34cb7f37a432ddeb91561a899805619aad2 100644 --- a/htdocs/langs/ko_KR/admin.lang +++ b/htdocs/langs/ko_KR/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/ko_KR/main.lang b/htdocs/langs/ko_KR/main.lang index 9884fe5b626c749bd69caec779207d318799f018..5997dbb3dcaa389407b7a0f2b4dff63fb8befa5f 100644 --- a/htdocs/langs/ko_KR/main.lang +++ b/htdocs/langs/ko_KR/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/ko_KR/other.lang b/htdocs/langs/ko_KR/other.lang index 32ab3851e39155672de8fb1c46aa9c49981241ba..86b4dafb9c4947268dedc755f98e89f36f352f5b 100644 --- a/htdocs/langs/ko_KR/other.lang +++ b/htdocs/langs/ko_KR/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/ko_KR/printipp.lang b/htdocs/langs/ko_KR/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/ko_KR/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/lo_LA/admin.lang b/htdocs/langs/lo_LA/admin.lang index a5ee8d10ba53c1a5685dda891ec88dea5ed18749..887ba75d0e01eb91ce92938ebddea706524dd3b3 100644 --- a/htdocs/langs/lo_LA/admin.lang +++ b/htdocs/langs/lo_LA/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/lo_LA/main.lang b/htdocs/langs/lo_LA/main.lang index 49c2c3eec37c2789daec48d94d649e4557d9919e..3eec2987d4167fe4ac34fbfa9ba5397f2c1c9324 100644 --- a/htdocs/langs/lo_LA/main.lang +++ b/htdocs/langs/lo_LA/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/lo_LA/other.lang b/htdocs/langs/lo_LA/other.lang index c49606b8f7504a06d7daba530169d75d21dc7607..d6972e16de48844d714fe9e6eb92a31771fb7f2f 100644 --- a/htdocs/langs/lo_LA/other.lang +++ b/htdocs/langs/lo_LA/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/lo_LA/printipp.lang b/htdocs/langs/lo_LA/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/lo_LA/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/lt_LT/admin.lang b/htdocs/langs/lt_LT/admin.lang index b2c75cfb07a56ea461307caeb763722519e1a3e4..fa2dc8c6ab1b40fbca6699887d0c829938e96e96 100644 --- a/htdocs/langs/lt_LT/admin.lang +++ b/htdocs/langs/lt_LT/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Produkto/paslaugos linija su nuline suma yra laikoma g 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Tiekėjų modulyje kainos prašymo nustatymas -AskPriceSupplierNumberingModules=Tiekėjų modulyje kainos prašymų numeracijos modeliai -AskPriceSupplierPDFModules=Tiekėjų modulyje kainos prašymų dokumentų modeliai -FreeLegalTextOnAskPriceSupplier=Laisvas tekstas kainos prašymuose -WatermarkOnDraftAskPriceSupplier=Vandens ženklas ant kainų prašymų tiekėjų (nėra jei tuščias) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Klausti banko sąskaitos paskirties ant kainos užklausos +##### SupplierProposal ##### +SupplierProposalSetup=Tiekėjų modulyje kainos prašymo nustatymas +SupplierProposalNumberingModules=Tiekėjų modulyje kainos prašymų numeracijos modeliai +SupplierProposalPDFModules=Tiekėjų modulyje kainos prašymų dokumentų modeliai +FreeLegalTextOnSupplierProposal=Laisvas tekstas kainos prašymuose +WatermarkOnDraftSupplierProposal=Vandens ženklas ant kainų prašymų tiekėjų (nėra jei tuščias) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Klausti banko sąskaitos paskirties ant kainos užklausos ##### Orders ##### OrdersSetup=Užsakymų valdymo nuostatos OrdersNumberingModules=Užsakymų numeracijos modeliai diff --git a/htdocs/langs/lt_LT/main.lang b/htdocs/langs/lt_LT/main.lang index 225589204aedce7063b1f5d0daaba7297350d595..7d47b393b0ae480d5d5d83bf5d388628dba76bff 100644 --- a/htdocs/langs/lt_LT/main.lang +++ b/htdocs/langs/lt_LT/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Vieneto kaina (grynoji) UnitPriceTTC=Vieneto kaina PriceU=U.P. PriceUHT=U.P. (grynasis) -AskPriceSupplierUHT=U.P. grynasis Prašomas +SupplierProposalUHT=U.P. grynasis Prašomas PriceUTTC=U.P. (įsk. mokesčius) Amount=Suma AmountInvoice=Sąskaitos-faktūros suma diff --git a/htdocs/langs/lt_LT/other.lang b/htdocs/langs/lt_LT/other.lang index a2da33ecb0e55a1c2855075566944522fbaa5349..45d66704e312dcbb9bbc7305feff7cd20a2f5155 100644 --- a/htdocs/langs/lt_LT/other.lang +++ b/htdocs/langs/lt_LT/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Tai yra pašto <b>bandymas</b> (žodis bandymas turi būt PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nČia rasite sąskaitą-faktūrą __ FACREF__\n\n__ PERSONALIZED__Sincerely\n\n__ SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nNorime jus perspėti, kad sąskaita-faktūra __ FACREF__ atrodo yra neapmokėta. Todėl tai yra pakartotinis priminimas apmokėti sąskaitą-faktūrą ir pakartotinai prikabinta sąskaita-faktūra.\n\n__PERSONALIZED__Sincerely\n\n__ SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nČia rasite komercinį pasiūlymą __ PROPREF__\n\n__ PERSONALIZED__Sincerely\n\n__ SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nČia rasite užsakymą __ ORDERREF__\n\n__ PERSONALIZED__Sincerely\n\n__ SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nČia rasite mūsų užsakymą __ ORDERREF__\n\n__ PERSONALIZED__Sincerely\n\n__ SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nČia rasite sąskaitą-faktūrą __ FACREF__\n\n__ PERSONALIZED__Sincerely\n\n__ SIGNATURE__ diff --git a/htdocs/langs/lt_LT/printipp.lang b/htdocs/langs/lt_LT/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/lt_LT/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/lv_LV/admin.lang b/htdocs/langs/lv_LV/admin.lang index 3b67036e1d80a4b61d6efb0d382f282df5fcf1fe..78cc5e8f4b18094d9fd3584bc3a5ae48b290cd57 100644 --- a/htdocs/langs/lv_LV/admin.lang +++ b/htdocs/langs/lv_LV/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Produkta / pakalpojuma ar nulles summu līnija tiek uz 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Pasūtījumu vadības iestatīšana OrdersNumberingModules=Pasūtījumu numerācijas modeļi diff --git a/htdocs/langs/lv_LV/main.lang b/htdocs/langs/lv_LV/main.lang index 30e2ca28da1bbc58c638cf2c505a42d89a2b39d4..d48722a4636d039f622c64ea002c84664456a0f1 100644 --- a/htdocs/langs/lv_LV/main.lang +++ b/htdocs/langs/lv_LV/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Vienības cena (neto) UnitPriceTTC=Vienības cena PriceU=UP PriceUHT=UP (neto) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Summa AmountInvoice=Rēķina summa diff --git a/htdocs/langs/lv_LV/other.lang b/htdocs/langs/lv_LV/other.lang index e540fba4c8474b5f576379eacacafbf63af130a3..c343c0c82cf01f7aec0bc63aadacc4cbf8c5dd24 100644 --- a/htdocs/langs/lv_LV/other.lang +++ b/htdocs/langs/lv_LV/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Tas ir <b>tests</b> pasts (vārds testam jābūt treknrak PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\n\nYou will find here the invoice __FACREF__\n\n\n__PERSONALIZED__Sincerely\n\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n\n__PERSONALIZED__Sincerely\n\n\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nJums tiek nosūtīts komerciālais piedāvājums __PROPREF__\n\n__PERSONALIZED__Ar cieņu\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/lv_LV/printipp.lang b/htdocs/langs/lv_LV/printipp.lang deleted file mode 100644 index 34b0d4c674cc40b789cc5ff62e323cebd2e217a0..0000000000000000000000000000000000000000 --- a/htdocs/langs/lv_LV/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Printeru serveris -PRINTIPP_PORT=Ports -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Parole -NoPrinterFound=Printeri nav atrasti (pārbaidiet CUPS iestatījumus) -FileWasSentToPrinter=Fails %s nosūtīts uz printeri -NoDefaultPrinterDefined=Nav definēts noklusējtais printeris -DefaultPrinter=Noklusētais printeris -Printer=Printeris -CupsServer=CUPS Serveris diff --git a/htdocs/langs/mk_MK/admin.lang b/htdocs/langs/mk_MK/admin.lang index a5ee8d10ba53c1a5685dda891ec88dea5ed18749..887ba75d0e01eb91ce92938ebddea706524dd3b3 100644 --- a/htdocs/langs/mk_MK/admin.lang +++ b/htdocs/langs/mk_MK/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/mk_MK/main.lang b/htdocs/langs/mk_MK/main.lang index c7f35694d73234cf5d9b2057bb05c87a26a2ef20..2a447f0d1201b740f6261820d55a5daf1d0f2253 100644 --- a/htdocs/langs/mk_MK/main.lang +++ b/htdocs/langs/mk_MK/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/mk_MK/other.lang b/htdocs/langs/mk_MK/other.lang index c49606b8f7504a06d7daba530169d75d21dc7607..d6972e16de48844d714fe9e6eb92a31771fb7f2f 100644 --- a/htdocs/langs/mk_MK/other.lang +++ b/htdocs/langs/mk_MK/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/mk_MK/printipp.lang b/htdocs/langs/mk_MK/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/mk_MK/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/nb_NO/admin.lang b/htdocs/langs/nb_NO/admin.lang index bfa033b15af1a4a67f7878fa643744a864216b59..6abf62b594c92407c080aabdd7c36674b53cf6b3 100644 --- a/htdocs/langs/nb_NO/admin.lang +++ b/htdocs/langs/nb_NO/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=En vare/tjeneste med med null i kvantum blir betraktet FreeLegalTextOnProposal=Fritekst på tilbud WatermarkOnDraftProposal=Vannmerke på tilbudskladder (ingen hvis tom) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Be om bakkonto for tilbudet -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Oppsett av modulen leverandør-prisforespørsler -AskPriceSupplierNumberingModules=Leverandør-prisforespørsel nummereringsmodeller -AskPriceSupplierPDFModules=Leverandør-prisforespørsel dokumentmodeller -FreeLegalTextOnAskPriceSupplier=Fritekst på leverandør-prisforespørsel -WatermarkOnDraftAskPriceSupplier=Vannmerke på kladder av leverandør-prisforepørsler (ingen hvis tom) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Be om bankkonto for prisforespørsel +##### SupplierProposal ##### +SupplierProposalSetup=Oppsett av modulen leverandør-prisforespørsler +SupplierProposalNumberingModules=Leverandør-prisforespørsel nummereringsmodeller +SupplierProposalPDFModules=Leverandør-prisforespørsel dokumentmodeller +FreeLegalTextOnSupplierProposal=Fritekst på leverandør-prisforespørsel +WatermarkOnDraftSupplierProposal=Vannmerke på kladder av leverandør-prisforepørsler (ingen hvis tom) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Be om bankkonto for prisforespørsel ##### Orders ##### OrdersSetup=Innstillinger for ordre OrdersNumberingModules=Nummereringsmodul for ordre diff --git a/htdocs/langs/nb_NO/main.lang b/htdocs/langs/nb_NO/main.lang index 4948f0837314bfa3af76708f8833283e4dd1ffff..456c2f5ab4e06a8cf91e043701dd96ba5e87b5ce 100644 --- a/htdocs/langs/nb_NO/main.lang +++ b/htdocs/langs/nb_NO/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Enhetspris (netto) UnitPriceTTC=Enhetspris PriceU=Pris PriceUHT=Pris (netto) -AskPriceSupplierUHT=Forespørsel om nettopris +SupplierProposalUHT=Forespørsel om nettopris PriceUTTC=U.P. (inkl. avgift) Amount=Beløp AmountInvoice=Fakturabeløp diff --git a/htdocs/langs/nb_NO/other.lang b/htdocs/langs/nb_NO/other.lang index e1536345a4c6b703f67b469a0d4daba8af7fe662..595250410398fe93f4c023aafe611d4c8cb8b19a 100644 --- a/htdocs/langs/nb_NO/other.lang +++ b/htdocs/langs/nb_NO/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Dette er en <b>test</b> e-post (ordet test må være i fe PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nVedlagt faktura __FACREF__\n\n__PERSONALIZED__Med vennlig hilsen\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nVi kan ikke se å ha mottatt betaling for faktura __FACREF__ . Som påminnelse sender vi fakturaen på nytt\n\n__PERSONALIZED__Med vennlig hilsen\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nVedlagt følger tilbud__PROPREF__\n\n__PERSONALIZED__med vennlig hilsen\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nVedlagt følger prisforespørsel __ASKREF__\n\n__PERSONALIZED__med vennlig hilsen\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nVedlagt følger prisforespørsel __ASKREF__\n\n__PERSONALIZED__med vennlig hilsen\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nVedlagt følger ordrenummer __ORDERREF__\n\n__PERSONALIZED__med vennlig hilsen\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nVedlagt følger ordrenummer __ORDERREF__\n\n__PERSONALIZED__med vennlig hilsen\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nVedlagt faktura __FACREF__\n\n__PERSONALIZED__Med vennlig hilsen\n\n__SIGNATURE__ diff --git a/htdocs/langs/nb_NO/printipp.lang b/htdocs/langs/nb_NO/printipp.lang deleted file mode 100644 index b579c2dbb842b7c94b95c57c96d52ea6c26aa7df..0000000000000000000000000000000000000000 --- a/htdocs/langs/nb_NO/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Oppsett av Direkteutskrift modul -PrintIPPDesc=Denne modulen legger til en knapp for å sende dokumenter direkte til en skriver. Det krever et Linux-system med CUPS installert. -PRINTIPP_ENABLED=Vis "Direkteutskrift" ikon i dokumentlister -PRINTIPP_HOST=Skriverserver -PRINTIPP_PORT=Port -PRINTIPP_USER=Innlogging -PRINTIPP_PASSWORD=Passord -NoPrinterFound=Ingen skrivere funnet (sjekk CUPS oppsett) -FileWasSentToPrinter=Filen %s ble sendt til skriveren -NoDefaultPrinterDefined=Ingen standardskriver definert -DefaultPrinter=Standardskriver -Printer=Skriver -CupsServer=CUPS Server diff --git a/htdocs/langs/nl_NL/admin.lang b/htdocs/langs/nl_NL/admin.lang index 1c9dc4267eba0ed8dc970b1a6632086361ca89d5..375e33548870e991b8d0ba61f5a9e9a359ba0961 100644 --- a/htdocs/langs/nl_NL/admin.lang +++ b/htdocs/langs/nl_NL/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Product- / dienstregels met een waarde van 0 gebruiken 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Prijsaanvragen leveranciers module instelling -AskPriceSupplierNumberingModules=Prijsaanvragen leveranciers nummering modellen -AskPriceSupplierPDFModules=Prijsaanvragen leveranciers documenten modellen -FreeLegalTextOnAskPriceSupplier=Vrije tekst op leveranciers prijsaanvragen -WatermarkOnDraftAskPriceSupplier=Watermerk op ontwerp leveranciers prijsaanvraag (geen als leeg) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Vraag naar bankrekening bestemming van prijsaanvraag +##### SupplierProposal ##### +SupplierProposalSetup=Prijsaanvragen leveranciers module instelling +SupplierProposalNumberingModules=Prijsaanvragen leveranciers nummering modellen +SupplierProposalPDFModules=Prijsaanvragen leveranciers documenten modellen +FreeLegalTextOnSupplierProposal=Vrije tekst op leveranciers prijsaanvragen +WatermarkOnDraftSupplierProposal=Watermerk op ontwerp leveranciers prijsaanvraag (geen als leeg) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Vraag naar bankrekening bestemming van prijsaanvraag ##### Orders ##### OrdersSetup=Opdrachtenbeheerinstellingen OrdersNumberingModules=Opdrachtennummeringmodules diff --git a/htdocs/langs/nl_NL/main.lang b/htdocs/langs/nl_NL/main.lang index 094df954fe5c91cc06d051e2f792e4a768ba64f4..11111d0feaf11c3cdc9ab08ac6b9ea6bb320e3b3 100644 --- a/htdocs/langs/nl_NL/main.lang +++ b/htdocs/langs/nl_NL/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Eenheidsprijs (netto) UnitPriceTTC=Eenheidsprijs (bruto) PriceU=E.P. PriceUHT=EP (netto) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Hoeveelheid AmountInvoice=Factuurbedrag diff --git a/htdocs/langs/nl_NL/other.lang b/htdocs/langs/nl_NL/other.lang index 388bb7631430924c7d80baff83cb98bca3b16026..bb44b6ab054ff7664b0aa1567254590468945767 100644 --- a/htdocs/langs/nl_NL/other.lang +++ b/htdocs/langs/nl_NL/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Dit is een <b>test</b> e-mail (het woord test moet vetged PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Hierbij sturen wij u de factuur __FACREF__\n\n__PERSONALIZED__Met vriendelijke groeten,\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/nl_NL/printipp.lang b/htdocs/langs/nl_NL/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/nl_NL/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/pl_PL/admin.lang b/htdocs/langs/pl_PL/admin.lang index 4f60f4776ba24a8fc8d161bbf6957a5365c3bd99..fdc3a61f55c4849b5c094e8b6c77672d29e9c8b4 100644 --- a/htdocs/langs/pl_PL/admin.lang +++ b/htdocs/langs/pl_PL/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Linia produktów / usług z zerową ilość jest trakt 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Cena żąda konfiguracji modułu dostawcy -AskPriceSupplierNumberingModules=Wnioski Cena dostawcy numeracji modeli -AskPriceSupplierPDFModules=Cena żąda dostawców modele dokumenty -FreeLegalTextOnAskPriceSupplier=Bezpłatne tekst na podania Ceny dostawców -WatermarkOnDraftAskPriceSupplier=Znak wodny na projekt cenie żąda dostawców (brak jeśli pusty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Zapytaj o rachunku bankowego przeznaczenia zamówienie cena +##### SupplierProposal ##### +SupplierProposalSetup=Cena żąda konfiguracji modułu dostawcy +SupplierProposalNumberingModules=Wnioski Cena dostawcy numeracji modeli +SupplierProposalPDFModules=Cena żąda dostawców modele dokumenty +FreeLegalTextOnSupplierProposal=Bezpłatne tekst na podania Ceny dostawców +WatermarkOnDraftSupplierProposal=Znak wodny na projekt cenie żąda dostawców (brak jeśli pusty) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Zapytaj o rachunku bankowego przeznaczenia zamówienie cena ##### Orders ##### OrdersSetup=Zamówienia zarządzania konfiguracją OrdersNumberingModules=Zamówienia numeracji modules diff --git a/htdocs/langs/pl_PL/main.lang b/htdocs/langs/pl_PL/main.lang index c05348d2f203e37c2149fde1b28edbd584f38f0d..3b9105eda3976da422c74f9eeb3a4e311c169511 100644 --- a/htdocs/langs/pl_PL/main.lang +++ b/htdocs/langs/pl_PL/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Cena jednostkowa (netto) UnitPriceTTC=Cena jednostkowa PriceU=cen/szt. PriceUHT=cen/szt (netto) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Ilość AmountInvoice=Kwota faktury diff --git a/htdocs/langs/pl_PL/other.lang b/htdocs/langs/pl_PL/other.lang index 8a1d21d682fc66363654721435ed7c34b54e4f05..59e18906550313fa195dbcc598e113057eda4648 100644 --- a/htdocs/langs/pl_PL/other.lang +++ b/htdocs/langs/pl_PL/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Dette er en <b>test</b> mail (ordet testen må være i fe PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ Znajdziesz tu fakturę __FACREF__ __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ Chcielibyśmy ostrzec, że __FACREF__ faktura wydaje się nie jest wypłacana. Więc to jest faktura w załączniku znowu, jako przypomnienie. __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__ Znajdziesz tu propozycję handlową __PROPREF__ __PERSONALIZED__Sincerely __SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__ Znajdziesz tu wniosek cen __ASKREF__ __PERSONALIZED__Sincerely __SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__ Znajdziesz tu wniosek cen __ASKREF__ __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__ Znajdziesz tu porządek __ORDERREF__ __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ Znajdziesz tu nasze zamówienie __ORDERREF__ __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ Znajdziesz tu fakturę __FACREF__ __PERSONALIZED__Sincerely __SIGNATURE__ diff --git a/htdocs/langs/pl_PL/printipp.lang b/htdocs/langs/pl_PL/printipp.lang deleted file mode 100644 index e0e18a450b95db0bd0d92858dfe4ec03a6e02963..0000000000000000000000000000000000000000 --- a/htdocs/langs/pl_PL/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Konfiguracja modułu Direct Print -PrintIPPDesc=Moduł ten dodaje przycisk Drukuj, aby wysłać dokumenty bezpośrednio do drukarki. To wymaga systemu Linux z CUPS zainstalowanych. -PRINTIPP_ENABLED=Pokaż ikonę "Druk bezpośredni" na listach dokumentów -PRINTIPP_HOST=Serwer druku -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Hasło -NoPrinterFound=Nie znaleziono drukarki (sprawdź konfigurację CUPS) -FileWasSentToPrinter=Plik% s został wysłany do drukarki -NoDefaultPrinterDefined=Nie drukarka domyślna zdefiniowana -DefaultPrinter=Drukarka domyślna -Printer=Drukarka -CupsServer=Serwer CUPS diff --git a/htdocs/langs/pt_BR/admin.lang b/htdocs/langs/pt_BR/admin.lang index 16c2aa1ba0dd0afb6931eb7c9cb75b4ca2101457..7f66261c6a0121ccc03d16cda8abb31eb3d2ca98 100644 --- a/htdocs/langs/pt_BR/admin.lang +++ b/htdocs/langs/pt_BR/admin.lang @@ -1021,10 +1021,10 @@ UseOptionLineIfNoQuantity=Uma linha de produto/serviço com quantidade zero é c 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 -AskPriceSupplierSetup=Preço solicitado via fornecedor instalação de módulo -FreeLegalTextOnAskPriceSupplier=Texto livre sobre os pedidos de preços de fornecedores -WatermarkOnDraftAskPriceSupplier=Marca d'água em projetos de ordem dos fornecedores (nenhum se estiver vazio) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Informar conta bancária de destino da proposta +SupplierProposalSetup=Preço solicitado via fornecedor instalação de módulo +FreeLegalTextOnSupplierProposal=Texto livre sobre os pedidos de preços de fornecedores +WatermarkOnDraftSupplierProposal=Marca d'água em projetos de ordem dos fornecedores (nenhum se estiver vazio) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Informar conta bancária de destino da proposta OrdersSetup=Configurações do gestor de pedidos OrdersNumberingModules=modelos de numeração de pedidos OrdersModelModule=Modelos de documentos de pedidos diff --git a/htdocs/langs/pt_BR/main.lang b/htdocs/langs/pt_BR/main.lang index 96f743193c165eae1a275ff216f82be3175f49e8..2f33c7535733f98ec6e2ab5b3d7c9966ac187079 100644 --- a/htdocs/langs/pt_BR/main.lang +++ b/htdocs/langs/pt_BR/main.lang @@ -153,7 +153,7 @@ UnitPriceHT=Preço Base UnitPriceTTC=Preço Unit. Total PriceU=Preço Unit. PriceUHT=Preço Unit. -AskPriceSupplierUHT=UP net solicitada +SupplierProposalUHT=UP net solicitada PriceUTTC=U.P. (inc. Impostos) AmountInvoice=Valor Fatura AmountPayment=Valor Pagamento diff --git a/htdocs/langs/pt_BR/other.lang b/htdocs/langs/pt_BR/other.lang index 4f7f8c03d2ac96a7bdb4ef70288d3a88da771ef6..787d0272b8eaa8cb747ed52f1506b3bdc66108c6 100644 --- a/htdocs/langs/pt_BR/other.lang +++ b/htdocs/langs/pt_BR/other.lang @@ -50,7 +50,7 @@ PredefinedMailTestHtml=Esse e um email de <b>teste</b> (a palavra test deve ser PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ Você vai encontrar aqui a factura __ FACREF__ __ PERSONALIZED__Sincerely __ SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__ CONTACTCIV NAM E__ Gostaríamos de avisar que a fatura __ FACREF__ parece não ter sido pago. Portanto, esta é a fatura em anexo novamente, como um lembrete. __PERSONALIZED __ Sincerely __ SIGNATURE __ PredefinedMailContentSendProposal=__ CONTACTCIV NAME__ Você vai encontrar aqui a proposta comercial __ PROPREF__ __ PERSONALIZED__Sincerely __ SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nVocê vai encontrar aqui o preço pedido __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nVocê vai encontrar aqui o preço pedido __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIV NAME__ Você vai encontrar aqui a ordem __ ORDERREF__ __ PERSONALIZED__Sincerely __ SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ Você vai encontrar aqui o nosso pedido __ ORDERREF__ __ PERSONALIZED__Sincerely __ SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ Você vai encontrar aqui a factura __ FACREF__ __ PERSONALIZED__Sincerely __ SIGNATURE__ diff --git a/htdocs/langs/pt_BR/printipp.lang b/htdocs/langs/pt_BR/printipp.lang deleted file mode 100644 index bfa731b0a3692cdf8b15d583506ad6028f3f3eae..0000000000000000000000000000000000000000 --- a/htdocs/langs/pt_BR/printipp.lang +++ /dev/null @@ -1,10 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Configuração do módulo de Impressão Direta -PrintIPPDesc=Este módulo adiciona um botão de "Imprimir" para enviar documentos diretamente para impressora. Requer um sistema Linux com o CUPS instalado. -PRINTIPP_ENABLED=Mostrar ícone de "Impressão Direta" nas listas de documentos -PRINTIPP_PASSWORD=Senha -NoPrinterFound=Nenhuma impressora encontrada (verifique a configuração do CUPS) -FileWasSentToPrinter=Arquivo %s enviado para impressora -NoDefaultPrinterDefined=Nenhuma impressora padrão definida -DefaultPrinter=Impressora padrão -CupsServer=Servidor CUPS diff --git a/htdocs/langs/pt_PT/admin.lang b/htdocs/langs/pt_PT/admin.lang index cddb81aee1b29e81dde9b8c48df7bc1e1f52ff8b..3845bdf00c4f60ec4a92ef913d64f5f23d35208e 100644 --- a/htdocs/langs/pt_PT/admin.lang +++ b/htdocs/langs/pt_PT/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Uma linha de producto/serviço que tem uma quantidade FreeLegalTextOnProposal=Texto livre em Orçamentos WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Configuração do módulo pedidos OrdersNumberingModules=Módulos de numeração dos pedidos diff --git a/htdocs/langs/pt_PT/main.lang b/htdocs/langs/pt_PT/main.lang index 5536b4c8b987f76c8f1b70e65955c6cb534e8d7c..4a9a88f44af561d37b2b204c87c4afa89cfa1d72 100644 --- a/htdocs/langs/pt_PT/main.lang +++ b/htdocs/langs/pt_PT/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Preço Base (base) UnitPriceTTC=Preço Unitário PriceU=P.U. PriceUHT=P.U. (base) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Montante AmountInvoice=Montante da Fatura diff --git a/htdocs/langs/pt_PT/other.lang b/htdocs/langs/pt_PT/other.lang index 78d54b4908fe698437aaef5175da3d373ae8fdab..fbe189959dc8802ff588cb4ffcce9420f3309258 100644 --- a/htdocs/langs/pt_PT/other.lang +++ b/htdocs/langs/pt_PT/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Este é um email de <b>teste</b> (o teste de palavra deve PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/pt_PT/printipp.lang b/htdocs/langs/pt_PT/printipp.lang deleted file mode 100644 index d284d07e86631492eecd727a1437823af520a7d5..0000000000000000000000000000000000000000 --- a/htdocs/langs/pt_PT/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Configuração do módulo Impressão Direta -PrintIPPDesc=Este módulo adiciona um botão de 'Impressora' para enviar os documentos diretamente para uma impressora. Este requer um sistema Linux com CUPS instalados. -PRINTIPP_ENABLED=Mostrar o ícone de "Impressão Direta" nas listas de documento -PRINTIPP_HOST=Servidor de impressão -PRINTIPP_PORT=Porta -PRINTIPP_USER=Iniciar Sessão -PRINTIPP_PASSWORD=Palavra-passe -NoPrinterFound=Não foram encontradas impressoras (verifique a sua configuração de CUPS) -FileWasSentToPrinter=O filcheiro %s foi enviado para a impressora -NoDefaultPrinterDefined=Não está definida a impressora predefinida -DefaultPrinter=Impressora predefinida -Printer=Impressora -CupsServer=Servido CUPS diff --git a/htdocs/langs/ro_RO/admin.lang b/htdocs/langs/ro_RO/admin.lang index cb274c3790f32a4985d8e20eb2fd78824e1d0743..059837a0d8396e98160704b44b7253fbe1433603 100644 --- a/htdocs/langs/ro_RO/admin.lang +++ b/htdocs/langs/ro_RO/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=O linie de produse / servicii cu o suma de zero este c 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Ordinele de gestionare setup OrdersNumberingModules=Ordinele de numerotare module diff --git a/htdocs/langs/ro_RO/main.lang b/htdocs/langs/ro_RO/main.lang index 55477d3966082d3c45ce4125e7863c8212061051..37dd6426694d54160f1a52afd845fd461c6ed287 100644 --- a/htdocs/langs/ro_RO/main.lang +++ b/htdocs/langs/ro_RO/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Preț unitar (net) UnitPriceTTC=Preț unitar PriceU=UP PriceUHT=UP (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Valoare AmountInvoice=Valoare Factură diff --git a/htdocs/langs/ro_RO/other.lang b/htdocs/langs/ro_RO/other.lang index aa80c7cecca18f06e1ae345829a5c273745ab134..b5f2f7618ef3326b8bd32bbc07da43ae9186a5a9 100644 --- a/htdocs/langs/ro_RO/other.lang +++ b/htdocs/langs/ro_RO/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Acesta este un e-mail <b>de testare</b> (test de cuvânt PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nVeţi găsi aici factura __FACREF__\n\n__PERSONALIZED__Cu respect\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Am dori să vă avertizăm că factura __FACREF__ pare a nu fi platită. Deci, vă ataşăm din nou factura, ca un memento. \n\n__PERSONALIZED__ Cu respect \n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nVeţi găsi aici oferta comercială__PROPREF__\n\n__PERSONALIZED__Cu respect\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nVeţi găsi aici comanda __ORDERREF__\n\n__PERSONALIZED__Cu respect\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYVeţi găsi aici comanda noastră__ORDERREF__\n\n__PERSONALIZED__Cu respect\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nVeţi găsi aici factura __FACREF__\n\n__PERSONALIZED__Cu respect\n\n__SIGNATURE__ diff --git a/htdocs/langs/ro_RO/printipp.lang b/htdocs/langs/ro_RO/printipp.lang deleted file mode 100644 index a1734576be5ed9692c17acc7111e2ac665762c69..0000000000000000000000000000000000000000 --- a/htdocs/langs/ro_RO/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Configurarea modulului Imprimare directă -PrintIPPDesc=Acest modul adauga un buton de imprimare pentru a trimite documentele direct la o imprimantă. Este nevoie de un sistem Linux cu CUPS instalat. -PRINTIPP_ENABLED=Afișare pictogramă "Print Direct" în listele de documente -PRINTIPP_HOST=Server print -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Parolă -NoPrinterFound=Nu există imprimante (verificați setarea CUPS) -FileWasSentToPrinter=Fișierul %s a fost trimis la imprimantă -NoDefaultPrinterDefined=Nicio imprimantă implicită definită -DefaultPrinter=Imprimantă implicită -Printer=Imprimanta -CupsServer=Server CUPS diff --git a/htdocs/langs/ru_RU/admin.lang b/htdocs/langs/ru_RU/admin.lang index 3cd237ef00a9eb6ad1aa2db73fd6ae97b2b7f064..ca9121ecbdbc7c9d556d417178105161271aea45 100644 --- a/htdocs/langs/ru_RU/admin.lang +++ b/htdocs/langs/ru_RU/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Соответствие продукта / услуг FreeLegalTextOnProposal=Свободный текст на коммерческие предложения WatermarkOnDraftProposal=Водяные знаки на черновиках Коммерческих предложений ("Нет" если пусто) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Запрос банковского счёта для предложения -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Настройка модуля запросов цен поставщиков -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Свободный текст на запросе цены у поставщиков -WatermarkOnDraftAskPriceSupplier=Водяной знак на проекте запроса цены у поставщиков (нет знака, если пустое) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### SupplierProposal ##### +SupplierProposalSetup=Настройка модуля запросов цен поставщиков +SupplierProposalNumberingModules=Price requests suppliers numbering models +SupplierProposalPDFModules=Price requests suppliers documents models +FreeLegalTextOnSupplierProposal=Свободный текст на запросе цены у поставщиков +WatermarkOnDraftSupplierProposal=Водяной знак на проекте запроса цены у поставщиков (нет знака, если пустое) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Ask for bank account destination of price request ##### Orders ##### OrdersSetup=Приказ 'Management Setup OrdersNumberingModules=Приказы нумерации модулей diff --git a/htdocs/langs/ru_RU/main.lang b/htdocs/langs/ru_RU/main.lang index 706047604b14e8bbe73215ea02d5856d3b2ac5a7..aa27c5b99b5976e545a7024acf61f68ef6ce8e93 100644 --- a/htdocs/langs/ru_RU/main.lang +++ b/htdocs/langs/ru_RU/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Цена за единицу (нетто) UnitPriceTTC=Цена за единицу PriceU=Цена ед. PriceUHT=Цена ед. (нетто) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Сумма AmountInvoice=Сумма счета-фактуры diff --git a/htdocs/langs/ru_RU/other.lang b/htdocs/langs/ru_RU/other.lang index fa80f2f6ba99656ae045ecf83365f6e15dabdd61..fdd057f2ad042f0b67aea96add5a509ff1a671e4 100644 --- a/htdocs/langs/ru_RU/other.lang +++ b/htdocs/langs/ru_RU/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Dette er en <b>test</b> mail (ordet testen må være i fe PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nВы можете увидеть здесь запрос цены __ASKREF__\n\n\n__PERSONALIZED__С уважением\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nВы можете увидеть здесь запрос цены __ASKREF__\n\n\n__PERSONALIZED__С уважением\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/ru_RU/printipp.lang b/htdocs/langs/ru_RU/printipp.lang deleted file mode 100644 index 13656b20f472544684c434d0cd111c21f4232fc4..0000000000000000000000000000000000000000 --- a/htdocs/langs/ru_RU/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Установка модуля Прямой Печати -PrintIPPDesc=Этот модуль добавляет кнопку Печати c последующей отправкой документов напрямую на принтер. Для этого требуется система Linux с установленным CUPS. -PRINTIPP_ENABLED=Показать иконку "Прямая печать" в списке документов -PRINTIPP_HOST=Сервер печати -PRINTIPP_PORT=Порт -PRINTIPP_USER=Логин -PRINTIPP_PASSWORD=Пароль -NoPrinterFound=Ни один принтер не найден (проверьте настройки CUPS) -FileWasSentToPrinter=Файл %s был отправлен на печать -NoDefaultPrinterDefined=Принтер по умолчанию не установлен -DefaultPrinter=Принтер по умолчанию -Printer=Принтер -CupsServer=Сервер CUPS diff --git a/htdocs/langs/sk_SK/admin.lang b/htdocs/langs/sk_SK/admin.lang index 5f79630a72cf636149f4f29634c07524cba77782..7186e501d3e49b2acd3ccddb324a6d93597a3458 100644 --- a/htdocs/langs/sk_SK/admin.lang +++ b/htdocs/langs/sk_SK/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Rad výrobkov / služieb s nulovej hodnoty je považov 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Objednať riadenie nastavenia OrdersNumberingModules=Objednávky číslovanie modelov diff --git a/htdocs/langs/sk_SK/main.lang b/htdocs/langs/sk_SK/main.lang index 57e8dd2e1e45a8f7d873309c3570ca2643baa2ad..799a0ae63342fa8d182f27466628060ae23f620b 100644 --- a/htdocs/langs/sk_SK/main.lang +++ b/htdocs/langs/sk_SK/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Jednotková cena (bez DPH) UnitPriceTTC=Jednotková cena PriceU=UP PriceUHT=UP (bez DPH) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Množstvo AmountInvoice=Fakturovaná čiastka diff --git a/htdocs/langs/sk_SK/other.lang b/htdocs/langs/sk_SK/other.lang index ebf48639ff830c51584afe1f1e2dd511ab720c87..d57a8d9500cc177fae06f8c833b7ca859b60a0ed 100644 --- a/htdocs/langs/sk_SK/other.lang +++ b/htdocs/langs/sk_SK/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Toto je <b>test-mail</b> (slovo test musí byť tučne). PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/sk_SK/printipp.lang b/htdocs/langs/sk_SK/printipp.lang deleted file mode 100644 index eb92974966d0e5feb0d8495269dcc13c7ebb0538..0000000000000000000000000000000000000000 --- a/htdocs/langs/sk_SK/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Nastavenie modulu Priama tlač -PrintIPPDesc=Tento modul pridá tlačítko na priamu tlač dokumentov. Vyžaduje si Linuxový systém s nainštalovaným serverom CUPS. -PRINTIPP_ENABLED=Zobraziť ikonu "Priama tlač" v zoznamoch dokumentov -PRINTIPP_HOST=Tlačový server -PRINTIPP_PORT=Port -PRINTIPP_USER=Prihlasovacie meno -PRINTIPP_PASSWORD=Heslo -NoPrinterFound=Nenašli sa žiadne tlačiarne (skontrolujte nastavenia CUPS) -FileWasSentToPrinter=Súbor %s bol odoslaný na tlač -NoDefaultPrinterDefined=Nie je nastavená predvolená tlačiareň -DefaultPrinter=Predvolená tlačiareň -Printer=Tlačiareň -CupsServer=Server CUPS diff --git a/htdocs/langs/sl_SI/admin.lang b/htdocs/langs/sl_SI/admin.lang index 522df7539942a74903fc7d61ed4f1e164bfc1936..45f53da2f131d44c80c5d8f2b23081820a405763 100644 --- a/htdocs/langs/sl_SI/admin.lang +++ b/htdocs/langs/sl_SI/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Vrstica proizvoda/storitve z vrednostjo 0 se smatra ko 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Nastavitev modula cenovnih zahtevkov za dobavitelje -AskPriceSupplierNumberingModules=Modeli številčenja cenovnih zahtevkov za dobavitelje -AskPriceSupplierPDFModules=Modeli dokumentiranja cenovnih zahtevkov za dobavitelje -FreeLegalTextOnAskPriceSupplier=Prosti tekst na cenovnih zahtevkov dobaviteljev -WatermarkOnDraftAskPriceSupplier=Vodni tisk na osnutkih cenovnih zahtevkov za dobavitelje (brez, če je prazno) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Vprašaj za končni bančni račun cenovnega zahtevka +##### SupplierProposal ##### +SupplierProposalSetup=Nastavitev modula cenovnih zahtevkov za dobavitelje +SupplierProposalNumberingModules=Modeli številčenja cenovnih zahtevkov za dobavitelje +SupplierProposalPDFModules=Modeli dokumentiranja cenovnih zahtevkov za dobavitelje +FreeLegalTextOnSupplierProposal=Prosti tekst na cenovnih zahtevkov dobaviteljev +WatermarkOnDraftSupplierProposal=Vodni tisk na osnutkih cenovnih zahtevkov za dobavitelje (brez, če je prazno) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Vprašaj za končni bančni račun cenovnega zahtevka ##### Orders ##### OrdersSetup=Nastavitve upravljanja z naročili OrdersNumberingModules=Moduli za številčenje naročil diff --git a/htdocs/langs/sl_SI/main.lang b/htdocs/langs/sl_SI/main.lang index a8d56f2f010f3bf225f10f71e58c21fcb9651ef0..1ab87f735169633c73564cf33538980d214a869f 100644 --- a/htdocs/langs/sl_SI/main.lang +++ b/htdocs/langs/sl_SI/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Cena enote (neto) UnitPriceTTC=Cena enote PriceU=C.E. PriceUHT=C.E. (neto) -AskPriceSupplierUHT=Zahtevana neto cena na enoto C.E. +SupplierProposalUHT=Zahtevana neto cena na enoto C.E. PriceUTTC=C.E. (z davkom) Amount=Znesek AmountInvoice=Znesek računa diff --git a/htdocs/langs/sl_SI/other.lang b/htdocs/langs/sl_SI/other.lang index 85e7917ace35aaa2cc4a8618b4675e5fa43383ad..0524222f823b4c52933a041100fd82743ca9b213 100644 --- a/htdocs/langs/sl_SI/other.lang +++ b/htdocs/langs/sl_SI/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=To je <b>test</b> mail (beseda test mora biti v krepkem t PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nV prilogi je račun __FACREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nŽelimo vas opozoriti, da račun __FACREF__ ni bil poravnan. Zato vam račun še enkrat pošiljamo v prilogi.\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nV prilogi je ponudba __PROPREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nV prilogi je zahtevek za ceno __ASKREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nV prilogi je zahtevek za ceno __ASKREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nV prilogi je potrditev naročila __ORDERREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nV prilogi je naše naročilo __ORDERREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nV prilogi je račun __FACREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ diff --git a/htdocs/langs/sl_SI/printipp.lang b/htdocs/langs/sl_SI/printipp.lang deleted file mode 100644 index 741b5f6666c1ab3932f949f1b81a40676c9b5032..0000000000000000000000000000000000000000 --- a/htdocs/langs/sl_SI/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Nastavitev modula za direktno tiskanje -PrintIPPDesc=Ta modul doda gumb za direktno pošiljanje dokumenta na tiskalnik. Zahteva nameščen sistem Linux z CUPS -PRINTIPP_ENABLED=Prikaži ikono za "Direktno tiskanje" na seznamu dokumentov -PRINTIPP_HOST=Tiskalniški strežnik -PRINTIPP_PORT=Vrata -PRINTIPP_USER=Uporabniško ime -PRINTIPP_PASSWORD=Geslo -NoPrinterFound=Ni najden noben tiskalnik (preveri nastavitve CUPS) -FileWasSentToPrinter=Datoteka %s je bila poslana na tiskalnik -NoDefaultPrinterDefined=Ni izbran privzet tiskalnik -DefaultPrinter=Privzet tiskalnik -Printer=Tiskalnik -CupsServer=CUPS Strežnik diff --git a/htdocs/langs/sq_AL/admin.lang b/htdocs/langs/sq_AL/admin.lang index a5ee8d10ba53c1a5685dda891ec88dea5ed18749..887ba75d0e01eb91ce92938ebddea706524dd3b3 100644 --- a/htdocs/langs/sq_AL/admin.lang +++ b/htdocs/langs/sq_AL/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/sq_AL/main.lang b/htdocs/langs/sq_AL/main.lang index 093340ec142a676619ddd1bb0e34bd51dce9bf18..0fadd5d36327273cfa29b38819f95fea81cda080 100644 --- a/htdocs/langs/sq_AL/main.lang +++ b/htdocs/langs/sq_AL/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/sq_AL/other.lang b/htdocs/langs/sq_AL/other.lang index c49606b8f7504a06d7daba530169d75d21dc7607..d6972e16de48844d714fe9e6eb92a31771fb7f2f 100644 --- a/htdocs/langs/sq_AL/other.lang +++ b/htdocs/langs/sq_AL/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/sq_AL/printipp.lang b/htdocs/langs/sq_AL/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/sq_AL/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/sr_RS/admin.lang b/htdocs/langs/sr_RS/admin.lang index a5ee8d10ba53c1a5685dda891ec88dea5ed18749..887ba75d0e01eb91ce92938ebddea706524dd3b3 100644 --- a/htdocs/langs/sr_RS/admin.lang +++ b/htdocs/langs/sr_RS/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/sr_RS/main.lang b/htdocs/langs/sr_RS/main.lang index 8d1d1f9317a7129e9866d384f308267a2d4061c6..82eb4c034455a287c3c0740b873a3d312661356a 100644 --- a/htdocs/langs/sr_RS/main.lang +++ b/htdocs/langs/sr_RS/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Jedinična cena PriceU=J.C. PriceUHT=J.C. (neto) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/sr_RS/other.lang b/htdocs/langs/sr_RS/other.lang index 4bec9af75808a8bdbee63eb03e5a0fe2a174d2cd..7eb7523af91f42dc05c03f1b952f6ccd60540175 100644 --- a/htdocs/langs/sr_RS/other.lang +++ b/htdocs/langs/sr_RS/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/sv_SE/admin.lang b/htdocs/langs/sv_SE/admin.lang index 88b8dcf4300c52d5ee8337aa8c0535e98be1fdc8..6ed1b7bb60b9a3d187319f0c4315922572b647bc 100644 --- a/htdocs/langs/sv_SE/admin.lang +++ b/htdocs/langs/sv_SE/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=En rad av produkt / tjänst med en nolla belopp anses 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Pris begär leverantörer modul konfiguration -AskPriceSupplierNumberingModules=Pris förfrågningar leverantörer numrerings modeller -AskPriceSupplierPDFModules=Pris begär leverantörer dokument modeller -FreeLegalTextOnAskPriceSupplier=Fritext på förfrågningar pris leverantörer -WatermarkOnDraftAskPriceSupplier=Vattenstämpel om förslaget pris begär leverantörer (ingen om tom) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Fråga efter bankkonto destination pris begäran +##### SupplierProposal ##### +SupplierProposalSetup=Pris begär leverantörer modul konfiguration +SupplierProposalNumberingModules=Pris förfrågningar leverantörer numrerings modeller +SupplierProposalPDFModules=Pris begär leverantörer dokument modeller +FreeLegalTextOnSupplierProposal=Fritext på förfrågningar pris leverantörer +WatermarkOnDraftSupplierProposal=Vattenstämpel om förslaget pris begär leverantörer (ingen om tom) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Fråga efter bankkonto destination pris begäran ##### Orders ##### OrdersSetup=Beställ ledning setup OrdersNumberingModules=Beställningar numrering moduler diff --git a/htdocs/langs/sv_SE/main.lang b/htdocs/langs/sv_SE/main.lang index 6d893fb99e3ec6838674473bfe6a7f518038d0c1..4f526cc8135d0a80f8936237d38abd611eb8ba82 100644 --- a/htdocs/langs/sv_SE/main.lang +++ b/htdocs/langs/sv_SE/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Pris per enhet (netto) UnitPriceTTC=Pris per enhet PriceU=Styckpris PriceUHT=St.pris(net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Belopp AmountInvoice=Fakturabelopp diff --git a/htdocs/langs/sv_SE/other.lang b/htdocs/langs/sv_SE/other.lang index c94a0b498561745f5a9ce36530313b4ba2405034..e1d6fe305e2297b345b8163697bc92faa7505029 100644 --- a/htdocs/langs/sv_SE/other.lang +++ b/htdocs/langs/sv_SE/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Detta är en <b>test</b> post (ordet Provningen skall i f PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ Här hittar du fakturan __FACREF__ __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ Vi vill varna er att fakturan __FACREF__ tycks inte betalt. Så detta är fakturan i bilagan igen, som en påminnelse. __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \nHär hittar du det kommersiella förslaget __PROPREF__\n__PERSONALIZED__mvh\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__ Här hittar ordern __ORDERREF__ __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ Här hittar du vår ordning __ORDERREF__ __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ Här hittar du fakturan __FACREF__ __PERSONALIZED__Sincerely __SIGNATURE__ diff --git a/htdocs/langs/sv_SE/printipp.lang b/htdocs/langs/sv_SE/printipp.lang deleted file mode 100644 index 75e16c9f7bec0e0cb8e64babc25bc87852a8118a..0000000000000000000000000000000000000000 --- a/htdocs/langs/sv_SE/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Inställning av direktutskrift modul -PrintIPPDesc=Denna modul tillför en utskriftsknapp för att skicka dokument direkt till en skrivare. Det kräver ett Linux-system med CUPS installerade. -PRINTIPP_ENABLED=Visa "Direktutskrift" -ikonen i dokumentlistor -PRINTIPP_HOST=Skrivarserver -PRINTIPP_PORT=Port -PRINTIPP_USER=Inloggning -PRINTIPP_PASSWORD=Lösenord -NoPrinterFound=Inga skrivare hittades (kolla din CUPS inställningar) -FileWasSentToPrinter=Filen %s har skickats till skrivaren -NoDefaultPrinterDefined=Ingen standardskrivare definierad -DefaultPrinter=Standardskrivare -Printer=Skrivare -CupsServer=CUPS-server diff --git a/htdocs/langs/sw_SW/admin.lang b/htdocs/langs/sw_SW/admin.lang index a5ee8d10ba53c1a5685dda891ec88dea5ed18749..887ba75d0e01eb91ce92938ebddea706524dd3b3 100644 --- a/htdocs/langs/sw_SW/admin.lang +++ b/htdocs/langs/sw_SW/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/sw_SW/main.lang b/htdocs/langs/sw_SW/main.lang index 49c2c3eec37c2789daec48d94d649e4557d9919e..3eec2987d4167fe4ac34fbfa9ba5397f2c1c9324 100644 --- a/htdocs/langs/sw_SW/main.lang +++ b/htdocs/langs/sw_SW/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/sw_SW/other.lang b/htdocs/langs/sw_SW/other.lang index c49606b8f7504a06d7daba530169d75d21dc7607..d6972e16de48844d714fe9e6eb92a31771fb7f2f 100644 --- a/htdocs/langs/sw_SW/other.lang +++ b/htdocs/langs/sw_SW/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/sw_SW/printipp.lang b/htdocs/langs/sw_SW/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/sw_SW/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/th_TH/admin.lang b/htdocs/langs/th_TH/admin.lang index 6f74a027338201aef1f7ccc0880cd30684ad706d..365af813b891082c16f8e0fbf0e14dde8a5f3728 100644 --- a/htdocs/langs/th_TH/admin.lang +++ b/htdocs/langs/th_TH/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=สายผลิตภัณฑ์ / บริกา FreeLegalTextOnProposal=ข้อความฟรีเกี่ยวกับข้อเสนอในเชิงพาณิชย์ WatermarkOnDraftProposal=ลายน้ำในร่างข้อเสนอในเชิงพาณิชย์ (ไม่มีถ้าว่างเปล่า) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=ขอปลายทางบัญชีธนาคารของข้อเสนอ -##### AskPriceSupplier ##### -AskPriceSupplierSetup=ราคาขอซัพพลายเออร์ที่ติดตั้งโมดูล -AskPriceSupplierNumberingModules=ราคาผู้ผลิตร้องขอหมายเลขรุ่น -AskPriceSupplierPDFModules=ราคาขอซัพพลายเออร์รูปแบบเอกสาร -FreeLegalTextOnAskPriceSupplier=ข้อความฟรีในราคาผู้ผลิตร้องขอ -WatermarkOnDraftAskPriceSupplier=ลายน้ำราคาร่างซัพพลายเออร์ขอ (ไม่เลยถ้าว่างเปล่า) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=ขอบัญชีธนาคารปลายทางของการร้องขอราคา +##### SupplierProposal ##### +SupplierProposalSetup=ราคาขอซัพพลายเออร์ที่ติดตั้งโมดูล +SupplierProposalNumberingModules=ราคาผู้ผลิตร้องขอหมายเลขรุ่น +SupplierProposalPDFModules=ราคาขอซัพพลายเออร์รูปแบบเอกสาร +FreeLegalTextOnSupplierProposal=ข้อความฟรีในราคาผู้ผลิตร้องขอ +WatermarkOnDraftSupplierProposal=ลายน้ำราคาร่างซัพพลายเออร์ขอ (ไม่เลยถ้าว่างเปล่า) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=ขอบัญชีธนาคารปลายทางของการร้องขอราคา ##### Orders ##### OrdersSetup=การตั้งค่าการจัดการการสั่งซื้อ OrdersNumberingModules=สั่งซื้อจำนวนรุ่น diff --git a/htdocs/langs/th_TH/main.lang b/htdocs/langs/th_TH/main.lang index 6c57ed16d5807acf99cccff70cb77249fda26ec2..9632798efb3b43ff902ad5087938c7fd3400c76e 100644 --- a/htdocs/langs/th_TH/main.lang +++ b/htdocs/langs/th_TH/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=ราคาต่อหน่วย (สุทธิ) UnitPriceTTC=ราคาต่อหน่วย PriceU=UP PriceUHT=UP (สุทธิ) -AskPriceSupplierUHT=ขอขึ้นสุทธิ +SupplierProposalUHT=ขอขึ้นสุทธิ PriceUTTC=UP (รวมภาษี). Amount=จำนวน AmountInvoice=จำนวนใบแจ้งหนี้ diff --git a/htdocs/langs/th_TH/other.lang b/htdocs/langs/th_TH/other.lang index 1ae668880475db96501c0d27c0dab94644d661c0..33978f11aeb523ff3aa660a171fe7ebe44b3fcb6 100644 --- a/htdocs/langs/th_TH/other.lang +++ b/htdocs/langs/th_TH/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=<b>นี่คือจดหมายทดสอบ</b PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ คุณจะพบว่าที่นี่ใบแจ้งหนี้ __FACREF__ __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ เราอยากจะเตือนคุณว่า __FACREF__ ใบแจ้งหนี้ที่ดูเหมือนว่าจะไม่ได้รับการ payed ดังนั้นนี่คือสิ่งที่แนบมาในใบแจ้งหนี้อีกครั้งเป็นตัวเตือน __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__ คุณจะพบว่าที่นี่ข้อเสนอในเชิงพาณิชย์ __PROPREF__ __PERSONALIZED__Sincerely __SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__ คุณจะพบว่าที่นี่คำขอราคา __ASKREF__ __PERSONALIZED__Sincerely __SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__ คุณจะพบว่าที่นี่คำขอราคา __ASKREF__ __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__ คุณจะพบว่าที่นี่เพื่อ __ORDERREF__ __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ คุณจะพบว่าที่นี่เพื่อเรา __ORDERREF__ __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ คุณจะพบว่าที่นี่ใบแจ้งหนี้ __FACREF__ __PERSONALIZED__Sincerely __SIGNATURE__ diff --git a/htdocs/langs/th_TH/printipp.lang b/htdocs/langs/th_TH/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/th_TH/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/tr_TR/admin.lang b/htdocs/langs/tr_TR/admin.lang index 017331e03b43a545cb8e8b81b78a67fbe7b6e4e8..c061393abea1b7c06c3cee027da4e7986e7e9ab8 100644 --- a/htdocs/langs/tr_TR/admin.lang +++ b/htdocs/langs/tr_TR/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=Sıfır tutarında olan ürün/hizmet satırını bir FreeLegalTextOnProposal=Teklifler üzerinde serbest metin WatermarkOnDraftProposal=Taslak tekliflerde filigran (boşsa yoktur) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Teklif için banka hesabı iste -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Tedarikçi fiyat isteği modülü kurulumu -AskPriceSupplierNumberingModules=Tedarikçi fiyat isteği numaralandırma modülü -AskPriceSupplierPDFModules=Tedarikçi fiyat isteği belge modelleri -FreeLegalTextOnAskPriceSupplier=Tedarikçi fiyat isteği üzerinde serbest metin -WatermarkOnDraftAskPriceSupplier=Taslak tedarikçi fiyat istekleri üzerinde filigran (boşsa yok) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Fiyat isteklerinde hedef banka hesabı iste +##### SupplierProposal ##### +SupplierProposalSetup=Tedarikçi fiyat isteği modülü kurulumu +SupplierProposalNumberingModules=Tedarikçi fiyat isteği numaralandırma modülü +SupplierProposalPDFModules=Tedarikçi fiyat isteği belge modelleri +FreeLegalTextOnSupplierProposal=Tedarikçi fiyat isteği üzerinde serbest metin +WatermarkOnDraftSupplierProposal=Taslak tedarikçi fiyat istekleri üzerinde filigran (boşsa yok) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Fiyat isteklerinde hedef banka hesabı iste ##### Orders ##### OrdersSetup=Sipariş yönetimi kurulumu OrdersNumberingModules=Sipariş numaralandırma modülü diff --git a/htdocs/langs/tr_TR/main.lang b/htdocs/langs/tr_TR/main.lang index f49868a96bedde230511c21fce801db19135ffbb..6ca8e1285f0a50bb8eaee57cb764738883d72bc4 100644 --- a/htdocs/langs/tr_TR/main.lang +++ b/htdocs/langs/tr_TR/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Birim fiyat (net) UnitPriceTTC=Birim fiyat PriceU=B.F. PriceUHT=B.F. (net) -AskPriceSupplierUHT=İstenen U.P. ağı +SupplierProposalUHT=İstenen U.P. ağı PriceUTTC=B.F. (vergi dahil) Amount=Tutar AmountInvoice=Fatura tutarı diff --git a/htdocs/langs/tr_TR/other.lang b/htdocs/langs/tr_TR/other.lang index fbbc07c0371462263f21541f12a93cda1ab51e47..85792056ea52bffd1cc091c1ff091e20b026281a 100644 --- a/htdocs/langs/tr_TR/other.lang +++ b/htdocs/langs/tr_TR/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Bu bir <b>deneme</b> postası (deneme sözcüğü koyu ol PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nFaturanız buradadır __FACREF__\n\n__PERSONALIZED__Saygılar\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nSize faturanız __FACREF__ için ödeme yapılmamış göründüğünü belirtmek isteriz. Anımsatma amacıyla ilgili fatura ekte sunulmuştur.\n\n__PERSONALIZED__Saygılar\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nTeklifiniz bilgilerinize sunulmuştur __PROPREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nFiyat isteği sunulmuştur__ASKREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nFiyat isteği sunulmuştur__ASKREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nSiparişiniz buradadır __ORDERREF__\n\n__PERSONALIZED__Saygılar\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nSiparişimiz buradadır __ORDERREF__\n\n__PERSONALIZED__Saygılar\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nFatura buradadır __FACREF__\n\n__PERSONALIZED__Saygılar\n\n__SIGNATURE__ diff --git a/htdocs/langs/tr_TR/printipp.lang b/htdocs/langs/tr_TR/printipp.lang deleted file mode 100644 index 98cbc00f5035e55e87d6f6e151aefb974fd245ee..0000000000000000000000000000000000000000 --- a/htdocs/langs/tr_TR/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Doğrudan Yazdırma modülü ayarı -PrintIPPDesc=Bu modül belgeleri doğrudan yazıcıya gönderecek bir Yazdır düğmesi ekler. CUPS kurulmuş bir Linux sistemi gerektirir. -PRINTIPP_ENABLED=Belge listelerinde "Doğrudan yazdır" simgesini göster -PRINTIPP_HOST=Yazıcı sunucusu -PRINTIPP_PORT=Port -PRINTIPP_USER=Oturum açma -PRINTIPP_PASSWORD=Parola -NoPrinterFound=Hiç yazıcı bulunamadı (CUPS ayarlarınızı denetleyin) -FileWasSentToPrinter=%s Dosyası yazıcıya gönderildi -NoDefaultPrinterDefined=Tanımlı varsayılan yazıcı yok -DefaultPrinter=Varsayılan yazıcı -Printer=Yazıcı -CupsServer=CUPS Sunucusu diff --git a/htdocs/langs/uk_UA/admin.lang b/htdocs/langs/uk_UA/admin.lang index c495f6d0577c7708a83a208b4df563a5539028bd..7cb4fccc447dab4a8b1e937d47fccfc9b27dc076 100644 --- a/htdocs/langs/uk_UA/admin.lang +++ b/htdocs/langs/uk_UA/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/uk_UA/main.lang b/htdocs/langs/uk_UA/main.lang index 25ffcd26a05bbb1422ef662674e61d5b15623dbc..9e481ed67da4ff39083ee8169553bdd2e45add33 100644 --- a/htdocs/langs/uk_UA/main.lang +++ b/htdocs/langs/uk_UA/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/uk_UA/other.lang b/htdocs/langs/uk_UA/other.lang index c49606b8f7504a06d7daba530169d75d21dc7607..d6972e16de48844d714fe9e6eb92a31771fb7f2f 100644 --- a/htdocs/langs/uk_UA/other.lang +++ b/htdocs/langs/uk_UA/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/uk_UA/printipp.lang b/htdocs/langs/uk_UA/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/uk_UA/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/uz_UZ/admin.lang b/htdocs/langs/uz_UZ/admin.lang index a5ee8d10ba53c1a5685dda891ec88dea5ed18749..887ba75d0e01eb91ce92938ebddea706524dd3b3 100644 --- a/htdocs/langs/uz_UZ/admin.lang +++ b/htdocs/langs/uz_UZ/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=Order management setup OrdersNumberingModules=Orders numbering models diff --git a/htdocs/langs/uz_UZ/main.lang b/htdocs/langs/uz_UZ/main.lang index 56822a74f6ab0e7be6b5929071601b45265500c4..f8de4e342c738b45aee18e185bd472f82ada4dd6 100644 --- a/htdocs/langs/uz_UZ/main.lang +++ b/htdocs/langs/uz_UZ/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Unit price (net) UnitPriceTTC=Unit price PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Amount AmountInvoice=Invoice amount diff --git a/htdocs/langs/uz_UZ/other.lang b/htdocs/langs/uz_UZ/other.lang index c49606b8f7504a06d7daba530169d75d21dc7607..d6972e16de48844d714fe9e6eb92a31771fb7f2f 100644 --- a/htdocs/langs/uz_UZ/other.lang +++ b/htdocs/langs/uz_UZ/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=This is a <b>test</b> mail (the word test must be in bold PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/uz_UZ/printipp.lang b/htdocs/langs/uz_UZ/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/uz_UZ/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/vi_VN/admin.lang b/htdocs/langs/vi_VN/admin.lang index 74b61805ca615ba8803bd599d19fdc6b86f2fde5..872e047e1fcd8ed329d722843e200fc1ab832571 100644 --- a/htdocs/langs/vi_VN/admin.lang +++ b/htdocs/langs/vi_VN/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=A line of product/service with a zero amount is consid 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 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Cài đặt module đề nghị giá nhà cung cấp -AskPriceSupplierNumberingModules=Kiểu đánh số cho đề nghị giá nhà cung cấp -AskPriceSupplierPDFModules=Kiểu chứng từ đề nghị giá nhà cung cấp -FreeLegalTextOnAskPriceSupplier=Free text trên đề nghị giá nhà cung cấp -WatermarkOnDraftAskPriceSupplier=Watermark trên dự thảo đề nghị giá nhà cung cấp (không nếu rỗng) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Yêu cầu số tài khoản ngân hàng trên đề nghị giá +##### SupplierProposal ##### +SupplierProposalSetup=Cài đặt module đề nghị giá nhà cung cấp +SupplierProposalNumberingModules=Kiểu đánh số cho đề nghị giá nhà cung cấp +SupplierProposalPDFModules=Kiểu chứng từ đề nghị giá nhà cung cấp +FreeLegalTextOnSupplierProposal=Free text trên đề nghị giá nhà cung cấp +WatermarkOnDraftSupplierProposal=Watermark trên dự thảo đề nghị giá nhà cung cấp (không nếu rỗng) +BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_PROPOSAL=Yêu cầu số tài khoản ngân hàng trên đề nghị giá ##### Orders ##### OrdersSetup=Cài đặt quản lý đơn hàng OrdersNumberingModules=Mô hình đánh số đơn hàng diff --git a/htdocs/langs/vi_VN/main.lang b/htdocs/langs/vi_VN/main.lang index 5beffb5b17b329ec7d04a2bf6a9db04e4d9a4ec5..cc431a8aa4df3e4d954f17250571330fd01447fc 100644 --- a/htdocs/langs/vi_VN/main.lang +++ b/htdocs/langs/vi_VN/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=Đơn giá (chưa thuế) UnitPriceTTC=Đơn giá PriceU=U.P. PriceUHT=U.P. (net) -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=Số tiền AmountInvoice=Số tiền hóa đơn diff --git a/htdocs/langs/vi_VN/other.lang b/htdocs/langs/vi_VN/other.lang index 9dc00dcec59d796e49ea977771b5a49fc6d6c8f5..a66de0efc5dd55d97e38c79e97f0ce8df9f2aeef 100644 --- a/htdocs/langs/vi_VN/other.lang +++ b/htdocs/langs/vi_VN/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=Đây là một thư <b>kiểm tra</b> (kiểm tra từ p PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ Bạn sẽ tìm thấy ở đây các hóa đơn __FACREF__ __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ Chúng tôi muốn cảnh báo bạn rằng __FACREF__ hóa đơn dường như không được payed. Vì vậy, đây là hóa đơn kèm một lần nữa, như một lời nhắc nhở. __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__ Bạn sẽ tìm thấy ở đây đề nghị thương mại __PROPREF__ __PERSONALIZED__Sincerely __SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__ Bạn sẽ tìm thấy ở đây thứ tự __ORDERREF__ __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ Bạn sẽ tìm thấy ở đây để chúng tôi __ORDERREF__ __PERSONALIZED__Sincerely __SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ Bạn sẽ tìm thấy ở đây các hóa đơn __FACREF__ __PERSONALIZED__Sincerely __SIGNATURE__ diff --git a/htdocs/langs/vi_VN/printipp.lang b/htdocs/langs/vi_VN/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/vi_VN/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/zh_CN/admin.lang b/htdocs/langs/zh_CN/admin.lang index 27687ff2ba298084a4892a308842ad2eaafcc145..4ba0751573e162392bac21525b63a4b00b8cc616 100644 --- a/htdocs/langs/zh_CN/admin.lang +++ b/htdocs/langs/zh_CN/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=定量为0的产品或服务项视为可选项* FreeLegalTextOnProposal=报价单中的额外说明文本 WatermarkOnDraftProposal=为商业计划书草案添加水印(如果空) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=询问银行账户 -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=订单管理设置 OrdersNumberingModules=订单编号模块 diff --git a/htdocs/langs/zh_CN/main.lang b/htdocs/langs/zh_CN/main.lang index ef87967004ac18a9262d6bd3456604be8f152e85..b54f4ee9cbfd693250c8bcfdaf4fea57ade37b52 100644 --- a/htdocs/langs/zh_CN/main.lang +++ b/htdocs/langs/zh_CN/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=单位价格(净值) UnitPriceTTC=单价 PriceU=向上 PriceUHT=不含税价格 -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=金额 AmountInvoice=发票金额 diff --git a/htdocs/langs/zh_CN/other.lang b/htdocs/langs/zh_CN/other.lang index e34b318086286817a7459d2a810cbc6b132b80a6..d50b2620cc4411091a39d6a98eabf1f75dff4801 100644 --- a/htdocs/langs/zh_CN/other.lang +++ b/htdocs/langs/zh_CN/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=这是一个<b>测试</b>邮件(单词测试必须大 PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/zh_CN/printipp.lang b/htdocs/langs/zh_CN/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/zh_CN/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/langs/zh_TW/admin.lang b/htdocs/langs/zh_TW/admin.lang index cd2186c3ca9fa7a3e26614556249482d0a51ab12..49d421adb1470253866edda138ac106323404fae 100644 --- a/htdocs/langs/zh_TW/admin.lang +++ b/htdocs/langs/zh_TW/admin.lang @@ -1193,13 +1193,13 @@ UseOptionLineIfNoQuantity=一個產品線/服務的,是作為一個選項視 FreeLegalTextOnProposal=可在下面輸入額外的建議書資訊 WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty) BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal -##### AskPriceSupplier ##### -AskPriceSupplierSetup=Price requests suppliers module setup -AskPriceSupplierNumberingModules=Price requests suppliers numbering models -AskPriceSupplierPDFModules=Price requests suppliers documents models -FreeLegalTextOnAskPriceSupplier=Free text on price requests suppliers -WatermarkOnDraftAskPriceSupplier=Watermark on draft price requests suppliers (none if empty) -BANK_ASK_PAYMENT_BANK_DURING_ASKPRICESUPPLIER=Ask for bank account destination of price request +##### 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 ##### Orders ##### OrdersSetup=設定訂單管理模組 OrdersNumberingModules=訂單編號模組 diff --git a/htdocs/langs/zh_TW/main.lang b/htdocs/langs/zh_TW/main.lang index 0f136e0feed5f2a8b51570bd867a4ea131a6fc00..2206ccdfcce7f5260831fd0134c1d16758c26eb4 100644 --- a/htdocs/langs/zh_TW/main.lang +++ b/htdocs/langs/zh_TW/main.lang @@ -303,7 +303,7 @@ UnitPriceHT=單位價格(凈值) UnitPriceTTC=單價 PriceU=向上 PriceUHT=不含稅價格 -AskPriceSupplierUHT=U.P. net Requested +SupplierProposalUHT=U.P. net Requested PriceUTTC=U.P. (inc. tax) Amount=總額 AmountInvoice=發票金額 diff --git a/htdocs/langs/zh_TW/other.lang b/htdocs/langs/zh_TW/other.lang index acd7930df6ed090994cbc3af5e88c7e4c4c5a15d..cae93cb4da646e0f5da5ded111d0f7aecb9b1d7b 100644 --- a/htdocs/langs/zh_TW/other.lang +++ b/htdocs/langs/zh_TW/other.lang @@ -61,7 +61,7 @@ PredefinedMailTestHtml=這是一個<b>測試</b>郵件(單詞測試必須大 PredefinedMailContentSendInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__\n\nWe would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendProposal=__CONTACTCIVNAME__\n\nYou will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendAskPriceSupplier=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierProposal=__CONTACTCIVNAME__\n\nYou will find here the price request __ASKREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendOrder=__CONTACTCIVNAME__\n\nYou will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__\n\nYou will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__\n\nYou will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/zh_TW/printipp.lang b/htdocs/langs/zh_TW/printipp.lang deleted file mode 100644 index 835e6827f12ee4e466c21f2ee540526389fa7e03..0000000000000000000000000000000000000000 --- a/htdocs/langs/zh_TW/printipp.lang +++ /dev/null @@ -1,14 +0,0 @@ -# Dolibarr language file - Source file is en_US - printipp -PrintIPPSetup=Setup of Direct Print module -PrintIPPDesc=This module adds a Print button to send documents directly to a printer. It requires a Linux system with CUPS installed. -PRINTIPP_ENABLED=Show "Direct print" icon in document lists -PRINTIPP_HOST=Print server -PRINTIPP_PORT=Port -PRINTIPP_USER=Login -PRINTIPP_PASSWORD=Password -NoPrinterFound=No printers found (check your CUPS setup) -FileWasSentToPrinter=File %s was sent to printer -NoDefaultPrinterDefined=No default printer defined -DefaultPrinter=Default printer -Printer=Printer -CupsServer=CUPS Server diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php index eb2aa212e7ca1234f36f5e8db3a46fb3f19d79cc..05c96f38e07c4aef9dbaa40ced52154c0ac0a733 100644 --- a/htdocs/main.inc.php +++ b/htdocs/main.inc.php @@ -927,7 +927,7 @@ if (! function_exists("llxHeader")) // top menu and left menu area if (empty($conf->dol_hide_topmenu)) { - top_menu($head, $title, $target, $disablejs, $disablehead, $arrayofjs, $arrayofcss, $morequerystring); + top_menu($head, $title, $target, $disablejs, $disablehead, $arrayofjs, $arrayofcss, $morequerystring, $help_url); } if (empty($conf->dol_hide_leftmenu)) { @@ -1327,9 +1327,12 @@ function top_htmlhead($head, $title='', $disablejs=0, $disablehead=0, $arrayofjs * @param array $arrayofjs Array of js files to add in header * @param array $arrayofcss Array of css files to add in header * @param string $morequerystring Query string to add to the link "print" to get same parameters (use only if autodetect fails) + * @param string $helppagename Name of wiki page for help ('' by default). + * Syntax is: For a wiki page: EN:EnglishPage|FR:FrenchPage|ES:SpanishPage + * For other external page: http://server/url * @return void */ -function top_menu($head, $title='', $target='', $disablejs=0, $disablehead=0, $arrayofjs='', $arrayofcss='', $morequerystring='') +function top_menu($head, $title='', $target='', $disablejs=0, $disablehead=0, $arrayofjs='', $arrayofcss='', $morequerystring='', $helppagename='') { global $user, $conf, $langs, $db; global $dolibarr_main_authentication, $dolibarr_main_demo; @@ -1447,7 +1450,8 @@ function top_menu($head, $title='', $target='', $disablejs=0, $disablehead=0, $a else $appli.=" ".DOL_VERSION; } else $appli.=" ".DOL_VERSION; - if (! empty($conf->global->MAIN_FEATURES_LEVEL)) $appli.="<br>".$langs->trans("LevelOfFeature").': '.$conf->global->MAIN_FEATURES_LEVEL; + + if (! empty($conf->global->MAIN_FEATURES_LEVEL)) $appli.="<br>".$langs->trans("LevelOfFeature").': '.$conf->global->MAIN_FEATURES_LEVEL; $logouttext=''; $logouthtmltext=$appli.'<br>'; @@ -1500,6 +1504,44 @@ function top_menu($head, $title='', $target='', $disablejs=0, $disablehead=0, $a $toprightmenu.=Form::textwithtooltip('',$langs->trans("PrintContentArea"),2,1,$text,'login_block_elem',2); } + // Link to Dolibarr wiki pages + if (empty($conf->global->MAIN_HELP_DISABLELINK)) + { + $langs->load("help"); + + $helpbaseurl=''; + $helppage=''; + $mode=''; + + if (empty($helppagename)) $helppagename='EN:User_documentation|FR:Documentation_utilisateur|ES:Documentación_usuarios'; + + // Get helpbaseurl, helppage and mode from helppagename and langs + $arrayres=getHelpParamFor($helppagename,$langs); + $helpbaseurl=$arrayres['helpbaseurl']; + $helppage=$arrayres['helppage']; + $mode=$arrayres['mode']; + + // Link to help pages + if ($helpbaseurl && $helppage) + { + $text=''; + $title=''; + //$text.='<div id="blockvmenuhelpwiki" class="blockvmenuhelp">'; + $title.=$langs->trans($mode == 'wiki' ? 'GoToWikiHelpPage': 'GoToHelpPage'); + if ($mode == 'wiki') $title.=' - '.$langs->trans("PageWiki").' "'.dol_escape_htmltag(strtr($helppage,'_',' ')).'"'; + $text.='<a class="help" target="_blank" href="'; + if ($mode == 'wiki') $text.=sprintf($helpbaseurl,urlencode(html_entity_decode($helppage))); + else $text.=sprintf($helpbaseurl,$helppage); + $text.='">'; + $text.=img_picto('', 'helpdoc').' '; + //$toprightmenu.=$langs->trans($mode == 'wiki' ? 'OnlineHelp': 'Help'); + //if ($mode == 'wiki') $text.=' ('.dol_trunc(strtr($helppage,'_',' '),8).')'; + $text.='</a>'; + //$toprightmenu.='</div>'."\n"; + $toprightmenu.=Form::textwithtooltip('',$title,2,1,$text,'login_block_elem',2); + } + } + // Logout link $toprightmenu.=Form::textwithtooltip('',$logouthtmltext,2,1,$logouttext,'login_block_elem',2); @@ -1688,39 +1730,6 @@ function left_menu($menu_array_before, $helppagename='', $notused='', $menu_arra if ($doliurl) print '</a>'; print '</div>'."\n"; - // Link to Dolibarr wiki pages - if ($helppagename && empty($conf->global->MAIN_HELP_DISABLELINK)) - { - $langs->load("help"); - - $helpbaseurl=''; - $helppage=''; - $mode=''; - - // Get helpbaseurl, helppage and mode from helppagename and langs - $arrayres=getHelpParamFor($helppagename,$langs); - $helpbaseurl=$arrayres['helpbaseurl']; - $helppage=$arrayres['helppage']; - $mode=$arrayres['mode']; - - // Link to help pages - if ($helpbaseurl && $helppage) - { - print '<div id="blockvmenuhelpwiki" class="blockvmenuhelp">'; - print '<a class="help" target="_blank" title="'.$langs->trans($mode == 'wiki' ? 'GoToWikiHelpPage': 'GoToHelpPage'); - if ($mode == 'wiki') print ' - '.$langs->trans("PageWiki").' "'.dol_escape_htmltag(strtr($helppage,'_',' ')).'"'; - print '" href="'; - if ($mode == 'wiki') print sprintf($helpbaseurl,urlencode(html_entity_decode($helppage))); - else print sprintf($helpbaseurl,$helppage); - print '">'; - print img_picto('', 'helpdoc').' '; - print $langs->trans($mode == 'wiki' ? 'OnlineHelp': 'Help'); - //if ($mode == 'wiki') print ' ('.dol_trunc(strtr($helppage,'_',' '),8).')'; - print '</a>'; - print '</div>'."\n"; - } - } - // Link to bugtrack if (! empty($conf->global->MAIN_BUGTRACK_ENABLELINK)) { @@ -1855,7 +1864,7 @@ function printSearchForm($urlaction,$urlobject,$title,$htmlmodesearch,$htmlinput } $ret=''; - $ret.='<form action="'.$urlaction.'" method="post">'; + $ret.='<form action="'.$urlaction.'" method="post" class="searchform">'; $ret.='<div class="menu_titre menu_titre_search"'; if (! empty($conf->global->MAIN_HTML5_PLACEHOLDER)) $ret.=' style="display: inline-block"'; $ret.='>'; diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 64068652ca9d532505c197ba3fc2892b88470cde..258e79be2c0ded9af1692198462f5e5146ca9893 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -44,7 +44,7 @@ class Product extends CommonObject public $element='product'; public $table_element='product'; public $fk_element='fk_product'; - protected $childtables=array('askpricesupplierdet', 'propaldet','commandedet','facturedet','contratdet','facture_fourn_det','commande_fournisseurdet'); // To test if we can delete object + protected $childtables=array('supplier_proposaldet', 'propaldet','commandedet','facturedet','contratdet','facture_fourn_det','commande_fournisseurdet'); // To test if we can delete object protected $isnolinkedbythird = 1; // No field fk_soc protected $ismultientitymanaged = 1; // 0=No test on entity, 1=Test with field entity, 2=Test with link by societe @@ -738,7 +738,7 @@ class Product extends CommonObject // Multilangs if (! empty($conf->global->MAIN_MULTILANGS)) { - if ( $this->setMultiLangs() < 0) + if ( $this->setMultiLangs($user) < 0) { $this->error=$langs->trans("Error")." : ".$this->db->error()." - ".$sql; return -2; @@ -968,9 +968,11 @@ class Product extends CommonObject /** * Update or add a translation for a product * + * @param User $user Object user making update + * * @return int <0 if KO, >0 if OK */ - function setMultiLangs() + function setMultiLangs($user) { global $langs; @@ -1049,6 +1051,15 @@ class Product extends CommonObject // language is not current language and we didn't provide a multilang description for this language } } + + // Call trigger + $result = $this->call_trigger('PRODUCT_SET_MULTILANGS',$user); + if ($result < 0) { + $this->error = $this->db->lasterror(); + return -1; + } + // End call triggers + return 1; } @@ -3492,13 +3503,13 @@ class Product extends CommonObject * TODO Move this into html.formproduct.class.php * * @param string $sdir Directory to scan - * @param int $size 0=original size, 1 use thumbnail if possible + * @param int $size 0=original size, 1='small' use thumbnail if possible * @param int $nbmax Nombre maximum de photos (0=pas de max) * @param int $nbbyrow Number of image per line or -1 to use div. Used only if size=1. * @param int $showfilename 1=Show filename * @param int $showaction 1=Show icon with action links (resize, delete) - * @param int $maxHeight Max height of image when size=1 - * @param int $maxWidth Max width of image when size=1 + * @param int $maxHeight Max height of original image when size='small' (so we can use original even if small requested). If 0, always use 'small' thumb image. + * @param int $maxWidth Max width of original image when size='small' * @param int $nolink Do not add a href link to view enlarged imaged into a new tab * @return string Html code to show photo. Number of photos shown is saved in this->nbphoto */ @@ -3546,14 +3557,12 @@ class Product extends CommonObject $photo = $file; $viewfilename = $file; - if ($size == 1) { // Format vignette - // On determine nom du fichier vignette - $photo_vignette=''; - if (preg_match('/(\.jpg|\.bmp|\.gif|\.png|\.tiff)$/i', $photo, $regs)) { - $photo_vignette=preg_replace('/'.$regs[0].'/i', '', $photo)."_small".$regs[0]; - if (! dol_is_file($dirthumb.$photo_vignette)) $photo_vignette=''; - } + if ($size == 1 || $size == 'small') { // Format vignette + // Find name of thumb file + $photo_vignette=basename(getImageFileNameForSize($dir.$file, '_small', '.png')); + if (! dol_is_file($dirthumb.$photo_vignette)) $photo_vignette=''; + // Get filesize of original file $imgarray=dol_getImageSize($dir.$photo); @@ -3573,7 +3582,8 @@ class Product extends CommonObject // Si fichier vignette disponible et image source trop grande, on utilise la vignette, sinon on utilise photo origine $alt=$langs->transnoentitiesnoconv('File').': '.$pdir.$photo; $alt.=' - '.$langs->transnoentitiesnoconv('Size').': '.$imgarray['width'].'x'.$imgarray['height']; - if ($photo_vignette && $imgarray['height'] > $maxHeight) + + if (empty($maxHeight) || $photo_vignette && $imgarray['height'] > $maxHeight) { $return.= '<!-- Show thumb -->'; $return.= '<img class="photo photowithmargin" border="0" '.($conf->dol_use_jmobile?'max-height':'height').'="'.$maxHeight.'" src="'.DOL_URL_ROOT.'/viewimage.php?modulepart=product&entity='.$this->entity.'&file='.urlencode($pdirthumb.$photo_vignette).'" title="'.dol_escape_htmltag($alt).'">'; @@ -3615,7 +3625,7 @@ class Product extends CommonObject else if ($nbbyrow < 0) $return.='</div>'; } - if ($size == 0) { // Format origine + if (empty($size)) { // Format origine $return.= '<img class="photo photowithmargin" border="0" src="'.DOL_URL_ROOT.'/viewimage.php?modulepart=product&entity='.$this->entity.'&file='.urlencode($pdir.$photo).'">'; if ($showfilename) $return.= '<br>'.$viewfilename; @@ -3639,7 +3649,7 @@ class Product extends CommonObject } } - if ($size==1) + if ($size==1 || $size='small') { if ($nbbyrow > 0) { diff --git a/htdocs/product/traduction.php b/htdocs/product/traduction.php index 96187fad8dd1dc66fa5a4826902c7b5853b9c9fd..3d97467f552eec028affbe471615c50027bdeb48 100644 --- a/htdocs/product/traduction.php +++ b/htdocs/product/traduction.php @@ -87,7 +87,7 @@ $cancel != $langs->trans("Cancel") && } // sauvegarde en base - if ( $object->setMultiLangs() > 0 ) + if ( $object->setMultiLangs($user) > 0 ) { $action = ''; } @@ -123,7 +123,7 @@ $cancel != $langs->trans("Cancel") && } } - if ( $object->setMultiLangs() > 0 ) + if ( $object->setMultiLangs($user) > 0 ) { $action = ''; } diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index 57049610390957bb04b8e4c88750d6e2d0d703b0..0c84826cf474b7fd68f3f013d691207f269783d3 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -43,7 +43,7 @@ class Societe extends CommonObject public $element='societe'; public $table_element = 'societe'; public $fk_element='fk_soc'; - protected $childtables=array("askpricesupplier","propal","commande","facture","contrat","facture_fourn","commande_fournisseur","projet"); // To test if we can delete object + protected $childtables=array("supplier_proposal","propal","commande","facture","contrat","facture_fourn","commande_fournisseur","projet"); // To test if we can delete object /** * 0=No test on entity, 1=Test with field entity, 2=Test with link by societe diff --git a/htdocs/societe/list.php b/htdocs/societe/list.php index 1ebdde8b717c568ea9934db7d6a24cd3f549ffa7..8477eb97788dd268e3d3cd6a4ddb942ec3c00760 100644 --- a/htdocs/societe/list.php +++ b/htdocs/societe/list.php @@ -37,6 +37,7 @@ $langs->load("companies"); $langs->load("customers"); $langs->load("suppliers"); $langs->load("bills"); +$langs->load("compta"); // Security check $socid = GETPOST('socid','int'); diff --git a/htdocs/comm/admin/askpricesupplier_extrafields.php b/htdocs/supplier_proposal/admin/supplier_proposal_extrafields.php similarity index 92% rename from htdocs/comm/admin/askpricesupplier_extrafields.php rename to htdocs/supplier_proposal/admin/supplier_proposal_extrafields.php index 0fb0554203fcc5d285b856b7cffe223fd67bbb28..a7589566175329495dde568c97a18092e8e7c017 100644 --- a/htdocs/comm/admin/askpricesupplier_extrafields.php +++ b/htdocs/supplier_proposal/admin/supplier_proposal_extrafields.php @@ -19,12 +19,12 @@ */ require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/askpricesupplier.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/supplier_proposal.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'; $langs->load("companies"); $langs->load("admin"); -$langs->load('askpricesupplier'); +$langs->load('supplier_proposal'); $extrafields = new ExtraFields($db); $form = new Form($db); @@ -36,7 +36,7 @@ foreach ($tmptype2label as $key => $val) $type2label[$key]=$langs->trans($val); $action=GETPOST('action', 'alpha'); $attrname=GETPOST('attrname', 'alpha'); -$elementtype='askpricesupplier'; //Must be the $table_element of the class that manage extrafield +$elementtype='supplier_proposal'; //Must be the $table_element of the class that manage extrafield if (!$user->admin) accessforbidden(); @@ -56,16 +56,16 @@ require DOL_DOCUMENT_ROOT.'/core/actions_extrafields.inc.php'; $textobject=$langs->transnoentitiesnoconv("CommRequests"); -llxHeader('',$langs->trans("AskPriceSupplierSetup")); +llxHeader('',$langs->trans("SupplierProposalSetup")); $linkback='<a href="'.DOL_URL_ROOT.'/admin/modules.php">'.$langs->trans("BackToModuleList").'</a>'; -print load_fiche_titre($langs->trans("AskPriceSupplierSetup"),$linkback,'title_setup'); +print load_fiche_titre($langs->trans("SupplierProposalSetup"),$linkback,'title_setup'); -$head = askpricesupplier_admin_prepare_head(); +$head = supplier_proposal_admin_prepare_head(); -dol_fiche_head($head, 'attributes', $langs->trans("CommRequests"), 0, 'askpricesupplier'); +dol_fiche_head($head, 'attributes', $langs->trans("CommRequests"), 0, 'supplier_proposal'); print $langs->trans("DefineHereComplementaryAttributes",$textobject).'<br>'."\n"; diff --git a/htdocs/comm/admin/askpricesupplierdet_extrafields.php b/htdocs/supplier_proposal/admin/supplier_proposaldet_extrafields.php similarity index 92% rename from htdocs/comm/admin/askpricesupplierdet_extrafields.php rename to htdocs/supplier_proposal/admin/supplier_proposaldet_extrafields.php index 09c215d1f3d4f05eddcc3c4ab158807a685dfdf8..12e5d2c23e69f92f5cc8cffd3d5a19786e778b23 100644 --- a/htdocs/comm/admin/askpricesupplierdet_extrafields.php +++ b/htdocs/supplier_proposal/admin/supplier_proposaldet_extrafields.php @@ -22,7 +22,7 @@ */ require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/askpricesupplier.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/supplier_proposal.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'; @@ -31,7 +31,7 @@ if (!$user->admin) $langs->load("admin"); $langs->load("other"); -$langs->load("askpricesupplier"); +$langs->load("supplier_proposal"); $extrafields = new ExtraFields($db); $form = new Form($db); @@ -44,7 +44,7 @@ foreach ($tmptype2label as $key => $val) $type2label[$key]=$langs->trans($val); $action=GETPOST('action', 'alpha'); $attrname=GETPOST('attrname', 'alpha'); -$elementtype='askpricesupplierdet'; //Must be the $table_element of the class that manage extrafield +$elementtype='supplier_proposaldet'; //Must be the $table_element of the class that manage extrafield if (!$user->admin) accessforbidden(); @@ -63,14 +63,14 @@ require DOL_DOCUMENT_ROOT.'/core/actions_extrafields.inc.php'; $textobject=$langs->transnoentitiesnoconv("CommRequests"); -llxHeader('',$langs->trans("AskPriceSupplierSetup")); +llxHeader('',$langs->trans("SupplierProposalSetup")); $linkback='<a href="'.DOL_URL_ROOT.'/admin/modules.php">'.$langs->trans("BackToModuleList").'</a>'; -print load_fiche_titre($langs->trans("AskPriceSupplierSetup"),$linkback,'title_setup'); +print load_fiche_titre($langs->trans("SupplierProposalSetup"),$linkback,'title_setup'); -$head = askpricesupplier_admin_prepare_head(); +$head = supplier_proposal_admin_prepare_head(); -dol_fiche_head($head, 'attributeslines', $langs->trans("CommRequests"), 0, 'askpricesupplier'); +dol_fiche_head($head, 'attributeslines', $langs->trans("CommRequests"), 0, 'supplier_proposal'); print $langs->trans("DefineHereComplementaryAttributes",$textobject).'<br>'."\n"; diff --git a/htdocs/comm/askpricesupplier/card.php b/htdocs/supplier_proposal/card.php similarity index 91% rename from htdocs/comm/askpricesupplier/card.php rename to htdocs/supplier_proposal/card.php index 900ef57d56a3722efb01c87bb8ccefc1e4b25d90..878d1c0df01a6e837d472dd2b3d096ad374b29a3 100644 --- a/htdocs/comm/askpricesupplier/card.php +++ b/htdocs/supplier_proposal/card.php @@ -25,15 +25,15 @@ * along with this program. If not, see <http://www.gnu.org/licenses/>. */ -require '../../main.inc.php'; +require '../main.inc.php'; require_once DOL_DOCUMENT_ROOT . '/core/class/html.formother.class.php'; require_once DOL_DOCUMENT_ROOT . '/core/class/html.formfile.class.php'; -require_once DOL_DOCUMENT_ROOT . '/core/class/html.formaskpricesupplier.class.php'; +require_once DOL_DOCUMENT_ROOT . '/core/class/html.formsupplier_proposal.class.php'; require_once DOL_DOCUMENT_ROOT . '/core/class/html.formmargin.class.php'; -require_once DOL_DOCUMENT_ROOT . '/comm/askpricesupplier/class/askpricesupplier.class.php'; +require_once DOL_DOCUMENT_ROOT . '/supplier_proposal/class/supplier_proposal.class.php'; require_once DOL_DOCUMENT_ROOT . '/comm/action/class/actioncomm.class.php'; -require_once DOL_DOCUMENT_ROOT . '/core/modules/askpricesupplier/modules_askpricesupplier.php'; -require_once DOL_DOCUMENT_ROOT . '/core/lib/askpricesupplier.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/modules/supplier_proposal/modules_supplier_proposal.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/supplier_proposal.lib.php'; require_once DOL_DOCUMENT_ROOT . '/core/lib/functions2.lib.php'; require_once DOL_DOCUMENT_ROOT . '/core/class/extrafields.class.php'; if (! empty($conf->projet->enabled)) { @@ -42,7 +42,7 @@ if (! empty($conf->projet->enabled)) { } $langs->load('companies'); -$langs->load('askpricesupplier'); +$langs->load('supplier_proposal'); $langs->load('compta'); $langs->load('bills'); $langs->load('orders'); @@ -74,9 +74,9 @@ $NBLINES = 4; // Security check if (! empty($user->societe_id)) $socid = $user->societe_id; -$result = restrictedArea($user, 'askpricesupplier', $id); +$result = restrictedArea($user, 'supplier_proposal', $id); -$object = new AskPriceSupplier($db); +$object = new SupplierProposal($db); $extrafields = new ExtraFields($db); // fetch optionals attributes and labels @@ -92,9 +92,9 @@ if ($id > 0 || ! empty($ref)) { } // Initialize technical object to manage hooks of thirdparties. Note that conf->hooks_modules contains array array -$hookmanager->initHooks(array('askpricesuppliercard','globalcard')); +$hookmanager->initHooks(array('supplier_proposalcard','globalcard')); -$permissionnote = $user->rights->askpricesupplier->creer; // Used by the include of actions_setnotes.inc.php +$permissionnote = $user->rights->supplier_proposal->creer; // Used by the include of actions_setnotes.inc.php /* @@ -134,11 +134,11 @@ if (empty($reshook)) } // Delete askprice - else if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->askpricesupplier->supprimer) + else if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->supplier_proposal->supprimer) { $result = $object->delete($user); if ($result > 0) { - header('Location: ' . DOL_URL_ROOT . '/comm/askpricesupplier/list.php'); + header('Location: ' . DOL_URL_ROOT . '/supplier_proposal/list.php'); exit(); } else { $langs->load("errors"); @@ -147,7 +147,7 @@ if (empty($reshook)) } // Remove line - else if ($action == 'confirm_deleteline' && $confirm == 'yes' && $user->rights->askpricesupplier->creer) + else if ($action == 'confirm_deleteline' && $confirm == 'yes' && $user->rights->supplier_proposal->creer) { $result = $object->deleteline($lineid); // reorder lines @@ -172,8 +172,8 @@ if (empty($reshook)) // Validation else if ($action == 'confirm_validate' && $confirm == 'yes' && - ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->askpricesupplier->creer)) - || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->askpricesupplier->validate))) + ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->supplier_proposal->creer)) + || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->supplier_proposal->validate))) ) { $result = $object->valid($user); @@ -205,7 +205,7 @@ if (empty($reshook)) } } - else if ($action == 'setdate_livraison' && $user->rights->askpricesupplier->creer) + else if ($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) @@ -213,7 +213,7 @@ if (empty($reshook)) } // Create askprice - else if ($action == 'add' && $user->rights->askpricesupplier->creer) + else if ($action == 'add' && $user->rights->supplier_proposal->creer) { $object->socid = $socid; $object->fetch_thirdparty(); @@ -231,9 +231,9 @@ if (empty($reshook)) $db->begin(); // Si on a selectionne une demande a copier, on realise la copie - if (GETPOST('createmode') == 'copy' && GETPOST('copie_askpricesupplier')) + if (GETPOST('createmode') == 'copy' && GETPOST('copie_supplier_proposal')) { - if ($object->fetch(GETPOST('copie_askpricesupplier')) > 0) { + if ($object->fetch(GETPOST('copie_supplier_proposal')) > 0) { $object->ref = GETPOST('ref'); $object->date_livraison = $date_delivery; $object->shipping_method_id = GETPOST('shipping_method_id', 'int'); @@ -251,7 +251,7 @@ if (empty($reshook)) $id = $object->create_from($user); } else { - setEventMessages($langs->trans("ErrorFailedToCopyProposal", GETPOST('copie_askpricesupplier')), null, 'errors'); + setEventMessages($langs->trans("ErrorFailedToCopyProposal", GETPOST('copie_supplier_proposal')), null, 'errors'); } } else { $object->ref = GETPOST('ref'); @@ -291,8 +291,8 @@ if (empty($reshook)) { if ($origin && $originid) { - $element = 'comm/askpricesupplier'; - $subelement = 'askpricesupplier'; + $element = 'supplier_proposal'; + $subelement = 'supplier_proposal'; $object->origin = $origin; $object->origin_id = $originid; @@ -426,7 +426,7 @@ if (empty($reshook)) } // Reopen proposal - else if ($action == 'confirm_reopen' && $user->rights->askpricesupplier->cloturer && ! GETPOST('cancel')) { + else if ($action == 'confirm_reopen' && $user->rights->supplier_proposal->cloturer && ! GETPOST('cancel')) { // prevent browser refresh from reopening proposal several times if ($object->statut == 2 || $object->statut == 3 || $object->statut == 4) { $object->reopen($user, 1); @@ -434,7 +434,7 @@ if (empty($reshook)) } // Close proposal - else if ($action == 'setstatut' && $user->rights->askpricesupplier->cloturer && ! GETPOST('cancel')) { + else if ($action == 'setstatut' && $user->rights->supplier_proposal->cloturer && ! GETPOST('cancel')) { if (! GETPOST('statut')) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("CloseAs")), null, 'errors'); $action = 'statut'; @@ -455,15 +455,15 @@ if (empty($reshook)) // Actions to send emails $actiontypecode='AC_ASKPRICE'; - $trigger_name='ASKPRICESUPPLIER_SENTBYMAIL'; + $trigger_name='SUPPLIER_PROPOSAL_SENTBYMAIL'; $paramname='id'; - $mode='emailfromaskpricesupplier'; + $mode='emailfromsupplier_proposal'; include DOL_DOCUMENT_ROOT.'/core/actions_sendmails.inc.php'; // Go back to draft - if ($action == 'modif' && $user->rights->askpricesupplier->creer) + if ($action == 'modif' && $user->rights->supplier_proposal->creer) { $object->set_draft($user); @@ -481,7 +481,7 @@ if (empty($reshook)) } } - else if ($action == "setabsolutediscount" && $user->rights->askpricesupplier->creer) { + else if ($action == "setabsolutediscount" && $user->rights->supplier_proposal->creer) { if ($_POST["remise_id"]) { if ($object->id > 0) { $result = $object->insert_discount($_POST["remise_id"]); @@ -493,7 +493,7 @@ if (empty($reshook)) } // Add line - else if ($action == 'addline' && $user->rights->askpricesupplier->creer) { + else if ($action == 'addline' && $user->rights->supplier_proposal->creer) { // Set if we used free entry or predefined product $predef=''; @@ -725,7 +725,7 @@ if (empty($reshook)) } // Mise a jour d'une ligne dans la demande de prix - else if ($action == 'updateligne' && $user->rights->askpricesupplier->creer && GETPOST('save') == $langs->trans("Save")) { + else if ($action == 'updateligne' && $user->rights->supplier_proposal->creer && GETPOST('save') == $langs->trans("Save")) { // Define info_bits $info_bits = 0; if (preg_match('/\*/', GETPOST('tva_tx'))) @@ -830,13 +830,13 @@ if (empty($reshook)) } } - else if ($action == 'updateligne' && $user->rights->askpricesupplier->creer && GETPOST('cancel') == $langs->trans('Cancel')) { + else if ($action == 'updateligne' && $user->rights->supplier_proposal->creer && GETPOST('cancel') == $langs->trans('Cancel')) { header('Location: ' . $_SERVER['PHP_SELF'] . '?id=' . $object->id); // Pour reaffichage de la fiche en cours d'edition exit(); } // Generation doc (depuis lien ou depuis cartouche doc) - else if ($action == 'builddoc' && $user->rights->askpricesupplier->creer) { + else if ($action == 'builddoc' && $user->rights->supplier_proposal->creer) { if (GETPOST('model')) { $object->setDocModel($user, GETPOST('model')); } @@ -858,12 +858,12 @@ if (empty($reshook)) } // Remove file in doc form - else if ($action == 'remove_file' && $user->rights->askpricesupplier->creer) { + else if ($action == 'remove_file' && $user->rights->supplier_proposal->creer) { if ($object->id > 0) { require_once DOL_DOCUMENT_ROOT . '/core/lib/files.lib.php'; $langs->load("other"); - $upload_dir = $conf->askpricesupplier->dir_output; + $upload_dir = $conf->supplier_proposal->dir_output; $file = $upload_dir . '/' . GETPOST('file'); $ret = dol_delete_file($file, 0, 0, 0, $object); if ($ret) @@ -874,30 +874,30 @@ if (empty($reshook)) } // Set project - else if ($action == 'classin' && $user->rights->askpricesupplier->creer) { + else if ($action == 'classin' && $user->rights->supplier_proposal->creer) { $object->setProject($_POST['projectid']); } // Delai de livraison - else if ($action == 'setavailability' && $user->rights->askpricesupplier->creer) { + else if ($action == 'setavailability' && $user->rights->supplier_proposal->creer) { $result = $object->availability($_POST['availability_id']); } // Conditions de reglement - else if ($action == 'setconditions' && $user->rights->askpricesupplier->creer) { + else if ($action == 'setconditions' && $user->rights->supplier_proposal->creer) { $result = $object->setPaymentTerms(GETPOST('cond_reglement_id', 'int')); } - else if ($action == 'setremisepercent' && $user->rights->askpricesupplier->creer) { + else if ($action == 'setremisepercent' && $user->rights->supplier_proposal->creer) { $result = $object->set_remise_percent($user, $_POST['remise_percent']); } - else if ($action == 'setremiseabsolue' && $user->rights->askpricesupplier->creer) { + else if ($action == 'setremiseabsolue' && $user->rights->supplier_proposal->creer) { $result = $object->set_remise_absolue($user, $_POST['remise_absolue']); } // Mode de reglement - else if ($action == 'setmode' && $user->rights->askpricesupplier->creer) { + else if ($action == 'setmode' && $user->rights->supplier_proposal->creer) { $result = $object->setPaymentMethods(GETPOST('mode_reglement_id', 'int')); } @@ -905,7 +905,7 @@ if (empty($reshook)) * Ordonnancement des lignes */ - else if ($action == 'up' && $user->rights->askpricesupplier->creer) { + else if ($action == 'up' && $user->rights->supplier_proposal->creer) { $object->line_up(GETPOST('rowid')); if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) { @@ -924,7 +924,7 @@ if (empty($reshook)) exit(); } - else if ($action == 'down' && $user->rights->askpricesupplier->creer) { + else if ($action == 'down' && $user->rights->supplier_proposal->creer) { $object->line_down(GETPOST('rowid')); if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) { @@ -950,7 +950,7 @@ if (empty($reshook)) if (! $error) { // Actions on extra fields (by external module or standard code) - $hookmanager->initHooks(array('askpricesupplierdao')); + $hookmanager->initHooks(array('supplier_proposaldao')); $parameters = array('id' => $object->id); $reshook = $hookmanager->executeHooks('insertExtraFields', $parameters, $object, $action); // Note that $action and $object may have been // modified by @@ -979,7 +979,7 @@ llxHeader('', $langs->trans('CommRequests'), 'EN:Ask_Price_Supplier|FR:Demande_d $form = new Form($db); $formother = new FormOther($db); $formfile = new FormFile($db); -$formaskpricesupplier = new FormAskPriceSupplier($db); +$formsupplier_proposal = new FormSupplierProposal($db); $formmargin = new FormMargin($db); $companystatic = new Societe($db); @@ -997,8 +997,8 @@ if ($action == 'create') // Load objectsrc if (! empty($origin) && ! empty($originid)) { - $element = 'comm/askpricesupplier'; - $subelement = 'askpricesupplier'; + $element = 'supplier_proposal'; + $subelement = 'supplier_proposal'; dol_include_once('/' . $element . '/class/' . $subelement . '.class.php'); @@ -1025,7 +1025,7 @@ if ($action == 'create') } - $object = new AskPriceSupplier($db); + $object = new SupplierProposal($db); print '<form name="addprop" action="' . $_SERVER["PHP_SELF"] . '" method="POST">'; print '<input type="hidden" name="token" value="' . $_SESSION ['newtoken'] . '">'; @@ -1100,8 +1100,8 @@ if ($action == 'create') print '<tr>'; print '<td>' . $langs->trans("DefaultModel") . '</td>'; print '<td colspan="2">'; - $liste = ModelePDFAskPriceSupplier::liste_modeles($db); - print $form->selectarray('model', $liste, ($conf->global->ASKPRICESUPPLIER_ADDON_PDF_ODT_DEFAULT ? $conf->global->ASKPRICESUPPLIER_ADDON_PDF_ODT_DEFAULT : $conf->global->ASKPRICESUPPLIER_ADDON_PDF)); + $liste = ModelePDFSupplierProposal::liste_modeles($db); + print $form->selectarray('model', $liste, ($conf->global->SUPPLIER_PROPOSAL_ADDON_PDF_ODT_DEFAULT ? $conf->global->SUPPLIER_PROPOSAL_ADDON_PDF_ODT_DEFAULT : $conf->global->SUPPLIER_PROPOSAL_ADDON_PDF)); print "</td></tr>"; // Project @@ -1177,10 +1177,10 @@ if ($action == 'create') * Combobox pour la fonction de copie */ - if (empty($conf->global->ASKPRICESUPPLIER_CLONE_ON_CREATE_PAGE)) print '<input type="hidden" name="createmode" value="empty">'; + if (empty($conf->global->SUPPLIER_PROPOSAL_CLONE_ON_CREATE_PAGE)) print '<input type="hidden" name="createmode" value="empty">'; - if (! empty($conf->global->ASKPRICESUPPLIER_CLONE_ON_CREATE_PAGE) || ! empty($conf->global->PRODUCT_SHOW_WHEN_CREATE)) print '<br><table>'; - if (! empty($conf->global->ASKPRICESUPPLIER_CLONE_ON_CREATE_PAGE)) + if (! empty($conf->global->SUPPLIER_PROPOSAL_CLONE_ON_CREATE_PAGE) || ! empty($conf->global->PRODUCT_SHOW_WHEN_CREATE)) print '<br><table>'; + if (! empty($conf->global->SUPPLIER_PROPOSAL_CLONE_ON_CREATE_PAGE)) { // For backward compatibility print '<tr>'; @@ -1191,7 +1191,7 @@ if ($action == 'create') $liste_ask [0] = ''; $sql = "SELECT p.rowid as id, p.ref, s.nom"; - $sql .= " FROM " . MAIN_DB_PREFIX . "askpricesupplier p"; + $sql .= " FROM " . MAIN_DB_PREFIX . "supplier_proposal p"; $sql .= ", " . MAIN_DB_PREFIX . "societe s"; $sql .= " WHERE s.rowid = p.fk_soc"; $sql .= " AND p.entity = " . $conf->entity; @@ -1208,7 +1208,7 @@ if ($action == 'create') $liste_ask [$row [0]] = $askPriceSupplierRefAndSocName; $i ++; } - print $form->selectarray("copie_askpricesupplier", $liste_ask, 0); + print $form->selectarray("copie_supplier_proposal", $liste_ask, 0); } else { dol_print_error($db); } @@ -1249,7 +1249,7 @@ if ($action == 'create') } print '</td></tr>'; } - if (! empty($conf->global->ASKPRICESUPPLIER_CLONE_ON_CREATE_PAGE) || ! empty($conf->global->PRODUCT_SHOW_WHEN_CREATE)) print '</table>'; + if (! empty($conf->global->SUPPLIER_PROPOSAL_CLONE_ON_CREATE_PAGE) || ! empty($conf->global->PRODUCT_SHOW_WHEN_CREATE)) print '</table>'; dol_fiche_end(); @@ -1284,8 +1284,8 @@ if ($action == 'create') $soc = new Societe($db); $soc->fetch($object->socid); - $head = askpricesupplier_prepare_head($object); - dol_fiche_head($head, 'comm', $langs->trans('CommRequest'), 0, 'askpricesupplier'); + $head = supplier_proposal_prepare_head($object); + dol_fiche_head($head, 'comm', $langs->trans('CommRequest'), 0, 'supplier_proposal'); $formconfirm = ''; @@ -1338,7 +1338,7 @@ if ($action == 'create') require_once DOL_DOCUMENT_ROOT . '/core/class/notify.class.php'; $notify = new Notify($db); $text .= '<br>'; - $text .= $notify->confirmMessage('ASKPRICESUPPLIER_VALIDATE', $object->socid, $object); + $text .= $notify->confirmMessage('SUPPLIER_PROPOSAL_VALIDATE', $object->socid, $object); } if (! $error) @@ -1357,7 +1357,7 @@ if ($action == 'create') print '<table class="border" width="100%">'; - $linkback = '<a href="' . DOL_URL_ROOT . '/comm/askpricesupplier/list.php' . (! empty($socid) ? '?socid=' . $socid : '') . '">' . $langs->trans("BackToList") . '</a>'; + $linkback = '<a href="' . DOL_URL_ROOT . '/supplier_proposal/list.php' . (! empty($socid) ? '?socid=' . $socid : '') . '">' . $langs->trans("BackToList") . '</a>'; // Ref print '<tr><td>' . $langs->trans('Ref') . '</td><td colspan="5">'; @@ -1431,7 +1431,7 @@ if ($action == 'create') print '<tr><td>'; print '<table class="nobordernopadding" width="100%"><tr><td>'; print $langs->trans('Project') . '</td>'; - if ($user->rights->askpricesupplier->creer) { + if ($user->rights->supplier_proposal->creer) { if ($action != 'classify') print '<td align="right"><a href="' . $_SERVER['PHP_SELF'] . '?action=classify&id=' . $object->id . '">' . img_edit($langs->transnoentitiesnoconv('SetProject')) . '</a></td>'; print '</tr></table>'; @@ -1479,7 +1479,7 @@ if ($action == 'create') print '<table width="100%" class="nobordernopadding"><tr><td>'; print $langs->trans('BankAccount'); print '</td>'; - if ($action != 'editbankaccount' && $user->rights->askpricesupplier->creer) + if ($action != 'editbankaccount' && $user->rights->supplier_proposal->creer) print '<td align="right"><a href="'.$_SERVER["PHP_SELF"].'?action=editbankaccount&id='.$object->id.'">'.img_edit($langs->trans('SetBankAccount'),1).'</a></td>'; print '</tr></table>'; print '</td><td colspan="3">'; @@ -1574,7 +1574,7 @@ if ($action == 'create') $ret = $object->printObjectLines($action, $mysoc, $soc, $lineid, 1); // Form to add new line - if ($object->statut == 0 && $user->rights->askpricesupplier->creer) + if ($object->statut == 0 && $user->rights->supplier_proposal->creer) { if ($action != 'editline') { @@ -1600,7 +1600,7 @@ if ($action == 'create') * Form to close proposal (signed or not) */ $form_close = '<form action="' . $_SERVER["PHP_SELF"] . '?id=' . $object->id . '" method="post">'; - $form_close .= '<p class="notice">'.$langs->trans('AskPriceSupplierRefFournNotice').'</p>'; + $form_close .= '<p class="notice">'.$langs->trans('SupplierProposalRefFournNotice').'</p>'; $form_close .= '<input type="hidden" name="token" value="' . $_SESSION ['newtoken'] . '">'; $form_close .= '<table class="border" width="100%">'; $form_close .= '<tr><td width="150" align="left">' . $langs->trans("CloseAs") . '</td><td align="left">'; @@ -1639,8 +1639,8 @@ if ($action == 'create') { // Validate if ($object->statut == 0 && $object->total_ttc >= 0 && count($object->lines) > 0 && - ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->askpricesupplier->creer)) - || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->askpricesupplier->validate))) + ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->supplier_proposal->creer)) + || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->supplier_proposal->validate))) ) { if (count($object->lines) > 0) print '<div class="inline-block divButAction"><a class="butAction" href="' . $_SERVER["PHP_SELF"] . '?id=' . $object->id . '&action=validate">' . $langs->trans('Validate') . '</a></div>'; @@ -1648,19 +1648,19 @@ if ($action == 'create') } // Edit - if ($object->statut == 1 && $user->rights->askpricesupplier->creer) { + if ($object->statut == 1 && $user->rights->supplier_proposal->creer) { print '<div class="inline-block divButAction"><a class="butAction" href="' . $_SERVER["PHP_SELF"] . '?id=' . $object->id . '&action=modif">' . $langs->trans('Modify') . '</a></div>'; } // ReOpen - if (($object->statut == 2 || $object->statut == 3 || $object->statut == 4) && $user->rights->askpricesupplier->cloturer) { + if (($object->statut == 2 || $object->statut == 3 || $object->statut == 4) && $user->rights->supplier_proposal->cloturer) { print '<div class="inline-block divButAction"><a class="butAction" href="' . $_SERVER["PHP_SELF"] . '?id=' . $object->id . '&action=reopen' . (empty($conf->global->MAIN_JUMP_TAG) ? '' : '#reopen') . '"'; print '>' . $langs->trans('ReOpen') . '</a></div>'; } // Send if ($object->statut == 1 || $object->statut == 2) { - if (empty($conf->global->MAIN_USE_ADVANCED_PERMS) || $user->rights->askpricesupplier->send) { + if (empty($conf->global->MAIN_USE_ADVANCED_PERMS) || $user->rights->supplier_proposal->send) { print '<div class="inline-block divButAction"><a class="butAction" href="' . $_SERVER["PHP_SELF"] . '?id=' . $object->id . '&action=presend&mode=init">' . $langs->trans('SendByMail') . '</a></div>'; } else print '<div class="inline-block divButAction"><a class="butActionRefused" href="#">' . $langs->trans('SendByMail') . '</a></div>'; @@ -1674,18 +1674,18 @@ if ($action == 'create') } // Close - if ($object->statut == 1 && $user->rights->askpricesupplier->cloturer) { + if ($object->statut == 1 && $user->rights->supplier_proposal->cloturer) { print '<div class="inline-block divButAction"><a class="butAction" href="' . $_SERVER["PHP_SELF"] . '?id=' . $object->id . '&action=statut' . (empty($conf->global->MAIN_JUMP_TAG) ? '' : '#close') . '"'; print '>' . $langs->trans('Close') . '</a></div>'; } // Clone - if ($user->rights->askpricesupplier->creer) { + if ($user->rights->supplier_proposal->creer) { print '<div class="inline-block divButAction"><a class="butAction" href="' . $_SERVER['PHP_SELF'] . '?id=' . $object->id . '&socid=' . $object->socid . '&action=clone&object=' . $object->element . '">' . $langs->trans("ToClone") . '</a></div>'; } // Delete - if ($user->rights->askpricesupplier->supprimer) { + if ($user->rights->supplier_proposal->supprimer) { print '<div class="inline-block divButAction"><a class="butActionDelete" href="' . $_SERVER["PHP_SELF"] . '?id=' . $object->id . '&action=delete"'; print '>' . $langs->trans('Delete') . '</a></div>'; } @@ -1704,14 +1704,14 @@ if ($action == 'create') * Documents generes */ $filename = dol_sanitizeFileName($object->ref); - $filedir = $conf->askpricesupplier->dir_output . "/" . dol_sanitizeFileName($object->ref); + $filedir = $conf->supplier_proposal->dir_output . "/" . dol_sanitizeFileName($object->ref); $urlsource = $_SERVER["PHP_SELF"] . "?id=" . $object->id; - $genallowed = $user->rights->askpricesupplier->creer; - $delallowed = $user->rights->askpricesupplier->supprimer; + $genallowed = $user->rights->supplier_proposal->creer; + $delallowed = $user->rights->supplier_proposal->supprimer; $var = true; - $somethingshown = $formfile->show_documents('askpricesupplier', $filename, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', 0, '', $soc->default_lang); + $somethingshown = $formfile->show_documents('supplier_proposal', $filename, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', 0, '', $soc->default_lang); // Linked object block $somethingshown = $form->showLinkedObjectBlock($object); @@ -1725,7 +1725,7 @@ if ($action == 'create') // List of actions on element include_once DOL_DOCUMENT_ROOT . '/core/class/html.formactions.class.php'; $formactions = new FormActions($db); - $somethingshown = $formactions->showactions($object, 'askpricesupplier', $socid); + $somethingshown = $formactions->showactions($object, 'supplier_proposal', $socid); print '</div></div></div>'; } @@ -1742,7 +1742,7 @@ if ($action == 'create') $ref = dol_sanitizeFileName($object->ref); include_once DOL_DOCUMENT_ROOT . '/core/lib/files.lib.php'; - $fileparams = dol_most_recent_file($conf->askpricesupplier->dir_output . '/' . $ref, preg_quote($ref, '/').'[^\-]+'); + $fileparams = dol_most_recent_file($conf->supplier_proposal->dir_output . '/' . $ref, preg_quote($ref, '/').'[^\-]+'); $file = $fileparams['fullname']; // Define output language @@ -1768,7 +1768,7 @@ if ($action == 'create') dol_print_error($db, $object->error, $object->errors); exit(); } - $fileparams = dol_most_recent_file($conf->askpricesupplier->dir_output . '/' . $ref, preg_quote($ref, '/').'[^\-]+'); + $fileparams = dol_most_recent_file($conf->supplier_proposal->dir_output . '/' . $ref, preg_quote($ref, '/').'[^\-]+'); $file = $fileparams['fullname']; } @@ -1821,7 +1821,7 @@ if ($action == 'create') // Tableau des parametres complementaires $formmail->param['action'] = 'send'; - $formmail->param['models'] = 'askpricesupplier_send'; + $formmail->param['models'] = 'supplier_proposal_send'; $formmail->param['models_id']=GETPOST('modelmailselected','int'); $formmail->param['id'] = $object->id; $formmail->param['returnurl'] = $_SERVER["PHP_SELF"] . '?id=' . $object->id; diff --git a/htdocs/core/modules/askpricesupplier/index.html b/htdocs/supplier_proposal/class/index.html similarity index 100% rename from htdocs/core/modules/askpricesupplier/index.html rename to htdocs/supplier_proposal/class/index.html diff --git a/htdocs/comm/askpricesupplier/class/askpricesupplier.class.php b/htdocs/supplier_proposal/class/supplier_proposal.class.php similarity index 88% rename from htdocs/comm/askpricesupplier/class/askpricesupplier.class.php rename to htdocs/supplier_proposal/class/supplier_proposal.class.php index 2f563a17b1b0508e6ab88363e9b5214c1ede4e34..57fc7e50838e6f4f155977213a723bb56af24591 100644 --- a/htdocs/comm/askpricesupplier/class/askpricesupplier.class.php +++ b/htdocs/supplier_proposal/class/supplier_proposal.class.php @@ -27,8 +27,8 @@ */ /** - * \file htdocs/comm/propal/class/propal.class.php - * \brief File of class to manage proposals + * \file htdocs/supplier_proposal/class/supplier_propal.class.php + * \brief File of class to manage supplier proposals */ require_once DOL_DOCUMENT_ROOT .'/fourn/class/fournisseur.product.class.php'; @@ -40,12 +40,12 @@ require_once DOL_DOCUMENT_ROOT .'/margin/lib/margins.lib.php'; /** * Class to manage price ask supplier */ -class AskPriceSupplier extends CommonObject +class SupplierProposal extends CommonObject { - public $element='askpricesupplier'; - public $table_element='askpricesupplier'; - public $table_element_line='askpricesupplierdet'; - public $fk_element='fk_askpricesupplier'; + public $element='supplier_proposal'; + public $table_element='supplier_proposal'; + public $table_element_line='supplier_proposaldet'; + public $fk_element='fk_supplier_proposal'; protected $ismultientitymanaged = 1; // 0=No test on entity, 1=Test with field entity, 2=Test with link by societe /** @@ -136,31 +136,31 @@ class AskPriceSupplier extends CommonObject * * @param DoliDB $db Database handler * @param int $socid Id third party - * @param int $askpricesupplierid Id askpricesupplier + * @param int $supplier_proposalid Id supplier_proposal */ - function __construct($db, $socid="", $askpricesupplierid=0) + function __construct($db, $socid="", $supplier_proposalid=0) { global $conf,$langs; $this->db = $db; $this->socid = $socid; - $this->id = $askpricesupplierid; + $this->id = $supplier_proposalid; $this->products = array(); $this->remise = 0; $this->remise_percent = 0; $this->remise_absolue = 0; - $langs->load("askpricesupplier"); - $this->labelstatut[0]=(! empty($conf->global->ASKPRICESUPPLIER_STATUS_DRAFT_LABEL) ? $conf->global->ASKPRICESUPPLIER_STATUS_DRAFT_LABEL : $langs->trans("AskpricesupplierStatusDraft")); - $this->labelstatut[1]=(! empty($conf->global->ASKPRICESUPPLIER_STATUS_VALIDATED_LABEL) ? $conf->global->ASKPRICESUPPLIER_STATUS_VALIDATED_LABEL : $langs->trans("AskpricesupplierStatusValidated")); - $this->labelstatut[2]=(! empty($conf->global->ASKPRICESUPPLIER_STATUS_SIGNED_LABEL) ? $conf->global->ASKPRICESUPPLIER_STATUS_SIGNED_LABEL : $langs->trans("AskpricesupplierStatusSigned")); - $this->labelstatut[3]=(! empty($conf->global->ASKPRICESUPPLIER_STATUS_NOTSIGNED_LABEL) ? $conf->global->ASKPRICESUPPLIER_STATUS_NOTSIGNED_LABEL : $langs->trans("AskpricesupplierStatusNotSigned")); - $this->labelstatut[4]=(! empty($conf->global->ASKPRICESUPPLIER_STATUS_BILLED_LABEL) ? $conf->global->ASKPRICESUPPLIER_STATUS_BILLED_LABEL : $langs->trans("AskpricesupplierStatusBilled")); - $this->labelstatut_short[0]=(! empty($conf->global->ASKPRICESUPPLIER_STATUS_DRAFTSHORT_LABEL) ? $conf->global->ASKPRICESUPPLIER_STATUS_DRAFTSHORT_LABEL : $langs->trans("AskpricesupplierStatusDraftShort")); - $this->labelstatut_short[1]=(! empty($conf->global->ASKPRICESUPPLIER_STATUS_VALIDATEDSHORT_LABEL) ? $conf->global->ASKPRICESUPPLIER_STATUS_VALIDATEDSHORT_LABEL : $langs->trans("Opened")); - $this->labelstatut_short[2]=(! empty($conf->global->ASKPRICESUPPLIER_STATUS_SIGNEDSHORT_LABEL) ? $conf->global->ASKPRICESUPPLIER_STATUS_SIGNEDSHORT_LABEL : $langs->trans("AskpricesupplierStatusSignedShort")); - $this->labelstatut_short[3]=(! empty($conf->global->ASKPRICESUPPLIER_STATUS_NOTSIGNEDSHORT_LABEL) ? $conf->global->ASKPRICESUPPLIER_STATUS_NOTSIGNEDSHORT_LABEL : $langs->trans("AskpricesupplierStatusNotSignedShort")); - $this->labelstatut_short[4]=(! empty($conf->global->ASKPRICESUPPLIER_STATUS_BILLEDSHORT_LABEL) ? $conf->global->ASKPRICESUPPLIER_STATUS_BILLEDSHORT_LABEL : $langs->trans("AskpricesupplierStatusBilledShort")); + $langs->load("supplier_proposal"); + $this->labelstatut[0]=(! empty($conf->global->SUPPLIER_PROPOSAL_STATUS_DRAFT_LABEL) ? $conf->global->SUPPLIER_PROPOSAL_STATUS_DRAFT_LABEL : $langs->trans("AskpricesupplierStatusDraft")); + $this->labelstatut[1]=(! empty($conf->global->SUPPLIER_PROPOSAL_STATUS_VALIDATED_LABEL) ? $conf->global->SUPPLIER_PROPOSAL_STATUS_VALIDATED_LABEL : $langs->trans("AskpricesupplierStatusValidated")); + $this->labelstatut[2]=(! empty($conf->global->SUPPLIER_PROPOSAL_STATUS_SIGNED_LABEL) ? $conf->global->SUPPLIER_PROPOSAL_STATUS_SIGNED_LABEL : $langs->trans("AskpricesupplierStatusSigned")); + $this->labelstatut[3]=(! empty($conf->global->SUPPLIER_PROPOSAL_STATUS_NOTSIGNED_LABEL) ? $conf->global->SUPPLIER_PROPOSAL_STATUS_NOTSIGNED_LABEL : $langs->trans("AskpricesupplierStatusNotSigned")); + $this->labelstatut[4]=(! empty($conf->global->SUPPLIER_PROPOSAL_STATUS_BILLED_LABEL) ? $conf->global->SUPPLIER_PROPOSAL_STATUS_BILLED_LABEL : $langs->trans("AskpricesupplierStatusBilled")); + $this->labelstatut_short[0]=(! empty($conf->global->SUPPLIER_PROPOSAL_STATUS_DRAFTSHORT_LABEL) ? $conf->global->SUPPLIER_PROPOSAL_STATUS_DRAFTSHORT_LABEL : $langs->trans("AskpricesupplierStatusDraftShort")); + $this->labelstatut_short[1]=(! empty($conf->global->SUPPLIER_PROPOSAL_STATUS_VALIDATEDSHORT_LABEL) ? $conf->global->SUPPLIER_PROPOSAL_STATUS_VALIDATEDSHORT_LABEL : $langs->trans("Opened")); + $this->labelstatut_short[2]=(! empty($conf->global->SUPPLIER_PROPOSAL_STATUS_SIGNEDSHORT_LABEL) ? $conf->global->SUPPLIER_PROPOSAL_STATUS_SIGNEDSHORT_LABEL : $langs->trans("AskpricesupplierStatusSignedShort")); + $this->labelstatut_short[3]=(! empty($conf->global->SUPPLIER_PROPOSAL_STATUS_NOTSIGNEDSHORT_LABEL) ? $conf->global->SUPPLIER_PROPOSAL_STATUS_NOTSIGNEDSHORT_LABEL : $langs->trans("AskpricesupplierStatusNotSignedShort")); + $this->labelstatut_short[4]=(! empty($conf->global->SUPPLIER_PROPOSAL_STATUS_BILLEDSHORT_LABEL) ? $conf->global->SUPPLIER_PROPOSAL_STATUS_BILLEDSHORT_LABEL : $langs->trans("AskpricesupplierStatusBilledShort")); } @@ -205,7 +205,7 @@ class AskPriceSupplier extends CommonObject $price = $prod->price; } - $line = new AskPriceSupplierLine($this->db); + $line = new SupplierProposalLine($this->db); $line->fk_product=$idproduct; $line->desc=$productdesc; @@ -245,27 +245,27 @@ class AskPriceSupplier extends CommonObject return -5; } - $askpricesupplierligne=new AskPriceSupplierLine($this->db); - $askpricesupplierligne->fk_askpricesupplier=$this->id; - $askpricesupplierligne->fk_remise_except=$remise->id; - $askpricesupplierligne->desc=$remise->description; // Description ligne - $askpricesupplierligne->tva_tx=$remise->tva_tx; - $askpricesupplierligne->subprice=-$remise->amount_ht; - $askpricesupplierligne->fk_product=0; // Id produit predefini - $askpricesupplierligne->qty=1; - $askpricesupplierligne->remise=0; - $askpricesupplierligne->remise_percent=0; - $askpricesupplierligne->rang=-1; - $askpricesupplierligne->info_bits=2; + $supplier_proposalligne=new SupplierProposalLine($this->db); + $supplier_proposalligne->fk_supplier_proposal=$this->id; + $supplier_proposalligne->fk_remise_except=$remise->id; + $supplier_proposalligne->desc=$remise->description; // Description ligne + $supplier_proposalligne->tva_tx=$remise->tva_tx; + $supplier_proposalligne->subprice=-$remise->amount_ht; + $supplier_proposalligne->fk_product=0; // Id produit predefini + $supplier_proposalligne->qty=1; + $supplier_proposalligne->remise=0; + $supplier_proposalligne->remise_percent=0; + $supplier_proposalligne->rang=-1; + $supplier_proposalligne->info_bits=2; // TODO deprecated - $askpricesupplierligne->price=-$remise->amount_ht; + $supplier_proposalligne->price=-$remise->amount_ht; - $askpricesupplierligne->total_ht = -$remise->amount_ht; - $askpricesupplierligne->total_tva = -$remise->amount_tva; - $askpricesupplierligne->total_ttc = -$remise->amount_ttc; + $supplier_proposalligne->total_ht = -$remise->amount_ht; + $supplier_proposalligne->total_tva = -$remise->amount_tva; + $supplier_proposalligne->total_ttc = -$remise->amount_ttc; - $result=$askpricesupplierligne->insert(); + $result=$supplier_proposalligne->insert(); if ($result > 0) { $result=$this->update_price(1); @@ -282,7 +282,7 @@ class AskPriceSupplier extends CommonObject } else { - $this->error=$askpricesupplierligne->error; + $this->error=$supplier_proposalligne->error; $this->db->rollback(); return -2; } @@ -329,7 +329,7 @@ class AskPriceSupplier extends CommonObject { global $mysoc; - dol_syslog(get_class($this)."::addline askpricesupplierid=$this->id, desc=$desc, pu_ht=$pu_ht, qty=$qty, txtva=$txtva, fk_product=$fk_product, remise_except=$remise_percent, price_base_type=$price_base_type, pu_ttc=$pu_ttc, info_bits=$info_bits, type=$type"); + dol_syslog(get_class($this)."::addline supplier_proposalid=$this->id, desc=$desc, pu_ht=$pu_ht, qty=$qty, txtva=$txtva, fk_product=$fk_product, remise_except=$remise_percent, price_base_type=$price_base_type, pu_ttc=$pu_ttc, info_bits=$info_bits, type=$type"); include_once DOL_DOCUMENT_ROOT.'/core/lib/price.lib.php'; // Clean parameters @@ -369,7 +369,8 @@ class AskPriceSupplier extends CommonObject // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $localtaxes_type=getLocalTaxesFromRate($txtva,0,$this->thirdparty,$mysoc); - + $txtva = preg_replace('/\s*\(.*\)/','',$txtva); // Remove code into vatrate. + $tabprice=calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $type, '', $localtaxes_type); $total_ht = $tabprice[0]; $total_tva = $tabprice[1]; @@ -396,9 +397,9 @@ class AskPriceSupplier extends CommonObject } // Insert line - $this->line=new AskPriceSupplierLine($this->db); + $this->line=new SupplierProposalLine($this->db); - $this->line->fk_askpricesupplier=$this->id; + $this->line->fk_supplier_proposal=$this->id; $this->line->label=$label; $this->line->desc=$desc; $this->line->qty=$qty; @@ -528,7 +529,8 @@ class AskPriceSupplier extends CommonObject // la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva. $localtaxes_type=getLocalTaxesFromRate($txtva,0,$this->thirdparty,$mysoc); - + $txtva = preg_replace('/\s*\(.*\)/','',$txtva); // Remove code into vatrate. + $tabprice=calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $type,'', $localtaxes_type); $total_ht = $tabprice[0]; $total_tva = $tabprice[1]; @@ -545,10 +547,10 @@ class AskPriceSupplier extends CommonObject } // Update line - $this->line=new AskPriceSupplierLine($this->db); + $this->line=new SupplierProposalLine($this->db); // Stock previous line records - $staticline=new AskPriceSupplierLine($this->db); + $staticline=new SupplierProposalLine($this->db); $staticline->fetch($rowid); $this->line->oldline = $staticline; @@ -610,7 +612,7 @@ class AskPriceSupplier extends CommonObject $this->update_price(1); - $this->fk_askpricesupplier = $this->id; + $this->fk_supplier_proposal = $this->id; $this->rowid = $rowid; $this->db->commit(); @@ -641,7 +643,7 @@ class AskPriceSupplier extends CommonObject { if ($this->statut == 0) { - $line=new AskPriceSupplierLine($this->db); + $line=new SupplierProposalLine($this->db); // For triggers $line->fetch($lineid); @@ -706,7 +708,7 @@ class AskPriceSupplier extends CommonObject $this->db->begin(); // Insert into database - $sql = "INSERT INTO ".MAIN_DB_PREFIX."askpricesupplier ("; + $sql = "INSERT INTO ".MAIN_DB_PREFIX."supplier_proposal ("; $sql.= "fk_soc"; $sql.= ", price"; $sql.= ", remise"; @@ -755,12 +757,12 @@ class AskPriceSupplier extends CommonObject $resql=$this->db->query($sql); if ($resql) { - $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."askpricesupplier"); + $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."supplier_proposal"); if ($this->id) { $this->ref='(PROV'.$this->id.')'; - $sql = 'UPDATE '.MAIN_DB_PREFIX."askpricesupplier SET ref='".$this->ref."' WHERE rowid=".$this->id; + $sql = 'UPDATE '.MAIN_DB_PREFIX."supplier_proposal SET ref='".$this->ref."' WHERE rowid=".$this->id; dol_syslog(get_class($this)."::create", LOG_DEBUG); $resql=$this->db->query($sql); @@ -834,7 +836,7 @@ class AskPriceSupplier extends CommonObject $action='update'; // Actions on extra fields (by external module or standard code) - $hookmanager->initHooks(array('askpricesupplierdao')); + $hookmanager->initHooks(array('supplier_proposaldao')); $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)) @@ -853,7 +855,7 @@ class AskPriceSupplier extends CommonObject if (! $notrigger) { // Call trigger - $result=$this->call_trigger('ASKPRICESUPPLIER_CREATE',$user); + $result=$this->call_trigger('SUPPLIER_PROPOSAL_CREATE',$user); if ($result < 0) { $error++; } // End call triggers } @@ -893,7 +895,7 @@ class AskPriceSupplier extends CommonObject /** - * Insert into DB a askpricesupplier object completely defined by its data members (ex, results from copy). + * Insert into DB a supplier_proposal object completely defined by its data members (ex, results from copy). * * @param User $user User that create * @return int Id of the new object if ok, <0 if ko @@ -951,7 +953,7 @@ class AskPriceSupplier extends CommonObject $this->id=0; $this->statut=0; - if (empty($conf->global->ASKPRICESUPPLIER_ADDON) || ! is_readable(DOL_DOCUMENT_ROOT ."/core/modules/askpricesupplier/".$conf->global->ASKPRICESUPPLIER_ADDON.".php")) + if (empty($conf->global->SUPPLIER_PROPOSAL_ADDON) || ! is_readable(DOL_DOCUMENT_ROOT ."/core/modules/supplier_proposal/".$conf->global->SUPPLIER_PROPOSAL_ADDON.".php")) { $this->error='ErrorSetupNotComplete'; return -1; @@ -963,10 +965,10 @@ class AskPriceSupplier extends CommonObject $this->date = $now; // Set ref - require_once DOL_DOCUMENT_ROOT ."/core/modules/askpricesupplier/".$conf->global->ASKPRICESUPPLIER_ADDON.'.php'; - $obj = $conf->global->ASKPRICESUPPLIER_ADDON; - $modAskPriceSupplier = new $obj; - $this->ref = $modAskPriceSupplier->getNextValue($objsoc,$this); + require_once DOL_DOCUMENT_ROOT ."/core/modules/supplier_proposal/".$conf->global->SUPPLIER_PROPOSAL_ADDON.'.php'; + $obj = $conf->global->SUPPLIER_PROPOSAL_ADDON; + $modSupplierProposal = new $obj; + $this->ref = $modSupplierProposal->getNextValue($objsoc,$this); // Create clone $result=$this->create($user); @@ -984,7 +986,7 @@ class AskPriceSupplier extends CommonObject } // Call trigger - $result=$this->call_trigger('ASKPRICESUPPLIER_CLONE',$user); + $result=$this->call_trigger('SUPPLIER_PROPOSAL_CLONE',$user); if ($result < 0) { $error++; } // End call triggers } @@ -1029,7 +1031,7 @@ class AskPriceSupplier extends CommonObject $sql.= ", c.label as statut_label"; $sql.= ", cr.code as cond_reglement_code, cr.libelle as cond_reglement, cr.libelle_facture as cond_reglement_libelle_doc"; $sql.= ", cp.code as mode_reglement_code, cp.libelle as mode_reglement"; - $sql.= " FROM ".MAIN_DB_PREFIX."c_propalst as c, ".MAIN_DB_PREFIX."askpricesupplier as p"; + $sql.= " FROM ".MAIN_DB_PREFIX."c_propalst as c, ".MAIN_DB_PREFIX."supplier_proposal as p"; $sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'c_paiement as cp ON p.fk_mode_reglement = cp.id'; $sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'c_payment_term as cr ON p.fk_cond_reglement = cr.rowid'; $sql.= " WHERE p.fk_statut = c.id"; @@ -1107,13 +1109,13 @@ class AskPriceSupplier extends CommonObject /* * Lignes askprice liees a un produit ou non */ - $sql = "SELECT d.rowid, d.fk_askpricesupplier, d.fk_parent_line, d.label as custom_label, d.description, d.price, d.tva_tx, d.localtax1_tx, d.localtax2_tx, d.qty, d.fk_remise_except, d.remise_percent, d.subprice, d.fk_product,"; + $sql = "SELECT d.rowid, d.fk_supplier_proposal, d.fk_parent_line, d.label as custom_label, d.description, d.price, d.tva_tx, d.localtax1_tx, d.localtax2_tx, d.qty, d.fk_remise_except, d.remise_percent, d.subprice, d.fk_product,"; $sql.= " d.info_bits, d.total_ht, d.total_tva, d.total_localtax1, d.total_localtax2, d.total_ttc, d.fk_product_fournisseur_price as fk_fournprice, d.buy_price_ht as pa_ht, d.special_code, d.rang, d.product_type,"; $sql.= ' p.ref as product_ref, p.description as product_desc, p.fk_product_type, p.label as product_label,'; $sql.= ' d.ref_fourn as ref_produit_fourn'; - $sql.= " FROM ".MAIN_DB_PREFIX."askpricesupplierdet as d"; + $sql.= " FROM ".MAIN_DB_PREFIX."supplier_proposaldet as d"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product as p ON d.fk_product = p.rowid"; - $sql.= " WHERE d.fk_askpricesupplier = ".$this->id; + $sql.= " WHERE d.fk_supplier_proposal = ".$this->id; $sql.= " ORDER by d.rang"; $result = $this->db->query($sql); @@ -1126,10 +1128,10 @@ class AskPriceSupplier extends CommonObject { $objp = $this->db->fetch_object($result); - $line = new AskPriceSupplierLine($this->db); + $line = new SupplierProposalLine($this->db); $line->rowid = $objp->rowid; - $line->fk_askpricesupplier = $objp->fk_askpricesupplier; + $line->fk_supplier_proposal = $objp->fk_supplier_proposal; $line->fk_parent_line = $objp->fk_parent_line; $line->product_type = $objp->product_type; $line->label = $objp->custom_label; @@ -1211,7 +1213,7 @@ class AskPriceSupplier extends CommonObject $action='update'; // Actions on extra fields (by external module or standard code) - $hookmanager->initHooks(array('askpricesupplierdao')); + $hookmanager->initHooks(array('supplier_proposaldao')); $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)) @@ -1254,8 +1256,8 @@ class AskPriceSupplier extends CommonObject $error=0; $now=dol_now(); - if ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->askpricesupplier->creer)) - || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->askpricesupplier->validate))) + if ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->supplier_proposal->creer)) + || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->supplier_proposal->validate))) { $this->db->begin(); @@ -1274,7 +1276,7 @@ class AskPriceSupplier extends CommonObject } $this->newref = $num; - $sql = "UPDATE ".MAIN_DB_PREFIX."askpricesupplier"; + $sql = "UPDATE ".MAIN_DB_PREFIX."supplier_proposal"; $sql.= " SET ref = '".$num."',"; $sql.= " fk_statut = 1, date_valid='".$this->db->idate($now)."', fk_user_valid=".$user->id; $sql.= " WHERE rowid = ".$this->id." AND fk_statut = 0"; @@ -1291,7 +1293,7 @@ class AskPriceSupplier extends CommonObject if (! $error && ! $notrigger) { // Call trigger - $result=$this->call_trigger('ASKPRICESUPPLIER_VALIDATE',$user); + $result=$this->call_trigger('SUPPLIER_PROPOSAL_VALIDATE',$user); if ($result < 0) { $error++; } // End call triggers } @@ -1307,8 +1309,8 @@ class AskPriceSupplier extends CommonObject // to not lose the linked files $oldref = dol_sanitizeFileName($this->ref); $newref = dol_sanitizeFileName($num); - $dirsource = $conf->askpricesupplier->dir_output.'/'.$oldref; - $dirdest = $conf->askpricesupplier->dir_output.'/'.$newref; + $dirsource = $conf->supplier_proposal->dir_output.'/'.$oldref; + $dirdest = $conf->supplier_proposal->dir_output.'/'.$newref; if (file_exists($dirsource)) { @@ -1317,7 +1319,7 @@ class AskPriceSupplier extends CommonObject { dol_syslog("Rename ok"); // Rename docs starting with $oldref with $newref - $listoffiles=dol_dir_list($conf->askpricesupplier->dir_output.'/'.$newref, 'files', 1, '^'.preg_quote($oldref,'/')); + $listoffiles=dol_dir_list($conf->supplier_proposal->dir_output.'/'.$newref, 'files', 1, '^'.preg_quote($oldref,'/')); foreach($listoffiles as $fileentry) { $dirsource=$fileentry['name']; @@ -1356,9 +1358,9 @@ class AskPriceSupplier extends CommonObject */ function set_date_livraison($user, $date_livraison) { - if (! empty($user->rights->askpricesupplier->creer)) + if (! empty($user->rights->supplier_proposal->creer)) { - $sql = "UPDATE ".MAIN_DB_PREFIX."askpricesupplier "; + $sql = "UPDATE ".MAIN_DB_PREFIX."supplier_proposal "; $sql.= " SET date_livraison = ".($date_livraison!=''?"'".$this->db->idate($date_livraison)."'":'null'); $sql.= " WHERE rowid = ".$this->id; @@ -1387,11 +1389,11 @@ class AskPriceSupplier extends CommonObject { $remise=trim($remise)?trim($remise):0; - if (! empty($user->rights->askpricesupplier->creer)) + if (! empty($user->rights->supplier_proposal->creer)) { $remise = price2num($remise); - $sql = "UPDATE ".MAIN_DB_PREFIX."askpricesupplier SET remise_percent = ".$remise; + $sql = "UPDATE ".MAIN_DB_PREFIX."supplier_proposal SET remise_percent = ".$remise; $sql.= " WHERE rowid = ".$this->id." AND fk_statut = 0"; if ($this->db->query($sql) ) @@ -1420,11 +1422,11 @@ class AskPriceSupplier extends CommonObject { $remise=trim($remise)?trim($remise):0; - if (! empty($user->rights->askpricesupplier->creer)) + if (! empty($user->rights->supplier_proposal->creer)) { $remise = price2num($remise); - $sql = "UPDATE ".MAIN_DB_PREFIX."askpricesupplier "; + $sql = "UPDATE ".MAIN_DB_PREFIX."supplier_proposal "; $sql.= " SET remise_absolue = ".$remise; $sql.= " WHERE rowid = ".$this->id." AND fk_statut = 0"; @@ -1460,7 +1462,7 @@ class AskPriceSupplier extends CommonObject $this->statut = $statut; $error=0; - $sql = "UPDATE ".MAIN_DB_PREFIX."askpricesupplier"; + $sql = "UPDATE ".MAIN_DB_PREFIX."supplier_proposal"; $sql.= " SET fk_statut = ".$this->statut.","; if (! empty($note)) $sql.= " note_private = '".$this->db->escape($note)."',"; $sql.= " date_cloture=NULL, fk_user_cloture=NULL"; @@ -1478,7 +1480,7 @@ class AskPriceSupplier extends CommonObject if (! $notrigger) { // Call trigger - $result=$this->call_trigger('ASKPRICESUPPLIER_REOPEN',$user); + $result=$this->call_trigger('SUPPLIER_PROPOSAL_REOPEN',$user); if ($result < 0) { $error++; } // End call triggers } @@ -1524,20 +1526,20 @@ class AskPriceSupplier extends CommonObject $this->db->begin(); - $sql = "UPDATE ".MAIN_DB_PREFIX."askpricesupplier"; + $sql = "UPDATE ".MAIN_DB_PREFIX."supplier_proposal"; $sql.= " SET fk_statut = ".$statut.", note_private = '".$this->db->escape($note)."', date_cloture='".$this->db->idate($now)."', fk_user_cloture=".$user->id; $sql.= " WHERE rowid = ".$this->id; $resql=$this->db->query($sql); if ($resql) { - $modelpdf=$conf->global->ASKPRICESUPPLIER_ADDON_PDF_ODT_CLOSED?$conf->global->ASKPRICESUPPLIER_ADDON_PDF_ODT_CLOSED:$this->modelpdf; - $trigger_name='ASKPRICESUPPLIER_CLOSE_REFUSED'; + $modelpdf=$conf->global->SUPPLIER_PROPOSAL_ADDON_PDF_ODT_CLOSED?$conf->global->SUPPLIER_PROPOSAL_ADDON_PDF_ODT_CLOSED:$this->modelpdf; + $trigger_name='SUPPLIER_PROPOSAL_CLOSE_REFUSED'; if ($statut == 2) { - $trigger_name='ASKPRICESUPPLIER_CLOSE_SIGNED'; - $modelpdf=$conf->global->ASKPRICESUPPLIER_ADDON_PDF_ODT_TOBILL?$conf->global->ASKPRICESUPPLIER_ADDON_PDF_ODT_TOBILL:$this->modelpdf; + $trigger_name='SUPPLIER_PROPOSAL_CLOSE_SIGNED'; + $modelpdf=$conf->global->SUPPLIER_PROPOSAL_ADDON_PDF_ODT_TOBILL?$conf->global->SUPPLIER_PROPOSAL_ADDON_PDF_ODT_TOBILL:$this->modelpdf; // The connected company is classified as a client $soc=new Societe($this->db); @@ -1557,7 +1559,7 @@ class AskPriceSupplier extends CommonObject } if ($statut == 4) { - $trigger_name='ASKPRICESUPPLIER_CLASSIFY_BILLED'; + $trigger_name='SUPPLIER_PROPOSAL_CLASSIFY_BILLED'; } if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) @@ -1695,7 +1697,7 @@ class AskPriceSupplier extends CommonObject { global $conf,$langs; - $sql = "UPDATE ".MAIN_DB_PREFIX."askpricesupplier SET fk_statut = 0"; + $sql = "UPDATE ".MAIN_DB_PREFIX."supplier_proposal SET fk_statut = 0"; $sql.= " WHERE rowid = ".$this->id; if ($this->db->query($sql)) @@ -1731,10 +1733,10 @@ class AskPriceSupplier extends CommonObject $ga = array(); $sql = "SELECT s.rowid, s.nom as name, s.client,"; - $sql.= " p.rowid as askpricesupplierid, p.fk_statut, p.total_ht, p.ref, p.remise, "; + $sql.= " p.rowid as supplier_proposalid, p.fk_statut, p.total_ht, p.ref, p.remise, "; $sql.= " p.datep as dp, p.fin_validite as datelimite"; if (! $user->rights->societe->client->voir && ! $socid) $sql .= ", sc.fk_soc, sc.fk_user"; - $sql.= " FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."askpricesupplier as p, ".MAIN_DB_PREFIX."c_propalst as c"; + $sql.= " FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."supplier_proposal as p, ".MAIN_DB_PREFIX."c_propalst as c"; if (! $user->rights->societe->client->voir && ! $socid) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; $sql.= " WHERE p.entity = ".$conf->entity; $sql.= " AND p.fk_soc = s.rowid"; @@ -1762,15 +1764,15 @@ class AskPriceSupplier extends CommonObject if ($shortlist == 1) { - $ga[$obj->askpricesupplierid] = $obj->ref; + $ga[$obj->supplier_proposalid] = $obj->ref; } else if ($shortlist == 2) { - $ga[$obj->askpricesupplierid] = $obj->ref.' ('.$obj->name.')'; + $ga[$obj->supplier_proposalid] = $obj->ref.' ('.$obj->name.')'; } else { - $ga[$i]['id'] = $obj->askpricesupplierid; + $ga[$i]['id'] = $obj->supplier_proposalid; $ga[$i]['ref'] = $obj->ref; $ga[$i]['name'] = $obj->name; } @@ -1806,17 +1808,17 @@ class AskPriceSupplier extends CommonObject if (! $notrigger) { // Call trigger - $result=$this->call_trigger('ASKPRICESUPPLIER_DELETE',$user); + $result=$this->call_trigger('SUPPLIER_PROPOSAL_DELETE',$user); if ($result < 0) { $error++; } // End call triggers } if (! $error) { - $sql = "DELETE FROM ".MAIN_DB_PREFIX."askpricesupplierdet WHERE fk_askpricesupplier = ".$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."askpricesupplier WHERE rowid = ".$this->id; + $sql = "DELETE FROM ".MAIN_DB_PREFIX."supplier_proposal WHERE rowid = ".$this->id; if ($this->db->query($sql)) { // Delete linked object @@ -1827,9 +1829,9 @@ class AskPriceSupplier extends CommonObject { // We remove directory $ref = dol_sanitizeFileName($this->ref); - if ($conf->askpricesupplier->dir_output && !empty($this->ref)) + if ($conf->supplier_proposal->dir_output && !empty($this->ref)) { - $dir = $conf->askpricesupplier->dir_output . "/" . $ref ; + $dir = $conf->supplier_proposal->dir_output . "/" . $ref ; $file = $dir . "/" . $ref . ".pdf"; if (file_exists($file)) { @@ -1907,7 +1909,7 @@ class AskPriceSupplier extends CommonObject } /** - * Object AskPriceSupplier Information + * Object SupplierProposal Information * * @param int $id Proposal id * @return void @@ -1917,7 +1919,7 @@ class AskPriceSupplier extends CommonObject $sql = "SELECT c.rowid, "; $sql.= " c.datec, c.date_valid as datev, c.date_cloture as dateo,"; $sql.= " c.fk_user_author, c.fk_user_valid, c.fk_user_cloture"; - $sql.= " FROM ".MAIN_DB_PREFIX."askpricesupplier as c"; + $sql.= " FROM ".MAIN_DB_PREFIX."supplier_proposal as c"; $sql.= " WHERE c.rowid = ".$id; $result = $this->db->query($sql); @@ -1985,7 +1987,7 @@ class AskPriceSupplier extends CommonObject function LibStatut($statut,$mode=1) { global $langs; - $langs->load("askpricesupplier"); + $langs->load("supplier_proposal"); if ($statut==0) $statuttrans='statut0'; if ($statut==1) $statuttrans='statut1'; @@ -2019,7 +2021,7 @@ class AskPriceSupplier extends CommonObject $clause = " WHERE"; $sql = "SELECT p.rowid, p.ref, p.datec as datec"; - $sql.= " FROM ".MAIN_DB_PREFIX."askpricesupplier as p"; + $sql.= " FROM ".MAIN_DB_PREFIX."supplier_proposal as p"; if (!$user->rights->societe->client->voir && !$user->societe_id) { $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."societe_commerciaux as sc ON p.fk_soc = sc.fk_soc"; @@ -2034,8 +2036,8 @@ class AskPriceSupplier extends CommonObject $resql=$this->db->query($sql); if ($resql) { - if ($mode == 'opened') $delay_warning=$conf->askpricesupplier->cloture->warning_delay; - if ($mode == 'signed') $delay_warning=$conf->askpricesupplier->facturation->warning_delay; + if ($mode == 'opened') $delay_warning=$conf->supplier_proposal->cloture->warning_delay; + if ($mode == 'signed') $delay_warning=$conf->supplier_proposal->facturation->warning_delay; // This assignment in condition is not a bug. It allows walking the results. while ($obj=$this->db->fetch_object($resql)) @@ -2108,7 +2110,7 @@ class AskPriceSupplier extends CommonObject $xnbp = 0; while ($xnbp < $nbp) { - $line=new AskPriceSupplierLine($this->db); + $line=new SupplierProposalLine($this->db); $line->desc=$langs->trans("Description")." ".$xnbp; $line->qty=1; $line->subprice=100; @@ -2157,7 +2159,7 @@ class AskPriceSupplier extends CommonObject $clause = "WHERE"; $sql = "SELECT count(p.rowid) as nb"; - $sql.= " FROM ".MAIN_DB_PREFIX."askpricesupplier as p"; + $sql.= " FROM ".MAIN_DB_PREFIX."supplier_proposal as p"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON p.fk_soc = s.rowid"; if (!$user->rights->societe->client->voir && !$user->societe_id) { @@ -2189,7 +2191,7 @@ class AskPriceSupplier extends CommonObject /** * Returns the reference to the following non used Proposal used depending on the active numbering module - * defined into ASKPRICESUPPLIER_ADDON + * defined into SUPPLIER_PROPOSAL_ADDON * * @param Societe $soc Object thirdparty * @return string Reference libre pour la propale @@ -2197,20 +2199,20 @@ class AskPriceSupplier extends CommonObject function getNextNumRef($soc) { global $conf, $db, $langs; - $langs->load("askpricesupplier"); + $langs->load("supplier_proposal"); - if (! empty($conf->global->ASKPRICESUPPLIER_ADDON)) + if (! empty($conf->global->SUPPLIER_PROPOSAL_ADDON)) { $mybool=false; - $file = $conf->global->ASKPRICESUPPLIER_ADDON.".php"; - $classname = $conf->global->ASKPRICESUPPLIER_ADDON; + $file = $conf->global->SUPPLIER_PROPOSAL_ADDON.".php"; + $classname = $conf->global->SUPPLIER_PROPOSAL_ADDON; // Include file with class $dirmodels = array_merge(array('/'), (array) $conf->modules_parts['models']); foreach ($dirmodels as $reldir) { - $dir = dol_buildpath($reldir."core/modules/askpricesupplier/"); + $dir = dol_buildpath($reldir."core/modules/supplier_proposal/"); // Load file with numbering class (if found) $mybool|=@include_once $dir.$file; @@ -2260,14 +2262,14 @@ class AskPriceSupplier extends CommonObject $label=$langs->trans("ShowAskpricesupplier").': '.$this->ref; $linkclose = '" title="'.dol_escape_htmltag($label, 1).'" class="classfortooltip">'; if ($option == '') { - $link = '<a href="'.DOL_URL_ROOT.'/comm/askpricesupplier/card.php?id='.$this->id. $get_params .$linkclose; + $link = '<a href="'.DOL_URL_ROOT.'/supplier_proposal/card.php?id='.$this->id. $get_params .$linkclose; } if ($option == 'document') { - $link = '<a href="'.DOL_URL_ROOT.'/comm/askpricesupplier/document.php?id='.$this->id. $get_params .$linkclose; + $link = '<a href="'.DOL_URL_ROOT.'/supplier_proposal/document.php?id='.$this->id. $get_params .$linkclose; } $linkend='</a>'; - $picto='askpricesupplier'; + $picto='supplier_proposal'; if ($withpicto) @@ -2291,9 +2293,9 @@ class AskPriceSupplier extends CommonObject $sql.= ' pt.product_type, pt.rang, pt.fk_parent_line,'; $sql.= ' p.label as product_label, p.ref, p.fk_product_type, p.rowid as prodid,'; $sql.= ' p.description as product_desc, pt.ref_fourn as ref_produit_fourn'; - $sql.= ' FROM '.MAIN_DB_PREFIX.'askpricesupplierdet as pt'; + $sql.= ' FROM '.MAIN_DB_PREFIX.'supplier_proposaldet as pt'; $sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'product as p ON pt.fk_product=p.rowid'; - $sql.= ' WHERE pt.fk_askpricesupplier = '.$this->id; + $sql.= ' WHERE pt.fk_supplier_proposal = '.$this->id; $sql.= ' ORDER BY pt.rang ASC, pt.rowid'; dol_syslog(get_class($this).'::getLinesArray', LOG_DEBUG); @@ -2307,7 +2309,7 @@ class AskPriceSupplier extends CommonObject { $obj = $this->db->fetch_object($resql); - $this->lines[$i] = new AskPriceSupplierLine($this->db); + $this->lines[$i] = new SupplierProposalLine($this->db); $this->lines[$i]->id = $obj->rowid; // for backward compatibility $this->lines[$i]->rowid = $obj->rowid; $this->lines[$i]->label = $obj->custom_label; @@ -2365,14 +2367,14 @@ class AskPriceSupplier extends CommonObject { global $conf,$user,$langs; - $langs->load("askpricesupplier"); + $langs->load("supplier_proposal"); // Positionne le modele sur le nom du modele a utiliser if (! dol_strlen($modele)) { - if (! empty($conf->global->ASKPRICESUPPLIER_ADDON_PDF)) + if (! empty($conf->global->SUPPLIER_PROPOSAL_ADDON_PDF)) { - $modele = $conf->global->ASKPRICESUPPLIER_ADDON_PDF; + $modele = $conf->global->SUPPLIER_PROPOSAL_ADDON_PDF; } else { @@ -2380,7 +2382,7 @@ class AskPriceSupplier extends CommonObject } } - $modelpath = "core/modules/askpricesupplier/doc/"; + $modelpath = "core/modules/supplier_proposal/doc/"; return $this->commonGenerateDocument($modelpath, $modele, $outputlangs, $hidedetails, $hidedesc, $hideref); } @@ -2432,22 +2434,22 @@ class AskPriceSupplier extends CommonObject /** - * \class AskPriceSupplierLine - * \brief Class to manage askpricesupplier lines + * \class SupplierProposalLine + * \brief Class to manage supplier_proposal lines */ -class AskPriceSupplierLine extends CommonObject +class SupplierProposalLine extends CommonObject { var $db; var $error; - public $element='askpricesupplierdet'; - public $table_element='askpricesupplierdet'; + public $element='supplier_proposaldet'; + public $table_element='supplier_proposaldet'; var $oldline; - // From llx_askpricesupplierdet + // From llx_supplier_proposaldet var $rowid; - var $fk_askpricesupplier; + var $fk_supplier_proposal; var $fk_parent_line; var $desc; // Description ligne var $fk_product; // Id produit predefini @@ -2556,13 +2558,13 @@ class AskPriceSupplierLine extends CommonObject */ function fetch($rowid) { - $sql = 'SELECT pd.rowid, pd.fk_askpricesupplier, pd.fk_parent_line, pd.fk_product, pd.label as custom_label, pd.description, pd.price, pd.qty, pd.tva_tx,'; + $sql = 'SELECT pd.rowid, pd.fk_supplier_proposal, pd.fk_parent_line, pd.fk_product, pd.label as custom_label, pd.description, pd.price, pd.qty, pd.tva_tx,'; $sql.= ' pd.remise, pd.remise_percent, pd.fk_remise_except, pd.subprice,'; $sql.= ' pd.info_bits, pd.total_ht, pd.total_tva, pd.total_ttc, pd.fk_product_fournisseur_price as fk_fournprice, pd.buy_price_ht as pa_ht, pd.special_code, pd.rang,'; $sql.= ' pd.localtax1_tx, pd.localtax2_tx, pd.total_localtax1, pd.total_localtax2,'; $sql.= ' p.ref as product_ref, p.label as product_label, p.description as product_desc,'; $sql.= ' pd.product_type, pd.ref_fourn as ref_produit_fourn'; - $sql.= ' FROM '.MAIN_DB_PREFIX.'askpricesupplierdet as pd'; + $sql.= ' FROM '.MAIN_DB_PREFIX.'supplier_proposaldet as pd'; $sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'product as p ON pd.fk_product = p.rowid'; $sql.= ' WHERE pd.rowid = '.$rowid; @@ -2572,7 +2574,7 @@ class AskPriceSupplierLine extends CommonObject $objp = $this->db->fetch_object($result); $this->rowid = $objp->rowid; - $this->fk_askpricesupplier = $objp->fk_askpricesupplier; + $this->fk_supplier_proposal = $objp->fk_supplier_proposal; $this->fk_parent_line = $objp->fk_parent_line; $this->label = $objp->custom_label; $this->desc = $objp->description; @@ -2668,14 +2670,14 @@ class AskPriceSupplierLine extends CommonObject $this->db->begin(); // Insert line into database - $sql = 'INSERT INTO '.MAIN_DB_PREFIX.'askpricesupplierdet'; - $sql.= ' (fk_askpricesupplier, fk_parent_line, label, description, fk_product, product_type,'; + $sql = 'INSERT INTO '.MAIN_DB_PREFIX.'supplier_proposaldet'; + $sql.= ' (fk_supplier_proposal, fk_parent_line, label, description, fk_product, product_type,'; $sql.= ' fk_remise_except, qty, tva_tx, localtax1_tx, localtax2_tx, localtax1_type, localtax2_type,'; $sql.= ' subprice, remise_percent, '; $sql.= ' info_bits, '; $sql.= ' total_ht, total_tva, total_localtax1, total_localtax2, total_ttc, fk_product_fournisseur_price, buy_price_ht, special_code, rang,'; $sql.= ' ref_fourn)'; - $sql.= " VALUES (".$this->fk_askpricesupplier.","; + $sql.= " VALUES (".$this->fk_supplier_proposal.","; $sql.= " ".($this->fk_parent_line>0?"'".$this->fk_parent_line."'":"null").","; $sql.= " ".(! empty($this->label)?"'".$this->db->escape($this->label)."'":"null").","; $sql.= " '".$this->db->escape($this->desc)."',"; @@ -2707,7 +2709,7 @@ class AskPriceSupplierLine extends CommonObject $resql=$this->db->query($sql); if ($resql) { - $this->rowid=$this->db->last_insert_id(MAIN_DB_PREFIX.'askpricesupplierdet'); + $this->rowid=$this->db->last_insert_id(MAIN_DB_PREFIX.'supplier_proposaldet'); if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used { @@ -2722,7 +2724,7 @@ class AskPriceSupplierLine extends CommonObject if (! $notrigger) { // Call trigger - $result=$this->call_trigger('LINEASKPRICESUPPLIER_INSERT',$user); + $result=$this->call_trigger('LINESUPPLIER_PROPOSAL_INSERT',$user); if ($result < 0) { $this->db->rollback(); @@ -2754,8 +2756,8 @@ class AskPriceSupplierLine extends CommonObject $error=0; $this->db->begin(); - $sql = "DELETE FROM ".MAIN_DB_PREFIX."askpricesupplierdet WHERE rowid = ".$this->rowid; - dol_syslog("AskPriceSupplierLine::delete", LOG_DEBUG); + $sql = "DELETE FROM ".MAIN_DB_PREFIX."supplier_proposaldet WHERE rowid = ".$this->rowid; + dol_syslog("SupplierProposalLine::delete", LOG_DEBUG); if ($this->db->query($sql) ) { @@ -2772,7 +2774,7 @@ class AskPriceSupplierLine extends CommonObject } // Call trigger - $result=$this->call_trigger('LINEASKPRICESUPLLIER_DELETE',$user); + $result=$this->call_trigger('LINESUPPLIER_PROPOSAL_DELETE',$user); if ($result < 0) { $this->db->rollback(); @@ -2840,7 +2842,7 @@ class AskPriceSupplierLine extends CommonObject $this->db->begin(); // Mise a jour ligne en base - $sql = "UPDATE ".MAIN_DB_PREFIX."askpricesupplierdet SET"; + $sql = "UPDATE ".MAIN_DB_PREFIX."supplier_proposaldet SET"; $sql.= " description='".$this->db->escape($this->desc)."'"; $sql.= " , label=".(! empty($this->label)?"'".$this->db->escape($this->label)."'":"null"); $sql.= " , product_type=".$this->product_type; @@ -2888,7 +2890,7 @@ class AskPriceSupplierLine extends CommonObject if (! $notrigger) { // Call trigger - $result=$this->call_trigger('LINEASKPRICESUPPLIER_UPDATE',$user); + $result=$this->call_trigger('LINESUPPLIER_PROPOSAL_UPDATE',$user); if ($result < 0) { $this->db->rollback(); @@ -2919,13 +2921,13 @@ class AskPriceSupplierLine extends CommonObject $this->db->begin(); // Mise a jour ligne en base - $sql = "UPDATE ".MAIN_DB_PREFIX."askpricesupplierdet SET"; + $sql = "UPDATE ".MAIN_DB_PREFIX."supplier_proposaldet SET"; $sql.= " total_ht=".price2num($this->total_ht,'MT').""; $sql.= ",total_tva=".price2num($this->total_tva,'MT').""; $sql.= ",total_ttc=".price2num($this->total_ttc,'MT').""; $sql.= " WHERE rowid = ".$this->rowid; - dol_syslog("AskPriceSupplierLine::update_total", LOG_DEBUG); + dol_syslog("SupplierProposalLine::update_total", LOG_DEBUG); $resql=$this->db->query($sql); if ($resql) diff --git a/htdocs/comm/askpricesupplier/document.php b/htdocs/supplier_proposal/document.php similarity index 81% rename from htdocs/comm/askpricesupplier/document.php rename to htdocs/supplier_proposal/document.php index f2558e826dcac4e3a96f5f8db9e9e6c57b1fe500..ff1abaa2da1040060ae0302df709bd6933e855c7 100644 --- a/htdocs/comm/askpricesupplier/document.php +++ b/htdocs/supplier_proposal/document.php @@ -25,9 +25,9 @@ * \brief Management page of documents attached to a business proposal */ -require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/comm/askpricesupplier/class/askpricesupplier.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/askpricesupplier.lib.php'; +require '../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/supplier_proposal/class/supplier_proposal.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/supplier_proposal.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; @@ -47,7 +47,7 @@ if (! empty($user->societe_id)) $action=''; $socid = $user->societe_id; } -$result = restrictedArea($user, 'askpricesupplier', $id); +$result = restrictedArea($user, 'supplier_proposal', $id); // Get parameters $sortfield = GETPOST("sortfield",'alpha'); @@ -60,12 +60,12 @@ $pagenext = $page + 1; if (! $sortorder) $sortorder="ASC"; if (! $sortfield) $sortfield="name"; -$object = new AskPriceSupplier($db); +$object = new SupplierProposal($db); $object->fetch($id,$ref); if ($object->id > 0) { $object->fetch_thirdparty(); - $upload_dir = $conf->askpricesupplier->dir_output.'/'.dol_sanitizeFileName($object->ref); + $upload_dir = $conf->supplier_proposal->dir_output.'/'.dol_sanitizeFileName($object->ref); include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_pre_headers.tpl.php'; } @@ -80,10 +80,10 @@ $form = new Form($db); if ($object->id > 0) { - $upload_dir = $conf->askpricesupplier->dir_output.'/'.dol_sanitizeFileName($object->ref); + $upload_dir = $conf->supplier_proposal->dir_output.'/'.dol_sanitizeFileName($object->ref); - $head = askpricesupplier_prepare_head($object); - dol_fiche_head($head, 'document', $langs->trans('CommRequest'), 0, 'askpricesupplier'); + $head = supplier_proposal_prepare_head($object); + dol_fiche_head($head, 'document', $langs->trans('CommRequest'), 0, 'supplier_proposal'); // Construit liste des fichiers $filearray=dol_dir_list($upload_dir,"files",0,'','(\.meta|_preview\.png)$',$sortfield,(strtolower($sortorder)=='desc'?SORT_DESC:SORT_ASC),1); @@ -95,7 +95,7 @@ if ($object->id > 0) print '<table class="border"width="100%">'; - $linkback='<a href="'.DOL_URL_ROOT.'/comm/askpricesupplier/list.php'.(! empty($socid)?'?socid='.$socid:'').'">'.$langs->trans("BackToList").'</a>'; + $linkback='<a href="'.DOL_URL_ROOT.'/supplier_proposal/list.php'.(! empty($socid)?'?socid='.$socid:'').'">'.$langs->trans("BackToList").'</a>'; // Ref print '<tr><td width="25%">'.$langs->trans('Ref').'</td><td colspan="3">'; @@ -113,8 +113,8 @@ if ($object->id > 0) print '</div>'; - $modulepart = 'askpricesupplier'; - $permission = $user->rights->askpricesupplier->creer; + $modulepart = 'supplier_proposal'; + $permission = $user->rights->supplier_proposal->creer; $param = '&id=' . $object->id; include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php'; } diff --git a/htdocs/comm/askpricesupplier/index.php b/htdocs/supplier_proposal/index.php similarity index 79% rename from htdocs/comm/askpricesupplier/index.php rename to htdocs/supplier_proposal/index.php index 6936defda494f2da3cf331ab33896c488377b745..4c363ba32ac70ba5968d3150e38a3c62c40f5aa5 100644 --- a/htdocs/comm/askpricesupplier/index.php +++ b/htdocs/supplier_proposal/index.php @@ -23,11 +23,11 @@ * \brief Home page of proposal area */ -require '../../main.inc.php'; +require '../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; -require_once DOL_DOCUMENT_ROOT .'/comm/askpricesupplier/class/askpricesupplier.class.php'; +require_once DOL_DOCUMENT_ROOT .'/supplier_proposal/class/supplier_proposal.class.php'; -$langs->load("askpricesupplier"); +$langs->load("supplier_proposal"); $langs->load("companies"); // Security check @@ -37,22 +37,22 @@ if (isset($user->societe_id) && $user->societe_id > 0) $action = ''; $socid = $user->societe_id; } -$result = restrictedArea($user, 'askpricesupplier'); +$result = restrictedArea($user, 'supplier_proposal'); /* * View */ $now=dol_now(); -$askpricesupplierstatic=new AskPriceSupplier($db); +$supplier_proposalstatic=new SupplierProposal($db); $companystatic=new Societe($db); $form = new Form($db); $formfile = new FormFile($db); $help_url="EN:Module_Ask_Price_Supplier|FR:Module_Demande_de_prix_fournisseur"; -llxHeader("",$langs->trans("AskPriceSupplierArea"),$help_url); +llxHeader("",$langs->trans("SupplierProposalArea"),$help_url); -print load_fiche_titre($langs->trans("AskPriceSupplierArea")); +print load_fiche_titre($langs->trans("SupplierProposalArea")); print '<div class="fichecenter"><div class="fichethirdleft">'; @@ -61,7 +61,7 @@ print '<div class="fichecenter"><div class="fichethirdleft">'; * Search form */ $var=false; -print '<form method="post" action="'.DOL_URL_ROOT.'/comm/askpricesupplier/list.php">'; +print '<form method="post" action="'.DOL_URL_ROOT.'/supplier_proposal/list.php">'; print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">'; print '<table class="noborder nohover" width="100%">'; print '<tr class="liste_titre"><td colspan="3">'.$langs->trans("SearchRequest").'</td></tr>'; @@ -78,7 +78,7 @@ print "</table></form><br>\n"; $sql = "SELECT count(p.rowid), p.fk_statut"; $sql.= " FROM ".MAIN_DB_PREFIX."societe as s"; -$sql.= ", ".MAIN_DB_PREFIX."askpricesupplier as p"; +$sql.= ", ".MAIN_DB_PREFIX."supplier_proposal as p"; if (!$user->rights->societe->client->voir && !$socid) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; $sql.= " WHERE p.fk_soc = s.rowid"; $sql.= " AND p.entity = ".$conf->entity; @@ -119,12 +119,12 @@ if ($resql) $listofstatus=array(0,1,2,3,4); foreach ($listofstatus as $status) { - $dataseries[]=array('label'=>$askpricesupplierstatic->LibStatut($status,1),'data'=>(isset($vals[$status])?(int) $vals[$status]:0)); + $dataseries[]=array('label'=>$supplier_proposalstatic->LibStatut($status,1),'data'=>(isset($vals[$status])?(int) $vals[$status]:0)); if (! $conf->use_javascript_ajax) { $var=!$var; print "<tr ".$bc[$var].">"; - print '<td>'.$askpricesupplierstatic->LibStatut($status,0).'</td>'; + print '<td>'.$supplier_proposalstatic->LibStatut($status,0).'</td>'; print '<td align="right"><a href="list.php?statut='.$status.'">'.(isset($vals[$status])?$vals[$status]:0).'</a></td>'; print "</tr>\n"; } @@ -149,10 +149,10 @@ else /* * Draft askprice */ -if (! empty($conf->askpricesupplier->enabled)) +if (! empty($conf->supplier_proposal->enabled)) { $sql = "SELECT c.rowid, c.ref, s.nom as socname, s.rowid as socid, s.canvas, s.client"; - $sql.= " FROM ".MAIN_DB_PREFIX."askpricesupplier as c"; + $sql.= " FROM ".MAIN_DB_PREFIX."supplier_proposal as c"; $sql.= ", ".MAIN_DB_PREFIX."societe as s"; if (!$user->rights->societe->client->voir && !$socid) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; $sql.= " WHERE c.fk_soc = s.rowid"; @@ -167,7 +167,7 @@ if (! empty($conf->askpricesupplier->enabled)) print '<table class="noborder" width="100%">'; print '<tr class="liste_titre">'; print '<td colspan="2">'.$langs->trans("DraftRequests").'</td></tr>'; - $langs->load("askpricesupplier"); + $langs->load("supplier_proposal"); $num = $db->num_rows($resql); if ($num) { @@ -179,9 +179,9 @@ if (! empty($conf->askpricesupplier->enabled)) $obj = $db->fetch_object($resql); print "<tr ".$bc[$var].">"; - $askpricesupplierstatic->id=$obj->rowid; - $askpricesupplierstatic->ref=$obj->ref; - print '<td class="nowrap">'.$askpricesupplierstatic->getNomUrl(1).'</td>'; + $supplier_proposalstatic->id=$obj->rowid; + $supplier_proposalstatic->ref=$obj->ref; + print '<td class="nowrap">'.$supplier_proposalstatic->getNomUrl(1).'</td>'; $companystatic->id=$obj->socid; $companystatic->name=$obj->socname; @@ -208,7 +208,7 @@ $max=5; $sql = "SELECT c.rowid, c.ref, c.fk_statut, s.nom as socname, s.rowid as socid, s.canvas, s.client,"; $sql.= " date_cloture as datec"; -$sql.= " FROM ".MAIN_DB_PREFIX."askpricesupplier as c"; +$sql.= " FROM ".MAIN_DB_PREFIX."supplier_proposal as c"; $sql.= ", ".MAIN_DB_PREFIX."societe as s"; if (!$user->rights->societe->client->voir && !$socid) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; $sql.= " WHERE c.fk_soc = s.rowid"; @@ -239,12 +239,12 @@ if ($resql) print "<tr ".$bc[$var].">"; print '<td width="20%" class="nowrap">'; - $askpricesupplierstatic->id=$obj->rowid; - $askpricesupplierstatic->ref=$obj->ref; + $supplier_proposalstatic->id=$obj->rowid; + $supplier_proposalstatic->ref=$obj->ref; print '<table class="nobordernopadding"><tr class="nocellnopadd">'; print '<td width="96" class="nobordernopadding nowrap">'; - print $askpricesupplierstatic->getNomUrl(1); + print $supplier_proposalstatic->getNomUrl(1); print '</td>'; print '<td width="16" class="nobordernopadding nowrap">'; @@ -253,9 +253,9 @@ if ($resql) print '<td width="16" align="right" class="nobordernopadding">'; $filename=dol_sanitizeFileName($obj->ref); - $filedir=$conf->askpricesupplier->dir_output . '/' . dol_sanitizeFileName($obj->ref); + $filedir=$conf->supplier_proposal->dir_output . '/' . dol_sanitizeFileName($obj->ref); $urlsource=$_SERVER['PHP_SELF'].'?id='.$obj->rowid; - print $formfile->getDocumentsLink($askpricesupplierstatic->element, $filename, $filedir); + print $formfile->getDocumentsLink($supplier_proposalstatic->element, $filename, $filedir); print '</td></tr></table>'; print '</td>'; @@ -267,7 +267,7 @@ if ($resql) print '<td>'.$companystatic->getNomUrl(1,'customer').'</td>'; print '<td>'.dol_print_date($db->jdate($obj->datec),'day').'</td>'; - print '<td align="right">'.$askpricesupplierstatic->LibStatut($obj->fk_statut,5).'</td>'; + print '<td align="right">'.$supplier_proposalstatic->LibStatut($obj->fk_statut,5).'</td>'; print '</tr>'; $i++; } @@ -280,15 +280,15 @@ else dol_print_error($db); /* * Opened askprice */ -if (! empty($conf->askpricesupplier->enabled) && $user->rights->askpricesupplier->lire) +if (! empty($conf->supplier_proposal->enabled) && $user->rights->supplier_proposal->lire) { - $langs->load("askpricesupplier"); + $langs->load("supplier_proposal"); $now=dol_now(); - $sql = "SELECT s.nom as socname, s.rowid as socid, s.canvas, s.client, p.rowid as askpricesupplierid, p.total as total_ttc, p.total_ht, p.ref, p.fk_statut, p.datec as dp"; + $sql = "SELECT s.nom as socname, s.rowid as socid, s.canvas, s.client, p.rowid as supplier_proposalid, p.total as total_ttc, p.total_ht, p.ref, p.fk_statut, p.datec as dp"; $sql.= " FROM ".MAIN_DB_PREFIX."societe as s"; - $sql.= ", ".MAIN_DB_PREFIX."askpricesupplier as p"; + $sql.= ", ".MAIN_DB_PREFIX."supplier_proposal as p"; if (!$user->rights->societe->client->voir && !$socid) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; $sql.= " WHERE p.fk_soc = s.rowid"; $sql.= " AND p.entity = ".$conf->entity; @@ -308,7 +308,7 @@ if (! empty($conf->askpricesupplier->enabled) && $user->rights->askpricesupplier $var=true; print '<table class="noborder" width="100%">'; - print '<tr class="liste_titre"><td colspan="5">'.$langs->trans("RequestsOpened").' <a href="'.DOL_URL_ROOT.'/comm/askpricesupplier/list.php?viewstatut=1"><span class="badge">'.$num.'</span></a></td></tr>'; + print '<tr class="liste_titre"><td colspan="5">'.$langs->trans("RequestsOpened").' <a href="'.DOL_URL_ROOT.'/supplier_proposal/list.php?viewstatut=1"><span class="badge">'.$num.'</span></a></td></tr>'; $nbofloop=min($num, (empty($conf->global->MAIN_MAXLIST_OVERLOAD)?500:$conf->global->MAIN_MAXLIST_OVERLOAD)); while ($i < $nbofloop) @@ -320,21 +320,21 @@ if (! empty($conf->askpricesupplier->enabled) && $user->rights->askpricesupplier // Ref print '<td class="nowrap" width="140">'; - $askpricesupplierstatic->id=$obj->askpricesupplierid; - $askpricesupplierstatic->ref=$obj->ref; + $supplier_proposalstatic->id=$obj->supplier_proposalid; + $supplier_proposalstatic->ref=$obj->ref; print '<table class="nobordernopadding"><tr class="nocellnopadd">'; print '<td class="nobordernopadding nowrap">'; - print $askpricesupplierstatic->getNomUrl(1); + print $supplier_proposalstatic->getNomUrl(1); print '</td>'; print '<td width="18" class="nobordernopadding nowrap">'; - if ($db->jdate($obj->dfv) < ($now - $conf->askpricesupplier->cloture->warning_delay)) print img_warning($langs->trans("Late")); + if ($db->jdate($obj->dfv) < ($now - $conf->supplier_proposal->cloture->warning_delay)) print img_warning($langs->trans("Late")); print '</td>'; print '<td width="16" align="center" class="nobordernopadding">'; $filename=dol_sanitizeFileName($obj->ref); - $filedir=$conf->askpricesupplier->dir_output . '/' . dol_sanitizeFileName($obj->ref); - $urlsource=$_SERVER['PHP_SELF'].'?id='.$obj->askpricesupplierid; - print $formfile->getDocumentsLink($askpricesupplierstatic->element, $filename, $filedir); + $filedir=$conf->supplier_proposal->dir_output . '/' . dol_sanitizeFileName($obj->ref); + $urlsource=$_SERVER['PHP_SELF'].'?id='.$obj->supplier_proposalid; + print $formfile->getDocumentsLink($supplier_proposalstatic->element, $filename, $filedir); print '</td></tr></table>'; print "</td>"; @@ -348,7 +348,7 @@ if (! empty($conf->askpricesupplier->enabled) && $user->rights->askpricesupplier print '<td align="right">'; print dol_print_date($db->jdate($obj->dp),'day').'</td>'."\n"; print '<td align="right">'.price($obj->total_ttc).'</td>'; - print '<td align="center" width="14">'.$askpricesupplierstatic->LibStatut($obj->fk_statut,3).'</td>'."\n"; + print '<td align="center" width="14">'.$supplier_proposalstatic->LibStatut($obj->fk_statut,3).'</td>'."\n"; print '</tr>'."\n"; $i++; $total += $obj->total_ttc; diff --git a/htdocs/comm/askpricesupplier/info.php b/htdocs/supplier_proposal/info.php similarity index 81% rename from htdocs/comm/askpricesupplier/info.php rename to htdocs/supplier_proposal/info.php index 3b8f95d45fa6b0c8278c2f8b17c03bbeac91b6ac..9c3f8967bd5f4b932d298114e16c0b92e328fc60 100644 --- a/htdocs/comm/askpricesupplier/info.php +++ b/htdocs/supplier_proposal/info.php @@ -23,12 +23,12 @@ * \brief Page d'affichage des infos d'une proposition commerciale */ -require '../../main.inc.php'; +require '../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/comm/askpricesupplier/class/askpricesupplier.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/askpricesupplier.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/supplier_proposal/class/supplier_proposal.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/supplier_proposal.lib.php'; -$langs->load('askpricesupplier'); +$langs->load('supplier_proposal'); $langs->load('compta'); $id=GETPOST('id','int'); @@ -36,7 +36,7 @@ $socid=GETPOST('socid','int'); // Security check if (! empty($user->societe_id)) $socid=$user->societe_id; -$result = restrictedArea($user, 'askpricesupplier', $id); +$result = restrictedArea($user, 'supplier_proposal', $id); /* @@ -45,12 +45,12 @@ $result = restrictedArea($user, 'askpricesupplier', $id); llxHeader('',$langs->trans('CommRequest'),'EN:Ask_Price_Supplier|FR:Demande_de_prix_fournisseur'); -$object = new AskPriceSupplier($db); +$object = new SupplierProposal($db); $object->fetch($id); $object->fetch_thirdparty(); -$head = askpricesupplier_prepare_head($object); -dol_fiche_head($head, 'info', $langs->trans('CommRequest'), 0, 'askpricesupplier'); +$head = supplier_proposal_prepare_head($object); +dol_fiche_head($head, 'info', $langs->trans('CommRequest'), 0, 'supplier_proposal'); $object->info($object->id); diff --git a/htdocs/comm/askpricesupplier/list.php b/htdocs/supplier_proposal/list.php similarity index 90% rename from htdocs/comm/askpricesupplier/list.php rename to htdocs/supplier_proposal/list.php index ae7ed58b29c49760a76bd406d317c89a0f9cb2e9..cfea07b1e48344134325a53e8d668b425a5bf008 100644 --- a/htdocs/comm/askpricesupplier/list.php +++ b/htdocs/supplier_proposal/list.php @@ -30,17 +30,17 @@ * \brief Page of commercial proposals card and list */ -require '../../main.inc.php'; +require '../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaskpricesupplier.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formsupplier_proposal.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/comm/askpricesupplier/class/askpricesupplier.class.php'; +require_once DOL_DOCUMENT_ROOT.'/supplier_proposal/class/supplier_proposal.class.php'; if (! empty($conf->projet->enabled)) require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; $langs->load('companies'); -$langs->load('askpricesupplier'); +$langs->load('supplier_proposal'); $langs->load('compta'); $langs->load('bills'); $langs->load('orders'); @@ -55,7 +55,7 @@ $search_societe=GETPOST('search_societe','alpha'); $search_montant_ht=GETPOST('search_montant_ht','alpha'); $search_author=GETPOST('search_author','alpha'); $viewstatut=$db->escape(GETPOST('viewstatut')); -$object_statut=$db->escape(GETPOST('askpricesupplier_statut')); +$object_statut=$db->escape(GETPOST('supplier_proposal_statut')); $sall=GETPOST("sall"); $mesg=(GETPOST("msg") ? GETPOST("msg") : GETPOST("mesg")); @@ -66,7 +66,7 @@ $month=GETPOST("month"); $NBLINES=4; // Security check -$module='askpricesupplier'; +$module='supplier_proposal'; $dbtable=''; $objectid=''; if (! empty($user->societe_id)) $socid=$user->societe_id; @@ -98,7 +98,7 @@ $viewstatut=$object_statut; // Initialize technical object to manage hooks of thirdparties. Note that conf->hooks_modules contains array array -$hookmanager->initHooks(array('askpricesupplierlist')); +$hookmanager->initHooks(array('supplier_proposallist')); @@ -122,7 +122,7 @@ llxHeader('',$langs->trans('CommRequest'),'EN:Ask_Price_Supplier|FR:Demande_de_p $form = new Form($db); $formother = new FormOther($db); $formfile = new FormFile($db); -$formaskpricesupplier = new FormAskPriceSupplier($db); +$formsupplier_proposal = new FormSupplierProposal($db); $companystatic=new Societe($db); $now=dol_now(); @@ -141,11 +141,11 @@ $limit = $conf->liste_limit; $sql = 'SELECT s.rowid, s.nom as name, s.town, s.client, s.code_client,'; -$sql.= ' p.rowid as askpricesupplierid, p.note_private, p.total_ht, p.ref, p.fk_statut, p.fk_user_author, p.date_livraison as dp,'; +$sql.= ' p.rowid as supplier_proposalid, p.note_private, p.total_ht, p.ref, p.fk_statut, p.fk_user_author, p.date_livraison as dp,'; if (! $user->rights->societe->client->voir && ! $socid) $sql .= " sc.fk_soc, sc.fk_user,"; $sql.= ' u.login'; -$sql.= ' FROM '.MAIN_DB_PREFIX.'societe as s, '.MAIN_DB_PREFIX.'askpricesupplier as p'; -if ($sall) $sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'askpricesupplierdet as pd ON p.rowid=pd.fk_askpricesupplier'; +$sql.= ' FROM '.MAIN_DB_PREFIX.'societe as s, '.MAIN_DB_PREFIX.'supplier_proposal as p'; +if ($sall) $sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'supplier_proposaldet as pd ON p.rowid=pd.fk_supplier_proposal'; $sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'user as u ON p.fk_user_author = u.rowid'; // We'll need this table joined to the select in order to filter by sale if ($search_sale > 0 || (! $user->rights->societe->client->voir && ! $socid)) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; @@ -198,7 +198,7 @@ else if ($year > 0) if ($search_sale > 0) $sql.= " AND s.rowid = sc.fk_soc AND sc.fk_user = " .$search_sale; if ($search_user > 0) { - $sql.= " AND c.fk_c_type_contact = tc.rowid AND tc.element='askpricesupplier' AND tc.source='internal' AND c.element_id = p.rowid AND c.fk_socpeople = ".$search_user; + $sql.= " AND c.fk_c_type_contact = tc.rowid AND tc.element='supplier_proposal' AND tc.source='internal' AND c.element_id = p.rowid AND c.fk_socpeople = ".$search_user; } @@ -217,7 +217,7 @@ $result=$db->query($sql); if ($result) { - $objectstatic=new AskPriceSupplier($db); + $objectstatic=new SupplierProposal($db); $userstatic=new User($db); $num = $db->num_rows($result); @@ -236,7 +236,7 @@ if ($result) if ($search_sale > 0) $param.='&search_sale='.$search_sale; if ($search_montant_ht) $param.='&search_montant_ht='.$search_montant_ht; if ($search_author) $param.='&search_author='.$search_author; - print_barre_liste($langs->trans('ListOfAskPriceSupplier').' '.($socid?'- '.$soc->name:''), $page, $_SERVER["PHP_SELF"],$param,$sortfield,$sortorder,'',$num,$nbtotalofrecords); + print_barre_liste($langs->trans('ListOfSupplierProposal').' '.($socid?'- '.$soc->name:''), $page, $_SERVER["PHP_SELF"],$param,$sortfield,$sortorder,'',$num,$nbtotalofrecords); // Lignes des champs de filtre print '<form method="GET" action="'.$_SERVER["PHP_SELF"].'">'; @@ -277,7 +277,7 @@ if ($result) print '<tr class="liste_titre">'; print_liste_field_titre($langs->trans('Ref'),$_SERVER["PHP_SELF"],'p.ref','',$param,'',$sortfield,$sortorder); print_liste_field_titre($langs->trans('Company'),$_SERVER["PHP_SELF"],'s.nom','',$param,'',$sortfield,$sortorder); - print_liste_field_titre($langs->trans('AskPriceSupplierDate'),$_SERVER["PHP_SELF"],'p.date_livraison','',$param, 'align="center"',$sortfield,$sortorder); + print_liste_field_titre($langs->trans('SupplierProposalDate'),$_SERVER["PHP_SELF"],'p.date_livraison','',$param, 'align="center"',$sortfield,$sortorder); print_liste_field_titre($langs->trans('AmountHT'),$_SERVER["PHP_SELF"],'p.total_ht','',$param, 'align="right"',$sortfield,$sortorder); print_liste_field_titre($langs->trans('Author'),$_SERVER["PHP_SELF"],'u.login','',$param,'align="center"',$sortfield,$sortorder); print_liste_field_titre($langs->trans('Status'),$_SERVER["PHP_SELF"],'p.fk_statut','',$param,'align="right"',$sortfield,$sortorder); @@ -310,7 +310,7 @@ if ($result) print '<input class="flat" size="10" type="text" name="search_author" value="'.$search_author.'">'; print '</td>'; print '<td class="liste_titre" align="right">'; - $formaskpricesupplier->selectAskPriceSupplierStatus($viewstatut,1); + $formsupplier_proposal->selectSupplierProposalStatus($viewstatut,1); print '</td>'; print '<td class="liste_titre" align="right">'; @@ -332,7 +332,7 @@ if ($result) print '<tr '.$bc[$var].'>'; print '<td class="nowrap">'; - $objectstatic->id=$objp->askpricesupplierid; + $objectstatic->id=$objp->supplier_proposalid; $objectstatic->ref=$objp->ref; print '<table class="nobordernopadding"><tr class="nocellnopadd">'; @@ -341,11 +341,11 @@ if ($result) print '</td>'; print '<td style="min-width: 20px" class="nobordernopadding nowrap">'; - if ($objp->fk_statut == 1 && $db->jdate($objp->dfv) < ($now - $conf->askpricesupplier->cloture->warning_delay)) print img_warning($langs->trans("Late")); + if ($objp->fk_statut == 1 && $db->jdate($objp->dfv) < ($now - $conf->supplier_proposal->cloture->warning_delay)) print img_warning($langs->trans("Late")); if (! empty($objp->note_private)) { print ' <span class="note">'; - print '<a href="'.DOL_URL_ROOT.'/comm/askpricesupplier/note.php?id='.$objp->askpricesupplierid.'">'.img_picto($langs->trans("ViewPrivateNote"),'object_generic').'</a>'; + print '<a href="'.DOL_URL_ROOT.'/supplier_proposal/note.php?id='.$objp->supplier_proposalid.'">'.img_picto($langs->trans("ViewPrivateNote"),'object_generic').'</a>'; print '</span>'; } print '</td>'; @@ -353,8 +353,8 @@ if ($result) // Ref print '<td width="16" align="right" class="nobordernopadding hideonsmartphone">'; $filename=dol_sanitizeFileName($objp->ref); - $filedir=$conf->askpricesupplier->dir_output . '/' . dol_sanitizeFileName($objp->ref); - $urlsource=$_SERVER['PHP_SELF'].'?id='.$objp->askpricesupplierid; + $filedir=$conf->supplier_proposal->dir_output . '/' . dol_sanitizeFileName($objp->ref); + $urlsource=$_SERVER['PHP_SELF'].'?id='.$objp->supplier_proposalid; print $formfile->getDocumentsLink($objectstatic->element, $filename, $filedir); print '</td></tr></table>'; diff --git a/htdocs/comm/askpricesupplier/note.php b/htdocs/supplier_proposal/note.php similarity index 80% rename from htdocs/comm/askpricesupplier/note.php rename to htdocs/supplier_proposal/note.php index 0ce89fe5e8b92cd380f1a313760295d7180f9d83..4e9f3affa501f84bfc20fc7ef98e57bb2ebebab4 100644 --- a/htdocs/comm/askpricesupplier/note.php +++ b/htdocs/supplier_proposal/note.php @@ -25,11 +25,11 @@ * \brief Fiche d'information sur une proposition commerciale */ -require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/comm/askpricesupplier/class/askpricesupplier.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/askpricesupplier.lib.php'; +require '../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/supplier_proposal/class/supplier_proposal.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/supplier_proposal.lib.php'; -$langs->load('askpricesupplier'); +$langs->load('supplier_proposal'); $langs->load('compta'); $langs->load('bills'); @@ -39,9 +39,9 @@ $action=GETPOST('action','alpha'); // Security check if ($user->societe_id) $socid=$user->societe_id; -$result = restrictedArea($user, 'askpricesupplier', $id, 'askpricesupplier'); +$result = restrictedArea($user, 'supplier_proposal', $id, 'supplier_proposal'); -$object = new AskPriceSupplier($db); +$object = new SupplierProposal($db); @@ -49,7 +49,7 @@ $object = new AskPriceSupplier($db); /* Actions */ /******************************************************************************/ -$permissionnote=$user->rights->askpricesupplier->creer; // Used by the include of actions_setnotes.inc.php +$permissionnote=$user->rights->supplier_proposal->creer; // Used by the include of actions_setnotes.inc.php include DOL_DOCUMENT_ROOT.'/core/actions_setnotes.inc.php'; // Must be include, not includ_once @@ -74,12 +74,12 @@ if ($id > 0 || ! empty($ref)) $societe = new Societe($db); if ( $societe->fetch($object->socid) ) { - $head = askpricesupplier_prepare_head($object); - dol_fiche_head($head, 'note', $langs->trans('CommRequest'), 0, 'askpricesupplier'); + $head = supplier_proposal_prepare_head($object); + dol_fiche_head($head, 'note', $langs->trans('CommRequest'), 0, 'supplier_proposal'); print '<table class="border" width="100%">'; - $linkback = '<a href="'.DOL_URL_ROOT.'/comm/askpricesupplier/list.php'.(! empty($socid)?'?socid='.$socid:'').'">'.$langs->trans('BackToList').'</a>'; + $linkback = '<a href="'.DOL_URL_ROOT.'/supplier_proposal/list.php'.(! empty($socid)?'?socid='.$socid:'').'">'.$langs->trans('BackToList').'</a>'; // Ref print '<tr><td width="25%">'.$langs->trans('Ref').'</td><td colspan="3">'; @@ -92,7 +92,7 @@ if ($id > 0 || ! empty($ref)) print "<tr><td>".$langs->trans("Supplier")."</td>"; print '<td colspan="3">'.$object->client->getNomUrl(1).'</td></tr>'; - print '<tr><td>'.$langs->trans('AskPriceSupplierDate').'</td><td colspan="3">'; + print '<tr><td>'.$langs->trans('SupplierProposalDate').'</td><td colspan="3">'; print dol_print_date($object->date_livraison,'daytext'); print '</td>'; print '</tr>'; diff --git a/htdocs/install/doctemplates/askpricesupplier/index.html b/htdocs/supplier_proposal/tpl/index.html similarity index 100% rename from htdocs/install/doctemplates/askpricesupplier/index.html rename to htdocs/supplier_proposal/tpl/index.html diff --git a/htdocs/comm/askpricesupplier/tpl/linkedobjectblock.tpl.php b/htdocs/supplier_proposal/tpl/linkedobjectblock.tpl.php similarity index 85% rename from htdocs/comm/askpricesupplier/tpl/linkedobjectblock.tpl.php rename to htdocs/supplier_proposal/tpl/linkedobjectblock.tpl.php index bf16d01fa1e5642af22a179b0a0780f2f2a1f4e6..76cf756128af975c1736057a39f174a7367a547d 100644 --- a/htdocs/comm/askpricesupplier/tpl/linkedobjectblock.tpl.php +++ b/htdocs/supplier_proposal/tpl/linkedobjectblock.tpl.php @@ -29,7 +29,7 @@ $langs = $GLOBALS['langs']; $linkedObjectBlock = $GLOBALS['linkedObjectBlock']; echo '<br>'; -print load_fiche_titre($langs->trans('RelatedAskPriceSupplier')); +print load_fiche_titre($langs->trans('RelatedSupplierProposal')); ?> <table class="noborder allwidth"> <tr class="liste_titre"> @@ -48,11 +48,11 @@ foreach($linkedObjectBlock as $key => $objectlink) $var=!$var; ?> <tr <?php echo $bc[$var]; ?> ><td> - <a href="<?php echo DOL_URL_ROOT.'/comm/askpricesupplier/card.php?id='.$objectlink->id ?>"><?php echo img_object($langs->trans("ShowAskPriceSupplier"),"askpricesupplier").' '.$objectlink->ref; ?></a></td> + <a href="<?php echo DOL_URL_ROOT.'/supplier_proposal/card.php?id='.$objectlink->id ?>"><?php echo img_object($langs->trans("ShowSupplierProposal"),"supplier_proposal").' '.$objectlink->ref; ?></a></td> <td></td> <td align="center"><?php echo dol_print_date($objectlink->datec,'day'); ?></td> <td align="right"><?php - if ($user->rights->askpricesupplier->lire) { + if ($user->rights->supplier_proposal->lire) { $total = $total + $objectlink->total_ht; echo price($objectlink->total_ht); } ?></td> @@ -66,7 +66,7 @@ foreach($linkedObjectBlock as $key => $objectlink) <tr class="liste_total"> <td align="left" colspan="3"><?php echo $langs->trans('TotalHT'); ?></td> <td align="right"><?php - if ($user->rights->askpricesupplier->lire) { + if ($user->rights->supplier_proposal->lire) { echo price($total); } ?></td> <td></td> diff --git a/htdocs/theme/eldy/img/helpdoc.png b/htdocs/theme/eldy/img/helpdoc.png index 8cd950e7be1aabd9b452c150ddd128e6223f72e1..435fbc77985db9e7d9c970dbdcc40d469c3551a7 100644 Binary files a/htdocs/theme/eldy/img/helpdoc.png and b/htdocs/theme/eldy/img/helpdoc.png differ diff --git a/htdocs/theme/eldy/img/object_askpricesupplier.png b/htdocs/theme/eldy/img/object_supplier_proposal.png similarity index 100% rename from htdocs/theme/eldy/img/object_askpricesupplier.png rename to htdocs/theme/eldy/img/object_supplier_proposal.png diff --git a/htdocs/theme/eldy/img/statut1.png b/htdocs/theme/eldy/img/statut1.png index 558439d282e451c5f0750dfb474e8c83d55fb6ee..88f3b3c53a0f778be1d756b37a020cbdb4eeb494 100644 Binary files a/htdocs/theme/eldy/img/statut1.png and b/htdocs/theme/eldy/img/statut1.png differ diff --git a/htdocs/theme/eldy/img/statut2.png b/htdocs/theme/eldy/img/statut2.png new file mode 100644 index 0000000000000000000000000000000000000000..ad5a7084474ac59240cd827b61e0dc4f03a521cc Binary files /dev/null and b/htdocs/theme/eldy/img/statut2.png differ diff --git a/htdocs/theme/eldy/img/statut4.png b/htdocs/theme/eldy/img/statut4.png index 6ec1ba559613fc19c80ae08681f3b47459cfd0bd..6dc05edeba79c3f792ea8554dae3608368360be9 100644 Binary files a/htdocs/theme/eldy/img/statut4.png and b/htdocs/theme/eldy/img/statut4.png differ diff --git a/htdocs/theme/eldy/img/statut6.png b/htdocs/theme/eldy/img/statut6.png index b964afff603903135c2e897900f1dddf3ffaf779..c76ab86fe601499d63e768104752c7ed1e4319ca 100644 Binary files a/htdocs/theme/eldy/img/statut6.png and b/htdocs/theme/eldy/img/statut6.png differ diff --git a/htdocs/theme/eldy/img/statut9.png b/htdocs/theme/eldy/img/statut9.png index 94b6dabf265571f7f830cc164413b84506526b67..9aa2ae34620a5b6e3760f7cbdfe468ab2f99f630 100644 Binary files a/htdocs/theme/eldy/img/statut9.png and b/htdocs/theme/eldy/img/statut9.png differ diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index 59461c1db8779593d226050f12aa8945fa453789..0ebc5c547993b339e11be57767f008fc28e8faa9 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -86,42 +86,38 @@ $colorbacktabcard1='255,255,255'; // card $colorbacktabactive='234,234,234'; $colorbacklineimpair1='255,255,255'; // line impair $colorbacklineimpair2='255,255,255'; // line impair -$colorbacklinepair1='250,250,250'; // line pair +$colorbacklinepair1='248,248,248'; // line pair $colorbacklinepair2='248,248,248'; // line pair $colorbacklinepairhover='238,246,252'; // line pair $colorbackbody='255,255,255'; -//$colortexttitlenotab='40,0,70'; $colortexttitlenotab='80,80,0'; -$colortexttitle=''; -$colortext=''; +$colortexttitle='0,0,0'; +$colortext='0,0,0'; +$colortextlink='0,0,120'; $fontsize='12'; $fontsizesmaller='11'; $usegradient=1; $useboldtitle=1; // Case of option always editable -if (! isset($conf->global->THEME_ELDY_TOPMENU_BACK1)) $conf->global->THEME_ELDY_TOPMENU_BACK1='140,150,180'; // topmenu (140,160,185) -//if (! isset($conf->global->THEME_ELDY_BACKTITLE1)) $conf->global->THEME_ELDY_BACKTITLE1='140,150,180'; // title of arrays TO MATCH ELDY (140,160,185) -if (! isset($conf->global->THEME_ELDY_BACKTITLE1)) $conf->global->THEME_ELDY_BACKTITLE1='230,230,230'; // title of arrays TO MATCH BOOTSTRAP -//if (! isset($conf->global->THEME_ELDY_USE_HOVER)) $conf->global->THEME_ELDY_USE_HOVER=''; // color for links +if (! isset($conf->global->THEME_ELDY_BACKBODY)) $conf->global->THEME_ELDY_BACKBODY='255,255,255'; +if (! isset($conf->global->THEME_ELDY_TOPMENU_BACK1)) $conf->global->THEME_ELDY_TOPMENU_BACK1='140,150,180'; +if (! isset($conf->global->THEME_ELDY_BACKTITLE1)) $conf->global->THEME_ELDY_BACKTITLE1='230,230,230'; +if (! isset($conf->global->THEME_ELDY_USE_HOVER)) $conf->global->THEME_ELDY_USE_HOVER=='238,246,252'; +if (! isset($conf->global->THEME_ELDY_TEXTLINK)) $conf->global->THEME_ELDY_TEXTLINK='0,0,120'; -// Fields not yet editable by default +// Case of option editable only if option THEME_ELDY_ENABLE_PERSONALIZED is on if (empty($conf->global->THEME_ELDY_ENABLE_PERSONALIZED)) { - // Cas of option editable if option THEME_ELDY_ENABLE_PERSONALIZED is on $conf->global->THEME_ELDY_VERMENU_BACK1='255,255,255'; // vmenu $conf->global->THEME_ELDY_BACKTABCARD1='255,255,255'; // card $conf->global->THEME_ELDY_BACKTABACTIVE='234,234,234'; $conf->global->THEME_ELDY_LINEIMPAIR1='255,255,255'; $conf->global->THEME_ELDY_LINEIMPAIR2='255,255,255'; - $conf->global->THEME_ELDY_LINEPAIR1='250,250,250'; + $conf->global->THEME_ELDY_LINEPAIR1='248,248,248'; $conf->global->THEME_ELDY_LINEPAIR2='248,248,248'; $conf->global->THEME_ELDY_LINEPAIRHOVER='238,246,252'; - $conf->global->THEME_ELDY_USE_HOVER=='238,246,252'; - $conf->global->THEME_ELDY_BACKBODY='255,255,255'; - //$conf->global->THEME_ELDY_TEXTTITLE='0,0,0'; $conf->global->THEME_ELDY_TEXT='0,0,0'; - $conf->global->THEME_ELDY_FONT_SIZE1='12'; $conf->global->THEME_ELDY_FONT_SIZE2='11'; } @@ -142,6 +138,7 @@ $colorbacklinepairhover=empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED)?(empt $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); $colortexttitle =empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED)?(empty($conf->global->THEME_ELDY_TEXTTITLE) ?$colortext:$conf->global->THEME_ELDY_TEXTTITLE) :(empty($user->conf->THEME_ELDY_TEXTTITLE)?$colortexttitle:$user->conf->THEME_ELDY_TEXTTITLE); $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) ?$colortext:$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); $fontsizesmaller =empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED)?(empty($conf->global->THEME_ELDY_FONT_SIZE2) ?$fontsize:$conf->global->THEME_ELDY_FONT_SIZE2) :(empty($user->conf->THEME_ELDY_FONT_SIZE2)?$fontsize:$user->conf->THEME_ELDY_FONT_SIZE2); @@ -191,6 +188,7 @@ if ($colorbacklinepairhover != '') $colorbacklinepairhover=join(',',colorStringT $colorbackbody=join(',',colorStringToArray($colorbackbody)); $colortexttitle=join(',',colorStringToArray($colortexttitle)); $colortext=join(',',colorStringToArray($colortext)); +$colortextlink=join(',',colorStringToArray($colortextlink)); print '/*'."\n"; print 'colorbackbody='.$colorbackbody."\n"; @@ -204,6 +202,7 @@ print 'colorbacklinepair2='.$colorbacklinepair2."\n"; print 'colorbacklinepairhover='.$colorbacklinepairhover."\n"; print '$colortexttitle='.$colortexttitle."\n"; print '$colortext='.$colortext."\n"; +print '$colortextlink='.$colortextlink."\n"; print 'dol_hide_topmenu='.$dol_hide_topmenu."\n"; print 'dol_hide_leftmenu='.$dol_hide_leftmenu."\n"; print 'dol_optimize_smallscreen='.$dol_optimize_smallscreen."\n"; @@ -216,7 +215,7 @@ print '*/'."\n"; if (! empty($conf->dol_optimize_smallscreen)) $fontsize=11; -//$nb=$menumanager->showmenu('topnb'); +$nbtopmenuentries=$menumanager->showmenu('topnb'); //print $nb; ?> @@ -242,9 +241,11 @@ body { <?php print 'direction: '.$langs->trans("DIRECTION").";\n"; ?> } -a:link, a:visited, a:hover, a:active { font-family: <?php print $fontlist ?>; font-weight: bold; color: #000; text-decoration: none; } +th a, .thumbstat, a.tab { color: rgb(<?php print $colortexttitle; ?>) !important; font-weight: bold !important; } +a.tab { font-weight: bold !important; } -a:hover { text-decoration: underline; color: #000000;} +a:link, a:visited, a:hover, a:active { font-family: <?php print $fontlist ?>; font-weight: normal; color: rgb(<?php print $colortextlink; ?>); text-decoration: none; } +a:hover { text-decoration: underline; color: rgb(<?php print $colortextlink; ?>); } <?php if (empty($dol_use_jmobile)) { ?> @@ -508,6 +509,7 @@ div.confirmmessage { .minwidth200 { min-width: 200px; } .minwidth300 { min-width: 300px; } .maxwidth100 { max-width: 100px; } +.maxwidth150 { max-width: 150px; } .maxwidth200 { max-width: 200px; } .maxwidth300 { max-width: 300px; } .titlefield { width: 30%; } @@ -646,7 +648,7 @@ div.divphotoref { div.statusref { float: right; padding-right: 12px; - margin-top: 7px; + margin-top: 6px; margin-bottom: 10px; } img.photoref { @@ -1159,6 +1161,8 @@ div.vmenu, td.vmenu { padding-bottom: 2px; } #menu_contenu_logo { padding-right: 4px; } +.companylogo { } +.searchform { padding-top: 4px; } a.vmenu:link, a.vmenu:visited, a.vmenu:hover, a.vmenu:active { font-size:<?php print $fontsize ?>px; font-family: <?php print $fontlist ?>; text-align: <?php print $left; ?>; font-weight: bold; } font.vmenudisabled { font-size:<?php print $fontsize ?>px; font-family: <?php print $fontlist ?>; text-align: <?php print $left; ?>; font-weight: bold; color: #aaa; } @@ -3867,6 +3871,17 @@ border-top-right-radius: 6px; padding: 0 4px 0 4px; } @media only screen and (max-width: 767px) +{ + .imgopensurveywizard { width:95%; height: auto; } + + #tooltip { + position: absolute; + width: <?php print dol_size(350,'width'); ?>px; + } + +} + +@media only screen and (max-width: <?php echo $nbtopmenuentries * 85; ?>px) { .mainmenuaspan { display: none; @@ -3884,13 +3899,6 @@ border-top-right-radius: 6px; div.tmenuleft { display: none; } - - .imgopensurveywizard { width:95%; height: auto; } - - #tooltip { - position: absolute; - width: <?php print dol_size(350,'width'); ?>px; - } } @media only screen and (max-width: 570px) { @@ -3906,7 +3914,8 @@ border-top-right-radius: 6px; <?php } ?> } div.login_block { - top: 9px; + top: 4px; + max-width: 82px; } div.mainmenu { diff --git a/htdocs/theme/md/img/helpdoc.png b/htdocs/theme/md/img/helpdoc.png index 8cd950e7be1aabd9b452c150ddd128e6223f72e1..435fbc77985db9e7d9c970dbdcc40d469c3551a7 100644 Binary files a/htdocs/theme/md/img/helpdoc.png and b/htdocs/theme/md/img/helpdoc.png differ diff --git a/htdocs/theme/md/img/logout.png b/htdocs/theme/md/img/logout.png index 26ae717bc1abfd13b94f215a02ca4c462dc614ca..e2e2e5d973d4b80a0942b92f9cc079cdf0fb89a9 100644 Binary files a/htdocs/theme/md/img/logout.png and b/htdocs/theme/md/img/logout.png differ diff --git a/htdocs/theme/md/img/object_printer.png b/htdocs/theme/md/img/object_printer.png new file mode 100644 index 0000000000000000000000000000000000000000..8722632547c5b7179d68c6e3e670131c72c80bd3 Binary files /dev/null and b/htdocs/theme/md/img/object_printer.png differ diff --git a/htdocs/theme/md/img/object_askpricesupplier.png b/htdocs/theme/md/img/object_supplier_proposal.png similarity index 100% rename from htdocs/theme/md/img/object_askpricesupplier.png rename to htdocs/theme/md/img/object_supplier_proposal.png diff --git a/htdocs/theme/md/img/printer.png b/htdocs/theme/md/img/printer.png index 3a5e7b2dfa04ac44e55210677b50a72990b93550..a81e2fa0df60af0e3719f655335833d9d8172810 100644 Binary files a/htdocs/theme/md/img/printer.png and b/htdocs/theme/md/img/printer.png differ diff --git a/htdocs/theme/md/style.css.php b/htdocs/theme/md/style.css.php index 45a4f755a051c5871531fdf9e9fdbd2bef1340bc..d1b2a357b70180d25e81c2dfee6c5d5ad769a8ae 100644 --- a/htdocs/theme/md/style.css.php +++ b/htdocs/theme/md/style.css.php @@ -32,7 +32,7 @@ if (! defined('NOREQUIRESOC')) define('NOREQUIRESOC','1'); if (! defined('NOCSRFCHECK')) define('NOCSRFCHECK',1); if (! defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL',1); if (! defined('NOLOGIN')) define('NOLOGIN',1); // File must be accessed by logon page so without login -if (! defined('NOREQUIREMENU')) define('NOREQUIREMENU',1); +//if (! defined('NOREQUIREMENU')) define('NOREQUIREMENU',1); if (! defined('NOREQUIREHTML')) define('NOREQUIREHTML',1); if (! defined('NOREQUIREAJAX')) define('NOREQUIREAJAX','1'); @@ -87,43 +87,40 @@ $colorbacktabcard1='255,255,255'; // card $colorbacktabactive='234,234,234'; $colorbacklineimpair1='255,255,255'; // line impair $colorbacklineimpair2='255,255,255'; // line impair -$colorbacklinepair1='242,242,242'; // line pair +$colorbacklinepair1='250,250,250'; // line pair $colorbacklinepair2='248,248,248'; // line pair -$colorbacklinepairhover='238,246,252'; // line pair +$colorbacklinepairhover='244,244,244'; // line pair $colorbackbody='255,255,255'; -//$colortexttitlenotab='40,0,70'; $colortexttitlenotab='80,80,0'; -$colortexttitle=''; -$colortext=''; +$colortexttitle='0,0,0'; +$colortext='0,0,0'; +$colortextlink='0,0,120'; $fontsize='13'; $fontsizesmaller='11'; $usegradient=1; $useboldtitle=1; // Case of option always editable +if (! isset($conf->global->THEME_ELDY_BACKBODY)) $conf->global->THEME_ELDY_BACKBODY='255,255,255'; if (! isset($conf->global->THEME_ELDY_TOPMENU_BACK1)) $conf->global->THEME_ELDY_TOPMENU_BACK1=join(',',colorStringToArray('#37474F')); // topmenu (140,160,185) if (! isset($conf->global->THEME_ELDY_BACKTITLE1)) $conf->global->THEME_ELDY_BACKTITLE1='140,150,180'; // title of arrays TO MATCH ELDY (140,160,185) -//if (! isset($conf->global->THEME_ELDY_BACKTITLE1)) $conf->global->THEME_ELDY_BACKTITLE1='230,230,230'; // title of arrays TO MATCH BOOTSTRAP -//if (! isset($conf->global->THEME_ELDY_USE_HOVER)) $conf->global->THEME_ELDY_USE_HOVER=''; // color for links - -// Fields not yet editable by default +if (! isset($conf->global->THEME_ELDY_USE_HOVER)) $conf->global->THEME_ELDY_USE_HOVER=='238,246,252'; +if (! isset($conf->global->THEME_ELDY_TEXTLINK)) $conf->global->THEME_ELDY_TEXTLINK='0,0,120'; + +// Case of option editable only if option THEME_ELDY_ENABLE_PERSONALIZED is on if (empty($conf->global->THEME_ELDY_ENABLE_PERSONALIZED)) { - // Cas of option editable if option THEME_ELDY_ENABLE_PERSONALIZED is on // 90A4AE, 607D8B, 455A64, 37474F $conf->global->THEME_ELDY_VERMENU_BACK1='255,255,255'; // vmenu $conf->global->THEME_ELDY_BACKTABCARD1='255,255,255'; // card $conf->global->THEME_ELDY_BACKTABACTIVE='234,234,234'; $conf->global->THEME_ELDY_LINEIMPAIR1='255,255,255'; $conf->global->THEME_ELDY_LINEIMPAIR2='255,255,255'; - $conf->global->THEME_ELDY_LINEPAIR1='242,242,242'; + $conf->global->THEME_ELDY_LINEPAIR1='250,250,250'; $conf->global->THEME_ELDY_LINEPAIR2='248,248,248'; $conf->global->THEME_ELDY_LINEPAIRHOVER='238,246,252'; $conf->global->THEME_ELDY_USE_HOVER=='238,246,252'; - $conf->global->THEME_ELDY_BACKBODY='255,255,255'; - //$conf->global->THEME_ELDY_TEXTTITLE='0,0,0'; - $conf->global->THEME_ELDY_TEXT='50,50,130'; - + $conf->global->THEME_ELDY_TEXT='0,0,0'; $conf->global->THEME_ELDY_FONT_SIZE1='13'; $conf->global->THEME_ELDY_FONT_SIZE2='11'; } @@ -144,6 +141,7 @@ $colorbacklinepairhover =empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED)?(em $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); $colortexttitle =empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED)?(empty($conf->global->THEME_ELDY_TEXTTITLE) ?$colortext:$conf->global->THEME_ELDY_TEXTTITLE) :(empty($user->conf->THEME_ELDY_TEXTTITLE)?$colortexttitle:$user->conf->THEME_ELDY_TEXTTITLE); $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) ?$colortext:$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); $fontsizesmaller =empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED)?(empty($conf->global->THEME_ELDY_FONT_SIZE2) ?$fontsize:$conf->global->THEME_ELDY_FONT_SIZE2) :(empty($user->conf->THEME_ELDY_FONT_SIZE2)?$fontsize:$user->conf->THEME_ELDY_FONT_SIZE2); @@ -158,15 +156,15 @@ if (! empty($user->conf->THEME_ELDY_ENABLE_PERSONALIZED)) $tmppart=explode(',',$colorbackhmenu1); $tmpval=(! empty($tmppart[1]) ? $tmppart[1] : '')+(! empty($tmppart[2]) ? $tmppart[2] : '')+(! empty($tmppart[3]) ? $tmppart[3] : ''); if ($tmpval <= 360) $colortextbackhmenu='FFFFFF'; -else $colortextbackhmenu='111111'; +else $colortextbackhmenu='000000'; $tmppart=explode(',',$colorbackvmenu1); $tmpval=(! empty($tmppart[1]) ? $tmppart[1] : '')+(! empty($tmppart[2]) ? $tmppart[2] : '')+(! empty($tmppart[3]) ? $tmppart[3] : ''); if ($tmpval <= 360) { $colortextbackvmenu='FFFFFF'; } -else { $colortextbackvmenu='111111'; } +else { $colortextbackvmenu='000000'; } $tmppart=explode(',',$colorbacktitle1); $tmpval=(! empty($tmppart[1]) ? $tmppart[1] : '')+(! empty($tmppart[2]) ? $tmppart[2] : '')+(! empty($tmppart[3]) ? $tmppart[3] : ''); if ($tmpval <= 260) { $colortexttitle='FFFFFF'; $colorshadowtitle='888888'; } -else { $colortexttitle='111111'; $colorshadowtitle='FFFFFF'; } +else { $colortexttitle='000000'; $colorshadowtitle='FFFFFF'; } $tmppart=explode(',',$colorbacktabcard1); $tmpval=(! empty($tmppart[1]) ? $tmppart[1] : '')+(! empty($tmppart[2]) ? $tmppart[2] : '')+(! empty($tmppart[3]) ? $tmppart[3] : ''); if ($tmpval <= 340) { $colortextbacktab='FFFFFF'; } @@ -185,7 +183,8 @@ $colorbacklinepair2=join(',',colorStringToArray($colorbacklinepair2)); if ($colorbacklinepairhover != '') $colorbacklinepairhover=join(',',colorStringToArray($colorbacklinepairhover)); $colorbackbody=join(',',colorStringToArray($colorbackbody)); $colortexttitle=join(',',colorStringToArray($colortexttitle)); -$colortext=join(',',colorStringToArray($colorbackvmenu1)); +$colortext=join(',',colorStringToArray($colortext)); +$colortextlink=join(',',colorStringToArray($colortextlink)); print '/*'."\n"; print 'colorbackbody='.$colorbackbody."\n"; @@ -197,6 +196,9 @@ print 'colorbacklineimpair2='.$colorbacklineimpair2."\n"; print 'colorbacklinepair1='.$colorbacklinepair1."\n"; print 'colorbacklinepair2='.$colorbacklinepair2."\n"; print 'colorbacklinepairhover='.$colorbacklinepairhover."\n"; +print '$colortexttitle='.$colortexttitle."\n"; +print '$colortext='.$colortext."\n"; +print '$colortextlink='.$colortextlink."\n"; print 'dol_hide_topmenu='.$dol_hide_topmenu."\n"; print 'dol_hide_leftmenu='.$dol_hide_leftmenu."\n"; print 'dol_optimize_smallscreen='.$dol_optimize_smallscreen."\n"; @@ -207,6 +209,9 @@ print 'dol_screenheight='.$_SESSION['dol_screenheight']."\n"; print '*/'."\n"; if (! empty($conf->dol_optimize_smallscreen)) $fontsize=11; + +$nbtopmenuentries=$menumanager->showmenu('topnb'); + ?> /* ============================================================================== */ @@ -220,7 +225,7 @@ body { <?php } else { ?> background: rgb(<?php print $colorbackbody; ?>); <?php } ?> - color: #101010; + color: rgb(<?php echo $colortext; ?>); font-size: <?php print $fontsize ?>px; font-family: <?php print $fontlist ?>; margin-top: 0; @@ -230,9 +235,11 @@ body { <?php print 'direction: '.$langs->trans("DIRECTION").";\n"; ?> } -a:link, a:visited, a:hover, a:active { font-family: <?php print $fontlist ?>; font-weight: bold; color: #000; text-decoration: none; } +th a, .thumbstat, a.tab { color: rgb(<?php print $colortexttitle; ?>) !important; font-weight: bold !important; } +a.tab { font-weight: bold !important; } -a:hover { text-decoration: underline; color: #000000;} +a:link, a:visited, a:hover, a:active { font-family: <?php print $fontlist ?>; font-weight: normal; color: rgb(<?php print $colortextlink; ?>); text-decoration: none; } +a:hover { text-decoration: underline; color: rgb(<?php print $colortextlink; ?>); } <?php if (empty($dol_use_jmobile)) { ?> @@ -244,7 +251,7 @@ textarea.cke_source:focus box-shadow: none; } -input, input.flat, textarea, textarea.flat, form.flat select select, select.flat, .dataTables_length label select { +input, input.flat, textarea, textarea.flat, form.flat select, select, select.flat, .dataTables_length label select { font-size: <?php print $fontsize ?>px; font-family: <?php print $fontlist ?>; background: #FDFDFD; @@ -497,6 +504,7 @@ div.confirmmessage { .minwidth200 { min-width: 200px; } .minwidth300 { min-width: 300px; } .maxwidth100 { max-width: 100px; } +.maxwidth150 { max-width: 150px; } .maxwidth200 { max-width: 200px; } .maxwidth300 { max-width: 300px; } .titlefield { width: 30%; } @@ -616,6 +624,7 @@ div.fiche { margin-<?php print $left; ?>: <?php print (GETPOST("optioncss") == 'print'?6:((empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT))?($dol_hide_leftmenu?'4':'20'):'24')); ?>px; margin-<?php print $right; ?>: <?php print (GETPOST("optioncss") == 'print'?8:(empty($conf->dol_optimize_smallscreen)?'12':'4')); ?>px; <?php if (! empty($conf->dol_hide_leftmenu) && ! empty($conf->dol_hide_topmenu)) print 'margin-top: 4px;'; ?> + margin-bottom: 15px; } div.fichecenter { @@ -1185,6 +1194,8 @@ div.vmenu, td.vmenu { .menu_contenu { padding-top: 4px; padding-bottom: 3px;} #menu_contenu_logo { padding-right: 4px; } +.companylogo { padding-top: 4px; } +.searchform { padding-top: 8px; } a.vmenu:link, a.vmenu:visited, a.vmenu:hover, a.vmenu:active { font-size:<?php print $fontsize ?>px; font-family: <?php print $fontlist ?>; text-align: <?php print $left; ?>; font-weight: bold; } font.vmenudisabled { font-size:<?php print $fontsize ?>px; font-family: <?php print $fontlist ?>; text-align: <?php print $left; ?>; font-weight: bold; color: #93a5aa; } @@ -3703,6 +3714,16 @@ border-top-right-radius: 6px; padding: 0 4px 0 4px; } @media only screen and (max-width: 767px) +{ + .imgopensurveywizard { width:95%; height: auto; } + + #tooltip { + position: absolute; + width: <?php print dol_size(350,'width'); ?>px; + } +} + +@media only screen and (max-width: <?php echo ($nbtopmenuentries * 85) + 200; ?>px) { .mainmenuaspan { display: none; @@ -3720,13 +3741,6 @@ border-top-right-radius: 6px; div.tmenuleft { display: none; } - - .imgopensurveywizard { width:95%; height: auto; } - - #tooltip { - position: absolute; - width: <?php print dol_size(350,'width'); ?>px; - } } @media only screen and (max-width: 570px) { diff --git a/htdocs/user/admin/group_extrafields.php b/htdocs/user/admin/group_extrafields.php index aeb3f194daf48d5361faa9a086a0befc1ae3a320..2301f1092820413bdbcc4f4836a3fbaf9cec6ef7 100644 --- a/htdocs/user/admin/group_extrafields.php +++ b/htdocs/user/admin/group_extrafields.php @@ -71,7 +71,7 @@ print load_fiche_titre($langs->trans("UsersSetup"),$linkback,'title_setup'); $head = user_admin_prepare_head(); -dol_fiche_head($head, 'attributes_group', $langs->trans("Group"), 0, 'user'); +dol_fiche_head($head, 'attributes_group', $langs->trans("MenuUsersAndGroups"), 0, 'user'); require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_view.tpl.php'; diff --git a/htdocs/user/admin/user_extrafields.php b/htdocs/user/admin/user_extrafields.php index 8ebdcca905688b8e781b13c1f8e18007925c16cd..bb035d9f95f6517d3055ad165f9b68c08b5b9772 100644 --- a/htdocs/user/admin/user_extrafields.php +++ b/htdocs/user/admin/user_extrafields.php @@ -70,7 +70,7 @@ print load_fiche_titre($langs->trans("UsersSetup"),$linkback,'title_setup'); $head = user_admin_prepare_head(); -dol_fiche_head($head, 'attributes', $langs->trans("User"), 0, 'user'); +dol_fiche_head($head, 'attributes', $langs->trans("MenuUsersAndGroups"), 0, 'user'); require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_view.tpl.php'; diff --git a/htdocs/webservices/server_productorservice.php b/htdocs/webservices/server_productorservice.php index 9d26ce52fb292afd86785591e1e00defefe0d8a2..2e3314fff129af6153ecf609bdf7eb9a38731a58 100644 --- a/htdocs/webservices/server_productorservice.php +++ b/htdocs/webservices/server_productorservice.php @@ -946,9 +946,9 @@ function getListOfProductsOrServices($authentication,$filterproduct) $sql.=" WHERE entity=".$conf->entity; foreach($filterproduct as $key => $val) { - if ($key == 'type' && $val >= 0) $sql.=" AND fk_product_type = ".$db->escape($val); - if ($key == 'tosell') $sql.=" AND to_sell = ".$db->escape($val); - if ($key == 'tobuy') $sql.=" AND to_buy = ".$db->escape($val); + if ($key == 'type' && $val >= 0) $sql.=" AND fk_product_type = ".$db->escape($val); + if ($key == 'status_tosell') $sql.=" AND tosell = ".$db->escape($val); + if ($key == 'status_tobuy') $sql.=" AND tobuy = ".$db->escape($val); } $resql=$db->query($sql); if ($resql)