2
0
forked from Wavyzz/dolibarr

Compare commits

..

70 Commits

Author SHA1 Message Date
Laurent Destailleur
b2fbef4a91 Prepare 4.0.3 2016-12-25 23:04:59 +01:00
Laurent Destailleur
a9beeec0b3 Merge branch '4.0' of git@github.com:Dolibarr/dolibarr.git into 4.0 2016-12-23 16:03:09 +01:00
Laurent Destailleur
8ce5ed0192 Fix position of discount on PDF with US letter format 2016-12-23 15:57:31 +01:00
Laurent Destailleur
99a501fcfb Merge pull request #6207 from aspangaro/4.0-p1
Fix: Accountancy - Problem on quadratus export
2016-12-23 00:52:47 +01:00
Laurent Destailleur
792da7f56d Merge pull request #6205 from fmarcet/4.0
FIX: Deposits and credit notes weren't added in column invoices list
2016-12-23 00:51:59 +01:00
Laurent Destailleur
293560f9c1 Fix missing ref is object is supplier object 2016-12-22 17:41:58 +01:00
Laurent Destailleur
39bd9a69ec Merge branch '4.0' of git@github.com:Dolibarr/dolibarr.git into 4.0 2016-12-22 17:30:50 +01:00
Laurent Destailleur
b4ed0a1e12 Fix nb of lat approvals wrong 2016-12-22 17:30:39 +01:00
Laurent Destailleur
574f84bb84 Fix warning for approval delay. 2016-12-22 15:49:06 +01:00
aspangaro
d53a238b49 Fix: Accountancy - Problem on quadratus export 2016-12-22 06:12:42 +01:00
Ferran Marcet
ae7f49b5d8 FIX: Deposits and credit notes weren't added in the received and pending columns 2016-12-21 18:40:05 +01:00
Laurent Destailleur
3f5d67d4d6 Merge branch '3.9' of git@github.com:Dolibarr/dolibarr.git into 4.0 2016-12-19 02:35:16 +01:00
Laurent Destailleur
0d1d68d5d9 Merge branch '3.9' of git@github.com:Dolibarr/dolibarr.git into 4.0
Conflicts:
	htdocs/admin/dict.php
	htdocs/product/price.php
2016-12-19 02:34:29 +01:00
Laurent Destailleur
876722733a Better fix to get localtax 2016-12-19 02:33:54 +01:00
Laurent Destailleur
74e00c4d80 More comment and hidden option to solve problems when sending emails. 2016-12-19 01:04:17 +01:00
Laurent Destailleur
dbf96b8f59 Log at wrong place 2016-12-18 23:32:31 +01:00
Laurent Destailleur
0e7da2cd22 FIX Label of project is in field title not label. 2016-12-18 11:55:30 +01:00
Laurent Destailleur
a37b1fb6c1 Merge pull request #6171 from fmarcet/4.0
FIX: Setting supplier as client when accept a supplier proposal
2016-12-18 11:09:33 +01:00
Laurent Destailleur
e0db9a8ca7 Merge pull request #6169 from atm-gauthier/FIX_ttc_and_ht_must_always_be_available
FIX : HT and TTC price should always be displayed together
2016-12-18 11:08:33 +01:00
Laurent Destailleur
47bf442c84 Merge pull request #6167 from atm-florian/4.0
GETPOST instead of $_GET
2016-12-18 10:59:27 +01:00
Laurent Destailleur
b3d5f40f37 Merge pull request #6166 from atm-gauthier/3.9_fix_wrong_test
FIX : wrong test on dict.php
2016-12-18 10:58:32 +01:00
Laurent Destailleur
27785323ae Merge pull request #6164 from hregis/4.0_bug
Fix: missing date locale and date rfc
2016-12-18 10:57:29 +01:00
Laurent Destailleur
c36d4b9894 Merge branch '3.9' of git@github.com:Dolibarr/dolibarr.git into 4.0 2016-12-18 02:17:21 +01:00
Laurent Destailleur
394e284a4a Merge branch '3.9' of git@github.com:Dolibarr/dolibarr.git into 4.0
Conflicts:
	htdocs/core/class/CMailFile.class.php
	htdocs/langs/en_US/errors.lang
2016-12-18 02:16:40 +01:00
Laurent Destailleur
6830fdca98 Merge branch '3.8' of git@github.com:Dolibarr/dolibarr.git into 3.9
Conflicts:
	htdocs/product/class/product.class.php
2016-12-18 02:12:34 +01:00
Laurent Destailleur
321933f267 Fix deletion of product 2016-12-18 02:10:26 +01:00
Laurent Destailleur
73e6663230 Fix help/messages for emailing to warn users. 2016-12-17 14:47:06 +01:00
Laurent Destailleur
c5db333af8 Fix translation of error message when sending email 2016-12-17 14:00:39 +01:00
Laurent Destailleur
d8e394d3aa FIX Missing field 2016-12-16 17:09:15 +01:00
Laurent Destailleur
929904041d Merge branch '3.9' of git@github.com:Dolibarr/dolibarr.git into 4.0
Conflicts:
	htdocs/conf/conf.php.example
	htdocs/langs/en_US/mails.lang
2016-12-16 13:53:34 +01:00
Laurent Destailleur
534e2b1282 FIX Security to restrict email sending was not efficient 2016-12-16 13:46:39 +01:00
Laurent Destailleur
7fdd6ccbd2 Prepare 4.0.3 2016-12-15 22:50:20 +01:00
Laurent Destailleur
8f3ce46c50 Merge branch '3.9' of git@github.com:Dolibarr/dolibarr.git into 4.0 2016-12-15 12:12:36 +01:00
Laurent Destailleur
2c4c48ad6f Better fix to add server name into email id. 2016-12-15 12:11:39 +01:00
Laurent Destailleur
d32fd7aa11 FIX javascript xss injection and a translation 2016-12-15 11:55:33 +01:00
Ferran Marcet
2777c4d4a5 FIX: Setting supplier as client when accept a supplier proposal 2016-12-14 18:35:59 +01:00
gauthier
1f1c75adfb FIX : HT and TTC price should always be displayed together 2016-12-14 15:50:50 +01:00
Laurent Destailleur
d2e4888bdd Merge branch '3.9' of git@github.com:Dolibarr/dolibarr.git into 4.0 2016-12-14 12:21:33 +01:00
Laurent Destailleur
e4dd020887 Fix bad concat 2016-12-14 11:23:55 +01:00
Laurent Destailleur
af407a094a FIX Introduce hidden option MAIL_PREFIX_FOR_EMAIL_ID to solve pb of
tracking email.
2016-12-14 11:20:44 +01:00
Laurent Destailleur
56b3f2c011 FIX Introduce hidden option MAIL_PREFIX_FOR_EMAIL_ID to solve pb of
tracking email.
2016-12-14 10:36:11 +01:00
Laurent Destailleur
530d3503f5 FIX Introduce hidden option MAIL_PREFIX_FOR_EMAIL_ID to solve pb of
tracking email.
2016-12-14 10:32:31 +01:00
Regis Houssin
cb21ad2cc5 Merge remote-tracking branch 'origin/4.0' into 4.0_bug 2016-12-13 16:52:36 +01:00
florian HENRY
3992a92dd4 Merge branch '4.0' of https://github.com/Dolibarr/dolibarr.git into 4.0 2016-12-13 13:34:05 +01:00
Laurent Destailleur
43d18cd70c FIX if a supplier price reference is changed after creating an order, we
can't clone order.
2016-12-13 13:22:24 +01:00
gauthier
4dd740fe2f FIX : wrong test on dict.php 2016-12-13 11:41:26 +01:00
Regis Houssin
337509d40f Fix: missing date locale and date rfc 2016-12-13 09:40:08 +01:00
Juanjo Menent
5c4ab99a9a Merge pull request #6132 from simnandez/3.9
Fix #5646 Error editing Sell Price on products/services
2016-12-11 14:32:00 +01:00
Laurent Destailleur
95d8faef04 Merge branch '3.9' of git@github.com:Dolibarr/dolibarr.git into 4.0
Conflicts:
	htdocs/product/class/product.class.php
