Commit Graph

9910 Commits

Author SHA1 Message Date
Mathieu Pellegrin
6a9d50513f Fix incorrect total discount (missing loop after GROUP BY query) (#36000)
* Fix incorrect total discount (missing loop after GROUP BY query)

* Make phpcs happy

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2025-10-29 23:19:47 +01:00
Laurent Destailleur
cd2f4bb7d2 Merge branch '22.0' of git@github.com:Dolibarr/dolibarr.git into develop 2025-10-24 19:46:38 +02:00
Laurent Destailleur
9f2c33aa75 Merge branch '22.0' of git@github.com:Dolibarr/dolibarr.git into 22.0 2025-10-24 19:39:15 +02:00
Laurent Destailleur
fe71668d0d Replace use of DISTINCT with WHERE EXISTS 2025-10-24 03:15:51 +02:00
Bradley Jarvis
3464989848 Fix - Task event linked from task and event (#35888)
This patch fixes task events so that they are correctly displayed in the
task event list and that in the event the Linked Object referes back to
the task.

The issue was that the elementtype value in the database was being
referenced as both 'project_task' and 'task' by different parts of code

Co-authored-by: brad <brad@endurotags.com.au>
2025-10-23 14:47:27 +02:00
Laurent Destailleur
1e84852825 Clean code 2025-10-23 14:26:47 +02:00
Regis Houssin
d37cf4b38a FIX wrong socpeople id when multiple assigned + avoid php warnings (#35878) 2025-10-22 02:29:05 +02:00
Laurent Destailleur
4799705cd8 Merge branch '22.0' of git@github.com:Dolibarr/dolibarr.git into develop 2025-10-21 02:03:34 +02:00
Laurent Destailleur
ad00c73028 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2025-10-19 21:23:46 +02:00
Laurent Destailleur
738b85abcd Fix PHP doc regression 2025-10-19 18:38:10 +02:00
Laurent Destailleur
2c65efad96 Fix php doc 2025-10-19 18:32:25 +02:00
Laurent Destailleur
9a8820b9c6 NEW Add column title in emailing and add more filters 2025-10-19 03:33:09 +02:00
Frédéric FRANCE
18c29d0e40 fix tva can be sometimes string instead float (#35835) 2025-10-18 19:12:01 +02:00
MDW
66683105f1 Qual: Fix phan notices (#35827)
# Qual: Fix phan notices

Some type hints updates + correction to get week from date (action/pertype.php)
+ check that value is not null (pdf_* classes).
2025-10-18 19:10:43 +02:00
Vincent Maury
b28b94821f NEW #35700 : Throw an error when validating a propal, order, supplier with a product no more in sale/purchase… (#35709)
* Fix #35700 : Throw an error when validating a propal, order, supplier proposal, supplier order if some products doesn't have the good status (on sale, on buy)

* Fix #35700 : Throw an error when validating a propal, order, supplier proposal, supplier order if some products doesn't have the good status (on sale, on buy)

* Fix #35700 : Throw an error when validating a propal, order, supplier proposal, supplier order if some products doesn't have the good status (on sale, on buy)

* Fix #35700 : Throw an error when validating a propal, order, supplier proposal, supplier order if some products doesn't have the good status (on sale, on buy)

* Fix #35700 : Throw an error when validating a propal, order, supplier proposal, supplier order if some products doesn't have the good status (on sale, on buy)

* Update commonobject.class.php

* Refactor checkActiveProductInLines method

* Fix comment formatting in commonobject.class.php

* Update commonobject.class.php

---------

Co-authored-by: vmaury <vmaury@vmaury-Lafite-Pro-16-AMD>
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2025-10-18 11:19:31 +02:00
Regis Houssin
da32ca9228 FIX wrong entity alias (#35821) 2025-10-17 18:11:29 +02:00
Frédéric FRANCE
29b3880e6c add dolBuildUrl (#35664)
* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

* clean baseline

* add dolBuildUrl

* add dolBuildUrl

* add dolBuildUrl

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2025-10-17 02:31:07 +02:00
Laurent Destailleur
412fe1df32 Fix regression 2025-10-16 21:26:35 +02:00
Laurent Destailleur
c45ab5c387 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2025-10-15 20:03:54 +02:00
Jon Bendtsen
a9b468bbcd New: Adding linked project to mass mailing card (#35723)
* New: Adding linked project to mass mailing card

* modify project on mailing card

* mailing card load fk_project pre commit fix

* only fetch projects with id>0

* fix PHPstan errors regarding mesg

* projects related to mass mailings does not have a soc or socid

* remove last trace of soc and socid

* checking if mesg is set before using it

* just loading all projects, because maybe you have a mailing list with workers for a thirdparty? think company party

* showing the project during edit

* given that action is already something else, it will never not be classify

* making PHPstan happy

* Adding project column to list of mass mailings. Search, order and click able

* pasted the wrong place

* no need to check for filtermail

* x now also clears project search

---------

Co-authored-by: Jon Bendtsen <xcodeauthor@jonb.dk>
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2025-10-15 03:19:45 +02:00
Jon Bendtsen
aa67ad50bc Mass mailing list: make title a clickable link (#35746)
* Mass mailing list: make title a clickable link

* Update list.php

---------

Co-authored-by: Jon Bendtsen <xcodeauthor@jonb.dk>
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2025-10-14 21:50:34 +02:00
Jon Bendtsen
49b8f4a590 Fix: 3 modules where list.php redirected to /mymodule/myobject_card.php (#35732)
* Fix: 3 modules where list.php redirected to /mymodule/myobject_card.php

* remove an commented segment of the code which did the same kind of dolbuildpath to /mymodule/myobject_card.php which is obviously wrong, since it was a comment anyway, no risk

* remove an commented line of the code which did the same kind of dolbuildpath to /mymodule/myobject_card.php which is obviously wrong, since it was a comment anyway, no risk

---------

Co-authored-by: Jon Bendtsen <xcodeauthor@jonb.dk>
2025-10-14 21:41:51 +02:00
Laurent Destailleur
31989adc1f Merge branch '22.0' of git@github.com:Dolibarr/dolibarr.git into develop 2025-10-14 21:38:13 +02:00
Frédéric FRANCE
1ad2d24a4b fix img_pictos (#35722)
* fix img_pictos

* fix img_pictos

* fix img_pictos

* fix img_pictos

* fix img_pictos

* fix img_pictos

* fix img_pictos

* fix img_pictos
2025-10-14 19:31:06 +02:00
Laurent Destailleur
a021b9fb52 FIX link to sort of target email page 2025-10-14 15:03:44 +02:00
Laurent Destailleur
ef9e74c4d4 Merge branch '22.0' of git@github.com:Dolibarr/dolibarr.git into develop 2025-10-13 19:55:25 +02:00
Laurent Destailleur
41634d08ca NEW Add option PROJECT_CAN_ALWAYS_LINK_TO_ALL_CUSTOMERS 2025-10-13 14:30:45 +02:00
Laurent Destailleur
938e6e0b77 PERF Remove distinct and join in list of agenda events 2025-10-13 13:14:08 +02:00
Laurent Destailleur
394e35d00b Clean code 2025-10-13 11:34:57 +02:00
Laurent Destailleur
580d0d4fa8 Replace function img_pdf with img_picto 2025-10-13 11:12:30 +02:00
Jon Bendtsen
e8a347f89e NEW API for handling mass mailing targets (#35603)
* NEW API for handling mailing targets

* fix PHP Codesniffer

* adding return values to make phpstan happy

* Update function actually updates

* defining mailing_target public function create

* using a different language translation

* mailing_target - phpstan fixes

* mailing target - no check properties body

* mailing target int typecast fk_mailing

* mailing target - just 1 parameter

* mailing_target phpstan fixes

* mailing_target setting labelStatus

* mailing target class public function delete

* reveal the list of status name for the Mass mailing object in the API

* set tms to now when it is set to draft

* functions to set the mailing target status

* hurl testing api mailings

* hurl test - exit run script at first error

* hurl test mailings - should cover all endpoints

* using self:: in front of the CONST

* Trying to find out which line evaluates to noting

* API mailings can now get the targets of a mailing

* Protected method name "Mailings::_cleanTargetDatas" must not be prefixed with an underscore

* give me fk_project

* API endpoints for: Get all targets of a mass mailing + Get information about a specific target id

* API endpoint to update a mailing target

* telling pre-commit check to ignore, just like done in the function I copied

* be more explicit about for GUI tests we need username and password

* Prevent updating fk_mailing value

* API endpoint deleteTarget

* post to create a mailing target does work, but need slight more testing after work

* correct indent

* fixing some build errors

* More comprehensive hurl test of creation of a target

* adding status_dest to mailing targets json

---------

Co-authored-by: Jon Bendtsen <xcodeauthor@jonb.dk>
2025-10-09 18:38:13 +02:00
ldestailleur
21e06d8fb5 Add redirect if setup not complete on other page 2025-10-09 15:10:25 +02:00
ldestailleur
7b4a17e000 NEW Add setup page to concat natively files on invoice PDF. 2025-10-08 12:20:51 +02:00
Charlène Benke
07518a6865 Refactor contact deletion logic in API proposals (#35668)
* Refactor contact deletion logic in API proposals

* Fix formatting issue in delete contact logic

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2025-10-07 20:50:45 +02:00
Frédéric FRANCE
f2e80fead5 fix backtopage (#35662)
* fix backtopage

* fix backtopage

* fix backtopage

* fix backtopage

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2025-10-07 19:37:17 +02:00
Frédéric FRANCE
2078610328 add dolBuildUrl with examples of use (#35549)
* add dol_buildurl with examples of use

* add dol_buildurl with examples of use

* add dol_buildurl with examples of use

* add dol_buildurl with examples of use

* wip

* wip

* add more example

* add more example

* add more example

* add more example

* add more example

* add more example

* add more example

* add example

* add example

* add example

* add example

* add example

* stay in the same area even we are on other area in other tab

* stay in the same area even we are on other area in other tab

* stay in the same area even we are on other area in other tab

* stay in the same area even we are on other area in other tab

* stay in the same area even we are on other area in other tab

* stay in the same area even we are on other area in other tab

* stay in the same area even we are on other area in other tab

* stay in the same area even we are on other area in other tab

* stay in the same area even we are on other area in other tab

* stay in the same area even we are on other area in other tab

* stay in the same area even we are on other area in other tab

* clean code

* clean code

* clean code

* clean code

* clean code

* clean code

* clean code

* add example

* add example

* add example

* add example

* add example

* add example

add example

add example

add example

add example

* add example

* add example

add example

add example

add example

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* clean code

* clean code

* clean code

* clean code

* clean code

* clean code

* clean code

* clean code

* clean code

* clean code

* fix

* wip

* wip

* clean code
2025-10-06 18:17:02 +02:00
ldestailleur
77d4a16778 Merge branch '22.0' of git@github.com:Dolibarr/dolibarr.git into develop 2025-10-06 18:01:13 +02:00
ldestailleur
8e3a7714b8 Merge branch '21.0' of git@github.com:Dolibarr/dolibarr.git into 22.0 2025-10-06 18:00:45 +02:00
ldestailleur
0a914f437a Merge branch '20.0' of git@github.com:Dolibarr/dolibarr.git into 21.0 2025-10-06 18:00:19 +02:00
Frédéric FRANCE
e486707236 ficx backtopage (#35659) 2025-10-06 17:59:11 +02:00
ldestailleur
3f91f3f1fc Debug v23 2025-10-06 02:50:07 +02:00
ldestailleur
2da06f9fb1 Merge branch '22.0' of git@github.com:Dolibarr/dolibarr.git into develop 2025-10-06 01:37:53 +02:00
Jon Bendtsen
76916ad1cf Add fk_project to Mass Emailings (#35635)
* Add fk_project to Mass Emailings

* Mass Mailing fk_project SQL definition dispre

* mailing typecasting fk_project

* mailing using correct variable name

* more type casting to fix phpstan errors related to fk_project in mass mailing

* mailing fk_project NULL better default in DB

---------

Co-authored-by: Jon Bendtsen <xcodeauthor@jonb.dk>
2025-10-04 20:08:27 +02:00
Charlène Benke
d1e0efc466 NEW Add getcontacts on api of interventional and proposal (#35589)
* Add getContacts method to retrieve contact information

* Implement getContacts method for proposals

Added a method to retrieve contacts associated with a proposal, including access checks and data cleaning.

* Implement getContacts method for invoices

Added a method to retrieve contacts associated with a specific invoice, including access checks and error handling.

* Update api_proposals.class.php

* Update api_invoices.class.php

* Update api_interventions.class.php

* Update api_interventions.class.php

* Add method to set invoice as draft

* Return contacts directly instead of cleaned data

* Return raw contacts instead of cleaned data

* Combine external and internal contacts in order list

Merge external and internal contacts for orders.

* Change return type from Object to array in API doc

Updated return type in API documentation for contact information.

* Change return type in api_orders.class.php docblock

Updated return type in docblock to reflect array return.

* Change return type from Object to array in API doc

* Update api_orders.class.php

* Update api_interventions.class.php

* Update api_proposals.class.php

* Update api_orders.class.php

* Update api_interventions.class.php

* Update api_interventions.class.php

* Update api_interventions.class.php

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2025-10-04 20:01:57 +02:00
Frédéric FRANCE
6afec608a3 fix CI (#35631)
* fix CI

* fix CI

* fix CI

* fix CI

* fix CI

* clean code

* clean code

* clean code

* clean code

* clean code

* clean code
2025-10-04 13:29:57 +02:00
Frédéric FRANCE
a90c222f73 clean code (#35626)
* clean code

* clean code

* clean code

* clean code

* clean code

* clean code

* clean code
2025-10-04 00:07:24 +02:00
kkhelifa-opendsi
404ad0e876 FIX: substitutions on subject of the sent email reminder of the event (#35621) 2025-10-03 19:01:10 +02:00
ldestailleur
88825c460b Spellcheck 2025-10-03 10:22:58 +02:00
Frédéric FRANCE
9ff1bc423d clean code (#35602)
* clean code

* clean code

* clean code

* clean code and baseline

* clean code and baseline

* clean code and baseline
2025-10-03 09:20:09 +02:00
Jon Bendtsen
8f52485172 NEW Api mass emailing (#35531)
* adding function to set it to draft mode

* New API endpoint for controlling mass mailings

* report which id we could not find + unset some fields not on this object + write that source was com/propal/class/api_propal.class.php

* extending the fetch function for the mailing object so the API can show all columns in the database

* filling more data into the object and don't unset it later

* adding notrigger to clone creation

* still some cleaning up from when cloning api_proposals.class.php

* do not unset the ID, because we want the ID so we can use it

* adding endpoint to clone a mass mailing

* extending count function with 'all' that just returns all rows, no matter the status

* API endpoints to delete all targets of a mass mailing

* setting which http method to use

* pretty print clone endpoint in API explorer

* endpoint resetTargetsStatus of mass mailing

* Typo receipients fixed

* Update api_mailings.class.php

* Update api_mailings.class.php

* Update api_mailings.class.php

---------

Co-authored-by: Jon Bendtsen <xcodeauthor@jonb.dk>
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2025-10-01 17:37:43 +02:00