--------------------------------------------------------------
English Dolibarr ChangeLog
--------------------------------------------------------------

***** ChangeLog for 5.0.6 compared to 5.0.5 *****
FIX: Removed a bad symbolic link into custom directory.
FIX: Renaming a resouce ref rename also the directory of attached files.

***** ChangeLog for 5.0.5 compared to 5.0.4 *****
FIX: #7075 : bad path for document
FIX: #7156
FIX: #7173
FIX: #7224
FIX: #7226
FIX: #7239
FIX: add supplierproposaldet without price (new product)
FIX: amount overlap other amount when a pagebreak is done due to an image at the bottom of page.
FIX: Bad tax calculation with expense report
FIX: Best buy price calculation
FIX: Buying prices must always be in positive value.
FIX: calculate correct remain to pay for planned bank transactions
FIX: delete linked element on facture rec
FIX: edit sociale was emptying label
FIX: Error when updating thirdparty not returned
FIX: holidays with postgresql like on rowid integer
FIX: id of user not saved when making a payment of expense report
FIX: invoice page list
FIX: invoice situation VAT total rounding into PDF crabe
FIX: PgSQL compatibility.
FIX: remove order rights on invoice page
FIX: status were wrong on product referent list
FIX: supplier id was not passed to hooks
FIX: Support of vat code when using price per customer
FIX: User id correction on holiday request
FIX: value of user id filled to 0 in llx_bank_url when recording an expense report.
FIX: we have to check if contact doesn't already exist on add_contact() function
FIX: We should be able to insert data with value '0' into const
FIX: install process with DoliWamp

***** ChangeLog for 5.0.4 compared to 5.0.3 *****
FIX: #5640 Prices of a predefined product/service were incorrect under certain circumstances
FIX: #6541 since 4.0.4 to 5.0.0 autofill zip/town not working
FIX: #6880 #6925
FIX: #6885
FIX: #6926
FIX: #7003
FIX: #7012
FIX: #7040
FIX: #7048 #6075
FIX: Can set supplier invoice to billed.
FIX: Can't create invoice if PO disapproved
FIX: contratligne update
FIX: CVE-2017-7886
FIX: default param
FIX: Line of invoices not inserted when using POS module and VAT NPR.
FIX: origin & originid on supplierproposal
FIX: Redirect to payment page from member subscription page failed if a unique security key was defined.
FIX: REST api to get project when user has permission to read all.
FIX: situation_progress param default value must be 100 and not 0
FIX: SQL injection on user/index.php parameter search_statut.
FIX: vat code not saved during product creation.
FIX: Warnings

***** ChangeLog for 5.0.3 compared to 5.0.2 *****
FIX: #6677 Expired contracts dashboard box does not show the name of the thirdparty
FIX: #6813
FIX: 6863
FIX: #6877
FIX: #6881
FIX: Better sanitizing of search all parameter.
FIX: Correction with author and validator user on orders
FIX: dialog window with md theme must not be hidden by left menu part.
FIX: doactions hook missing in invoice model page
FIX: Fullname when member is a moral entity with no name.
FIX: Link to files on bank account tab broken with multicompany FIX: Link to preview on thirdparty broken with multicompany
FIX: New vat code not correctly implemented if "1 price per customer".
FIX: Pagination of invoices
FIX: pagination on resources
FIX: REST API not possible to add agendaevents
FIX: situation invoice broken due to the all percent application form inside addline form
FIX: SQL injection on user/index.php parameter search_statut.
FIX: XSS

***** ChangeLog for 5.0.2 compared to 5.0.1 *****
FIX: #6468 + Fix missing translation
FIX: #6517 #6525 Autocompletion of thirdparty after n chars not implemented
FIX: #6613 Default subject for Supplier proposal emails is filled with a non-existing key
FIX: #6614
FIX: #6619 Template invoices list do not respect restricted thirdparty user rights
FIX: #6621 Documents tab shows greyed out upload form even if the option to show actions not available is disabled
FIX: #6623 User card shows "Return to list" link even if the user has no rights to list users
FIX: #6636 Complete fix
FIX: #6669 User with no permission to edit customer invoices can see a edit button in project entry
FIX: #6671 Cannot remove thirdparty type with "#" in its name
FIX: #6673 Missing "nature" table header in thirdparty list
FIX: #6675 Restricted user with no agenda permissions can see a button to create appointment in thirdparty contact list
FIX: #6679 User with restricted supplier invoice permissions can edit project, payment conditions, payment mode
FIX: #6680 User with restricted supplier invoice permissions sees "reopen" button even if he has no permission to do it
FIX: #6718 Bug: Discount amount is not locally formatted in CommonObject View
FIX: #6767 serious critical error, no login possible with postgresql and ipv6.
FIX: #6795 #6796
FIX: Add option MAIN_MAIL_USE_MULTI_PART to include text content into HTML email and add option MAIN_MAIL_ADD_INLINE_IMAGES_IF_IN_MEDIAS to restore the inline images feature.
FIX: ajax autocomplete on clone
FIX: A non admin user can not download files attached to user.
FIX: Can't download delivery receipts (function dol_check_secure_access_document)
FIX: complete hourly rate when not defined into table of time spent
FIX: dont get empty "Incoterms : - " string if no incoterm
FIX: dont lose supplier ref if no supplier price in database
FIX: Enter a direct bank transaction
FIX: extrafield css for boolean type
FIX: forgotten parameter for right multicompany use
FIX: Found duplicate line when it is not.
FIX: global $dateSelector isn't the good one, then date selector on objectline_create tpl was hidden
FIX: Journal code of bank must be visible of accountaing module on.
FIX: length_accounta return variable name
FIX: limit+1 dosn't show Total line
FIX: No filter on company when showing the link to elements.
FIX: overwrapping of weight/volume on rouget template
FIX: Several bugs in accounting module.
FIX: shared bank account with multicompany not visible in invoice setup
FIX: spaces not allowed into vat code
FIX: supplier default condition not retrieved on create
FIX: supplier order line were always created with rang = 0

***** ChangeLog for 5.0.1 compared to 5.0.0 *****
FIX: #6503: SQL error in "Last pending payment invoices"
FIX: #6505 Project elements page shows greyed-out links even if the option to show actions not available is disabled
FIX: #6507: Statistics counter show wrong total Contract numbers when the user does not have full access
FIX: #6533 #6590
FIX: #6535
FIX: bank account not visible on payment card
FIX: colspan
FIX: Data lost during merge of thirdparties
FIX: Detection of color brightness
FIX: Filter on date lost after submit on time spent page
FIX: forgottent fk_unit field on llx_supplier_propaldet
FIX: list of projects
FIX: LOG_ERROR does not exists. Use LOG_ERR.
FIX: Missing total on project overview.
FIX: multicurrency management on supplier order/invoice
FIX: Notification sending was broken.
FIX: origin & origin id on supplier order line
FIX: param php doc
FIX: Picto of project on dol_banner and box
FIX: Some errors when downloading files.
 
***** ChangeLog for 5.0.0 compared to 4.0.* *****
For users:
NEW: Add module mulicurrency.
NEW: Add module accoutancy expert (double party accountancy). 
NEW: Better responsive design, above all on smartphone.
NEW: #5801 More complete change to allow to disable supplier invoice document generation.
NEW: #5830 Can choose a generic email or use remail in the mail from field.
NEW: #5896 More complete data on event sent by email (name in title, emails list in details)
NEW: Add a better icon to show when "run" in cron jobs is disabled.
NEW: Add account statement into fields of bank account transaction list.
NEW: Add a direct debit mandate PDF template.
NEW: add clone contract feature.
NEW: Add color regarding stock even on ajax autocompleter product selector.
NEW: Add date into list of print jobs for Google Print.
NEW: add field and filters on turnover by third party report.
NEW: Add last activation date as info in module list.
NEW: add option to limit stock product by warehouse.
NEW: Add missing unique key on table llx_links.
NEW: Add option "Hide images in Top menu".
NEW: Add option PROJECT_LINES_PERWEEK_SHOW_THIRDPARTY to show thirdparty on page to submit time.
NEW: Add option "Stock can be negative". Off by default.
NEW: Add option SUPPLIER_ORDER_3_STEPS_TO_BE_APPROVED.
NEW: Add hidden option to include parent products too in stats of orders (not supported in rest of app yet).
NEW: Add Panama datas.
NEW: Add ressource extrafields.
NEW: add restrictions on standard exports (agenda, order, deplacement, facture, fournisseur, societe, propal, expedition)
NEW: Add substitution keys __SHIPPINGTRACKNUM__, __SHIPPINGTRACKNUMURL__ into shipping email template.
NEW: Add status Done on interventions.
NEW: Add system tool "Files integrity checker" to detect modified files for packaged versions.
NEW: Add tooltip in payment term edition in dictionnary.
NEW: Add type "url" as possible extrafield.
NEW: Add workflow to calculated supplier order status on stock dispatch.
NEW: Add workflow to classifed propal bill on invoice validation.
NEW: allow to save a parent warehouse.
NEW: Better filtering of automatic/manually inserted events.
NEW: Bill orders from order list.
NEW: Can add event from the card listing events.
NEW: Can change thirdparty when cloning a project.
NEW: Can create expense report for someone else (advanced permission). 
NEW: Can clone an expense report.
NEW: Can edit a label for each price segment when using several segment prices for products.
NEW: Can filter on fields on admin translation page.
NEW: Can filter on project/task ref/label on the "new time consumed" page.
NEW: Can filter on status on objects on the "statistics" pages.
NEW: Can filter on type of leave requests in list.
NEW: Can generate SEPA mandate for each bank account of your customers.
NEW: Can see/make bank conciliation from bank transaction list.
NEW: Can edit RUM number of a customer bank account.
NEW: Can link template invoice to other objects. Generated invoices will be linked to same objects (example: contracts).
NEW: Can renamed attached files on some documents tabs (like products and expense reports).
NEW: Can see/edit the customer ref of a shipment.
NEW: Can select fields/extrafields on contract list + Mass delete action.
NEW: Can select fields on expense report list. Can make mass delete.
NEW: Can select fields to show on list of bank transaction.
NEW: Can set to paid automatically social or fiscal taxes after a payment was recorded.
NEW: Can sort on status of recurring invoice in list of template invoices.
NEW: Can use native php and dolibarr object on pages of module website.
NEW: Checkbox 'close order to "Everything received" automatically if all products are received' is visible on supplier orders.
NEW: conf to allow payments on different thirdparties bills but same parent company.
NEW: Consumption view on thirdparty total line and total HT by element.
NEW: Display bookkeeping by accounting account - Bookkeeping ordered by accounting account - Link with customers and suppliers invoices - Sub Total by accounting account - Ability to display more than 25 lines and filter by customer/supplier, invoice and accounting account
NEW: Each user can select its landing page (on tab "user display setup").
NEW: Editing translation GUI become easier with tool to search existing translation.
NEW: Error code of each email sent is visible in list of email targets
NEW: Export thirdparty with payment terms and mode.
NEW: filter actiontype on thirdparty tab.
NEW: filter by supplier and fk_warehouse on replenishment page.
NEW: Filters can accept generic search key like __DAY__, __MONTH__, __YEAR__ replaced with current day, month year before making the search.
NEW: Function "crop" images available on project, product and holiday attachment tab.
NEW: function to display full path to current warehouse.
NEW: Generation of document is available on member card.
NEW: Introduce mass action "delete" on sales orders.
NEW: Introduce option MAIN_DEFAULT_PAYMENT_TERM_ID to set default payment term on company level.
NEW: introduce option PROJECT_DISABLE_PRIVATE_PROJECT and PROJECT_DISABLE_PUBLIC_PROJECT.
NEW: Link between objects can be done on both side and on all objects.
NEW: More filter on bank transaction list.
NEW: Mutualize mass action. So "Send by email" is also available on orders.
NEW: New set of icon for status easier to understand.
NEW: option "Current/Next" for limit payment date (in payment term dictionary setup) to use a specific day of current month or jump to same day of next month.
NEW: Option DOC_SHOW_FIRST_SALES_REP shows name of "user buyer or saler" on PDF.
NEW: Option MAIN_INFO_SOCIETE_MAIL_ALIASES to be able to use several identities into the "email from".
NEW: Pagination available on list of users.
NEW: Phone formatting for Canada. Add dol_print_phone into phpunit tests.
NEW: Reduce nb of picto visible after reference of an object into lists, merging preview and download.
NEW: Reduce space lost on EDM module.
NEW: Reopen a paid bill is a user advanced permission.
NEW: can set a default bank account on thirdparty card.
NEW: Show photo of contacts on thirdparty card.
NEW: Show subtotal into list of linked elements.
NEW: Show total line (planned workload and time spent) on list of tasks.
NEW: Start to introduce search filters on dictionnaries for vat list.
NEW: Support extrafields for expense reports.
NEW: Support extrafields on product lot.
NEW: Support free bottom text and watermark on expense report template.
NEW: Support mass actions for proposals
NEW: Table with list of lots/serial can be viewed (module product batch).
NEW: The autofill zip/town table option is on by default.
NEW: the count of linked files on card includes external links.
NEW: Usage of vat code seems ok everywhere.
NEW: User date of employment added.
NEW: Use small photo of user on all user links.
NEW: Use new archi to select fields into list of time spent.
NEW: Available substitution key (__INVOICE_MONTH__, __INVOICE_PREVIOUS_MONTH__, ...) to use into note text of recurring invoices.

For developers:
NEW: Add ORDER_MODIFY trigger on each order modification.
NEW: Trigger on delete stock
NEW: The getURLContent return more information on success and error.
NEW: Uniformize code and correct deal with triggers
NEW: REST API explorer. Can create invoice and orders with lines.
NEW: Add a lot of API REST: expense reports, orders, commercial proposals, projects, agenda events, users, invoices, ...
NEW: Default collation for mysql is now utf8_unicode_ci
NEW: Can use any filter on all REST API to list.
NEW: ckeditor accept a parameter to disable all html filtering.
NEW: Complete table llx_ecm_files with field generated_or_uploaded
NEW: Enhance function setValueFrom so we can use it for "edit in form" feature.
NEW: getNomUrl displays full path to warehouse
NEW: Hook formObjectOptions
NEW: hook in element overview
NEW: Hook on stock product card
NEW: param socid find_min_price_product_fournisseur() function
NEW: More phpunit tests

WARNING: 

Following changes may create regression for some external modules, but were necessary to make
Dolibarr better:
- Function delete of class Facture (invoice) need the object $user as first parameter. Also you must
  check you make a fetch on object before calling the delete.
- The old driver of "mysql" has been removed. Dolibarr use the new one (mysqli) by default.
- Remove not used function calculate_byte(). Use dol_print_size() instead.
- Function pdf_getTotalQty is now deprecated. Not used by Dolibarr core.
- Method commande->deleteline($lineid) has been replaced with commande->deleteline($user, $lineid).
- Method expensereport->delete(id, user) has been replaced with ->delete(user)
  Method warehouse->delete(id) has been replace with ->delete(user)
  This is to follow good practice to make a fetch on object before deleting it.
- The form to add a product to a draft proposal/order/invoice, from the product card, is hidden by default.
  It was not commonly used and usage generates some problems (cost price for margin calculation not entered, vat setting).  
  Set constant PRODUCT_ADD_FORM_ADD_TO to retrieve it.
- The javascript "datatables" library was previously provided into Dolibarr sources, but it was not used by application.
  So there is no reason to maintain its compatibility with other dolibarr components. If an external module need this 
  library, this external module must embed the library in his own sources/packages.
- Trigger name SUPPLIER_PROPOSAL_CREATE has been renamed into PROPOSAL_SUPPLIER_CREATE.
- A new paramater sqlfilters was introduced to allow filter on any fields int the REST API. Few old parameters,
  no more required, were also removed. Use this new one if you were using one of them.
- The trigger that activate or close a contract line is run on a contract line, not on contract.
- Method commande->set_availability(user, availability_id) removed from commande class, use method commande->availability(availability_id, notrigger).

Dolibarr 5.0 was frozen before PHP 7.1 was released. Unit tests are successful on PHP 7.1 but we don't have enough
feedback to confirm whole application is compatible. Current officiel supported PHP versions are PHP 5.3 to 7.0.


***** ChangeLog for 4.0.6 to 4.0.5 *****
FIX: #6613 Default subject for Supplier proposal emails is filled with a non-existing key
FIX: #6623 User card shows "Return to list" link even if the user has no rights to list users
FIX: #6636 Complete fix
FIX: #6669 User with no permission to edit customer invoices can see a edit button in project entry
FIX: #6671 Cannot remove thirdparty type with "#" in its name
FIX: #6673 Missing "nature" table header in thirdparty list
FIX: #6675 Restricted user with no agenda permissions can see a button to create appointment in thirdparty contact list
FIX: #6677 Expired contracts dashboard box does not show the name of the thirdparty
FIX: #6679 User with restricted supplier invoice permissions can edit project, payment conditions, payment mode
FIX: #6680 User with restricted supplier invoice permissions sees "reopen" button even if he has no permission to do it
FIX: #6813
FIX: Correction with author and validator user on orders
FIX: doactions hook missing in invoice model page
FIX: dont get empty "Incoterms : - " string if no incoterm
FIX: dont lose supplier ref if no supplier price in database
FIX: forgotten parameter for right multicompany use
FIX: global $dateSelector isn't the good one, then date selector on objectline_create tpl was hidden
FIX: limit+1 dosn't show Total line
FIX: supplier order line were always created with rang = 0


***** ChangeLog for 4.0.5 to 4.0.4 *****
FIX: #6234
FIX: #6259
FIX: #6330
FIX: #6360
FIX: #6411
FIX: #6443
FIX: #6444
FIX: #6453
FIX: #6503: SQL error in "Last pending payment invoices"
FIX: #6505 Project elements page shows greyed-out links even if the option to show actions not available is disabled
FIX: #6507: Statistics counter show wrong total Contract numbers when the user does not have full access
FIX: #6533 #6590
FIX: #6619 Template invoices list do not respect restricted thirdparty user rights
FIX: #6621 Documents tab shows greyed out upload form even if the option to show actions not available is disabled
FIX: add entity param to document link
FIX: Can use quote into supplier ref on order line add
FIX: Change the customer code only if error on duplicate
FIX: Creation of credit note on invoice with deposit stole the discount.
FIX: delete bank class lines when we delete bank_categ
FIX: deletion of bank tag
FIX: detail of deposit and credit not was not visible into final invoice
FIX: Error management during bank account creation
FIX: error management in bank account deletion.
FIX: event status is not modified when assign an user
FIX: forgotten fk_facture_fourn attribute on supplierinvoice line object
FIX: If bank module on, field must be required to register payment of expense report.
FIX: load multicurrency informations on supplier order and bill lines fetch
FIX: Missing total on project overview.
FIX: multicurrency_subprice
FIX: param billed when we change page
FIX: protection against infinite loop on hierarchy
FIX: Supplier Order list filter by project
FIX: the dolCopyDir fails if target dir does not exists.
FIX: use param for http links

***** ChangeLog for 4.0.4 to 4.0.3 *****
FIX: #6227 Document models table header "Unit" is shown in 2 lines in Spanish
FIX: #6230
FIX: #6237
FIX: #6245 Thirdparty link in supplier invoices list, links to "comm/card" instead of "fourn/card" page
FIX: #6253 Supplier invoice list filter does not respect "thirdparty" filter
FIX: #6277
FIX: project list and ajax completion return wrong list.
FIX: bug margin calculation by user with multicompany
FIX: Can make a stock transfert on product not on sale/purchase.
FIX: extrafield input for varchar was not working with special char within (ie double quotes)
FIX: javascript error
FIX: link for not found photo when using gravatar. Must use external url.
FIX: Protection so even if link is output for external user, links is disabled.
FIX: repair tool was ko to restore extrafields with type select.
FIX: Security access problem with external users on projects/tasks
FIX: We must not drop extrafield column if there is still record on other entities.
FIX: regression with sedning email when introducing security options to restrict nb of email sending.
t 
***** ChangeLog for 4.0.3 to 4.0.2 *****
FIX: #5853 $conf->global->$calc==0 || $conf->global->$calc==1
FIX: #5958 no discount on supplier command made by replenishment
FIX: #5966 Bug: getNomUrl tooltips show Proposal info even if user has no rights to read them
FIX: #5972 #5734
FIX: #6007
FIX: #6010
FIX: #6029
FIX: #6043 - Payment mode not visible on supplier invoice list
FIX: #6051
FIX: #6062
FIX: #6088
FIX: A draft can be deleted by a user with create permission.
FIX: bad permission to see contract on home page
FIX: bad permission to see contract statistics
FIX: Bcc must not appears to recipient when using SMTPs lib
FIX: Consistent description for add or edit product
FIX: delete contract extrafields on contract deletion
FIX: Deposits and credit notes weren't added in the received and pending columns
FIX: export extrafields must not include separe type
FIX: Export of opportunity status must be code, not id.
FIX: False positive on services not activated
FIX: Filter was wrong or lost during navigation
FIX: HT and TTC price should always be displayed together
FIX: if a supplier price reference is changed after creating an order, we can't clone order.
FIX: in export. Error when using a separate extrafields.
FIX: Introduce hidden option MAIL_PREFIX_FOR_EMAIL_ID to solve pb of tracking email.
FIX: javascript error when using on mobile/smartphone
FIX: javascript xss injection and a translation
FIX: Label of project is in field title not label.
FIX: List of people able to validate an expense report was not complete.
FIX: Missing field
FIX: Module gravatar was not triggered on thirdparty and contact card
FIX: Must use external link into a forged email content.
FIX: Pb in management of date end of projects
FIX: Regression when deleting product
FIX: rendering of output of estimated amount on project overview page.
FIX: Sanitize title of ajax_dialog
FIX: Security to restrict email sending was not efficient
FIX: Setting supplier as client when accept a supplier proposal
FIX: Some statistics not compatible with multicompany module.
FIX: the time spent on project was not visible in its overwiew
FIX: Update intervention lline crash with PgSQL
FIX: wrong test on dict.php
FIX: wrong var name

***** ChangeLog for 4.0.2 compared to 4.0.1 *****
FIX: #5340
FIX: #5779
FIX: #5849
FIX: #5866
FIX: #5907
FIX: Addline if $txlocaltax1 is empty
FIX: Avoid error 500 if phpexcel is disabled
FIX: Avoid errors on debian
FIX: Can edit the customer ref even if order is not draft.
FIX: Documents not moved in new directory if we change reference of the task.
FIX: Error when CATEGORIE_RECURSIV_ADD is enabled and new category is child of an already linked to object
FIX: Extra fields of task not copied on project cloning
FIX: Hidden option PRODUCT_MAX_VISIBLE_PHOTO
FIX: Link on supplier invoice in widget was not clickable
FIX: margin tab on customer card must filter on current entity invoices
FIX: missing column into SQL on thirdparty list
FIX: Nber of attached files were not reported in event report of email sent
FIX: only show projects of related third if external user
FIX: Search provider by price
FIX: Solve backup when using mysqldump that return warning
FIX: Sql error in widget of product for stock alerts
FIX: updateligne if $txlocaltax1 is null

***** ChangeLog for 4.0.1 compared to 4.0.0 *****
FIX: #2853
FIX: #2991
FIX: #3128
FIX: #5699
FIX: #5734
FIX: #5742 error on project list if an extra field separator is added.
FIX: #5746 chrome php Try a fix. Not sure it solved all problems reported
FIX: #5748 Bug: Error updating to 4.0.1 with Postgresql. Field must be varchar.
FIX: #5750 Bug: CmailFile::server_parse enters an infinite loop if $server_response is false
FIX: #5752 Bug VAT NPR not propagated during proposal cloning
FIX: #5763 Bug: Cannot Create Supplier Price Request
FIX: #5770 Dolibarr doesn't modify correctly the hour of a task
FIX: #5776
FIX: #5802 Incoterms not set
FIX: #5813 Bug: Incoterms not being read correctly
FIX: #5818
FIX: alignement of intervention status
FIX: Clean of search fields
FIX: Creation of donation should go back on card after creation
FIX: Date visible on project overview
FIX: Execute a dedicated job from its id may results of launching other jobs too.
FIX: Failed to export contact categories with contact extra fields
FIX: inversion customer/supplier price
FIX: link "back to list" was not visible.
FIX: Lost filter on opportunities
FIX: Mandatory field payment term was not css highlighted.
FIX: Menu users not visible on dolidroid.
FIX: SEC for HTB23302
FIX: The email test sender in email setup was broken
FIX: Translation of "Name" is not a good choice for floow-up.
FIX: Update of maxnbrun on job list failed.
FIX: Value of payment term and project are not set on correct default value when invoice generated from template.
FIX: vat dictionary should allow enter and edit multiple values for localtaxes, separated by: (ex -19:-15)
FIX: Vat not visible in dictionnary

