2
0
forked from Wavyzz/dolibarr
Commit Graph

13514 Commits

Author SHA1 Message Date
MDW
88d59896ec Qual: 'enabled' in fields can be string ('isModEnabled(...)')
# Qual: 'enabled' in fields can be string ('isModEnabled(...)')

Update PHPdoc to allow that enabled is a string
2024-03-12 13:38:08 +01:00
Francis Appels
ba1ca6dc7d module delivery_note not exist (no own module descriptor) is global MAIN_SUBMODULE_DELIVERY 2024-03-12 11:46:12 +01:00
Francis Appels
7ff68a5819 Fix shipping is not a delivery_note (sub module of shipping) 2024-03-12 11:07:18 +01:00
Laurent Destailleur
7869c1a309 AI support both plain text and HTML generation 2024-03-12 10:01:39 +01:00
Frédéric FRANCE
de4c564c7e clean 2024-03-12 09:56:36 +01:00
Frédéric FRANCE
d7517b5f20 Merge remote-tracking branch 'upstream/develop' into clean_mod_code 2024-03-12 09:25:53 +01:00
Laurent Destailleur
56950673b8 Better support for MAIN_OPTIMIZEFORTEXTBROWSER 2024-03-12 02:41:47 +01:00
Laurent Destailleur
4f64c683ee Better support for MAIN_OPTIMIZEFORTEXTBROWSER 2024-03-12 01:55:26 +01:00
MDW
b79328f4e6 Qual: Fix PHPdoc to match parent 2024-03-11 23:46:46 +01:00
MDW
44376cd066 More specific type for childtablesoncascade 2024-03-11 22:16:27 +01:00
MDW
cb35dabd8f Qual: Document sendMail according to code 2024-03-11 21:39:04 +01:00
Frédéric France
aaf173a0d2 clean code and phpdoc 2024-03-11 21:01:20 +01:00
MDW
dcf25336ba Fix: Repeat fields typing in CommonClass children
# Fix: Repeat fields typing in CommonClass children

phpstan needs typing to be 'co-variant' and therefore typing must be repeated as
the method is not to initialise the property in the constructor, but to override
the proparty by a 'local' definition in the child class
2024-03-11 17:39:17 +01:00
MDW
1035e92861 Fix: Repeat fields typing in CommonClass children
# Fix: Repeat fields typing in CommonClass children

phpstan needs typing to be 'co-variant' and therefore typing must be repeated as
the method is not to initialise the property in the constructor, but to override
the proparty by a 'local' definition in the child class
2024-03-11 17:39:15 +01:00
MDW
3730dbc31b Fix: Repeat fields typing in CommonClass children
# Fix: Repeat fields typing in CommonClass children

