Advanced Project Status

Generated on 2025-12-13 12:23:57 in 1430 seconds by apstats

Lines of code

LanguageBytesFilesLinesBlanksCommentsCode (SLOC)
All files without dependencies    
See detail per file type...
89 391 4783 9861 744 682189 051337 4291 218 202
All files of dependencies only    
See detail per file type...
64 996 1333 223776 86567 942159 565549 358
Total154 387 6117 2092 521 547256 993496 9941 767 560

Contributions

Pushes and Commits of Dolibarr/dolibarr Pull Request Size of Dolibarr/dolibarr

Contributors


Thumbs of most active contributors

Dolibarr


Star History of Dolibarr/dolibarr

Project value

COCOMO value
(Basic/Semi-detached model)
$136 046 090
COCOMO effort
(Basic/Semi-detached model)
11 936 months people

Last security issues (last 6 months)

Commit IDDateReported on
Yogosha
Reported on
GIT
Reported on
CVE
TitleBranch of fix
a1476fd2…2025-12-03SEC: permissions not checked on other tabs of HRM evaluation card17.0, 18.0, 19.0, 20.0, 21.0, 22.0, develop
908880c8…2025-11-26SEC: fix IDOR attack on employee evaluation. Missing permision test https://github.com/atm-florianm/dolibarr/commit/7ed0af2a138a34e7c7005b95c85ffc791976a6cf17.0, 18.0, 19.0, 20.0, 21.0, 22.0, develop
3608e9b1…2025-11-26SEC: 7ed0af2a138a34e7c7005b95c85ffc791976a6cf17.0, 18.0, 19.0, 20.0, 21.0, 22.0, develop
01aa901f… 2025-09-04#34762CVE-2024-4013718.0 fix CVE 2024 40137 (#34762), Sec: Remove all functions that accept callable params - CVE-2024-40137, FIX #34746 - More complete fix for CVE-2024-40137, Sec: Remove all functions that accept callable params18.0, 19.0, 20.0, 21.0, 22.0, develop
5a8aff9e…2025-09-02Sec: Update doc to trigger alert of vulnerability fix in commit bb0974add9cb746c2f1723a239bbaf50561251c621.0, 22.0, develop
b03f30c7…2025-07-27Sec: Remove functions accepting callable params - Reported by phdwg141021.0, 22.0, develop

Note:Search is done in git repository on regex string "#yogosha|CVE[\s\-]*\d|Sec:|Sec |^Sec\s" (not case sensitive)
You can use this URL for RSS notifications: index-security.rss

Technical debt (PHPStan - PHP Static Analysis Tool 1.10.27 - level 9 -> 1796 warnings)

FileLineType
htdocs/admin/dav.php127Offset 'css' on array{css: 'minwidth200', enabled: mixed} in empty() always exists and is not falsy.
htdocs/admin/dict.php2357Variable $rowidcol in empty() always exists and is not falsy.
htdocs/admin/dict.php2363Variable $param in empty() always exists and is not falsy.
htdocs/admin/emailcollector_list.php367Variable $contextpage in empty() always exists and is not falsy.
htdocs/admin/events.php98Variable $contextpage in empty() always exists and is not falsy.
htdocs/admin/hrm.php597Variable $arrayofparameters in empty() always exists and is not falsy.
htdocs/admin/knowledgemanagement.php357Offset 'includerefgeneration' on array{label: 'KnowledgeManagement', includerefgeneration: 1, includedocgeneration: 0, class: 'KnowledgeRecord'} in empty() always exists and is not falsy.
htdocs/admin/knowledgemanagement.php618Variable $setupnotempty in empty() always exists and is not falsy.
htdocs/admin/limits.php155Variable $aCurrencies in empty() always exists and is not falsy.
htdocs/admin/limits.php233Variable $aCurrencies in empty() always exists and is not falsy.
htdocs/admin/limits.php343Parameter #12 $localtaxes_array of function calcul_price_total expects array{string, int|string, string, int|string, string, string}|array{string, int|string, string, string}, array{} given.
htdocs/admin/limits.php352Parameter #12 $localtaxes_array of function calcul_price_total expects array{string, int|string, string, int|string, string, string}|array{string, int|string, string, string}, array{} given.
htdocs/admin/mails.php395Variable $text in empty() always exists and is not falsy.
htdocs/admin/mails.php540Variable $text in empty() always exists and is not falsy.
htdocs/admin/mails.php712Variable $text in empty() always exists and is not falsy.
htdocs/admin/mails.php769Variable $text in empty() always exists and is not falsy.
htdocs/admin/mails_emailing.php512Variable $text in empty() always exists and is not falsy.
htdocs/admin/mails_emailing.php634Variable $text in empty() always exists and is not falsy.
htdocs/admin/mails_passwordreset.php510Variable $text in empty() always exists and is not falsy.
htdocs/admin/mails_passwordreset.php653Variable $text in empty() always exists and is not falsy.

Technical debt (Phan 5.4.3 -> 656 warnings)

