|
@@ -2,6 +2,129 @@
|
|
|
English Dolibarr ChangeLog
|
|
|
--------------------------------------------------------------
|
|
|
|
|
|
+***** ChangeLog for 19.0.4 compared to 19.0.3 *****
|
|
|
+FIX: fatal when updating recurring supplier invoice line with php8 ($remise_percent is '' instead of 0) (#31713)
|
|
|
+FIX: supplier invoice template card: buyer and seller swapped in VAT-related function calls (probably a copy-paste from customer invoice templates) (#31446)
|
|
|
+FIX: #25853 Thirdparty Massaction (#25868)
|
|
|
+FIX: #28505 Blank page from thirparty to projects (#31637)
|
|
|
+FIX: #30757
|
|
|
+FIX: #30762
|
|
|
+FIX: #30768 allocate the correct invoice_line_id to the element timespent (#30769)
|
|
|
+FIX: #30772 Accountancy document export - The project filter on expenses report don't work (#30824)
|
|
|
+FIX: #30836
|
|
|
+FIX: #30960 show and search extrafields (#31026)
|
|
|
+FIX: Add same security test when uploading files from API than from GUI (#31114)
|
|
|
+FIX: ajaxik URL in ExpenseReport to load coef calculation (#30918)
|
|
|
+FIX: attached file on first page load (#30694)
|
|
|
+FIX: autoselect the fiscal period by default
|
|
|
+FIX: avoid from re-initializing array result on nested hook getEntity (#30626)
|
|
|
+FIX: avoid odt errors (#31126)
|
|
|
+FIX: avoid pgsql error (#30678)
|
|
|
+FIX: avoid the return "AND (())" (#30829)
|
|
|
+FIX: Backport fix fatal error on price with some truncating setup
|
|
|
+FIX: box_actions.php still uses fk_user_done which no longer exists (#31190)
|
|
|
+FIX: can validate shipment without stock movement (#31780)
|
|
|
+FIX: column position on PDF of payments
|
|
|
+FIX: const WORKFLOW_RECEPTION_CLASSIFY_NEWD_INVOICE (#31601)
|
|
|
+FIX: Debug extrafields for bank lines
|
|
|
+FIX: email templates for expense report not visible
|
|
|
+FIX: Error message overwritten when a error occurs during update of product multilangs (#30841)
|
|
|
+FIX: error return missing in mo creation when qty to consume is <= 0 (#31134)
|
|
|
+FIX: Extrafield following between rec invoice and classic invoice (#31445)
|
|
|
+FIX: Fatal error on create loan schedule (#30656)
|
|
|
+FIX: Fix bug select columns and access to the public ticket list from the public ticket card (case when we have connected to another client before, the track id stocked in session overwrite the new track id from the public ticket card) (#31000)
|
|
|
+FIX: fixed search filter for projects resetting when set to empty (#30902)
|
|
|
+FIX: if you call fetchLines several times, your $object->lines contains duplicates (#31167)
|
|
|
+FIX: If you have no stock of your product, an error is displayed when you delete the reception. (#31504)
|
|
|
+FIX: Invoice unpaid widget - SQL error on group by with constant MAIN_COMPANY_PERENTITY_SHARED (#30866)
|
|
|
+FIX: issue on action set condition in particular when you set a deposi… (#31518)
|
|
|
+FIX: late order search option (v18+) (#30692)
|
|
|
+FIX: late propal search option (v18+) (#30687)
|
|
|
+FIX: missing fk_parent_line parameter (#30806)
|
|
|
+FIX: mysql error during dump for enable sandbox M999999 (#31116)
|
|
|
+FIX: PHP-warning-multiprice-in-liste-product-if-level-is-not-defined-on-product (#31507)
|
|
|
+FIX: Protection to avoid an extrafield to be mandatory if computed
|
|
|
+FIX: purge files cron: php warnings when rest module enabled (#30919)
|
|
|
+FIX: removed unreachable code (#31141)
|
|
|
+FIX: show preview pdf list expensereport (#31694)
|
|
|
+FIX: Substitution error in ticket emails in the subject (#30778)
|
|
|
+FIX: substitutions THIRDPARTY_XXX are not available for actioncomm reminders (#31385)
|
|
|
+FIX: use price() to display qty on a product's stats tab to avoid showing too many decimals when rounding errors are possible (#31165)
|
|
|
+FIX: Vat code is lost when updating lines in POS
|
|
|
+FIX: when qty is not an integer, apply price() (#31138)
|
|
|
+FIX: Wrong default PDF model when creating the second situation invoice (#30843)
|
|
|
+FIX: wrong subprice if price base type is TTC (#30887)
|
|
|
+
|
|
|
+***** ChangeLog for 19.0.3 compared to 19.0.2 *****
|
|
|
+FIX: #29403 HRM - Unable to delete a skill in a job Profile (#29779)
|
|
|
+FIX: #29439 incomplete API return (#29796)
|
|
|
+FIX: #29756 Sql error on comment search (#29761)
|
|
|
+FIX: #29780 Restore filtes when using "back to list"
|
|
|
+FIX: #30010 : Use conf TICKET_MESSAGE_MAIL_INTRO instead of translation key (#30081)
|
|
|
+FIX: #30274 : Add the include before executing dolibarr_set_const (#30320)
|
|
|
+FIX: #30467
|
|
|
+FIX: #30576 - Salary payment - Date of the payment is not displayed (#30592)
|
|
|
+FIX: Accountancy - Avoid space on FEC name file (#29716)
|
|
|
+FIX: Accountancy - Generate entries of expense report with localtax (#30411)
|
|
|
+FIX: ASSET: annual depreciation starting year (Again ;-)) #26084 (#30040)
|
|
|
+FIX: Backport page inventory.php from v18 to fix pagination bugs causing data loss (#29688)
|
|
|
+FIX: back to page on error in contact card (#29627)
|
|
|
+FIX: Bad calculation of $nbtotalofrecord (#30183)
|
|
|
+FIX: Bad count of total of supplie rinvoice into the list
|
|
|
+FIX: Better compatibility when objectdesc is not valid, and warnings
|
|
|
+FIX: broken pdf preview when multicompany sharing (#30188)
|
|
|
+FIX: compatibility with MULTICOMPANY_TRANSVERSE_MODE (#30599)
|
|
|
+FIX: Conflict with autoload (#30399)
|
|
|
+FIX: Display the real_PMP on inventory when its value is equal to 0 (#22291)
|
|
|
+FIX: Error mesg show untranslated extrafield name (#30227)
|
|
|
+FIX: executeHooks $object default value (#29647)
|
|
|
+FIX: expedition PDF models using units labels (#30358)
|
|
|
+FIX: Extrafield intshowzero in list (#29789)
|
|
|
+FIX: Extrafields always been delete and re insert for categories (#29781)
|
|
|
+FIX: extrafields on Organized events was broken
|
|
|
+FIX: fatal error on loading pictures in attached documents of an event (#30553)
|
|
|
+FIX: for country type (#29745)
|
|
|
+FIX: group by qty in product margin tab (#29853)
|
|
|
+FIX: init total amounts in margin module (#29854)
|
|
|
+FIX: issue to get the right files exported in Quadratrus export.php (#30004)
|
|
|
+FIX: lang output for sales representative on PDF (#30469)
|
|
|
+FIX: langs in common docgenerator (#29774)
|
|
|
+FIX: langs overwrite (#29630)
|
|
|
+FIX: lettering (auto) for invoice deposit with company discount (#29633)
|
|
|
+FIX: missing $object and $action for hook parameters (#30484)
|
|
|
+FIX: Missing $param in hook call for list
|
|
|
+FIX: Missing expense report picto in list (#29917)
|
|
|
+FIX: Missing expense report picto in menu (#29908)
|
|
|
+FIX: Missing the description in tooltip when option show in tooltip on
|
|
|
+FIX: mo cloning (#29686)
|
|
|
+FIX: modification date from label in accounting bookkeeping list (#30038)
|
|
|
+FIX: move porpale ref pdf cornas (#29989)
|
|
|
+FIX: Not qualified lines for reception (#29473)
|
|
|
+FIX: on change ref for bank account attachment are lost (#30529)
|
|
|
+FIX: orders to bill menu (#30179)
|
|
|
+FIX: Page expands when ticket messages are too long (#29785)
|
|
|
+FIX: parameter name (#29666)
|
|
|
+FIX: PHP8 warning if $conf->reception is checked the old fashion way (#29697)
|
|
|
+FIX: PHP 8 warning on output of successful cronjob (#29922)
|
|
|
+FIX: PHP exception on getSpecialCode (#29646)
|
|
|
+FIX: php warning if cookie doesn’t exist (#29723)
|
|
|
+FIX: pos: invoice date incorrectly set because of timezome mismatches (reverts #36e91da) (#30184)
|
|
|
+FIX: public project form return an error if SOCIETE_EMAIL_UNIQUE (#29942)
|
|
|
+FIX: REPLENISH MANY FOURN WHEN ORDER ALREADY CREATE (#29710)
|
|
|
+FIX: Supplier Order search on date valid (#30448)
|
|
|
+FIX: Ternary operator condition is always true/false (#29649)
|
|
|
+FIX: to avoid error during upgrade with pgsql (#30443)
|
|
|
+FIX: transfer in accountancy for expense reports.
|
|
|
+FIX: uninitialised var (#29728)
|
|
|
+FIX: - Unknown Character on HTML (#30257)
|
|
|
+FIX: Unsigned propal having signing date (#29825)
|
|
|
+FIX: Update asset.class.php
|
|
|
+FIX: update date_echeance of supplier invoices when we update invoice date in the past (#29886)
|
|
|
+FIX: User List - Function is show in wrong column when module HRM enabled (#30186)
|
|
|
+FIX: var name error and remove useless code (#30601)
|
|
|
+FIX: Warning: Undefined property: PropaleLigne::$situation_percent in /home/httpd/vhosts/aflac.fr/domains/dol190.aflac.fr/httpdocs/core/lib/pdf.lib.php on line 2442 (#30033)
|
|
|
+FIX: wrong value for duration unit (#30261)
|
|
|
+FIX: The ZAR currency must show the R before the amount
|
|
|
|
|
|
***** ChangeLog for 19.0.2 compared to 19.0.1 *****
|
|
|
FIX: $object->oldcopy may be a stdClass and not original object
|
|
@@ -481,6 +604,138 @@ The following changes may create regressions for some external modules, but were
|
|
|
* The load of hook context productdao has been removed before calling loadvirtualstock. Modules must use the context of main parent page or 'all' for all cases.
|
|
|
|
|
|
|
|
|
+***** ChangeLog for 18.0.6 compared to 18.0.5 *****
|
|
|
+FIX: 16.0 - parent company gets emptied when updating a third party from the card in edit mode (#28269)
|
|
|
+FIX: 16.0 - the e-mail templates configured in the notification module are not used if the recipient is a fixed e-mail address (#29407)
|
|
|
+FIX: 17.0: $num doesn't take trigger-modified newref into account, leading to inconsistencies if BILL_SUPPLIER_VALIDATE changes the invoice's ref (#28684)
|
|
|
+FIX: 17.0: fatal when updating recurring supplier invoice line with php8 ($remise_percent is '' instead of 0) (#31713)
|
|
|
+FIX: 17.0: supplier invoice template card: buyer and seller swapped in VAT-related function calls (probably a copy-paste from customer invoice templates) (#31446)
|
|
|
+FIX: #24265 regression cannot see all product on takepos (#28753)
|
|
|
+FIX: #25853 Thirdparty Massaction (#25868)
|
|
|
+FIX: #28205
|
|
|
+FIX: #28251 Fixing subpermission name on api_multicurrencies.class.php (#28252)
|
|
|
+FIX: #28369
|
|
|
+FIX: #28518 (#28520)
|
|
|
+FIX: #28978 FIX: #28976
|
|
|
+FIX: #29029 Impossible to delete an order line
|
|
|
+FIX: #29114 Missing contact term in intervention
|
|
|
+FIX: #29114 Translate contact term in intervention
|
|
|
+FIX: #29439 incomplete API return (#29796)
|
|
|
+FIX: #29496 filtering a record should not hide its child not filtered
|
|
|
+FIX: #30010 Use conf TICKET_MESSAGE_MAIL_INTRO instead of translation key (#30081)
|
|
|
+FIX: #30274 Add the include before executing dolibarr_set_const (#30320)
|
|
|
+FIX: #30467
|
|
|
+FIX: #30768 allocate the correct invoice_line_id to the element timespent (#30769)
|
|
|
+FIX: Accountancy export with file or not
|
|
|
+FIX: Accountancy - Generate entries of expense report with localtax (#30411)
|
|
|
+FIX: Accountancy - Not trunc id_import
|
|
|
+FIX: accounting FEC import (Issue #28306) (#29414)
|
|
|
+FIX: Add new hidden conf "DISABLE_QTY_OVERWRITTEN" (#28523)
|
|
|
+FIX: Add same security test when uploading files from API than from GUI (#31114)
|
|
|
+FIX: Amount of localtaxes in foreign currency was wrong on screen and PDF
|
|
|
+FIX: an error in a complex else condition
|
|
|
+FIX: ASSET: annual depreciation starting year (Again ;-)) #26084 (#30040)
|
|
|
+FIX: avoid error "Column 'entity' in where clause is ambiguous" (#28270)
|
|
|
+FIX: avoid from re-initializing array result on nested hook getEntity (#30626)
|
|
|
+FIX: avoid php warnings (#29247)
|
|
|
+FIX: avoid to delete "lock" and "unlock" files
|
|
|
+FIX: avoid Unknown column 'pfp.ref_fourn' (#28145)
|
|
|
+FIX: background color for enabled modules (#29378)
|
|
|
+FIX: Backport fix fatal error on price with some truncating setup
|
|
|
+FIX: Backport page inventory.php from v18 to fix pagination bugs causing data loss (#29688)
|
|
|
+FIX: back to page on error in contact card (#29627)
|
|
|
+FIX: Bad calculation of $nbtotalofrecord (#30183)
|
|
|
+FIX: box_actions.php still uses fk_user_done which no longer exists (#31190)
|
|
|
+FIX: can validate shipment without stock movement (#31780)
|
|
|
+FIX: Condition on newDateLimReglement
|
|
|
+FIX: Conflict with autoload (#30399)
|
|
|
+FIX: const WORKFLOW_RECEPTION_CLASSIFY_NEWD_INVOICE (#31601)
|
|
|
+FIX: contact/address title is always "New Contact/Address" even if the contact/address already exists (#29581)
|
|
|
+FIX: Display the date according to user language on substitutions (#29510)
|
|
|
+FIX: Display the real_PMP on inventory when its value is equal to 0 (#22291)
|
|
|
+FIX: Don't display column when it's out of date (#28271)
|
|
|
+FIX: email templates for expense report not visible
|
|
|
+FIX: Error mesg show untranslated extrafield name (#30227)
|
|
|
+FIX: Error message overwrote when a error occurs during update of product multilangs (#30841)
|
|
|
+FIX: Error When cloning fourn price no default value for tva_tx (#28368)
|
|
|
+FIX: executeHooks $object default value (#29647)
|
|
|
+FIX: expedition PDF models using units labels (#30358)
|
|
|
+FIX: Extrafield following between rec invoice and classic invoice (#31445)
|
|
|
+FIX: fatal error on loading pictures in attached documents of an event (#30553)
|
|
|
+FIX: fatal error Unsupported operand types when recording load payment
|
|
|
+FIX: Fix bug select columns and access to the public ticket list from the public ticket card (case when we have connected to another client before, the track id stocked in session overwrite the new track id from the public ticket card) (#31000)
|
|
|
+FIX: Fix create shipping with product who have negative stocks on warehouse but the negative stock transfer is allowed (#26217)
|
|
|
+FIX: Fix save directory for invoice ODT and multientities
|
|
|
+FIX: group by qty in product margin tab (#29853)
|
|
|
+FIX: Hierarchy Employee view do not filter on employee = 1 (#29496)
|
|
|
+FIX: if you call fetchLines several times, your $object->lines contains duplicates (#31167)
|
|
|
+FIX: If you have no stock of your product, an error is displayed when you delete the reception. (#31504)
|
|
|
+FIX: incorrect page numbering in PDF #29458 (#29476)
|
|
|
+FIX: inventoryDeletePermission id define twice
|
|
|
+FIX: issue on action set condition in particular when you set a deposi… (#31518)
|
|
|
+FIX: issue to get the right files exported in Quadratrus export.php (#30004)
|
|
|
+FIX: lang output for sales representative on PDF (#30469)
|
|
|
+FIX: late order search option (#30692) and propal (#30687)
|
|
|
+FIX: lettering (auto) for invoice deposit with company discount (#29633)
|
|
|
+FIX: made invalid code shape error more user friendly (#29498)
|
|
|
+FIX: Merge of thirdparties must also move uploaded files
|
|
|
+FIX: missing entity parameter for ajax_constantonoff
|
|
|
+FIX: missing hide "new" button where "product" or "service" module are disable
|
|
|
+FIX: mo cloning (#29686)
|
|
|
+FIX: modification date from label in accounting bookkeeping list (#30038)
|
|
|
+FIX: Move the trigger for delete order line before the SQL request
|
|
|
+FIX: multiple problems with multicompany
|
|
|
+FIX: mysql error during dump for enable sandbox M999999 (#31116)
|
|
|
+FIX: notification: error 500 in fixed emails due to a bad copy/paste (#29580)
|
|
|
+FIX: notification module: for supplier orders (any of the 3 triggers), user can choose an e-mail template in conf, but the conf is not used when sending the notification (#28216)
|
|
|
+FIX: Not qualified lines for reception (#29473)
|
|
|
+FIX: not redirect when error occurs on updating card (#29388)
|
|
|
+FIX: Not trancate the multicurrency rate shown on cards (even if the global MAIN_MAX_DECIMALS_SHOWN is set to 0) (#28211)
|
|
|
+FIX: on change ref for bank account attachment are lost (#30529)
|
|
|
+FIX: Option MAIN_DOC_USE_TIMING can be a string with date format
|
|
|
+FIX: orders to bill menu (#30179)
|
|
|
+FIX: Payment on customer invoice - Remove accountid in url if empty for apply default value (#28156)
|
|
|
+FIX: PDF Fatal error : Backport fix from #23972
|
|
|
+FIX: PDF Translations Extrafields
|
|
|
+FIX: permission on payment file of a tax
|
|
|
+FIX: php8: Fatal when empty $tmpvat is an empty string (no silent conversion to '0' when used in arithmetic operations) (#29451)
|
|
|
+FIX: PHP 8 warning on output of successful cronjob (#29922)
|
|
|
+FIX: PHP exception on getSpecialCode (#29646)
|
|
|
+FIX: php warning global conf (#29478)
|
|
|
+FIX: pos: invoice date incorrectly set because of timezome mismatches (reverts #36e91da) (#30184)
|
|
|
+FIX: public project form return an error if SOCIETE_EMAIL_UNIQUE (#29942)
|
|
|
+FIX: purge files cron: php warnings when rest module enabled (#30919)
|
|
|
+FIX: PUT /thirdparties/{id} and PUT /contacts/{id} should throw exception if update returns < 0 (#29596)
|
|
|
+FIX: Regression #29340
|
|
|
+FIX: Repair the replenishment list (#29336)
|
|
|
+FIX: REPLENISH MANY FOURN WHEN ORDER ALREADY CREATE (#29710)
|
|
|
+FIX: round capital societe (#29211)
|
|
|
+FIX: search and add extrafields to tasks when conf disabled (#29542)
|
|
|
+FIX: show preview pdf list expensereport (#31694)
|
|
|
+FIX: sometimes a string type instead integer is return, why ?
|
|
|
+FIX: Special code is now transmitted by args only in order supplier (#28546) (#28619)
|
|
|
+FIX: SQL syntax error in DDLUpdateField
|
|
|
+FIX: subscription must be editable when accounting isn't reconciled (#28469)
|
|
|
+FIX: substitutions THIRDPARTY_XXX are not available for actioncomm reminders (#31385)
|
|
|
+FIX: Supplier Order search on date valid (#30448)
|
|
|
+FIX: supplier price duplicate entry on update supplier product ref (#29290)
|
|
|
+FIX: syntax error
|
|
|
+FIX: TakePOS | Add product / Delete line of existing invoice
|
|
|
+FIX: Ticket new message notification sent twice
|
|
|
+FIX: transfer in accountancy for expense reports.
|
|
|
+FIX: Unsigned propal having signing date (#29825)
|
|
|
+FIX: Update asset.class.php
|
|
|
+FIX: update date_echeance of supplier invoices when we update invoice date in the past (#29886)
|
|
|
+FIX: use $conf->browser->os instead
|
|
|
+FIX: use price() to display qty on a product's stats tab to avoid showing too many decimals when rounding errors are possible (#31165)
|
|
|
+FIX: User List - Function is show in wrong column when module HRM enabled (#30186)
|
|
|
+fix: when invoice is created by WORKFLOW_ORDER_AUTOCREATE_INVOICE on ORDER_NEW, the invoice must have the default bank account of the thirdparty is it's empty on order (#29462)
|
|
|
+FIX: when qty is not an integer, apply price() (#31138)
|
|
|
+FIX: Wrong currency shown in TakePOS payment page
|
|
|
+FIX: wrong shortcut key for macintosh
|
|
|
+FIX: wrong sql request with product category filter
|
|
|
+FIX: wrong stock permission number
|
|
|
+
|
|
|
***** ChangeLog for 18.0.5 compared to 18.0.4 *****
|
|
|
FIX: 17.0: deprecated field should only be a fallback
|
|
|
FIX: 17.0 - php8 warnings: test for $field existence before checking if it is null or empty
|
|
@@ -836,7 +1091,7 @@ NEW: No overwrite of optionals during put() contact
|
|
|
NEW: Notifications: add Customer Order delivered (ORDER_NEW) in module Notification
|
|
|
NEW: Notifications: for Sign or Refused Propal from Online Page
|
|
|
NEW: Now we can edit amount on VAT and salaries clone action
|
|
|
-NEW: only get opened contact from liste_contact function, to not have access to closed contact as mail receiver
|
|
|
+NEW: only get open contact from liste_contact function, to not have access to closed contact as mail receiver
|
|
|
NEW: Option: MAIN_SECURITY_MAXFILESIZE_DOWNLOADED #yogosha10660
|
|
|
NEW: Option to manage deposit slips for more payment modes (not only
|
|
|
NEW: Option to show column for field and line selection on the left
|
|
@@ -3091,7 +3346,7 @@ NEW: add quick dropdown menu in top right menu (experimental with MAIN_USE_TOP_M
|
|
|
NEW: add region in export companies and contacts
|
|
|
NEW: add rights on margin info on invoice list
|
|
|
NEW: add search param for close date on order list
|
|
|
-NEW: add show preview for mail attachement on form mail
|
|
|
+NEW: add show preview for mail attachment on form mail
|
|
|
NEW: add State/Province origin for products
|
|
|
NEW: add the workflow interaction close intervention on closing ticket
|
|
|
NEW: add tracking number in list and search_all items
|
|
@@ -4476,7 +4731,7 @@ FIX: access to public interface when origin email has an alias.
|
|
|
FIX: Alias name is not into the email recipient label.
|
|
|
FIX: allow standalone credit note even if no invoice
|
|
|
FIX: an admin can not access his own permissions after enabling advanced permissions
|
|
|
-FIX: Attachement of linked files on ticket when sending a message
|
|
|
+FIX: Attachment of linked files on ticket when sending a message
|
|
|
FIX: avoid non numeric warning
|
|
|
FIX: Bad currency var used in stripe for connect
|
|
|
FIX: Bad list of ticket on public interface for ticket emailcollector
|
|
@@ -5272,7 +5527,7 @@ NEW: hidden option to define an invoice template for each invoice type
|
|
|
NEW: Highlight lines on lists when they are checked
|
|
|
NEW: Notification module support expense report+holiday validation and approval
|
|
|
NEW: On customer/supplier card, add simple tooltip to amount boxes
|
|
|
-NEW: Page to check if the operations/items created between two dates have attached item(s) and possibility to download all attachements
|
|
|
+NEW: Page to check if the operations/items created between two dates have attached item(s) and possibility to download all attachments
|
|
|
NEW: possibility to add all rights of all modules in one time
|
|
|
NEW: redirect if only one result on global search on card
|
|
|
NEW: Permission to ignore price min
|
|
@@ -6716,7 +6971,7 @@ NEW: No external check of version without explicit click in about page.
|
|
|
NEW: ODT docs for USER USERGROUP CONTRACT and PRODUCT class
|
|
|
NEW: odt usergroup
|
|
|
NEW: On invoices generated by template, we save if invoice come from a source template.
|
|
|
-NEW: option to copy into attachement files of events, files send by mail (with auto event creation)
|
|
|
+NEW: option to copy into attachment files of events, files send by mail (with auto event creation)
|
|
|
NEW: PDF with numbertoword
|
|
|
NEW: Permit multiple file upload in linked documents
|
|
|
NEW: PHP 7.1 compatibility
|