phpstan needs typing to be 'co-variant' and therefore typing must be repeated as
the method is not to initialise the property in the constructor, but to override
the proparty by a 'local' definition in the child class
2024-03-11 17:39:13 +01:00
Laurent Destailleur
769b682fd3 Update commonobject.class.php 2024-03-11 16:13:11 +01:00
John BOTELLA
12ae786b0d Merge branch 'develop' into fix_element_type_part_05 2024-03-11 15:52:51 +01:00
Laurent Destailleur
1178b858d8 Merge branch 'develop' into fix/getChildrenOfLine/array_merge 2024-03-11 15:22:44 +01:00
Laurent Destailleur
be403024ed Try a fix for #28734 2024-03-11 14:40:36 +01:00
John BOTELLA
ed6874154d Merge branch 'develop' into fix_element_type_part_05 2024-03-11 14:33:48 +01:00
MDW
b72cf193c4 Fix some cases of PhanTypeSuspiciousStringExpression (#28751)
* Fix PhanTypeSuspiciousStringExpression

* Fix PhanTypeSuspiciousStringExpression

* Fix PhanTypeSuspiciousStringExpression

* Fix PhanTypeSuspiciousStringExpression

* Fix PhanTypeSuspiciousStringExpression

* Fix PhanTypeSuspiciousStringExpression

* Fix PhanTypeSuspiciousStringExpression

* Fix PhanTypeSuspiciousStringExpression

* Fix PhanTypeSuspiciousStringExpression

* Fix PhanTypeSuspiciousStringExpression

* Fix PhanTypeSuspiciousStringExpression

* Fix PhanTypeSuspiciousStringExpression

* Fix PhanTypeSuspiciousStringExpression

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-03-11 14:01:28 +01:00
Laurent Destailleur
0f2121e3ba Merge branch '19.0' of git@github.com:Dolibarr/dolibarr.git into develop 2024-03-11 13:46:08 +01:00
MDW
c333075776 Fix: getChildrenOfLine's use of includealltree as array
# Fix: getChildrenOfLine's use of includealltree as array

includealltree of getChildrenOfLine was used as an array, fixed
2024-03-11 13:41:02 +01:00
MDW
dbfb1180ee Qual: Fix PhanPluginDuplicateIfStatements & remove exceptions (#28749)
# Qual: Fix PhanPluginDuplicateIfStatements & remove exceptions

Fix occurences of PhanPluginDuplicateIfStatements which are if statements where the
consecutive branches execute the same code, making it useles to test the condition
2024-03-11 12:58:51 +01:00
MDW
8602ca9885 Fix: implode->join and duplicated if condition (#28761)
* Fix: join->implode

# Fix: join->implode

Update new cases of join

* Fix: Duplicate if condition in if/else sequence

# Fix: Duplicate if condition in if/else sequence

Fixed repeated if condition and action
2024-03-11 12:55:55 +01:00
Laurent Destailleur
f32bf4b3a7 Fix join -> implode 2024-03-11 12:38:21 +01:00
Laurent Destailleur
b3ee7c3853 Fix warning 2024-03-11 12:22:06 +01:00
Laurent Destailleur
898aebdbf8 Fix missing tooltip 2024-03-11 12:06:57 +01:00
Laurent Destailleur
0887664888 NEW: All fetchAll() method now support the USF syntax. 2024-03-11 11:23:34 +01:00
Laurent Destailleur
c853a4687f Can delete last and criteria into the generic component. 2024-03-10 19:41:31 +01:00
Laurent Destailleur
4140f59335 Fix default value 2024-03-10 17:58:32 +01:00
MDW
6d9e7b8144 Qual: Fix PhanTypeMismatchArgumentInternalProbablyReal (#28732)
* Fix: False positive for PhanTypeMismatchArgumentInternalProbablyReal

* Qual: phan: suppress false positive on ssl_set

* Qual: Enable PhanTypeMismatchArgumentInternalProbablyReal

# Qual: Enable PhanTypeMismatchArgumentInternalProbablyReal

PhanTypeMismatchArgumentInternalProbablyReal are fixed and reporting can
be enabled.

* Qual: Fix PhanTypeMismatchArgumentInternalProbablyReal by improving typing

* Qual: Rewrite/optimize to fix PhanTypeMismatchArgumentInternalProbablyReal

# Qual: Rewrite/optimize to fix PhanTypeMismatchArgumentInternalProbablyReal

False positive detecting that  is not an int, rewriting to check
impact
2024-03-10 01:55:56 +01:00
MDW
37afba949e Fix most PhanTypeMismatchDimAssignment notices (#28739)
* Qual: Add typing to fix PhanTypeMismatchDimAssignment notice

* Fix: Initialise array for code in somme

* Qual: Update type hint for  argument in _Set_Format

* Qual: Update type hint for childtables

* Qual: Add typing to attributes

* Qual: Add typing for _msgContent

* Qual: Suppress PhanTypeMismatchDimAssignment

* Qual: Add typing for liste

* Qual: Add typing to fields

* Qual: Add typing hint for $objMod

* Qual: Modify assignment of array with bool keys for phan typing

Demonstration:
```
php -r '$a=[true=>"yes",false=>"no"];var_dump($a);'
# Result demonstrates bool keys are converted to int.
Command line code:1:
array(2) {
  [1] =>
  string(3) "yes"
  [0] =>
  string(2) "no"
}
```

* Qual: Add typing hint to indicate value is not null

* Force non-null type on $paramname

* Qual: Add typing hint to getCats()

* Update inc.php

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-03-10 01:53:04 +01:00
MDW
8195fa49d9 Fix: Ensure string type for urlencode() 2024-03-09 16:55:44 +01:00
MDW
83d8f9cdd7 Fix: Ensure string type for urlencode() 2024-03-09 16:55:43 +01:00
MDW
0b19aa415c Fix: Initialise array before assigning values (#28728)
* Qual: Enable PhanUndeclaredVariableDim

# Qual: Enable PhanUndeclaredVariableDim

The notifications are fixed in the code so the detection no longer
needs to be suppressed in the default flow

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Fix: initialise array before adding fields

* Qual: Add type hint to array to avoid phan notification

* Qual: Add type hint to array to avoid phan notification

* Qual: Enable PhanParamSpecial1 (all resolved)

* Qual: Ignore false PhanTypeArraySuspiciousNullable

* Qual: Improve typing to fix PhanTypeArraySuspicious

* Qual: Fix PhanTypeArraySuspicious by replacing null assignment with empty array

* Qual: Fix PhanTypeArraySuspicious by testing as instancof DebugBar

* Qual: Fix PhanTypeComparisonToArray with enhanced typing

* Qual: Fix PhanTypeComparisonToArray with enhanced typing

* Qual: Enable phan messages that no longer appear

* Qual: Exclude phan stubs from codesniffer ruleset
2024-03-09 16:32:02 +01:00
Laurent Destailleur
abc57a767b Merge branch 'develop' into fix_element_type_part_05 2024-03-09 15:23:23 +01:00
Frédéric FRANCE
e00a9816f8 fix phpstan (#28727)
* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan

* fix phpstan
2024-03-09 14:48:06 +01:00
Laurent Destailleur
f1f9c2ee2e Merge branch 'develop' into fix_element_type_part_05 2024-03-09 01:48:08 +01:00
Laurent Destailleur
78786a0b53 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2024-03-09 01:15:59 +01:00
MDW
6d857757e9 Qual: Improve typing hint for (ext)Object, and allow null (#28719)
* Qual: Improve typing hint for (ext)Object, and allow null

# Qual: Improve typing hint for object, and allow null

As the key "->element" is expected, the object type should be derived from CommonObject.
Also extObject can be nullable

* Fix: Use null instead of 0 for extObject in call to Form::editfieldval()

* Fix: Use null instead of 0 for extObject in call to Form::editfieldval()

* Fix: Use null instead of 0 for extObject in call to Form::editfieldval()

* Fix: Use null instead of 0 for extObject in call to Form::editfieldval()

* Fix: Use null instead of 0 for extObject in call to Form::editfieldval()

* Fix: Use null instead of 0 for extObject in call to Form::editfieldval()

* Fix: Use null instead of 0 for extObject in call to Form::editfieldval()
2024-03-09 01:12:03 +01:00
Laurent Destailleur
1a7bfbc15a Clean code 2024-03-09 01:11:52 +01:00
Laurent Destailleur
9a839a1c08 Merge branch 'develop' into fix_element_type_part_05 2024-03-08 21:40:34 +01:00
MDW
3d0a85608b Qual: Fix and enable alias deprecation detection (#28716)
* Qual: Ignore some false positives for deprecated functions

# Qual: Ignore some false positives for deprecated functions

The Phan Deprecation Plugin for internal functions has mixed up some
mail functions and lists them as deprecated, this ignores that

* Qual: Enable detection and fixing of internal deprecations

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Replace 'join' with 'implode'

* Qual: Update codespell lines ignore list after format

# Qual: Update codespell lines ignore list after forma

Done using latest library, so also adds some exceptions that are needed
in the future;

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-03-08 21:34:18 +01:00
MDW
d846044e38 Fix: $form argument to price() must be int (#28699)
* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0

* Fix: $form argument to price() must be int

# Fix: $form argument to price() must be int

Changed '' for $form into 0
2024-03-08 21:30:04 +01:00
MDW
9cc3476765 Fix: PHPDoc annotations in unappropriate comment (#28713)
* Fix: PHPDoc annotations in unappropriate comment

# Fix: PHPDoc annotations in unappropriate comment

PHPDoc annotations need to be in /** */ or // comments.
Fixed that (change type, move comment, add suppress directive)

* Fix: PHPDoc annotations in unappropriate comment

# Fix: PHPDoc annotations in unappropriate comment

PHPDoc annotations need to be in /** */ or // comments.
Fixed that (change type, move comment, add suppress directive)

* Fix: PHPDoc annotations in unappropriate comment

# Fix: PHPDoc annotations in unappropriate comment

PHPDoc annotations need to be in /** */ or // comments.
Fixed that (change type, move comment, add suppress directive)

* Fix: PHPDoc annotations in unappropriate comment

# Fix: PHPDoc annotations in unappropriate comment

PHPDoc annotations need to be in /** */ or // comments.
Fixed that (change type, move comment, add suppress directive)

* Update dolreceiptprinter.class.php

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-03-08 21:27:09 +01:00
John BOTELLA
d1c980b0be Factoring fetchObjectLinked 2024-03-08 11:57:07 +01:00
Anthony Berton
ff03f86a50 NEW - See the documents of my subordinates (#28318)
* NEW - See the documents of my subordinates

* cop

* Rewriting

* up

* ok

* FIX - Restriction on sale representative

---------

Co-authored-by: Anthony Berton <anthony.berton@bb2a.fr>
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-03-07 22:47:29 +01:00
Frédéric FRANCE
3035a7bc7f fix phpstan (#28695)
* fix phpstan

* fix typo

* fix phpstan

* fix phpstan

* fix phpstan
2024-03-07 22:13:09 +01:00
Frédéric FRANCE
c2379bfdf5 fix phpstan (#28694)
* fix phpstan

* fix typo

* fix phpstan
2024-03-07 21:39:29 +01:00