2016-12-11 10:51:15 +01:00
Laurent Destailleur
7fd75c793a FIX Regression when deleting product 2016-12-11 10:39:48 +01:00
Laurent Destailleur
9b436ce871 Merge remote-tracking branch 'origin/3.9' into 4.0
Conflicts:
	htdocs/product/class/product.class.php
2016-12-11 02:51:32 +01:00
Laurent Destailleur
b42a2616bc Merge remote-tracking branch 'origin/3.8' into 3.9
Conflicts:
	htdocs/install/mysql/migration/3.8.0-3.9.0.sql
2016-12-11 02:34:59 +01:00
Juanjo Menent
56aafa4660 Fix #5646 Error editing Sell Price on products/services 2016-12-10 23:25:13 +01:00
Laurent Destailleur
6e9d6b4e49 Merge pull request #6128 from simnandez/3.9
FIX #5853 $conf->global->$calc==0 || $conf->global->$calc==1
2016-12-10 23:17:33 +01:00
Juanjo Menent
5a2b8ff53c FIX #5853 $conf->global->$calc==0 || $conf->global->$calc==1 2016-12-10 22:41:53 +01:00
Laurent Destailleur
f49d332b73 Merge pull request #6113 from atm-maxime/3.8
Fix : delete product was not possible if batch stock
2016-12-10 13:16:50 +01:00
Laurent Destailleur
46d84f8f11 Merge pull request #6111 from simnandez/3.8
Fix: Delete surplus migration file
2016-12-10 13:16:16 +01:00
Maxime Kohlhaas
97e21cb775 Fix : delete product was not possible if batch stock 2016-12-10 13:05:46 +01:00
Juanjo Menent
829ff2299e Fix: Delete surplus migration file 2016-12-10 12:46:26 +01:00
Laurent Destailleur
08f27a5c28 Merge pull request #6076 from olsesacl/#6062
FIX: #6062 Can't add images to the description when edit product
2016-12-10 12:13:44 +01:00
florian HENRY
0f0db5a3fb fix: uniformize 2016-12-10 12:06:18 +01:00
Laurent Destailleur
45783e6bc5 Merge branch '4.0' of git@github.com:Dolibarr/dolibarr.git into 4.0 2016-12-10 12:04:56 +01:00
Laurent Destailleur
a45915e4a0 Better message after report on #5933 2016-12-10 12:04:13 +01:00
Laurent Destailleur
668937d7c9 Merge pull request #6097 from hregis/4.0_bug
Fix: contract use "total_vat" instead "total_tva"
2016-12-10 11:41:09 +01:00
Regis Houssin
239e42faa0 Fix: contract use "total_vat" instead "total_tva" 2016-12-09 13:04:05 +01:00
Laurent Destailleur
7a8ac224ed FIX A draft can be deleted by a user with create permission. 2016-12-09 00:18:27 +01:00
Sergio Sanchis Climent
79d6fa334b FIX: Consistent description for add or edit product 2016-12-08 13:12:10 +01:00
Sergio Sanchis Climent
863e569593 Merge branch '4.0' of https://github.com/Dolibarr/dolibarr into #6062 2016-12-08 13:11:07 +01:00
Laurent Destailleur
c2bee0f937 FIX #6088 2016-12-07 12:44:56 +01:00
Sergio Sanchis Climent
6dfeaabad5 FIX: #6062 2016-12-01 22:28:29 +01:00
4923 changed files with 123184 additions and 207302 deletions

View File

@@ -257,7 +257,7 @@ script:
# Ensure we catch errors
set -e
# Exclusions are defined in the ruleset.xml file
phpcs -s -n -p -d memory_limit=-1 --colors --tab-width=4 --standard=dev/setup/codesniffer/ruleset.xml --encoding=utf-8 .
phpcs -s -n -p -d memory_limit=-1 --colors --tab-width=4 --standard=dev/codesniffer/ruleset.xml --encoding=utf-8 .
set +e
echo
@@ -287,13 +287,10 @@ script:
php upgrade.php 3.9.0 4.0.0 ignoredbversion > $TRAVIS_BUILD_DIR/upgrade390400.log
php upgrade2.php 3.9.0 4.0.0 MAIN_MODULE_API,MAIN_MODULE_SUPPLIERPROPOSAL > $TRAVIS_BUILD_DIR/upgrade390400-2.log
php step5.php 3.9.0 4.0.0 > $TRAVIS_BUILD_DIR/upgrade390400-3.log
php upgrade.php 4.0.0 5.0.0 ignoredbversion > $TRAVIS_BUILD_DIR/upgrade400500.log
php upgrade2.php 4.0.0 5.0.0 MAIN_MODULE_API,MAIN_MODULE_SUPPLIERPROPOSAL > $TRAVIS_BUILD_DIR/upgrade400500-2.log
php step5.php 4.0.0 5.0.0 > $TRAVIS_BUILD_DIR/upgrade400500-3.log
cd -
set +e
echo
#cat $TRAVIS_BUILD_DIR/upgrade400500-2.log
#cat $TRAVIS_BUILD_DIR/upgrade390400-2.log
#cat /tmp/dolibarr_install.log
- |

View File