***** ChangeLog for 4.0.0 compared to 3.9.* *****
For users:
NEW: Add recurring invoice feature and automatic generation of invoices.
NEW: Add module "Loan" as stable.
NEW: Add module "Supplier commercial proposal" (price request) with stable status.
NEW: Can select dynamicaly number of lines to show on page on product, shipment, contact, orders, thirdparties. 
NEW: Can select fields to show on list also for list of customer orders, supplier orders, shipments, proposals and invoices.
NEW: Show into badge on tab head, the number of dedicated contacts for all objects.
NEW: Add a checkbox to select/unselect all lines on page that support mass actions (like invoice list page)
NEW: Add a new method for margin calculation. Added margin on "cost price" in addition to margin on WAP price and margin on "best supplier price".
NEW: Add an explanation message on shipment page to explain you can't make shipment if order is not validated
NEW: Add date_rum into table of thirdparty bank account.
NEW: The probability of lead/opportunity can be defined per lead.
NEW: Added Malta VAT into migration script
NEW: Add Expense report into accountancy report
NEW: Add Expense report to approve into workboard 
NEW: Selection of boxes is moved on top of home page
NEW: Add filter on a keyword, status and nature into list of modules.
NEW: Add hidden option BANK_DISABLE_CHECK_DEPOSIT to disable check deposit feature.
NEW: Add hidden option MAIN_PUBLIC_NOTE_IN_ADDRESS
NEW: Add index on invoice status 
NEW: Add constant MAIN_LOGTOHTML to 0 into setup by default to save time when we need to make debug on hosted instance.
NEW: Add list of billed
NEW: Add minimum stock and desired stock into import/export profiles. 
NEW: Add state into thirdparty export fields.
NEW: Add more trackable events (create, submit and receive supplier order).
NEW: Add hidden option MAIN_PROPAGATE_CONTACTS_FROM_ORIGIN
NEW: Add picto on module list to show warning and if module is an external module.
NEW: Add product type filter on turnover report
NEW: Add state into list of fields available for personalized fields of thirdparties
NEW: Add statistics for interventions module
NEW: Add statistics on number of projets on home page
NEW: Add statistics and late records into dashboard for supplier proposals.
NEW: Add the admin info on combo of type of contact
NEW: Add the event BILL_PAYED to the list of supported events for module notification.
NEW: Add total weight and volume on PDF. 
NEW: Add hidden option to hide column qty ordered on shipments.
NEW: Add view of virtual stock into product list (when appropriate)
NEW: Add warning on tasks when they are late (add also the warning tolerance parameter)
NEW: Add weight/volume for one product into shipment export
NEW: Add width and height on product table
NEW: allow a document to be linked to project from another customer on config
NEW: allow project to be shared across entities (for multicompany module)
NEW: All variant of ckeditor config can be tested into the setup page of module.
NEW: Can change dynamically number of records visible into lists.
NEW: Can change type of extrafields (for some combinations only).
NEW: Can define number of first and last line to import into import wizard.
NEW: Can edit next execution date of a cron job.
NEW: Can edit value date of a vat payment after recording it.
NEW: Can filter modules on publisher.
NEW: Can filter on employee status when building emailing from users.
NEW: Can reopen an closed shipment.
NEW: Can search on shipments into the quick search box.
NEW: Can select language from a combo list on page to overwrite a translation.
NEW: Can select number of lines on page list for projects and tasks.
NEW: Can use ^ and $ (to say start with or end with like regex syntax) into search fields when search field is text. Bonus: ^$ can filter all lines with field not defined.
NEW: Clean and enhance code for cron engine
NEW: Can decrease stock on shipment closing/classifying (only if module lot is not enabled for the moment)
NEW: Disabled users are striked.
NEW: Enhance navigation of project module
NEW: fichinter lines ordered by rang AND DATE
NEW: hidden conf to use input file multiple from mail form
NEW: hidden feature: SUPPLIER_ORDER_WITH_NOPRICEDEFINED allow supplier order even if no supplier price defined
NEW: Hidden option MAIN_LANDING_PAGE to choose the first page to show after login works as a "global" option (llx_const) and as a "per user" option (llx_user_param).
NEW: Holiday is a now a RH module. All RH module provides by default visilibity on users of its hierarchy.
NEW: If error is reported during migration process, you can ignore it to avoid to be locked.
NEW: if nb total of lines provided in print barre_liste, display in title
NEW: If option to see non stable modules is on, add a filter into module list to filter on level (deprecated, experimental, development)
NEW: Include number of linked files into badge counter of "Linked files" tab.
NEW: Include sales representative into export of thirdparties
NEW: Indicator on workboard are red/green if late or not.
NEW: Into GED module, filename is truncated only if there is not enough space into table
NEW: Introduce a predefined job to run database backup
NEW: Introduce option MAIN_WEIGHT_DEFAULT_UNIT and MAIN_VOLUME_DEFAULT_UNIT to force output unit for weight and volume.
NEW: Introduce position of records into dictionnary of type of contacts
NEW: Link on a user in leave page reach to leave tab of user.
NEW: List of user in agenda view per user show photo thumb.
NEW: Margins module - Check/update buying price on invoice lines
NEW: Merge all admin tools (system and module admin tools) into same entry "Admin tools", so now things are clear: All features restricted to an admin user is inside "setup" (for setup) or "admin tools" (for action tools) instead of 3 different entries.
NEW: Merge all boxes "related objects" into one. This save a lot of room on most card and avoid often horizontal scoll.
NEW: Moved code that deals with bank categories to BankCateg. Created BankCateg::fetchAll function
NEW: Move HRM dictionary from module to core dictionaries.
NEW: Mutualize code to manage email substitution variables. Show available variables into page to edit email templates.
NEW: Mutualize code: Use one call of function "addThumbs", when possible, to generate thumbs files instead of several call of "vignette" function.
NEW: On translation admin page, admin can overwrite a translation value.
NEW: Option MAIN_LIST_FILTER_ON_DAY is supported on proposal list.
NEW: Add reputation field for price supplier.
NEW: Selection of fields is available on member list.
NEW: Show a badge with number of withdraw requests done on the withdraw tab of invoice.
NEW: Add option to show detail per warehouse into reassort.
NEW: Show total number of modules into the module list.
NEW: Survey system has now a status like other objects. You can close or reopen a survey.
NEW: The note on time spent can be entered when using the "view per day".
NEW: Use ellipsis truncation on too large left menu text.
NEW: When a new field to show into lists is selected, the form is automatically submited and field added.
NEW: When creating a template invoice from a draft invoice, if there is link to contract on draft invoice, link is kept on template invoice.
NEW: When emailing is not sent completely, show progression.
NEW: Experimental module Accountancy Expert.
NEW: Experimental module Multicurency

For developers:
NEW: Add entity field in llx_societe_remise_except and llx_societe_remise.
NEW: Rest API token is no more reset at each call. We can reset it with param reset=1 on login call.
NEW: Add html id/class to locate value in the DOM html
NEW: Add a css class style called 'reposition', so when clicking on a link with this class will move scrollbarr to be placed at same page location.
NEW: TimeZone can be supplied to mktime
NEW: hook in shipment card
NEW: Deprecated Societe::set_prospect_level, Societe::set_commnucation_level, Societe::set_OutstandingBill functions
NEW: A module can add, into its import profiles, a sql request to execute at end of import. This allow to update dernormalized data after import.
NEW: Add hook pdf_build_address 
NEW: Add a parameter on graph function to show a generic graph when no data are available.
NEW: Add $object in parameter of pdf_build_address so we could include hook into the function.
NEW: Add a tool for developers to purge database with no loose of setup
NEW: Can disable a module by renaming dir of module into module.disabled (this save time for maintenance when working with FTP).
NEW: Created AccountLine::insert function and started using it for transaction creation
NEW: Created Account::__toString, Account::getFieldsToShow and Account::getAccountNumberOrder to refactor the way account number was shown
NEW: Created FormBank::getIBANLabel function to get the label of "IBAN" depending on bank account country
NEW: prepare for additional warehouse statuses
NEW: project sharing in select_projetcs_list function
NEW: Removed deprecated CommonObject::client property. Please use CommonObject::thirdparty instead
NEW: Removed unused FormOrder::selectSourcesCommande function
NEW: Renamed ActionComm::add function to ActionComm::create
NEW: Rename Form::select_date to Form::selectDate and Form::form_date to Form::formDate
NEW: Rename path for generic media files
NEW: More phpunit tests. Include some REST API into automatic tests.
NEW: Move Expense report menu from module to menu files.


WARNING: 

Dolibarr 4.0 should be compatible with PHP 7 but more feedbacks are still expected to confirm that.

Following changes may create regression for some external modules, but were necessary to make
Dolibarr better:
- Function log() of class CommandeFournisseur has been removed. Using it is no more required.
- Class Resource was renamed into DolResource to avoid conflict with a reserved PHP word.
- Method commonobject->add_thumb() has been renamed into commonobject->addThumbs().
- Method select_type_comptes_financiers() has been renamed into selectTypeOfBankAccount() 
- Property ->client that was deprecated 6 years ago, is replaced in all core code with ->thirdparty.
- File '/core/tpl/document_actions_pre_headers.tpl.php' were renamed into '/core/actions_linkedfiles.inc.php'.
So if you included it into your module, change your code like this to be compatible with all version:
  $res=@include_once DOL_DOCUMENT_ROOT . '/core/actions_linkedfiles.inc.php';
  if (! $res) include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_pre_headers.tpl.php';



***** ChangeLog for 3.9.4 compared to 3.9.3 *****
FIX: #2853
FIX: #3128
FIX: #4447
FIX: #5128 if create method return duplicated code error not use GETPOST in order to get a new code
FIX: #5340
FIX: #5473
FIX: #5474 Country_id of "Don" object is still empty
FIX: #5534
FIX: #5535 bad dependency.
FIX: #5537 AJAX project search does not work properly
FIX: #5540 getFormMail is not registered as addReplace hook
FIX: #5544 Disabled Contact still appear in lists to send emails
FIX: #5549 getNomUrl tooltips show Order info even if user has no rights to read them
FIX: #5568
FIX: #5594
FIX: #5629 PgSQL Interger string stylish error
FIX: #5651
FIX: #5660
FIX: #5853 $conf->global->$calc==0 || $conf->global->$calc==1
FIX: #5907
FIX: #5966 Bug: getNomUrl tooltips show Proposal info even if user has no rights to read them
FIX: #6051
FIX: #6088
FIX: Can correct stock of lot using eatby or sell by date
FIX: Can make a movement on "out of sell" products
FIX: cannot update bank account on invoice if module order not activated
FIX: Can't create withdrawal document
FIX: delete contract extrafields on contract deletion
FIX: Direction of movement lost if an error occurs
FIX: Error when CATEGORIE_RECURSIV_ADD is enabled and new category is daughter of an already linked to object
FIX: export extrafields must not include separe type
FIX: External user must not be able to edit its discounts
FIX: Failed to export contact categories with contact extra fields
FIX: header title in commercial area
FIX: HT and TTC price should always be displayed together
FIX: incoterms
FIX: incoterms do not output into crabe invoice PDF
FIX: in PgSQL no quote "word style" is permitted around column name
FIX: Introduce hidden option MAIL_PREFIX_FOR_EMAIL_ID to solve pb of tracking email.
FIX: margin tab on customer card must filter on current entity invoices
FIX: missing column into SQL on thridparty list
FIX: only show projects of related third if external user
FIX: PgSQL Module Ressource list crash #5637
FIX: php Strict
FIX: Regression when deleting product
FIX: Security to restrict email sending was not efficient
FIX: tag for date rfc in odt substitution
FIX: Update intervention lline crash with PgSQL
FIX: update limit stock on product stock
FIX: vat dictionary should allow enter and edit multiple values for localtaxes, separated by: (ex -19:-15)
FIX: wrong test on dict.php


***** ChangeLog for 3.9.4 compared to 3.9.3 *****
FIX: #2853
FIX: #3128
FIX: #4447
FIX: #5128 if create method return duplicated code error not use GETPOST in order to get a new code
FIX: #5340
FIX: #5473
FIX: #5474 Country_id of "Don" object is still empty
FIX: #5534
FIX: #5535 bad dependency.
FIX: #5537 AJAX project search does not work properly
FIX: #5540 getFormMail is not registered as addReplace hook
FIX: #5544 Disabled Contact still appear in lists to send emails
FIX: #5549 getNomUrl tooltips show Order info even if user has no rights to read them
FIX: #5568
FIX: #5594
FIX: #5629 PgSQL Interger string stylish error
FIX: #5651
FIX: #5660
FIX: #5853 $conf->global->$calc==0 || $conf->global->$calc==1
FIX: #5907
FIX: #5966 Bug: getNomUrl tooltips show Proposal info even if user has no rights to read them
FIX: #6051
FIX: #6088
FIX: Can correct stock of lot using eatby or sell by date
FIX: Can make a movement on "out of sell" products
FIX: cannot update bank account on invoice if module order not activated
FIX: Can't create withdrawal document
FIX: delete contract extrafields on contract deletion
FIX: Direction of movement lost if an error occurs
FIX: Error when CATEGORIE_RECURSIV_ADD is enabled and new category is daughter of an already linked to object
FIX: export extrafields must not include separe type
FIX: External user must not be able to edit its discounts
FIX: Failed to export contact categories with contact extra fields
FIX: header title in commercial area
FIX: HT and TTC price should always be displayed together
FIX: incoterms
FIX: incoterms do not output into crabe invoice PDF
FIX: in PgSQL no quote "word style" is permitted around column name
FIX: Introduce hidden option MAIL_PREFIX_FOR_EMAIL_ID to solve pb of tracking email.
FIX: margin tab on customer card must filter on current entity invoices
FIX: missing column into SQL on thridparty list
FIX: only show projects of related third if external user
FIX: PgSQL Module Ressource list crash #5637
FIX: php Strict
FIX: Regression when deleting product
FIX: Security to restrict email sending was not efficient
FIX: tag for date rfc in odt substitution
FIX: Update intervention lline crash with PgSQL
FIX: update limit stock on product stock
FIX: vat dictionary should allow enter and edit multiple values for localtaxes, separated by: (ex -19:-15)
FIX: wrong test on dict.php


***** ChangeLog for 3.9.3 compared to 3.9.2 *****
FIX: #4383 $userid not defined
FIX: #4448 $filebonprev is not used, $this->filename now
FIX: #4455
FIX: #4749
FIX: #4756
FIX: #4828
FIX: #4926
FIX: #4964 buyprice in customer from shipping buyprice wasn't load in expedition::fetch_lines
FIX: #5004
FIX: #5068
FIX: #5170 tva sign with INVOICE_POSITIVE_CREDIT_NOTE option
FIX: #5338 use of not initialized var $aphour, $apmin, etc
FIX: #5343
FIX: #5380
FIX: #5383 bad object id on don delete
FIX: #5414
FIX: #5470 User of expense report in bank transactions page is not correct
FIX: a case of corrupted ODT by Word that insert <text:s> when it should not.
FIX: Can't create thirdparty or validate invoice if profid is mandatory and profid does not exists for other countries
FIX: dasboard wrong for late invoice
FIX: duplicate jquery.js files
FIX: extrafield cloned on project clone
FIX: Failed to open file
FIX: Filter on opportunity amount and budget
FIX: form_confirm to delete payment on supplier invoice
FIX: javascript error with german-switzerland language
FIX: large expense note
FIX: Missing original .js file (license violation if sources are not provided)
FIX: Option strict mode compatibility
FIX: product stats all bloc module without enbaled test
FIX: receiving link never works
FIX: task ODT company object not correctly retrieved
FIX: Translate group perms as it is done into user perms
FIX: We must take the last recent defined price when using price level

***** ChangeLog for 3.9.2 compared to 3.9.1 *****
FIX: #4813 Won translation for the key OppStatusWON instead OppStatusWIN
FIX: #5008 SQL error when editing the reference of a supplier invoice that already exists
FIX: #5236 Cron module activated but "Modules tools" does not appear in the left menu.
FIX: Accountancy - 3.9 - Chart of accounts are limited on only one country
FIX: bug on email template
FIX: Can't create a stock transfer from product card
FIX: can't fetch by siret or siren because of first "if"
FIX: Check stock of product by warehouse if $entrepot_id defined on shippings
FIX: Compatible with multicompany
FIX: Creation of the second ressource type fails.
FIX: end of select when no fournprice
FIX: Filter on assigned to was preselected on current user on list "All events" (instead of no filtering)
FIX: Filter on category tag for suppliers
FIX: hook on group card called but not initialized
FIX: Infinite loop on menu tree output for edition 
FIX: Can show tree of entries added by external modules using fk_mainmenu and fk_leftmenu instead of fk_menu.
FIX: init var at wrong place report incorrect "shippable" flag on draft order.
FIX: It doesn't check if there is enough stock to update the lines of orders/invoices
FIX: Menu statistics was not visible if module proposal was not enabled
FIX: Merge manually PR #5161 - Bad translation key
FIX: missing column when module was installed before standard integration
FIX: Missing number total of modules
FIX: Not filtering correctly when coming from dashboard
FIX: PROPAL_MERGE_PDF with PRODUCT_USE_OLD_PATH
FIX: Remove PHP Warning: Creating default object from empty value.
FIX: same page added several times on mergepropal option
FIX: search on date into supplier invoice list dont work because of status -1
FIX: Search supplier ref on contract
FIX: Split of credit note into discount page generates records not correctly recognised as credit note.
FIX: SQL error function on getAvailableDiscounts function, on bill create mode if socid is empty
FIX: #5087
FIX: #5108
FIX: #5163
FIX: #5195
FIX: #5203
FIX: #5207
FIX: #5209
FIX: #5230

***** ChangeLog for 3.9.1 compared to 3.9.* *****
FIX: #3815 Call to undefined function local_by_date()
FIX: #4424 Missing email of user popup in supplier orders area
FIX: #4442 Missing translation in Banks menu
FIX: #4737 Bank transacion type selector translation is cropped
FIX: #4742 Able to delete a supplier invoice with a registered payment
FIX: #4743 UI glitch in project summary page
FIX: #4747 Missing UI background when registering a supplier invoice payment
FIX: #4748 Supplier invoice payment confirmation amount is not translated
FIX: #4766 VAT not shown in supplier invoice popup
FIX: #4784
FIX: #4809 Duplicate functions with different content
FIX: #4812
FIX: #4839
FIX: #4851 Project selector in supplier invoices shows the project label twice
FIX: #4870
FIX: #4874 SQL error when listing users
FIX: #4880
FIX: #4961
FIX: #4989
FIX: If oauth has never been activated two tables are missing and printing is not working
FIX: A not enabled field for list must not into fields to add
FIX: Bad color of message password changed
FIX: Bad error and style message when changing its own login
FIX: Bad function name call on delete
FIX: Bad include and param for project numbering module call
FIX: bad translation language loaded FIX: When changing thirdparty on event card, the showempty option of contact was lost. FIX: Bad placeholder shown on combo to select a thirdparty.
FIX: Bad vat definition when using POS module
FIX: Box disabled because bugged
FIX: Can not select a commercial on the creation of a third
FIX: Check of EAN13 barcode when mask was set to use 13 digits instead of 12
FIX: correct display of minimum buying price
FIX: Creation of thumb image for size "small" was not done.
FIX: Damn, where was the project ref ?
FIX: Default vat is not set correctly when an error occured and we use VAT identified by a code.
FIX: dont retrieve new buying price on margin display
FIX: Duplicate records into export
FIX: Each time we edit a line, we loose the unit price.
FIX: Email templates not compatible with Multicompany
FIX: Export must use a left join to not loose lines
FIX: fetchAllEMailTemplate
FIX: Filter/search on extrafields on lists
FIX: finished parameters not used
FIX: Generated thumbs must always use the png format so using thumbs can work.
FIX: Hook resprint  be printed
FIX: image extension must be in lower case
FIX: Missing clean of criteria
FIX: Missing database escaping on supplier price insert/update
FIX: Missing function
FIX: Multiprice generator didn't recalculate prices if only the price_base_type property changes
FIX: Not removing code into vatrate.
FIX: Not showing sellprice properly on product list
FIX: Parsing of amount to pay vat
FIX: PHPCS
FIX: PMP is deprecated at warehouse level
FIX: real min buying price
FIX: Same term to create than other objects
FIX: Some records were lost into margin per product report
FIX: systematic rounding causes prices to be updated without reason
FIX: Template email must take care of positino column
FIX: VAT rate can be negative. Example spain selling to morroco.
FIX: When cloning an order the order result from clone must be now
FIX: When using option Price per level, when adding a predefined product, the vat for customer was not correctly set.