FileLineDetail
htdocs/categories/viewcat.php1341UndefError PhanUndeclaredProperty Reference to undeclared property \Ticket->label
htdocs/comm/action/index.php1126TypeError PhanTypeMismatchArgument Argument 1 ($string) is $event->datep of type int|non-zero-int but \DoliDB::jdate() takes string defined at htdocs/core/db/DoliDB.class.php:399
htdocs/comm/action/index.php1127TypeError PhanTypeMismatchArgument Argument 1 ($string) is $event->datef of type int|non-zero-int but \DoliDB::jdate() takes string defined at htdocs/core/db/DoliDB.class.php:399
htdocs/comm/action/index.php1458TypeError PhanTypeMismatchProperty Assigning ($userId as a field) of type array to property but \ActionComm->userassigned is array
htdocs/comm/action/pertype.php1054TypeError PhanTypeExpectedObjectPropAccess Expected an object instance when accessing an instance property, but saw an expression $username with type string
htdocs/comm/action/pertype.php1324TypeError PhanTypeExpectedObjectPropAccess Expected an object instance when accessing an instance property, but saw an expression $username with type string
htdocs/comm/action/pertype.php1326TypeError PhanTypeExpectedObjectPropAccess Expected an object instance when accessing an instance property, but saw an expression $username with type string
htdocs/comm/action/peruser.php1046TypeError PhanTypeMismatchArgument Argument 1 ($string) is $event->datep of type int|non-zero-int but \DoliDB::jdate() takes string defined at htdocs/core/db/DoliDB.class.php:399
htdocs/comm/action/peruser.php1047TypeError PhanTypeMismatchArgument Argument 1 ($string) is $event->datef of type int|non-zero-int but \DoliDB::jdate() takes string defined at htdocs/core/db/DoliDB.class.php:399
htdocs/comm/card.php958TypeError PhanTypeMismatchArgument Argument 1 ($file) is $file_list of type array{name:string,path:string,level1name:string,relativename:string,fullname:string,date:string,size:int,perm:int,type:string,position_name:string,cover:string,keywords:string,acl:string,rowid:int,label:string,share:string}[]|non-empty-array but \FormFile::showPreview() takes array{name:string,path?:string,level1name?:string,relativename?:string,fullname:string,date?:string,size?:int,perm?:int,type?:string} defined at htdocs/core/class/html.formfile.class.php:2422
htdocs/comm/card.php1079TypeError PhanTypeMismatchArgument Argument 1 ($file) is $file_list of type array{name:string,path:string,level1name:string,relativename:string,fullname:string,date:string,size:int,perm:int,type:string,position_name:string,cover:string,keywords:string,acl:string,rowid:int,label:string,share:string}[]|non-empty-array but \FormFile::showPreview() takes array{name:string,path?:string,level1name?:string,relativename?:string,fullname:string,date?:string,size?:int,perm?:int,type?:string} defined at htdocs/core/class/html.formfile.class.php:2422
htdocs/comm/card.php1180TypeError PhanTypeMismatchArgument Argument 1 ($file) is $file_list of type array{name:string,path:string,level1name:string,relativename:string,fullname:string,date:string,size:int,perm:int,type:string,position_name:string,cover:string,keywords:string,acl:string,rowid:int,label:string,share:string}[]|non-empty-array but \FormFile::showPreview() takes array{name:string,path?:string,level1name?:string,relativename?:string,fullname:string,date?:string,size?:int,perm?:int,type?:string} defined at htdocs/core/class/html.formfile.class.php:2422
htdocs/comm/card.php1294TypeError PhanTypeMismatchArgument Argument 1 ($file) is $file_list of type array{name:string,path:string,level1name:string,relativename:string,fullname:string,date:string,size:int,perm:int,type:string,position_name:string,cover:string,keywords:string,acl:string,rowid:int,label:string,share:string}[]|non-empty-array but \FormFile::showPreview() takes array{name:string,path?:string,level1name?:string,relativename?:string,fullname:string,date?:string,size?:int,perm?:int,type?:string} defined at htdocs/core/class/html.formfile.class.php:2422
htdocs/comm/card.php1395TypeError PhanTypeMismatchArgument Argument 1 ($file) is $file_list of type array{name:string,path:string,level1name:string,relativename:string,fullname:string,date:string,size:int,perm:int,type:string,position_name:string,cover:string,keywords:string,acl:string,rowid:int,label:string,share:string}[]|non-empty-array but \FormFile::showPreview() takes array{name:string,path?:string,level1name?:string,relativename?:string,fullname:string,date?:string,size?:int,perm?:int,type?:string} defined at htdocs/core/class/html.formfile.class.php:2422
htdocs/comm/card.php1626TypeError PhanTypeMismatchArgument Argument 1 ($file) is $file_list of type array{name:string,path:string,level1name:string,relativename:string,fullname:string,date:string,size:int,perm:int,type:string,position_name:string,cover:string,keywords:string,acl:string,rowid:int,label:string,share:string}[]|non-empty-array but \FormFile::showPreview() takes array{name:string,path?:string,level1name?:string,relativename?:string,fullname:string,date?:string,size?:int,perm?:int,type?:string} defined at htdocs/core/class/html.formfile.class.php:2422
htdocs/comm/mailing/index.php121UndefError PhanUndeclaredProperty Reference to undeclared property \MailingTargets->require_module
htdocs/comm/mailing/index.php122UndefError PhanUndeclaredProperty Reference to undeclared property \MailingTargets->require_admin
htdocs/comm/mailing/index.php141UndefError PhanUndeclaredProperty Reference to undeclared property \MailingTargets->picto
htdocs/comm/mailing/targetemailing.php582UndefError PhanUndeclaredProperty Reference to undeclared property \MailingTargets->require_module
htdocs/comm/mailing/targetemailing.php583UndefError PhanUndeclaredProperty Reference to undeclared property \MailingTargets->require_admin