@@ -38,6 +38,7 @@ jQuery UI 1.11.4 GPL and MIT License Yes
jQuery select2 3.5.2 GPL and Apache License Yes JS library plugin for sexier multiselect
jQuery blockUI 2.70.0 GPL and MIT License Yes JS library plugin blockUI (to use ajax popups)
jQuery Colorpicker 1.1 MIT License Yes JS library for color picker for a defined list of colors
jQuery DataTables 1.9.4 BSD Yes JS library for tables output
jQuery FileUpload 5.0.3 GPL and MIT License Yes JS library to upload files
jQuery Flot 0.8.3 MIT License Yes JS library to build graph
jQuery JCrop 0.9.8 GPL and MIT License Yes JS library plugin Crop (to crop images)
@@ -51,7 +52,7 @@ jQuery Mobile 1.3.0 GPL and MIT License Yes
jQuery TableDnD 0.6 GPL and MIT License Yes JS library plugin TableDnD (to reorder table rows)
jQuery Timepicker 1.1.0 GPL and MIT License Yes JS library Timepicker addon for Datepicker
jQuery Tiptip 1.3 GPL and MIT License Yes JS library for tooltips
jsGanttImproved 1.7.5.2 BSD License Yes JS library (to build Gantt reports)
jsGantt 1.2 BSD License Yes JS library (to build Gantt reports)
JsTimezoneDetect 1.0.6 MIT License Yes JS library to detect user timezone
For licenses compatibility informations:

289
ChangeLog
View File

@@ -12,154 +12,51 @@ Upgrading to any other version or any other database system is abolutely require
make a Dolibarr upgrade.
***** 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.
***** 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
@@ -223,58 +120,65 @@ 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 reccuring 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 module "Supplier commercial proposal" (price request) is set to stable status.
NEW: Experimental module Accountancy Expert
NEW: Experimental module Multicurency
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 a new method for margin calculation. Added margin on "cost price" 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: #4972 Translated Charges sociales (type 0) and Charges sociales (type 1) in reports page
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: Selection of boxes is move 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 option MAIN_PUBLIC_NOTE_IN_ADDRESS
NEW: add html id/class to locate value in the DOM html
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 constant MAIN_LOGTOHTML to 0 into other 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 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 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 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 stats 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 the event BILL_PAYED to 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 card
NEW: allow a document to be linked to project of another customer by config setup.
NEW: allow project to be shared across entities (for multicompany module).
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 change type of extrafields for some combinations.
NEW: Can define number of first and last line 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 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 dynamicaly number of lines to show on page on product, shipment, contact, orders, thirdparties
NEW: Can select fields to show on supplier orders list.
NEW: Can select fields to show on list also for list of customer orders, shipments and invoices.
NEW: Can select fields to show on proposal lists.
NEW: Can select language from 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
@@ -296,35 +200,33 @@ NEW: Into GED module, filename is truncated only if there is not enough space in
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: Link on user in leave context reach to leave tab.
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: Move Expense report menu from module to menu files
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: Option MAIN_LIST_FILTER_ON_DAY is supported on proposal list
NEW: Add reputation field for price supplier
NEW: Rest API token is no more reset at each call. We can reset it with param reset=1 on login call.
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: 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: 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
@@ -344,9 +246,8 @@ NEW: Removed deprecated CommonObject::client property. Please use CommonObject::
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: Rename path for generiN
NEW: More phpunit tests. Include some REST API into automatic tests.
NEW: Move Expense report menu from module to menu files.
WARNING:
@@ -1138,7 +1039,7 @@ 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 option THEME_ELDY_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

View File