***** ChangeLog for 3.9.0 compared to 3.8.* *****
For users:
NEW: A new and more modern look for "eldy" theme.
NEW: Introduce a new theme called "Material Design". 
NEW: #3767 Allow changing multiple prices of a product at once
NEW: Add a button to purge criteria in user list
NEW: Add a filter field to restrict list of member when doing a LDAP list request. Use also this filter into ldap command line script making sync from ldap to dolibarr.
NEW: Add all assigned users and all extrafields data in new event when we createFromClone
NEW: Add hidden option to use standard position address in crabe model For electronic sending solutions
NEW: Add a refresh button on page list of direct print jobs.
NEW: Add a tab "document" in donation card
NEW: Add cancel button on thirdparty create page
NEW: Add chart of product statistics
NEW: Add color on categories
NEW: Add date value filter on account records list
NEW: Add __PROJECT_NAME__ tag for customer invoice emails
NEW: Add option PDF_ALLOW_HTML_FOR_FREE_TEXT to be able to enter pdf footer text with wysiwyg editor.
NEW: Add fields into llx_cronjobs to be able to use job table to queue one shot jobs.
NEW: Add filter on status on invoice list
NEW: Add filter on status on shipments
NEW: Add gender property managed on user card FIX: Better error messages when uploading photo of user when permission to write are not granted
NEW: Add help tooltips on fields of dictionary edit pages.
NEW: Add hidden option MAIN_MAILFORM_DISABLE_ENTERKEY to disable the key enter into the form to send email.
NEW: Add $ID$ into extrafields management to allow use of current object id on filter for select list from table and checkbox list from table
NEW: Add info page on product card
NEW: Add into about page, a sample text to use to promote new version release (visible only if version is last stable)
NEW: Add none/all selection into list of files for FTP browser module
NEW: Add opportunity amount on project card.
NEW: Add link "date of invoice" to select date of invoice when creating a payment in one click.
NEW: Add planned workload and declared progress on project summary list on project home page (data aggregated from tasks of project)
NEW: Add ref and label of project into export
NEW: Add status into filters of graph
NEW: Add tab document on salaries payment
NEW: Add thumb of users into stats box on home page
NEW: A link to the bugtracker report tool can be enabled in the GUI
NEW: Better look for POS. More responsive design.
NEW: Can add project search on left menu search area
NEW: Can assign a task to yourself to have it appear on timesheet.
NEW: Can close a project that has draft status with no need to switch it to validate status before.
NEW: Can edit Background color for Top menu and Background color for table title line.
NEW: Can edit email templates using WYSIWYG editor.
NEW: Can edit list of prospect status for customers/prospects. Add a new entry into dictionary table to manage list fo status.
NEW: Can filter on contact status in prospect list. Removed deprecated menu entry.
NEW: Can filter proposal on a tag of a product.
NEW: Can filter proposal, orders or invoices with criteria "contain at least one product with following tag"
NEW: Can choose fields to show on project list.
NEW: Can choose fields to show in product list. Extrafields are also supported.
NEW: Can choose fields to show into the contact list. Extrafields are also supported.
NEW: Can choose fields to show into list of users. Extrafields are also supported.
NEW: Can set default value of event type when creating an event (if option "manage type of event" is used).
NEW: Can upload files on leave requests. Use more standard permissions.
NEW: Can use a "|" to make a OR search on several different criterias into search text filters of tables.
NEW: Can use the * as a joker characters into search boxes of lists.
NEW: Clean code into salary module, debug and add indexes 
NEW: Can filter on user list and salary payments on user with naural search.
NEW: Can clone agenda events.
NEW: Color category is visible onto the thumb of tags on thirdparty, or products cards.
NEW: Conf to use next product/service ref when we clone a product/service
NEW: Contract module can be used to follow both sold and bought contracts/recurring subscriptions.
NEW: Can change amount when creating withdraws requests.
NEW: FEATURE PROPOSAL: on proposal, order or invoice creation from scratch, reload page after customer selection so its informations can be loaded
NEW: Filter "active" by default on user list. Fix label of permission of project module.
NEW: Forms are using the "tab look", even in creation mode.
NEW: Free text for cheque deposit receipt can be HTML content.
NEW: Hidden option THEME_ELDY_USE_HOVER is stable enough to become officialy visible into setup.
NEW: If module salaries is on, you can set a hourly value for time consumed by users. When a user enter its time consumed on a project, a calculation is done to provide the cost for human services. This value appears into the "Overview" of project.
NEW: Add import profile to import sales representatives of third parties.
NEW: Increase length of bank code to 128 char #3704
NEW: Into the overview of projects, the name of thirdparty appears into combo lists of elements to link to project.
NEW: Introduce a "code" into table of vats to describe VAT. This will allow to suggest different vat lines with same value with ability to differentiate them.
NEW: Introduce cost price on products.
NEW: Introduce hidden option MAIN_LANDING_PAGE to decide the home page visible just after login.
NEW: Introduce hidden option MAIN_REPLACE_TRANS_xx_XX to allow simple replacement of translated string on the fly. Prefer to use next method.
NEW: Introduce table llx_overwrite_trans to be able to overwrite translations by simple database edition.
NEW: Introduce use of cache for thumbs images of users to save bandwith.
NEW: Experimental level multiprice generator based on per cent variations over base price.
NEW: List of projects of a thirdparty are visible on a project tab for the thirdparty.
NEW: Merge all left menu search boxes into one.
NEW: Merge all search fields of an area page into one search box.
NEW: Next ref on clone doesn't need conf, it's used if mask exists.
NEW: Only arrow of current sorted field is visible into table views. This save a lot of space. You can click on the column title to sort. This make clickable area larger and click to sort is easier.
NEW: On page to see/edit contact of an ojbect, the status of contact is visible (for both external and internal users).
NEW: Option "encrypt password" into database is set to on by default on first install.
NEW: Print event type on third party card tab agenda list (only if AGENDA_USE_EVENT_TYPE = 1)
NEW: Provide an easier way to understand if an order can be shipped.
NEW: Quick search filter works also on invoice, proposal, order, intervention, contract and expense reports.
NEW: Replace category edition page on members with new select2 component.
NEW: Show photo of logged user into login top right block. 
NEW: If no photo is available for user, we show a generic photo depending on gender.
NEW: Show photo of user into user list.
NEW: Show which fields were used for search when doing a "generic search" from the "quick search" form on left menu.
NEW: Statistic graphs on products offer a filter on product type (product / service or both)
NEW: Syslog displays configuration errors
NEW: The clicktodial module is now able to provide link "tel:" on phone numbers. So it is also possible to use clicktodial with a client solution like the "xivo" local client.
NEW: The conditional IF into ODT templates works also on not defined var so we can show data only if defined. Close #3819
NEW: The free text in PDF footers can now be a HTML content. So the WYSIWYG editor is on by default to edit it into module setup.
NEW: The thirdparties tabs, the contacts tabs and the members tabs are now presented using a new "top banner", saving space and using a same way to show address, status and navigation arrows.
NEW: Thumbs for statistics on main page are fully clicable (not only link inside the thumb)
NEW: Translate extrafield's labels.
NEW: Use new select2 component for juridical status, country and state selection.
NEW: When creating order, proposal or invoice from thirdparty card, the project is asked during creation. A link to create project if it does not exists is also available. 
NEW: Uniformize form creation of proposal to add public and private notes during creation like for order and invoice.
NEW: More robust antiXSS engine.
NEW: Compatibility with Mysql 5.7+

For developers:
NEW: The search box and the bookmarks are now rendered by the menu manager.
NEW: Add a new widget $form->selectArrayAjax() to use combo list with content coming from an Ajax URL.
NEW: Add doActions hook method call in contract card
NEW: Added doActions hooks to user cards
NEW: Add a new component to select categories/tags from the main edit page of product. The dedicated tab is also removed.
NEW: upgrade jQuery Component Datable (and extras) to 1.10.7
NEW: script to build API class from existing class
NEW: Prepare database to store information per files (for example to define if an image can be used as a cover or not)
NEW: log hooks loading
NEW: Introduce property module_position so a module can decide where it appears into list of modules.
NEW: Introduce function dolGetFirstLineOfText
NEW: Introduce a method getDefaultCreateValueForField for developers to get a default value to use for a form in create mode. Implement it for public and private notes.
NEW: A module can add its entries into cron module.
NEW: Framework feature. To have a page being loaded at same scrollbar level after a click on a href link, just add the class "reposition" on this link.
NEW: Add exemple of setup for multitail to render dolibarr log files
NEW: Add restler framework. First step to build REST API into Dolibarr.
NEW: Add css class and ids on column of detail lines to allow module to easily manipulate fields.
NEW: Add hook in send mail
NEW: Add hooks on list of members to allow an external module to add more fields into list view.
NEW: Add hooks to allow an external module to complete list of events into calendar views.
NEW: Add "productpricecard" hook and uniformize code
NEW: Enhance also the prototype test_arrays to include select form before table.
NEW: Enhance prototype, project list and proposal list with new hooks to have an external module able to add more fields.
NEW: Enhance style engine. Add option to set color of links.
NEW: ODT generators can now also set meta properties of ODT file.
NEW: Add missing columns into llx_expedition to match other tables.
NEW: A new function getImageFileNameForSize was also introduced to choose image best size according to usage to save bandwith.
NEW: Support logging to a Sentry server
NEW: Prepare database to have agenda able to store more detailed emails events. 

WARNING: 

Dolibarr 3.9 is not yet fully compatible with PHP 7 even if most features seems to work.

Mysql minimum version is now 5.0.3 

Following changes may create regression for some external modules, but were necessary to make
Dolibarr better:
- Deprecated Product::setPriceExpression. Use Product::update instead
- Deprecated hidden option MAIN_USE_CUSTOM_TRANSLATION has been removed. Use table llx_overwrite_trans instead.
- Trigger LINECONTRACT_INSERT has been renamed into LINECONTRACT_CREATE to match common denomination.
- A lot hooks used into PDF generation were not correctly implemented. We had to fix this. The result si that
the following hook were set as hook of type "replace". This means if your module implement such hooks, it must 
return 0 to execute standard code or 1 to replace standard code (value to output should be set into resPrints instead).
This is list of hooks modified:
'pdf_getlinenum', 'pdf_getlineref', 'pdf_getlineref_supplier', 'pdf_getlinevatrate', 'pdf_getlineupexcltax',
'pdf_getlineupwithtax', 'pdf_getlineqty', 'pdf_getlineqty_asked', 'pdf_getlineqty_shipped', 'pdf_getlineqty_keeptoship',
'pdf_getlineunit', 'pdf_getlineremisepercent', 'pdf_getlineprogress', 'pdf_getlinetotalexcltax', 'pdf_getlinetotalwithtax'
- Renamed Product::isservice and Product::isproduct to match PSR-2
- Remove deprecated Product::hidden property



***** ChangeLog for 3.8.5 compared to 3.8.4 *****
FIX: #3815 Call to undefined function local_by_date().
FIX: #4424 Missing email of user popup in supplier orders area
FIX: #4442 Missing translation in Banks menu
FIX: #4448 $filebonprev is not used, $this->filename now
FIX: #4455
FIX: #4737 Bank transacion type selector translation is cropped
FIX: #4742 Able to delete a supplier invoice with a registered payment
FIX: #4743 UI glitch in project summary page
FIX: #4747 Missing UI background when registering a supplier invoice payment
FIX: #4748 Supplier invoice payment confirmation amount is not translated
FIX: #4749
FIX: #4756
FIX: #4766 VAT not shown in supplier invoice popup
FIX: #4809 - Duplicate functions with different content
FIX: #4851 Project selector in supplier invoices shows the project label twice
FIX: #4870
FIX: #5008 SQL error when editing the reference of a supplier invoice that already exists
FIX: #5048 Product supplier list display only one produc
FIX: #5170 tva sign with INVOICE_POSITIVE_CREDIT_NOTE option
FIX: #5203
FIX: #5207
FIX: #5338 use of not initialized var $aphour, $apmin, etc
FIX: #5380
FIX: #5383 bad object id on don delete
FIX: #5474 Country_id of "Don" object is still empty
FIX: Accountancy - 3.8 - Chart of accounts are limited on only one country
FIX: Bad include and param for project numbering module call
FIX: Box disabled because bugged
FIX: bug on email template
FIX: Can correct stock of lot using eatby or sell by date
FIX: Can make a movement on "out of sell" products
FIX: Can't create thirdparty or validate invoice if profid is mandatory and profid does not exists for other countries
FIX: can't fetch by siret or siren because of first "if"
FIX: Check stock of product by warehouse if $entrepot_id defined on shippings
FIX: correct display of minimum buying price
FIX: Creation of thumb image for size "small" was not done.
FIX: Direction of movement lost if an error occurs
FIX: dont retrieve new buying price on margin display
FIX: Duplicate records into export
FIX: Email templates not compatible with Multicompany
FIX: end of select when no fournprice
FIX: finished parameters not used
FIX: hook on group card called but not initialized
FIX: It doesn't check if there is enough stock to update the lines of orders/invoices
FIX: large expense note
FIX: missing column when module was installed before standard integration
FIX: Missing database escaping on supplier price insert/update
FIX: Not filtering correctly when come from dashboard
FIX: PROPAL_MERGE_PDF with PRODUCT_USE_OLD_PATH
FIX: real min buying price
FIX: receiving link never works
FIX: same page added several times on mergepropal option
FIX: search on date into supplier invoice list dont work because of status -1
FIX: Search supplier ref on contract
FIX: SQL error function on getAvailableDiscounts function, on bill create mode if socid is empty
FIX: systematic rounding causes prices to be updated without reason
FIX: task ODT company object not correctly retrieved
FIX: Template email must take care of positino column
FIX: VAT rate can be negative. Example spain selling to morroco.

***** ChangeLog for 3.8.4 compared to 3.8.3 *****
FIX: #3694
FIX: #3798 #2519 Cron jobs would never be executed
FIX: #4155 Search Categories error
FIX: #4239
FIX: #4272 Error when trying to print the page "Linked objects" of a Thirdparty
FIX: #4291 Correctly filter bank card GETPOSTs
FIX: #4291 Correctly filter external calendar GETPOSTs
FIX: #4341
FIX: #4394 Untranslated label in list of expense reports
FIX: #4414 Supplier invoices use FAC_FORCE_DATE_VALIDATION client invoices property
FIX: #4418
FIX: #4425 Missing "VAT" translation in supplier order popup
FIX: #4434 Weird behaviour when enabling multiprices
FIX: #4440 Wrong price is filled by Product::fetch into multiprices arrays
FIX: #4453 SEPA Direct Debit generated XML shows a trailing comma in RmtInf field
FIX: #4528
FIX: #4556 desiredstock and seuil_stock_alerte cleared on modify product card
FIX: #4580
FIX: #4583 Incorrect call of Categories::containing throws a DoliDB error
FIX: #4649 Wrong parameters order
FIX: #4768
FIX: #4785
FIX: Add a test to show bugged module with a bad declaration of dictionaries to avoid to see clean module to be breaked.
FIX: add Croatia into list of country in EEC
FIX: add missing global def for ttc column
FIX: ajax error with multicompany module
FIX: Avoid errors when batch stock is negative
FIX: bad field in select
FIX: bad path
FIX: bad transaction level due to code of situation invoices
FIX: best sql request
FIX: bookmark's user change after update if the user hasn't superadmin right
FIX: call trigger LINEBILL_SUPPLIER_CREATE
FIX: Can not disabled an opened service line in a contract
FIX: can't clone event
FIX: can't send mail to thirdparty contact if no mail defined on thirdparty card
FIX: Check stock of batch on shippment
FIX: code corrupting database
FIX: compatibility with multicompany transversal mode
FIX: compatibility with multicompany transversal mode and more security issue
FIX: Contrat card don't consider user permissions to show active/unactive service button
FIX: CVE CVE-2015-8685
FIX: Deadlock situation. Can't edit anymore contract. FIX: List of automatic events was not visible.
FIX: disable main.inc.php hooks
FIX: do not show warning if account defined
FIX: don't see the sales representative of anothers entities
FIX: duration format
FIX: Correct problem of rights beetween tax and salaries module
FIX: Email templates not compatible with Multicompany
FIX: $fileparams is not defined
FIX: filter by socid if from customer card
FIX: for avoid conflict with "global $m" in memory.lib.php
FIX: for avoid division by 0
FIX: hover css
FIX: If option to hide automatic ECM is on, dont show menu.
FIX: if we dont use SUPPLIER_ORDER_USE_HOUR_FOR_DELIVERY_DATE the hour is displayed on pdf
FIX: Introduce hidden option to disable feature than hangs when too much data
FIX: ISSUE #4506 : make working the PROPAL_CLONE_ON_CREATE_PAGE hidden constant
FIX: issue when bank module is disabled FIX: missing entity filter for lines of payment
FIX: list of leave request was not showing label correctly.
FIX: MAIN_THIRDPARTY_CREATION_INDIVIDUAL syntax error in name
FIX: markRate can be 100
FIX: minor css error (pixel size must have "px"). Compatibility with old behaviour.
FIX: missing field "label"
FIX: missing signature and uniformize code between card and script
FIX: missing traduction
FIX: missing translation
FIX: missing translation key
FIX: nblignes not calculated after hook and hook can't modify this value. Usefull for modules
FIX: no database structure change is allowed into minor versions
FIX: no transaction in this place
FIX: Noway to validate a leave request for some uer even if they have permission for.
FIX: Option to disable meteo was not set correctly in edit mode
FIX: $outputlangs is not defined (dolibarr 3.7, 3.8, 3.9)
FIX: path to copyrighted files
FIX: php unit to work both with old and new setup
FIX: Purge of temp files was broken
FIX: Relative discount decimals are not saved
FIX: Removed a bugged list. Fixed another one to not count data of previous year.
FIX: retrieve correct pu_ttc (set by printObjectLine function) like in 3.7
FIX: search product in customer product prices doesn't work
FIX: Some filters are lost when paging
FIX: sql injection #4341
FIX: sql injection even when code is on several lines
FIX: sql request and total for time spen for current month
FIX: Sql syntax error in doc_generic_task_odt
FIX: Status filter don't work
FIX: Strict Standards: Only variables should be passed by reference
FIX: The part added with hidden option MAIN_DOC_USE_TIMING was included with a . instead of -. This make os think it is part of extension instead of file name.
FIX: The third dashboard don't consider user permissions
FIX: the view my task must show only task you are assigned to
FIX: to allow phpunit of migration process for 3.4 to 3.5
FIX: to allow phpunit of migration process for 3.5 to 3.6
FIX: userlocaltax
FIX: view of product image when using old path 
FIX: size of image uploaded on user.
FIX: We must ue the "small" size of imge to show on card pages.
FIX: When we make a direct assignement on a task to a user, we must check he is also assigned to project (and if not assign it)
FIX: wrong fk_parent_line in credit note with invoiceAvoirWithLines option
FIX: wrong modelpdf var name
FIX: wrong object name

***** ChangeLog for 3.8.3 compared to 3.8.2 *****
FIX: #3805
FIX: #3231 [Members] Public subscription page displays GeoIP error
FIX: #3240
FIX: #3293 Login page form icons not shown
FIX: #3508 Useless tooltip in 3.8 boxes
FIX: #3661 Margin is not selected correctly when adding a product
FIX: #3679 Error when deleting a Localtax2 special payment
FIX: #3707 Thirdparty bank account page table has a glitch
FIX: #3726 When upload file, don't test if PRODUCT_USE_OLD_PATH_FOR_PHOTO variable is empty or not
FIX: #3734 Do not show empty links of deleted source objects in stock movement list
FIX: #3836 Unable to upload a document to an invoice under some circunstances
FIX: #3878 Storing and deleting files on emailing was done at wrong place
FIX: #3880
FIX: #3882
FIX: #3890 Expected transactions bank account page, shows negative numbers
FIX: #3912
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: #3953 Don't round supplier price
FIX: #3953 rounding of buying price
FIX: #3980 Search field in "product by supplier" list sends empty result 3.8 and 3.7
FIX: #3987 Undefined variable $newref in CommandeFournisseur::approve
FIX: #3988 Undefined variable $conf and $error in CommandeFournisseur::addline
FIX: #3989 Undefined variable $conf in CommandeFournisseur::getNomUrl
FIX: #3990
FIX: #3992 CommandeFournisseur::ref is marked as deprecated and it shouldn't be
FIX: #3996 Dictionnary hooks are not working in 3.8
FIX: #3997 Wrong permission key used for Margins > Read all
FIX: #4016 User link is not correctly formed in emailing receivers
FIX: #4018 SQL error if trying to access the mailing/card.php page without an ID defined
FIX: #4036 Direct printing module without any driver configured, shows an unformatted error message
FIX: #4043 Incorrect translation in error mesage in menu creation admin page
FIX: #4049 PHP warning when trying to access a non-existing product/service
FIX: #4055 SQL error when trying to access a non-existing expedition
FIX: #4081 Added missing translation
FIX: #4097 Public holiday calculation
FIX: #4182 SQL error when deleting an unexisting bank entry
FIX: #4242 Allow disabling dashes in documents
FIX: #4243 sql injection
FIX: #4281
FIX: #4282 Defined shipping time were not shown in Customer order's PDF documents
FIX: #4285 SQL query shown when accessing an unexisting invoice
FIX: #4287 SQL error when accessing an unexisting proposal
FIX: #4302 Undefined variable $conf in Commande::LibStatut
FIX: Allow to search on alias name into select
FIX: Add a protection to not make release if ChangeLog was not generated.
FIX: autofocus on input search product
FIX: bad calculation for stock value
FIX: Better compatibility for users that used the not supported option MAIN_USE_JQUERY_MULTISELECT set to 1.
FIX: Bug: $this is not accessible in static context in Mailing::libStatutDest #4050
FIX: can not have access to the new ids or propal lines on PROPAL_CLONE
FIX: Can't update line's duration
FIX: Can use formated float number on old expense report module.
FIX: change object statut on close shipping and remove erratic db commit
FIX: change order date on clone (as everywhere else)
FIX: event's data lost on user assign update
FIX: export propal and order with extrafields
FIX: export with category contact extrafields
FIX: jquery select of project generate js error on change event
FIX: label of line is set in description field if empty
FIX: loss data also if update was cancel by error of ended state with no end date, try a generic patch
FIX: mail isn't display in title on event in mode view
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: NB task and percent progress in box project
FIX: Not delete a product when have customer price
FIX: Not deleting contrats on element_element table
FIX: Not use localtaxes when invoice some orders
FIX: only active customer should be available into select list thirdparty on invoice creation
FIX: only active customer should be return into new invoice creation select list
FIX: AWP calculation
FIX: product link in project box
FIX: Remove  column creation for table llx_product_fournisseur_price, the column use un calss is fk_supplier_price_expression, and fk_price_expression does not exist into lx_product_fournisseur_price sql file declaration
FIX: Show category selector if we have permission to view products or services
FIX: showrefnav htmlspecialchar instead of < >
FIX: The label hidden was not supported when using jmobile
FIX: Too many information were hidden. A lot of users still need bank account on PDF.
FIX: Use "WHERE true" instead of "WHERE 1" #4132

***** 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
FIX: #3529
FIX: #3530
FIX: #3533
FIX: #3533 Load categories language
FIX: #3534
FIX: #3572 Impossible to attach project in order
FIX: #3599 Not saving legal form
FIX: #3606
FIX: #3607 Better categories setting and unsetting
FIX: #3628
FIX: #3630 - Wrong balance report when module salaries and donation disabled
FIX: Add a test to save life when ref of object (invoice ref, order ref, ...) was empty. The was no way to go back to a clean situation, even after vaidating again the object.
FIX: Admin fiche inter page do not take good action
FIX: Always use type send in parameters in showCategories method
FIX: avoid SQL error in getValueFrom common object when all params are not send
FIX: avoid SQL error when no sortfield send to method
FIX: bad link into project box
FIX: Bad title line in project view when using jmobile
FIX: Bad translation key for project "Overview"
FIX: Can create Proposal on close thridparty #3526
FIX: Can't change state on a contact
FIX: Can't change the admin with default setup
FIX: Can't delete thirdparty if there is some discounts
FIX: Can't reopen a canceled invoice.
FIX: Creation of tables or keys must not be done with a random order.
FIX: debian install when module mysqli is not installed.
FIX: Description of tags was mandatory in edit mode but not in create mode. Should not be mandatory.
FIX: display error on extrafields on ficheinter
FIX: Email selector contact must not include inactive contact
FIX: error in SQL due to a previous fix
FIX: Error retrieving customer prices
FIX: Event from ical stream should not be movable into calendar view
FIX: facturestat bad sql when customer view is limited
FIX: Filter on status of thirdparty list and bad encoding of url
FIX: icon into export profile may be not correctly output
FIX: Init into bad var
FIX: Link of project must be cickable if user has permission to read all projects FIX: Missing information into the alt of project picto
FIX: List of project for user that are restrited as sale repreentative to some thirdparties.
FIX: Mass Mailing activity don't display all status
FIX: Missing contracts into list in page of Refering objects of a thirdparty.
FIX: Missing menu entry for list of thirdparties when using auguria menu manager
FIX: Missing validate button if permission are not valid.
FIX: New adherent from, always redirect on entity
FIX: not closing CSS.
FIX: not responsive part for project page
FIX: Only are showing one object linked
FIX: order ref must not be translated
FIX: Payment form for paypal and paybox was not centered.
FIX: Pb into pagination scroll widget FIX: Style of previous-next card when using dolidroid
FIX: Regression on bad use of fk_account showing the bad bank account on PDF.
FIX: Removed warnings
FIX: remove twice same test
FIX: select of project using ajax autocomplete option
FIX: sortder field was missing so manually added values were moved to begin.
FIX: Syntax error in Debian Apache configuration
FIX: The admin flag is mising.
FIX: The filter on thirdparty prices should be visible if there is at least one thirdparty price.
FIX: Thirdparty is missing on card
FIX: update2.php test res befre assign it
FIX: When delete actioncomm also delete actioncomm_resources
FIX: when editing time spent, date of line suggested was a rubbish value
FIX: When filter with empty status, by default get canceled status (-1)
FIX: When update a member login for a member linked to a user, the login of user was not sync (not updated).
FIX: Wizard for restore does not show import command