@@ -1,19 +1,14 @@
FROM php:5.6-apache
RUN apt-get update && apt-get install -y libpng12-dev libjpeg-dev libldap2-dev \
RUN apt-get update && apt-get install -y libpng12-dev libjpeg-dev \
&& rm -rf /var/lib/apt/lists/* \
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
&& docker-php-ext-install gd \
&& docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ \
&& docker-php-ext-install ldap \
&& docker-php-ext-install mysqli \
&& apt-get purge -y libpng12-dev libjpeg-dev libldap2-dev
&& docker-php-ext-install gd
RUN docker-php-ext-install mysqli
COPY htdocs/ /var/www/html/
RUN chown -hR www-data:www-data /var/www/html
VOLUME /var/www/html/conf
VOLUME /var/www/html/documents
EXPOSE 80
EXPOSE 80

View File

@@ -25,7 +25,7 @@ OpenSuse, Mandriva ou Mageia).
Vous pouvez les télécharger depuis la rubrique *download* du portail officiel:
https://www.dolibarr.org/
Si vous avez déjà installé un serveur Web avec PHP et une base de donnée (MariaDb/MySql/PostgreSql),
Si vous avez déjà installé un serveur Web avec PHP et une base de donnée (Mysql),
vous pouvez installer Dolibarr avec cette version de la manière suivante:
- Copier le répertoire "dolibarr" et son contenu dans la racine de votre serveur
@@ -117,8 +117,8 @@ Voir fichier ChangeLog.
- Application simple à utiliser.
- Plusieurs thèmes visuels.
- Code simple et facilement personnalisable.
- Requiert PHP et MariaDb, Mysql ou Postgresql (Voir versions exactes sur http://wiki.dolibarr.org/index.php/Prérequis).
- Compatible avec toutes les offres Cloud du marché respectant les prérequis de base de données et PHP.
- Requiert PHP et Mysql ou Postgresql (Voir versions exactes sur http://wiki.dolibarr.org/index.php/Prérequis).
- Compatible avec toutes les offres Cloud du marché respectant les prérequis MySQL et PHP ou Postgresql.
- Export PDF de tous les éléments (factures, propositions commerciales, commandes, bons expéditions, etc...)

View File

@@ -36,7 +36,7 @@ If you have low technical skills and you're looking to install Dolibarr ERP/CRM
### Advanced setup
You can use a Web server and a supported database (MariaDb, MySql or Postgresql) to install the standard version.
You can use a Web server and a supported database (MySQL recommended) to install the standard version.
- Uncompress the downloaded archive
- Copy directory "dolibarr" and all its files inside your web server root, or copy directory anywhere and set up your web server to use "dolibarr/htdocs" as root for a new web server virtual host (second choice need to be server administrator)
@@ -119,7 +119,7 @@ See the [ChangeLog](https://github.com/Dolibarr/dolibarr/blob/develop/ChangeLog)
- Can manage several currencies by adding external module multi-currency.
- Very user friendly and easy to use
- Highly customizable: enable only the modules you need, add user personalized fields, choose your skin, several menu managers (can be used by internal users as a back-office with a particular menu, or by external users as a front-office with another one)
- Works with PHP 5.3+ and MariaDB 5.0.3+, MySQL 5.0.3+ or PostgreSQL 8.1.4+ (See requirements on the [Wiki](http://wiki.dolibarr.org/index.php/Prerequisite))
- Works with PHP 5.3+ and MySQL 4.1+ or PostgreSQL 8.1. (See requirements on the [Wiki](http://wiki.dolibarr.org/index.php/Prerequisite))
- Compatible with all Cloud solutions that match MySQL, PHP or PostgreSQL prerequisites.
- An easy to understand, maintain and code interfaces with your own information system (PHP with no heavy framework; trigger and hook architecture)
- Support for country specific features:
@@ -147,7 +147,7 @@ These are features that Dolibarr does **not** yet fully support:
## DOCUMENTATION
Administrator, user, developer and translator's documentations are available along with other community resources on the [Wiki](https://wiki.dolibarr.org).
Administrator, user, developer and translator's documentations are available along with other community resources on the [Wiki](http://wiki.dolibarr.org).
## CONTRIBUTING

78
build/README-FR Normal file
View File

@@ -0,0 +1,78 @@
README (French)
################################
Building packages
################################
Les sous repertoires du repertoire "build" contiennent tous les fichiers
requis pour packager Dolibarr de maniere automatisee.
On trouve plusieurs outils:
- Pour construire un package Dolibarr complet, il suffit de
> Editer la version dans le fichier makepack-dolibarr.pl
> Lancer la commande perl makepack-dolibarr.pl
- Pour construire un package d'une traduction, il suffit de lancer le script
> perl makepack-dolibarrlang.pl
- Pour construire un package d'un theme, il suffit de lancer le script
> perl makepack-dolibarrtheme.pl
- Pour construire un package d'un module, il suffit de lancer le script
> perl makepack-dolibarrmodule.pl
- Pour construire un package DoliWamp autoexe:
> Installer InnoSetup (http://www.jrsoftware.org)
> Installer WampServer dans "C:\Program Files\Wamp" (http://www.wampserver.com)
> Installer les addon WampServer afin d'y mettre les versions:
Apache2.2.6, Mysql5.0.45, Php5.2.5
> Modifier dans le fichier build/exe/doliwamp.iss la variable SourceDir
afin d'y mettre le repository Dolibarr.
> Modifier AppVerName et OutputBaseFilename.
> Lancer innosetup, ouvrir le fichier build/exe/doliwamp.iss et cliquer sur
le bouton "Compile". Le fichier .exe sera fabrique dans le repertoire build.
- Pour generer la documentation developpeur, lancer le script
> perl dolybarr-doxygen-build.pl
Note:
Le repertoire build et tout ce qu'il contient n'est absolument pas requis
pour faire fonctionner Dolibarr. Ils ne servent qu'a la generation des
packages. Certains packages, une fois construit, n'incluent par le repertoire
"build".
On trouve dans le repertoire "build", les sous-repertoires utilises par
l'outil makepack-dolibarr.pl:
* deb:
Fichier de config pour construire un package Debian.
* rpm:
Fichier de config pour construire un package Redhat ou Mandrake.
* tgz:
Fichier de config pour construire un package tgz.
* exe:
Fichier de config pour construire un package exe pour Windows des sources
ou pour construire l'assistant d'installation complet DoliWamp.
* zip:
Fichier de config pour construire un package zip.
* live:
Fichier pour fabriquer un live CD de demo de Dolibarr.
* patch:
Fichier exemple de generation de fichier patch pour diffusion d'une
modification de Dolibarr.
* doap:
Fichier descriptif DOAP pour promouvoir/decrire la version de Dolibarr.
* pad:
Fichier descriptif PAD pour promouvoir/decrire la version de Dolibarr.
* dmg:
Fichier de config pour construire un package dmg DoliMamp pour Mac OS X

View File

@@ -1,19 +1,10 @@
* To list packages
To test upgrade of a lib with composer:
composer show -i
composer update --no-dev --no-autoloader --dry-run ccampbell/chromephp
* To test upgrade of a lib with composer:
Remove entry in composer.lock
Edit composer.json to change version to "x.y.z"
composer -v update --root-reqs --no-dev --no-autoloader --dry-run ccampbell/chromephp
* To upgrade a lib with composer:
Remove entry in composer.lock
Edit composer.json to change version to "x.y.z"
composer -v update --root-reqs --no-dev --no-autoloader ccampbell/chromephp
To upgrade a lib with composer:
composer update --no-dev --no-autoloader ccampbell/chromephp

View File

@@ -73,8 +73,7 @@ Ex: https://alioth.debian.org/users/eldy-guest
# msgfmt -v -c -o /dev/null XX.po To have status of translation for language XX
# To check package integrity
# lintian --pedantic -E -I package.deb To test a binary package
# lintian --pedantic -E -I package.dsc To test a source package
# lintian --pedantic -E -I package.deb To test a package
# To manipulate packages
# dpkg -l List all packages
@@ -155,10 +154,8 @@ tag 729538 -moreinfo
##### Testing a package into unstable env
Check you have a mysql server available from another interface than "localhost".
Set line in /etc/mysql/my.cnf if required and restart mysql
[mysqld]
bind-address = *
Comment line in /etc/mysql/my.cnf if required and restart mysql
#bind-address = 127.0.0.1
Create a chroot called "unstable-amd64-sbuild".
Chroot env is stored into /srv/chroot directory.
@@ -173,8 +170,6 @@ Puis pour se connecter et préparer l'environnement
> schroot -c name_of_chroot
> cat /etc/debian_chroot to check which debian branch we are into
> vi /usr/sbin/policy-rc.d and replace return code 101 (not allowed) into 0 (ok)
> apt-get update
> apt-get upgrade
> apt-get install links mysql-client
To test a package
@@ -182,15 +177,15 @@ To test a package
> cp ../build-area/* /srv/chroot/unstable/tmp
> sudo schroot -c name_of_chroot
> cd /tmp
> lintian --no-tag-display-limit --pedantic -E -I dolibarr*.deb
> lintian --no-tag-display-limit --pedantic -E -I dolibarr*.dsc
> lintian --pedantic -E -I dolibarr*.deb
> lintian --pedantic -E -I dolibarr*.dsc
> dpkg -i dolibarr*.deb ou pour avoir des traces: dpkg -D77777 -i dolibarr*.deb
> apt-get install -f
If there is a problem launching apache, because port is already used, change it into your chroot install with
> vi /etc/apache2/ports.conf
Then restart.
Then you can call/test dolibarr with http://localhost:port/dolibarr/ . It can be also called FROM HOST (port must be a not used port on host).
Then you can call/test dolibarr with http://localhost:port/dolibarr/ (It can be also called from host).
@@ -293,25 +288,16 @@ from origin/upstream and origin/pristine.
> debian/get-orig-source.sh
If script fails with error Bad certificate, you can set "export PERL_LWP_SSL_VERIFY_HOSTNAME=0" to solve this.
* Edit orig.tar.gz file to remove
- debian
* Edit tgz file to remove
- htdocs/includes/ckeditor
- htdocs/includes/jquery/css
- htdocs/includes/jquery/js
- htdocs/includes/jquery/plugins/flot
- htdocs/includes/jquery/plugins/multiselect
- htdocs/includes/jquery/plugins/datatables
- htdocs/includes/jszip
- htdocs/includes/mike42
- htdocs/includes/phpexcel or htdocs/includes/phpoffice
- htdocs/includes/restler/framework/Luracast/Restler/explorer
- htdocs/includes/swiftmailer
- htdocs/includes/tcpdf or htdocs/includes/tecnickcom
- htdocs/includes/jquery/plugins/datatables/extras/TableTools/swf
- htdocs/includes/phpexcel
- htdocs/includes/tcpdf
And rename file into
dolibarr-x.y.z+dfsgw.tgz
(x.y.z = version, w start from 1 and is increased for each new git-import-orig already done)
* Staying into projet gitted root directory, run
* Staying into git root directory, run
> git-import-orig -vv ../dolibarr-x.y.z+dfsgw.tgz --debian-branch=[master|jessie] --upstream-branch=[upstream|upstream-3.5.x]
and enter version when requested with format
x.y.z+dfsgw
@@ -338,7 +324,7 @@ To update dolibarr debian package when only files into debian has changed:
To update dolibarr debian package when only files not into debian has changed:
* Manually, add patches into debian/patches and update file debian/series, or do the 2 steps with "quilt import filepatch.patch"
* You can test patching of serie with "quilt push" (autant de fois que de patch). Avec "quilt pop -a", on revient a l'état du upstream sans les patch.
* You can test patching of serie with "quilt push" (autant de fois que de patch). Avec "quilt pop -a", on revien a l'état du upstream sans les patch.
Once files has been prepared, it's time to test:
@@ -355,7 +341,7 @@ Note: Package is built into directory ../build-area
Note: To compare 2 packages: debdiff package1.dsc package2.dsc
* Test package (see dedicated chapter to test it with debian unstable env)
> sudo rm /srv/chroot/unstable/tmp/* >/dev/null 2>&1; cp ../build-area/* /srv/chroot/unstable/tmp
> cp ../build-area/* /srv/chroot/unstable/tmp
See rest of process into dedicated chapter "To test a package" to test it with debian unstable env
* If package .deb is ok:

View File

@@ -100,8 +100,9 @@ $dolibarr_main_db_pass='';
# This parameter contains the name of the driver used to access your
# Dolibarr database.
# Default value: none
# Possible values: mysqli, pgsql
# Possible values: mysql, mysqli, pgsql
# Examples:
# $dolibarr_main_db_type='mysql';
# $dolibarr_main_db_type='mysqli';
# $dolibarr_main_db_type='pgsql';
#
@@ -221,7 +222,13 @@ $dolibarr_main_prod='0';
# $dolibarr_main_limit_users='0';
# dolibarr_mailing_limit_sendbyweb
# Can set a limit for mailing send by web, can be used for a restricted mode.
# Can set a limit for mailing send by web. This overwrite database value. Can be used to restrict on OS level.
# Default value: 0 (use database value if exist)
# Examples:
# $dolibarr_mailing_limit_sendbyweb='0';
# dolibarr_mailing_limit_sendbycli
# Can set a limit for mailing send by cli. This overwrite database value. Can be used to restrict on OS level.
# Default value: 0 (use database value if exist)
# Examples:
# $dolibarr_mailing_limit_sendbycli='0';

View File

@@ -16,7 +16,7 @@ Depends: libapache2-mod-php5 | libapache2-mod-php5filter | php5-cgi | php5-fpm |
php5-mysql | php5-mysqli, php5-curl, php5-gd, php5-ldap,
# Required PHP libraries
php-pear, php-mail-mime,
# php-tcpdf,
# php-tcpdf, libfpdi-php,
# libfpdf-tpl-php, php-fpdf,
# libphp-adodb,
# libnusoap-php,
@@ -26,11 +26,11 @@ Depends: libapache2-mod-php5 | libapache2-mod-php5filter | php5-cgi | php5-fpm |
# Misc dependencies
# fonts-dejavu-core | ttf-dejavu-core,
xdg-utils,
virtual-mysql-client,
mysql-server,
mysql-client,
${misc:Depends},
${perl:Depends}
Recommends: apache2 | lighttpd | httpd,
virtual-mysql-server
Recommends: apache2 | lighttpd | httpd
Suggests: www-browser, php5-geoip
Description: Web based software to manage a company or foundation
Dolibarr ERP & CRM is an easy to use open source/free software package for

View File

@@ -197,6 +197,9 @@ License: GPL-2+
On Debian systems, the full text of the GNU General Public
License version 2 can be found in the file
`/usr/share/common-licenses/GPL-2'.
Comment:
Those files are not shipped in the binary package as we
configure Dolibarr to use the library packaged in "libfpdi-php".
Files: htdocs/includes/geoip/*
Copyright: 2007 MaxMind LLC

View File

@@ -147,6 +147,7 @@ case "$1" in
# File already exist. We add params not found.
#echo Add new params to overwrite path to use shared libraries/fonts
#grep -q -c "dolibarr_lib_ADODB_PATH" $config || [ ! -d "/usr/share/php/adodb" ] || echo "<?php \$dolibarr_lib_ADODB_PATH='/usr/share/php/adodb'; ?>" >> $config
#grep -q -c "dolibarr_lib_FPDI_PATH" $config || [ ! -d "/usr/share/php/fpdi" ] || echo "<?php \$dolibarr_lib_FPDI_PATH='/usr/share/php/fpdi'; ?>" >> $config
##grep -q -c "dolibarr_lib_GEOIP_PATH" $config || echo "<?php \$dolibarr_lib_GEOIP_PATH=''; ?>" >> $config
#grep -q -c "dolibarr_lib_NUSOAP_PATH" $config || [ ! -d "/usr/share/php/nusoap" ] || echo "<?php \$dolibarr_lib_NUSOAP_PATH='/usr/share/php/nusoap'; ?>" >> $config
#grep -q -c "dolibarr_lib_ODTPHP_PATHTOPCLZIP" $config || [ ! -d "/usr/share/php/libphp-pclzip" ] || echo "<?php \$dolibarr_lib_ODTPHP_PATHTOPCLZIP='/usr/share/php/libphp-pclzip'; ?>" >> $config

View File

@@ -30,6 +30,8 @@ $force_install_lockinstall='444';
// - not removed from package (see rm in rules file),
// - declared into dependencies (see Depends in control file)
//$force_dolibarr_lib_TCPDF_PATH='';
//$force_dolibarr_lib_FPDF_PATH='/usr/share/php/fpdf';
//$force_dolibarr_lib_FPDI_PATH='/usr/share/php/fpdi';
//$force_dolibarr_lib_ADODB_PATH='/usr/share/php/adodb';
//$force_dolibarr_lib_GEOIP_PATH='';
//$force_dolibarr_lib_NUSOAP_PATH='/usr/share/php/nusoap';

View File

@@ -79,6 +79,7 @@ override_dh_install:
# clean from all PHP embedded libraries (we use package dependencies instead)
# rm -fr htdocs/includes/adodbtime
# rm -fr htdocs/includes/fpdfi
# rm -fr htdocs/includes/geoip
# rm -fr htdocs/includes/nusoap
# rm -fr htdocs/includes/odtphp/zip/pclzip

View File

@@ -73,8 +73,6 @@ If you want to build/test package locally:
bzr commit -m "Upstream version x.y"
bzr push
# Init debian dir repository into launchpad (when repository for sources does not exist)
#----------------------------------
- Create debian directory and upload it onto bzr branch lp:~yourlogin/+junk/debian-[dev|stable]
@@ -106,13 +104,12 @@ If you want to build/test package locally:
bzr push lp:~yourlogin/+junk/debian-[dev|stable]
# Define a recipe into launchpad (a rule to build packages into a PPA)
#----------------------------------
- Create a file dolibarr-[beta|stable].recipe with content
- Create a file dolibarr.recipe with content
cd bzr
vi dolibarr-[beta|stable].recipe
For beta/dev:
vi dolibarr.recipe
For dev:
# bzr-builder format 0.3 deb-version {debupstream}-0~{revno}
lp:dolibarr
merge packaging lp:~yourlogin/+junk/debian-dev
@@ -122,7 +119,7 @@ If you want to build/test package locally:
merge packaging lp:~yourlogin/+junk/debian-stable
- Run command
cd bzr
bzr dailydeb dolibarr-[beta|stable].recipe working-dir
bzr dailydeb dolibarr.recipe working-dir
This will create a directory "working-dir" with dolibarr sources and will add sources from ~yourlogin/+junk/debian-[dev|stable]
- Test package sources
sudo pbuilder build <working-dir>/<project>_<version>.dsc

74
build/live/Howto.txt Normal file
View File

@@ -0,0 +1,74 @@
Howto (English)
##################################################
Building a live CD/USB
##################################################
This is all steps to follow to build a live CD/USB demo of Dolibarr using
SLAX distribution.
1) Download SLAX (www.slax.org) as a zip file.
2) Unzip file on a directory on any USB key with at least 512Mo free (even
if you want to build a CD live).
3) Download following modules from SLAX web sites and put files
into the /slax/modules directory:
apr-1.2.12-i486-1.lzm
apr-util-1.2.12-i486-1.lzm
cairomm-1.4.8-i686.lzm
cli-ftp-pack.lzm
codecs-essential-20071007.lzm
firefox-2.0.0.14.lzm
ghostscript-8.62-i486-5.lzm
gimp-2.4.5-i486-1sl.lzm
gparted-0.3.7-i486-1as.lzm
grsync.lzm
httpd-2.2.8-i486-1.lzm
libsigc++-2.0.18-i686.lzm
mysql-5.0.51b-i486-1.lzm
php-5.2.6-i486-1.lzm
printmodule-s6.lzm
Save_by_Pastrugno-0.1.lzm
telnet-1.5.lzm
4) Copy dolibarr files into path
\slax\changes\var\www\htdocs\dolibarr
5) Run the script
> /boot/bootinst.bat
or
> /boot/bootinst.sh
and answer yes to overwrite the MBR of the disk of your USB key.
6) Boot on USB key (Change your BIOS setup if required).
7) After boot, run the script
> mysql_install_db --user=mysql
This will create mysql empty system database.
8) Edit the file /etc/httpd/httpd.conf to uncomment the line
with PHP activation.
Include /etc/httpd/mod_php.conf
9) Edit \slax\changes\etc\httpd\php.ini file to disabled features where librairies does not
exists. You can comment lines:
;extension=gd.so
;extension=mhash.so
;extension=snmp.so
10) Personalized your desktop.
Add a link to application
"firefox http://localhost/dolibarr/htdocs/index.php"
Add a link to application
"/var/www/htdocs/dolibarr/dev/initdemo/initdemo.sh"
Add a link to application
"/var/www/htdocs/dolibarr/dev/initdemo/removedemo.sh"
11) Reboot again on your USB key.
12) Now you can run Dolibarr install process
http://localhost/dolibarr/htdocs/install/index.php
or copy USB key content to build another one quickly.
or build a CD with command (TODO).

7
build/live/README Normal file
View File

@@ -0,0 +1,7 @@
README (English)
##################################################
Building a live CD/USB
##################################################
This directory contains files and docs used to build
a live CD or USB demo of Dolibarr.

View File

@@ -12,7 +12,6 @@ beta version of Dolibarr, step by step.
To generate a changelog of a major new version x.y.0 (from develop repo), you can do "cd ~/git/dolibarr; git log `diff -u <(git rev-list --first-parent x.(y-1).0) <(git rev-list --first-parent develop) | sed -ne 's/^ //p' | head -1`.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e '^FIX\|NEW' | sort -u | sed 's/FIXED:/FIX:/g' | sed 's/FIXED :/FIX:/g' | sed 's/FIX :/FIX:/g' | sed 's/FIX /FIX: /g' | sed 's/NEW :/NEW:/g' | sed 's/NEW /NEW: /g' > /tmp/aaa"
To generate a changelog of a major new version x.y.0 (from x.y repo), you can do "cd ~/git/dolibarr_x.y; git log `diff -u <(git rev-list --first-parent x.(y-1).0) <(git rev-list --first-parent x.y.0) | sed -ne 's/^ //p' | head -1`.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e '^FIX\|NEW' | sort -u | sed 's/FIXED:/FIX:/g' | sed 's/FIXED :/FIX:/g' | sed 's/FIX :/FIX:/g' | sed 's/FIX /FIX: /g' | sed 's/NEW :/NEW:/g' | sed 's/NEW /NEW: /g' > /tmp/aaa"
To generate a changelog of a maintenance version x.y.z, you can do "cd ~/git/dolibarr_x.y; git log x.y.z-1.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e '^FIX\|NEW' | sort -u | sed 's/FIXED:/FIX:/g' | sed 's/FIXED :/FIX:/g' | sed 's/FIX :/FIX:/g' | sed 's/FIX /FIX: /g' | sed 's/NEW :/NEW:/g' | sed 's/NEW /NEW: /g' > /tmp/aaa"
- To know number of lines changes: git diff --shortstat A B
- Update version number with x.y.z-w in htdocs/filefunc.inc.php
- Commit all changes.
@@ -36,7 +35,6 @@ complete release of Dolibarr, step by step.
To generate a changelog of a major new version x.y.0 (from develop repo), you can do "cd ~/git/dolibarr; git log `diff -u <(git rev-list --first-parent x.(y-1).0) <(git rev-list --first-parent develop) | sed -ne 's/^ //p' | head -1`.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e '^FIX\|NEW' | sort -u | sed 's/FIXED:/FIX:/g' | sed 's/FIXED :/FIX:/g' | sed 's/FIX :/FIX:/g' | sed 's/FIX /FIX: /g' | sed 's/NEW :/NEW:/g' | sed 's/NEW /NEW: /g' > /tmp/aaa"
To generate a changelog of a major new version x.y.0 (from x.y repo), you can do "cd ~/git/dolibarr_x.y; git log `diff -u <(git rev-list --first-parent x.(y-1).0) <(git rev-list --first-parent x.y.0) | sed -ne 's/^ //p' | head -1`.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e '^FIX\|NEW' | sort -u | sed 's/FIXED:/FIX:/g' | sed 's/FIXED :/FIX:/g' | sed 's/FIX :/FIX:/g' | sed 's/FIX /FIX: /g' | sed 's/NEW :/NEW:/g' | sed 's/NEW /NEW: /g' > /tmp/aaa"
To generate a changelog of a maintenance version x.y.z, you can do "cd ~/git/dolibarr_x.y; git log x.y.z-1.. --no-merges --pretty=short --oneline | sed -e "s/^[0-9a-z]* //" | grep -e '^FIX\|NEW' | sort -u | sed 's/FIXED:/FIX:/g' | sed 's/FIXED :/FIX:/g' | sed 's/FIX :/FIX:/g' | sed 's/FIX /FIX: /g' | sed 's/NEW :/NEW:/g' | sed 's/NEW /NEW: /g' > /tmp/aaa"
- To know number of lines changes: git diff --shortstat A B
- Update version number with x.y.z in htdocs/filefunc.inc.php
- Commit all changes.

View File

@@ -36,7 +36,7 @@ Go into project you want to update. It mught be:
Once logged, click on "Add file" in section "Source Files", then select mode "Upload From: Remote URL"
Keep empty for "Filename", choose "Remote URL" and enter into last field, URL that should looks like this:
http://www.dolibarr.org/files/stable/package_rpm_generic/dolibarr-x.y.v-0.4.src.rpm
http://www.dolibarr.org/files/stable/package_rpm_generic/dolibarr-x.y.v-0.3.src.rpm
Then add into Advanded - Attributes
OBS:Screenshots http://www.dolibarr.org/images/dolibarr_screenshot1.png

View File

@@ -2,22 +2,14 @@
"name": "dolibarr/dolibarr",
"type": "project",
"description": "Dolibarr ERP & CRM is a modern and easy to use web software to manage your business",
"keywords": [
"erp",
"crm",
"invoice",
"sme",
"proposal",
"order",
"stock",
"agenda"
],
"homepage": "https://www.dolibarr.org",
"keywords": ["erp","crm","invoice","sme","proposal","order","stock"],
"homepage": "http://www.dolibarr.org",
"license": "GPL-3.0+",
"support": {
"issues": "https://github.com/Dolibarr/dolibarr/issues",
"forum": "https://www.dolibarr.org/forum",
"wiki": "https://wiki.dolibarr.org",
"forum": "http://www.dolibarr.org/forum",
"wiki": "http://wiki.dolibarr.org",
"irc": "irc://chat.freenode.net/dolibarr",
"source": "https://github.com/Dolibarr/dolibarr"
},
"config": {
@@ -27,7 +19,7 @@
"php": ">=5.3.0",
"ext-curl": "*",
"ccampbell/chromephp": "4.1.0",
"ckeditor/ckeditor": "4.5.9",
"ckeditor/ckeditor": "dev-full/stable",
"mike42/escpos-php": "1.2.1",
"mobiledetect/mobiledetectlib": "2.8.17",
"phpoffice/phpexcel": "1.8.1",
@@ -38,8 +30,7 @@
"jakub-onderka/php-parallel-lint": "^0",
"jakub-onderka/php-console-highlighter": "^0",
"phpunit/phpunit": "^4",
"squizlabs/php_codesniffer": "^2",
"phpunit/phpunit-selenium": "^2"
"squizlabs/php_codesniffer": "^2"
},
"suggest": {
"ext-mysqlnd": "To use with MySQL or MariaDB",
@@ -55,6 +46,7 @@
"ext-soap": "Native SOAP",
"ext-zip": "ODT and Excel support",
"ext-xml": "Excel support",
"firephp/firephp-core": "Logging to Firebug console support"
"firephp/firephp-core": "Logging to Firebug console support",
"raven/raven": "Sentry logging server support"
}
}

1406
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ provided with a standard release.
There is also some documentation on Dolibarr Wiki:
https://wiki.dolibarr.org/
http://wiki.dolibarr.org/
and
https://doxygen.dolibarr.org/
http://www.dolibarr.org/html_doxygen/index.html

View File

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 65 KiB

View File

@@ -9,7 +9,6 @@
<exclude-pattern type="relative">htdocs/includes</exclude-pattern>
<exclude-pattern type="relative">htdocs/conf.php</exclude-pattern>
<exclude-pattern type="relative">*/nltechno*</exclude-pattern>
<exclude-pattern type="relative">*/htdocs/includes</exclude-pattern>
<!-- List of all tests -->
@@ -188,9 +187,7 @@
<severity>0</severity>
</rule>
<rule ref="PEAR.Commenting.ClassComment.MissingTag">
<severity>0</severity>
</rule>
<rule ref="PEAR.Commenting.ClassComment.MissingTag" />
<rule ref="PEAR.Commenting.ClassComment.MissingAuthorTag">
<severity>0</severity>