***** ChangeLog for 3.8 compared to 3.7.* *****
For users:
FIX: #2519
FIX: #2758 Product::update sets product note to "null" when $prod->note is null
FIX: #2832: Fixed a problem with special characters in expense report PDF model
FIX: #2856 : Wrong table design
FIX: #2901
FIX: #2957 : missing $langs object for trigger
FIX: #2983 Load gravatar avatar images securely over HTTPS
FIX: #2987: removed dead function moneyMeter()
FIX: #3009: Better filtering to prevent SQL injection
FIX: #3009: Better filtering to prevent SQL injection
FIX: #3091 TotalHT amount in supplier order is bold unlike the rest of Dolibarr
FIX: #3138 - Too much visible thing when access is denied on public pages
FIX: #3173 Overlapping of shipment ref
FIX: Adding 5 more choice link into survey module was not working with chrome
FIX: bad calculation for stock value
FIX: Bad link to login page into email for password renewal.
FIX: Bad logo for status "Do not contact" of thirdparty.
FIX: Bad variable usage
FIX: Better management error into the color conversion functions
FIX: [bug #1883] missing field in SQL installation
FIX: Bug on order and supplier invoice numeration mask when use supplier code
FIX: Bug on order and supplier invoice numeration mask when use supplier code
FIX: button create payment hide if tax amount is less than 1
FIX: can receive new batch product on supplier order
FIX: can show print page after product save
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: Correct migration script
FIX: create contact with extrafiel is null when it is require
FIX: Description of contract line was not visible.
FIX: Correct path of loan class
FIX: Correct problem field with note - Add note_private & use wysiwyg editor
FIX: Edit in place of "Outstanding Limit"
FIX: Module Expense Report - Correct init
FIX: Update licence to GPLv3
FIX: End log must use same level then start log.
FIX: event for restricted user was restricted if company null
FIX: event not linked to contact on creation
FIX: Export of tags for contact and member
FIX: extrafields required on thirdparty
FIX: Force ref
FIX: Function expects an int, not a boolean
FIX: Function was expecting a boolean not a string
FIX: hide category if it's not enable
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: jdate returning -62169955200 on x64 machine
FIX: Let ability to use IDPROF verifications even if new entry is "private"
FIX: migration error
FIX: moved built-in bug report system to GitHub Issues
FIX: Moved code to where the variable is defined
FIX: No check warehouse is provided if module stock is not enabled.
FIX: Payed invoices are showed as canceled FIX: Bad date filter on customer order
FIX: Ref/label of product on contract line was not visible, nor into page, nor into PDF.
FIX: Removed concatenation on undeclared variable
FIX: Remove deprecated property 'libelle' on product object
FIX: Replaced some deprecated call
FIX: Replaced some deprecated property
FIX: Save of filters into export profiles failed.
FIX: "script" balise with wrong syntax
FIX: send mail, copy sendto don't read the list of contact
FIX: top links menu have target attribute with wrong value
FIX: total amount in tpl linked object are not reset
FIX; Unknown field 'sc.fk_soc' in field list
FIX: update usergroup name
FIX: Variable declared boolean
FIX: Variable might not be traversable
FIX: We did a test on a permission to export contract when permission did not exists.
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 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: when we create an agenda event with "Not applicable" status, it is automatically saved with "To do" status
FIX: width multiselect
FIX: Wrong type hinting
FIX: XSS security using the onerror and missing escapement on type of member page.
FIX: Missing visibility of static property
NEW: Add a button to purge criteria in user list
NEW: add all assigned users and all extrafields data in new event when we createFromClone
NEW: Add a new component to select categories/tags from the main edit page of product. The dedicated tab is also removed.
NEW: Add a search field and report on hrm area
NEW: Add a tab document in donation card
NEW: Add bank account owner in invoice/proposal/orders footer
NEW: Add button to purge search criteria into list
NEW: Add close date and user for projects.
NEW: Add company information into  category contact export
NEW: Add current salary on list of payment
NEW: add date value filter on account records list
NEW: Add exemple of setup for multitail to render dolibarr log files
NEW: Add filter on status on invoice list
NEW: Add filter on task ref and task label into list of tasks
NEW: Add filter on user contact or user task into task list
NEW: Add gender property managed on user card FIX: Better error messages when uploading photo of user when permission to write are not granted
NEW: Add help tooltips on fields of dictionary edit pages. Fix: visible list of tasks are for opened project only.
NEW: Add hidden option MAIN_MAILFORM_DISABLE_ENTERKEY to disable the key enter into the form to send email.
NEW: add hook in send mail
NEW: Add hooks on list of members to allow an external module to add more fields into list view.
NEW: Add hooks to allow an external module to complete list of events into calendar views.
NEW: Add opportunity amount on project card.
NEW: Add option THEME_TOPMENU_DISABLE_IMAGE to disable images into menu eldy.
NEW: add PDF icon on linked element into project
NEW: add "productpricecard" hook and uniformize code
NEW: Add ref and label of project into export
NEW: Add search box for supplier order search.
NEW: Add status into filters of graph
NEW: Add tab document on salaries payment
NEW: A link to the bugtracker can be enabled in the GUI
NEW: A module can add its entries into cron module.
NEW: autofocus on product selection dropdown list or search field
NEW: Backup and restore tool is easier to use
NEW: Can add all user of a project as user of a task, in one step.
NEW: Can add project search on left menu search area
NEW: Can assign a task to yourself to have it appear on timesheet
NEW: Can close a project that has draft status with no need to switch it to validate status before.
NEW: Can edit Background color for Top menu and Background color for table title line (works only with theme menu eldy).
NEW: Can edit email template using WYSIWYG editor
NEW: Can edit internal label of invoice even when closed (this is a private information)
NEW: Can edit list of prospect status for customers/prospects. Add a new entry into dictionary table to manage list fo status. Removed deprecated files.
NEW: Can filter on contact status in prospect list. Removed deprecated menu entry.
NEW: Can filter proposal on a tag of a product Enhance also the prototype test_arrays to include select form before table.
NEW: Can filter proposal, orders or invoices with criteria "contain at least one product with following tag"
NEW: Can install an external module from admin pages, if web server has permission for and if setup is ok for.
NEW: Can search on customer order amount into customer order list.
NEW: Can upload files on leave requests. Use more standard permissions.
NEW: Can use a "|" to make a OR search on several different criterias into text filters of tables.
NEW: Clean code into salary module, debug and add indexes NEW: Can filter on user list and salary payments on user with naural search.
NEW: clone action on agenda events
NEW: dev feature : replace conf filename with "conf" parameter on url by GET
NEW: display linked object in edit mode when we create an event from an order, propal...
NEW: Enhancement of module 'Notification by Email'. Show nb of notifications set. Can set several emails. Can set a threshold on amount for notifications. Add notification on supplier order validation.
NEW: Enhance prototype, project list and proposal list with new hook to have an external module able to add more fields.
NEW: Enhance the natural_search function so we can use it to search numeric fields with criteria with operator <>= inside (< 100, >= 1000)
NEW: Enter amount for withdraws requests
NEW: Feature request: A page to merge two thirdparties into one #2613
NEW: Feature to build a merged pdf with all unpaid invoice can work for paid invoices.
NEW: Filter "active" by default on user list. Fix label of permission of project module
NEW: For a contract line, price is no more mandatory.
NEW: Forms are using the tab look, even in creation mode.
NEW: Hidden option THEME_ELDY_USE_HOVER is stable enough to become officialy visible into setup.
NEW: If module salaries is on, you can set a hourly value for tome consumed by users. Each time a user enter its time consumed on a project, a calculation is done to provide the cost for human services. This value appears into the "Transversal view" of project.
NEW: Implement option SUPPLIER_ORDER_USE_DISPATCH_STATUS to add a status into each dispathing line of supplier order to "verify" a reception is ok. Status of order can be set to "total/done" only if line is verified.
NEW: Into the overview of projects, the name of thirdparty appears into combo lists of elements to link to project.
NEW: Introduce option SUPPLIER_ORDER_DOUBLE_APPROVAL to allow 2 approvals to make a supplier order approved. Activating this option introduce a new permission to the second level approval.
NEW: Introduce TCPDI as replacement of FPDI.
NEW: List of recent modified supplier product prices in Supplier card
NEW: Module notification should details of emails into confirm box, not only number.
NEW: On page to see/edit contact of an ojbect, the status of contact is visible (for both external and internal users).
NEW: Product stock and subproduct stock are independant
NEW: Propal merge product card PDF into azur
NEW: Rename install etape to step
NEW: Replace category edition page on members with new select2 component.
NEW: Show difference between timespent by everybody and time spent by user making timesheet into timesheet pages. NEW: Can enter start hours of task when creating timesheet
NEW: Show last official stable version into system - update page.
NEW: Show photo of logged user into login top right block. NEW: If no photo is available for user, we show a generic photo depending on gender
NEW: [T1758] Merge bank card & account card
NEW: [ task 1191 ] AJAX selector for projects
NEW: [ task #851 ] Add a new field: Commercial name
NEW: [ task #977 ] New option to manage product unit Migrated code from GPCSolutions/dolibarr:3.2-units branch and adapted for 3.8 with some improvements
NEW: The line where mouse is over can be highlight with option THEME_ELDY_USE_HOVER (on by default)
NEW: The notification module accept keyword __SUPERVISOR__ to send notification to supervisor of user.
NEW: Thumbs for statistics on main page are fully clicable (not only link inside the thumb)
NEW: Title of page project contains project ref and label
NEW: update skeleton and class builder
NEW: Use new select2 component for juridical status, country and state selection.
NEW: Web service to create or update product can correct stock during creation/update.
NEW: When creating order, proposal or invoice from thirdparty card, the project is asked during creation. A link to create project if it does not exists is also available. NEW: Uniformize form creation of proposal to add public and private notes during creation like done for order and invoice.
NEW: When using transfer or correct stock from warehouse, after recording we go back to the warehouse page.
NEW: Add Option to not change date on cloning project
NEW: Add check list from table for extrafield type
NEW: Use new combobox.
NEW: Add hidden option MAXTABS_IN_CARD.
NEW: A default label is suggested for stock correction and transfer instead of empty string.
NEW: Add Weighted average price as default price for buying price for margin calculation. Add option MARGIN_PMP_AS_DEFAULT_BUY_PRICE to replace with first supplier price.
NEW: Introduce option MAIN_HTML_TITLE to start to control format of html title content.
NEW: Add extrafields on bank account cards.
NEW: Added delay between mails in Newsletter module.
NEW: [ task #1793 ] Create new permission to restrict commercial agent margin to logged user.
NEW: Add experimental module ask supplier price to request supplier quotation.
NEW: Add module batch management.

For translators:
NEW: Update language files.
NEW: When a translation is not available we always jump to en_US and only en_US.
NEW: All language tranlsations (except source en_US) is now managed on https://www.transifex.com/projects/p/dolibarr/.
FIX: Typo errors in translation.

For developers:
NEW: Function yn can show a visual checkbox.
NEW: Introduced select2 jquery plugin.
NEW: Possibility to add javascript in main login page with "getLoginPageOptions" hook.
NEW: possibility to defined a tab for all entities in module descriptor.
NEW: add restler framework First step to build REST API into Dolibarr.
NEW: add an explorer for REST API consultation & documentation.
NEW: script to build API class from existing class.
NEW: Add function dolCopyDir to copy directory with recursive content.
NEW: Introduce function dolGetFirstLineOfText.

WARNING: Following changes may create regression for some external modules, but were necessary to make
Dolibarr better:
- Removed hook supplierorderdao into supplier order creation. This is a business event, so we must use the 
  trigger ORDER_SUPPLIER_CREATE instead.
- Hooks 'printLeftBlock' and 'formConfirm' are now compliant with hook development rules. They are
  "addreplace" hooks, so you must return content with "->resprints='mycontent'" and not with "return 'mycontent'"  
- All fields "fk_societe" and "fk_soc" are now named "fk_soc" (same name for all fields).
- Method select_PriceBaseType and load_PriceBaseType were merged into selectPriceBaseType.
- The triggers USER_LOGIN* are deprecated. They are still working but you should prefer use the 
  hook afterLogin or afterLoginFailed instead.
- The trigger USER_CREATE_FROM_CONTACT has been replace with USER_CREATE and property context is now filled
  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.4 compared to 3.7.3 *****
FIX: #3694
FIX: #4239
FIX: #4291 Correctly filter external calendar GETPOSTs
FIX: #4341
FIX: #4414 Supplier invoices use FAC_FORCE_DATE_VALIDATION client invoices property
FIX: #4440 Wrong price is filled by Product::fetch into multiprices arrays
FIX: add missing global def for ttc column
FIX: Contrat card don't consider user permissions to show active/unactive service button
FIX: CVE CVE-2015-8685
FIX: Email templates not compatible with Multicompany
Fix: for avoid division by 0
FIX: ISSUE #4506 : make working the PROPAL_CLONE_ON_CREATE_PAGE hidden constant
FIX: $outputlangs is not defined (dolibarr 3.7, 3.8, 3.9)
FIX: sql injection even when code is on several lines
FIX: The third dashboard don't consider user permissions

***** ChangeLog for 3.7.3 compared to 3.7.2 *****
FIX: #3734 Do not show empty links of deleted source objects in stock movement list
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: #3980 Search field in "product by supplier" list sends empty result 3.8 and 3.7
FIX: #4081 Added missing translation
FIX: #4097 Public holiday calculation
FIX: #4242 Allow disabling dashes in documents
FIX: #4243 sql injection
FIX: Can use formated float number on old expense report module.
FIX: Change object statut when closing shipment and remove erratic db commit
FIX: Export with category contact extrafields
FIX: NB task and percent progress in box project
FIX: Not delete a product when have customer price
FIX: Not deleting contrats on element_element table
FIX: Not use localtaxes when invoice some orders
FIX: Product link in project box
FIX: Use "WHERE true" instead of "WHERE 1" #4132

***** ChangeLog for 3.7.2 compared to 3.7.1 *****
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: 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

***** ChangeLog for 3.7.1 compared to 3.7.* *****
FIX Bug in the new photo system
FIX Error management
FIX [ Bug #2714 ] Members -> Memberxy-> Agenda -> technical Error
FIX [ Bug #2713 ] 3.7.0 mailing-unsubscribe.php not unsubscribe
FIX #2901
FIX when we create an agenda event with "Not applicable" status, it is automatically saved with "To do" status
FIX check the user status during authentication
FIX top links menu have target attribute with wrong value
FIX extrafields required on thirdparty
FIX create contact with extrafield is null when it is require
FIX width multiselect
FIX "script" tag with wrong syntax
Fix bug debian 786479
FIX update usergroup name
Fix facturestats was not filtering on invoice type
FIX #2856 : Wrong table design
FIX button create payment hide if tax amount is less than 1
FIX event for restricted user was restricted if company null
FIX send mail, copy sendto don't read the list of contact
FIX Properly escape untrusted data to prevent HTML injection.
FIX send mail, copy sendto don't read the list of contact

WARNING:

Path to save photos of products was moved to match path of other attached files. If you had loose your photo
on the photo tab of products, you can set the constant "PRODUCT_USE_OLD_PATH_FOR_PHOTO" to 1 (home - setup - other)
to restore old path and get back working links without having to resubmit images.

WARNING:

Do not try to make any Dolibarr upgrade if you are running Mysql version 5.5.40.
Mysql version 5.5.40 has a very critical bug making your data beeing definitely lost.
You may also experience troubles with Mysql 5.5.41 with error "Lost connection" during migration.
Upgrading to any other version or database system is abolutely required BEFORE trying to
make a Dolibarr upgrade.

***** ChangeLog for 3.7 compared to 3.6.* *****
For users:
- New: Match other auth system: Login can be done entering login or user
       email (this open the road for SSO).
- New: Agenda export by project #1967.
- New: Increase length of thirdparty to 128 chars.
- New: "Is Order shippable" icon #1975.
- New: statistics on supplier orders and invoices on home page.
- New: Add permissions to read all trips and expenses.
- New: Can filter on date into tab "Referring object" of a project.
- New: Module notification has been enhanced:
       EMail use now language of target contact.
       Can also define a fixed email for notifications.
- New: Feature to link manually an order to an invoice does not disappear once
       link has been done.
- New: Can set a color on user card (visible into agenda view).
- New: extrafields for projects and tasks are exported to ODT documents.
- New: Add number of active notification into tab title (like we do for notes and documents)
- New: Can add product into category from category card.
- New: PDF event report show project and status of event.
- New: Can filter on status on interventions.
- New: Add help info of field type into dictionary of payment types.
- New: Add proposals into referer page of thirdparty.
- New: On contact list can set filter on both active and not active (no more exclusive select).
- New: Intervention documents are now available in ECM module.
- New: Can attach supplier order to a customer order.
- New: Supervisor is now visible into user list.
- New: Add user of creation and validation on invoice export.
- New: Add info page about browser.
- New: Enable feature developed for 3.6 we forgot to enabled: Adding prefix
       on uploaded file names.
- New: No more dependency between contract and service module.
- New: [ task #867 ] Remove ESAEB external module code from core.
- New: Can create proposal from an intervention.
- New: An event can be assigned to several users.
- New: Can filter events on a group of users.
- New: Can filter events of a thirdparty.
- New: Onto event summary of elements, end date and status are visible.
- New: Split Agenda view (month, week, day) into different tabs.
- New: Add a view "per user" of agenda events (with different colors according to type of event).
- New: Each user can include its own external ics calendar into dolibarr agenda view.
- New: Add event FICHINTER_CLASSIFY_BILLED into list of possible events to
       create an automatic event into agenda.
- New: Add new type of event (when type of events are used, not by default).
- New: Can disable predefined type of events.
- New: Form to add a photo is immediatly available on photo page if
       permissions are ok (save one click per photo to add).
- New: Add option PRODUCT_MAX_VISIBLE_PHOTO to limit number of photos
       shown on main product card.
- New: Add country into table of thirdparties type. This will allow to provide
       a list of thirdparty types specific to a country (like argentina that
       need type A or B).
- New: Can force a specific bank account onto an invoice/order.
- New: Home page of project area shows list of draft project (like other main page).
- New: Can search on project ref or string from project main page (like other main page).
- New: First change to match accessibility rules: http://www.w3.org/TR/WCAG10-HTML-TECHS/
       Differentiate text and img.
       Use label into quick search form.
       Use accesskey on form search.
- New: Intervention documents are now available in ECM module.
- New: Add attachments on user card + in ECM module.
- New: Can add __PROJECT_REF__ and __THIRDPARTY_NAME__ into email topic or content template.
- New: [ task #1204 ] add Numering contrat module free (like leopard in product module).
- New: [ task #712 ] Add warning when creating invoice from proposal or order, when there is already one invoice.
- New: Enable supplier price log table.
- New: [ task #1204 ] add a supplier reference to contract.
- New: [ task #1218 ] Can drag and drop an event from calendar to change its day.
- New: Optimize size of image static resources.
- New: Add hourly and daily amount on user card. Add weekly working hours and salary on user card.
- New: Content of predefined email come firstly from table llx_c_email_template, then translation key.
- New: Add option MAIN_GENERATE_INVOICES_WITH_PICTURE to show picture
       onto PDF like MAIN_GENERATE_PROPOSALS_WITH_PICTURE dir for proposals.
- New: Add more search field in list of cheque deposits.
- New: Add feature to order to invoice on supplier part.
- New : Use of MAIN_USE_FILECACHE_EXPORT_EXCEL_DIR to use disk cache for big excel export.
- New: Direct invoice creation from predefined invoice.
- New: Add dunning into accountancy report.
- New: Add favorite button into country dictionary to put value on top select list
- Upgrade phpexcel lib to 1.7.8
- New : Use of MAIN_USE_FILECACHE_EXPORT_EXCEL_DIR to use disk cache for big excel export.
- New : Option on extrafields to have them always editable regardless of the document status.
- New : New module PrintIPP to print without opening document is available as stable.
- New : Introduce hidden option STOCK_WAREHOUSE_NOT_REQUIRED_FOR_SHIPMENTS to solve at no risk
        a missing control on missing warehouse.
- Fix: [ bug #1487 ] PAYMENT_DELETE trigger does not intercept trigger action
- Fix: [ bug #1470, #1472, #1473] User trigger problem
- Fix: [ bug #1489, #1491 ] Intervention trigger problem
- Fix: [ bug #1492, #1493 ] Member trigger problem
- Fix: [ bug #1474, #1475 ] Contract trigger problem
- Fix: [ bug #1496 ] ACTION_DELETE trigger does not show trigger error
- Fix: [ bug #1494 ] CATEGORY_CREATE and CATEGORY_MODIFY triggers do not intercept trigger action
- Fix: [ bug #1502 ] DON_CREATE trigger does not intercept trigger action
- Fix: [ bug #1505, #1504] Project trigger problem
- Fix: [ bug #1463, #1464 ] Proposal triggers problem
- Fix: [ bug #1498, #1499 ] Shipment/Delivery triggers problem
- Fix: [ bug #1465, #1466 ] Product triggers problem
- Fix: [ bug #1508 ] STOCK_MOVEMENT does not show trigger error message
- Fix: [ bug #1501 ] DEPLACEMENT_CREATE trigger do not intercept trigger action
- Fix: [ bug #1506, #1507 ] ECM trigger error problem
- Fix: [ bug #1469 ] Triggers CONTACT_MODIFY and CONTACT_DELETE duplicates error message
- Fix: [ bug #1533 ] Links triggers do not show trigger error message
- Fix: [ bug #1537 ] Difference between societe.nom and adherent.societe.
- Fix: [ bug #1535 ] Supplier invoice Extrafields are not shown
- Fix: datepicker first day of week can be monday by setting into display setup
- Fix: [ bug #575 ] GED doesn't works if there is "/" in a mask
- Fix: [ task #1728 ] Deactivate RIB suggest in proposals / invoices / orders

For users, new experimental module (need to set feature level of instance to experimental to see them):
- New: Module Accounting Expert to manage accountancy
		Special Thanks to developpers :
			Olivier Geffroy
			Alexandre Spangaro
			Ari Elbaz
			Florian Henry
			Juanjo Menent
		And to the contributors :
			Jeff Info				2000 euros
			Nord Anim		 		 120 euros
			Hydroflex		 		 120 euros
			Asysteo			 		 120 euros
			Fournisseur médical		 120 euros
- Removed: unmaintained OScommerce module

For translators:
- Update language files.
- New: When a translation is not available we always jump to en_US and only en_US.

For developers:
- New: Syslog module can be set to use ChromePHP plugin to output log server into browser console.
- New: Add a css style "cursorpointer".
- New: Select list of users can return user into hierarchy.
- New: getBrowserInfo can return type of layout of browser (classic/phone/tablet)
- New: Add hook "searchAgendaFrom" and "beforePDFCreation".
- New: Add trigger DON_UPDATE, DON_DELETE
- New: Add country iso code on 3 chars into table of countries.
- Qual: Removed hard coded rowid into data init of table llx_c_action_trigger.
- LINEBILL_DELETE, LINK_DELETE, ORDER_SUPPLIER_DELETE, RESOURCE_DELETE trigger called before SQL delete
- New: [ Task #1481 ] Add trigger BILL_SUPPLIER_UPDATE.
- New: [ Task #1495 ] Add trigger LINECONTRACT_CREATE.
- New: Added hook "formConfirm" and "doActions" for supplier invoice card.
- New: [ task #1511, #1426 ] Added hook "doActions" for supplier card and supplier order card.
- New: renamed table llx_c_pays to llx_c_country & libelle field to label.
- New: Added hook "formConfirm" and "doActions" for fichinter card
- New: Can search list of thirdparties from web service on part of name.
- New: Function getCurrencyAmount is marked as deprecated. Use function price to output a price
       including currency symbol.
- Qual: Renamed table llx_c_civilite into llx_c_civility,
		field civilite into label in the same table,
		and field civilite into civility in other table.
- Qual: Renamed all files & links "liste.php" into "list.php".
- Qual: Renamed all files & links "fiche.php" into "card.php".
- Qual: Replace all constants COMPTA_* by ACCOUNTING_*.
- Qual: Replace all constants ACCOUNTINGEX_* by ACCOUNTING_* to simplify migration of the module
- Fix: [ bug #1724 ] Can't add a submenu to projects

WARNING:

Do not try to make any Dolibarr upgrade if you are running Mysql version 5.5.40.
Mysql version 5.5.40 has a very critical bug making your data beeing definitely lost.
You may also experience troubles with Mysql 5.5.41 with error "Lost connection" during migration.
Upgrading to any other version or database system is abolutely required BEFORE trying to
make a Dolibarr upgrade.

WARNING: 

Following changes may create regression for some external modules, but was necessary to make
Dolibarr better:

- Path to save photos of products was moved to match path of other attached files. If you had loose your photo
  on the photo tab of products, you can set the constant "PRODUCT_USE_OLD_PATH_FOR_PHOTO" to 1 (home - setup - other)
  to restore old path and get back working links without having to resubmit images.
- If you can't see trips and expenses records, check that you have the new permission "read all
  trips and expenses".
- Deprecated module "oscommerce" were removed.
- Changed the way parameters are provided to scripts sync_xxx_ldap2dolibarr.php
- Some field into database were renamed from "libelle" to "label".
- Table llx_c_pays were renamed into llx_c_country.
- Triggers *_BUILDDOC are removed. Building a doc is not a business event. For action after
  creation of a pdf or odt, hook "afterPDFCreation" or "afterODTCreation" must be used instead.
- A lot of pages named fiche.php were renamed into card.php
- A lot of pages named liste.php were renamed into list.php
- If you used warehouse/stock module, recheck setup of stock increase/decrease rules of the
  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.7 compared to 3.6.6 *****
FIX: #4291 Correctly filter external calendar GETPOSTs
FIX: CVE CVE-2015-8685

***** ChangeLog for 3.6.6 compared to 3.6.5 *****
FIX: #3734 Do not show empty links of deleted source objects in stock movement list
FIX: #4081 Added missing translation
FIX: #4097 Public holiday calculation
FIX: #4242 Allow disabling dashes in documents
FIX: #4243 sql injection
FIX: Add a protection to not make release if ChangeLog was not generated. Prepare package 3.6.5
FIX: export with category contact extrafields
FIX: Not delete a product when have customer price
FIX: Not deleting contrats on element_element table

***** ChangeLog for 3.6.5 compared to 3.6.4 *****
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

***** ChangeLog for 3.6.3 compared to 3.6.2 *****
- Fix: ref_ext was not saved when recording a customer order from web service
- Fix: withdrawal create error if in the same month are deleted previus withdrawals.
- Fix: amarok is a bugged theme making dolidroid failed. We switch to eldy automatically with dolidroid.
- Fix: [ bug #1788 ] Duplicated doActions hook in product/fournisseurs.php
- Fix: withdrawal create error if in the same month are deleted previous withdrawals.
- Fix: [ bug #1801 ] FAC_FORCE_DATE_VALIDATION constant alters supplier invoice date given to numeration modules
- Fix: [ bug #1802 ] SQL error when updating a task with PostgreSQL database
- Fix: [ bug #1785 ] Start date is lost in Project > Linked objects
- Fix: [ bug #1804 ] SQL error when sending email without address
- Fix: [ bug #1803 ] AJAX company contact input is not aligned
- Fix: [ bug #1787 ] Incorrect behaviour of doActions hook
- Fix: [ bug #1796 ] Unable to use numeration modules from an external module
- Fix: [ bug #1783 ] SQL error when enabling 3rd party module with PostgreSQL and MySQL strict mode ON
- Fix: [ bug #1717 ] Sorting unpaid invoices by amount received brings due amount
- Fix: [ bug #1784 ] MOTD doesn't show up in Amarok theme
- Fix: Tracking number not visible on shipment pdf
- Fix: [ bug #1812 ] SQL Error message while sending emailing with PostgreSQL database
- Fix: [ bug #1819 ] SQL error when searching for an invoice payment
- Fix: [ bug #1827 ] Tax reports gives incorrect amounts when using external modules that create lines with special codes
- Fix: [ bug #1822 ] SQL error in clientfourn.php report with PostgreSQL
- Fix: [ bug #1832 ] SQL error when adding a product with no price defined to an object
- Fix: [ bug #1833 ] user permissions in contact/note.php not working
- Fix: [ bug #1826 ] Supplier payment types are not translated into fourn/facture/paiement.php
- Fix: [ bug #1830 ] Salaries payment only allows checking accounts
- Fix: [ bug #1825 ] External agenda: hide/show checkbox doesn't work
- Fix: [ bug #1790 ] Email form behaves in an unexpected way when pressing Enter key
- Fix: Bad SEPA xml file creation
- Fix: [ bug #1892 ] PHP Fatal error when using USER_UPDATE_SESSION trigger and adding a supplier invoice payment
- Fix: Showing system error if not enough stock of product into orders creation with lines
- Fix: [ bug #2543 ] Untranslated "Contract" origin string when creating an invoice from a contract
- Fix: [ bug #2534 ] SQL error when editing a supplier invoice line
- Fix: [ bug #2535 ] Untranslated string in "Linked objects" page of a project
- Fix: [ bug #2545 ] Missing object_margin.png in Amarok theme
- Fix: [ bug #2542 ] Contracts store localtax preferences
- Fix: Bad permission assignments for stock movements actions
- Fix: [ bug #2891 ] Category hooks do not work
- Fix: [ bug #2696 ] Adding complementary attribute fails if code is numerics
- Fix: [ bug #3074 ] Accruals accounting use payment date instead of commitment date in turnover reports for salaries
- Fix: Not showing product supplier reference when page break
- Fix: [ bug #3341 ] Missing translation in /compta/paiement_charge.php
- Fix: [ bug #3342 ] Taxes dictionary page does not accept localized decimals for localtax2 rate

***** ChangeLog for 3.6.2 compared to 3.6.1 *****
- Fix: fix ErrorBadValueForParamNotAString error message in price customer multiprice.
- Fix: bug 1588 : relative discount.
- Fix: label of input method not translated.
- Fix: box of customer and prospects were not correctly disabled.
- Fix: [ bug #1618 ] PHP Error thrown when saving a barcode
- Fix: Civility & birthdate wasn't save into adherent module.
- Fix: webservice Thirdparty parameter lastname for individual creation is now lastname and not ref
- Fix: Chars - is no more allowed into value for code for extra fields.
- Fix: [ bug #1622 ] Requesting holiday than spans across two years cause high CPU usage by Apache
- Fix: [ bug #1595 ] Selected boolean extrafield in intervention creation page, does not save state
- Fix: Show sender Country on PDF docs when sender Country <> receiver Country
- Fix: [ bug #1624 ] Use lowest buying price for margin when selling with POS
- Fix: [ bug #1749 ] Undefined $mailchimp
- Fix: [ bug #1736 ] Failing supplier Elephant numeration module with some masks
- Fix: [ bug #1649 ] Cancel button of several thirdparty actions, does the same thing as modify
- Fix: [ bug #1736 ] Failing supplier Elephant numeration module with some masks
- Fix: [ bug #1731 ] Can't use quick navigation on project tasks secondary tabs

***** ChangeLog for 3.6.1 compared to 3.6.* *****
For users:
- Fix: Can upload files on services.
- Fix: sql errors on update fichinter.
- Fix: debian script syntax error.
- Fix: error "menu param is not inside list" into pos module.
- Fix: Salary payments are not reflected on the reporting sheets.
- Fix: Unsubscribe emailing not working.
- Fix: Trigger on create category call failed because user is not passed on card.
- Fix: list event view lost type event filter.
- Fix: Save also code event.
- Fix: VAT payment - Add control on field date value.
- Fix: Salaries payment - Field date value is now required and add control on it.
- Fix: Iban was used instead of Bic into SEPA file.
- Fix: Must unaccent strings into SEPA file.
- Fix: Extrafield feature select from table should try to translate multiple column when not needed 
- Fix: cents for indian ruppes are called paisa and paise.
- Fix: Invoices payments may be older than invoices.
- Fix: Withdrawal total amount is double
- Fix: [ bug #1593 ] Spanish Localtax IRPF not being calculated since 3.6.0 in supplier invoices when adding a line
- Fix: Web service categorie WDSL declaration is correct
- Fix: ErrorBadValueForParamNotAString was displayed in virtual product if no base price defined
- Fix: Category creation failed and no message output
- Fix: Lang for Payment Type
- Fix: PHPCheckstyle 1.5.5

***** ChangeLog for 3.6 compared to 3.5.* *****
For users:
- New: Update ckeditor to version 4.
- New: Add form "search customer order" on commercial main page.
- New: Can create contract from an order.
- New: Add list of orders products in tab "consumption" on thirdparties.
- New: Add graph stats for suppliers orders in tab "stats" on products.
- New: Add option MAIN_HIDE_INACTIVETAB_ON_PRINT to hide inactive tabs when you
       use the "print" view on screen.
- New: Add option MAIN_AUTO_TIMESTAMP_IN_PUBLIC_NOTES and MAIN_AUTO_TIMESTAMP_IN_PRIVATE_NOTES
       to automatically add timestamp and user line into edition field when editing a note.
- New: Add button cancel into edition of notes.
- New: Improved Barcode module:
       Can input barcode during product creation step.
       Add autonumbering of barcode value for products.
       Add a page/tool for mass barcode generation.
- New: Improved Opensurvey module:
       Added options to disable comments and disable public votes.
       Limit dates use calendar popup.
       Description of survey use wysiwyg editor.
       More information shown on result tab.
       Renamed "survey" into "poll" (better translation).
- New: Add filter on text and status into survey list. Can also sort on id, text and date end.
- New: The box "balance of bank accounts" show all opened accounts.
- New: Add option MAIN_ADD_SALE_REP_SIGNATURE_IN_NOTE to add sale representative into public
       note of generated documents.
- New: Add warning if supplier payment is higher that due amount.
- New: Increase length of url into bookmark module.
- New: Automatic events sending mails add info about linked objects into email content. 
- New: Price management enhancement (multiprice level, price by customer, if MAIN_FEATURES_LEVEL=2 Price by qty).
- New: Add option MAIN_FAVICON_URL.
- New: Created {line_price_ht_locale}, {line_price_vat_locale} and {line_price_ttc_locale} ODT tags.
- New: Add filter on project status into task list. By default, only "opened" project are visible.
- New: Status "validated" for project are renamed into "opened".
- New: Add barcode fields into user database.
- New: Add manager name (ceo, director, president...) into main company information page.
- New: Add field url as product properties.
- New: More options to create a credit note (can be filled automatically according to remain to pay).
- New: Can define custom fields for categories.
- New: Prepare generation of SEPA files into module withdrawal.
- New: [ task #1164 ] Add "Ref. supplier" search box in supplier orders
- New: [ task #1345 ] Can filter on status for supplier order.
- New: Add option FACTURE_SENDBYEMAIL_FOR_ALL_STATUS to allow to send invoice by email 
       whatever is its status.
- New: Add filter date in bank writing list page.
- New: Extrafields can be used as substitution key %EXTRA_XXX% into emails texts for members.
- New: Add categories translation.
- New: Enable option "clone target emailing".
- New: Improved tax module: Add specific page for salaries payment	
- New: Add composer.json file so Dolibarr can be publish onto packagist.org.
- New: The combo list of juridical status is now sorted
- New: [ task #926 ] Add extrafield feature on order lines.
- New: [ task #927 ] Add extrafield feature on Proposal lines.
- New: [ task #928 ] Add extrafield feature on invoice lines.
- New: Paypal/paybox email sent after backcall of a payment is now a formatted and translated
       HTML content. For member subscription renewal, there is also a link to member.
- New: When a subscription is recorded with invoice and payment:
       - the document (PDF) of invoice is also generated.
       - the invoice is set to status paid.
- New: Can enter holiday for someone else if user has permission for.
- Fix: Project Task numbering customs rule works.
- Fix: Add actions events not implemented.
- Fix: Price min of composition is not supplier price min by quantity.
- Fix: [ bug #1356 ] Bank accountancy number is limited to 8 numbers.
- Fix: [ bug #1439 ] impossible to remove a a translation (multilanguage-feature)
- New: If multilangue is enabled, mail (from propal, invoice, etc...) message is pre-defaulted in Customer language
- Fix: [ bug #1459 ] _ADD_CONTACT and _DEL_CONTACT triggers do not intercept insertion when reported an error
- Fix: [ bug #1478 ] BILL_PAYED trigger action does not intercept failure under some circumstances
- Fix: [ bug #1479 ] Several customer invoice triggers do not intercept trigger action
- Fix: [ bug #1477 ] Several customer invoice triggers do not show trigger error messages
- Fix: [ bug #1471 ] Several PHP warnings when intercepting USER_CREATE trigger.
- Fix: [ bug #1517 ] Packages sizes.
- Fix: [ bug #1521 ] The second order's page from a provider shows all orders

For translators:
- Update language files.

For developers:
- New: Add path file of trigger into admin trigger list page.
- New: More phpunit tests.
- New: Payments and supplier payment pages tabs can now be extended from modules.
- New: Add option 'aZ' into GETPOST function to check parameters contains 
       only a to z or A to Z characters.
- New: Opensurvey polls tab cards can now be extended from external modules.
- New: Triggers OPENSURVEY_CREATE, OPENSURVEY_DELETE added.
- New: Add new hook function addMoreActionsButtons to allow a module to add/replace
       action buttons into an element.
- New: Normalize code for barcode generation to match other modules.
- New: Uniformize code for contacts forms.
- New: Add some hooks for financial reports.
- New: A module can add its own ECM view.
- New: A module can disable a standard ECM view.
- New: Add multilang support into product webservice.
- New: Add hooks on project card page.
- New: Add call_trigger method on CommonObject class. So new trigger call within object is just :
$result = $this->call_trigger($trigger_name, $user)

WARNING: Following change may create regression for some external modules, but was necessary to make
Dolibarr better:

- The deprecated way (with 4 parameters) to declare a new tab into a module descriptor file has been
removed. You must now use the 6 parameters way. See file modMyModule.class.php for example. 
- Remove the javascript function ac_delay() that is not used anymore by core code.
- Properties "dictionnaries" into module descriptor files have been renamed into "dictionaries".
- Method form->select_currency() has been removed. Use instead print form->selectCurrency().
- Method form->select_methodes_commande() has been renamed into english name selectInputMethod().
- The following hooks are now 'addreplace' hooks: "formCreateThirdpartyOptions" 
  So check that return value is 0 to keep default standard behaviour after hook, or 1 to disable
  default standard behaviour.
- Properties "civilite_id" were renamed into "civility_id".
- Remove add_photo_web() that is not used anymore by core code.


***** ChangeLog for 3.5.8 compared to 3.5.7 *****
FIX: #4291 Correctly filter external calendar GETPOSTs
FIX: bad calculation for stock value
FIX: bad stock valo
FIX: change order date on clone (as everywhere else)
FIX: CVE CVE-2015-8685
FIX: The hours of date filter aren't correct
FIX: #3442 Remove useless syslog
FIX: #3448 Pass expected date format
FIX: #3471 3.5 Rounding issue when dispatching non-integer

***** ChangeLog for 3.5.7 compared to 3.5.6 *****
Fix: Paypal link were broken due to SSL v3 closed.
Fix: [ bug #1769 ] Error when installing to a PostgreSQL DB that contains numbers
Fix: [ bug #1752 ] Date filter of margins module, filters since 12H instead of 00H
Fix: [ bug #1757 ] Sorting breaks product/service statistics
Fix: [ bug #1797 ] Tulip supplier invoice module takes creation date instead of invoice date
Fix: [ bug #1792 ] Users are not allowed to see margins module index page when no product view permission is enabled
Fix: [ bug #1846 ] Browser IE11 not detected
Fix: [ bug #1906 ] Deplacement does not allow translated decimal format
Fix: [ bug #1905 ] Custom deplacement types do not get translated in deplacement card
Fix: [ bug #2583 ] Unable to create a bank transfer with localized numbers
Fix: [ bug #2577 ] Incorrect invoice status in "Linked objects" page of a project
Fix: [ bug #2576 ] Unable to edit a dictionary entry that has # in its ref
Fix: [ bug #2758 ] Product::update sets product note to "null" when $prod->note is null
Fix: [ bug #2757 ] Deleting product category photo gives "Forbidden access" error
Fix: [ bug #2976 ] "Report" tab is the current tab but it is not marked as selected by the UI
Fix: [ bug #2861 ] Undefined variable $res when migrating
Fix: [ bug #2837 ] Product list table column header does not match column body
Fix: [ bug #2835 ] Customer prices of a product shows incorrect history order
Fix: [ bug #2814 ] JPEG photos are not displayed in Product photos page
Fix: [ bug #2715 ] Statistics page has broken layout with long thirdparty names
Fix: [ bug #2570 ] [Contacts] Page should not process if ID is invalid
Fix: [ bug #3268 ] SQL error when accessing thirdparty log page without a socid parameter
Fix: [ bug #3180 ] formObjectOptions hook when editing thirdparty card does not print result
Fix: [ bug #1791 ] Margin menu not available if any Finance module is not enabled
Fix: [ bug #3310 ] OrderLine::fetch, FactureLigne::fetch and PropaleLigne::fetch do not return anything
Fix: [ bug #3206 ] PropaleLigne, OrderLine and FactureLigne given to triggers through update function does not contain all the information
Fix: [ bug #3313 ] Error enabling module with PostgreSQL database

***** ChangeLog for 3.5.6 compared to 3.5.5 *****
Fix: Avoid missing class error for fetch_thirdparty method #1973
Fix: Can't update phone_pro from web service
Fix: Some security holes.
Fix: copy extrafields when creating order from proposal.
Fix: report on action was not filtering by environment.
Fix: Avoid missing class error.
Fix: Add function dolEscapeXML.
Fix: Bad days and month reported by function.
Fix: Bad margin calculation.

***** ChangeLog for 3.5.5 compared to 3.5.4 *****
Fix: Holiday module was broken. Initialization of amount of holidays failed.
Fix: [ bug #1523 ] suite bug #1334 : filtre et ordre de tri conjoints ne s'appliquent pas.
Fix: Fusion PDF button on unpaid invoice is no more displayed.
Fix: Unpaid invoice launch fusion PDF action even if it is only search (with enter keyboard input instead of lens click).
Fix: Pb when showing log list of holiday module with some mysql versions.
Fix: Error with bad timezone pushed by some browsers.
Fix: shipping list SQL request was not filtering on shipping element
Fix: debian package provided by dolibarr team must use embedded libraries.
Fix: [ bug #1528 ] Leopard Services numeration module description is not translated.
Fix: [ bug #1523 ] suite bug #1334 : filtre et ordre de tri conjoints ne s'appliquent pas.
Fix: [ bug #1534 ] Unknown error when deleting a product photo under special circumstances.
Fix: Update impayees.php
Fix: Link product, In list view and label product.
Fix: visible task into area "time" for "My task" must limit task to tasks i am assigned to.
Fix: When disabled, all fields to add time into task line must be disabled.
Fix: Missing include files.lib.php in some pages that use dol_delete_recursive
Fix: [ bug #1558 ] Product/service edit page title shows new Ref instead of old ref.
Fix: [ bug #1553 ] Saving User displays setup removes menu.
Fix: [ bug #1544 ] Can remove date from invoice.
Fix: list event view lost type event filter.
Fix: Add code save on create event.
Fix: SQL injection.
Fix: [ bug #1589 ] Menu type in "Edit menu" page is not translated
Fix: [ bug #1591 ] Linked object block shows Total HT/TTC even if not having permission to read them
Fix: [ bug #1577 ] When creating new Private individual third, selected third type is ignored
Fix: [ bug #1555 ] Update accountancy code of products does not throw PRODUCT_MODIFY trigger
Fix: [ bug #1548 ] Supplier payment card shows type in French
Fix: [ bug #1546 ] Incorrect page number when searching in the list of bank transactions

***** ChangeLog for 3.5.4 compared to 3.5.3 *****
Fix: Hide title of event when agenda module disabled.
Fix: When using option MAIN_MAIL_ALLOW_SENDMAIL_F, a mail was sent to sender.
Fix: Question about warehouse must not be done when module stock is disabled.
Fix: Option STOCK_SUPPORTS_SERVICES was not correctly implemented
     (missing test at some places).
Fix: Renaming a project with uploaded files failed.
Fix: [ bug #1476 ] Invoice creation form loses invoice date when there is a validation error.
Fix: [ bug #1431 ] Reception and Send supplier order box has a weird top margin.
Fix: [ bug #1428 ] "Nothing" is shown in the middle of the screen in a supplier order.
Fix: The object deliverycompany was not used anymore and output of
     details for delivery reports was lost during 3.5. Rewrite code to
     restore feature.
Fix: [ bug #1445 ] html fix : missing </tr>
Fix: [ bug #1415 ] Intervention document model name and suppliers model names is not shown
     properly in module configuration
Fix: [ bug #1416 ] Supplier order does not list document models in the select box of the 
     supplier order card
Fix: [ bug #1443 ] Payment conditions is erased after editing supplier invoice label or 
     limit date for payment
Fix: Filter on status was not visible when selected from url.
Fix: Filtering on status was last when asking to sort.
Fix: [ bug #1432 ] Trigger SHIPPING_CREATE ignores interception on error.
Fix: [ bug #1449 ] Trigger ORDER_CREATE, LINEORDER_DELETE, LINEORDER_UPDATE and LINEORDER_INSERT ignore interception on error.
Fix: [ bug #1450 ] Several Customer order's triggers do not report the error from the trigger handler.
Fix: [ bug #1451 ] Interrupted order clone through trigger, loads nonexistent order.
Fix: [ bug #1454 ] Mention de bas de page erroné
Fix: Do not display dictionary for non activated module 
Fix: Link element from element project pages
Fix: [ bug #1509 ] Expedition admin free text & watermark submit error
Fix: [ bug #1349 ] AJAX contact selector does not work fine in Project card
Fix: [ bug #1452 ] variable used but not defined
Fix: If multiprice level is used the VAT on addline is not correct
Fix: [ bug #1254 ] Error when using "Enter" on qty input box of a product (on supplier order part)
Fix: [ bug #1462, 1468, 1480, 1483, 1490, 1497] $this instead of $object
Fix: [ bug #1455 ] outstanding amount
Fix: [ bug #1425 ] LINEBILL_SUPPLIER_DELETE failure trigger leads to an endless loop
Fix: [ bug #1460 ] Several supplier order triggers do not show error messages
Fix: [ bug #1461 ] LINEORDER_SUPPLIER_CREATE does not intercept supplier order line insertion
Fix: [ bug #1484 ] BILL_SUPPLIER_PAYED trigger action does not intercept failure under some circumstances
Fix: [ bug #1482 ] Several supplier invoice triggers do not show trigger error messages
Fix: [ bug #1486 ] LINEBILL_SUPPLIER_CREATE and LINEBILL_SUPPLIER_UPDATE triggers do not intercept trigger action
Fix: [ bug #1522 ] Element list into associate object into project are no more filterd by project thirdparty
Fix: [ bug #1526 ] Thumbs of files uploaded with dots in their names do not load correctly
Fix: Import ProfId1 to siren and ProfId2 to siret

***** ChangeLog for 3.5.3 compared to 3.5.2 *****
Fix: Error on field accountancy code for export profile of invoices.
Fix: [ bug #1351 ] VIES verification link broken.
Fix: [ bug #1352 ] Removing a shipping does not remove the delivery.
Fix: Option MAIN_INVERT_SENDER_RECIPIENT broken with typhon template.
Fix: Can disable features with PHPEXCEL (no DLSF compatible).
Fix: Can disable features with CKEDITOR. 
Fix: Pb of records not correctly cleaned when module marge is
     uninstalled (conflict between 'margin' and 'margins').
Fix: [ bug #1341 ] Lastname not added by file or direct input in mass e-mailing.
Fix: [ bug #1357 ] Invoice creator state not printed in generated invoice documents.
Fix: Suppliers invoice mask fails using {tttt} in numbering.
Fix: [ bug #1350 ] pdf template name for typhon was not correctly set when enabling module.
Fix: Navigation on notes for shipments was not working.
Fix: [ bug #1353 ] Email notifications, wrong URL.
Fix: [ bug #1362 ] Note is not saved.
Fix: tr/td balance.
Fix: [ bug #1360 ] note indicator for member tab.
Fix: Nb of notes and doc not visible onto tasks.
Fix: [ bug #1372 ] Margin calculation does not work in proposals.
Fix: [ bug #1381 ] PHP Warning when listing stock transactions page.
Fix: [ bug #1367 ] "Show invoice" link after a POS sell throws an error.
Fix: TCPDF error file not found in member card generation.
Fix: [ bug #1380 ] Customer invoices are not grouped in company results report.
Fix: [ bug #1393 ] PHP Warning when creating a supplier invoice.
Fix: [ bug #1399 ] [pgsql] Silent warning when setting a propal as "facturée" in propal.php
Fix: When number reach 9999 with default numbering module, next number
     will be 10000 instead of 0000 and error.
Fix: element page on project give wrong href link.
Fix: [ bug #1397 ] Filter by supplier orders with status Draft does not filter.
Fix: [ bug #1388 ] Wrong date when invoicing several orders.
Fix: [ bug #1411 ] Unable to set an expedition note if invoices module is not enabled.
Fix: [ bug #1407 ] Rouget pdf overlapped when using tracking number and public notes.
Fix: [ bug #1405 ] Rouget PDF expedition incorrect when two expeditions under the same commande
Fix: [ bug #1434 ] Muscadet supplier order document model linked objects overlap the text

***** ChangeLog for 3.5.2 compared to 3.5.1 *****
Fix: Can't add user for a task.
Fix: Autoselect of warehouse if there is only one warehouse.
Fix: Install of odt template for project and tasks.
Fix: [ bug #1318 ] Problem with enter key when adding an existing
     product to a customer invoice.
Fix: [ bug #1307 ] Quotes get removed from several inputs.
Fix: [ bug #1317 ] Removing a category does not remove all child categories
Fix: [ bug #1312 ] Call to undefined function _()
Fix: Restore build for obs and launchpad.
Fix: deleting files into backup system tools.
Fix: Dump using php not not include lock on tables that are deleted.
Fix: Fixed a problem with bank accounts sharing across entities.
Fix: fields into group by of sql requests for module margins must be
     same than fields into select.
Fix: When select_date is called with '' as preselected date,
     automatic user date was not correctly et (We must set a date into PHP
     server timezone area)
Fix: First param of select_date must always be forged with a dolibarr
     date function and not time().
Fix: fix can't add line with product in supplier order
Fix: [bug #1309]   
Fix: Solve pb of too many embedded tables     
Fix: [ bug #1306 ] Fatal error when adding an external calendar
Fix: A fix to manage automatic creation of code for import.
Fix: Try to add code to provide easy way to fix warning on timezone not
     defined.
Fix: Several fix into workflow/condition for invoice payments or convert
     into discount.
Fix: Option MAIN_PDF_DASH_BETWEEN_LINES was not working when tcpdf was
     making a pagebreak higher than 2 pages.     
Fix: form to add images should not show link form.
Fix: Correction when adding order line with price as '0'.
Fix: [ bug #1283 ] ROUGET Shipment PDF.
Fix: [ bug #1300 ]
Fix: Miscellaneous problems on task tabs (withproject parameter lost and
     download fails).
Fix: Avoid home project page to hung when too many tasks opened.
Fix: bug #1295: Error when creating an agenda extrafield with a number as reference
Fix: Translation of number for pt_PT.
Fix: Error on ajax_constantonoff function.
Fix: [ bug #1323 ] problème pour générer un odt depuis les taches dans projet.
Fix: Can not make withdrawals 

***** ChangeLog for 3.5.1 compared to 3.5.0 *****
Fix: Do not report trigger errors twice.
Fix: Error when creating event was not reported.
Fix: Bug of import of agenda when using https link
Fix: Field nature not saved correctly
Fix: Substitution of extra field was ko for order
Fix: Bad translation of date format for pt_BR.
Fix: priority field of agenda record is smallint.
Fix: Missing loading of lang in some pages.
Fix: Write note in invoice when using pos module.
Fix: Link to paypal was invalid into email text.
Fix: ref and date of supplier invoice.
Fix: Check on bank account.
Fix: Problem with file upload and download.
Fix: Page load not ending when large number of thirdparties. We 
     added option MAIN_DISABLE_AJAX_COMBOX to disable javascript
     combo feature that is root cause of problem.
Fix: [ bug #1231 ] PDF always generated in interventions
Fix: Be sure there is no duplicate default rib.
Fix: Enable extrafields for customer order, proposal and invoice lines. This feature
     was developed for 3.5 but was disabled (hidden) because of a bug not possible to
     fix enough quickly for 3.5.0 release. 
Fix: user right on Holiday for month report nor working.
Fix: [ bug #1250 ] "Supplier Ref. product" sidebar search box does not work
Fix: Bad space in predefined messages. 
Fix: [ bug #1256 ] Signature was not added for email sent from thirdparty page.
Fix: Action event SHIPPING_VALIDATE is not implemented
Fix: The customer code was set to uppercase when using numbering module leopard. We
     must keep data safe of any change.
Fix: [ bug #1291 ] Loading actions extrafields fails.
Fix: [ bug #1123 ] Paid deposit invoices are always shown as partially paid when fully paid
Fix: Corrected project contact types translation.
Fix: [ bug #1206 ] PMP price is bad calculated.
Fix: [ bug #520 ] Product statistics and detailed lists are wrong.
Fix: [ bug #1240 ] traduction.
Fix: [ bug #1238 ] When creating accompte with a %, free product are used for calculation.
Fix: [ bug #1280 ] service with not end of date was tagged as expired.
Fix: [ bug #1295 ] Error when creating an agenda extrafield with a number as reference.
Fix: [ bug #1306 ] Fatal error when adding an external calendar.
New: Added es_CL language
Fix: Margin tabs bad data show
Fix: [ bug #1318 ] Problem with enter key when adding an existing product to a customer invoice.
Fix: [ bug #1410 ] Add customer order line asks for required Unit Price but doesn't interrupt the creation of the line

***** ChangeLog for 3.5 compared to 3.4.* *****
For users:
- New: Add hidden option BANK_DISABLE_DIRECT_INPUT.
- New: More options to select status of users into select user list.
- New: [ task #862 ] Add ODT on shipments.
- New: [ task #149 ] Add # of notes and attachments in tabs.
- New: Can edit customer ref at any time.
- New: [ task #877 ] Reorganize menus.
- New: [ task #858 ] Holiday module: note on manual holiday assignation.
- New: [ task #892 ] Add hidden option in thirdparty customer/supplier module to hide non active
  companies in select_company method.
- New: [ task #531 ] Add a workload field on tasks.
- New: Add graph of bank account input/output into input-output report page.
- New: Add script export-bank-receipts.php
- New: Add option "filter=bank" onto script rebuild_merge_pdf.php to merge PDF that
  has one payment on a specific bank account.*
- New: [ task #901 ] Add Extrafield on Fiche Inter.
- New: Show process id in all command line scripts.
- New: Module mailman can subscribe/unsubscribe to ML according to categories or type of member.
- New: Add object_hour and object_date_rfc as substitution tag for open document generation.
- New: Add options to send an email when paypal or paybox payment is done.
- New: Clone product/service composition.
- New: Add option ADHERENT_LOGIN_NOT_REQUIRED.
- New: Add a cron module to define scheduled jobs.
- New: Add new graphical boxes (customer and supplier invoices and orders per month).
- New: [ task #286 ] Enhance rounding function of prices to allow round of sum instead of sum of rounding.
- New: Can add an event automatically when a project is create. 
- New: Add option MAIN_GENERATE_DOCUMENT_WITH_PICTURE.
- New: Add option excludethirdparties and onlythirdparties into merge pdf scripts.
- New: [ task #925 ] Add ODT document generation for Tasks in project module.
- New: [ task #924 ] Add numbering rule on task.
- New: [ task #165 ] Add import/export of multiprices.
- New: Add Maghreb regions and departments.
- New: A more responsive design for statistic box of home page.
- New: [ task #1005 ] Adapting to Spanish legislation bill numbering
- New: [ task #1011 ] Now supplier order and invoice deal with payment terms and mode.
- New: [ task #1014 ] Add option to recursively add parent category.
- New: [ task #1016 ] Can define a specific numbering for deposits.
- New: [ task #918 ] Stock replenishment.
- New : Add pdf link into supplier invoice list and supplier order list.
- New : Genrate auto the PDF for supplier invoice.
- New : Add category into filter webservice thirdparty method getListOfThirdParties.
- New : Allow to define margin or mark rate during quoting, ordering, invoicing.
- New : User permissions on margin module.
- New : Add ref supplier into muscadet model/
- New : Add ability to copy contact address to clipboard.
- New: Can use tag {mm} before {yy} even when there is a reset into numbering masks.
- New: [ task #1060 ] Register fields localtax(1|2)_type into details tables.
- New: [ task #923 ] Localtax support for ODT templates. 
- New: [ task #90 ] Barcode search.
- New: Add hidden option MAIN_VAT_DEFAULT_IF_AUTODETECT_FAILS.
- New: Can send an email from thirdparty card.
- New: Can cancel holidays that were previously validated.
- New: Can choose contact on event (action com) creation, and filtered by thirdparty.
- New: Add hidden option MAIN_FORCE_DEFAULT_STATE_ID.
- New: Add page to make mass stock movement.
- New: Add field oustanding limit into thirdparty properties.
- New: Can enter a vat payment of zero.
- New: Add path to installed dir of external modules + Name and web of module provider.
- New: Add option to use a specific mask for uploaded filename.
- New: Can attach external links to objects as we can attach files.
- Qual: Implement same rule for return value of all command line scripts (0 when success, <>0 if error).
- Fix: [ bug #992 ] Proforma invoices don't have a separated numeric count.
- Fix: [ bug #1022 ] correct margin calculation for credit notes.
- Fix: Better management of using ajax for upload form (to solve problem when enabling ajax jquery multifile upload in some cases).
- Fix: Lost stats filters into year selection.
- Fix: Some config data are shared between suppliers orders and suppliers invoices

New experimental module:
- New: [ task #157 ] Add a Skype button (adherents / third parties / contacts)

For translators:
- Qual: Normalized sort order of all languages files with English reference files.
- New: Add language code files for South Africa, France new Caledonia, Vietnam.
- New: Translate string for email to change password.

For developers:
- New: DolGraph can build graph with three lines.
- New: DolGraph accept a parameter to cache data of graph getNbByMonthWithPrevYear.
- New: Can enable tuning info with option MAIN_SHOW_TUNING_INFO.
- New: Show version of client lib used by mysql drivers.
- New: Add function to get content of an url (using all dolibarr setup like timeout, proxies...)
- New: Upgrade lib of TCPDF to 6.0
- New: Upgrade jquery flot library to 0.8.1
- New: Add property "hidden" into module descriptors to allow to hide a module according to
  some dynamic conditions.
- New: Add option MAIN_MOTD_SETUPPAGE to add a content onto setup page. Also content for
  MAIN_MOTD_SETUPPAGE, MAIN_MOTD_SETUPPAGE, MAIN_HOME now accept "|langfile" into translation
  key to use a specific language file.
- New: Make some changes to allow usage of several alternative $dolibarr_main_url_root variables.
- Qual: All nowrap properties are now using CSS class nowrap.
- Qual: Move hard coded code of module mailmanspip into trigger.
- New: Into POST forms, if you can add a parameter DOL_AUTOSET_COOKIE with a value that is list name,
  separated by a coma, of other POST parameters, Dolibarr will automatically save this parameters
  into user cookies.
- New: Add hook addHomeSetup.
- New: Add trigger CATEGORY_LINK and CATEGORY_UNLINK.
- New: A trigger can return an array of error strings instead of one error string.
- New: Add method to use a dictionary as a combo box.
- New: Add update method for web service product.
- Fix also several bugs with old code. 

WARNING: Following change may create regression for some external modules, but was necessary to make
Dolibarr better:

1) We started to clean hooks code. 
If your hook want to modify value of $actions, it's role of your hook to modify it. Dolibarr 
hook code will no more decide this for your module. If your action class for hook was returning
a string or an array, instead your module must set $actionclassinstance->results (to return array) 
or $actionclassinstance->resprints (to return string) to return same thing. The return value must 
be replaced by a "return 0";
Goal is to fix old compatibility code that does not match hook specifications: 
 http://wiki.dolibarr.org/index.php/Hooks_system   

2) If you implemented hook printTopRightMenu, check that output does not include '<td>' tags any more.
All content added must be tagged by a '<div>' with css class="login_block_elem"

3) Some methods object->addline used a first parameter that was object->id, some not. Of course
this was not a good practice, since object->id is already known, there is no need to provide id as 
parameter. All methods addline in this case were modified to remove this parameter. 

4) Method ->classer_facturee() is deprecated. It must be replace with ->classifyBilled().

5) Property ->tel on objects is now ->phone

6) Trigger LINEPROPAL_MODIFY is renamed into LINEPROPAL_UPDATE and
   Trigger CONTRACT_LINE_DELETE rnamed into LINECONTRACT_DELETE to match naming rules.



***** ChangeLog for 3.4.3 compared to 3.4.2 *****
Fix: Bad get of localtaxes into contracts add lines
Fix: Warning into bank conciliation feature.
Fix: Bad get of localtaxes into contracts add lines.
Fix: Add a limit into list to avoid browser to hang when database is too large.
Fix: [ bug #1212 ] 'jqueryFileTree.php' directory traversal vulnerability
Fix: Agenda and Banks module were not working with multicompany module
Fix: [ bug #1317 ] Removing a category does not remove all child categories
Fix: [ bug #1380 ] Customer invoices are not grouped in company results report.

***** ChangeLog for 3.4.2 compared to 3.4.1 *****
Fix: field's problem into company's page (RIB).
Fix: Document cerfa doesn't contained firstname & lastname from donator.
Fix: Bad rounding on margin calculations and display.
Fix: Option drop table into backup was broken.
Fix: [ bug #1105 ] Searching Boxes other search option.
Fix: wrong buy price update.
Fix: [ bug #1142 ] Set paiement on invoice (PGSql).
Fix: [ bug #1145 ] Agenda button list type do not display.
Fix: [ bug #1148 ] Product consomation : supplier order bad status.
Fix: [ bug #1159 ] Commercial search "other" give p.note do not exists.
Fix: [ bug #1174 ] Product translated description not good into PDF.
Fix: [ bug #1163 ] SQL Error when searching for supplier orders.
Fix: [ bug #1162 ] Translaction for morning and afternoon.
Fix: [ bug #1161 ] Search on product label.
Fix: [ bug #1075 ] POS module doesn't decrement stock of products in delayed payment mode.
Fix: [ bug #1171 ] Documents lost in interventions after validating.
Fix: fix unsubscribe URL into mailing when sending manually (not by script).
Fix: [ bug #1182 ] ODT company_country tag is htmlencoded.
Fix: [ bug #1196 ] Product barcode search does not expect 13th digit on EAN13 type.
Fix: [ bug #1202 ] Wrong amount in deposit % invoice from proposal.
Fix: Removed analytics tags into doc page.
Fix: Call Image on this instead of pdf.
Fix: Missing parameter for photo.
Fix: Bad SQL request for turnover report.

***** ChangeLog for 3.4.1 compared to 3.4.0 *****
Fix: Display buying price on line edit when no supplier price is defined.
Fix: Retrieving of margin info when invoice created automatically from order.
Fix: Reordering supplier products in list by supplier or supplier ref was crashing.
Fix: [ bug #1029 ] Tulip numbering mask.
Fix: Supplier invoice and supplier order are not displayed into object link into agenda event card.
Fix: [ bug #1033 ] SUPPLIER REF disappeared.
Fix: update extrafield do not display immediatly after update.
Fix: Fix bug with canvas thirdparty.
Fix: [ bug #1037 ] Consumption> Supplier invoices related.
Fix: User group name do not display in card (view or edit mode).
Fix: Link "Show all supplier invoice" on suplier card not working. 
Fix: [ bug #1039 ] Pre-defined invoices conversion.
Fix: If only service module is activated, it's impossible to delete service.
Fix: [ bug #1043 ] Bad interventions ref numbering.
Fix: Mailing module : if an email is already in destinaires list all other email from selector was not inserted.
Fix: Localtaxes balance not showing.
Fix: Intervention box links to contracts id.
Fix: Compatiblity with multicompany module.
Fix: Edit propal line was losing product supplier price id.
Fix: Delete linked element to supplier invoice when deleted.
Fix: [ bug #1061 ] Bad info shipped products.
Fix: [ bug #1062 ] Documents lost in propals and contracts validating.
Fix: Supplier price displayed on document lines and margin infos didnt take discount.
Fix: sorting on qty did not work in supplier product list.
Fix: there was no escaping on filter fields in supplier product list.
Fix: bugs on margin reports and better margin calculation on credit notes.
Qual: Add travis-ci integration.

***** ChangeLog for 3.4 compared to 3.3.* *****
For users:
- New: Can use ODS templates as document templates.
- New: Add link to autofill/reset with quantity to ship when creating a
  delivery receipt.
- New: Event into calendar use different colors for different users.
- New: Support revenue stamp onto invoices.
- New: Add a tab "consumption" on thirdparties to list products bought/sells.
- New: Some performance enhancements.
- New: Can attach files onto trip and expenses modules.
- New: Add hidden option MAIN_PDF_TITLE_BACKGROUND_COLOR.
- New: Merge tab customer and prospect.
- New: Add ES formated address country rule.
- New: Can define a hierarchical responsible on user and add a tree view to 
  see hierarchy of users.
- New: Can expand/collapse menus, categories and users list.
- New: extra parameters are supported into ODT/ODS templates.
- New: total per vat rate are available as tags for ODT/ODS templates.
- New: Some part of interface use more CSS3 (ie: agenda)
- New: [ task #707 ] Create option "ProfIdx is mandatory to validate a invoice".
- New: Can define if we want to use VAT or not for subscriptions (foundation module).
- New: Can define a default choice for "More action when recording a
  subscription" (foundation module).
- New: Add link to check professional id for India.
- New: [ task #731 ] Uniformize ref generation
- New: [ task #748 ] Add a link "Dolibarr" into left menu
- New: Script email_unpaid_invoices_to_representative accepts now a parameter "test"
  and a "late delay".
- New: Can define different clicktodial setups for each user.
- New: Add hidden option INVOICE_CAN_NEVER_BE_REMOVED.
- New: Enhance agenda module to reach RFC2445 ("type" not enabled by default and add
  "busy" information).
- New: Add module Opensurvey.
- New: Default approver for holidays is set by default to hierchical parent.
- First change to prepare feature "click to print" (IPP) for PDF.
- New: [ task #350 ] Merge tab customer and prospect.
- New: [ task #710 ] Add substitution into mailing send (and HTML is now valid).
- New: [ task #711 ] Add combobox for contact, as done for product/thirdparty.
- New: [ task #714 ] In Emailing module admin autogenerate security key of READRECEIPT.
- New: [ task #743 ] GED : Add aministration option to disable autotree display.
- New: [ task #767 ] Customer Address fallback when a contact doesn't have an address.
- New: [ task #768 ] WYSIWYG for all mails.
- New: [ task #773 ] Add Project document in GED(ECM) modules.
- New: [ task #783 ] Add more types for extra parameters (lists, phone, emails, checkbox,
  prices, radio).
- New: [ task #798 ] Add range limit date on product/services as it is done on order 
  and invoice.
- New: [ task #814 ] Add extrafield feature for projects ands tasks.
- New: [ task #770 ] Add ODT document generation for Projects module.
- New: [ task #741 ] Add intervention box.
- New: [ task #826 ] Optionnal increase stock when deleting an invoice already validated.
- New: [ task #823 ] Shipping_validate email notification.
- New: [ task #900 ] Review code of ficheinter.class.php
- Fix: [Bug #958] LocalTax2 for Spain fails on Suppliers
- Fix: [ bug #972 ] Auto completion contact field do not take account the min caract number before search
- Fix: [ bug #971 ] html.form.class.php select_contact with autocomplete do not exclude id from exclude array
- Fix: Expedition creation, can retreive product from other expedition

For translators:
- Update language files.

For developers:
- System of menu managers has been rewritten to reduce code to do same things. 
- An external module can force its theme.
- Add function dol_set_focus('#xxx').
- A mymodule can bring its own core/modules/mymodule/modules_mymodule.php file.
- Removed not used libraries.
- More web services. 
- Renamed some database fields, code variables and parameters from french to english.
- First change to manage margins on contracts.
- Add hook getFormMail.
- Function plimit of databases drivers accept -1 as value (it means default value set
  into conf->liste_limit).
- New: Add option dol_hide_topmenu, dol_hide_leftmenu, dol_optimize_smallscreen,
  dol_no_mouse_hover and dol_use_jmobile onto login page (to support different terminal).
- New: dol_syslog method accept a suffix to use different log files for log. 
- New: Type of fields are received by export format handlers.
- New: when adding an action, we can define a free code to tag it for a specific need.
- New: Enhance Dolibarr migration process to include migration script of external 
  modules.
- New: [ task #811 ] Uniformanize note field.
  

WARNING: If you used external modules, some of them may need to be upgraded due to:
- Fields of classes were renamed to be normalized (nom, prenom, cp, ville, adresse, tel
  were renamed into lastname, firstname, zip, town, address, phone).
  This may also be true for some fields into web services.
- If module use hook pdf_writelinedesc, module may have to add return 1 at end of 
  function to keep same behaviour.

TODO:
backport commit 53672dff75f4fdaeeed037ff9d15f860968022ca to fix confirm with jmobile
backport commit 384e3812eb73a15adafb472cacfb93397a54459b to fix W3C/edit contract
 


***** ChangeLog for 3.3.5 compared to 3.3.4 *****
- Fix: Change to make debian package ok despite removal of ckeditor.
- Fix: jcrop file to match debian rules
- Fix: Add missing country UK.
- Fix: Minor fix into package.
- Fix: Add missing label on project field.

***** ChangeLog for 3.3.4 compared to 3.3.3 *****
- Fix: [ bug #1001 ] Social Contribution : State not correct
- Fix: Better management of pdf generation when tcpdf is not available.
- Fix: Change to be more debian compliant natively.

***** ChangeLog for 3.3.3 compared to 3.3.2 *****
- Fix: [ bug #903 ] Fatal error: Call to undefined function dol_get_first_day() in htdocs/commande/liste.php
- Fix: [ bug #934 ] Error on proformat invoice creation (pgsql)
- Fix: [ bug #947 ] Can't create proposal lines with unit price = 0

***** ChangeLog for 3.3.2 compared to 3.3.1 *****
- Fix: Dutch (nl_NL) translation
- Generalize fix: file with a specific mask not found, again
- Fix: translations and BILL_SUPPLIER_BUILDDOC trigger
- Fix: Can't reset payment due date
- Fix: Orderstoinvoice didn't act as expected when no order was checked
- Fix: Bad link to all proposals into Third party card if customer is prospect
- Fix: Some bugs on withdrawal rejects
- Fix: [ bug #774 ] Bug on creating event with box "all day" crossed
- Fix: [ bug #787 ] Invoice supplier box incorrect tooltip when delay on payment
- Fix: [ bug #789 ] VAT not being calculated in POS
- Fix: [ bug #790 ] Spanish localtax RE not being correctly calculated
- Fix: [ bug #794 ] Lost filter on zipcode in prospect list 
- Fix: [ bug #806 ] Margins module with orders2invoice does not respect cost price
- Fix: [ bug #810 ] Cannot update ODT template path
- Fix: [ bug #816 ] Sales journal does not reflect localtaxes
- Fix: [ bug #817 ] Purchases journal does not reflect localtaxes
- Fix: [ bug #824 ] MAIN_DB_PREFIX not use into dictionary
- Fix: [ bug #828 ] Error when code_region is not a number in llx_c_regions (with postgres)
- Fix: [ bug #855 ] Holiday approval email in French
- Fix: [ bug #856 ] (Holidays module) Mail error if destination user doesn't have an email
- Fix: [ bug #857 ] Invoice created from shipment does not have the order discount
- Fix: [ bug #861 ] Impossible to create a new event in agenda
- Fix: [ bug #827 ] AJAX search does not respect multiprice level
- Fix: [ bug #865 ] Dolibarr navigation array in project/task do not work
- Fix: [ bug #866 ] Standing order from an invoice suggests invoice total amount instead of remaining to pay
- Fix: [ bug #788 ] Date of linked interventions are not shown
- Fix: external users should not see costprice and margin infos
- Fix: [ bug #806 ] Tasks are ordered alphabetically instead of chronological order

***** ChangeLog for 3.3.1 compared to 3.3 *****
- Fix: [ bug #733 ] Mass emailing tools do not support <style HTML tag
- Fix: Package for launchpad
- Fix: [ bug #736 ] Missing column in llx_c_chargesociales  
- Fix: Localtax2 for Spain must be based into buyer
- Fix: [ bug #762 ] Bad profit calculation in Reporting
- Fix: bug dictionary with wrong prefix table

***** ChangeLog for 3.3 compared to 3.2.* *****
For users:
- New: Add holiday module, to declare and follow holidays of your employees.
- New: Add margin management module.
- New: Add new theme Amarok.
- New: [ task #289 ] Can reorder tasks.
- New: Add field "signature" into user card. If filled, text is added 
       at end of predefined email texts. If option MAIN_MAIL_DO_NOT_USE_SIGN is on, this
       feature is disabled.
- New: Can input a payment back onto an credit note.
- New: Add link "Back to list" on all cards.
- New: After first install, warning are visible onto mandatory setup not
       configured. Show also total number of activated modules.
- New: Can filter list of proposal, order or invoice on sales representative.
- New: Add supplier ref on supplier orders.
- New: Can export supplier orders and customers shipments.
- New: First change to install external plugins from gui (experimental). 
- New: Monaco is like France for default vat calculation
- New: Can list elements (invoices, orders or proposals) on a particular
  user contact). This allow to view a "basket" of its elements.
- New: Show bank account on payment list of invoice card.
- New: Cloning project allow to clones task, notes, projects files, tasks files, contacts. 
- New: Enhance default style.
- New: Can edit and resiliate member status from list.
- New: Can insert URL links into elements lines. Also reported into PDF.
- New: When a member is validated, we can subscribe to mailing-lists
       according to its type.
- New: Add a tab into members statistics to count members by nature.
- New: Add link to third party into sells and purchase journal.
- New: Suggest a method to generate a backup file for user with no access
       to mysqldump binary.
- New: Can also use extrafields on contacts/addresses and users.
- New: Support unique field for extrafields.
- New: Extra fields supports more types (int, string, double, date, datetime).
- New: Can correct stock of a warehouse from warehouse card.
- New: [ task #185 ] Can input amount when correcting stock to recalculate PMP.
- New: [ task #454 ] Add "No category" into filters on category.
- New: Auto check box on page to edit interface options of user.
- New: More surface control on stock correction page.
- New: Add great britain provinces.
- New: [ task #494 ] Send an email to foundation when a new member has auto-subscribed.
- New: [ task #326 ] Add a numbering module to suggest automatically a product ref.
- New: Add conditional substitution IF/ELSEIF/ENDIF for ODT templates.
- New: Add unit foot2, inch2, foot3 and inch3 for surface and volumes.
- New: Can select thirdparties into emailing targets, even if module category is not enabled.
- New: [ task #498 ] Improvement of the block to add products/services lines.
- New: ECM autodir works also for files joined to products and services.
- New: Add a selection module for emailing to enter a recipient from gui.
- New: Allow to search thirds and products from barcodes directly from the permanent mini search left box.
- New: Allow to search product from barcodes directly from invoices, proposals... through AJAX.
- New: Can make one invoice for several orders.
- New: POS module can works with only one payment method (cach, chq, credit card).
- New: Add possibility to defined position/job of a user.
- New: Add hidden option to add slashes between lines into PDF.
- New: [ task #210 ] Can choose cash account during POS login.
- New: [ task #104 ] Can create an invoice from several orders.
- New: Update libs/tools/logo for DoliWamp (now use PHP 5.3).
- New: Added ODT Template tag {object_total_discount_ht}
- New: Add new import options: Third parties bank details, warehouses and stocks, categories and suppliers prices
- New: English bank account need a bank code (called sort code) to identify an account. 
- New: Can choose menu entry to show with external site module.
- New: Add hidden option MAIN_PDF_MARGIN_LEFT, MAIN_PDF_MARGIN_RIGHT, MAIN_PDF_MARGIN_TOP, MAIN_PDF_MARGIN_BOTTOM to force margins of generated PDF.
- New: [ task #314 ] Can define if prof id are mandatory or not.
- New: Add button on order card to create intervention from services.
- New: Add search box to find products by supplier reference.
- New: Add option MAIN_HELPCENTER_LINKTOUSE to define target link "I need help" onto logon page. 
- New: [ task #608 ] Can clone a supplier order with prices updates
- New: [ task #559 ] Can define a discount % regarding quantity in supplier prices and price by quantity in customer prices
- New: [ task #527 ] After cloning a suplier invoice, go onto invoice ref into edit mode

New experimental module:
- New: Add commissions management module.

- Fix: [ bug #499 ] Supplier order input method not translated
- Fix: No images into product description lines as PDF generation does not work with this.
- Fix: Errors weren't being shown in customer's & supplier's orders
- Fix: Lastname wasn't being recorded in xinputuser emailing module.
- Fix: [ bug #653 ] Error while creating agenda additional attributes
- Fix: [ bug #654 ] Event rapport PDF showing ActionAC_OTH_AUTO
- Fix: [ bug #658 ] Search on bank do not work for description
- Fix: [ bug #659 ] Comment in recurrent invoices is not stored
- Fix: [ bug #622 ] Attaching wrong file when sending the invoice via e-mail

For developers:
- New: Add webservice for thirdparty creation and list.
- New: A module can overwrite templates parts.
- New: Can add a link on title field of added dictionary.
- New: Uniformize code.
- New: Add option WORKFLOW_DISABLE_CREATE_INVOICE_FROM_ORDER and 
       WORKFLOW_DISABLE_CLASSIFY_BILLED_FROM_ORDER.
- New: A module can add several css and js.
- New: removed deprecated methods
       ldap::connect, formadmin::select_lang,
       html::select_tva
- New: Add custom substitution function for ODT product lines: mymodule_completesubstitutionarray_lines()
- New: Basic implementation of hooks and triggers for a lot (most) of core modules: 
  action/calendar, trips and expenses, dons, vat payment, contact/society, contract, product lines, 
  expedition, order supplier and order invoice (lines included), intervention card, project, tasks.
- New: Add ChromePHP output into syslog module.
- New: Add PRODUCT_PRICE_MODIFY trigger.
- New: Created function to retrieve total amount of discount of an invoice/proposal...
- New: We can use a dynamic value ($conf->global->XXX for example) into titles of menus.
- New: Use PHP classes DateTime* for some data functions instead of adodb 
- Qual: Renamed SUPPLIER_INVOICE_BUILDDOC trigger to BILL_SUPPLIER_BUILDDOC
- Qual: Renamed INVOICE_SUPPLIER_DELETE trigger to BILL_SUPPLIER_DELETE
- Qual: Renamed SUPLIER_ORDER_BUILDDOC trigger to ORDER_SUPPLIER_BUILDDOC
- Qual: Renamed CONTRACTLINE_DELETE trigger to CONTRACT_LINE_DELETE
- Qual: Renamed all ficheinter.class.php triggers so that they start with 'FICHINTER_'
- Fix: [ bug #655 ] ORDER_REOPEN trigger incorrectly named
- Fix: [ bug #656 ] Contracts trigger CONTRACT_MODIFY incorrectly named
- Fix: [ bug #657 ] Usergroup class' GROUP_DELETE trigger incorrectly named

For translators:
- New: Update language files (de, tr, pt, ca, es, en, fr).
- New: Added bg_BG autotranslated language.
- New: Translate the donation receipt.

Dolibarr license has also been updated from GPLv2+ to GPLv3+.



***** ChangeLog for 3.2.3 compared to 3.2.2 *****
- Fix: Some permission into agenda module.
- Fix: Generation of PDF was not using correct font for some languages.
- Fix some translations.
- Fix: [ bug #607 ] Nom de société avec guillemets.
- Fix: Option MAIN_MAIL_SENDMAIL_FORCE_BA and MAIN_FIX_BUGGED_MTA was not
  complete.
- Fix: comaptiblity with multicompany module.
- Fix: Bad label when validating/paying an invoice from POS module.
- Fix: Correct recipient into rouget template.
- Fix: A lot of fix into PDF pagebreak management.
- Update VAT for some countries.
- Firstname was missing when sending email from file list.
- Added en_SA language.



***** ChangeLog for 3.2.2 compared to 3.2.1 *****
- Fix: Modify spanish VAT to new rates.
- Fix: Add error message when creating already existing product.
- Fix: Edition of percentage of an event.
- Fix: Minor look fix for theme bureau2crea.
- Fix: Start and end date not saved at project creation
- Fix: Default vat is zero for customer invoices if company does not use vat
- Fix: Localtaxes unit prices precision



***** ChangeLog for 3.2.1 compared to 3.2.0 *****
- Fix: Edit of projects.
- Fix: Activation of modules does not fails if directory install was removed.
- Fix: [ bug #444 ] Regression on auto-closing for proposals and orders.
- Fix: Update translations (catalan, french, spanish, brazilian).
- Fix: [ bug #445 ] Hex escaping in descriptions.
- Fix: error when validating shipment for non predefined products with a
  selected warehouse.
- Fix: Bad local taxes if price base type is TTC for spanish local taxes.
- Fix: Phone not saved when using web service.
- Fix: [ bug #464 ] Payment form should allow to add transmitter for bank transfers.
- Fix: Allows to use a comma decimal separator in supplier invoices payments.
- Fix: Translation for tr_TR, es_ES, pt_BR.
- Fix: Products with no prices not visible.
- Fix: Access to product card created with very old version of Dolibarr.
- Fix: Delete temporary files after validating an invoice.
- Fix: preview of supplier order and invoice template.
- Fix: [ bug #485 ] Configurated amount for public auto-subscription form is not taken into account
- Fix: Average amount graphs weren't comparing the previous year stats
- Fix: Closed project didn't show the new status unless the page was refreshed
- Fix: Files were not being uploaded to a project's task
- Fix: [ bug #503 ] Unable to delete linked file to a deposit
- Fix: [ bug #501 ] Error while trying to modify an user
- Fix: [ bug #506 ] Can't set percentage of a started event
- Fix: Bad assignation of const for pdf delivery module name



***** ChangeLog for 3.2.0 compared to 3.1.* *****
WARNING: PHP lower than 5.x are no more supported.
WARNING: Because of a major datastructure change onto supplier prices tables, be aware
to make a backup of your database before making upgrade.

For users:
- New: Each user can remove/add its own boxes.
- New: Add signature at end of predefined email text.
- New: Can use personalized fields on products/services.
- New: Can attach files on social contributions.
- New: Show payments terms and conditions onto muscadet template.
- New: Can open back a closed commercial proposal.
- New: show thirdparty barcode on main tab.
- New: Can input note (private and public) during note and expenses creation.
- New: Print ticket show invoice ref into POS module.
- New: Can edit customer discounts from invoice create and edit card.
- New: task #11243: Show quantity into stocks for each sub-products into the sub-product tab.
- New: task #10500: Option to choose if professional id are unique.
- New: Add hidden option FOURN_PRODUCT_AVAILABILITY.
- New: task #11123: Add best supplier price.
- New: Enhancement in styles.
- New: Can conciliate several lines in one operation.
- New: task #11289 : Modify third party accountancy code generator aquarium.
- New: task #10606 : more comprehensive message error.
- New: task #11278 : Option into point of sale module to add services in list.
- New: task #11261 : Add an entry into menu called "New shipment".
- New: [ task #187 ] Gerer les evenement recurrents dans les imports ical.
- New: Make option MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT available by default.
- New: Can build PDF in USLetter format or canada format (change paper size).
- New: Can export into Excel 2007 format.
- New: Add hidden option CASHDESK_FORCE_STOCK_ON_BILL
- New: Can search on part of barcode into POS module.
- New: Cheques into cheques receipts are ordered by operation date.
- New: Add hidden option MAIN_DISABLE_PDF_AUTOUPDATE to avoid generating pdf each time data change.
- New: Add hidden option PROJECT_HIDE_UNSELECTABLES to hide project you can't select into combo list.
- New: Add option INVOICE_POSITIVE_CREDIT_NOTE.
- New: Support zip/town autocompletion into warehouses.
- New: Add box for last expired services.
- New: Reduce seriously size of packages.
- New: Can define country code for import.
- New: When invoice was generated from order, order date is visible on PDF, after order ref.
- New: [ task #181 ] Hide password of click2dial in user card.
- New: Chart are faster to build
- New: Value of data into charts are visible on mouse hover.
- New: Import wizard can import contacts.
- New: Import wizard can import personalized fields.
- New: Personalized fields support int type.
- New: Install process is now two times faster.
- New: Can sort files into backup tool.
- New: Default output charset are utf8 into backup tool.
- New: Add brazilian states.
- New: Increase usability of module project.
- New: [ task #285 ] Add search filter on project in tasks list.
- New: Automatic list of documents in ECM module is ok for customers,
       suppliers invoice, orders, customers orders, proposals and social contributions.
- New: All professional id can contains up to 128 chars instead of 32. 
- New: [ task #176 ] Allow to use ODT templates for proposals and orders like it's done for invoices
- New: Add hidden option MAIN_ADD_PDF_BACKGROUND to add a PDF as background of invoice/order generated PDF.
- New: Can convert a product/service into service/product.
- New: Show delivery date into proposal template azur. 
- New: Support tags into header and footer into ODT templates.
- Fix: Can use POS module with several concurrent users.
- Fix: Installer don't fails with Mysql version that added a ssl_cypher field.
- Fix: Sanitize input parameters.
- Fix: [ bug #368 ] Product list
- Fix: [ bug #370 ] Filter in accountancy -> suppliers_bills
- Fix: [ bug #399 ] Bad calculation of local taxes in update line products
- Fix: [ bug #427 ] Bad links to wiki help in certains menus

For developers:
- New: Can add a left menu into an existing top menu or left menu.
- New: Add webservice to get or create a product or service.
- New: Add webservice to get a user.
- New: Add more "hooks" (like hooks to change way of showing/editing lines into dictionnaries).
- New: Log module outputs can be setup with "or" rule (not only "xor").
- New: Add FirePHP output for logging module.
- New: Add trigger ACTION_DELETE and ACTION_MODIFY.
- New: Trigger now have a priority to define sort execution order.
- New: Can define different requests according to database type into migration files.
- New: Add "canvas" feature to overwrite page of thirdparty, contact, product with yours.
- New: Removed artichow deprecated libraries.
- New: A page can force reload of css style sheet
- New: A module can add import description for import wizard, even for tables with foreign keys.
- New: Can add tabs on statistics views.
- New: Add CSS id/class into public payment pages.
- Qual: Add a lot of more PHPUnit tests.
- Qual: Data structure for supplier prices is simpler.
- Qual: Removed no more used external libraries.
- Qual: Cleaned a lot of dead code.
- Qual: More OOP (usage of "abstract", "static", ...), uniformize constructors.
- Qual: Fix a lot of checkstyle warnings.
- Qual: task #216 : Move /lib into /core/lib directory
- Qual: task #217 : Move core files into core directory (login, menus, triggers, boxes, modules)
WARNING: To reduce technic debt, all functions dolibarr_xxx were renamed int dol_xxx.



***** ChangeLog for 3.1.3 compared to 3.1.2 *****
Fix: PgSQL - property must be set if success
Fix: Provide a solution for backup when mysqldump is not available
Fix: Bug #460 - Wrong entity assignment when creating a warehouse
Fix: bug #405 - Late icon always displayed on comm/propal.php



***** ChangeLog for 3.1.2 compared to 3.1.1 *****
- Fix: Can clone a proposal
- Fix: Add member ID in substitution method
- Fix: Duplicate end tag and missing form parts
- Fix: Support companies with no prof id.
- Fix: Sanitize data
- Fix: Bug #318
- Fix: Bug #369
- Fix: More bugs



***** ChangeLog for 3.1.1 compared to 3.1.0 *****
- New: Add option FACTURE_DEPOSITS_ARE_JUST_PAYMENTS. With this option added, 
       credit notes are not removed from total amount of invoice but are just 
       payments used to reducs remain to pay.
- New: Added hidden option MAIN_FIX_FOR_BUGGED_MTA to fix bugged MTA.       
- Fix: Removed warnings during install.
- Fix: State into address of paypal payments were lost.
- Fix: Currency into paypal payments were always euros.
- Fix: Removed Bare LF from emails sent with smtps method.
- Fix: Can show report on selected period.
- Fix: product removed from list after deleted into order.
- Fix: [bug #270] PostgreSQL backend try to connect throught TCP socket for 
- Fix: price was not without tax when using multiprice into POS module.
- Fix: Can delete bank account.
- Fix: [ bug #277 ] Year dropdown in table header of supplier invoices.
- Fix: Some other very minor fixes.


***** ChangeLog for 3.1 compared to 3.0 *****
WARNING: IE6 browser is no more supported in this version.
For users:
- New: War against number of clicks:
     - When adding a free bank transaction, form to add next one is still
       visible (save one click).
     - task #10969 : Add checkbox to close automatically invoice if
       payment is complete (save 3 clicks).
     - Reduce a step into supplier order workflow to save time. If user
       has permission to approve, order is approved when order is validated.
       (Save 2 clicks).
     - In commercial main menu, left menu are already opened. This save one click
       to open a proposal or order.
     - Can add a discount for third party, during invoice edition (and we 
       saved clicks again).
     - When creating a contract, sales representative are preset to user. This save
       4 clicks.
     - Can edit several fields in bank transaction line page into one update.
     - Creation of contacts from third party page go back to third party.
     - Preselect model if there is only one. This save 2 clicks. 
     - Can remove a project if project has tasks. No need to delete task one by one.
- New: Enhance donation module. Add a status "canceled".
- New: Add filters on all statistics report pages.
- New: If a service contains subproducts, subpoducts are decrease when service
       is decrease.
- New: Add status for third parties to disable a third party.
- New: Can send interventions cards by email.
- New: Increase list of available notifications into module Notifications.
- New: Add option MAIN_FIRST_TO_UPPER to force upper case of first 
       letters for names and firstname.
- New: Can filter of payment type in bank transaction list.
- New: Status of users is visible into user list.
- New: Support BSB code for bank account in Australia.
- New: Can set date of payment for autocreate invoice/payment when 
       creating a foundation subscription.
- New: Can edit note of payment.
- New: Option to make login not mandatory in member module.
- New: Add box for last members for foundation module.
- New: A specialized menu can now be used when using smartphones.
- New: Can add information on current user on ODT generation.
- New: Prefix on third party is not used by default. Hidden option
       SOCIETE_USEPREFIX can restore old feature.
- New: Standing orders module use bank account from banks module.
- New: Ask password when creating a user from a contact.
- New: task #10577: Use a numbering module for shipment and contract.
- New: Can create manually order from proposal.
- New: Add a first workflow module to create automatic action on some
       events (create order on proposal closing).
- New: Use autocompletion on invoice select when creating replacement 
       or credit note invoice.
- New: task #10885: Add a week view for calendar.
- New: task #11018: Add a status "not applicable" on events.
- New: Add subscriptions/country/region/town statistics for member module.
- New: Can define a proxy for external web access.
- New: task #11003: checkbox on checks for deposit.
- New: Add status into export. Add third party default language into export.
- New: Can filter on date and bank account when building check receipts.
- New: task #10958 : Add link to cheque receipts into bank transaction 
       line if exists
- New: Can import external ical url into dolibarr agenda view.
- New: Can add a logo on third parties card.
- New: task #11194 : Can delete uploaded photos 
- New: task #9744 : Add the barcode to select products on Point of Sale module
- New: Subscription/Unsubscription to mailman mailing-list can be done on 
       validate/resiliate in foundation module.
- New: Can use extrafields on third parties.
- New: Add chart to report counts by status on element home area pages.
- New: Look: Usage of Jquery Notify to show result or error messages on action.
- New: Look: Minor enhancements into agenda view.
- New: Look: Nicer tooltips with transparency and shadow.
- New: task #11004: Create invoice from intervention.
- New: task #10501: Can use point of sale with different bank accounts.
- Fix: Better Postgresql compatibility.
- Fix: Numbering module for invoices use same number for invoice 
       and credit note if mask is same.
- Fix: Debug and clean withdraw module.
- Fix: Allow access permission for point of sale module.
- Fix: Permissions issues with suppliers.
- Fix: Admin dict data is showing with active language 

For developers:
- New: External modules can add tabs on agenda views.
- New: External modules can also remove default tabs.
- New: External modules can force skin directory so force their own skins.
- New: External modules can add their own menu manager.
- New: External modules can force menu manager.
- New: External modules can overwrite all default language files by
       forcing priority on langs directories on its own lang directory.
- New: External modules can show export list with an "enabled" condition.
- New: Support a backtopage parameter on contact creation page.
- New: Add id on div to show logo.
- New: Install wizard can activate a module at end of install.
- New: Dictionary setup works with very large external dictionnaries (Add 
       page navigation).
- New: Add api to draw graphics with javascript (using Jquery Flot).
- New: Can add user login into menu urls added by modules.

For translators:
- New: Add fa_IR language.
- Fix: Move language ar_AR to ar_SA, sv_SV to sv_SE and da_Da to da_DK.



***** ChangeLog for 3.0 compared to 2.9.* *****
For users:
- New: Can edit date of cheque receipts.
- New: Add Sales journal and Purchase journal report.
- New: Can create supplier invoice from supplier order.
- New: Support login by openid
- New: Support "full day" event in calendar module.
- New: Add a weather on dashboard.
- New: Add a Paypal module.
- New: Can choose third party to use in point of sale module during logon.
- New: A lot of enhancements into ECM module:
       Directories can contains special characters,
       Speed enhancements,
       Directories can be created outside of Dolibarr, refresh button will 
       update database,
       Can rename a file.
- New: Reordering lines in invoice, orders, commercial proposal is faster (use Ajax
       technology).      
- New: Can import members using assistant.
- New: Can exclude deposit, replacement or credit notes in script rebuild_merge_pdf.
- New: task #10473 : Option MAIN_PROFIDx_IN_ADDRESS must no more be hidden.
- New: Can generate business card for on particular member.
- New: Task #10553 : Can attach files on members card.
- New: Can filter on payment type and bank account in payment lists.
- New: When sending supplier orders by mail, a text is predefined.
- New: Upgrade process works with Postgresql.
- New: Task #10538: Add filter on expiration date of subscription for
       foundation module email selector.
- New: Task #9643: Add 2 status (tosell/tobuy) on products instead of only
       1 status for both selling and buying.       
- New: Can input payment conditions on several lines.
- New: Add hidden option MAIN_LOGOUT_GOTO_URL to set the exit url after
       a logout.
- New: For germany, we invert order of address.
- New: Add hidden option MAIN_SERVICES_ARE_ECOMMERCE_200238EC.
- New: Support NPR in customer product prices.
- New: Add more volume units (ounce, gallon, inch, feet, ...)
- New: Delivery date accepts hours and minutes.
- New: Can add a comment on stock dispatching to be save into stock movements.
- New: Can filter product list with too low stocks.
- New: Add option to send all emails sent to a bulk carbon copy.
- New: Preview of emails sent by member module is shown.
- New: task #10100 : Add button to create invoice from a subscription
- New: Reorganize tabs on third parties.
- New: Option MAIN_INVERT_SENDER_RECIPIENT is available in einstein pdf template.
- New: Easier way to define url for clicktodial module.
- New: Add a fckeditor test area in fckeditor module setup.
- New: Add property "Event on full day" on agenda
- New: Enhancement and better compatibility (google, thunderbird) for agenda export.
- New: Can use image editor on user photo.
- New: Task #10796: Add Spain ProfId1 Verification
- New: Page "supplier summary" is now available.
- New: Task #10611: Add option to choose order of field in bank account info on PDF
- New: If a transaction was reconciliated and should not, there was no way to reverse error.
- New: Ubuntu package now works also on debian.
- Perf: Avoid reading database to determine country code after each
        page call.
- Fix: Special chars are now supported in ECM module for filename (not yet for
       directories).
- Fix: Better Postgresql compatibility.
- Fix: Box order is saved when moved.
- Fix: Database name can contains "-" characters.
- Fix: In coloring negative amounts.
- Fix: Date input use date format of user and not dd/mm/yyyy format.
- Fix: Fixed a very old bug making file attachment fails with some emails 
       readers when using "mail php function".
- Fix: When cloning commercial proposal, due date is creation date + delay
       by default.
- Fix: Can edit ordering methods.

For translators:
- New: Update and complete slovenian language sl_SL.
- New: Add full manually translated files for de_AT en de_DE (thanks to eCleaner.at).
- New: Create the language ja_JP.
- New: Add el_GR language.

For developers:
- New: Add jquery by default.
- New: Removed PWC libraries.
- New: Removed Scriptaculous libraries.
- New: Removed Prototype libraries.
- New: Add first Selenium GUI tests.
- New: Enhance a lot of internal function to build external modules
       more easily.
- New: Add a user field ref_ext in object tables to allow external
       systems to store their id and make self-developed synchronizing
       functions easier to build.        
- New: Local user timezone is saved into session (not used yet).
- New: Works with Mysql 5.5.
- Qual: Menu system code is simpler.
- Qual: Mutualize some duplicate code.
- Qual: Renamed some fields into database to be more internationnal.
- Qual: Removed deprecated code.


***** ChangeLog for 2.9 compared to 2.8.* *****
For users:
- New: POS module allow to choose which warehouse to use.
- New: Support "Department/State" field on company setup, contact, 
       bank account and members card.
- New: Can reopen a refused/canceled supplier order.
- New: Add Gant diagramm on project module.
- New: Add a new mode for automatic stock increase: Can be increased
       on dispatching of products from a supplier order receipt.
- New: Can set a past delay to limit calendar export.
- New: Can attach files on emailing campaigns.
- New: Add statistics on trips and expenses module.
- New: Can reopen a closed customer order.
- New: Add module externalsite to add a web site/tools inside 
       menu and a Dolibarr frame.
- New: Can link trips and fees to a project.
- New: Add civility title in foundation module.
- New: Can set accountancy code for product (buy and sell).
- New: Can filter third parties lists on categories.
- New: Can filter products and services lists on categories.
- New: task #10202 : Support categories for members.
- New: Can build documents for third parties (Using ODT templates, need PHP 5.2+). 
- New: Support new products properties: length and area.
- New: Add the "payment due before" field in invoice exports.
- New: Add feature to resize or crop image files (for products photos)
- New: task #10113 : Show list of emailing on clicking on "number of mass emailing received"
- New: Add default language for third parties and use it when multilang is enabled
       to define default language for document generation.
- New: Can reopen a closed supplier invoice.
- New: Move permission "see hidden categories" into "see hidden products/services".
- New: Can delete several files at once in FTP module.
- New: Add box "last contracts".
- New: Works even if Web hosting provider has disabled PHP "glob" function.
- New: Can now send supplier orders by email.
- New: task #10076 : Show content of message in notification module.
- New: Bank name is shown on invoice.
- New: IBAN value is called IFSC if country is India.
- New: Add option to choose to show firstname then name or name then firstname on PDF.
- New: Add company in fields exported by export of members tool.
- New: Reorganise bank menus.
- New: Bookmarks can be sorted on a particular order.
- New: Support spanish RE and IRPF taxes on invoices.
- New: Module category offers categories for foundation module.
- New: Can filter on category on third parties, products and members listings.
- New: A flag is visible before country labels.
- New: When activating a new module, permissions for admin user are set. This save
       time when configuring Dolibarr.
- New: Dolibarr 2.9 is faster than 2.8.
- New: A lot of more predefined VAT values, states, regions for 
       miscelaneous contries.
- New: Enhance skin engine to make themes easier.
- New: Add images into menu "eldy".
- New: Auguria theme is now more modern.
- New: Update tools refers to www.dolibarr.org but also www.dolistore.com web site.
- New: Postgresql experimental support seems to work completely. 
- New: Changes in Dolibarr core to allow to use cache servers (see Memcached module on
       dolistore.com).
- New: Default choice for interactive confirm box is yes by default, and no only for
       delete actions. This reduce number of clicks required to validate actions and 
       is still safe to dangerous actions.
- Fix: Durations are correctly shown for languages using PM/AM dates.
- Fix: A lot of fixes in Point of Sale module.
- Fix: Debug experimental module widthrawal.
- Fix: Format number was wrong for ar_AR language.
- Fix: Can change password if user has only permission "change password".
- Fix: Project PDF document shows all tasks.
- Fix: bug #29278 : SMTP fails with IP instead of hostname.
- Fix: Default language on login page was wrong.
- Fix: Complete support of euros sign (even in PDF).
- Fix: Bad setup of phpMyAdmin for DoliWamp installer.
- Fix: Tracking number should be available on sending sheets.
- Fix: Stock value is not reset when product is transfered into other warehouse. 
- Fix: A lot of not tracked bugs fixed.
- Fix: Some fixes in barcode management.
- Fix: Access to phpMyAdmin is now ok on new DoliWamp installation.

For translators:
- Fix: Major update of italian translation (it_IT).
- Fix: A lot of translation fixes in all languages.
- New: Added translations (sl_SL, is_IS).
- New: Add translations for the DoliWamp installer.

For developers:
- More comments in code.
- Uniformize some code. 
- All arrays "lignes" were renamed into "lines".
- Delete all useless pre.inc.php files (this also increase speed).
- Fix W3C errors in page forging.
- Qual: Mutualize code of menu managers.
- Better isolation of modules files and dolibarr core files. 
- Task #8682 : Remove functions unix_timestamp.
- The makepack tool now make pack with UID 500.
- More css class and div to output menu to allow more skins.
- Generated documentation can be build from Eclipse using Doxygen plugin.
- Snapshot is provided with PHPunit tests.

WARNING: 
- A lot of class files (*.class.php) has moved into subdirectories. So If you use
  or develop non official modules that includes Dolibarr classes, you will have to rename
  path to thoose classes into the include function.
- Also, parameters of the "fetch()" method for class "User" has changed to reflect
  other fetch methods.   
- If you build a personalised themes, you must rename the style sheet into style.css.php.   
- This version is also the last one to support PHP 4.*, Mysql 3.1, IE6.
  Dolibarr 3.* will be supported with PHP 5+ and MySql 4.1+ only.


***** ChangeLog for 2.8.1 compared to 2.8 *****
For users:
- Fix: Works on database with _ in name.
- Fix: Broken feature in trips and expense module.
- Fix: Can use $ in database and login/pass values.
- Fix: No error on upgrade if there is orphelins tasks.
- Fix: Failed to login when user agent string was longer than 128.
- Fix: bug #29526 : Numérotation Proposition Incorrecte après duplication


***** ChangeLog for 2.8 compared to 2.7.* *****
For users:
- New: Support note on trips module
- New: Can link contacts to projects
- New: Can removed attached file on email form if attachment was wrong.
- New: Add option to show your logo on top of left menu.
- New: task #9935: Can edit accountancy code.
- New: Add an option to make users email required.
- New: Module notification can send email on order or proposal validation.
- New: Can use any command line antivirus on file upload.
- New: A customer can also be a prospect.
- New: task #9802 : Can link an action to a project and use project to 
       filter agenda.
- New: Project can be set on contract creation.
- New: Initial sold can be conciliated on bank module.
- New: Add a default errors-to email for emailing module.
- New: Can filter on user on stock movement list.
- New: When creating a third party from a member, it is set as a new
       customer.
- New: Can use {tttt} in numbering mask setup. It will be replaced
       with third party type.
- New: VAT number is stored in one field. This is more "international".
- New: task #9782 : Add possibility to delete a warehouse.
- New: task #9640 : Add label for stock movements.
- New: task #9916 : Add FREE text for interventions card.
- New: Can define the new product ref when cloning.
- New: Project module support status of project and end date.
- New: Provide a ubuntu package.
- New: Add link to check a SIREN for french users.
- New: Add link "now" to fill date when creating invoices.
- Fix: Import module works even if prefix is empty in source file.
- Fix: bug #28055 : Unable to modify the date of a cloned command.
- Fix: bug #27891.
- Fix: Change of numbering module was not effective.
- Fix: Change error management when adding already used supplier ref
       for a product.
- Fix: Running sending-email.php
- Fix: Warning should not appears for invoice closed
- Fix: Import for companies works even with prefix empty.
- Fix: bug #28895 : Création d'utilisateur impossible.
- Fix: Can change password if has only permission change password.

For developers:
- Qual: Reorganize /dev directory.
- Qual: Change the way items are linked together.
- Qual: The login page now use a template in /core/template/login.tpl.php.
- New: Modules can add their own tab on projects cards.
- New: Add management of triger FICHEINTER_VALIDATE


***** ChangeLog for 2.7.1 compared to 2.7 *****
For users:
- Fix: Bad decimal management for it_IT and fr_BE languages.
- Fix: A third party created from a member is created as a 
       customer.
- Fix: Change of numbering module was not effective.
- Fix: Report of balance missing supplier invoices.
- Fix: Running sendmaing-email.php script.
- Fix: Detection of country for IBAN management.
- Fix: Update member photo.


***** ChangeLog for 2.7 compared to 2.6.* *****
For users:
- New: Add a print icon to show a page to print without menus.
- New: Can add a free text on bank cheque receipts.
- New: Price level can be defined also for prospects.
- New: Add a help and support center.
- New: Can export commercial proposals.
- New: Can use a cache for xcal exports.
- New: Option for faster confirmation process with one ajax popup.
- New: Complete theme bluelagoon and rodolphe
- New: Can select third parties emails in emailing module for all
       third parties with expired contract's lines.
- New: Can add a field errors-to in emailing.
- New: Can use inline images in emails.
- New: Add predefined invoices (can be use for repeated invoices).
- New: Add a confirmation when cloning products.
- New: Add stock in product lists.
- New: Can filter list of stock movement on date or product.
- New: Added a link from product list to their stock movements.
- New: Several speed enhancements after using the Google Page speed 
  plugin for FireBug.
- New: Add a confirmation on dangerous admin purge feature.
- New: Add navigation on donation sheets.
- New: Added estimated value for stocks.
- New: Added module Gravatar to found photo of users or members
       from their email on gravatar.com.
- New: Include Dolibarr version in suggested dump filename.
- New: Enhancement in project module.
- New: Add log tab on emailing module.
- New: Minor enhancements in look themes.
- New: Add option to hide help in menu.
- New: Added a "force LDAP synchronize" on member and contact cards.
- New: Can split a discount into two smaller discount. This allows to use a
       discount on an invoice even if invoice amount is lower than discount
       credit available.
- New: Can use variables into the free text on PDF (__TOTAL_TTC_, __TOTAL_VAT...)
- New: Increase page loading speed (all changes reported by Google PageSpeed
       tool has been added).
- New: Add support of constant MAIN_ONLY_LOGIN_ALLOWED to allow to lock all
       access to any users except the one defined in constant.
- New: Add an admin page of PHP sessions with a way to lock new connections
       for other users than yourself. Can also purge existing sessions.
- New: Add point of sale module.
- New: Better usage when using with smartphones.
- New: Add module FTP client.
- New: Can set first day of week.
- New: Installer now create a .htaccess to protect documents directory.
- New: Experimental support for Postgresql.
- New: Full support of SMTPS (can works with Google SMTP).
- Fix: "Now" link works when date popup is not used.
- Fix: Debug seriously the email notification module.
- Fix: Error Call to a member function trans when refusing a supplier order.
- Fix: Fix payment conditions on commercial proposals.
- Fix: Nb of orders to process was wrong.
- Fix: Customer code was not correct on PDF it if contains special 
       characters.
- Fix: Can update price even with "NPR" VAT rates.
- Fix: When product type is missing, description is not lost when adding 
       new product lines.
- Fix: CC and BCC in emails was not used if using SMTPS handler.
- Fix: Last character was lost when text end with n or r.
- Fix: LDAP synchronization is now more robust (transaction and 
  use modify instead of delete/add).
- Fix: Fix: Setup of member synchronization does not conflict 
  with contact or user synchronization.

For translators:
- Update some language files.
- Can accept right to left languages. Added an "automatic" arabe translation.

For developers:
- An external module can force the third party code to be required whatever
  is the rule of third party code module.
- Update fckeditor to 2.6.4.
- Update Smarty to 2.6.26.
- Removed some deprecated code and files.
- Creation of directory in module descriptor is simpler.
- Can use an alternate document_root directory to develop with 
  sources on two repositories.
- Removed useless code of old commercial module.
- Move some modules into the CVS modules repository dolibarrmod. This reduces
  amount of code in main branch.
- Updated wiki documentation.
- Better W3C standard.
- Can add init data when enabling a module.
- Can fix some corruptions in database by calling the update page 
  /install/repair.ksh
- Log files contains more information (PHP_SELD added and OS user used for 
  log of command lines scripts) 
- Can protect a module to not being enabled if javascript disabled.
- If module numberwords is installed, code can use langs->getLabelFromNumber 
  to get value of an amount in text.
- A module can add subsitution keys in makesubsitutions() functions.
- Add $conf->browser->phone defined to optimise code for smartphone browsers.
- All external libs are now in same directory /includes.
- All install files are now in same directory /install.


***** ChangeLog for 2.6 compared to 2.5.* *****
For users:
- New: Add filter on status in emailing selector for Dolibarr users.
- New: Can add bookmarks on all pages.
- New: Enhance bank transactions reporting.
- New: When creating a contact from a third party, informations from third
  party card are automatically suggested.
- New: Sort list of languages in combo box.
- New: EMails links are show with function dol_print_email
- New: Add graph report on number of entities in product statistics page.
- New: Can delete a supplier order whatever is its status.
- New: No limit on free text on PDF generated documents.
- New: Can force login value when creating a user from a member.
- New: Can clone commercial proposals and orders.
- New: Major enhancement of project module.
- New: Added product label in invoice exports fields.
- New: Add VAT number in export fields.
- New: Upgrade FPDF to 1.6
- New: Upgrade Scriptaculous to 1.8.2 and Prototype to 1.6.0.3
- New: Added keywords in PDF.
- New: Add hidden option MAIN_DISABLE_PDF_COMPRESSION.
- New: Add attachments on intervention cards.
- New: Can add personalized fields in emailing selectors.
- New: Customer code and supplier code can be defined automatically.
- New: Emailing feature can extract civility from contacts.
- New: Can create a third party from a member of foundation module.
- New: Can set a limit for stock alert to 0.
- New: Support SMTPS.
- New: Added a page /support to provide a help center service on Dolibarr.
- New: Distinct status "running not expired" from "running expired" in lines 
  contract status.
- New: Add a first version of a module for Paybox.
- New: Can add contact to suppliers orders.
- New: Changes to support the external Bit Torrent module.
- New: Can filter on social contribution type in list.
- New: Upload of joined files need create/modify permissions to work.
- New: For admin users, show the SQL request in export build.
- New: Can modify proposal date if status is draft.
- New: The help link on some pages now links directly to the wiki web page.
- New: Enhancements in barcode module.
- New: Can use decimal values in stocks.
- Fix: Partial payment on social contributions not shown on main page.
- Fix: Handle correctly the comment in status changing of supplier orders.
- Fix: Author, title and topic are correctly encoded in PDF.
- Fix: Now HTML output is always UTF8, this solve bad PDF encoding on old
  users.
- Fix: Save new model when changed on interventions.
- Fix: Failed to go on the future view of bank transaction if there is no 
  future bank transaction already wrote.  
- Fix: Bad ref in supplier list.
- Fix: Bad link in product statistics for supplier referrers.
- Fix: Usage of reset of cursor in personalized numbering modules for a particular
  month (@ option) was broken.
- Can add contacts to a supplier invoice.
- Fix: When an invoice is changed back to status draft, warehouse is increased 
  back.
- Fix: Category of a bank transaction was not saved.
- Fix: Clicktodial plugin works correctly now
- Fix: Multiprices features works correctly.
- Fix: Project module and task creation.
- Fix: Validation of order if a file was attached.
- Fix: A lot of fixes in PDF generators.
- Fix: Bad line/page break with long description of products on PDF.
- Fix: Option force invoice date to validation date working correctly.
- Fix: Creation of a member from the example public page works.

For translators:
- Added 10 more new language files.
- Added autotranslator tool. A tool to build/update automatically
  languages files using Google API for a new language. Wonderful to start a
  new translation.
  
For developers:
- Removed some deprecated files.
- Removed treemenu library.
- Renamed all function dolibarr_xxx into dol_xxx to have same prefix everywhere.
- Rewrite clone feature for supplier invoice to work like other clone features.
- First change to manage a future feature "stock PMP value".
- A module can add a new tab in third party view tabs.
- First change for future geoip module.


***** ChangeLog for 2.5 compared to 2.4.* *****
For users:
- Sessions timeout can be configured to overwrite PHP setup.
- Can filter on date in services list.
- Support bookmark add of product cards.
- Enhancement in stock management (Automatic increase/decrease
  from order or invoice is possible).
- New filter options in prospect lists (category and level).
- New view in ECM module.
- Look enhancements for graphics (add transparency).
- Added statistics report for supplier invoices.
- Added average amount in invoices statistics reports.
- Can move a contract line to another contract of same third party.
- Add an export definition to export interventions.
- Can set umask file permissions on Unix/Linux/BSD systems.
- Miscelanous bug fixes.
- A lot of other enhancements to increase productivity.
- All phone numbers show the clicktodial link if module is enabled.
- Can define hour and minutes in intervention cards.
- Can edit a validated intervention.
- Add filters on intervention list.
- Add juridical status and number of employees in third party 
  export definition.
- A lot of enhancements and translation in withdraw module.
- Full support of Mysql option mode=strict.
- Added a new event from member module to agenda tracked events.
- Can attach a file to suppliers orders.
- Change to make Bank Account Number form more "internationnal".
- Can clone an invoice.
- Can clone an emailing.
- Reduce memory usage (about 2%).
- Add weight and size in sendings module.
- Add a fast search form on left menu for member module.
- Fix: Do not show export filter for disabled modules
- Show greyed lines for not allowed export filters.
- Add nature in product fields (manufactured product or not).
- Add export filters for category module and trip and expenses module.
- Can choose login of dolibarr account created when create from contact

For translators:
- The errors language file contains only error or warning messages with 
  prefix Error or Warning.
- HTML Output is by default in UTF8 and language files can be provided
  in UTF8.

For developers:
- Update skeletons (some fixes and add function createFromClone).
- Add an experimental Cash Desk module.
- Added new triggers events in agenda module.
- All submodules are moved in the includes directory.
- Removed some deprecated files.
- Menu managers now use same class name for their menu entry
  and add a different value in an HTML id for each entry. This allows
  to build skins that use different style for each menu entry.
- All emails and url HTML output use same function.
- Add more integrity check on database
- Can disable modules on logon page. This make possible to
  have several profiles of demo with only one demo. Also added a new
  Dolibarr demo front page (in htdocs/public/demo).
- Allow modules to add new tabs.

   

***** ChangeLog for 2.4 compared to 2.2.* *****
For users:
- Add a calendar module (module agenda) with ical/vcal/rss export.
- Look enhancement in graphics (thanks artichow).
- Add tel and fax on delivery addresses.
- Add a tool to edit personalized menu.
- Add an ical and vcal export link in agenda and webcalendar module.
- Reduce memory usage.
- Now triggers are enabled/disabled according to module they refers to.
- Fix infinite loop on popup calendar.
- Change in tanslation to make Dolibarr easier to understand.
- Add a warning when sending a mail from a user with no email defined.
- Added clicktodial module.
- Add a property private/public in contact. This allows to user Dolibarr
  for a personnal address book.
- French NAF code can accept 5 chars.
- Supplier prices can be input with or without taxe.
- New generic numbering modules to offer more solutions for generating
  automatic id.
- Add new predefined exports wizards (stocks, suppliers, taxes...).
- Add feature to log security events (logon, change of users, passwords).
- Can link all documents (included supplier invoices and orders) to a 
  project.
- Can attach several files to email when sending an invoice, order or
  proposal by email.
- Can choose accuracy (number of decimals) for prices.
- Localization for decimal and thousand delimiter on number is fully
  supported.
- More informations reported in system information pages.
- Add a budget report.
- Added a security audit report.
- Other minor changes (features, look, fixes)
- Added compatibility with Firefox 3.
- Changes for compatibility with PHP6/Mysql6.
- Some bug fixes.

For translators:
- Added spanish es_ES translation.
- Added en_AU translation.

For developers:
- Removed useless code:
  Replaced phplot and phplot5 librairies by artichow.
  Removed cryptograph library replaced by artichow.
- Login functions are now externalised as modules.
- Update code skeletons examples.
- Several enhancements to make addon development easier.
- Add a tool to generate PHP classes completely mapped to a table.
- Added a check to enable external modules only if dolibarr version is
  high enough.
- Changes in wizard installer to allow building autoexe installer for
  Windows with Apache and Mysql included.


***** ChangeLog for 2.2 compared to 2.1.* *****
- Add more statistics on main page.
- Add option to add message on login page.
- Management of categories for third parties.
- Add volume on products properties.
- Support for LDAP authentication.
- Full member synchronisation with LDAP database in
  fundation module.
- More LDAP fields supported for user synchronization.
- Better logger for install.
- First changes to support UTF8.
- Add a "forget password" feature.
- Setup process can run several migrate files if need
  to jump several versions to upgrade.
- Support for webcalendar 1.1 in webcalendar module.
- Support for menu in database.
- Better support for using Dolibarr on more WHP.
- Removed some deprecated files and clean code.
- New theme: Auguria
- Removed PHP warnings.
- Some bugs fixes.
- Traduction more complete.
- Better code comments for Doxygen documentation.
- Better support of vcard export format.
- A lot of security enhancements (no more password in log files,
  crypted password in database, in config file...).
- Themes are full CSS compliant.
- A lot of other minor changes...
- Option to scan uploaded document by an antivirus.
- Transparency for picto files works with IE.
- Can drag and drop boxes on main page.


***** ChangeLog for 2.1 compared to 2.0.* *****
- Added a better installer.
- Support user and groups permissions.
- Translation in english and support for several languages.
- New enhanced look and several new themes.
- Small search boxes for each Dolibarr elements (invoices, contracts,
  orders, proposals...)
- Added an export assistant module to export main dolibarr data.
- Added backup tool to backup database via mysqldump.
- Added product categories management with a categorie tree.
- Management of companies' discounts (relative or absolute).
- Support credit note and discounts (relative and absolute) on
  commercial proposal, orders and invoices.
- Support multi-langual description for products.
- Graphical enhancements (picto to describe all status).
- Added more permissions (ie: can restrict access for a commercial user
  to elements of its companies only).
- Little enhancements to OSCommerce module.
- Added a second OSCommerce module working through web services.
- Added a Mantis module to have a Mantis application in Dolibarr menu.
- Building a PDF document for invoices works like other modules. You
  can change model just before generating the PDF.
- Can generate documents (PDF) for customer orders. Can send them by mail.
- Added FPDI and FPDI_Protection (ie: PDF with password-protection)
- Can make one payment for several supplier invoices.
- Rule to suggests passwords when creating a user are in modules
  allowing to add easily other rules.
- Option to encrypt passwords in database (MD5).
- Add Dolibarr triggers support on users creation/change.
- Add Dolibarr triggers support on payments.
- Add Dolibarr triggers on supplier and customers orders.
- Webcalendar triggers for actions on Member module.
- Support optional new javascript popup selector for date fields.
- Support for several RSS boxes in external RSS module. Setup easier.
- Can attach documents on Action, Orders, Invoices, Commercial proposals.
- Can attach contacts on proposals, orders, contracts, invoices.
- Preview on results of PDF generator modules in setup pages.
- Code cleaner. Remove unused or duplicate code.
- Save and show last connexion date for users.
- Enhancements on a lot of forms for better ergonomy.
- Can add/remove company logo.
- Added LDAP synchronisation for users, groups and/or contacts.
- Can configure your own SMTP server/port for mail sendings.
- Works even on "UTF8 by default" systems (Mysql, Linux...)
- Better compatibility with different PHP version or setup.
- Added mysqli driver.
- Add a WISIWYG editor (FCKEditor) to edit note and comment areas.
- Added AJAX features like a 'search product selector'.
- Modules boxes on main page can be dragged and dropped (with firefox only).
- Support for PHP5.
- Experimental support for Postgresql (not working yet, but waiting feedbacks).
- Removed obsolete files and documentation.
- Added admin tools (backup and files purge).
- Added a tool to build a lang package.
- Added a tool to build a module package.
- Added a tool to build a theme package.
- Traduction more complete.
- Added skeletons for code examples.
- Lot of fixes after 2.0 release not fixed in 2.0.1.
- Added more security option (ie: encrypted password in database)




***** ChangeLog for 2.0.1 compared to 2.0 *****
Minor bug fixes



***** ChangeLog for 2.0 compared to 1.0.* *****
ChangeLog file size is so important, that it is not included inside Dolibarr
package. You can find it at www.dolibarr.org