View File

@@ -14,7 +14,6 @@ fi
if [ "x$1" = "xlist" ]
then
echo "Search duplicate keys into en_US lang files (there is no cross file check)"
for file in `find htdocs/langs/en_US -name *.lang -type f`
do
dupes=$(

View File

@@ -16,7 +16,6 @@ fi
# To detect
if [ "x$1" = "xlist" ]
then
echo "Search duplicate line for lang en_US"
for file in `find htdocs/langs/en_US -type f -name *.lang`
do
if [ `sort "$file" | grep -v '^$' | uniq -d | wc -l` -gt 0 ]
@@ -30,7 +29,6 @@ fi
# To fix
if [ "x$1" = "xfix" ]
then
echo "Fix duplicate line for lang en_US"
for file in `find htdocs/langs/en_US -type f -name *.lang`
do
awk -i inplace ' !x[$0]++' "$file"

View File

@@ -1,7 +1,6 @@
#!/usr/bin/env php
<?php
/* Copyright (C) 2016 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2016 Juanjo Menent <jmenent@2byte.es>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -57,7 +56,7 @@ $error=0;
@set_time_limit(0);
print "***** ".$script_file." (".$version.") pid=".dol_getmypid()." *****\n";
dol_syslog($script_file." launched with arg ".implode(',',$argv));
dol_syslog($script_file." launched with arg ".join(',',$argv));
$mode = $argv[1];
$filepath = $argv[2];

View File

@@ -1,7 +1,6 @@
#!/usr/bin/env php
<?php
/* Copyright (C) 2016 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2016 Juanjo Menent <jmenent@2byte.es>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -57,7 +56,7 @@ $error=0;
@set_time_limit(0);
print "***** ".$script_file." (".$version.") pid=".dol_getmypid()." *****\n";
dol_syslog($script_file." launched with arg ".implode(',',$argv));
dol_syslog($script_file." launched with arg ".join(',',$argv));
$mode = $argv[1];
$filepath = $argv[2];

View File

@@ -1,7 +1,6 @@
#!/usr/bin/env php
<?php
/* Copyright (C) 2016 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2016 Juanjo Menent <jmenent@2byte.es>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -57,7 +56,7 @@ $error=0;
@set_time_limit(0);
print "***** ".$script_file." (".$version.") pid=".dol_getmypid()." *****\n";
dol_syslog($script_file." launched with arg ".implode(',',$argv));
dol_syslog($script_file." launched with arg ".join(',',$argv));
$mode = $argv[1];
$filepath = $argv[2];

View File

@@ -1,7 +1,7 @@
#!/usr/bin/env php
<?php
/* Copyright (C) 2016 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2016 Juanjo Menent <jmenent@2byte.es>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3 of the License, or
@@ -146,7 +146,7 @@ $sqls=array(
@set_time_limit(0);
print "***** ".$script_file." (".$version.") pid=".dol_getmypid()." *****\n";
dol_syslog($script_file." launched with arg ".implode(',',$argv));
dol_syslog($script_file." launched with arg ".join(',',$argv));
$mode = $argv[1];
$option = $argv[2];
@@ -154,14 +154,14 @@ $option = $argv[2];
if (empty($mode) || ! in_array($mode,array('test','confirm'))) {
print "Usage: $script_file (test|confirm) (all|option)\n";
print "\n";
print "option can be ".implode(',',array_keys($sqls))."\n";
print "option can be ".join(',',array_keys($sqls))."\n";
exit(-1);
}
if (empty($option) || ! in_array($option, array_merge(array('all'),array_keys($sqls))) ) {
print "Usage: $script_file (test|confirm) (all|option)\n";
print "\n";
print "option can be ".implode(',',array_keys($sqls))."\n";
print "option can be ".join(',',array_keys($sqls))."\n";
exit(-1);
}

View File

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB

View File

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

View File

Before

Width:  |  Height:  |  Size: 67 KiB

After

Width:  |  Height:  |  Size: 67 KiB

View File

@@ -2,32 +2,24 @@ README (English)
--------------------------------
This directory contains PHP script samples that can be used to start a development on Dolibarr.
*** build_class_from_table.php:
build_class_from_table.php:
This is the script to use to generate PHP code of a PHP POJO class
object, a PHP script that use this POJO. This script use the files
skeleton_*.php to build its generated code.
*** modMyModule.class.php:
modMyModule.class.php:
Is a sample of module descriptor that you can use if you want to build a new module/plugin for
Dolibarr.
*** skeleton_script.php:
skeleton_script.php:
Is a sample you can use as an example if you need to build a script to run on command line
*** skeleton_page.php:
skeleton_page.php:
Is a sample you can use as an example if you need to build an HTML page to include in Dolibarr GUI.
*** skeleton_class.class.php:
skeleton_class.class.php:
Is a sample you can use as an example if you need to build a class file to access a new table required by a Dolibarr development.
However it is better to run the build_class_from_table.php script that accepts a table name as a parameter and will uses the description table within database and the skeleton_class.class.php file to generate full code for your class file.
After running this script, the class to access your table (insert a record, update, delete and select) is directly finished and can be used by your module's code.

View File

@@ -62,9 +62,9 @@ class modMyModule extends DolibarrModules
$this->name = preg_replace('/^mod/i','',get_class($this));
// Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module)
$this->description = "Description of module MyModule";
$this->descriptionlong = "A very long description. Can be a full HTML content";
$this->descriptionlong = "A very lon description. Can be a full HTML content";
$this->editor_name = 'Editor name';
$this->editor_url = 'https://www.dolibarr.org';
$this->editor_url = 'http://www.dolibarr.org';
// Possible values for version are: 'development', 'experimental', 'dolibarr', 'dolibarr_deprecated' or a version string like 'x.y.z'
$this->version = '1.0';
@@ -105,9 +105,9 @@ class modMyModule extends DolibarrModules
// Dependencies
$this->hidden = false; // A condition to hide module
$this->depends = array(); // List of module class names as string that must be enabled if this module is enabled
$this->requiredby = array(); // List of module ids to disable if this one is disabled
$this->conflictwith = array(); // List of module class names as string this module is in conflict with
$this->depends = array(); // List of modules id that must be enabled if this module is enabled
$this->requiredby = array(); // List of modules id to disable if this one is disabled
$this->conflictwith = array(); // List of modules id this module is in conflict with
$this->phpmin = array(5,0); // Minimum version of PHP required by module
$this->need_dolibarr_version = array(3,0); // Minimum version of Dolibarr required by module
$this->langfiles = array("mylangfile@mymodule");

View File

@@ -93,12 +93,12 @@ class SkeletonApi extends DolibarrApi
* @param string $sortorder Sort order
* @param int $limit Limit for list
* @param int $page Page number
* @param string $sqlfilters Other criteria to filter answers separated by a comma. Syntax example "(t.ref:like:'SO-%') and (t.date_creation:<:'20160101') or (t.import_key:=:'20160101')"
*
* @return array Array of skeleton objects
*
* @url GET /skeletons/
*/
function index($mode, $sortfield = "t.rowid", $sortorder = 'ASC', $limit = 0, $page = 0, $sqlfilters = '') {
function getList($mode, $sortfield = "s.rowid", $sortorder = 'ASC', $limit = 0, $page = 0) {
global $db, $conf;
$obj_ret = array();
@@ -124,19 +124,18 @@ class SkeletonApi extends DolibarrApi
if ((!DolibarrApiAccess::$user->rights->societe->client->voir && !$socid) || $search_sale > 0) $sql.= " AND s.fk_soc = sc.fk_soc";
if ($socid) $sql.= " AND s.fk_soc = ".$socid;
if ($search_sale > 0) $sql.= " AND s.rowid = sc.fk_soc"; // Join for the needed table to filter by sale
// Insert sale filter
if ($search_sale > 0)
{
$sql .= " AND sc.fk_user = ".$search_sale;
}
if ($sqlfilters)
$nbtotalofrecords = 0;
if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST))
{
if (! DolibarrApi::_checkFilters($sqlfilters))
{
throw new RestException(503, 'Error when validating parameter sqlfilters '.$sqlfilters);
}
$regexstring='\(([^:\'\(\)]+:[^:\'\(\)]+:[^:\(\)]+)\)';
$sql.=" AND (".preg_replace_callback('/'.$regexstring.'/', 'DolibarrApi::_forge_criteria_callback', $sqlfilters).")";
$result = $db->query($sql);
$nbtotalofrecords = $db->num_rows($result);
}
$sql.= $db->order($sortfield, $sortorder);

Some files were not shown because too many files have changed in this diff Show More