Compare commits

..

4924 Commits

Author SHA1 Message Date
Laurent Destailleur
ad673b3207 Fix perm 2022-09-08 14:16:21 +02:00
Laurent Destailleur
fc91d8fc4e Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-09-08 14:02:56 +02:00
Laurent Destailleur
044d2baca1 Sync transifex 2022-09-08 14:02:21 +02:00
Laurent Destailleur
f1d19ae3de Merge pull request #21839 from bb2a/date16
FIX - Edit propal date
2022-09-07 16:27:53 +02:00
Laurent Destailleur
9835469a02 Update propal.class.php 2022-09-07 16:27:31 +02:00
Laurent Destailleur
02046b1f87 Merge pull request #22020 from atm-gauthier/FIX/check_if_allowed_to_add_bom_as_bomline
FIX : Recursively retrieves all parent bom in the tree that leads to …
2022-09-07 14:29:37 +02:00
Laurent Destailleur
8f2a66cc44 Merge pull request #22078 from grandoc/fix_for_fichinter
fix : extrafields of line where missing when cloning a fichinter
2022-09-07 14:03:38 +02:00
Laurent Destailleur
aa560db06d Fix regression 2022-09-07 13:58:24 +02:00
Laurent Destailleur
967e203319 Fix fetch missing fields 2022-09-07 13:55:02 +02:00
Laurent Destailleur
afd0df015e Merge pull request #22084 from defrance/patch-241
PHP V8 warning
2022-09-07 13:48:25 +02:00
Laurent Destailleur
32b6ade70a Merge pull request #22092 from aspangaro/16p9
FIX #22057 Missing class AccountingAccount on clientfourn
2022-09-07 13:12:26 +02:00
Laurent Destailleur
ffca6646ae Merge pull request #22086 from defrance/patch-242
php V8 warning
2022-09-07 12:49:47 +02:00
Laurent Destailleur
4082040212 Merge pull request #22118 from defrance/patch-243
php V8 Warning
2022-09-07 12:27:59 +02:00
This Charlène
0886f85579 Update card.php 2022-09-07 08:57:51 +02:00
This Charlène
bfb93609dd php V8 Warning 2022-09-07 08:56:02 +02:00
Laurent Destailleur
8666e193a2 Fix td balance 2022-09-06 22:56:09 +02:00
Alexandre SPANGARO
a13f232d2d FIX #22057 2022-09-06 05:42:04 +02:00
This Charlène
e1a1ce5551 php V8 warning 2022-09-05 17:31:30 +02:00
This Charlène
4262d666ca PHP V8 warning
and $objectidnext = $object->getIdReplacingInvoice(); not present
2022-09-05 16:15:13 +02:00
Laurent Destailleur
3e9df092f4 css 2022-09-05 09:15:45 +02:00
Philippe GRAND
b194af39e8 fix : extrafields of line where missing when cloning a fichinter 2022-09-04 14:48:05 +02:00
Philippe GRAND
7c04468246 fix bug#22057 2022-09-03 10:36:54 +02:00
Laurent Destailleur
e4dea1829e FIX activate/desactivate entry in dictionary 2022-09-02 17:36:07 +02:00
Laurent Destailleur
4b2eb7ed24 css 2022-09-02 12:34:34 +02:00
Gauthier PC portable 024
4c15dafa14 Merge branch 'FIX/check_if_allowed_to_add_bom_as_bomline' of github.com:atm-gauthier/dolibarr into FIX/check_if_allowed_to_add_bom_as_bomline 2022-09-02 11:57:44 +02:00
Gauthier PC portable 024
360bfed601 FIX : return void 2022-09-02 11:57:29 +02:00
Laurent Destailleur
fd9f95567e Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-09-02 11:06:44 +02:00
Laurent Destailleur
1888d561d6 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-09-02 11:06:34 +02:00
Laurent Destailleur
5e4511d2af Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-09-02 11:05:29 +02:00
Laurent Destailleur
cf379bdbec Merge pull request #22042 from FHenry/14_fix_22040
FIX: bad bookmark save
2022-09-02 10:59:14 +02:00
Laurent Destailleur
9d85eb1b7f Update bookmarks.lib.php 2022-09-02 10:57:47 +02:00
Laurent Destailleur
8a44b1ab2b Update bookmarks.lib.php 2022-09-02 10:55:15 +02:00
Florian HENRY
831420b8e1 FIX: bad bookmark save 2022-09-02 10:42:27 +02:00
stickler-ci
21517cf578 Fixing style errors. 2022-09-02 08:33:27 +00:00
Gauthier PC portable 024
c28407a1c9 FIX : default value for bom_id with $this->id and protection against infinite loop 2022-09-02 10:28:19 +02:00
Laurent Destailleur
67ce50b938 Merge pull request #22007 from ptibogxiv/patch-45
FIX double fix
2022-09-02 10:14:26 +02:00
Gauthier PC portable 024
f1e98f2d35 Merge branch 'FIX/check_if_allowed_to_add_bom_as_bomline' of github.com:atm-gauthier/dolibarr into FIX/check_if_allowed_to_add_bom_as_bomline 2022-09-02 08:44:29 +02:00
Gauthier PC portable 024
1269e1b86e FIX : cast 2022-09-02 08:44:16 +02:00
stickler-ci
d4122278bd Fixing style errors. 2022-09-01 15:23:40 +00:00
Gauthier PC portable 024
e1bf5a5e6b FIX : Recursively retrieves all parent bom in the tree that leads to the $bom_id bom to check if we're allowed to add bom as bomline 2022-09-01 17:16:59 +02:00
Laurent Destailleur
5ba0520195 FIX fatal error abs on non int 2022-09-01 15:41:08 +02:00
Laurent Destailleur
2c46410675 FIX list of email in public ticket interface 2022-09-01 11:47:46 +02:00
Laurent Destailleur
e3f9b15db3 FIX list of email in public ticket interface 2022-09-01 11:18:46 +02:00
Laurent Destailleur
8bf8beb898 Debug module ticket 2022-09-01 10:54:20 +02:00
Laurent Destailleur
9b7ec2dbc8 Fix missing img 2022-08-31 22:56:45 +02:00
Laurent Destailleur
dd8a9ac1f7 Fix perms 2022-08-31 22:15:43 +02:00
ptibogxiv
9d57680d82 FIX double fix 2022-08-31 20:14:54 +02:00
Laurent Destailleur
0bfa7a2a8f Fix delete dir 2022-08-31 18:09:46 +02:00
Laurent Destailleur
594bbcb1f1 Fix regression 2022-08-31 17:32:38 +02:00
Laurent Destailleur
4d46da9514 Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-31 17:23:03 +02:00
Laurent Destailleur
01caf548c8 Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-31 17:17:57 +02:00
Laurent Destailleur
dc08b96444 Fix phpcs 2022-08-31 17:17:43 +02:00
Laurent Destailleur
5d8c7d2f0b Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-08-31 15:53:19 +02:00
Christian Foellmann
5c135b59eb require missing signture.lib.php 2022-08-31 15:51:37 +02:00
Laurent Destailleur
a8a8056327 Merge pull request #21976 from cfoellmann/PR/16-fix-require-sign
require missing signture.lib.php
2022-08-31 15:50:18 +02:00
ptibogxiv
30475a8ce6 Fix updating member
need functions2.lib.php for clean_url()
2022-08-31 15:41:25 +02:00
lmarcouiller
db6d345e54 Fix #21810 : Broken statistics in project module 2022-08-31 15:31:00 +02:00
Laurent Destailleur
1fb72c53d0 Merge pull request #21990 from aspangaro/16p3
PHP8 Warnings
2022-08-31 14:56:07 +02:00
Laurent Destailleur
6a1b33b5ad Update index.php 2022-08-31 14:55:53 +02:00
Laurent Destailleur
b27e4aae63 Merge pull request #21991 from ptibogxiv/patch-44
Fix updating member
2022-08-31 14:53:47 +02:00
Laurent Destailleur
017a2258ce FIX bad sort order field on DMD in product lot page 2022-08-31 01:03:30 +02:00
stickler-ci
a7529c171d Fixing style errors. 2022-08-30 15:33:18 +00:00
ptibogxiv
0f4c59689d Fix updating member
need functions2.lib.php for clean_url()
2022-08-30 17:26:18 +02:00
Alexandre SPANGARO
7db656a9ba PHP8 Warnings 2022-08-30 17:01:31 +02:00
Alexandre SPANGARO
ebc9581dde CSS 2022-08-30 16:37:29 +02:00
Alexandre SPANGARO
149fa48573 PHP8 Warnings 2022-08-30 16:29:27 +02:00
Alexandre SPANGARO
b66ac59163 PHP8 Warnings 2022-08-30 16:29:22 +02:00
Christian Foellmann
dabb52d26f require missing signture.lib.php 2022-08-30 09:10:43 +02:00
Laurent Destailleur
147207b4e1 NEW On a form to send an email, we show all emails of contacts of object 2022-08-30 01:35:08 +02:00
Laurent Destailleur
d70c70a5fe FIX email not visible into combo list 2022-08-30 01:33:51 +02:00
Laurent Destailleur
eca5fc6504 Merge pull request #21909 from aspangaro/16p1
TakePos - Use isModEnabled
2022-08-30 01:24:13 +02:00
Laurent Destailleur
0ba4980738 Merge pull request #21935 from aspangaro/16p4
PHP8 Warnings
2022-08-30 01:22:43 +02:00
Laurent Destailleur
87df13507c Update categories.php 2022-08-30 01:21:49 +02:00
Laurent Destailleur
33278901a2 Merge pull request #21937 from aspangaro/16p5
Use IsModEnabled
2022-08-30 01:16:36 +02:00
Laurent Destailleur
25e4a3bd7c Merge pull request #21945 from frederic34/patch-4
fix display date creation
2022-08-30 01:01:35 +02:00
Frédéric FRANCE
185f8896c5 fix display date creation 2022-08-29 16:52:27 +02:00
Alexandre SPANGARO
6d5bb21fa9 Use isModEnabled 2022-08-29 12:05:10 +02:00
Alexandre SPANGARO
6ef4987766 Use isModEnabled 2022-08-29 12:05:03 +02:00
Alexandre SPANGARO
a1bb835074 Use isModEnabled 2022-08-29 12:04:54 +02:00
Alexandre SPANGARO
732d1e4e40 Use isModEnabled 2022-08-29 12:04:47 +02:00
Alexandre SPANGARO
355286e50a Use isModEnabled 2022-08-29 12:04:39 +02:00
Alexandre SPANGARO
0012c75ff3 Use isModEnabled 2022-08-29 12:04:03 +02:00
Alexandre SPANGARO
5dc2230c88 Use isModEnabled 2022-08-29 12:03:32 +02:00
Alexandre SPANGARO
34e036ab1c Use isModEnabled 2022-08-29 12:03:25 +02:00
Alexandre SPANGARO
8cf4663c58 Use isModEnabled 2022-08-29 12:03:19 +02:00
Alexandre SPANGARO
e6fb17c909 Use isModEnabled 2022-08-29 12:03:10 +02:00
Alexandre SPANGARO
2c9047661e Use isModEnabled 2022-08-29 12:03:05 +02:00
Alexandre SPANGARO
9dec4c9042 Use isModEnabled 2022-08-29 12:02:55 +02:00
Alexandre SPANGARO
0d3cae8ee8 Use isModEnabled 2022-08-29 12:02:49 +02:00
Alexandre SPANGARO
ae449dfe0f Use isModEnabled 2022-08-29 12:01:36 +02:00
Alexandre SPANGARO
bdd2d23bf1 Use isModEnabled 2022-08-29 11:58:55 +02:00
Alexandre SPANGARO
52ab81f779 Use isModEnabled 2022-08-29 11:58:34 +02:00
Alexandre SPANGARO
d903d2bfd8 Use isModEnabled 2022-08-29 11:58:27 +02:00
Alexandre SPANGARO
7ea4f11a99 Use isModEnabled 2022-08-29 11:57:59 +02:00
Alexandre SPANGARO
de21556fbc Use isModEnabled 2022-08-29 11:57:45 +02:00
Alexandre SPANGARO
3457020ee6 Use isModEnabled 2022-08-29 11:57:30 +02:00
Alexandre SPANGARO
8c3bd15765 Use isModEnabled 2022-08-29 11:56:35 +02:00
Alexandre SPANGARO
ed7f45bdd3 Use isModEnabled 2022-08-29 11:56:25 +02:00
Alexandre SPANGARO
94e4144c27 Use isModEnabled 2022-08-29 11:56:02 +02:00
Alexandre SPANGARO
ca3f592875 Use isModEnabled 2022-08-29 11:35:17 +02:00
Alexandre SPANGARO
f8f9b3fa4d Use isModEnabled 2022-08-29 11:35:12 +02:00
Alexandre SPANGARO
85571fee42 Use isModEnabled 2022-08-29 11:35:08 +02:00
Alexandre SPANGARO
b3f3eb1eeb Use isModEnabled 2022-08-29 11:35:04 +02:00
Alexandre SPANGARO
6ae73e72e5 Use isModEnabled 2022-08-29 11:35:00 +02:00
Alexandre SPANGARO
b1514af198 Use isModEnabled 2022-08-29 11:34:56 +02:00
Alexandre SPANGARO
5b810db990 Use isModEnabled 2022-08-29 11:34:49 +02:00
Alexandre SPANGARO
e2af7238f4 Use isModEnabled 2022-08-29 11:34:44 +02:00
Alexandre SPANGARO
ebff140389 Use isModEnabled 2022-08-29 11:34:29 +02:00
Alexandre SPANGARO
a2fe675ead Use isModEnabled 2022-08-29 11:34:24 +02:00
Alexandre SPANGARO
2b706c7a60 Use isModEnabled 2022-08-29 11:34:18 +02:00
Alexandre SPANGARO
0b362424e5 Use isModEnabled 2022-08-29 11:34:14 +02:00
Alexandre SPANGARO
8b76277779 Use isModEnabled 2022-08-29 11:34:07 +02:00
Alexandre SPANGARO
03f3ff9134 Use isModEnabled 2022-08-29 11:34:00 +02:00
Alexandre SPANGARO
ed0b8d5155 Use isModEnabled 2022-08-29 11:33:55 +02:00
Alexandre SPANGARO
6715d379d5 Use isModEnabled 2022-08-29 11:33:47 +02:00
Alexandre SPANGARO
08bbe33379 Use isModEnabled 2022-08-29 11:29:17 +02:00
Alexandre SPANGARO
ebba133880 Use isModEnabled 2022-08-29 11:27:48 +02:00
Alexandre SPANGARO
3ccb87e1fb Use isModEnabled 2022-08-29 11:27:44 +02:00
Alexandre SPANGARO
dd7dece5e8 Use isModEnabled 2022-08-29 11:27:40 +02:00
Alexandre SPANGARO
cb7728936a Use isModEnabled 2022-08-29 11:26:40 +02:00
Alexandre SPANGARO
07e91a061a Use isModEnabled 2022-08-29 11:26:32 +02:00
Alexandre SPANGARO
768f6416ab Use isModEnabled 2022-08-29 11:26:26 +02:00
Alexandre SPANGARO
9019604885 Use isModEnabled 2022-08-29 11:26:18 +02:00
Alexandre SPANGARO
22d754d43c Use isModEnabled 2022-08-29 11:25:50 +02:00
Alexandre SPANGARO
1ea5b984b2 Use isModEnabled 2022-08-29 11:25:44 +02:00
Alexandre SPANGARO
cb54db77e8 Use isModEnabled 2022-08-29 11:25:37 +02:00
Alexandre SPANGARO
e9dccee7c2 Use isModEnabled 2022-08-29 11:25:30 +02:00
Alexandre SPANGARO
a283ab61c2 Use isModEnabled 2022-08-29 11:25:24 +02:00
Alexandre SPANGARO
38882a6324 Use isModEnabled 2022-08-29 11:25:20 +02:00
Alexandre SPANGARO
ef3b8b3b31 Use isModEnabled 2022-08-29 11:25:14 +02:00
Alexandre SPANGARO
7aa371815a Use isModEnabled 2022-08-29 11:25:07 +02:00
Alexandre SPANGARO
502078cf37 Use isModEnabled 2022-08-29 11:25:00 +02:00
Alexandre SPANGARO
b978371800 Use isModEnabled 2022-08-29 11:24:54 +02:00
Alexandre SPANGARO
10e41b6c09 Use isModEnabled 2022-08-29 11:24:48 +02:00
Alexandre SPANGARO
acc1c519cc Use isModEnabled 2022-08-29 11:24:44 +02:00
Alexandre SPANGARO
78431e0d66 Use isModEnabled 2022-08-29 11:24:40 +02:00
Alexandre SPANGARO
4f2cd0419a Use isModEnabled 2022-08-29 11:24:36 +02:00
Alexandre SPANGARO
1a4c722a49 Use isModEnabled 2022-08-29 11:24:30 +02:00
Alexandre SPANGARO
bf3f406788 Use isModEnabled 2022-08-29 11:24:26 +02:00
Alexandre SPANGARO
fb63c066fc Use isModEnabled 2022-08-29 11:24:17 +02:00
Alexandre SPANGARO
93cfa2797d Use isModEnabled 2022-08-29 11:24:13 +02:00
Alexandre SPANGARO
bcc87dd479 Use isModEnabled 2022-08-29 11:24:07 +02:00
Alexandre SPANGARO
a269b1181a Use isModEnabled 2022-08-29 11:23:57 +02:00
Alexandre SPANGARO
4075397f7a Use isModEnabled 2022-08-29 11:23:50 +02:00
Alexandre SPANGARO
6fd2bbe46c Use isModEnabled 2022-08-29 11:23:40 +02:00
Alexandre SPANGARO
d633576ed9 Use isModEnabled 2022-08-29 11:22:38 +02:00
Alexandre SPANGARO
b2ee6fdc2e Use isModEnabled 2022-08-29 11:22:31 +02:00
Alexandre SPANGARO
dc059eccab Use isModEnabled 2022-08-29 11:22:21 +02:00
Alexandre SPANGARO
93c69aaaff Use isModEnabled 2022-08-29 11:22:14 +02:00
Alexandre SPANGARO
c2b2d66662 Use isModEnabled 2022-08-29 11:22:10 +02:00
Alexandre SPANGARO
20a4e52192 Use isModEnabled 2022-08-29 11:22:04 +02:00
Alexandre SPANGARO
dcebffbd01 Use isModEnabled 2022-08-29 11:21:49 +02:00
Alexandre SPANGARO
1d875ef025 Use isModEnabled 2022-08-29 11:21:34 +02:00
Alexandre SPANGARO
88a68c12db Use isModEnabled 2022-08-29 11:21:27 +02:00
Alexandre SPANGARO
f091821f71 Use isModEnabled 2022-08-29 11:21:19 +02:00
Alexandre SPANGARO
f174b36dcf Use isModEnabled 2022-08-29 11:20:47 +02:00
Alexandre SPANGARO
d27277ea05 Use isModEnabled 2022-08-29 11:07:54 +02:00
Alexandre SPANGARO
e2fdc64666 Typo 2022-08-29 10:56:06 +02:00
Alexandre SPANGARO
4184e416aa Use isModEnabled 2022-08-29 10:53:24 +02:00
Alexandre SPANGARO
47d96b6dca Use isModEnabled 2022-08-29 10:53:19 +02:00
Alexandre SPANGARO
114bb31ac9 Use isModEnabled 2022-08-29 10:53:15 +02:00
Alexandre SPANGARO
233326ff60 Use isModEnabled 2022-08-29 10:53:11 +02:00
Alexandre SPANGARO
b00ce99bc4 Use isModEnabled 2022-08-29 10:53:05 +02:00
Alexandre SPANGARO
eae6118d40 Use isModEnabled 2022-08-29 10:53:01 +02:00
Alexandre SPANGARO
ccea57423a Use isModEnabled 2022-08-29 10:52:57 +02:00
Alexandre SPANGARO
6fe80c3031 Use isModEnabled 2022-08-29 10:52:53 +02:00
Alexandre SPANGARO
be043fb088 Use isModEnabled 2022-08-29 10:52:45 +02:00
Alexandre SPANGARO
78c2d859f4 Use isModEnabled 2022-08-29 10:52:37 +02:00
Alexandre SPANGARO
bf735600bf Use isModEnabled 2022-08-29 10:47:38 +02:00
Alexandre SPANGARO
186bd8b731 Use IsModEnabled 2022-08-29 10:47:26 +02:00
Alexandre SPANGARO
1f3fd45570 Use IsModEnabled 2022-08-29 10:47:23 +02:00
Alexandre SPANGARO
7edd4e78eb Use IsModEnabled 2022-08-29 10:47:19 +02:00
Alexandre SPANGARO
2e518940b1 Use IsModEnabled 2022-08-29 10:47:15 +02:00
Alexandre SPANGARO
5a2fb2c3f4 Use IsModEnabled 2022-08-29 10:47:07 +02:00
Alexandre SPANGARO
6a0978580e Use IsModEnabled 2022-08-29 10:47:01 +02:00
Alexandre SPANGARO
32a6f3f756 PHP8 Warnings 2022-08-29 05:48:18 +02:00
Alexandre SPANGARO
3ec7a27960 PHP8 Warnings 2022-08-29 05:43:33 +02:00
Alexandre SPANGARO
4159aab038 PHP8 Warnings 2022-08-29 05:43:25 +02:00
Alexandre SPANGARO
f59795224f PHP8 Warnings 2022-08-29 05:26:57 +02:00
Alexandre SPANGARO
6f9305cb58 PHP8 Warning 2022-08-29 05:18:15 +02:00
Alexandre SPANGARO
21fcd0a9d1 Merge branch '16.0' into 16p1 2022-08-29 04:35:56 +02:00
Laurent Destailleur
a07662e5c6 Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-29 01:13:14 +02:00
Laurent Destailleur
673113ae33 Fix bad var 2022-08-29 01:12:55 +02:00
Laurent Destailleur
1b1ebdd636 Merge branch '16.0' into 16p1 2022-08-29 01:05:47 +02:00
Laurent Destailleur
1c2e21a3ed Update receipt.php 2022-08-29 01:03:23 +02:00
Laurent Destailleur
ce932dd73a Merge pull request #21914 from aspangaro/16p3
TakePos - PHP8 Warnings & review
2022-08-29 00:56:18 +02:00
ptibogxiv
5d5ea3efd8 FIx clean code signature proposal 2022-08-29 00:33:00 +02:00
Laurent Destailleur
ec5af6cd23 Doc 2022-08-28 23:32:36 +02:00
Alexandre SPANGARO
4470a78c6e PHP8 Warnings 2022-08-28 05:17:43 +02:00
Laurent Destailleur
09ad9e6e92 css 2022-08-27 22:14:56 +02:00
Laurent Destailleur
e43fcc4d92 Fix tackid for action USER_ 2022-08-27 15:47:49 +02:00
Laurent Destailleur
138e087737 Fix phpcs 2022-08-27 11:45:02 +02:00
Alexandre SPANGARO
375f400565 PHP8 Warnings 2022-08-27 08:28:39 +02:00
Alexandre SPANGARO
4543aeeff0 PHP8 Warnings 2022-08-27 08:19:49 +02:00
Alexandre SPANGARO
612bedb039 PHP8 Warnings 2022-08-27 08:19:39 +02:00
Alexandre SPANGARO
e36cc581ee PHP8 Warnings 2022-08-27 08:19:33 +02:00
Alexandre SPANGARO
b1662d535e Class css 2022-08-27 06:35:47 +02:00
Alexandre SPANGARO
ad788abdb8 Review Use Ajax constantonoff 2022-08-27 06:35:19 +02:00
Alexandre SPANGARO
f5e19ea1b9 PHP8 Warnings 2022-08-27 06:33:33 +02:00
Alexandre SPANGARO
cca9dd6c81 PHP8 Warnings 2022-08-27 05:49:28 +02:00
Alexandre SPANGARO
d88647f574 Page name in description 2022-08-27 05:39:27 +02:00
Laurent Destailleur
b78e9e7e54 Merge pull request #21894 from atm-lena/16.0_AddForceCombo_SelecttDolUserFunction
Add forcecombo parameter to select dol user function
2022-08-26 19:12:22 +02:00
Laurent Destailleur
efa3ef3703 Merge pull request #21895 from hregis/fix_multiple_php8_compatibility
FIX multiple php8 compatibility
2022-08-26 18:29:49 +02:00
Alexandre SPANGARO
ecf4fed1f0 PHP8 Warnings 2022-08-26 17:13:29 +02:00
Alexandre SPANGARO
c2d87ad75c TakePos - Use isModEnabled 2022-08-26 17:03:20 +02:00
Regis Houssin
68994752cd FIX multiple php8 compatibility 2022-08-26 11:08:39 +02:00
atm-lena
2b4391019b Add forcecombo parameter to select dol user function 2022-08-26 08:55:11 +02:00
Laurent Destailleur
215f89d545 Fix phpcs 2022-08-25 23:44:57 +02:00
Laurent Destailleur
db19a22b93 Merge pull request #21888 from prietojc/patch-18
Update card.php
2022-08-25 17:40:03 +02:00
Laurent Destailleur
5328ca0041 Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-25 14:32:09 +02:00
Laurent Destailleur
0d693d723a Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0
Conflicts:
	htdocs/comm/propal/class/api_proposals.class.php
2022-08-25 14:31:47 +02:00
Laurent Destailleur
ee651c5d8d Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-08-25 14:29:26 +02:00
Laurent Destailleur
a4c0177db0 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/user/bank.php
2022-08-25 14:29:09 +02:00
Laurent Destailleur
eee08f1640 Merge pull request #21846 from defrance/patch-238
php V8 warning, import max size not used
2022-08-25 13:50:10 +02:00
JC Prieto
804480ca2d Update card.php
Same behavior as  products with not lot. (See line 1338).
2022-08-25 12:51:18 +02:00
Laurent Destailleur
83fa687763 Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-25 12:45:12 +02:00
Laurent Destailleur
a9d8d19125 css 2022-08-25 12:33:17 +02:00
Laurent Destailleur
0c8eeed3f6 Merge pull request #21875 from FHenry/15_fix_defaultdate_CA_report
fix:  default filter date CA selling and buying report
2022-08-25 12:20:58 +02:00
Laurent Destailleur
601e2b00d6 Fix default value for recipient 2022-08-25 02:53:50 +02:00
Florian HENRY
c41782649c fix: use Dolibarr std method and set correct end Year on CA buying report 2022-08-24 22:20:19 +02:00
Florian HENRY
282dda8660 fix: use Dolibarr std method and set correct end Year on CA report 2022-08-24 22:17:32 +02:00
This Charlène
0319dff9d6 Update import.php 2022-08-24 18:55:47 +02:00
Laurent Destailleur
808a1e82b9 Merge pull request #21865 from fappels/16_best_buy_price_sharing
FIX: Sharing of best buy price
2022-08-24 18:06:55 +02:00
Laurent Destailleur
d9bb9552b5 Merge pull request #21862 from aspangaro/16p1
Folder Accountancy - Use isModEnabled
2022-08-24 18:02:47 +02:00
Laurent Destailleur
da2b84e1f2 Merge pull request #21864 from fappels/16_fix_warning_dispatch
Fix PHP7.4 warning dispatch.php
2022-08-24 18:01:01 +02:00
Laurent Destailleur
1f91338d61 Merge pull request #21871 from frederic34/patch-5
add trans
2022-08-24 17:52:07 +02:00
Frédéric FRANCE
1927131799 add trans 2022-08-24 16:38:05 +02:00
Francis Appels
7d6b46d856 HAR-19 Fix best buyprice sharing 2022-08-24 10:58:58 +02:00
Alexandre SPANGARO
20f73ac369 Use isModEnabled 2022-08-24 10:44:57 +02:00
Alexandre SPANGARO
149f7d8e6a Use isModEnabled 2022-08-24 10:44:52 +02:00
Francis Appels
ce8489724e Merge remote-tracking branch 'Dolibarr/16.0' into 16_fix_warning_dispatch 2022-08-24 10:42:53 +02:00
Alexandre SPANGARO
01631a251c Use isModEnabled 2022-08-24 10:34:31 +02:00
Alexandre SPANGARO
83da806172 Use isModEnabled 2022-08-24 10:34:25 +02:00
Alexandre SPANGARO
8f41a59fce Use isModEnabled 2022-08-24 10:34:19 +02:00
Alexandre SPANGARO
282c0d9f13 Use isModEnabled 2022-08-24 10:34:12 +02:00
Alexandre SPANGARO
3c67bfc539 Fix 2022-08-24 10:34:04 +02:00
Alexandre SPANGARO
151c46bcc8 Merge branch '16.0' into 16p1 2022-08-24 10:29:57 +02:00
Alexandre SPANGARO
4440404eed Use isModEnabled 2022-08-24 10:26:47 +02:00
Alexandre SPANGARO
1a3a614321 Use isModEnabled 2022-08-24 10:26:42 +02:00
Alexandre SPANGARO
2eacf9c26e Use isModEnabled 2022-08-24 10:26:33 +02:00
Alexandre SPANGARO
71acad3a81 Use isModEnabled 2022-08-24 10:26:27 +02:00
Alexandre SPANGARO
a75cf794e5 Use isModEnabled 2022-08-24 10:26:22 +02:00
Alexandre SPANGARO
6c0330a5fa Use isModEnabled 2022-08-24 10:26:16 +02:00
Alexandre SPANGARO
fcdc88437d Use isModEnabled 2022-08-24 10:26:09 +02:00
Alexandre SPANGARO
26a8ba5278 Use isModEnabled 2022-08-24 10:26:04 +02:00
Laurent Destailleur
e81800b7d9 Merge pull request #21785 from ymollard/fix_sum_expreport
Fix multiple consecutive payments of a single expense report
2022-08-23 16:01:47 +02:00
Laurent Destailleur
900e6aaf02 Code comment 2022-08-23 15:33:38 +02:00
Laurent Destailleur
05890602e0 Module FTP is deprecated. 2022-08-23 15:32:57 +02:00
Laurent Destailleur
06be8dc4bf Trans 2022-08-23 13:39:06 +02:00
stickler-ci
1e311a250f Fixing style errors. 2022-08-23 10:30:42 +00:00
This Charlène
7f1a37da3e php V8 warning, import max size not used 2022-08-23 12:26:21 +02:00
Laurent Destailleur
9f3ed07e87 Trans 2022-08-23 11:00:28 +02:00
Anthony Berton
5a4d5d7f97 set_echeance no in set_date 2022-08-23 08:56:00 +02:00
Anthony Berton
14e7ec8cf4 Merge branch '16.0' of https://github.com/Dolibarr/dolibarr into date16 2022-08-23 07:57:16 +02:00
Laurent Destailleur
f5004012ed Removed hard coded fetch 2022-08-23 01:03:53 +02:00
Laurent Destailleur
def8b1c7a6 Fix if SOCIETE_DISABLE_PARENTCOMPANY on, we must not show_subsidiaries 2022-08-23 01:03:43 +02:00
Laurent Destailleur
36b5195da9 Doc 2022-08-23 01:03:39 +02:00
Laurent Destailleur
f040900c3b Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-23 01:02:30 +02:00
Laurent Destailleur
3b3ea5eea3 Fix typo 2022-08-22 23:50:21 +02:00
Laurent Destailleur
e7deed38a5 Merge pull request #21836 from atm-kevin/FIX_Showoutputfield_PHP8
FIX : ShowOutputField PHP8 Warning
2022-08-22 22:20:55 +02:00
Laurent Destailleur
4165fa0a10 Merge pull request #21811 from aspangaro/16p1
PHP8 Warnings
2022-08-22 22:20:04 +02:00
Alexandre SPANGARO
f78ea1e73e Fix SQL 2022-08-22 21:32:15 +02:00
stickler-ci
2b4c83a680 Fixing style errors. 2022-08-22 16:42:08 +00:00
Yoan Mollard
3f1f02a8a8 Select sum of TTC payments for expense reports and 0 for HT because HT makes no sense
Only for mode RECETTES-DEPENSE
2022-08-22 18:21:24 +02:00
Anthony Berton
8328923e09 update date 2022-08-22 17:18:31 +02:00
kevin
6da57e512b FIX PHP8 warning in ShowOutputField function 2022-08-22 16:04:40 +02:00
Laurent Destailleur
e27133c24a Merge pull request #21638 from atm-kevin/FIX_year_interval_select_date
FIX : Datepicker year interval
2022-08-22 15:18:35 +02:00
Laurent Destailleur
4a91316c7f Merge pull request #21831 from defrance/patch-234
php V8 warning
2022-08-22 15:08:06 +02:00
Laurent Destailleur
fd8313702b Merge pull request #21755 from SylvainLegrand/PR_improve_phone_settings_for_france
Improve french phone settings (international numbering)
2022-08-22 14:16:56 +02:00
This Charlène
510b0c278c php V8 warning 2022-08-22 13:49:01 +02:00
Christian Humpel
49315de03a Fix #21768 The Contact is now showing in the card, if no company is selected. 2022-08-22 13:44:31 +02:00
Laurent Destailleur
a06abb1d22 Merge pull request #21802 from atm-greg/Fix_api_proposals_put_line
fix put line errase desc and label of line
2022-08-22 13:07:32 +02:00
Laurent Destailleur
1be8746a78 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-22 13:03:39 +02:00
Laurent Destailleur
4e678c5065 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-08-22 13:02:51 +02:00
Laurent Destailleur
7af97386fc Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-22 13:01:52 +02:00
Laurent Destailleur
35b33039bb Merge pull request #21818 from defrance/patch-231
fix statut / fk_statut error good one status
2022-08-22 13:01:24 +02:00
Laurent Destailleur
cc9765c7bd Clean code 2022-08-22 13:01:17 +02:00
Laurent Destailleur
23aaf739c0 Merge pull request #21820 from defrance/patch-232
php V8 warning
2022-08-22 12:20:13 +02:00
Laurent Destailleur
3004f73ed7 Merge pull request #21813 from defrance/patch-230
php V8 warning (allready send on develop)
2022-08-22 12:01:20 +02:00
Laurent Destailleur
62875c1ce7 Merge pull request #21814 from ptibogxiv/patch-38
Fix languages on contact card
2022-08-22 10:45:09 +02:00
Laurent Destailleur
850171f003 Merge pull request #21829 from defrance/patch-233
php V8 warning
2022-08-22 10:43:55 +02:00
Laurent Destailleur
a01603ac5b Update admin.lib.php 2022-08-22 10:43:35 +02:00
This Charlène
793de572e6 php V8 warning 2022-08-22 08:00:51 +02:00
Laurent Destailleur
558ae00f66 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0
Conflicts:
	htdocs/core/ajax/onlineSign.php
2022-08-21 23:48:44 +02:00
This Charlène
5fb4257c7c php V8 warning 2022-08-20 20:25:49 +02:00
This Charlène
1ac082b25a fix statut / fk_statut error good one status 2022-08-20 19:19:11 +02:00
ptibogxiv
f62e343830 Fix language on contact
same code as member or thirdparty for use

can be use for mail templates
2022-08-20 13:09:28 +02:00
This Charlène
e13f30164a php V8 warning (allready send on develop) 2022-08-20 11:06:30 +02:00
Alexandre SPANGARO
b77f29fa4d PHP8 Warnings, fix - Accountancy - Report of sales revenues billed by VAT rate 2022-08-20 04:13:09 +02:00
Alexandre SPANGARO
3f7df661ab PHP8 Warnings - Accountancy - Report sales revenues by product 2022-08-20 03:56:11 +02:00
Alexandre SPANGARO
ff0f44ab35 Merge branch '16p1' of https://github.com/aspangaro/dolibarr into 16p1 2022-08-20 03:26:09 +02:00
Alexandre SPANGARO
d523c64f93 PHP8 Warnings - Accountancy - Result sales revenues by user 2022-08-20 03:25:54 +02:00
stickler-ci
6bae6f5310 Fixing style errors. 2022-08-20 01:19:41 +00:00
Alexandre SPANGARO
4c8ba7db21 PHP8 Warnings / Wrong data / CSS - Accountancy - Result sales revenues by soc 2022-08-20 03:13:20 +02:00
stickler-ci
c4e88b739f Fixing style errors. 2022-08-19 13:46:44 +00:00
atm-greg
ccbae64324 fix put line errase desc and label of line 2022-08-19 15:36:57 +02:00
Alexandre SPANGARO
0e5a463f30 PHP8 Warnings Accountancy - Result report 2022-08-19 07:17:48 +02:00
Alexandre SPANGARO
d33573bf05 PHP8 Warnings Accountancy - Balance 2022-08-19 07:02:52 +02:00
Alexandre SPANGARO
44d006ea58 PHP8 Warning 2022-08-19 06:46:59 +02:00
Laurent Destailleur
94bd42d3b8 Merge pull request #21773 from ksar-ksar/patch-14
FIX #21772
2022-08-19 02:28:27 +02:00
Laurent Destailleur
2e36533a2a Merge pull request #21794 from hregis/fix_multicompany_security
FIX security for Multicompany
2022-08-18 22:24:51 +02:00
Regis Houssin
293ad34ca8 FIX security for Multicompany 2022-08-18 17:02:20 +02:00
Yoan Mollard
ed627613aa Fix multiple consecutive payments of a single expense report
total_ht and total_ttc are already the sum of the whole expense report,
no need to sum.
2022-08-18 01:51:49 +02:00
kevin
9ad4c114de Merge branch '15.0' of https://github.com/Dolibarr/dolibarr into FIX_year_interval_select_date 2022-08-17 17:21:45 +02:00
kevin
ad3bfc745f Default value of +-100 for datepicker 2022-08-17 17:21:21 +02:00
Laurent Destailleur
c0e187d39c Merge pull request #21184 from Quatadah/fix21094
FIX #21094
2022-08-17 10:51:06 +02:00
ksar
1d1228286c FIX #21772 2022-08-17 09:45:27 +02:00
Sylvain Legrand
e9181815e8 Update functions.lib.php 2022-08-17 08:02:55 +02:00
Laurent Destailleur
5de76e27b9 Merge pull request #21767 from frederic34/patch-4
remove duplicate
2022-08-16 20:19:47 +02:00
Frédéric FRANCE
545db83ecd remove duplicate 2022-08-16 20:17:44 +02:00
Sylvain Legrand
6a27df53f9 Improve settings for phone number (Madagascar) 2022-08-16 20:15:04 +02:00
Laurent Destailleur
c6ae2bb051 Typo 2022-08-16 18:31:20 +02:00
Laurent Destailleur
6cf47d0ed1 Fix trans 2022-08-15 02:35:17 +02:00
Laurent Destailleur
ebc8823202 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0
Conflicts:
	htdocs/core/ajax/onlineSign.php
2022-08-14 21:41:25 +02:00
Laurent Destailleur
3d73f210fb Debug feature for signature 2022-08-14 21:31:53 +02:00
Laurent Destailleur
57fea5151d Fix regression in online signature
Conflicts:
	htdocs/core/ajax/onlineSign.php
	htdocs/public/onlinesign/newonlinesign.php
2022-08-14 20:50:28 +02:00
Laurent Destailleur
0abfaf6bd7 Fix regression in online signature 2022-08-14 20:45:04 +02:00
Laurent Destailleur
61739cc338 FIX online signature, better error management. 2022-08-14 20:03:13 +02:00
Laurent Destailleur
5621a77187 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-14 19:15:24 +02:00
Laurent Destailleur
a0d56b6db7 FIX the online signature feature 2022-08-14 19:14:20 +02:00
Laurent Destailleur
b3656c21bc Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-14 19:12:28 +02:00
Sylvain Legrand
f26b0f917f Improve french phone settings (international numbering) 2022-08-14 16:31:34 +02:00
Laurent Destailleur
9732c3c06a Fix error code 2022-08-14 15:25:06 +02:00
Laurent Destailleur
35822d9431 css 2022-08-13 15:08:36 +02:00
Laurent Destailleur
2c95d8d5cd FIX #18425 2022-08-13 13:54:32 +02:00
Laurent Destailleur
168f07933e FIX #18425 2022-08-13 13:51:47 +02:00
Laurent Destailleur
5b74f1d3dc Fix duplicate string
Conflicts:
	htdocs/public/members/new.php
2022-08-13 12:35:07 +02:00
Laurent Destailleur
498ed449e9 Fix label of invoice status 2022-08-13 12:03:41 +02:00
Laurent Destailleur
ef387e1a02 Fix token 2022-08-12 23:19:36 +02:00
Laurent Destailleur
c2c4401bea css 2022-08-12 17:31:47 +02:00
Laurent Destailleur
326686794a Fix when log handler has been removed 2022-08-12 17:09:14 +02:00
Laurent Destailleur
5fa110ce74 Fix trans 2022-08-12 15:58:29 +02:00
Laurent Destailleur
85fb7c1d5a Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-12 15:56:15 +02:00
Laurent Destailleur
059d0073ff FIX Maxi debug v16 2022-08-12 15:54:50 +02:00
Laurent Destailleur
75fa3cf643 Debug v16 2022-08-12 15:45:27 +02:00
Laurent Destailleur
0d68c0ba14 Debug v16 2022-08-12 15:07:15 +02:00
Laurent Destailleur
3c65841e19 Debug v16 2022-08-12 14:41:44 +02:00
Laurent Destailleur
d01d04f704 FIX .jpeg extension was no more supported by dol_imageResizeOrCrop() 2022-08-12 14:31:58 +02:00
Laurent Destailleur
79a5a2b3ab Transifex sync 2022-08-12 14:02:18 +02:00
Laurent Destailleur
3f8b67e619 Doc 2022-08-12 12:56:03 +02:00
Laurent Destailleur
0b3f781618 Complete ignore file 2022-08-12 12:49:53 +02:00
Laurent Destailleur
6ed053e0d0 Clean v16 2022-08-12 12:48:49 +02:00
Laurent Destailleur
110f7a4736 Debug v16 2022-08-12 12:17:49 +02:00
Laurent Destailleur
01484757aa Debug v16 2022-08-12 11:31:40 +02:00
Laurent Destailleur
daf3b928c7 Debug v16 2022-08-11 22:31:01 +02:00
Laurent Destailleur
b36838f103 Prepare v16 2022-08-11 22:11:33 +02:00
Francis Appels
4167cca051 No need to set tmpproduct properties because fetched. 2022-08-11 18:26:18 +02:00
Francis Appels
251e0b1364 Fix dispatch - php warning on tmpproduct 2022-08-11 18:11:16 +02:00
Laurent Destailleur
deabc0c09d Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/core/lib/files.lib.php
2022-08-11 02:15:31 +02:00
Laurent Destailleur
c21597e839 Merge pull request #21492 from atm-GregM/FIX_dol_compress_dir_relativePath
FIX dol_compress_dir names files on archives
2022-08-11 02:13:17 +02:00
Laurent Destailleur
457b5cdfc4 Merge pull request #21665 from ymollard/layout-fix
Fix layout of Incomes-Expenses + Claims-Debts accounting tables
2022-08-11 01:38:18 +02:00
Laurent Destailleur
c089fe124c Update clientfourn.php 2022-08-11 01:37:53 +02:00
Laurent Destailleur
ead7bd91fe Update clientfourn.php 2022-08-11 01:36:31 +02:00
Laurent Destailleur
a0f5c69ccd Debug v16 2022-08-10 14:45:21 +02:00
Laurent Destailleur
ec042b1701 css 2022-08-10 14:32:26 +02:00
Laurent Destailleur
9e55377f0a Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-10 13:10:52 +02:00
Laurent Destailleur
f6ba33f81a Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-08-10 13:08:11 +02:00
Laurent Destailleur
643f4c8bdc Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-08-10 13:08:03 +02:00
Yoan Mollard
4c649a227a More developer-friendly print of titles 2022-08-10 12:54:14 +02:00
Laurent Destailleur
be6cc3c3ef Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-10 05:09:12 +02:00
Laurent Destailleur
abcdb8dd10 css 2022-08-10 05:06:58 +02:00
Laurent Destailleur
75e31ad0ab Merge pull request #21664 from ptibogxiv/patch-32
Fix read knowledgemanagement categories
2022-08-10 04:40:45 +02:00
Laurent Destailleur
68c7cd930d Merge pull request #21684 from GunterLukasConsulting/glu000-patch-21474
Update import_xlsx.modules.php
2022-08-10 04:20:45 +02:00
Laurent Destailleur
07204cd9c8 Merge pull request #21676 from hregis/fix_error_in_search_by_code
FIX errors when search by code
2022-08-10 04:20:10 +02:00
Laurent Destailleur
1a5ddb9c05 Merge pull request #21685 from frederic34/patch-5
do not loose description
2022-08-10 04:19:02 +02:00
Laurent Destailleur
f95b70eb9b Merge pull request #21686 from hregis/fix_php8_compatibility
FIX php8 compatibility
2022-08-10 04:18:14 +02:00
Laurent Destailleur
cb26377d1d Merge pull request #21688 from defrance/patch-222
php v8 warning
2022-08-10 04:17:43 +02:00
Laurent Destailleur
b1435297ba Merge pull request #21696 from bb2a/FIX---php-V8-multiprice-thirdpaty-card
FIX - php V8 multiprice thirdpaty card
2022-08-10 04:12:11 +02:00
Laurent Destailleur
427541beaa FIX #21668 2022-08-10 04:07:18 +02:00
Laurent Destailleur
2dd1ef22fa css 2022-08-10 03:34:16 +02:00
Anthony Berton
0764a9c123 FIX - php V8 multiprice thirdpaty card 2022-08-09 16:45:04 +02:00
This Charlène
60e12db1da php v8 warning 2022-08-08 15:12:40 +02:00
Regis Houssin
b20144c3d0 FIX php8 compatibility 2022-08-08 11:39:43 +02:00
Frédéric FRANCE
5ef9d2d40d keep url 2022-08-08 11:11:17 +02:00
Frédéric FRANCE
96c17b485c do not loose decription
when changing country, reload cause description lost
2022-08-08 11:07:38 +02:00
Günter Lukas
0f6effcdb0 Update import_xlsx.modules.php 2022-08-07 14:43:26 +02:00
Regis Houssin
bbe74c5d77 FIX errors when search by code 2022-08-06 13:44:56 +02:00
stickler-ci
3a83676202 Fixing style errors. 2022-08-05 02:22:32 +00:00
Yoan Mollard
9db6c779f0 Fix layout of Incomes-Expenses + Claims-Debts accounting tables 2022-08-05 04:16:23 +02:00
ptibogxiv
3719366e04 Fix read knowledgemanagement categories 2022-08-04 19:31:14 +02:00
Laurent Destailleur
0a623ab068 Fix yogosha#11976 2022-08-04 16:19:41 +02:00
Laurent Destailleur
39dccc4fdf FIX Scan IMAP must not be done automatically 2022-08-04 13:46:47 +02:00
Laurent Destailleur
9c87b56863 css 2022-08-04 13:45:51 +02:00
Laurent Destailleur
a064b25fdd css 2022-08-04 13:45:39 +02:00
Laurent Destailleur
bf0115f52b Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-03 19:17:18 +02:00
Laurent Destailleur
7544c26b95 Fix link to delete website 2022-08-03 19:10:38 +02:00
Laurent Destailleur
1c7d3f96a5 Merge pull request #21579 from atm-lena/15.0_KnowledgementDelete_CategorieManagement
Delete Knowledge : category management
2022-08-03 18:28:15 +02:00
Laurent Destailleur
93b040250e Update knowledgerecord.class.php 2022-08-03 18:25:32 +02:00
Laurent Destailleur
8d8264f05b Merge pull request #21621 from bb2a/FIX---php-V8-index
FIX - php V8 index
2022-08-03 17:55:10 +02:00
Laurent Destailleur
2ab8af433d Merge pull request #21649 from Dolibarr/revert-21633-fix_invoice_newVat_from_different_thirdparty
Revert "FIX : VAT rate recalculation"
2022-08-03 17:06:30 +02:00
Laurent Destailleur
c545756b6e Revert "FIX : VAT rate recalculation" 2022-08-03 17:06:19 +02:00
Laurent Destailleur
6b700905f1 Merge pull request #21633 from atm-jpb/fix_invoice_newVat_from_different_thirdparty
FIX : VAT rate recalculation
2022-08-03 17:05:46 +02:00
Laurent Destailleur
01b1cab84c Merge pull request #21643 from ptibogxiv/patch-30
Fix correct fix of paymentok.php
2022-08-03 17:00:46 +02:00
Laurent Destailleur
e0b196f3c2 Fix migration 2022-08-03 14:57:47 +02:00
Anthony Berton
3185821806 Update index.php 2022-08-03 09:06:52 +02:00
Laurent Destailleur
e17c00b4d8 Debug v16 2022-08-02 22:40:21 +02:00
Laurent Destailleur
37932c3fdc Debug v16. Fix non escaping for commobject field text 2022-08-02 21:14:05 +02:00
ptibogxiv
d872b9c2c7 Fix correct fix of paymentok.php
this line was deleted by error
2022-08-02 21:05:33 +02:00
Laurent Destailleur
ef8da5f34c Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-08-02 20:27:08 +02:00
ptibogxiv
7d29a5df79 Fix type with multicompany 2022-08-02 19:46:09 +02:00
lmarcouiller
da53e5ee5c fix hasRights warnings 2022-08-02 19:42:33 +02:00
Laurent Destailleur
78c5a83c7a Merge pull request #21625 from ptibogxiv/patch-27
FIX validation paymentok.php if advance rights
2022-08-02 19:16:58 +02:00
Laurent Destailleur
8a0a6f696c Merge pull request #21630 from bb2a/FIX---php-V8-selectsearshbox-v16
FIX - php V8 Selectsearchbox
2022-08-02 19:09:09 +02:00
Laurent Destailleur
a32b31bf4f Fix bad var $liste_limit 2022-08-02 18:57:20 +02:00
lmarcouiller
c94b7ddd36 Fix : php 8.1 warnings ticket 2022-08-02 18:55:40 +02:00
kevin
b2c8045b11 The standard datepicker does not display on year's date select more than 10 years ago and 10 years in the future 2022-08-02 11:51:16 +02:00
jpb
cec9725ced FIX : VAT rate recalculation
set a checkbox on clone formquestion
2022-08-01 16:28:44 +02:00
Anthony Berton
2227b0bf20 Merge branch '16.0' of https://github.com/Dolibarr/dolibarr into FIX---php-V8-selectsearshbox-v16 2022-08-01 09:31:10 +02:00
Laurent Destailleur
bf2d3160db Fix trans 2022-08-01 04:22:45 +02:00
Laurent Destailleur
4c4dd53385 Fix filter on company 2022-07-31 22:46:53 +02:00
ptibogxiv
af4d8ef53e FIX validation paymentok.php if advance rights 2022-07-30 15:32:18 +02:00
Laurent Destailleur
edb61faf25 Fix lang 2022-07-29 18:16:29 +02:00
Laurent Destailleur
fe2a0e0340 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0
Conflicts:
	htdocs/langs/el_GR/errors.lang
	htdocs/langs/hr_HR/errors.lang
	htdocs/langs/hu_HU/errors.lang
	htdocs/langs/nb_NO/errors.lang
	htdocs/langs/uk_UA/errors.lang
2022-07-29 18:12:38 +02:00
Laurent Destailleur
629689b13f Fix bad trans %n instead of %s 2022-07-29 18:06:49 +02:00
Laurent Destailleur
77389b3855 Fix trans 2022-07-29 17:35:39 +02:00
Laurent Destailleur
5d2d0384f8 Debug v16 2022-07-29 17:05:02 +02:00
Laurent Destailleur
c4323b99a9 css 2022-07-29 17:04:49 +02:00
atm-steve
4c306b958c wip: popin with new fileds 2022-07-29 16:24:46 +02:00
Laurent Destailleur
d44da58083 Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-07-29 16:03:36 +02:00
Laurent Destailleur
51d022914b Fix missing auto increment key. Fix error duplicate of type of contact. 2022-07-29 16:03:21 +02:00
Laurent Destailleur
ab2afd772b Merge pull request #21600 from ymollard/eventorg-fixes
FIX: EventOrganization Missing databases entries and labels
2022-07-29 15:40:21 +02:00
Laurent Destailleur
9cc9b84138 Update modEventOrganization.class.php 2022-07-29 15:39:37 +02:00
stickler-ci
75a8fdce11 Fixing style errors. 2022-07-29 13:33:16 +00:00
Laurent Destailleur
5e4ed0dea0 Update commonobject.class.php 2022-07-29 15:28:33 +02:00
Laurent Destailleur
c181b0bff4 Update commonobject.class.php 2022-07-29 15:27:20 +02:00
Laurent Destailleur
6d2219e00c Update commonobject.class.php 2022-07-29 15:26:34 +02:00
Laurent Destailleur
7de18b9f79 Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-07-29 15:22:25 +02:00
Laurent Destailleur
b27e8582f1 Log 2022-07-29 15:22:16 +02:00
Laurent Destailleur
a5f735a638 Merge pull request #21616 from ptibogxiv/patch-25
Fix picto on stripe charge.php
2022-07-29 15:13:28 +02:00
lmarcouiller
d1d5e0836f Fix : HasRight on user.class.php for $permlevel2 2022-07-29 15:12:25 +02:00
Laurent Destailleur
cc9cc7f832 Picto 2022-07-29 14:57:20 +02:00
Laurent Destailleur
f0c8523713 Debug v16 2022-07-29 14:57:11 +02:00
Laurent Destailleur
e25b599ee3 Fix position of fields 2022-07-29 12:53:19 +02:00
Laurent Destailleur
e13d5ea5aa Fix missing import key 2022-07-29 11:55:44 +02:00
Laurent Destailleur
f66dfb1c08 phpv8 2022-07-29 11:08:04 +02:00
Laurent Destailleur
0b568aebad Fix missing link to vcal for some tabs of user 2022-07-29 10:41:09 +02:00
ptibogxiv
4bc54fc845 Fix picto on stripe charge.php 2022-07-28 19:43:58 +02:00
Laurent Destailleur
482f80d14a Close #21612 2022-07-28 19:00:17 +02:00
Laurent Destailleur
eac926e01d Fix phpv8 2022-07-28 18:30:26 +02:00
Laurent Destailleur
3da20beeb5 Fix warning 2022-07-28 18:06:37 +02:00
Laurent Destailleur
f984af7d13 css 2022-07-28 15:35:57 +02:00
Laurent Destailleur
5c3139974c css 2022-07-28 14:55:47 +02:00
Laurent Destailleur
1a61209c0d Fix fatal error in Stripe setup page
Conflicts:
	htdocs/stripe/admin/stripe.php
2022-07-28 10:55:38 +02:00
Laurent Destailleur
f6d54ca101 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0
Conflicts:
	ChangeLog
	build/exe/doliwamp/doliwamp.iss
	htdocs/comm/action/index.php
	htdocs/comm/action/peruser.php
2022-07-28 02:36:57 +02:00
Laurent Destailleur
c000bd7f89 css 2022-07-28 02:31:47 +02:00
Yoan Mollard
e9528443b2 Insert speaker contact type into db 2022-07-27 22:12:36 +02:00
Yoan Mollard
e271175de6 Display all errors 2022-07-27 21:37:06 +02:00
Yoan Mollard
5600fd63df Retrieve category and insert default const at init of eventorganization module 2022-07-27 21:36:57 +02:00
Yoan Mollard
244f3913b0 Qualify cactionevents for eventorganization 2022-07-27 21:35:52 +02:00
Yoan Mollard
6519edabc5 Error messages for category 2022-07-27 21:34:36 +02:00
Laurent Destailleur
9393a51621 Clean code 2022-07-27 18:22:08 +02:00
Laurent Destailleur
d400ee9703 Fix missing link to public interface 2022-07-27 15:15:16 +02:00
Laurent Destailleur
13df3747d0 Fix look and feel v16 2022-07-27 13:59:01 +02:00
Quatadah Nasdami
2d60fe26f9 done as it should 2022-07-27 11:07:28 +02:00
Quatadah Nasdami
586d496d5a done as it should 2022-07-27 11:03:29 +02:00
Laurent Destailleur
f4b7b0d060 Trans 2022-07-27 02:41:55 +02:00
Laurent Destailleur
a9c8c24e9b Disable building of doliwamp package on non windows 2022-07-27 02:34:47 +02:00
Laurent Destailleur
e50a5fd81c Update doliwamp package script 2022-07-27 02:31:55 +02:00
Laurent Destailleur
8439ed24b1 Trans 2022-07-27 01:58:29 +02:00
Laurent Destailleur
577ccf69bf Clean packager 2022-07-27 01:37:49 +02:00
Laurent Destailleur
d212209b4b Fix packaging for windows 2022-07-27 01:24:04 +02:00
Laurent Destailleur
f1d41a0807 Ignore 2022-07-27 00:58:08 +02:00
Laurent Destailleur
a891239013 Remove need for cat and sed 2022-07-27 00:57:07 +02:00
Laurent Destailleur
55e46e2f09 Prepare 15.0.3 2022-07-27 00:41:41 +02:00
Laurent Destailleur
3640e1b3a3 Fix spec file 2022-07-27 00:24:30 +02:00
Laurent Destailleur
00328a5221 Fix bad spec file 2022-07-27 00:22:16 +02:00
Laurent Destailleur
48e84100fa Fix bad spec file 2022-07-27 00:19:38 +02:00
Laurent Destailleur
783d7bfe20 Fix makepack for windows 2022-07-27 00:12:20 +02:00
Laurent Destailleur
e2f60aebc1 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-07-27 00:09:08 +02:00
Laurent Destailleur
a77eba021b Fix makepack 2022-07-27 00:08:48 +02:00
Laurent Destailleur
bb26fde4db Fix rpm packages 2022-07-26 23:51:50 +02:00
Laurent Destailleur
b23304deb8 Debug v16 2022-07-26 16:14:38 +02:00
Yoan Mollard
d8fa7d84cc Allow "smallint" values to store 0 in MySQL db without conversion to NULL
It was an issue with ConferenceOrBoothAttendee instances
2022-07-26 14:40:17 +02:00
Laurent Destailleur
138e93402d Fix language font for PDF 2022-07-26 14:15:38 +02:00
atm-lena
54b90abd87 Delete Knowledge : categorie management 2022-07-26 13:50:53 +02:00
Laurent Destailleur
ea7ef29ca2 Fix tooltip 2022-07-26 12:56:42 +02:00
Laurent Destailleur
da2641bcb2 Clean code 2022-07-26 12:54:19 +02:00
Laurent Destailleur
7c37774dba Fix injection 2022-07-26 12:42:59 +02:00
Laurent Destailleur
ab4eb1a9af Debug v16 2022-07-26 12:16:33 +02:00
Laurent Destailleur
64fd91c319 Trans 2022-07-26 11:58:47 +02:00
Laurent Destailleur
3eedf18344 Debug v16 2022-07-26 11:53:00 +02:00
Laurent Destailleur
d65ea8c333 Debug v16 2022-07-26 11:05:00 +02:00
Laurent Destailleur
d0e74fbbeb Sync transifex 2022-07-26 10:54:03 +02:00
Laurent Destailleur
20be7b71c5 Doc 2022-07-26 10:12:40 +02:00
Laurent Destailleur
4d58058697 Fix separator 2022-07-26 10:01:08 +02:00
Yoan Mollard
195b9f5ebc Propagate all errors messages 2022-07-26 00:02:14 +02:00
Yoan Mollard
ae70dc11c6 Fixed labels 2022-07-25 22:28:07 +02:00
Laurent Destailleur
6d2363d0d6 Merge pull request #21572 from FHenry/15_fix_filter_status_on_peruser
fix: filter Status Not applicable into is not correctly manage on Agenda list
2022-07-25 19:41:55 +02:00
Laurent Destailleur
66c27139e1 Fix php8 2022-07-25 19:21:14 +02:00
Laurent Destailleur
bd0d932213 Protection when a category has a parent that is category with other type 2022-07-25 18:37:55 +02:00
Laurent Destailleur
aaee8ff0ca Debug v16 2022-07-25 18:03:07 +02:00
Florian HENRY
266b0213a5 fix: filter Status Not applicable into is not correctly manage on Agenda list 2022-07-25 13:18:03 +02:00
Laurent Destailleur
d307e5b022 Debug v16 2022-07-25 13:12:08 +02:00
Laurent Destailleur
41bb01339a Fix warning 2022-07-25 12:09:27 +02:00
Laurent Destailleur
7505e2a1ab Debug v16 2022-07-25 10:26:27 +02:00
Laurent Destailleur
8fb7d129c9 Trans 2022-07-25 00:36:38 +02:00
Laurent Destailleur
f024dcdb1a Doc 2022-07-24 22:13:36 +02:00
Laurent Destailleur
99c170882c Merge pull request #21512 from bugness-chl/15.0
FIX #20476 migration postgresql 13.0.x to 14.0.x packaging type
2022-07-24 20:19:41 +02:00
Laurent Destailleur
40d31d9b8b Update combinations.php 2022-07-24 20:18:10 +02:00
This Charlène
f9cce93fc9 fix php 8 warning (and error) 2022-07-24 20:17:54 +02:00
This Charlène
69626875fc PHP - cannot use a scalar as an array warning
generate an error :  cannot use a scalar as an array warning (even on php V7)
2022-07-24 20:16:59 +02:00
Laurent Destailleur
96b7735bbe Merge pull request #21567 from emheyarssi/15.0
FIX #21518
2022-07-24 20:08:11 +02:00
Laurent Destailleur
a02c0f55fb Debug v16 2022-07-24 19:58:11 +02:00
Laurent Destailleur
60117bbaee Debug v16 2022-07-24 19:45:37 +02:00
Laurent Destailleur
e465c0f34b Debug v16 2022-07-24 19:05:55 +02:00
Laurent Destailleur
fe7346a9c6 Hide var not usefull and dangerous 2022-07-24 18:31:55 +02:00
Laurent Destailleur
dd29018987 Fix bad table name 2022-07-24 18:27:15 +02:00
Laurent Destailleur
394bfed965 Debug v16 2022-07-24 17:39:01 +02:00
Laurent Destailleur
40ae516034 Debug v16 2022-07-24 17:37:02 +02:00
Laurent Destailleur
89999d0138 Fix update description of skills 2022-07-24 17:31:30 +02:00
Laurent Destailleur
432468950b CSS 2022-07-24 17:16:39 +02:00
Laurent Destailleur
68234c4097 Fix css z-index of dialog 2022-07-24 16:40:33 +02:00
Laurent Destailleur
89f7e5ad30 Fix export of website. allowed_in_frames must be an int 2022-07-24 16:08:27 +02:00
Laurent Destailleur
f032a89c49 Merge pull request #21566 from FHenry/15_fix_21553
fix: #21553, fourn prod Id is required to find packaging value
2022-07-24 15:50:17 +02:00
Laurent Destailleur
e9892fdc32 css 2022-07-24 15:47:55 +02:00
stickler-ci
bd88c9e0cd Fixing style errors. 2022-07-24 13:15:39 +00:00
marc
d8dfe360ec Fix #21518
delete old logo/photo from disk when load a new logo/photo
2022-07-24 15:03:32 +02:00
marc
9209c83054 Fix deleting logo/photo doesn't delete file from disk 2022-07-24 14:49:57 +02:00
Laurent Destailleur
4b562121ec Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-07-24 14:33:02 +02:00
Laurent Destailleur
af73f2b683 Fix php8 2022-07-24 14:32:35 +02:00
Laurent Destailleur
0bcc03cd5d css 2022-07-24 14:32:13 +02:00
Laurent Destailleur
505531c9d6 Merge pull request #21552 from spooky360/15.0
FIX : fourn/commande/card.php Added "$object" parameter to $formfile->showdocuments call
2022-07-24 11:39:00 +02:00
Florian HENRY
c342d0cde9 fix: display message only if change 2022-07-24 11:37:42 +02:00
Laurent Destailleur
9463f24a73 Better fix 2022-07-24 11:35:56 +02:00
Laurent Destailleur
fbf70beedb Merge pull request #21557 from emheyarssi/15.0.2
Fix #21449
2022-07-24 11:35:24 +02:00
Laurent Destailleur
252c581ea6 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-07-24 11:23:52 +02:00
Laurent Destailleur
f20aaee731 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/product/inventory/inventory.php
2022-07-24 11:22:00 +02:00
Laurent Destailleur
58923ec3d7 Merge 2022-07-24 11:21:02 +02:00
Laurent Destailleur
e9c42bf715 Add option ACCOUNTANCY_DISABLE_CLOSURE_LINE_BY_LINE
Conflicts:
	htdocs/accountancy/bookkeeping/list.php
2022-07-24 11:15:44 +02:00
Laurent Destailleur
f93a4ce0c0 Merge pull request #21560 from aspangaro/14p35
FIX Accountancy - Label of VAT account is empty
2022-07-24 11:13:44 +02:00
Laurent Destailleur
c7fd9f5a3a Trans 2022-07-24 10:57:46 +02:00
Laurent Destailleur
5358d88864 Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-07-24 00:07:41 +02:00
Laurent Destailleur
f0b21d2ba7 Merge pull request #21561 from bugness-chl/tmp-fix-20476-14.0
FIX #20476 migration postgresql 13.0.x to 14.0.x packaging type
2022-07-24 00:04:15 +02:00
Laurent Destailleur
32c43e6bde Merge pull request #21558 from fappels/16_fix_mo
Add missing require for MoLine
2022-07-24 00:03:59 +02:00
Laurent Destailleur
8e1d80e294 Merge pull request #21564 from FHenry/15_fix_21553
fix: #21553 fourn prod Id is required to find packaging value
2022-07-24 00:01:40 +02:00
Laurent Destailleur
274b0ff6b8 Remove useless test 2022-07-24 00:01:03 +02:00
Laurent Destailleur
da519f3ab5 Fix bad constructor 2022-07-23 23:55:57 +02:00
Florian HENRY
3af167db6c fix: #21553, fourn prod Id is required to find emballage value 2022-07-23 13:54:07 +02:00
Laurent Destailleur
7275ac1511 Trans 2022-07-22 20:14:25 +02:00
Laurent Destailleur
56a8912c9b Fix do not erase global option when configuring ticket 2022-07-22 19:47:59 +02:00
Laurent Destailleur
8c8db25dd9 Fix trans 2022-07-22 19:37:27 +02:00
Laurent Destailleur
16c087e04c Clean htmlentities 2022-07-22 19:25:15 +02:00
Chl
1dec64e320 FIX #20476 migration postgresql 13.0.x to 14.0.x packaging type
Taken from ff35bf8d47
2022-07-22 19:17:03 +02:00
Laurent Destailleur
3761c920eb Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0
Conflicts:
	htdocs/core/modules/modPartnership.class.php
	htdocs/modulebuilder/template/core/modules/modMyModule.class.php
2022-07-22 17:43:35 +02:00
Laurent Destailleur
6d8b5bcfac Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-07-22 17:39:08 +02:00
Laurent Destailleur
d9f7a3efd1 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/product/inventory/inventory.php
2022-07-22 17:38:24 +02:00
Laurent Destailleur
50af2747a2 Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-07-22 17:35:03 +02:00
Yoan Mollard
edb2e95aaf Fixed labels for permission errors 2022-07-22 17:33:04 +02:00
Anthony Berton
36c0936856 FIX - php8 migration 2022-07-22 17:32:28 +02:00
lmarcouiller
bac8efd4c8 Fix : PHP 8.1 warnings 2022-07-22 17:32:18 +02:00
Alexandre SPANGARO
e9ae888fc7 FIX Accountancy - Label of VAT account is empty 2022-07-22 16:01:39 +02:00
Francis Appels
43ea5f73e3 Add missing require for MoLine 2022-07-22 13:41:24 +02:00
spooky360
5d75ea015b Added "$object" parameter to $formfile->showdocuments call
Added "$object" parameter to $formfile->showdocuments call in order to use the $object reference on the showDocuments hook called inside showdocuments function.
Otherwise, the hook is called with a null reference.
2022-07-22 09:51:57 +02:00
marc
a7b593026b Fix #21449 2022-07-22 00:55:14 +02:00
Laurent Destailleur
a0698bbdf5 Merge pull request #21532 from ymollard/bugfix-perms
Fix labels for permission errors
2022-07-21 16:51:00 +02:00
Laurent Destailleur
983d809549 Merge pull request #21541 from comaiteseb/16.0
16.0
2022-07-21 16:43:55 +02:00
Laurent Destailleur
1279384732 Merge pull request #21549 from atm-lena/15.0_FIX_TaskListSearch_SeveralSameLines
Tasks List Search : several same lines
2022-07-21 16:18:08 +02:00
atm-lena
46075188b2 Tasks List Search : several same lines 2022-07-21 15:59:46 +02:00
Laurent Destailleur
14c8b4b826 FIX doleval with @ 2022-07-21 12:52:30 +02:00
Laurent Destailleur
cd141a08f9 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-07-21 11:54:01 +02:00
lmarcouiller
df6da726ca Fix ; scrutinizer bug 2022-07-21 11:10:43 +02:00
lmarcouiller
17cf336383 Fix : PHP 8.1 warnings 2022-07-21 11:10:22 +02:00
Laurent Destailleur
b4c8fbdec2 Fix remove "use Stripe\" 2022-07-21 11:09:42 +02:00
Laurent Destailleur
5e4eb58a43 FIX phpv8 2022-07-21 11:09:35 +02:00
Sébastien NASSIET
7177bc0926 correction warning php Undefined property: stdClass:: in /space/www/v16/htdocs/societe/index.php on line 181 lorsque le module fournisseur n'est pas actif en se rendant sur le module Tiers 2022-07-20 22:07:42 +02:00
Sébastien NASSIET
21353e54c2 correction warning php Undefined property: stdClass:: in /space/www/v16/htdocs/societe/index.php on line 181 lorsque le module fournisseur n'est pas actif en se rendant sur le module Tiers 2022-07-20 21:56:12 +02:00
Yoan Mollard
840437d312 Fixed labels for permission errors 2022-07-19 23:55:55 +02:00
Laurent Destailleur
346a716ad4 Merge pull request #21530 from noec764/14.0_Fix_MissingTabHelp
Fix: tabhelp must be present in every module. Related to  #21529
2022-07-19 19:01:21 +02:00
Laurent Destailleur
6b0de43f8f Merge pull request #21529 from noec764/13.0_Fix_MissingTabHelp
Fix: 'tabhelp' must be present in every module
2022-07-19 18:54:21 +02:00
Laurent Destailleur
cc9c30d8c1 Merge pull request #21527 from comaiteseb/15.0
FIX issue Dolibarr#21495 for v15
2022-07-19 18:53:04 +02:00
Noé Courtier
2aae7525da Fix: tabhelp must be present in every module 2022-07-19 17:27:15 +02:00
Noé Courtier
276168ef6f Fix: tabhelp must be present in every module 2022-07-19 17:14:57 +02:00
comaiteseb
877ed17d4c Merge branch 'Dolibarr:15.0' into 15.0 2022-07-19 15:35:21 +02:00
comaiteseb
888328b03b FIX issue Dolibarr#21495 for v15
FIX #21495

Error when calculate the date when AGENDA_EXPORT_FIX_TZ is set.
The resulting date is 1969-12-31
2022-07-19 15:31:29 +02:00
Laurent Destailleur
28b801414b Merge pull request #21499 from Easya-Solutions/14.0_fix-inventory-product-stock-real
FIX load product stock in inventory lines
2022-07-19 01:57:28 +02:00
Laurent Destailleur
c0482a398c Merge pull request #21516 from aspangaro/14p38
FIX Bank transfer - Link on supplier invoice was bad
2022-07-19 01:03:12 +02:00
Laurent Destailleur
ce6ae66dca Merge pull request #21515 from aspangaro/14p35
FIX Accountancy - Model account list - Problem of CSRF
2022-07-19 01:01:45 +02:00
Laurent Destailleur
cc15923cfb Merge pull request #21517 from hregis/fix_passing_null_of_type_string_is_deprecated
FIX avoid Passing null to parameter #1 of type string is deprecated
2022-07-19 00:57:34 +02:00
Laurent Destailleur
618184deed Merge pull request #21519 from aspangaro/16p1
Move old link on data
2022-07-19 00:53:29 +02:00
Laurent Destailleur
e3a4b5f12e Merge pull request #21521 from hregis/fix_security_breach
FIX security breach if we have same ref number in multiple entities
2022-07-19 00:53:05 +02:00
Regis Houssin
7db5f7eb1c FIX regression + add $forceentity parameter 2022-07-18 19:26:13 +02:00
Regis Houssin
ade854a469 FIX security breach if we have same ref number in multiple entities 2022-07-18 16:48:53 +02:00
Laurent Destailleur
8edebcf314 FIX Debug v16 2022-07-18 13:17:46 +02:00
Laurent Destailleur
36226c7b4b FIX Picto google plus 2022-07-18 13:17:37 +02:00
Alexandre SPANGARO
576c185e0c Move old link on data 2022-07-18 09:20:54 +02:00
Alexandre SPANGARO
ce15b8c44e FIX #21472 On the bank transfer lists, a change of page switches to the lists of the direct debit module 2022-07-18 07:23:25 +02:00
Regis Houssin
0c7a868306 FIX avoid Passing null to parameter #1 of type string is deprecated 2022-07-16 16:20:11 +02:00
Laurent Destailleur
2c707f0258 Doc 2022-07-16 12:02:30 +02:00
Laurent Destailleur
ad2ced727a Fix php8 2022-07-16 10:59:36 +02:00
Alexandre SPANGARO
149b86e459 FIX Bank transfer - Link on code supplier invoice was bad 2022-07-16 06:34:52 +02:00
Laurent Destailleur
14eb6c24b8 Fix php version max 2022-07-16 02:34:37 +02:00
Laurent Destailleur
515e5ea075 css 2022-07-16 02:28:35 +02:00
Laurent Destailleur
a423f8685a php8 2022-07-16 02:23:30 +02:00
Laurent Destailleur
f63281ffef php8 2022-07-16 02:10:21 +02:00
Laurent Destailleur
07216577e4 FIX #yogosha11806 2022-07-16 02:03:38 +02:00
Laurent Destailleur
c21c4f36f8 css 2022-07-16 01:09:23 +02:00
Alexandre SPANGARO
71af854bf4 FIX Bank transfer - Link on supplier invoice was bad 2022-07-15 17:31:30 +02:00
Alexandre SPANGARO
be491cc6cf FIX Accountancy - Model account list - Problem of CSRF 2022-07-15 16:22:22 +02:00
Laurent Destailleur
6d7a45ddf4 Fix reposition 2022-07-15 15:53:05 +02:00
Laurent Destailleur
a864771974 Debug 2022-07-15 15:51:55 +02:00
Laurent Destailleur
4140cc084a Debug 2022-07-15 15:51:46 +02:00
Laurent Destailleur
af90eb0d02 Debug 2022-07-15 15:51:31 +02:00
Chl
8c5f4d5ac6 FIX #20476 migration postgresql 13.0.x to 14.0.x packaging type
Taken from ff35bf8d47
2022-07-15 00:56:10 +02:00
Laurent Destailleur
a55ab27c67 Fix http header 2022-07-14 15:01:16 +02:00
Laurent Destailleur
a26931594c FIX #yogosha11799 2022-07-14 11:53:31 +02:00
Laurent Destailleur
d4acad4a7a FIX #yogosha11774 2022-07-14 11:51:38 +02:00
Laurent Destailleur
3e6e4cc428 FIX php8 2022-07-14 10:58:51 +02:00
Laurent Destailleur
71045cbe83 Fix popup message 2022-07-13 14:00:19 +02:00
Laurent Destailleur
05e9e922ab Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-07-13 13:39:27 +02:00
Laurent Destailleur
97acf949fc Clean message on email limit 2022-07-13 13:39:16 +02:00
Laurent Destailleur
7beff746bf Fix show no record if list empty 2022-07-13 01:02:40 +02:00
Laurent Destailleur
abd3f272fa Fix backtopage after a cancel 2022-07-12 19:17:44 +02:00
Laurent Destailleur
e6cf329596 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-07-12 19:09:16 +02:00
Laurent Destailleur
6c1b22eb48 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-07-12 19:08:15 +02:00
Laurent Destailleur
dfb5bb0936 Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-07-12 19:07:35 +02:00
Laurent Destailleur
d0a2017639 Merge pull request #21491 from atm-lena/13.0_FIX_DisplayLineExtrafieldsEmpty_PDF
No display extrafield line on PDF if empty
2022-07-12 19:05:58 +02:00
Laurent Destailleur
f405da2a18 Debug v16 2022-07-12 19:04:28 +02:00
comaiteseb
f2a294965a Update actioncomm.class.php
FIX issue #21495
2022-07-12 18:44:21 +02:00
Laurent Destailleur
a1857e3e78 Trans 2022-07-12 18:43:10 +02:00
Laurent Destailleur
c74ca9dc03 Fix trans 2022-07-12 18:28:37 +02:00
Laurent Destailleur
aa3f77e7cc Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-07-12 17:54:03 +02:00
Laurent Destailleur
c2712242be Fix css 2022-07-12 17:42:20 +02:00
Laurent Destailleur
9d249bd56d Fix phpunit 2022-07-12 11:37:17 +02:00
lvessiller
b57c40ef78 FIX load product stock in inventory lines 2022-07-12 11:32:12 +02:00
Laurent Destailleur
f396908c94 Update website templates 2022-07-12 11:24:46 +02:00
Laurent Destailleur
cf5825687e Debug v16 2022-07-12 10:56:03 +02:00
Laurent Destailleur
7ac00bfec9 Bad param 2022-07-12 10:09:01 +02:00
Laurent Destailleur
bce665e11b css 2022-07-12 02:04:29 +02:00
Laurent Destailleur
f0090ef928 FIX #yogosha11755 2022-07-11 20:32:49 +02:00
Laurent Destailleur
1cbeaf6ac0 Fix php8 2022-07-11 20:05:49 +02:00
Laurent Destailleur
fe99e6c136 Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-07-11 19:59:48 +02:00
Laurent Destailleur
85a0ae1236 Fix token for ping 2022-07-11 19:59:15 +02:00
Laurent Destailleur
4f9211d3e5 Fix link 2022-07-11 19:24:55 +02:00
Laurent Destailleur
86ce98b7b4 Merge pull request #21493 from fappels/16_fix_php8
Fix some php 8 warnings.
2022-07-11 17:41:56 +02:00
Francis Appels
490944baac Fix php 8 warning 2022-07-11 17:29:26 +02:00
GregM
8e57d04f94 FIX dol_compress_dir names files on archives 2022-07-11 16:18:56 +02:00
Quatadah Nasdami
66ed4aa524 refixing the bug 2022-07-11 14:04:31 +02:00
stickler-ci
3434460cc3 Fixing style errors. 2022-07-11 09:55:39 +00:00
atm-lena
851416a61e No display extrafield line on PDF if empty 2022-07-11 11:48:37 +02:00
Laurent Destailleur
9b06e54444 Merge pull request #21488 from defrance/patch-214
php v8 fix warning
2022-07-11 10:54:58 +02:00
Laurent Destailleur
204bf2e618 Update card.php 2022-07-11 10:54:23 +02:00
Laurent Destailleur
4e4c482915 Merge pull request #20468 from OPEN-DSI/14.0_fix_invoice_situation_with_credit_note
FIX - Case of invoice situation at 100% with a credit note
2022-07-11 10:50:42 +02:00
This Charlène
796f718012 Update card.php 2022-07-11 07:14:46 +02:00
This Charlène
8be15e8e27 php v8 fix warning
missing and bad name variables
2022-07-11 07:11:45 +02:00
Laurent Destailleur
24dc936000 Revert "default to create on card.php if $action is empty"
This reverts commit e0b664066b.
2022-07-11 00:05:50 +02:00
Christian Foellmann
e0b664066b default to create on card.php if $action is empty 2022-07-11 00:01:42 +02:00
Laurent Destailleur
6386432263 Fix missing migration 2022-07-11 00:01:33 +02:00
Laurent Destailleur
9a92c7d9b0 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0
Conflicts:
	htdocs/core/actions_massactions.inc.php
	htdocs/core/class/extrafields.class.php
2022-07-10 19:28:16 +02:00
Laurent Destailleur
88543c85ba Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-07-10 19:22:15 +02:00
Laurent Destailleur
3d226801ba Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-07-10 19:22:02 +02:00
Laurent Destailleur
840d9b182b Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-07-10 19:19:08 +02:00
Laurent Destailleur
52661e09c7 Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0
Conflicts:
	htdocs/core/actions_massactions.inc.php
	htdocs/core/modules/modResource.class.php
2022-07-10 19:18:59 +02:00
Laurent Destailleur
5de434eb37 css 2022-07-10 19:14:33 +02:00
Laurent Destailleur
c71616f45d css 2022-07-10 19:13:09 +02:00
Laurent Destailleur
d7c1ca1083 Merge pull request #21461 from atm-gauthier/FIX/fetchByProductCombination2ValuePairs
FIX : We must remove empty values from $features array in fetchByProduc…
2022-07-10 18:57:31 +02:00
Laurent Destailleur
e78cc17848 Merge pull request #21477 from atm-gauthier/14.0_fix_extrafields_chkbxlst_cannot_be_emptied
FIX : backport commit 5b3fcc5e43, chkbx…
2022-07-10 18:46:04 +02:00
Laurent Destailleur
fcbe09b790 Merge pull request #21480 from atm-jpb/13.0_fix_massaction_create_invoice_on_multiorders
FIX : rank duplicate on mass action invoice from multiple orders
2022-07-10 18:43:36 +02:00
Laurent Destailleur
c16cd502d0 Update actions_massactions.inc.php 2022-07-10 18:43:25 +02:00
Laurent Destailleur
cccb453a05 Fix doc 2022-07-10 18:40:53 +02:00
Laurent Destailleur
b77c23979a Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-07-10 18:40:31 +02:00
Laurent Destailleur
1a6c690a4a Merge pull request #21482 from thomas-Ngr/14.0_fix_check_batch_on_reception
check batch on receptions->addline when module is enabled
2022-07-10 18:40:22 +02:00
Laurent Destailleur
3fbaea6a93 Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-07-10 18:25:22 +02:00
Laurent Destailleur
2a9aac930e Merge pull request #21485 from FHenry/15_fix_bad_amount_count
15 fix bad amount count
2022-07-10 18:15:53 +02:00
Laurent Destailleur
99324bef0c Merge pull request #21487 from fappels/16_fix_commonobject
FIX regression by php8 fix on setVarsFromFetchObj
2022-07-10 18:14:49 +02:00
Laurent Destailleur
09932000dd FIX online signature works partially on ODT templates. 2022-07-10 18:06:41 +02:00
Laurent Destailleur
3846520862 Trans 2022-07-10 14:55:36 +02:00
Francis Appels
6362cdfe2e FIX regression by php8 fix on setVarsFromFetchObj 2022-07-10 13:00:34 +02:00
Laurent Destailleur
c77632ced8 Fix export invoice and lines. Pb in field order. Missing thirdparty type 2022-07-10 01:40:39 +02:00
Laurent Destailleur
547a7cdea2 Fix trans 2022-07-10 01:18:06 +02:00
Laurent Destailleur
697b7d812c FIX css in search of extrafields 2022-07-09 12:57:52 +02:00
Florian HENRY
56c4817d6d fix: Bad amount calc on Invoice index 2022-07-08 17:30:15 +02:00
Thomas Negre
c0d3aaf445 stickler fix 2022-07-08 15:53:41 +02:00
Thomas Negre
f042a62a1c remove overkill setEventMessage() 2022-07-08 15:47:13 +02:00
Thomas Negre
56ea6989cf check batch on receptions->addline when module is enabled 2022-07-08 15:36:11 +02:00
Laurent Destailleur
2f1ab1a003 Fix detection of version 2022-07-08 14:32:47 +02:00
Laurent Destailleur
245580bfa5 FIX Several pb in invoice remind (html detection, no event, transaction) 2022-07-08 14:11:13 +02:00
jpb
226488b7ed rank change. if we only have one order we leave the origin rank otherwhise we pass -1 2022-07-08 12:32:17 +02:00
Laurent Destailleur
686f460f59 NEW Added MMK currency (Myanmar Kyat) 2022-07-08 11:58:08 +02:00
Laurent Destailleur
61f1595f8c Fix look and feel v15 2022-07-08 11:21:54 +02:00
Laurent Destailleur
9db3c1bbd6 Fix currency missing 2022-07-08 10:56:36 +02:00
Gauthier PC portable 024
d375c9fbbe FIX : backport commit 5b3fcc5e43, chkbxlst cannot be emptied 2022-07-08 10:35:43 +02:00
Laurent Destailleur
3ab82a93ec Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0
Conflicts:
	htdocs/core/actions_massactions.inc.php
2022-07-08 10:20:55 +02:00
stickler-ci
04fd17347e Fixing style errors. 2022-07-08 07:36:09 +00:00
Gauthier PC portable 024
787f52fd7f FIX : with callback function 2022-07-08 09:32:20 +02:00
Laurent Destailleur
8360ea9711 Fix hide link to doc if doc never generated 2022-07-08 00:20:33 +02:00
Laurent Destailleur
7741826d34 phpcs 2022-07-07 23:09:39 +02:00
Laurent Destailleur
ca42be7478 Fix error management 2022-07-07 22:46:06 +02:00
Laurent Destailleur
a97b3e47d1 Fix look and feel v16 2022-07-07 22:05:17 +02:00
Laurent Destailleur
6e4d4b5b0d css 2022-07-07 21:42:32 +02:00
Laurent Destailleur
63ce535deb Merge pull request #21448 from atm-jpb/patch-1
# FIX : rank duplicate on mass action
2022-07-07 20:57:51 +02:00
Laurent Destailleur
5afe1dbb84 Update actions_massactions.inc.php 2022-07-07 20:57:29 +02:00
Laurent Destailleur
1820276ac7 Merge pull request #21462 from atm-jpb/fix_export_resource_type
fix export resource type filter
2022-07-07 20:56:34 +02:00
Laurent Destailleur
2f269c75de Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 16.0
Conflicts:
	htdocs/compta/facture/list.php
	htdocs/langs/fr_FR/bills.lang
2022-07-07 20:12:23 +02:00
Laurent Destailleur
77b1bccea9 Restore old version to fix serious regressions and sql errors 2022-07-07 20:05:22 +02:00
Laurent Destailleur
e60c6ae96d Revert "FIX count elements in invoice list (Issue #21444)"
This reverts commit db863e4db6.
2022-07-07 20:00:03 +02:00
Laurent Destailleur
e10820a350 Revert "FIX sql order"
This reverts commit 3eb3c700b9.
2022-07-07 19:59:37 +02:00
Laurent Destailleur
f9d13290d5 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/compta/facture/list.php
2022-07-07 19:15:58 +02:00
Laurent Destailleur
b2e4b6ab5d FIX Send remind to pay invoice only on validated invoices 2022-07-07 19:10:46 +02:00
Laurent Destailleur
ba82c86bd5 Fix clear of search criteria on clear all button 2022-07-07 17:15:50 +02:00
Laurent Destailleur
9036ab94ab Fix contextpage 2022-07-07 17:14:21 +02:00
Laurent Destailleur
c285c31baa css 2022-07-07 11:41:15 +02:00
Laurent Destailleur
2e66d3fe8d Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0 2022-07-07 11:36:33 +02:00
Laurent Destailleur
9af4676369 Fix migration 2022-07-07 11:35:40 +02:00
jpb
ea52403339 rank change. if we only have one order we leave the origin rank otherwise we leave the -1 and let the class set the max rank. 2022-07-07 11:08:01 +02:00
jpb
f10788e4c6 fix export resource type filter 2022-07-07 10:24:39 +02:00
Gauthier PC portable 024
77552fa32a FIX : We must remove empty values of $features array in fetchByProductCombination2ValuePairs() because some products can use only several attributes in their variations and not necessarily all. In this case, fetch doesn't work without my correction 2022-07-07 10:17:56 +02:00
Laurent Destailleur
b2cbdde1ce Merge pull request #21458 from Dolibarr/revert-21394-PR/improve-page-titles
Revert "fix page titles"
2022-07-06 19:10:10 +02:00
Laurent Destailleur
4c5d43b42e Merge pull request #21459 from Easya-Solutions/14.0_fix-invoice-list-count-element
FIX count elements in invoice list (Issue #21444)
2022-07-06 19:09:58 +02:00
lvessiller
3eb3c700b9 FIX sql order 2022-07-06 18:28:40 +02:00
lvessiller
db863e4db6 FIX count elements in invoice list (Issue #21444) 2022-07-06 17:58:01 +02:00
Laurent Destailleur
76e3c10c06 Revert "fix page titles" 2022-07-06 15:56:04 +02:00
Laurent Destailleur
a0caf7be71 Merge pull request #21394 from cfoellmann/PR/improve-page-titles
fix page titles
2022-07-06 15:55:10 +02:00
Laurent Destailleur
cd0e85d54d Merge pull request #21398 from FHenry/14_fix_lost_filter_on_replannish
fix: replannish view lost filter and sort on pagination and sorting
2022-07-06 15:51:45 +02:00
Laurent Destailleur
86c11cb357 Fix phpunit 2022-07-06 15:48:17 +02:00
Laurent Destailleur
17f099b075 Merge pull request #21406 from Quatadah/dolicloud-qnasdami-add-api-reception-module
NEW API for module reception
2022-07-06 13:45:57 +02:00
Laurent Destailleur
09adf703f4 Merge pull request #21452 from atm-quentin/14_add_shipment_thead_and_id
FIX : add missing thead, th and id on table
2022-07-06 10:01:13 +02:00
Laurent Destailleur
661e189d12 Merge pull request #21454 from simnandez/15.0
Fix: PHP Fatal error:  Call to undefined function getOnlineSignatureUrl
2022-07-06 10:00:39 +02:00
Laurent Destailleur
f6b0710baf FIX Can convert a partially closed down payment when close for
bankcharge
2022-07-05 21:04:24 +02:00
Laurent Destailleur
5e451e1155 FIX Can convert a partially closed down payment when close for
bankcharge
2022-07-05 20:59:42 +02:00
Laurent Destailleur
37db86183c Add field close_missing_amount on invoices 2022-07-05 20:32:26 +02:00
Laurent Destailleur
c3f6833add css 2022-07-05 20:32:22 +02:00
Juanjo Menent
4f091c4394 Fix: PHP Fatal error: Call to undefined function getOnlineSignatureUrl() 2022-07-05 17:11:02 +02:00
Quentin VIAL-GOUTEYRON
2e065e1702 FIW : add missing thead on table 2022-07-05 13:11:36 +02:00
Laurent Destailleur
ab3e01268d Fix support of MAIN_ALLOW_SVG_FILES_AS_IMAGES 2022-07-05 10:38:22 +02:00
Laurent Destailleur
23e693074e Prepare v16 2022-07-05 10:10:53 +02:00
Laurent Destailleur
51d630433e Fix migration script detection 2022-07-05 10:04:12 +02:00
Laurent Destailleur
e0ba2a7931 Prepare 16.0 2022-07-05 09:57:08 +02:00
Laurent Destailleur
aba782057f Fix bad link 2022-07-05 09:44:42 +02:00
Laurent Destailleur
a61e5c854c Fix link 2022-07-05 09:41:53 +02:00
Laurent Destailleur
a91d0a525f Debug v16 2022-07-05 02:39:28 +02:00
stickler-ci
244a3fc819 Fixing style errors. 2022-07-04 15:22:40 +00:00
boudet jean pascal
5dabcec767 rank duplicate on mass action
#### rank duplicate on mass action  invoice from multiple orders

we have to  define the max rank for each line which makes it possible not to have a duplicate on the rank field in the case of several order massaction request.
2022-07-04 17:17:55 +02:00
BB2A Anthony Berton
f9eee31f74 FIX - php V8 user class 2022-07-04 15:51:54 +02:00
Laurent Destailleur
1375cae10c Merge pull request #21440 from bb2a/FIX---php-V8-html-form-mail
FIX - php V8 html form mail
2022-07-04 15:51:02 +02:00
Laurent Destailleur
7cd085fd0b Update html.formmail.class.php 2022-07-04 15:50:41 +02:00
Laurent Destailleur
1c2727e2a7 Merge pull request #21354 from badre-agtaib/new2
FIX #21204
2022-07-04 15:30:33 +02:00
Quatadah Nasdami
17c9f0a25b shipment not found into reception not found 2022-07-04 14:38:51 +02:00
BB2A Anthony Berton
0ce3acf52f FIX - php V8 html form mail 2022-07-04 10:06:10 +02:00
Laurent Destailleur
de71df9df2 Debug install v16 with php 8.1 2022-07-04 03:06:56 +02:00
Laurent Destailleur
e4e0bdbe96 Merge pull request #21435 from dolibit-ut/patch-403
Update accountant.php
2022-07-04 01:24:36 +02:00
Laurent Destailleur
bde02ffe77 Merge pull request #21432 from leninrivas/patch-7
Correct Stock in Shipment
2022-07-04 01:21:52 +02:00
Laurent Destailleur
3f354be119 Update shipment.php 2022-07-04 01:21:41 +02:00
Laurent Destailleur
18a6f52abb Update shipment.php 2022-07-04 01:20:50 +02:00
Laurent Destailleur
5759028164 Merge pull request #21436 from dolibit-ut/patch-404
Update emailcollector.class.php
2022-07-04 01:18:52 +02:00
UT from dolibit
e8cfafbb2c Update emailcollector.class.php 2022-07-03 22:06:05 +02:00
stickler-ci
6d796fc820 Fixing style errors. 2022-07-03 19:52:56 +00:00
UT from dolibit
08881a0e87 Update accountant.php 2022-07-03 21:47:37 +02:00
Laurent Destailleur
839c535774 Clean code 2022-07-03 19:18:24 +02:00
Laurent Destailleur
80d06e7a66 Doc 2022-07-03 15:14:05 +02:00
Laurent Destailleur
e335f7f244 Doc 2022-07-03 15:05:36 +02:00
Laurent Destailleur
f14b828923 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-07-03 14:30:54 +02:00
Laurent Destailleur
e6e4017047 Fix debug for php 8.1 2022-07-03 14:29:59 +02:00
Laurent Destailleur
6f22c52280 Merge pull request #20927 from homer8173/patch-35
dangerous overwritting
2022-07-03 13:19:03 +02:00
Laurent Destailleur
bd28a7e038 Debug v16 2022-07-03 12:54:58 +02:00
Laurent Destailleur
13567fef15 Update commonobject.class.php 2022-07-03 12:37:32 +02:00
Laurent Destailleur
9328e89c15 Update commonobject.class.php 2022-07-03 12:35:44 +02:00
Laurent Destailleur
1b58b5e21f Add phpunit test 2022-07-03 12:29:09 +02:00
Laurent Destailleur
70e7da7d42 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-07-03 11:48:55 +02:00
Laurent Destailleur
3c91a3a56b Clean not used files 2022-07-03 11:47:40 +02:00
stickler-ci
7d9ab1b717 Fixing style errors. 2022-07-02 17:28:16 +00:00
Lenin Rivas
3aa41a25b9 Correct Stock in Shipment 2022-07-02 12:23:46 -05:00
Laurent Destailleur
1b5eb2de22 Merge pull request #21411 from defrance/patch-213
introduce barcode on warehouse place
2022-07-01 17:24:25 +02:00
Laurent Destailleur
591f297399 Merge pull request #21418 from atm-gauthier/15.0_fix_trads_payment_method
FIX : french traductions for payment methods
2022-07-01 17:22:56 +02:00
Laurent Destailleur
28b60e6c00 Merge pull request #21410 from artemChernitsov/fix-recruitment-module-patch-1
Add check file permission in recruitment module
2022-07-01 17:10:38 +02:00
Laurent Destailleur
dea9a9e68d Merge pull request #21409 from aspangaro/16p5-php8
PHP8 Warning
2022-07-01 16:35:40 +02:00
Laurent Destailleur
89c743afb0 Merge pull request #21417 from bb2a/FIX---php-V8-soc-list
FIX - php V8 soc list
2022-07-01 16:35:10 +02:00
Laurent Destailleur
8ac9de38de Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-07-01 14:19:52 +02:00
Laurent Destailleur
09b8e3b1ee Better message 2022-07-01 13:26:32 +02:00
Laurent Destailleur
3e70223961 Help debug 2022-07-01 13:15:15 +02:00
Laurent Destailleur
cfca565189 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-07-01 11:39:52 +02:00
Laurent Destailleur
a23969981c Merge pull request #21424 from FHenry/dev_fixRH
fix: GHR missing token
2022-07-01 11:39:05 +02:00
Laurent Destailleur
7e1cb39d36 Update skill_tab.php 2022-07-01 11:38:42 +02:00
Laurent Destailleur
68ca43c848 Merge pull request #21422 from bb2a/FIX---php-V8-admin-translation
FIX - php V8 admin translation
2022-07-01 11:36:28 +02:00
Laurent Destailleur
014a9cab9d Update translation.php 2022-07-01 11:36:12 +02:00
Laurent Destailleur
591b7bae43 Fix var 2022-07-01 11:24:52 +02:00
Laurent Destailleur
69a900b260 FIX unset of default template for users. 2022-07-01 10:53:31 +02:00
Laurent Destailleur
0d43069220 Force creation of dir 2022-07-01 10:45:36 +02:00
Florian HENRY
ab0ee7b133 fix: GRH missing tocken 2022-07-01 09:49:49 +02:00
Laurent Destailleur
6e153b9b75 Debug import FIX #yogosha11618 2022-06-30 22:55:58 +02:00
BB2A Anthony Berton
80ce80f7cc FIX - php V8 admin translation 2022-06-30 17:29:02 +02:00
BB2A Anthony Berton
be7479ff7d Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into FIX---php-V8-soc-list 2022-06-30 17:11:47 +02:00
Laurent Destailleur
f0848d9f9f Debug v16 2022-06-30 15:58:59 +02:00
Laurent Destailleur
ad9c91fc25 Debug v16 2022-06-30 14:40:03 +02:00
Laurent Destailleur
8594bd9528 Debug v16 2022-06-30 13:46:07 +02:00
Laurent Destailleur
ef57cde3da Debug v16 (module_name missing in list, pb in searching duplicate cron) 2022-06-30 13:26:55 +02:00
Laurent Destailleur
cd2df7caef Debug v16 2022-06-30 12:47:36 +02:00
Laurent Destailleur
7acf02d6da Debug v16 2022-06-30 12:37:41 +02:00
Laurent Destailleur
78831513a7 Debug v16 2022-06-30 12:10:50 +02:00
Gauthier PC portable 024
bf98c77d73 FIX : french traductions for payment methods 2022-06-30 10:24:47 +02:00
BB2A Anthony Berton
364960a8fc FIX - php V8 soc list 2022-06-30 09:56:37 +02:00
Laurent Destailleur
509f01cfb7 css 2022-06-30 04:55:28 +02:00
Laurent Destailleur
8f7ec29ccc Clean code 2022-06-30 04:36:25 +02:00
Laurent Destailleur
07aebba254 Debug v16 2022-06-30 01:55:56 +02:00
Laurent Destailleur
a98599084d Debug v16 2022-06-30 01:34:58 +02:00
Laurent Destailleur
55ddf1eabb Doc 2022-06-30 01:17:24 +02:00
Laurent Destailleur
d2b802fbed Complete smtps code 2022-06-30 01:08:48 +02:00
Laurent Destailleur
b34bb2138a Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop

Conflicts:
	htdocs/societe/ajax/company.php
2022-06-29 22:06:02 +02:00
Laurent Destailleur
07ccd65a8c Fix nature of thirdparty must use the picto 2022-06-29 22:04:42 +02:00
Laurent Destailleur
d13bd3eaa6 Fix nature of thirdparty must use the picto 2022-06-29 21:55:31 +02:00
Laurent Destailleur
3bd5ed3782 Doc 2022-06-29 21:19:37 +02:00
Laurent Destailleur
73946fc6cb Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/comm/propal/card.php
2022-06-29 16:52:07 +02:00
Laurent Destailleur
71bf338127 Fix regression 2022-06-29 16:50:17 +02:00
Laurent Destailleur
046fa77a5a Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/comm/propal/card.php
2022-06-29 16:46:27 +02:00
Laurent Destailleur
cbaa8b4304 FIX False alert of WAF when there is "set" into some URL action=update. 2022-06-29 16:40:19 +02:00
Alexandre SPANGARO
d6814b2586 Merge remote-tracking branch 'upstream/develop' into 16p5-php8 2022-06-29 16:31:41 +02:00
Laurent Destailleur
09449ece26 css 2022-06-29 15:51:39 +02:00
Laurent Destailleur
0299f18cec Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-29 15:38:27 +02:00
This Charlène
f6b1c91f21 Update 15.0.0-16.0.0.sql 2022-06-29 14:44:17 +02:00
This Charlène
08bffca31b introduce barcode on warehouse place 2022-06-29 14:41:50 +02:00
Laurent Destailleur
770a160b8b Debug v16 2022-06-29 14:31:21 +02:00
stickler-ci
cc1ebbc499 Fixing style errors. 2022-06-29 08:53:55 +00:00
Artem Chernitsov
1d515705b5 add check file permission recruitment module 2022-06-29 11:51:58 +03:00
Artem Chernitsov
0867c96f61 fix of recruitment module
- checking file permissions
2022-06-29 11:48:06 +03:00
Laurent Destailleur
6fb1e126c5 Merge pull request #21245 from Quatadah/dolicloud-qnasdami-scrutinizer-003
BUG FIX : Changing type of the parameter
2022-06-29 10:30:49 +02:00
Laurent Destailleur
a681ae7283 css 2022-06-29 10:23:31 +02:00
Laurent Destailleur
64c661b7f8 Merge branch 'develop' of github.com:Dolibarr/dolibarr into develop 2022-06-29 10:10:15 +02:00
Alexandre SPANGARO
df85137772 PHP8 Warning 2022-06-29 07:32:25 +02:00
Alexandre SPANGARO
f840af384a PHP8 Warning 2022-06-29 07:32:16 +02:00
Laurent Destailleur
67ade177c7 Fix error message 2022-06-28 20:11:18 +02:00
Quatadah Nasdami
831ff35c4d API for module reception 2022-06-28 16:10:10 +02:00
Laurent Destailleur
b0e0ceb8f6 Fix phpunit 2022-06-28 14:59:15 +02:00
Laurent Destailleur
12902a2e01 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-28 14:54:58 +02:00
Laurent Destailleur
bea16a5256 Fix SEPA file with special chars 2022-06-28 14:50:43 +02:00
Laurent Destailleur
485c85a2a3 Fix SEPA 2022-06-28 14:49:03 +02:00
Laurent Destailleur
d2a9826795 Fix phpcs 2022-06-28 13:17:59 +02:00
Laurent Destailleur
d23426847e css 2022-06-28 13:14:36 +02:00
Laurent Destailleur
4c4e081997 Debug v16 2022-06-28 13:09:53 +02:00
Laurent Destailleur
941245c5e2 Debug v16 2022-06-28 12:26:49 +02:00
Laurent Destailleur
b8e5f3c4f2 Look and feel v16 2022-06-28 11:33:19 +02:00
Florian HENRY
739d24e1ae fix: replannish view lost filter and sort on pagination and sorting 2022-06-28 11:22:01 +02:00
Laurent Destailleur
0091c31b99 Debug v16 2022-06-28 11:07:06 +02:00
Laurent Destailleur
763c9f7441 Responsive 2022-06-28 00:27:49 +02:00
Laurent Destailleur
dd6b2a4685 Fix tooltip 2022-06-28 00:11:59 +02:00
Laurent Destailleur
f2a9db5fe3 Typo 2022-06-27 22:45:09 +02:00
Laurent Destailleur
0e0c9888a2 Typo 2022-06-27 22:43:29 +02:00
Laurent Destailleur
748c714b1b Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-27 22:36:31 +02:00
Laurent Destailleur
34464ac92b Maxi debug of OAuth module. Solve tons of problems. 2022-06-27 22:35:58 +02:00
Laurent Destailleur
1d354aa844 Merge pull request #21380 from cfoellmann/PR/fix-fetch-propal-conds
fix fetching mode_reglement default from soc/comm on propal creation
2022-06-27 17:34:54 +02:00
Laurent Destailleur
3e0bc05edd Update card.php 2022-06-27 17:34:25 +02:00
Laurent Destailleur
79ca774de3 Merge pull request #21393 from Dolibarr/dependabot/github_actions/actions/checkout-3
Bump actions/checkout from 2 to 3
2022-06-27 17:32:55 +02:00
Christian Foellmann
236f6ad23b fix fetching mode_reglement default from soc/comm on propal creation 2022-06-27 13:11:31 +02:00
Christian Foellmann
4335e67249 remove old commented code 2022-06-27 12:59:06 +02:00
stickler-ci
23d948cec4 Fixing style errors. 2022-06-27 10:56:08 +00:00
Christian Foellmann
89d1389e2d fix page titles 2022-06-27 12:48:04 +02:00
Laurent Destailleur
35187e2e2f Merge pull request #21291 from Quatadah/dolicloud-qnasdami-scrutinizer-015
BUG FIX : Temporary transformation (from string to array) so it can be traversable
2022-06-27 12:24:40 +02:00
Laurent Destailleur
252215402f Merge pull request #21260 from Quatadah/dolicloud-qnasdami-scrutinizer-009
BUG FIX : changing function name to existing one (2)
2022-06-27 12:23:53 +02:00
Laurent Destailleur
7c4a6a6624 Merge pull request #21389 from bb2a/FIX---php-V8-expedition-card
FIX - php V8 expedition card
2022-06-27 12:23:08 +02:00
Laurent Destailleur
cf34d07d5d Update card.php 2022-06-27 12:22:46 +02:00
Laurent Destailleur
0d25e3d236 Merge pull request #21392 from bb2a/FIX---php-V8-order-liste
FIX - php V8 order liste
2022-06-27 12:20:31 +02:00
Laurent Destailleur
3eec5f0e69 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-06-27 12:16:17 +02:00
Laurent Destailleur
11e11c99b8 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-27 12:12:07 +02:00
Laurent Destailleur
bbd2f05e3a Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/comm/propal/card.php
2022-06-27 12:11:40 +02:00
Laurent Destailleur
6e5cbd9f08 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-27 12:09:42 +02:00
Laurent Destailleur
b29393c6c6 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-27 12:09:19 +02:00
Laurent Destailleur
3a664521c7 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-06-27 12:08:53 +02:00
Laurent Destailleur
bcfb4c8ba3 Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-06-27 12:08:46 +02:00
Laurent Destailleur
69cbe48a75 doc 2022-06-27 12:07:34 +02:00
Laurent Destailleur
fb1a548a1e Merge branch '12.0' of git@github.com:Dolibarr/dolibarr.git into 13.0 2022-06-27 12:05:44 +02:00
dependabot[bot]
9464fe0abc Bump actions/checkout from 2 to 3
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-27 09:52:41 +00:00
Laurent Destailleur
9372b69eb4 clean code 2022-06-27 11:52:33 +02:00
Laurent Destailleur
bc81f372ac Merge pull request #21362 from bb2a/FIX---Cancel-order
FIX - Right close order
2022-06-27 11:46:55 +02:00
Laurent Destailleur
bec187b9b4 Merge pull request #21370 from atm-lena/develop_FIX_TransferCorrectionStock_Extrafields
FIX : don't display product's extrafields for transer / correction stock
2022-06-27 11:45:31 +02:00
Laurent Destailleur
fdb5eedd12 Merge pull request #21366 from turrisxyz/Dependabot-GitHub-Actions
chore: Included githubactions in the dependabot config
2022-06-27 11:43:46 +02:00
Laurent Destailleur
c94c9487f8 Merge pull request #21367 from frederic34/patch-4
Delete target.class.php.back
2022-06-27 11:39:47 +02:00
Laurent Destailleur
a1f974f356 Merge pull request #21374 from aspangaro/17p2
Look & Feel v16 - Align amount to right on card
2022-06-27 11:39:31 +02:00
Laurent Destailleur
917b295810 Merge pull request #21375 from aspangaro/16p5-php8
PHP8 warning & typo on key
2022-06-27 11:38:28 +02:00
Laurent Destailleur
d6aa53168c Merge pull request #21379 from cfoellmann/PR/fix-disable-product-accounting
fix PRODUCT_DISABLE_ACCOUNTING
2022-06-27 11:33:42 +02:00
Laurent Destailleur
7254c7d631 Merge pull request #21381 from cfoellmann/PR/fix-soc-link
set the target for SOC links on proposals and invoices to the customer tab
2022-06-27 11:30:37 +02:00
Laurent Destailleur
2284a2051e Merge pull request #21383 from daraelmin/patch-2
Fix css class declared in wrong param
2022-06-27 11:30:00 +02:00
Laurent Destailleur
80ccdd1c5c Merge pull request #21384 from aspangaro/17p5-PCNLux
NEW Add chart of accounts PCN2020 for Luxemburg
2022-06-27 11:29:20 +02:00
BB2A Anthony Berton
2208d39b39 FIX - php V8 order liste 2022-06-27 11:29:15 +02:00
Laurent Destailleur
446b087b7e Merge pull request #21386 from cfoellmann/PR/fix-prodsrv-list
fix PRODUCT_DISABLE_ACCOUNTING + STOCK_SUPPORT_SERVICES
2022-06-27 11:27:46 +02:00
Laurent Destailleur
149fc6ed83 Update list.php 2022-06-27 11:26:57 +02:00
Laurent Destailleur
d2ed38ee1b Merge pull request #21387 from ptibogxiv/patch-22
Fix REST API for categories
2022-06-27 11:24:04 +02:00
Anthony Berton
bc375ad007 Merge branch 'develop' into FIX---php-V8-expedition-card 2022-06-27 11:19:22 +02:00
Anthony Berton
bcdbcf5070 Update card.php 2022-06-27 11:18:38 +02:00
Anthony Berton
3a8f479db7 Update card.php 2022-06-27 11:16:50 +02:00
Laurent Destailleur
7ca7dcc8fc Merge pull request #21390 from bb2a/FIX---php-V8-composition-card
FIX - php V8 composition card
2022-06-27 11:12:06 +02:00
Laurent Destailleur
834d129634 Update product.class.php 2022-06-27 11:11:43 +02:00
Laurent Destailleur
62523cb526 Merge pull request #21391 from bb2a/FIX---php-V8-product-batch
FIX - php V8 product batch
2022-06-27 11:11:13 +02:00
Laurent Destailleur
7e94eaac07 Debug v16 2022-06-27 10:53:03 +02:00
Laurent Destailleur
f09638972c Debug v16 2022-06-27 10:45:04 +02:00
Laurent Destailleur
4e46c3f7a2 Clean code 2022-06-27 10:17:14 +02:00
BB2A Anthony Berton
0951fabd55 FIX - php V8 product batch 2022-06-27 09:22:26 +02:00
BB2A Anthony Berton
6a80d81d4a FIX 2022-06-27 09:11:33 +02:00
BB2A Anthony Berton
b046d92efb STOCK_MUST_BE_ENOUGH_FOR_SHIPMENT 2022-06-27 09:00:57 +02:00
BB2A Anthony Berton
e8202894fb Recursive call if there is childs to child 2022-06-27 08:54:26 +02:00
BB2A Anthony Berton
f3b3e97d49 Recursive call if there is childs to child 2022-06-27 08:51:12 +02:00
BB2A Anthony Berton
ebe8e34249 total init 2022-06-27 08:49:27 +02:00
BB2A Anthony Berton
550c57d53e FIX - php V8 composition card 2022-06-27 08:45:38 +02:00
BB2A Anthony Berton
324b145833 FIX - php V8 expedition card 2022-06-27 08:42:33 +02:00
Laurent Destailleur
0b138167f6 Debug v16 2022-06-26 21:00:46 +02:00
Laurent Destailleur
7262a097e3 Better error message 2022-06-26 20:27:51 +02:00
Laurent Destailleur
863ab1d8af css 2022-06-26 17:00:45 +02:00
ptibogxiv
7f9a167d96 Update api_categories.class.php 2022-06-26 17:00:38 +02:00
ptibogxiv
1cfbadb197 Fix REST API for categories 2022-06-26 16:59:22 +02:00
Christian Foellmann
082c7091fc fix PRODUCT_DISABLE_ACCOUNTING + STOCK_SUPPORT_SERVICES on products/services list page 2022-06-26 15:47:24 +02:00
Alexandre SPANGARO
667fda9d16 Fix Problem on trema 2022-06-26 08:14:04 +02:00
Alexandre SPANGARO
2dd3faa258 NEW Add chart of accounts PCN2020 for Luxemburg 2022-06-26 07:54:45 +02:00
Alexandre SPANGARO
eb31df3113 Remove Old PCN2009 2022-06-26 07:05:54 +02:00
daraelmin
e381e646b3 Fix css class declared in wrong param
In print_liste_field_titre CSS class name can only be added in prefix parameter (except 'class="right"' for backward compatibility)
If the title is centered, the field should be also
2022-06-25 21:22:30 +02:00
Christian Foellmann
55d90ec560 set the target for SOC links on proposals and invoices to the customer tab 2022-06-25 16:24:55 +02:00
Christian Foellmann
b65c9f4ead fix PRODUCT_DISABLE_ACCOUNTING - hide fields on product/card view 2022-06-25 15:04:28 +02:00
Alexandre SPANGARO
11a1273211 PHP8 warning & typo on key 2022-06-25 07:13:15 +02:00
Alexandre SPANGARO
c6a8242e76 Look & Feel v16 - Align amount to right on card 2022-06-25 07:09:24 +02:00
Alexandre SPANGARO
f8477f8b25 Look & Feel v16 - Align amount to right on card 2022-06-25 07:03:36 +02:00
Alexandre SPANGARO
cadf8ebe29 Look & Feel v16 - Align amount to right on card 2022-06-25 06:55:10 +02:00
Alexandre SPANGARO
f2e1a8de8b Look & Feel v16 - Align amount to right on card 2022-06-25 06:51:48 +02:00
Laurent Destailleur
15e5488694 Look and feel v16 2022-06-25 04:18:38 +02:00
Laurent Destailleur
14832bb543 FIX timeout due to too many the same request 2022-06-25 04:15:04 +02:00
Laurent Destailleur
eeaa4f8205 Revert "doc"
This reverts commit 380cae761a.
2022-06-25 04:06:55 +02:00
Laurent Destailleur
380cae761a doc 2022-06-25 04:06:18 +02:00
Laurent Destailleur
00649e791c Fix #yogosha11452 2022-06-25 02:18:16 +02:00
Laurent Destailleur
f5eeb93350 phpcs 2022-06-25 01:45:27 +02:00
Laurent Destailleur
e6cb8b6d0e Fix sql error 2022-06-24 18:22:47 +02:00
bagtaib
f2a313a121 Merge branch 'new2' of https://github.com/badre-agtaib/dolibarr into new2 2022-06-24 13:42:37 +02:00
bagtaib
d3807286d4 fix spaces 2022-06-24 13:41:21 +02:00
atm-lena
9d1b1c2c82 FIX : don't display product's extrafields for transer / correction stock 2022-06-24 12:12:22 +02:00
Laurent Destailleur
2a32ebbf6c Fix token 2022-06-24 11:26:26 +02:00
Frédéric FRANCE
473de027f7 Delete target.class.php.back 2022-06-24 07:54:21 +02:00
naveen
3a9091bd83 chore: Included githubactions in the dependabot config
This should help with keeping the GitHub actions updated on new releases. This will also help with keeping it secure.

Dependabot helps in keeping the supply chain secure https://docs.github.com/en/code-security/dependabot

GitHub actions up to date https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot

https://github.com/ossf/scorecard/blob/main/docs/checks.md#dependency-update-tool
Signed-off-by: naveen <172697+naveensrinivasan@users.noreply.github.com>
2022-06-24 01:32:21 +00:00
Laurent Destailleur
930ce5b305 Responsive 2022-06-23 22:29:07 +02:00
Laurent Destailleur
de61b53bd7 responsive 2022-06-23 22:18:23 +02:00
Laurent Destailleur
53c6bfb8ae Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-23 20:07:12 +02:00
Laurent Destailleur
cffe543257 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-23 19:32:34 +02:00
Laurent Destailleur
6ec17dbe79 Fix phpcs 2022-06-23 19:31:51 +02:00
Quatadah Nasdami
fb410843f9 adding condition to verify that variable is an array and not string 2022-06-23 18:00:58 +02:00
Quatadah Nasdami
10f2501ad2 removing useless parameter in abstract method 2022-06-23 17:58:18 +02:00
Quatadah Nasdami
92e9b550cd removing one empty line 2022-06-23 17:56:17 +02:00
Laurent Destailleur
4b69e5fc8e Fix message 2022-06-23 17:33:01 +02:00
stickler-ci
2f1eff2881 Fixing style errors. 2022-06-23 13:42:37 +00:00
BB2A Anthony Berton
dbf39b14c5 Merge branch 'FIX---Cancel-order' of https://github.com/bb2a/dolibarr into FIX---Cancel-order 2022-06-23 15:39:38 +02:00
bagtaib
cc0be635dc removed the new option and enhanced the old one 2022-06-23 15:37:37 +02:00
BB2A Anthony Berton
0d00c4b26d FIX 2022-06-23 15:34:45 +02:00
Laurent Destailleur
49e4a070dc Work on #21136 2022-06-23 14:14:25 +02:00
Laurent Destailleur
e0cfeedae7 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-23 13:14:14 +02:00
Laurent Destailleur
3179fd13d8 FIX #21303 2022-06-23 13:07:53 +02:00
Laurent Destailleur
5627d7ff9d Fix token 2022-06-23 12:45:28 +02:00
Laurent Destailleur
f4997d052d Merge pull request #21326 from defrance/patch-209
php V8 warning, no soc associated with storage
2022-06-23 12:39:05 +02:00
Laurent Destailleur
bfd417bf6f Merge pull request #21327 from defrance/patch-210
php V8 warning
2022-06-23 12:38:00 +02:00
Laurent Destailleur
540cd43596 Merge branch 'develop' into patch-210 2022-06-23 12:37:47 +02:00
Laurent Destailleur
4b79d91437 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-23 12:35:24 +02:00
Laurent Destailleur
b2603c9b53 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/product/fournisseurs.php
2022-06-23 12:26:26 +02:00
Laurent Destailleur
24c0e5a5bf Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-23 12:24:55 +02:00
Laurent Destailleur
c0240ae996 Merge 2022-06-23 12:24:34 +02:00
Laurent Destailleur
cc898d0468 Merge pull request #21360 from atm-lena/develop_FIX_CompatibilityPHP8_CompareemptystringAndnumberzero
FIX compatibility php 8 : compare empty string and zero int for recep…
2022-06-23 12:17:09 +02:00
atm-lena
fe09423d20 FIX compatibility php 8 : compare empty string and zero int for reception 2022-06-23 11:55:20 +02:00
Laurent Destailleur
d60d296dd0 phpcs 2022-06-23 11:49:40 +02:00
Laurent Destailleur
3b8f83f3d1 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-23 11:44:45 +02:00
Laurent Destailleur
d93e60bbd4 Merge pull request #21348 from FHenry/15_fix_graph_ficheinter_status
FIX: 15 fix graph ficheinter status
2022-06-23 11:44:18 +02:00
Laurent Destailleur
d87f8d874b Merge pull request #21328 from defrance/patch-211
expedition setting php V8 warning
2022-06-23 11:41:17 +02:00
Laurent Destailleur
b1ab8ba9b3 Merge branch 'develop' into patch-211 2022-06-23 11:41:09 +02:00
Laurent Destailleur
41e9a0ded8 Merge pull request #21329 from defrance/patch-212
fix $fk_product instead $this->fk_product
2022-06-23 11:38:38 +02:00
Laurent Destailleur
04f2a41509 Merge pull request #21337 from atm-lena/14.0_FIX_productfournprice_saveextrafieldsvalues
Save extrafields didn't work with all types (ex : date)
2022-06-23 10:59:10 +02:00
Laurent Destailleur
ce8f6b0983 Merge pull request #21338 from dolibit-ut/patch-401
Update llx_adherent_type.sql
2022-06-23 10:58:18 +02:00
Florian HENRY
a12e7d1734 Merge branch '15_fix_graph_ficheinter_status' of github.com:FHenry/dolibarr into 15_fix_graph_ficheinter_status 2022-06-23 10:20:50 +02:00
Florian HENRY
d409a534d7 Ok better 2022-06-23 10:20:26 +02:00
Florian HENRY
c702d8a4ac Merge branch '15.0' of https://github.com/Dolibarr/dolibarr into 15_fix_graph_ficheinter_status 2022-06-23 10:14:43 +02:00
Laurent Destailleur
9fcf1343ec Merge pull request #21340 from dolibit-ut/patch-402
Update 15.0.0-16.0.0.sql
2022-06-23 09:56:11 +02:00
Laurent Destailleur
264f8ab4ce Merge pull request #21342 from frederic34/useismodenabled
Use getDolGlobalString
2022-06-23 09:55:31 +02:00
Laurent Destailleur
43c8895fa0 Merge pull request #21345 from atm-steve/Invoice_rec_default_date_to_yes_with_hidden_conf
New invoice rec default to yes
2022-06-23 09:54:23 +02:00
Laurent Destailleur
78a8b30213 Merge pull request #21346 from FHenry/15_fix_fichinter_box
FIX: Index page for "Sales" give wrong URL link to Intervention
2022-06-23 09:53:16 +02:00
Laurent Destailleur
c19464d3c4 Merge pull request #21347 from frederic34/holidaydocuments
remove unused code
2022-06-23 09:52:28 +02:00
Laurent Destailleur
895c16a63b Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-23 09:51:47 +02:00
Laurent Destailleur
886b958550 Merge pull request #21356 from turrisxyz/Pinned-Dependencies-GitHub
chore: Set permissions for GitHub actions
2022-06-23 09:51:23 +02:00
neilnaveen
da97012190 chore: Set permissions for GitHub actions
Restrict the GitHub token permissions only to the required ones; this way, even if the attackers will succeed in compromising your workflow, they won’t be able to do much.

- Included permissions for the action. https://github.com/ossf/scorecard/blob/main/docs/checks.md#token-permissions

https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions

https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs

[Keeping your GitHub Actions and workflows secure Part 1: Preventing pwn requests](https://securitylab.github.com/research/github-actions-preventing-pwn-requests/)

Signed-off-by: neilnaveen <42328488+neilnaveen@users.noreply.github.com>
2022-06-23 01:11:00 +00:00
Laurent Destailleur
7bc0265a06 Trans 2022-06-22 22:24:48 +02:00
Laurent Destailleur
e9153cd9e1 Fix creation 2022-06-22 22:21:05 +02:00
Laurent Destailleur
55326331b9 Fix reposition 2022-06-22 22:14:08 +02:00
Laurent Destailleur
fb573030c8 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-22 22:13:58 +02:00
Laurent Destailleur
ff4911384e Debug new import tool 2022-06-22 21:52:00 +02:00
Laurent Destailleur
55c6438353 Merge pull request #21349 from frederic34/deprecatedinproject
fix deprecated in project
2022-06-22 18:26:57 +02:00
Laurent Destailleur
e4797c9184 Merge pull request #21353 from FHenry/15_fix_badcall_massaction_delete_on_actioncomm
fix: 15 fix bad call massaction delete on actioncomm delete parameters
2022-06-22 18:25:46 +02:00
Laurent Destailleur
e73bd1bf1f Merge pull request #21350 from FHenry/15_fix_search_user
fix: 15 fix search user
2022-06-22 18:23:59 +02:00
Laurent Destailleur
1cdd702ccc Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-22 18:14:26 +02:00
Laurent Destailleur
879a5260d5 Merge pull request #21324 from atm-GregM/FIX_V15_linkedObjectBlock_center_order_date
FIX : v15 linked object block center order date
2022-06-22 18:13:05 +02:00
Laurent Destailleur
8075a40bd9 FIX #21323 2022-06-22 18:12:36 +02:00
bagtaib
03de870751 NEW #21204 2022-06-22 16:29:15 +02:00
Laurent Destailleur
6bcb5abce5 Fix doxygen 2022-06-22 16:14:31 +02:00
Laurent Destailleur
0a26ac33db Fix error management 2022-06-22 16:09:32 +02:00
Laurent Destailleur
c71fe009df Fix signature delete 2022-06-22 16:07:03 +02:00
Laurent Destailleur
a3052a7ae1 Merge pull request #21239 from fboitel/fboitel-dev-scrutinizer-003
BUG FIX variable "projet" is no longer used on Conf, replaced by "project"
2022-06-22 15:40:22 +02:00
Laurent Destailleur
313cff77d0 Merge pull request #21255 from aspangaro/16b4-php8_1
PHP 8 in social contribution
2022-06-22 15:39:29 +02:00
Florian HENRY
98ee53c4b1 fix: massaction delete on actioncomm list do not call delete with good paramters 2022-06-22 15:13:13 +02:00
Florian HENRY
9d20e602d1 fix: remove warning GETPOST 2022-06-22 14:28:33 +02:00
atm-steve
267e150118 Update objectline_create.tpl.php 2022-06-22 14:10:47 +02:00
stickler-ci
e908118db8 Fixing style errors. 2022-06-22 11:52:58 +00:00
Frédéric France
b46ede5eae fix deprecated in project 2022-06-22 13:50:54 +02:00
Florian HENRY
c5101f4bd7 FIX: Fiche inter graph by status on ficheinter Index page 2022-06-22 13:45:06 +02:00
Florian HENRY
abdfc90eae FIX: Fiche inter graph by status on ficheinter Index page 2022-06-22 13:43:07 +02:00
stickler-ci
df585c21ee Fixing style errors. 2022-06-22 11:31:47 +00:00
Frédéric France
b7e539a90a remove unused code 2022-06-22 13:31:35 +02:00
Florian HENRY
10c0d8381d FIX: fiche inter url link into Commerce index 2022-06-22 13:25:06 +02:00
Florian HENRY
156ddb9896 FIX: fiche inter url link into Commerce index 2022-06-22 13:24:15 +02:00
Frédéric France
f8f71dd531 use getDolGlobalString 2022-06-22 13:16:45 +02:00
Laurent Destailleur
be9f367faa Merge pull request #20732 from Hystepik/develop#6
NEW : module webhook
2022-06-22 12:10:08 +02:00
Laurent Destailleur
e698d20789 Merge branch 'develop' into develop#6 2022-06-22 12:09:58 +02:00
Laurent Destailleur
3749d70ae1 Merge pull request #21319 from aspangaro/16b2
PHP 8
2022-06-22 10:07:45 +02:00
Frédéric France
287f868fbb use getDolGlobalString 2022-06-22 08:36:24 +02:00
Frédéric France
889856d55f use getDolGlobalString 2022-06-21 23:39:31 +02:00
Frédéric France
62c171c26d isModEnabled 2022-06-21 20:54:28 +02:00
Frédéric France
9f32100fef Merge remote-tracking branch 'upstream/develop' into useismodenabled 2022-06-21 20:27:57 +02:00
Frédéric France
1f7fc7a2ae getDolGlobalString 2022-06-21 20:25:25 +02:00
UT from dolibit
924ef0a7db Update 15.0.0-16.0.0.sql 2022-06-21 19:26:23 +02:00
UT from dolibit
5f98056423 Update llx_adherent_type.sql 2022-06-21 18:27:23 +02:00
atm-lena
a94e39f0f4 Merge branch '14.0' of https://github.com/Dolibarr/dolibarr into 14.0_FIX_productfournprice_saveextrafieldsvalues 2022-06-21 16:38:09 +02:00
atm-lena
d99adae850 Product Fourn Price : fix error save extrafields values 2022-06-21 16:34:23 +02:00
Laurent Destailleur
eaafa59160 css 2022-06-21 12:47:26 +02:00
Laurent Destailleur
62c12bf55a Look and feel v16 2022-06-21 11:16:36 +02:00
Laurent Destailleur
c1904f0e5e Debug v16 2022-06-21 11:11:28 +02:00
Laurent Destailleur
8b06d68cc0 Clean package 2022-06-21 10:06:33 +02:00
atm-steve
01a0e48b95 add conf and set default date to yes 2022-06-21 10:06:26 +02:00
Alexandre SPANGARO
b6dfa4179b Fix PHP8 2022-06-21 07:01:02 +02:00
Alexandre SPANGARO
d52d1e87a3 Fix PHP8 2022-06-21 06:52:49 +02:00
Alexandre SPANGARO
c5967623a9 Merge remote-tracking branch 'upstream/develop' into 16b2 2022-06-21 06:16:24 +02:00
Laurent Destailleur
7d3938c796 Debug v16 2022-06-21 02:15:22 +02:00
Laurent Destailleur
60a3d13cb9 CSS 2022-06-20 20:54:48 +02:00
Laurent Destailleur
3aae45eb4d css 2022-06-20 20:53:40 +02:00
Laurent Destailleur
602e3bc3f2 CSS 2022-06-20 20:50:21 +02:00
Laurent Destailleur
26abe22f23 Trans 2022-06-20 17:17:33 +02:00
BENKE Charlene
710e556845 fix $fk_product instead $this->fk_product
$fk_product not present on $commande object
2022-06-20 16:07:22 +02:00
stickler-ci
5d1cae173e Fixing style errors. 2022-06-20 14:06:25 +00:00
BENKE Charlene
b37d874936 Update expedition.php 2022-06-20 16:01:25 +02:00
BENKE Charlene
c4793e71c7 expedition setting php v8 warning 2022-06-20 15:55:52 +02:00
BENKE Charlene
88cab8b8e7 Update card.php 2022-06-20 15:41:19 +02:00
BENKE Charlene
fcc23909b3 Update card.php 2022-06-20 15:39:11 +02:00
BENKE Charlene
67021bfd31 php V8 warning 2022-06-20 15:32:04 +02:00
BENKE Charlene
955f14e299 php V8 warning, no soc associated with storage 2022-06-20 15:25:47 +02:00
GregM
d370571963 FIX class center linkedObjectblock order date 2022-06-20 14:59:13 +02:00
Laurent Destailleur
5ef2f1c69f Fix bad name of hook context 2022-06-20 13:48:06 +02:00
Laurent Destailleur
5c82e37517 Debug v16 2022-06-20 13:40:54 +02:00
Alexandre SPANGARO
f2ef565a0f FIX PHP8 2022-06-20 04:57:38 +02:00
Alexandre SPANGARO
9103f62d8b Fix PHP8 2022-06-20 04:37:35 +02:00
Alexandre SPANGARO
5f5cf4b291 Fix PHP8 2022-06-20 04:28:32 +02:00
Alexandre SPANGARO
6a23c6265e Fix PHP8 2022-06-20 04:24:32 +02:00
Alexandre SPANGARO
295bda4806 Fix PHP8 2022-06-20 03:56:09 +02:00
Alexandre SPANGARO
e792b07154 Fix PHP8 2022-06-20 03:55:57 +02:00
Alexandre SPANGARO
ba43459b28 Fix PHP8 2022-06-20 03:55:50 +02:00
Alexandre SPANGARO
2b07d00027 Fix PHP8 2022-06-20 03:29:17 +02:00
Laurent Destailleur
8ee30e067f Rename var 2022-06-20 02:23:37 +02:00
Laurent Destailleur
eeff8fdc0d Debug v16 2022-06-20 02:10:27 +02:00
Alexandre SPANGARO
b80be7ef7a Fix PHP8 2022-06-19 22:59:49 +02:00
Alexandre SPANGARO
50e5cf1a56 Fix fetch label journal 2022-06-19 21:29:45 +02:00
Laurent Destailleur
5eea352c53 Merge pull request #20058 from aspangaro/16a12_assets_sql
NEW Asset module - New SQL structure - FPC21
2022-06-19 19:39:34 +02:00
Laurent Destailleur
53466079af Fix php fatal error 2022-06-19 19:38:40 +02:00
Laurent Destailleur
5fbe6b2fbb Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-19 19:02:42 +02:00
Laurent Destailleur
e97f021380 Fix #yogosha11295 2022-06-19 19:02:16 +02:00
Laurent Destailleur
3e4eb0767e Merge pull request #21209 from aspangaro/16b2
Fix PHP 8.1
2022-06-19 17:34:56 +02:00
Laurent Destailleur
f24099a13f Update llx_asset_model-asset.sql 2022-06-19 17:25:16 +02:00
Laurent Destailleur
e0149f3f03 Update llx_asset_depreciation_options_fiscal-asset.sql 2022-06-19 17:24:00 +02:00
Laurent Destailleur
06023b9139 Update llx_asset_depreciation_options_economic-asset.sql 2022-06-19 17:22:59 +02:00
Laurent Destailleur
bc9159e3c8 Update llx_asset_depreciation-asset.sql 2022-06-19 17:21:54 +02:00
Laurent Destailleur
16c9c7f54a Update llx_asset_accountancy_codes_fiscal-asset.sql 2022-06-19 17:20:44 +02:00
Laurent Destailleur
d9bd1638be Update llx_asset_accountancy_codes_economic-asset.sql 2022-06-19 17:19:43 +02:00
Laurent Destailleur
3f43ba0bc0 Update llx_asset-asset.sql 2022-06-19 17:17:31 +02:00
Laurent Destailleur
78c4a166c0 Trans 2022-06-19 15:36:17 +02:00
Laurent Destailleur
eb22434da1 NEW Support the Swiss QR-Code 2022-06-19 13:26:49 +02:00
Laurent Destailleur
233d712e39 NEW Support the Swiss QR-Code 2022-06-19 13:06:07 +02:00
Alexandre SPANGARO
0903f390c1 Merge remote-tracking branch 'upstream/develop' into 16b4-php8_1 2022-06-19 06:47:29 +02:00
Alexandre SPANGARO
e6a9d48e71 Fix code error 2022-06-19 06:41:05 +02:00
Alexandre SPANGARO
4768502773 Merge remote-tracking branch 'upstream/develop' into 16b2 2022-06-19 06:35:49 +02:00
Alexandre SPANGARO
1e1d78037e Change comment on llx_asset_accountancy_codes_economic-asset.sql 2022-06-19 06:10:04 +02:00
Alexandre SPANGARO
512441bbf4 Review structure data on dictionary c_asset_disposal_type 2022-06-19 06:07:03 +02:00
Laurent Destailleur
3e34c2cab2 Doc 2022-06-18 21:20:50 +02:00
Laurent Destailleur
93d15c53d0 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-18 20:52:10 +02:00
Laurent Destailleur
bc1449f1c2 Fix sepa generation (no special char _) 2022-06-18 20:51:58 +02:00
Laurent Destailleur
a9e9f36604 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-18 14:11:50 +02:00
Laurent Destailleur
da042c7f57 Debug v16 to prepare stable status of module HRM #21136 2022-06-18 14:11:41 +02:00
Laurent Destailleur
a2843bafdc Debug v16 2022-06-18 14:10:45 +02:00
Laurent Destailleur
f42db465d0 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-18 01:21:10 +02:00
Laurent Destailleur
18cf0c7a18 Debug v16 2022-06-17 18:57:09 +02:00
Laurent Destailleur
227ac2baae Merge pull request #21172 from aspangaro/17p2
Look & Feel - Align amount to right on card
2022-06-17 18:07:30 +02:00
Laurent Destailleur
9efc7b0ed3 Merge pull request #21194 from SylvainLegrand/Fix_Supplier_deposit_can_not_be_used_to_pay_supplier_invoice
Fix supplier deposit can not be used to pay supplier invoice
2022-06-17 18:06:14 +02:00
Laurent Destailleur
d5884ead25 Merge branch 'develop' into Fix_Supplier_deposit_can_not_be_used_to_pay_supplier_invoice 2022-06-17 17:59:33 +02:00
Laurent Destailleur
edf116814d Merge pull request #21096 from SylvainLegrand/Fix_accountancy_supplier_index_14
Fix deposit management on accountancy supplier index
2022-06-17 17:24:39 +02:00
Laurent Destailleur
014a62a3a7 Merge branch 'develop' into Fix_accountancy_supplier_index_14 2022-06-17 17:23:55 +02:00
Laurent Destailleur
614ebfeadc Update index.php 2022-06-17 17:20:12 +02:00
Laurent Destailleur
75b50023bf Update index.php 2022-06-17 17:18:05 +02:00
Laurent Destailleur
dd96f6d8d2 Update index.php 2022-06-17 17:17:29 +02:00
Laurent Destailleur
59c7eba54f Merge pull request #21181 from Quatadah/fix20500
Fix #20500
2022-06-17 15:29:56 +02:00
Laurent Destailleur
ca6d47aba0 Merge pull request #21247 from Quatadah/dolicloud-qnasdami-scrutinizer-004
BUG FIX: evaluate() doesn't cover the case where $expr is empty
2022-06-17 15:28:50 +02:00
Laurent Destailleur
5f0e419e46 Update EvalMathTest.php 2022-06-17 15:28:36 +02:00
Laurent Destailleur
6fb75f3268 Merge pull request #21249 from fboitel/fboitel-dev-scrutinizer-007
BUG FIX Class Salary does not contain attribute salary but amount instead
2022-06-17 15:19:01 +02:00
Laurent Destailleur
212583a9f1 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-17 15:17:09 +02:00
Laurent Destailleur
da3d7466a1 Fix signature of method 2022-06-17 15:17:00 +02:00
Laurent Destailleur
2d9dc38ff1 Merge pull request #21261 from Quatadah/dolicloud-qnasdami-scrutinizer-010
BUG FIX : changing function name to the exisiting one (3)
2022-06-17 15:16:22 +02:00
Laurent Destailleur
ab5ad0bb47 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-17 15:06:43 +02:00
Laurent Destailleur
7ce47ce786 Fix signature of getNbByMonth 2022-06-17 15:06:24 +02:00
Laurent Destailleur
8dafb92318 Merge pull request #21259 from Quatadah/dolicloud-qnasdami-scrutinizer-008
BUG FIX : changing function name to the existing one
2022-06-17 15:05:55 +02:00
Laurent Destailleur
ffbd057ef3 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-17 14:53:54 +02:00
Laurent Destailleur
08a942dca8 # WARNING: head commit changed in the meantime
Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-06-17 14:52:51 +02:00
Laurent Destailleur
31dfa774cc Merge pull request #21263 from fboitel/fboitel-dev-scrutinizer-008
BUG FIX FetchLines does not exist on class emailcollector action but FetchLinesComon does
2022-06-17 14:50:36 +02:00
Laurent Destailleur
3481a4652a Merge pull request #21264 from fboitel/fboitel-dev-scrutinizer-009
BUG FIX Attribute datee doesn't exist on class Task
2022-06-17 14:50:11 +02:00
Laurent Destailleur
7f8306c8da Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-17 14:48:39 +02:00
Laurent Destailleur
18d9d6194e # WARNING: head commit changed in the meantime
Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
2022-06-17 14:48:27 +02:00
Laurent Destailleur
236ce622a5 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-17 14:38:56 +02:00
Laurent Destailleur
07e222add2 Merge pull request #21281 from Supermanu/fixevent
Fix timezone issue in event list
2022-06-17 14:37:43 +02:00
Laurent Destailleur
deb21396c1 Fix getEntity for invoice_supplier 2022-06-17 14:31:51 +02:00
Laurent Destailleur
33beacdc7c Merge pull request #21285 from fappels/15_fix_module_builder
Fix module builder for object sharing
2022-06-17 14:30:47 +02:00
Laurent Destailleur
82a13f89ba Merge pull request #21286 from fboitel/fboitel-dev-scrutinizer-013
BUG FIX aray implicitly converted to boolean
2022-06-17 14:23:12 +02:00
Laurent Destailleur
cea89db3c2 Merge pull request #21289 from Quatadah/dolicloud-qnasdami-scrutinizer-014
BUG FIX : Adding an unexisting variable of old usage
2022-06-17 14:13:37 +02:00
Laurent Destailleur
24ee652c8d Merge pull request #21290 from badre-agtaib/scru7
wrong access in array of ids
2022-06-17 14:13:18 +02:00
Laurent Destailleur
3489d9facd Merge pull request #21292 from atm-lena/develop_FIX_nobackoptionupdate_actionaddupdatedelete
Add $noback for action update
2022-06-17 14:08:20 +02:00
Laurent Destailleur
36760d7a58 Try a Better FIX #21296 2022-06-17 14:03:55 +02:00
Laurent Destailleur
c3cdd0af07 Merge pull request #21298 from FHenry/dev_fix_search_fac_rec
fix: bad url param search for facrec filter on facture list
2022-06-17 13:57:29 +02:00
Laurent Destailleur
e1a1ca3534 Merge pull request #21299 from FHenry/14_fix_delete_crontask
FIX: trash icon on crontask list to do not work
2022-06-17 13:57:11 +02:00
Laurent Destailleur
b0c2c4bdbc Merge pull request #21301 from Easya-Solutions/14.0_fix_invoice_note_private
fix private notes not being registered on credit/replacement invoices
2022-06-17 13:56:53 +02:00
Laurent Destailleur
0e2a67a569 Merge pull request #21302 from aspangaro/14p36_partitioningoftheentity
FIX Accountancy - Partitioning of the entity on an automatic binding
2022-06-17 12:39:58 +02:00
Laurent Destailleur
e5172b550d FIX #21305 Better fix 2022-06-17 12:38:17 +02:00
Laurent Destailleur
9d7dcf6f72 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-17 12:30:51 +02:00
Laurent Destailleur
603c7f0c39 Debug v16 2022-06-17 12:30:34 +02:00
Laurent Destailleur
6ae4734196 Merge pull request #21304 from fboitel/fboitel-dev-scrutinizer-016
BUG FIX Deprecated attribute fk_projet wasn't declared on class Commo…
2022-06-17 12:29:34 +02:00
Laurent Destailleur
e75d0c671d Merge pull request #21307 from fboitel/fboitel-dev-scrutinizer-019
BUG FIX attribute commande_id wasn't declared on class Delivery
2022-06-17 12:21:49 +02:00
Laurent Destailleur
99f21246c7 Missing trans 2022-06-17 12:20:36 +02:00
Laurent Destailleur
a646f71902 Merge pull request #21310 from atm-john/fix_comment_for_validate
Fix comment doc
2022-06-17 11:52:17 +02:00
Hystepik
45439e055c Merge branch 'develop' into develop#6 2022-06-17 11:05:12 +02:00
John BOTELLA
806dd8f8e0 Fix comment doc 2022-06-17 10:35:01 +02:00
Faustin
14c932e06b BUG FIX attribute commande_id wasn't declared on class Delivery 2022-06-17 07:53:07 +02:00
Faustin
354b4a7417 BUG FIX Deprecated attribute fk_projet wasn't declared on class CommonObject 2022-06-17 06:03:48 +02:00
Alexandre SPANGARO
a49062338f Copyright 2022-06-17 04:41:15 +02:00
Alexandre SPANGARO
54a5967a71 FIX Accountancy - Partitioning of the entity on an automatic binding 2022-06-17 04:37:56 +02:00
Thomas Negre
3fcaae5ae3 fix private notes not being registered on credit/replacement invoices 2022-06-16 15:33:25 +02:00
Florian HENRY
df009a6365 FIX: trash icon on crontask list to do not work 2022-06-16 15:13:56 +02:00
Florian HENRY
77d129f79c fix: bad url param search for facrec filter on facture list 2022-06-16 15:05:45 +02:00
Quatadah Nasdami
7f4c7c7e7b revert commit in travis yml file 2022-06-16 14:29:30 +02:00
stickler-ci
a9e48a6aac Fixing style errors. 2022-06-16 09:37:28 +00:00
atm-lena
05aae267b1 FIX error syntax 2022-06-16 11:32:21 +02:00
stickler-ci
b5b86a9458 Fixing style errors. 2022-06-16 08:12:13 +00:00
atm-lena
7917775989 Add $noback for action update 2022-06-16 10:05:05 +02:00
Laurent Destailleur
2033b75c33 Add option MAIN_NO_UPGRADE_REDIRECT_ON_LEVEL_3_CHANGE 2022-06-16 09:17:00 +02:00
Laurent Destailleur
a4fe40027a Fix missing var 2022-06-16 08:53:31 +02:00
Quatadah Nasdami
bf801fc11d temporary transformation (from string to array) so it can be traversable 2022-06-15 16:50:34 +02:00
bagtaib
08fe80e5f2 valuie is the id 2022-06-15 16:41:40 +02:00
Laurent Destailleur
79136ade8a Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-15 16:21:27 +02:00
Laurent Destailleur
8bd95ae93d Fix char _ not alloed into SEPA 2022-06-15 16:20:27 +02:00
Quatadah Nasdami
ce80c64782 adding an unexisting variable of old usage 2022-06-15 16:17:34 +02:00
Faustin
80af6c8fdc BUG FIX aray implicitly converted to boolean 2022-06-15 15:54:28 +02:00
NASDAMI Quatadah
a11732bb0d done 2022-06-15 15:44:40 +02:00
NASDAMI Quatadah
e07a94a051 changing the testUserHasRight 2022-06-15 15:31:23 +02:00
Faustin
baf28abf7a Conflict 2022-06-15 15:30:35 +02:00
Faustin
6696d3d4eb Conflict 2022-06-15 15:28:31 +02:00
NASDAMI Quatadah
0af9fe275d test userHasRight temporarily commented 2022-06-15 15:25:23 +02:00
Laurent Destailleur
4874b8d94a Fix conf->projet conf->project 2022-06-15 15:22:54 +02:00
Faustin
0f77d945a9 Conflict management 2022-06-15 15:22:54 +02:00
Faustin
9f4690eedd Conflict management 2022-06-15 15:22:54 +02:00
NASDAMI Quatadah
7f73464ecc Increasing the scope of the variable 2022-06-15 15:22:54 +02:00
Faustin
2392d1c59c replaced projet from old version by project 2022-06-15 15:22:54 +02:00
Faustin
e00e7e1faa replaced projet from old version by project 2022-06-15 15:22:54 +02:00
NASDAMI Quatadah
5b93c103a3 evaluate function checks if is empty + unit test 2022-06-15 15:18:37 +02:00
Laurent Destailleur
17133cabb0 Merge pull request #21284 from badre-agtaib/pre-commit
Ignore external libraries in precommit
2022-06-15 15:06:18 +02:00
bagtaib
7157df4fad ingnore external libraries in precommit 2022-06-15 14:53:51 +02:00
Francis Appels
8da6d4b637 Fix modulebuilder for object sharing. 2022-06-15 14:53:44 +02:00
NASDAMI Quatadah
c2213d6b1d set -e to set +e 2022-06-15 14:51:03 +02:00
Laurent Destailleur
8315d9e10d Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-15 14:21:02 +02:00
Laurent Destailleur
63dd080dea Fix phpcs 2022-06-15 14:19:26 +02:00
Faustin
aa2b96fb48 Added deprecated attribute datee in class Task 2022-06-15 14:10:21 +02:00
stickler-ci
73977f8a84 Fixing style errors. 2022-06-15 12:09:40 +00:00
Faustin
e5ec06ab53 Added deprecated attribute datee in class Task 2022-06-15 14:09:00 +02:00
NASDAMI Quatadah
b713592c25 adding abstract function to Stats class 2022-06-15 14:00:24 +02:00
Faustin
eb7b0824ee Commented dead code 2022-06-15 14:00:00 +02:00
fboitel
36f890bd33 Merge branch 'Dolibarr:develop' into fboitel-dev-scrutinizer-008 2022-06-15 13:59:41 +02:00
NASDAMI Quatadah
fc4f5d9af2 adding abstract function in Stats class 2022-06-15 12:25:00 +02:00
stickler-ci
fddb6a08b4 Fixing style errors. 2022-06-15 09:19:14 +00:00
Faustin
7d02cdeb62 Declared attribute salary in class Salary 2022-06-15 11:18:27 +02:00
NASDAMI Quatadah
20ce5c5323 declaring a used abstract function in the Stats class 2022-06-15 11:10:31 +02:00
Laurent Destailleur
28234c6f44 Merge pull request #21276 from badre-agtaib/scru4
FIX bug :The properties product_tosell & product_tobuy do not exist on OrderLine
2022-06-15 11:05:34 +02:00
Quatadah Nasdami
821a5a833a Merge branch 'develop' into dolicloud-qnasdami-scrutinizer-003 2022-06-15 11:00:57 +02:00
Laurent Destailleur
2ed0547262 Merge pull request #21234 from fboitel/fboitel-dev-scrutinizer-001
BUG FIX  'The property socid does not seem to exist on Recruitm…
2022-06-15 10:40:00 +02:00
Supermanu
f39c8e46d8 Fix timezone issue in event list 2022-06-15 10:26:44 +02:00
Alexandre SPANGARO
86a54d5f22 Merge remote-tracking branch 'upstream/develop' into 16a12_assets_sql 2022-06-15 04:53:55 +02:00
Alexandre SPANGARO
a8e4aec5c2 Same modification on supplier invoice 2022-06-15 04:46:58 +02:00
Alexandre SPANGARO
863a18b839 Merge remote-tracking branch 'upstream/develop' into 17p2 2022-06-15 04:16:40 +02:00
Laurent Destailleur
fd0e3861b0 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-15 03:34:08 +02:00
Laurent Destailleur
25ecbe3401 Debug v16 2022-06-15 03:26:27 +02:00
bagtaib
22152dd254 declaring the propreties product_tosell & product_tobuy 2022-06-15 00:50:34 +02:00
Laurent Destailleur
cef7f6b96b Merge pull request #21279 from hregis/fix_missing_entity
FIX missing field entity
2022-06-14 21:14:56 +02:00
Laurent Destailleur
5d9e09be8e Merge pull request #21278 from bb2a/FIX---php-V8-Extrafields-checkbox-empty
FIX - php V8 Extrafields checkbox empty
2022-06-14 21:14:20 +02:00
Laurent Destailleur
7971683b60 Merge pull request #21277 from badre-agtaib/scru5
FIX BUG: timestamp type is int not tms
2022-06-14 21:10:36 +02:00
Laurent Destailleur
2370ff4dfc Clean code 2022-06-14 21:00:05 +02:00
Laurent Destailleur
b67c4b39ca Typo 2022-06-14 20:57:58 +02:00
Laurent Destailleur
1aa2e7adc7 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-14 20:57:34 +02:00
Laurent Destailleur
c39c3b1cb1 Merge pull request #21271 from fboitel/fboitel-dev-scrutinizer-012
BUG FIX typo on DiscountAbsolute attribute: ref_invoice_supplier_source
2022-06-14 20:57:26 +02:00
Laurent Destailleur
55383bb032 Merge pull request #21267 from fboitel/fboitel-dev-scrutinizer-011
BUG FIX pays_code has become country_code on commonObject
2022-06-14 20:55:21 +02:00
Laurent Destailleur
4da19f6e0b Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-14 20:54:59 +02:00
Laurent Destailleur
0ab03ce787 Merge pull request #21266 from fboitel/fboitel-dev-scrutinizer-010
BUG FIX Class PaiementFourn does not contain oper property anymore
2022-06-14 20:54:46 +02:00
Laurent Destailleur
5bf304bf5c Merge pull request #21258 from Quatadah/dolicloud-qnasdami-scrutinizer-007
BUG FIX : variable name does not exist
2022-06-14 20:42:55 +02:00
Laurent Destailleur
6f0c9bdbf9 Doc 2022-06-14 20:42:44 +02:00
Laurent Destailleur
6bd89922b9 Merge pull request #21257 from atm-lena/develop_FIX_nobackoption_actionaddupdatedelete
FIX : $noback option
2022-06-14 19:57:03 +02:00
Laurent Destailleur
f8ac203a4d Doc 2022-06-14 19:55:04 +02:00
Laurent Destailleur
1fc64e66a7 Merge pull request #21256 from bb2a/FIX---Badge-ng-rec-tab
FIX - Record count badge in custom modules tab
2022-06-14 19:49:28 +02:00
Laurent Destailleur
2de5a9f31b Merge pull request #21253 from badre-agtaib/scru2
fix bug: The property thirdparty_id does not exist on ActionComm
2022-06-14 19:29:32 +02:00
Laurent Destailleur
b78db8df49 Merge pull request #21252 from badre-agtaib/scru1
assetmodel doesn't have socid but user does
2022-06-14 19:18:23 +02:00
Laurent Destailleur
34d3d2695e Merge pull request #21250 from Quatadah/dolicloud-qnasdami-scrutinizer-005
BUG FIX : increasing the scope of the variable
2022-06-14 19:01:47 +02:00
Laurent Destailleur
4eebfc5874 Merge pull request #21248 from fboitel/fboitel-dev-scrutinizer-006
BUG FIX Attribute socid doesnt exist on class Salary, so we use -1 on form
2022-06-14 18:45:43 +02:00
Laurent Destailleur
ac3d3528ff Doc 2022-06-14 18:19:02 +02:00
Regis Houssin
abcf77c80a FIX missing field entity 2022-06-14 18:16:41 +02:00
Laurent Destailleur
a5d686dcac Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-14 18:14:37 +02:00
Laurent Destailleur
86f7cbb46c FIX #21244 2022-06-14 18:14:24 +02:00
BB2A Anthony Berton
389c2e8faf FIX - php V8 Extrafields checkbox empty 2022-06-14 18:11:19 +02:00
Laurent Destailleur
9ec077cccc Merge pull request #21243 from ATM-Consulting/FIX_verifCond_strpos_on_non_string
FIX: warning / fatal when dol_eval return value is non-empty && non-string
2022-06-14 18:02:02 +02:00
Laurent Destailleur
5112647fb1 Merge pull request #21241 from fboitel/fboitel-dev-scrutinizer-004
BUG FIX Array productCombinations implicitly converted to a boolean
2022-06-14 18:00:08 +02:00
Laurent Destailleur
ff26031dc6 phpv8 2022-06-14 17:58:41 +02:00
bagtaib
3718afb16f timestamp type is int not tms 2022-06-14 17:56:55 +02:00
Laurent Destailleur
dd392143e1 Fix conf->projet conf->project 2022-06-14 17:53:17 +02:00
Laurent Destailleur
b5f77b4035 FIX #21237 2022-06-14 17:36:42 +02:00
bagtaib
267a6f908d The properties product_tosell & product_tobuy do not exist on OrderLine 2022-06-14 17:26:18 +02:00
Laurent Destailleur
6c1c8058c1 Doc 2022-06-14 16:56:03 +02:00
Laurent Destailleur
866fc4d83e Merge 2022-06-14 16:21:12 +02:00
Laurent Destailleur
d2970f7b5e Merge pull request #21230 from badre-agtaib/import2
FIX #21138
2022-06-14 16:18:25 +02:00
Laurent Destailleur
374b67368d Merge pull request #21226 from ptibogxiv/patch-21
Fix php8 compatibility
2022-06-14 16:10:08 +02:00
Laurent Destailleur
3f0f7f323d css 2022-06-14 16:05:26 +02:00
Laurent Destailleur
f8b04140e3 Merge pull request #21182 from bb2a/FIX---php-V8-order-card
FIX - php V8 order card
2022-06-14 15:41:39 +02:00
Laurent Destailleur
0aa69e534e Fix: Must add a context for cli execution of hooks 2022-06-14 15:07:01 +02:00
Faustin
2666a283c7 BUG FIX typo on ref_invoice_supplier_source 2022-06-14 14:53:14 +02:00
Laurent Destailleur
e991c614d3 Debug v16 2022-06-14 14:48:15 +02:00
Laurent Destailleur
601b830f6e Merge pull request #21270 from Dolibarr/revert-21240-15.0_FIX_MissingTimeSpentListMenu
Revert "15.0 fix missing time spent list menu"
2022-06-14 14:41:47 +02:00
Laurent Destailleur
e62abce78c Revert "15.0 fix missing time spent list menu" 2022-06-14 14:41:16 +02:00
Laurent Destailleur
e040363b81 Fix link in v16 2022-06-14 14:41:10 +02:00
Laurent Destailleur
862ca7cf04 Debug v16 2022-06-14 14:39:32 +02:00
Laurent Destailleur
507e23c154 Merge pull request #21240 from atm-lena/15.0_FIX_MissingTimeSpentListMenu
15.0 fix missing time spent list menu
2022-06-14 14:39:21 +02:00
Faustin
8cce63fae3 BUG FIX pays_code has become country_code on commonObject 2022-06-14 13:59:56 +02:00
Faustin
6ea785a4e7 BUG FIX Class PaiementFourn does not contain oper property anymore 2022-06-14 13:37:15 +02:00
fboitel
b6d77c0c58 Merge branch 'Dolibarr:develop' into fboitel-dev-scrutinizer-009 2022-06-14 12:49:24 +02:00
fboitel
4d4dca95fb Merge branch 'Dolibarr:develop' into fboitel-dev-scrutinizer-008 2022-06-14 12:46:05 +02:00
Laurent Destailleur
050cc48d7e Debug v16 2022-06-14 11:54:41 +02:00
Laurent Destailleur
293b08ab1d Debug v16 2022-06-14 11:47:56 +02:00
NASDAMI Quatadah
642810cb6d changing function name to the exisiting one 2022-06-14 11:08:28 +02:00
NASDAMI Quatadah
2c6e422791 changing function name to existing one 2022-06-14 11:06:10 +02:00
NASDAMI Quatadah
a52313bd83 changing function name to the existing one 2022-06-14 11:02:14 +02:00
Faustin
f247bda226 Attribute datee doesn't exist on class Task 2022-06-14 10:54:12 +02:00
NASDAMI Quatadah
9ea7f8a223 adding a line 2022-06-14 10:50:25 +02:00
NASDAMI Quatadah
564ea7a960 changing variable name 2022-06-14 10:48:42 +02:00
NASDAMI Quatadah
5775213844 changing variable name 2022-06-14 10:43:08 +02:00
atm-lena
82ddaeda74 FIX : $noback option 2022-06-14 10:41:32 +02:00
Laurent Destailleur
f0f24291d4 Debug v16 2022-06-14 10:40:10 +02:00
Faustin
86274072ba FetchLines does not exist on class emailcollector action but FetchLinesCommonDoes 2022-06-14 10:39:07 +02:00
Laurent Destailleur
f261846990 Fix look and feel v16 2022-06-14 10:21:10 +02:00
BB2A Anthony Berton
d1542d9b88 FIX - Record count badge in custom modules tab 2022-06-14 09:54:51 +02:00
atm-florian
4403fdc29c Missing parentheses around or (||) condition 2022-06-14 09:46:15 +02:00
Alexandre SPANGARO
56e03b9a11 PHP 8 in social contribution 2022-06-14 09:22:53 +02:00
Alexandre SPANGARO
f94b25c837 PHP 8 in social contribution 2022-06-14 09:14:56 +02:00
BB2A Anthony Berton
a757940f17 FIX - Right 2022-06-14 09:14:30 +02:00
Alexandre SPANGARO
bba32869a3 PHP 8 in social contribution 2022-06-14 09:14:30 +02:00
Alexandre SPANGARO
4cbe6fb48d PHP 8 in social contribution 2022-06-14 09:14:14 +02:00
Alexandre SPANGARO
489ed743be PHP 8 in social contribution 2022-06-14 09:14:08 +02:00
Alexandre SPANGARO
cfed286e63 PHP 8 in social contribution 2022-06-14 09:14:00 +02:00
Alexandre SPANGARO
37ff10eafc PHP 8 in social contribution 2022-06-14 09:13:53 +02:00
ptibogxiv
f2bade3188 Update dolibarr_changes.txt 2022-06-13 19:57:11 +02:00
Laurent Destailleur
985c581c01 php8 2022-06-13 18:09:06 +02:00
bagtaib
8c8ae82700 removed deprecated code 2022-06-13 17:22:00 +02:00
bagtaib
c4754d56a9 assetmodel doesn't have socid but user does 2022-06-13 16:56:37 +02:00
Laurent Destailleur
587f794fdf PHP8 2022-06-13 16:45:30 +02:00
NASDAMI Quatadah
9cfa7a719c Increasing the scope of the variable 2022-06-13 16:17:18 +02:00
Faustin
2f4a775939 wrong branch... 2022-06-13 16:11:02 +02:00
NASDAMI Quatadah
fe4dac5ecb increasing the scope of the variable 2022-06-13 16:10:45 +02:00
Faustin
ac395cace8 wrong branch... 2022-06-13 16:05:41 +02:00
Faustin
c9900666e8 Class Salary does not contain attribute salary but amount instead 2022-06-13 16:02:25 +02:00
Faustin
c058a6b75d replaced 0 by -1 for no thirrd party id... 2022-06-13 15:50:06 +02:00
Faustin
9f82a0c2d8 attribute socid doesnt exist on class Salary, so we use -1 on form 2022-06-13 15:47:44 +02:00
NASDAMI Quatadah
f5b3890721 BUG FIX: checking if array is empty with empty() function instead of comparing it to a boolean 2022-06-13 15:47:31 +02:00
fboitel
a43fb180b6 Merge branch 'Dolibarr:develop' into fboitel-dev-scrutinizer-001 2022-06-13 15:24:10 +02:00
fboitel
30b6c3b6f6 Merge branch 'Dolibarr:develop' into fboitel-dev-scrutinizer-004 2022-06-13 15:23:37 +02:00
atm-florian
6c9d177040 FIX: warning (php7) / fatal (php8) if dol_eval returns a non-empty, non-string value 2022-06-13 15:17:36 +02:00
Laurent Destailleur
a2c2ca2074 Fix phpcs 2022-06-13 15:10:35 +02:00
Laurent Destailleur
7ff9c86817 Fix phpcs 2022-06-13 15:03:45 +02:00
stickler-ci
fb0690d6ef Fixing style errors. 2022-06-13 12:38:14 +00:00
Faustin
54777f9614 array productCombinations implicitly converted to a boolean 2022-06-13 14:33:23 +02:00
atm-lena
41db1c5359 Clean code 2022-06-13 14:31:19 +02:00
atm-lena
b230497e4b FIX : missins time spent list menu 2022-06-13 14:29:18 +02:00
NASDAMI Quatadah
8729b9f2dd array instead of string in @param pfx() function 2022-06-13 13:34:18 +02:00
Laurent Destailleur
d48477ab05 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-13 13:32:27 +02:00
Laurent Destailleur
12ee8eb40b Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/core/class/commonobject.class.php
2022-06-13 13:32:11 +02:00
Laurent Destailleur
d44df3a440 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-06-13 13:27:50 +02:00
Laurent Destailleur
cedf6f8057 # WARNING: head commit changed in the meantime
Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 14.0
2022-06-13 13:26:59 +02:00
Laurent Destailleur
00d3750ab1 Fix infinite loop 2022-06-13 13:10:56 +02:00
Laurent Destailleur
9e6bbaa5b3 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-13 12:46:32 +02:00
Laurent Destailleur
2d9a9ddd22 Merge pull request #21235 from Silocan/payment-duplicate-bank-transaction
fix: remove duplication bank transaction
2022-06-13 12:42:42 +02:00
Nicolas F
5decd00149 fix: remove duplication bank transaction
do not duplicate previous bank transaction when value is 0
2022-06-13 10:40:41 +00:00
Laurent Destailleur
071b0a3192 Merge pull request #21231 from aspangaro/16b4-php8_1
FIX PHP8 on bank
2022-06-13 12:39:38 +02:00
Faustin
09f47cfd9d FIX Srutinizer 'The property socid does not seem to exist on RecruitmentJobPosition' 2022-06-13 11:36:46 +02:00
Laurent Destailleur
e9d5ba5de3 Debug v16 2022-06-13 10:58:21 +02:00
Laurent Destailleur
2b5b9957c3 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-13 10:44:49 +02:00
Laurent Destailleur
bc11cf62f8 FIX #hunterdev2acfc8fe-247c-4f88-aeaa-042b6b8690a0 2022-06-13 10:44:20 +02:00
Alexandre SPANGARO
10ff061672 Fix PHP8 on bank 2022-06-13 04:38:16 +02:00
Alexandre SPANGARO
3032de261d Fix PHP8 on bank 2022-06-13 04:37:56 +02:00
Alexandre SPANGARO
25c2fb0528 Fix PHP8 on bank 2022-06-13 04:37:41 +02:00
Alexandre SPANGARO
9c8f7bd174 Fix PHP8 on bank 2022-06-13 03:56:46 +02:00
Alexandre SPANGARO
74e74e2377 Fix PHP8 on bank 2022-06-13 03:53:40 +02:00
Alexandre SPANGARO
3d5227918d Fix PHP8 on bank 2022-06-13 03:53:35 +02:00
Alexandre SPANGARO
909bb1469d Fix PHP 8.1.7 2022-06-13 03:42:12 +02:00
bagtaib
683cc5594f FIX #21138 2022-06-13 01:58:48 +02:00
Alexandre SPANGARO
e2c9f62796 Fix PHP 8.1.7 2022-06-12 22:58:20 +02:00
Alexandre SPANGARO
448027f8ed Fix PHP 8.1.7 2022-06-12 22:54:15 +02:00
Alexandre SPANGARO
05cad50f0e Merge branch '16b2' of https://github.com/aspangaro/dolibarr into 16b2 2022-06-12 22:49:20 +02:00
Alexandre SPANGARO
7cd6df4745 Fix PHP 8.1.7 2022-06-12 22:49:05 +02:00
stickler-ci
5f298f7f69 Fixing style errors. 2022-06-12 20:39:25 +00:00
Alexandre SPANGARO
70e8210339 Fix PHP 8.1.7 2022-06-12 22:33:58 +02:00
Alexandre SPANGARO
c96b6b0bc7 Fix PHP 8.1.7 2022-06-12 22:30:24 +02:00
Alexandre SPANGARO
4f27d7e760 Fix PHP 8.1.7 2022-06-12 22:26:16 +02:00
Alexandre SPANGARO
274dd343f7 Fix PHP 8.1.7 2022-06-12 22:26:12 +02:00
Alexandre SPANGARO
2865b72b65 Fix PHP 8.1.7 2022-06-12 21:56:15 +02:00
Alexandre SPANGARO
ae55ff6a43 Fix PHP 8.1.7 2022-06-12 21:50:09 +02:00
Alexandre SPANGARO
917574aa61 Fix PHP 8.1.7 2022-06-12 21:34:47 +02:00
ptibogxiv
55afe1939d Fix php8 compatibility 2022-06-12 21:33:08 +02:00
Alexandre SPANGARO
7e3a6116bf Remove patch - Error 2022-06-12 21:30:12 +02:00
Laurent Destailleur
0020b8782f Merge pull request #21222 from ptibogxiv/patch-19
Fix php8 compatibility
2022-06-12 21:00:41 +02:00
ptibogxiv
fe557ce9db Update bank.php 2022-06-12 20:41:27 +02:00
Laurent Destailleur
e0066e9d2d Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-12 20:33:18 +02:00
Laurent Destailleur
89d135288b Doc 2022-06-12 20:33:10 +02:00
Laurent Destailleur
9aa48df111 Merge pull request #19566 from vincentjdc/customer-invoices-import
Adds import for customer invoices and invoices lines
2022-06-12 20:32:43 +02:00
Laurent Destailleur
d18d570ecb Merge pull request #21141 from al-misbah-informatique/develop
NEW: Send Notification Without File when E-mail Template doesn't attach file
2022-06-12 19:43:57 +02:00
Laurent Destailleur
a48b032dd8 Merge pull request #21200 from leninrivas/patch-5
Save usermodid to updatePercent
2022-06-12 19:09:45 +02:00
Laurent Destailleur
58ac0f61a5 Merge pull request #21161 from altairis-melina/freezone
NEW : TAKEPOS - Use constant TAKEPOS_CHANGE_PRICE_HT for freezone
2022-06-12 19:07:28 +02:00
Laurent Destailleur
fd92cfac07 Merge pull request #21223 from fboitel/fix#20444
Fix#20444
2022-06-12 19:02:55 +02:00
Laurent Destailleur
6cde56395c Merge pull request #21214 from ptibogxiv/patch-12
Fix php 8 compatibility
2022-06-12 18:56:04 +02:00
Laurent Destailleur
b2bc6059df Fix test 2022-06-12 18:55:16 +02:00
Laurent Destailleur
b4e3279b29 Merge pull request #21215 from ptibogxiv/patch-13
Fix php 8 compatibility
2022-06-12 18:53:08 +02:00
Laurent Destailleur
f0d0bf6442 Update api_products.class.php 2022-06-12 18:52:43 +02:00
Laurent Destailleur
d500180da5 Merge pull request #21216 from ptibogxiv/patch-14
Fix php 8 compatibility
2022-06-12 18:51:48 +02:00
Laurent Destailleur
241ed090e3 Merge pull request #21219 from ptibogxiv/patch-16
Fix php 8 compatibility
2022-06-12 18:50:59 +02:00
Laurent Destailleur
74c4cb618d Update skillrank.class.php 2022-06-12 18:49:14 +02:00
Laurent Destailleur
bea431cbb9 Update skillrank.class.php 2022-06-12 18:48:47 +02:00
Laurent Destailleur
d53188a346 Merge pull request #21220 from ptibogxiv/patch-17
Fix php 8 compatibility
2022-06-12 18:45:58 +02:00
Laurent Destailleur
5480cec9ba Merge pull request #21224 from ptibogxiv/patch-20
Fix php 8 compatibility
2022-06-12 18:44:54 +02:00
Laurent Destailleur
2704f9c10f Merge pull request #21221 from ptibogxiv/patch-18
Fix php8 compatibility
2022-06-12 18:40:41 +02:00
Laurent Destailleur
19a8fd0b73 Update card.php 2022-06-12 18:40:21 +02:00
Laurent Destailleur
d77ec3f1a6 Merge pull request #21218 from ptibogxiv/patch-15
Fix php8 compatibility
2022-06-12 18:38:57 +02:00
Laurent Destailleur
9202612cc0 Merge pull request #21168 from defrance/patch-203
datee and dateo not filled
2022-06-12 18:37:59 +02:00
ptibogxiv
3e6be4c700 Fix php 8 compatibility 2022-06-12 15:08:19 +02:00
fboitel
7cc9dbe5d4 Merge branch 'Dolibarr:15.0' into 15.0 2022-06-12 14:48:39 +02:00
ptibogxiv
e82c01d24e Fix php8 compatibility 2022-06-12 14:48:14 +02:00
ptibogxiv
7d35e94fc5 Fix php8 compatibility 2022-06-12 14:41:06 +02:00
ptibogxiv
e02f194c01 Fix php 8 compatibility 2022-06-12 14:37:36 +02:00
ptibogxiv
66b792704a Fix php 8 compatibility 2022-06-12 14:35:48 +02:00
ptibogxiv
c486e60d53 Fix php8 compatibility 2022-06-12 14:27:11 +02:00
ptibogxiv
295f5eb3ea Fix php 8 compatibilty 2022-06-12 14:23:24 +02:00
ptibogxiv
727fb63833 Fix php 8 compatibility 2022-06-12 14:21:14 +02:00
Lenin Rivas
503a5cdc82 Add user who modified the percent 2022-06-12 06:33:42 -05:00
ptibogxiv
562e9998fd Fix php 8 compatibility 2022-06-12 13:22:55 +02:00
Laurent Destailleur
00446a10d7 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-12 12:42:01 +02:00
Laurent Destailleur
426c1635c4 Clean code 2022-06-12 12:41:15 +02:00
Laurent Destailleur
fe93110294 Merge pull request #21176 from frederic34/patch-1
add var_dump check
2022-06-12 12:26:33 +02:00
Laurent Destailleur
88fc3a4d21 Merge pull request #21186 from Quatadah/fix18704
FIX #18704
2022-06-12 12:25:34 +02:00
Laurent Destailleur
fe3d893fd7 Merge pull request #21187 from backstageel/develop
Adding language Portuguese Mozambque
2022-06-12 12:07:23 +02:00
Laurent Destailleur
a6c637efd4 Merge pull request #21188 from defrance/patch-205
formail php V8 warning
2022-06-12 12:06:57 +02:00
Laurent Destailleur
f052dd4ae6 Merge pull request #21190 from bb2a/FIX---php-V8-extrafields
FIX - Extrafields checkbox PHP error
2022-06-12 12:04:19 +02:00
Laurent Destailleur
a16458f751 Merge pull request #21191 from altairis-noe/md_menu_pic
don’t discard all menu pics
2022-06-12 12:03:55 +02:00
Laurent Destailleur
8d2ae444ad Merge pull request #21193 from aspangaro/14p35
FIX #20527 Accountancy - Unbalanced entry proposed when an employee are declared on a social contribution
2022-06-12 11:57:50 +02:00
Laurent Destailleur
c2fe5de852 Merge pull request #21195 from frederic34/useismodenabled
use isModEnabled function
2022-06-12 11:56:31 +02:00
Laurent Destailleur
89e3a344ac Merge pull request #21201 from fappels/15_reception_list_search_date
Fix reception list for search date extrafield
2022-06-12 11:54:19 +02:00
Laurent Destailleur
3a1c8206f1 Merge pull request #21203 from fboitel/fix#21093
FIX#21093
2022-06-12 11:48:14 +02:00
Laurent Destailleur
04d625cccf Merge pull request #21213 from rycks/15_add_invoice_template_in_product_used_list
#21212 : add template invoices stats on products card
2022-06-12 11:46:17 +02:00
Laurent Destailleur
559ec051ab Fix scrutinizer 2022-06-12 11:43:29 +02:00
Eric Seigne
c23b5947b3 #21212 : add template invoices stats on products card 2022-06-12 11:05:12 +02:00
Alexandre SPANGARO
6309dbe99b Fix PHP 8.1.7 2022-06-12 07:38:49 +02:00
Alexandre SPANGARO
33ecfddf83 Fix PHP 8.1.7 - $out not defined 2022-06-12 07:36:12 +02:00
Alexandre SPANGARO
02f21fae78 Fix PHP 8.1.7 - $newcardbutton not defined 2022-06-12 07:33:28 +02:00
Alexandre SPANGARO
590cb20b41 Fix PHP 8.1.7 - $search_country_id not defined 2022-06-12 07:30:09 +02:00
Alexandre SPANGARO
7967ab402a Fix PHP 8.1.7 2022-06-12 07:19:08 +02:00
Alexandre SPANGARO
4620224b65 Fix PHP 8.1.7 2022-06-12 07:01:17 +02:00
Laurent Destailleur
a62b5a10fe Doygen 2022-06-11 22:01:10 +02:00
Laurent Destailleur
ca2bcfa594 Fix php8 2022-06-11 21:56:25 +02:00
Laurent Destailleur
2387e2f990 Fix token 2022-06-11 21:50:30 +02:00
Laurent Destailleur
aba122a52b Debug v16 2022-06-11 21:47:00 +02:00
Frédéric France
3fdbce7a31 use isModEnabled function 2022-06-11 09:46:28 +02:00
Faustin
71ef074987 FIX#21093 2022-06-11 00:41:15 +02:00
Faustin
ef959ecddd FIX#21093 2022-06-11 00:18:38 +02:00
Frédéric France
51462a276a Merge remote-tracking branch 'upstream/develop' into useismodenabled 2022-06-10 17:49:44 +02:00
Laurent Destailleur
d039d35732 FIX php8 compatibility 2022-06-10 16:46:09 +02:00
Francis Appels
eb7fcb2f9b Fix reception list for search date extrafield 2022-06-10 13:24:39 +02:00
Lenin Rivas
b57a9d5896 Save usermodid to updatePercent 2022-06-10 05:58:01 -05:00
Frédéric FRANCE
38b18a68d7 Merge branch 'develop' into useismodenabled 2022-06-10 10:07:41 +02:00
Laurent Destailleur
32d54ee44d Fix permission 2022-06-10 09:43:19 +02:00
Laurent Destailleur
4040f65a33 Debug v16 2022-06-10 09:17:48 +02:00
Frédéric France
5fdd577230 use isModEnabled function 2022-06-10 08:16:33 +02:00
BENKE Charlene
b176d1a59d not my best day 2022-06-09 23:17:29 +02:00
Frédéric FRANCE
32b58789cd re enable limited test 2022-06-09 23:14:36 +02:00
Frédéric FRANCE
59b24aa7d8 Update .travis.yml 2022-06-09 23:06:03 +02:00
Frédéric France
e060e31e5b use isModEnabled function 2022-06-09 22:54:22 +02:00
Frédéric France
0b8179d7ef use isModEnabled function 2022-06-09 22:49:48 +02:00
Frédéric France
5dcfc28913 use isModEnabled function 2022-06-09 22:41:59 +02:00
Frédéric France
400afc937f use isModEnabled function 2022-06-09 22:16:48 +02:00
Frédéric France
3fe46c8028 use isModEnabled function 2022-06-09 22:10:51 +02:00
Frédéric France
e42cf5f3e8 use isModEnabled function 2022-06-09 21:51:48 +02:00
Frédéric France
588046d825 use isModEnabled function 2022-06-09 21:33:39 +02:00
Sylvain Legrand
216cb6b6ea Merge branch '14.0' into Fix_Supplier_deposit_can_not_be_used_to_pay_supplier_invoice 2022-06-09 20:14:11 +02:00
Quatadah Nasdami
b63b7b242d Delete .phpunit.result.cache 2022-06-09 19:32:38 +02:00
Laurent Destailleur
ea0589cbc3 Debug the new import tool 2022-06-09 18:10:07 +02:00
Laurent Destailleur
dbaae5b1e3 Fix autodetect csv separator 2022-06-09 17:44:32 +02:00
Alexandre SPANGARO
82d1cb4682 FIX #20527 Accountancy Unbalanced entry proposed when an employee are declared on social contribution 2022-06-09 17:30:16 +02:00
Noé Cendrier
d786e16d0c don’t discard all menu pics 2022-06-09 16:10:02 +02:00
BB2A Anthony Berton
293141e578 checkbox PHP error 2022-06-09 15:52:47 +02:00
stickler-ci
de88a39bb6 Fixing style errors. 2022-06-09 13:25:44 +00:00
BENKE Charlene
39d29d4cf3 Update card_presend.tpl.php 2022-06-09 15:20:00 +02:00
BENKE Charlene
d335bb22a2 Update html.formmail.class.php 2022-06-09 15:13:29 +02:00
BENKE Charlene
429f9c027e php V8 warning
and little optimising code
2022-06-09 15:04:33 +02:00
Elísio Leonardo
bbbfc05d13 Merge branch 'Dolibarr:develop' into develop 2022-06-09 14:54:24 +02:00
Elisio Leonardo
fb9b3828ef Adding new language code for Portuguese Mozambique 2022-06-09 14:51:37 +02:00
NASDAMI Quatadah
793e95d88c fixing bug (colspan should be int) 2022-06-09 14:04:32 +02:00
NASDAMI Quatadah
53bf6db23f commenting a line => resolves the bug 2022-06-09 13:46:04 +02:00
BB2A Anthony Berton
e438bcb70a FIX - php V8 order card 2022-06-09 13:35:50 +02:00
NASDAMI Quatadah
3d0a8dd595 running phpcs one last time 2022-06-09 13:29:49 +02:00
NASDAMI Quatadah
ef8b041ac6 resolving phpcs errors 2022-06-09 13:29:02 +02:00
stickler-ci
7b3fe948a0 Fixing style errors. 2022-06-09 11:20:59 +00:00
NASDAMI Quatadah
e729d76833 removing some spaces 2022-06-09 13:19:26 +02:00
NASDAMI Quatadah
ea720e25e5 Fixing bug 20500 2022-06-09 13:17:32 +02:00
NASDAMI Quatadah
7f86c53b3e fixing bug 20500 2022-06-09 13:15:40 +02:00
NASDAMI Quatadah
1dcc701251 Fixing bug 20500 2022-06-09 13:10:46 +02:00
Laurent Destailleur
1deef98f07 Fix length of field 2022-06-09 13:08:12 +02:00
Laurent Destailleur
4f3806ed70 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-09 13:03:21 +02:00
Frédéric FRANCE
89f7781733 Update .travis.yml 2022-06-09 12:51:33 +02:00
Laurent Destailleur
2ad7c0df74 Merge pull request #21178 from Quatadah/fix19860
FIX  #19860
2022-06-09 12:51:19 +02:00
Laurent Destailleur
648f4b1d8e Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-09 12:51:02 +02:00
Frédéric FRANCE
cae9ca1bcf Update .travis.yml 2022-06-09 12:50:35 +02:00
Laurent Destailleur
62d2084237 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-09 12:49:49 +02:00
Laurent Destailleur
974a1c2c6d Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-06-09 12:48:51 +02:00
Abdelaziz MISBAH
14e7c5454e FIX #21141 Update condition to check for attached file to E-mail Template
Update condition to check for attached file to E-ail Template, initial Commit doesn't check for  if null (may generate fatal error depending on context), now we check if is an object, before checking if we join files.
2022-06-09 11:47:34 +01:00
Laurent Destailleur
a4ca81d4ce FIX #21174 2022-06-09 12:46:13 +02:00
Laurent Destailleur
a0ad3552c1 Merge pull request #21177 from frederic34/patch-4
avoid extra space after idprof
2022-06-09 12:17:05 +02:00
stickler-ci
fb86cea3fc Fixing style errors. 2022-06-09 10:09:49 +00:00
Laurent Destailleur
3bb8e9cdda Debug v16 2022-06-09 12:07:35 +02:00
NASDAMI Quatadah
8a48cd5989 Fixing bug 2022-06-09 12:05:23 +02:00
Frédéric FRANCE
70af9b548f avoid extra space after idprof 2022-06-09 12:04:35 +02:00
Frédéric FRANCE
33f10c3aeb Update .travis.yml 2022-06-09 11:59:19 +02:00
Frédéric FRANCE
003713953c Update .travis.yml 2022-06-09 11:17:21 +02:00
Laurent Destailleur
0104f00a7a Debug v16 2022-06-09 11:12:45 +02:00
Frédéric FRANCE
89d0a57eab add var_dump check 2022-06-09 11:12:17 +02:00
Laurent Destailleur
7a7d296533 Fix fatal error on canvas 2022-06-09 10:49:24 +02:00
Alexandre SPANGARO
61d5e89677 Look & Feel - Align amount to right on card 2022-06-09 04:01:02 +02:00
Laurent Destailleur
33c2684ce2 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-09 03:25:27 +02:00
Laurent Destailleur
2b9dbe4c98 Doc 2022-06-09 03:21:31 +02:00
Laurent Destailleur
99642b1b8b Merge pull request #21169 from BoFFire/develop
Fixing algerian provinces names
2022-06-09 03:16:30 +02:00
Laurent Destailleur
f5c17f8ac3 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-09 03:13:38 +02:00
Laurent Destailleur
aeb4287d25 Merge pull request #21143 from fboitel/14.0
FIX #20696
2022-06-09 03:11:23 +02:00
Laurent Destailleur
1ae708ae9a Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-09 03:10:37 +02:00
Laurent Destailleur
8280447f3e # WARNING: head commit changed in the meantime
Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
2022-06-09 03:09:37 +02:00
Laurent Destailleur
900c71b5d6 Fix can add an empty line in tmp edit mode of transation 2022-06-09 03:07:11 +02:00
Laurent Destailleur
e10d89dd36 Fix regression 2022-06-09 03:00:51 +02:00
Laurent Destailleur
9c71ae5f0c Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-09 02:59:10 +02:00
Laurent Destailleur
5fec04e3ae Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/societe/class/societe.class.php
2022-06-09 02:58:44 +02:00
bagtaib
7a20b3dcec FIX #21140
Conflicts:
	htdocs/societe/class/societe.class.php
2022-06-09 02:52:54 +02:00
Laurent Destailleur
9780c45cc5 Merge pull request #21167 from badre-agtaib/dev1
FIX #21140
2022-06-09 02:50:16 +02:00
Laurent Destailleur
98ec208449 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-09 02:48:50 +02:00
Laurent Destailleur
74104285db Debug v16 2022-06-09 02:48:32 +02:00
Laurent Destailleur
bbf9f1bc29 Merge pull request #21170 from fappels/15_fix_reception_stock_move
FIX Stock movements on reception.
2022-06-09 02:43:05 +02:00
Laurent Destailleur
b5a1ded537 Merge branch 'develop' into 15_fix_reception_stock_move 2022-06-09 02:41:51 +02:00
Laurent Destailleur
503d1a04bf Merge pull request #21171 from SylvainLegrand/Fix_Supplier_deposit_can_not_be_used_to_pay_supplier_invoice
Fixed an error when a supplier deposit is used to pay the supplier invoice
2022-06-09 02:17:52 +02:00
Laurent Destailleur
f0c8694119 Merge branch 'develop' into Fix_Supplier_deposit_can_not_be_used_to_pay_supplier_invoice 2022-06-09 02:17:43 +02:00
Laurent Destailleur
604855bbc1 Debug v16 2022-06-09 02:05:20 +02:00
Sylvain Legrand
ab3f19dd59 Fix error when supplier deposit are used to pay supplier invoice 2022-06-08 22:07:48 +02:00
Laurent Destailleur
97f50ba364 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-08 21:20:21 +02:00
Laurent Destailleur
1838baaa5c Debug v16 2022-06-08 21:20:12 +02:00
Laurent Destailleur
54019b7d76 Debug v16 2022-06-08 21:10:14 +02:00
Francis Appels
e1f4d99aa6 Debug #18770 edit buy price for WAP update. 2022-06-08 18:27:47 +02:00
Laurent Destailleur
41683b9025 Typo 2022-06-08 18:09:21 +02:00
Laurent Destailleur
36e5e8850e typo 2022-06-08 17:43:33 +02:00
Francis Appels
48142c69bd Fix reception re-open with stock rule enabled. 2022-06-08 17:29:40 +02:00
Francis Appels
636d594301 Fix reception set-draft with stock rule enabled. 2022-06-08 17:29:22 +02:00
Laurent Destailleur
1f26dee554 Fix deprecated functions 2022-06-08 17:19:12 +02:00
ButterflyOfFire
6f40c002b7 Fixing algerian provinces names
Fixing the names of the algerian provinces by removing the "Wilaya de xxx" and adding 10 more new provinces as Algeria has now 58 provinces instead of 48. And more fixes to come.
2022-06-08 16:13:52 +01:00
BENKE Charlene
4d327dcc18 datee and dateo not filled
now we user date_end and date_start
2022-06-08 17:00:04 +02:00
Faustin
f0a8765ee6 FIX #20696 2022-06-08 16:05:44 +02:00
bagtaib
cde67b0d65 FIX #21140 2022-06-08 15:35:07 +02:00
Laurent Destailleur
604463c9a4 Merge pull request #21142 from FHenry/dev_21139
fix: #21139
2022-06-08 15:09:36 +02:00
Laurent Destailleur
f77ffd4a18 Merge pull request #21144 from bb2a/FIX---Invoices-index-page
FIX - Invoices index page Supplier enable
2022-06-08 15:05:08 +02:00
Laurent Destailleur
8dc908a16a Merge pull request #21147 from bb2a/FIX---php-V8-warning-actions-addupdatedelete
FIX - php V8 warning actions addupdatedelete
2022-06-08 15:04:42 +02:00
Laurent Destailleur
79d3a35789 Merge pull request #21146 from FHenry/15_fix_filter_status_peruser
fix: filter status(Todo,Done,Imcomplete,...) do not work on peruser.php actioncomm view
2022-06-08 15:04:01 +02:00
Laurent Destailleur
8688ba23b4 Merge pull request #21145 from bb2a/FIX---php-V8-warning-class-html-form
FIX - php V8 warning class html form
2022-06-08 15:02:58 +02:00
Laurent Destailleur
fca92131b2 Merge pull request #21148 from ibuiv/15.0
Fix: rollback on success create_individual
2022-06-08 15:02:27 +02:00
Laurent Destailleur
499d1d2994 Merge pull request #21149 from bb2a/FIX---php-V8-lib-pdf
FIX - php V8 lib pdf
2022-06-08 15:01:54 +02:00
Laurent Destailleur
871077d426 Merge pull request #21152 from daraelmin/patch-2
Fix #21150 - Regression Can't insert manual lines
2022-06-08 15:01:08 +02:00
Laurent Destailleur
192f4a1149 Merge pull request #21151 from elcf/add-us-gaap
Added US GAAP basic chart of accounts
2022-06-08 14:59:51 +02:00
Laurent Destailleur
6ce1451214 Merge pull request #21154 from defrance/patch-202
php V8 warning
2022-06-08 14:57:26 +02:00
Laurent Destailleur
9142f0fb4d Merge pull request #21159 from jyhere/jyhere-patch-2
Add sql queries duration to debugbar
2022-06-08 14:56:49 +02:00
Laurent Destailleur
b23c7eb672 Merge pull request #21163 from Hystepik/develop#1
Fix : add of socialmedias in contact update
2022-06-08 14:56:10 +02:00
Laurent Destailleur
a70bb9e9b1 Merge pull request #21164 from fappels/15_fix_customerprice_warning
FIX: Customer price non numeric warning when 0 vat.
2022-06-08 14:55:45 +02:00
lmarcouiller
c257f32559 add of names in update 2022-06-08 13:35:32 +02:00
BENKE Charlene
5aef26d8cc Update project.lib.php 2022-06-08 13:11:28 +02:00
Francis Appels
c9049a9c85 Fix non numeric warning 2022-06-08 12:38:50 +02:00
lmarcouiller
c368ff69df New : add of socialmedias in contact update 2022-06-08 12:36:55 +02:00
jyhere
777de32736 Add sql queries duration to debugbar 2022-06-08 11:20:16 +02:00
fboitel
eb898eb526 Merge branch 'Dolibarr:15.0' into 15.0 2022-06-08 10:45:06 +02:00
BENKE Charlene
dc2979ad4d php V8 warning 2022-06-08 09:02:24 +02:00
Laurent Destailleur
ec52502089 CSS Makes clear you have to click OK. 2022-06-08 02:55:45 +02:00
daraelmin
0641b66118 Clean code 2022-06-08 01:39:53 +02:00
daraelmin
f872585ea2 Fix #21150 - Regression Can't insert manual lines
Fix #21150 - Regression Can not insert manual lines for automatically created transactions to the general ledger, this was possible before.
2022-06-08 01:02:02 +02:00
Esteban L. Castro
1fa9a8c9d7 Added US-GAAP-BASIC 2022-06-07 17:23:31 -04:00
Esteban L. Castro
d85d3fe378 Added US-GAAP-Basic COA
COA is based on https://www.ifrs-gaap.com/us-gaap-chart-accounts
2022-06-07 17:18:01 -04:00
Laurent Destailleur
7ee4cccc84 FIX ODT tags for subobjects {object_subobject_yyy} was not working. 2022-06-07 19:59:33 +02:00
Laurent Destailleur
8303347ab8 FIX label and get_substitutionarray_each_var_object on ODT generation 2022-06-07 19:27:43 +02:00
Laurent Destailleur
c0ae41e2c3 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-07 19:08:56 +02:00
Laurent Destailleur
648a8f5c18 FIX xml file for company with special chars in name 2022-06-07 18:58:53 +02:00
BB2A Anthony Berton
054eefb1f7 FIX - php V8 lib pdf 2022-06-07 18:49:29 +02:00
antonin_tdj
48fdfe26fa Fix: rollback on success create_individual
Fix:
Societe::create_individual rollback on success
2022-06-07 18:44:00 +02:00
BB2A Anthony Berton
75e05ac412 FIX - php V8 warning actions addupdatedelete 2022-06-07 18:25:24 +02:00
Laurent Destailleur
32c6daee2f CSS 2022-06-07 18:18:01 +02:00
Florian HENRY
70892c18c5 fix: filter status do not work on peruser action comm 2022-06-07 18:14:15 +02:00
Florian HENRY
0146be0d15 fix: filter status do not work on peruser action comm 2022-06-07 18:13:21 +02:00
Laurent Destailleur
0033a1a02a CSS 2022-06-07 17:54:51 +02:00
melina
1cf8b3421f add constant for freezone 2022-06-07 17:46:17 +02:00
BB2A Anthony Berton
03f8d49c94 FIX - php V8 warning class html form 2022-06-07 17:25:33 +02:00
BB2A Anthony Berton
3fb2c6eaa1 FIX - Invoices index page Supplier enable 2022-06-07 16:55:57 +02:00
Faustin
b6724f6061 FIX #20696 2022-06-07 16:43:49 +02:00
Laurent Destailleur
a9440c934d FIX #yogosha10825 2022-06-07 16:05:01 +02:00
Laurent Destailleur
20ec91308c Fix chart of account for at 2022-06-07 15:11:41 +02:00
Florian HENRY
0bff392de8 fix: 21139 2022-06-07 14:40:21 +02:00
Florian HENRY
85f95e86b7 fix: 21139 2022-06-07 14:39:19 +02:00
Florian HENRY
d4bbc72b1b fix: 21139 2022-06-07 14:31:22 +02:00
Abdelaziz MISBAH
a29aa48100 Send Notification Without File when E-mail Template does'nt attach file
When we create an Email Template that does'nt require main file to be attached, we still send notification with an attached file, eg: when we send a notification when validating proposal it send proposal with attached file with mention NOT VALIDATED.
I added OR condition on checking pdf_path.
2022-06-07 13:13:08 +01:00
Laurent Destailleur
78af5b9be7 Merge pull request #21108 from FHenry/15_fix_actioncomm_code_not_updated
fix: actioncomm.code have to be updated with correct c_actioncomm code (like in create)
2022-06-07 11:38:41 +02:00
Faustin
9731f0658a FIX #20444 2022-06-07 11:23:50 +02:00
Laurent Destailleur
661c414703 Merge pull request #19426 from FHenry/dev_fix_ticket_user_assign
NEW: make unicity for user assigned(responsible) on ticket from anyways
2022-06-07 11:22:45 +02:00
Laurent Destailleur
b9e376fb1d Disable option not complete 2022-06-07 10:58:19 +02:00
Laurent Destailleur
93ba5db6d3 Merge pull request #19940 from bb2a/add_option_pdf_global_thirdparty_alias
NEW - Add option pdf global thirdparty alias
2022-06-07 10:43:18 +02:00
Faustin
cd17fec00e FIX #20444 2022-06-07 10:40:44 +02:00
Laurent Destailleur
04f78583af Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-07 10:04:26 +02:00
Laurent Destailleur
efb6a8a791 Merge pull request #20999 from atm-jpb/NEW/ExpenseReport_ik_add
NEW : add coefficient on unit  ht   line  in expenseReport card
2022-06-07 10:02:12 +02:00
Laurent Destailleur
07f4ebf8b8 Merge pull request #21125 from bb2a/FIX---php-V8-warning-class-extrafields
FIX - php V8 warning class extrafields
2022-06-07 09:58:50 +02:00
Laurent Destailleur
33d9c164c2 Update extrafields.class.php 2022-06-07 09:57:15 +02:00
Laurent Destailleur
2b8de78572 Merge pull request #21126 from bb2a/FIX---php-V8-warning-class-commonobject-extrafields
FIX - php V8 warning class commonobject extrafields
2022-06-07 09:53:52 +02:00
Laurent Destailleur
cfcd46ecaa Merge pull request #21124 from bb2a/FIX---php-V8-warning-lib-usergroups-topmenu-select
FIX - php V8 warning lib signature
2022-06-07 09:53:18 +02:00
Laurent Destailleur
3e859eb5e6 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-07 09:51:32 +02:00
Laurent Destailleur
418bd481f3 FIX #21128 2022-06-07 09:51:19 +02:00
Laurent Destailleur
abd84a1b00 Merge pull request #21135 from andreubisquerra/develop
TakePOS compatible without the banks module
2022-06-07 09:29:22 +02:00
jpb
bc925d8fb4 change id to class name on input qty 2022-06-06 18:03:41 +02:00
andreubisquerra
9343e1d503 TakePOS without bank accounts index.php 2022-06-06 06:46:42 +02:00
andreubisquerra
a53e3ca3f3 TakePOS without bank accounts invoice.php 2022-06-06 06:45:25 +02:00
andreubisquerra
1f09151a25 TakePOS without bank account pay.php 2022-06-06 06:44:15 +02:00
stickler-ci
ccfc730786 Fixing style errors. 2022-06-05 12:56:26 +00:00
Faustin
88cf8187b8 FIX #20444 2022-06-05 14:32:21 +02:00
Laurent Destailleur
fc0f624445 Debug v16 2022-06-04 02:08:08 +02:00
Laurent Destailleur
0f7b84cfae Fix phpcs 2022-06-03 18:20:02 +02:00
Laurent Destailleur
bed0cf8339 Fix phpcs 2022-06-03 18:12:58 +02:00
BB2A Anthony Berton
d8e6ce1ae8 FIX - php V8 warning class commonobject extrafields 2022-06-03 16:06:25 +02:00
BB2A Anthony Berton
fc26196a7f FIX - php V8 warning class extrafields 2022-06-03 15:35:20 +02:00
Laurent Destailleur
d85e4e1bce Fix warning 2022-06-03 15:25:38 +02:00
BB2A Anthony Berton
59cd2fea98 FIX - php V8 warning lib usergroups topmenu select 2022-06-03 15:20:17 +02:00
Laurent Destailleur
a8edff5167 Sync transifex 2022-06-03 14:46:00 +02:00
Laurent Destailleur
7f3826609a Fix var not defined 2022-06-03 14:34:38 +02:00
Laurent Destailleur
87230795cc Fix warning 2022-06-03 14:23:37 +02:00
Laurent Destailleur
4215237f64 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-03 14:09:00 +02:00
Laurent Destailleur
424d3e60da Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-03 14:08:50 +02:00
Laurent Destailleur
309eccc426 Fix phpcs 2022-06-03 14:08:04 +02:00
Laurent Destailleur
20b5eb15d3 Fix missing position 2022-06-03 14:02:41 +02:00
Laurent Destailleur
f475991b20 Typo 2022-06-03 13:56:28 +02:00
Laurent Destailleur
a9ea1c8fbb More logs 2022-06-03 13:51:47 +02:00
Laurent Destailleur
a402730355 Log 2022-06-03 13:30:31 +02:00
Laurent Destailleur
4cdaba0166 More logs 2022-06-03 12:59:53 +02:00
Laurent Destailleur
166082d3cb Debug v16 2022-06-03 12:53:55 +02:00
Laurent Destailleur
3d80cb9b66 Debug emailcollector 2022-06-03 12:29:47 +02:00
Laurent Destailleur
afd9787e99 Help debug cron 2022-06-03 11:52:39 +02:00
Laurent Destailleur
41caf67ecf Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-03 11:34:29 +02:00
Laurent Destailleur
af6a025caa css 2022-06-03 11:34:19 +02:00
Laurent Destailleur
a19b5aafd8 Merge pull request #21114 from rycks/15_fix_collectormail
emailcollector.class.php : can't put a string in an array
2022-06-03 11:33:28 +02:00
Laurent Destailleur
303b6d6e9e Fix object not defined 2022-06-03 11:23:10 +02:00
Laurent Destailleur
b3d5258596 Merge pull request #21115 from rycks/15_fix_collectormail_hookmanager
emailcollector : hookmanager is null
2022-06-03 11:15:18 +02:00
Laurent Destailleur
be0123f8e1 Merge pull request #21119 from rycks/15_fix_emailcollector_scheduler
fix #21118: undefined function getAttachments
2022-06-03 11:14:00 +02:00
Laurent Destailleur
b69cdb266a Merge pull request #21120 from SylvainLegrand/fix_change_payment_term_error
Fix error on change payment term
2022-06-03 11:13:38 +02:00
Laurent Destailleur
b2e6f9fc68 Update commonobject.class.php 2022-06-03 11:12:55 +02:00
Laurent Destailleur
41ce28996c PHP 8.1 #21121 2022-06-03 11:10:08 +02:00
Sylvain Legrand
2fe29627e6 Fix error on change payment term 2022-06-03 08:59:19 +02:00
Laurent Destailleur
be729ab5f3 Debug v16 2022-06-03 03:10:31 +02:00
Laurent Destailleur
500a81dda1 Clean database 2022-06-03 02:56:25 +02:00
Laurent Destailleur
cd041c9ea1 Clean code 2022-06-03 02:41:00 +02:00
Laurent Destailleur
bfd5ed3281 Trans 2022-06-03 02:31:09 +02:00
Laurent Destailleur
c9ef83d9a7 Trans 2022-06-03 02:29:30 +02:00
Laurent Destailleur
e5b8c00618 Fix look and feel v16 2022-06-03 02:02:49 +02:00
Laurent Destailleur
91a1f97029 Cronjobs ready for future. 2022-06-03 01:42:10 +02:00
Eric Seigne
d950533bdb fix #21118: undefined function getAttachments 2022-06-02 23:55:58 +02:00
Eric Seigne
d15dee282e fix hookmanager is null 2022-06-02 22:24:22 +02:00
stickler-ci
e48ce5b159 Fixing style errors. 2022-06-02 19:34:39 +00:00
Florian HENRY
b482a78d31 better fix 2022-06-02 21:29:27 +02:00
Florian HENRY
7f38d55648 better fix 2022-06-02 21:28:17 +02:00
Laurent Destailleur
6f6d7d7f48 Fix ODT tags in BOM template
Conflicts:
	htdocs/core/class/commonobjectline.class.php
2022-06-02 20:18:11 +02:00
Laurent Destailleur
69a7b01f20 Fix ODT tags in BOM template 2022-06-02 20:15:49 +02:00
Laurent Destailleur
f53060fec3 FIX selection of type of invoice 2022-06-02 19:43:41 +02:00
Laurent Destailleur
9df4e4dcb2 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-02 19:40:06 +02:00
Laurent Destailleur
cbead0fa5a Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/product/class/productbatch.class.php
2022-06-02 19:39:42 +02:00
Laurent Destailleur
f9f902f7f4 # WARNING: head commit changed in the meantime
Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
2022-06-02 19:37:47 +02:00
Laurent Destailleur
867168fcf4 Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-06-02 19:35:58 +02:00
Laurent Destailleur
10aa1a66bc Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 13.0 2022-06-02 19:35:17 +02:00
Laurent Destailleur
12f3c016d3 Merge branch '12.0' of git@github.com:Dolibarr/dolibarr.git into 13.0 2022-06-02 19:35:03 +02:00
Laurent Destailleur
4e033ba576 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-06-02 19:34:32 +02:00
Laurent Destailleur
ed5b8df385 FIX Bank account not set when creating invoice from order 2022-06-02 19:34:16 +02:00
Laurent Destailleur
c1637d9807 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-02 19:30:17 +02:00
Laurent Destailleur
10c101077b Fix auto check 2022-06-02 19:28:18 +02:00
Eric Seigne
d0101fdc90 errors is an array 2022-06-02 18:57:52 +02:00
Laurent Destailleur
a579859ab5 Merge pull request #21044 from defrance/patch-195
php V8 warning ($conf->c part 1
2022-06-02 15:44:04 +02:00
stickler-ci
19dc0f124c Fixing style errors. 2022-06-02 13:37:55 +00:00
Florian HENRY
d5c4cac64b Merge branch '15_fix_actioncomm_code_not_updated' of github.com:FHenry/dolibarr into 15_fix_actioncomm_code_not_updated 2022-06-02 15:32:37 +02:00
Florian HENRY
43207429ae fix: actioncomm.code have to be updated with correct c_actioncomm code (like in create) until we decide to remove this column 2022-06-02 15:32:16 +02:00
stickler-ci
d73982d1eb Fixing style errors. 2022-06-02 13:26:06 +00:00
Florian HENRY
f6e53b40da fix: actioncomm.code have to be updated with correct c_actioncomm code (like in create) until we decide to remove this column 2022-06-02 15:20:00 +02:00
Laurent Destailleur
e085594950 Merge pull request #21104 from jyhere/jyhere-patch-1
FIX : array merges in expedition class
2022-06-02 14:51:22 +02:00
Laurent Destailleur
6115461b30 Merge pull request #21102 from jyhere/patch-3
FIX errors in getLinesArray()
2022-06-02 14:50:40 +02:00
Laurent Destailleur
2fb5cdbb78 Merge pull request #21099 from aspangaro/14a35
Typo in CSS class
2022-06-02 14:46:16 +02:00
Laurent Destailleur
00c22eff6b Merge pull request #21106 from frederic34/patch-1
New isModEnabled function
2022-06-02 14:45:56 +02:00
Laurent Destailleur
701d4a1f47 Merge pull request #21107 from Hystepik/develop#1
fix: php8.0 warnings
2022-06-02 14:44:57 +02:00
Laurent Destailleur
1fc29d6d40 Missing token 2022-06-02 14:26:57 +02:00
Laurent Destailleur
cb5f2333b2 Fix default sort order 2022-06-02 13:02:06 +02:00
Laurent Destailleur
b9a05ded29 Typo 2022-06-02 12:48:05 +02:00
Laurent Destailleur
603201206a css 2022-06-02 12:35:38 +02:00
lmarcouiller
0bad3664fb fix: php8.0 warnings 2022-06-02 11:14:35 +02:00
Laurent Destailleur
bc79f041dc Debug v16 2022-06-02 11:11:28 +02:00
Laurent Destailleur
9f59eaa752 Debug v16 2022-06-02 10:39:04 +02:00
Frédéric FRANCE
5b316487b4 Update eldy.lib.php 2022-06-02 10:29:34 +02:00
Frédéric FRANCE
96bf5a9c8a New isModEnabled function 2022-06-02 10:21:05 +02:00
stickler-ci
858926d95e Fixing style errors. 2022-06-02 08:15:04 +00:00
jyhere
bd1d6de326 FIX : array merges in expedition class 2022-06-02 10:11:53 +02:00
jyhere
f582814c0f Update bom.class.php 2022-06-02 09:46:26 +02:00
Alexandre SPANGARO
7b55676b56 Merge branch '14.0' into 14a35 2022-06-01 23:12:02 +02:00
Alexandre SPANGARO
1dcd4d0ab6 Typo in CSS class 2022-06-01 23:11:20 +02:00
Sylvain Legrand
4e118ba1ae Fix deposit management on accountancy supplier index 2022-06-01 22:54:05 +02:00
Laurent Destailleur
43dedcb2b1 # WARNING: head commit changed in the meantime
Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-06-01 22:29:29 +02:00
Laurent Destailleur
1a51a7d525 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-01 22:14:02 +02:00
Laurent Destailleur
d3fed26d78 # WARNING: head commit changed in the meantime
Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
2022-06-01 22:13:42 +02:00
Laurent Destailleur
2f779dac8f Merge pull request #21053 from defrance/patch-198
php V8 warning
2022-06-01 22:05:13 +02:00
Laurent Destailleur
ff450e57fd Merge branch 'develop' into patch-198 2022-06-01 22:05:03 +02:00
Laurent Destailleur
f5705e89a8 Merge branch 'develop' into patch-195 2022-06-01 22:03:19 +02:00
Laurent Destailleur
53e7f2dc7e Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-01 22:02:16 +02:00
Laurent Destailleur
731702c7eb Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-01 22:01:47 +02:00
Laurent Destailleur
958833484f Fix bad var 2022-06-01 22:01:03 +02:00
Laurent Destailleur
49ded63cbc Merge pull request #21052 from defrance/patch-197
php V8 warning
2022-06-01 21:57:21 +02:00
Laurent Destailleur
93499d611c Update index.php 2022-06-01 21:57:03 +02:00
Laurent Destailleur
6cab758841 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/knowledgemanagement/knowledgerecord_list.php
	htdocs/theme/md/style.css.php
2022-06-01 21:55:36 +02:00
Laurent Destailleur
76da86112c Doc 2022-06-01 21:46:42 +02:00
Laurent Destailleur
169ebdef10 FIX #21051 2022-06-01 21:46:07 +02:00
ptibogxiv
b5197a07c1 Fix API knowledgemanagement 2022-06-01 21:42:18 +02:00
Laurent Destailleur
967304d704 Merge pull request #21051 from ptibogxiv/patch-11
Fix API knowledgemanagement
2022-06-01 21:36:24 +02:00
Laurent Destailleur
62ee0ff29c Merge pull request #21054 from frederic34/patch-1
force refresh css
2022-06-01 21:34:23 +02:00
Laurent Destailleur
9efc1e2d36 Merge pull request #21064 from milenmk/develop
Fix issue #21063
2022-06-01 21:33:19 +02:00
Laurent Destailleur
cbd12288d3 Merge pull request #21067 from bb2a/php-V8-warning-class-commonobject
php V8 warning class commonobject
2022-06-01 21:28:22 +02:00
Laurent Destailleur
f5683c0647 Merge pull request #21061 from andreubisquerra/develop
Avoid automatic printing in TakePOS history
2022-06-01 21:28:03 +02:00
Laurent Destailleur
8f33d91783 Merge pull request #21073 from fappels/15_fix_update_buyprice_packaging
FIX: sql error when PRODUCT_USE_SUPPLIER_PACKAGING enabled.
2022-06-01 21:01:19 +02:00
Laurent Destailleur
31c94dde3b Merge pull request #21066 from Hystepik/develop#1
fix php8.0 warnings
2022-06-01 21:00:55 +02:00
Laurent Destailleur
d2a8dd6925 Merge pull request #21065 from bb2a/FIX-PHP8-files-lib
php V8 warning files lib
2022-06-01 20:58:44 +02:00
Laurent Destailleur
f89892f7e4 Merge pull request #21069 from bb2a/php-V8-warning-class-html-form
php V8 warning class html form
2022-06-01 20:58:22 +02:00
Laurent Destailleur
3751fc92ca Clean code 2022-06-01 20:47:14 +02:00
Laurent Destailleur
b8e1a14877 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-01 20:16:56 +02:00
Laurent Destailleur
bbc9175eb1 Merge pull request #21075 from NextGestion/dolibarr_fixbugs
PHP V8 warning societe/index.php
2022-06-01 20:16:29 +02:00
Laurent Destailleur
2cc4dd30fc Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-01 20:08:45 +02:00
Laurent Destailleur
e641bef40a Merge pull request #21080 from bb2a/FIX---php-V8-warning-lib-usergroups-topmenu
FIX - php V8 warning lib usergroups topmenu select
2022-06-01 19:56:51 +02:00
Laurent Destailleur
4dc7135d5d Merge pull request #21083 from manu8170/develop
Fix a few CSS errors in md theme
2022-06-01 19:56:23 +02:00
Laurent Destailleur
c55c150937 Merge pull request #21082 from manu8170/15.0
Fix a few CSS errors
2022-06-01 19:56:03 +02:00
Laurent Destailleur
c300437e2a Merge pull request #21084 from Silocan/13.0
fix for issue #16985 on v13
2022-06-01 19:55:08 +02:00
Laurent Destailleur
a035449cc5 Debug v16 2022-06-01 19:53:13 +02:00
Laurent Destailleur
704266445c Debug v16 2022-06-01 19:45:46 +02:00
Laurent Destailleur
c88ee425ad Merge pull request #21087 from Hystepik/develop#3
New : update in import for socialnetworks
2022-06-01 19:40:54 +02:00
Laurent Destailleur
3dcd9fcfe9 Merge pull request #21086 from Hystepik/develop#2
Fix: import update on xlsx
2022-06-01 19:40:08 +02:00
Laurent Destailleur
11ede876bb Merge pull request #21089 from atm-quentin/FIX_empty_password
FIX If the password does not match the rules, Dolibarr creates a user without a password
2022-06-01 19:35:41 +02:00
Laurent Destailleur
1ef66c208f Update card.php 2022-06-01 19:34:29 +02:00
Laurent Destailleur
edc8bebf10 Merge pull request #21090 from Hystepik/develop_v15#1
Fix #21037 : select extrafield in knowledgerecord_list
2022-06-01 19:33:20 +02:00
Laurent Destailleur
a667232739 Merge pull request #21091 from Hystepik/develop#5
Fix #20878 : improper use of dol_move
2022-06-01 16:20:28 +02:00
Laurent Destailleur
37ea95eb3a Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-06-01 16:04:25 +02:00
Laurent Destailleur
0bb7defa88 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/core/class/commonobject.class.php
	htdocs/langs/en_US/errors.lang
	htdocs/projet/card.php
2022-06-01 16:04:11 +02:00
Laurent Destailleur
32f60e191f Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-06-01 15:57:35 +02:00
Laurent Destailleur
c3036d455a FIX #20902 2022-06-01 15:56:44 +02:00
lmarcouiller
2a89e396fe Fix #20878 : improper use of dol_move 2022-06-01 15:17:19 +02:00
lmarcouiller
67ac6b41f0 Fix #21037 : select extrafield in knowledgerecord_list 2022-06-01 15:07:14 +02:00
Laurent Destailleur
e3fa24fab2 Merge pull request #18283 from atm-gauthier/NEW_stockstransfers
NEW : Stocks transfers objects management
2022-06-01 14:49:21 +02:00
Gauthier PC portable 024
2a3f0affaf FIX : try for travis 2022-06-01 14:13:24 +02:00
Laurent Destailleur
65913cdd15 Fix list of event empty. 2022-06-01 13:11:36 +02:00
stickler-ci
adb37a5f5f Fixing style errors. 2022-06-01 09:53:51 +00:00
lmarcouiller
69e8c1abe4 New : update in import for socialnetworks 2022-06-01 11:44:07 +02:00
lmarcouiller
d345957b84 Fix: import update on xlsx 2022-06-01 11:36:47 +02:00
Quentin VIAL-GOUTEYRON
682da1fabe FIX if password doesnt match rule it created a user without password 2022-06-01 11:33:15 +02:00
BENKE Charlene
0126f043c9 fixed 2022-06-01 10:53:52 +02:00
Nicolas
4696cd33d5 fix for issue #16985 2022-06-01 10:42:29 +02:00
Manu
06def03a1f Fix a few CSS errors in md theme 2022-06-01 09:36:57 +02:00
Manu
008396b3df Fix a few CSS errors 2022-06-01 09:18:54 +02:00
BB2A Anthony Berton
976f6d42b8 php V8 warning 2022-06-01 09:15:21 +02:00
Laurent Destailleur
c8ff7ff02a Fix look and feel v16 2022-05-31 19:46:12 +02:00
NextGestion
3976087c78 Merge branch 'Dolibarr:develop' into dolibarr_fixbugs 2022-05-31 16:32:44 +00:00
NextGestion
b479cc4e9d PHP V8 warning societe/index.php 2022-05-31 17:31:11 +00:00
Laurent Destailleur
21e5189e18 Add phpunit for num2Alpha 2022-05-31 18:17:43 +02:00
Laurent Destailleur
a253938db9 Better error message 2022-05-31 18:08:53 +02:00
Laurent Destailleur
98ebe0cff4 Trans 2022-05-31 17:58:47 +02:00
NextGestion
4e939a7c5d Fix error in "Subscription" list (toselect value) 2022-05-31 15:38:23 +00:00
Francis Appels
74346c6480 Fix sql error when PRODUCT_USE_SUPPLIER_PACKAGING enabled. 2022-05-31 16:59:57 +02:00
NextGestion
02d760cd5f Merge branch 'Dolibarr:develop' into dolibarr_fixbugs 2022-05-31 14:30:50 +00:00
Laurent Destailleur
5ada47195a FIX Link to social network 2022-05-31 15:48:50 +02:00
Laurent Destailleur
d6ecbe65b7 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/core/class/commonobject.class.php
	htdocs/langs/en_US/errors.lang
2022-05-31 15:16:54 +02:00
Laurent Destailleur
64a683c8e7 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/projet/tasks/task.php
2022-05-31 14:33:19 +02:00
Laurent Destailleur
72b36b5a69 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-05-31 14:31:20 +02:00
Laurent Destailleur
c9eda09964 FIX ODT generation of BOM document 2022-05-31 14:30:47 +02:00
Laurent Destailleur
0b9d4de20d Fix warning 2022-05-31 14:20:59 +02:00
BB2A Anthony Berton
d917ac46e7 php V8 warning class html form 2022-05-31 14:14:22 +02:00
Laurent Destailleur
a7155676af Debug v16 2022-05-31 12:49:03 +02:00
Alexandre SPANGARO
19616982c7 Merge remote-tracking branch 'upstream/develop' into 16a12_assets_sql 2022-05-31 11:43:02 +02:00
BB2A Anthony Berton
d7eebeb913 php V8 warning class commonobject 2022-05-31 11:41:38 +02:00
lmarcouiller
2d13b47441 fix php8.0 warnings 2022-05-31 11:36:54 +02:00
BB2A Anthony Berton
e303f27a19 FIX PHP8 2022-05-31 11:36:23 +02:00
Milen Karaganski
93a53c4aea Fix issue #21063 2022-05-31 12:20:41 +03:00
Laurent Destailleur
2d0958ba7f Look and feel v16 2022-05-31 11:00:21 +02:00
Laurent Destailleur
1655890f84 Debug v16 2022-05-31 10:35:36 +02:00
Laurent Destailleur
b95440b83f Fix picto phone 2022-05-31 09:57:49 +02:00
andreubisquerra
0489e51cc0 Avoid AutoPrint in TakePOS history 2022-05-31 08:39:48 +02:00
Laurent Destailleur
70500745f5 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-05-30 22:45:06 +02:00
Laurent Destailleur
396d1411e5 Fix default order 2022-05-30 19:13:03 +02:00
NextGestion
5f40dee89a Fix error SQL in "import_insert" function 2022-05-30 15:26:22 +00:00
Gauthier PC portable 024
8b4054f8e9 FIX : missing phpcs:enable 2022-05-30 17:22:25 +02:00
jpb
b95ad9d847 add jsnotify on error 2022-05-30 16:38:09 +02:00
jpb
512cf4e174 Merge branch 'NEW/ExpenseReport_ik_add' of github.com:atm-jpb/dolibarr into NEW/ExpenseReport_ik_add 2022-05-30 16:23:22 +02:00
jpb
9014094094 add trans 2022-05-30 16:22:35 +02:00
stickler-ci
263a8af0e6 Fixing style errors. 2022-05-30 14:21:11 +00:00
jpb
2526afa5b9 remove console.log 2022-05-30 16:15:25 +02:00
jpb
0b0f3af6c0 add trigger on js 2022-05-30 16:13:56 +02:00
jpb
a549e922a9 add return on tax_rat <= 0 2022-05-30 16:08:04 +02:00
jpb
dbd0c6d7d1 rr 2022-05-30 15:57:07 +02:00
jpb
cbbe225705 return 0 2022-05-30 15:53:37 +02:00
jpb
7aed7fbaa9 Merge branch 'NEW/ExpenseReport_ik_add' of github.com:atm-jpb/dolibarr into NEW/ExpenseReport_ik_add 2022-05-30 15:47:34 +02:00
jpb
cf0887cfdf swith table 2022-05-30 15:46:21 +02:00
Frédéric FRANCE
489aa22e56 force refresh css 2022-05-30 14:14:18 +02:00
BENKE Charlene
d74fc672e7 Update files.lib.php 2022-05-30 10:23:00 +02:00
BENKE Charlene
785d0e03b7 php V8 warning 2022-05-30 08:43:41 +02:00
stickler-ci
e8bc813a43 Fixing style errors. 2022-05-30 06:36:37 +00:00
BENKE Charlene
2b76e67d42 php V8 warning 2022-05-30 08:31:38 +02:00
BENKE Charlene
7dc93b3544 php v8 warning 2022-05-30 08:23:35 +02:00
BENKE Charlene
b8de54aac0 php V8 warning 2022-05-30 08:08:28 +02:00
BENKE Charlene
008800cf52 correct it 2022-05-30 07:46:21 +02:00
ptibogxiv
d630439344 Fix API knowledgemanagement 2022-05-29 19:44:07 +02:00
Laurent Destailleur
0dda1d7e76 Merge pull request #20814 from atm-gauthier/NEW/develop_update_on_categorie_product_link_table
New/develop update on categorie product link table
2022-05-29 11:30:26 +02:00
Laurent Destailleur
f5da6ebfe2 Merge pull request #21036 from OPEN-DSI/14.0_fix_show_category_on_sellist_extrafields
FIX: Show sellist type of extrafield when none category selected
2022-05-29 11:24:35 +02:00
Laurent Destailleur
faca7e057e Update expensereport.class.php 2022-05-29 11:22:32 +02:00
Laurent Destailleur
3080605139 Merge pull request #21032 from FHenry/14.0_fix_extrafeilds_bad_display_inline
fix: extrafields chkbxlst or checkbox or badly displayed in line object
2022-05-29 11:20:07 +02:00
Laurent Destailleur
d29a75434b Merge pull request #21041 from DATUC/patch-26
Local CM adjust
2022-05-29 11:16:15 +02:00
Laurent Destailleur
e975fb2bfb Merge pull request #21039 from nealjoos/patch-2
fix: README broken links
2022-05-29 11:15:51 +02:00
Laurent Destailleur
6a9c07de9f Update README.md 2022-05-29 11:15:38 +02:00
Laurent Destailleur
dc3121dc42 Merge pull request #21043 from defrance/patch-194
php V8 warning ($conf->global-b*)
2022-05-29 10:52:50 +02:00
Laurent Destailleur
a56a6abb20 Merge pull request #21045 from defrance/patch-196
fix php V8 warning
2022-05-29 10:50:18 +02:00
Laurent Destailleur
94424c7c2f Merge pull request #21047 from aspangaro/15p2
Merge problem
2022-05-29 10:49:53 +02:00
Laurent Destailleur
319eac2c45 Fix trans 2022-05-29 10:46:00 +02:00
Laurent Destailleur
480452e291 FIX missing filters 2022-05-29 10:35:49 +02:00
Laurent Destailleur
61b69ca835 FIX repeating error "token expired" 2022-05-29 09:37:03 +02:00
Alexandre SPANGARO
e315f2d503 Merge branch '15.0' of https://github.com/Dolibarr/dolibarr into 15.0 2022-05-29 03:37:18 +02:00
Laurent Destailleur
23eb0b3264 Clean code 2022-05-28 21:07:52 +02:00
Laurent Destailleur
f6ad688ddd FIX module for emailing target selection must use a condition on module 2022-05-28 20:50:24 +02:00
Laurent Destailleur
2c9c55bc75 Fix filter on dates 2022-05-28 16:52:39 +02:00
Laurent Destailleur
7ddf4ef315 Fix look and feel v16 2022-05-28 12:50:44 +02:00
Laurent Destailleur
59fcd9de13 Fix trans 2022-05-28 12:36:03 +02:00
Laurent Destailleur
dcfb0679c8 FIX Look and field v16 for list of lot 2022-05-28 12:24:11 +02:00
Laurent Destailleur
a961bb5507 Debug v16 2022-05-28 11:31:41 +02:00
BENKE Charlene
eba9f695c2 fix php 8 warning 2022-05-28 10:02:02 +02:00
BENKE Charlene
b1c4aa07f0 fix php 8 warning 2022-05-28 09:58:54 +02:00
BENKE Charlene
4c96921a5f php 8 fix warning 2022-05-28 09:54:59 +02:00
BENKE Charlene
0b3e32a223 fix php v8 warning 2022-05-28 09:52:03 +02:00
BENKE Charlene
c257d77dc3 php V8 warning 2022-05-28 09:47:21 +02:00
BENKE Charlene
8963a41085 php V8 warning
and don instead donation
2022-05-27 16:47:23 +02:00
BENKE Charlene
bc8f20b5cb php V8 warning 2022-05-27 16:40:18 +02:00
BENKE Charlene
869ec8e461 php V8 warning 2022-05-27 16:39:08 +02:00
BENKE Charlene
2ad50b77b7 php V8 warning 2022-05-27 16:34:56 +02:00
BENKE Charlene
8bc313980a php V8 warning 2022-05-27 16:32:11 +02:00
BENKE Charlene
35a1f9ac4b php V8 warning 2022-05-27 16:30:26 +02:00
BENKE Charlene
d36175c523 php V8 warning 2022-05-27 16:23:57 +02:00
BENKE Charlene
0bf09e0fb2 php V8 fix warning 2022-05-27 16:22:01 +02:00
BENKE Charlene
ebfc566698 php V8 warning 2022-05-27 16:16:41 +02:00
BENKE Charlene
d14faf86a0 php V8 warning fix 2022-05-27 16:14:36 +02:00
DATUC
8f736b3ecb Local CM adjust
Local ref update
2022-05-26 12:57:27 +01:00
Laurent Destailleur
b93b9a784c Trans 2022-05-26 00:30:35 +02:00
Laurent Destailleur
2b5e21379b Fix phpcs 2022-05-25 23:54:03 +02:00
Laurent Destailleur
343056dcbd Debug v16 2022-05-25 23:43:16 +02:00
Laurent Destailleur
c79de819d3 FIX Missing import_key in member list 2022-05-25 23:27:26 +02:00
Laurent Destailleur
271fb43bc6 FIX Import of fk_stcomm 2022-05-25 23:08:53 +02:00
Laurent Destailleur
571110f60a Merge branch 'develop' of github.com:Dolibarr/dolibarr into develop 2022-05-25 23:04:58 +02:00
Neal Joos
9c5ee2d0b9 fix broken links
fixed DoliWamp and DoliDeb links
2022-05-25 22:50:16 +02:00
Laurent Destailleur
639b6de8d4 Merge pull request #21023 from atm-orian/NEW_OF_Child_Orian
OF child Creation : redirection
2022-05-25 19:16:30 +02:00
Laurent Destailleur
6b476af7d7 Merge pull request #21017 from atm-john/small_css_fix
fix css
2022-05-25 19:11:04 +02:00
Laurent Destailleur
ddf3d0219c Merge pull request #21022 from defrance/patch-193
fix PHP V8 warning
2022-05-25 19:10:48 +02:00
Laurent Destailleur
745987cffc Merge pull request #21019 from defrance/patch-190
PHP V8 warning
2022-05-25 19:10:37 +02:00
Laurent Destailleur
4cca69706a Merge pull request #20968 from Hystepik/develop#2
New : function dol_move_dir in htdocs/core/lib/files.lib.php
2022-05-25 19:06:57 +02:00
Laurent Destailleur
0bce06f5e0 Merge pull request #21020 from defrance/patch-191
php V8 Warning
2022-05-25 19:05:53 +02:00
Laurent Destailleur
bf88d64d5b Look and feel v16 2022-05-25 18:55:03 +02:00
Laurent Destailleur
068112bccd Fix trans 2022-05-25 18:19:46 +02:00
kamel
f1914ff66f FIX: Show sellist type of extrafield when none category selected 2022-05-25 18:02:18 +02:00
Laurent Destailleur
a8ca233712 css 2022-05-25 17:55:23 +02:00
Laurent Destailleur
ce395d6890 Merge pull request #20993 from atm-gauthier/fix_unidentified_lines_array_on_reception_card
FIX : Unidentified lines array on reception card
2022-05-25 17:02:29 +02:00
Laurent Destailleur
ab6a826459 Merge pull request #21018 from defrance/patch-189
php V8 warning
2022-05-25 17:01:34 +02:00
Florian HENRY
4e289741f9 fix: extrafields chkbxlst or checkbox or badly displayed in line object 2022-05-25 16:59:23 +02:00
Laurent Destailleur
3801884e3c Merge pull request #21021 from defrance/patch-192
PHP V8 Warning
2022-05-25 16:58:43 +02:00
Laurent Destailleur
60dd526973 Merge pull request #21030 from Hystepik/develop#1
Fix : socialnetworks import in db and import model in import
2022-05-25 16:57:27 +02:00
Laurent Destailleur
1dd2ce0399 Merge pull request #21024 from atm-john/15.0_fix_btn_confirm_url
Fix btn confirm url
2022-05-25 16:56:54 +02:00
Laurent Destailleur
04d5dc4042 Merge pull request #21028 from dolibit-ut/patch-400
Update ChangeLog
2022-05-25 16:56:03 +02:00
Laurent Destailleur
d0b6daaf4c Fix length of field 2022-05-25 16:50:09 +02:00
lmarcouiller
1632b37045 fix : error of import model in import 2022-05-25 16:35:42 +02:00
lmarcouiller
b1481d8495 Fix : socialnetworks import in db 2022-05-25 16:05:02 +02:00
UT from dolibit
31b99e5f34 Update ChangeLog
- Sorting order  
- typing error
- one deletion:
NEW: MAIN_EMAILCOLLECTOR_MAIL_WITHOUT_HEADER const in email collector   -- deleted because duplication of:   NEW: add MAIN_EMAILCOLLECTOR_MAIL_WITHOUT_HEADER const to remove header stored by email collector
2022-05-25 12:43:04 +02:00
John BOTELLA
e07827a0be Fix btn confirm url 2022-05-25 10:03:08 +02:00
John BOTELLA
9d31d6448c Fix btn confirm url 2022-05-25 09:59:45 +02:00
BENKE Charlene
27e97b68ce fix PHP V8 warning 2022-05-25 09:56:13 +02:00
Laurent Destailleur
9a7c28d61d Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-05-25 09:12:59 +02:00
Laurent Destailleur
baae99fbb4 Support ZATCA 2022-05-25 09:06:59 +02:00
BENKE Charlene
17c5337312 PHP V8 Warning 2022-05-24 22:53:26 +02:00
stickler-ci
82cf96fb78 Fixing style errors. 2022-05-24 20:47:24 +00:00
BENKE Charlene
f17ae94206 php V8 Warning 2022-05-24 22:46:43 +02:00
BENKE Charlene
9ebfd30dcc PHP V8 warning 2022-05-24 22:42:32 +02:00
BENKE Charlene
959278e315 php V8 warning 2022-05-24 22:36:16 +02:00
Laurent Destailleur
0e3d7c4e2e Merge pull request #19099 from johnvan7/develop
New: receipt beep alternative and current date/time
2022-05-24 22:13:59 +02:00
Laurent Destailleur
8385ca604f Merge pull request #20098 from atm-lena/NEW_OF_Child
Create MO Child
2022-05-24 22:00:19 +02:00
Laurent Destailleur
4c10c04f9f Merge pull request #20495 from atm-john/new_fix_regression_select_extrafield_search
FIX : regression select extrafield search + fix function name
2022-05-24 21:55:33 +02:00
Laurent Destailleur
daccf603e5 Merge pull request #21003 from defrance/patch-185
FIX : bad object name
2022-05-24 21:52:24 +02:00
Laurent Destailleur
2cfb4c1fb9 Merge pull request #20990 from rycks/fix_modResource_depends_on_modResource
fix #20989 : modResource depends on modResource
2022-05-24 21:48:52 +02:00
Laurent Destailleur
bb758978ed Merge pull request #21005 from defrance/patch-187
FIX V8 : warning if $objectsrc not defined
2022-05-24 21:47:51 +02:00
Laurent Destailleur
352df9254b Merge branch 'develop' into fix_unidentified_lines_array_on_reception_card 2022-05-24 21:45:06 +02:00
Laurent Destailleur
ee1d13d807 Merge pull request #20991 from rycks/add_language_chooser_on_contact_card
NEW #20651 : multilang contact support
2022-05-24 21:42:08 +02:00
Laurent Destailleur
7f2a4800fa Merge branch 'develop' into add_language_chooser_on_contact_card 2022-05-24 21:41:53 +02:00
Laurent Destailleur
13944ea2c0 Merge pull request #20994 from fappels/16_fix_lot_document_management
FIX: Product lot document management should not use batch but ref (is lot id)
2022-05-24 21:39:49 +02:00
Laurent Destailleur
1d249a5be0 Merge pull request #20996 from atm-quentin/FIX_origin_mo_mvt_origin
FIX  link not interpreted by browser
2022-05-24 21:35:13 +02:00
Laurent Destailleur
316d55a767 Merge pull request #20997 from atm-quentin/FIX_missing_token_mo_card
fix missing token on mo card
2022-05-24 21:34:17 +02:00
Laurent Destailleur
aa47a6cc43 Merge pull request #21001 from ptibogxiv/patch-10
Add get knowledgerecord categorie with REST API
2022-05-24 21:33:50 +02:00
Laurent Destailleur
3ce58c2337 Merge pull request #21011 from OPEN-DSI/14.0_fix_get_origin_when_add_supplier_proposal
FIX: Fix get origin from other than supplier proposal when add a new supplier proposal
2022-05-24 21:29:55 +02:00
Laurent Destailleur
1649f9c2f0 Merge pull request #21006 from aspangaro/15p1
Fix: Accountancy - typo in hook
2022-05-24 21:28:13 +02:00
Laurent Destailleur
8bc4f10d73 Merge pull request #21002 from elsp1991/add/emailCollector_parse_extrafields
add option to parse extrafield (options_) in emailcollector
2022-05-24 21:27:50 +02:00
Laurent Destailleur
51a53985fd Fix warning 2022-05-24 21:25:47 +02:00
Laurent Destailleur
192510316b Merge pull request #21013 from atm-greg/FIX_12.0_get_batch_only_for_same_fk_product
fix sql to avoid getting product_stock of another product with same batch
2022-05-24 21:23:02 +02:00
Laurent Destailleur
6f83c8c6f3 Update productbatch.class.php 2022-05-24 21:22:14 +02:00
Laurent Destailleur
942490865b Merge pull request #21007 from defrance/patch-188
FIX PHP V8 warning
2022-05-24 21:10:57 +02:00
Laurent Destailleur
e89c80651b Update card.php 2022-05-24 21:09:12 +02:00
Laurent Destailleur
62a210d2a2 Merge pull request #21012 from OPEN-DSI/14.0_fix_card_errors_managment
FIX: Fix show errors in card
2022-05-24 21:08:38 +02:00
Laurent Destailleur
555a3ad607 Merge pull request #21008 from rycks/burundi_setup_add_taxes
burundi : add vat rates
2022-05-24 21:08:17 +02:00
Laurent Destailleur
fd19b2134d Merge pull request #21009 from atm-jpb/FIX/leftmenu_holiday
FIX  : change same left menu name  on GRH top menu
2022-05-24 21:07:46 +02:00
ATM john
a01edddb51 Small css fix 2022-05-24 20:56:03 +02:00
atm-greg
8213756c37 fix sql to avoid getting product_stock of another product with same batch 2022-05-24 16:49:55 +02:00
Laurent Destailleur
259a292704 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-24 16:33:24 +02:00
Laurent Destailleur
34199cf0fb Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/comm/propal/card.php
	htdocs/core/modules/modRecruitment.class.php
2022-05-24 16:31:45 +02:00
Laurent Destailleur
ab40634dcb Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-05-24 16:28:32 +02:00
Laurent Destailleur
c1ef208c0f Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0
Conflicts:
	htdocs/adherents/subscription.php
	htdocs/core/lib/security.lib.php
	htdocs/expensereport/card.php
2022-05-24 16:27:26 +02:00
Laurent Destailleur
e3aa26e5c2 Fix creation of primary key 2022-05-24 16:10:33 +02:00
Laurent Destailleur
1a23143394 Fix autoincrement column 2022-05-24 16:02:37 +02:00
stickler-ci
f0fa315a7b Fixing style errors. 2022-05-24 13:24:31 +00:00
jpb
52b23c748c change same left menu name on GRH top menu 2022-05-24 15:13:22 +02:00
kamel
79462c43fa FIX: Fix get origin from other than supplier proposal when add a new supplier proposal 2022-05-24 15:13:19 +02:00
kamel
192f273e27 FIX: Fix show errors in card 2022-05-24 15:02:35 +02:00
Laurent Destailleur
536f888ba2 Fix search hook in takepos 2022-05-24 12:59:27 +02:00
Laurent Destailleur
b8764c4804 Doc 2022-05-24 12:48:48 +02:00
Laurent Destailleur
5534284d9b css 2022-05-24 12:36:11 +02:00
Laurent Destailleur
58d82841e3 css 2022-05-24 12:11:51 +02:00
Laurent Destailleur
43be070300 PHP8.1 strftime("%Y%m%d%H%M") => dol_print_date(dol_now('gmt'),
"dayhourlogsmall", 'tzuser')
2022-05-24 11:55:21 +02:00
Laurent Destailleur
30e300fbc8 FIX Remove warning during dump 2022-05-24 11:52:55 +02:00
atm-orian
e8ed75cac3 redirection OF avec des enfants par Orian 2022-05-24 11:34:39 +02:00
atm-lena
eba84382dc Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into NEW_OF_Child 2022-05-24 09:37:39 +02:00
jpb
a4c5ba7239 Merge branch 'NEW/ExpenseReport_ik_add' of github.com:atm-jpb/dolibarr into NEW/ExpenseReport_ik_add 2022-05-24 09:07:25 +02:00
jpb
851b9e6cdd revamp sql 2022-05-24 09:06:57 +02:00
stickler-ci
d425e14d0d Fixing style errors. 2022-05-24 06:26:08 +00:00
jpb
c546f105fa Merge branch 'NEW/ExpenseReport_ik_add' of github.com:atm-jpb/dolibarr into NEW/ExpenseReport_ik_add 2022-05-24 08:20:08 +02:00
jpb
23cd63963a add the annual accumulation of mileage costs for the selection of the coefficient 2022-05-24 08:15:28 +02:00
Alexandre SPANGARO
c5bbbd88af Merge problem 2022-05-24 07:14:22 +02:00
Eric Seigne
dce6271f23 burundi : add vat rates 2022-05-23 23:23:02 +02:00
BENKE Charlene
9b50b63850 FIX PHP V8 warning
$sameunits not initialy defined
no default_lang needed (and field not present on stock class
2022-05-23 21:58:29 +02:00
Alexandre SPANGARO
e437a53657 Typo 2022-05-23 21:40:47 +02:00
stickler-ci
d8f0e42c67 Fixing style errors. 2022-05-23 19:28:28 +00:00
BENKE Charlene
977f77cc18 $note_private getpost need 2022-05-23 21:22:34 +02:00
BENKE Charlene
32202d8704 FIX V8 : warning if $objectsrc not defined 2022-05-23 21:18:42 +02:00
BENKE Charlene
3058d6ff0b FIX : bad object name 2022-05-23 20:41:22 +02:00
Ilias Patsiaouras
3519138110 add option to parse extrafield (options_) in emailcollector 2022-05-23 20:26:08 +02:00
stickler-ci
c2277a644b Fixing style errors. 2022-05-23 18:08:49 +00:00
Laurent Destailleur
eaa0170604 Trans 2022-05-23 20:05:30 +02:00
jpb
6f0047cc77 stickler fix 2022-05-23 20:03:08 +02:00
jpb
dd5650025f fix stickler 2022-05-23 20:01:19 +02:00
jpb
68148c008c stickler fix 2022-05-23 19:59:54 +02:00
Laurent Destailleur
b693a2f10c Fix typo 2022-05-23 19:43:31 +02:00
ptibogxiv
8172cb5b97 Add get knowledgerecord categorie with REST API 2022-05-23 19:37:42 +02:00
jpb
68564b3b20 Merge branch 'NEW/ExpenseReport_ik_add' of github.com:atm-jpb/dolibarr into NEW/ExpenseReport_ik_add 2022-05-23 16:59:44 +02:00
jpb
381e063123 fix cast in sql 2022-05-23 16:57:25 +02:00
stickler-ci
d47715d9f5 Fixing style errors. 2022-05-23 14:55:40 +00:00
jpb
eb526afc3a add coef on input ht line expenseReport 2022-05-23 16:41:05 +02:00
Francis Appels
8574f36e35 dol_dir_list fast mode 2022-05-23 15:25:31 +02:00
Laurent Destailleur
6de1f6bbac Generic message 2022-05-23 15:12:15 +02:00
Quentin VIAL-GOUTEYRON
9ed75d01bd fix missing token on mo card 2022-05-23 12:43:30 +02:00
Quentin VIAL-GOUTEYRON
48151b47a6 FIX mvt origin 2022-05-23 12:31:37 +02:00
Gauthier PC portable 024
2cd52b6ea2 FIX : no thead and tbody on reception lines array 2022-05-23 12:24:51 +02:00
Francis Appels
71ed1ec602 Product lot document management should not use batch but ref (is lot id) 2022-05-23 12:07:37 +02:00
Laurent Destailleur
1a6903f677 Debug v16 2022-05-23 11:56:39 +02:00
Gauthier PC portable 024
4f572a89d3 FIX : Unidentified lines array on reception card 2022-05-23 11:50:06 +02:00
Laurent Destailleur
f276c66614 NEWW Add selection of the mode to show icon/text in setup 2022-05-23 09:45:42 +02:00
Eric Seigne
109181c4ea fix #20651 : multilang contact support 2022-05-23 09:35:59 +02:00
Laurent Destailleur
23468929df Clean code 2022-05-23 09:13:37 +02:00
Eric Seigne
bbebb9ef5a fix #20989 : modResource depends on modResource 2022-05-23 08:29:04 +02:00
Laurent Destailleur
35edd3ac6e Fix bad test 2022-05-23 01:10:37 +02:00
Laurent Destailleur
d0aef6857c Add missing fields for css on extrafields 2022-05-23 01:02:59 +02:00
Laurent Destailleur
9b64f04857 Fix label 2022-05-23 00:57:02 +02:00
Laurent Destailleur
00e65eb106 Fix bad management when inserting contacts of actioncomm 2022-05-23 00:49:59 +02:00
Laurent Destailleur
e271616bea Scrutinizer 2022-05-23 00:22:26 +02:00
Laurent Destailleur
36ccc52554 Doc 2022-05-23 00:19:15 +02:00
Laurent Destailleur
bc9859c7bd Fix phpcs 2022-05-23 00:12:16 +02:00
Laurent Destailleur
7d5d242da0 Fix dependencies for scrutinizer 2022-05-22 17:24:55 +02:00
Laurent Destailleur
ee4329327d Fix dependencies for scrutinizer 2022-05-22 17:23:10 +02:00
Laurent Destailleur
660df4809a Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-22 17:19:31 +02:00
Laurent Destailleur
ac88e5f59e Merge pull request #20980 from atm-maxime/fix_scrutinizer1
Fix scrutinizer and remove unused functions
2022-05-22 17:18:34 +02:00
Laurent Destailleur
05d09f1ce9 Merge pull request #20981 from rycks/14_undef_ficheinter
14 undef ficheinter
2022-05-22 17:17:01 +02:00
Laurent Destailleur
460687504c Update card.php 2022-05-22 17:16:48 +02:00
Laurent Destailleur
b5e0e57f9f Merge pull request #20982 from rycks/14_fix_read_property_creer
14 fix read property creer
2022-05-22 17:15:56 +02:00
Laurent Destailleur
a193474fa3 Update card.php 2022-05-22 17:15:43 +02:00
Laurent Destailleur
85e2fe40b1 Merge pull request #20983 from atm-maxime/fix_delete_paiement
Fix delete customer payment
2022-05-22 17:13:01 +02:00
Laurent Destailleur
7dab11f27d Merge pull request #20984 from aspangaro/16a12_assets_code
Asset module - Fix advanced rights
2022-05-22 17:12:19 +02:00
Laurent Destailleur
deb969e2f3 Var not used 2022-05-22 17:11:41 +02:00
Laurent Destailleur
1bce02fad2 Merge pull request #20986 from grandoc/new_branch_22_05_2022
fix : The property lib does not exist on PaymentVAT
2022-05-22 17:09:51 +02:00
Laurent Destailleur
9e80632938 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-22 17:09:24 +02:00
Laurent Destailleur
8bacb6c755 Fix name of var 2022-05-22 17:09:08 +02:00
Laurent Destailleur
22355c0d77 Merge pull request #20985 from ptibogxiv/patch-9
Fix php error
2022-05-22 16:35:22 +02:00
Laurent Destailleur
3d5b322d98 Debug v16 2022-05-22 16:27:42 +02:00
Laurent Destailleur
7b4dae8773 CSS 2022-05-22 16:16:17 +02:00
Lucas Marcouiller
5c757c30be part2 of test 2022-05-22 15:46:04 +02:00
Lucas Marcouiller
f43f2ab670 push phpunit to of the function 2022-05-22 15:44:57 +02:00
Philippe GRAND
6d8fc453af fix : The property civilite does not exist on Contact 2022-05-22 15:39:49 +02:00
Philippe GRAND
2bbdd56fef fix : The property totalpaye does not exist on Tva 2022-05-22 15:26:12 +02:00
Philippe GRAND
c4e19824e8 fix : The property lib does not exist on PaymentVAT 2022-05-22 15:11:09 +02:00
ptibogxiv
648c524eb5 Fix php error 2022-05-22 14:45:56 +02:00
Laurent Destailleur
96867fac4f FIX ZATCA regression 2022-05-22 13:04:16 +02:00
Laurent Destailleur
d3f1332b24 FIX ZATCA regression 2022-05-22 13:02:51 +02:00
Laurent Destailleur
324721ac1e Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/commande/card.php
	htdocs/core/tpl/list_print_total.tpl.php
	htdocs/fichinter/list.php
	htdocs/fourn/class/fournisseur.commande.class.php
2022-05-22 12:54:40 +02:00
Laurent Destailleur
8e2b082a21 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-05-22 12:39:23 +02:00
Laurent Destailleur
f65f63b562 FIX Zatca QR code must use company name/vat 2022-05-22 12:38:52 +02:00
Alexandre SPANGARO
7b919f1513 Field fk_pays don't exist & fix sql error 2022-05-22 07:08:39 +02:00
Alexandre SPANGARO
977907c07b Asset module - Fix advanced rights 2022-05-22 06:47:28 +02:00
Alexandre SPANGARO
709208abfb Merge remote-tracking branch 'upstream/develop' into 16a12_assets_sql 2022-05-22 05:53:23 +02:00
Maxime Kohlhaas
c3fb7647c5 Fix delete customer payment 2022-05-22 02:30:35 +02:00
Laurent Destailleur
038ce0c543 Merge pull request #20973 from lmag/fix_number_cheque_receipt_list_bank_entries
fix : number cheque receipt list_bank entries #5366
2022-05-22 01:55:09 +02:00
Eric Seigne
1ca1afd734 fix #18339 : Attempt to read property creer 2022-05-22 01:50:10 +02:00
Eric Seigne
45bc1ff287 fix #18339 : Attempt to read property creer 2022-05-22 01:50:01 +02:00
Maxime Kohlhaas
5a489e4594 Fix scrutinizer 2022-05-22 01:43:45 +02:00
Eric Seigne
4a222fe5d5 fix potential warning ($conf->ficheinter->enabled) 2022-05-22 01:38:32 +02:00
Laurent Destailleur
c53b42ef29 Merge pull request #20910 from priojk/develop
NEW #20905 add hooks for accountancy export
2022-05-22 01:28:56 +02:00
Maxime Kohlhaas
0559cc08ac Fix scrutinizer remove unused functions 2022-05-22 01:28:27 +02:00
Eric Seigne
c1473b5514 fix #18338: Undefined property $ficheinter 2022-05-22 01:28:14 +02:00
Laurent Destailleur
e04b58d5e8 Merge pull request #20969 from hregis/fix_warning_using_php8
FIX php8.1 warning
2022-05-22 01:22:48 +02:00
Laurent Destailleur
eee978fc4e Merge pull request #20971 from atm-maxime/fix_pdf_watermark_overall
Fix PDF watermark over PDF text
2022-05-22 01:19:58 +02:00
Maxime Kohlhaas
6131d5a2b4 Fix scrutinizer 2022-05-22 01:19:00 +02:00
Laurent Destailleur
bd3252011b Merge pull request #20975 from atm-maxime/fix_jobcandidature_pdf_doesnt_exist
Fix no document available on job candidature
2022-05-22 01:18:16 +02:00
Laurent Destailleur
84f56a972b Merge pull request #20976 from atm-maxime/fix_scrutinizer1
Fix scrutinizer
2022-05-22 01:13:25 +02:00
Laurent Destailleur
52d8c40ae8 Merge pull request #20977 from DATUC/patch-14
Update compagnie languages
2022-05-22 01:12:40 +02:00
DATUC
06cdb37379 Update compagnie languages
Add somme legal requirements for CM
2022-05-21 23:48:02 +01:00
Maxime Kohlhaas
fb776e2a96 Fix scrutinizer 2022-05-22 00:39:57 +02:00
Maxime Kohlhaas
266a4b2891 Fix scrutinizer 2022-05-22 00:36:53 +02:00
Maxime Kohlhaas
e5c38572d1 Fix no document available on job candidature 2022-05-22 00:23:16 +02:00
Regis Houssin
6372bea326 FIX php8 warning 2022-05-22 00:14:01 +02:00
stickler-ci
4913acaba6 Fixing style errors. 2022-05-21 22:11:20 +00:00
lmag
ea96a18b61 fix : number cheque receipt list_bank entries #5366 2022-05-22 00:07:21 +02:00
Maxime Kohlhaas
bf39a259ba Fix PDF watermark over PDF text 2022-05-22 00:05:03 +02:00
Laurent Destailleur
0713c27a5d Merge pull request #20967 from grandoc/new_branch_21_05_2022_02
New branch 21 05 2022 02
2022-05-21 23:56:54 +02:00
Regis Houssin
82e19879d5 FIX php8.1 warning 2022-05-21 23:43:01 +02:00
Philippe GRAND
dcb61e05f4 fix : The property num_prelevement does not seem to exist on PaiementFourn 2022-05-21 23:25:59 +02:00
Lucas Marcouiller
dbf66988a6 fix style errors 2022-05-21 23:24:18 +02:00
Lucas Marcouiller
bc77a26976 New : dol_move_dir 2022-05-21 23:24:03 +02:00
Philippe GRAND
10c5ccb5bf fix : The property id_prelevement does not seem to exist on PaiementFourn 2022-05-21 23:19:52 +02:00
Laurent Destailleur
7dcc66eeef Fix phpcs 2022-05-21 23:17:14 +02:00
Laurent Destailleur
6771d96b47 phpcs 2022-05-21 23:07:22 +02:00
Laurent Destailleur
e12daa74d0 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-21 23:06:04 +02:00
Laurent Destailleur
cde2af7614 Fix var missing 2022-05-21 23:05:51 +02:00
Philippe GRAND
ee6bf546ee fix : The property ape does not seem to exist on Societe 2022-05-21 23:04:25 +02:00
Philippe GRAND
7ab573b62c fix : The property siret does not seem to exist on Societe 2022-05-21 23:02:15 +02:00
Philippe GRAND
3b98685557 fix : The property siren does not seem to exist on Societe 2022-05-21 22:52:27 +02:00
Laurent Destailleur
9fd6d4bb1e Merge pull request #20874 from Hystepik/develop#3
New : import fields in societe class
2022-05-21 22:50:36 +02:00
Philippe GRAND
526c6fcc0e fix : The property num_prelevement does not exist on Paiement 2022-05-21 22:41:27 +02:00
Laurent Destailleur
0f268b682a Merge pull request #20882 from FHenry/dev_new_add_ref_clinet_intervention
NEW: Add Customer Ref on Intervention
2022-05-21 22:36:17 +02:00
Philippe GRAND
7580a4c1ff fix : The property id_prelevement does not exist on Paiement 2022-05-21 22:35:49 +02:00
Laurent Destailleur
19e8319327 Merge pull request #20964 from grandoc/new_branch_21_05_2022_02
fix : The property chid does not seem to exist on PaymentVAT
2022-05-21 22:31:16 +02:00
Laurent Destailleur
d456261bcb Merge pull request #20965 from atm-maxime/hotfix_parse_error_formfile
Fix parse error on formfile
2022-05-21 22:25:44 +02:00
Maxime Kohlhaas
1dc1c2aa79 Fix parse error on formfile 2022-05-21 22:23:29 +02:00
Philippe GRAND
65b6af12f8 fix : The property am does not seem to exist on Tva 2022-05-21 22:23:06 +02:00
Philippe GRAND
91bb04bdba fix : The property total does not exist on Tva 2022-05-21 22:16:43 +02:00
Philippe GRAND
f5f026c2c5 fix : The property paiementtype does not seem to exist on Tva 2022-05-21 22:13:57 +02:00
Philippe GRAND
cde540fb2a fix : The property paiementtype does not seem to exist on PaymentVAT 2022-05-21 22:10:45 +02:00
Philippe GRAND
27b4961466 fix : The property datepaye does not exist on PaymentVAT 2022-05-21 22:09:02 +02:00
Philippe GRAND
0ae21ad900 fix : The property chid does not seem to exist on PaymentVAT 2022-05-21 22:06:22 +02:00
Laurent Destailleur
7db3dcb4f6 Merge pull request #20963 from ns-info90/develop3
Fix Warning Php 8
2022-05-21 20:09:05 +02:00
Laurent Destailleur
3205d88cad Merge pull request #20962 from Hystepik/develop#7
Fix : facture fourn type not init in radio
2022-05-21 20:07:42 +02:00
Lucas Marcouiller
adfee839d7 Merge branch 'develop' of github.com:Dolibarr/dolibarr into develop#3 2022-05-21 19:19:02 +02:00
Nicolas SILOBRE
055d5508e4 Merge branch 'Dolibarr:develop' into develop 2022-05-21 19:15:39 +02:00
Lucas Marcouiller
9c9acf1538 Fix : facture fourn type not init in radio 2022-05-21 19:15:15 +02:00
Laurent Destailleur
d99e2ea4eb Merge pull request #20948 from inovea-conseil/FIX#20886
FIX#20886 : manage durations in list_print_total.tpl.php
2022-05-21 19:12:45 +02:00
Laurent Destailleur
39258bc7c0 Merge pull request #20957 from grandoc/new_branch_21_05_2022
fix : The property chid does not seem to exist on PaymentSocialContri…
2022-05-21 19:11:42 +02:00
Laurent Destailleur
3b79c41fb8 Merge pull request #20955 from Hystepik/develop#1
Fix : bug of upgrade when install not finished
2022-05-21 19:09:02 +02:00
Laurent Destailleur
8ede0f03f1 Merge pull request #20956 from hregis/fix_php8_compatibility
FIX php8 compatibility
2022-05-21 19:07:05 +02:00
Laurent Destailleur
3cce8babc3 Merge pull request #20959 from Hystepik/develop#5
Fix : php 8.0 warnings
2022-05-21 19:00:23 +02:00
Lucas Marcouiller
b4a7657fbe fix style 2022-05-21 18:47:01 +02:00
Lucas Marcouiller
51041bbea1 Fix : php 8.0 warnings 2022-05-21 18:46:41 +02:00
Alexandre SPANGARO
1be9375b96 In english 2022-05-21 18:45:10 +02:00
Alexandre SPANGARO
f25041f577 Add disposal type data 2022-05-21 18:31:05 +02:00
stickler-ci
aa313f23ad Fixing style errors. 2022-05-21 16:26:20 +00:00
Regis Houssin
019a68b3bb FIX clean code 2022-05-21 18:25:07 +02:00
Regis Houssin
cc7cc8bb5f FIX avoid stickler error : Line exceeds 500 characters 2022-05-21 18:18:31 +02:00
Nicolas SILOBRE
7cf97cfb93 FIX: warning Php 8 2022-05-21 18:15:44 +02:00
Philippe GRAND
8ba445b27c fix : The property am does not seem to exist on ChargeSociales 2022-05-21 18:11:34 +02:00
Philippe GRAND
bff81ce9bb fix : The property does not exist on ChargeSociales 2022-05-21 18:02:48 +02:00
Philippe GRAND
604a4670e0 fix : The property does not exist on PaymentSocialContribution 2022-05-21 17:50:43 +02:00
Philippe GRAND
c9e812d5ef fix : The property datepaye does not exist on PaymentSocialContribution 2022-05-21 17:47:25 +02:00
Philippe GRAND
426d8912a7 fix : The property chid does not seem to exist on PaymentSocialContribution 2022-05-21 17:40:14 +02:00
Regis Houssin
28540a85f2 FIX php8 compatibility 2022-05-21 17:36:19 +02:00
IC-Ilies
f9ff16c6f3 fix psr2 2022-05-21 17:33:03 +02:00
Laurent Destailleur
2f6bf5f0c8 Merge pull request #20946 from SylvainLegrand/SylvainLegrand-patch-1
field ref_customer in llx_expedition is not varchar(255) #20629
2022-05-21 17:29:46 +02:00
Laurent Destailleur
a5817aa200 Merge pull request #20949 from nicolas-eoxia/fix_missing_description_field_in_function_dol_dir_list_in_database
Fix : Missing description field in function dol_dir_list_in_database
2022-05-21 17:29:19 +02:00
Laurent Destailleur
812298f740 Merge pull request #20945 from atm-maxime/fix_default_value_boolean
Fix default value boolean
2022-05-21 17:28:39 +02:00
Laurent Destailleur
294b432140 Merge pull request #20947 from ns-info90/develop
Fix : php warning 8 / backup
2022-05-21 17:27:47 +02:00
Laurent Destailleur
d5344cf2e1 Merge pull request #20950 from atm-john/new_form_setup_color
Fix backport for 16 and ADD color, default value ,
2022-05-21 17:27:14 +02:00
Laurent Destailleur
962f0e2aa2 Merge pull request #20953 from inovea-conseil/FIX_#17853
FIX missing morecss for multiselectarray
2022-05-21 17:27:00 +02:00
Laurent Destailleur
e09bc8ce9a Merge pull request #20954 from inovea-conseil/FIX#20487
FIX #20487 missing letter D in constant THIRDPARTIES_DISABLE_RELATED_…
2022-05-21 17:26:41 +02:00
Laurent Destailleur
eb5dd295df Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-21 17:25:50 +02:00
Laurent Destailleur
d51b2f9164 Fix migration 2022-05-21 17:25:38 +02:00
IC-Ilies
9ea12664f7 FIX #20487 missing letter D in constant THIRDPARTIES_DISABLE_RELATED_OBJECT_TAB 2022-05-21 17:14:26 +02:00
Lucas Marcouiller
29dab3b6d1 Fix : bug on check of main_not_installed 2022-05-21 17:14:05 +02:00
Laurent Destailleur
636548b746 Merge pull request #20951 from SylvainLegrand/missing-MULTI-CURRENCY-on-recurrent-invoices-#20664
missing MULTI CURRENCY on recurrent invoices #20664
2022-05-21 17:09:44 +02:00
Nicolas
d8a68d280e FIX missing morecss for multiselectarray 2022-05-21 17:06:36 +02:00
Nicolas SILOBRE
347c3c7b23 Merge branch 'Dolibarr:develop' into develop 2022-05-21 17:02:12 +02:00
stickler-ci
bd42680e2c Fixing style errors. 2022-05-21 14:43:30 +00:00
Sylvain Legrand
3fc8adf13e missing MULTI CURRENCY on recurrent invoices #20664 2022-05-21 16:42:27 +02:00
John BOTELLA
321195ef96 add color 2022-05-21 16:35:10 +02:00
Nicolas Domenech
cc90461482 Fix : Missing description field in function dol_dir_list_in_database 2022-05-21 16:30:05 +02:00
IC-Ilies
1b6e0a9fc0 FIX#20886 : manage durations in list_print_total.tpl.php 2022-05-21 16:25:47 +02:00
Nicolas SILOBRE
2b6154050c Fix : php warning 8 / backup 2022-05-21 16:16:59 +02:00
Maxime Kohlhaas
6445dd3882 Merge branch 'develop' into NEW_stockstransfers 2022-05-21 16:06:59 +02:00
Sylvain Legrand
a65c4c2e05 field ref_customer in llx_expedition is not varchar(255) #20629 2022-05-21 16:05:58 +02:00
Maxime Kohlhaas
9b2a543170 Fix phpcs too long line 2022-05-21 15:49:27 +02:00
Laurent Destailleur
6bc7cbd106 Merge pull request #20938 from atm-john/new_formsetup_as_default
NEW form setup and backport as default setup builder
2022-05-21 15:44:08 +02:00
Laurent Destailleur
dd505b5285 Merge pull request #20944 from atm-maxime/fix_box_ticket_labels
Fix labels in tickets widgets
2022-05-21 15:43:46 +02:00
Maxime Kohlhaas
4932f86a2d Fix default value for boolean extrafield 2022-05-21 15:41:34 +02:00
Maxime Kohlhaas
4c10ef8f4c Fix labels in tickets widgets 2022-05-21 15:36:04 +02:00
Laurent Destailleur
5ede88ef3c Merge pull request #20943 from inovea-conseil/FIX_20621
FIX #20621 signature online with proposal with n page.
2022-05-21 15:34:48 +02:00
Laurent Destailleur
2c2544d471 Fix scrutinizer 2022-05-21 15:31:08 +02:00
Nicolas
11da45646e FIX signature online with proposal with n page. 2022-05-21 15:30:52 +02:00
John BOTELLA
9ba1020298 Fix version detect 2022-05-21 15:03:10 +02:00
Laurent Destailleur
b14c04a8f0 Fix regression 2022-05-21 15:02:14 +02:00
Laurent Destailleur
f3ca26576d Fix regression 2022-05-21 14:17:49 +02:00
Laurent Destailleur
e341ca0fdd Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-21 11:00:13 +02:00
Laurent Destailleur
d38b9187f3 Merge branch 'develop' into dev_new_add_ref_clinet_intervention 2022-05-21 10:48:09 +02:00
Laurent Destailleur
71c71d11c4 Merge pull request #20931 from homer8173/patch-36
Update categorie.class.php
2022-05-21 10:47:09 +02:00
Laurent Destailleur
4a2a6fd747 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-21 10:40:00 +02:00
Laurent Destailleur
0cb9fe25a8 Merge pull request #20922 from homer8173/patch-31
Fix scrutinizer
2022-05-21 10:39:06 +02:00
Laurent Destailleur
e36c6f2268 Merge pull request #20923 from homer8173/patch-32
FIX scrutinizer
2022-05-21 10:38:41 +02:00
Laurent Destailleur
7c9d360019 Merge pull request #20937 from atm-maxime/fix_date_creation_visible
Fix : date_creation must have visible=-2
2022-05-21 10:34:01 +02:00
Laurent Destailleur
21c3f27e72 Merge pull request #20941 from inovea-conseil/FIX#20448
FIX#20448 missing preg_replace for vat rate when adding a free line
2022-05-21 10:33:41 +02:00
Laurent Destailleur
653e59ffeb Merge pull request #20939 from atm-maxime/fix_select_project_on_event
Fix select projet on event creation
2022-05-21 10:28:35 +02:00
Laurent Destailleur
54e572b94f Fix 2022-05-21 10:25:20 +02:00
IC-Ilies
c12ae28ad7 FIX#20448 missing preg_replace for vat rate when adding a free line 2022-05-21 09:31:33 +02:00
Alexandre SPANGARO
84900ceab7 Add documentation and data example on table 2022-05-21 07:55:48 +02:00
Alexandre SPANGARO
db522fe685 Merge remote-tracking branch 'upstream/develop' into 16a12_assets_sql 2022-05-21 07:16:45 +02:00
Laurent Destailleur
a55fe58d4c Merge pull request #20921 from homer8173/patch-30
FIX scrutinizer
2022-05-21 01:40:37 +02:00
John BOTELLA
cf321dd8e5 change comment 2022-05-21 01:26:02 +02:00
Maxime Kohlhaas
0d7386ab89 Fix select projet on event creation 2022-05-21 01:23:39 +02:00
Laurent Destailleur
980c9874ab Merge pull request #20895 from ATM-Consulting/FIX_15.0_unable_to_add_several_cron_jobs_with_same_method_and_different_parameters
FIX 15.0: modules cannot declare more than 1 cron job using the same method with different parameters
2022-05-21 01:17:28 +02:00
Laurent Destailleur
6aa4ce2acb Merge pull request #20896 from marc-dll/13.0_FIX_new_membership_select_width
FIX: new member subscription: bank account and payment mode might be hidden
2022-05-21 00:48:58 +02:00
Laurent Destailleur
ef32179ba7 Merge pull request #20935 from atm-maxime/fix_fields_check_enabled
Fix : fields must check module enabled
2022-05-21 00:48:22 +02:00
Laurent Destailleur
4378ec2e2b Merge pull request #20879 from altairisfr/takepos_hide_stock
NEW: TAKEPOS - add constant to hide stock on cart lines
2022-05-21 00:47:41 +02:00
Laurent Destailleur
d84bdf3dc2 Merge pull request #20897 from Hystepik/develop#5
Fix : contact backtopage on confirm_delete
2022-05-21 00:46:37 +02:00
Laurent Destailleur
9a0e5c0591 Merge pull request #20898 from frederic34/patch-1
Update card.php
2022-05-21 00:45:36 +02:00
Laurent Destailleur
c02e3f959f Merge pull request #20899 from atm-gauthier/NEW/sortorder_on_holiday_type_dictionnary
New/sortorder on holiday type dictionnary
2022-05-21 00:43:52 +02:00
Laurent Destailleur
1196d6f48c Merge pull request #20907 from atm-quentin/NEW_hook_format_address
FIX : hook for dol_format_address
2022-05-21 00:42:11 +02:00
Laurent Destailleur
3080aafa2a Merge pull request #20914 from grandoc/new_branch_20_05_2022_02
The property supplier_invoice_id does not seem to exist on Asset
2022-05-21 00:40:55 +02:00
Laurent Destailleur
a24fad1a44 Merge pull request #20925 from homer8173/patch-34
Update files.lib.php
2022-05-21 00:39:10 +02:00
John BOTELLA
e48bf14dae Merge branch 'develop' of github.com:Dolibarr/dolibarr into new_formsetup_as_default 2022-05-21 00:38:53 +02:00
Laurent Destailleur
cd4a449580 Merge pull request #20924 from homer8173/patch-33
FIX scrutinizer
2022-05-21 00:36:48 +02:00
John BOTELLA
f8dcc1daaf Add form setup and backport as default setup builder 2022-05-21 00:36:13 +02:00
Laurent Destailleur
305798906b Merge pull request #20928 from Hystepik/develop#7
Fix : bug import societe with null status
2022-05-21 00:33:31 +02:00
John BOTELLA
72bfedaba1 Add form setup and backport as default setup builder 2022-05-21 00:33:28 +02:00
Laurent Destailleur
fffd655442 Merge pull request #20933 from atm-maxime/fix_recruitment_missing_const
Fix missing const in recruitment module
2022-05-21 00:24:01 +02:00
Laurent Destailleur
e2c411b224 Merge pull request #20934 from atm-maxime/fix_er_right_to_pay
Fix wrong right test to show button
2022-05-21 00:23:51 +02:00
Maxime Kohlhaas
755bce9fe1 Fix : date_creation must have visible=-2 2022-05-21 00:22:47 +02:00
Maxime Kohlhaas
cff5ec8605 Fix : fields must check module enabled 2022-05-21 00:08:18 +02:00
Laurent Destailleur
106fe22234 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-20 23:35:41 +02:00
Laurent Destailleur
d9dbfd063b Debug v16 2022-05-20 23:34:58 +02:00
Maxime Kohlhaas
8231a9ea0f Fix wrong right test to show button 2022-05-20 23:29:35 +02:00
Laurent Destailleur
98d22ed31b Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-05-20 23:29:32 +02:00
Laurent Destailleur
ee6131612a Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/accountancy/class/bookkeeping.class.php
2022-05-20 23:28:01 +02:00
Laurent Destailleur
b184a1512f Merge pull request #20909 from daraelmin/patch-2
FIX regression PR #20713
2022-05-20 23:24:34 +02:00
Maxime Kohlhaas
bba6a917cb Fix missing const in recruitment module 2022-05-20 23:21:08 +02:00
Laurent Destailleur
29092c2eca Merge pull request #20929 from atm-john/16.0_fix_form_setup
FIX : fatal error and missing param
2022-05-20 23:10:42 +02:00
Laurent Destailleur
420feba56f Merge branch 'develop' into develop#6 2022-05-20 23:06:30 +02:00
Laurent Destailleur
9661342422 Disabled for beta 16. Will be analyzed later. 2022-05-20 23:00:25 +02:00
Laurent Destailleur
3794c8193d Merge pull request #20573 from wdammak/patch-48
Avoid duplicate 3rd partires
2022-05-20 22:51:43 +02:00
Laurent Destailleur
58a77ae890 Merge pull request #20134 from Hystepik/develop#2
Fix : fix bug in modulebuilder and fix php8.0 warnings in modulebuilder
2022-05-20 22:50:35 +02:00
Norbert Penel
5591ee7e6f Update categorie.class.php 2022-05-20 22:36:48 +02:00
John BOTELLA
c3e3eab594 Fix missing hooks and fatal error 2022-05-20 22:34:44 +02:00
Laurent Destailleur
748587abd4 Merge pull request #20919 from ynnoig/bugfix/issue_19468
FIX #19468
2022-05-20 22:32:32 +02:00
Laurent Destailleur
d7f93826dd Merge pull request #20916 from hregis/fix_scrutinizer
Fix scrutinizer
2022-05-20 22:29:51 +02:00
Laurent Destailleur
fcd70fa852 Merge pull request #20917 from inovea-conseil/FIX#20828
FIX #20828
2022-05-20 22:27:37 +02:00
Laurent Destailleur
462a3b17c2 Fix regression 2022-05-20 22:24:06 +02:00
John BOTELLA
b081649907 Fix fatal error and missing param 2022-05-20 22:05:13 +02:00
Lucas Marcouiller
98af6f8606 Fix : import on societe with null status 2022-05-20 22:01:39 +02:00
Norbert Penel
31c39226d6 Update commonobject.class.php 2022-05-20 21:57:02 +02:00
Norbert Penel
e77bf4a320 dangerous overwritting 2022-05-20 21:53:42 +02:00
Laurent Destailleur
fb74bbc204 Merge pull request #20920 from homer8173/develop
propagate tva  rate from supplier FIX #20803
2022-05-20 21:42:17 +02:00
Laurent Destailleur
786816dd44 Merge pull request #20881 from FHenry/15_fix_template_modbuilder
fix: module builder template bad error message affactation
2022-05-20 21:40:35 +02:00
Laurent Destailleur
d0030cd4f5 Merge pull request #20884 from Easya-Solutions/14.0-fix-pdf-squille-qyt-received-label-from-status
FIX qty received label in Squille PDF model
2022-05-20 21:40:16 +02:00
Laurent Destailleur
432c07ec31 Merge pull request #20892 from atm-greg/Fix_15.0_Fatal_on_holiday_approve_massaction
add missing CMailFile class requirement
2022-05-20 21:35:33 +02:00
Laurent Destailleur
beb710957c Merge pull request #20901 from atm-GregM/DolGetButtonAction_Projet
FIX : replacing to dolGetButtonAction on Projet card
2022-05-20 21:33:42 +02:00
Laurent Destailleur
dc54ae6879 Merge pull request #20908 from ptibogxiv/patch-8
Fix box activity for php 8
2022-05-20 21:31:41 +02:00
Norbert Penel
9bb0f639f6 Update files.lib.php 2022-05-20 21:31:14 +02:00
Laurent Destailleur
2ea5fa3a68 Merge pull request #20885 from atm-lena/15.0_fetchpropal_fetchsignaturedate
Add date signature in propal fetch
2022-05-20 21:15:05 +02:00
Lucas Marcouiller
c887f48dee fix in social import 2022-05-20 21:12:55 +02:00
Laurent Destailleur
4162a02cc1 Fix deprecated remise must be remove from insert 2022-05-20 20:10:45 +02:00
Laurent Destailleur
168d1d4334 Merge pull request #20890 from Hystepik/develop#1
Fix : php 8.0 warnings
2022-05-20 19:41:20 +02:00
Laurent Destailleur
b44676aa1a Merge pull request #20887 from grandoc/new_branch_18_05_2022
fix deprecated for fk_statut
2022-05-20 19:40:22 +02:00
stickler-ci
20b74cebc0 Fixing style errors. 2022-05-20 17:32:58 +00:00
Norbert Penel
b21facc3db FIX scrutinizer
https://scrutinizer-ci.com/g/Dolibarr/dolibarr/issues/develop/files/htdocs/categories/class/api_categories.class.php?orderField=path&order=asc&honorSelectedPaths=0
2022-05-20 19:32:27 +02:00
Norbert Penel
2a22a530e9 FIX scrutinizer
https://scrutinizer-ci.com/g/Dolibarr/dolibarr/issues/develop/files/htdocs/asset/model/depreciation_options.php?orderField=path&order=asc&honorSelectedPaths=0
2022-05-20 19:27:15 +02:00
stickler-ci
5c01db353a Fixing style errors. 2022-05-20 17:26:17 +00:00
Norbert Penel
877b487298 Fix scrutinizer
https://scrutinizer-ci.com/g/Dolibarr/dolibarr/issues/develop/files/htdocs/asset/card.php?selectedLabels%5B0%5D=9&orderField=path&order=asc&honorSelectedPaths=0
2022-05-20 19:25:46 +02:00
stickler-ci
3780718bcf Fixing style errors. 2022-05-20 17:23:54 +00:00
Norbert Penel
0533fd4762 scrutinizer
https://scrutinizer-ci.com/g/Dolibarr/dolibarr/issues/develop/files/htdocs/adherents/type_translation.php?orderField=path&order=asc&honorSelectedPaths=0
2022-05-20 19:21:47 +02:00
Laurent Destailleur
4c1226ca83 Merge pull request #20915 from inovea-conseil/FIX_Cmailfile
Fix cmailfile #20636
2022-05-20 19:20:59 +02:00
stickler-ci
18890e2cbb Fixing style errors. 2022-05-20 17:11:36 +00:00
Norbert Penel
a3fc71981f send tva rate 2022-05-20 19:09:46 +02:00
Norbert Penel
6e9c1764ad propage tva rate on tva field 2022-05-20 19:08:26 +02:00
John BOTELLA
1452e74431 Fix sanitize 2022-05-20 19:01:25 +02:00
Giovanni Piemontese
945144d5a3 Fixed pagination on public ticket list page - ISSUE 19468 2022-05-20 18:46:02 +02:00
IC-Ilies
c08c86a9d8 FIX #20828 2022-05-20 17:52:53 +02:00
Regis Houssin
a302ffa5fb FIX wrong var name 2022-05-20 17:51:16 +02:00
Regis Houssin
334baeffaa FIX syntax error 2022-05-20 17:37:36 +02:00
Regis Houssin
56d6dd0603 FIX scrutinizer 2022-05-20 17:34:37 +02:00
Philippe Grand
1cefe479e7 Update adherent_type.class.php 2022-05-20 17:20:41 +02:00
Nicolas
9a1aa0d5ea FIX Warning on attribut 2022-05-20 17:14:30 +02:00
Lucas Marcouiller
2b84dc39de fix error management 2022-05-20 17:03:36 +02:00
stickler-ci
80e0e5b987 Fixing style errors. 2022-05-20 15:03:36 +00:00
Philippe GRAND
58a2e9c389 fix : The property supplier_invoice_id does not seem to exist on Asset 2022-05-20 16:55:50 +02:00
Philippe GRAND
61d9e48821 fix : The property other does not seem to exist on AdherentType. 2022-05-20 15:48:25 +02:00
stickler-ci
18e9a332b4 Fixing style errors. 2022-05-20 12:58:46 +00:00
priojk
41668d2e72 Merge branch 'develop' of https://github.com/priojk/dolibarr into develop 2022-05-20 14:55:14 +02:00
priojk
03d60ec05e NEW #20905 add hooks for accountancy export 2022-05-20 14:54:26 +02:00
priojk
d698cbfd9a Feature: add hooks for accountancy export 2022-05-20 14:48:37 +02:00
ptibogxiv
3a4657e5ec Fix box activity for php 8
annee doesn't exist so makes php error
2022-05-20 11:18:30 +02:00
Florian HENRY
8af848c539 add Ref client in PDF and send to propal on create 2022-05-20 10:40:59 +02:00
Florian HENRY
93831663d1 Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into dev_new_add_ref_clinet_intervention 2022-05-20 10:31:29 +02:00
Quentin VIAL-GOUTEYRON
a2fe72225f NEW : hook for dol_format_address 2022-05-20 10:06:28 +02:00
daraelmin
3d734e8d34 FIX regression PR #20713
Please do not revert with PR #20900
2022-05-20 09:22:16 +02:00
Laurent Destailleur
fe0bbbb626 Better compatibility 2022-05-19 21:32:43 +02:00
Laurent Destailleur
9e2e3393c6 Work on popup create pages 2022-05-19 21:32:17 +02:00
Laurent Destailleur
ae34fd1498 Log 2022-05-19 20:23:42 +02:00
Laurent Destailleur
2d16af1d31 Debug import wizard 2022-05-19 20:18:18 +02:00
GregM
0defbe8205 replacing to dolGetButtonAction on Projet card 2022-05-19 17:55:13 +02:00
stickler-ci
8b5c4b02c1 Fixing style errors. 2022-05-19 12:17:45 +00:00
Gauthier PC portable 024
8438c7cd6c FIX : sortorder 2022-05-19 14:09:50 +02:00
Laurent Destailleur
4b996f79a9 Debug v16 2022-05-19 13:52:29 +02:00
Laurent Destailleur
672a646fa9 Fix scrutinizer 2022-05-19 12:59:29 +02:00
Frédéric FRANCE
243dfacb15 Update card.php 2022-05-19 12:46:15 +02:00
Frédéric FRANCE
ad3276b579 Update card.php 2022-05-19 12:42:15 +02:00
Frédéric FRANCE
2114e51b0e Update card.php 2022-05-19 12:34:54 +02:00
Laurent Destailleur
5dfd5ed444 css 2022-05-19 12:34:15 +02:00
Gauthier PC portable 024
1e0972f0a1 NEW : sortorder on holiday type dictionnary 2022-05-19 12:34:05 +02:00
Frédéric FRANCE
e44e9d812a Update card.php 2022-05-19 12:28:50 +02:00
Laurent Destailleur
7fd3bb0aae Remove deprecated code 2022-05-19 12:08:03 +02:00
Laurent Destailleur
d0db89faf9 debug 2022-05-19 12:02:04 +02:00
Laurent Destailleur
e5cda0b80e Debug v16 2022-05-19 11:55:14 +02:00
Laurent Destailleur
09cf9e82f8 Debug v16 2022-05-19 11:47:43 +02:00
lmarcouiller
4b58425181 Fix : contact backtopage on confirm_delete 2022-05-19 10:54:35 +02:00
Marc de Lima Lucio
25196fa709 FIX: new member subscription: bank account and payment mode might be hidden 2022-05-19 10:20:31 +02:00
atm-florian
0bf588962b FIX 15.0: modules cannot declare more than 1 cron job using the same method with different parameters 2022-05-19 09:45:37 +02:00
Laurent Destailleur
5f9ef61d32 Debug v16 2022-05-19 09:36:47 +02:00
Laurent Destailleur
d38697d74b Missing data in resource module 2022-05-19 08:46:50 +02:00
Laurent Destailleur
53aca952db phpcs 2022-05-18 23:55:59 +02:00
Laurent Destailleur
38aced687b Fix scrutinizer 2022-05-18 23:52:43 +02:00
Laurent Destailleur
6b88655213 Fix num_rows 2022-05-18 23:40:42 +02:00
Laurent Destailleur
6d848edba7 Fix scrutinizer 2022-05-18 23:28:53 +02:00
Laurent Destailleur
25e70bead8 phpcs 2022-05-18 23:27:26 +02:00
Laurent Destailleur
c1e864f4e2 Clean code 2022-05-18 23:15:11 +02:00
Laurent Destailleur
e1c2968ae7 Look and feel v16 2022-05-18 23:11:59 +02:00
Laurent Destailleur
900be0a899 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-05-18 23:03:31 +02:00
Laurent Destailleur
b5ff847572 Prepare 15.0.3 2022-05-18 22:48:44 +02:00
Florian HENRY
a70274dc47 Merge branch '15.0' of https://github.com/Dolibarr/dolibarr into 15_fix_template_modbuilder 2022-05-18 22:25:38 +02:00
Florian HENRY
4420e73431 fix quote in insert sql 2022-05-18 22:24:30 +02:00
Florian HENRY
566806bbea Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into dev_new_add_ref_clinet_intervention 2022-05-18 22:23:18 +02:00
Laurent Destailleur
0d20a3b606 Prepare code for dic management 2022-05-18 21:54:38 +02:00
Laurent Destailleur
ddf9c06e2c Debug v16 2022-05-18 17:06:42 +02:00
Laurent Destailleur
d22ba9aa66 css 2022-05-18 17:02:50 +02:00
Laurent Destailleur
5736709991 Look and feel v16 2022-05-18 16:55:03 +02:00
atm-greg
c2ee562c89 add missing CMailFile class requirement 2022-05-18 14:47:12 +02:00
Laurent Destailleur
3afeb16227 Debug v16 2022-05-18 13:37:49 +02:00
Laurent Destailleur
8c14f42d60 phpcs 2022-05-18 13:09:17 +02:00
Laurent Destailleur
308e7a3d9b Fix scrutinizer 2022-05-18 12:40:44 +02:00
lmarcouiller
cf2c46b583 Fix : php 8.0 warnings 2022-05-18 12:31:09 +02:00
Philippe GRAND
e0c3fa79cb fix : method was undefined and attached files was nok 2022-05-18 11:39:47 +02:00
Laurent Destailleur
86d34af4b0 Fix deprecated code 2022-05-18 11:38:56 +02:00
Laurent Destailleur
48cb30bd9b Fix scrutinizer 2022-05-18 11:34:54 +02:00
Laurent Destailleur
177e8c17fb Fix scrutinizer 2022-05-18 11:23:21 +02:00
Philippe GRAND
8c62363ad1 fix deprecated for fk_statut 2022-05-18 11:14:20 +02:00
Laurent Destailleur
ed2e1bda46 Clean code v16 2022-05-18 11:00:43 +02:00
lmarcouiller
7e4070faa5 Merge branch 'develop' of github.com:Dolibarr/dolibarr into develop#3 2022-05-18 10:31:56 +02:00
Laurent Destailleur
1a0e416c1a WIP 2022-05-18 00:51:20 +02:00
Laurent Destailleur
7de1fe8646 Look and feel v16 2022-05-18 00:17:46 +02:00
Laurent Destailleur
2e15a14c14 css 2022-05-18 00:10:44 +02:00
Laurent Destailleur
68b25b35b4 Look and feel v16 2022-05-17 23:53:36 +02:00
Laurent Destailleur
8d84ccfe01 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	ChangeLog
	htdocs/theme/eldy/global.inc.php
2022-05-17 23:30:48 +02:00
Laurent Destailleur
a483af70df Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop

Conflicts:
	htdocs/contrat/index.php
2022-05-17 23:27:11 +02:00
Laurent Destailleur
c475789433 Debug v16 2022-05-17 23:23:50 +02:00
Laurent Destailleur
0fa6329947 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-05-17 23:22:28 +02:00
Florian HENRY
416d404b27 Merge branch 'dev_new_add_ref_clinet_intervention' of github.com:FHenry/dolibarr into dev_new_add_ref_clinet_intervention 2022-05-17 22:51:25 +02:00
Florian HENRY
2f959306f7 fix travis 2022-05-17 22:50:42 +02:00
Florian HENRY
ecd0d2a7e2 Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into dev_new_add_ref_clinet_intervention 2022-05-17 22:49:26 +02:00
Laurent Destailleur
180d94b43c More log 2022-05-17 20:31:50 +02:00
Laurent Destailleur
2a34d6354f Fix scrutinizer 2022-05-17 20:08:59 +02:00
Laurent Destailleur
9c00e087fe css 2022-05-17 17:47:35 +02:00
Laurent Destailleur
5ccf4145e3 Clean import process 2022-05-17 17:25:09 +02:00
atm-lena
f18dc89bdf Add ddate signature in fetch propal 2022-05-17 16:26:43 +02:00
lvessiller
978db41f37 FIX qty received label in Squille PDF model 2022-05-17 15:50:45 +02:00
Laurent Destailleur
50b4eaf82f Clean code 2022-05-17 15:29:05 +02:00
Laurent Destailleur
5f0a34166d NEW Add a protection into PHPunit to avoid to forget a var_dump 2022-05-17 15:10:20 +02:00
Laurent Destailleur
4de50da0dd Repare code to forbidden var_dump() into code 2022-05-17 14:55:38 +02:00
Laurent Destailleur
480b48e5e1 Fix var_dump 2022-05-17 14:36:56 +02:00
stickler-ci
8950ae160b Fixing style errors. 2022-05-17 11:00:13 +00:00
Florian HENRY
ada81750c1 NEW: Add Customer Ref on Intervention 2022-05-17 12:53:50 +02:00
Florian HENRY
61f7c4395b fix: module builder template bad error message affactation 2022-05-17 11:55:57 +02:00
lmarcouiller
23da46938a Merge branch 'develop' of github.com:Dolibarr/dolibarr into develop#3 2022-05-17 10:15:35 +02:00
Christophe Battarel
179716ac00 add constant to hide stock on cart 2022-05-17 09:17:36 +02:00
Laurent Destailleur
07f2b78758 Clean code of doliwamp. Remove phpmyadmin 2022-05-17 07:51:45 +02:00
Laurent Destailleur
a2e814b079 Fix permissions 2022-05-17 07:30:02 +02:00
Laurent Destailleur
ddd0848acc Look and feel v16 2022-05-17 01:21:33 +02:00
Laurent Destailleur
b0c96455ce Prepare 15.0.2 2022-05-17 00:59:00 +02:00
Laurent Destailleur
b51465434c Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-17 00:53:16 +02:00
Laurent Destailleur
37f7fed003 Maxi debug of export profiles for v16 2022-05-17 00:51:47 +02:00
Laurent Destailleur
f173ce4aaf Merge pull request #20684 from thomas-Ngr/develop_fix_ticket_extrafields_are_not_kept
fix: Ticket extrafields were not kept during triggers on TICKET_CREAT…
2022-05-16 21:13:25 +02:00
Laurent Destailleur
51dc95fbda Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-16 21:06:19 +02:00
Laurent Destailleur
1900bfe68b Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-05-16 21:06:03 +02:00
Laurent Destailleur
fe7483ccce Merge pull request #20864 from thomas-Ngr/develop_fix_allow_modify_validated_draft_invoice
allow to modify invoices that have been validated in the past
2022-05-16 21:02:53 +02:00
Laurent Destailleur
d13cb10c8b Update facture.class.php 2022-05-16 21:02:09 +02:00
Laurent Destailleur
7890d6f7f6 Update card.php 2022-05-16 21:01:48 +02:00
Laurent Destailleur
249543e368 Merge pull request #20869 from FHenry/dev_new_export_file_withdt
new: add hidden option to add export file with date time
2022-05-16 20:58:45 +02:00
Laurent Destailleur
29aaa3f6f8 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-16 20:45:06 +02:00
Laurent Destailleur
dd02c0607a Removed unexpected plugins 2022-05-16 20:44:58 +02:00
Laurent Destailleur
402398912b Merge pull request #20866 from Easya-Solutions/new-ticket-public-interface
NEW create third-party with contact if not found on pulic ticket
2022-05-16 20:44:40 +02:00
Laurent Destailleur
049799c2e6 Update to ckeditor 4.18 2022-05-16 20:28:00 +02:00
Laurent Destailleur
c020325587 Debug v16 2022-05-16 19:54:49 +02:00
Laurent Destailleur
71c0f08b6c Debug v16 2022-05-16 19:47:06 +02:00
Laurent Destailleur
b87b997c7d Debug v16 2022-05-16 19:19:52 +02:00
Laurent Destailleur
04f64dd252 Look and feel v16 2022-05-16 18:54:50 +02:00
Laurent Destailleur
c3c29393c1 Look and feel v16 2022-05-16 18:00:59 +02:00
Laurent Destailleur
5d148a8a99 Fix alignement 2022-05-16 16:53:19 +02:00
Laurent Destailleur
937d0418b4 Fix tz 2022-05-16 16:08:54 +02:00
Laurent Destailleur
80bce5a893 Look and feel v16 2022-05-16 16:06:00 +02:00
Laurent Destailleur
4cc1f67632 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/compta/bank/line.php
2022-05-16 16:03:07 +02:00
Laurent Destailleur
c8d6dceb53 Merge pull request #20873 from Hystepik/develop#1
Fix : import with selectbox
2022-05-16 15:36:16 +02:00
Laurent Destailleur
732c03b22a Merge pull request #20872 from FHenry/dev_event_factrec
NEW: Add event block on facture_rec #20870
2022-05-16 15:35:52 +02:00
Laurent Destailleur
61153f04c8 Merge branch 'develop' into dev_event_factrec 2022-05-16 15:34:39 +02:00
Laurent Destailleur
400e36d6de Merge pull request #20877 from frederic34/patch-1
dlc dluo are inverted
2022-05-16 15:33:52 +02:00
Laurent Destailleur
783337604d Fix regression in address formating 2022-05-16 15:28:36 +02:00
Laurent Destailleur
7c44436485 Fix phpunit 2022-05-16 15:04:57 +02:00
Laurent Destailleur
8410ba709a Fix field 2022-05-16 15:02:24 +02:00
Laurent Destailleur
b75c0d805b Add more field 2022-05-16 15:01:33 +02:00
Laurent Destailleur
7926945477 FIX update of recruitment should not fill email_msgid in actioncomm 2022-05-16 14:49:06 +02:00
Laurent Destailleur
a92974c818 Fix typo 2022-05-16 14:08:16 +02:00
Laurent Destailleur
84fccb0988 Debug v16 2022-05-16 13:57:11 +02:00
Laurent Destailleur
c3673bfc3c NEW A public form for to send a message and create a lead is available 2022-05-16 13:05:17 +02:00
Frédéric FRANCE
e6c103733e dlc dluo are inverted 2022-05-16 11:06:21 +02:00
Laurent Destailleur
ac60aa4711 NEW Add filter "opportunity status" on statistics of projects. 2022-05-16 10:45:42 +02:00
Laurent Destailleur
508cbee1a5 Fix php8 2022-05-15 22:29:19 +02:00
Laurent Destailleur
1ba8bc9147 css 2022-05-14 07:51:48 +02:00
lmarcouiller
1e406276c5 New : import fields in societe class 2022-05-13 15:04:30 +02:00
lmarcouiller
33491ec4e0 Merge branch 'develop' of github.com:Dolibarr/dolibarr into develop#3 2022-05-13 15:03:03 +02:00
lmarcouiller
cfc8ce2ea8 Revert "New : import fields in societe class"
This reverts commit 2ec2dc59a4.
2022-05-13 15:02:17 +02:00
lmarcouiller
2ec2dc59a4 New : import fields in societe class 2022-05-13 14:55:21 +02:00
lmarcouiller
a77c2c2260 Fix : import with selectbox 2022-05-13 11:51:58 +02:00
Thomas Negre
82017d7a39 allow to modify invoices that have been validated in the past 2022-05-13 11:43:56 +02:00
Florian HENRY
8ebeb0bf8a add c_action_trigger for auto batch invoice création 2022-05-13 11:29:48 +02:00
Florian HENRY
0425becc03 add c_action_trigger and fix travis 2022-05-13 11:23:49 +02:00
Florian HENRY
fa6d738037 NEW: Add event block on facture_rec #20870 2022-05-13 10:46:02 +02:00
lvessiller
89e5d3e1c2 FIX merge from develop 2022-05-13 10:02:35 +02:00
Florian HENRY
9b0c7d0904 new: add hidden option to add export file with date time 2022-05-13 09:58:00 +02:00
Laurent Destailleur
6106d54632 css 2022-05-13 09:54:10 +02:00
lvessiller
d5356076fa Merge branch 'develop' of github.com:Dolibarr/dolibarr into new-ticket-public-interface 2022-05-13 09:32:37 +02:00
lvessiller
8e525681cc FIX reload travis 2022-05-13 09:08:01 +02:00
lvessiller
d624a1e25e FIX stickler-ci 2022-05-13 08:57:08 +02:00
lvessiller
d6f576b2f7 FIX travis 2022-05-13 08:48:05 +02:00
Laurent Destailleur
775a8c5334 Look and feel v16 2022-05-12 20:18:58 +02:00
lvessiller
94dcee622b FIX stickler 2022-05-12 17:58:31 +02:00
lvessiller
0a5b2097e7 FIX resolve conflicts 2022-05-12 17:07:23 +02:00
lvessiller
7c17f6b1cf NEW create third-party with contact if not found on public ticket 2022-05-12 16:52:02 +02:00
Laurent Destailleur
a787fc178b Fix language 2022-05-12 15:27:41 +02:00
Laurent Destailleur
7a361a3bde More info to help debug 2022-05-12 14:28:17 +02:00
Laurent Destailleur
85cddf638f Fix can fix a corrupted lost bank account on bank account lines 2022-05-12 11:06:22 +02:00
Laurent Destailleur
1768c3d926 Code more robust when fk_account has been corrupted 2022-05-12 10:48:34 +02:00
Laurent Destailleur
c46303c0e6 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-12 10:47:31 +02:00
Laurent Destailleur
dc6f90c4a7 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-12 10:38:26 +02:00
Laurent Destailleur
fc33aa854e Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-05-12 10:37:18 +02:00
Laurent Destailleur
88a9b8c201 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-05-12 10:37:08 +02:00
Laurent Destailleur
de19783f19 Fix log 2022-05-12 10:36:18 +02:00
Laurent Destailleur
4e87e47451 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-05-12 10:35:00 +02:00
Laurent Destailleur
62005e1502 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-12 02:19:54 +02:00
Laurent Destailleur
43e7da685b NEW Add more fields to detect duplicate for import of thirdparties 2022-05-12 02:19:31 +02:00
Laurent Destailleur
3be2993dc2 Merge pull request #20818 from Hystepik/develop#3
NEW : Import with select boxes V2
2022-05-12 02:04:52 +02:00
Laurent Destailleur
6fc131b483 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-12 02:03:17 +02:00
Laurent Destailleur
0bd5fe32bd Merge pull request #20827 from Hystepik/develop#1
Fix : adherent module agenda create backtopage
2022-05-12 02:02:51 +02:00
Laurent Destailleur
9ec23c7073 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-12 02:02:36 +02:00
Laurent Destailleur
a261b05866 Merge pull request #20825 from Easya-Solutions/fix-incoterms-dictionary-table-name
FIX dictionary table name in incoterms for Debug v16
2022-05-12 02:02:20 +02:00
Laurent Destailleur
f22661efd7 Merge pull request #20823 from Easya-Solutions/fix-ticket-dictionnry-table-name
FIX dictionary table name in ticket for Debug v16
2022-05-12 02:02:10 +02:00
Laurent Destailleur
7f1e8384dc Clean code 2022-05-12 02:02:04 +02:00
Laurent Destailleur
34cdd17cb8 Merge pull request #20822 from OPEN-DSI/14.0_fix_add_time_spent
FIX: Set datec when add time spent on a project task
2022-05-12 01:57:20 +02:00
Laurent Destailleur
1c2e29fac8 Merge pull request #20830 from atm-quentin/FIX_missing_hook_for_row_ordering
Fix missing hook for row ordering
2022-05-12 01:56:55 +02:00
Laurent Destailleur
bffcb42ef9 Merge pull request #20831 from atm-gauthier/NEW/can_update_rank_on_api_put_function
NEW Can update rank of invoice, proposal and order lines with API update
2022-05-12 01:56:21 +02:00
Laurent Destailleur
f8654072da Merge pull request #20832 from atm-lena/develop_NEW_ForceToWarehouse_moproduction
New "force to"  for mo consumption
2022-05-12 01:54:49 +02:00
Laurent Destailleur
e956e8121d Merge pull request #20821 from rycks/burundi_support_for_dolibarr_13
Burundi support for dolibarr
2022-05-12 01:52:04 +02:00
Laurent Destailleur
c08595866f Merge branch 'develop' into burundi_support_for_dolibarr_13 2022-05-12 01:51:17 +02:00
Laurent Destailleur
5c620c0071 Merge pull request #20829 from Hystepik/develop#5
fix php 8.0 warnings
2022-05-12 01:48:37 +02:00
Laurent Destailleur
162bb2c9df Merge pull request #20833 from atm-john/15.0_fix_formsetup
Fix missing array managements for form setup class
2022-05-12 01:45:21 +02:00
Laurent Destailleur
91110b938e Fix bad db var 2022-05-12 01:38:46 +02:00
Laurent Destailleur
23b1658081 Fix null object 2022-05-12 01:37:20 +02:00
Laurent Destailleur
778e4a255e Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-05-12 01:30:14 +02:00
Laurent Destailleur
bf8ba511cb Fix missing index.php file on "regenerate all files" button for alt lang 2022-05-12 01:28:20 +02:00
Laurent Destailleur
e8481d38c7 Fix missing index.php file on "regenerate all files" button 2022-05-12 00:52:28 +02:00
John BOTELLA
dcd5cfe190 Fix missing array managements 2022-05-11 18:05:06 +02:00
stickler-ci
2d1615de27 Fixing style errors. 2022-05-11 15:22:16 +00:00
stickler-ci
f70a9ad04c Fixing style errors. 2022-05-11 13:42:27 +00:00
Gauthier PC portable 024
bc6cd8cc1c NEW : update rank line is possible on API for customer invoices 2022-05-11 15:34:16 +02:00
Quentin VIAL-GOUTEYRON
5d50a0e9d1 move row object 2022-05-11 15:19:50 +02:00
Quentin VIAL-GOUTEYRON
270ce3d169 FIX missing hook for row ordering 2022-05-11 15:07:39 +02:00
lmarcouiller
207ebc9266 fix php 8.0 warnings 2022-05-11 15:06:11 +02:00
Gauthier PC portable 024
da2a8a59f3 Merge branch '14.0_NEW_rang_on_api_put_line' of github.com:atm-gauthier/dolibarr into NEW/can_update_rank_on_api_put_function 2022-05-11 14:38:16 +02:00
Gauthier PC portable 024
b053dee279 NEW : update rank line is possible on API for orders propal and supplier invoice 2022-05-11 14:26:21 +02:00
atm-lena
1555a6540b Translation 2022-05-11 12:40:51 +02:00
atm-lena
e716c9abd6 Force to warehouse for consume produt in mo 2022-05-11 12:38:24 +02:00
lmarcouiller
fc9c2295c0 Fix : adherent module agenda create backtopage 2022-05-11 11:38:44 +02:00
Thomas Negre
bdb7ba5eaa fix extrafields not being kept on ticket creation 2022-05-11 11:37:02 +02:00
Laurent Destailleur
a526021459 Better size 2022-05-11 11:30:20 +02:00
lvessiller
aed0296ae2 FIX dictionary table name in incoterms for Debug v16 2022-05-11 11:08:53 +02:00
lvessiller
cdf9b89c0a FIX dictionary table for Debug v16 2022-05-11 10:51:43 +02:00
Laurent Destailleur
c5a4877eb8 php8 2022-05-11 10:28:12 +02:00
Laurent Destailleur
da5cf74a08 Fix total 2022-05-11 10:17:56 +02:00
Laurent Destailleur
e7ab9a3545 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-05-11 10:06:01 +02:00
Laurent Destailleur
9e2665fc66 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-11 10:05:35 +02:00
Laurent Destailleur
23665c3f6b Tooltip 2022-05-11 10:02:59 +02:00
Laurent Destailleur
ea0d6b1867 css 2022-05-11 10:00:37 +02:00
Laurent Destailleur
1c4c7201fc Trans 2022-05-11 09:53:23 +02:00
kamel
aee6f408b2 FIX: Set datec when add time spent on a project task 2022-05-11 09:30:39 +02:00
Eric Seigne
6d4455ec17 burundi profId mapping 2022-05-10 23:48:07 +02:00
Eric Seigne
b8e73b4b72 burundi companies type 2022-05-10 23:47:49 +02:00
Eric Seigne
7aad16bc80 burundi currencie 2022-05-10 23:47:36 +02:00
Eric Seigne
99225dab9f burundi departements (Communes) 2022-05-10 23:47:22 +02:00
Eric Seigne
4d759c23b3 burundi : regions (provinces) 2022-05-10 23:47:04 +02:00
Laurent Destailleur
fef6b159bd Merge pull request #20798 from atm-kevin/FIX_Trigger_SetProject
FIX : Trigger on commonObject setProject
2022-05-10 19:30:14 +02:00
Laurent Destailleur
c4f4754b5b Add option EMAIL_ALTERNATIVE_HOST_SIGNATURE 2022-05-10 19:23:30 +02:00
Laurent Destailleur
2dc97ac3ae Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/langs/en_US/errors.lang
2022-05-10 17:16:11 +02:00
Laurent Destailleur
af4e9b7510 Debug v16 2022-05-10 17:05:39 +02:00
Laurent Destailleur
1f59e329cd Work on public form for partnership 2022-05-10 16:50:33 +02:00
Laurent Destailleur
3a5fe5063d Debug v16 2022-05-10 16:19:00 +02:00
Anthony Berton
273f119631 Update pdf.php 2022-05-10 16:14:37 +02:00
Laurent Destailleur
7b21e0b6ff Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-05-10 16:06:32 +02:00
Laurent Destailleur
8fe5dea6e8 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-05-10 16:04:38 +02:00
Laurent Destailleur
c9a0dd327f Fix default value 2022-05-10 16:04:20 +02:00
Laurent Destailleur
fea6771a7a Module Partnership is stable 2022-05-10 15:57:52 +02:00
lmarcouiller
7e439a8248 add of selectimportfieldsource in lang 2022-05-10 15:50:01 +02:00
kevin
a10e8c3696 Remove method Ticket::setProject because method already defined into parent CommonObject 2022-05-10 15:44:41 +02:00
kevin
f28dd2827b Update Ticket::setProject method signature 2022-05-10 15:41:38 +02:00
kevin
76b0deefb3 Merge branch 'develop' of github.com:Dolibarr/dolibarr into FIX_Trigger_SetProject 2022-05-10 15:41:06 +02:00
Anthony Berton
8e75b7102b Update pdf.lib.php 2022-05-10 15:40:45 +02:00
Laurent Destailleur
8ef75ecc7c Better fix fox #20807 2022-05-10 15:27:43 +02:00
Laurent Destailleur
7d3ae7d4b8 Merge pull request #20807 from mapiolca/patch-47
line deleted when updated after rapproched
2022-05-10 15:04:38 +02:00
Laurent Destailleur
a788597723 Merge pull request #20813 from Easya-Solutions/new-ticket-send-message-uncheck-private-message
NEW uncheck send message when private message is checked
2022-05-10 14:49:15 +02:00
Laurent Destailleur
fff9a692b4 Merge pull request #20816 from hregis/fix_missing_loading_global_conf
FIX missing loading of global conf (avoid warning)
2022-05-10 14:47:56 +02:00
Laurent Destailleur
02bad082d6 Merge pull request #19383 from atm-gauthier/NEW/accountancy_massaction_preselect_account_customer_and_supplier_list
NEW : accountancy massaction preselect account (customer and supplier list)
2022-05-10 14:45:35 +02:00
Laurent Destailleur
628554caf4 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-10 14:38:52 +02:00
Laurent Destailleur
91d539bbef Clean code of not used method 2022-05-10 14:38:40 +02:00
Regis Houssin
8692038be2 FIX missing loading of global conf 2022-05-10 14:06:27 +02:00
Laurent Destailleur
67566a6064 Merge pull request #20815 from hregis/fix_missing_execute_hook
FIX missing executeHooks
2022-05-10 13:53:11 +02:00
Regis Houssin
6f8eef9550 FIX missing executeHooks 2022-05-10 12:56:22 +02:00
stickler-ci
98f5edbfba Fixing style errors. 2022-05-10 10:47:18 +00:00
Gauthier PC portable 024
74ba2d551a Merge branch 'NEW/update_on_categorie_product_link_table' of github.com:atm-gauthier/dolibarr into NEW/develop_update_on_categorie_product_link_table 2022-05-10 12:36:49 +02:00
Gauthier PC portable 024
08a3ef5bbf NEW : method avoid being blocked when entry already exists for import in llx_categorie_product (use update keys) 2022-05-10 12:25:38 +02:00
lmarcouiller
ed13280ea1 fix bug in select boxes 2022-05-10 12:15:52 +02:00
lvessiller
419fd94025 NEW uncheck send message when private message is checked 2022-05-10 12:08:23 +02:00
Laurent Destailleur
1e8547dd44 Merge pull request #20650 from bb2a/Move-checkbox-column-as-first-column-on-Thirdparty-list
NEW - Move checkbox column as first column on Thirdparty list
2022-05-10 12:00:13 +02:00
Laurent Destailleur
218749ead4 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-05-10 11:52:22 +02:00
Laurent Destailleur
80fd3666df Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-10 11:51:52 +02:00
Laurent Destailleur
7e94d53882 Clean not used files 2022-05-10 11:51:39 +02:00
Laurent Destailleur
86b4c97287 Merge branch 'develop' into develop#6 2022-05-10 11:43:27 +02:00
Laurent Destailleur
3271522971 Merge pull request #20790 from altairis-melina/empty_search
NEW : TakePos - Empty search results when emptying search term
2022-05-10 11:42:00 +02:00
Laurent Destailleur
bfa19bc065 Merge pull request #20797 from altairis-melina/hookaddline
add hook for takepos addline
2022-05-10 11:41:22 +02:00
Laurent Destailleur
e3ff7b43ab Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-05-10 11:39:55 +02:00
Laurent Destailleur
f9f8896921 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-10 11:39:14 +02:00
Laurent Destailleur
fc718e68ee css 2022-05-10 11:38:56 +02:00
Laurent Destailleur
1b82340e1b Merge pull request #20785 from aspangaro/16a29-Fixcustomerdeposit
FIX Accountancy - Add an option to disable use of sub-account on deposit line
2022-05-10 11:37:24 +02:00
Laurent Destailleur
54e149b959 Merge pull request #20810 from FHenry/15.0_fix_filename_lenght
fix: limit filename lenght to show glasses into document boxes
2022-05-10 11:32:08 +02:00
Laurent Destailleur
44e7496ef3 Merge pull request #20811 from ibuiv/allow-retrocession2
add hidden option SUPPLIER_ORDER_ALLOW_NEGATIVE_QTY_FOR_SUPPLIER_ORDE…
2022-05-10 11:11:13 +02:00
Laurent Destailleur
6ca331d382 git push origin developMerge branch 'vold-lu-fixes/formconfirm-pass-action' into develop 2022-05-10 11:07:40 +02:00
Laurent Destailleur
7c0c56bf7b css 2022-05-10 11:07:29 +02:00
Laurent Destailleur
c2143e01ee Merge branch 'fixes/formconfirm-pass-action' of
https://github.com/vold-lu/dolibarr into
vold-lu-fixes/formconfirm-pass-action

# Conflicts:
#	htdocs/core/class/html.form.class.php
2022-05-10 11:07:16 +02:00
Laurent Destailleur
2e6f4862f9 Fix creation of thirdparty when module supplier not enabled
NEw can use the clicktoclipboard feature when clicking on value
2022-05-10 10:57:51 +02:00
Aloïs Micard
80ed7af114 formConfirm: pass action even when not confirming 2022-05-10 10:18:53 +02:00
Laurent Destailleur
cffec01451 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/core/lib/functions.lib.php
	test/phpunit/SecurityTest.php
2022-05-09 22:04:36 +02:00
Laurent Destailleur
ef18456724 Fix regression in dol_eval 2022-05-09 21:56:21 +02:00
amarchal
d21f5eca83 add hidden option SUPPLIER_ORDER_ALLOW_NEGATIVE_QTY_FOR_SUPPLIER_ORDER_RETURN 2022-05-09 20:13:06 +02:00
Laurent Destailleur
d0c95d87af Debug v16 2022-05-09 18:59:11 +02:00
Laurent Destailleur
32a1c20154 Fix phpcs 2022-05-09 17:33:45 +02:00
Laurent Destailleur
779b75bf65 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/accountancy/class/bookkeeping.class.php
2022-05-09 16:53:53 +02:00
Laurent Destailleur
0cac14c82f Fix trans 2022-05-09 16:51:31 +02:00
Laurent Destailleur
b3bfe22f58 FIX Error management 2022-05-09 16:45:57 +02:00
Laurent Destailleur
370f090403 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-05-09 16:43:05 +02:00
Laurent Destailleur
43e1486dbb FIX No empty line inserted into accounting_bookkeeping 2022-05-09 16:42:08 +02:00
Laurent Destailleur
720a09dacb Fix regression 2022-05-09 15:57:10 +02:00
Laurent Destailleur
86a8ae8c3d NEW Suggest a way to run upgrade per entities. 2022-05-09 15:24:46 +02:00
Florian HENRY
333b22b961 fix: limit filename lenght to show glasses 2022-05-09 14:32:47 +02:00
Gauthier PC portable 024
60defe4108 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_stockstransfers 2022-05-09 13:29:46 +02:00
Gauthier PC portable 024
5daca35e79 FIX : new tables loading system 2022-05-09 12:33:39 +02:00
Laurent Destailleur
e9d7e216e2 Debug v16 2022-05-09 12:13:31 +02:00
Laurent Destailleur
c3c24fe342 NEW The 'reposition' class works on ajax constantonoff that redirects 2022-05-09 11:52:19 +02:00
Laurent Destailleur
9ae3f442e7 Fix css 2022-05-09 11:28:00 +02:00
Laurent Destailleur
7c32ac2f42 Debug v16 2022-05-09 11:16:58 +02:00
stickler-ci
017eb99e86 Fixing style errors. 2022-05-09 07:53:37 +00:00
Pierre Ardoin
ec00c6fef2 line deleted when updated after rapproched
Fix an issue that deletes line when we update data after its rappro.
2022-05-09 09:49:07 +02:00
Laurent Destailleur
104b4dcfe5 Trans 2022-05-09 09:31:43 +02:00
Laurent Destailleur
522c092aeb Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-05-09 09:26:10 +02:00
Laurent Destailleur
5912a4a6c0 Merge pull request #18853 from marc-dll/NEW_deposit_payment_terms
NEW: payment conditions enabling semi-automatic deposit creation (Issue #18439)
2022-05-09 09:17:08 +02:00
melina
0ac89a5eae test reshook 2022-05-09 08:23:26 +02:00
Laurent Destailleur
b3b6337c4c Merge branch 'develop' into NEW_deposit_payment_terms 2022-05-08 23:09:06 +02:00
Laurent Destailleur
ff065e0302 Merge pull request #19525 from altairis-melina/categorydescription
NEW : Add constant to show category description in TakePos
2022-05-08 20:39:50 +02:00
stickler-ci
a12c0f6dbf Fixing style errors. 2022-05-08 18:33:23 +00:00
Laurent Destailleur
c718b86f9b Update index.php 2022-05-08 20:28:37 +02:00
Laurent Destailleur
4779b8d3e1 Merge branch 'develop' into categorydescription 2022-05-08 20:26:48 +02:00
Laurent Destailleur
5d0af6d216 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-08 20:08:29 +02:00
Laurent Destailleur
99baee77fe Doc 2022-05-08 20:08:18 +02:00
Laurent Destailleur
30597d7f89 Merge pull request #18163 from FHenry/dev_new_project_upgrade_external_user_perms_project
NEW: Separate read-only and adding time on projects
2022-05-08 19:50:46 +02:00
Laurent Destailleur
90c95bc638 Merge pull request #20610 from hregis/fix_missng_signature_library
FIX missing signature library when ODT model is used
2022-05-08 19:36:06 +02:00
Laurent Destailleur
c24c2015af Merge pull request #20762 from fappels/develop_chkbxlst_entity_filter
NEW: Can use current entity filter on 'chkbxlst'
2022-05-08 19:16:20 +02:00
Laurent Destailleur
07e252e8e4 Merge pull request #20781 from hregis/fix_missing_country_filter
FIX missing country filter in contract list
2022-05-08 19:15:46 +02:00
Laurent Destailleur
f14e614430 Merge pull request #20779 from atm-GregM/develop_new_massaction_extrafield_product
NEW : Add massaction "Edit Extrafield" for Product
2022-05-08 19:15:25 +02:00
Laurent Destailleur
16fac44e9f Update products.lang 2022-05-08 19:14:32 +02:00
Laurent Destailleur
b04ef20708 Merge pull request #20782 from atm-adrien/FIX_move_inventory_column-develop
Fix move inventory column develop
2022-05-08 19:13:26 +02:00
Laurent Destailleur
b4e1bac32d Merge pull request #20783 from fappels/14_fix_error_handling
Fix errors.lang merge conflict and fix reception error handling
2022-05-08 19:12:11 +02:00
Laurent Destailleur
a65e9f33db Merge pull request #20793 from atm-gauthier/fix_salaries_payments_and_stats
FIX : in salary stats and payment list, we must check right perms as well as salary list
2022-05-08 19:11:54 +02:00
Laurent Destailleur
649e6eb3ac Merge pull request #20787 from dolibit-ut/patch-399
Update index.php
2022-05-08 19:10:09 +02:00
Laurent Destailleur
56c943d4a7 Merge pull request #20794 from altairis-melina/invoicehooks
NEW: TakePos - add hooks for cart display
2022-05-08 19:08:30 +02:00
Laurent Destailleur
b416c49348 Merge pull request #20796 from altairis-melina/transradio
FIX: size and translations of radio buttons
2022-05-08 19:07:11 +02:00
Laurent Destailleur
cfe347de17 Merge pull request #20799 from FHenry/15.0_fix_invoice_stat
fix: invoice stat
2022-05-08 19:03:55 +02:00
Laurent Destailleur
9f0ddd3712 Merge pull request #20800 from ATM-Consulting/FIX_pricejs
FIX: make pricejs behave more like PHP's price() in Dolibarr
2022-05-08 19:03:38 +02:00
Laurent Destailleur
000c6f69bd Merge pull request #20801 from aspangaro/16a31
Look & feel v16
2022-05-08 18:56:23 +02:00
Laurent Destailleur
bbba8abebc Merge pull request #20805 from aspangaro/16a32
FIX Accountancy - Product Account - SQL Error with only_full_group_by option enabled
2022-05-08 18:55:46 +02:00
Laurent Destailleur
6592eb5d73 Debug for php 8.1 2022-05-08 18:25:22 +02:00
Laurent Destailleur
65eb11efdf Fix sql migration 2022-05-08 17:39:53 +02:00
Laurent Destailleur
f52a7a26f6 Debug v16 - Fix for postgresql - Fix for sql loading per module - php8 2022-05-08 15:18:34 +02:00
Alexandre SPANGARO
710f189b98 FIX SQL Error with full_group_by option enabled 2022-05-08 06:34:47 +02:00
Laurent Destailleur
3256ac2f2a css 2022-05-07 19:47:51 +02:00
Alexandre SPANGARO
6ee15794e6 Merge remote-tracking branch 'upstream/develop' into 16a29-Fixcustomerdeposit 2022-05-07 07:59:23 +02:00
Alexandre SPANGARO
39716dce28 Look & feel v16 2022-05-07 06:43:23 +02:00
Laurent Destailleur
6b9ed5aa32 Better message in installation process 2022-05-06 20:03:59 +02:00
atm-florian
60b7904340 typo in doc string 2022-05-06 18:50:02 +02:00
atm-florian
200faac99e Simplify behaviour of 'mode' parameter, systematically use Intl if available 2022-05-06 18:38:10 +02:00
atm-florian
afcfcc7dd2 FIX: make pricejs behave more like PHP's price() in Dolibarr (taking locale settings into account) 2022-05-06 18:30:19 +02:00
Florian HENRY
318e403013 fix: invoice stat 2022-05-06 16:15:52 +02:00
kevin
19cedae1c1 Add trigger on commonObject setProject 2022-05-06 16:14:38 +02:00
melina
7747489259 add hook for takepos addline 2022-05-06 15:49:44 +02:00
lmarcouiller
81e2383515 import with selectbox 2022-05-06 15:38:47 +02:00
Laurent Destailleur
a57312d09c Look and feel v16 2022-05-06 14:13:04 +02:00
Laurent Destailleur
bb6f73136a Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/core/class/html.form.class.php
2022-05-06 12:46:26 +02:00
Laurent Destailleur
177f3f9ca4 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-05-06 12:43:56 +02:00
Laurent Destailleur
0426be5059 FIX Update of sale price (log not correctly updated)
Conflicts:
	htdocs/product/class/product.class.php
	htdocs/product/price.php
2022-05-06 12:42:45 +02:00
Laurent Destailleur
f222328ff8 FIX Update of sale price (log not correctly updated) 2022-05-06 12:37:18 +02:00
melina
7af2d3a54d fix radio buttons size 2022-05-06 12:04:57 +02:00
melina
a65cb2baff translate radio buttons label 2022-05-06 12:04:12 +02:00
Laurent Destailleur
203c4e8082 Fix bad test 2022-05-06 11:48:15 +02:00
Gauthier PC portable 024
2c840e80fb Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_stockstransfers 2022-05-06 11:41:18 +02:00
melina
5a76385d91 add hook for cart display 2022-05-06 11:34:05 +02:00
Gauthier PC portable 024
2256f8811d FIX : in salary stats and payment list, we must check right perms as well as salary list 2022-05-06 11:24:53 +02:00
Florian HENRY
477aa4cc09 Merge branch 'dev_new_project_upgrade_external_user_perms_project' of github.com:FHenry/dolibarr into dev_new_project_upgrade_external_user_perms_project 2022-05-06 11:19:27 +02:00
Florian HENRY
9192596ec3 merge 2022-05-06 11:17:29 +02:00
Florian HENRY
a54c0fb247 Merge branch 'develop' of github.com:Dolibarr/dolibarr into dev_new_project_upgrade_external_user_perms_project 2022-05-06 11:13:44 +02:00
Laurent Destailleur
e79ab6e991 Prepare the v16 freeze 2022-05-06 11:09:09 +02:00
Laurent Destailleur
7f147a25ea Update doc 2022-05-06 11:07:03 +02:00
melina
bfab24f848 merge develop 2022-05-06 10:32:12 +02:00
UT from dolibit
0483e89c82 Update index.php 2022-05-06 08:19:47 +02:00
Laurent Destailleur
f3a630fd30 Clean code 2022-05-06 05:21:26 +02:00
Laurent Destailleur
583343a171 Clean code 2022-05-06 05:08:54 +02:00
Laurent Destailleur
9dbeccb8d8 Doc 2022-05-06 05:02:29 +02:00
Laurent Destailleur
1942e35459 Fix phpunit 2022-05-06 02:34:23 +02:00
Laurent Destailleur
f9942dfeaa Debug v16 2022-05-05 23:02:23 +02:00
Laurent Destailleur
fea8b263f9 NEW Add a tab with list of application on the jobposition file. 2022-05-05 21:56:59 +02:00
Laurent Destailleur
e0a690bead Clean code 2022-05-05 19:51:19 +02:00
Laurent Destailleur
62dd7244a3 css 2022-05-05 18:29:36 +02:00
Laurent Destailleur
2810623e6e css 2022-05-05 17:47:52 +02:00
stickler-ci
fb97f7db29 Fixing style errors. 2022-05-05 14:59:49 +00:00
Alexandre SPANGARO
7bb5ac4095 FIX Accountancy - Add an option to disable use of sub-account on deposit line 2022-05-05 16:48:01 +02:00
Laurent Destailleur
935b3c300a Debug v16 2022-05-05 16:41:21 +02:00
Laurent Destailleur
93cd0174cf Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-05 13:16:03 +02:00
Laurent Destailleur
6c624a9a45 Fix name of sql file 2022-05-05 12:26:15 +02:00
Francis Appels
10e13286d3 Add missing reception back to draft error handling 2022-05-05 11:08:17 +02:00
Francis Appels
29d1424413 fix merge conflict
Add missing error translation key
2022-05-05 11:07:39 +02:00
stickler-ci
23ae3af247 Fixing style errors. 2022-05-05 07:38:40 +00:00
Adrien Raze
3681cd7747 Merge branch 'develop' of github.com:Dolibarr/dolibarr into FIX_move_inventory_column-develop 2022-05-05 09:24:51 +02:00
Regis Houssin
0882c7f5af FIX missing country filter in contract list 2022-05-05 08:43:22 +02:00
Laurent Destailleur
2c8830a798 Merge pull request #20655 from bb2a/Move-checkbox-column-as-first-column-on-modulebuilder
Move checkbox column as first column on modulebuilder
2022-05-04 20:40:29 +02:00
Laurent Destailleur
46254143ef Merge pull request #20775 from grandoc/new_branch_04_05_2022
fix : do not display html tags into list
2022-05-04 20:40:04 +02:00
Laurent Destailleur
03ffbabb4a Merge pull request #20778 from FHenry/dev_new_total_list_computed_fields
NEW: extrafields computed numeric and totalizable are correctly calculated in total table row
2022-05-04 20:39:24 +02:00
Laurent Destailleur
82ab41a7f3 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-05-04 20:37:13 +02:00
Laurent Destailleur
05e22fb8bc css 2022-05-04 20:36:59 +02:00
GregM
ac1fcf290e update 2022-05-04 17:24:37 +02:00
Laurent Destailleur
e3b777ad5b Merge pull request #20649 from FHenry/15.0_fix_createtable_without_migration_script
fix: CREATE TABLE llx_element_tag without migration script
2022-05-04 17:15:53 +02:00
GregM
885324629f commit resolve conflict 2022-05-04 17:10:39 +02:00
GregM
d2bf2fdb98 update massaction langs & script 2022-05-04 16:53:57 +02:00
Laurent Destailleur
55e60bf628 Merge pull request #20768 from atm-john/15.0_fix_fatal_error_on_task_list
FIX : fatal error for $db  usage in tpl
2022-05-04 16:46:22 +02:00
Laurent Destailleur
5a12fbb808 Merge pull request #20777 from Hystepik/develop#1
Fix : extrafields attrname regex
2022-05-04 16:45:33 +02:00
Laurent Destailleur
763c86144e Fix add invoice to email 2022-05-04 15:51:24 +02:00
Laurent Destailleur
8f7e162406 Fix css 2022-05-04 15:27:23 +02:00
Laurent Destailleur
3574864062 Add email_company 2022-05-04 15:07:50 +02:00
Laurent Destailleur
82f7f30f0a Clean code 2022-05-04 14:58:50 +02:00
Florian HENRY
089289d13b NEW: extrafields computed numeric and totalizable are correctly calculated in total table row 2022-05-04 14:55:03 +02:00
lmarcouiller
0fd2e91ccc Fix : extrafields attrname regex 2022-05-04 14:37:54 +02:00
lmarcouiller
af28c050f6 remove of dol build path in Triggers 2022-05-04 10:20:31 +02:00
Philippe GRAND
2467dd0615 fix : do not display html tags into list 2022-05-04 09:18:46 +02:00
Anthony Berton
ff696acab8 Update myobject_list.php 2022-05-04 08:43:14 +02:00
Laurent Destailleur
6813bfb1e8 Trans 2022-05-04 02:23:24 +02:00
Laurent Destailleur
1957ebcc35 Fix restore warning 2022-05-04 02:13:29 +02:00
Laurent Destailleur
d76e7224d9 NEW Can set the max number of attendees for an organized event 2022-05-04 01:53:45 +02:00
Laurent Destailleur
f1e429d333 CSS 2022-05-04 01:29:19 +02:00
Laurent Destailleur
bdc80d22ea Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-04 01:23:25 +02:00
Laurent Destailleur
a99e647348 Merge pull request #20658 from Hystepik/develop#1
NEW #20653 edit discount pourcentage for all lines in one shot
2022-05-04 01:20:49 +02:00
Laurent Destailleur
9a0aaeb8e3 Merge pull request #20679 from altairis-melina/completeJSProductDisplay
NEW : TakePos - add hooks complete product display
2022-05-04 01:19:20 +02:00
Laurent Destailleur
81b30d584b Merge branch 'develop' into completeJSProductDisplay 2022-05-04 01:18:43 +02:00
Laurent Destailleur
2bc958efe3 Merge pull request #20686 from Easya-Solutions/new-mass-action-send-last-main-doc
NEW Option MAIL_MASS_ACTION_ADD_LAST_IF_MAIN_DOC_NOT_FOUND to send last document in mass mailing action
2022-05-04 01:17:20 +02:00
Laurent Destailleur
0236c31e21 Merge pull request #20730 from Hystepik/develop#5
New : module webhook database structure
2022-05-04 01:05:09 +02:00
Laurent Destailleur
09d02dfbfa Update llx_webhook_target-webhook.sql 2022-05-04 01:04:39 +02:00
Laurent Destailleur
ede13fca6d Merge pull request #20764 from Easya-Solutions/new-field-required-on-mandatory-fields
NEW field required on mandatory fields
2022-05-04 00:56:41 +02:00
Laurent Destailleur
0a7d7d503b Make syntax for field_, titlefieldcreate, valuefieldcreate standard. 2022-05-04 00:52:49 +02:00
Laurent Destailleur
358685e9d7 Merge pull request #20761 from javieralapps4up/patch-1
Using deprecated $tmpinvoice->fk_soc
2022-05-04 00:02:15 +02:00
Laurent Destailleur
fba2d143bd Merge pull request #20763 from frederic34/patch-1
default value is second parameter of getDolGlobalString
2022-05-04 00:01:49 +02:00
Laurent Destailleur
0ccd0931ab Merge pull request #20766 from altairis-melina/hookinvoice
NEW add hook doaction in takepos invoice
2022-05-03 23:59:08 +02:00
Laurent Destailleur
f256207cd5 Save logs 2022-05-03 23:54:40 +02:00
Laurent Destailleur
003e821650 Merge pull request #20771 from grandoc/new_branch_03_05_2022
fix : do not display html tags into list
2022-05-03 23:50:34 +02:00
Laurent Destailleur
1d81a404ac Merge pull request #20773 from frederic34/patch-4
fix missing td
2022-05-03 23:29:03 +02:00
Laurent Destailleur
ae282245fe FIX assign member cateogry to a member 2022-05-03 21:54:34 +02:00
Frédéric FRANCE
27948216be fix missing td 2022-05-03 20:37:04 +02:00
Laurent Destailleur
c55da219d9 FIX sending email on payment of registration of event 2022-05-03 20:35:28 +02:00
Laurent Destailleur
207373d37d FIX sending email on payment of registration of event 2022-05-03 20:07:21 +02:00
Laurent Destailleur
5bb2772968 NEW Add firstname and lastname for module "Event Organization" 2022-05-03 18:20:39 +02:00
Laurent Destailleur
16bb5eeb3f NEW Add firstname and lastname for module "Event Organization" 2022-05-03 18:18:11 +02:00
Philippe GRAND
356bc0d1e5 fix : do not display html tags into list 2022-05-03 17:41:26 +02:00
Laurent Destailleur
05abe38f78 Look and feel v16 2022-05-03 17:40:19 +02:00
Laurent Destailleur
fa7254be9a Fix picto and perm 2022-05-03 17:05:14 +02:00
Laurent Destailleur
6ebe41324f Fix php8 compatibility 2022-05-03 16:29:57 +02:00
Laurent Destailleur
3ae6a1d786 Fix preselection of type of invoice 2022-05-03 16:18:52 +02:00
Laurent Destailleur
30bb2c5c2f FIX Too many requets. On large order, fix n(n+1) sql into a n sql. 2022-05-03 15:57:17 +02:00
Laurent Destailleur
420ab9f16c FIX Too many requets. On large order, fix n(n+1) sql into a n sql. 2022-05-03 14:18:48 +02:00
Laurent Destailleur
c87c695d43 Debug v16 2022-05-03 14:15:42 +02:00
Laurent Destailleur
3515097e4f FIX Autoset rank on recuring invoice line was not working. 2022-05-03 14:05:02 +02:00
Laurent Destailleur
51e9a7c251 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/langs/en_US/admin.lang
2022-05-03 13:05:51 +02:00
John BOTELLA
7d3030aa8e Fix fatal error for usage in tpl 2022-05-03 12:31:30 +02:00
Laurent Destailleur
9f379dfcf4 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/core/modules/modCashDesk.class.php
	htdocs/debugbar/class/DataCollector/DolLogsCollector.php
	htdocs/langs/en_US/admin.lang
2022-05-03 12:17:54 +02:00
Laurent Destailleur
affde55169 FIX deprecated module are not more viewed as external modules
Trans debugbar
2022-05-03 12:08:24 +02:00
Laurent Destailleur
0cc3eec599 Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-05-03 11:55:45 +02:00
Laurent Destailleur
36fdee3337 Merge branch '12.0' of git@github.com:Dolibarr/dolibarr.git into 13.0 2022-05-03 11:54:57 +02:00
Laurent Destailleur
a254412c61 Merge branch '11.0' of git@github.com:Dolibarr/dolibarr.git into 12.0
Conflicts:
	htdocs/debugbar/class/DataCollector/DolLogsCollector.php
2022-05-03 11:54:28 +02:00
Laurent Destailleur
cc1a3080d0 Merge branch '10.0' of git@github.com:Dolibarr/dolibarr.git into 11.0 2022-05-03 11:53:23 +02:00
Laurent Destailleur
b5f887b3e4 Fix DEBUGBAR_USE_LOG_FILE 2022-05-03 11:52:32 +02:00
melina
3c85577d91 fix parameter oh hook 2022-05-03 09:52:20 +02:00
melina
ce56dc132c add missing class 2022-05-03 09:44:18 +02:00
melina
ed6eeb3533 add hook doaction in takepos invoice 2022-05-03 09:35:06 +02:00
Laurent Destailleur
6656ccdb0f css 2022-05-02 21:11:45 +02:00
Laurent Destailleur
0e429ef058 Look and feel v16 2022-05-02 20:26:34 +02:00
Laurent Destailleur
6aa32e7c70 Retrograde intracommreport from experimental to dev 2022-05-02 20:21:58 +02:00
Laurent Destailleur
1dd8cfe559 NEW More mode for THEME_TOPMENU_DISABLE_IMAGE 2022-05-02 20:10:42 +02:00
Laurent Destailleur
5dfd38c8f9 Clean code for top menu 2022-05-02 16:54:27 +02:00
lvessiller
9f8a9db39e NEW field required on mandatory fields 2022-05-02 15:55:32 +02:00
lmarcouiller
1dba611907 Merge branch 'develop#6' of github.com:Hystepik/dolibarr into develop#6 2022-05-02 15:42:43 +02:00
lmarcouiller
ce41d3ed09 remove target extrafields 2022-05-02 15:42:26 +02:00
Frédéric FRANCE
19143d7003 default value is second parameter of getDolGlobalString 2022-05-02 15:31:21 +02:00
Hystepik
0be15e3c74 Merge branch 'develop' into develop#6 2022-05-02 15:16:15 +02:00
lmarcouiller
4ea45ac05a fix table fields 2022-05-02 15:13:42 +02:00
lmarcouiller
13e05b875d remove unused files 2022-05-02 15:07:41 +02:00
Francis Appels
db5bc961b4 NEW: Can use current entity filter on 'chkbxlst' 2022-05-02 14:46:03 +02:00
javieralapps4up
f4f8b67d10 Using deprecated $tmpinvoice->fk_soc
Use of deprecated $tmpinvoice->fk_soc instead of using $tmpinvoice->socid
2022-05-02 12:57:13 +02:00
lvessiller
0a48c09a74 NEW last generated doc if main not found for mailing mass action 2022-05-02 11:35:12 +02:00
lvessiller
bcc645ce38 NEW const MAIL_MASS_ACTION_ADD_LAST_IF_MAIN_DOC_NOT_FOUND for mailing mass action 2022-05-02 10:50:48 +02:00
Adrien Raze
82ac8b4c0a FIX : move "Real Qty" column 2022-05-02 10:44:31 +02:00
lmarcouiller
2899a6dca5 fix database files 2022-05-02 10:41:59 +02:00
Adrien Raze
2d033ef8a5 Merge branch 'develop' of github.com:Dolibarr/dolibarr into FIX_move_inventory_column-develop 2022-05-02 10:33:24 +02:00
Adrien Raze
0e75b4e9c7 FIX : GetnomURL sur les numéro de lot/série 2022-05-02 10:14:06 +02:00
melina
7063b7cdb8 fix missing line in PR 2022-05-02 08:37:37 +02:00
Laurent Destailleur
b7106b1731 Fix lang 2022-05-01 22:22:46 +02:00
Laurent Destailleur
21e3a5d5ec Try to fix warnings 2022-05-01 21:04:16 +02:00
Laurent Destailleur
d7398f573c Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-01 20:49:43 +02:00
Laurent Destailleur
be4a6788bb Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-05-01 20:48:11 +02:00
Laurent Destailleur
6308b700d5 # WARNING: head commit changed in the meantime
Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
2022-05-01 20:47:54 +02:00
Laurent Destailleur
971714f8e3 phpcs 2022-05-01 20:46:23 +02:00
Laurent Destailleur
e2bf596589 Fix missing picto 2022-05-01 17:58:37 +02:00
Laurent Destailleur
755850d646 Debug v16 2022-05-01 17:44:26 +02:00
Laurent Destailleur
b2ec035d21 Debug v16 2022-05-01 17:39:57 +02:00
Laurent Destailleur
f8cb916080 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-05-01 16:45:13 +02:00
Laurent Destailleur
08d78dd33b NEW More feature that can be modifed after module generation 2022-05-01 15:05:25 +02:00
Laurent Destailleur
1a589c5f18 Merge pull request #20656 from FHenry/dev_20652
NEW: Add column template invoice in invoice list
2022-05-01 13:49:02 +02:00
Laurent Destailleur
e811fbb75b Merge pull request #20660 from hregis/fix_backport_and_ics_not_mandatory_with_bank_transfer
FIX SEPA ICS is not mandatory for bank transfer
2022-05-01 13:47:35 +02:00
Laurent Destailleur
22a2aa55e2 Show tooltip on nb of translation files 2022-05-01 13:39:22 +02:00
Laurent Destailleur
48342cd3c5 Fix td balance 2022-05-01 12:49:53 +02:00
Laurent Destailleur
1f8baabc97 Merge pull request #20666 from aspangaro/16a20
NEW Add an option in GUI to show a Quick add button into top menu bar
2022-05-01 12:45:46 +02:00
Laurent Destailleur
9af68679d1 Merge branch 'develop' into 16a20 2022-05-01 12:45:08 +02:00
Laurent Destailleur
fe2324ac7e Merge pull request #20669 from ymollard/tickets-collector
FIX and NEW i18n for creating tickets via the mail collector
2022-05-01 12:36:16 +02:00
Laurent Destailleur
82b65f3517 Merge pull request #20707 from hregis/fix_wrong_data_root_with_multicompany
NEW Module website now supports the multicompany module
2022-05-01 12:33:07 +02:00
Laurent Destailleur
cf38d69733 Merge pull request #20729 from aspangaro/16a26-Accountancy_reconcile
NEW Accountancy - Add reconcile functionality
2022-05-01 12:28:51 +02:00
Laurent Destailleur
6040bcfad2 Merge pull request #20734 from lainwir3d/inventory_dont_use_batch_qty_20733
FIX #20733 Inventory: Do not use batch qty even if present if batch module is disabled.
2022-05-01 12:25:01 +02:00
Laurent Destailleur
c26c6b58ca Merge pull request #20737 from lainwir3d/allow_product_api_sqlfilters_extrafield
CLOSE #20736 Allow extrafields SQL filters on REST API product lookup
2022-05-01 12:23:26 +02:00
Laurent Destailleur
a2ff15164f Update api_products.class.php 2022-05-01 12:23:02 +02:00
Laurent Destailleur
8f705677c0 Merge pull request #20752 from dolibit-ut/patch-393
Update and rename dev/resources/iso-normes/barcode_EAN13.txt to dev/r…
2022-05-01 12:21:22 +02:00
Laurent Destailleur
181261e8d6 Merge pull request #20753 from dolibit-ut/patch-394
Update and rename dev/resources/iso-normes/QR code for invoices.txt t…
2022-05-01 12:21:15 +02:00
Laurent Destailleur
cf32495a5c Merge pull request #20754 from dolibit-ut/patch-395
Update and rename dev/resources/iso-normes/accountancy_rules.txt to d…
2022-05-01 12:21:03 +02:00
Laurent Destailleur
7b1ddfb808 Merge pull request #20755 from dolibit-ut/patch-396
Rename dev/resources/iso-normes/iban_iso-13616.txt to dev/resources/i…
2022-05-01 12:20:53 +02:00
Laurent Destailleur
7bba985011 Merge pull request #20756 from dolibit-ut/patch-397
Rename dev/resources/iso-normes/banknumber_format.txt to dev/resource…
2022-05-01 12:20:43 +02:00
Laurent Destailleur
96519d2a3b Merge pull request #20758 from ns-info90/develop
Warehouse pdf generation issue #20632
2022-05-01 12:16:02 +02:00
Laurent Destailleur
4004e05c9c Merge pull request #20757 from dolibit-ut/patch-398
Update llx_c_availability.sql
2022-05-01 12:14:36 +02:00
Laurent Destailleur
a090b21aec NEW Add a public page with all list of open job positions 2022-05-01 12:12:44 +02:00
Laurent Destailleur
7c058c9ae6 NEW Add param to keep the robot=index meta tag on public pages 2022-05-01 11:48:11 +02:00
Laurent Destailleur
8023e1b0cd Debug v16 2022-04-30 20:41:18 +02:00
Laurent Destailleur
2e1dfc9a43 Fix method "file" for external URLs is forbidden. 2022-04-30 20:06:08 +02:00
Laurent Destailleur
c96e3bdddf PHP v8 compatibility 2022-04-30 19:50:20 +02:00
Laurent Destailleur
477d681c49 Fix warnings 2022-04-30 17:47:45 +02:00
Laurent Destailleur
7b8e08bbf6 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-30 17:28:55 +02:00
Laurent Destailleur
08461957b5 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-04-30 17:20:07 +02:00
Laurent Destailleur
819568bfbf Fix generation of specimen pdf for modulebuilder and recruitment module 2022-04-30 17:19:18 +02:00
Laurent Destailleur
f1b1d83872 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-04-30 15:37:43 +02:00
lainwir3d
f187f4214a Product REST API: Always JOIN extrafields table. 2022-04-30 13:24:44 +04:00
stickler-ci
e4d311216a Fixing style errors. 2022-04-30 01:13:45 +00:00
Nicolas SILOBRE
1b0b672892 Warehouse pdf generation issue #20632
Update of the PDF
Correction of page headers > 1
Added frames
Blackening of texts
Extended footer alignment
2022-04-30 03:02:22 +02:00
Yoan Mollard
bdfe7f12d9 Use the existing $form instead of a new $formcategory 2022-04-30 00:32:15 +02:00
Laurent Destailleur
35b1c1ca69 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-29 20:11:06 +02:00
UT from dolibit
65b26e4ffc Update llx_c_availability.sql 2022-04-29 20:08:27 +02:00
Laurent Destailleur
1f2b27cca8 Trans 2022-04-29 19:58:31 +02:00
UT from dolibit
9655ffa3ac Rename dev/resources/iso-normes/banknumber_format.txt to dev/resources/iso-normes/banking/banknumber_format.txt 2022-04-29 19:53:14 +02:00
UT from dolibit
9126bfe30f Rename dev/resources/iso-normes/iban_iso-13616.txt to dev/resources/iso-normes/banking/iban_iso-13616_fr.txt
rename to /banking/iban_iso-13616_fr.txt
2022-04-29 19:52:06 +02:00
UT from dolibit
111e2ab58d Update and rename dev/resources/iso-normes/accountancy_rules.txt to dev/resources/iso-normes/accountancy/accountancy_rules.txt
line 12:    411xxx     3.60 TVA   -->   3,60 € TTC

and move to  dolibarr/dev/resources/iso-normes/accountancy/
2022-04-29 19:48:10 +02:00
UT from dolibit
6bcc9583c4 Update and rename dev/resources/iso-normes/QR code for invoices.txt to dev/resources/iso-normes/barcodes/QR code for invoices.txt 2022-04-29 19:39:51 +02:00
Laurent Destailleur
0342872e6f Merge pull request #20657 from atm-gauthier/NEW/expensereport_payments_list
NEW : expense report payments list
2022-04-29 19:38:47 +02:00
Laurent Destailleur
a3812e0f73 Merge pull request #20665 from aspangaro/16a19
Fix proper links for the Quick add feature
2022-04-29 19:35:06 +02:00
Laurent Destailleur
62214c01f9 Merge pull request #20659 from frederic34/patch-1
add context
2022-04-29 19:33:27 +02:00
Laurent Destailleur
c499eb3730 Merge pull request #20661 from frederic34/patch-4
Update agenda.lang
2022-04-29 19:33:07 +02:00
UT from dolibit
a91390b097 Update and rename dev/resources/iso-normes/barcode_EAN13.txt to dev/resources/iso-normes/barcodes/barcode_EAN13.txt 2022-04-29 19:32:07 +02:00
Laurent Destailleur
89d8fdde8d Fix phpcs 2022-04-29 19:31:59 +02:00
Laurent Destailleur
316ef3371d Fix phpcs 2022-04-29 19:30:04 +02:00
Laurent Destailleur
6a2526ae65 Responsive 2022-04-29 19:04:46 +02:00
Laurent Destailleur
0e710b05cd Merge pull request #20667 from leninrivas/patch-3
Show only code multicurrency in lists
2022-04-29 18:56:11 +02:00
Laurent Destailleur
fc2fbc0ba1 Merge pull request #19603 from altairis-melina/productinstock
NEW : Add constant to show only the products in stock in TakePos
2022-04-29 18:53:47 +02:00
Laurent Destailleur
498c6a4804 Merge branch 'develop' into productinstock 2022-04-29 18:52:46 +02:00
Laurent Destailleur
18f1539015 Merge pull request #20671 from Easya-Solutions/fix-takepos-barcode-rule-get-const
FIX get TAKEPOS_BARCODE_RULE_TO_INSERT_PRODUCE const in TakePos
2022-04-29 18:51:02 +02:00
Laurent Destailleur
3a80ece0fd Merge pull request #20717 from aspangaro/16a21
FIX Check field accountancy code customer is mandatory in mass action
2022-04-29 18:50:21 +02:00
Laurent Destailleur
38d7ab47ca Merge pull request #20674 from aspangaro/16a22
FIX Accountancy - Missing language key
2022-04-29 18:36:00 +02:00
Laurent Destailleur
e5aa4afabd Merge pull request #20683 from hregis/fix_missing_getentity
FIX compatibility with multicompany sharings
2022-04-29 18:35:26 +02:00
Laurent Destailleur
62529bbf1e Merge pull request #20678 from altairis-melina/completeAjaxReturnArray
NEW : TakePos - add hooks to complete ajax return array
2022-04-29 18:17:47 +02:00
Laurent Destailleur
2da48cea0b Update ajax.php 2022-04-29 18:16:48 +02:00
Laurent Destailleur
d00a4baeab Merge pull request #20687 from fred1201/fred01dev
Fix display in take post  when special caracter are store in database
2022-04-29 18:02:49 +02:00
Laurent Destailleur
2676aeb93f Merge pull request #20681 from hregis/fix_missing_hook_parameter
FIX missing hook parameter ($possiblelinks)
2022-04-29 18:01:32 +02:00
Laurent Destailleur
9a5312d6dc Merge pull request #20692 from rycks/cleanMailingLanguageSupport
NEW language support for more emailing target selectors
2022-04-29 17:59:05 +02:00
Laurent Destailleur
3fb081a2fc Update contacts1.modules.php 2022-04-29 17:57:55 +02:00
Laurent Destailleur
d98637c113 Merge branch 'develop' into cleanMailingLanguageSupport 2022-04-29 17:56:56 +02:00
Laurent Destailleur
fdfde165a9 FIX #20702 #20699 #20700 2022-04-29 17:48:40 +02:00
Laurent Destailleur
801f0e62f7 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-29 17:37:01 +02:00
Laurent Destailleur
49d15b691b Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/accountancy/bookkeeping/card.php
	htdocs/expensereport/card.php
2022-04-29 17:35:36 +02:00
Laurent Destailleur
93de425c47 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/accountancy/bookkeeping/card.php
2022-04-29 17:32:28 +02:00
Laurent Destailleur
eb92b7a25f Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-04-29 17:27:29 +02:00
Laurent Destailleur
17a2aa8f1b Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0
Conflicts:
	htdocs/modulebuilder/template/class/myobject.class.php
2022-04-29 17:27:12 +02:00
BENKE Charlene
364799582a fix : allow cut&paste as real numeric value to excel 2022-04-29 17:24:55 +02:00
Laurent Destailleur
235edb1f70 Merge pull request #20709 from defrance/patch-183
NEW: allow cut&paste as real numeric value to excel
2022-04-29 17:23:56 +02:00
Laurent Destailleur
6ed0bb2924 Merge pull request #20697 from ns-info90/develop
Update pdf_rouget.modules.php #20142
2022-04-29 17:22:40 +02:00
Laurent Destailleur
a6f48868f1 Merge pull request #20689 from atm-gauthier/FIX/trad_expense_tax_cat_label
FIX : label tax cat trad
2022-04-29 17:22:15 +02:00
Laurent Destailleur
b4f6cbc64a Merge pull request #20706 from fappels/develop_fix_migration
Fix migration warning.
2022-04-29 17:21:52 +02:00
Laurent Destailleur
fa8ce6e4fd Merge pull request #20710 from fappels/develop_confirm_createbills
Move massaction 'confirm_createbills' from actions_massactions.inc.php to commande/list.php
2022-04-29 17:19:18 +02:00
Laurent Destailleur
38c0264971 Show warning if not journal not defined 2022-04-29 17:15:42 +02:00
Laurent Destailleur
7a440d8c73 Merge pull request #20713 from daraelmin/daraelmin-bookkeping-create-mode
Fix #20712 - No more empty wrong line added in bookkeeping confirme_create
2022-04-29 17:08:49 +02:00
John BOTELLA
fb35e710b3 add js on change action 2022-04-29 17:04:43 +02:00
Laurent Destailleur
e1aaeeef29 FIX #20140 #20301 2022-04-29 16:57:23 +02:00
matll42
ff35bf8d47 FIX #20476 migration postgresql 14.0.x to 15.0.x packaging type 2022-04-29 16:53:48 +02:00
Laurent Destailleur
80dce10473 Merge pull request #20714 from matll42/fix/postgresql_upgrade_15_0_1_packaging_real
FIX #20476 migration postgresql 14.0.x to 15.0.x packaging type
2022-04-29 16:52:30 +02:00
Laurent Destailleur
f06af016cd Merge pull request #20720 from aspangaro/16a24
FIX Accountancy - Export format FEC - Prevent tabbing in label with the formats for which it is the separator
2022-04-29 16:50:51 +02:00
Laurent Destailleur
2b272b01fb Merge pull request #20718 from FHenry/14.0_fix_trunc_refclientheader_pdf
fix: truncate Customer Reference too long on PDF header
2022-04-29 16:50:11 +02:00
Laurent Destailleur
8f7239c239 Merge pull request #20723 from dolibarr95/patch-62
NEW : Send email to the supplier order contact
2022-04-29 16:49:09 +02:00
John BOTELLA
56bab82219 add js on change action 2022-04-29 16:43:40 +02:00
Laurent Destailleur
bc03658f18 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-04-29 16:42:43 +02:00
Laurent Destailleur
67048cd2c6 Merge pull request #20721 from altairisfr/getsellprice
NEW : add hook to getSellPrice function
2022-04-29 16:39:30 +02:00
Laurent Destailleur
7b509706b6 Merge pull request #20722 from dolibarr95/patch-61
NEW: Add option to foce delivery on email for purchase order receipt to yes
2022-04-29 16:37:58 +02:00
Laurent Destailleur
9729918101 Merge pull request #20728 from aspangaro/16a25
NEW Accountancy - Product admin - Add product categories
2022-04-29 16:36:34 +02:00
Laurent Destailleur
7616a55de5 Merge pull request #20726 from vold-lu/fixes/lines-array-error-reporting
FIX: ModuileBuilder - Fix getLinesArray() error reporting
2022-04-29 16:35:16 +02:00
Laurent Destailleur
fbfb003c9b Merge pull request #20731 from altairisfr/fixtakepos
FIX TakePos - fix select fields
2022-04-29 16:30:20 +02:00
Laurent Destailleur
9e23b30728 Fix remove useless file 2022-04-29 16:22:04 +02:00
Laurent Destailleur
47661d8d38 Merge pull request #20735 from atm-john/13.0_fix_missing_budget_export
Fix :  missing project budget field in Dolibarr V13 export wizard
2022-04-29 16:06:30 +02:00
Laurent Destailleur
4a8864ed63 Merge pull request #20739 from lainwir3d/inventories_fix_movement_display
FIX #20738 Inventory: Add missing <td....> for movement number / card.
2022-04-29 16:06:07 +02:00
Laurent Destailleur
5817c1f1b7 Update inventory.php 2022-04-29 16:05:52 +02:00
Laurent Destailleur
659f520365 Merge pull request #20740 from inovea-conseil/event_propal_return_to_draft
NEW Events on Proposal to Return to Draft
2022-04-29 16:04:26 +02:00
Laurent Destailleur
3dd90ecf41 js escape 2022-04-29 16:02:05 +02:00
Laurent Destailleur
cc55b4444f Merge pull request #20746 from altairisfr/pagin
NEW TakePos - pagination on search results
2022-04-29 15:59:50 +02:00
Laurent Destailleur
a8a6710feb Merge pull request #20747 from Quentin-Seekness/patch-2
FIX: Delete an extrafield where type is double
2022-04-29 15:55:49 +02:00
John BOTELLA
02cf3fa361 end factoring 2022-04-29 15:38:12 +02:00
John BOTELLA
8b248c75f2 Factor save 2022-04-29 15:10:15 +02:00
Laurent Destailleur
223db9bb76 Fix: Not SetEventMessages inside a CRUD class. 2022-04-29 14:32:47 +02:00
Laurent Destailleur
921aabfc54 Look and feel v16 2022-04-29 14:11:38 +02:00
Laurent Destailleur
8ad57b3d7a Fix td 2022-04-29 13:43:51 +02:00
Laurent Destailleur
fed14db94a css 2022-04-29 13:22:46 +02:00
Laurent Destailleur
3780e83615 Trans 2022-04-29 13:20:14 +02:00
Laurent Destailleur
147e61472c Clean code: Remove all &ensp; entities. 2022-04-29 13:10:28 +02:00
Laurent Destailleur
708d3610a5 Look and feel v16 2022-04-29 13:04:29 +02:00
Laurent Destailleur
bdd9b2acf4 Clean css 2022-04-29 12:36:38 +02:00
GregM
3e4cd251ea add edit extrafields Massaction products 2022-04-29 11:45:50 +02:00
Laurent Destailleur
d496ad65e6 Enhance the feature of keyword detection for partnership 2022-04-29 11:16:15 +02:00
Christophe Battarel
d682cb3103 please Travis 2022-04-29 11:09:32 +02:00
Christophe Battarel
812b9adee7 still trying to please Travis... losing my time 2022-04-29 10:58:04 +02:00
Quentin-Seekness
726b899d30 FIX: Delete an extrafield where type is double
Found the bug on a propal's extrafield, it was impossible to delete a decimal extrafield.  In updateExtraField() the $value stayed "" where it needed to be null.
The same issue can be found in insertExtraFields().
2022-04-29 10:45:08 +02:00
melina
407efccd55 Merge branch 'productinstock' of github.com-melina:altairis-melina/dolibarr into productinstock 2022-04-29 10:44:15 +02:00
melina
6d79d03cb2 add comment to fix stickler 2022-04-29 10:43:35 +02:00
Christophe Battarel
a11b5b4399 escape sql string for my Travais friend 2022-04-29 10:12:53 +02:00
Christophe Battarel
fb076a9282 FIX pagination on search results 2022-04-29 10:00:25 +02:00
Christophe Battarel
78f46bb98b search next or previous page of products if asked 2022-04-29 09:49:10 +02:00
Christophe Battarel
accb900d4f ajax load only one page of search results 2022-04-29 09:45:36 +02:00
Laurent Destailleur
a5379043e9 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-28 22:37:52 +02:00
Laurent Destailleur
822a0a37f3 Fix phpunit 2022-04-28 22:37:21 +02:00
Laurent Destailleur
a129b6d132 FIX phpcs 2022-04-28 22:29:48 +02:00
lainwir3d
3b98f74a56 Fix typo and switch to old join style. 2022-04-28 22:56:44 +04:00
Laurent Destailleur
40d0c3b996 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/compta/tva/card.php
	htdocs/langs/en_US/admin.lang
2022-04-28 19:23:13 +02:00
Laurent Destailleur
559694dd4f API doc 2022-04-28 19:05:23 +02:00
Laurent Destailleur
93815404a2 Fix phpcs 2022-04-28 18:46:52 +02:00
Laurent Destailleur
ebe68350d1 IP for last and previous login is now saved inuser table 2022-04-28 17:34:04 +02:00
Alexandre SPANGARO
7752c5f122 Comment function 2022-04-28 17:24:10 +02:00
Alexandre SPANGARO
f2d81f97b9 Comment function 2022-04-28 17:10:30 +02:00
stickler-ci
96e247bf89 Fixing style errors. 2022-04-28 13:55:54 +00:00
Alexandre SPANGARO
5cc1aba0f5 Merge branch '16a26-Accountancy_reconcile' of https://github.com/aspangaro/dolibarr into 16a26-Accountancy_reconcile 2022-04-28 15:50:16 +02:00
Adrien Raze
5fe448e86c FIX : [inventory] Update PMP when qty stay the same 2022-04-28 15:49:31 +02:00
Alexandre SPANGARO
5379db7c6b Fix stickler-ci 2022-04-28 15:49:08 +02:00
stickler-ci
68864840b6 Fixing style errors. 2022-04-28 13:25:50 +00:00
Alexandre SPANGARO
f54501c9e4 Merge remote-tracking branch 'upstream/develop' into 16a26-Accountancy_reconcile 2022-04-28 15:20:05 +02:00
lainwir3d
88bd28323c FIX #20738 Inventory: Add missing <td....> for movement number / card. 2022-04-28 16:46:42 +04:00
lainwir3d
b35b40649f CLOSE #20736 Allow extrafields SQL filters on REST API product lookup 2022-04-28 15:48:07 +04:00
John BOTELLA
900caf5a44 Fix missing budget export 2022-04-28 12:12:20 +02:00
stickler-ci
6ab88d0169 Fixing style errors. 2022-04-28 10:09:02 +00:00
lainwir3d
f0e65e8bdd FIX #20733 Inventory: Do not use batch qty even if present if batch module is disabled. 2022-04-28 14:00:24 +04:00
Christophe Battarel
75f540c30c fix for reshook when several module use the hook but only on is concerned 2022-04-28 11:49:15 +02:00
lmarcouiller
701960bd70 try to fix build fail 2022-04-28 11:47:13 +02:00
Adrien Raze
ed4610b36b FIX : Move column "Real Qty" just before "Real PMP" column 2022-04-28 11:45:55 +02:00
IC-faycal
fc6228a48c NEW Events on Proposal to Return to Draft 2022-04-28 11:27:15 +02:00
lmarcouiller
8629651659 NEW : module webhook 2022-04-28 11:13:21 +02:00
Laurent Destailleur
d376d28588 Missing trans 2022-04-28 11:12:21 +02:00
Christophe Battarel
729d1f57aa fix select fields 2022-04-28 10:53:16 +02:00
lmarcouiller
be2502c29f New : module webhook database structure 2022-04-28 10:50:55 +02:00
melina
f634d7e503 fix commit 2022-04-28 08:42:44 +02:00
melina
c3ac8f480a Merge branch 'completeAjaxReturnArray' of github.com-melina:altairis-melina/dolibarr into completeAjaxReturnArray 2022-04-28 08:40:22 +02:00
melina
0c8a6bd6f0 fix commit 2022-04-28 08:39:02 +02:00
Alexandre SPANGARO
1efa44a022 NEW Accountancy - Add reconcile functionality 2022-04-28 06:50:37 +02:00
Alexandre SPANGARO
5dce613118 NEW Accountancy - Product admin - Add product categories 2022-04-28 05:34:02 +02:00
Aloïs Micard
fb7f0545e4 Fix error reporting in getLinesArray() 2022-04-27 17:56:31 +02:00
dolibarr95
c969cef731 NEW : Send email to the supplier order contact
Select the recipient defined in object contact (Vendor contact following-up order / Contact fournisseur suivi commande) in order to send email to the specific contact and not to generic company email (as for invoice/bill)
2022-04-27 10:09:22 +02:00
Christophe Battarel
25078b292d fix hookmanager 2022-04-27 09:40:09 +02:00
dolibarr95
4939da560f New: Add option to foce delivery receipt to yes
Add a constant to force delivery receipt for supplier order.
2022-04-27 09:25:38 +02:00
Christophe Battarel
543e6f186c add hook to getSellPrice function 2022-04-27 09:03:51 +02:00
Florian HENRY
8fab7bbf55 Merge branch 'develop' of github.com:Dolibarr/dolibarr into dev_20652 2022-04-27 08:52:31 +02:00
Florian HENRY
dd85c22927 remove combox search box 2022-04-27 08:50:58 +02:00
Alexandre SPANGARO
3f832c1c5d FIX Accountancy - Export format FEC - Prevent tab in label with the formats for which it is the separator 2022-04-27 04:46:09 +02:00
daraelmin
5387a8e953 FiX miss spelling 2022-04-26 19:07:31 +02:00
Florian HENRY
3d4bd1e155 FIX: truncate Customer Reference too long on PDF header (PR #20718) 2022-04-26 16:53:40 +02:00
Florian HENRY
399addfb03 mor docs 2022-04-26 16:40:27 +02:00
Florian HENRY
c00a56bee3 fix: truncate too long Ref Customer in PDF Header 2022-04-26 16:39:06 +02:00
Alexandre SPANGARO
8d3c2e34f4 FIX Check field accountancy code customer is mandatory in mass action 2022-04-26 11:46:00 +02:00
matll42
8980b2e6c0 FIX #20476 migration postgresql 14.0.x to 15.0.x packaging type 2022-04-25 19:54:08 -04:00
Laurent Destailleur
134113db64 Fix upload of doc for purchase orders 2022-04-26 01:00:10 +02:00
Laurent Destailleur
8de9d63f7d FIX Numbering of sepa files 2022-04-26 00:35:20 +02:00
Laurent Destailleur
fb1c770568 Doc 2022-04-25 23:37:34 +02:00
stickler-ci
6a1d4c2255 Fixing style errors. 2022-04-25 20:36:34 +00:00
daraelmin
694bcda3bb Fix #20712 - No more empty wrong line added in bookkeeping confirme_create mode 2022-04-25 22:26:25 +02:00
stickler-ci
7f1d5fa867 Fixing style errors. 2022-04-25 12:43:58 +00:00
Francis Appels
22b56bde9e Update changelog 2022-04-25 14:30:55 +02:00
Francis Appels
7e44227df2 Cleanup 'confirm_createbills' 2022-04-25 14:28:57 +02:00
BENKE Charlene
752aaeb275 fix : allow cut&paste as real numeric value to excel 2022-04-25 14:07:48 +02:00
Francis Appels
40da139225 Add hook massaction to reception list. 2022-04-25 13:58:33 +02:00
Francis Appels
e9cfb9b69c Improve error handling confirm_billcreate 2022-04-25 11:24:09 +02:00
Francis Appels
e6ce81bf8b Move confirm_createbills mass action to order list 2022-04-25 11:20:00 +02:00
Regis Houssin
7e7ae863c7 FIX syntax error 2022-04-25 10:19:52 +02:00
Regis Houssin
8a2cc52b5c FIX wrong website data root with multicompany 2022-04-25 10:14:30 +02:00
Francis Appels
8bb9cc83eb Fix migration warning. 2022-04-25 09:30:05 +02:00
Laurent Destailleur
97328f732e Fix error managemnt when getting RSS. 2022-04-24 23:02:53 +02:00
Laurent Destailleur
16c607f4d8 Fix responsive 2022-04-24 18:55:52 +02:00
Nicolas SILOBRE
5eb74772d6 Update pdf_rouget.modules.php
Correction of units in the total weight
2022-04-23 03:41:17 +02:00
stickler-ci
9fd3a4b2c9 Fixing style errors. 2022-04-22 13:30:43 +00:00
Eric Seigne
72ac1fdfd2 fix #20690: add lang filter for companies 2022-04-22 15:28:48 +02:00
Eric Seigne
d2ec1efb42 fix #20690: add lang filter for people 2022-04-22 15:28:36 +02:00
Gauthier PC portable 024
6f9f78af33 FIX : var name 2022-04-22 14:28:43 +02:00
Gauthier PC portable 024
609ef9bfa7 FIX : var name 2022-04-22 14:26:16 +02:00
Gauthier PC portable 024
ca0f98d09f FIX : label tax cat trad 2022-04-22 13:50:39 +02:00
lvessiller
2992b3e845 NEW send last document in mass mailing action 2022-04-22 09:24:23 +02:00
Regis Houssin
2a5c54d4e4 FIX compatibility for ticket number sharing 2022-04-21 16:02:41 +02:00
Regis Houssin
8878eb6d76 FIX compatibility with multicompany sharings 2022-04-21 14:52:06 +02:00
Regis Houssin
731d85130c FIX missing hook parameter 2022-04-21 09:49:00 +02:00
fred1201
d9521d40e4 Update index.php
Replace call function
text( ) by html() to fix display in take post  when spécial caracter are store in database:

&eacute;&egrave;&agrave; become éàè
2022-04-21 07:39:51 +02:00
melina
5cb114df61 fix empty search 2022-04-20 17:46:16 +02:00
stickler-ci
6e8ba543de Fixing style errors. 2022-04-20 13:33:22 +00:00
melina
db3edba578 Delete comments 2022-04-20 14:51:55 +02:00
melina
c23ed7c47b Add hooks completeJSProductDisplay 2022-04-20 14:47:36 +02:00
melina
6788cd179c Add hooks completeAjaxReturnArray 2022-04-20 12:01:17 +02:00
altairis-melina
ea2e1c0ff2 Merge branch 'develop' into productinstock 2022-04-20 09:59:10 +02:00
melina
0faec59f56 FIX conflict and integrate Lionel fix 2022-04-20 08:13:01 +02:00
Laurent Destailleur
ad7fcd264b FIX Tabulation must be allowed for HTML content 2022-04-19 23:39:09 +02:00
Laurent Destailleur
307476786c Fix label of remain to pay on vendor invoices
FIX tool to fix bank account not in main currency for vendor invoice
2022-04-19 23:24:08 +02:00
Alexandre SPANGARO
1e96cd636f FIX Accountancy - Missing language key 2022-04-19 22:38:42 +02:00
Laurent Destailleur
aa86b2c71f Fix root passfield not editable on install
Fix user photo when gravatar not reachable
2022-04-19 22:26:27 +02:00
lvessiller
68cfe61fb8 FIX get TAKEPOS_BARCODE_RULE_TO_INSERT_PRODUCE const in TakePos 2022-04-19 17:59:59 +02:00
stickler-ci
aa36e396a3 Fixing style errors. 2022-04-18 22:23:44 +00:00
Yoan Mollard
37ab728846 Allow users to switch on e-mail headers again in UI 2022-04-19 00:13:40 +02:00
Yoan Mollard
bf5076e181 set MAIN_EMAILCOLLECTOR_MAIL_WITHOUT_HEADER to TRUE by default
This is way more readable
2022-04-19 00:13:40 +02:00
Yoan Mollard
d5361c3147 Improved default signature for tickets 2022-04-19 00:13:40 +02:00
Yoan Mollard
cbdf74e00c i18n the default email collector descriptions 2022-04-19 00:13:40 +02:00
Yoan Mollard
ad0199afd1 Rephrased ticket labels 2022-04-19 00:13:40 +02:00
Yoan Mollard
7f27b8c499 Use default e-mail sender/notif/body/signature for tickets if they exist
Otherwise, when params have not been configured, error message due to an
empty "from e-mail" is unclear
2022-04-19 00:13:40 +02:00
Yoan Mollard
ed7044e018 Missing files.lib.php for dol_is_dir 2022-04-19 00:13:40 +02:00
Lenin Rivas
8caa45ee80 Show only code multicurrency in lists 2022-04-18 12:22:29 -05:00
Alexandre SPANGARO
ffd9693b17 NEW Add an option to show quick add feature 2022-04-18 07:35:05 +02:00
Alexandre SPANGARO
9a59362da2 Fix proper links for the Quick add feature 2022-04-18 07:18:02 +02:00
Laurent Destailleur
25fbd3b385 Fix missing field 2022-04-16 13:28:38 +02:00
HENRY Florian
9acb1b2f88 Update 14.0.0-15.0.0.sql 2022-04-16 11:14:04 +02:00
Laurent Destailleur
140f983ca7 Fix look and feel v16 for the Quick add feature. 2022-04-15 18:04:58 +02:00
Regis Houssin
cc9c49afc9 TODO ICS is not used with bank transfer 2022-04-15 16:40:41 +02:00
Frédéric FRANCE
34409144b3 Update agenda.lang 2022-04-15 16:24:54 +02:00
Regis Houssin
81f0aedc8f FIX SEPA ICS is not mandatory for bank transfer 2022-04-15 16:17:03 +02:00
BB2A Anthony Berton
4688b96d93 Add option MAIN_CHECKBOX_LEFT_COLUMN 2022-04-15 15:19:14 +02:00
BB2A Anthony Berton
b816e67661 ADD option MAIN_CHECKBOX_LEFT_COLUMN 2022-04-15 15:13:52 +02:00
Frédéric FRANCE
dea1465fc7 add context 2022-04-15 14:44:19 +02:00
lmarcouiller
32d700c453 Merge branch 'develop#2' of github.com:Hystepik/dolibarr into develop#2 2022-04-15 14:42:44 +02:00
lmarcouiller
2af2efacdb better fix for line 131 in modulebuilder.lib 2022-04-15 14:42:34 +02:00
lmarcouiller
a77ae1ecd9 fix style errors 2022-04-15 14:31:59 +02:00
lmarcouiller
1ccf209c47 Close #20653 : edit discount pourcentage 2022-04-15 14:31:44 +02:00
Laurent Destailleur
8c808ea5f5 Label 2022-04-15 14:31:00 +02:00
Laurent Destailleur
0960320cf8 Fix missing icon in mass action 2022-04-15 14:27:53 +02:00
stickler-ci
8f397a3809 Fixing style errors. 2022-04-15 12:25:22 +00:00
Laurent Destailleur
8bc4e9082c Merge pull request #20647 from FHenry/15.0_fix_html_PRODUCT_LOT_ENABLE_QUALITY_CONTROL
fix: HTML on PRODUCT_LOT_ENABLE_QUALITY_CONTROL
2022-04-15 13:22:31 +02:00
Gauthier PC portable 024
2aee60ad59 NEW : expense report payments list 2022-04-15 12:14:41 +02:00
lmarcouiller
0674d062f8 select on source fields import 2022-04-15 11:55:24 +02:00
Florian HENRY
292df417fe NEW: Add column template invoice in invoice list 2022-04-15 11:32:53 +02:00
BB2A Anthony Berton
6b264733e4 Move-checkbox-column-as-first-column-on-modulebuilder 2022-04-15 11:21:02 +02:00
BB2A Anthony Berton
0a31be2217 MD Style 2022-04-15 11:05:46 +02:00
Laurent Destailleur
d445fdd172 Doc 2022-04-15 10:49:11 +02:00
Laurent Destailleur
e0b766588a Remove a step no more done 2022-04-15 10:44:37 +02:00
BB2A Anthony Berton
b8f6020088 Move checkbox column as first column on Thirdparty list 2022-04-15 10:35:36 +02:00
Florian HENRY
bed974ebae Merge branch '15.0' of github.com:Dolibarr/dolibarr into 15.0_fix_createtable_without_migration_script 2022-04-15 10:22:33 +02:00
Florian HENRY
24bb6c6f83 fix: clean mess up around element_tag table 2022-04-15 10:20:52 +02:00
Florian HENRY
b4fb6cf527 fix: HTML on PRODUCT_LOT_ENABLE_QUALITY_CONTROL 2022-04-15 09:13:41 +02:00
Laurent Destailleur
a4b16c5b38 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-14 23:38:42 +02:00
Laurent Destailleur
4bf918065b Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-04-14 23:29:00 +02:00
Laurent Destailleur
4d1eed7dc1 Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0
Conflicts:
	htdocs/projet/activity/perday.php
	htdocs/projet/activity/perweek.php
2022-04-14 23:28:26 +02:00
Laurent Destailleur
6bbf4ccaaf Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 13.0 2022-04-14 23:25:04 +02:00
Laurent Destailleur
fb0a38d248 Merge branch '12.0' of git@github.com:Dolibarr/dolibarr.git into 13.0 2022-04-14 23:24:09 +02:00
Laurent Destailleur
694357d48e Merge pull request #19420 from marc-dll/12.0_FIX_project_activity_default_workingdays
FIX: project timesheets: assume Saturday and Sunday as default weekend days when working days conf is empty or badly formed
2022-04-14 23:23:12 +02:00
Laurent Destailleur
110fa251e8 Merge pull request #19425 from marc-dll/13.0_FIX_project_timesheet_offdays_offset
FIX: project timesheet: public holidays offset by 1 day
2022-04-14 23:22:05 +02:00
Laurent Destailleur
3e5f84b6cd Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-14 23:15:05 +02:00
Laurent Destailleur
2113a944ce Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-14 23:14:56 +02:00
Laurent Destailleur
0c82ce1b69 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-04-14 23:04:36 +02:00
Laurent Destailleur
b5bf660fc7 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-04-14 23:03:43 +02:00
Laurent Destailleur
031669493d Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-04-14 23:03:35 +02:00
Laurent Destailleur
4feb2c3b83 Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 13.0 2022-04-14 23:02:16 +02:00
Laurent Destailleur
27ef6840d5 # WARNING: head commit changed in the meantime
Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 13.0
2022-04-14 23:01:49 +02:00
Laurent Destailleur
c4f80b4e71 Merge pull request #19424 from marc-dll/12.0_FIX_employee_tab_holiday_length
FIX: user employee tab: offset in open days messes up holiday length calculation
2022-04-14 22:59:20 +02:00
Laurent Destailleur
f61ca0b516 Merge branch 'develop' into NEW_stockstransfers 2022-04-14 22:50:31 +02:00
Laurent Destailleur
252888fc11 Merge pull request #20483 from hregis/fix_avoid_cookie_warning_missing_samesite
FIX avoid warning for missing cookie samesite params (and more secure)
2022-04-14 22:48:44 +02:00
Laurent Destailleur
75d3b3527c Update main.inc.php 2022-04-14 22:45:56 +02:00
Laurent Destailleur
06f112d3ce Update main.inc.php 2022-04-14 22:43:43 +02:00
Laurent Destailleur
1fd004d2a7 Merge pull request #20135 from atm-quentin/NEW_inventory_pmp_hidden_conf
New hidden conf to manage pmp on inventory
2022-04-14 22:42:35 +02:00
Laurent Destailleur
1438da022d Merge pull request #20157 from atm-GregM/updateButtonsGregM
FIX: replace button with dolGetButtonAction on Societe card
2022-04-14 22:37:59 +02:00
Laurent Destailleur
aee0c8afc6 Merge pull request #20612 from vold-lu/add_tabs_in_module_builder
NEW: ModuileBuilder - Add tabs view in module builder
2022-04-14 22:17:51 +02:00
Laurent Destailleur
044ebb0c86 Merge pull request #20645 from grandoc/new_branch_14_04_2022
add code to get documents list by knowledgemanagement with api
2022-04-14 22:16:28 +02:00
Laurent Destailleur
0023850c9a Update api_documents.class.php 2022-04-14 22:16:17 +02:00
Laurent Destailleur
e0f8f5d035 Merge pull request #20608 from fmarcet/13.0
Fix: Direct download don't work with multicompany
2022-04-14 22:15:16 +02:00
Philippe GRAND
d62d24a337 add code to get documents list by knowledgemanagement with api 2022-04-14 21:47:35 +02:00
Laurent Destailleur
ada8585921 Merge pull request #20611 from atm-kevin/FIX_Salaries_Payment_Entity
FIX : Add missing entity on salary's payment
2022-04-14 21:46:10 +02:00
Laurent Destailleur
02a3cfbb5f Update paymentsalary.class.php 2022-04-14 21:43:55 +02:00
Laurent Destailleur
c4a96957af Merge pull request #20613 from Hystepik/develop#1
NEW #20609 : new massaction to assign a sale representatives on a selection of thirdparties
2022-04-14 21:37:20 +02:00
Laurent Destailleur
0145fbebb6 Merge pull request #20626 from bb2a/formquestion-clone-order-or-propal
FIX - add morecss select_compagny
2022-04-14 21:05:09 +02:00
Laurent Destailleur
7636c5109d Merge pull request #20635 from Hystepik/develop#5
Fix : add of unique(entity,label) in llx_takepos_floor_tables table
2022-04-14 21:04:24 +02:00
Laurent Destailleur
fa010f401a Merge pull request #20639 from FHenry/dev_new_date_sign_in_propal_list
NEW: Add column date Signature on propal list
2022-04-14 21:03:43 +02:00
Laurent Destailleur
6075b627a3 Merge pull request #20633 from Easya-Solutions/fix-stockcorrection-include-tpl-path
FIX include tpl path in product stock
2022-04-14 21:03:15 +02:00
Laurent Destailleur
a8389fe828 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-14 20:54:43 +02:00
Laurent Destailleur
6fc650eff4 git push origin developMerge branch 'OPEN-DSI-14.0_fix_call_hook_printoriginobjectline' into develop 2022-04-14 20:53:34 +02:00
Laurent Destailleur
c7995c090f Merge branch '14.0_fix_call_hook_printoriginobjectline' of
https://github.com/OPEN-DSI/dolibarr into
OPEN-DSI-14.0_fix_call_hook_printoriginobjectline

# Conflicts:
#	htdocs/core/class/commonobject.class.php
2022-04-14 20:53:26 +02:00
Laurent Destailleur
9f0d0bdac5 Merge pull request #20643 from dolibit-ut/patch-392
Update barcode_EAN13.txt
2022-04-14 20:50:55 +02:00
Laurent Destailleur
074f96a34e Merge pull request #20637 from atm-arnaud/FIX_inter_entity
FIX intervention entity missing
2022-04-14 20:50:18 +02:00
wdammak
fb2243dacd Update card.php 2022-04-14 16:19:55 +01:00
UT from dolibit
e0d2082147 Update barcode_EAN13.txt
start formatting & english translation
2022-04-14 16:49:08 +02:00
Laurent Destailleur
4e34649fc2 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/modulebuilder/index.php
2022-04-14 16:10:23 +02:00
Laurent Destailleur
909766828e Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-04-14 15:28:25 +02:00
Laurent Destailleur
ae412d37ed Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-04-14 15:28:16 +02:00
kamel
8a9be6705d FIX: Call of printOriginObjectLine hook 2022-04-14 14:14:07 +02:00
Laurent Destailleur
3d21023110 Label of option 2022-04-14 14:11:40 +02:00
Florian HENRY
f15438dd03 NEW: data sign on propal list 2022-04-14 12:28:51 +02:00
atm-arnaud
0fcfb7c5fd FIX intervention entity missing 2022-04-14 12:08:06 +02:00
lmarcouiller
c90d758b0f New : add of unique(entity,label) 2022-04-14 11:06:54 +02:00
lvessiller
5f7f9a7515 FIX include tpl path in product stock 2022-04-14 09:48:06 +02:00
wdammak
db96173189 Update card.php 2022-04-13 18:00:24 +01:00
wdammak
88a6b65353 Update card.php
Add logo
2022-04-13 17:11:51 +01:00
wdammak
b07096ad45 Update ajaxcompanies.php
Add logo
2022-04-13 17:07:23 +01:00
Laurent Destailleur
8f6831ae27 Merge pull request #20627 from Dolibarr/revert-19677-develop#1
Revert "NEW : Import with select boxes"
2022-04-13 16:22:03 +02:00
Laurent Destailleur
90366b1b81 Revert "NEW : Import with select boxes" 2022-04-13 16:21:25 +02:00
BB2A Anthony Berton
d154696c32 morecss select_compagny 2022-04-13 16:15:07 +02:00
Laurent Destailleur
c968b872e4 Merge pull request #20619 from fmarcet/15.0
Fix: The resource dropdown does not show the values
2022-04-13 12:14:56 +02:00
Laurent Destailleur
436f122f89 Merge pull request #20623 from homer8173/patch-29
ensure priority in this usage
2022-04-13 12:13:17 +02:00
Laurent Destailleur
29242a23c3 Update product.class.php 2022-04-13 12:11:35 +02:00
Norbert Penel
e9e10e84b2 ensure priority in this usage
ensure priority in this usage
2022-04-13 10:47:33 +02:00
stickler-ci
02435a616b Fixing style errors. 2022-04-13 00:19:15 +00:00
wdammak
9c8d21c63a Create ajaxcompanies.php 2022-04-13 01:14:36 +01:00
stickler-ci
150a21820f Fixing style errors. 2022-04-13 00:14:23 +00:00
wdammak
5d9cfaa823 Update card.php 2022-04-13 01:09:44 +01:00
Laurent Destailleur
914b037a9a Fix regression: bad cache management of linked object loading. 2022-04-12 22:35:12 +02:00
Laurent Destailleur
6a7212a48d Fix sql error 2022-04-12 22:02:46 +02:00
Laurent Destailleur
5e76c1a45d Fix doc 2022-04-12 21:59:34 +02:00
Ferran Marcet
ed172421f0 Fix: The resource dropdown does not show the values 2022-04-12 19:20:45 +02:00
Ferran Marcet
6cbcc54bd9 Fix: The resource dropdown does not show the values 2022-04-12 19:19:41 +02:00
Laurent Destailleur
a776caf7a4 Merge pull request #20614 from atm-kevin/FIX_Missing_Entity_NEW_VAT
FIX : Missing entity on adding new VAT
2022-04-12 16:29:48 +02:00
Laurent Destailleur
1bfd9c695f Update tva.class.php 2022-04-12 16:29:25 +02:00
Laurent Destailleur
04ad919a2c Debug modulebuilder for v16. 2022-04-12 15:51:46 +02:00
Laurent Destailleur
386b8bee5e Fix deletion/creation of extrafields. 2022-04-12 15:26:21 +02:00
Laurent Destailleur
599c90ae6b FIX dol_string_onlythesehtmltags can keep html comments 2022-04-12 14:57:12 +02:00
stickler-ci
adda436dab Fixing style errors. 2022-04-12 12:45:05 +00:00
kevin
c51aff99af Add missing entity on adding new VAT 2022-04-12 14:38:17 +02:00
Laurent Destailleur
b1cc271ad5 Fix trans 2022-04-12 14:23:39 +02:00
Aloïs Micard
36372b250c Merge branch 'develop' into add_tabs_in_module_builder 2022-04-12 14:12:41 +02:00
lmarcouiller
d41676cf8b Close #20609 : new massaction asign sale representative 2022-04-12 13:57:00 +02:00
Laurent Destailleur
a006eaecde Fix trans 2022-04-12 13:02:33 +02:00
Aloïs Micard
752cc6f4a7 Lint source code 2022-04-12 11:17:24 +02:00
Aloïs Micard
a747f574b3 Improve comment 2022-04-12 11:15:40 +02:00
Aloïs Micard
25a851ac70 Fix translation 2022-04-12 11:12:43 +02:00
Aloïs Micard
a6407257dd Allow to view tabs in module builder 2022-04-12 11:11:26 +02:00
kevin
f4023b4e44 Add missing entity on salary's payment 2022-04-12 11:08:50 +02:00
Laurent Destailleur
98c7139859 Fix regression on fetchObjectLinked when used in loop on a static object 2022-04-12 10:34:50 +02:00
Laurent Destailleur
4da7883a9a Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-04-12 10:05:27 +02:00
Gauthier PC portable 024
6faefa7d86 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_stockstransfers 2022-04-12 09:08:57 +02:00
Regis Houssin
2d56aed912 FIX uniformize code 2022-04-12 08:31:51 +02:00
Regis Houssin
c4747735b9 FIX missing signature library when ODT model is used 2022-04-12 07:55:09 +02:00
Laurent Destailleur
cfe554b04c Fix var not defined 2022-04-12 03:08:31 +02:00
Laurent Destailleur
cb367f7787 Merge pull request #20606 from vold-lu/translate_permission_label
NEW: ModuileBuilder - Translate permissions label
2022-04-12 03:02:24 +02:00
Laurent Destailleur
356ef3373f Merge pull request #20607 from fmarcet/15.0
Fix: Online signature of proposals does not work well with multicompany
2022-04-12 02:57:26 +02:00
Laurent Destailleur
f679392d26 FIX missing picto in combo of mass actions of thirdparties. 2022-04-12 02:26:37 +02:00
Laurent Destailleur
cb15a21e41 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/core/class/commonobject.class.php
	htdocs/core/tpl/originproductline.tpl.php
	htdocs/fourn/facture/card.php
	htdocs/install/mysql/migration/14.0.0-15.0.0.sql
	htdocs/user/card.php
2022-04-11 21:22:27 +02:00
Laurent Destailleur
8f3335f75d CSS 2022-04-11 21:17:35 +02:00
Laurent Destailleur
3ac268c200 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/core/lib/security.lib.php
	htdocs/holiday/card.php
	htdocs/user/card.php
2022-04-11 21:14:51 +02:00
Laurent Destailleur
6005f0e08b Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-04-11 20:57:27 +02:00
Laurent Destailleur
b8d1acaff7 Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0
Conflicts:
	htdocs/holiday/card.php
	htdocs/user/card.php
2022-04-11 20:57:16 +02:00
Laurent Destailleur
155dfbda94 Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 13.0 2022-04-11 20:43:50 +02:00
Laurent Destailleur
974fb46fda Merge branch '12.0' of git@github.com:Dolibarr/dolibarr.git into 13.0
Conflicts:
	htdocs/user/card.php
2022-04-11 20:43:20 +02:00
Laurent Destailleur
c035ee6f2a Look and feel v16 2022-04-11 19:21:04 +02:00
Ferran Marcet
b8bccd62ef Update newonlinesign.php 2022-04-11 18:41:36 +02:00
Ferran Marcet
62b7496253 Fix: Direct download don't work with multicompany 2022-04-11 18:26:49 +02:00
Ferran Marcet
9547b9e7fe Fix: Online signature of proposals does not work well with multicompany 2022-04-11 18:01:25 +02:00
Laurent Destailleur
8b7e790130 Merge pull request #19677 from Hystepik/develop#1
NEW : Import with select boxes
2022-04-11 17:35:23 +02:00
Laurent Destailleur
770a0fbe8d Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-11 17:34:40 +02:00
Laurent Destailleur
480fda43c5 Clean code 2022-04-11 17:34:19 +02:00
Aloïs Micard
89b7c8298b Module builder: Translate permissions label 2022-04-11 17:25:45 +02:00
Laurent Destailleur
139c5a4327 Merge pull request #19518 from 1ocate/1ocateAddShipmentclose
NEW Mass action close shipment
2022-04-11 16:49:34 +02:00
Laurent Destailleur
af5444dc91 FIX ref not set in message of closing shipment 2022-04-11 16:48:56 +02:00
Laurent Destailleur
7028e82cf7 Merge pull request #20551 from Easya-Solutions/new-common-generate-document-show-errors
NEW display errors in a message box after generating documents
2022-04-11 16:33:58 +02:00
Laurent Destailleur
7ccbd34c2d Merge pull request #20587 from marc-dll/13.0_FIX_holiday_mails_in_html
FIX: holiday/leave requests: write status change emails in HTML
2022-04-11 16:29:13 +02:00
Laurent Destailleur
8b6ad766d6 Merge pull request #20605 from Easya-Solutions/14.0_fix-replenish-stock-by-warehouse
FIX replenish and manage product stock by warhouse
2022-04-11 16:23:52 +02:00
stickler-ci
ddb50264ae Fixing style errors. 2022-04-11 13:58:59 +00:00
Quentin VIAL-GOUTEYRON
67e7c91c3e pmp inventory conf MAIN_PRODUCT_PERENTITY_SHARED 2022-04-11 15:47:38 +02:00
Laurent Destailleur
dd6238cb2d Try to save on fetch 2022-04-11 15:24:39 +02:00
Laurent Destailleur
751b9efcd9 Merge pull request #20600 from javierybar/develop
FIX Tax 2 is lost when order is invoiced
2022-04-11 15:22:28 +02:00
lvessiller
18488cf1dd FIX replenish and manage product stock by warhouse 2022-04-11 13:53:35 +02:00
Laurent Destailleur
9386a0503e Fix update note 2022-04-11 02:09:24 +02:00
Laurent Destailleur
40720fad25 Fix php8 compatibility 2022-04-11 02:01:32 +02:00
javierybar
d7da57960f FIX Tax 2 is lost when order is invoiced 2022-04-10 15:33:35 +02:00
Laurent Destailleur
857048c9bd Rename file to avoid false alert due to fucking composer that brings
tons of useless libraries with vulnerabilities.
2022-04-09 15:56:01 +02:00
Laurent Destailleur
71516ecd3e Clean package.json to avoid false alert of security (not used)
Conflicts:
	package.json
2022-04-09 15:50:26 +02:00
Laurent Destailleur
4ff1c4467c Clean package.json to avoid false alert of security (not used) 2022-04-09 15:48:25 +02:00
Laurent Destailleur
da0fcb556f Fix css 2022-04-09 15:28:01 +02:00
Laurent Destailleur
1aecff854b Fix missing limit in redirect 2022-04-09 14:40:29 +02:00
Laurent Destailleur
631d2da6b3 Fix php8 2022-04-09 03:26:38 +02:00
Laurent Destailleur
c65b7fd2ff Fix regression php8 2022-04-09 02:51:40 +02:00
Laurent Destailleur
68d11f2e89 Fix phpunit regression 2022-04-09 02:42:32 +02:00
Laurent Destailleur
fef8a3c141 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-04-09 02:22:54 +02:00
Laurent Destailleur
d6860ca41b FIX bad bank amount in accounting with multicurrency 2022-04-09 02:22:45 +02:00
Laurent Destailleur
42f82486da Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-09 00:59:19 +02:00
Laurent Destailleur
b8c8d2af93 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-09 00:56:42 +02:00
Laurent Destailleur
0cdc146f5b FIX add tools to fix bad bank amount in accounting with multicurrency 2022-04-09 00:55:40 +02:00
Laurent Destailleur
eecbc05bc3 Show amount into popup of payment 2022-04-09 00:06:02 +02:00
Laurent Destailleur
003bcd60fa FIX Add protection on bad input of payment on multicurrency invoices 2022-04-08 19:52:40 +02:00
Laurent Destailleur
0673a4826a FIX currency visible into tooltip 2022-04-08 17:13:41 +02:00
Laurent Destailleur
4ff8969bac Merge pull request #19393 from atm-gauthier/NEW/addline_with_position_choice_develop
New/addline with position choice develop
2022-04-08 16:09:44 +02:00
Laurent Destailleur
099e7aaeb5 Merge pull request #20532 from OPEN-DSI/fix_add_line_when_create_invoice
FIX - Fix the adding of lines in the create invoice functions
2022-04-08 15:33:35 +02:00
Laurent Destailleur
0e3ed3bec9 Merge pull request #20564 from atm-kevin/NEW_Reverse_Movement_Product_Consumption
NEW : Reverse movement product consumption
2022-04-08 15:29:34 +02:00
Laurent Destailleur
6579e63622 Merge pull request #20594 from frederic34/patch-1
Update objectonoff.php
2022-04-08 15:20:17 +02:00
Laurent Destailleur
bedb08df50 Clean and debug online payment code 2022-04-08 15:15:55 +02:00
Frédéric FRANCE
284649fd4b Update objectonoff.php 2022-04-08 13:35:21 +02:00
Laurent Destailleur
6169f76a34 Add log for debug. Make new method for stripe payment an option. 2022-04-08 12:38:49 +02:00
BB2A Anthony Berton
9c8cb32de3 FIX 2022-04-08 10:25:19 +02:00
Laurent Destailleur
1d879bc996 FIX numbering method when mask include {cccc} 2022-04-08 10:19:20 +02:00
kevin
6a8e3761c3 Resolve merge conflicts 2022-04-08 09:54:17 +02:00
kevin
68e60fe628 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_Reverse_Movement_Product_Consumption 2022-04-08 09:51:41 +02:00
kevin
135e4f1768 Add tooltip to explain the trash action 2022-04-08 09:50:40 +02:00
Laurent Destailleur
5ea42825fb Merge pull request #19362 from ptibogxiv/patch-451
NEW stripe element with more gateways
2022-04-08 09:45:22 +02:00
Gauthier PC portable 024
83e8e07416 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW/addline_with_position_choice_develop 2022-04-08 09:25:08 +02:00
Laurent Destailleur
1f73f19ff7 php8 2022-04-08 00:42:39 +02:00
Laurent Destailleur
994b500a68 PHP 8.0 compatibility 2022-04-08 00:14:29 +02:00
Laurent Destailleur
88066d3fca Clean data 2022-04-07 23:53:02 +02:00
Laurent Destailleur
3a2815a9c0 Debug and clean v16 2022-04-07 23:44:57 +02:00
Laurent Destailleur
623f15711d Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-04-07 19:26:07 +02:00
Laurent Destailleur
e66b4a687d Close #19414 2022-04-07 19:23:45 +02:00
Laurent Destailleur
0e36097eba Save result of some methods into cached properties. 2022-04-07 19:16:50 +02:00
Laurent Destailleur
9a040e0521 Merge branch 'develop' into NEW/accountancy_massaction_preselect_account_customer_and_supplier_list 2022-04-07 18:36:34 +02:00
Laurent Destailleur
75b66eace0 Merge pull request #19417 from atm-adrien/FIX_commandeFourn_Stats
FIX : Supplier order stats
2022-04-07 18:35:10 +02:00
Laurent Destailleur
6ea8bd23ad Merge pull request #20542 from ATM-Consulting/FIX_16.0_template_supplier_invoices_overlapping_conditions
FIX 16.0 - supplier invoice card creates two invoices instead of one
2022-04-07 18:26:40 +02:00
Laurent Destailleur
6f413e03d8 Merge pull request #20523 from ATM-Consulting/NEW_16.0_consistency_mechanism_for_trigger_names
NEW 16.0 - proposal for a prefix-based consistency mechanism for trigger names
2022-04-07 18:25:03 +02:00
Laurent Destailleur
27b3209f51 Merge pull request #20583 from altairisfr/sitfac
FIX : dont update object price on each iteration when updating situation on all lines
2022-04-07 18:23:45 +02:00
Laurent Destailleur
ee66869c4c Merge pull request #20584 from marc-dll/14.0_FIX_holiday_list_end_shift
FIX: action comm list: holiday last day not included + handle halfdays
2022-04-07 18:19:56 +02:00
Laurent Destailleur
52120b26a8 Merge pull request #20585 from atm-adrien/FIX_CheckUserAccess_for_recruitment-14.0
FIX: Add 'recruitment' into check array
2022-04-07 18:16:34 +02:00
Laurent Destailleur
baa4608812 Debug v16 2022-04-07 18:16:06 +02:00
Marc de Lima Lucio
de737b6b23 FIX: holiday/leave requests: write status change emails in HTML 2022-04-07 18:07:30 +02:00
Laurent Destailleur
cbae64f9aa FIX Add a hack to fix a bug in jquery 3.6.0/select 2 2022-04-07 17:51:38 +02:00
Laurent Destailleur
746cec015b Fix remove warning on chartjs 3.5 2022-04-07 17:50:18 +02:00
Marc de Lima Lucio
6e0888ca0e FIX: action comm list: holiday last day not included + handle duration with halfdays 2022-04-07 17:17:20 +02:00
Adrien Raze
41ee9739db FIX: Add 'recruitment' into check array 2022-04-07 17:16:02 +02:00
Laurent Destailleur
f884137433 Forgot to update the COPYRIGHT 4 days ago after jqquery upgrade. 2022-04-07 17:12:17 +02:00
Laurent Destailleur
37fbe859df FIX country not visible into list of states 2022-04-07 16:33:19 +02:00
Laurent Destailleur
81c7a82f7b Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-07 16:32:34 +02:00
lvessiller
e6a0ca5042 FIX errors to catch 2022-04-07 16:32:08 +02:00
Laurent Destailleur
a120f65521 FIX country not visible into list of states 2022-04-07 16:32:03 +02:00
Laurent Destailleur
e6ee478108 Merge pull request #17983 from dpriskorn/dpriskorn-patch-1
Add what REST API cannot do to README
2022-04-07 16:27:29 +02:00
Laurent Destailleur
be0516d2bc Merge branch 'develop' into dpriskorn-patch-1 2022-04-07 16:27:08 +02:00
Laurent Destailleur
fc7a4dba4a Removed not up to date notices 2022-04-07 16:26:22 +02:00
Laurent Destailleur
96c866400f css 2022-04-07 16:05:55 +02:00
Laurent Destailleur
b8d19c9311 Debug v16 2022-04-07 15:59:50 +02:00
Christophe Battarel
56bfa20d70 FIX : dont update object price on each iteration when updating situation for all lines 2022-04-07 15:59:42 +02:00
Laurent Destailleur
637f73a833 Merge pull request #17966 from cfoellmann/quickadd
quickadd menu like bookmarks
2022-04-07 15:41:57 +02:00
Laurent Destailleur
3e5e74c687 Close #17632 2022-04-07 15:39:03 +02:00
Laurent Destailleur
a0380c262e Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-07 15:34:07 +02:00
Laurent Destailleur
26c3e235cf Merge pull request #19459 from frederic34/productmerge
can merge products
2022-04-07 15:02:03 +02:00
Laurent Destailleur
bc7ad806e7 Try to fix a strange logic. 2022-04-07 15:01:20 +02:00
Laurent Destailleur
f2f2ce7d7c Merge pull request #19555 from OPEN-DSI/fix-thirdparty-modify-tags-not-customer-prospect
FIX can modify tag in thirdparty card if const enabled
2022-04-07 14:45:59 +02:00
atm-florian
4ced0bac89 replace throw new Exception(…) with dol_print_error + exit 2022-04-07 14:39:14 +02:00
Laurent Destailleur
56d5df4387 Merge pull request #19997 from habot-it/pdf_pagefoot
Add options in function pdf_pagefoot of pdf.lib.php
2022-04-07 14:33:41 +02:00
atm-florian
5953c3cd38 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_16.0_consistency_mechanism_for_trigger_names 2022-04-07 14:33:22 +02:00
Laurent Destailleur
0d121148c0 Merge pull request #20534 from ATM-Consulting/NEW_optimize_PDF_generation
avoid fetch_objectlinked for each page of the document
2022-04-07 14:25:10 +02:00
Laurent Destailleur
10367f2cb1 Merge pull request #20536 from atm-jpb/NEW_Add_class_name_on_expensereport_rule
add class name on tds  expensereport rule card
2022-04-07 14:22:46 +02:00
Laurent Destailleur
d26c578e97 Merge pull request #20541 from FHenry/14.0_fix_bithday_date_displayed
fix: Bad dirthday displayed date (d-1) in the Bithday Widget
2022-04-07 14:22:15 +02:00
Laurent Destailleur
27acaa45f5 Clean deprecated field 2022-04-07 14:18:24 +02:00
Laurent Destailleur
01f11ff5f4 Merge pull request #20550 from ATM-Consulting/FIX_16.0_deprecate_amount_field_on_facture_fourn
Fix 16.0 deprecate amount field on facture fourn?
2022-04-07 14:06:38 +02:00
Laurent Destailleur
3e477f9bbb Merge pull request #20579 from atm-gauthier/NEW/Add_column_Total_HT_to_products_array_on_document_creation_card
NEW : identification tr by data-id
2022-04-07 14:04:22 +02:00
Laurent Destailleur
c3b3285340 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-07 14:03:29 +02:00
Laurent Destailleur
4cac6b7e29 css 2022-04-07 14:03:14 +02:00
Laurent Destailleur
0ed7c643f8 Close #20547 2022-04-07 13:28:24 +02:00
Laurent Destailleur
485e163cf6 default value 2022-04-07 13:16:51 +02:00
Laurent Destailleur
a4b9883eac Use checkbox instead of combo to save clicks when adding a resource 2022-04-07 13:14:51 +02:00
Laurent Destailleur
10c9d6f361 Merge pull request #20552 from OnCloudDev/doli-patch-services-list
Fixed service list date filter
2022-04-07 11:44:18 +02:00
Laurent Destailleur
d718a93c82 Merge pull request #20553 from dolibit-ut/patch-386
Update README.md
2022-04-07 11:42:59 +02:00
Laurent Destailleur
11b0d7ba6f Merge pull request #20559 from FHenry/14.0_fix_token_referentObject_page
FIX: Filter on Object Referent page give CRSF page
2022-04-07 11:37:41 +02:00
Laurent Destailleur
133e86b903 Merge pull request #20566 from dolibit-ut/patch-387
Update interface_80_modStripe_Stripe.class.php
2022-04-07 11:35:40 +02:00
Laurent Destailleur
1b61c6e9ae Merge pull request #20568 from dolibit-ut/patch-388
Update company.lib.php
2022-04-07 11:35:01 +02:00
Laurent Destailleur
d5b719f9bd Merge pull request #20569 from dolibit-ut/patch-389
Update currencies_iso-4217.txt
2022-04-07 11:34:38 +02:00
Laurent Destailleur
9bf6fc41d9 Merge pull request #20576 from atm-gauthier/fix_td_identification
FIX : originproductline array td identification
2022-04-07 11:34:17 +02:00
Laurent Destailleur
06f8af71ef Code comment 2022-04-07 11:24:39 +02:00
Gauthier PC portable 024
93777f81f3 NEW : identification tr by data-id 2022-04-07 11:23:27 +02:00
Laurent Destailleur
5e8f632a9b Close #20571 2022-04-07 11:22:28 +02:00
Laurent Destailleur
3fbe727248 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-07 11:19:27 +02:00
Laurent Destailleur
a021309681 Merge pull request #20574 from atm-gauthier/NEW/Add_column_Total_HT_to_products_array_on_document_creation_card
New : add column total ht to products array on document creation card
2022-04-07 11:19:03 +02:00
Laurent Destailleur
4693ef42bd Enhance responsive 2022-04-07 11:18:56 +02:00
UT from dolibit
ed9435321f Update societe.class.php
note_public  => NotePublic
note_private => NotePrivate

see #20419
2022-04-07 11:08:30 +02:00
Laurent Destailleur
8a7e98e679 Merge pull request #20570 from dolibit-ut/patch-390
Update societe.class.php
2022-04-07 11:07:34 +02:00
Gauthier PC portable 024
f1771af53c FIX : originproductline array td identification data-id 2022-04-07 11:03:25 +02:00
Laurent Destailleur
cc1ee0258b Merge pull request #20577 from FHenry/15.0_fix_modulebuilder
fix: bad permission int modulebuilder template
2022-04-07 11:01:59 +02:00
Laurent Destailleur
a11f4c2afb Merge pull request #20578 from hregis/fix_change_type_of_fields_events_note
FIX increased the size of the "note" field
2022-04-07 11:00:51 +02:00
habot-it
49a0485427 Add options in function pdf_pagefoot of pdf.lib.php - Revision 2022-04-07 08:54:59 +00:00
Gauthier PC portable 024
75b74a5fd3 FIX : identification new td 2022-04-07 10:43:31 +02:00
Regis Houssin
35ee6096b6 FIX increased the size of the "note" field 2022-04-07 10:38:46 +02:00
Gauthier PC portable 024
9ffe82e259 FIX : originproductline array td identification 2022-04-07 10:32:23 +02:00
Florian HENRY
291002fe11 fix: bad poermission int modulebuilder template 2022-04-07 10:31:54 +02:00
Gauthier PC portable 024
dfaf985634 Merge branch '12.0_NEW_column_total_ht_to_array_products_on_document_creation_card' into NEW/Add_column_Total_HT_to_products_array_on_document_creation_card 2022-04-07 09:50:37 +02:00
wdammak
51837690fe Avoid duplicate 3rd partires 2022-04-07 01:10:29 +01:00
Laurent Destailleur
ed1bdd26db Rename some jobs 2022-04-07 00:09:11 +02:00
Laurent Destailleur
524b001f3b Add $dolibarr_main_restrict_os_commands in security center. 2022-04-06 21:14:35 +02:00
UT from dolibit
2e890d9d28 Update societe.class.php
note_public  => NotePublic
note_private => NotePrivate

see #20419
2022-04-06 21:08:23 +02:00
Laurent Destailleur
afdefad55b FIX bad link to add a customer price (token duplicated) 2022-04-06 21:01:04 +02:00
UT from dolibit
81e68c892d Update currencies_iso-4217.txt 2022-04-06 20:43:07 +02:00
UT from dolibit
9db2f2c3f2 Update company.lib.php
add D of THIR-D-PARTIES

($conf->global->THIRDPARTIES_DISABLE_RELATED_OBJECT_TAB)
2022-04-06 20:12:35 +02:00
UT from dolibit
4f1e280355 Update interface_80_modStripe_Stripe.class.php
add D at THIR-D-PARTY

if (!empty($conf->global->STRIPE_DELETE_STRIPE_ACCOUNT_WHEN_DELETING_THIRDPARTY))
2022-04-06 20:09:50 +02:00
Laurent Destailleur
091ca31b6c NEW Add method hintindex() in database handlers. 2022-04-06 17:32:56 +02:00
Laurent Destailleur
32875a1e6c Fix trans 2022-04-06 17:06:49 +02:00
Laurent Destailleur
8f93584f97 Fix trans 2022-04-06 16:56:23 +02:00
Laurent Destailleur
33b5605a72 Code comment 2022-04-06 16:49:59 +02:00
Laurent Destailleur
5a8d5618f2 Fix error message on IBAN/BIC validation 2022-04-06 16:15:34 +02:00
Laurent Destailleur
0b8f4489c8 css 2022-04-06 15:55:43 +02:00
Laurent Destailleur
2e91b0107a Fix missing data in tooltip 2022-04-06 15:35:49 +02:00
Laurent Destailleur
c2f2f98235 css 2022-04-06 15:25:37 +02:00
stickler-ci
de6e3c6d55 Fixing style errors. 2022-04-06 13:19:34 +00:00
Laurent Destailleur
a528cd46bd Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/compta/bank/card.php
2022-04-06 15:17:29 +02:00
kevin
0b29b92b44 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_Reverse_Movement_Product_Consumption 2022-04-06 15:09:01 +02:00
kevin
69eaf1e708 Rework some code 2022-04-06 14:59:18 +02:00
Laurent Destailleur
1988459aa8 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-04-06 14:54:02 +02:00
Laurent Destailleur
9459971ba4 Removed the awful "group by" on list of invoices. Add index on datef. 2022-04-06 14:53:22 +02:00
Florian HENRY
798c7a8a0b try with tzserver 2022-04-06 14:09:44 +02:00
Florian HENRY
7b36733690 Merge branch '14.0' of github.com:Dolibarr/dolibarr into 14.0_fix_bithday_date_displayed 2022-04-06 13:49:22 +02:00
Laurent Destailleur
370965a0bb Rename build_path_from_id_categ into buildPathFromId and set it private 2022-04-06 13:30:56 +02:00
kevin
8be5cccb4e Reverse stock movements on mo consumed product 2022-04-06 12:32:10 +02:00
Laurent Destailleur
c3ae63f587 FIX out of memory when more than 100 000 invoices. 2022-04-06 11:34:49 +02:00
Laurent Destailleur
a0cb04bafc Fix css 2022-04-06 11:21:46 +02:00
Florian HENRY
c4f0c60a11 FIX: Filter on Object Referent page give CRSF page 2022-04-06 09:19:56 +02:00
jpb
32f601a48b rename css class name 2022-04-06 09:15:53 +02:00
atm-greg
ff7e1643e3 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_optimize_PDF_generation 2022-04-06 09:08:25 +02:00
UT from dolibit
946061af38 Update README.md 2022-04-05 20:21:48 +02:00
Laurent Destailleur
f9c9e518c3 Load tables for opensurvey only when module opensurvey is enabled 2022-04-05 19:14:00 +02:00
atm-florian
d213be235e Cleaner way of fixing the SQL error on update 2022-04-05 18:32:29 +02:00
goup2cloud.com
3eabb52176 Changed 2022-04-05 18:21:28 +02:00
Laurent Destailleur
7896baa6c9 css 2022-04-05 18:20:45 +02:00
Laurent Destailleur
91909928d4 FIX Can't edit bank record 2022-04-05 18:19:06 +02:00
Laurent Destailleur
8a9e8cd36b css 2022-04-05 18:17:49 +02:00
Laurent Destailleur
a8a83b30dc FIX Can't edit bank record 2022-04-05 18:17:45 +02:00
Laurent Destailleur
e1143eb468 Merge pull request #20081 from bb2a/border_theme-md
NEW - add param boder table for md theme
2022-04-05 18:02:51 +02:00
Laurent Destailleur
89eb19bafb Update modulebuilder.lib.php 2022-04-05 17:51:42 +02:00
Laurent Destailleur
c7d5ecd4f7 Renamed hidden option INVOICE_CAN_ALWAYS_BE_EDITED into
INVOICE_CAN_BE_EDITED_EVEN_IF_PAYMENT_DONE for better understanding.
2022-04-05 17:39:56 +02:00
lvessiller
dd6706e521 NEW display errors in a message box after generating documents 2022-04-05 17:31:34 +02:00
atm-florian
bb30a1c8c6 FIX 16.0 SQL error on update 2022-04-05 17:31:04 +02:00
atm-florian
216b4b7309 16.0 - deprecate amount field of FactureFournisseur and FactureFournisseurRec 2022-04-05 17:30:36 +02:00
Laurent Destailleur
d143b8bf6e Debug dol_uncompress and add phpunit tests 2022-04-05 17:19:12 +02:00
atm-florian
046089f371 FIX 16.0 - ref_client set instead of ref_supplier (maybe copy-paste error) 2022-04-05 15:38:54 +02:00
Laurent Destailleur
f17db2a919 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-05 15:33:29 +02:00
Laurent Destailleur
40ad12c3c3 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-04-05 15:29:54 +02:00
Laurent Destailleur
f0d163a4ac Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-04-05 15:28:54 +02:00
Laurent Destailleur
8e4c89673a Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0
Conflicts:
	htdocs/core/class/commonobject.class.php
2022-04-05 15:28:43 +02:00
Laurent Destailleur
17c719e760 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-04-05 15:24:15 +02:00
Laurent Destailleur
efa302f865 Fix phpunit 2022-04-05 15:23:17 +02:00
Laurent Destailleur
000ab8ce5f Merge pull request #20164 from Hystepik/develop#3
NEW dol_uncompress() supports extensions (.gz, .bz2, .zstd). Only .zip was supported before.
2022-04-05 15:21:09 +02:00
Laurent Destailleur
3385cb8071 Update files.lib.php 2022-04-05 15:19:55 +02:00
Laurent Destailleur
759f7e051e Update files.lib.php 2022-04-05 15:18:52 +02:00
Laurent Destailleur
2e5d0ef92b Merge pull request #20249 from atm-steve/NEW_Employee_management_improvement
New employee management improvement #18434
2022-04-05 15:12:19 +02:00
atm-greg
aa42df9961 just for glory 2022-04-05 15:11:37 +02:00
atm-greg
59fec7d094 implement cache managed by current object 2022-04-05 15:10:31 +02:00
Laurent Destailleur
2303553fd1 Merge pull request #20392 from thomas-Ngr/develop_fix_ticket_workflow_create_ficheinter_from_public_interface
Fix: ticket/workflow: automatically create ficheinter
2022-04-05 15:08:10 +02:00
Laurent Destailleur
fb93fe72f3 Merge pull request #20530 from thomas-Ngr/develop_fix_regression_hookmanager_null
fix regression: thirdparty page is empty.
2022-04-05 14:57:53 +02:00
Laurent Destailleur
f5b236d3aa Merge branch 'develop' into develop_fix_regression_hookmanager_null 2022-04-05 14:57:39 +02:00
Laurent Destailleur
04ece4f792 Merge pull request #20531 from ATM-Consulting/FIX_condition_on_remx
FIX : Bad condition on remx
2022-04-05 14:53:25 +02:00
Laurent Destailleur
ed7fd09925 Fix regression 2022-04-05 14:36:09 +02:00
Laurent Destailleur
3c64965f9c Merge pull request #20535 from altairis-noe/14.0
FIX backport
2022-04-05 14:19:33 +02:00
Laurent Destailleur
662681d82b Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-05 14:15:51 +02:00
Laurent Destailleur
5890139d38 Merge pull request #20537 from aspangaro/16a15
NEW Supplier order - Show ref supplier of reception in linked object block
2022-04-05 14:15:43 +02:00
Laurent Destailleur
26f7a50838 Update linkedobjectblock.tpl.php 2022-04-05 14:15:27 +02:00
bomuux
63016b79ea Bug: Cannot set thirdparty customer accountancy code to empty string
When thirdparty customer accountancy code is set to a non empty string, one cannot set it back to empty string due to thirdparty property deprecation :
code_compta to code_compta_client
2022-04-05 14:06:52 +02:00
Laurent Destailleur
0a27286e7d Merge pull request #20540 from bomuux/develop
FIX Cannot set thirdparty customer accountancy code to empty string
2022-04-05 14:06:12 +02:00
Laurent Destailleur
9bf156b981 Doc 2022-04-05 13:54:09 +02:00
Laurent Destailleur
b499e5e6ac Merge pull request #20544 from atm-gauthier/fix_invoice_several_orders_fourn
FIX : each time we create a supplier order, we need to give it a ref_supplier
2022-04-05 13:50:18 +02:00
Laurent Destailleur
7c591d95d9 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-04-05 13:48:39 +02:00
Laurent Destailleur
d270a1a64b Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-05 13:37:13 +02:00
Laurent Destailleur
f0433244aa Fix sql 2022-04-05 13:36:25 +02:00
Laurent Destailleur
2ccdb8d564 Merge pull request #20545 from ATM-Consulting/FIX_16.0_missing_quotes_in_SQL
FIX 16.0 - missing quotes in SQL for frequency unit update for templa…
2022-04-05 13:13:52 +02:00
atm-florian
b872fb2eac FIX 16.0 - missing quotes in SQL for frequency unit update for template supplier invoices 2022-04-05 12:28:40 +02:00
atm-florian
392ba6deed FIX 16.0 - my previous fix was incomplete (missing parentheses around OR-separated conditions)
+ replace GETPOST('fac_rec', 'int') with variable
+ make sure it works even if, one day, the "nothing selected" value for the template supplier invoice selector changes to -1 instead of ''
2022-04-05 12:16:06 +02:00
Gauthier PC portable 024
b199234afe FIX : each time we create a supplier order, we need to give it a ref_supplier 2022-04-05 12:01:09 +02:00
atm-florian
b929c2f671 FIX 16.0 - supplier invoice card creates two invoices instead of one when creating from a template 2022-04-05 11:46:06 +02:00
Laurent Destailleur
3ab993127d NEW Accept 'auto' for ref of object on import of purchase order/proposal 2022-04-05 02:17:01 +02:00
Florian HENRY
1fec350ccc fix: Bad dirthday displayed date (d-1) in the Bithday Widget 2022-04-04 22:51:30 +02:00
bomuux
b03d7c60ff Bug: Cannot set thirdparty customer accountancy code to empty string
When thirdparty customer accountancy code is set to a non empty string, one cannot set it back to empty string due to thirdparty property deprecation :
code_compta to code_compta_client
2022-04-04 18:06:11 +02:00
atm-greg
ad145c94ca add comment 2022-04-04 17:23:34 +02:00
jpb
f4a780f3f6 add name on tr data 2022-04-04 16:28:42 +02:00
Alexandre SPANGARO
5f6c5ccf92 NEW Supplier order - Show ref supplier of reception in linked object block 2022-04-04 16:25:31 +02:00
jpb
04140d8dc0 add class name on tds expensereport rule card 2022-04-04 15:45:16 +02:00
Laurent Destailleur
71012a7933 FIX #19777 #20281 2022-04-04 15:25:29 +02:00
Laurent Destailleur
01d100fc0c Missing autofocus on title field 2022-04-04 15:11:29 +02:00
atm-greg
2455d8fe52 avoid fetch_objectlinked for each page of the document 2022-04-04 14:31:48 +02:00
Laurent Destailleur
ea61e51730 Fix phpunit 2022-04-04 14:00:39 +02:00
Laurent Destailleur
af45691c9d Clean import profiles 2022-04-04 13:35:08 +02:00
Laurent Destailleur
2690f4459f NEW Enhance the import. Can use 'auto' for the ref (import of orders) 2022-04-04 13:17:45 +02:00
Laurent Destailleur
5960d5971c Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/compta/accounting-files.php
2022-04-04 10:49:51 +02:00
Laurent Destailleur
2913759bb7 Fix syntax 2022-04-04 10:45:50 +02:00
kamel
2ca5c38f0a Add test for checking if parent invoice is of type 'situation' 2022-04-04 10:40:10 +02:00
kamel
a7482a9ea0 Merge branch '14.0' of github.com:Dolibarr/dolibarr into 14.0_fix_invoice_situation_with_credit_note 2022-04-04 10:34:30 +02:00
kamel
6cac982507 FIX - Fix the adding of lines in the create invoice functions 2022-04-04 10:32:17 +02:00
Atm-Gregr
2009cc96e0 clean branch 2022-04-04 10:21:06 +02:00
Thomas Negre
9fec63c908 Empty commit to re-launch Travis 2022-04-04 10:20:43 +02:00
Atm-Gregr
53b185ce9c fix condition on remx 2022-04-04 10:19:51 +02:00
Atm-Gregr
e34c921f8b Merge branch '14.0' of github.com:Dolibarr/dolibarr into 14.0 2022-04-04 10:19:18 +02:00
atm-florian
563716b633 16.0 - Proposal for trigger prefix consistency: instead of adding missing prefix, check that trigger starts with declared prefix 2022-04-04 10:00:10 +02:00
Thomas Negre
a913bf3875 fix regression: use $hookmanager as a global variable to avoid errors on thirdparty page. 2022-04-04 09:47:34 +02:00
Thomas Negre
7469cf79f5 enhance option explanation string 2022-04-04 09:29:03 +02:00
Thomas Negre
2ec7818c75 When the ficheinter can't be created, display an error. 2022-04-04 09:29:03 +02:00
Thomas Negre
ac7f02e0d3 stickler corrections 2022-04-04 09:29:03 +02:00
Thomas Negre
35d596e1dc rename constant TICKET_AUTO_CREATE_FICHINTER_CREATE to WORKFLOW_TICKET_CREATE_INTERVENTION 2022-04-04 09:29:03 +02:00
Thomas Negre
424125ca03 Workflow fichinter: use default fichinter pdf model 2022-04-04 09:29:03 +02:00
Thomas Negre
ea68ed9c07 move automatic intervention creation from ticket/card.php to triggers/workflow.php 2022-04-04 09:29:03 +02:00
Thomas Negre
8db171ae41 add translation string for workflow ticket fichinter creation 2022-04-04 09:29:03 +02:00
Thomas Negre
4790006c3a workflow config: add button for WORKFLOW_TICKET_CREATE_INTERVENTION 2022-04-04 09:29:03 +02:00
Thomas Negre
0c0ff4dec9 add WORKFLOW_TICKET_CREATE_INTERVENTION to workflow constants 2022-04-04 09:29:03 +02:00
Laurent Destailleur
1c71a8da1e Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/compta/accounting-files.php
2022-04-03 17:27:15 +02:00
Laurent Destailleur
440b5350df # WARNING: head commit changed in the meantime
Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 14.0
2022-04-03 17:19:27 +02:00
Laurent Destailleur
d0ed15ce5c Typo 2022-04-03 17:12:54 +02:00
Laurent Destailleur
edf779505c FIX download of file must be done using a GET href link, not a POST. 2022-04-03 17:12:45 +02:00
Laurent Destailleur
564382ec6c Upgrade ACE Editor from 1.4.7 to 1.4.14 2022-04-03 12:56:07 +02:00
Laurent Destailleur
d514d72ac5 Doxygen 2022-04-03 12:35:30 +02:00
Laurent Destailleur
395758f213 Doxygen 2022-04-03 12:24:03 +02:00
Laurent Destailleur
45fca25408 NEW Upgrade chartjs library to 3.7.1 2022-04-03 11:52:25 +02:00
Laurent Destailleur
9ff4903608 css 2022-04-02 19:52:12 +02:00
Laurent Destailleur
c8bd222c05 Upgrade jquery to 3.6 and jquery-ui to 1.13.1 2022-04-02 19:50:26 +02:00
Laurent Destailleur
fde856a243 Upgrade mobildetect 2.89.39 2022-04-02 19:27:48 +02:00
Laurent Destailleur
45fb57c413 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-02 18:18:40 +02:00
Laurent Destailleur
4f6f8ba128 FIX #20177 2022-04-02 18:18:24 +02:00
Laurent Destailleur
ece9f3037a Merge pull request #19788 from OPEN-DSI/v12-fix-user-card-modify-transverse-rights
FIX user actions rights when multi-company transverse mode is enabled
2022-04-02 18:15:50 +02:00
Laurent Destailleur
f1d5695cb0 Merge pull request #20225 from thomas-Ngr/develop_new_ticket_workflow_auto_link_contract
NEW: add a workflow to auto link contract on a ticket
2022-04-02 18:15:27 +02:00
Laurent Destailleur
ab5bccb06e Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-02 18:09:59 +02:00
Laurent Destailleur
16b18557a9 Merge pull request #20190 from atm-GregM/DolGetButtonAction_Product_card
FIX: replace butAction to dolGetButtonAction on product card
2022-04-02 18:09:49 +02:00
Laurent Destailleur
f141eee005 Update card.php 2022-04-02 18:08:52 +02:00
Laurent Destailleur
f07e11179d Merge pull request #20472 from hregis/fix_avoid_hooks_conflict
NEW add hooks contact tab badge and hooks parameter for avoid conflicts
2022-04-02 18:06:01 +02:00
Laurent Destailleur
f5be9ea489 Doc 2022-04-02 17:54:46 +02:00
Laurent Destailleur
e559ad2aba Optimize column size 2022-04-02 16:50:36 +02:00
Laurent Destailleur
0eecae68f2 Merge pull request #20525 from aspangaro/16a15
NEW Accountancy - Add ref supplier and label on supplier binding page
2022-04-02 16:33:10 +02:00
Laurent Destailleur
06689a3fce Merge pull request #20520 from OPEN-DSI/14.0_fix_default_options_when_generate_pdf_in_massactions
FIX - Fix default options ($hidedetails, $hidedesc, $hideref) with globales when generate PDF in mass actions
2022-04-02 16:32:11 +02:00
Laurent Destailleur
796164d637 Merge pull request #20509 from atm-gauthier/14.0_fix_no_unset_fields_afteer_updateline_expensereport
FIX : Missing unset fields after updateline expensereport
2022-04-02 16:30:38 +02:00
Laurent Destailleur
c4c7b19fbe Merge pull request #20514 from FHenry/new_hidden_option_in_contractPDF
NEW add hidden option on contract PDF line to hide qty and price
2022-04-02 16:29:37 +02:00
Laurent Destailleur
1c71a76d6e Merge pull request #20518 from frederic34/patch-1
use calculated visibility of extrafields in list
2022-04-02 16:23:04 +02:00
Laurent Destailleur
4fc07d96d8 Merge pull request #20519 from joseplluis/patch-11
BUG expedition and warehouse with children
2022-04-02 16:22:23 +02:00
Laurent Destailleur
d3161f2c4e Clean code 2022-04-02 16:19:34 +02:00
Laurent Destailleur
7745203c16 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-02 16:17:04 +02:00
Laurent Destailleur
bb5cf1ed2e Merge pull request #20517 from ATM-Consulting/FIX_16.0_getNomUrl_for_supplier_invoice_templates
FIX 16.0 - copy `title` over `ref` on FactureFournisseurRec object
2022-04-02 16:16:55 +02:00
Laurent Destailleur
e2a957c738 Clean some trigger names 2022-04-02 16:08:04 +02:00
Laurent Destailleur
7e34ce7245 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/main.inc.php
2022-04-02 15:39:15 +02:00
Laurent Destailleur
d4accb97c5 FIX #yogosha9754 2022-04-02 15:26:40 +02:00
Laurent Destailleur
9c00115abe FIX #yogosha9754 2022-04-02 14:32:53 +02:00
Laurent Destailleur
5b91ae062f All triggers with a name XXX_UPDATE have been renamed XXX_MODIFY for
code consistency purpose.
2022-04-02 10:31:58 +02:00
Alexandre SPANGARO
141e795de2 NEW Accountancy - Add ref supplier and label on supplier binding page 2022-04-02 05:30:49 +02:00
Laurent Destailleur
2eaae819f2 Merge pull request #20522 from ATM-Consulting/FIX_16.0_missing_triggers_facturerec_facturefournisseurrec
FIX: missing trigger DELETE for FactureRec, FactureFournisseurRec
2022-04-01 20:13:37 +02:00
Laurent Destailleur
408608ebea Merge pull request #20430 from atm-GregM/DolGetButtonAction_Commande
FIX: replacing to dolGetButtonAction on Commande card
2022-04-01 20:10:13 +02:00
Laurent Destailleur
7b9b5d726a Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-04-01 19:32:35 +02:00
Laurent Destailleur
9fd4368195 Fix message on best vote 2022-04-01 19:30:22 +02:00
atm-florian
96c432566d NEW 16.0 - proposal for a prefix-based consistency mechanism for trigger names 2022-04-01 19:20:47 +02:00
Laurent Destailleur
256b2f4493 NEW Show number of votes into the label of tab "Results" of a survey 2022-04-01 19:17:25 +02:00
atm-florian
5a52650548 FIX: missing trigger DELETE for FactureRec, FactureFournisseurRec
+ trigger name consistency ('UPDATE' -> 'MODIFY')
 + preparing future consistency mechanism with class constant
2022-04-01 19:07:17 +02:00
kamel
11d4e85a39 FIX - Fiw default options ($hidedetails, $hidedesc, $hideref) with globales when generate PDF in mass actions 2022-04-01 16:52:59 +02:00
Josep Lluís
eb14d1d31f BUG expedition and warehouse with childen
if a warehouse was selected by user, picking is limited to this warehouse and his children (same check is done in products without batch)
2022-04-01 16:37:32 +02:00
Frédéric FRANCE
4669d58fcc use calculated visibility of extrafields in list 2022-04-01 16:16:45 +02:00
atm-florian
d84af9fdcd FIX space-based indent (misconfigured IDE didn't take editorconfig into account)
+ fix tab-based code alignment whitespace (≠indentation)
2022-04-01 15:40:03 +02:00
atm-florian
560b8dc04c FIX 16.0 - copy title over ref on FactureFournisseurRec object 2022-04-01 15:26:06 +02:00
Laurent Destailleur
ab4e89d678 Merge pull request #20516 from atm-jpb/FIX_TD_inexpensereport
fix : remove tds added by mistake
2022-04-01 14:49:48 +02:00
Laurent Destailleur
0c27578e69 Merge pull request #20233 from marc-dll/13.0_FIX_clone_with_unique_extrafields
FIX: object cloning: set unique extrafield values to null to prevent duplicates
2022-04-01 14:49:25 +02:00
Laurent Destailleur
9389b96d1d Merge pull request #20478 from rycks/develop
fix #20477: add online_payment_url on orders API requests
2022-04-01 14:47:38 +02:00
Laurent Destailleur
a51c868a8e Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/compta/facture/card.php
2022-04-01 14:40:50 +02:00
Laurent Destailleur
d0ee40e55d # WARNING: head commit changed in the meantime
Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
2022-04-01 14:39:10 +02:00
Laurent Destailleur
ad8e0a3be5 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-04-01 14:36:36 +02:00
Laurent Destailleur
6e4ed58be1 Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0 2022-04-01 14:36:26 +02:00
Laurent Destailleur
89b0a7b2b5 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-04-01 14:34:15 +02:00
Laurent Destailleur
afff9a69eb Merge pull request #20312 from javieralapps4up/develop
Enabled to add links to local object with local browser in email temp…
2022-04-01 14:32:53 +02:00
Laurent Destailleur
497117416b Update mails_templates.php 2022-04-01 14:32:32 +02:00
Laurent Destailleur
02d1bd2868 Merge branch 'develop' into develop 2022-04-01 14:32:05 +02:00
Laurent Destailleur
88e6c67c10 Look and feel v16 of media manager 2022-04-01 14:29:11 +02:00
jpb
1cdf55fea0 remove empty line 2022-04-01 14:21:13 +02:00
jpb
f2480b6443 fix : remove tds add by mistake 2022-04-01 13:56:10 +02:00
Laurent Destailleur
05e1957627 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-04-01 13:30:31 +02:00
Laurent Destailleur
7031995820 Merge pull request #20505 from atm-jpb/NEW_add_hook_in_expensereport_rule
add hook doactions on expensereport_rule
2022-04-01 13:26:03 +02:00
Laurent Destailleur
de28cb5d78 Merge pull request #20501 from ralf1070/develop
Allow anonymous LDAP user lookups
2022-04-01 13:23:50 +02:00
Laurent Destailleur
4c150d85c9 Doc 2022-04-01 13:23:45 +02:00
Laurent Destailleur
86e9a24eb3 Merge pull request #20507 from FHenry/14_fix_action_reminders
FIX on update with action reminder in future there is user key error
2022-04-01 13:21:05 +02:00
Laurent Destailleur
106e3072dc Update card.php 2022-04-01 13:20:40 +02:00
Laurent Destailleur
27a49af4d7 Merge pull request #20498 from andreubisquerra/develop
Avoid grouping lines with ordered lines
2022-04-01 13:18:40 +02:00
Laurent Destailleur
0948a88d52 Merge pull request #20508 from FHenry/15.0_fix_message_inventories_lot_series
fix: Show error message on inventory input line for serial num product #Evarisk
2022-04-01 13:16:37 +02:00
Laurent Destailleur
fa9fc1c8d0 Merge pull request #20506 from ATM-Consulting/FIX_missing_hook_for_statistics_box
FIX missing call to executeHooks()
2022-04-01 13:11:35 +02:00
Laurent Destailleur
e14d91dbd9 Merge pull request #20511 from FHenry/dev_20510
new: Add rank column into contract line
2022-04-01 13:10:24 +02:00
Laurent Destailleur
a3dbcd0c27 Clean language files 2022-04-01 13:09:11 +02:00
Florian HENRY
cbf89df591 new: add hidden option on contract PDF line 2022-04-01 11:54:16 +02:00
Florian HENRY
a9faf5fb54 feat: Add rank column into contract line 2022-04-01 11:29:38 +02:00
Laurent Destailleur
9be7bae765 Fix menu entry invalid 2022-04-01 11:24:58 +02:00
Laurent Destailleur
8349e48559 Reponsive 2022-04-01 11:24:45 +02:00
stickler-ci
d188f44a4c Fixing style errors. 2022-04-01 07:58:41 +00:00
Gauthier PC portable 024
fa0e7a641c FIX : Missing unset fields after updateline expensereport 2022-04-01 09:52:16 +02:00
Florian HENRY
0c44f164c7 fix: Show error message on inventory input line for serial num product 2022-04-01 09:38:06 +02:00
Laurent Destailleur
113af78a9c Add column for private widgets 2022-04-01 09:35:45 +02:00
Florian Mortgat
5df5050418 Apply suggestions from code review
replace spaces with tabs
2022-04-01 09:14:04 +02:00
andreubisquerra
7f4e71f66f Comments 2022-03-31 21:43:48 +02:00
Florian HENRY
e7db103b57 fix: on update with action reminder in future there is user key error 2022-03-31 18:55:54 +02:00
Laurent Destailleur
867883e9b1 Clean code for kanban view 2022-03-31 18:06:39 +02:00
atm-florian
ce83fa9f7e FIX missing call to executeHooks() 2022-03-31 17:34:24 +02:00
Laurent Destailleur
e10f9b4435 css 2022-03-31 17:07:13 +02:00
Laurent Destailleur
5b86476f0b Link of country not defined, jump on country setup line 2022-03-31 16:57:15 +02:00
stickler-ci
63b8c126d0 Fixing style errors. 2022-03-31 14:52:41 +00:00
jpb
be82fd73ed remove var_dump 2022-03-31 16:47:06 +02:00
jpb
5fe9a4404a add hook doactions on expensereport_rule 2022-03-31 16:43:37 +02:00
Laurent Destailleur
bbcfc4b9f9 Fix condition on table creation 2022-03-31 16:39:36 +02:00
Laurent Destailleur
af15e3ae9e Fix condition on table creation 2022-03-31 16:34:24 +02:00
Laurent Destailleur
ea8bc86c9f Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-03-31 16:26:36 +02:00
Laurent Destailleur
3ba9916be2 Fix default value used on install after a first failed try 2022-03-31 16:23:36 +02:00
Laurent Destailleur
5f7abc0f8c Merge pull request #19703 from atm-maxime/fix_mysql8_createuser
Fix #19662 : mysql8 user creation in 2 steps
2022-03-31 16:06:53 +02:00
Laurent Destailleur
cd81312b6a Update mysqli.class.php 2022-03-31 16:04:28 +02:00
Laurent Destailleur
643a3b1740 Merge pull request #20484 from atm-jpb/NEW_Trigger_expense_report_udpate_delete
add trigger update and delete on expense report det
2022-03-31 15:58:30 +02:00
Laurent Destailleur
c5a67f074b Merge pull request #20497 from OPEN-DSI/14.0_fix_compta_stats_casoc
FIX - Fix search by filters
2022-03-31 15:55:55 +02:00
Laurent Destailleur
9b206f9224 Can retreive some param of install from url 2022-03-31 15:51:48 +02:00
Laurent Destailleur
df4e5fe84d Fix missing param 2022-03-31 13:28:19 +02:00
Laurent Destailleur
7b84b3e92d css 2022-03-31 13:27:14 +02:00
Laurent Destailleur
ca55bd157a Look and feel v16 2022-03-31 11:47:18 +02:00
Laurent Destailleur
5062064e9a css 2022-03-31 11:38:40 +02:00
Laurent Destailleur
5ffb6e2546 Look and feel v15 2022-03-31 11:34:12 +02:00
Laurent Destailleur
af4c0dcf6a Fix missing status on tooltip 2022-03-31 11:29:56 +02:00
Ralf Müller
a2b60e52e9 core/login/ldap: allow anonymous user lookup 2022-03-31 09:36:58 +02:00
Laurent Destailleur
800080c06f FIX Navigation between invoices 2022-03-30 18:42:17 +02:00
Laurent Destailleur
97a7450f10 NEW Auto set invoice paid when adding credit not and remain to pay is 0 2022-03-30 18:41:45 +02:00
Laurent Destailleur
7422fd9b07 css on separators 2022-03-30 18:20:09 +02:00
andreubisquerra
e46541708c Avoid grouping lines with ordered lines 2022-03-30 17:49:54 +02:00
kamel
a22450391f FIX - Fix search by filters 2022-03-30 15:50:36 +02:00
Laurent Destailleur
199faaa6f6 Update modHRM.class.php 2022-03-30 15:19:57 +02:00
Laurent Destailleur
4e81de2a4a Merge pull request #20485 from atm-gauthier/FIX_ref_supplier_on_bill_several_fourn_orders_case
FIX : ref_client doesn't exists on supplier invoice, then ref_fourn needs to have a default value when we want to bill several supplier orders
2022-03-30 15:16:12 +02:00
Gauthier PC portable 024
684e816ac3 FIX : incrementation 2022-03-30 14:12:16 +02:00
Eric Seigne
1589afde19 fix #20477 : add online_payment_url as public var 2022-03-30 14:06:15 +02:00
Laurent Destailleur
f7c5154cac Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-30 13:04:50 +02:00
Laurent Destailleur
c37e2756b1 Merge pull request #20490 from fmarcet/15.0
Fix: Sales representative column crash on invoice list
2022-03-30 12:43:13 +02:00
Laurent Destailleur
47eec87607 Merge pull request #20324 from bb2a/Notify
NEW - Add Hook fo Notif
2022-03-30 12:42:18 +02:00
Laurent Destailleur
1304ed5763 Merge branch 'develop' into Notify 2022-03-30 12:41:57 +02:00
Laurent Destailleur
f7f318feb2 Update notification.php 2022-03-30 12:38:34 +02:00
ATM john
d50e0457f3 add todo comment 2022-03-30 12:33:17 +02:00
Laurent Destailleur
14d8c1045d Merge pull request #20056 from aspangaro/14p32
FIX Disable customer type by default if type prospect/customer is disabled
2022-03-30 12:17:44 +02:00
ATM john
c1d9ea95dc fix function name 2022-03-30 12:16:17 +02:00
Laurent Destailleur
e93f1cc507 Update card.php 2022-03-30 12:15:33 +02:00
atm-steve
4fa656be96 Merge branch 'develop' into NEW_Employee_management_improvement 2022-03-30 12:13:17 +02:00
steve
8f39efd2b9 fix: change Read and Write employee label with personal information 2022-03-30 12:11:07 +02:00
Laurent Destailleur
7bf4fbec41 Merge pull request #20493 from atm-gauthier/13.0_fix_export_resource
FIX : "WHERE" clause missing on resource export
2022-03-30 12:03:27 +02:00
Laurent Destailleur
889c35e8df NEW Default value for MAIN_SECURITY_CSRF_WITH_TOKEN is now 2 2022-03-30 12:02:20 +02:00
ATM john
16968b08f9 Add GETPOSTISARRAY 2022-03-30 11:49:48 +02:00
Gauthier PC portable 024
7d3dbf1876 FIX : "WHERE" clause missing on resource export 2022-03-30 11:20:01 +02:00
ATM john
75d7c439dd Merge branch '14.0_fix_regression_selct_extrafield_search' of github.com:atm-john/dolibarr into new_fix_regression_select_extrafield_search 2022-03-30 11:09:29 +02:00
Laurent Destailleur
fe381ef02e Fix default value of typeent on thirdparty creation. 2022-03-30 10:14:28 +02:00
Gauthier PC portable 024
6480877b99 FIX : We need to have a different default_ref_supplier for each new fourn invoice 2022-03-30 10:01:17 +02:00
Ferran Marcet
f8b457e61c Merge branch '15.0up' into 15.0 2022-03-30 09:34:28 +02:00
Ferran Marcet
dd20907d53 Fix: Sales representative column crash on invoice list 2022-03-30 09:33:14 +02:00
Laurent Destailleur
e2533849ad Merge pull request #20488 from dolibit-ut/patch-384
Update SECURITY.md
2022-03-29 21:13:00 +02:00
Laurent Destailleur
42198d79f2 Merge pull request #20489 from dolibit-ut/patch-385
Update llx_20_c_departements.sql
2022-03-29 21:12:13 +02:00
Laurent Destailleur
8eeb6f3c8d Merge pull request #20315 from atm-steve/FIX_Facture_dolGetButtonAction
Fix: Facture dolGetButtonAction
2022-03-29 21:11:24 +02:00
UT from dolibit
b6ab3275c3 Update llx_20_c_departements.sql
San Salvador / El Salvador Departmentos
2022-03-29 21:00:34 +02:00
UT from dolibit
6003a93f0d Update SECURITY.md 2022-03-29 19:55:56 +02:00
Laurent Destailleur
636188f28a Merge pull request #20247 from thomas-Ngr/develop_new_check_invoice_date
NEW: check invoice date
2022-03-29 16:07:31 +02:00
Laurent Destailleur
8e7b145510 Update modFacture.class.php 2022-03-29 16:05:41 +02:00
Gauthier PC portable 024
b7e7c95d2a FIX : ref_client doesn't exists on supplier invoice, then ref_fourn needs to have a default value when we want to bill several supplier orders 2022-03-29 16:02:39 +02:00
Laurent Destailleur
63d9f69732 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/compta/facture/card.php
2022-03-29 15:55:47 +02:00
jpb
4e9c7afc01 add td 2022-03-29 15:54:49 +02:00
Laurent Destailleur
a221b17809 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/accountancy/index.php
	htdocs/compta/facture/class/facture.class.php
2022-03-29 15:50:25 +02:00
Laurent Destailleur
a415711a66 Fix phpcs 2022-03-29 15:47:54 +02:00
Laurent Destailleur
3dd0716933 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop

Conflicts:
	htdocs/hrm/skill_list.php
2022-03-29 15:40:10 +02:00
Laurent Destailleur
5c218d6e4b Fix url 2022-03-29 15:37:14 +02:00
Laurent Destailleur
5f2ba49dfa Fix regression 2022-03-29 15:20:36 +02:00
Laurent Destailleur
1251e80963 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/accountancy/index.php
	htdocs/commande/list.php
	htdocs/langs/en_US/errors.lang
	htdocs/projet/class/task.class.php
2022-03-29 15:10:11 +02:00
Laurent Destailleur
007004c2e0 Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0
Conflicts:
	htdocs/accountancy/customer/lines.php
	htdocs/accountancy/index.php
	htdocs/accountancy/supplier/lines.php
	htdocs/compta/facture/card.php
	htdocs/core/tpl/extrafields_view.tpl.php
	htdocs/langs/en_US/errors.lang
2022-03-29 15:02:29 +02:00
Laurent Destailleur
097507a1ee Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 13.0 2022-03-29 14:53:31 +02:00
Laurent Destailleur
d1c5c79d22 Merge pull request #20299 from
Easya-Solutions/13.0_fix-thirdparty-mandatory-fields-on-validate-invoice

FIX check mandatory thirdparty fields for mass action
2022-03-29 14:53:19 +02:00
Laurent Destailleur
8dd44246b0 Merge pull request #20348 from daraelmin/daraelmin-patch-5
Fix #20263 Accountancy setup displayed with right
2022-03-29 14:47:57 +02:00
Laurent Destailleur
79865eaad8 Merge pull request #20299 from Easya-Solutions/13.0_fix-thirdparty-mandatory-fields-on-validate-invoice
FIX check mandatory thirdparty fields for mass action
2022-03-29 14:39:47 +02:00
stickler-ci
147f1b9a0c Fixing style errors. 2022-03-29 12:39:13 +00:00
jpb
732b1ab548 add trigger update and delete on expense report det
add class name on card.php expensereport
2022-03-29 14:31:17 +02:00
Laurent Destailleur
f21e3364dd Code comment 2022-03-29 14:27:22 +02:00
Laurent Destailleur
b6b20ac818 Code comment 2022-03-29 14:23:47 +02:00
Laurent Destailleur
038033f0ec Merge pull request #20389 from atm-GregM/retoursGRH
NEW/fix GRH extrafields and more stuff
2022-03-29 14:19:24 +02:00
Laurent Destailleur
c1b962b7f7 Update position.php 2022-03-29 14:19:05 +02:00
Laurent Destailleur
27e431bd59 Merge pull request #20467 from atm-gauthier/14.0_fix_no_confirm_before_delete_various_payment
14.0 fix no confirm before delete various payment
2022-03-29 14:14:46 +02:00
Laurent Destailleur
5108240ed5 Merge pull request #20456 from hregis/fix_mutlicompany_sharings_compatibility
FIX multicompany sharings compatibility
2022-03-29 13:56:43 +02:00
Laurent Destailleur
c3fc9b8e9d Merge pull request #20473 from hregis/fix_avoid_warning_illegal_string_offset
FIX avoid php warning "illegal string offset"
2022-03-29 13:53:21 +02:00
Laurent Destailleur
690464c45e Merge pull request #20481 from OPEN-DSI/develop_new_project_tast_time_hooks
NEW - Add hooks on project task time page
2022-03-29 13:24:45 +02:00
Laurent Destailleur
9eec25c62d Merge pull request #20482 from OPEN-DSI/14.0_fix_delete_task_time_trigger
FIX - Move delete task time trigger position
2022-03-29 13:14:47 +02:00
Regis Houssin
29a4e7c725 FIX check if https or not 2022-03-29 12:03:18 +02:00
Laurent Destailleur
4d77c97c43 css 2022-03-29 12:01:31 +02:00
Laurent Destailleur
13d0701351 FIX filter into the list of product lots 2022-03-29 11:20:39 +02:00
Regis Houssin
b7d6436e33 FIX add doc 2022-03-29 11:10:41 +02:00
Regis Houssin
ca7ecfbb57 FIX avoid warning for missing cookie samesite params (and more secure) 2022-03-29 11:06:18 +02:00
Laurent Destailleur
bf86f0ceb4 Fix color 2022-03-29 10:56:15 +02:00
Laurent Destailleur
e300f270fe FIX bad status of member on widget by type and status 2022-03-29 10:54:35 +02:00
Eric Seigne
9f2480712b end of #20477 2022-03-29 10:32:14 +02:00
Laurent Destailleur
301805f383 More log 2022-03-29 10:28:44 +02:00
kamel
d43b180115 FIX - Move delete task time trigger position 2022-03-29 10:26:38 +02:00
Laurent Destailleur
b3f0681d7c Fix price2num when $langs not defined 2022-03-29 10:22:03 +02:00
kamel
e17bbdebcf NEW - Add hooks on project task time page 2022-03-29 10:16:06 +02:00
Eric Seigne
53ff837d0f fix #20477: add online_payment_url on orders API requests 2022-03-29 09:48:18 +02:00
Laurent Destailleur
e2425c10e0 Fix log 2022-03-28 21:12:57 +02:00
Laurent Destailleur
3fd1f22b28 NEW Can filter on a thirdparty of product statistics 2022-03-28 21:09:01 +02:00
Quentin VIAL-GOUTEYRON
c7e8a2bd8f Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_inventory_pmp_hidden_conf 2022-03-28 16:04:12 +02:00
Quentin VIAL-GOUTEYRON
6462fd8306 update pmp real even if it's not edit 2022-03-28 16:02:18 +02:00
Laurent Destailleur
7212d6bb03 Fix phpunit 2022-03-28 14:52:46 +02:00
Laurent Destailleur
95dc25587c Standardize code of the fetch_lines() 2022-03-28 13:50:47 +02:00
GregM
d2fd5f7bcd update backtopage 2022-03-28 09:56:56 +02:00
Regis Houssin
5b5f3a4aaf FIX avoid php warning "illegal string offset" 2022-03-27 11:11:16 +02:00
Laurent Destailleur
35c57988a0 Responsive 2022-03-26 20:06:50 +01:00
Laurent Destailleur
78ee498151 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-26 16:13:54 +01:00
Laurent Destailleur
55e414ca30 Fix sql 2022-03-26 16:02:53 +01:00
Laurent Destailleur
d75483552d Responsive 2022-03-26 15:48:36 +01:00
Regis Houssin
009ad3be0f FIX remove unused code 2022-03-26 13:10:23 +01:00
Regis Houssin
97a1774bf3 NEW add hooks contact tab badge and hooks parameter for avoid conflicts 2022-03-26 12:57:30 +01:00
Laurent Destailleur
c2a088c5ff Fix regression in phpunit 2022-03-26 12:34:52 +01:00
Laurent Destailleur
453c8981e8 CSS 2022-03-26 12:24:28 +01:00
Laurent Destailleur
a80a831ea3 Partnership module swtich from status development to experimental 2022-03-26 12:04:31 +01:00
Laurent Destailleur
50847efdf8 Add the country into the popup with info on company. 2022-03-26 11:44:36 +01:00
Laurent Destailleur
bc938d86ba NEW Can enter price with tax for predefined products on purchase objects 2022-03-26 11:22:54 +01:00
Laurent Destailleur
e8a9a7b732 Responsive 2022-03-26 10:02:20 +01:00
Laurent Destailleur
396b532400 Can cumulate error message on different authentication modes 2022-03-26 09:40:22 +01:00
Regis Houssin
4479ba8015 FIX missing translation keys 2022-03-26 08:32:20 +01:00
kamel
e6a989e51a FIX - Case of invoice situation at 100% with a credit note
Set situation_final to 0 if is a credit note and the invoice source is a invoice situation (case when invoice situation is at 100%) when the credit note is validated
 So we can continue to create new invoice situation
2022-03-25 17:00:23 +01:00
lvessiller
8a7b97bed1 FIX check thirdparty object loaded and properties exist 2022-03-25 16:47:41 +01:00
Gauthier PC portable 024
fdf8a3f4ad FIX : comment 2022-03-25 16:43:54 +01:00
Gauthier PC portable 024
ab2e6ddf43 FIX : forgotten form confirm before various payment delete 2022-03-25 16:41:41 +01:00
Marc de Lima Lucio
cbba7d7d5f Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into NEW_deposit_payment_terms 2022-03-25 16:14:53 +01:00
Laurent Destailleur
8236a8e846 Fix bad test for button to show / hide canceled orders 2022-03-25 15:37:15 +01:00
Laurent Destailleur
4d91e448ce Fix bad test for button to show / hide canceled orders 2022-03-25 15:35:49 +01:00
Laurent Destailleur
446ee8dc3c Merge pull request #20274 from altairis-noe/mass_action_ship_orders
FIX: Mass action ship orders
2022-03-25 15:15:12 +01:00
Laurent Destailleur
8e610ddce7 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-25 15:10:50 +01:00
Laurent Destailleur
b9095fb10c Merge pull request #20425 from atm-GregM/DolGetButtonAction_Fourn
FIX: replacing to dolGetButtonAction on Fourn card
2022-03-25 15:08:42 +01:00
Laurent Destailleur
99277ddb15 Merge pull request #20406 from atm-GregM/DolGetButtonAction_Salaries
FIX: replacing to dolGetButtonAction on Salaries card
2022-03-25 15:07:30 +01:00
Laurent Destailleur
01468b1798 Merge pull request #20400 from atm-GregM/DolGetButtonAction_Ticket
FIX: replacing to dolGetButtonAction on Ticket card
2022-03-25 15:05:58 +01:00
Laurent Destailleur
8f5b68bf3a Merge pull request #20458 from Easya-Solutions/fix-takepos-barcode-rule-qty
FIX search bracode rule and avoid undefined quantity on search in tak…
2022-03-25 14:55:06 +01:00
Laurent Destailleur
9f0e9c1de9 Merge pull request #20460 from aspangaro/16a14
FIX Accountancy - Removed old code for reconciled (or lettering...)
2022-03-25 14:47:56 +01:00
Laurent Destailleur
ce12b379c5 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-25 14:44:04 +01:00
Laurent Destailleur
644e509265 Rename "Reconciled" with "BankLineReconciled" for bank conciliation 2022-03-25 14:43:48 +01:00
Laurent Destailleur
c83bf49b6e Merge pull request #20465 from FHenry/dev_entities_project_ono_update
new: entities is now updated on project update method
2022-03-25 13:54:42 +01:00
Laurent Destailleur
8d2d0f1e84 Fix trans 2022-03-25 12:22:52 +01:00
Florian HENRY
6774f0e571 new: entities is now updated on project update method 2022-03-25 11:53:27 +01:00
Alexandre SPANGARO
9db7d29237 Accountancy - Removed old code for reconciled (or lettering...) 2022-03-24 23:14:23 +01:00
Regis Houssin
ffa79c59f9 FIX wrong alias of table if no parent and parentkey 2022-03-24 20:48:43 +01:00
Laurent Destailleur
488b35d096 Merge pull request #20232 from hregis/fix_missing_advanced_perms
FIX missing advanced perms
2022-03-24 20:32:58 +01:00
Laurent Destailleur
76470c9548 Merge pull request #20297 from aspangaro/12p23
FIX #20279 Accountancy - PostGreSQL - Error on mass update lines already binded
2022-03-24 20:30:01 +01:00
Laurent Destailleur
6177e914e2 Merge pull request #20293 from atm-quentin/NEW_Availibility_dictionary_field
NEW Availibility dictionnary new column unit and number
2022-03-24 20:28:38 +01:00
Regis Houssin
391c02993d FIX better test for all usage 2022-03-24 20:26:47 +01:00
Laurent Destailleur
44ec8dd2b6 Merge pull request #20457 from marc-dll/13.0_FIX_contact_single_extrafields_edit
FIX: contact card: single extrafield update failed
2022-03-24 19:45:19 +01:00
Laurent Destailleur
08bc2a7ac0 Better modulebuilder design pattern 2022-03-24 19:27:42 +01:00
lvessiller
1db60116e1 FIX search bracode rule and avoid undefined quantity on search in takepos 2022-03-24 18:02:32 +01:00
Marc de Lima Lucio
1c43617d93 FIX: contact card: single extrafield update failed 2022-03-24 17:34:50 +01:00
Regis Houssin
c38437f0de FIX wrong error message 2022-03-24 17:12:37 +01:00
Regis Houssin
6fdb140f04 FIX missing table alias 2022-03-24 16:54:02 +01:00
Regis Houssin
e8dae7a8db FIX Multiccompany sharings compatibility 2022-03-24 16:40:51 +01:00
Laurent Destailleur
872cbd1fdc Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-24 15:46:13 +01:00
Laurent Destailleur
d91db3fe55 Fix: when cloning a website page, the page has the status draft. 2022-03-24 15:42:01 +01:00
Laurent Destailleur
e9aab2188e css 2022-03-24 15:39:02 +01:00
Laurent Destailleur
0fde73b4bc Merge pull request #20405 from elsp1991/fix/pmp_price_of_produced_prod_mrp
FIX MO produced product WAP calculation when MO is based on BOM (not free lines)
2022-03-24 14:29:33 +01:00
Laurent Destailleur
9747efe050 Fix phpcs 2022-03-24 14:09:46 +01:00
Laurent Destailleur
3056635aaf css 2022-03-24 14:04:03 +01:00
Laurent Destailleur
8f25477db6 Debug v16 2022-03-24 13:41:11 +01:00
Laurent Destailleur
a22d66b021 css 2022-03-24 13:31:03 +01:00
Laurent Destailleur
38439603be Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-24 13:23:04 +01:00
Laurent Destailleur
a6134f9e36 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-03-24 13:22:15 +01:00
Laurent Destailleur
ef204b2620 Fix column conditions 2022-03-24 12:52:04 +01:00
Laurent Destailleur
27d8691fcc Use default to null 2022-03-24 12:30:26 +01:00
Laurent Destailleur
793407a87d Merge pull request #20443 from defrance/patch-181
New holliday field for store nb_open_day  complex compute
2022-03-24 12:28:11 +01:00
Laurent Destailleur
8661902bfa Update llx_holiday.sql 2022-03-24 12:26:31 +01:00
Laurent Destailleur
d952419fac Update llx_holiday.sql 2022-03-24 12:25:42 +01:00
GregM
6302e11471 update GRH redirection position 2022-03-24 12:24:33 +01:00
Laurent Destailleur
35822370ec Merge pull request #20449 from atm-greg/FIX_develop_missing_hooks_for_dictionaryadmin
add more specific context and doAction hook
2022-03-24 12:08:37 +01:00
Laurent Destailleur
cd969449f2 Replaced duplicated code with extends of CommonObjectLine 2022-03-24 12:07:04 +01:00
Laurent Destailleur
6ea5708f97 Merge pull request #20450 from atm-jpb/FIX_trigger_expensereport_det
Fix trigger expensereport det
2022-03-24 12:04:22 +01:00
Laurent Destailleur
ea4b842c86 Update card.php 2022-03-24 12:01:53 +01:00
Laurent Destailleur
fdfbf05705 Update card.php 2022-03-24 12:00:11 +01:00
Laurent Destailleur
5a947a9e71 Merge pull request #20447 from bb2a/FIX---Lang-PaymentMode
FIX - Lang PaymentMode
2022-03-24 11:54:38 +01:00
Laurent Destailleur
ddfcbf6e2c Merge pull request #20452 from frederic34/patch-4
replace debug
2022-03-24 11:54:21 +01:00
Laurent Destailleur
a5757efd72 Merge pull request #20451 from frederic34/patch-1
remove debug
2022-03-24 11:54:02 +01:00
Laurent Destailleur
6c99a75abe Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-24 11:53:09 +01:00
Laurent Destailleur
e85fef5012 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-03-24 11:52:05 +01:00
Laurent Destailleur
cd66203983 Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-03-24 11:51:44 +01:00
Laurent Destailleur
154069179b Fix php syntax 2022-03-24 11:51:06 +01:00
Laurent Destailleur
6c28426b3a Fix tab 2022-03-24 11:49:34 +01:00
Laurent Destailleur
6438a99960 Fix php syntax 2022-03-24 11:48:51 +01:00
Laurent Destailleur
6108cf3ac2 # WARNING: head commit changed in the meantime
Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
2022-03-24 11:48:34 +01:00
Laurent Destailleur
6abeb2804e Fix phpcs 2022-03-24 11:47:12 +01:00
Thomas Negre
6dfad5d69f facture/card.php: replace redirection by = '' 2022-03-24 11:09:39 +01:00
Thomas Negre
2709e69a32 rename $form into $formcategory 2022-03-24 11:00:37 +01:00
Frédéric FRANCE
e157dc117d replace debug 2022-03-24 10:51:01 +01:00
Frédéric FRANCE
5f6437cbde remove debug 2022-03-24 10:46:30 +01:00
stickler-ci
671ab9a412 Fixing style errors. 2022-03-24 08:55:18 +00:00
jpb
71c1f2de3c add class td 2022-03-24 09:51:12 +01:00
jpb
7be3c8b64d ajout de class pour les <td> 2022-03-24 09:51:00 +01:00
jpb
4bc75f6487 ajout class name on create det <td> 2022-03-24 09:50:44 +01:00
jpb
a577956b73 ajout de nom de class dans les entes de ligne det en affichage 2022-03-24 09:50:30 +01:00
jpb
37e589807d add trigger create on expensereportdet 2022-03-24 09:50:16 +01:00
atm-greg
07b0a4e516 Merge branch 'FIX_develop_missing_hooks_for_dictionaryadmin' of github.com:atm-greg/dolibarr into FIX_develop_missing_hooks_for_dictionaryadmin 2022-03-24 09:42:50 +01:00
atm-greg
7fb343b3ef add context 2022-03-24 09:42:02 +01:00
stickler-ci
efbaf030ec Fixing style errors. 2022-03-24 08:41:13 +00:00
atm-greg
f70ceb9398 add more specific context and doAction hook 2022-03-24 09:34:11 +01:00
BB2A Anthony Berton
1266da05ef Lang fr 2022-03-23 19:43:34 +01:00
BB2A Anthony Berton
958b6abdaa pdf_path 2022-03-23 17:31:54 +01:00
Laurent Destailleur
4a80f35aaa Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/commande/class/commande.class.php
	htdocs/fourn/class/fournisseur.commande.class.php
2022-03-23 17:26:25 +01:00
Laurent Destailleur
289c32b880 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into 15.0 2022-03-23 17:23:35 +01:00
Laurent Destailleur
c620757dbc Merge branch '14.0' of git@github.com:Dolibarr/dolibarr.git into 15.0
Conflicts:
	htdocs/comm/propal/list.php
	htdocs/langs/en_US/projects.lang
	htdocs/product/price.php
	htdocs/reception/class/reception.class.php
2022-03-23 17:23:21 +01:00
Laurent Destailleur
161e795759 Look and feel 2022-03-23 17:12:25 +01:00
Laurent Destailleur
32f2499c36 Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into 14.0
Conflicts:
	htdocs/comm/propal/list.php
	htdocs/langs/en_US/projects.lang
	htdocs/langs/en_US/propal.lang
	htdocs/product/price.php
	htdocs/projet/card.php
	htdocs/reception/class/reception.class.php
2022-03-23 17:04:31 +01:00
Laurent Destailleur
ee611e8517 Hide not important options 2022-03-23 16:56:07 +01:00
Laurent Destailleur
947b6008c8 Merge pull request #20308 from frederic34/patch-1
Fix do not modify entity on group edit
2022-03-23 16:55:55 +01:00
BENKE Charlene
95c8dfcaa0 Update llx_holiday.sql 2022-03-23 16:53:12 +01:00
BENKE Charlene
fcc8a953ae Update 15.0.0-16.0.0.sql 2022-03-23 16:51:36 +01:00
Laurent Destailleur
94224e9275 Merge pull request #20255 from Easya-Solutions/new-proposal-clone-update-prices
NEW option update prices on proposal cloning
2022-03-23 16:49:12 +01:00
Laurent Destailleur
6167d8a02c Merge pull request #20302 from marc-dll/13.0_FIX_product_price_update_error_management
FIX: better error management at product selling price update
2022-03-23 16:48:15 +01:00
Laurent Destailleur
6c74fee9ac Merge pull request #20421 from atm-GregM/DolGetButtonAction_Delivery
FIX: replacing to dolGetButtonAction on Delivery card
2022-03-23 16:41:40 +01:00
Laurent Destailleur
1f7e1c3c91 Merge pull request #20307 from bb2a/complete_label_tab_custom_module
NEW - Record count badge in custom modules tab
2022-03-23 16:40:19 +01:00
Laurent Destailleur
d82aae1871 Update functions.lib.php 2022-03-23 16:39:55 +01:00
Laurent Destailleur
eac3a6cf86 Update functions.lib.php 2022-03-23 16:38:57 +01:00
Laurent Destailleur
5f522c9087 Merge pull request #20388 from atm-john/15.0_fix_missing_lang_trad
Fix missing lang trad
2022-03-23 16:19:14 +01:00
Laurent Destailleur
61ed36e181 Update other.lang 2022-03-23 16:19:06 +01:00
Laurent Destailleur
0cfd374314 Merge pull request #20393 from hregis/new_add_hook_in_contact_list
NEW add selectCompaniesForNewContactListWhere hook
2022-03-23 16:07:50 +01:00
Laurent Destailleur
a06fc4691b Merge pull request #20394 from hregis/new_add_hook_in_commercialindex
NEW add hooks in commercial index
2022-03-23 16:05:12 +01:00
Laurent Destailleur
bc9ec3e2b9 Merge pull request #20395 from hregis/fix_uniformize_with_element_name
FIX uniformize with element name "contact"
2022-03-23 16:04:53 +01:00
Laurent Destailleur
9d2f59a10d Merge pull request #20397 from hregis/new_add_hook_in_box_customer_and_product
NEW add hooks in customers and products boxes
2022-03-23 16:04:23 +01:00
Laurent Destailleur
c9672e4605 Merge pull request #20442 from grandoc/new_branch_23_03_2022
fix : Nested ternary expressions (without parentheses) deprecated in …
2022-03-23 16:03:36 +01:00
Laurent Destailleur
0e63e09fbb Merge pull request #20403 from Easya-Solutions/develop_remake_variants_permissions
NEW : Update variants to standard card and list (permissions)
2022-03-23 16:02:34 +01:00
Laurent Destailleur
1c7e2d3034 Merge pull request #20402 from Easya-Solutions/develop_remake_variants
NEW : Update variants to standard card and list
2022-03-23 16:02:08 +01:00
Laurent Destailleur
4e4081c4dd Merge pull request #20399 from manu8170/develop
Fix a few CSS errors
2022-03-23 16:00:29 +01:00
Laurent Destailleur
b8a74668ff Merge pull request #20407 from leninrivas/patch-2
Fix delete link in Delivery
2022-03-23 15:59:07 +01:00
Laurent Destailleur
01396cc07a Code comment 2022-03-23 15:58:55 +01:00
Philippe GRAND
b59196d3f9 fix : Nested ternary expressions (without parentheses) deprecated in PHP 7.4. Targeting PHP 8.1.0. 2022-03-23 15:55:50 +01:00
Laurent Destailleur
13311a9ac6 Merge pull request #20416 from atm-GregM/DolGetButtonAction_Expedition
FIX: replacing to dolGetButtonAction on Expedition card
2022-03-23 15:55:31 +01:00
Laurent Destailleur
0e3fa3cdc3 Merge pull request #20420 from defrance/patch-180
NEW : add hook for more buttons
2022-03-23 15:54:13 +01:00
Laurent Destailleur
18636103fc Merge pull request #20412 from dolibit-ut/patch-383
Update fournisseurs.php
2022-03-23 15:53:43 +01:00
Laurent Destailleur
d92ed35447 Merge pull request #20424 from marc-dll/13.0_FIX_propal_mass_action
FIX: propal list mass action translations and error management
2022-03-23 15:53:28 +01:00
Regis Houssin
fcb1bdaca1 # WARNING: head commit changed in the meantime
Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
new_add_hook_load_state_board
2022-03-23 15:53:09 +01:00
Laurent Destailleur
b104047365 Merge pull request #20426 from marc-dll/14.0_FIX_propal_mass_actions
FIX: propal list mass action translations and error management (v14 edition)
2022-03-23 15:52:44 +01:00
Laurent Destailleur
c4e58ab4c0 Merge pull request #20428 from Easya-Solutions/13.0_fix-reception-pmp-with-discount-price
FIX include discount price for PMP after a reception (Issue #20029)
2022-03-23 15:51:22 +01:00
Laurent Destailleur
8dcddde982 Merge pull request #20431 from fmarcet/15.0
Fix: The origin of the stock movement is not being recorded
2022-03-23 15:40:13 +01:00
Laurent Destailleur
0150b9390e Merge pull request #20436 from hregis/new_add_hook_load_state_board
NEW add hook printFieldWhere in load_state_board function
2022-03-23 15:37:58 +01:00
Laurent Destailleur
c44cfb0885 Merge pull request #20435 from marc-dll/13.0_FIX_medias_access_multicompany
FIX: permit access to medias when logged in a different entity
2022-03-23 15:37:20 +01:00
Laurent Destailleur
8fbb79734d git push origin developMerge branch 'Easya-Solutions-new-import-fec-clean-values-and-amounts' into develop 2022-03-23 15:32:30 +01:00
Laurent Destailleur
5eb6ddd7b4 Merge 20374 and add some fix. Need to be restested. 2022-03-23 15:32:05 +01:00
Laurent Destailleur
2b7797fa75 Clean code 2022-03-23 15:02:45 +01:00
Laurent Destailleur
279a8c9df5 Code comment 2022-03-23 14:39:10 +01:00
Laurent Destailleur
12db2a8f67 Doc 2022-03-23 13:02:49 +01:00
Laurent Destailleur
3e6e67680c Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-23 13:02:22 +01:00
Laurent Destailleur
8ad310c8a0 FIX Bad filter on date on salary list 2022-03-23 13:01:24 +01:00
Marc de Lima Lucio
100c48372b FIX: permit access to medias when logged in a different entity 2022-03-22 17:13:48 +01:00
Laurent Destailleur
a5e9970866 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/filefunc.inc.php
2022-03-22 16:58:57 +01:00
Laurent Destailleur
2943e68c42 Fix regression 2022-03-22 16:57:39 +01:00
Regis Houssin
e0e99e8955 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into new_add_hook_load_state_board 2022-03-22 16:51:51 +01:00
Regis Houssin
b95bb58ba0 FIX remove unused global 2022-03-22 16:49:29 +01:00
Regis Houssin
4ca3d45eca NEW add hook printFieldWhere in load_state_board function 2022-03-22 15:51:30 +01:00
GregM
e3a375b948 add &amp 2022-03-22 14:18:48 +01:00
Ferran Marcet
ccf8b01020 Fix: The origin of the stock movement is not being recorded 2022-03-22 13:46:55 +01:00
Laurent Destailleur
f662afa762 Fix sql syntax 2022-03-22 13:37:33 +01:00
Laurent Destailleur
8686e37fa9 Work on generic report. 2022-03-22 13:23:16 +01:00
Regis Houssin
5adcdd6b4e FIX use sanitize instead escape 2022-03-22 12:27:36 +01:00
Regis Houssin
ca3a4839e5 FIX try to fix CodingPhpTest::testPHP error 2022-03-22 12:06:37 +01:00
GregM
4fb62ee15a replacing to dolGetButtonAction on Commande card 2022-03-22 12:04:51 +01:00
Laurent Destailleur
02e2f9815d NEW Add option INVOICEREC_SET_AUTOFILL_DATE_START/END 2022-03-22 11:47:25 +01:00
Marc de Lima Lucio
344c29ae15 FIX: trans 2022-03-22 11:35:37 +01:00
lvessiller
5914f2ac65 FIX include discount price for PMP after a reception (Issue #20029) 2022-03-22 11:17:27 +01:00
Marc de Lima Lucio
3aae8cc3bb FIX: propal list: bad error management for set not ssigned mass action 2022-03-22 10:54:04 +01:00
GregM
00fab67225 add &amp 2022-03-22 10:52:58 +01:00
Marc de Lima Lucio
cf64fc288d FIX: propal list: missing not signed massaction translation keys for transifex 2022-03-22 10:49:03 +01:00
Regis Houssin
4efe10a9a5 NEW add hook printFieldListWhere in "show_contacts" function 2022-03-22 10:46:26 +01:00
GregM
52b562ca69 Merge branch 'Dolibarr_develop' into DolGetButtonAction_Fourn 2022-03-22 10:31:33 +01:00
GregM
f24e1862ee replacing to dolGetButtonAction on Fourn card 2022-03-22 10:29:34 +01:00
Marc de Lima Lucio
d4f55ae116 FIX: propal list: bad error management in mass actions 2022-03-22 10:11:10 +01:00
Regis Houssin
33398a3031 FIX missing object and action hooks parameters 2022-03-22 10:10:42 +01:00
Regis Houssin
c23752b3d5 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into new_add_hook_in_contact_list 2022-03-22 10:09:01 +01:00
Marc de Lima Lucio
8ef55eae07 FIX: propal list: missing translation keys for transifex 2022-03-22 10:04:05 +01:00
Laurent Destailleur
2e27c40de4 Fix customreport with link to parents 2022-03-21 22:10:51 +01:00
Laurent Destailleur
40fbaf15fe Add welsh language 2022-03-21 17:12:26 +01:00
GregM
14d91a98fa replacing to dolGetButtonAction on Delivery card 2022-03-21 15:55:53 +01:00
BENKE Charlene
5fd2ec3fda add hook for more buttons 2022-03-21 15:43:37 +01:00
Laurent Destailleur
dd38f6c35b Prepare 15.0.2 2022-03-21 12:53:03 +01:00
stickler-ci
aec5f4da13 Fixing style errors. 2022-03-21 11:25:46 +00:00
GregM
362352b198 replacing to dolGetButtonAction on Expedition card 2022-03-21 12:18:36 +01:00
Laurent Destailleur
bf7c707d05 Doc 2022-03-21 11:11:36 +01:00
UT from dolibit
1313be410a Update fournisseurs.php
$helpurl for DE
2022-03-21 10:49:37 +01:00
Laurent Destailleur
cd37d4b403 Code comment 2022-03-21 00:14:42 +01:00
Laurent Destailleur
cb93ab472d FIX ZATCA Encoding 2022-03-19 19:14:12 +01:00
Laurent Destailleur
79d34bd7d1 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-19 18:21:08 +01:00
Laurent Destailleur
8603d493ad Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/contrat/list.php
	htdocs/install/mysql/tables/llx_partnership.key.sql
2022-03-19 17:34:26 +01:00
Laurent Destailleur
1bb1475b54 Fix phpdoc 2022-03-19 15:03:32 +01:00
Laurent Destailleur
6a7309305b Fix out of memory with a lot of contracts 2022-03-19 14:41:10 +01:00
Laurent Destailleur
4c293aa49b Update doc 2022-03-19 13:06:30 +01:00
Laurent Destailleur
22fcd84030 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-19 10:42:23 +01:00
Laurent Destailleur
ef21def5ce NEW Add option MAIN_API_DEBUG to save API logs into a file 2022-03-19 10:42:06 +01:00
Lenin Rivas
12acf2342c Fix delete link en Delivery
Add actions dellink
2022-03-18 16:01:56 -05:00
GregM
9417545997 clean 2022-03-18 16:58:59 +01:00
GregM
457c760177 clean 2022-03-18 16:57:42 +01:00
BB2A Anthony Berton
f0e3c33dc3 $labeltemp is alwase true 2022-03-18 16:55:53 +01:00
GregM
e2068f1aa8 clean 2022-03-18 16:41:18 +01:00
BB2A Anthony Berton
006dc787c1 method_exists skip fatal error 2022-03-18 16:34:44 +01:00
stickler-ci
3ef36c566f Fixing style errors. 2022-03-18 15:32:11 +00:00
GregM
87e40b1364 Merge branch 'DolGetButtonAction_Salaries' of github.com:atm-GregM/dolibarr into DolGetButtonAction_Salaries 2022-03-18 16:28:49 +01:00
GregM
4c4d18ebd6 clean 2022-03-18 16:28:25 +01:00
GregM
7d059d7fcd clean 2022-03-18 16:27:01 +01:00
GregM
a64bb071cf fix dolGetButtonAction params 2022-03-18 16:20:18 +01:00
stickler-ci
c336352ecb Fixing style errors. 2022-03-18 15:19:53 +00:00
GregM
84ef951a99 replacing to dolGetButtonAction on Salaries card 2022-03-18 16:12:38 +01:00
kamel
26a462dce0 NEW : Update variants to standard card and list (permission) 2022-03-18 15:43:32 +01:00
kamel
1418fd7054 NEW : Update variants to standard card and list 2022-03-18 15:38:44 +01:00
stickler-ci
27000dcfb1 Fixing style errors. 2022-03-18 14:16:09 +00:00
GregM
13522a9fb5 Merge branch 'Dolibarr_develop' into DolGetButtonAction_Ticket 2022-03-18 15:05:53 +01:00
GregM
e4e16bee5d replacing to dolGetButtonAction on Ticket card 2022-03-18 15:04:25 +01:00
manu8170
0d04c8e906 Merge branch 'Dolibarr:develop' into develop 2022-03-18 14:35:37 +01:00
Manu
4e61bbec71 Fix a few CSS errors 2022-03-18 14:30:50 +01:00
Laurent Destailleur
4ef9d29b9d Fix missing constraints 2022-03-18 14:09:53 +01:00
Ilias Patsiaouras
b666ec2142 removing dead code free and bom lines are MO lines 2022-03-18 13:46:40 +01:00
Laurent Destailleur
60d9db248f NEW The backup tools has an "lowmemory" for mysqldump on large database 2022-03-18 13:38:07 +01:00
Regis Houssin
f31bf8df48 FIX stickler problem ?? 2022-03-18 13:15:25 +01:00
Regis Houssin
27e893be1d FIX missing element name 2022-03-18 13:13:13 +01:00
Regis Houssin
1d8f170d32 NEW add hooks in customers and products boxes 2022-03-18 12:59:07 +01:00
Laurent Destailleur
62ca286ac9 Try a fix to solve backup that fails on large database 2022-03-18 12:07:00 +01:00
Regis Houssin
b70d3eb8eb FIX uniformize with element name "contact" 2022-03-18 12:05:59 +01:00
Regis Houssin
56280f340f NEW add hooks in commercial index 2022-03-18 11:55:45 +01:00
Regis Houssin
a2f1f4331e NEW add selectCompaniesForNewContactListWhere hook 2022-03-18 11:11:25 +01:00
John BOTELLA
989f00ae63 Update other.lang 2022-03-18 09:42:37 +01:00
lvessiller
566bced9dc FIX escape values and find indexed columns by key 2022-03-18 08:53:54 +01:00
Laurent Destailleur
a970f78c4e css 2022-03-17 21:34:14 +01:00
Laurent Destailleur
360a565a29 Merge branch 'develop' of github.com:Dolibarr/dolibarr into develop 2022-03-17 18:54:26 +01:00
Laurent Destailleur
5d415b183e FIX Option to manage packaging. FIX size/length/volume of reception 2022-03-17 18:53:50 +01:00
Thomas Negre
14d9bf0322 fix non-sanitize string in SQL request 2022-03-17 16:05:35 +01:00
Thomas Negre
fc7f097c25 stickler corrections 2022-03-17 16:05:35 +01:00
Thomas Negre
3a82817ad9 avoid displaying warning messages on the public interface 2022-03-17 16:05:35 +01:00
Thomas Negre
ac37c7e4ca link intervention to a ticket contract 2022-03-17 16:05:35 +01:00
Thomas Negre
c68e16c087 admin/ticket.php: correct parameters table 2022-03-17 16:05:35 +01:00
Thomas Negre
c745237ee9 Stickler corrections 2022-03-17 16:05:35 +01:00
Thomas Negre
f92154d057 declare ticket-related constants in modTicket.class.php 2022-03-17 16:05:35 +01:00
Thomas Negre
5fba0dc237 ticket config : select product type matching tickets. 2022-03-17 16:05:35 +01:00
Thomas Negre
2cf433019e FormCategory : create method to select the product category 2022-03-17 16:05:35 +01:00
Thomas Negre
8d997de3bb add options in workflow admin panel : WORKFLOW_TICKET_LINK_CONTRACT, WORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS 2022-03-17 16:05:35 +01:00
Thomas Negre
90ab7da40d Workflow : sort contracts when automatic linking to ticket.
Introduces constants TICKET_PRODUCT_CATEGORY and WORKFLOW_TICKET_USE_PARENT_COMPANY_CONTRACTS.
Rename constant TICKET_AUTO_ASSIGN_CONTRACT_CREATE to WORKFLOW_TICKET_LINK_CONTRACT.
2022-03-17 16:05:35 +01:00
Thomas Negre
a14a63fdad Contrat->getListOfContracts(): allow to sort contracts by contract status, product category, and line status. 2022-03-17 16:05:35 +01:00
Thomas Negre
4d01969a4c Societe: add method to find parent companies 2022-03-17 16:05:35 +01:00
Laurent Destailleur
f75049d0e8 Merge pull request #20356 from aspangaro/16a3
NEW Accountancy - Add subledger account when we generate a transaction with a deposit invoice
2022-03-17 15:34:07 +01:00
GregM
ab87d772c7 update GRH extrafields and more stuff 2022-03-17 15:20:23 +01:00
ATM john
f1f3a0aa24 Fix missing AutoFill Trad 2022-03-17 14:56:25 +01:00
Alexandre SPANGARO
2ef8bd42df Merge remote-tracking branch 'upstream/develop' into 16a3 2022-03-17 14:44:38 +01:00
Alexandre SPANGARO
0856a49ef0 Fix 2022-03-17 14:44:00 +01:00
Laurent Destailleur
2f2a70c8b7 Clean code 2022-03-17 14:15:28 +01:00
Laurent Destailleur
98cc40ac8d Fix a useless group by 2022-03-17 13:57:50 +01:00
Laurent Destailleur
7aeaaab7f0 Merge pull request #20365 from gdsoftdev/fix_invoicelineorders
Fix : keep row order into invoices created from massactions
2022-03-17 13:37:17 +01:00
Laurent Destailleur
a06b51e06c Merge pull request #20385 from hregis/fix_missing_object_for_known_current_element
FIX missing to known the current object element
2022-03-17 13:29:22 +01:00
Laurent Destailleur
7d60eefb9a Merge pull request #20386 from hregis/new_add_hook_in_select_product
NEW add hooks select product list and select thirdparty list function
2022-03-17 13:26:01 +01:00
Laurent Destailleur
5709f168a8 NEW: MAIN_MAIL_AUTOCOPY_TO can accept several email and special keys 2022-03-17 12:55:12 +01:00
lvessiller
254ae943e1 FIX conflicts with develop 2022-03-17 12:33:13 +01:00
lvessiller
a4508e656c NEW pull develop 2022-03-17 12:20:15 +01:00
Laurent Destailleur
43e7547611 Fix sql errors 2022-03-17 11:49:14 +01:00
Quentin VIAL-GOUTEYRON
5bd2951cbd fix char into varchar 2022-03-17 11:38:42 +01:00
Quentin VIAL-GOUTEYRON
4aa87f3f85 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_Availibility_dictionary_field 2022-03-17 11:37:19 +01:00
Regis Houssin
a73b92c871 NEW add selectContactListWhere hook 2022-03-17 11:08:09 +01:00
Frédéric FRANCE
53909828f9 Update card.php 2022-03-17 10:56:14 +01:00
Regis Houssin
dbd0dd7e97 NEW add selectThirdpartyListWhere hook 2022-03-17 10:54:09 +01:00
Regis Houssin
e8b5fa45f2 FIX missing global $hookmanager 2022-03-17 09:55:26 +01:00
Regis Houssin
7a3b051ca0 FIX missing object element and action 2022-03-17 09:51:44 +01:00
Regis Houssin
b0fe8994e4 NEW add hook selectProductsListWhere in select_produits_list function 2022-03-17 09:32:45 +01:00
Regis Houssin
f6c9791f2f FIX missing to known the current object element 2022-03-17 09:18:08 +01:00
Laurent Destailleur
c6338e0de0 Merge pull request #20252 from wdammak/patch-47
Simplification of the code by separating the part given to menu proce…
2022-03-17 02:48:08 +01:00
Laurent Destailleur
6617cbc531 Merge pull request #20256 from marc-dll/13.0_FIX_project_creation_role_not_found
FIX: project creation prevented if PROJECTLEADER contact role renamed, de-activated or deleted
2022-03-17 02:38:11 +01:00
Laurent Destailleur
c147acabe1 Update projects.lang 2022-03-17 02:37:46 +01:00
Laurent Destailleur
63b96e22b0 Update card.php 2022-03-17 02:37:30 +01:00
Laurent Destailleur
1a8af3509e Fix regression in button 2022-03-17 00:19:48 +01:00
Laurent Destailleur
b1e826da15 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-17 00:16:28 +01:00
Laurent Destailleur
079fcacf13 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/langs/en_US/products.lang
2022-03-17 00:16:14 +01:00
Laurent Destailleur
71a4a9a48b Merge pull request #20313 from atm-kevin/NEW_WYSIWYG_ON_PROJECT_TASKS
NEW : Project's tasks WYSIWYG editor
2022-03-16 22:36:24 +01:00
Laurent Destailleur
3f7a807eba Merge pull request #20383 from fappels/develop_remember_origin_for_butactionnew
New: Remember origin for newbutton inside create form.
2022-03-16 22:33:00 +01:00
Laurent Destailleur
ef19769249 Merge pull request #20318 from Achicken7301/develop
Vietnam date format, VAT rates
2022-03-16 22:22:20 +01:00
Laurent Destailleur
16f9c74039 Merge pull request #20319 from frederic34/patch-7
tooltip order date is date not datetime
2022-03-16 22:21:55 +01:00
Laurent Destailleur
f533184f70 Merge pull request #20320 from atm-steve/FIX_Contrat_dolGetButtonAction
FIX: Contrat dolGetButtonAction
2022-03-16 22:18:35 +01:00
Laurent Destailleur
228295d29f Merge pull request #20321 from SylvainLegrand/Fix_error_dispatch_supplier_order_invert_DLC_DLUO
DLC and DLUO are reversed in the called function
2022-03-16 22:14:45 +01:00
Laurent Destailleur
55a421870c Merge pull request #20333 from dolibit-ut/dolibit-ut-patch-menu_auguria_#5
Dolibit ut patch menu auguria #5
2022-03-16 22:09:58 +01:00
Laurent Destailleur
7fb6088e10 Merge pull request #20326 from bb2a/Lang-mass-action-nosign
FIX - Lang mass action propal noSign
2022-03-16 22:09:12 +01:00
Laurent Destailleur
9c8ac4e145 Merge pull request #20334 from dolibit-ut/patch-376
Update step2.php
2022-03-16 22:08:57 +01:00
Laurent Destailleur
79dbfac4ec Merge pull request #20336 from dolibit-ut/patch-378
Update llx_adherent.sql
2022-03-16 22:03:42 +01:00
Laurent Destailleur
983bfc4ca9 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/admin/dict.php
2022-03-16 22:02:40 +01:00
Francis Appels
e55a1f2783 Remember origin for newbutton inside create form. 2022-03-16 21:59:34 +01:00
Laurent Destailleur
ab2018e9b4 Merge pull request #20376 from oscim/patch-45
Update notify.class.php
2022-03-16 21:46:15 +01:00
Laurent Destailleur
ac22b1ce81 # WARNING: head commit changed in the meantime
Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-03-16 21:31:08 +01:00
Laurent Destailleur
922a0e58a4 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-16 21:22:45 +01:00
Laurent Destailleur
143660799b Clean code using dolGetFirstLineOfText() 2022-03-16 21:22:03 +01:00
Laurent Destailleur
89aab0e9d5 Merge pull request #20379 from hregis/new_add_kooks_in_thirdparty_index
NEW add hooks in thirdparty index page
2022-03-16 20:14:42 +01:00
Laurent Destailleur
279b60dca6 Merge pull request #20378 from Hystepik/develop#4
Fix : website preview on closed status page
2022-03-16 20:13:30 +01:00
Laurent Destailleur
600657223b Update functions.lib.php 2022-03-16 20:12:01 +01:00
Laurent Destailleur
cd79b61ace Merge pull request #20381 from hregis/new_add_hooks_in_product_reassort
NEW add printFieldListWhere hook in product reassort card
2022-03-16 20:04:16 +01:00
Regis Houssin
7437be3578 FIX wrong hooks name 2022-03-16 19:22:48 +01:00
Regis Houssin
cdc3f43a01 NEW add printFieldListWhere hook in product reassort card 2022-03-16 19:09:16 +01:00
Laurent Destailleur
055e080a37 Test travis 2022-03-16 17:33:22 +01:00
Laurent Destailleur
a17e3c347a Try to fix travis pb 2022-03-16 16:33:36 +01:00
Regis Houssin
629028a435 NEW add hooks in thirdparty index page 2022-03-16 16:27:25 +01:00
Alexandre SPANGARO
8702918806 Use getDolGlobalIntString() 2022-03-16 16:09:09 +01:00
lmarcouiller
133721904d add pre-commit changes 2022-03-16 15:57:04 +01:00
lmarcouiller
43c39d833a Fix bug preview on closed status page 2022-03-16 15:56:39 +01:00
Laurent Destailleur
8a2d3c0029 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-16 15:41:02 +01:00
Laurent Destailleur
d2005a3bb9 Fix regression on extrafields not visible 2022-03-16 15:40:17 +01:00
oscim
41fa1f968b Update notify.class.php
add in var $parameters transmited in hook 
outputlangs and labeltouse for customise by hook
2022-03-16 12:30:30 +01:00
lvessiller
cbbfe68482 FIX stickler-ci 2022-03-16 11:06:14 +01:00
lvessiller
4ad6cc6a65 FIX stickler-ci 2022-03-16 11:00:14 +01:00
lvessiller
6d6e6ff70c NEW clean values and amount in FEC import 2022-03-16 10:49:16 +01:00
ATM john
53f4fd2af8 Merge branch '14.0' of github.com:Dolibarr/dolibarr into 14.0_fix_regression_selct_extrafield_search 2022-03-16 10:44:15 +01:00
Laurent Destailleur
92f82c7474 Merge pull request #20337 from dolibit-ut/patch-379
Update 15.0.0-16.0.0.sql
2022-03-15 19:48:21 +01:00
Laurent Destailleur
09a60e7ecb Merge pull request #20338 from dolibit-ut/patch-380
Update llx_00_c_country.sql
2022-03-15 19:46:49 +01:00
Laurent Destailleur
8f98007905 Merge pull request #20339 from bb2a/preview
NEW - Preview in latest comm card
2022-03-15 19:46:16 +01:00
Laurent Destailleur
306b58443c Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop

Conflicts:
	htdocs/install/mysql/data/llx_20_c_departements.sql
2022-03-15 19:44:34 +01:00
Laurent Destailleur
c4195c05e7 Merge branch 'mps-it-croatian_install_data' into develop 2022-03-15 19:42:35 +01:00
Laurent Destailleur
f885781919 Merge branch 'croatian_install_data' of https://github.com/mps-it/dolibarr into mps-it-croatian_install_data 2022-03-15 19:42:14 +01:00
Laurent Destailleur
98dfea0443 Merge pull request #20363 from dolibit-ut/patch-382
Update llx_c_hrm_public_holiday.sql
2022-03-15 19:36:19 +01:00
Laurent Destailleur
6ec272ef36 Merge pull request #20347 from hregis/fix_avoid_php_warning
FIX avoid php warning
2022-03-15 19:27:33 +01:00
Laurent Destailleur
97fc58c799 Merge pull request #20354 from fappels/14_fix_set_move_stock_on_close_wehen_batch
FIX: Stock move on shipment close and reception close disabled for lot/serial type
2022-03-15 19:21:37 +01:00
Laurent Destailleur
313228e537 Merge pull request #20362 from dolibit-ut/patch-381
Update llx_20_c_departements.sql
2022-03-15 18:55:56 +01:00
ATM john
5e644ed0a4 Fix search degradation 2022-03-15 18:24:49 +01:00
Laurent Destailleur
cf13eb7ac7 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-15 18:22:37 +01:00
Jé GDSOFT
ffa6cb0610 fix : keep lines order when creating invoices from orders 2022-03-15 15:47:36 +01:00
Jé GDSOFT
6080e1f988 fix : keep lines order when creating invoices from receptions 2022-03-15 14:59:26 +01:00
UT from dolibit
64525349e0 Update llx_c_hrm_public_holiday.sql
add  fk_departement
see #16646
2022-03-15 13:46:14 +01:00
UT from dolibit
271857189c Update llx_20_c_departements.sql 2022-03-15 13:29:34 +01:00
UT from dolibit
0766355cba Update llx_adherent.sql
add state -2
2022-03-15 11:04:56 +01:00
stickler-ci
b45aeda14d Fixing style errors. 2022-03-15 09:41:51 +00:00
Hystepik
bbed6b8198 Merge branch 'develop' into develop#2 2022-03-15 10:36:42 +01:00
stickler-ci
587b2076d8 Fixing style errors. 2022-03-15 08:11:44 +00:00
Alexandre SPANGARO
5fafa8b642 NEW Accountancy - Add subledger account when we generate a transaction with a deposit invoice 2022-03-15 06:29:26 +01:00
Francis Appels
207aba2e98 FIX: Stock move on shipment close and reception close also moves lot/serial type. 2022-03-14 17:59:18 +01:00
atm-steve
21090963e0 Merge branch 'develop' into NEW_Employee_management_improvement 2022-03-14 17:03:52 +01:00
steve
1555a95ce8 Activate new rights read and write 2022-03-14 16:50:43 +01:00
lmarcouiller
8d11813ea5 fix security problems and add zstd support 2022-03-14 11:45:23 +01:00
Laurent Destailleur
4b3b9ed66b Look and feel v15 2022-03-14 11:43:58 +01:00
Laurent Destailleur
6ffa4fa7ce Fix setup when js disabled. 2022-03-14 11:19:08 +01:00
stickler-ci
19be5f662d Fixing style errors. 2022-03-14 08:25:15 +00:00
daraelmin
3eebbc0b14 Fix #20263 Accountancy setup displayed with right
Fix #20263 Accountancy setup is displayed only for user with rights->accounting->chartofaccount
2022-03-14 09:24:26 +01:00
Regis Houssin
44b6f8a48d FIX avoid php warning 2022-03-14 09:20:10 +01:00
Khang
3ae22d0fb3 Merge branch 'Dolibarr:develop' into develop 2022-03-14 11:52:01 +07:00
Laurent Destailleur
22fb2845ae Fix position of tabs 2022-03-13 18:40:43 +01:00
Laurent Destailleur
2367f0d030 Fix missing badge 2022-03-13 18:39:45 +01:00
Laurent Destailleur
ec4ba46582 NEW Add private and public notes on tax files. 2022-03-13 18:30:31 +01:00
Miro Sertić
f22888e426 Add contributor to llx_c_forme_juridique.sql 2022-03-13 14:34:14 +01:00
Miro Sertić
fc59f49b32 Add vat for Croatia 2022-03-13 14:18:14 +01:00
Miro Sertić
339152cf68 Add departments for Croatia 2022-03-13 13:50:11 +01:00
Khang
c57336eb37 Merge branch 'Dolibarr:develop' into develop 2022-03-13 19:15:59 +07:00
Khang
25d31e38ea Add (llx_c_tva.sql) VIETNAM VAT 2022-03-13 19:15:25 +07:00
Miro Sertić
ba4b72e59d Add regions for Croatia 2022-03-13 13:07:42 +01:00
Miro Sertić
22b3c0ccae Add forme juridique for croatia 2022-03-13 13:04:50 +01:00
BB2A Anthony Berton
316380afd2 1 2022-03-12 23:41:16 +01:00
BB2A Anthony Berton
a1ac38ae03 entity 2022-03-12 21:03:11 +01:00
BB2A Anthony Berton
368a247f95 New method 2022-03-12 18:53:27 +01:00
Laurent Destailleur
ba3a938f01 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-12 18:20:43 +01:00
Laurent Destailleur
a2b880bdbf Fix access to the bank receipt view 2022-03-12 18:20:15 +01:00
BB2A Anthony Berton
899598bbb3 Cop 2022-03-12 16:50:48 +01:00
BB2A Anthony Berton
4f4c95344e Other 2022-03-12 16:36:32 +01:00
UT from dolibit
f808756c3e Update llx_00_c_country.sql
Bahreïn  -->  Bahrain
Barbade -->  Barbados
Bénin  -->  Benin
Bermudes  -->  Bermuda 
Bhoutan  -->  Bhutan
Bolivie  -->  Bolivia 
Bosnie-Herzégovine  -->  Bosnia and Herzegovina 
Ile Bouvet  -->  Bouvet Island   (Population: 0 ;-))
Territoire britannique de l''Océan Indien  -->  British Indian Ocean Territory 
Bulgarie  -->  Bulgaria
2022-03-12 16:34:15 +01:00
UT from dolibit
19b8d418e2 Update 15.0.0-16.0.0.sql 2022-03-12 16:18:09 +01:00
BB2A Anthony Berton
db799d7913 comm card propal preview 2022-03-12 16:00:22 +01:00
UT from dolibit
7d000e4c9f Update llx_adherent.sql 2022-03-12 15:57:03 +01:00
BB2A Anthony Berton
f3f1c9ba78 comm card order 2022-03-12 15:54:25 +01:00
stickler-ci
277142dcab Fixing style errors. 2022-03-12 13:53:15 +00:00
UT from dolibit
d36d962d36 Update step2.php
some english translations at  //comments
2022-03-12 14:49:54 +01:00
UT from dolibit
993cb70a6f Update init_menu_auguria.sql 2022-03-12 12:38:58 +01:00
UT from dolibit
4134bf5890 Update init_menu_auguria.sql 2022-03-12 12:31:52 +01:00
UT from dolibit
4438ef74f1 Update init_menu_auguria.sql 2022-03-12 12:29:10 +01:00
UT from dolibit
7ff53ddb74 Update init_menu_auguria.sql 2022-03-12 12:25:49 +01:00
UT from dolibit
bc60a1c819 Update init_menu_auguria.sql 2022-03-12 12:19:13 +01:00
UT from dolibit
bb82e6328d Update init_menu_auguria.sql 2022-03-12 12:08:53 +01:00
Laurent Destailleur
dc9d8336f5 Fix typo 2022-03-11 17:07:23 +01:00
Laurent Destailleur
06804c3547 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/modulebuilder/template/myobject_list.php
2022-03-11 17:04:23 +01:00
BB2A Anthony Berton
32b508ae19 Lang 2022-03-11 11:48:50 +01:00
BB2A Anthony Berton
80a2499844 Clean 2022-03-11 11:25:49 +01:00
BB2A Anthony Berton
f2377627ec Add template custom module 2022-03-11 10:50:11 +01:00
Regis Houssin
c9cc067075 FIX missing parenthesis 2022-03-11 10:48:51 +01:00
Regis Houssin
e59befa76b Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into fix_missing_advanced_perms 2022-03-11 10:46:14 +01:00
Khang
144a11d15e Merge branch 'Dolibarr:develop' into develop 2022-03-11 13:09:08 +07:00
Laurent Destailleur
27baeef719 Add sticky left 2022-03-10 20:42:02 +01:00
Sylvain Legrand
b9a698b3ed DLC and DLUO are reversed in the called function 2022-03-10 17:39:53 +01:00
Steve
b5a5d488f4 Merge branch 'dolibarrdevelop' into WIP_Contrat_dolGetButtonAction 2022-03-10 16:20:45 +01:00
stickler-ci
bf9b6c05a2 Fixing style errors. 2022-03-10 15:20:37 +00:00
steve
f987c30a10 clean comments 2022-03-10 16:19:32 +01:00
kevin
2a09d4821b Resolve merge conflicts 2022-03-10 16:16:42 +01:00
kevin
896c79f27a Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_WYSIWYG_ON_PROJECT_TASKS 2022-03-10 16:13:02 +01:00
kevin
7b3d472fa2 Rework code to best match the standard 2022-03-10 16:10:34 +01:00
Laurent Destailleur
88ffe1827e Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	ChangeLog
	htdocs/core/ajax/row.php
	htdocs/filefunc.inc.php
2022-03-10 15:59:09 +01:00
steve
fffbc9eac8 wip: Contrat dolGetButtonAction 2022-03-10 15:56:10 +01:00
Frédéric FRANCE
7291bbf710 tooltip order date is date not datetime
from sql table
date_commande date, -- date de la commande
2022-03-10 13:52:05 +01:00
Gauthier PC portable 024
b73e1019ed FIX : cast int sql 2022-03-10 12:02:25 +01:00
Gauthier PC portable 024
732724ea51 FIX : move all sql stock transfer queries into 15 => 16 migration file 2022-03-10 11:37:52 +01:00
Gauthier PC portable 024
db7bd84ec3 FIX : tms without DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 2022-03-10 11:29:53 +01:00
Gauthier PC portable 024
9e2c8ffe37 FIX : test for stickler feedback 2022-03-10 11:10:38 +01:00
Gauthier PC portable 024
96f78adb92 FIX : travis feedback, tms without "DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP" 2022-03-10 11:07:00 +01:00
Gauthier PC portable 024
c103c7d61e Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_stockstransfers 2022-03-10 10:31:56 +01:00
Gauthier PC portable 024
5b715978e4 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW/addline_with_position_choice_develop 2022-03-10 10:02:57 +01:00
Khang
d7fe48ebc0 Vietnam date format
https://en.wikipedia.org/wiki/Date_and_time_notation_in_Vietnam
2022-03-10 14:14:10 +07:00
BB2A Anthony Berton
1a5beb0664 Fix style 2022-03-09 19:55:55 +01:00
BB2A Anthony Berton
e1e573c532 Add Hook 2022-03-09 19:55:40 +01:00
BB2A Anthony Berton
032b8692b1 Add hook 2022-03-09 19:42:17 +01:00
BB2A Anthony Berton
3a5a74478f Add auther notif 2022-03-09 18:05:07 +01:00
steve
c3b22ed26e wip: clean comments 2022-03-09 17:10:53 +01:00
steve
25fcb83b74 wip: reopen button 2022-03-09 16:41:26 +01:00
stickler-ci
bb2f57a962 Fixing style errors. 2022-03-09 13:15:30 +00:00
kevin
22249d15c3 Add WYSIWYG Editor on project's tasks description field 2022-03-09 14:09:22 +01:00
javieralapps4up
8ddd37a419 Enabled to add links to local object with local browser in email templates
It is forbidden by default
2022-03-09 13:16:09 +01:00
Steve
dcf5d984b0 Merge branch 'dolibarrdevelop' into WIP_Facture_dolGetButtonAction 2022-03-09 11:49:34 +01:00
Quentin VIAL-GOUTEYRON
7ae96b9839 convert number into qty 2022-03-09 10:34:23 +01:00
Thomas Negre
7f527b85b0 use double quotes to compose SQL requests 2022-03-09 09:34:50 +01:00
Thomas Negre
93765add38 Travis fix, hopefully. 2022-03-09 09:25:52 +01:00
Thomas Negre
4ad92a04fc stickler corrections 2022-03-09 09:25:52 +01:00
Thomas Negre
9ce51ba4b7 admin/facture: don't show the modify button if not in an HTML form 2022-03-09 09:25:52 +01:00
Thomas Negre
07672b23b9 Langs/bills.lang: add error string for invoice date check 2022-03-09 09:25:52 +01:00
Thomas Negre
288663be36 Facture mass validation: sort by date to avoid conflicts 2022-03-09 09:25:52 +01:00
Thomas Negre
7c866ce6a2 facture/card.php: avoid validating invoices with date anterior to last invoice date 2022-03-09 09:25:52 +01:00
Thomas Negre
eda9622c9c Facture: enhance validation by adding INVOICE_CHECK_POSTERIOR_DATE option 2022-03-09 09:25:52 +01:00
Thomas Negre
ad416ef792 Facture: create method willBeLastOfSameType() 2022-03-09 09:25:52 +01:00
Thomas Negre
02693ba5ea Facture : add config option for INVOICE_CHECK_POSTERIOR_DATE 2022-03-09 09:25:52 +01:00
Thomas Negre
6e08115aa2 introduce constant INVOICE_CHECK_POSTERIOR_DATE in Facture module 2022-03-09 09:25:52 +01:00
Frédéric FRANCE
3dfd92e9c0 Fix do not modify entity on group edit
https://www.dolibarr.fr/forum/t/etoile-globalgroup-dans-les-groupes-dutilisateurs-quelle-signification-quel-usage/38772/26
2022-03-08 21:19:29 +01:00
BB2A Anthony Berton
cef9cf8670 int 2022-03-08 18:34:56 +01:00
BB2A Anthony Berton
eae3fe78f1 init 2022-03-08 18:06:26 +01:00
Marc de Lima Lucio
4efcbe8799 Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into NEW_deposit_payment_terms 2022-03-08 15:23:52 +01:00
Marc de Lima Lucio
161edea6f3 FIX: deposit payment terms: adapt to v16 2022-03-08 15:22:19 +01:00
Marc de Lima Lucio
1993a8d7b1 Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into NEW_deposit_payment_terms 2022-03-08 15:07:37 +01:00
Marc de Lima Lucio
f837845c12 FIX: still prevent project creation if PROJECTLEADER role unavailable, but with a specific error message 2022-03-08 15:07:02 +01:00
Marc de Lima Lucio
e989371651 FIX: better error management at product selling price update 2022-03-08 14:49:26 +01:00
lvessiller
19ad231012 FIX stickler-ci 2022-03-08 12:02:05 +01:00
lvessiller
397776d4a4 FIX check mandatory thirdparty fields for mass action 2022-03-08 11:29:01 +01:00
lvessiller
bbe3cfffb1 FIX stickler-ci 2022-03-08 10:17:47 +01:00
lvessiller
2561fcbb85 FIX translate update prices and add const in proposal setup 2022-03-08 10:06:57 +01:00
Quentin VIAL-GOUTEYRON
b904ea73a6 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_inventory_pmp_hidden_conf 2022-03-08 08:55:21 +01:00
Quentin VIAL-GOUTEYRON
44577b2d1a fix remove delete and add update lxx c availability 2022-03-08 08:51:31 +01:00
Quentin VIAL-GOUTEYRON
771fa0b6ed Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_Availibility_dictionary_field 2022-03-08 08:50:22 +01:00
Alexandre SPANGARO
87b187bded FIX #20279 Accountancy - PostGreSQL - Error on mass update lines already binded 2022-03-08 03:43:40 +01:00
Laurent Destailleur
66f21fc1d0 Fix phpunit 2022-03-07 20:46:09 +01:00
Laurent Destailleur
9dfb7b4328 Revert "CSS"
This reverts commit 7847e04925.
2022-03-07 19:46:24 +01:00
Laurent Destailleur
7847e04925 CSS 2022-03-07 19:45:00 +01:00
Laurent Destailleur
1d9a79e980 css 2022-03-07 19:42:57 +01:00
Laurent Destailleur
b339e1a883 Enhance phpunit on sql code testing 2022-03-07 19:37:53 +01:00
Laurent Destailleur
d6852c31b8 Clean code 2022-03-07 19:31:06 +01:00
Laurent Destailleur
6e298a2cb4 Fix phpunit 2022-03-07 19:18:32 +01:00
Laurent Destailleur
492c198e46 Make conditions of some corn tasks dynamic. 2022-03-07 18:01:07 +01:00
Laurent Destailleur
7defe26e56 Debug cron to send backup by email. 2022-03-07 17:55:10 +01:00
Laurent Destailleur
82244afb94 Merge pull request #20136 from bb2a/Send-Local-Database-Dump
NEW -  Add util function send backup by mail
2022-03-07 17:37:44 +01:00
Laurent Destailleur
cf0ef207b8 Update cron.lang 2022-03-07 17:37:32 +01:00
Laurent Destailleur
29e278ed36 Update modCron.class.php 2022-03-07 17:33:50 +01:00
Laurent Destailleur
fc139ba9e8 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-07 17:22:53 +01:00
Laurent Destailleur
fa46966b81 Fix insert must not include the rowid. 2022-03-07 17:22:29 +01:00
Laurent Destailleur
ce52f8a7ed Merge pull request #20294 from bloxera/develop
CLOSE #20292 Include German public holidays
2022-03-07 17:15:22 +01:00
Laurent Destailleur
32711e5f1f Merge pull request #20145 from atm-GregM/Fix_dolGetButtonAction
FIX: function dolGetButtonAction change title if html not set
2022-03-07 17:14:33 +01:00
Laurent Destailleur
dab0095224 Merge pull request #19990 from iouston/patch-3
add attribute target on getNomurl()
2022-03-07 17:12:19 +01:00
Laurent Destailleur
d38df4b8a0 Update societe.class.php 2022-03-07 17:11:32 +01:00
Laurent Destailleur
88b9123a93 Merge pull request #19989 from iouston/patch-2
add target attribute on getNomUrl
2022-03-07 17:10:39 +01:00
Laurent Destailleur
d0ca8af6ee Update commande.class.php 2022-03-07 17:10:28 +01:00
Laurent Destailleur
660aa7b282 Update commande.class.php 2022-03-07 17:10:00 +01:00
Laurent Destailleur
5bde2b3489 Merge 2022-03-07 16:42:47 +01:00
Laurent Destailleur
c4036345b8 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-03-07 16:42:28 +01:00
Laurent Destailleur
b1de986fb7 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-03-07 16:41:44 +01:00
priojk
db12fe9225 CLOSE #20292 Include German public holidays
Definition of German public holidays (those which are
only relevant in some areas are marked with --TLW).
The values are configured during the first initial set-up of
Dolibarr.
2022-03-07 16:38:56 +01:00
Laurent Destailleur
dd9f10b1b6 Merge pull request #20186 from atm-kevin/FIX_Add_Id_In_Formproject
FIX : Add ID into formproject method
2022-03-07 16:34:04 +01:00
Laurent Destailleur
1ecdc7bc20 css 2022-03-07 16:30:39 +01:00
Laurent Destailleur
0020f4e48a Merge pull request #20222 from thomas-Ngr/develop_new_ticket_notify_at_closing
New - Ticket: notify contacts at closing
2022-03-07 16:23:27 +01:00
Laurent Destailleur
e3113ed341 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-07 16:22:13 +01:00
Laurent Destailleur
1ce8ecb43d Clean setup page 2022-03-07 16:21:37 +01:00
Laurent Destailleur
61164ec814 Merge pull request #20196 from bb2a/patch-1
FIX - Add last_main_doc in table societe
2022-03-07 16:09:03 +01:00
Laurent Destailleur
6d772b7627 Merge branch 'develop' into patch-1 2022-03-07 16:08:31 +01:00
Quentin VIAL-GOUTEYRON
af8ecd1a38 NEW Availibility dictionnary column unit and number 2022-03-07 16:02:49 +01:00
Laurent Destailleur
84b951c2f9 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-07 15:27:07 +01:00
Laurent Destailleur
54ecf1f98c # WARNING: head commit changed in the meantime
Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-03-07 15:24:08 +01:00
Laurent Destailleur
eff4a894c2 Merge pull request #20242 from JohnXLivingston/fix_status_batch_doc
Fix: update status_batch documentation
2022-03-07 14:55:34 +01:00
Laurent Destailleur
6bb49797f8 Merge pull request #20243 from JohnXLivingston/fix_template_name_typo
Fix: typo in template name
2022-03-07 14:55:02 +01:00
Laurent Destailleur
bda5b775de Merge pull request #20253 from thomas-Ngr/develop_fix_ticket_messages_order_by_date
fix: make ticket messages order by date desc by default
2022-03-07 14:33:04 +01:00
Laurent Destailleur
ee338e442c Merge pull request #20246 from dolibit-ut/patch-374
Update README.md
2022-03-07 14:32:13 +01:00
Laurent Destailleur
8eaf7a9d8a Merge pull request #20251 from atm-kevin/FIX_ADD_Init_Hooks_On_Project_Tabs
FIX : Add hooks on several project tabs
2022-03-07 14:31:37 +01:00
Laurent Destailleur
feafbaded2 Update info.php 2022-03-07 14:31:19 +01:00
Laurent Destailleur
2ef42c178b Update info.php 2022-03-07 14:30:38 +01:00
Laurent Destailleur
acb47a4cc7 Update document.php 2022-03-07 14:29:39 +01:00
Laurent Destailleur
6a979dacd6 Merge pull request #20261 from aspangaro/16a3
NEW Dictionaries - add possibility to manage countries in EEC
2022-03-07 14:24:31 +01:00
Laurent Destailleur
403db246bb Merge pull request #20280 from Achicken7301/develop
Add unit price for {DOL_PRINT_OBJECT_LINES}
2022-03-07 13:44:03 +01:00
Laurent Destailleur
edaf740e78 Update dolreceiptprinter.class.php 2022-03-07 13:43:16 +01:00
Laurent Destailleur
52aed53480 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-07 13:24:16 +01:00
Laurent Destailleur
2142440b6c Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/comm/action/index.php
	htdocs/langs/en_US/errors.lang
2022-03-07 13:23:47 +01:00
Laurent Destailleur
2e045db155 Merge pull request #20286 from andreubisquerra/develop
Set to default place after close sale in TakePOS
2022-03-07 12:32:34 +01:00
Quentin VIAL-GOUTEYRON
cc591b3a03 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_inventory_pmp_hidden_conf 2022-03-07 10:12:17 +01:00
Laurent Destailleur
e6857c9f64 Fix color in css 2022-03-06 20:31:06 +01:00
andreubisquerra
3715659880 Set to default place after close sale in TakePOS
Set to default place after close sale in TakePOS when Bar Restaurant mode is enabled
2022-03-06 12:27:59 +01:00
Khang
9cada04261 Add unit price for "free-text product" receipt 2022-03-05 16:58:37 +07:00
Khang
d326fe02cf Feature: unit price for {DOL_PRINT_OBJECT_LINES}
Module "Receipt printers":
add unit price for {DOL_PRINT_OBJECT_LINES} in tabs "template setup"
2022-03-05 07:02:36 +07:00
Laurent Destailleur
893e1571b8 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-04 22:43:35 +01:00
Noé Cendrier
cfabaea645 translation refining 2022-03-04 17:38:39 +01:00
Noé Cendrier
e4f4a07fc6 correct mass action "classify delivered" 2022-03-04 17:31:04 +01:00
steve
665e401564 wip: replace butAction 2022-03-04 17:03:40 +01:00
Alexandre SPANGARO
1671b095eb Fix also table llx_c_country 2022-03-04 07:02:40 +01:00
Alexandre SPANGARO
13b69bcf93 NEW Dictionaries - add possibility to manage countries in EEC 2022-03-04 07:00:02 +01:00
steve
436b8fa5b5 apply feedbacks 2022-03-03 16:18:09 +01:00
Marc de Lima Lucio
7239fa3605 FIX: project creation prevented if PROJECTLEADER contact role renamed, de-activated or deleted 2022-03-03 12:19:47 +01:00
lvessiller
6c172d6441 NEW option update prices on proposal cloning 2022-03-03 11:58:29 +01:00
wdammak
cf43024d5d Update eldy.lib.php 2022-03-03 11:29:47 +01:00
Thomas Negre
d884fe6532 Make ticket messages order by date desc by default 2022-03-03 10:03:19 +01:00
Laurent Destailleur
8655592aea Fix bad merge 2022-03-03 09:51:12 +01:00
Laurent Destailleur
aed4d69568 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-03 09:49:26 +01:00
Laurent Destailleur
4f17f45e99 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	test/phpunit/SecurityTest.php
2022-03-03 02:17:53 +01:00
Laurent Destailleur
88944656be Doc 2022-03-03 02:05:13 +01:00
Laurent Destailleur
cdf603a7b3 Prepare v16 2022-03-03 02:02:04 +01:00
Laurent Destailleur
0fed4dae13 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/core/lib/functions.lib.php
2022-03-03 01:59:31 +01:00
Laurent Destailleur
9bda7ba8c7 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/core/class/doleditor.class.php
2022-03-03 00:16:55 +01:00
wdammak
dd9a350136 Simplification of the code by separating the part given to menu processing
The goal:
- A simplification of the code for easier maintenance is targeted
- Separation of data to left menu display processing
- Plan in the future to put the left menu data directly in the folders of the modules concerned and which will be loaded automatically by eldy.lib.php or eldy_menus.php (for example add a folder "menus/leftmenu.php" in the module "bank" => "bank/menus/leftmenu.php")... This greatly cleans up the code and makes the modules easier to maintain while also avoiding the massive use of hooks for external modules.
- A reuse of the left menus in other corners of the ERP just by calling the function of the desired menu.
- The code is much lighter! is more readable with easier display order modification!
2022-03-02 22:41:00 +01:00
kevin
ad5a18996d Replace id by class 2022-03-02 21:00:07 +01:00
kevin
c71bebfd21 Add Init Hooks on several project tabs 2022-03-02 20:48:46 +01:00
Steve
8f07c22d70 Merge branch 'dolibarrdevelop' into WIP_Employee_management_improvement 2022-03-02 14:51:46 +01:00
steve
9900e5dd31 Clean 2022-03-02 14:51:16 +01:00
Laurent Destailleur
a7cb3fa492 Clean log 2022-03-02 14:44:14 +01:00
steve
e2f727ef55 feat: langs trans ref_employee and national registration number 2022-03-02 14:21:49 +01:00
steve
dcabd046d9 feat: add ref_employee and national_registration_number fields 2022-03-02 11:52:44 +01:00
Steve
cb17f2029e wip: add ref_employee and national_registration_number fields 2022-03-02 11:20:07 +01:00
UT from dolibit
d78f76447c Update README.md
http://help.luracast.com/restler/examples/  - don't work anymore
replaced by   https://restler3.luracast.com/examples/index.html
2022-03-02 00:29:07 +01:00
Laurent Destailleur
72965fdb2e # WARNING: head commit changed in the meantime
Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
2022-03-01 19:13:28 +01:00
Laurent Destailleur
7c253c7e28 Clean code 2022-03-01 19:05:00 +01:00
Laurent Destailleur
762de973eb Fix sql injection 2022-03-01 18:43:16 +01:00
Laurent Destailleur
20a3a429ed Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-01 18:22:39 +01:00
Laurent Destailleur
e5fd841fe3 Make verifCond more robust against RCE 2022-03-01 18:21:30 +01:00
Laurent Destailleur
12b2a10865 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-03-01 18:15:13 +01:00
John Livingston
1ece554c92 Fix: typo in template name
There was a typo in generated HTML comment.
2022-03-01 17:39:38 +01:00
Laurent Destailleur
358f21f06e Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/core/class/html.formother.class.php
	htdocs/core/customreports.php
2022-03-01 16:48:29 +01:00
John Livingston
29eec8444e Fix: update status_batch documentation
$product->status_batch has a new possible value that was not documented.
2022-03-01 16:41:07 +01:00
Steve
5bf186c8ce Merge branch 'dolibarrdevelop' into WIP_Employee_management_improvement 2022-03-01 11:42:57 +01:00
steve
1908acb131 feat: add Accountancy code 2022-03-01 11:42:10 +01:00
Anthony Berton
0fd56eb56b Update 15.0.0-16.0.0.sql 2022-03-01 11:09:26 +01:00
Anthony Berton
b9feefad15 Update 14.0.0-15.0.0.sql 2022-03-01 11:08:31 +01:00
Anthony Berton
eb90beaebe Merge branch 'develop' into patch-1 2022-03-01 11:07:11 +01:00
Marc de Lima Lucio
e3aae6d2e1 FIX: object cloning: set unique extrafield values to null to prevent duplicates 2022-03-01 10:50:22 +01:00
Regis Houssin
e5fd11c8e0 FIX missing advanced perms 2022-03-01 09:28:38 +01:00
HENRY Florian
77d8025d86 Merge branch 'develop' into dev_new_project_upgrade_external_user_perms_project 2022-03-01 08:54:43 +01:00
Laurent Destailleur
8c94c2f98c Fix collapse icon 2022-03-01 04:10:50 +01:00
Laurent Destailleur
e4e08c9903 Code simpler to manage collapse of separators. 2022-03-01 04:02:06 +01:00
Laurent Destailleur
54bef2e34f Fix phpcs 2022-03-01 01:57:38 +01:00
Laurent Destailleur
a08bbd6acd Fix regression 2022-03-01 00:11:30 +01:00
Laurent Destailleur
9cc79de31b Clean code 2022-03-01 00:02:23 +01:00
Laurent Destailleur
0d024147bf Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-28 22:36:31 +01:00
Laurent Destailleur
2ed7a4431f Doxygen 2022-02-28 22:13:28 +01:00
Laurent Destailleur
641b1d1ab1 Merge pull request #20059 from aspangaro/16a12_assets_code
NEW Asset module - Code - FPC21
2022-02-28 22:12:12 +01:00
Laurent Destailleur
67881a7932 Merge branch 'develop' into 16a12_assets_code 2022-02-28 22:03:26 +01:00
Laurent Destailleur
a89fd3c818 Merge pull request #20198 from gdsoftdev/develop
NEW : accoutancy : subleger label input automatic filling when selecting subleger account in select2 list
2022-02-28 21:56:01 +01:00
Laurent Destailleur
8e1fd877f2 Update html.formaccounting.class.php 2022-02-28 21:55:30 +01:00
Laurent Destailleur
50602b1fbe Update html.formaccounting.class.php 2022-02-28 21:53:05 +01:00
Laurent Destailleur
6447c1e394 Merge pull request #20076 from vincentjdc/html-field-moreparam-morecss
Allow to add more CSS and more params on html fields
2022-02-28 21:50:40 +01:00
Laurent Destailleur
835b0f5f19 Update doleditor.class.php 2022-02-28 21:45:04 +01:00
Laurent Destailleur
280be9b29f Merge pull request #20163 from SteveATM/FIX_replace_divbutaction_by_dolgetbuttonaction
FIX: Replace User divbutaction by dolgetbuttonaction
2022-02-28 21:25:25 +01:00
Laurent Destailleur
ef39c50882 Merge branch '15.0' into patch-1 2022-02-28 21:09:50 +01:00
Laurent Destailleur
19389ca018 Merge pull request #20200 from ymollard/default-type4tickets
Set default ticket type to OTHER if no default exists
2022-02-28 21:03:59 +01:00
Laurent Destailleur
6a81ae1099 Merge pull request #20220 from hregis/fix_remove_duplicate_code
FIX remove duplicated code
2022-02-28 20:58:24 +01:00
Laurent Destailleur
c2fb5d577c Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/install/mysql/migration/14.0.0-15.0.0.sql
	htdocs/langs/en_US/banks.lang
	htdocs/projet/list.php
2022-02-28 20:12:28 +01:00
Laurent Destailleur
5a24552930 Fix doc 2022-02-28 20:03:21 +01:00
Thomas Negre
b9e0fc7b02 stickler corrections 2022-02-28 19:02:07 +01:00
Thomas Negre
35531b6328 add strings for email notification on ticket closing 2022-02-28 17:10:46 +01:00
Thomas Negre
472666182e Ticket list: add a warning before mass ticket closing to chose if contacts should be notified 2022-02-28 17:10:46 +01:00
Thomas Negre
e4ed4b8307 Ticket card: enhance closing modal to allow chosing contacts to notify 2022-02-28 17:10:45 +01:00
Thomas Negre
dcc41d0ab7 Ticket triggers: allow to automatically send messages on TICKET_CLOSE event 2022-02-28 17:10:45 +01:00
Thomas Negre
5b1b862687 reformat trigger/interface_50_modTicket_TicketEmail.class.php to create methods for email composition and sending 2022-02-28 17:10:45 +01:00
Thomas Negre
e1e643efba Ticket : add option TICKET_NOTIFY_AT_CLOSING to ticket config panel 2022-02-28 17:10:45 +01:00
steve
91ee90ebeb fix: read employee and write employee 2022-02-28 16:48:08 +01:00
Laurent Destailleur
aff7148ed8 Fix missing error management 2022-02-28 16:39:42 +01:00
steve
08fa2dfadd wip: add read employee and write employee 2022-02-28 15:58:23 +01:00
Regis Houssin
e63e53e081 FIX remove duplicated code 2022-02-28 14:10:35 +01:00
Laurent Destailleur
99ddef0530 NEW Add API to get a tempalte invoice 2022-02-28 10:37:03 +01:00
Laurent Destailleur
b598671484 NEW ACE Editor is restored at same cursor position after a save 2022-02-27 14:46:40 +01:00
Frédéric FRANCE
018fc53554 Merge remote-tracking branch 'upstream/develop' into productmerge 2022-02-27 08:40:01 +01:00
Laurent Destailleur
acf6d19500 Fix CSS 2022-02-25 21:45:29 +01:00
Laurent Destailleur
adb4af7099 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-25 19:39:34 +01:00
Laurent Destailleur
409da7f091 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-25 19:17:41 +01:00
GregM
79a0aa816f DolGetButtonAction add $usercancreate 2022-02-25 16:42:25 +01:00
Yoan Mollard
4082de422f Set default ticket type to OTHER if no default exists 2022-02-25 16:27:55 +01:00
stickler-ci
722b1de2b7 Fixing style errors. 2022-02-25 15:10:10 +00:00
Jé GDSOFT
073431543d accoutancy : subleger label input automatic filling when selecting subleger account in select2 list 2022-02-25 16:07:44 +01:00
Anthony Berton
647104cbb6 Update llx_societe.sql 2022-02-25 14:54:21 +01:00
Anthony Berton
24be131600 Update 14.0.0-15.0.0.sql 2022-02-25 14:51:40 +01:00
Laurent Destailleur
a0baea1e6b Merge branch 'develop' into FIX_replace_divbutaction_by_dolgetbuttonaction 2022-02-25 14:20:24 +01:00
Laurent Destailleur
d2a336d0a1 Merge pull request #20152 from aspangaro/16a12
Increase the length of the ref_supplier field
2022-02-25 14:17:20 +01:00
Laurent Destailleur
4f054481d9 Merge branch 'develop' into 16a12 2022-02-25 14:15:08 +01:00
Laurent Destailleur
b46719c26b Merge pull request #20168 from Dolibarr/snyk-fix-52e27fe6b47979b6bc328326a6d93d4c
[Snyk] Security upgrade zapier-platform-core from 11.0.1 to 11.3.1
2022-02-25 13:59:41 +01:00
Laurent Destailleur
7d6cbe0800 Merge pull request #20173 from thomas-Ngr/develop_new_SEPA_PmtTpInf_CdtTrfTxInf
NEW: SEPA XML - option to place payment Type Info at Credit transfer Transaction level
2022-02-25 13:48:32 +01:00
Laurent Destailleur
92daeeb5c9 Merge pull request #20179 from atm-gauthier/NEW/solde_until_date
NEW : solde() function evolution to be able to get solde until a chosen date
2022-02-25 13:35:33 +01:00
Laurent Destailleur
e5805f401a Merge pull request #20185 from SylvainLegrand/new_ficheinter_keep_extrafield_format_from_origin
keep extrafield format from origine
2022-02-25 13:33:12 +01:00
Laurent Destailleur
a92a21b65b Merge pull request #20184 from aspangaro/16a3
NEW Accountancy - Add date from/to on expense report binding & uniformize
2022-02-25 13:29:16 +01:00
Laurent Destailleur
28d91bfcf4 Merge pull request #20187 from SylvainLegrand/Debug_TCPDF_file_name
Debug TCPDF file name with spaces
2022-02-25 13:21:41 +01:00
Laurent Destailleur
09f8c63ed3 Merge pull request #20188 from SylvainLegrand/new_allow_show_logos_in_table
new : allow to show all logos on a table
2022-02-25 13:12:48 +01:00
Laurent Destailleur
e5ad31db0a Merge pull request #20189 from atm-kevin/FIX_Add_Hooks_On_Supplier_Tabs
FIX : Add hooks on several supplier tabs
2022-02-25 13:09:07 +01:00
GregM
22aae26f71 update product card 2022-02-25 10:27:26 +01:00
GregM
6e938c019f Merge branch 'DolGetButtonAction_Product' into DolGetButtonAction_Product_card 2022-02-25 10:17:45 +01:00
GregM
a761afe5ed FIX add dolGetButtonAction on Product 2022-02-25 10:14:39 +01:00
kevin
22fc4317be Add init hooks on several supplier tabs 2022-02-25 09:37:36 +01:00
Sylvain Legrand
e8ef2a8d8c new : allow to show all logos on a table 2022-02-25 09:33:08 +01:00
Sylvain Legrand
30d8174ac5 Debug TCPDF file name with spaces 2022-02-25 09:26:19 +01:00
kevin
aabfdfa212 Format code 2022-02-25 09:20:36 +01:00
kevin
d2cbead203 Add an ID into formproject method to be able to target 2022-02-25 09:17:18 +01:00
Sylvain Legrand
61aa80c865 keep extrafield format from origine 2022-02-25 09:13:16 +01:00
Alexandre SPANGARO
6b4c4f19ab NEW Accountancy - Add date from/to on expense report binding & uniformize 2022-02-25 04:55:55 +01:00
Laurent Destailleur
c097ee5331 FIX #yogosha9089 2022-02-25 01:49:38 +01:00
Laurent Destailleur
8c61a29051 Show value of short_open_tags 2022-02-25 01:30:34 +01:00
Laurent Destailleur
117e1057e1 FIX #yogosha9083 2022-02-24 18:29:24 +01:00
Laurent Destailleur
98da84f9b2 FIX #yogosha9086 2022-02-24 18:15:04 +01:00
Laurent Destailleur
f0c5fe31f8 FIX #yogosha9083 2022-02-24 17:49:52 +01:00
stickler-ci
a0bc41cdba Fixing style errors. 2022-02-24 14:32:59 +00:00
Gauthier PC portable 024
517562b465 NEW : solde() function evolution to be able to get solde until a chosen date 2022-02-24 15:26:11 +01:00
Laurent Destailleur
ba3856f9e9 Fix regression 2022-02-24 14:21:28 +01:00
Laurent Destailleur
a6e7a41e98 FIX Reduce flash effect on collapse extrafield
FIX Reduce flash effect on edit inline feature.
2022-02-24 12:54:33 +01:00
Laurent Destailleur
118b211807 Fix error on null 2022-02-24 12:37:20 +01:00
GregM
c65680dbcf WIP dolGetButtonAction on Product 2022-02-24 11:48:10 +01:00
stickler-ci
fa4e6bd93a Fixing style errors. 2022-02-24 10:10:41 +00:00
Adrien Raze
146b432acf FIX: PR returns 2022-02-24 11:07:31 +01:00
Laurent Destailleur
4973019630 Fix #hunterb812ea22-0c02-46fe-b89f-04519dfb1ebd 2022-02-24 09:59:16 +01:00
Thomas Negre
7c29b2421d only display SEPA XML option at account creation if module payment by bank transfer is enabled 2022-02-24 09:52:41 +01:00
Atm-Gregr
18c81a1355 Merge branch '14.0' of github.com:Dolibarr/dolibarr into 14.0 2022-02-24 09:34:21 +01:00
Thomas Negre
2d74e4fce1 add field pti_in_ctti in bank_account table description. Change column type to smallint. 2022-02-24 09:30:55 +01:00
Laurent Destailleur
43c3869f08 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-24 01:01:43 +01:00
snyk-bot
c9873b04f4 fix: dev/examples/zapier/package.json to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-NODEFETCH-2342118
2022-02-23 21:22:57 +00:00
Laurent Destailleur
2f0040e9c1 Fix phpunit 2022-02-23 19:24:17 +01:00
Thomas Negre
83ed380e6b display XML SEPA config option only if 'payment by bank transfer' module is enabled 2022-02-23 16:36:57 +01:00
Thomas Negre
f2c85786ae add en_US strings 2022-02-23 16:24:32 +01:00
Thomas Negre
af4e1667e0 Payment by bank transfer: create optionnaly place payment type information (PmtTpInf) in credit transfer transaction information (CdtTrfTxInf)
- introduce PAYMENTBYBANKTRANSFER_FORCE_HIGH_PRIORITY const
2022-02-23 16:23:25 +01:00
Thomas Negre
7a13112ad8 bank card interface modification to allow configuration of payment type information in SEPA XML 2022-02-23 16:22:37 +01:00
Thomas Negre
6136de6a4a add 'pti_in_ctti' property for Account object. Update related methods. 2022-02-23 16:22:19 +01:00
Thomas Negre
80d85b4239 db migration: add a column in llx_bank_account to store the expected SEPA format concerning PmtTpInf. 2022-02-23 16:17:18 +01:00
GregM
c1c9682d08 Merge branch 'Fix_dolGetButtonAction' of github.com:atm-GregM/dolibarr into updateButtonsGregM 2022-02-23 16:01:38 +01:00
GregM
cf470c2306 Add auto tooltip 2022-02-23 16:01:07 +01:00
GregM
114827934e Fix merge conflict 2022-02-23 15:51:44 +01:00
Steve
f70e97bafa fix: travis 2022-02-23 15:45:50 +01:00
GregM
5efbe5a429 Merge branch 'develop' of github.com:Dolibarr/dolibarr into updateButtonsGregM 2022-02-23 15:44:04 +01:00
GregM
6a8b20b3c0 Merge branch 'Fix_dolGetButtonAction' of github.com:atm-GregM/dolibarr into updateButtonsGregM 2022-02-23 15:37:36 +01:00
GregM
3edd478a46 Fix empty url : dont add token 2022-02-23 15:36:43 +01:00
GregM
74bfdb0842 fix retour 2022-02-23 15:34:17 +01:00
Steve
bd6c547b4d fix: merge develop 2022-02-23 15:20:45 +01:00
Steve
6feda05aeb Merge branch 'develop' of github.com:Dolibarr/dolibarr into FIX_replace_divbutaction_by_dolgetbuttonaction 2022-02-23 15:19:37 +01:00
Steve
6047e4e90b fix: travis + stickler 2022-02-23 15:06:58 +01:00
Steve
b99557e60c fix: feedback travis 2022-02-23 14:59:39 +01:00
Steve
c7077ef1d7 fix: send mail title 2022-02-23 14:49:12 +01:00
Laurent Destailleur
64ce13e273 Clean setup page 2022-02-23 13:20:14 +01:00
Laurent Destailleur
88f1ae9c13 NEW A module can embed a sql script run at each Dolibarr upgrade 2022-02-23 12:55:15 +01:00
Laurent Destailleur
e119ea0524 css 2022-02-23 12:31:32 +01:00
lmarcouiller
57ed890b73 NEW : dol_uncompress new extensions 2022-02-23 12:28:37 +01:00
Steve
f6985ae546 merge develop 2022-02-23 12:25:44 +01:00
GregM
b954608443 Update card 2022-02-23 12:09:15 +01:00
Steve
9a95fc7a00 wip: pull request feedback 2022-02-23 11:13:31 +01:00
Steve
c26b1e58a2 wip: pull request feedback 2022-02-23 11:09:59 +01:00
Steve
26e23219e6 feat: dolGetButtonAction 2022-02-23 10:34:54 +01:00
GregM
f866f9641e update change on another PR 2022-02-23 10:12:43 +01:00
GregM
5dcb4c85ee fix dolGetButtonAction societe card 2022-02-23 10:03:48 +01:00
GregM
e21a9bdd7d WIP dolGetButtonAction lib 2022-02-23 09:25:43 +01:00
Alexandre SPANGARO
7f29668c62 Increase the length of the ref_supplier field 2022-02-23 06:43:01 +01:00
Laurent Destailleur
e96061dd18 Fix phpunit SecurityTest 2022-02-22 23:46:57 +01:00
Laurent Destailleur
77e2969411 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-22 22:27:32 +01:00
Laurent Destailleur
c7c0c75429 Clean code 2022-02-22 22:27:09 +01:00
Laurent Destailleur
e0c24e5d29 Enhance WAF 2022-02-22 22:19:32 +01:00
Laurent Destailleur
27cc6078ed Clean code 2022-02-22 22:15:29 +01:00
Frédéric FRANCE
b277ab9ee3 Merge remote-tracking branch 'upstream/develop' into productmerge 2022-02-22 21:49:17 +01:00
Laurent Destailleur
209ab708d4 FIX #hunterb812ea22-0c02-46fe-b89f-04519dfb1ebd 2022-02-22 21:24:34 +01:00
Laurent Destailleur
c63e2c2981 Website tables are created only if module enabled. 2022-02-22 19:15:37 +01:00
Laurent Destailleur
8cc0f3bb58 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-02-22 18:47:26 +01:00
Laurent Destailleur
1c0ef23316 FIX #yogosha9048 2022-02-22 18:46:46 +01:00
Laurent Destailleur
8a99bc3b04 Try a more complete sanitization 2022-02-22 18:41:14 +01:00
Steve
3fb0d307b1 wip: clean comments 2022-02-22 17:23:34 +01:00
lmarcouiller
edbf1bb34b update to fix PR 2022-02-22 16:35:10 +01:00
steve
679665fb08 feat: dolGetButtonAction for Modify 2022-02-22 15:39:02 +01:00
GregM
e107423c21 fix : change title if html not set 2022-02-22 12:25:30 +01:00
steve
ad4a3c63da feat: dolGetButtonAction for Delete 2022-02-22 12:19:24 +01:00
GregM
059548105c WIP dolGetButtonAction 2022-02-22 12:14:18 +01:00
GregM
b0473c475a wip dolGetButtonAction 2022-02-22 11:48:35 +01:00
atm-lena
e5ba5b208e Correct Stickler 2022-02-22 11:36:41 +01:00
GregM
69bb3aaad1 WIP dolGetButtonAction 2022-02-22 11:35:55 +01:00
atm-lena
45fe83289f MoChild category 2022-02-22 11:32:33 +01:00
GregM
b05a5d63b2 WIP dolGetButtonAction 2022-02-22 11:28:33 +01:00
GregM
b728ad871c WIP dolGetButtonAction 2022-02-22 10:06:05 +01:00
steve
fefd4a407b feat: dolGetButtonAction for Enable and disable user 2022-02-22 09:43:09 +01:00
Laurent Destailleur
ff0c4ef635 Merge pull request #19952 from thomas-Ngr/develop_new_ticket_display_statut_warning
NEW : optional display warning icons on ticket list
2022-02-22 01:35:33 +01:00
Laurent Destailleur
2c5d88d7a6 Merge pull request #20138 from defrance/patch-178
fix : bad redirection after create
2022-02-22 01:17:22 +01:00
Laurent Destailleur
741fabb983 Merge pull request #20133 from atm-lena/NEW_InventoryExtrafields
New inventory extrafields
2022-02-22 00:58:42 +01:00
Laurent Destailleur
eede3aaf17 Fix #yogosha9033 2022-02-21 22:50:32 +01:00
Laurent Destailleur
82250fae62 Fix #yogosha8963 2022-02-21 21:45:28 +01:00
Laurent Destailleur
28ac6a7b55 NEW on redirect of page in website module, GET parameters are kept. 2022-02-21 19:46:11 +01:00
Laurent Destailleur
9dfdce03aa Work on generic reporting tool. 2022-02-21 19:09:26 +01:00
Laurent Destailleur
97ed94fbda NEW Support html content for multiselect component. 2022-02-21 16:54:07 +01:00
BENKE Charlene
5647a04369 fix : bad redirection after create
we have __ID__ on url redirect, so repplace it with the $id value
2022-02-21 16:50:12 +01:00
BB2A Anthony Berton
d28ba84cb3 Mail sendto default and add filter 2022-02-21 16:15:40 +01:00
BB2A Anthony Berton
2595f1f9ee sens dump 2022-02-21 15:56:09 +01:00
stickler-ci
0eb8eab7f0 Fixing style errors. 2022-02-21 14:51:57 +00:00
lmarcouiller
192e62fa5c Fix : fix bug class and sql regeneration in modulebuilder 2022-02-21 15:41:41 +01:00
Quentin VIAL-GOUTEYRON
76e2ee2dde uncomment line 2022-02-21 15:36:58 +01:00
atm-lena
dd6d0a118a Translation 2022-02-21 15:28:38 +01:00
atm-lena
8bbbc843eb Ajout onglet paramètres "Inventaire extrafields" 2022-02-21 15:20:22 +01:00
atm-lena
2e02b3fcae Ajout table "llx_inventory_extrafields" 2022-02-21 14:58:47 +01:00
steve
c78ec56c8f feat: dolGetButtonAction for sendmail 2022-02-21 14:43:00 +01:00
Quentin VIAL-GOUTEYRON
595a6c2782 new pmp column 2022-02-21 14:25:18 +01:00
Laurent Destailleur
00e6d2786d Do not use dol_hash anymore for the name of cookies. 2022-02-21 12:21:43 +01:00
Thomas Negre
d769d856e7 fix $object->status not being set. Avoid using $object->fk_statut. 2022-02-21 12:09:45 +01:00
Thomas Negre
cdbf0bdf6f add translation strings 2022-02-21 12:09:28 +01:00
Thomas Negre
5d10d6cb78 allow delays configuration from ticket module params 2022-02-21 11:57:59 +01:00
Thomas Negre
ad3f7b531e add constants declarations in the module class 2022-02-21 11:50:28 +01:00
Thomas Negre
ffbe094635 Add strings for ticket warnings 2022-02-21 11:46:30 +01:00
Thomas Negre
bf9ca1caaa new : allow to display a warning on untreated tickets. Introduces options TICKET_DELAY_BEFORE_FIRST_RESPONSE and TICKET_DELAY_SINCE_LAST_RESPONSE 2022-02-21 11:43:32 +01:00
Thomas Negre
e8c48a06c0 Correct typos in ticket.lib 2022-02-21 11:42:09 +01:00
Laurent Destailleur
9e6f782907 Clean code 2022-02-21 11:26:10 +01:00
steve
0e3ec05028 wip: dolGetButtonAction Nomail 2022-02-21 11:12:06 +01:00
atm-lena
ce12442c36 Merge branch 'NEW_OF_Child' of github.com:atm-lena/dolibarr into NEW_OF_Child 2022-02-21 10:22:41 +01:00
atm-lena
e5039a67b0 Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into NEW_OF_Child 2022-02-21 10:22:22 +01:00
stickler-ci
cf2f2c283b Fixing style errors. 2022-02-21 09:17:20 +00:00
atm-lena
27c70466c2 Merge branch 'NEW_OF_Child' of github.com:atm-lena/dolibarr into NEW_OF_Child 2022-02-21 10:14:19 +01:00
atm-lena
f177973efe Don't create Mo Child if it's only a product line on BOM 2022-02-21 10:13:25 +01:00
steve
3a2fcaae6c wip: SendMail dolGetButtonAction 2022-02-21 10:12:28 +01:00
stickler-ci
e02b82e346 Fixing style errors. 2022-02-21 09:09:39 +00:00
atm-lena
0cbf374fa5 Merge branch 'NEW_OF_Child' of github.com:atm-lena/dolibarr into NEW_OF_Child 2022-02-21 10:06:30 +01:00
atm-lena
c4a8bffa48 FIX Travis : global $db 2022-02-21 10:05:18 +01:00
Alexandre SPANGARO
546b3dd4d5 Fix travis 2022-02-20 05:17:06 +01:00
Laurent Destailleur
f0f81cd2cd Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-18 21:53:46 +01:00
Laurent Destailleur
9a3d8022f3 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-18 21:53:38 +01:00
Laurent Destailleur
b5c9899a60 Merge pull request #20103 from dolibit-ut/patch-370
Update README
2022-02-18 20:48:17 +01:00
Laurent Destailleur
86f722c05d Merge pull request #20104 from dolibit-ut/patch-371
Update dolibarr.pl
2022-02-18 20:25:26 +01:00
Laurent Destailleur
6c9f5f3f7d Merge pull request #20105 from dolibit-ut/patch-372
Update README
2022-02-18 20:23:29 +01:00
Laurent Destailleur
38ddfda95c Merge pull request #20114 from dolibit-ut/patch-373
add GitHub
2022-02-18 20:14:59 +01:00
Laurent Destailleur
0517e2e2d3 Fix error 2022-02-18 18:35:21 +01:00
Laurent Destailleur
3b6f7bff66 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-18 16:32:51 +01:00
Quentin VIAL-GOUTEYRON
5c2c06de3b NEW : JS inventory autocalc input 2022-02-18 15:39:56 +01:00
Laurent Destailleur
dee5d8f9e8 Standardize name of button 2022-02-18 13:45:28 +01:00
UT from dolibit
8a0ee772d3 add GitHub
INSERT INTO llx_c_socialnetworks (entity, code, label, url, icon, active) VALUES ( 1, 'github', 'GitHub', 'https://www.github.com/{socialid}', '', 0);
2022-02-18 13:10:38 +01:00
Quentin VIAL-GOUTEYRON
879afaa59e NEW : Beginning of PMP management on inventory 2022-02-18 12:16:50 +01:00
UT from dolibit
9fd34b264f Update README
https://doxygen.dolibarr.org/
2022-02-17 21:05:23 +01:00
Laurent Destailleur
6b8312aab0 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-17 20:51:25 +01:00
UT from dolibit
3ad95d55a5 Update dolibarr.pl
return ( "14.0.5", "13.0.5", "12.0.5", "11.0.5", "10.0.7", "9.0.4", "8.0.6", "7.0.5" );

$ver >= 14.0 ? "dolibarr\\-(12\\.0\\.[0-9\\.]+)\\.tgz" :
$ver >= 13.0 ? "dolibarr\\-(12\\.0\\.[0-9\\.]+)\\.tgz" :
2022-02-17 20:36:07 +01:00
UT from dolibit
4fb651817e Update README
http://pad.asp-software.org/padgen.php
2022-02-17 20:27:19 +01:00
Laurent Destailleur
21ebedc755 Fix trans 2022-02-17 20:10:09 +01:00
Laurent Destailleur
9c6858379f Merge pull request #20034 from atm-quentin/NEW_Needs_net_tab_on_bom
New needs net tab on bom
2022-02-17 20:06:51 +01:00
Laurent Destailleur
6e5c7358de Merge branch 'develop' into NEW_Needs_net_tab_on_bom 2022-02-17 20:06:38 +01:00
Laurent Destailleur
ec71eb410e Merge pull request #20040 from thomas-Ngr/develop_ticket_config_auto_read
ticket config: auto read ticket
2022-02-17 19:58:01 +01:00
Laurent Destailleur
39bb854ef8 Update ticket.php 2022-02-17 19:57:45 +01:00
Laurent Destailleur
a71bdc4024 Merge pull request #20053 from ptibogxiv/patch-5
NEW API REST filter states by country
2022-02-17 19:53:00 +01:00
Laurent Destailleur
98375d634c Merge pull request #20055 from Ahuahuachi/fix-20042
Update Mexican legal entities
2022-02-17 19:50:47 +01:00
Laurent Destailleur
b393a1277f Update 14.0.0-15.0.0.sql 2022-02-17 19:50:21 +01:00
Laurent Destailleur
69730838f4 Merge pull request #20061 from Hystepik/develop#2
Close #19930 : tag management in KM list
2022-02-17 19:32:59 +01:00
Laurent Destailleur
c20d824999 Tables of module ticket are create only when module is enabled. 2022-02-17 19:30:18 +01:00
Laurent Destailleur
68beafe599 Removed useless indexes 2022-02-17 19:24:44 +01:00
Laurent Destailleur
33fc41b733 Merge pull request #20062 from atm-adrien/FIX_modify_invoices_rec_table
FIX : There's no field "ref" in llx_facture_fourn_rec table
2022-02-17 19:23:19 +01:00
Laurent Destailleur
3dc2a89d03 Merge pull request #20099 from henrynopo/patch-1
Supplier Order - to disable the default pdf generation of
2022-02-17 19:20:16 +01:00
Laurent Destailleur
cbf15af853 Merge pull request #20095 from Hystepik/develop#3
Fix : fix php 8.0 warnings
2022-02-17 19:12:39 +01:00
Laurent Destailleur
85327f28b0 Update login.tpl.php 2022-02-17 19:12:24 +01:00
Laurent Destailleur
e8b011cf2c Merge pull request #20096 from atm-adrien/FIX_total_cost_for_sub_bom
FIX : Costs for BOM
2022-02-17 19:11:17 +01:00
Laurent Destailleur
3697cb9ca4 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/reception/class/reception.class.php
2022-02-17 11:34:54 +01:00
Henry
bb08341dc3 to disable the default pdf generation 2022-02-17 18:34:23 +08:00
Laurent Destailleur
67cb268324 Update example conf file with force_install_lockinstall 2022-02-17 11:33:34 +01:00
stickler-ci
7e6a5d5792 Fixing style errors. 2022-02-17 10:13:30 +00:00
atm-lena
c2bc3b20bb Don't display collapse if no bom on bomline 2022-02-17 11:05:03 +01:00
stickler-ci
13cfe858f2 Fixing style errors. 2022-02-17 09:53:02 +00:00
Adrien Raze
f16567a44a Merge branch 'develop' of github.com:Dolibarr/dolibarr into FIX_total_cost_for_sub_bom 2022-02-17 10:45:19 +01:00
lmarcouiller
aea9c2e427 Fix : fix php 8.0 warnings 2022-02-17 10:22:58 +01:00
Alexandre SPANGARO
96fcd7cae2 Fix travis 2022-02-17 05:41:37 +01:00
Alexandre SPANGARO
33af0eb0fb Fix travis 2022-02-17 05:21:48 +01:00
Alexandre SPANGARO
0f51fadf38 Merge branch 'develop' into 16a12_assets_code 2022-02-17 04:15:03 +01:00
Alexandre SPANGARO
ccbbc98f7a Fix travis 2022-02-17 04:13:02 +01:00
Laurent Destailleur
131ae92cc6 FIX #20063 2022-02-16 21:05:23 +01:00
Laurent Destailleur
dfcc49d466 Doc 2022-02-16 20:50:27 +01:00
Laurent Destailleur
67168ffb16 Merge pull request #20065 from Easya-Solutions/new-reception-all-products
NEW automatically set totally received status in reception
2022-02-16 20:48:50 +01:00
Laurent Destailleur
ea4eed31f5 Merge pull request #20066 from javieralapps4up/develop
FIX Andorra needs Code Banque
2022-02-16 20:38:26 +01:00
Laurent Destailleur
a7fab01059 Merge pull request #20069 from vincentjdc/expensse-report-download-fix
Fixes expensereport downloads
2022-02-16 20:37:32 +01:00
Laurent Destailleur
cebada1966 Merge pull request #20071 from frederic34/patch-1
NEW Hook getNomUrl available everywhere in tooltip of ref links
2022-02-16 20:36:02 +01:00
Laurent Destailleur
aad292b41b Merge pull request #20074 from altairisfr/fix_parentline_13.0
More generic management of parentline
2022-02-16 20:25:04 +01:00
Laurent Destailleur
ab2d3460d7 Merge pull request #20080 from Easya-Solutions/new-total-mark-rate-in-list
NEW total mark rate in list
2022-02-16 20:22:15 +01:00
Laurent Destailleur
36c04a7b82 Merge pull request #20088 from Hystepik/develop#3
Fix : fix warnings php 8.0 on modulebuilder
2022-02-16 20:16:27 +01:00
Alexandre SPANGARO
453449324e Fix travis 2022-02-16 18:09:32 +01:00
lmarcouiller
a9496220b5 Fix : warnings php 8.0 2022-02-16 16:43:52 +01:00
BB2A Anthony Berton
fd478ba3fa add param for md theme 2022-02-16 15:13:50 +01:00
Laurent Destailleur
4a343247b0 Return a 404 http code when CSRF protection fails 2022-02-16 14:34:32 +01:00
Alexandre SPANGARO
9a0a222b63 Fix stickler-ci 2022-02-16 14:21:45 +01:00
Laurent Destailleur
69266ae61f Fix text 2022-02-16 14:14:30 +01:00
Laurent Destailleur
60ada5fe72 Can filter on status purchase on list of products 2022-02-16 14:06:16 +01:00
lvessiller
7e17167faf NEW total mark rate in list 2022-02-16 11:45:29 +01:00
Vincent Dieltiens
392f468a13 allow to add more CSS and more params on html fields 2022-02-16 10:01:55 +01:00
Alexandre SPANGARO
948f20c2b6 Add a graphical option to define duration per year for depreciation 2022-02-16 05:18:29 +01:00
Alexandre SPANGARO
11d1d9a0af Fix stickler-ci 2022-02-16 05:17:38 +01:00
Laurent Destailleur
453871bf38 css 2022-02-15 23:01:14 +01:00
Frédéric FRANCE
eb77f10d7b Merge remote-tracking branch 'upstream/develop' into productmerge 2022-02-15 19:11:24 +01:00
Frédéric FRANCE
935482ee22 uniformize 2022-02-15 19:04:18 +01:00
Frédéric FRANCE
dad73b755e fix merge 2022-02-15 18:46:41 +01:00
Frédéric FRANCE
a613553f37 Merge branch 'hookgetnomurl' into patch-1 2022-02-15 18:44:06 +01:00
Frédéric FRANCE
c8640f329e add missing global 2022-02-15 18:31:05 +01:00
Frédéric FRANCE
0ba912b1e5 add missing global 2022-02-15 18:14:44 +01:00
Frédéric FRANCE
d546e11fba Update chargesociales.class.php 2022-02-15 17:13:08 +01:00
Frédéric FRANCE
ef04ce1e05 Update fichinterrec.class.php 2022-02-15 17:10:32 +01:00
Frédéric FRANCE
9dc2cc82cb Update supplier_proposal.class.php 2022-02-15 17:07:43 +01:00
Frédéric FRANCE
7341e7ed07 Update don.class.php 2022-02-15 17:06:04 +01:00
Laurent Destailleur
50853205bb Support placeholder on multiselect components 2022-02-15 16:43:47 +01:00
atm-lena
c519497608 Merge branch 'NEW_OF_Child' of github.com:atm-lena/dolibarr into NEW_OF_Child 2022-02-15 16:24:56 +01:00
atm-lena
398927f2c8 Clean Code 2022-02-15 16:24:39 +01:00
stickler-ci
7c68c5ad66 Fixing style errors. 2022-02-15 15:11:28 +00:00
atm-lena
382aaf8538 Merge branch 'NEW_OF_Child' of github.com:atm-lena/dolibarr into NEW_OF_Child 2022-02-15 16:08:32 +01:00
atm-lena
498d56319d Clean Code 2022-02-15 16:08:18 +01:00
stickler-ci
bbd0925c9e Fixing style errors. 2022-02-15 14:41:54 +00:00
atm-lena
452ec0bdfb WIP : search MOParent in MO List 2022-02-15 15:38:24 +01:00
atm-lena
c40b7afca2 Merge branch 'NEW_OF_Child' of github.com:atm-lena/dolibarr into NEW_OF_Child 2022-02-15 15:04:02 +01:00
atm-lena
9e5d5a6295 WIP : fix fetch mo parent to create mo child 2022-02-15 15:03:21 +01:00
stickler-ci
26eb0fbf82 Fixing style errors. 2022-02-15 13:52:45 +00:00
atm-lena
81e75f401e Merge branch 'NEW_OF_Child' of github.com:atm-lena/dolibarr into NEW_OF_Child 2022-02-15 14:49:34 +01:00
atm-lena
2ba0af0d0b Parent MO List Mo : wip 2022-02-15 14:49:16 +01:00
stickler-ci
915a135c64 Fixing style errors. 2022-02-15 11:46:50 +00:00
atm-lena
1931ad3bab Merge branch 'NEW_OF_Child' of github.com:atm-lena/dolibarr into NEW_OF_Child 2022-02-15 12:43:42 +01:00
Christophe Battarel
ebada46a07 fix context for createfromclone 2022-02-15 12:14:48 +01:00
atm-lena
0f4b1e1d7a WIP 2022-02-15 11:46:30 +01:00
Frédéric FRANCE
502aa1b14b Update paiement.class.php 2022-02-15 11:21:40 +01:00
Frédéric FRANCE
0feb6e8275 Update fournisseur.facture.class.php 2022-02-15 11:18:14 +01:00
Frédéric FRANCE
c474ee216f Update expedition.class.php 2022-02-15 11:15:34 +01:00
Frédéric FRANCE
710e970389 Update facture-rec.class.php 2022-02-15 11:13:22 +01:00
Frédéric FRANCE
ed4622790e Update asset.class.php 2022-02-15 11:10:02 +01:00
Frédéric FRANCE
85d158d302 Update adherent.class.php 2022-02-15 11:09:07 +01:00
Frédéric FRANCE
71d2d6194f Update categorie.class.php 2022-02-15 11:06:49 +01:00
Frédéric FRANCE
a6a1e3886a Update propal.class.php 2022-02-15 11:03:50 +01:00
Laurent Destailleur
1b53ed09f9 Work on custom report feature 2022-02-15 11:03:48 +01:00
Frédéric FRANCE
09c9b28b57 Update commande.class.php 2022-02-15 11:02:22 +01:00
Frédéric FRANCE
11fc0da398 Update fournisseur.commande.class.php 2022-02-15 11:00:05 +01:00
Frédéric FRANCE
b2815c4973 add hook in propal tooltip 2022-02-15 10:53:33 +01:00
Frédéric FRANCE
c90f9b5681 add hook in order tooltip 2022-02-15 10:51:06 +01:00
lmarcouiller
885d188be3 use of require_once 2022-02-15 10:41:55 +01:00
Christophe Battarel
288c58e533 fix parent line on propal 2022-02-15 10:41:21 +01:00
Christophe Battarel
01ef9b64ee fix parent line on create with no originid 2022-02-15 10:34:10 +01:00
Adrien Raze
34d2e0b8b4 FIX : Fixed sub bom costs problems 2022-02-15 10:29:42 +01:00
Christophe Battarel
6c6c854eae fix parent line on create with origin 2022-02-15 10:23:43 +01:00
Vincent Dieltiens
af0000d568 Fixes expensereport downloads 2022-02-15 10:13:28 +01:00
lvessiller
533bf15b86 NEW add triiger and event on totally received status 2022-02-15 09:54:40 +01:00
iouston
4808442bc8 keep the default value for target in getnomurl to '' 2022-02-15 09:34:51 +01:00
iouston
1bc80df643 keep the default value for target in getnomurl to '' 2022-02-15 09:32:27 +01:00
javieralapps4up
81c2631b00 FIX Andorra needs Code Banque 2022-02-14 20:06:42 +01:00
lvessiller
384e1d515b NEW automatically set totally received status in reception 2022-02-14 18:07:18 +01:00
Alexandre SPANGARO
1d974f67f0 Fix stickler-ci 2022-02-14 16:17:19 +01:00
Adrien Raze
3305965c85 FIX : Error with selectForForms function 2022-02-14 15:04:12 +01:00
Adrien Raze
562c3cf958 FIX : There's no field "ref" in llx_facture_fourn_rec table 2022-02-14 14:15:38 +01:00
Laurent Destailleur
f2d5e43381 Fix showempty for select_salesrepresentatives 2022-02-14 12:25:48 +01:00
lmarcouiller
a3c1c707a4 Close #19930 : tag management in KM list 2022-02-14 12:09:57 +01:00
Alexandre SPANGARO
4985b98bd5 Fix tms 2022-02-14 12:02:50 +01:00
Alexandre SPANGARO
0d1ee4e19f Fix stickler-ci 2022-02-14 11:51:05 +01:00
Alexandre SPANGARO
b7b3a25aba Fix tms 2022-02-14 11:23:03 +01:00
Alexandre SPANGARO
a17ac09fd0 Resolve stickler-ci 2022-02-14 11:03:44 +01:00
Alexandre SPANGARO
b7d26c2e5c Merge branch '16a12_assets_code' of https://github.com/aspangaro/dolibarr into 16a12_assets_code 2022-02-14 05:34:06 +01:00
Alexandre SPANGARO
99aa8dc2b1 Lang 2022-02-14 05:33:57 +01:00
stickler-ci
2d9e303abf Fixing style errors. 2022-02-14 04:18:50 +00:00
Alexandre SPANGARO
bb96856206 Lang 2022-02-14 05:16:08 +01:00
Alexandre SPANGARO
3e3421efb4 Merge branch '16a12_assets_code' of https://github.com/aspangaro/dolibarr into 16a12_assets_code 2022-02-14 05:15:39 +01:00
Alexandre SPANGARO
d869adb370 Asser 2022-02-14 05:15:28 +01:00
stickler-ci
526157dfcb Fixing style errors. 2022-02-14 03:56:45 +00:00
Alexandre SPANGARO
1cc8428f53 Merge branch '16a12_assets_code' of https://github.com/aspangaro/dolibarr into 16a12_assets_code 2022-02-14 04:52:54 +01:00
Alexandre SPANGARO
6734a3575e Core 2022-02-14 04:52:39 +01:00
stickler-ci
dd5be840aa Fixing style errors. 2022-02-14 03:31:30 +00:00
Alexandre SPANGARO
d5e521c87b Accountancy 2022-02-14 04:27:52 +01:00
Alexandre SPANGARO
6593449806 Dictionary 2022-02-14 04:20:42 +01:00
Alexandre SPANGARO
636a01725e Remove integer(1) 2022-02-14 04:11:11 +01:00
Alexandre SPANGARO
5152a060cc NEW Asset module - New structure 2022-02-14 04:06:25 +01:00
Laurent Destailleur
27b94ceea1 Debug v15 2022-02-13 19:26:16 +01:00
Laurent Destailleur
a1f88c1186 Fix reponsive 2022-02-13 18:03:29 +01:00
Alexandre SPANGARO
5a86f99890 FIX Disable customer type by default if type prospect/customer is disabled 2022-02-13 17:53:22 +01:00
Laurent Destailleur
a52f1d1094 Reponsive 2022-02-13 17:33:45 +01:00
Alexandre SPANGARO
a15353fa33 FIX Disable customer type by default if type prospect/customer is disabled 2022-02-13 13:42:40 +01:00
ptibogxiv
061dd565cc Update api_setup.class.php 2022-02-13 13:22:01 +01:00
ptibogxiv
f2b88c6d7c Update api_setup.class.php 2022-02-13 10:09:39 +01:00
ptibogxiv
54af0cf47a NEW API REST filter states by country 2022-02-12 19:02:00 +01:00
Laurent Destailleur
56f5b471bc Fix menu "New" when using paranoiac MAIN_SECURITY_CSRF_WITH_TOKEN = 3 2022-02-11 15:30:45 +01:00
Alfredo Altamirano
88a33c730a FIX #20042 Update Mexican legal entities 2022-02-11 02:01:25 -06:00
Laurent Destailleur
9ba998e3ba Fix some regressions 2022-02-10 19:36:33 +01:00
Laurent Destailleur
52bacbd914 Tables for emailing and asset modules are loaded on module activation 2022-02-10 19:21:15 +01:00
Laurent Destailleur
3bc064ac55 Add status on tasks 2022-02-10 19:08:35 +01:00
Laurent Destailleur
4da2056021 Doc 2022-02-10 19:05:05 +01:00
Thomas Negre
4c5ddcf030 ticket config: add constant TICKET_AUTO_READ_WHEN_CREATED_FROM_BACKEND to admin panel 2022-02-10 17:57:28 +01:00
Thomas Negre
c5d1310373 handle workflow constants in appropriate category 2022-02-10 17:51:32 +01:00
Thomas Negre
39bd5dd6dc ticket config : add TICKET_AUTO_READ_WHEN_CREATED_FROM_BACKEND option to config panel 2022-02-10 17:50:59 +01:00
Laurent Destailleur
2c6b6ce4d1 Fix sql syntax error 2022-02-10 16:35:50 +01:00
Laurent Destailleur
16e4e736fd Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-10 16:28:29 +01:00
Laurent Destailleur
9e17fe8f4e Fix bad cancelation 2022-02-10 15:16:59 +01:00
Quentin VIAL-GOUTEYRON
cd955930b6 change bt link 2022-02-10 15:00:55 +01:00
Laurent Destailleur
e0377d788c Send position x,y of cursor into an ACE editors on POST form 2022-02-10 14:34:04 +01:00
Laurent Destailleur
b69beb98b8 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-10 13:30:22 +01:00
Laurent Destailleur
024f12aa9b Fix php5.6 2022-02-10 13:18:21 +01:00
Laurent Destailleur
c4c15fc105 Fix warnings 2022-02-10 13:16:51 +01:00
Laurent Destailleur
d2af490b33 Fix missing key on a new table 2022-02-10 13:12:00 +01:00
Laurent Destailleur
21f0264683 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-10 13:02:48 +01:00
Laurent Destailleur
954938cd75 Fix buttons 2022-02-10 12:33:28 +01:00
Laurent Destailleur
f787512592 Fix buttons 2022-02-10 12:30:29 +01:00
Laurent Destailleur
d69f9eca40 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/core/lib/pdf.lib.php
2022-02-10 11:25:15 +01:00
Laurent Destailleur
a40f76c1d8 Merge 2022-02-10 11:15:59 +01:00
Laurent Destailleur
40f0aa45c8 Merge 2022-02-10 11:15:45 +01:00
Laurent Destailleur
9412bcdba0 Merge pull request #20009 from OPEN-DSI/new_variants_remake_sql2
NEW: Update variants to standard card and list (SQL)
2022-02-10 11:03:32 +01:00
Quentin VIAL-GOUTEYRON
dd0202de47 fix comment doc 2022-02-10 10:46:04 +01:00
stickler-ci
7cf9448609 Fixing style errors. 2022-02-10 09:22:53 +00:00
Laurent Destailleur
f4913745d0 Merge pull request #20017 from Easya-Solutions/new-product-list-thumbnail
NEW thumbnail field in product list
2022-02-10 10:14:55 +01:00
Laurent Destailleur
5bcf2153ac Merge pull request #20016 from FHenry/14_fix_sql_extrafields
fix: in some case index do not exists and return an error
2022-02-10 10:14:06 +01:00
Laurent Destailleur
11bef4e681 Merge branch 'develop' into 14_fix_sql_extrafields 2022-02-10 10:13:24 +01:00
Laurent Destailleur
e210952f74 Update extrafields.class.php 2022-02-10 10:11:46 +01:00
Laurent Destailleur
77f1649adf Merge pull request #20012 from atm-adrien/NEW_rec_invoices_15.0_newPR
NEW Recurring vendor invoices
2022-02-10 10:09:47 +01:00
Quentin VIAL-GOUTEYRON
2260276bed add tooltip 2022-02-10 10:09:36 +01:00
Laurent Destailleur
6ff39da34d Update 15.0.0-16.0.0.sql 2022-02-10 10:09:05 +01:00
Laurent Destailleur
9a371cb076 Trans 2022-02-10 09:56:01 +01:00
Laurent Destailleur
00ce52f753 Merge pull request #20031 from Easya-Solutions/new-takepos-rule-barcode
NEW barcode rule to insert product in takepos
2022-02-10 09:34:53 +01:00
Regis Houssin
cc8af7b1d0 FIX not active value are not hidden (missing filter of field) (#20032)
* FIX not active value are not hidden (missing filter of field)

* FIX wrong category table and wrong object id
2022-02-10 09:19:14 +01:00
Laurent Destailleur
eda401dea0 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-09 21:14:06 +01:00
Laurent Destailleur
59f749a65f Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-09 18:11:09 +01:00
lvessiller
0d68846b3a FIX add filter on categories 2022-02-09 17:44:48 +01:00
Laurent Destailleur
ce1a08baf6 Fix phpcs 2022-02-09 16:59:40 +01:00
Laurent Destailleur
7e9a50a113 Fix phpcs 2022-02-09 16:58:13 +01:00
lvessiller
25497018c7 FIX group by qty in update line 2022-02-09 16:49:40 +01:00
lvessiller
44e9b13f30 NEW barcode rule to insert product in takepos 2022-02-09 16:37:41 +01:00
Quentin VIAL-GOUTEYRON
9e667e0155 NEW Needed nets bom 2022-02-09 15:55:21 +01:00
Laurent Destailleur
558db1b935 Fix #yogosha8845 2022-02-09 15:29:21 +01:00
Laurent Destailleur
47800aebfa Fix phpunit and mode save after opening a ref 2022-02-09 15:21:25 +01:00
Laurent Destailleur
6e6c57d0e5 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-09 13:22:53 +01:00
Laurent Destailleur
7c78934d08 FIX rtl languages 2022-02-09 13:22:38 +01:00
Laurent Destailleur
3653e8244b NEW Implement the generic method for Kaban views 2022-02-09 13:22:23 +01:00
Adrien Raze
194959c61c FIX : Fixing PR returns 2022-02-09 10:03:30 +01:00
stickler-ci
b80e9a9bdc Fixing style errors. 2022-02-08 15:37:23 +00:00
atm-lena
27cbd16bb9 Clean code 2022-02-08 16:01:18 +01:00
atm-lena
8db75f0d04 WIP 2022-02-08 15:54:31 +01:00
lvessiller
2e71c21208 NEW thumbnail field in product list 2022-02-08 10:12:37 +01:00
Florian HENRY
316cb9e4e3 Merge branch '14.0' of github.com:Dolibarr/dolibarr into 14_fix_sql_extrafields 2022-02-08 08:46:21 +01:00
Florian HENRY
3f2c04a53c fix sql error return 2022-02-08 08:46:15 +01:00
Laurent Destailleur
bfa9986736 Merge pull request #20013 from thomas-Ngr/develop_db_ticket_last_message_date
New : ticket add last_msg_sent field
2022-02-07 20:54:26 +01:00
Thomas Negre
b6b5eb633b only update last_msg_date if a message is really sent. 2022-02-07 17:38:32 +01:00
atm-lena
6a94a6ebac Ajout case à cocher "Générer OF Enfant" 2022-02-07 17:00:49 +01:00
Florian HENRY
e672b6f6e0 fix: in some case index do not exists and return an error 2022-02-07 16:41:45 +01:00
atm-lena
f921c10e3a Gestion js : déroulement des sous bom 2022-02-07 16:28:58 +01:00
atm-lena
5c862435a8 Ajout ligne BOM enfant dans mo_card action "create" 2022-02-07 16:06:25 +01:00
Laurent Destailleur
3b18462a62 # WARNING: head commit changed in the meantime
Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
2022-02-07 15:51:01 +01:00
Thomas Negre
26648e4f12 ticket : update date_last_msg_sent on message sending from backend or public interface 2022-02-07 15:19:13 +01:00
Thomas Negre
b21fdbb21e add a field date_last_msg_sent in ticket.sql install file
modify migration script
2022-02-07 15:19:13 +01:00
Adrien Raze
5bee821726 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_rec_invoices_15.0_newPR 2022-02-07 14:37:10 +01:00
Adrien Raze
ee52cac3ba NEW : Template supplier invoices 2022-02-07 14:34:27 +01:00
kamel
75653395fd NEW: Update variants to standard card and list (SQL) 2022-02-07 10:12:41 +01:00
Laurent Destailleur
19fdf3dc18 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-07 10:07:30 +01:00
Laurent Destailleur
9b1f04209d NEW Change in theme colors does not need to use the refresh button 2022-02-06 22:11:44 +01:00
Laurent Destailleur
3fa3cd28cd clean code 2022-02-06 15:21:49 +01:00
Laurent Destailleur
3e6d922cc0 Merge pull request #19938 from bb2a/border-table-2
NEW - Border table
2022-02-06 14:59:31 +01:00
Laurent Destailleur
6562b24e41 NEW Some core tables are created only at module activation 2022-02-06 13:31:44 +01:00
Laurent Destailleur
2991f992dc Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-06 13:28:30 +01:00
Laurent Destailleur
e022b00d1e Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-06 13:24:02 +01:00
Laurent Destailleur
c63ebfde29 Tables are loaded on module activation 2022-02-06 13:16:32 +01:00
Laurent Destailleur
f2120a6463 Merge pull request #19994 from defrance/patch-177
fix : duration in hour and min (not in second)
2022-02-06 12:35:59 +01:00
Laurent Destailleur
d1f3411bac Update list_print_total.tpl.php 2022-02-06 12:35:33 +01:00
Laurent Destailleur
9c0fc59166 Fix #yogosha8791 2022-02-05 19:42:43 +01:00
habot-it
97850a6fbf Add options in function pdf_pagefoot of pdf.lib.php 2022-02-05 12:22:18 +00:00
BENKE Charlene
9977761846 print the good format of totalisation 2022-02-05 12:12:37 +01:00
BENKE Charlene
1c87c6fd5d Update list.php
first introduce à type of totalisation
2022-02-05 12:10:57 +01:00
Laurent Destailleur
faa226d875 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-04 20:34:26 +01:00
Laurent Destailleur
c53bac831d Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-04 20:33:32 +01:00
Laurent Destailleur
86da9c610e Merge pull request #17887 from marc-dll/develop_NEW_block_leave_if_negative_balance
NEW: leave requests: add field into type dictionary to block request if balance is negative
2022-02-04 20:23:04 +01:00
Laurent Destailleur
20ddd04d14 Make around 15 tables not created by default but at first module init. 2022-02-04 20:06:09 +01:00
Laurent Destailleur
c9a685e09d Better error message 2022-02-04 19:21:47 +01:00
Laurent Destailleur
1e94ffa4d2 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-04 19:07:26 +01:00
BB2A Anthony Berton
dd181edde9 Lang 2022-02-04 17:37:24 +01:00
BB2A Anthony Berton
0e1e65e180 only one option 2022-02-04 17:29:13 +01:00
BENKE Charlene
8d74b51009 fix : duration in hour and min (not in second)
use convertSecondToTime for totalise duration
2022-02-04 15:52:37 +01:00
Laurent Destailleur
7cc06a0ef9 # WARNING: head commit changed in the meantime
Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-02-04 15:40:28 +01:00
BB2A Anthony Berton
b4fffc6a23 Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into add_option_pdf_global_thirdparty_alias 2022-02-04 15:38:46 +01:00
Laurent Destailleur
3884c7b25f Merge pull request #19894 from defrance/patch-176
FIX if we have PRODUCT_USE_UNITS, task fail
2022-02-04 15:32:24 +01:00
iouston
993e0d852c fix parameter name 2022-02-04 15:01:32 +01:00
stickler-ci
7e6279e942 Fixing style errors. 2022-02-04 13:48:25 +00:00
iouston
0cc8e6873f add attribute target on getNomurl() 2022-02-04 14:44:47 +01:00
stickler-ci
e8801bd7fc Fixing style errors. 2022-02-04 13:42:07 +00:00
iouston
95aabd6ae3 add target attribute on getNomUrl 2022-02-04 14:38:34 +01:00
Laurent Destailleur
85e198283b Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-04 13:18:26 +01:00
Laurent Destailleur
66430f6087 FIX #19939 2022-02-04 13:18:07 +01:00
Laurent Destailleur
a81b437d04 Merge pull request #19971 from atm-quentin/NEW_exclude_natural_search
NEW Can use ! to make a search that exclude a string
2022-02-04 12:51:26 +01:00
Laurent Destailleur
eb644bf6bb Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-04 12:18:05 +01:00
Laurent Destailleur
aef646bb2a Change order of options and removed useless option 2022-02-04 12:17:38 +01:00
Laurent Destailleur
bfea5cd69d Merge pull request #19966 from habot-it/develop
Fix "Warning: This option make TCPDF library being crazy sometime and…
2022-02-04 12:14:26 +01:00
Laurent Destailleur
6894cb3925 Update pdf.lib.php 2022-02-04 12:14:11 +01:00
Laurent Destailleur
91b4cd43bb Merge pull request #19946 from smil2k/feature/19944-develop
NEW add datem and type parameters to API to create movements
2022-02-04 11:11:46 +01:00
Laurent Destailleur
5294a9ae2f Merge pull request #19949 from hregis/fix_works_to_add_prefix_db_function
Works on replace MAIN_DB_PREFIX by $db->prefix()
2022-02-04 11:09:51 +01:00
Laurent Destailleur
58b6512c15 Merge pull request #19963 from mschamp/develop
NEW #19294 implement detailed timespent in task of project API
2022-02-04 11:07:12 +01:00
Laurent Destailleur
ef054bcef2 Merge pull request #19972 from habot-it/feat/add-parent-company
NEW Can set the parent company during the creation of thirdparty (action=add of societe/card.php)
2022-02-04 10:47:35 +01:00
Laurent Destailleur
035081afbb Merge pull request #19977 from atm-lena/NEW_OF_Child_Data
Add column "fk_parent_line" to llx_mrp_mo
2022-02-04 10:34:52 +01:00
Anthony Berton
a85f27248e Update pdf.php 2022-02-04 09:28:01 +01:00
Laurent Destailleur
12f1aeb9df Merge pull request #19982 from Easya-Solutions/new-margin-proposal-order-list
NEW add margin info in proposal and order list
2022-02-04 09:16:45 +01:00
Laurent Destailleur
a5bdd62268 Merge pull request #19981 from aspangaro/14p30
FIX Accountancy - Wrong name rule on FEC import
2022-02-04 09:12:11 +01:00
Laurent Destailleur
665737285e Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-03 19:25:42 +01:00
lvessiller
241a65e2ae NEW add margin info in proposal and order list 2022-02-03 10:39:03 +01:00
Alexandre SPANGARO
6d350f9a75 FIX Accountancy - Wrong name rule on import 2022-02-03 05:53:05 +01:00
mschamp
298304e9f8 Merge branch 'Dolibarr:develop' into develop 2022-02-02 20:42:09 +01:00
Laurent Destailleur
3db0a98594 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-02 18:26:15 +01:00
Laurent Destailleur
ba77700619 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-02 17:58:09 +01:00
atm-lena
d6ff551702 Add column "fk_parent_line" to llx_mrp_mo 2022-02-02 15:15:22 +01:00
Laurent Destailleur
b55830d205 Fix missing information propagated to trigger 2022-02-02 14:03:09 +01:00
Quentin VIAL-GOUTEYRON
f36a513a10 fix sticler 2022-02-01 16:18:02 +01:00
Laurent Destailleur
35ac8923dd Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-01 16:14:12 +01:00
Laurent Destailleur
89a06014da Fix warnings 2022-02-01 15:55:04 +01:00
habot-it
e0ba321365 Add parent company in action==add of societe card.php 2022-02-01 13:54:25 +00:00
Laurent Destailleur
44bc197d03 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-02-01 13:25:45 +01:00
Quentin VIAL-GOUTEYRON
e17d3b029e FIX delete criteria 2022-02-01 12:24:04 +01:00
Quentin VIAL-GOUTEYRON
e086d5a5f2 NEW Exclude filter 2022-02-01 12:21:06 +01:00
Laurent Destailleur
3b8ece6c0b Fix php8 2022-01-31 21:46:35 +01:00
mschamp
c83138ec70 Merge branch 'Dolibarr:develop' into develop 2022-01-31 19:55:03 +01:00
Laurent Destailleur
902246e50b Fix phpcs 2022-01-31 14:05:30 +01:00
Laurent Destailleur
b63db22947 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-30 20:26:10 +01:00
Laurent Destailleur
91be7b279e Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-30 17:28:23 +01:00
Laurent Destailleur
a9737a91e7 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-30 16:31:42 +01:00
habot-it
93ae62431c Fix "Warning: This option make TCPDF library being crazy sometime and content on image disappeared!" 2022-01-30 13:09:42 +00:00
Regis Houssin
b2384b624a FIX regression 2022-01-30 11:40:12 +01:00
Regis Houssin
5f376685c3 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into fix_works_to_add_prefix_db_function 2022-01-30 11:28:29 +01:00
Laurent Destailleur
7f13561158 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-30 02:06:08 +01:00
Laurent Destailleur
5942bc57e6 Add DDOS protection 2022-01-30 01:03:07 +01:00
Laurent Destailleur
a182cee8b0 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-29 16:49:09 +01:00
Laurent Destailleur
2fea78c90a Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/install/mysql/data/llx_c_action_trigger.sql
2022-01-29 16:48:40 +01:00
Laurent Destailleur
16aa562a13 Debug v15 2022-01-29 16:42:15 +01:00
Laurent Destailleur
728df13238 Optimize files loaded on login and passwordforgotten page 2022-01-29 16:22:55 +01:00
Laurent Destailleur
37fb02ee76 Fix #huntr76f3b405-9f5d-44b1-8434-b52b56ee395f 2022-01-29 15:50:59 +01:00
Laurent Destailleur
26700f8826 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-29 00:07:18 +01:00
Laurent Destailleur
ffbeda50bd Better picto for collpase of sub-bom 2022-01-29 00:07:04 +01:00
stickler-ci
a8344d9059 Fixing style errors. 2022-01-28 22:03:08 +00:00
mschamp
a8dd73d007 FIX #19294 implement detailed timespent in task of project API 2022-01-28 22:59:32 +01:00
Laurent Destailleur
d9691e16d5 Merge pull request #18081 from lmag/fix_ticket_substitution
fix: #19428 ticket substitution
2022-01-28 20:01:10 +01:00
Laurent Destailleur
742feed018 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-28 19:30:32 +01:00
Laurent Destailleur
288a6564dc CSS 2022-01-28 19:28:37 +01:00
Laurent Destailleur
6a5400b1b1 Merge pull request #19919 from Easya-Solutions/new-reassort-list-stock-filter
NEW stock filter in reassort lists
2022-01-28 19:10:48 +01:00
Laurent Destailleur
289ce87f6d Fix fatal error 2022-01-28 19:06:41 +01:00
Laurent Destailleur
d72538506f Merge pull request #19935 from atm-adrien/NEW_SUB_BOM_develop
NEW : Sub-bom
2022-01-28 19:01:30 +01:00
Laurent Destailleur
905370ceb1 Merge pull request #19609 from 1ocate/FIX_02_supplier_proposal_update_line
FIX supplier_proposal when line update price U.P change 0
2022-01-28 18:53:38 +01:00
Laurent Destailleur
28f4ab4c90 Update supplier_proposal.class.php 2022-01-28 18:52:50 +01:00
Laurent Destailleur
c04a572e0b Fix doc 2022-01-28 18:46:21 +01:00
Laurent Destailleur
c6a536296e Merge pull request #19601 from alsoft10/14.0
Feature update : #19569
2022-01-28 18:43:25 +01:00
Laurent Destailleur
2b39e381ad Update api_stockmovements.class.php 2022-01-28 18:14:11 +01:00
Laurent Destailleur
b81754ee6e Merge pull request #19962 from andreubisquerra/develop
FIX pay value in TakePOS
2022-01-28 18:11:06 +01:00
Laurent Destailleur
9dd44c6d5c Merge pull request #19958 from SylvainLegrand/New_improve_the_reading_of_profIDs
New - Improve the reading of profIDs
2022-01-28 18:08:59 +01:00
Laurent Destailleur
adf8f3886b Merge 2022-01-28 18:07:56 +01:00
Laurent Destailleur
a113231e7b Merge pull request #19961 from chiariello/develop
NEW #17123 added ExtraFields for Stock Mouvement
2022-01-28 18:04:22 +01:00
Laurent Destailleur
2686541156 Fix late picto 2022-01-28 17:59:58 +01:00
stickler-ci
807ff75b6a Fixing style errors. 2022-01-28 16:36:15 +00:00
andreubisquerra
9d228b13de FIX pay value 2022-01-28 17:22:41 +01:00
Laurent Destailleur
d545ba5049 Merge pull request #19948 from OPEN-DSI/fix_vat_report_by_month_and_rate_with_vat_src_code
NEW VAT Report by month - Show detail by rate and also by code
2022-01-28 17:21:14 +01:00
Laurent Destailleur
a88d012cb6 Merge pull request #19943 from ptibogxiv/patch-1
fix error in commande.class.php
2022-01-28 17:19:20 +01:00
Laurent Destailleur
a20594c2a5 Restore similar values for type than internal methods 2022-01-28 17:18:28 +01:00
Laurent Destailleur
e507fa12fa Merge pull request #19951 from FHenry/15.0_fix_warning
fix:silent warning php Select Lot
2022-01-28 17:08:54 +01:00
Laurent Destailleur
a631c94193 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-28 15:58:15 +01:00
Gauthier PC portable 024
3abe391f65 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW/addline_with_position_choice_develop 2022-01-28 15:08:02 +01:00
Salvatore Chiariello
e70604c485 NEW|New #17123 added ExtraFields for Stock Mouvement 2022-01-28 14:57:36 +01:00
Sylvain Legrand
66b6b5e91a stickler-ci 2022-01-28 11:31:17 +01:00
Sylvain Legrand
b65f849c5d New - Improve the reading of profIDs 2022-01-28 11:22:12 +01:00
Laurent Destailleur
3f9feef914 Comment 2022-01-27 20:38:38 +01:00
Regis Houssin
c25fcf061e Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into fix_works_to_add_prefix_db_function 2022-01-27 18:01:48 +01:00
Laurent Destailleur
6bd2caee08 test 2022-01-27 16:35:26 +01:00
Regis Houssin
8196134345 FIX not use $this in static function 2022-01-27 14:17:14 +01:00
Regis Houssin
64119917a4 FIX avoid travis error use double quote instead simple quote 2022-01-27 13:35:03 +01:00
Regis Houssin
b537e888e9 FIX exclude link.class.php from Check string $db-> inside a class filee 2022-01-27 13:18:40 +01:00
Regis Houssin
b07fff5754 FIX Travis avoid error "you should use $this->db-> inside a class file" 2022-01-27 13:06:43 +01:00
Regis Houssin
a1dc6e7e9b FIX travis error - use double quote instead simple quote 2022-01-27 12:52:13 +01:00
Florian HENRY
4f08409419 fix:waring php 2022-01-27 12:02:58 +01:00
Regis Houssin
b6f9500d46 FIX uniformize code and remove unused global 2022-01-27 12:00:55 +01:00
Laurent Destailleur
2f1857a23a Log 2022-01-27 11:51:51 +01:00
Laurent Destailleur
b0e5d63ee2 Better log 2022-01-27 11:49:38 +01:00
Regis Houssin
f68a40b64a FIX Travis error - add 'db->prefi' 2022-01-27 11:16:26 +01:00
Regis Houssin
153cd38c78 FIX uniformize and fix code 2022-01-27 10:57:20 +01:00
Regis Houssin
d78bcaa419 FIX avoid stickler Line exceeds 500 characters 2022-01-27 10:26:39 +01:00
Regis Houssin
399fffa81e FIX convert core class 2022-01-27 10:19:35 +01:00
Regis Houssin
07a47629d1 FIX convert stock class 2022-01-27 10:17:11 +01:00
Regis Houssin
7ff2678ef0 FIX convert inventory class 2022-01-27 10:16:02 +01:00
Regis Houssin
9278c7cb85 FIX convert dynamic_price class 2022-01-27 10:15:08 +01:00
Regis Houssin
116bcd1bdc FIX convert product class 2022-01-27 10:12:10 +01:00
Regis Houssin
ed9346dfb9 Works on replace MAIN_DB_PREFIX by $db->prefix() 2022-01-27 10:00:26 +01:00
Alexandre SPANGARO
2d0427a5b1 Update tax.lib.php 2022-01-27 06:21:07 +01:00
Alexandre SPANGARO
4693b9702b Copyright 2022-01-27 06:20:11 +01:00
Alexandre SPANGARO
1ed096316a Merge branch 'Dolibarr:develop' into fix_vat_report_by_month_and_rate_with_vat_src_code 2022-01-27 06:11:20 +01:00
stickler-ci
a6bd35c7d8 Fixing style errors. 2022-01-26 22:52:07 +00:00
Cserveny, Tamás
9dda416116 add datem and type parameters 2022-01-26 23:47:07 +01:00
ptibogxiv
928075bbf6 fix error in commande.class.php 2022-01-26 20:13:10 +01:00
Laurent Destailleur
32b2b6e788 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-26 19:57:00 +01:00
Laurent Destailleur
932096f332 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-26 19:56:50 +01:00
BB2A Anthony Berton
e8f27ca058 Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into add_option_pdf_global_thirdparty_alias 2022-01-26 18:57:01 +01:00
BB2A Anthony Berton
fea897f323 Fix lang and erreur 2022-01-26 18:46:51 +01:00
BB2A Anthony Berton
b9cd22c60a Add fonction invert and traduc 2022-01-26 18:36:04 +01:00
BB2A Anthony Berton
285e1d0f84 ok 2022-01-26 17:25:24 +01:00
BB2A Anthony Berton
be543b3ef9 ok 2022-01-26 17:25:13 +01:00
BB2A Anthony Berton
d0942117df 1 2022-01-26 17:20:12 +01:00
Laurent Destailleur
33d67e74c2 Merge pull request #19934 from bb2a/Add_param_color_button_action
NEW - ADD config text color of button action
2022-01-26 16:46:12 +01:00
Adrien Raze
e52fb89182 FIX : Fixing stickler returns 2022-01-26 16:36:58 +01:00
Adrien Raze
d38ff3ad9b FIX : Fixing stickler returns 2022-01-26 15:53:30 +01:00
kamel
db57d1a99f Correction lien pour afficher le detail de la tva si la tva est présente coté client en fournisseur 2022-01-26 15:53:03 +01:00
kamel
83d80cc380 Correction recuperation de la vat_rate_show 2022-01-26 15:45:00 +01:00
stickler-ci
9342fa8781 Fixing style errors. 2022-01-26 14:15:53 +00:00
Laurent Destailleur
512df3c580 Try to address a better solution for #19776 2022-01-26 15:12:42 +01:00
Anthony Berton
49efba7ded Merge branch 'develop' into Add_param_color_button_action 2022-01-26 15:12:16 +01:00
BB2A Anthony Berton
28b9ead688 ADD config text color 2022-01-26 15:06:51 +01:00
Adrien Raze
6d3066a312 FIX : Fixing trads 2022-01-26 14:46:45 +01:00
Laurent Destailleur
4bac7e012f Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-26 14:43:16 +01:00
Laurent Destailleur
9180e9a5c6 Clean code 2022-01-26 14:42:26 +01:00
Adrien Raze
36068d4279 FIX : Fixing total errors 2022-01-26 14:41:36 +01:00
Laurent Destailleur
abc5a93d99 Merge pull request #19827 from defrance/patch-175
NEW : use addMoreActionsButtonsList hook in list
2022-01-26 14:19:14 +01:00
Laurent Destailleur
6783ec80be Try a change on a file to trigger travis 2022-01-26 14:17:32 +01:00
Laurent Destailleur
0d66646052 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-26 14:08:20 +01:00
Laurent Destailleur
15d4d44cb5 css 2022-01-26 14:01:41 +01:00
Laurent Destailleur
cd1f5fead1 phpcs 2022-01-26 13:51:56 +01:00
Laurent Destailleur
38408f916b Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-01-26 13:51:25 +01:00
Laurent Destailleur
6d04bac740 phpcs 2022-01-26 13:50:49 +01:00
Laurent Destailleur
416543a5f5 Standardize code to allow deletion of an odt template 2022-01-26 13:49:46 +01:00
Laurent Destailleur
ae0f428acc Merge pull request #19923 from bb2a/Add_param_color_button_action
NEW - Add param color button action
2022-01-26 13:48:23 +01:00
Laurent Destailleur
f94d84e395 Merge pull request #19655 from cfoellmann/wus/hotfix/fontawesome-PR
use any available fontawesome icon in picto
2022-01-26 13:44:38 +01:00
BB2A Anthony Berton
cceb98a195 Correct VAR forget 2022-01-26 13:28:14 +01:00
BB2A Anthony Berton
656dc02e7d Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into Add_param_color_button_action 2022-01-26 13:03:01 +01:00
Laurent Destailleur
3b4c7ceb3b Code comment 2022-01-26 13:00:48 +01:00
Laurent Destailleur
1b50350600 Merge pull request #19910 from atm-adrien/NEW_Add_Hooks_salaries_sociales
NEW : Add hooks on salaries and sociales card
2022-01-26 12:58:48 +01:00
Laurent Destailleur
15bc641699 Merge pull request #19933 from Markusi13/develop
Github Issues: Removed the required Code of Conduct checkbox so it doesn't show "done 1 task" on issues.
2022-01-26 12:58:16 +01:00
Markusi13
a47145f962 Update feature_request.yml 2022-01-26 12:23:25 +01:00
Markusi13
b7d199657b Update bug_report.yml 2022-01-26 12:23:12 +01:00
Laurent Destailleur
9b1b107ed0 Merge pull request #19772 from simnandez/develop_hotfix19760
FIX #19760 Uniformize labels
2022-01-26 12:14:57 +01:00
Laurent Destailleur
ab610a90ac Merge pull request #19924 from atm-quentin/NEW_Multiple_batch_consume
NEW : split consumption line on MO
2022-01-26 12:07:41 +01:00
Laurent Destailleur
eb336c81a1 Merge pull request #19926 from aspangaro/16a9
NEW API Proposals - Add POST lines
2022-01-26 12:06:33 +01:00
Laurent Destailleur
e2734eca43 Merge pull request #19928 from thomas-Ngr/develop_new_add_header_before_public_ticket_list
NEW : add hook before the public ticket list
2022-01-26 12:01:37 +01:00
Laurent Destailleur
ebdea44de9 Merge pull request #19927 from aspangaro/16a10
NEW Proposal - Add filter on proposal get lines
2022-01-26 11:38:25 +01:00
Laurent Destailleur
30fba23326 Merge pull request #19931 from Easya-Solutions/new-stock-add-limit-stock-csv
NEW stock limit in stock export CSV
2022-01-26 11:36:53 +01:00
Laurent Destailleur
7b990a1a7f Fix phpcs 2022-01-26 11:30:19 +01:00
Laurent Destailleur
2dda4f5924 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop
2022-01-26 11:29:50 +01:00
Laurent Destailleur
3e1cfc2997 NEW Add status "Obsolete" to KM articles 2022-01-26 11:29:27 +01:00
pandreani
95df5bebe6 NEW stock limit in stock export CSV 2022-01-26 10:35:08 +01:00
Laurent Destailleur
7cb22e0cf9 Merge pull request #19921 from Markusi13/develop
Github Issues: Updated repo bug/feature request templates to the new yml version
2022-01-26 10:29:08 +01:00
Thomas Negre
ec723657c9 new : allow informations to be displayed before the public ticket list 2022-01-26 09:55:41 +01:00
Alexandre SPANGARO
31787a99f0 NEW Proposal - Add filter on proposal get lines 2022-01-26 08:50:57 +01:00
stickler-ci
71876755d2 Fixing style errors. 2022-01-26 06:35:26 +00:00
Alexandre SPANGARO
68ba60896f Copyright 2022-01-26 07:31:17 +01:00
Alexandre SPANGARO
30fd55addc NEW API Proposals - Add POST lines 2022-01-26 07:29:37 +01:00
BB2A Anthony Berton
54b5fed67b Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into Add_param_color_button_action 2022-01-25 16:45:30 +01:00
Adrien Raze
08d830f450 FIX : Fixing total_cost, qty_frozen and display problems 2022-01-25 16:40:28 +01:00
Quentin VIAL-GOUTEYRON
4de5ee97b3 NEW : split consumption line on MO 2022-01-25 16:37:33 +01:00
Juanjo Menent
56cb81287e Merge remote-tracking branch 'upstream/develop' into develop_hotfix19760
# Conflicts:
#	htdocs/install/mysql/migration/15.0.0-16.0.0.sql
2022-01-25 16:25:44 +01:00
Laurent Destailleur
58fcf88e24 Merge pull request #19922 from thomas-Ngr/develop_fix_restrict_external_user_ticket_list
fix :  restrict external user ticket list view
2022-01-25 16:07:18 +01:00
Laurent Destailleur
243999d223 Merge pull request #19746 from atm-quentin/NEW_contact_pj_filter_list
NEW : Contact filter project list
2022-01-25 16:06:31 +01:00
Laurent Destailleur
34e930d952 Merge pull request #19737 from aspangaro/16a6
NEW Add possibility with constant MAIN_LOGIN_BADCHARUNAUTHORIZED to define bad character unauthorized into login name
2022-01-25 16:04:11 +01:00
Laurent Destailleur
05ff99f2e6 Update user.class.php 2022-01-25 16:03:30 +01:00
Laurent Destailleur
6677eccf45 Update user.class.php 2022-01-25 16:01:50 +01:00
Laurent Destailleur
dc1b4d825b Merge pull request #19733 from atm-quentin/NEW_contact_project_tab
NEW: Project contact tab
2022-01-25 15:59:18 +01:00
Laurent Destailleur
f773872dd1 Merge branch 'develop' into NEW_contact_project_tab 2022-01-25 15:58:54 +01:00
Laurent Destailleur
13f66df975 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-25 15:43:57 +01:00
Laurent Destailleur
c3a58ae303 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-25 15:43:42 +01:00
Thomas Negre
0126be54a3 fix ticket : an external user should be able to access only its own company tickets. 2022-01-25 15:19:40 +01:00
Laurent Destailleur
34d3fdad02 Merge pull request #19699 from atm-john/new_convert_setup_to_new_setup
NEW : convert situation setup to new setup system
2022-01-25 15:17:14 +01:00
Quentin VIAL-GOUTEYRON
8cf1991d64 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_Multiple_batch_consume 2022-01-25 15:08:03 +01:00
Markusi13
5868a9749d Merge branch 'Dolibarr:develop' into develop 2022-01-25 15:03:31 +01:00
Markusi13
4ab28b10ea Update bug_report.yml 2022-01-25 15:02:11 +01:00
Markusi13
ea6dfb172c Update the feature request template to the new yml format 2022-01-25 15:01:29 +01:00
Laurent Destailleur
5d176c75db Merge pull request #19780 from aspangaro/16a7
NEW Thirdparty - Add rules customer accountancy code is mandatory to validate invoice
2022-01-25 15:00:47 +01:00
Laurent Destailleur
bb49dd195e Merge pull request #19722 from bjoern86/patch-2
Adds possibility to add senders name to $formmail->fromname
2022-01-25 14:58:27 +01:00
Laurent Destailleur
b7b88865e6 Update card_presend.tpl.php 2022-01-25 14:58:00 +01:00
Markusi13
688e74aad8 Update bug_report.yml 2022-01-25 14:56:01 +01:00
Markusi13
7efa219e33 Update bug_report.yml 2022-01-25 14:55:52 +01:00
Markusi13
ecc4a7c1ae Updated the old issue form to the new yml format 2022-01-25 14:55:34 +01:00
Laurent Destailleur
30811e9b1a Merge branch 'develop' into NEW_Add_Hooks_salaries_sociales 2022-01-25 14:45:51 +01:00
Laurent Destailleur
0d54f8df5f Merge pull request #19847 from andreubisquerra/develop
Create new line when add ordered product in TakePOS
2022-01-25 14:29:07 +01:00
Laurent Destailleur
37338f9a60 Update card.php 2022-01-25 14:03:29 +01:00
Laurent Destailleur
037a01aa79 Merge pull request #19918 from Je2fb/patch-3
Add new expression in Dynamic Price
2022-01-25 13:55:57 +01:00
Laurent Destailleur
8f0d42c378 Merge pull request #19920 from thomas-Ngr/develop_fix_ticket_remove_null_socid
Fix ticket module : security check breaks automatic.
2022-01-25 13:40:01 +01:00
Laurent Destailleur
e61340dad4 Merge pull request #19917 from bb2a/patch-1
FIX - Trigger
2022-01-25 13:34:06 +01:00
Thomas Negre
76b0dee58a Fix ticket module : security check would prevent automatic fill of thirdparty fields when creating a ticket from thirdparty card. 2022-01-25 12:20:12 +01:00
Adrien Raze
f37c04bc2f NEW : Add the possibility to add sub-BOMs to BOM 2022-01-25 12:06:40 +01:00
Adrien Raze
a5903abb5b FIX : Change display of the bom's select 2022-01-25 11:28:36 +01:00
Adrien Raze
4edbd5c4e3 NEW : Creation of the function select_bom() used to display bom select list 2022-01-25 10:31:45 +01:00
lvessiller
2b5bc29d1b NEW stock filter in reassort lists 2022-01-25 10:00:33 +01:00
stickler-ci
d1dd70f9cc Fixing style errors. 2022-01-25 08:10:58 +00:00
Je2fb
a1f676eb8c Add new expression in Dynamic Price
Add the expression supplier_min_price_with_discount for select the buy price.
2022-01-25 09:07:53 +01:00
Anthony Berton
13dbadf770 Update 15.0.0-16.0.0.sql 2022-01-25 00:19:41 +01:00
Anthony Berton
1d265d801a Update 14.0.0-15.0.0.sql 2022-01-25 00:19:09 +01:00
Anthony Berton
1bd86e4bae Update 14.0.0-15.0.0.sql 2022-01-25 00:11:04 +01:00
Anthony Berton
b64856807b Update llx_c_action_trigger.sql 2022-01-25 00:09:41 +01:00
Laurent Destailleur
66287d645e Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-24 23:59:02 +01:00
Laurent Destailleur
19dcc95d6f Fix tooltip for payment 2022-01-24 23:58:31 +01:00
Laurent Destailleur
9f377b7fe4 Better responsive on small screen 2022-01-24 23:58:16 +01:00
kamel
7ca333f4d7 Fix the vat report by month and rate (with also the vat src code) 2022-01-24 17:04:46 +01:00
stickler-ci
6cb97b1346 Fixing style errors. 2022-01-24 15:13:40 +00:00
Adrien Raze
c131bdcbd3 NEW : Add hooks on salaries and sociales card 2022-01-24 16:06:02 +01:00
Atm-Gregr
99fb082403 prevent access denied page 2022-01-24 14:50:54 +01:00
Laurent Destailleur
be01e3b1ac Migration 2022-01-24 14:48:18 +01:00
Laurent Destailleur
38dbaa3d07 Doc 2022-01-24 14:12:27 +01:00
Laurent Destailleur
8dbadc0aa8 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-24 14:12:06 +01:00
Laurent Destailleur
0e5907e220 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-24 12:50:35 +01:00
Laurent Destailleur
8ceec043e8 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-24 12:50:10 +01:00
Laurent Destailleur
4d2832e8a0 Merge pull request #19764 from FHenry/dev_BDD_19763
NEW: #19763 DB change only - Can invoice task time per different services
2022-01-24 12:28:11 +01:00
Laurent Destailleur
69cd6f0a25 Remove hardcodes list of migration files 2022-01-23 23:37:59 +01:00
Laurent Destailleur
0a996f44be Merge pull request #19819 from OPEN-DSI/new-invoice-propagate-extrafields-on-credit-note
NEW pre-filled extra fields with slected credit note
2022-01-23 20:58:45 +01:00
Laurent Destailleur
da4f139f48 Merge pull request #10997 from altairis-tof/packbuyprice
NEW : use subproducts costprice and pmp if empty on father
2022-01-23 19:54:06 +01:00
stickler-ci
bc37e75e7f Fixing style errors. 2022-01-23 18:49:28 +00:00
Laurent Destailleur
7a8d0b698a Merge branch 'develop' into packbuyprice 2022-01-23 19:46:26 +01:00
Laurent Destailleur
dee020f286 Update getSupplierPrices.php 2022-01-23 19:40:23 +01:00
Laurent Destailleur
d41f3f1797 Merge pull request #19832 from aspangaro/15a14
NEW Create contract from invoice
2022-01-23 19:29:09 +01:00
Laurent Destailleur
45ffd68e92 Simplify code 2022-01-23 19:26:29 +01:00
Laurent Destailleur
78c7ed5b9f Merge pull request #19839 from dolibit-ut/patch-368
Update card.php
2022-01-23 18:21:32 +01:00
Laurent Destailleur
a23118f725 Merge pull request #19908 from bb2a/substiturion-user-poste
ADD Substitution user job
2022-01-23 17:51:55 +01:00
BB2A Anthony Berton
0552381e39 1 2022-01-23 16:36:47 +01:00
Laurent Destailleur
cff4222385 Merge pull request #19848 from randallmoraes/patch-3
Update emailcollector.class.php
2022-01-23 13:42:34 +01:00
Laurent Destailleur
51521f2ff9 Merge branch 'develop' into patch-3 2022-01-23 13:42:05 +01:00
Laurent Destailleur
20ac994d0d Update emailcollector.class.php 2022-01-23 13:41:26 +01:00
Laurent Destailleur
e2a1662027 Merge pull request #19844 from nervo/patch-2
NEW: Add "addMoreActionsButtons" hook to subscription form
2022-01-23 13:08:58 +01:00
Laurent Destailleur
74a74829d3 Merge pull request #19851 from ptibogxiv/patch-460
NEW support user_modif in order
2022-01-23 13:06:55 +01:00
Laurent Destailleur
3f33f20fb1 Merge pull request #19840 from dolibit-ut/patch-369
add CANCEL Button
2022-01-23 13:06:23 +01:00
Laurent Destailleur
ba404493a2 Merge pull request #19865 from hregis/fix_avoid_warning
FIX avoid warning
2022-01-23 12:33:52 +01:00
Laurent Destailleur
9dd3d970bf Update commonobject.class.php 2022-01-23 12:31:30 +01:00
Laurent Destailleur
92b198d564 Merge pull request #19893 from atm-kevin/NEW_Stock_Columns_On_BOM
NEW : Display physical and virtual stock of the products when creating OF from a BOM
2022-01-23 12:29:26 +01:00
Laurent Destailleur
5abe6c0eb5 Merge pull request #19878 from bb2a/patch-1
NEW - Add substitutions "user numbers"
2022-01-23 12:23:28 +01:00
Laurent Destailleur
3bea78726a Merge pull request #19888 from bb2a/patch-2
Update formated substitution
2022-01-23 12:22:32 +01:00
Laurent Destailleur
9924333df8 Merge pull request #19883 from grandoc/new_branch_19_01_2022
fix : bad path
2022-01-23 12:20:40 +01:00
Laurent Destailleur
ef0a08ad1c Merge pull request #19570 from Easya-Solutions/12.0
FIX: Update swiftmailer librairies
2022-01-23 12:15:43 +01:00
Laurent Destailleur
9be8c0b474 Merge pull request #19885 from alsoft10/develop
PR REQUEST #19679
2022-01-23 12:12:53 +01:00
Laurent Destailleur
dfcaeea9d1 Merge pull request #19900 from thomas-Ngr/develop_new_ticket_check_notify_tier_at_create
NEW option to default check "notify tier at creation" in ticket module
2022-01-23 12:11:10 +01:00
Laurent Destailleur
255ac69a0d Update card.php 2022-01-23 12:10:52 +01:00
Laurent Destailleur
9424cebf0c Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-23 12:07:19 +01:00
Laurent Destailleur
9049134556 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-23 12:07:11 +01:00
Laurent Destailleur
0e75d024a6 Merge pull request #19901 from thomas-Ngr/develop_new_auto_read_ticket
NEW allow a ticket to be automatically marked as read
2022-01-23 12:05:24 +01:00
Laurent Destailleur
8f6f1c93aa Merge pull request #19898 from smil2k/feature/18411
Missing supplierorder api
2022-01-23 11:59:08 +01:00
Laurent Destailleur
66d7271c94 Merge pull request #19904 from hregis/fix_use_new_function_prefix
NEW add modifications for new function "$db->prefix()"
2022-01-23 11:57:42 +01:00
Florian HENRY
3063006d61 Merge branch 'develop' of github.com:Dolibarr/dolibarr into dev_BDD_19763 2022-01-22 18:12:32 +01:00
Laurent Destailleur
a16293f9b7 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-22 17:27:57 +01:00
Laurent Destailleur
2f1805beb8 Fix #yogosha8532 2022-01-22 17:14:45 +01:00
Laurent Destailleur
1790ba2820 NEW Can removed doc templates from setup page of thirdparty 2022-01-22 15:06:05 +01:00
Laurent Destailleur
4750f6bbc6 FIX action must be protected with a permission check 2022-01-22 15:05:41 +01:00
Laurent Destailleur
6baa0939ce NEW Can add a tooltip after the combo list of doc templates 2022-01-22 14:03:39 +01:00
Florian HENRY
e0048c056a Merge branch 'develop' of github.com:Dolibarr/dolibarr into dev_BDD_19763 2022-01-21 19:01:42 +01:00
Regis Houssin
a3a856d0be NEW add modifications for new function "$db->prefix()" 2022-01-21 16:57:57 +01:00
Laurent Destailleur
8c22de6982 Comment 2022-01-21 16:15:38 +01:00
Quentin VIAL-GOUTEYRON
84d446cf73 NEW possibility to consume multiple batch 2022-01-21 15:31:30 +01:00
Juanjo Menent
18e308e800 remove leftover if 2022-01-21 13:47:20 +01:00
Juanjo Menent
59921d60b3 Length label control 2022-01-21 13:38:59 +01:00
Juanjo Menent
0fb9e9c988 Merge remote-tracking branch 'upstream/develop' into develop_hotfix19760
# Conflicts:
#	htdocs/install/mysql/migration/15.0.0-16.0.0.sql
2022-01-21 12:42:51 +01:00
Thomas Negre
e9526654fe NEW allow a ticket to be automatically marked as read when created from backend.
Introduces option TICKET_AUTO_READ_WHEN_CREATED_FROM_BACKEND
2022-01-21 11:35:18 +01:00
Alexandre SPANGARO
573d45fec8 Merge remote-tracking branch 'upstream/develop' into 15a14 2022-01-21 10:47:27 +01:00
Thomas Negre
bb86be062c NEW ticket module : add an option to enable default check notify tier at creation
introduces new option TICKET_CHECK_NOTIFY_TIER_AT_CREATE
2022-01-21 09:44:22 +01:00
Cserveny, Tamás
c6ac4d63a5 fix code review errors 2022-01-20 22:28:07 +01:00
stickler-ci
c5136240b4 Fixing style errors. 2022-01-20 21:25:35 +00:00
Cserveny, Tamás
a322f113bf missing supplierorder api 2022-01-20 22:20:49 +01:00
Laurent Destailleur
9276224422 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-20 21:49:33 +01:00
Laurent Destailleur
0a8eb3ee00 Doc 2022-01-20 20:03:24 +01:00
ptibogxiv
b89947ff7c Update commande.class.php 2022-01-20 19:58:31 +01:00
ptibogxiv
56dd41324c Update commande.class.php 2022-01-20 19:57:48 +01:00
Laurent Destailleur
b2f6de06d5 Fix the localtax were not saved on price when no code was set 2022-01-20 18:09:30 +01:00
Laurent Destailleur
de30b68f9e Code comment 2022-01-20 17:10:30 +01:00
stickler-ci
238e2111f0 Fixing style errors. 2022-01-20 16:07:18 +00:00
BENKE Charlene
82b14caa13 FIX if we have PRODUCT_USE_UNITS, task fail
we need 	public function getLabelOfUnit($type = 'long') fonction or printlineOriginLine fail
2022-01-20 17:06:03 +01:00
kevin
553dc5a1ef Display the physical and virtual stock of the products when creating OF from a BOM 2022-01-20 16:59:05 +01:00
Anthony Berton
687c8e2082 Update functions.lib.php 2022-01-20 13:49:23 +01:00
Anthony Berton
871e707185 Update functions.lib.php 2022-01-20 13:45:51 +01:00
stickler-ci
0bb697c3ae Fixing style errors. 2022-01-20 06:47:57 +00:00
alsoft10
e212395f00 PR REQUEST #19679 2022-01-20 12:12:59 +05:30
Laurent Destailleur
dfa2cab408 Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into
develop

Conflicts:
	htdocs/core/modules/oauth/google_oauthcallback.php
2022-01-19 23:04:05 +01:00
Laurent Destailleur
a5de93cf44 Validate the oauthstateanticsrf value. 2022-01-19 23:03:24 +01:00
Laurent Destailleur
4be8cb5ded Validate the oauthstateanticsrf value. 2022-01-19 23:01:50 +01:00
Laurent Destailleur
3ae63cb111 Clean code 2022-01-19 22:49:53 +01:00
Laurent Destailleur
b09cb42e25 Decode extra params of id_token 2022-01-19 22:26:31 +01:00
Philippe GRAND
13329aab2e fix : bad path 2022-01-19 21:18:49 +01:00
Laurent Destailleur
ee836305ba Fix state field 2022-01-19 20:51:53 +01:00
Laurent Destailleur
d38784f45a WIP Login with Google 2022-01-19 20:33:20 +01:00
Laurent Destailleur
ff1037634b Clean OAuth feature 2022-01-19 18:23:31 +01:00
Laurent Destailleur
4f533c3f9d Merge 2022-01-19 16:54:00 +01:00
Laurent Destailleur
d06f570c23 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-19 16:50:11 +01:00
Florian HENRY
aa2b244bf3 fix wordpress indent 2022-01-19 13:31:51 +01:00
Florian HENRY
8141e3e460 Merge branch 'develop' of github.com:Dolibarr/dolibarr into dev_BDD_19763 2022-01-19 13:30:39 +01:00
Anthony Berton
5f4c53f824 Update functions.lib.php 2022-01-19 11:37:38 +01:00
Anthony Berton
0a99e7c82a Update functions.lib.php 2022-01-19 10:51:31 +01:00
Laurent Destailleur
49f0e2f765 Merge pull request #19521 from altairis-melina/displaysku
NEW : Show product reference in Takepos
2022-01-19 02:32:51 +01:00
Laurent Destailleur
eb3bce9759 Merge pull request #19527 from altairis-melina/nocategory
NEW : Add constant to hide categories in TakePos
2022-01-19 02:30:52 +01:00
Laurent Destailleur
6179d7a4e6 Merge pull request #19618 from altairis-melina/hookproduct
Add Hooks for takepos ajax search
2022-01-19 02:30:09 +01:00
Laurent Destailleur
659372aa9e Merge pull request #19645 from FHenry/dev_addOAuthWordPress
NEW: add WordPress OAuth
2022-01-19 02:26:54 +01:00
Laurent Destailleur
63d6ef1ba0 Merge pull request #19647 from OPEN-DSI/new-exports-entity-filters
NEW add entity filter in exports
2022-01-19 02:26:18 +01:00
Laurent Destailleur
3310f3ffa5 Merge pull request #19758 from FHenry/new_product_ref_for_bom
NEW: Display product ref in "Object link" product tab for BOM
2022-01-19 02:12:06 +01:00
Laurent Destailleur
595bfa3f7b Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-19 02:03:00 +01:00
Laurent Destailleur
c2c74f4849 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-19 02:02:52 +01:00
Laurent Destailleur
f4cdcf93bb Merge pull request #19864 from Dolibarr/snyk-fix-62ffe24e6f5c18ab2cad0bc251d4e52a
[Snyk] Security upgrade node-fetch from 2.6.7 to 3.1.1
2022-01-19 01:16:44 +01:00
Laurent Destailleur
ede465e78e Merge pull request #19871 from OPEN-DSI/new-const-search-cat-or-default
NEW MAIN_SEARCH_CAT_OR_BY_DEFAULT const for search by category
2022-01-19 01:06:32 +01:00
Laurent Destailleur
0f03f5c57f Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-18 20:15:23 +01:00
Laurent Destailleur
f2760cded6 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-18 19:22:43 +01:00
lvessiller
6a9c9cc81a NEW MAIN_SEARCH_CAT_OR_BY_DEFAULT const for search by category 2022-01-18 16:36:50 +01:00
Laurent Destailleur
3757d7e952 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	.travis.yml
2022-01-18 16:11:48 +01:00
Laurent Destailleur
1087ddb22f Clean code 2022-01-18 14:00:38 +01:00
Laurent Destailleur
ebc3ef2f37 Removed no more used property 2022-01-18 13:52:09 +01:00
Laurent Destailleur
fb6e5f03f9 Clean code and translation 2022-01-18 13:44:52 +01:00
Laurent Destailleur
6276bb77ad Prepare v16 2022-01-18 13:17:59 +01:00
Laurent Destailleur
09eb051bcc Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-18 12:25:20 +01:00
Regis Houssin
08009bcec5 FIX avoid warning 2022-01-18 10:06:11 +01:00
snyk-bot
17414b878a fix: package.json to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-NODEFETCH-2342118
2022-01-17 20:52:19 +00:00
Laurent Destailleur
2462700975 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-17 13:57:59 +01:00
Laurent Destailleur
5fd2d00936 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-17 08:57:48 +01:00
Laurent Destailleur
24de82859e Debug v15 2022-01-16 20:22:09 +01:00
Laurent Destailleur
372b583e50 Debug template of warehouse 2022-01-16 19:21:59 +01:00
ptibogxiv
accb0deb29 New support user_modif in order 2022-01-16 00:13:14 +01:00
stickler-ci
45666e7f0a Fixing style errors. 2022-01-15 21:45:20 +00:00
Randall Mora
65e77d7795 Update emailcollector.class.php
Enable to init hook to emailcollectorcard, when docollect is executed by cron task.
2022-01-15 15:37:31 -06:00
andreubisquerra
9cd4bfabff Create new line when add ordered product in TakePOS
When TAKEPOS_GROUP_SAME_PRODUCT is enabled in TakePOS and you add product, avoid group it if product is ordered
2022-01-15 21:53:49 +01:00
Laurent Destailleur
5070a40fa4 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/core/lib/project.lib.php
	htdocs/projet/list.php
2022-01-15 20:28:04 +01:00
nervo
26c54373e8 Add "addMoreActionsButtons" hook to subscription form 2022-01-15 19:06:07 +01:00
Florian HENRY
64f6a54320 Merge branch 'develop' of github.com:Dolibarr/dolibarr into new_product_ref_for_bom 2022-01-15 12:51:36 +01:00
Laurent Destailleur
fe79218571 Change on column Assigned to on projet and task. 2022-01-15 12:26:08 +01:00
Laurent Destailleur
ecde594a15 Merge branch '15.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts:
	htdocs/fourn/card.php
2022-01-14 20:28:44 +01:00
UT from dolibit
56ef9d3d51 add CANCEL Button
add CANCEL Button
& add more space for small Touchscreens
2022-01-14 18:44:49 +01:00
stickler-ci
41f00a8aef Fixing style errors. 2022-01-14 17:25:59 +00:00
UT from dolibit
23a9c43d39 Update card.php 2022-01-14 18:23:23 +01:00
Laurent Destailleur
3d98d62889 Prepare v16 2022-01-14 18:14:05 +01:00
Laurent Destailleur
57692ba556 Fix responsive 2022-01-14 17:51:19 +01:00
Laurent Destailleur
35a1b06c44 Fix responsive 2022-01-14 17:48:15 +01:00
Laurent Destailleur
1ae01ba2fc Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop 2022-01-14 10:38:38 +01:00
Laurent Destailleur
62ae0361f7 Merge pull request #19818 from DATUC/patch-24
Update companies.lang
2022-01-14 10:19:48 +01:00
Laurent Destailleur
256b4fb06b Merge pull request #19834 from dolibarr95/patch-59
Update extrafields.class.php
2022-01-14 10:16:32 +01:00
stickler-ci
2b64f69def Fixing style errors. 2022-01-14 09:12:30 +00:00
dolibarr95
5b3fcc5e43 Update extrafields.class.php 2022-01-14 10:10:10 +01:00
dolibarr95
e53d9d4320 Update extrafields.class.php
fix #19739
2022-01-14 08:52:04 +01:00
Alexandre SPANGARO
22e4ea63ea Merge remote-tracking branch 'upstream/develop' into 15a14 2022-01-13 22:30:05 +01:00
Alexandre SPANGARO
6d1f5e1ef1 NEW Add possibility to create contract from invoice 2022-01-13 22:29:48 +01:00
BENKE Charlene
90829bd255 Update listbysubaccount.php 2022-01-13 12:23:14 +01:00
BENKE Charlene
05603730ca Update listbyaccount.php 2022-01-13 12:22:45 +01:00
BENKE Charlene
c4c43fc9f9 Update list.php 2022-01-13 12:22:16 +01:00
BENKE Charlene
cc6dd99bf6 NEW : addMoreActionsButtonsList hook for button in list 2022-01-13 12:20:54 +01:00
DATUC
800de88c69 Update companies.lang 2022-01-12 12:26:06 +01:00
lvessiller
2d9c46ed3a NEW pre-filled extra fields with slected credit note 2022-01-12 12:22:43 +01:00
lvessiller
400f6b244b FIX user actions rights when mulit-company transverse mode is enabled 2022-01-11 17:29:02 +01:00
Gauthier PC portable 024
6799d48944 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW/addline_with_position_choice_develop 2022-01-11 09:59:25 +01:00
Gauthier PC portable 024
1910423684 FIX : conf name is MAIN_ADD_LINE_AT_POSITION 2022-01-11 09:54:27 +01:00
Gauthier PC portable 024
04cc0a0480 NEW : Add column "Total HT" to products array on document creation card 2022-01-10 17:02:15 +01:00
Alexandre SPANGARO
960aaded8e NEW Thirdparty - Add rules customer accountancy code is mandatory to validate invoice 2022-01-09 21:08:06 +01:00
ATM john
29e5fb0250 Merge branch 'fix_stuff_on_setup_class' into new_convert_setup_to_new_setup 2022-01-09 10:27:34 +01:00
Juanjo Menent
4d5b001869 Merge remote-tracking branch 'upstream/develop' into develop_hotfix19760 2022-01-08 14:50:51 +01:00
Juanjo Menent
840b0e4843 FIX #19760 Uniformize label length 2022-01-08 14:47:40 +01:00
Florian HENRY
f5788bef66 OK BDD 2022-01-07 12:20:27 +01:00
Florian HENRY
e87fb1c0dc add column into table inst 2022-01-07 12:19:03 +01:00
Quentin VIAL-GOUTEYRON
f78a9ea6f5 missing column 2022-01-07 10:19:44 +01:00
Quentin VIAL-GOUTEYRON
137371cae5 Merge branch 'NEW_contact_project_tab' of github.com:atm-quentin/dolibarr into NEW_contact_project_tab 2022-01-07 10:18:57 +01:00
Quentin VIAL-GOUTEYRON
5fc0f18b0b add column contact type 2022-01-07 10:17:00 +01:00
Florian HENRY
c66e26cfd9 display product ref for Object link product tab 2022-01-06 21:38:57 +01:00
Vincent Dieltiens
e58d783ced add comment to parameter 2022-01-06 11:14:13 +01:00
Alexandre SPANGARO
5a8b2c9560 Merge remote-tracking branch 'upstream/develop' into 16a6 2022-01-05 21:40:02 +01:00
Quentin VIAL-GOUTEYRON
446ba2a416 FIX stickler 2022-01-05 15:33:05 +01:00
Quentin VIAL-GOUTEYRON
7a4b0e38cd NEW : Contact filter project list 2022-01-05 14:35:11 +01:00
Alexandre SPANGARO
8034b5316a NEW Add possibility with constant MAIN_LOGIN_BADCHARUNAUTHORIZED to define bad character unauthorized into login name 2022-01-04 12:05:06 +01:00
stickler-ci
f0677ed665 Fixing style errors. 2022-01-04 09:42:24 +00:00
Quentin VIAL-GOUTEYRON
b1f750ac2f NEW: Project contact tab 2022-01-04 10:35:44 +01:00
John BOTELLA
70a1975ad2 Merge branch 'develop' into new_convert_setup_to_new_setup 2022-01-03 21:53:45 +01:00
bjoern86
cab4b762d3 Adds possibility to add senders name to $formmail->fromname
If INVOICE_EMAIL_SENDER_NAME, SHIPPING_EMAIL_SENDER_NAME, COMMANDE_EMAIL_SENDER_NAME or ORDER_SUPPLIER_EMAIL_SENDER_NAME is beeing set, use it as sender name. If not, keep $formmail->fromname blank
2022-01-01 20:24:30 +01:00
Mélina
a85f542668 double quotes 2021-12-31 09:29:56 +01:00
Mélina
2729bd32e6 Single quotes 2021-12-30 16:14:06 +01:00
Anthony Berton
e07905f950 var 2021-12-29 20:34:08 +01:00
Anthony Berton
78861c1743 Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into Add_param_color_button_action 2021-12-29 19:21:03 +01:00
John BOTELLA
9af621c6f8 Fix scrutinizerh 2021-12-28 18:43:04 +01:00
Maxime Kohlhaas
706ee8ce62 Fix #19662 : mysql8 user creation in 2 steps 2021-12-28 16:26:21 +01:00
John BOTELLA
e9e100410a Fix empty value 2021-12-28 14:51:19 +01:00
John BOTELLA
817a9594ae Convert setup of situation invoice to new setup system + fix size 2021-12-28 14:32:57 +01:00
John BOTELLA
50801edb84 Merge branch 'develop' of github.com:Dolibarr/dolibarr into new_convert_setup_to_new_setup 2021-12-28 11:29:26 +01:00
Mélina
9e24785972 add getDolGlobalInt 2021-12-28 11:23:46 +01:00
stickler-ci
a2cb020394 Fixing style errors. 2021-12-23 12:45:26 +00:00
alsoft10
5dd0aa0549 Feature Update #19678 2021-12-23 18:14:12 +05:30
alsoft10
cdd405d7cf Merge remote-tracking branch 'upstream/14.0' into 14.0 2021-12-23 17:34:57 +05:30
lmarcouiller
8e11b1c996 import with select boxes 2021-12-23 11:25:57 +01:00
lmarcouiller
733e411a67 Merge branch 'develop' of github.com:Dolibarr/dolibarr into develop#1 2021-12-23 11:14:47 +01:00
kamel
551e187b21 Revert "FIX: Edit card not permitted when invoice is validated and INVOICE_CAN_ALWAYS_BE_EDITED is set to 0"
This reverts commit a250c72ff3.
2021-12-22 15:35:41 +01:00
kamel
a250c72ff3 FIX: Edit card not permitted when invoice is validated and INVOICE_CAN_ALWAYS_BE_EDITED is set to 0 2021-12-22 15:29:11 +01:00
kamel
dc03b6c7ad Merge branch '12.0' of github.com:Dolibarr/dolibarr into 12.0 2021-12-22 15:16:39 +01:00
Laurent Destailleur
3490dc3228 Update functions.lib.php 2021-12-21 16:31:28 +01:00
Mélina
649d5b009e Correction of a condition of the constant 2021-12-21 10:10:28 +01:00
lmarcouiller
c4efac891a remove warning 2021-12-20 16:10:07 +01:00
lmarcouiller
11eac8eee9 Merge branch 'develop#1' of github.com:Hystepik/dolibarr into develop#1 2021-12-20 14:41:08 +01:00
lmarcouiller
981cfe18a9 Merge branch 'develop' of github.com:Dolibarr/dolibarr into develop#1 2021-12-20 14:40:53 +01:00
Mélina
d267d90ef7 escape constant 2021-12-20 14:22:35 +01:00
Mélina
a61585674a Merge branch 'productinstock' of github.com:altairis-melina/dolibarr into productinstock 2021-12-20 11:10:23 +01:00
Mélina
e90c382345 fix prefix 2021-12-20 11:09:54 +01:00
stickler-ci
ce752fe437 Fixing style errors. 2021-12-20 10:07:25 +00:00
Mélina
8738dc93b5 fix prefix 2021-12-20 11:06:53 +01:00
Mélina
dccd74b0ef fix prefix 2021-12-20 10:42:10 +01:00
John BOTELLA
a3e4ea5699 WIP migrate situation invoice to new setup POO 2021-12-20 10:29:10 +01:00
stickler-ci
0f177274e0 Fixing style errors. 2021-12-20 10:20:14 +01:00
Christian Foellmann
9329e54fc3 fix hook 'menuDropdownQuickaddItems' 2021-12-20 10:20:14 +01:00
Christian Foellmann
03d4317302 add hook 'menuDropdownQuickaddItems' to manipulate dropdown menu 2021-12-20 10:20:14 +01:00
Mélina
9571dc0613 cast fk_entrepot 2021-12-20 10:06:13 +01:00
Mélina
882bf4b12d cast fk_entrepot 2021-12-20 10:02:58 +01:00
Christian Foellmann
6bbbd99be9 use any available fontawesome icon in picto 2021-12-20 08:06:05 +01:00
alsoft10
1953c1b886 Merge remote-tracking branch 'upstream/14.0' into 14.0 2021-12-17 19:55:55 +05:30
lvessiller
68174cf440 FIX check stickler 2021-12-17 12:41:44 +01:00
lvessiller
5a2a6a07ea NEW add entity filter in exports 2021-12-17 12:38:13 +01:00
Florian HENRY
d6ae2ae339 add WordPress OAuth 2021-12-17 12:07:04 +01:00
Jay Yeo
90f25ab21a FIX supplier_proposal when line update price U.P change 0 modify 2021-12-17 12:09:14 +07:00
Anthony Berton
6024e77976 --butactionbg 2021-12-16 19:43:42 +01:00
Laurent Destailleur
494e9a2745 Merge branch 'develop' into develop_NEW_block_leave_if_negative_balance 2021-12-16 19:12:06 +01:00
Adrien Raze
9f7e8fa3ed NEW : Creation of the llx_facture_fourn_rec.sql table for recurring supplier invoices 2021-12-15 15:19:12 +01:00
Mélina
c3ac93b917 Add Hooks for takepos ajax search 2021-12-14 16:03:12 +01:00
Anthony Berton
9a6f78fc15 erreur btn action 2021-12-14 11:45:31 +01:00
Anthony Berton
9bc2a561bc ok 2021-12-14 10:52:16 +01:00
stickler-ci
f21f15fa14 Fixing style errors. 2021-12-14 08:25:37 +00:00
Mélina
1a54611290 sql correction 2021-12-14 09:24:36 +01:00
Mélina
a28ddb5ac6 sql correction 2021-12-14 09:18:44 +01:00
Mélina
0c7cf34125 Change the name of the constant 2021-12-13 17:02:16 +01:00
stickler-ci
b9f750198f Fixing style errors. 2021-12-13 15:52:38 +00:00
Mélina
631de455a4 Change line 136 2021-12-13 16:51:53 +01:00
Mélina
abf7368886 Change constant 2021-12-13 16:28:24 +01:00
alsoft10
812e5a3b72 Feature update : #19569 2021-12-13 16:02:27 +05:30
Mélina
c9ae805e7a Change constant 2021-12-13 10:43:02 +01:00
Mélina
e3a18d117e Only the products in stock 2021-12-13 10:32:07 +01:00
kamel
daf3313e49 Merge branch '12.0' of github.com:Dolibarr/dolibarr into 12.0 2021-12-07 17:14:19 +01:00
kamel
1ca199d796 FIX: Update swiftmailer librairies 2021-12-07 17:11:34 +01:00
Vincent Dieltiens
9ef2735520 Adds import for customer invoices and invoices lines 2021-12-07 09:33:18 +01:00
lvessiller
efc0251a66 FIX can modify tag in thirdparty card if const THIRDPARTY_CAN_HAVE_CATEGORY_EVEN_IF_NOT_CUSTOMER_PROSPECT_SUPPLIER enabled 2021-12-06 11:40:50 +01:00
Marc de Lima Lucio
bf3718a9bd Merge branch '13.0' of github.com:Dolibarr/dolibarr into 13.0_FIX_project_timesheet_offdays_offset 2021-12-01 11:21:55 +01:00
stickler-ci
cc3ef5a3fb Fixing style errors. 2021-12-01 09:53:28 +00:00
Mélina
9190581d0a No category 2021-12-01 10:45:56 +01:00
Mélina
16ab6ce800 No Category 2021-12-01 10:26:24 +01:00
Mélina
5c1638227d Correction description catégorie 2021-12-01 09:58:01 +01:00
HENRY Florian
4af45a1719 Merge branch 'develop' into dev_fix_ticket_user_assign 2021-11-30 21:32:02 +01:00
Mélina
7dff30126d Show subcategories description 2021-11-30 18:22:59 +01:00
Jay Yeo
f3fa611d34 Merge branch 'Dolibarr:develop' into 1ocateAddShipmentclose 2021-11-30 23:05:11 +07:00
Mélina
3ca6743469 Show category description 2021-11-30 16:19:36 +01:00
stickler-ci
7c3b2f1e9b Fixing style errors. 2021-11-30 15:07:59 +00:00
Mélina
e43b95f05a Show reference product 2021-11-30 15:41:46 +01:00
stickler-ci
31dd11c9c0 Fixing style errors. 2021-11-30 13:11:28 +00:00
Jay Yeo
169f5e6ad6 Update list.php 2021-11-30 20:08:56 +07:00
stickler-ci
48c4ddf347 Fixing style errors. 2021-11-30 10:51:09 +00:00
1ocate
4fb125703a For easy close shipment 2021-11-30 17:46:06 +07:00
Adrien Raze
6a3a56d2a2 Merge branch '14.0' of github.com:Dolibarr/dolibarr into FIX_commandeFourn_Stats 2021-11-29 15:50:53 +01:00
Frédéric FRANCE
308998e21c Merge remote-tracking branch 'upstream/develop' into productmerge 2021-11-28 21:14:12 +01:00
Frédéric FRANCE
661e404a14 fix tests 2021-11-24 22:56:32 +01:00
Frédéric FRANCE
38f2a2ca43 move actioncomm 2021-11-24 18:19:59 +01:00
Frédéric FRANCE
ebc54f82e6 move actioncomm 2021-11-24 18:16:48 +01:00
Adrien Raze
4246cd80f9 FIX : Travis + Update dev 2021-11-24 16:27:01 +01:00
Gauthier PC portable 024
641002ae96 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_stockstransfers 2021-11-24 09:05:24 +01:00
Frédéric FRANCE
3301790647 clean code 2021-11-23 23:56:52 +01:00
Frédéric FRANCE
21a3a6cc7a clean code 2021-11-23 23:55:01 +01:00
Frédéric FRANCE
6cbc3c6033 clean code 2021-11-23 22:55:35 +01:00
Frédéric FRANCE
99cddfa235 can merge products but experimental 2021-11-23 22:36:14 +01:00
Frédéric FRANCE
799862362d can merge products but experimental 2021-11-23 22:03:46 +01:00
Frédéric FRANCE
429e5cf517 can merge products but experimental 2021-11-23 22:02:55 +01:00
Frédéric FRANCE
d9bcd27764 can merge products but experimental 2021-11-23 21:55:48 +01:00
Frédéric FRANCE
c56f180515 can merge products but experimental 2021-11-23 21:52:40 +01:00
Frédéric FRANCE
d601f62194 can merge products but experimental 2021-11-23 21:38:29 +01:00
Gauthier PC portable 024
2c2f456827 Merge branch 'NEW/addline_with_position_choice' of github.com:atm-gauthier/dolibarr into NEW/addline_with_position_choice_develop 2021-11-23 11:10:01 +01:00
Gauthier PC portable 024
74f5c092dc FIX : use $linecount = count($this->lines); 2021-11-23 10:44:43 +01:00
Giovanni Vella
f7abf59a07 Merge branch 'Dolibarr:develop' into develop 2021-11-23 08:48:52 +01:00
Frédéric FRANCE
e562bf5b1c can modify tooltip by reference 2021-11-22 20:08:21 +01:00
Frédéric FRANCE
c01cc0c212 can modify tooltip by reference 2021-11-22 20:06:51 +01:00
Frédéric FRANCE
dc3bfcfb87 can modify tooltip by reference 2021-11-22 19:57:26 +01:00
stickler-ci
9975587cd5 Fixing style errors. 2021-11-22 15:26:46 +00:00
Gauthier PC portable 024
e02405edc9 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW/addline_with_position_choice_develop 2021-11-22 16:23:26 +01:00
Gauthier PC portable 024
9840c1e0fa Merge branch 'NEW/addline_with_position_choice' of github.com:atm-gauthier/dolibarr into NEW/addline_with_position_choice_develop 2021-11-22 16:17:55 +01:00
Gauthier PC portable 024
e75b6ae0b4 FIX : it's better with an input number 2021-11-22 16:13:46 +01:00
Laurent Magnin
c8c6d5c1d2 Update functions.lib.php 2021-11-19 17:09:51 +01:00
Laurent Magnin
5f40c2e9dd Update functions.lib.php 2021-11-19 17:08:07 +01:00
Laurent Magnin
00c7114c0b Merge branch 'Dolibarr:develop' into fix_ticket_substitution 2021-11-19 16:52:57 +01:00
Florian HENRY
07c9ce4e59 remove debug 2021-11-19 16:47:39 +01:00
Florian HENRY
1b0e89635e remove debug 2021-11-19 16:47:23 +01:00
Florian HENRY
fcf223bf57 remove debug 2021-11-19 16:46:53 +01:00
Florian HENRY
ce651ff4f9 NEW: make unicity for user assigned(responsible) on ticket from anyways 2021-11-19 16:46:05 +01:00
Florian HENRY
0ba7af0f68 only one user assign per tickets 2021-11-19 16:36:14 +01:00
Marc de Lima Lucio
bffd2fc939 Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into develop_NEW_block_leave_if_negative_balance 2021-11-19 16:12:33 +01:00
Marc de Lima Lucio
ffa88b803f FIX: project timesheet by week: cleanup unused code 2021-11-19 16:03:41 +01:00
Marc de Lima Lucio
1129222064 FIX: user employee tab: offset in open days messes up holiday length calculation 2021-11-19 15:59:34 +01:00
Marc de Lima Lucio
c5f0faad43 FIX: project timesheet: public holidays offset by 1 day 2021-11-19 15:36:00 +01:00
Marc de Lima Lucio
7cb657c991 FIX: project timesheets: assume Saturday and Sunday are default weekend days when working days conf is empty or badly formed 2021-11-19 14:49:11 +01:00
Adrien Raze
dc23c7f6a3 FIX : Travis 2021-11-19 10:29:27 +01:00
stickler-ci
c5f6c617c9 Fixing style errors. 2021-11-19 08:34:45 +00:00
Adrien Raze
958be422e2 Merge branch '14.0' of github.com:Dolibarr/dolibarr into FIX_commandeFourn_Stats 2021-11-19 09:26:48 +01:00
Adrien Raze
ea8280af98 FIX : status filter on supplierOrder stats doesn't work 2021-11-17 17:32:17 +01:00
Gauthier PC portable 024
72614ecc0d Merge branch 'NEW/addline_with_position_choice_develop' of github.com:atm-gauthier/dolibarr into NEW/addline_with_position_choice_develop 2021-11-16 16:43:01 +01:00
Gauthier PC portable 024
375dcf7028 FIX : dev name 2021-11-16 16:42:48 +01:00
stickler-ci
19171d4f8e Fixing style errors. 2021-11-16 15:15:55 +00:00
Gauthier PC portable 024
f664a977c6 Merge branch 'NEW/addline_with_position_choice' of github.com:atm-gauthier/dolibarr into NEW/addline_with_position_choice_develop 2021-11-16 16:05:17 +01:00
Gauthier PC portable 024
c55008e8af NEW : insert_discount() functions handle 2021-11-16 16:02:55 +01:00
Gauthier PC portable 024
9d41c1390d Merge branch 'NEW/addline_with_position_choice' of github.com:atm-gauthier/dolibarr into NEW/addline_with_position_choice_develop 2021-11-16 14:20:24 +01:00
Gauthier PC portable 024
1e0d7d92a9 NEW : addline with position choice when MAIN_VIEW_LINE_NUMBER is enabled 2021-11-16 14:09:18 +01:00
Gauthier PC portable 024
dd23057516 NEW : accountancy massaction preselect account (customer and supplier list) 2021-11-15 14:54:09 +01:00
stickler-ci
dbcdf8aaa3 Fixing style errors. 2021-11-12 10:22:46 +00:00
ptibogxiv
bd125910ab NEW stripe element with more gateways 2021-11-12 11:18:30 +01:00
Giovanni Vella
78df3f54c4 Merge branch 'Dolibarr:develop' into develop 2021-11-10 13:55:18 +01:00
stickler-ci
becb96f04a Fixing style errors. 2021-11-08 13:24:10 +00:00
Anthony Berton
e52ea01448 Merge branch 'develop' into add_option_pdf_global_thirdparty_alias 2021-11-08 14:23:40 +01:00
Giovanni Vella
e36d2b5398 Merge branch 'Dolibarr:develop' into develop 2021-11-07 21:53:52 +01:00
Giovanni Vella
badf52b295 Merge branch 'Dolibarr:develop' into develop 2021-10-29 15:35:56 +02:00
Marc de Lima Lucio
fbb1fbf08e Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into develop_NEW_block_leave_if_negative_balance 2021-10-28 17:09:50 +02:00
Marc de Lima Lucio
15455ed470 FIX: deposit payment terms: correctly store default deposit percent value if not defined 2021-10-28 16:54:47 +02:00
Marc de Lima Lucio
5057ba29b2 FIX: deposit payment terms: removed bad copy/paste 2021-10-28 16:53:53 +02:00
Marc de Lima Lucio
7e059c0a22 NEW: deposit payment terms: futureproof evolutions by storing field as a string 2021-10-28 16:53:28 +02:00
Marc de Lima Lucio
03c24b2274 FIX: deposit payment terms: getDictvalue() renamed to getDictionaryValue() 2021-10-28 16:51:59 +02:00
Marc de Lima Lucio
668088a63f Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into NEW_deposit_payment_terms 2021-10-28 15:54:18 +02:00
Giovanni Vella
a855ef1329 current date default format string
Added a default format for date/time tag DOL_PRINT_CURR_DATE
2021-10-24 12:07:23 +02:00
Giovanni Vella
037c36abf0 Merge branch 'Dolibarr:develop' into develop 2021-10-24 11:54:48 +02:00
Laurent Destailleur
44b030e23e Merge branch 'develop' into NEW_stockstransfers 2021-10-23 22:57:35 +02:00
Lucas Marcouiller
5dfb496bad update import.php to start import to line 2 2021-10-23 17:16:19 +02:00
Lucas Marcouiller
ee35a838b4 Merge branch 'develop' of github.com:Dolibarr/dolibarr into develop#1 2021-10-23 16:57:26 +02:00
Lucas Marcouiller
4c5bbb502e Merge branch 'develop' of github.com:Dolibarr/dolibarr into develop#1 2021-10-23 14:52:12 +02:00
Giovanni Vella
d624928a5d Merge branch 'Dolibarr:develop' into develop 2021-10-23 10:56:54 +02:00
Giovanni Vella
c77d1206d3 NEW: receipt beep alternative and current date/time
I have added the alternative command for the beep (when that does not work) and the possibility to print the current date and time on the receipt.
2021-10-22 14:45:28 +02:00
Laurent Destailleur
8e68f452ed Merge branch 'develop' into develop_NEW_block_leave_if_negative_balance 2021-10-20 14:48:06 +02:00
Laurent Destailleur
69d92adb8a Update dict.php 2021-10-20 14:45:24 +02:00
Laurent Destailleur
4bb1774568 Update holiday.class.php 2021-10-20 14:43:47 +02:00
Laurent Destailleur
b03bad98ae Update dict.php 2021-10-20 14:42:56 +02:00
Laurent Destailleur
901bab2ca2 Update holiday.class.php 2021-10-20 14:33:22 +02:00
stickler-ci
daa7e56d35 Fixing style errors. 2021-10-20 07:52:24 +00:00
Gauthier PC portable 024
1135ba7116 Merge branch 'NEW_stockstransfers' of github.com:atm-gauthier/dolibarr into NEW_stockstransfers 2021-10-20 09:48:58 +02:00
Gauthier PC portable 024
738f6a90b2 FIX : $childtablesoncascade use + fix $permissiontodelete 2021-10-20 09:48:26 +02:00
stickler-ci
a8f69a2fb6 Fixing style errors. 2021-10-20 07:34:52 +00:00
Gauthier PC portable 024
210926d23a FIX : action buttons only if $permissiontoadd 2021-10-20 09:32:03 +02:00
Gauthier PC portable 024
4614b0dd65 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_stockstransfers 2021-10-20 09:13:58 +02:00
Gauthier PC portable 024
61a34829c1 FIX : this is a development version 2021-10-20 09:11:08 +02:00
lmarcouiller
aae79a1d0e WIP import select 2021-10-13 14:56:10 +02:00
Marc de Lima Lucio
9a963da77c FIX: deposit payment terms: adapt Form::form_conditions_reglement() calls to new parameter added in between PRs 2021-10-13 11:39:09 +02:00
Marc de Lima Lucio
29768a1c6e Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into NEW_deposit_payment_terms 2021-10-13 11:33:04 +02:00
Gauthier PC portable 024
ca18db8f50 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_stockstransfers 2021-10-11 16:01:47 +02:00
Gauthier PC portable 024
1a11135aa4 FIX : travis and stickler 2021-10-08 14:00:47 +02:00
Gauthier PC portable 024
361ca6afff FIX : travis 2021-10-08 13:49:11 +02:00
Gauthier PC portable 024
3d5e4fb87c FIX : travis 2021-10-08 13:42:03 +02:00
Gauthier PC portable 024
ef6f7a619a FIX : object linked to stock movement + travis 2021-10-08 13:33:19 +02:00
Gauthier PC portable 024
ca3899dbf1 FIX : travis + several fixes 2021-10-07 14:00:31 +02:00
Gauthier PC portable 024
fb74d23ae8 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_stockstransfers 2021-10-07 13:40:52 +02:00
Gauthier PC portable 024
409c19a582 FIX : useless code 2021-10-07 11:19:04 +02:00
Gauthier PC portable 024
59f5f9b0c6 FIX : travis feedback 2021-10-07 10:37:47 +02:00
Gauthier PC portable 024
70648477a7 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_stockstransfers 2021-10-07 10:37:09 +02:00
Marc de Lima Lucio
b173832d54 NEW: deposit payment terms: add a 30% deposit example payment term at install/migration 2021-10-05 15:42:40 +02:00
Marc de Lima Lucio
fb13b666b8 FIX: deposit payment terms: susbstitute percentage in payment term label with bespoke substitution key 2021-10-05 15:26:43 +02:00
Marc de Lima Lucio
92c22dc9cf FIX: deposit payment terms: tag deposit_percent field as nullable in dictionary 2021-10-05 15:08:29 +02:00
Marc de Lima Lucio
0d174ebd71 cMerge branch 'develop' of https://github.com/Dolibarr/dolibarr into NEW_deposit_payment_terms 2021-10-05 14:57:21 +02:00
Marc de Lima Lucio
9d92260ec1 FIX: deposit payment terms: fatal error for lack of inclusion on class Facture 2021-10-05 14:57:14 +02:00
Marc de Lima Lucio
47deb64f09 FIX: deposit payment terms: sql syntax error 2021-10-05 14:19:47 +02:00
Marc de Lima Lucio
8a647f3f5b FIX: deposit payment terms: sql syntax error 2021-10-05 14:01:34 +02:00
Marc de Lima Lucio
6ed9e00b4d Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into NEW_deposit_payment_terms 2021-10-05 13:35:50 +02:00
Marc de Lima Lucio
f4c22c0ae7 FIX: deposit payment terms: PHPDoc 2021-10-05 13:02:12 +02:00
Marc de Lima Lucio
4059b64288 FIX: deposit payment terms: langs 2021-10-05 13:00:25 +02:00
Marc de Lima Lucio
cd1eb3b992 FIX: deposit payment terms: PHPDoc 2021-10-05 12:53:04 +02:00
Marc de Lima Lucio
fe62808595 NEW: deposit payment terms: hidden conf to detail lines imported from origin 2021-10-05 12:37:29 +02:00
Marc de Lima Lucio
b06857136a NEW: deposit payment terms: show percentage on proposal/order PDFs 2021-10-05 11:31:03 +02:00
Marc de Lima Lucio
47b9941203 FIX: deposit payment terms: show correct percentage is proposal/order lists 2021-10-05 11:18:49 +02:00
Marc de Lima Lucio
54782f5d4c FIX: deposit payment terms: don't show percentage input on lists 2021-10-05 11:11:27 +02:00
Marc de Lima Lucio
337531f832 FIX: deposit payment terms: correctly restrict them to objet other than invoices and template invoices 2021-10-05 10:54:22 +02:00
Laurent Destailleur
950fccc186 Merge branch 'develop' into NEW_deposit_payment_terms 2021-10-04 19:06:42 +02:00
Marc de Lima Lucio
f5aebc8efd NEW: deposit payment terms: generate deposit from orders 2021-10-04 18:31:32 +02:00
Marc de Lima Lucio
cfc78a17f7 FIX: deposit payment terms: bad test for already existing deposit 2021-10-04 18:21:28 +02:00
Marc de Lima Lucio
1b2494855d NEW: deposit payment terms: set required invoice fields + filter payment terms with deposits in select + UI 2021-10-04 18:09:24 +02:00
Marc de Lima Lucio
6580c2e308 FIX: deposit payment terms: correctly untag deposit as created from an origin 2021-10-04 15:07:27 +02:00
Marc de Lima Lucio
087157890e FIX: deposit payment terms: unused variable 2021-10-04 15:06:52 +02:00
stickler-ci
4b359af0d0 Fixing style errors. 2021-10-04 09:13:05 +00:00
Gauthier PC portable 024
73e741ca74 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_stockstransfers 2021-10-04 11:10:38 +02:00
atm-gauthier
f0e018e708 Merge pull request #3 from atm-quentin/NEW_stock_transfert_incoterm
NEW incoterms
2021-10-04 11:09:22 +02:00
Quentin VIAL-GOUTEYRON
05cd74a64e missing migration file incoterm stocktransfer 2021-10-04 08:46:24 +02:00
Marc de Lima Lucio
7c8fb4a5fb FIX: leave request blocking when balance negative: don't check when creating, check only when updating not in draft 2021-09-30 17:48:20 +02:00
Marc de Lima Lucio
78b593c067 FIX: leave request block moved to v15 2021-09-30 17:42:59 +02:00
Marc de Lima Lucio
5f826f78a1 Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into develop_NEW_block_leave_if_negative_balance 2021-09-30 17:41:38 +02:00
stickler-ci
f6b9336a82 Fixing style errors. 2021-09-30 10:59:29 +00:00
Marc de Lima Lucio
d74776622d NEW: deposit payment terms: check invoice module activation + rights 2021-09-30 12:57:00 +02:00
stickler-ci
e1c5d01361 Fixing style errors. 2021-09-30 10:43:40 +00:00
Marc de Lima Lucio
81ddc6c0f6 NEW: deposit payment terms: generate deposit from proposal 2021-09-30 12:41:07 +02:00
Marc de Lima Lucio
8cb6cdf1bc NEW: deposit payment terms: prefill deposit parameters if coming from an origin with the corresponding payment conditions 2021-09-30 11:48:32 +02:00
Quentin VIAL-GOUTEYRON
8de4d3d1a4 NEW incoterms 2021-09-29 16:56:57 +02:00
Marc de Lima Lucio
b0aa502ed4 NEW: deposit payment terms: set deposit percentage in proposals/orders + get from origin document or company 2021-09-29 14:51:30 +02:00
Marc de Lima Lucio
4d6c1d892b NEW: deposit payment terms: set deposit percentage in company card 2021-09-29 14:03:35 +02:00
Marc de Lima Lucio
4b3fc4d7f3 NEW: deposit payment terms: add input in payment conditions form 2021-09-29 13:02:32 +02:00
Marc de Lima Lucio
004b52f590 NEW: deposit payment terms: add field into CRUD methods 2021-09-29 12:05:38 +02:00
Marc de Lima Lucio
ef624ec5bc NEW: deposit payment terms: add field into dictionary admin page 2021-09-29 11:34:30 +02:00
Marc de Lima Lucio
ab48351d15 NEW: deposit payment terms: database fields 2021-09-29 11:10:58 +02:00
atm-gauthier
890239e02a Merge pull request #2 from atm-quentin/FIX_trad_new_stock_transfer
FIX proforma pdf name
2021-09-23 15:25:56 +02:00
Quentin VIAL-GOUTEYRON
72bb1062cc FIX proforma pdf name 2021-09-23 15:15:35 +02:00
atm-gauthier
0f8c0cbc3b Merge pull request #1 from atm-quentin/FIX_trad_new_stock_transfer
FIX Totalttc into total
2021-09-23 14:40:32 +02:00
Quentin VIAL-GOUTEYRON
9d5f288ca3 FIX Totalttc into total 2021-09-23 14:30:00 +02:00
Gauthier PC portable 024
e6c9627195 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_stockstransfers 2021-09-17 15:47:23 +02:00
Anthony Berton
6ea3daf9f3 Update pdf.php 2021-09-09 08:31:16 +02:00
Anthony Berton
657c325868 Merge branch 'develop' into add_option_pdf_global_thirdparty_alias 2021-09-09 08:24:08 +02:00
Gauthier PC portable 024
d121544810 Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_stockstransfers 2021-09-06 16:08:39 +02:00
Florian HENRY
1cc04c54ca Merge branch 'develop' of github.com:Dolibarr/dolibarr into dev_new_project_upgrade_external_user_perms_project 2021-08-21 15:29:32 +02:00
Gauthier PC portable 024
5cde5e26b9 FIX : ne back quote in migration script 2021-08-18 19:48:17 +02:00
Gauthier PC portable 024
9098356b1f FIX : travis feedbacks 2021-08-18 19:44:40 +02:00
Gauthier PC portable 024
8170092cb8 Merge branch 'NEW_stockstransfers' of github.com:atm-gauthier/dolibarr into NEW_stockstransfers 2021-08-18 19:36:10 +02:00
Gauthier PC portable 024
c8ccc456b0 FIX : no need to have stock transfer ref in inventory code + need to change size of origintype field to be able to save StockTransfer@product/stock/stocktransfer 2021-08-18 19:35:06 +02:00
stickler-ci
d29aa636a5 Fixing style errors. 2021-08-18 17:19:19 +00:00
Gauthier PC portable 024
a80c30bc45 NEW : inventory code filled when movements are done 2021-08-18 19:15:47 +02:00
Gauthier PC portable 024
c56c74bbdd Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_stockstransfers 2021-08-18 18:31:11 +02:00
Gauthier PC portable 024
5364a5dddf FIX : transnoentities 2021-08-04 09:36:06 +02:00
Gauthier PC portable 024
f77b6d87c9 FIX : langs 2021-08-04 09:18:32 +02:00
Gauthier PC portable 024
6e7fa5ffeb FIX : stickler feddbacks 2021-08-03 16:53:44 +02:00
stickler-ci
2577936670 Fixing style errors. 2021-08-03 14:39:28 +00:00
Gauthier PC portable 024
ee52fc162c FIX : tms on update current timestamp + wrong links 2021-08-03 16:36:27 +02:00
Gauthier PC portable 024
1d2527b991 FIX : weight and units display 2021-08-03 16:00:32 +02:00
Gauthier PC portable 024
335dca7fc3 FIX : No paiement information for pdf eagle proforma 2021-08-03 09:41:10 +02:00
stickler-ci
042e2f9893 Fixing style errors. 2021-08-02 15:31:24 +00:00
Gauthier PC portable 024
b83b77beb5 NEW : stock transfer sheet proforma + default model system like cmd invoice, etc... 2021-08-02 17:28:41 +02:00
Gauthier PC portable 024
a45bab10bd Merge branch 'develop' of github.com:Dolibarr/dolibarr into NEW_stockstransfers 2021-08-02 10:09:18 +02:00
Gauthier PC portable 024
1c2ed1b22f FIX : column titles truncated 2021-08-02 10:00:53 +02:00
Gauthier PC portable 024
256c3863b8 FIX : travis feedbacks + debug conf page 2021-07-30 17:01:54 +02:00
Gauthier PC portable 024
142f93e50c FIX : functions visibility 2021-07-30 15:35:31 +02:00
Gauthier PC portable 024
846f0366d3 FIX : travis feedbacks 2021-07-30 14:17:36 +02:00
stickler-ci
3c71784272 Fixing style errors. 2021-07-30 10:32:56 +00:00
Gauthier PC portable 024
6983da8c84 Merge branch 'NEW_stockstransfers' of github.com:atm-gauthier/dolibarr into NEW_stockstransfers 2021-07-30 12:29:49 +02:00
Gauthier PC portable 024
b7c5529685 FIX : thirdparty and project in banner 2021-07-30 12:29:22 +02:00
stickler-ci
9805281733 Fixing style errors. 2021-07-29 14:20:50 +00:00
Gauthier PC portable 024
3f42689633 FIX : name 2021-07-29 16:17:12 +02:00
Gauthier PC portable 024
6d460d78ca NEW : Stocks transfers objects management 2021-07-29 16:09:07 +02:00
Florian HENRY
63a47112ae new: #18162 2021-07-16 11:14:30 +02:00
Dennis Priskorn
f56c26a214 Update README.md
Removed a few and added issue links to the rest
2021-07-02 13:00:29 +02:00
Laurent Magnin
db0b00f93a Standard ticket substitutions 2021-07-02 12:30:07 +02:00
Laurent Magnin
b2e0a530a0 Merge branch 'Dolibarr:develop' into fix_ticket_substitution 2021-07-02 11:49:55 +02:00
Marc de Lima Lucio
084abe4547 FIX: holiday: also block if balance is negative at request update, validation and approval 2021-06-22 16:27:43 +02:00
Dennis Priskorn
ddf98055a3 Update README.md
List missing features for the REST API
2021-06-19 13:45:20 +02:00
Marc de Lima Lucio
30e0471451 NEW: leave requests: add field into type dictionary to block request if balance is negative 2021-06-10 23:04:56 +02:00
Anthony Berton
e71e0f18ce Update pdf.php 2021-05-06 23:01:33 +02:00
Anthony Berton
14860febd5 Update pdf.php 2021-05-06 22:59:06 +02:00
Laurent Magnin
4aab805b4e FIX:Add ticket substition template 2021-04-16 12:39:39 +02:00
Christophe Battarel
30ad0e7e11 introduce PRODUCT_USE_SUB_COST_PRICES_IF_COST_PRICE_EMPTY 2019-04-16 09:00:39 +02:00
Christophe Battarel
278b708e17 use subproducts costprice and pmp if empty on father 2019-04-11 11:57:50 +02:00
4713 changed files with 269099 additions and 170137 deletions

View File

@@ -1,35 +0,0 @@
---
name: Bug report
about: Create a report to help us fix something that is broken
title: ''
labels: Bug
assignees: ''
---
# Instructions
*This is a template to help you report good issues. You may use [Github Markdown](https://help.github.com/articles/getting-started-with-writing-and-formatting-on-github/) syntax to format your issue report.*
*Please:*
- *replace the bracket enclosed texts with meaningful information*
- *remove any unused sub-section*
# Bug
[*Short description*]
## Environment
- **Version**: [*Affected Dolibarr version(s)*]
- **OS**: [*Server OS type and version*]
- **Web server**: [*Webserver type and version*]
- **PHP**: [*PHP version*]
- **Database**: [*Database type and version*]
- **URL(s)**: [*Affected URL(s)*]
## Expected and actual behavior
[*Verbose description*]
## Steps to reproduce the behavior
[*Verbose description*]
## [Attached files](https://help.github.com/articles/issue-attachments) (Screenshots, screencasts, dolibarr.log, debugging informations…)
[*Files*]

71
.github/ISSUE_TEMPLATE/bug_report.yml vendored Normal file
View File

@@ -0,0 +1,71 @@
name: Bug report
description: Create a report to help us fix something that is broken
labels: ["Bug"]
body:
- type: markdown
attributes:
value: |
This is a template to help you report good issues. You may use [Github Markdown](https://help.github.com/articles/getting-started-with-writing-and-formatting-on-github/) syntax to format your issue report.
- type: textarea
id: bug
attributes:
label: Bug
description: Please give a short description of the bug
validations:
required: true
- type: input
id: environment-version
attributes:
label: Environment Version
description: Affected Dolibarr version(s)
- type: input
id: environment-os
attributes:
label: Environment OS
description: Server OS type and version
- type: input
id: environment-webserver
attributes:
label: Environment Web server
description: Webserver type and version
- type: input
id: environment-php
attributes:
label: Environment PHP
description: PHP version
- type: input
id: environment-database
attributes:
label: Environment Database
description: Database type and version
- type: input
id: environment-urls
attributes:
label: Environment URL(s)
description: Affected URL(s)
- type: textarea
id: expected-behaviour
attributes:
label: Expected and actual behavior
description: Verbose description
- type: textarea
id: reproduce
attributes:
label: Steps to reproduce the behavior
description: Verbose description
- type: textarea
id: files
attributes:
label: Attached files
description: Screenshots, screencasts, dolibarr.log, debugging informations

View File

@@ -1,27 +0,0 @@
---
name: Feature request
about: Suggest a new idea for this project
title: ''
labels: Feature request
assignees: ''
---
# Instructions
*This is a template to help you report good issues. You may use [Github Markdown](https://help.github.com/articles/getting-started-with-writing-and-formatting-on-github/) syntax to format your issue report.*
*Please:*
- *replace the bracket enclosed texts with meaningful information*
- *remove any unused sub-section*
# Feature Request
[*Short description*]
## Use case
[*Verbose description*]
## Suggested implementation
[*Verbose description*]
## Suggested steps
[*List of tasks to achieve goal*]

View File

@@ -0,0 +1,35 @@
name: Feature request
description: Suggest a new idea for this project
labels: ["Feature request"]
body:
- type: markdown
attributes:
value: |
This is a template to help you report good issues. You may use [Github Markdown](https://help.github.com/articles/getting-started-with-writing-and-formatting-on-github/) syntax to format your issue report.
- type: textarea
id: feature-request
attributes:
label: Feature Request
description: Short description
validations:
required: true
- type: textarea
id: use-case
attributes:
label: Use case
description: Verbose description
- type: textarea
id: suggested-implementation
attributes:
label: Suggested implementation
description: Verbose description
- type: textarea
id: suggested-steps
attributes:
label: Suggested steps
description: List of tasks to achieve goal

6
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,6 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"

View File

@@ -5,11 +5,14 @@ on:
schedule:
- cron: "0 20 * * *"
permissions:
contents: read
jobs:
exakat:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: Exakat
uses: docker://exakat/exakat-ga
with:

3
.gitignore vendored
View File

@@ -42,6 +42,8 @@ htdocs/includes/sebastian/
htdocs/includes/squizlabs/
htdocs/includes/webmozart/
htdocs/.well-known/apple-developer-merchantid-domain-association
/factory/
/output/
# Node Modules
build/yarn-error.log
@@ -55,4 +57,3 @@ yarn.lock
package-lock.json
doc/install.lock
/factory/

View File

@@ -18,9 +18,10 @@ filter:
- dev/*
- doc/*
- documents/*
- htdocs/includes/*
- node_modules/*
- test/*
dependency_paths:
- htdocs/includes/*
paths:
- htdocs/*
- scripts/*

View File

@@ -93,23 +93,26 @@ install:
echo
- |
echo "Installing Composer dependencies - PHP Unit, Parallel Lint, PHP CodeSniffer - for $TRAVIS_PHP_VERSION"
echo "Installing Composer dependencies - PHP Unit, Parallel Lint, PHP CodeSniffer, PHP Vardump check - for $TRAVIS_PHP_VERSION"
if [ "$TRAVIS_PHP_VERSION" = '5.6' ]; then
composer -n require phpunit/phpunit ^5 \
php-parallel-lint/php-parallel-lint ^1 \
php-parallel-lint/php-console-highlighter ^0 \
php-parallel-lint/php-var-dump-check ~0.4 \
squizlabs/php_codesniffer ^3
fi
if [ "$TRAVIS_PHP_VERSION" = '7.0' ] || [ "$TRAVIS_PHP_VERSION" = '7.1' ] || [ "$TRAVIS_PHP_VERSION" = '7.2' ]; then
composer -n require phpunit/phpunit ^6 \
php-parallel-lint/php-parallel-lint ^1 \
php-parallel-lint/php-console-highlighter ^0 \
php-parallel-lint/php-var-dump-check ~0.4 \
squizlabs/php_codesniffer ^3
fi
if [ "$TRAVIS_PHP_VERSION" = '7.3' ] || [ "$TRAVIS_PHP_VERSION" = '7.4' ] || [ "$TRAVIS_PHP_VERSION" = '7.4.22' ]; then
composer -n require phpunit/phpunit ^7 \
php-parallel-lint/php-parallel-lint ^1.2 \
php-parallel-lint/php-console-highlighter ^0 \
php-parallel-lint/php-var-dump-check ~0.4 \
squizlabs/php_codesniffer ^3
fi
# phpunit 9 is required for php 8
@@ -117,6 +120,7 @@ install:
composer -n require --ignore-platform-reqs phpunit/phpunit ^7 \
php-parallel-lint/php-parallel-lint ^1.2 \
php-parallel-lint/php-console-highlighter ^0 \
php-parallel-lint/php-var-dump-check ~0.4 \
squizlabs/php_codesniffer ^3
fi
echo
@@ -166,6 +170,10 @@ before_script:
which phpcs
phpcs --version | head -
phpcs -i | head -
# Check PHP Vardump check version
echo "PHP Vardump check version"
which var_dump_check
var_dump_check --version
# Check PHPUnit version
echo "PHPUnit version"
which phpunit
@@ -297,6 +305,17 @@ script:
set +e
echo
- |
echo "Checking missing debug"
# Ensure we catch errors
set -e
# Exclusions are defined in the ruleset.xml file
if [ "$TRAVIS_PULL_REQUEST" = "false" ] && [ "$TRAVIS_PHP_VERSION" = "7.4.22" ]; then
var-dump-check --extensions php --tracy --exclude htdocs/includes --exclude test/ --exclude htdocs/public/test/ --exclude htdocs/core/lib/functions.lib.php .
fi
set +e
echo
- |
export INSTALL_FORCED_FILE=htdocs/install/install.forced.php
echo "Setting up Dolibarr $INSTALL_FORCED_FILE to test installation"
@@ -414,6 +433,9 @@ script:
php upgrade.php 14.0.0 15.0.0 ignoredbversion > $TRAVIS_BUILD_DIR/upgrade14001500.log
php upgrade2.php 14.0.0 15.0.0 > $TRAVIS_BUILD_DIR/upgrade14001500-2.log
php step5.php 14.0.0 15.0.0 > $TRAVIS_BUILD_DIR/upgrade14001500-3.log
php upgrade.php 15.0.0 16.0.0 ignoredbversion > $TRAVIS_BUILD_DIR/upgrade15001600.log
php upgrade2.php 15.0.0 16.0.0 > $TRAVIS_BUILD_DIR/upgrade15001600-2.log
php step5.php 15.0.0 16.0.0 > $TRAVIS_BUILD_DIR/upgrade15001600-3.log
ls -alrt $TRAVIS_BUILD_DIR/
- |

View File

@@ -140,18 +140,6 @@ source_file = htdocs/langs/en_US/exports.lang
source_lang = en_US
type = MOZILLAPROPERTIES
[dolibarr.externalsite]
file_filter = htdocs/langs/<lang>/externalsite.lang
source_file = htdocs/langs/en_US/externalsite.lang
source_lang = en_US
type = MOZILLAPROPERTIES
[dolibarr.ftp]
file_filter = htdocs/langs/<lang>/ftp.lang
source_file = htdocs/langs/en_US/ftp.lang
source_lang = en_US
type = MOZILLAPROPERTIES
[dolibarr.help]
file_filter = htdocs/langs/<lang>/help.lang
source_file = htdocs/langs/en_US/help.lang

View File

@@ -24,34 +24,35 @@ Component Version License GPL Compatible
-------------------------------------------------------------------------------------
PHP libraries:
ADOdb-Date 0.36 Modified BSD License Yes Date convertion (not into rpm package)
CKEditor 4.12.1 LGPL-2.1+ Yes Editor WYSIWYG
EvalMath 1.0 BSD Yes Safe math expressions evaluation
Escpos-php 2.2 MIT License Yes Thermal receipt printer library, for use with ESC/POS compatible printers
GeoIP2 0.2.0 Apache License 2.0 Yes Lib to make geoip convert
Mobiledetect 2.8.34 MIT License Yes Detect mobile devices browsers
Mobiledetect 2.8.39 MIT License Yes Detect mobile devices browsers
NuSoap 0.9.5 LGPL 2.1+ Yes Library to develop SOAP Web services (not into rpm and deb package)
PEAR Mail_MIME 1.8.9 BSD Yes NuSoap dependency
ParseDown 1.6 MIT License Yes Markdown parser
PCLZip 2.8.4 LGPL-3+ Yes Library to zip/unzip files
PHPDebugBar 1.15.1 MIT License Yes Used only by the module "debugbar" for developers
PHPSpreadSheet 1.8.2 LGPL-2.1+ Yes Read/Write XLS files, read ODS files
php-iban 1.4.7 LGPL-3+ Yes Parse and validate IBAN (and IIBAN) bank account information in PHP
php-iban 4.1 LGPL-3+ Yes Parse and validate IBAN (and IIBAN) bank account information in PHP
PHPoAuthLib 0.8.2 MIT License Yes Library to provide oauth1 and oauth2 to different service
PHPPrintIPP 1.3 GPL-2+ Yes Library to send print IPP requests
PSR/Logs 1.0 Library for logs (used by DebugBar)
PSR/Logs 1.0 MIT License Yes Library for logs (used by DebugBar)
PSR/simple-cache ? MIT License Yes Library for cache (used by PHPSpreadSheet)
Restler 3.1.1 LGPL-3+ Yes Library to develop REST Web services (+ swagger-ui js lib into dir explorer)
Sabre 3.2.2 BSD Yes DAV support
Swift Mailer 5.4.2-DEV MIT License Yes Comprehensive mailing tools for PHP
Symfony/var-dumper ??? MIT License Yes Library to make var dump (used by DebugBar)
Stripe 7.67.0 MIT Licence Yes Library for Stripe module
TCPDF 6.3.2 LGPL-3+ Yes PDF generation
TCPDI 1.0.0 LGPL-3+ / Apache 2.0 Yes FPDI replacement
JS libraries:
Ace 1.4.8 BSD Yes JS library to get code syntaxique coloration in a textarea.
ChartJS 2.9.4 MIT License Yes JS library for graph
jQuery 3.5.1 MIT License Yes JS library
jQuery UI 1.12.1 GPL and MIT License Yes JS library plugin UI
Ace 1.4.14 BSD Yes JS library to get code syntaxique coloration in a textarea.
ChartJS 3.7.1 MIT License Yes JS library for graph
CKEditor 4.18 LGPL-2.1+ Yes Editor WYSIWYG
jQuery 3.6.0 MIT License Yes JS library
jQuery UI 1.13.1 GPL and MIT License Yes JS library plugin UI
jQuery select2 4.0.13 GPL and Apache License Yes JS library plugin for sexier multiselect. Warning: 4.0.6+ create troubles without patching css
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

433
ChangeLog
View File

@@ -3,6 +3,380 @@ English Dolibarr ChangeLog
--------------------------------------------------------------
***** ChangeLog for 16.0.0 compared to 15.0.0 *****
For users:
---------------
NEW: PHP 8.1 compatibility:
Warning: Application works correctly with PHP8 and 8.1 but you may experience a lot of PHP warning into the PHP server log files (depending
on the PHP setup). Removal of all PHP warnings on server side is planned for v17.
NEW: Support for recurring purchase invoices.
NEW: #20292 Include German public holidays
NEW: Can show ZATCA QRCode on PDFs
NEW: Can show Swiss QR Code on PDFs
NEW: #17123 added ExtraFields for Stock Mouvement
NEW: #20609 : new massaction to assign a sale representatives on a selection of thirdparties
NEW: #20653 edit discount pourcentage for all lines in one shot
NEW: Accept 'auto' for ref of object on import of purchase order/proposal
NEW: Accountancy - Add more filters and info on page to bind accounting accounts
NEW: Accountancy - Add subledger account when we generate a transaction with a deposit invoice
NEW: Accountancy - Add a massaction to preselect an account (customer and supplier list)
NEW: ACE Editor is restored at same cursor position after a save.
NEW: Add "addMoreActionsButtons" hook to subscription form
NEW: Add an option in GUI to show a Quick add button into top menu bar
NEW: Module Recruitment - Add a public page with all list of open job positions.
NEW: Module Recruitment - Add a tab with list of application on the jobposition file.
NEW: Add a workflow to auto link contract on a ticket
NEW: Add column date of Signature on proposal list
NEW: Add column template invoice in invoice list
NEW: Add column "Total HT" to products array on document creation card
NEW: ADD configuration for text color of button action
NEW: Add constant to hide categories in TakePos
NEW: Add constant to show category description in TakePos
NEW: Add constant to show only the products in stock in TakePos
NEW: Add entity filter in exports
NEW: Show the event block on recurring invoices #20870
NEW: Add filter "opportunity status" on statistics of projects.
NEW: Add firstname, lastname and max number of attendees for module "Event Organization"
NEW: add margin info in proposal and order list
NEW: Add massaction "Edit Extrafield" for Product
NEW: Add more fields to detect duplicate during import of thirdparties
NEW: Add option to foce delivery on email for purchase order receipt to yes
NEW: Add param boder table for md theme
NEW: Add param color button action
NEW: Add possibility to create contract from invoice
NEW: Add possibility with constant MAIN_LOGIN_BADCHARUNAUTHORIZED to define bad character unauthorized into login name
NEW: Add private and public notes on tax files.
NEW: Add status "Obsolete" to KM articles
NEW: Add substitutions "user numbers"
NEW: Add the possibility to add sub-BOMs to BOM
NEW: allow a ticket to be automatically marked as read when created from backend.
NEW: allow cut&paste as real numeric value to excel
NEW: A public form to send a message and create a lead is available
NEW: automatically set totally received status in reception
NEW: Auto set invoice paid when adding credit not and remain to pay is 0
NEW: Availibility dictionnary has a new column unit and number
NEW: barcode rule to insert product in takepos
NEW: Can change value of AWP during the inventory
NEW: Can enter price with tax for predefined products on purchase objects
NEW: Can filter on a thirdparty on product statistics
NEW: Can removed doc templates from setup page of thirdparty
NEW: Can set the parent company during the creation of thirdparty (action=add of societe/card.php)
NEW: Can use ! to make a search that exclude a string
NEW: Change in theme colors does not need to use the refresh button
NEW: clean values and amount in FEC import
NEW: const MAIL_MASS_ACTION_ADD_LAST_IF_MAIN_DOC_NOT_FOUND for mailing mass action
NEW: Contact filter project list
NEW: Create contract from invoice
NEW: create third-party with contact if not found on public ticket
NEW: Default value for MAIN_SECURITY_CSRF_WITH_TOKEN is now 2 (GET are also protected agains CSRF attacks)
NEW: deposit payment terms: add field into dictionary admin page to define default percentage of deposit.
NEW: Dictionaries - add possibility to manage countries in EEC
NEW: display errors in a message box after generating documents
NEW: Display physical and virtual stock of the products when creating OF from a BOM
NEW: Display product ref in "Object link" product tab for BOM
NEW: Enhance the import. Can use 'auto' for the ref (import of orders)
NEW: Events on Proposal to Return to Draft
NEW: Page to list expense report payments
NEW: JS inventory autocalc input
NEW: language support for more emailing target selectors
NEW: leave requests: add field into type dictionary to block request if balance is negative
NEW: MAIN_MAIL_AUTOCOPY_TO can accept several email and special keys
NEW: MAIN_SEARCH_CAT_OR_BY_DEFAULT const for search by category
NEW: Mass action "Close shipments"
NEW: Module website now supports the multicompany module
NEW: More mode for THEME_TOPMENU_DISABLE_IMAGE (2, 3, ...)
NEW: Add option to move checkbox column as first column on Thirdparty list (only few screens)
NEW: Add tabs for nets Bom
NEW: on redirect of page in website module, GET parameters are kept.
NEW: optional display warning icons on ticket list
NEW: option to default check "notify tier at creation" in ticket module
NEW: option update prices on proposal cloning
NEW: payment conditions enabling semi-automatic deposit creation (Issue #18439)
NEW: possibility to consume multiple batch
NEW: Reverse movement product consumption
NEW: Send email to the supplier order contact
NEW: New permission to report time on timesheet.
NEW: SEPA XML - option to place payment Type Info at Credit transfer Transaction level
NEW: Show number of votes into the label of tab "Results" of a survey
NEW: Show product reference in Takepos
NEW: Some core tables are created only at module activation
NEW: split consumption line on MO
NEW: stock filter in reassort lists
NEW: stock limit in stock export CSV
NEW: Sub-bom are availables
NEW: Supplier order - Show ref supplier of reception in linked object block
NEW: support user_modif in order
NEW: TakePos - pagination on search results
NEW: The backup tools has an "lowmemory" option for mysqldump on large database
NEW: The 'reposition' class works on ajax constantonoff that make redirects
NEW: Thirdparty - Add rules "customer accountancy code" is mandatory to validate invoice
NEW: thumbnail field in product list
NEW: total mark rate in list
NEW: uncheck "send message" by default on a ticket when private messages has been checked
NEW: VAT Report by month - Show detail by rate and also by code
NEW: Ticket triggers: allow to automatically send messages on new tickets
NEW: Accountancy - Add hidden feature for accounting reconciliation
NEW: Can store the session into database (instead of beeing managed by PHP)
NEW: Added MMK currency (Myanmar Kyat)
NEW: On a form to send an email, we show all emails of contacts of object
Modules
NEW: Module Partnership Management
NEW: Module Event Organization Management
For developers or integrators:
------------------------------
NEW: dol_uncompress() supports more extensions (.gz, .bz2, .zstd). Only .zip was supported before.
NEW: Implement a generic method for Kaban views
NEW: Upgrade chartjs library to 3.7.1
NEW: update rank line is possible on API for customer invoices, sales orders and supplier invoice
NEW: stripe element with more gateways
NEW: solde() function evolution to be able to get solde until a chosen date
NEW: Suggest a way to run upgrade per entities.
NEW: Support html content for multiselect component.
NEW: ModuleBuilder - Add tabs view in module builder
NEW: ModuleBuilder - More feature that can be modifed after module generation
NEW: Hook getNomUrl available everywhere in tooltip of ref links
NEW: Identification of tr is possible with by attribute data-id on some pages
NEW: Import with select boxes V2
NEW: Can update rank of invoice, proposal and order lines with API update
NEW: Can use current entity filter on 'chkbxlst'
NEW: Creation of the function select_bom() used to display bom select list
NEW: add printFieldListWhere hook in product reassort card
NEW: Add trigger and event on completely received status change
NEW: Add utility function send backup by mail
NEW: add WordPress OAuth to save a token (not SSO)
NEW: A module can embed a sql script run at each Dolibarr upgrade
NEW: API Proposals - Add POST lines
NEW: API REST filter states by country
NEW: Add option INVOICEREC_SET_AUTOFILL_DATE_START/END
NEW: Add option MAIN_API_DEBUG to save API logs into a file
NEW: Add param to keep the robot=index meta tag on public pages
NEW: Add method hintindex() in database handlers.
NEW: add modifications for new function "$db->prefix()"
NEW: addMoreActionsButtonsList hook for button in list
NEW: Add API to get a template invoice
NEW: Standardize a lot of code.
NEW: #20736 Allow extrafields SQL filters on REST API product lookup
NEW: #19294 implement detailed timespent in task of project API
NEW: Add a protection into PHPunit to avoid to forget a var_dump
NEW: Add datem and type parameters to API to create movements
NEW: Add hidden option on contract PDF line to hide qty and price
NEW: Option MAIL_MASS_ACTION_ADD_LAST_IF_MAIN_DOC_NOT_FOUND to send last document in mass mailing action
NEW: Add hooks: selectContactListWhere hook, selectThirdpartyListWhere hook
NEW: TakePos - add hooks complete product display
NEW: TakePos - add hooks for cart display
NEW: TakePos - add hooks to complete ajax return array
NEW: Add hook before the public ticket list
NEW: Add hook doaction in takepos invoice
NEW: Add Hook for Notif
NEW: Add hook for more buttons
NEW: Add hook printFieldListWhere in "show_contacts" function
NEW: Add hook printFieldWhere in load_state_board function
NEW: Add hooks contact tab badge and hooks parameter for avoid conflicts
NEW: Add hook selectProductsListWhere in select_produits_list function
NEW: Add hooks in commercial index
NEW: Add hooks in customers and products boxes
NEW: Add hooks in thirdparty index page
NEW: Add hooks on project task time page
NEW: Add hooks on salaries and sociales card
NEW: Add hooks select product list and select thirdparty list function
NEW: Add hook to getSellPrice function
Following changes may create regressions for some external modules, but were necessary to make Dolibarr better:
* There is a new specific permission to be allowed to enter timesheets. If you use timesheet, don't forget to give the new permission (disable and
enable the module project if it is not visible).
* The default value for MAIN_SECURITY_CSRF_WITH_TOKEN has been set to 2. It means any POST and any GET request that contains the "action" or "massaction"
with a value of a sensitive action must also a valid token parameter (With previous value 1, only POST was concerned). Note: With value 3, any URL
with parameter "action" or "massaction" need the token, whatever is the value of the action.
* verifCond('stringtoevaluate') now return false when string contains a bad syntax content instead of true.
* The deprecated method thirdparty_doc_create() has been removed. You can use the generateDocument() instead.
* All triggers with a name XXX_UPDATE have been renamed with name XXX_MODIFY for code consistency purpose.
* Rename build_path_from_id_categ() into buildPathFromId() and set method to private.
* Move massaction 'confirm_createbills' from actions_massactions.inc.php to commande/list.php
* Method fetch_all_resources(), fetch_all_used(), fetch_all_available() of DolResource has been removed (they were not used by core code).
* Method fetch_all of DolResource has been renamed into fetchAll() to match naming conventions.
* The hook 'upgrade' and 'doUpgrade2" has been renamed 'doUpgradeBefore' and 'doUpgradeAfterDB'. A new trigger 'doUpgradeAfterFiles' has been introduced.
* The context hook 'suppliercard' when on the supplier tab of a thirdparty has been renamed into 'thirdpartysupplier'
***** ChangeLog for 15.0.3 compared to 15.0.2 *****
FIX: 15.0: modules cannot declare more than 1 cron job using the same method with different parameters
FIX: 15 fix graph ficheinter status
FIX: #18704
FIX: #20444
FIX: #20448 missing preg_replace for vat rate when adding a free line
FIX: #20476 migration postgresql 13.0.x to 14.0.x packaging type
FIX: #20487 missing letter D in constant THIRDPARTIES_DISABLE_RELATED_…
FIX: #20487 missing letter D in constant THIRDPARTIES_DISABLE_RELATED_OBJECT_TAB
FIX: #20527 Accountancy - Unbalanced entry proposed when an employee are declared on a social contribution
FIX: #20527 Accountancy Unbalanced entry proposed when an employee are declared on social contribution
FIX: #20621 signature online with proposal with n page.
FIX: #20696
FIX: #20828
FIX: #20886 : manage durations in list_print_total.tpl.php
FIX: #20902
FIX: #21051
FIX: #21093
FIX: #21138
FIX: #21140
FIX: #21174
FIX: #21323
FIX: #21472 On the bank transfer lists, a change of page switches to the lists of the direct debit module
FIX: #21495
FIX: #21518
FIX: Accountancy - Label of VAT account is empty
FIX: Accountancy - Model account list - Problem of CSRF
FIX: Accountancy - Partitioning of the entity on an automatic binding
FIX: add missing thead, th and id on table
FIX: backport commit 5b3fcc5e43979b1b0789bf81fb8f1b2b59c93056, chkbxlst cannot be emptied
FIX: Bank account not set when creating invoice from order
FIX: Bank transfer - Link on code supplier invoice was bad
FIX: Can convert a partially closed down payment when close for
FIX: class center linkedObjectblock order date
FIX: count elements in invoice list (Issue #21444)
FIX: Customer price non numeric warning when 0 vat.
FIX: errors in getLinesArray()
FIX: False alert of WAF when there is "set" into some URL action=update.
FIX: Intervention graph by status on ficheinter Index page
FIX: Intervention url link into Commerce index
FIX: Fix get origin from other than supplier proposal when add a new supplier proposal
FIX: Fix show errors in card
FIX: fourn/commande/card.php Added "$object" parameter to $formfile->showdocuments call
FIX: french traductions for payment methods
FIX: hook for dol_format_address
FIX: Index page for "Sales" give wrong URL link to Intervention
FIX: issue Dolibarr#21495 for v15
FIX: label and get_substitutionarray_each_var_object on ODT generation
FIX: load product stock in inventory lines
FIX: missing morecss for multiselectarray
FIX: missins time spent list menu
FIX: new member subscription: bank account and payment mode might be hidden
FIX: ODT generation of BOM document
FIX: ODT tags for subobjects {object_subobject_yyy} was not working.
FIX: qty received label in Squille PDF model
FIX: rank duplicate on mass action invoice from multiple orders
FIX: regression + add $forceentity parameter
FIX: regression PR #20713
FIX: security breach if we have same ref number in multiple entities
FIX: selection of type of invoice
FIX: Send remind to pay invoice only on validated invoices
FIX: Show sellist type of extrafield when none category selected
FIX: signature online with proposal with n page.
FIX: sql error when PRODUCT_USE_SUPPLIER_PACKAGING enabled.
FIX: sql order
FIX: trash icon on crontask list to do not work
FIX: v15 linked object block center order date
FIX: Warning on attribut
FIX: We must remove empty values of $features array in fetchByProductCombination2ValuePairs() because some products can use only several attributes in their variations and not necessarily all. In this case, fetch doesn't work without my correction
FIX: with callback function
FIX: xml file for company with special chars in name
FIX: Zatca QR code must use company name/vat
***** ChangeLog for 15.0.2 compared to 15.0.1 *****
FIX: #19777 #20281
FIX: #20140 #20301
FIX: #20279 Accountancy - PostGreSQL - Error on mass update lines already binded
FIX: #20476 migration postgresql 14.0.x to 15.0.x packaging type
FIX: #20733 Inventory: Do not use batch qty even if present if batch module is disabled.
FIX: action comm list: holiday last day not included + handle duration with halfdays
FIX: Add missing entity on salary's payment
FIX: Add 'recruitment' into check array
FIX: add tools to fix bad bank amount in accounting with multicurrency
FIX: assign member cateogry to a member
FIX: backport
FIX: bad bank amount in accounting with multicurrency
FIX: Bad condition on remx
FIX: Bad filter on date on salary list
FIX: bad link to add a customer price (token duplicated)
FIX: bad status of member on widget by type and status
FIX: better error management at product selling price update
FIX: Can't edit bank record
FIX: check mandatory thirdparty fields for mass action
FIX: check thirdparty object loaded and properties exist
FIX: comment
FIX: compatibility for ticket number sharing
FIX: compatibility with multicompany sharings
FIX: contact card: single extrafield update failed
FIX: country not visible into list of states
FIX: Delete an extrafield where type is double
FIX: deprecated module are not more viewed as external modules
FIX: Disable customer type by default if type prospect/customer is disabled
FIX: each time we create a supplier order, we need to give it a ref_supplier
FIX: Error management
FIX: fatal error for $db usage in tpl
FIX: filter into the list of product lots
FIX: Filter on Object Referent page give CRSF page
FIX: Fix default options ($hidedetails, $hidedesc, $hideref) with globales when generate PDF in mass actions
FIX: Fix search by filters
FIX: Fix the adding of lines in the create invoice functions
FIX: forgotten form confirm before various payment delete
FIX: holiday/leave requests: write status change emails in HTML
FIX: include discount price for PMP after a reception (Issue #20029)
FIX: incrementation
FIX: in salary stats and payment list, we must check right perms as well as salary list
FIX: intervention entity missing
FIX: label tax cat trad
FIX: Mass action ship orders
FIX: missing advanced perms
FIX: missing call to executeHooks()
FIX: Missing entity on adding new VAT
FIX: missing hook for row ordering
FIX: missing hook parameter ($possiblelinks)
FIX: missing parenthesis
FIX: missing picto in combo of mass actions of thirdparties.
FIX: missing signature library when ODT model is used
FIX: Missing unset fields after updateline expensereport
FIX: ModuileBuilder - Fix getLinesArray() error reporting
FIX: Move delete task time trigger position
FIX: Navigation between invoices
FIX: No empty line inserted into accounting_bookkeeping
FIX: Numbering of sepa files
FIX: object cloning: set unique extrafield values to null to prevent duplicates
FIX: on update with action reminder in future there is user key error
FIX: originproductline array td identification data-id
FIX: out of memory when more than 100 000 invoices.
FIX: permit access to medias when logged in a different entity
FIX: phpcs
FIX: project creation prevented if PROJECTLEADER contact role renamed, de-activated or deleted
FIX: project timesheet by week: cleanup unused code
FIX: project timesheet: public holidays offset by 1 day
FIX: project timesheets: assume Saturday and Sunday as default weekend days when working days conf is empty or badly formed
FIX: propal list: bad error management when setting "not signed" mass action
FIX: propal list mass action translations and error management (v14 edition)
FIX: propal list: missing not signed massaction translation keys for transifex
FIX: PR returns
FIX: ref_client doesn't exists on supplier invoice, then ref_fourn needs to have a default value when we want to bill several supplier orders
FIX: replenish and manage product stock by warhouse
FIX: sending email on payment of registration of event
FIX: SEPA ICS is not mandatory for bank transfer
FIX: Set datec when add time spent on a project task
FIX: status filter on supplierOrder stats doesn't work
FIX: stickler-ci
FIX: still prevent project creation if PROJECTLEADER role unavailable, but with a specific error message
FIX: Supplier order stats
FIX: Tabulation must be allowed for HTML content
FIX: tool to fix bank account not in main currency for vendor invoice
FIX: translations
FIX: Travis + Update dev
FIX: truncate Customer Reference too long on PDF header (PR #20718)
FIX: uniformize code
FIX: Update of sale price (log not correctly updated)
FIX: user actions rights when mulit-company transverse mode is enabled
FIX: user employee tab: offset in open days messes up holiday length calculation
FIX: We need to have a different default_ref_supplier for each new fourn invoice
FIX: "WHERE" clause missing on resource export
FIX: #yogosha9754
***** ChangeLog for 15.0.1 compared to 15.0.0 *****
FIX: #19777 #20281
FIX: bad position of extrafields for interventions
@@ -112,8 +486,9 @@ NEW: Increase size of params of actions for emailcollector
NEW: Invoice list - Use complete country select field with EEC or not
NEW: mass action delete, no more break if at least one object has child
NEW: mass action paid on customer invoice list
NEW: massaction validate on supplier orders list
NEW: Mass action send email to all attendees of an event.
NEW: mass action validate on supplier orders list
NEW: mass action send email to all attendees of an event
NEW: mass action to switch status on sale / on purchase of a product
NEW: expense reports: conf to pre-fill start/end dates with bounds of current month
NEW: Option "Add a link on the PDF to make the online payment"
NEW: More options to generate PDF (show Frame option, width of picture option)
@@ -134,7 +509,7 @@ NEW: when multiple order linked to facture, show list into note.
NEW: when we delete several objects with massaction, if somes object has child we must see which objects are concerned and nevertheless delete objects which can be deleted
NEW: Editing a page in website module keep old page with name .back
NEW: External backups can be downloaded from the "About info page".
NEW: Add massaction to switch status on sale / on purchase of a product.
Modules
@@ -142,36 +517,49 @@ NEW: Stable module Knowledge Management
NEW: Experimental module Event Organization Management
NEW: Experimental module Workstations Management
NEW: Development of module Partnership Management
OLD: module SimplePOS has been completely removed -> use TakePOS
For developers:
---------------
API:
NEW: #18319 REST API - Shipment: Add 'close' action / endpoint / POST method.
NEW: add API /approve and /makeOrder for purchase orders
NEW: API for knowledgemanagement
NEW: API get list of legal form of business
NEW: API list of staff units
NEW: Hidden option API_DISABLE_COMPRESSION is now visible in API setup page.
Hook:
NEW: add hook 'beforeBodyClose'
NEW: add hook 'hookGetEntity'
NEW: add hook 'menuLeftMenuItems' to filter the leftmenu items
NEW: add hook 'printUnderHeaderPDFline' on invoice PDF templates (can be used for example to add a barcode or more information on header of invoices).
NEW: add hookmanager on note pages
NEW: hook after rank update
NEW: 'printFieldListFrom' hook call on several lists
ModuleBuilder:
NEW: add the property "copytoclipboard" in modulebuilder
NEW: Use lang selector when using a field key 'lang' in modulebuilder
Options:
NEW: add options MAIN_IBAN_IS_NEVER_MANDATORY, MAIN_IBAN_NOT_MANDATORY, PROPAL_NOT_BILLABLE, PROPAL_REOPEN_UNSIGNED_ONLY, PROPOSAL_ARE_NOT_BILLABLE, TICKETS_MESSAGE_FORCE_MAIL
Trigger:
NEW: add action trigger for member excluded
NEW: Introduce method hasRight
NEW: Can use textarea field into a confirm popup.
NEW: Can use the result_mode of mysqli driver. Save memory for list count
NEW: #18319 REST API - Shipment: Add 'close' action / endpoint / POST method.
NEW: Add API /approve and /makeOrder for purchase orders.
NEW: add action trigger for member excluded
NEW: add option MAIN_IBAN_IS_NEVER_MANDATORY, MAIN_IBAN_NOT_MANDATORY, PROPAL_NOT_BILLABLE, PROPAL_REOPEN_UNSIGNED_ONLY, PROPOSAL_ARE_NOT_BILLABLE, TICKETS_MESSAGE_FORCE_MAIL
NEW: Add code codebar column on serial/lot structure
NEW: Add date_valid and date_approve columns in the list of supplier orders
NEW: add hook `beforeBodyClose`
NEW: Add hook hookGetEntity.
NEW: add hookmanager on note pages
NEW: add hook 'menuLeftMenuItems' to filter the leftmenu items
NEW: Add the property "copytoclipboard" in modulebuilder
NEW: api for knowledgemanagement
NEW: API get list of legal form of business
NEW: API list of staff units
NEW: hook after rank update
NEW: printFieldListFrom hook call on several lists
NEW: Use lang selector when using a field key 'lang' in modulebuilder
NEW: add code codebar column on serial/lot structure
NEW: add date_valid and date_approve columns in the list of supplier orders
NEW: we need to be able to put more filters on deleteByParentField() function
NEW: make it easier to set the `keyword`, `keywords` and `description` attributes of an ecm file object
NEW: Experimental feature to manage user sessions in database
NEW: Hidden option API_DISABLE_COMPRESSION is now visible in API setup page.
NEW: Add hook printUnderHeaderPDFline on invoice PDF templates (can be used for example to add a barcode or more information on header of invoices).
Following changes may create regressions for some external modules, but were necessary to make Dolibarr better:
* ALL EXTERNAL MODULES THAT WERE NOT CORRECTLY DEVELOPPED WILL NOT WORK ON V15 (All modules that forgot to manage the security token field
@@ -1028,7 +1416,6 @@ NEW: introduce constant FACTUREFOURN_REUSE_NOTES_ON_CREATE_FROM
NEW: introducing new modal boxes in TakePOS
NEW: keep TakePOS terminal when login/logout
NEW: link on balance to the ledger
NEW: MAIN_EMAILCOLLECTOR_MAIL_WITHOUT_HEADER const in email collector
NEW: manage errors on update extra fields in ticket card
NEW: mass-actions for the event list view
NEW: more filter for "View change logs"

View File

@@ -32,7 +32,7 @@ Other licenses apply for some included dependencies. See [COPYRIGHT](https://git
If you have low technical skills and you're looking to install Dolibarr ERP/CRM in just a few clicks, you can use one of the packaged versions:
- [DoliWamp for Windows](https://wiki.dolibarr.org/index.php/Dolibarr_for_Windows_DoliWamp)
- [DoliWamp for Windows](https://wiki.dolibarr.org/index.php/Dolibarr_for_Windows_(DoliWamp))
- [DoliDeb for Debian](https://wiki.dolibarr.org/index.php/Dolibarr_for_Ubuntu_or_Debian)
- DoliRpm for Redhat, Fedora, OpenSuse, Mandriva or Mageia
@@ -111,7 +111,7 @@ See the [ChangeLog](https://github.com/Dolibarr/dolibarr/blob/develop/ChangeLog)
- Customers/Prospects + Contacts management
- Opportunities or Leads management
- Commercial proposals management
- Commercial proposals management (online signing)
- Customer Orders management
- Contracts/Subscription management
- Interventions management
@@ -129,11 +129,11 @@ See the [ChangeLog](https://github.com/Dolibarr/dolibarr/blob/develop/ChangeLog)
- Supplier Invoices/credit notes and payment management
- INCOTERMS
Finance / Accounting
Finance/Accounting
- Invoices / Payments
- Invoices/Payments
- Bank accounts management
- Direct debit orders management (European SEPA)
- Direct debit and Credit transfer management (European SEPA)
- Accounting management
- Donations management
- Loan management
@@ -142,14 +142,14 @@ See the [ChangeLog](https://github.com/Dolibarr/dolibarr/blob/develop/ChangeLog)
Collaboration
- Shared calendar/agenda (with ical and vcal export for third party tools integration)
- Shared calendar/agenda (with ical and vcal import/export for third party tools integration)
- Projects & Tasks management
- Ticket System
- Surveys
HR
- Employee's leave requests management
- Employee's leaves management
- Expense reports
- Recruitment management
- Timesheets
@@ -157,16 +157,14 @@ See the [ChangeLog](https://github.com/Dolibarr/dolibarr/blob/develop/ChangeLog)
### Other application/modules
- Electronic Document Management (EDM)
- Bookmarks management
- Bookmarks
- Reporting
- Data export/import
- Barcodes
- Margin calculations
- LDAP connectivity
- ClickToDial integration
- Mass emailing
- RSS integration
- Skype integration
- Social platforms linking
- Payment platforms integration (PayPal, Stripe, Paybox...)
- Email-Collector
@@ -175,13 +173,12 @@ See the [ChangeLog](https://github.com/Dolibarr/dolibarr/blob/develop/ChangeLog)
### Other general features
- Localization in most major languages
- Multi-Language Support
- Multi-Language Support (Localization in most major languages)
- Multi-Users and groups with finely grained rights
- Multi-Currency
- Multi-Company (by adding of an external module)
- Very user friendly and easy to use
- customizable Dashboard
- Customizable dashboards
- 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)
- APIs (REST, SOAP)
- Code that is easy to understand, maintain and develop (PHP with no heavy framework; trigger and hook architecture)
@@ -191,8 +188,9 @@ See the [ChangeLog](https://github.com/Dolibarr/dolibarr/blob/develop/ChangeLog)
- Canadian double taxes (federal/province) and other countries using cumulative VAT
- Tunisian tax stamp
- Argentina invoice numbering using A,B,C...
- ZATCA e-invoicing QR-Code
- Compatible with [European directives](https://europa.eu/legislation_summaries/taxation/l31057_en.htm) (2006/112/CE ... 2010/45/UE)
- Compatible with European GDPR rules
- Compatible with data privacy rules (europe GDPR, ...)
- ...
- Flexible PDF & ODT generation for invoices, proposals, orders...
- ...
@@ -244,6 +242,7 @@ Follow Dolibarr project on:
- [Facebook](https://www.facebook.com/dolibarr)
- [Twitter](https://www.twitter.com/dolibarr)
- [LinkedIn](https://www.linkedin.com/company/association-dolibarr)
- [Reddit](https://www.reddit.com/r/Dolibarr_ERP_CRM/)
- [YouTube](https://www.youtube.com/user/DolibarrERPCRM)
- [GitHub](https://github.com/Dolibarr/dolibarr)

View File

@@ -6,8 +6,9 @@ This file contains some policies about the security reports on Dolibarr ERP CRM
| Version | Supported |
| ---------- | ---------------------- |
| <= 14.0.4 | :x: |
| >= 14.0.5+ | :white_check_mark: except CSRF attacks|
| <= 15.0.0 | :x: |
| >= 15.0.1+ | :white_check_mark: except CSRF attacks|
| >= 16.0.0 | :white_check_mark: |
| >= develop | :white_check_mark: |
## Reporting a Vulnerability
@@ -17,7 +18,7 @@ Alternatively send an email to security@dolibarr.org (for everybody)
## Hunting vulnerabilities on Dolibarr
We believe that future of software is online SaaS. This means software are more and more critical and no technology is perfect. Working with skilled security researchers is crucial in identifying weaknesses in our technology.
We believe that the future of software is online SaaS. This means software are more and more critical and no technology is perfect. Working with skilled security researchers is crucial in identifying weaknesses in our technology.
If you believe you've found a security bug in our service, we are happy to work with you to resolve the issue promptly and ensure you are fairly rewarded for your discovery.
@@ -35,13 +36,13 @@ You can install the web application yourself on your own platform/server so you
## Eligibility and Responsible Disclosure
We are happy to thank everyone who submits valid reports which help us improve the security of Dolibarr however, only those that meet the following eligibility requirements will be "validated reports" (if not, we may close the report without any answer):
We are happy to thank everyone who submits valid reports which help us improve the security of Dolibarr, however only those that meet the following eligibility requirements will be "validated reports" (if not, we may close the report without any answer):
You must be the first reporter of the vulnerability (duplicate reports are closed).
You must send a clear textual description of the report along with steps to reproduce the issue, include attachments such as screenshots or proof of concept code as necessary.
You must avoid tests that could cause degradation or interruption of our service (refrain from using automated tools, and limit yourself about requests per second), that's why we recommand to install softwate on your own platform.
You must avoid tests that could cause degradation or interruption of our service (refrain from using automated tools, and limit yourself about requests per second), that's why we recommand to install software on your own platform.
You must not leak, manipulate, or destroy any user data of third parties to find your vulnerability.
@@ -56,7 +57,7 @@ ONLY vulnerabilities discovered, when the following setup on test platform is us
* The module DebugBar and ModuleBuilder must NOT be enabled (by default, these modules are not enabled. They are developer tools)
* ONLY security reports on modules provided by default and with the "stable" status are valid (troubles into "experimental", "developement" or external modules are not valid vulnerabilities).
* The root of web server must link to htdocs and the documents directory must be outside of the web server root (this is the default when using the default installer but may differs with external installer).
* The web server setup must be done so only the documents directory is in write mode. The root directory called htdocs must be readonly.
* The web server setup must be done so that only the documents directory is in write mode. The root directory called htdocs must be read-only.
* CSRF attacks are accepted but double check that you have set MAIN_SECURITY_CSRF_WITH_TOKEN to value 3.
* Ability for a high level user to edit web site pages into the CMS by including HTML or Javascript is an expected feature. Vulnerabilities into the website module are validated only if HTML or Javascript injection can be done by a non allowed user.
@@ -67,7 +68,7 @@ Scope is the web application (back office) and the APIs.
* Remote code execution (RCE)
* Local files access and manipulation (LFI, RFI, XXE, SSRF, XSPA)
* Code injections (HTML, JS, SQL, PHP, ...)
* Cross-Site Scripting (XSS), except from setup page of module "External web site" (allowing any content here, editable by admin user only, is accepted on purpose or into module "Web site" when permission to edit website content is allowed).
* Cross-Site Scripting (XSS), except from setup page of module "External web site" (allowing any content here, editable by admin user only, is accepted on purpose) and except into module "Web site" when permission to edit website content is allowed (injecting any data in this case is allowed too).
* Cross-Site Requests Forgery (CSRF) with real security impact (when using GET URLs, CSRF are qualified only for creating, updating or deleting data from pages restricted to admin users)
* Open redirect
* Broken authentication & session management

View File

@@ -13,32 +13,12 @@ It is here only to build Dolibarr packages, and those generated packages will no
There are several tools:
--------------------------------------------------------------------------------------------------
- To build full Dolibarr packages, launch the script
> Launch command perl makepack-dolibarr.pl
--------------------------------------------------------------------------------------------------
Prerequisites to build tgz, debian and rpm packages:
> apt-get install tar dpkg dpatch p7zip-full rpm zip
--------------------------------------------------------------------------------------------------
Prerequisites to build autoexe DoliWamp package:
> apt-get install wine q4wine
> Launch "wine cmd" to check a drive Z: pointing to / exists.
> Install InnoSetup
For example by running isetup-5.5.8.exe (https://www.jrsoftware.org) https://files.jrsoftware.org/is/5/
> Install WampServer into "C:\wamp64" to have Apache, PHP and MariaDB
For example by running wampserver3.2.0_x64.exe (https://www.wampserver.com).
See file build/exe/doliwamp.iss to know the doliwamp version currently setup.
> Add path to ISCC into PATH windows var:
Launch wine cmd, then regedit and add entry int HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment\PATH
> To build manually the .exe from Windows (running from makepack-dolibarr.pl script is however recommanded),
open file build/exe/doliwamp.iss and click on button "Compile".
The .exe file will be build into directory build.
See makepack-howto.txt for prerequisites.
--------------------------------------------------------------------------------------------------

View File

@@ -1,4 +1,6 @@
#!/bin/bash
# Script used by the Dockerfile.
# See README.md to know how to create a Dolibarr env with docker
usermod -u ${HOST_USER_ID} www-data
groupmod -g ${HOST_USER_ID} www-data

View File

@@ -1 +1 @@
/doliwamp.tmp.iss
/doliwamp.tmp.iss*

View File

@@ -24,15 +24,14 @@ OutputBaseFilename=__FILENAMEEXEDOLIWAMP__
;OutputManifestFile=build\doliwampbuild.log
; Define full path from which all relative path are defined
; You must modify this to put here your dolibarr root directory
;SourceDir=Z:\home\ldestailleur\git\dolibarrxxx
SourceDir=..\..\..
AppId=doliwamp
AppPublisher=NLTechno
AppPublisherURL=https://www.nltechno.com
AppPublisher=DoliCloud
AppPublisherURL=https://www.dolicloud.com
AppSupportURL=https://www.dolibarr.org
AppUpdatesURL=https://www.dolibarr.org
AppComments=DoliWamp includes Dolibarr, Apache, PHP and Mysql software.
AppCopyright=Copyright (C) 2008-2020 Laurent Destailleur (NLTechno), Fabian Rodriguez (Le Goût du Libre)
AppCopyright=Copyright (C) 2008-2022 Laurent Destailleur (DoliCloud), Fabian Rodriguez (Le Goût du Libre)
DefaultDirName=c:\dolibarr
DefaultGroupName=Dolibarr
;LicenseFile=COPYING
@@ -81,7 +80,7 @@ Name: "desktopicon"; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:
Name: "{app}\logs"
Name: "{app}\tmp"
Name: "{app}\dolibarr_documents"
Name: "{app}\bin\apache\apache2.4.41\logs"
Name: "{app}\bin\apache\apache2.4.51\logs"
[Files]
; Stop/start
@@ -99,19 +98,12 @@ Source: "build\exe\doliwamp\startdoliwamp_manual_donotuse.bat.install"; DestDir:
Source: "build\exe\doliwamp\builddemosslfiles.bat.install"; DestDir: "{app}\"; Flags: ignoreversion;
Source: "build\exe\doliwamp\UsedPort.exe"; DestDir: "{app}\"; Flags: ignoreversion;
; PhpMyAdmin, Apache, Php, Mysql
; Apache, Php, Mysql
; Put here path of Wampserver applications
; Value OK: apache 2.2.6, php 5.2.5 (5.2.11, 5.3.0 and 5.3.1 fails if php_exif, php_pgsql, php_zip is on), mysql 5.0.45
; Value OK: apache 2.2.11, php 5.3.0 (if no php_exif, php_pgsql, php_zip), mysql 5.0.45
; Value OK: apache 2.4.9, php 5.5.12, mysql 5.0.45 instead of 5.6.17 (wampserver2.5-Apache-2.4.9-Mysql-5.6.17-php5.5.12-32b.exe)
; Value OK: apache 2.4.41, php 7.3.12, mariadb10.4.10 (wampserver3.2.0_x64.exe)
Source: "C:\wamp64\apps\phpmyadmin4.9.2\*.*"; DestDir: "{app}\apps\phpmyadmin4.9.2"; Flags: ignoreversion recursesubdirs; Excludes: "config.inc.php,wampserver.conf,*.log,*_log,darkblue_orange"
;Source: "C:\Program Files\Wamp\bin\apache\apache2.4.9\*.*"; DestDir: "{app}\bin\apache\apache2.4.9"; Flags: ignoreversion recursesubdirs; Excludes: "php.ini,httpd.conf,wampserver.conf,*.log,*_log"
Source: "C:\wamp64\bin\apache\apache2.4.41\*.*"; DestDir: "{app}\bin\apache\apache2.4.41"; Flags: ignoreversion recursesubdirs; Excludes: "php.ini,httpd.conf,wampserver.conf,*.log,*_log"
;Source: "C:\Program Files\Wamp\bin\php\php5.5.12\*.*"; DestDir: "{app}\bin\php\php5.5.12"; Flags: ignoreversion recursesubdirs; Excludes: "php.ini,phpForApache.ini,wampserver.conf,*.log,*_log"
Source: "C:\wamp64\bin\php\php7.3.12\*.*"; DestDir: "{app}\bin\php\php7.3.12"; Flags: ignoreversion recursesubdirs; Excludes: "php.ini,phpForApache.ini,wampserver.conf,*.log,*_log"
;Source: "C:\Program Files\Wamp\bin\mysql\mysql5.0.45\*.*"; DestDir: "{app}\bin\mysql\mysql5.0.45"; Flags: ignoreversion recursesubdirs; Excludes: "my.ini,data\*,wampserver.conf,*.log,*_log,MySQLInstanceConfig.exe"
Source: "C:\wamp64\bin\mariadb\mariadb10.4.10\*.*"; DestDir: "{app}\bin\mariadb\mariadb10.4.10"; Flags: ignoreversion recursesubdirs; Excludes: "my.ini,data\*,wampserver.conf,*.log,*_log,MySQLInstanceConfig.exe"
; Value OK: apache 2.4.51, php 7.3.33, mariadb10.6.5 (wampserver3.2.6_x64.exe)
Source: "C:\wamp64\bin\apache\apache2.4.51\*.*"; DestDir: "{app}\bin\apache\apache2.4.51"; Flags: ignoreversion recursesubdirs; Excludes: "php.ini,httpd.conf,wampserver.conf,*.log,*_log"
Source: "C:\wamp64\bin\php\php7.3.33\*.*"; DestDir: "{app}\bin\php\php7.3.33"; Flags: ignoreversion recursesubdirs; Excludes: "php.ini,phpForApache.ini,wampserver.conf,*.log,*_log"
Source: "C:\wamp64\bin\mariadb\mariadb10.6.5\*.*"; DestDir: "{app}\bin\mariadb\mariadb10.6.5"; Flags: ignoreversion recursesubdirs; Excludes: "my.ini,data\*,wampserver.conf,*.log,*_log,MySQLInstanceConfig.exe"
; Mysql data files (does not overwrite if exists)
; We must copy them because the tool mysql_install_db.exe to generate them at first install does not return to prompt so make install hang
@@ -125,15 +117,11 @@ Source: "scripts\*.*"; DestDir: "{app}\www\dolibarr\scripts"; Flags: ignoreversi
Source: "*.*"; DestDir: "{app}\www\dolibarr"; Flags: ignoreversion; Excludes: ".gitignore,.project,CVS\*,Thumbs.db,default.properties,install.lock"
; Config files
Source: "build\exe\doliwamp\phpmyadmin.conf.install"; DestDir: "{app}\alias"; Flags: ignoreversion;
Source: "build\exe\doliwamp\dolibarr.conf.install"; DestDir: "{app}\alias"; Flags: ignoreversion;
Source: "build\exe\doliwamp\config.inc.php.install"; DestDir: "{app}\apps\phpmyadmin4.1.14"; Flags: ignoreversion;
;Source: "build\exe\doliwamp\httpd.conf.install"; DestDir: "{app}\bin\apache\apache2.4.9\conf"; Flags: ignoreversion;
Source: "build\exe\doliwamp\httpd.conf.install"; DestDir: "{app}\bin\apache\apache2.4.41\conf"; Flags: ignoreversion;
Source: "build\exe\doliwamp\httpd.conf.install"; DestDir: "{app}\bin\apache\apache2.4.51\conf"; Flags: ignoreversion;
Source: "build\exe\doliwamp\my.ini.install"; DestDir: "{app}\bin\mysql\mysql5.0.45"; Flags: ignoreversion;
Source: "build\exe\doliwamp\my.ini.install"; DestDir: "{app}\bin\mariadb\mariadb10.4.10"; Flags: ignoreversion;
;Source: "build\exe\doliwamp\php.ini.install"; DestDir: "{app}\bin\php\php5.5.12"; Flags: ignoreversion;
Source: "build\exe\doliwamp\php.ini.install"; DestDir: "{app}\bin\php\php7.3.12"; Flags: ignoreversion;
Source: "build\exe\doliwamp\my.ini.install"; DestDir: "{app}\bin\mariadb\mariadb10.6.5"; Flags: ignoreversion;
Source: "build\exe\doliwamp\php.ini.install"; DestDir: "{app}\bin\php\php7.3.33"; Flags: ignoreversion;
Source: "build\exe\doliwamp\index.php.install"; DestDir: "{app}\www"; Flags: ignoreversion;
Source: "build\exe\doliwamp\install.forced.php.install"; DestDir: "{app}\www\dolibarr\htdocs\install"; Flags: ignoreversion;
Source: "build\exe\doliwamp\openssl.conf"; DestDir: "{app}"; Flags: ignoreversion;
@@ -196,7 +184,6 @@ var destFileA: String;
var srcContents: String;
var browser: String;
var mysqlVersion: String;
var phpmyadminVersion: String;
var phpDllCopy: String;
var batFile: String;
@@ -240,13 +227,9 @@ procedure InitializeWizard();
begin
//version des applis, a modifier pour chaque version de WampServer 2
//apacheVersion := '2.4.9';
//phpVersion := '5.5.12' ;
apacheVersion := '2.4.41';
phpVersion := '7.3.12' ;
//mysqlVersion := '5.0.45';
mysqlVersion := '10.4.10';
phpmyadminVersion := '4.1.14';
apacheVersion := '2.4.51';
phpVersion := '7.3.33' ;
mysqlVersion := '10.6.5';
smtpServer := 'localhost';
apachePort := '80';
@@ -380,9 +363,9 @@ begin
// Migration of database
// datadir := pathWithSlashes+'/bin/mariadb/marradb10.4.10/data';
// exedirold := pathWithSlashes+'/bin/mariadb/marradb10.4.10/';
// exedirnew := pathWithSlashes+'/bin/mariadb/marradb10.4.10/';
// datadir := pathWithSlashes+'/bin/mariadb/mariadb10.6.5/data';
// exedirold := pathWithSlashes+'/bin/mariadb/mariadb10.6.5/';
// exedirnew := pathWithSlashes+'/bin/mariadb/mariadb10.6.5/';
// If we have a new database version, we should only copy old my.ini file into new directory
// and change only all basedir= strings to use new version. Like this, data dir is still correct.
@@ -635,27 +618,6 @@ begin
begin
//----------------------------------------------
// Create file alias phpmyadmin (always)
//----------------------------------------------
destFile := pathWithSlashes+'/alias/phpmyadmin.conf';
srcFile := pathWithSlashes+'/alias/phpmyadmin.conf.install';
if FileExists(srcFile) then
begin
LoadStringFromFile (srcFile, srcContents);
//installDir et version de phpmyadmin
StringChangeEx (srcContents, 'WAMPROOT', pathWithSlashes, True);
StringChangeEx (srcContents, 'WAMPPHPMYADMINVERSION', phpmyadminVersion, True);
SaveStringToFile(destFile,srcContents, False);
end;
DeleteFile(srcFile);
//----------------------------------------------
// Create file alias dolibarr (if not exists)
//----------------------------------------------
@@ -691,35 +653,6 @@ begin
//----------------------------------------------
// Create file configuration for phpmyadmin (if not exists)
//----------------------------------------------
destFile := pathWithSlashes+'/apps/phpmyadmin'+phpmyadminVersion+'/config.inc.php';
srcFile := pathWithSlashes+'/apps/phpmyadmin'+phpmyadminVersion+'/config.inc.php.install';
if FileExists(srcFile) then
begin
if not FileExists (destFile) then
begin
LoadStringFromFile (srcFile, srcContents);
StringChangeEx (srcContents, 'WAMPMYSQLNEWPASSWORD', mypass, True);
StringChangeEx (srcContents, 'WAMPMYSQLPORT', myport, True);
SaveStringToFile(destFile,srcContents, False);
end
else
begin
// We must replace to use format 2.4 of apache
DeleteFile(destFile);
LoadStringFromFile (srcFile, srcContents);
StringChangeEx (srcContents, 'WAMPMYSQLNEWPASSWORD', mypass, True);
StringChangeEx (srcContents, 'WAMPMYSQLPORT', myport, True);
SaveStringToFile(destFile,srcContents, False);
end;
end;
//----------------------------------------------
// Create file httpd.conf (if not exists)
//----------------------------------------------
@@ -1082,7 +1015,7 @@ Filename: "{app}\rundoliwamp.bat"; Description: {cm:LaunchNow}; Flags: shellexec
[UninstallDelete]
Type: files; Name: "{app}\*.*"
Type: files; Name: "{app}\bin\mariadb\mariadb10.4.10\*.*"
Type: files; Name: "{app}\bin\mariadb\mariadb10.6.5\*.*"
Type: filesandordirs; Name: "{app}\alias"
Type: filesandordirs; Name: "{app}\apps"
Type: filesandordirs; Name: "{app}\bin\apache"

View File

@@ -65,7 +65,7 @@ $DIR||='.'; $DIR =~ s/([^\/\\])[\\\/]+$/$1/;
$SOURCE="$DIR/..";
$DESTI="$SOURCE/build";
if ($SOURCE !~ /^\//)
if ($SOURCE !~ /^\// && $SOURCE !~ /^[a-z]:/i)
{
print "Error: Launch the script $PROG.$Extension with its full path from /.\n";
print "$PROG.$Extension aborted.\n";
@@ -76,15 +76,23 @@ if (! $ENV{"DESTIBETARC"} || ! $ENV{"DESTISTABLE"})
{
print "Error: Missing environment variables.\n";
print "You must define the environment variable DESTIBETARC and DESTISTABLE to point to the\ndirectories where you want to save the generated packages.\n";
print "$PROG.$Extension aborted.\n";
print "\n";
print "You can set them with\n";
print "On Linux:\n";
print "export DESTIBETARC='/tmp'; export DESTISTABLE='/tmp';\n";
print "On Windows:\n";
print "set DESTIBETARC=c:/tmp\n";
print "set DESTISTABLE=c:/tmp\n";
print "\n";
print "Example: DESTIBETARC='/media/HDDATA1_LD/Mes Sites/Web/Dolibarr/dolibarr.org/files/lastbuild'\n";
print "Example: DESTISTABLE='/media/HDDATA1_LD/Mes Sites/Web/Dolibarr/dolibarr.org/files/stable'\n";
print "$PROG.$Extension aborted.\n";
sleep 2;
exit 1;
}
if (! -d $ENV{"DESTIBETARC"} || ! -d $ENV{"DESTISTABLE"})
{
print "Error: Directory of environment variable DESTIBETARC or DESTISTABLE does not exist.\n";
print "Error: Directory of environment variable DESTIBETARC ($ENV{'DESTIBETARC'}) or DESTISTABLE ($ENV{'DESTISTABLE'}) does not exist.\n";
print "$PROG.$Extension aborted.\n";
sleep 2;
exit 1;
@@ -94,7 +102,7 @@ if (! -d $ENV{"DESTIBETARC"} || ! -d $ENV{"DESTISTABLE"})
# --------------
if ("$^O" =~ /linux/i || (-d "/etc" && -d "/var" && "$^O" !~ /cygwin/i)) { $OS='linux'; $CR=''; }
elsif (-d "/etc" && -d "/Users") { $OS='macosx'; $CR=''; }
elsif ("$^O" =~ /cygwin/i || "$^O" =~ /win32/i) { $OS='windows'; $CR="\r"; }
elsif ("$^O" =~ /cygwin/i || "$^O" =~ /win32/i || "$^O" =~ /msys/i) { $OS='windows'; $CR="\r"; }
if (! $OS) {
print "Error: Can't detect your OS.\n";
print "Can't continue.\n";
@@ -390,7 +398,7 @@ if ($nboftargetok) {
$olddir=getcwd();
chdir("$SOURCE");
print "Clean $SOURCE/htdocs\n";
print "Clean $SOURCE/htdocs/includes/autoload.php\n";
$ret=`rm -f $SOURCE/htdocs/includes/autoload.php`;
$ret=`git ls-files . --exclude-standard --others`;
@@ -499,8 +507,9 @@ if ($nboftargetok) {
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/cache.manifest`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/conf/conf.php`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/conf/conf.php.mysql`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/conf/conf.php.nova*`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/conf/conf.php.old`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/conf/conf.php.postgres`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/conf/conf.php.pgsql`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/conf/conf*sav*`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/install/mssql/README`;
@@ -582,9 +591,7 @@ if ($nboftargetok) {
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/teclib*`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/timesheet*`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/webmail*`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/themes/oblyon*`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/themes/allscreen*`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/theme/common/octicons/LICENSE`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/theme/common/fontawesome-5/svgs`;
# Removed other test files
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/public/test`;
@@ -625,7 +632,7 @@ if ($nboftargetok) {
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-*`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/tecnickcom/tcpdf/fonts/ae_fonts_*`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/tecnickcom/tcpdf/fonts/utils`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/tecnickcom/tcpdf/tools`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/tecnickcom/tcpdf/tools`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/vendor`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/webmozart`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/autoload.php`;
@@ -1075,28 +1082,52 @@ if ($nboftargetok) {
print "Remove target $NEWDESTI/$FILENAMEEXEDOLIWAMP.exe...\n";
unlink "$NEWDESTI/$FILENAMEEXEDOLIWAMP.exe";
print "Check that in your Wine setup, you have created a Z: drive that point to your / directory.\n";
if ($OS eq 'windows') {
print "Check that ISCC.exe is in your PATH.\n";
} else {
print "Check that in your Wine setup, you have created a Z: drive that point to your / directory.\n";
}
$SOURCEBACK=$SOURCE;
$SOURCEBACK =~ s/\//\\/g;
print "Prepare file \"$SOURCEBACK\\build\\exe\\doliwamp\\doliwamp.tmp.iss from \"$SOURCEBACK\\build\\exe\\doliwamp\\doliwamp.iss\"\n";
$ret=`cat "$SOURCE/build/exe/doliwamp/doliwamp.iss" | sed -e 's/__FILENAMEEXEDOLIWAMP__/$FILENAMEEXEDOLIWAMP/g' > "$SOURCE/build/exe/doliwamp/doliwamp.tmp.iss"`;
print "Prepare file \"$SOURCEBACK\\build\\exe\\doliwamp\\doliwamp.tmp.iss\" from \"$SOURCEBACK\\build\\exe\\doliwamp\\doliwamp.iss\"\n";
#$ret=`cat "$SOURCE/build/exe/doliwamp/doliwamp.iss" | sed -e 's/__FILENAMEEXEDOLIWAMP__/$FILENAMEEXEDOLIWAMP/g' > "$SOURCE/build/exe/doliwamp/doliwamp.tmp.iss"`;
open(IN, '<' . $SOURCE."/build/exe/doliwamp/doliwamp.iss") or die $!;
open(OUT, '>' . "$SOURCE/build/exe/doliwamp/doliwamp.tmp.iss") or die $!;
while(<IN>)
{
$_ =~ s/__FILENAMEEXEDOLIWAMP__/$FILENAMEEXEDOLIWAMP/g;
print OUT $_;
}
close(IN);
close(OUT);
print "Compil exe $FILENAMEEXEDOLIWAMP.exe file from iss file \"$SOURCEBACK\\build\\exe\\doliwamp\\doliwamp.tmp.iss\"\n";
$cmd= "wine ISCC.exe \"Z:$SOURCEBACK\\build\\exe\\doliwamp\\doliwamp.tmp.iss\"";
print "Compil exe $FILENAMEEXEDOLIWAMP.exe file from iss file \"$SOURCEBACK\\build\\exe\\doliwamp\\doliwamp.tmp.iss\" on OS $OS\n";
if ($OS eq 'windows') {
$cmd= "ISCC.exe \"$SOURCEBACK\\build\\exe\\doliwamp\\doliwamp.tmp.iss\"";
} else {
#$cmd= "wine ISCC.exe \"Z:$SOURCEBACK\\build\\exe\\doliwamp\\doliwamp.tmp.iss\"";
}
print "$cmd\n";
$ret= `$cmd`;
#print "$ret\n";
print "ret=$ret\n";
# Move to final dir
print "Move \"$SOURCE\\build\\$FILENAMEEXEDOLIWAMP.exe\" to $NEWDESTI/$FILENAMEEXEDOLIWAMP.exe\n";
rename("$SOURCE/build/$FILENAMEEXEDOLIWAMP.exe","$NEWDESTI/$FILENAMEEXEDOLIWAMP.exe");
print "Move $SOURCE/build/$FILENAMEEXEDOLIWAMP.exe to $NEWDESTI/$FILENAMEEXEDOLIWAMP.exe\n";
$ret=`mv "$SOURCE/build/$FILENAMEEXEDOLIWAMP.exe" "$NEWDESTI/$FILENAMEEXEDOLIWAMP.exe"`;
use File::Copy;
#$ret=`mv "$SOURCE/build/$FILENAMEEXEDOLIWAMP.exe" "$NEWDESTI/$FILENAMEEXEDOLIWAMP.exe"`;
$ret=move("$SOURCE/build/$FILENAMEEXEDOLIWAMP.exe", "$NEWDESTI/$FILENAMEEXEDOLIWAMP.exe");
print "Remove tmp file $SOURCE/build/exe/doliwamp/doliwamp.tmp.iss\n";
$ret=`rm "$SOURCE/build/exe/doliwamp/doliwamp.tmp.iss"`;
#$ret=`rm "$SOURCE/build/exe/doliwamp/doliwamp.tmp.iss"`;
$ret=unlink("$SOURCE/build/exe/doliwamp/doliwamp.tmp.iss");
next;
}
@@ -1243,7 +1274,7 @@ if ($nboftargetok) {
print "\n----- Summary -----\n";
foreach my $target (sort keys %CHOOSEDTARGET) {
if ($target eq '-CHKSUM') { print "Checksum was generated"; next; }
if ($target eq '-CHKSUM') { print "Checksum was generated\n"; next; }
if ($CHOOSEDTARGET{$target} < 0) {
print "Package $target not built (bad requirement).\n";
} else {

View File

@@ -1,19 +1,47 @@
----- Dolibarr Makepack How To -----
This documentation describe steps to build a BETA or RELEASE versions
of Dolibarr. There is a chapter for BETA version and a chapter for
RELEASE version.
of Dolibarr. There is a chapter for BETA version and a chapter for RELEASE version.
***** Prerequisites For Linux *****
Prerequisites to build tgz, debian and rpm packages:
> apt-get install perl tar dpkg dpatch p7zip-full rpm zip php-cli
Prerequisites to build autoexe DoliWamp package:
> apt-get install wine q4wine
> Launch "wine cmd" to check a drive Z: pointing to / exists.
> Install InnoSetup
For example by running isetup-5.5.8.exe (https://www.jrsoftware.org) https://files.jrsoftware.org/is/5/
> Install WampServer into "C:\wamp64" to have Apache, PHP and MariaDB
For example by running wampserver3.2.0_x64.exe (https://www.wampserver.com).
See file build/exe/doliwamp.iss to know the doliwamp version currently setup.
> Add path to ISCC into PATH windows var:
Launch wine cmd, then regedit and add entry int HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment\PATH
> To build manually the .exe from Windows (running from makepack-dolibarr.pl script is however recommanded),
open file build/exe/doliwamp.iss and click on button "Compile".
The .exe file will be build into directory build.
***** Prerequisites For Windows *****
Install Perl
Install WampServer-3.2.*-64.exe
isetup-5.5.8.exe
***** Actions to do a BETA *****
This files describe steps made by Dolibarr packaging team to make a
beta version of Dolibarr, step by step.
- Check all files are commited.
- Update version/info in ChangeLog.
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"
- Update version/info in ChangeLog, for this you can:
To generate a changelog of a major new version x.y.0 (from a repo on branch develop), 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 a repo on branch 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
Recopy the content of the output file into the file ChangeLog.
- Note: To know number of lines changes: git diff --shortstat A B
- Update version number with x.y.z-w in file htdocs/filefunc.inc.php
- Commit all changes.
- Run makepack-dolibarr.pl to generate all packages.
@@ -24,7 +52,6 @@ To generate a changelog of a maintenance version x.y.z, you can do "cd ~/git/dol
(/home/dolibarr/wwwroot/files/lastbuild).
- Post a news on dolibarr.org/dolibarr.fr + social networks
- Send mail on mailings-list
***** Actions to do a RELEASE *****
@@ -32,12 +59,13 @@ This files describe steps made by Dolibarr packaging team to make a
complete release of Dolibarr, step by step.
- Check all files are commited.
- Update version/info in ChangeLog.
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"
- Update version/info in ChangeLog, for this you can:
To generate a changelog of a major new version x.y.0 (from a repo on branch develop), 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 a repo pn branch x.y), 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
Recopy the content of the output file into the file ChangeLog.
- Note: To know the number of lines changes: git diff --shortstat A B
- Update version number with x.y.z in file htdocs/filefunc.inc.php
- Commit all changes.
- Run makepack-dolibarr.pl to generate all packages.
@@ -52,4 +80,3 @@ To generate a changelog of a maintenance version x.y.z, you can do "cd ~/git/dol
on server to point to new files (used by some web sites).
- Post a news on dolibarr.org/dolibarr.fr + social networks
- Send mail on mailings-list

View File

@@ -1,6 +1,7 @@
README (English)
##################################################
Building PAD files
http://pad.asp-software.org/padgen.php
##################################################
This directory contains files and docs used to build

View File

@@ -30,7 +30,7 @@ return "Regis Houssin";
# script_dolibarr_versions()
sub script_dolibarr_versions
{
return ( "12.0.3", "11.0.5", "10.0.7", "9.0.4", "8.0.6", "7.0.5" );
return ( "14.0.5", "13.0.5", "12.0.5", "11.0.5", "10.0.7", "9.0.4", "8.0.6", "7.0.5" );
}
sub script_dolibarr_release
@@ -400,6 +400,8 @@ sub script_dolibarr_check_latest
{
local ($ver) = @_;
local @vers = &osdn_package_versions("dolibarr",
$ver >= 14.0 ? "dolibarr\\-(12\\.0\\.[0-9\\.]+)\\.tgz" :
$ver >= 13.0 ? "dolibarr\\-(12\\.0\\.[0-9\\.]+)\\.tgz" :
$ver >= 12.0 ? "dolibarr\\-(12\\.0\\.[0-9\\.]+)\\.tgz" :
$ver >= 11.0 ? "dolibarr\\-(11\\.0\\.[0-9\\.]+)\\.tgz" :
$ver >= 10.0 ? "dolibarr\\-(10\\.0\\.[0-9\\.]+)\\.tgz" :

View File

@@ -227,6 +227,7 @@ done >>%{name}.lang
%_datadir/dolibarr/htdocs/ticket
%_datadir/dolibarr/htdocs/user
%_datadir/dolibarr/htdocs/variants
%_datadir/dolibarr/htdocs/webhook
%_datadir/dolibarr/htdocs/webservices
%_datadir/dolibarr/htdocs/website
%_datadir/dolibarr/htdocs/workstation

View File

@@ -54,7 +54,7 @@ BuildRequires: desktop-file-utils
Group: Applications/Productivity
Requires: apache-base, apache-mod_php, php-cgi, php-cli, php-bz2, php-gd, php-ldap, php-imap, php-mysqli, php-openssl, fonts-ttf-dejavu
Requires: mysql, mysql-client
%else%_datadir/dolibarr/htdocs/datapolicy
%else
%if 0%{?suse_version}
# Voir http://en.opensuse.org/openSUSE:Packaging_Conventions_RPM_Macros
Group: Productivity/Office/Management
@@ -67,7 +67,7 @@ Requires: httpd, php >= 5.3.0, php-cli, php-gd, php-ldap, php-imap, php-mbstring
Requires: mysql-server, mysql
Requires: php-mysqli >= 4.1.0
%endif
%endif%_datadir/dolibarr/htdocs/eventorganization
%endif
%endif
@@ -125,7 +125,7 @@ cui hai bisogno ed essere facile da usare.
%if 0%{?sles_version}
%{__rm} -rf $RPM_BUILD_ROOT
%{__mkdir} $RPM_BUILD_ROOT%_datadir/dolibarr/htdocs/datapolicy
%{__mkdir} $RPM_BUILD_ROOT%
%{__mkdir} $RPM_BUILD_ROOT%{_sysconfdir}
%{__mkdir} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
%else
@@ -308,6 +308,7 @@ done >>%{name}.lang
%_datadir/dolibarr/htdocs/ticket
%_datadir/dolibarr/htdocs/user
%_datadir/dolibarr/htdocs/variants
%_datadir/dolibarr/htdocs/webhook
%_datadir/dolibarr/htdocs/webservices
%_datadir/dolibarr/htdocs/website
%_datadir/dolibarr/htdocs/workstation

View File

@@ -224,6 +224,7 @@ done >>%{name}.lang
%_datadir/dolibarr/htdocs/ticket
%_datadir/dolibarr/htdocs/user
%_datadir/dolibarr/htdocs/variants
%_datadir/dolibarr/htdocs/webhook
%_datadir/dolibarr/htdocs/webservices
%_datadir/dolibarr/htdocs/website
%_datadir/dolibarr/htdocs/workstation

View File

@@ -66,7 +66,7 @@ ed essere facile da usare.
Programmo web, progettato per poter fornire solo ciò di
cui hai bisogno ed essere facile da usare.
%_datadir/dolibarr/htdocs/webhook
#---- prep
%prep
@@ -235,6 +235,7 @@ done >>%{name}.lang
%_datadir/dolibarr/htdocs/ticket
%_datadir/dolibarr/htdocs/user
%_datadir/dolibarr/htdocs/variants
%_datadir/dolibarr/htdocs/webhook
%_datadir/dolibarr/htdocs/webservices
%_datadir/dolibarr/htdocs/website
%_datadir/dolibarr/htdocs/workstation

View File

@@ -28,7 +28,7 @@
"ext-curl" : "*",
"ckeditor/ckeditor" : "4.12.1",
"mike42/escpos-php" : "2.2",
"mobiledetect/mobiledetectlib" : "2.8.34",
"mobiledetect/mobiledetectlib" : "2.8.39",
"phpoffice/phpexcel" : "1.8.2",
"restler/framework" : "3.0.0-RC6",
"tecnickcom/tcpdf" : "6.3.2",
@@ -59,4 +59,4 @@
"ext-zip" : "ODT, Excel and file compression support",
"ext-xml" : "Excel support"
}
}
}

2349
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -111,6 +111,10 @@ with
// DOL CHANGE If we keep this, the image is not visible on pages after the first one.
//var_dump($file.' '.(!@TCPDF_STATIC::file_exists($file)));
//return false;
$tfile = str_replace(' ', '%20', $file);
if (@TCPDF_STATIC::file_exists($tfile)) {
$file = $tfile;
}
}
* Replace in tcpdf.php
@@ -271,6 +275,13 @@ RESTLER:
with
$loaders = array_unique(static::$rogueLoaders, SORT_REGULAR);
* Replace CommentParser.php line 423
elseif (count($value) && is_numeric($value[0]))
with
elseif (count($value) && isset($value[0]) && is_numeric($value[0]))
+With swagger 2 provided into /explorer:

View File

@@ -5,4 +5,4 @@ This directory contains samples of code to use Dolibarr business classes to buil
external interfaces that need to read/update data from/into Dolibarr.
You can also have a look at the Dolibarr doxygen doc that describes all files and classes:
http://www.dolibarr.org/html_doxygen/index.html
https://doxygen.dolibarr.org/

View File

@@ -15,7 +15,7 @@
"npm": ">=5.6.0"
},
"dependencies": {
"zapier-platform-core": "11.0.1"
"zapier-platform-core": "11.3.1"
},
"devDependencies": {
"mocha": "^5.2.0",

View File

@@ -174,7 +174,7 @@ if [ -s "$mydir/initdemopostsql.sql" ]; then
echo A file initdemopostsql.sql was found, we execute it.
mysql -P$port $base < "$mydir/initdemopostsql.sql"
else
echo No file initdemopostsql.sql found, we extra sql action done.
echo No file initdemopostsql.sql found, so no extra sql action done.
fi

File diff suppressed because one or more lines are too long

View File

@@ -2,13 +2,13 @@
Gestion escompte:
Sur une facture de 120 € TTC :
707xxx 100 € HT
44571x 20 € TVA
411xxx 120 € TTC
707xxx 100 € HT
44571x 20 € TVA
411xxx 120 € TTC
Le client règle rapidement et on lui accorde un escompte de 3% (120 € * 3% = 3.6 € TTC), on aura donc :
665000 3,00 € HT
44571x 0,60 € TVA
411xxx 3.60 € TVA
665000 3,00 € HT
44571x 0,60 € TVA
411xxx 3,60 € TTC
Et ça marche à linverse avec un fournisseur sauf que lon est en 775000 au lieu de 665000 pour escompte obtenus.

View File

@@ -1,129 +0,0 @@
Barcode EAN 13
FR
==
Signification des chiffres.
- 2 chiffres pour le code pays ou code systeme
- 5 chiffres pour l'identificateur de societe
- 5 chiffres pour l'identificateur d'article
- 1 chiffre pour la somme de controle
Cette regle subit de nombreuses entorses pour ameliorer l'usage des chiffres disponibles.
Voici la liste des codes pays ou systeme :
EN
==
Meaning of the numbers.
- 2 digits for the country code or system code
- 5 digits for the company identifier
- 5 digits for item identifier
- 1 digit for checksum
This rule has been twisted many times to improve the use of the available numbers.
Here is the list of country codes or system:
List
====
00 <20> 13 UCC (Etats-Unis et Canada)
20 <20> 29 Codification interne en magasin
30 <20> 37 GENCOD-EAN France
380 BCCI (Bulgarie)
383 SANA (Slovenie)
385 CRO-EAN (Croatie)
387 EAN-BIH (Bosnie-Herzegovine)
400 <20> 440 CCG (Allemagne)
45 + 49 Distribution Code Center <20> DCC (Japon)
460 <20> 469 UNISCAN - EAN Russie (Federation de Russie)
471 CAN (Taiwan)
474 EAN Estonie
475 EAN Lettonie
476 EAN Azerba<62> djan
477 EAN Lituanie
478 EAN Ouzbekistan
479 EAN Sri Lanka
480 PANC (Philippines)
481 EAN Bielorussie
482 EAN Ukraine
484 EAN Moldavie
485 EAN Armenie
486 EAN Georgie
487 EAN Kazakhstan
489 HKANA (Hong Kong)
50 E Centre UK
520 HELLCAN-EAN HELLAS (Grece)
528 EAN Liban
529 EAN Chypre
531 EAN-MAC (FYR Mac<61>donie)
535 EAN Malte
539 EAN Irlande
54 ICODIF/EAN Belgique. Luxembourg
560 CODIPOR (Portugal)
569 EAN Islande
57 EAN Danemark
590 EAN Pologne
594 EAN Roumanie
599 H.A.P.M.H. (Hongrie)
600 - 601 EAN Afrique du Sud
609 EAN Ile Maurice
611 EAN Maroc
613 EAN Algerie
619 Tunicode (Tunisie)
621 EAN Syrie
622 EAN Egypte
625 EAN Jordanie
626 EAN Iran
628 EAN Arabie Saoudite
64 EAN Finlande
690 - 693 Article Numbering Centre of China - ANCC (Chine)
70 EAN Norge (Norvege)
729 Israeli Bar Code Association <20> EAN Israel
73 EAN Suede
740 EAN Guatemala
741 EAN El Salvador
742 ICCC (Honduras)
743 EAN Nicaragua
744 EAN Costa Rica Panama
746 746 EAN Republique Dominicaine
750 AMECE (Mexique)
759 EAN Venezuela
76 EAN (Schweiz, Suisse, Svizzera)
770 IAC (Colombie)
773 EAN Uruguay
775 APC - EAN Peru (Perou)
777 EAN Bolivie
779 CODIGO - EAN Argentine
780 EAN Chili
784 EAN Paraguay
786 ECOP (Equateur)
789 EAN Bresil
80 <20> 83 INDICOD (Italie)
84 AECOC (Espagne)
850 Camera de Comercio de la Republica de Cuba (Cuba)
858 EAN Slovaquie
859 EAN Republique Tcheque
860 EAN YU (Yougoslavie)
867 EAN DPR Korea (Coree du Nord)
869 Union of Chambers of Commerce of Turkey (Turquie)
87 EAN Nederland (Hollande)
880 EAN Korea (Coree du Sud)
885 EAN Thailande
888 SANC (Singapour)
890 EAN Inde
893 EAN Vietnam
899 EAN Indonesie
90 - 91 EAN Autriche
93 EAN Australie
94 EAN Nouvelle Zelande
955 Malaysian Article Numbering Council (MANC) - Malaisie
977 Publications sirielles (ISSN)
978 - 979 Livres (ISBN)
980 Refus de remboursement
981 - 982 Coupons (monnaie courante)
99 Coupons

View File

@@ -1,8 +1,12 @@
# File of all ISO-4217 currencies codes
# http://en.wikipedia.org/wiki/ISO_4217
# http://fx.sauder.ubc.ca/currency_table.html for symbols for 2 letter code
#
# Code,Name,Nb decimals
# https://en.wikipedia.org/wiki/ISO_4217
# https://en.wikipedia.org/wiki/Currency_symbol for symbols for 2 letter code
#
# Code, Currency Name, Nb decimals
AED,UAE Dirham,2
AFN,Afghanistan Afghani,2
ALL,Albanian Lek,2

View File

@@ -1,3 +1,8 @@
QR-Code = Quick Response Code - is a two-dimensional / 2D- / Matrix-Barcode
ISO/IEC 18004
List of QR Code format we found on some invoices
------------------------------------------------
@@ -15,3 +20,10 @@ https://www.pwc.com/m1/en/services/tax/me-tax-legal-news/2021/saudi-arabia-guide
https://www.tecklenborgh.com/post/ksa-zatca-publishes-guide-on-how-to-develop-a-fatoora-compliant-qr-code
Method to encode/decode ZATCA string is available in test/phpunit/BarcodeTest.php
* FOR QR-Bill in switzerland
----------------------------
Syntax of QR Code https://www.swiss-qr-invoice.org/fr/
Syntax of complentary field named "structured information of invoice S1": https://www.swiss-qr-invoice.org/downloads/qr-bill-s1-syntax-fr.pdf
To test/validate: https://www.swiss-qr-invoice.org/validator/

View File

@@ -0,0 +1,129 @@
Barcode EAN 13
FR
==
Signification des chiffres.
- 2 chiffres pour le code pays ou code systeme
- 5 chiffres pour l'identificateur de societe
- 5 chiffres pour l'identificateur d'article
- 1 chiffre pour la somme de controle
Cette regle subit de nombreuses entorses pour ameliorer l'usage des chiffres disponibles.
Voici la liste des codes pays ou systeme :
EN
==
Meaning of the numbers:
- first 2-3 digits for the country code or system code
- 5 digits for the company identifier
- 5 digits for item identifier
- 1 digit for checksum
This rule has been twisted many times to improve the use of the available numbers.
Here is the list of country codes or system:
List
====
00 - 13 UCC (U.S.A / États-Unis & Canada)
20 - 29 Flag for internal numbering / Codification interne en magasin
30 - 37 GENCOD-EAN France
380 BCCI (Bulgaria)
383 SANA (Slovenia)
385 CRO-EAN (Croatia)
387 EAN-BIH (Bosnia-Herzegovina)
400-440 CCG (DE/Germany/Allemagne)
45 + 49 Distribution Code Center - DCC (Japan)
460-469 UNISCAN - EAN Russia (Federation de Russie)
471 CAN Taiwan
474 EAN Estonia
475 EAN Latvia
476 EAN Azerbaijan
477 EAN Lithuania
478 EAN Uzbekistan
479 EAN Sri Lanka
480 PANC Philippines
481 EAN Belarus
482 EAN Ukraine
484 EAN Moldova
485 EAN Armenia
486 EAN Georgia
487 EAN Kazakhstan
489 HKANA Hong Kong
50 E Centre UK - United Kingdom
520 HELLCAN-EAN HELLAS - Greece
528 EAN Lebanon
529 EAN Cyprus
531 EAN-MAC (FYR Macedonia)
535 EAN Malta
539 EAN Ireland
54 ICODIF/EAN Belgium & Luxembourg
560 CODIPOR (Portugal)
569 EAN Iceland/Islande
57 EAN Denmark
590 EAN Poland
594 EAN Romania
599 H.A.P.M.H. (Hungary)
600-601 EAN South Africa
609 EAN Mauritius Island
611 EAN Morocco
613 EAN Algeria
619 Tunicode (Tunisia)
621 EAN Syria
622 EAN Egypt
625 EAN Jordan/Jordanie
626 EAN Iran
628 EAN Saudi Arabia
64 EAN Finland
690-693 ANCC - Article Numbering Centre of China
70 EAN Norge (Norvege)
729 Israeli Bar Code Association - EAN Israel
73 EAN Suede
740 EAN Guatemala
741 EAN El Salvador
742 ICCC (Honduras)
743 EAN Nicaragua
744 EAN Costa Rica Panama
746 746 EAN Republique Dominicaine
750 AMECE (Mexique)
759 EAN Venezuela
76 EAN (Schweiz, Suisse, Svizzera)
770 IAC (Colombie)
773 EAN Uruguay
775 APC - EAN Peru (Perou)
777 EAN Bolivie
779 CODIGO - EAN Argentine
780 EAN Chili
784 EAN Paraguay
786 ECOP (Equateur)
789 EAN Bresil
80 - 83 INDICOD (Italy)
84 AECOC (Espagne)
850 Camera de Comercio de la Republica de Cuba (Cuba)
858 EAN Slovaquie
859 EAN Republique Tcheque
860 EAN YU (Yougoslavie)
867 EAN DPR Korea (Coree du Nord)
869 Union of Chambers of Commerce of Turkey (Turquie)
87 EAN Nederland (Hollande)
880 EAN Korea (Coree du Sud)
885 EAN Thailande
888 SANC (Singapour)
890 EAN Inde
893 EAN Vietnam
899 EAN Indonesie
90 - 91 EAN Autriche
93 EAN Australie
94 EAN Nouvelle Zelande
955 Malaysian Article Numbering Council (MANC) - Malaisie
977 Publications sirielles (ISSN)
978 - 979 Livres (ISBN)
980 Refus de remboursement
981 - 982 Coupons (monnaie courante)
99 Coupons

View File

@@ -1,62 +1,93 @@
<VirtualHost *:80>
#php_admin_value sendmail_path "/usr/sbin/sendmail -t -i"
#php_admin_value mail.force_extra_parameters "-f postmaster@mydomain.com"
php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f postmaster@mydomain.com"
php_admin_value open_basedir /tmp/:/home/../htdocs
#php_admin_value sendmail_path "/usr/sbin/sendmail -t -i"
#php_admin_value mail.force_extra_parameters "-f postmaster@mydomain.com"
php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f postmaster@mydomain.com"
php_admin_value open_basedir /tmp/:/home/.../htdocs:/home/.../dolibarr_documents:
ServerName myvirtualalias
ServerAlias myvirtualalias
UseCanonicalName On
KeepAlive On
KeepAliveTimeout 5
MaxKeepAliveRequests 20
AddDefaultCharset UTF-8
DocumentRoot "/home/.../htdocs"
<Directory /home/.../htdocs/>
AllowOverride None
Options -Indexes -MultiViews +FollowSymLinks -ExecCGI
Require all granted
ServerName myvirtualalias
ServerAlias myvirtualalias
# To restrict access by a HTTP basic auth
#AuthType Basic
#AuthName "Authenticate to backoffice"
#AuthUserFile /etc/apache2/.htpasswd
#require valid-user
</Directory>
# Leaving /public and /api, /dav, .well_known but also wrappers for document and viewimage accessible to everyone
<Directory /home/admin/wwwroot/dolibarr/htdocs/public/>
AuthType None
Require all granted
Satisfy any
</Directory>
<Directory /home/admin/wwwroot/dolibarr/htdocs/api/>
AuthType None
Require all granted
Satisfy any
</Directory>
<Directory /home/admin/wwwroot/dolibarr/htdocs/dav/>
AuthType None
Require all granted
Satisfy any
</Directory>
<Directory /home/admin/wwwroot/dolibarr/htdocs/.well-known/>
AuthType None
Require all granted
Satisfy any
</Directory>
<Files ~ "(document\.php|viewimage\.php|\.js\.php|\.json\.php|\.js|\.css\.php|\.css|\.gif|\.png|\.svg|\.woff2|favicon\.ico)$">
AuthType None
Require all granted
Satisfy any
</Files>
UseCanonicalName On
AddDefaultCharset UTF-8
DocumentRoot "/home/.../htdocs"
<Directory /home/.../htdocs/>
AllowOverride None
Options -Indexes -MultiViews +FollowSymLinks -ExecCGI
Require all granted
</Directory>
<Directory "/home/../htdocs/cache">
Deny from all
RemoveHandler .phtml .php .php3 .php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml
AddType application/x-httpd-php-source .phtml .php .php3 .php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml
</Directory>
ErrorLog /var/log/apache2/myvirtualalias_error_log
TransferLog /var/log/apache2/myvirtualalias_access_log
# Compress returned resources of type php pages, text file export, css and javascript
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/x-javascript
AddType text/javascript .jgz
AddEncoding gzip .jgz
ExpiresActive On
ExpiresByType image/x-icon A2592000
ExpiresByType image/gif A2592000
ExpiresByType image/png A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType text/css A2592000
ExpiresByType text/javascript A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType application/javascript A2592000
SSLEngine On
# A self-signed (snakeoil) certificate can be created by installing
# the ssl-cert package. See
# /usr/share/doc/apache2.2-common/README.Debian.gz for more info.
# If both key and certificate are stored in the same file, only the
# SSLCertificateFile directive is needed.
SSLCertificateFile /etc/letsencrypt/live/www.mydomain.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/www.mydomain.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/www.mydomain.com/chain.pem
#RewriteEngine on
#RewriteCond %{SERVER_PORT} ^80$
#RewriteRule ^(.*)$ https://%{SERVER_NAME}$1 [L,R]
ErrorLog /var/log/apache2/myvirtualalias_error_log
TransferLog /var/log/apache2/myvirtualalias_access_log
# Compress returned resources of type php pages, text file export, css and javascript
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/x-javascript
AddType text/javascript .jgz
AddEncoding gzip .jgz
ExpiresActive On
ExpiresByType image/x-icon A2592000
ExpiresByType image/gif A2592000
ExpiresByType image/png A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType text/css A2592000
ExpiresByType text/javascript A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType application/javascript A2592000
SSLEngine On
# A self-signed (snakeoil) certificate can be created by installing
# the ssl-cert package. See
# /usr/share/doc/apache2.2-common/README.Debian.gz for more info.
# If both key and certificate are stored in the same file, only the
# SSLCertificateFile directive is needed.
SSLCertificateFile /etc/letsencrypt/live/www.mydomain.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/www.mydomain.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/www.mydomain.com/chain.pem
#RewriteEngine on
#RewriteCond %{SERVER_PORT} ^80$
#RewriteRule ^(.*)$ https://%{SERVER_NAME}$1 [L,R]
</VirtualHost>

View File

@@ -7,7 +7,7 @@
# To run the fix manually: cd ~/git/dolibarr; phpcbf -s -p -d memory_limit=-1 --extensions=php --colors --tab-width=4 --standard=dev/setup/codesniffer/ruleset.xml --encoding=utf-8 --runtime-set ignore_warnings_on_exit true "fileordir"
PROJECT=`php -r "echo dirname(dirname(dirname(realpath('$0'))));"`
STAGED_FILES_CMD=`git diff --cached --name-only --diff-filter=ACMR HEAD | grep \\\\.php`
STAGED_FILES_CMD=`git diff --cached --name-only --diff-filter=ACMR HEAD | grep -v '/includes/'| grep \\\\.php`
DIRPHPCS=""
AUTOFIX=1

View File

@@ -10,6 +10,7 @@
# Syntax
if [ "x$1" != "xlist" -a "x$1" != "xfix" ]
then
echo "Detect .sh and .spec files that does not contains any tab inside"
echo "Usage: fixnotabfiles.sh [list|fix]"
fi

View File

@@ -17,14 +17,14 @@ fi
# To detec
if [ "x$1" = "xlist" ]
then
find . \( -iname "functions" -o -iname "*.md" -o -iname "*.html" -o -iname "*.htm" -o -iname "*.php" -o -iname "*.sh" -o -iname "*.cml" -o -iname "*.css" -o -iname "*.js" -o -iname "*.lang" -o -iname "*.pl" -o -iname "*.sql" -o -iname "*.txt" -o -iname "*.xml" -o -iname "*.pml" \) -exec file "{}" + | grep -v 'custom\/' | grep -v 'documents\/website' | grep -v 'documents\/medias' | grep -v 'documents\/sellyoursaas' | grep CRLF
# find . \( -iname "*.md" -o -iname "*.html" -o -iname "*.htm" -o -iname "*.php" -o -iname "*.sh" -o -iname "*.cml" -o -iname "*.css" -o -iname "*.js" -o -iname "*.lang" -o -iname "*.pl" -o -iname "*.sql" -o -iname "*.txt" -o -iname "*.xml" \) -exec file "{}" + | grep -v 'custom\/' | grep -v 'documents\/website' | grep -v 'documents\/medias' | grep -v 'documents\/sellyoursaas' | grep -v 'htdocs\/includes' | grep CRLF
find . \( -iname "functions" -o -iname "*.md" -o -iname "*.html" -o -iname "*.htm" -o -iname "*.php" -o -iname "*.sh" -o -iname "*.cml" -o -iname "*.css" -o -iname "*.js" -o -iname "*.lang" -o -iname "*.pl" -o -iname "*.sql" -o -iname "*.txt" -o -iname "*.xml" -o -iname "*.pml" \) -exec file "{}" + | grep -v "CRLF" | grep -v 'custom\/' | grep -v 'documents\/website' | grep -v 'documents\/medias' | grep -v 'documents\/sellyoursaas' | grep CRLF
# find . \( -iname "*.md" -o -iname "*.html" -o -iname "*.htm" -o -iname "*.php" -o -iname "*.sh" -o -iname "*.cml" -o -iname "*.css" -o -iname "*.js" -o -iname "*.lang" -o -iname "*.pl" -o -iname "*.sql" -o -iname "*.txt" -o -iname "*.xml" \) -exec file "{}" + | grep -v "CRLF" | grep -v 'custom\/' | grep -v 'documents\/website' | grep -v 'documents\/medias' | grep -v 'documents\/sellyoursaas' | grep -v 'htdocs\/includes' | grep CRLF
fi
# To convert
if [ "x$1" = "xfix" ]
then
for fic in `find . \( -iname "functions" -o -iname "*.md" -o -iname "*.html" -o -iname "*.htm" -o -iname "*.php" -o -iname "*.sh" -o -iname "*.cml" -o -iname "*.css" -o -iname "*.js" -o -iname "*.lang" -o -iname "*.pl" -o -iname "*.sql" -o -iname "*.txt" -o -iname "*.xml" -o -iname "*.pml" \) -exec file "{}" + | grep -v 'custom\/' | grep -v 'documents\/website' | grep -v 'documents\/medias' | grep -v 'documents\/sellyoursaas' | grep CRLF | awk -F':' '{ print $1 }' `
for fic in `find . \( -iname "functions" -o -iname "*.md" -o -iname "*.html" -o -iname "*.htm" -o -iname "*.php" -o -iname "*.sh" -o -iname "*.cml" -o -iname "*.css" -o -iname "*.js" -o -iname "*.lang" -o -iname "*.pl" -o -iname "*.sql" -o -iname "*.txt" -o -iname "*.xml" -o -iname "*.pml" \) -exec file "{}" + | grep -v "CRLF" | grep -v 'custom\/' | grep -v 'documents\/website' | grep -v 'documents\/medias' | grep -v 'documents\/sellyoursaas' | grep CRLF | awk -F':' '{ print $1 }' `
do
echo "Fix file $fic"
dos2unix "$fic"

View File

@@ -24,6 +24,7 @@ fi
if [ "x$1" = "xfix" ]
then
find ./htdocs -type f -iname "*.php" -exec chmod a-x {} \;
find ./htdocs/install/ -type d -exec chmod ug+rw {} \;
chmod a+x ./scripts/*/*.php
chmod a+x ./scripts/*/*.sh
chmod g-w ./scripts/*/*.php

View File

@@ -39,13 +39,14 @@ optimize_image()
max_input_size=$(expr $max_input_size + $input_file_size)
if [ "${1##*.}" = "png" ]; then
#optipng -o1 -clobber -quiet $1 -out $2.firstpass
optipng -o1 -quiet $1 -out $2.firstpass
pngcrush -q -rem alla -reduce $2.firstpass $2 >/dev/null
rm -fr $2.firstpass
#optipng -o1 -clobber -quiet "$1" -out "$2.firstpass"
echo optipng -o1 -quiet "$1" -out "$2.firstpass"
optipng -o1 -quiet "$1" -out "$2.firstpass"
pngcrush -q -rem alla -reduce "$2.firstpass" "$2" >/dev/null
rm -fr "$2.firstpass"
fi
if [ "${1##*.}" = "jpg" -o "${1##*.}" = "jpeg" ]; then
jpegtran -copy none -progressive $1 > $2
jpegtran -copy none -progressive "$1" > $2
fi
output_file_size=$(stat -c%s "$2")
@@ -120,8 +121,8 @@ main()
# Search of all jpg/jpeg/png in $INPUT
# We remove images from $OUTPUT if $OUTPUT is a subdirectory of $INPUT
echo "Scan $INPUT to find images"
IMAGES=$(find $INPUT -regextype posix-extended -regex '.*\.(jpg|jpeg|png)' | grep -v $OUTPUT)
echo "Scan $INPUT to find images with find $INPUT -regextype posix-extended -regex '.*\.(jpg|jpeg|png)' | grep -v '/gource/' | grep -v '/includes/' | grep -v '/custom/' | grep -v $OUTPUT"
IMAGES=$(find $INPUT -regextype posix-extended -regex '.*\.(jpg|jpeg|png)' | grep -v '/gource/' | grep -v '/includes/' | grep -v '/custom/' | grep -v '/documents/' | grep -v $OUTPUT)
if [ "$QUIET" == "0" ]; then
echo --- Optimizing $INPUT ---
@@ -135,11 +136,11 @@ main()
printf '%*.*s' 0 $((linelength - ${#filename} - ${#sDone} )) "$pad"
fi
optimize_image $CURRENT_IMAGE $OUTPUT/$filename
optimize_image "$CURRENT_IMAGE" "$OUTPUT/$filename"
# Replace file
if [[ "$INPLACE" == "1" ]]; then
mv $OUTPUT/$filename $CURRENT_IMAGE
mv "$OUTPUT/$filename" "$CURRENT_IMAGE"
fi
if [ "$QUIET" == "0" ]; then

View File

@@ -1,7 +1,7 @@
<?php
/*spl_autoload_register(function ($class_name) {
var_dump('class='.$class_name);
//var_dump('class='.$class_name);
require $class_name;
});
*/

View File

@@ -350,6 +350,8 @@ if ($resql) {
</script>';
}
$newcardbutton = '';
print '<form method="POST" id="searchFormList" action="'.$_SERVER["PHP_SELF"].'">';
if ($optioncss != '') {
print '<input type="hidden" name="optioncss" value="'.$optioncss.'">';

View File

@@ -39,7 +39,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php';
if (!empty($conf->accounting->enabled)) {
if (isModEnabled('accounting')) {
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php';
}
@@ -126,7 +126,7 @@ $tabrowid[31] = "";
// Condition to show dictionary in setup page
$tabcond = array();
$tabcond[31] = !empty($conf->accounting->enabled);
$tabcond[31] = isModEnabled('accounting');
// List of help for fields
$tabhelp = array();
@@ -185,11 +185,6 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) {
$ok = 0;
setEventMessages($langs->transnoentities('ErrorCodeCantContainZero'), null, 'errors');
}
/*if (!is_numeric($_POST['code'])) // disabled, code may not be in numeric base
{
$ok = 0;
$msg .= $langs->transnoentities('ErrorFieldFormat', $langs->transnoentities('Code')).'<br>';
}*/
}
if (GETPOSTISSET("country") && (GETPOST("country") == '0') && ($id != 2)) {
$ok = 0;
@@ -228,17 +223,17 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) {
$i = 0;
foreach ($listfieldinsert as $f => $value) {
if ($value == 'price' || preg_match('/^amount/i', $value) || $value == 'taux') {
$_POST[$listfieldvalue[$i]] = price2num($_POST[$listfieldvalue[$i]], 'MU');
$_POST[$listfieldvalue[$i]] = price2num(GETPOST($listfieldvalue[$i]), 'MU');
} elseif ($value == 'entity') {
$_POST[$listfieldvalue[$i]] = $conf->entity;
}
if ($i) {
$sql .= ",";
}
if ($_POST[$listfieldvalue[$i]] == '') {
if (GETPOST($listfieldvalue[$i]) == '') {
$sql .= "null";
} else {
$sql .= "'".$db->escape($_POST[$listfieldvalue[$i]])."'";
$sql .= "'".$db->escape(GETPOST($listfieldvalue[$i]))."'";
}
$i++;
}
@@ -276,7 +271,7 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) {
$i = 0;
foreach ($listfieldmodify as $field) {
if ($field == 'price' || preg_match('/^amount/i', $field) || $field == 'taux') {
$_POST[$listfieldvalue[$i]] = price2num($_POST[$listfieldvalue[$i]], 'MU');
$_POST[$listfieldvalue[$i]] = price2num(GETPOST($listfieldvalue[$i]), 'MU');
} elseif ($field == 'entity') {
$_POST[$listfieldvalue[$i]] = $conf->entity;
}
@@ -284,10 +279,10 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) {
$sql .= ",";
}
$sql .= $field."=";
if ($_POST[$listfieldvalue[$i]] == '') {
if (GETPOST($listfieldvalue[$i]) == '') {
$sql .= "null";
} else {
$sql .= "'".$db->escape($_POST[$listfieldvalue[$i]])."'";
$sql .= "'".$db->escape(GETPOST($listfieldvalue[$i]))."'";
}
$i++;
}
@@ -679,7 +674,7 @@ if ($id) {
// Can an entry be erased or disabled ?
$iserasable = 1; $canbedisabled = 1; $canbemodified = 1; // true by default
$url = $_SERVER["PHP_SELF"].'?'.($page ? 'page='.$page.'&' : '').'sortfield='.$sortfield.'&sortorder='.$sortorder.'&rowid='.(!empty($obj->rowid) ? $obj->rowid : (!empty($obj->code) ? $obj->code : '')).'&code='.(!empty($obj->code) ?urlencode($obj->code) : '');
$url = $_SERVER["PHP_SELF"].'?token='.newToken().($page ? '&page='.$page : '').'&sortfield='.$sortfield.'&sortorder='.$sortorder.'&rowid='.(!empty($obj->rowid) ? $obj->rowid : (!empty($obj->code) ? $obj->code : '')).'&code='.(!empty($obj->code) ?urlencode($obj->code) : '');
if ($param) {
$url .= '&'.$param;
}

View File

@@ -168,10 +168,13 @@ if ($action == 'add' && $user->rights->accounting->chartofaccount) {
$object->labelshort = GETPOST('labelshort', 'alpha');
$result = $object->update($user);
if ($result > 0) {
$urltogo = $backtopage ? $backtopage : ($_SERVER["PHP_SELF"] . "?id=" . $id);
header("Location: " . $urltogo);
exit();
} elseif ($result == -2) {
setEventMessages($langs->trans("ErrorAccountNumberAlreadyExists", $object->account_number), null, 'errors');
} else {
setEventMessages($object->error, null, 'errors');
}
@@ -300,7 +303,7 @@ if ($action == 'create') {
// Edit mode
if ($action == 'update') {
print dol_get_fiche_head($head, 'card', $langs->trans('AccountAccounting'), 0, 'billr');
print dol_get_fiche_head($head, 'card', $langs->trans('AccountAccounting'), 0, 'accounting_account');
print '<form name="update" action="'.$_SERVER["PHP_SELF"].'" method="POST">'."\n";
print '<input type="hidden" name="token" value="'.newToken().'">';
@@ -368,7 +371,7 @@ if ($action == 'create') {
// View mode
$linkback = '<a href="'.DOL_URL_ROOT.'/accountancy/admin/account.php?restore_lastsearch_values=1">'.$langs->trans("BackToList").'</a>';
print dol_get_fiche_head($head, 'card', $langs->trans('AccountAccounting'), -1, 'billr');
print dol_get_fiche_head($head, 'card', $langs->trans('AccountAccounting'), -1, 'accounting_account');
dol_banner_tab($object, 'ref', $linkback, 1, 'account_number', 'ref');

View File

@@ -1,6 +1,6 @@
<?php
/* Copyright (C) 2016 Jamal Elbaz <jamelbaz@gmail.pro>
* Copyright (C) 2017 Alexandre Spangaro <aspangaro@open-dsi.fr>
/* Copyright (C) 2016 Jamal Elbaz <jamelbaz@gmail.pro>
* Copyright (C) 2017-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
*
* 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
@@ -124,7 +124,8 @@ if (!empty($cat_id)) {
$arraykeyvalue = array();
foreach ($accountingcategory->lines_cptbk as $key => $val) {
$arraykeyvalue[length_accountg($val->numero_compte)] = length_accountg($val->numero_compte).' ('.$val->label_compte.($val->doc_ref ? ' '.$val->doc_ref : '').')';
$doc_ref = !empty($val->doc_ref) ? $val->doc_ref : '';
$arraykeyvalue[length_accountg($val->numero_compte)] = length_accountg($val->numero_compte) . ' - ' . $val->label_compte . ($doc_ref ? ' '.$doc_ref : '');
}
if (is_array($accountingcategory->lines_cptbk) && count($accountingcategory->lines_cptbk) > 0) {

View File

@@ -111,7 +111,7 @@ $tabrowid[32] = "";
// Condition to show dictionary in setup page
$tabcond = array();
$tabcond[32] = !empty($conf->accounting->enabled);
$tabcond[32] = isModEnabled('accounting');
// List of help for fields
$tabhelp = array();
@@ -148,10 +148,10 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) {
if ($value == 'formula' && !GETPOST('formula')) {
continue;
}
if ($value == 'range_account' && empty($_POST['range_account'])) {
if ($value == 'range_account' && !GETPOST('range_account')) {
continue;
}
if (($value == 'country' || $value == 'country_id') && (!empty($_POST['country_id']))) {
if (($value == 'country' || $value == 'country_id') && GETPOST('country_id')) {
continue;
}
if (!GETPOSTISSET($value) || GETPOST($value) == '') {
@@ -195,17 +195,6 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) {
setEventMessages($langs->transnoentities('ErrorFieldMustBeANumeric', $langs->transnoentities("Position")), null, 'errors');
}
// Clean some parameters
if ($_POST["accountancy_code"] <= 0) {
$_POST["accountancy_code"] = ''; // If empty, we force to null
}
if ($_POST["accountancy_code_sell"] <= 0) {
$_POST["accountancy_code_sell"] = ''; // If empty, we force to null
}
if ($_POST["accountancy_code_buy"] <= 0) {
$_POST["accountancy_code_buy"] = ''; // If empty, we force to null
}
// Si verif ok et action add, on ajoute la ligne
if ($ok && GETPOST('actionadd', 'alpha')) {
if ($tabrowid[$id]) {
@@ -243,7 +232,7 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) {
if ($i) {
$sql .= ",";
}
if ($_POST[$listfieldvalue[$i]] == '' && !$listfieldvalue[$i] == 'formula') {
if (GETPOST($listfieldvalue[$i]) == '' && !$listfieldvalue[$i] == 'formula') {
$sql .= "null"; // For vat, we want/accept code = ''
} else {
$sql .= "'".$db->escape(GETPOST($listfieldvalue[$i]))."'";
@@ -283,8 +272,8 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) {
}
$i = 0;
foreach ($listfieldmodify as $field) {
if ($field == 'fk_country' && $_POST['country'] > 0) {
$_POST[$listfieldvalue[$i]] = $_POST['country'];
if ($field == 'fk_country' && GETPOST('country') > 0) {
$_POST[$listfieldvalue[$i]] = GETPOST('country');
} elseif ($field == 'entity') {
$_POST[$listfieldvalue[$i]] = $conf->entity;
}
@@ -292,10 +281,10 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) {
$sql .= ",";
}
$sql .= $field."=";
if ($_POST[$listfieldvalue[$i]] == '' && !$listfieldvalue[$i] == 'range_account') {
if (GETPOST($listfieldvalue[$i]) == '' && !$listfieldvalue[$i] == 'range_account') {
$sql .= "null"; // For range_account, we want/accept code = ''
} else {
$sql .= "'".$db->escape($_POST[$listfieldvalue[$i]])."'";
$sql .= "'".$db->escape(GETPOST($listfieldvalue[$i]))."'";
}
$i++;
}
@@ -886,7 +875,7 @@ function fieldListAccountingCategories($fieldlist, $obj = '', $tabname = '', $co
$formadmin = new FormAdmin($db);
$formcompany = new FormCompany($db);
if (!empty($conf->accounting->enabled)) {
if (isModEnabled('accounting')) {
$formaccounting = new FormAccounting($db);
}

View File

@@ -81,31 +81,31 @@ $list_account[] = '---Others---';
$list_account[] = 'ACCOUNTING_VAT_BUY_ACCOUNT';
$list_account[] = 'ACCOUNTING_VAT_SOLD_ACCOUNT';
$list_account[] = 'ACCOUNTING_VAT_PAY_ACCOUNT';
if ($conf->banque->enabled) {
if (isModEnabled('banque')) {
$list_account[] = 'ACCOUNTING_ACCOUNT_TRANSFER_CASH';
}
if ($conf->don->enabled) {
if (isModEnabled('don')) {
$list_account[] = 'DONATION_ACCOUNTINGACCOUNT';
}
if ($conf->adherent->enabled) {
if (isModEnabled('adherent')) {
$list_account[] = 'ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT';
}
if ($conf->loan->enabled) {
if (isModEnabled('loan')) {
$list_account[] = 'LOAN_ACCOUNTING_ACCOUNT_CAPITAL';
$list_account[] = 'LOAN_ACCOUNTING_ACCOUNT_INTEREST';
$list_account[] = 'LOAN_ACCOUNTING_ACCOUNT_INSURANCE';
}
if ($conf->societe->enabled) {
$list_account[] = 'ACCOUNTING_ACCOUNT_CUSTOMER_DEPOSIT';
}
$list_account[] = 'ACCOUNTING_ACCOUNT_SUSPENSE';
if (isModEnabled('societe')) {
$list_account[] = '---Deposits---';
}
/*
* Actions
*/
if ($action == 'update') {
$error = 0;
// Process $list_account_main
foreach ($list_account_main as $constname) {
$constvalue = GETPOST($constname, 'alpha');
@@ -113,7 +113,7 @@ if ($action == 'update') {
$error++;
}
}
// Process $list_account
foreach ($list_account as $constname) {
$reg = array();
if (preg_match('/---(.*)---/', $constname, $reg)) { // This is a separator
@@ -127,6 +127,13 @@ if ($action == 'update') {
}
}
$constname = 'ACCOUNTING_ACCOUNT_CUSTOMER_DEPOSIT';
$constvalue = GETPOST($constname, 'int');
if (!dolibarr_set_const($db, $constname, $constvalue, 'chaine', 0, '', $conf->entity)) {
$error++;
}
if (!$error) {
setEventMessages($langs->trans("SetupSaved"), null, 'mesgs');
} else {
@@ -134,6 +141,20 @@ if ($action == 'update') {
}
}
if ($action == 'setACCOUNTING_ACCOUNT_CUSTOMER_USE_AUXILIARY_ON_DEPOSIT') {
$setDisableAuxiliaryAccountOnCustomerDeposit = GETPOST('value', 'int');
$res = dolibarr_set_const($db, "ACCOUNTING_ACCOUNT_CUSTOMER_USE_AUXILIARY_ON_DEPOSIT", $setDisableAuxiliaryAccountOnCustomerDeposit, 'yesno', 0, '', $conf->entity);
if (!($res > 0)) {
$error++;
}
if (!$error) {
setEventMessages($langs->trans("SetupSaved"), null, 'mesgs');
} else {
setEventMessages($langs->trans("Error"), null, 'mesgs');
}
}
/*
* View
@@ -180,7 +201,8 @@ foreach ($list_account_main as $key) {
print '</td>';
// Value
print '<td class="right">'; // Do not force class=right, or it align also the content of the select box
print $formaccounting->select_account($conf->global->$key, $key, 1, '', 1, 1, 'minwidth100 maxwidth300 maxwidthonsmartphone', 'accountsmain');
$key_value = getDolGlobalString($key);
print $formaccounting->select_account($key_value, $key, 1, '', 1, 1, 'minwidth100 maxwidth300 maxwidthonsmartphone', 'accountsmain');
print '</td>';
print '</tr>';
}
@@ -232,10 +254,37 @@ foreach ($list_account as $key) {
}
// Customer deposit account
print '<tr class="oddeven value">';
// Param
print '<td>';
print img_picto('', 'bill', 'class="pictofixedwidth"') . $langs->trans('ACCOUNTING_ACCOUNT_CUSTOMER_DEPOSIT');
print '</td>';
// Value
print '<td class="right">'; // Do not force class=right, or it align also the content of the select box
print $formaccounting->select_account(getDolGlobalString('ACCOUNTING_ACCOUNT_CUSTOMER_DEPOSIT'), 'ACCOUNTING_ACCOUNT_CUSTOMER_DEPOSIT', 1, '', 1, 1, 'minwidth100 maxwidth300 maxwidthonsmartphone', 'accounts');
print '</td>';
print '</tr>';
if (isModEnabled('societe') && getDolGlobalString('ACCOUNTING_ACCOUNT_CUSTOMER_DEPOSIT') && getDolGlobalString('ACCOUNTING_ACCOUNT_CUSTOMER_DEPOSIT') != '-1') {
print '<tr class="oddeven">';
print '<td>' . img_picto('', 'bill', 'class="pictofixedwidth"') . $langs->trans("UseAuxiliaryAccountOnCustomerDeposit") . '</td>';
if (getDolGlobalInt('ACCOUNTING_ACCOUNT_CUSTOMER_USE_AUXILIARY_ON_DEPOSIT')) {
print '<td class="right"><a class="reposition" href="' . $_SERVER['PHP_SELF'] . '?token=' . newToken() . '&action=setACCOUNTING_ACCOUNT_CUSTOMER_USE_AUXILIARY_ON_DEPOSIT&value=0">';
print img_picto($langs->trans("Activated"), 'switch_on', '', false, 0, 0, '', 'warning');
print '</a></td>';
} else {
print '<td class="right"><a class="reposition" href="' . $_SERVER['PHP_SELF'] . '?token=' . newToken() . '&action=setACCOUNTING_ACCOUNT_CUSTOMER_USE_AUXILIARY_ON_DEPOSIT&value=1">';
print img_picto($langs->trans("Disabled"), 'switch_off');
print '</a></td>';
}
print '</tr>';
}
print "</table>\n";
print "</div>\n";
print '<div class="center"><input type="submit" class="button button-edit" name="button" value="'.$langs->trans('Modify').'"></div>';
print '<div class="center"><input type="submit" class="button button-edit" name="button" value="'.$langs->trans('Save').'"></div>';
print '</form>';

View File

@@ -1,11 +1,11 @@
<?php
/* Copyright (C) 2013-2014 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2017 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2014 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2014 Marcos García <marcosgdf@gmail.com>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>
* Copyright (C) 2015 Jean-François Ferry <jfefe@aternatik.fr>
* Copyright (C) 2017-2018 Frédéric France <frederic.france@netlogic.fr>
/* Copyright (C) 2013-2014 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2014 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2014 Marcos García <marcosgdf@gmail.com>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>
* Copyright (C) 2015 Jean-François Ferry <jfefe@aternatik.fr>
* Copyright (C) 2017-2018 Frédéric France <frederic.france@netlogic.fr>
*
* 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
@@ -24,7 +24,7 @@
/**
* \file htdocs/accountancy/admin/export.php
* \ingroup Accountancy (Double entries)
* \brief Setup page to configure accounting expert module
* \brief Setup page to configure accounting export module
*/
require '../../main.inc.php';
@@ -47,7 +47,8 @@ $main_option = array(
'ACCOUNTING_EXPORT_PREFIX_SPEC',
);
$configuration = AccountancyExport::getTypeConfig();
$accountancyexport = new AccountancyExport($db);
$configuration = $accountancyexport->getTypeConfig();
$listparam = $configuration['param'];
@@ -117,7 +118,7 @@ if ($action == 'update') {
if (!$error) {
// reload
$configuration = AccountancyExport::getTypeConfig();
$configuration = $accountancyexport->getTypeConfig();
$listparam = $configuration['param'];
setEventMessages($langs->trans("SetupSaved"), null, 'mesgs');
} else {
@@ -210,7 +211,7 @@ if ($num) {
// Value
print '<td>';
print '<input type="text" size="20" id="'.$key.'" name="'.$key.'" value="'.$conf->global->$key.'">';
print '<input type="text" size="20" id="'.$key.'" name="'.$key.'" value="'.getDolGlobalString($key).'">';
print '</td></tr>';
}
}
@@ -237,8 +238,8 @@ if (!$conf->use_javascript_ajax) {
print "</td>";
} else {
print '<td>';
$listmodelcsv = AccountancyExport::getType();
print $form->selectarray("ACCOUNTING_EXPORT_MODELCSV", $listmodelcsv, $conf->global->ACCOUNTING_EXPORT_MODELCSV, 0, 0, 0, '', 0, 0, 0, '', '', 1);
$listmodelcsv = $accountancyexport->getType();
print $form->selectarray("ACCOUNTING_EXPORT_MODELCSV", $listmodelcsv, getDolGlobalString('ACCOUNTING_EXPORT_MODELCSV'), 0, 0, 0, '', 0, 0, 0, '', '', 1);
print '</td>';
}

View File

@@ -358,7 +358,7 @@ foreach ($list as $key) {
print '<td>'.$label.'</td>';
// Value
print '<td class="right">';
print '<input type="text" class="maxwidth100" id="'.$key.'" name="'.$key.'" value="'.$conf->global->$key.'">';
print '<input type="text" class="maxwidth50 right" id="'.$key.'" name="'.$key.'" value="'.getDolGlobalString($key).'">';
print '</td>';
print '</tr>';
@@ -409,12 +409,12 @@ foreach ($list_binding as $key) {
// Value
print '<td class="right">';
if ($key == 'ACCOUNTING_DATE_START_BINDING') {
print $form->selectDate(($conf->global->$key ? $db->idate($conf->global->$key) : -1), $key, 0, 0, 1);
print $form->selectDate((!empty($conf->global->$key) ? $db->idate($conf->global->$key) : -1), $key, 0, 0, 1);
} elseif ($key == 'ACCOUNTING_DEFAULT_PERIOD_ON_TRANSFER') {
$array = array(0=>$langs->trans("PreviousMonth"), 1=>$langs->trans("CurrentMonth"), 2=>$langs->trans("Fiscalyear"));
print $form->selectarray($key, $array, (isset($conf->global->ACCOUNTING_DEFAULT_PERIOD_ON_TRANSFER) ? $conf->global->ACCOUNTING_DEFAULT_PERIOD_ON_TRANSFER : 0));
} else {
print '<input type="text" class="maxwidth100" id="'.$key.'" name="'.$key.'" value="'.$conf->global->$key.'">';
print '<input type="text" class="maxwidth100" id="'.$key.'" name="'.$key.'" value="'.getDolGlobalString($key).'">';
}
print '</td>';

View File

@@ -1,5 +1,5 @@
<?php
/* Copyright (C) 2017 Alexandre Spangaro <aspangaro@open-dsi.fr>
/* Copyright (C) 2017-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
*
* 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
@@ -76,6 +76,8 @@ if (empty($sortorder)) {
$error = 0;
$search_country_id = GETPOST('search_country_id', 'int');
// Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context
$hookmanager->initHooks(array('admin'));
@@ -121,7 +123,7 @@ $tabrowid[35] = "";
// Condition to show dictionary in setup page
$tabcond = array();
$tabcond[35] = !empty($conf->accounting->enabled);
$tabcond[35] = isModEnabled('accounting');
// List of help for fields
$tabhelp = array();

View File

@@ -1,10 +1,10 @@
<?php
/* Copyright (C) 2013-2014 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2021 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2014 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>
* Copyright (C) 2015 Ari Elbaz (elarifr) <github@accedinfo.com>
* Copyright (C) 2021 Gauthier VERDOL <gauthier.verdol@atm-consulting.fr>
* Copyright (C) 2013-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2014 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>
* Copyright (C) 2015 Ari Elbaz (elarifr) <github@accedinfo.com>
* Copyright (C) 2021 Gauthier VERDOL <gauthier.verdol@atm-consulting.fr>
*
* 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
@@ -34,12 +34,15 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php';
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
if (isModEnabled('categorie')) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
}
// Load translation files required by the page
$langs->loadLangs(array("companies", "compta", "accountancy", "products"));
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if (empty($user->rights->accounting->bind->write)) {
@@ -59,6 +62,8 @@ $account_number_sell = GETPOST('account_number_sell');
$changeaccount = GETPOST('changeaccount', 'array');
$changeaccount_buy = GETPOST('changeaccount_buy', 'array');
$changeaccount_sell = GETPOST('changeaccount_sell', 'array');
$searchCategoryProductOperator = (GETPOST('search_category_product_operator', 'int') ? GETPOST('search_category_product_operator', 'int') : 0);
$searchCategoryProductList = GETPOST('search_category_product_list', 'array');
$search_ref = GETPOST('search_ref', 'alpha');
$search_label = GETPOST('search_label', 'alpha');
$search_desc = GETPOST('search_desc', 'alpha');
@@ -144,6 +149,8 @@ if ($reshook < 0) {
// Purge search criteria
if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) { // All test are required to be compatible with all browsers
$searchCategoryProductOperator = 0;
$searchCategoryProductList = array();
$search_ref = '';
$search_label = '';
$search_desc = '';
@@ -283,7 +290,16 @@ $aacompta_prodsell = getDolGlobalString('ACCOUNTING_PRODUCT_SOLD_ACCOUN
$aacompta_prodsell_intra = getDolGlobalString('ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT', $langs->trans("CodeNotDef"));
$aacompta_prodsell_export = getDolGlobalString('ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT', $langs->trans("CodeNotDef"));
llxHeader('', $langs->trans("ProductsBinding"));
$title = $langs->trans("ProductsBinding");
$helpurl = '';
$paramsCat = '';
foreach ($searchCategoryProductList as $searchCategoryProduct) {
$paramsCat .= "&search_category_product_list[]=".urlencode($searchCategoryProduct);
}
llxHeader('', $title, $helpurl, '', 0, 0, array(), array(), $paramsCat, '');
$pcgverid = getDolGlobalString('CHARTOFACCOUNTS');
$pcgvercode = dol_getIdFromCode($db, $pcgverid, 'accounting_system', 'rowid', 'pcg_version');
@@ -308,6 +324,9 @@ if (!empty($conf->global->MAIN_PRODUCT_PERENTITY_SHARED)) {
} else {
$sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "accounting_account as aa ON aa.account_number = p." . $accountancy_field_name . " AND aa.fk_pcg_version = '" . $db->escape($pcgvercode) . "'";
}
if (!empty($searchCategoryProductList)) {
$sql .= ' LEFT JOIN '.MAIN_DB_PREFIX."categorie_product as cp ON p.rowid = cp.fk_product"; // We'll need this table joined to the select in order to filter by categ
}
$sql .= ' WHERE p.entity IN ('.getEntity('product').')';
if (strlen(trim($search_current_account))) {
$sql .= natural_search((empty($conf->global->MAIN_PRODUCT_PERENTITY_SHARED) ? "p." : "ppe.") . $accountancy_field_name, $search_current_account);
@@ -318,6 +337,30 @@ if ($search_current_account_valid == 'withoutvalidaccount') {
if ($search_current_account_valid == 'withvalidaccount') {
$sql .= " AND aa.account_number IS NOT NULL";
}
$searchCategoryProductSqlList = array();
if ($searchCategoryProductOperator == 1) {
foreach ($searchCategoryProductList as $searchCategoryProduct) {
if (intval($searchCategoryProduct) == -2) {
$searchCategoryProductSqlList[] = "cp.fk_categorie IS NULL";
} elseif (intval($searchCategoryProduct) > 0) {
$searchCategoryProductSqlList[] = "cp.fk_categorie = ".$db->escape($searchCategoryProduct);
}
}
if (!empty($searchCategoryProductSqlList)) {
$sql .= " AND (".implode(' OR ', $searchCategoryProductSqlList).")";
}
} else {
foreach ($searchCategoryProductList as $searchCategoryProduct) {
if (intval($searchCategoryProduct) == -2) {
$searchCategoryProductSqlList[] = "cp.fk_categorie IS NULL";
} elseif (intval($searchCategoryProduct) > 0) {
$searchCategoryProductSqlList[] = "p.rowid IN (SELECT fk_product FROM ".MAIN_DB_PREFIX."categorie_product WHERE fk_categorie = ".((int) $searchCategoryProduct).")";
}
}
if (!empty($searchCategoryProductSqlList)) {
$sql .= " AND (".implode(' AND ', $searchCategoryProductSqlList).")";
}
}
// Add search filter like
if (strlen(trim($search_ref))) {
$sql .= natural_search("p.ref", $search_ref);
@@ -338,12 +381,22 @@ if ($search_onpurchase != '' && $search_onpurchase != '-1') {
$sql .= natural_search('p.tobuy', $search_onpurchase, 1);
}
$sql .= " GROUP BY p.rowid, p.ref, p.label, p.description, p.tosell, p.tobuy, p.tva_tx,";
$sql .= " p.fk_product_type,";
$sql .= ' p.tms,';
$sql .= ' aa.rowid,';
if (empty($conf->global->MAIN_PRODUCT_PERENTITY_SHARED)) {
$sql .= " p.accountancy_code_sell, p.accountancy_code_sell_intra, p.accountancy_code_sell_export, p.accountancy_code_buy, p.accountancy_code_buy_intra, p.accountancy_code_buy_export";
} else {
$sql .= " ppe.accountancy_code_sell, ppe.accountancy_code_sell_intra, ppe.accountancy_code_sell_export, ppe.accountancy_code_buy, ppe.accountancy_code_buy_intra, ppe.accountancy_code_buy_export";
}
$sql .= $db->order($sortfield, $sortorder);
$nbtotalofrecords = '';
if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) {
$result = $db->query($sql);
$nbtotalofrecords = $db->num_rows($result);
$resql = $db->query($sql);
$nbtotalofrecords = $db->num_rows($resql);
if (($page * $limit) > $nbtotalofrecords) { // if total resultset is smaller then paging size (filtering), goto and load page 0
$page = 0;
$offset = 0;
@@ -353,9 +406,9 @@ if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) {
$sql .= $db->plimit($limit + 1, $offset);
dol_syslog("/accountancy/admin/productaccount.php", LOG_DEBUG);
$result = $db->query($sql);
if ($result) {
$num = $db->num_rows($result);
$resql = $db->query($sql);
if ($resql) {
$num = $db->num_rows($resql);
$i = 0;
$param = '';
@@ -365,11 +418,17 @@ if ($result) {
if ($limit > 0 && $limit != $conf->liste_limit) {
$param .= '&limit='.urlencode($limit);
}
if ($searchCategoryProductOperator == 1) {
$param .= "&search_category_product_operator=".urlencode($searchCategoryProductOperator);
}
foreach ($searchCategoryProductList as $searchCategoryProduct) {
$param .= "&search_category_product_list[]=".urlencode($searchCategoryProduct);
}
if ($search_ref > 0) {
$param .= "&search_desc=".urlencode($search_ref);
$param .= "&search_ref=".urlencode($search_ref);
}
if ($search_label > 0) {
$param .= "&search_desc=".urlencode($search_label);
$param .= "&search_label=".urlencode($search_label);
}
if ($search_desc > 0) {
$param .= "&search_desc=".urlencode($search_desc);
@@ -461,6 +520,40 @@ if ($result) {
print $form->formconfirm($_SERVER["PHP_SELF"], $langs->trans("ConfirmPreselectAccount"), $langs->trans("ConfirmPreselectAccountQuestion", count($chk_prod)), "confirm_set_default_account", $formquestion, 1, 0, 200, 500, 1);
}
// Filter on categories
$moreforfilter = '';
if (isModEnabled('categorie') && $user->rights->categorie->lire) {
$moreforfilter .= '<div class="divsearchfield">';
$moreforfilter .= img_picto($langs->trans('Categories'), 'category', 'class="pictofixedwidth"');
$categoriesProductArr = $form->select_all_categories(Categorie::TYPE_PRODUCT, '', '', 64, 0, 1);
$categoriesProductArr[-2] = '- '.$langs->trans('NotCategorized').' -';
$moreforfilter .= Form::multiselectarray('search_category_product_list', $categoriesProductArr, $searchCategoryProductList, 0, 0, 'minwidth300');
$moreforfilter .= ' <input type="checkbox" class="valignmiddle" name="search_category_product_operator" value="1"'.($searchCategoryProductOperator == 1 ? ' checked="checked"' : '').'/> <span class="none">'.$langs->trans('UseOrOperatorForCategories').'</span>';
$moreforfilter .= '</div>';
}
//Show/hide child products. Hidden by default
if (isModEnabled('variants') && !empty($conf->global->PRODUIT_ATTRIBUTES_HIDECHILD)) {
$moreforfilter .= '<div class="divsearchfield">';
$moreforfilter .= '<input type="checkbox" id="search_show_childproducts" name="search_show_childproducts"'.($show_childproducts ? 'checked="checked"' : '').'>';
$moreforfilter .= ' <label for="search_show_childproducts">'.$langs->trans('ShowChildProducts').'</label>';
$moreforfilter .= '</div>';
}
$parameters = array();
$reshook = $hookmanager->executeHooks('printFieldPreListTitle', $parameters); // Note that $action and $object may have been modified by hook
if (empty($reshook)) {
$moreforfilter .= $hookmanager->resPrint;
} else {
$moreforfilter = $hookmanager->resPrint;
}
if ($moreforfilter) {
print '<div class="liste_titre liste_titre_bydiv centpercent">';
print $moreforfilter;
print '</div>';
}
print '<div class="div-table-responsive">';
print '<table class="liste '.($moreforfilter ? "listwithfilterbefore" : "").'">';
@@ -515,7 +608,7 @@ if ($result) {
$i = 0;
while ($i < min($num, $limit)) {
$obj = $db->fetch_object($result);
$obj = $db->fetch_object($resql);
// Ref produit as link
$product_static->ref = $obj->ref;
@@ -798,7 +891,7 @@ if ($result) {
print '</form>';
$db->free($result);
$db->free($resql);
} else {
dol_print_error($db);
}

View File

@@ -1,7 +1,7 @@
<?php
/* Copyright (C) 2016 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2016 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2016-2021 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2016-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2018 Frédéric France <frederic.france@netlogic.fr>
*
* This program is free software; you can redistribute it and/or modify
@@ -40,6 +40,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
$langs->loadLangs(array("accountancy", "compta"));
$action = GETPOST('action', 'aZ09');
$optioncss = GETPOST('optioncss', 'alpha');
$contextpage = GETPOST('contextpage', 'aZ09');
// Load variable for pagination
@@ -142,7 +143,7 @@ if (!empty($search_ledger_code)) {
}
}
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -158,7 +159,8 @@ if (empty($user->rights->accounting->mouvements->lire)) {
* Action
*/
$parameters = array('socid'=>$socid);
$parameters = array();
$arrayfields = array();
$reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks
if ($reshook < 0) {
setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
@@ -237,7 +239,7 @@ if ($action != 'export_csv') {
print '<input type="hidden" name="page" value="'.$page.'">';
$parameters = array();
$reshook = $hookmanager->executeHooks('addMoreActionsButtons', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
$reshook = $hookmanager->executeHooks('addMoreActionsButtonsList', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
if (empty($reshook)) {
$button = '<input type="button" id="exportcsvbutton" name="exportcsvbutton" class="butAction" value="'.$langs->trans("Export").' ('.$conf->global->ACCOUNTING_EXPORT_FORMAT.')" />';
@@ -349,7 +351,7 @@ if ($action != 'export_csv') {
$sql .= " GROUP BY t.numero_compte";
$resql = $db->query($sql);
$nrows = $resql->num_rows;
$nrows = $db->num_rows($resql);
$opening_balances = array();
for ($i = 0; $i < $nrows; $i++) {
$arr = $resql->fetch_array();

View File

@@ -1,7 +1,7 @@
<?php
/* Copyright (C) 2013-2017 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2017 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2013-2021 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2013-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2017 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2018-2020 Frédéric France <frederic.france@netlogic.fr>
*
@@ -79,7 +79,7 @@ if (!empty($update)) {
$object = new BookKeeping($db);
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -267,7 +267,7 @@ if ($action == "confirm_update") {
if ($mode != '_tmp') {
setEventMessages($langs->trans('RecordSaved'), null, 'mesgs');
}
$action = 'update';
$action = '';
$id = $object->id;
$piece_num = $object->piece_num;
}
@@ -431,12 +431,12 @@ if ($action == 'create') {
// Account movement
print '<tr>';
print '<td class="titlefield">'.$langs->trans("NumMvts").'</td>';
print '<td>'.$object->piece_num.'</td>';
print '<td>'.($mode == '_tmp' ? '<span class="opacitymedium" title="Id tmp '.$object->piece_num.'">'.$langs->trans("Draft").'</span>' : $object->piece_num).'</td>';
print '</tr>';
// Date
print '<tr><td>';
print '<table class="nobordernopadding" width="100%"><tr><td>';
print '<table class="nobordernopadding centpercent"><tr><td>';
print $langs->trans('Docdate');
print '</td>';
if ($action != 'editdate') {
@@ -540,21 +540,24 @@ if ($action == 'create') {
print '</td>';
print '</tr>';
// Date document creation
print '<tr>';
print '<td class="titlefield">'.$langs->trans("DateExport").'</td>';
print '<td>';
print $object->date_export ? dol_print_date($object->date_export, 'dayhour') : '&nbsp;';
print '</td>';
print '</tr>';
// Don't show in tmp mode, inevitably empty
if ($mode != "_tmp") {
// Date document export
print '<tr>';
print '<td class="titlefield">' . $langs->trans("DateExport") . '</td>';
print '<td>';
print $object->date_export ? dol_print_date($object->date_export, 'dayhour') : '&nbsp;';
print '</td>';
print '</tr>';
// Date document creation
print '<tr>';
print '<td class="titlefield">'.$langs->trans("DateValidation").'</td>';
print '<td>';
print $object->date_validation ? dol_print_date($object->date_validation, 'dayhour') : '&nbsp;';
print '</td>';
print '</tr>';
// Date document validation
print '<tr>';
print '<td class="titlefield">' . $langs->trans("DateValidation") . '</td>';
print '<td>';
print $object->date_validation ? dol_print_date($object->date_validation, 'dayhour') : '&nbsp;';
print '</td>';
print '</tr>';
}
// Validate
/*
@@ -607,6 +610,7 @@ if ($action == 'create') {
print '<br>';
$result = $object->fetchAllPerMvt($piece_num, $mode); // This load $object->linesmvt
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
} else {
@@ -640,13 +644,22 @@ if ($action == 'create') {
print_liste_field_titre("Debit", "", "", "", "", 'class="right"');
print_liste_field_titre("Credit", "", "", "", "", 'class="right"');
if (empty($object->date_validation)) {
print_liste_field_titre("Action", "", "", "", "", 'width="60" class="center"');
print_liste_field_titre("Action", "", "", "", "", 'width="60"', "", "", 'center ');
} else {
print_liste_field_titre("");
}
print "</tr>\n";
// Add an empty line if there is not yet
if (!empty($object->linesmvt[0])) {
$tmpline = $object->linesmvt[0];
if (!empty($tmpline->numero_compte)) {
$line = new BookKeepingLine();
$object->linesmvt[] = $line;
}
}
foreach ($object->linesmvt as $line) {
print '<tr class="oddeven">';
$total_debit += $line->debit;
@@ -663,7 +676,7 @@ if ($action == 'create') {
// Also, it is not possible to use a value that is not in the list.
// Also, the label is not automatically filled when a value is selected.
if (!empty($conf->global->ACCOUNTANCY_COMBO_FOR_AUX)) {
print $formaccounting->select_auxaccount((GETPOSTISSET("subledger_account") ? GETPOST("subledger_account", "alpha") : $line->subledger_account), 'subledger_account', 1);
print $formaccounting->select_auxaccount((GETPOSTISSET("subledger_account") ? GETPOST("subledger_account", "alpha") : $line->subledger_account), 'subledger_account', 1, 'maxwidth250', '', 'subledger_label');
} else {
print '<input type="text" class="maxwidth150" name="subledger_account" value="'.(GETPOSTISSET("subledger_account") ? GETPOST("subledger_account", "alpha") : $line->subledger_account).'" placeholder="'.dol_escape_htmltag($langs->trans("SubledgerAccount")).'">';
}
@@ -677,7 +690,31 @@ if ($action == 'create') {
print '<input type="hidden" name="id" value="'.$line->id.'">'."\n";
print '<input type="submit" class="button" name="update" value="'.$langs->trans("Update").'">';
print '</td>';
} elseif (empty($line->numero_compte) || (empty($line->debit) && empty($line->credit))) {
if ($action == "" || $action == 'add') {
print '<!-- td columns in add mode -->';
print '<td>';
print $formaccounting->select_account('', 'accountingaccount_number', 1, array(), 1, 1, '');
print '</td>';
print '<td>';
// TODO For the moment we keep a free input text instead of a combo. The select_auxaccount has problem because:
// It does not use the setup of "key pressed" to select a thirdparty and this hang browser on large databases.
// Also, it is not possible to use a value that is not in the list.
// Also, the label is not automatically filled when a value is selected.
if (!empty($conf->global->ACCOUNTANCY_COMBO_FOR_AUX)) {
print $formaccounting->select_auxaccount('', 'subledger_account', 1, 'maxwidth250', '', 'subledger_label');
} else {
print '<input type="text" class="maxwidth150" name="subledger_account" value="" placeholder="' . dol_escape_htmltag($langs->trans("SubledgerAccount")) . '">';
}
print '<br><input type="text" class="maxwidth150" name="subledger_label" value="" placeholder="' . dol_escape_htmltag($langs->trans("SubledgerAccountLabel")) . '">';
print '</td>';
print '<td><input type="text" class="minwidth200" name="label_operation" value="' . $label_operation . '"/></td>';
print '<td class="right"><input type="text" size="6" class="right" name="debit" value=""/></td>';
print '<td class="right"><input type="text" size="6" class="right" name="credit" value=""/></td>';
print '<td class="center"><input type="submit" class="button" name="save" value="' . $langs->trans("Add") . '"></td>';
}
} else {
print '<!-- td columns in display mode -->';
$resultfetch = $accountingaccount->fetch(null, $line->numero_compte, true);
print '<td>';
if ($resultfetch > 0) {
@@ -733,35 +770,6 @@ if ($action == 'create') {
setEventMessages(null, array($langs->trans('MvtNotCorrectlyBalanced', $total_debit, $total_credit)), 'warnings');
}
if (empty($object->date_export) && empty($object->date_validation)) {
if ($action == "" || $action == 'add') {
print '<tr class="oddeven">';
print '<!-- td columns in add mode -->';
print '<td>';
print $formaccounting->select_account('', 'accountingaccount_number', 1, array(), 1, 1, '');
print '</td>';
print '<td>';
// TODO For the moment we keep a free input text instead of a combo. The select_auxaccount has problem because:
// It does not use the setup of "key pressed" to select a thirdparty and this hang browser on large databases.
// Also, it is not possible to use a value that is not in the list.
// Also, the label is not automatically filled when a value is selected.
if (!empty($conf->global->ACCOUNTANCY_COMBO_FOR_AUX)) {
print $formaccounting->select_auxaccount('', 'subledger_account', 1);
} else {
print '<input type="text" class="maxwidth150" name="subledger_account" value="" placeholder="' . dol_escape_htmltag($langs->trans("SubledgerAccount")) . '">';
}
print '<br><input type="text" class="maxwidth150" name="subledger_label" value="" placeholder="' . dol_escape_htmltag($langs->trans("SubledgerAccountLabel")) . '">';
print '</td>';
print '<td><input type="text" class="minwidth200" name="label_operation" value="' . $label_operation . '"/></td>';
print '<td class="right"><input type="text" size="6" class="right" name="debit" value=""/></td>';
print '<td class="right"><input type="text" size="6" class="right" name="credit" value=""/></td>';
print '<td>';
print '<input type="submit" class="button" name="save" value="' . $langs->trans("Add") . '">';
print '</td>';
print '</tr>';
}
}
print '</table>';
print '</div>';

View File

@@ -1,7 +1,7 @@
<?php
/* Copyright (C) 2013-2016 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2016 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2013-2021 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2013-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2016-2017 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2018-2021 Frédéric France <frederic.france@netlogic.fr>
*
@@ -28,6 +28,7 @@
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountancyexport.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/lettering.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/bookkeeping.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingjournal.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
@@ -42,6 +43,10 @@ $langs->loadLangs(array("accountancy", "compta"));
$socid = GETPOST('socid', 'int');
$action = GETPOST('action', 'aZ09');
$massaction = GETPOST('massaction', 'alpha');
$confirm = GETPOST('confirm', 'alpha');
$toselect = GETPOST('toselect', 'array');
$contextpage = GETPOST('contextpage', 'aZ') ? GETPOST('contextpage', 'aZ') : 'bookkeepinglist';
$search_mvt_num = GETPOST('search_mvt_num', 'int');
$search_doc_type = GETPOST("search_doc_type", 'alpha');
$search_doc_ref = GETPOST("search_doc_ref", 'alpha');
@@ -86,6 +91,7 @@ $search_date_validation_endmonth = GETPOST('search_date_validation_endmonth', '
$search_date_validation_endday = GETPOST('search_date_validation_endday', 'int');
$search_date_validation_start = dol_mktime(0, 0, 0, $search_date_validation_startmonth, $search_date_validation_startday, $search_date_validation_startyear);
$search_date_validation_end = dol_mktime(23, 59, 59, $search_date_validation_endmonth, $search_date_validation_endday, $search_date_validation_endyear);
$search_import_key = GETPOST("search_import_key", 'alpha');
//var_dump($search_date_start);exit;
if (GETPOST("button_delmvt_x") || GETPOST("button_delmvt.x") || GETPOST("button_delmvt")) {
@@ -126,6 +132,7 @@ $search_not_reconciled = GETPOST('search_not_reconciled', 'alpha');
$limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : (empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION) ? $conf->liste_limit : $conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION);
$sortfield = GETPOST('sortfield', 'aZ09comma');
$sortorder = GETPOST('sortorder', 'aZ09comma');
$optioncss = GETPOST('optioncss', 'alpha');
$page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int');
if (empty($page) || $page < 0) {
$page = 0;
@@ -190,22 +197,24 @@ $arrayfields = array(
't.date_creation'=>array('label'=>$langs->trans("DateCreation"), 'checked'=>0),
't.tms'=>array('label'=>$langs->trans("DateModification"), 'checked'=>0),
't.date_export'=>array('label'=>$langs->trans("DateExport"), 'checked'=>1),
't.date_validated'=>array('label'=>$langs->trans("DateValidationAndLock"), 'checked'=>1),
't.date_validated'=>array('label'=>$langs->trans("DateValidationAndLock"), 'checked'=>1, 'enabled'=>!getDolGlobalString("ACCOUNTANCY_DISABLE_CLOSURE_LINE_BY_LINE")),
't.import_key'=>array('label'=>$langs->trans("ImportId"), 'checked'=>0, 'position'=>1100),
);
if (empty($conf->global->ACCOUNTING_ENABLE_LETTERING)) {
unset($arrayfields['t.lettering_code']);
}
$listofformat = AccountancyExport::getType();
$formatexportset = $conf->global->ACCOUNTING_EXPORT_MODELCSV;
$accountancyexport = new AccountancyExport($db);
$listofformat = $accountancyexport->getType();
$formatexportset = getDolGlobalString('ACCOUNTING_EXPORT_MODELCSV');
if (empty($listofformat[$formatexportset])) {
$formatexportset = 1;
}
$error = 0;
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -220,10 +229,12 @@ if (empty($user->rights->accounting->mouvements->lire)) {
* Actions
*/
$param = '';
if (GETPOST('cancel', 'alpha')) {
$action = 'list'; $massaction = '';
}
if (!GETPOST('confirmmassaction', 'alpha') && $massaction != 'presend' && $massaction != 'confirm_presend') {
if (!GETPOST('confirmmassaction', 'alpha') && $massaction != 'preunlettering' && $massaction != 'predeletebookkeepingwriting') {
$massaction = '';
}
@@ -294,10 +305,11 @@ if (empty($reshook)) {
$search_credit = '';
$search_lettering_code = '';
$search_not_reconciled = '';
$search_import_key = '';
$toselect = array();
}
// Must be after the remove filter action, before the export.
$param = '';
$filter = array();
if (!empty($search_date_start)) {
$filter['t.doc_date>='] = $search_date_start;
@@ -416,77 +428,143 @@ if (empty($reshook)) {
$filter['t.reconciled_option'] = $search_not_reconciled;
$param .= '&search_not_reconciled='.urlencode($search_not_reconciled);
}
}
if (!empty($search_import_key)) {
$filter['t.import_key'] = $search_import_key;
$param .= '&search_import_key='.urlencode($search_import_key);
}
if ($action == 'delbookkeeping' && $user->rights->accounting->mouvements->supprimer) {
$import_key = GETPOST('importkey', 'alpha');
if (!empty($import_key)) {
$result = $object->deleteByImportkey($import_key);
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
//if ($action == 'delbookkeepingyearconfirm' && $user->rights->accounting->mouvements->supprimer_tous) {
// $delmonth = GETPOST('delmonth', 'int');
// $delyear = GETPOST('delyear', 'int');
// if ($delyear == -1) {
// $delyear = 0;
// }
// $deljournal = GETPOST('deljournal', 'alpha');
// if ($deljournal == -1) {
// $deljournal = 0;
// }
//
// if (!empty($delmonth) || !empty($delyear) || !empty($deljournal)) {
// $result = $object->deleteByYearAndJournal($delyear, $deljournal, '', ($delmonth > 0 ? $delmonth : 0));
// if ($result < 0) {
// setEventMessages($object->error, $object->errors, 'errors');
// } else {
// setEventMessages("RecordDeleted", null, 'mesgs');
// }
//
// // Make a redirect to avoid to launch the delete later after a back button
// header("Location: list.php".($param ? '?'.$param : ''));
// exit;
// } else {
// setEventMessages("NoRecordDeleted", null, 'warnings');
// }
//}
if ($action == 'setreexport') {
$setreexport = GETPOST('value', 'int');
if (!dolibarr_set_const($db, "ACCOUNTING_REEXPORT", $setreexport, 'yesno', 0, '', $conf->entity)) {
$error++;
}
// Make a redirect to avoid to launch the delete later after a back button
header("Location: list.php".($param ? '?'.$param : ''));
exit;
}
}
if ($action == 'delbookkeepingyearconfirm' && $user->rights->accounting->mouvements->supprimer_tous) {
$delmonth = GETPOST('delmonth', 'int');
$delyear = GETPOST('delyear', 'int');
if ($delyear == -1) {
$delyear = 0;
}
$deljournal = GETPOST('deljournal', 'alpha');
if ($deljournal == -1) {
$deljournal = 0;
}
if (!empty($delmonth) || !empty($delyear) || !empty($deljournal)) {
$result = $object->deleteByYearAndJournal($delyear, $deljournal, '', ($delmonth > 0 ? $delmonth : 0));
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
if (!$error) {
if ($conf->global->ACCOUNTING_REEXPORT == 1) {
setEventMessages($langs->trans("ExportOfPiecesAlreadyExportedIsEnable"), null, 'mesgs');
} else {
setEventMessages($langs->trans("ExportOfPiecesAlreadyExportedIsDisable"), null, 'mesgs');
}
} else {
setEventMessages("RecordDeleted", null, 'mesgs');
setEventMessages($langs->trans("Error"), null, 'errors');
}
// Make a redirect to avoid to launch the delete later after a back button
header("Location: list.php".($param ? '?'.$param : ''));
exit;
} else {
setEventMessages("NoRecordDeleted", null, 'warnings');
}
}
if ($action == 'delmouvconfirm' && $user->rights->accounting->mouvements->supprimer) {
$mvt_num = GETPOST('mvt_num', 'int');
if (!empty($mvt_num)) {
$result = $object->deleteMvtNum($mvt_num);
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
} else {
setEventMessages($langs->trans("RecordDeleted"), null, 'mesgs');
}
header("Location: list.php?noreset=1".($param ? '&'.$param : ''));
exit;
}
}
if ($action == 'setreexport') {
$setreexport = GETPOST('value', 'int');
if (!dolibarr_set_const($db, "ACCOUNTING_REEXPORT", $setreexport, 'yesno', 0, '', $conf->entity)) {
$error++;
}
if (!$error) {
if ($conf->global->ACCOUNTING_REEXPORT == 1) {
setEventMessages($langs->trans("ExportOfPiecesAlreadyExportedIsEnable"), null, 'mesgs');
} else {
setEventMessages($langs->trans("ExportOfPiecesAlreadyExportedIsDisable"), null, 'mesgs');
// Mass actions
$objectclass = 'Bookkeeping';
$objectlabel = 'Bookkeeping';
$permissiontoread = $user->rights->societe->lire;
$permissiontodelete = $user->rights->societe->supprimer;
$permissiontoadd = $user->rights->societe->creer;
$uploaddir = $conf->societe->dir_output;
include DOL_DOCUMENT_ROOT.'/core/actions_massactions.inc.php';
if (!$error && $action == 'deletebookkeepingwriting' && $confirm == "yes" && $user->rights->accounting->mouvements->supprimer) {
$nbok = 0;
foreach ($toselect as $toselectid) {
$result = $object->fetch($toselectid);
if ($result > 0 && (!isset($object->date_validation) || $object->date_validation === '')) {
$result = $object->deleteMvtNum($object->piece_num);
if ($result > 0) {
$nbok++;
} else {
setEventMessages($object->error, $object->errors, 'errors');
$error++;
break;
}
} elseif ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
$error++;
break;
}
}
// Message for elements well deleted
if ($nbok > 1) {
setEventMessages($langs->trans("RecordsDeleted", $nbok), null, 'mesgs');
} elseif ($nbok > 0) {
setEventMessages($langs->trans("RecordDeleted", $nbok), null, 'mesgs');
} elseif (!$error) {
setEventMessages($langs->trans("NoRecordDeleted"), null, 'mesgs');
}
if (!$error) {
header("Location: ".$_SERVER["PHP_SELF"]."?noreset=1".($param ? '&'.$param : ''));
exit;
}
}
// others mass actions
if (!$error && getDolGlobalInt('ACCOUNTING_ENABLE_LETTERING') && $user->rights->accounting->mouvements->creer) {
if ($massaction == 'lettering') {
$lettering = new Lettering($db);
$nb_lettering = $lettering->bookkeepingLetteringAll($toselect);
if ($nb_lettering < 0) {
setEventMessages('', $lettering->errors, 'errors');
$error++;
$nb_lettering = max(0, abs($nb_lettering) - 2);
} elseif ($nb_lettering == 0) {
$nb_lettering = 0;
setEventMessages($langs->trans('AccountancyNoLetteringModified'), array(), 'mesgs');
}
if ($nb_lettering == 1) {
setEventMessages($langs->trans('AccountancyOneLetteringModifiedSuccessfully'), array(), 'mesgs');
} elseif ($nb_lettering > 1) {
setEventMessages($langs->trans('AccountancyLetteringModifiedSuccessfully', $nb_lettering), array(), 'mesgs');
}
if (!$error) {
header('Location: ' . $_SERVER['PHP_SELF'] . '?noreset=1' . $param);
exit();
}
} elseif ($action == 'unlettering' && $confirm == "yes") {
$lettering = new Lettering($db);
$nb_lettering = $lettering->bookkeepingLetteringAll($toselect, true);
if ($nb_lettering < 0) {
setEventMessages('', $lettering->errors, 'errors');
$error++;
$nb_lettering = max(0, abs($nb_lettering) - 2);
} elseif ($nb_lettering == 0) {
$nb_lettering = 0;
setEventMessages($langs->trans('AccountancyNoUnletteringModified'), array(), 'mesgs');
}
if ($nb_lettering == 1) {
setEventMessages($langs->trans('AccountancyOneUnletteringModifiedSuccessfully'), array(), 'mesgs');
} elseif ($nb_lettering > 1) {
setEventMessages($langs->trans('AccountancyUnletteringModifiedSuccessfully', $nb_lettering), array(), 'mesgs');
}
if (!$error) {
header('Location: ' . $_SERVER['PHP_SELF'] . '?noreset=1' . $param);
exit();
}
}
} else {
setEventMessages($langs->trans("Error"), null, 'errors');
}
}
@@ -520,7 +598,8 @@ $sql .= " t.piece_num,";
$sql .= " t.date_creation,";
$sql .= " t.tms as date_modification,";
$sql .= " t.date_export,";
$sql .= " t.date_validated as date_validation";
$sql .= " t.date_validated as date_validation,";
$sql .= " t.import_key";
$sql .= ' FROM '.MAIN_DB_PREFIX.$object->table_element.' as t';
// Manage filter
$sqlwhere = array();
@@ -667,6 +746,7 @@ if (is_numeric($nbtotalofrecords) && $limit > $nbtotalofrecords) {
$num = $db->num_rows($resql);
}
$arrayofselected = is_array($toselect) ? $toselect : array();
// Output page
// --------------------------------------------------------------------
@@ -684,69 +764,67 @@ if ($action == 'export_file') {
'name' => 'notifiedexportdate',
'type' => 'checkbox',
'label' => $langs->trans('NotifiedExportDate'),
'value' => $checked,
'value' => (!empty($conf->global->ACCOUNTING_DEFAULT_NOT_NOTIFIED_EXPORT_DATE) ? 'false' : 'true'),
);
$form_question['separator'] = array('name'=>'separator', 'type'=>'separator');
// If 0 or not set, we NOT check by default.
$checked = (isset($conf->global->ACCOUNTING_DEFAULT_NOT_NOTIFIED_VALIDATION_DATE) || !empty($conf->global->ACCOUNTING_DEFAULT_NOT_NOTIFIED_VALIDATION_DATE));
$form_question['notifiedvalidationdate'] = array(
'name' => 'notifiedvalidationdate',
'type' => 'checkbox',
'label' => $langs->trans('NotifiedValidationDate'),
'value' => $checked,
);
if (!getDolGlobalString("ACCOUNTANCY_DISABLE_CLOSURE_LINE_BY_LINE")) {
// If 0 or not set, we NOT check by default.
$checked = (isset($conf->global->ACCOUNTING_DEFAULT_NOT_NOTIFIED_VALIDATION_DATE) || !empty($conf->global->ACCOUNTING_DEFAULT_NOT_NOTIFIED_VALIDATION_DATE));
$form_question['notifiedvalidationdate'] = array(
'name' => 'notifiedvalidationdate',
'type' => 'checkbox',
'label' => $langs->trans('NotifiedValidationDate', $langs->transnoentitiesnoconv("MenuAccountancyClosure")),
'value' => $checked,
);
$form_question['separator2'] = array('name'=>'separator2', 'type'=>'separator');
$form_question['separator2'] = array('name'=>'separator2', 'type'=>'separator');
}
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?'.$param, $langs->trans("ExportFilteredList").' ('.$listofformat[$formatexportset].')', $langs->trans('ConfirmExportFile'), 'export_fileconfirm', $form_question, '', 1, 300, 600);
}
if ($action == 'delmouv') {
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?mvt_num='.urlencode(GETPOST('mvt_num')).$param, $langs->trans('DeleteMvt'), $langs->trans('ConfirmDeleteMvtPartial'), 'delmouvconfirm', '', 0, 1);
}
if ($action == 'delbookkeepingyear') {
$form_question = array();
$delyear = GETPOST('delyear', 'int');
$deljournal = GETPOST('deljournal', 'alpha');
if (empty($delyear)) {
$delyear = dol_print_date(dol_now(), '%Y');
}
$month_array = array();
for ($i = 1; $i <= 12; $i++) {
$month_array[$i] = $langs->trans("Month".sprintf("%02d", $i));
}
$year_array = $formaccounting->selectyear_accountancy_bookkepping($delyear, 'delyear', 0, 'array');
$journal_array = $formaccounting->select_journal($deljournal, 'deljournal', '', 1, 1, 1, '', 0, 1);
$form_question['delmonth'] = array(
'name' => 'delmonth',
'type' => 'select',
'label' => $langs->trans('DelMonth'),
'values' => $month_array,
'morecss' => 'minwidth150',
'default' => ''
);
$form_question['delyear'] = array(
'name' => 'delyear',
'type' => 'select',
'label' => $langs->trans('DelYear'),
'values' => $year_array,
'default' => $delyear
);
$form_question['deljournal'] = array(
'name' => 'deljournal',
'type' => 'other', // We don't use select here, the journal_array is already a select html component
'label' => $langs->trans('DelJournal'),
'value' => $journal_array,
'default' => $deljournal
);
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?'.$param, $langs->trans('DeleteMvt'), $langs->trans('ConfirmDeleteMvt', $langs->transnoentitiesnoconv("RegistrationInAccounting")), 'delbookkeepingyearconfirm', $form_question, '', 1, 320);
}
//if ($action == 'delbookkeepingyear') {
// $form_question = array();
// $delyear = GETPOST('delyear', 'int');
// $deljournal = GETPOST('deljournal', 'alpha');
//
// if (empty($delyear)) {
// $delyear = dol_print_date(dol_now(), '%Y');
// }
// $month_array = array();
// for ($i = 1; $i <= 12; $i++) {
// $month_array[$i] = $langs->trans("Month".sprintf("%02d", $i));
// }
// $year_array = $formaccounting->selectyear_accountancy_bookkepping($delyear, 'delyear', 0, 'array');
// $journal_array = $formaccounting->select_journal($deljournal, 'deljournal', '', 1, 1, 1, '', 0, 1);
//
// $form_question['delmonth'] = array(
// 'name' => 'delmonth',
// 'type' => 'select',
// 'label' => $langs->trans('DelMonth'),
// 'values' => $month_array,
// 'morecss' => 'minwidth150',
// 'default' => ''
// );
// $form_question['delyear'] = array(
// 'name' => 'delyear',
// 'type' => 'select',
// 'label' => $langs->trans('DelYear'),
// 'values' => $year_array,
// 'default' => $delyear
// );
// $form_question['deljournal'] = array(
// 'name' => 'deljournal',
// 'type' => 'other', // We don't use select here, the journal_array is already a select html component
// 'label' => $langs->trans('DelJournal'),
// 'value' => $journal_array,
// 'default' => $deljournal
// );
//
// $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?'.$param, $langs->trans('DeleteMvt'), $langs->trans('ConfirmDeleteMvt', $langs->transnoentitiesnoconv("RegistrationInAccounting")), 'delbookkeepingyearconfirm', $form_question, '', 1, 320);
//}
// Print form confirm
print $formconfirm;
@@ -759,6 +837,22 @@ if ($limit > 0 && $limit != $conf->liste_limit) {
$param .= '&limit='.urlencode($limit);
}
// List of mass actions available
$arrayofmassactions = array();
/*
if (getDolGlobalInt('ACCOUNTING_ENABLE_LETTERING') && $user->rights->accounting->mouvements->creer) {
$arrayofmassactions['lettering'] = img_picto('', 'check', 'class="pictofixedwidth"') . $langs->trans('Lettering');
$arrayofmassactions['preunlettering'] = img_picto('', 'uncheck', 'class="pictofixedwidth"') . $langs->trans('Unlettering');
}
*/
if ($user->rights->accounting->mouvements->supprimer) {
$arrayofmassactions['predeletebookkeepingwriting'] = img_picto('', 'delete', 'class="pictofixedwidth"').$langs->trans("Delete");
}
if (GETPOST('nomassaction', 'int') || in_array($massaction, array('preunlettering', 'predeletebookkeepingwriting'))) {
$arrayofmassactions = array();
}
$massactionbutton = $form->selectMassAction($massaction, $arrayofmassactions);
print '<form method="POST" id="searchFormList" action="'.$_SERVER["PHP_SELF"].'">';
print '<input type="hidden" name="token" value="'.newToken().'">';
print '<input type="hidden" name="action" value="list">';
@@ -768,8 +862,7 @@ if ($optioncss != '') {
print '<input type="hidden" name="formfilteraction" id="formfilteraction" value="list">';
print '<input type="hidden" name="sortfield" value="'.urlencode($sortfield).'">';
print '<input type="hidden" name="sortorder" value="'.urlencode($sortorder).'">';
$massactionbutton = '';
print '<input type="hidden" name="contextpage" value="'.$contextpage.'">';
if (count($filter)) {
$buttonLabel = $langs->trans("ExportFilteredList");
@@ -778,7 +871,7 @@ if (count($filter)) {
}
$parameters = array();
$reshook = $hookmanager->executeHooks('addMoreActionsButtons', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
$reshook = $hookmanager->executeHooks('addMoreActionsButtonsList', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
if (empty($reshook)) {
// Button re-export
if (!empty($conf->global->ACCOUNTING_REEXPORT)) {
@@ -794,7 +887,7 @@ if (empty($reshook)) {
$newcardbutton .= dolGetButtonTitle($langs->trans('ViewFlatList'), '', 'fa fa-list paddingleft imgforviewmode', DOL_URL_ROOT.'/accountancy/bookkeeping/list.php?'.$param, '', 1, array('morecss' => 'marginleftonly btnTitleSelected'));
$newcardbutton .= dolGetButtonTitle($langs->trans('GroupByAccountAccounting'), '', 'fa fa-stream paddingleft imgforviewmode', DOL_URL_ROOT.'/accountancy/bookkeeping/listbyaccount.php?'.$param, '', 1, array('morecss' => 'marginleftonly'));
$newcardbutton .= dolGetButtonTitle($langs->trans('GroupBySubAccountAccounting'), '', 'fa fa-align-left vmirror paddingleft imgforviewmode', DOL_URL_ROOT.'/accountancy/bookkeeping/listbysubaccount.php?'.$param, '', 1, array('morecss' => 'marginleftonly'));
$newcardbutton .= dolGetButtonTitle($langs->trans('GroupBySubAccountAccounting'), '', 'fa fa-align-left vmirror paddingleft imgforviewmode', DOL_URL_ROOT.'/accountancy/bookkeeping/listbyaccount.php?type=sub'.$param, '', 1, array('morecss' => 'marginleftonly'));
$url = './card.php?action=create';
if (!empty($socid)) {
@@ -805,12 +898,26 @@ if (empty($reshook)) {
print_barre_liste($title_page, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'title_accountancy', 0, $newcardbutton, '', $limit, 0, 0, 1);
if ($massaction == 'preunlettering') {
print $form->formconfirm($_SERVER["PHP_SELF"], $langs->trans("ConfirmMassUnlettering"), $langs->trans("ConfirmMassUnletteringQuestion", count($toselect)), "unlettering", null, '', 0, 200, 500, 1);
} elseif ($massaction == 'predeletebookkeepingwriting') {
print $form->formconfirm($_SERVER["PHP_SELF"], $langs->trans("ConfirmMassDeleteBookkeepingWriting"), $langs->trans("ConfirmMassDeleteBookkeepingWritingQuestion", count($toselect)), "deletebookkeepingwriting", null, '', 0, 200, 500, 1);
}
//$topicmail = "Information";
//$modelmail = "accountingbookkeeping";
//$objecttmp = new BookKeeping($db);
//$trackid = 'bk'.$object->id;
include DOL_DOCUMENT_ROOT.'/core/tpl/massactions_pre.tpl.php';
$varpage = empty($contextpage) ? $_SERVER["PHP_SELF"] : $contextpage;
$selectedfields = $form->multiSelectArrayWithCheckbox('selectedfields', $arrayfields, $varpage); // This also change content of $arrayfields
if ($massactionbutton) {
if ($massactionbutton && $contextpage != 'poslist') {
$selectedfields .= $form->showCheckAddButtons('checkforselect', 1);
}
$moreforfilter = '';
$parameters = array();
$reshook = $hookmanager->executeHooks('printFieldPreListTitle', $parameters); // Note that $action and $object may have been modified by hook
if (empty($reshook)) {
@@ -954,6 +1061,11 @@ if (!empty($arrayfields['t.date_validated']['checked'])) {
print '</div>';
print '</td>';
}
if (!empty($arrayfields['t.import_key']['checked'])) {
print '<td class="liste_titre center">';
print '<input class="flat searchstring maxwidth50" type="text" name="search_import_key" value="'.dol_escape_htmltag($search_import_key).'">';
print '</td>';
}
// Action column
print '<td class="liste_titre center">';
$searchpicto = $form->showFilterButtons();
@@ -1008,6 +1120,9 @@ if (!empty($arrayfields['t.date_export']['checked'])) {
if (!empty($arrayfields['t.date_validated']['checked'])) {
print_liste_field_titre($arrayfields['t.date_validated']['label'], $_SERVER['PHP_SELF'], "t.date_validated", "", $param, '', $sortfield, $sortorder, 'center ');
}
if (!empty($arrayfields['t.import_key']['checked'])) {
print_liste_field_titre($arrayfields['t.import_key']['label'], $_SERVER["PHP_SELF"], "t.import_key", "", $param, '', $sortfield, $sortorder, 'center ');
}
print_liste_field_titre($selectedfields, $_SERVER["PHP_SELF"], "", '', '', '', $sortfield, $sortorder, 'center maxwidthsearch ');
print "</tr>\n";
@@ -1018,6 +1133,13 @@ $line = new BookKeepingLine();
// --------------------------------------------------------------------
$i = 0;
$totalarray = array();
$totalarray['val'] = array ();
$totalarray['nbfield'] = 0;
$total_debit = 0;
$total_credit = 0;
$totalarray['val']['totaldebit'] = 0;
$totalarray['val']['totalcredit'] = 0;
while ($i < min($num, $limit)) {
$obj = $db->fetch_object($resql);
if (empty($obj)) {
@@ -1252,17 +1374,21 @@ while ($i < min($num, $limit)) {
}
}
// Action column
print '<td class="nowraponall center">';
if (empty($line->date_export) && empty($line->date_validation)) {
if ($user->rights->accounting->mouvements->creer) {
print '<a class="editfielda paddingleft marginrightonly" href="' . DOL_URL_ROOT . '/accountancy/bookkeeping/card.php?piece_num=' . $line->piece_num . $param . '&page=' . $page . ($sortfield ? '&sortfield=' . $sortfield : '') . ($sortorder ? '&sortorder=' . $sortorder : '') . '">' . img_edit() . '</a>';
if (!empty($arrayfields['t.import_key']['checked'])) {
print '<td class="tdoverflowmax100">'.$obj->import_key."</td>\n";
if (!$i) {
$totalarray['nbfield']++;
}
}
if (empty($line->date_validation)) {
if ($user->rights->accounting->mouvements->supprimer) {
print '<a class="reposition paddingleft marginrightonly" href="'.$_SERVER['PHP_SELF'].'?action=delmouv&token='.newToken().'&mvt_num='.$line->piece_num.$param.'&page='.$page.($sortfield ? '&sortfield='.$sortfield : '').($sortorder ? '&sortorder='.$sortorder : '').'">'.img_delete().'</a>';
// Action column
print '<td class="nowraponall center">';
if (($massactionbutton || $massaction) && $contextpage != 'poslist') { // If we are in select mode (massactionbutton defined) or if we have already selected and sent an action ($massaction) defined
$selected = 0;
if (in_array($line->id, $arrayofselected)) {
$selected = 1;
}
print '<input id="cb'.$line->id.'" class="flat checkforselect" type="checkbox" name="toselect[]" value="'.$line->id.'"'.($selected ? ' checked="checked"' : '').' />';
}
print '</td>';
@@ -1283,11 +1409,11 @@ print "</table>";
print '</div>';
// TODO Replace this with mass delete action
if ($user->rights->accounting->mouvements->supprimer_tous) {
print '<div class="tabsAction tabsActionNoBottom">'."\n";
print '<a class="butActionDelete" name="button_delmvt" href="'.$_SERVER["PHP_SELF"].'?action=delbookkeepingyear&token='.newToken().($param ? '&'.$param : '').'">'.$langs->trans("DeleteMvt").'</a>';
print '</div>';
}
//if ($user->rights->accounting->mouvements->supprimer_tous) {
// print '<div class="tabsAction tabsActionNoBottom">'."\n";
// print '<a class="butActionDelete" name="button_delmvt" href="'.$_SERVER["PHP_SELF"].'?action=delbookkeepingyear&token='.newToken().($param ? '&'.$param : '').'">'.$langs->trans("DeleteMvt").'</a>';
// print '</div>';
//}
print '</form>';

View File

@@ -2,7 +2,7 @@
/* Copyright (C) 2016 Neil Orley <neil.orley@oeris.fr>
* Copyright (C) 2013-2016 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2020 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2013-2021 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2013-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2018 Frédéric France <frederic.france@netlogic.fr>
*
* This program is free software; you can redistribute it and/or modify
@@ -28,6 +28,7 @@
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/lettering.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/bookkeeping.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingjournal.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php';
@@ -39,6 +40,17 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
$langs->loadLangs(array("accountancy", "compta"));
$action = GETPOST('action', 'aZ09');
$socid = GETPOST('socid', 'int');
$massaction = GETPOST('massaction', 'alpha');
$confirm = GETPOST('confirm', 'alpha');
$toselect = GETPOST('toselect', 'array');
$type = GETPOST('type', 'alpha');
if ($type == 'sub') {
$context_default = 'bookkeepingbysubaccountlist';
} else {
$context_default = 'bookkeepingbyaccountlist';
}
$contextpage = GETPOST('contextpage', 'aZ') ? GETPOST('contextpage', 'aZ') : $context_default;
$search_date_startyear = GETPOST('search_date_startyear', 'int');
$search_date_startmonth = GETPOST('search_date_startmonth', 'int');
$search_date_startday = GETPOST('search_date_startday', 'int');
@@ -64,6 +76,7 @@ $search_date_validation_endmonth = GETPOST('search_date_validation_endmonth', '
$search_date_validation_endday = GETPOST('search_date_validation_endday', 'int');
$search_date_validation_start = dol_mktime(0, 0, 0, $search_date_validation_startmonth, $search_date_validation_startday, $search_date_validation_startyear);
$search_date_validation_end = dol_mktime(23, 59, 59, $search_date_validation_endmonth, $search_date_validation_endday, $search_date_validation_endyear);
$search_import_key = GETPOST("search_import_key", 'alpha');
$search_accountancy_code = GETPOST("search_accountancy_code");
$search_accountancy_code_start = GETPOST('search_accountancy_code_start', 'alpha');
@@ -92,6 +105,7 @@ if (GETPOST("button_delmvt_x") || GETPOST("button_delmvt.x") || GETPOST("button_
$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : (empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION) ? $conf->liste_limit : $conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION);
$sortfield = GETPOST('sortfield', 'aZ09comma');
$sortorder = GETPOST('sortorder', 'aZ09comma');
$optioncss = GETPOST('optioncss', 'alpha');
$page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int');
if (empty($page) || $page < 0) {
$page = 0;
@@ -109,7 +123,7 @@ if ($sortfield == "") {
// Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context
$object = new BookKeeping($db);
$formfile = new FormFile($db);
$hookmanager->initHooks(array('bookkeepingbyaccountlist'));
$hookmanager->initHooks(array($context_default));
$formaccounting = new FormAccounting($db);
$form = new Form($db);
@@ -152,7 +166,8 @@ $arrayfields = array(
't.credit'=>array('label'=>$langs->trans("Credit"), 'checked'=>1),
't.lettering_code'=>array('label'=>$langs->trans("LetteringCode"), 'checked'=>1),
't.date_export'=>array('label'=>$langs->trans("DateExport"), 'checked'=>1),
't.date_validated'=>array('label'=>$langs->trans("DateValidation"), 'checked'=>1),
't.date_validated'=>array('label'=>$langs->trans("DateValidation"), 'checked'=>1, 'enabled'=>!getDolGlobalString("ACCOUNTANCY_DISABLE_CLOSURE_LINE_BY_LINE")),
't.import_key'=>array('label'=>$langs->trans("ImportId"), 'checked'=>0, 'position'=>1100),
);
if (empty($conf->global->ACCOUNTING_ENABLE_LETTERING)) {
@@ -172,7 +187,7 @@ if ($search_date_end && empty($search_date_endyear)) {
$search_date_endday = $tmparray['mday'];
}
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -187,10 +202,13 @@ if (empty($user->rights->accounting->mouvements->lire)) {
* Action
*/
$param = '';
if (GETPOST('cancel', 'alpha')) {
$action = 'list'; $massaction = '';
$action = 'list';
$massaction = '';
}
if (!GETPOST('confirmmassaction', 'alpha') && $massaction != 'presend' && $massaction != 'confirm_presend') {
if (!GETPOST('confirmmassaction', 'alpha') && $massaction != 'preunlettering' && $massaction != 'predeletebookkeepingwriting') {
$massaction = '';
}
@@ -242,10 +260,11 @@ if (empty($reshook)) {
$search_credit = '';
$search_lettering_code = '';
$search_not_reconciled = '';
$search_import_key = '';
$toselect = array();
}
// Must be after the remove filter action, before the export.
$param = '';
$filter = array();
if (!empty($search_date_start)) {
@@ -261,12 +280,20 @@ if (empty($reshook)) {
$param .= '&doc_datemonth='.GETPOST('doc_datemonth', 'int').'&doc_dateday='.GETPOST('doc_dateday', 'int').'&doc_dateyear='.GETPOST('doc_dateyear', 'int');
}
if (!empty($search_accountancy_code_start)) {
$filter['t.numero_compte>='] = $search_accountancy_code_start;
$param .= '&search_accountancy_code_start='.urlencode($search_accountancy_code_start);
if ($type == 'sub') {
$filter['t.subledger_account>='] = $search_accountancy_code_start;
} else {
$filter['t.numero_compte>='] = $search_accountancy_code_start;
}
$param .= '&search_accountancy_code_start=' . urlencode($search_accountancy_code_start);
}
if (!empty($search_accountancy_code_end)) {
$filter['t.numero_compte<='] = $search_accountancy_code_end;
$param .= '&search_accountancy_code_end='.urlencode($search_accountancy_code_end);
if ($type == 'sub') {
$filter['t.subledger_account<='] = $search_accountancy_code_end;
} else {
$filter['t.numero_compte<='] = $search_accountancy_code_end;
}
$param .= '&search_accountancy_code_end=' . urlencode($search_accountancy_code_end);
}
if (!empty($search_label_account)) {
$filter['t.label_compte'] = $search_label_account;
@@ -326,61 +353,133 @@ if (empty($reshook)) {
$filter['t.date_validated<='] = $search_date_validation_end;
$param .= '&search_date_validation_endmonth='.$search_date_validation_endmonth.'&search_date_validation_endday='.$search_date_validation_endday.'&search_date_validation_endyear='.$search_date_validation_endyear;
}
}
if (!empty($search_import_key)) {
$filter['t.import_key'] = $search_import_key;
$param .= '&search_import_key='.urlencode($search_import_key);
}
if ($action == 'delbookkeeping' && $user->rights->accounting->mouvements->supprimer) {
$import_key = GETPOST('importkey', 'alpha');
// param with type of list
$url_param = substr($param, 1); // remove first "&"
if (!empty($type)) {
$param = '&type='.$type.$param;
}
if (!empty($import_key)) {
$result = $object->deleteByImportkey($import_key);
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
//if ($action == 'delbookkeepingyearconfirm' && $user->rights->accounting->mouvements->supprimer_tous) {
// $delmonth = GETPOST('delmonth', 'int');
// $delyear = GETPOST('delyear', 'int');
// if ($delyear == -1) {
// $delyear = 0;
// }
// $deljournal = GETPOST('deljournal', 'alpha');
// if ($deljournal == -1) {
// $deljournal = 0;
// }
//
// if (!empty($delmonth) || !empty($delyear) || !empty($deljournal)) {
// $result = $object->deleteByYearAndJournal($delyear, $deljournal, '', ($delmonth > 0 ? $delmonth : 0));
// if ($result < 0) {
// setEventMessages($object->error, $object->errors, 'errors');
// } else {
// setEventMessages("RecordDeleted", null, 'mesgs');
// }
//
// // Make a redirect to avoid to launch the delete later after a back button
// header("Location: ".$_SERVER["PHP_SELF"].($param ? '?'.$param : ''));
// exit;
// } else {
// setEventMessages("NoRecordDeleted", null, 'warnings');
// }
//}
// Mass actions
$objectclass = 'Bookkeeping';
$objectlabel = 'Bookkeeping';
$permissiontoread = $user->rights->societe->lire;
$permissiontodelete = $user->rights->societe->supprimer;
$permissiontoadd = $user->rights->societe->creer;
$uploaddir = $conf->societe->dir_output;
include DOL_DOCUMENT_ROOT.'/core/actions_massactions.inc.php';
if (!$error && $action == 'deletebookkeepingwriting' && $confirm == "yes" && $user->rights->accounting->mouvements->supprimer) {
$nbok = 0;
foreach ($toselect as $toselectid) {
$result = $object->fetch($toselectid);
if ($result > 0 && (!isset($object->date_validation) || $object->date_validation === '')) {
$result = $object->deleteMvtNum($object->piece_num);
if ($result > 0) {
$nbok++;
} else {
setEventMessages($object->error, $object->errors, 'errors');
$error++;
break;
}
} elseif ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
$error++;
break;
}
}
// Make a redirect to avoid to launch the delete later after a back button
header("Location: ".$_SERVER["PHP_SELF"].($param ? '?'.$param : ''));
exit;
}
}
if ($action == 'delbookkeepingyearconfirm' && $user->rights->accounting->mouvements->supprimer_tous) {
$delmonth = GETPOST('delmonth', 'int');
$delyear = GETPOST('delyear', 'int');
if ($delyear == -1) {
$delyear = 0;
}
$deljournal = GETPOST('deljournal', 'alpha');
if ($deljournal == -1) {
$deljournal = 0;
}
if (!empty($delmonth) || !empty($delyear) || !empty($deljournal)) {
$result = $object->deleteByYearAndJournal($delyear, $deljournal, '', ($delmonth > 0 ? $delmonth : 0));
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
} else {
setEventMessages("RecordDeleted", null, 'mesgs');
// Message for elements well deleted
if ($nbok > 1) {
setEventMessages($langs->trans("RecordsDeleted", $nbok), null, 'mesgs');
} elseif ($nbok > 0) {
setEventMessages($langs->trans("RecordDeleted", $nbok), null, 'mesgs');
} elseif (!$error) {
setEventMessages($langs->trans("NoRecordDeleted"), null, 'mesgs');
}
// Make a redirect to avoid to launch the delete later after a back button
header("Location: ".$_SERVER["PHP_SELF"].($param ? '?'.$param : ''));
exit;
} else {
setEventMessages("NoRecordDeleted", null, 'warnings');
}
}
if ($action == 'delmouvconfirm' && $user->rights->accounting->mouvements->supprimer) {
$mvt_num = GETPOST('mvt_num', 'int');
if (!empty($mvt_num)) {
$result = $object->deleteMvtNum($mvt_num);
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
} else {
setEventMessages($langs->trans("RecordDeleted"), null, 'mesgs');
if (!$error) {
header("Location: ".$_SERVER["PHP_SELF"]."?noreset=1".($param ? '&'.$param : ''));
exit;
}
}
header("Location: ".$_SERVER["PHP_SELF"]."?noreset=1".($param ? '&'.$param : ''));
exit;
// others mass actions
if (!$error && getDolGlobalInt('ACCOUNTING_ENABLE_LETTERING') && $user->rights->accounting->mouvements->creer) {
if ($massaction == 'lettering') {
$lettering = new Lettering($db);
$nb_lettering = $lettering->bookkeepingLetteringAll($toselect);
if ($nb_lettering < 0) {
setEventMessages('', $lettering->errors, 'errors');
$error++;
$nb_lettering = max(0, abs($nb_lettering) - 2);
} elseif ($nb_lettering == 0) {
$nb_lettering = 0;
setEventMessages($langs->trans('AccountancyNoLetteringModified'), array(), 'mesgs');
}
if ($nb_lettering == 1) {
setEventMessages($langs->trans('AccountancyOneLetteringModifiedSuccessfully'), array(), 'mesgs');
} elseif ($nb_lettering > 1) {
setEventMessages($langs->trans('AccountancyLetteringModifiedSuccessfully', $nb_lettering), array(), 'mesgs');
}
if (!$error) {
header('Location: ' . $_SERVER['PHP_SELF'] . '?noreset=1' . $param);
exit();
}
} elseif ($action == 'unlettering' && $confirm == "yes") {
$lettering = new Lettering($db);
$nb_lettering = $lettering->bookkeepingLetteringAll($toselect, true);
if ($nb_lettering < 0) {
setEventMessages('', $lettering->errors, 'errors');
$error++;
$nb_lettering = max(0, abs($nb_lettering) - 2);
} elseif ($nb_lettering == 0) {
$nb_lettering = 0;
setEventMessages($langs->trans('AccountancyNoUnletteringModified'), array(), 'mesgs');
}
if ($nb_lettering == 1) {
setEventMessages($langs->trans('AccountancyOneUnletteringModifiedSuccessfully'), array(), 'mesgs');
} elseif ($nb_lettering > 1) {
setEventMessages($langs->trans('AccountancyUnletteringModifiedSuccessfully', $nb_lettering), array(), 'mesgs');
}
if (!$error) {
header('Location: ' . $_SERVER['PHP_SELF'] . '?noreset=1' . $param);
exit();
}
}
}
}
@@ -394,73 +493,102 @@ $formfile = new FormFile($db);
$formother = new FormOther($db);
$form = new Form($db);
$title_page = $langs->trans("Operations").' - '.$langs->trans("VueByAccountAccounting").' ('.$langs->trans("Bookkeeping").')';
$title_page = $langs->trans("Operations").' - '.$langs->trans("VueByAccountAccounting").' (';
if ($type == 'sub') {
$title_page .= $langs->trans("BookkeepingSubAccount");
} else {
$title_page .= $langs->trans("Bookkeeping");
}
$title_page .= ')';
llxHeader('', $title_page);
// List
$nbtotalofrecords = '';
if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) {
$nbtotalofrecords = $object->fetchAllByAccount($sortorder, $sortfield, 0, 0, $filter);
if ($type == 'sub') {
$nbtotalofrecords = $object->fetchAllByAccount($sortorder, $sortfield, 0, 0, $filter, 'AND', 1);
} else {
$nbtotalofrecords = $object->fetchAllByAccount($sortorder, $sortfield, 0, 0, $filter);
}
if ($nbtotalofrecords < 0) {
setEventMessages($object->error, $object->errors, 'errors');
}
}
$result = $object->fetchAllByAccount($sortorder, $sortfield, $limit, $offset, $filter);
if ($type == 'sub') {
$result = $object->fetchAllByAccount($sortorder, $sortfield, $limit, $offset, $filter, 'AND', 1);
} else {
$result = $object->fetchAllByAccount($sortorder, $sortfield, $limit, $offset, $filter);
}
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
}
$arrayofselected = is_array($toselect) ? $toselect : array();
$num = count($object->lines);
if ($action == 'delmouv') {
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?mvt_num='.GETPOST('mvt_num'), $langs->trans('DeleteMvt'), $langs->trans('ConfirmDeleteMvtPartial'), 'delmouvconfirm', '', 0, 1);
print $formconfirm;
///if ($action == 'delbookkeepingyear') {
// $form_question = array();
// $delyear = GETPOST('delyear', 'int');
// $deljournal = GETPOST('deljournal', 'alpha');
//
// if (empty($delyear)) {
// $delyear = dol_print_date(dol_now(), '%Y');
// }
// $month_array = array();
// for ($i = 1; $i <= 12; $i++) {
// $month_array[$i] = $langs->trans("Month".sprintf("%02d", $i));
// }
// $year_array = $formaccounting->selectyear_accountancy_bookkepping($delyear, 'delyear', 0, 'array');
// $journal_array = $formaccounting->select_journal($deljournal, 'deljournal', '', 1, 1, 1, '', 0, 1);
//
// $form_question['delmonth'] = array(
// 'name' => 'delmonth',
// 'type' => 'select',
// 'label' => $langs->trans('DelMonth'),
// 'values' => $month_array,
// 'default' => ''
// );
// $form_question['delyear'] = array(
// 'name' => 'delyear',
// 'type' => 'select',
// 'label' => $langs->trans('DelYear'),
// 'values' => $year_array,
// 'default' => $delyear
// );
// $form_question['deljournal'] = array(
// 'name' => 'deljournal',
// 'type' => 'other', // We don't use select here, the journal_array is already a select html component
// 'label' => $langs->trans('DelJournal'),
// 'value' => $journal_array,
// 'default' => $deljournal
// );
//
// $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?'.$param, $langs->trans('DeleteMvt'), $langs->trans('ConfirmDeleteMvt', $langs->transnoentitiesnoconv("RegistrationInAccounting")), 'delbookkeepingyearconfirm', $form_question, '', 1, 300);
//}
// Print form confirm
$formconfirm = '';
print $formconfirm;
// List of mass actions available
$arrayofmassactions = array();
if (getDolGlobalInt('ACCOUNTING_ENABLE_LETTERING') && $user->rights->accounting->mouvements->creer) {
$arrayofmassactions['lettering'] = img_picto('', 'check', 'class="pictofixedwidth"') . $langs->trans('Lettering');
$arrayofmassactions['preunlettering'] = img_picto('', 'uncheck', 'class="pictofixedwidth"') . $langs->trans('Unlettering');
}
if ($action == 'delbookkeepingyear') {
$form_question = array();
$delyear = GETPOST('delyear', 'int');
$deljournal = GETPOST('deljournal', 'alpha');
if (empty($delyear)) {
$delyear = dol_print_date(dol_now(), '%Y');
}
$month_array = array();
for ($i = 1; $i <= 12; $i++) {
$month_array[$i] = $langs->trans("Month".sprintf("%02d", $i));
}
$year_array = $formaccounting->selectyear_accountancy_bookkepping($delyear, 'delyear', 0, 'array');
$journal_array = $formaccounting->select_journal($deljournal, 'deljournal', '', 1, 1, 1, '', 0, 1);
$form_question['delmonth'] = array(
'name' => 'delmonth',
'type' => 'select',
'label' => $langs->trans('DelMonth'),
'values' => $month_array,
'default' => ''
);
$form_question['delyear'] = array(
'name' => 'delyear',
'type' => 'select',
'label' => $langs->trans('DelYear'),
'values' => $year_array,
'default' => $delyear
);
$form_question['deljournal'] = array(
'name' => 'deljournal',
'type' => 'other', // We don't use select here, the journal_array is already a select html component
'label' => $langs->trans('DelJournal'),
'value' => $journal_array,
'default' => $deljournal
);
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?'.$param, $langs->trans('DeleteMvt'), $langs->trans('ConfirmDeleteMvt', $langs->transnoentitiesnoconv("RegistrationInAccounting")), 'delbookkeepingyearconfirm', $form_question, '', 1, 300);
print $formconfirm;
if ($user->rights->accounting->mouvements->supprimer) {
$arrayofmassactions['predeletebookkeepingwriting'] = img_picto('', 'delete', 'class="pictofixedwidth"').$langs->trans("Delete");
}
if (GETPOST('nomassaction', 'int') || in_array($massaction, array('preunlettering', 'predeletebookkeepingwriting'))) {
$arrayofmassactions = array();
}
$massactionbutton = $form->selectMassAction($massaction, $arrayofmassactions);
print '<form method="POST" id="searchFormList" action="'.$_SERVER["PHP_SELF"].'">';
print '<input type="hidden" name="token" value="'.newToken().'">';
@@ -469,15 +597,22 @@ if ($optioncss != '') {
print '<input type="hidden" name="optioncss" value="'.$optioncss.'">';
}
print '<input type="hidden" name="formfilteraction" id="formfilteraction" value="list">';
print '<input type="hidden" name="type" value="'.$type.'">';
print '<input type="hidden" name="sortfield" value="'.$sortfield.'">';
print '<input type="hidden" name="sortorder" value="'.$sortorder.'">';
print '<input type="hidden" name="contextpage" value="'.$contextpage.'">';
$parameters = array();
$reshook = $hookmanager->executeHooks('addMoreActionsButtons', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
$reshook = $hookmanager->executeHooks('addMoreActionsButtonsList', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
if (empty($reshook)) {
$newcardbutton = dolGetButtonTitle($langs->trans('ViewFlatList'), '', 'fa fa-list paddingleft imgforviewmode', DOL_URL_ROOT.'/accountancy/bookkeeping/list.php?'.$param);
$newcardbutton .= dolGetButtonTitle($langs->trans('GroupByAccountAccounting'), '', 'fa fa-stream paddingleft imgforviewmode', DOL_URL_ROOT.'/accountancy/bookkeeping/listbyaccount.php?'.$param, '', 1, array('morecss' => 'marginleftonly btnTitleSelected'));
$newcardbutton .= dolGetButtonTitle($langs->trans('GroupBySubAccountAccounting'), '', 'fa fa-align-left vmirror paddingleft imgforviewmode', DOL_URL_ROOT.'/accountancy/bookkeeping/listbysubaccount.php?'.$param, '', 1, array('morecss' => 'marginleftonly'));
if ($type == 'sub') {
$newcardbutton .= dolGetButtonTitle($langs->trans('GroupByAccountAccounting'), '', 'fa fa-stream paddingleft imgforviewmode', DOL_URL_ROOT . '/accountancy/bookkeeping/listbyaccount.php?' . $url_param, '', 1, array('morecss' => 'marginleftonly'));
$newcardbutton .= dolGetButtonTitle($langs->trans('GroupBySubAccountAccounting'), '', 'fa fa-align-left vmirror paddingleft imgforviewmode', DOL_URL_ROOT . '/accountancy/bookkeeping/listbyaccount.php?type=sub&' . $url_param, '', 1, array('morecss' => 'marginleftonly btnTitleSelected'));
} else {
$newcardbutton .= dolGetButtonTitle($langs->trans('GroupByAccountAccounting'), '', 'fa fa-stream paddingleft imgforviewmode', DOL_URL_ROOT . '/accountancy/bookkeeping/listbyaccount.php?' . $url_param, '', 1, array('morecss' => 'marginleftonly btnTitleSelected'));
$newcardbutton .= dolGetButtonTitle($langs->trans('GroupBySubAccountAccounting'), '', 'fa fa-align-left vmirror paddingleft imgforviewmode', DOL_URL_ROOT . '/accountancy/bookkeeping/listbyaccount.php?type=sub&' . $url_param, '', 1, array('morecss' => 'marginleftonly'));
}
$newcardbutton .= dolGetButtonTitle($langs->trans('NewAccountingMvt'), '', 'fa fa-plus-circle paddingleft', DOL_URL_ROOT.'/accountancy/bookkeeping/card.php?action=create');
}
@@ -488,11 +623,29 @@ if ($limit > 0 && $limit != $conf->liste_limit) {
$param .= '&limit='.urlencode($limit);
}
print_barre_liste($title_page, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $result, $nbtotalofrecords, 'title_accountancy', 0, $newcardbutton, '', $limit, 0, 0, 1);
print_barre_liste($title_page, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $result, $nbtotalofrecords, 'title_accountancy', 0, $newcardbutton, '', $limit, 0, 0, 1);
if ($massaction == 'preunlettering') {
print $form->formconfirm($_SERVER["PHP_SELF"], $langs->trans("ConfirmMassUnlettering"), $langs->trans("ConfirmMassUnletteringQuestion", count($toselect)), "unlettering", null, '', 0, 200, 500, 1);
} elseif ($massaction == 'predeletebookkeepingwriting') {
print $form->formconfirm($_SERVER["PHP_SELF"], $langs->trans("ConfirmMassDeleteBookkeepingWriting"), $langs->trans("ConfirmMassDeleteBookkeepingWritingQuestion", count($toselect)), "deletebookkeepingwriting", null, '', 0, 200, 500, 1);
}
//DeleteMvt=Supprimer des lignes d'opérations de la comptabilité
//DelMonth=Mois à effacer
//DelYear=Année à supprimer
//DelJournal=Journal à supprimer
//ConfirmDeleteMvt=Cette action supprime les lignes des opérations pour l'année/mois et/ou pour le journal sélectionné (au moins un critère est requis). Vous devrez utiliser de nouveau la fonctionnalité '%s' pour retrouver vos écritures dans la comptabilité.
//ConfirmDeleteMvtPartial=Cette action supprime l'écriture de la comptabilité (toutes les lignes opérations liées à une même écriture seront effacées).
//$topicmail = "Information";
//$modelmail = "accountingbookkeeping";
//$objecttmp = new BookKeeping($db);
//$trackid = 'bk'.$object->id;
include DOL_DOCUMENT_ROOT.'/core/tpl/massactions_pre.tpl.php';
$varpage = empty($contextpage) ? $_SERVER["PHP_SELF"] : $contextpage;
$selectedfields = $form->multiSelectArrayWithCheckbox('selectedfields', $arrayfields, $varpage); // This also change content of $arrayfields
if ($massactionbutton) {
if ($massactionbutton && $contextpage != 'poslist') {
$selectedfields .= $form->showCheckAddButtons('checkforselect', 1);
}
@@ -503,15 +656,28 @@ if (preg_match('/^asc/i', $sortorder)) {
$sortorder = "desc";
}
// Warning to explain why list of record is not consistent with the other list view (missing a lot of lines)
if ($type == 'sub') {
print info_admin($langs->trans("WarningRecordWithoutSubledgerAreExcluded"));
}
$moreforfilter = '';
// Accountancy account
$moreforfilter .= '<div class="divsearchfield">';
$moreforfilter .= $langs->trans('AccountAccounting').': ';
$moreforfilter .= '<div class="nowrap inline-block">';
$moreforfilter .= $formaccounting->select_account($search_accountancy_code_start, 'search_accountancy_code_start', $langs->trans('From'), array(), 1, 1, 'maxwidth200');
if ($type == 'sub') {
$moreforfilter .= $formaccounting->select_auxaccount($search_accountancy_code_start, 'search_accountancy_code_start', $langs->trans('From'), 'maxwidth200');
} else {
$moreforfilter .= $formaccounting->select_account($search_accountancy_code_start, 'search_accountancy_code_start', $langs->trans('From'), array(), 1, 1, 'maxwidth200');
}
$moreforfilter .= ' ';
$moreforfilter .= $formaccounting->select_account($search_accountancy_code_end, 'search_accountancy_code_end', $langs->trans('to'), array(), 1, 1, 'maxwidth200');
if ($type == 'sub') {
$moreforfilter .= $formaccounting->select_auxaccount($search_accountancy_code_end, 'search_accountancy_code_end', $langs->trans('to'), 'maxwidth200');
} else {
$moreforfilter .= $formaccounting->select_account($search_accountancy_code_end, 'search_accountancy_code_end', $langs->trans('to'), array(), 1, 1, 'maxwidth200');
}
$moreforfilter .= '</div>';
$moreforfilter .= '</div>';
@@ -599,6 +765,11 @@ if (!empty($arrayfields['t.date_validated']['checked'])) {
print '</div>';
print '</td>';
}
if (!empty($arrayfields['t.import_key']['checked'])) {
print '<td class="liste_titre center">';
print '<input class="flat searchstring maxwidth50" type="text" name="search_import_key" value="'.dol_escape_htmltag($search_import_key).'">';
print '</td>';
}
// Fields from hook
$parameters = array('arrayfields'=>$arrayfields);
@@ -643,6 +814,9 @@ if (!empty($arrayfields['t.date_export']['checked'])) {
if (!empty($arrayfields['t.date_validated']['checked'])) {
print_liste_field_titre($arrayfields['t.date_validated']['label'], $_SERVER['PHP_SELF'], "t.date_validated", "", $param, '', $sortfield, $sortorder, 'center ');
}
if (!empty($arrayfields['t.import_key']['checked'])) {
print_liste_field_titre($arrayfields['t.import_key']['label'], $_SERVER["PHP_SELF"], "t.import_key", "", $param, '', $sortfield, $sortorder, 'center ');
}
// Hook fields
$parameters = array('arrayfields'=>$arrayfields, 'param'=>$param, 'sortfield'=>$sortfield, 'sortorder'=>$sortorder);
$reshook = $hookmanager->executeHooks('printFieldListTitle', $parameters); // Note that $action and $object may have been modified by hook
@@ -650,24 +824,33 @@ print $hookmanager->resPrint;
print_liste_field_titre($selectedfields, $_SERVER["PHP_SELF"], "", '', '', '', $sortfield, $sortorder, 'center maxwidthsearch ');
print "</tr>\n";
$total_debit = 0;
$total_credit = 0;
$sous_total_debit = 0;
$sous_total_credit = 0;
$displayed_account_number = null; // Start with undefined to be able to distinguish with empty
// Loop on record
// --------------------------------------------------------------------
$i = 0;
$totalarray = array();
$totalarray['val'] = array ();
$totalarray['nbfield'] = 0;
$total_debit = 0;
$total_credit = 0;
$sous_total_debit = 0;
$sous_total_credit = 0;
$totalarray['val']['totaldebit'] = 0;
$totalarray['val']['totalcredit'] = 0;
while ($i < min($num, $limit)) {
$line = $object->lines[$i];
$total_debit += $line->debit;
$total_credit += $line->credit;
$accountg = length_accountg($line->numero_compte);
if ($type == 'sub') {
$accountg = length_accounta($line->subledger_account);
} else {
$accountg = length_accountg($line->numero_compte);
}
//if (empty($accountg)) $accountg = '-';
$colspan = 0; // colspan before field 'label of operation'
@@ -686,7 +869,11 @@ while ($i < min($num, $limit)) {
// Show a subtotal by accounting account
if (isset($displayed_account_number)) {
print '<tr class="liste_total">';
print '<td class="right" colspan="'.$colspan.'">'.$langs->trans("TotalForAccount").' '.length_accountg($displayed_account_number).':</td>';
if ($type == 'sub') {
print '<td class="right" colspan="' . $colspan . '">' . $langs->trans("TotalForAccount") . ' ' . length_accounta($displayed_account_number) . ':</td>';
} else {
print '<td class="right" colspan="' . $colspan . '">' . $langs->trans("TotalForAccount") . ' ' . length_accountg($displayed_account_number) . ':</td>';
}
print '<td class="nowrap right">'.price($sous_total_debit).'</td>';
print '<td class="nowrap right">'.price($sous_total_credit).'</td>';
print '<td colspan="'.$colspanend.'"></td>';
@@ -712,11 +899,28 @@ while ($i < min($num, $limit)) {
// Show the break account
print '<tr class="trforbreak">';
print '<td colspan="'.($totalarray['nbfield'] ? $totalarray['nbfield'] : 10).'" class="tdforbreak">';
if ($line->numero_compte != "" && $line->numero_compte != '-1') {
print length_accountg($line->numero_compte).' : '.$object->get_compte_desc($line->numero_compte);
print '<td colspan="'.($totalarray['nbfield'] ? $totalarray['nbfield'] : count($arrayfields)+1).'" class="tdforbreak">';
if ($type == 'sub') {
if ($line->subledger_account != "" && $line->subledger_account != '-1') {
print $line->subledger_label . ' : ' . length_accounta($line->subledger_account);
} else {
// Should not happen: subledger account must be null or a non empty value
print '<span class="error">' . $langs->trans("Unknown");
if ($line->subledger_label) {
print ' (' . $line->subledger_label . ')';
$htmltext = 'EmptyStringForSubledgerAccountButSubledgerLabelDefined';
} else {
$htmltext = 'EmptyStringForSubledgerAccountAndSubledgerLabel';
}
print $form->textwithpicto('', $htmltext);
print '</span>';
}
} else {
print '<span class="error">'.$langs->trans("Unknown").'</span>';
if ($line->numero_compte != "" && $line->numero_compte != '-1') {
print length_accountg($line->numero_compte) . ' : ' . $object->get_compte_desc($line->numero_compte);
} else {
print '<span class="error">' . $langs->trans("Unknown") . '</span>';
}
}
print '</td>';
print '</tr>';
@@ -890,22 +1094,26 @@ while ($i < min($num, $limit)) {
}
}
if (!empty($arrayfields['t.import_key']['checked'])) {
print '<td class="tdoverflowmax100">'.$line->import_key."</td>\n";
if (!$i) {
$totalarray['nbfield']++;
}
}
// Fields from hook
$parameters = array('arrayfields'=>$arrayfields, 'obj'=>$obj);
$parameters = array('arrayfields'=>$arrayfields, 'obj'=>$line);
$reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook
print $hookmanager->resPrint;
// Action column
print '<td class="nowraponall center">';
if (empty($line->date_export) && empty($line->date_validation)) {
if ($user->rights->accounting->mouvements->creer) {
print '<a class="editfielda paddingleft marginrightonly" href="' . DOL_URL_ROOT . '/accountancy/bookkeeping/card.php?piece_num=' . $line->piece_num . $param . '&page=' . $page . ($sortfield ? '&sortfield=' . $sortfield : '') . ($sortorder ? '&sortorder=' . $sortorder : '') . '">' . img_edit() . '</a>';
}
}
if (empty($line->date_validation)) {
if ($user->rights->accounting->mouvements->supprimer) {
print '<a class="reposition paddingleft marginrightonly" href="'.$_SERVER['PHP_SELF'].'?action=delmouv&token='.newToken().'&mvt_num='.$line->piece_num.$param.'&page='.$page.($sortfield ? '&sortfield='.$sortfield : '').($sortorder ? '&sortorder='.$sortorder : '').'">'.img_delete().'</a>';
if (($massactionbutton || $massaction) && $contextpage != 'poslist') { // If we are in select mode (massactionbutton defined) or if we have already selected and sent an action ($massaction) defined
$selected = 0;
if (in_array($line->id, $arrayofselected)) {
$selected = 1;
}
print '<input id="cb' . $line->id . '" class="flat checkforselect" type="checkbox" name="toselect[]" value="' . $line->id . '"' . ($selected ? ' checked="checked"' : '') . ' />';
}
print '</td>';
if (!$i) {
@@ -955,11 +1163,11 @@ print "</table>";
print '</div>';
// TODO Replace this with mass delete action
if ($user->rights->accounting->mouvements->supprimer_tous) {
print '<div class="tabsAction tabsActionNoBottom">'."\n";
print '<a class="butActionDelete" name="button_delmvt" href="'.$_SERVER["PHP_SELF"].'?action=delbookkeepingyear&token='.newToken().($param ? '&'.$param : '').'">'.$langs->trans("DeleteMvt").'</a>';
print '</div>';
}
//if ($user->rights->accounting->mouvements->supprimer_tous) {
// print '<div class="tabsAction tabsActionNoBottom">'."\n";
// print '<a class="butActionDelete" name="button_delmvt" href="'.$_SERVER["PHP_SELF"].'?action=delbookkeepingyear&token='.newToken().($param ? '&'.$param : '').'">'.$langs->trans("DeleteMvt").'</a>';
// print '</div>';
//}
print '</form>';

View File

@@ -1,979 +0,0 @@
<?php
/* Copyright (C) 2016 Neil Orley <neil.orley@oeris.fr>
* Copyright (C) 2013-2016 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2020 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2013-2021 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2018-2020 Frédéric France <frederic.france@netlogic.fr>
*
* 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
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
/**
* \file htdocs/accountancy/bookkeeping/listbysubaccount.php
* \ingroup Accountancy (Double entries)
* \brief List operation of ledger ordered by subaccount number
*/
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/bookkeeping.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingjournal.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
// Load translation files required by the page
$langs->loadLangs(array("accountancy", "compta"));
$action = GETPOST('action', 'aZ09');
$search_date_startyear = GETPOST('search_date_startyear', 'int');
$search_date_startmonth = GETPOST('search_date_startmonth', 'int');
$search_date_startday = GETPOST('search_date_startday', 'int');
$search_date_endyear = GETPOST('search_date_endyear', 'int');
$search_date_endmonth = GETPOST('search_date_endmonth', 'int');
$search_date_endday = GETPOST('search_date_endday', 'int');
$search_date_start = dol_mktime(0, 0, 0, $search_date_startmonth, $search_date_startday, $search_date_startyear);
$search_date_end = dol_mktime(23, 59, 59, $search_date_endmonth, $search_date_endday, $search_date_endyear);
$search_doc_date = dol_mktime(0, 0, 0, GETPOST('doc_datemonth', 'int'), GETPOST('doc_dateday', 'int'), GETPOST('doc_dateyear', 'int'));
$search_date_export_startyear = GETPOST('search_date_export_startyear', 'int');
$search_date_export_startmonth = GETPOST('search_date_export_startmonth', 'int');
$search_date_export_startday = GETPOST('search_date_export_startday', 'int');
$search_date_export_endyear = GETPOST('search_date_export_endyear', 'int');
$search_date_export_endmonth = GETPOST('search_date_export_endmonth', 'int');
$search_date_export_endday = GETPOST('search_date_export_endday', 'int');
$search_date_export_start = dol_mktime(0, 0, 0, $search_date_export_startmonth, $search_date_export_startday, $search_date_export_startyear);
$search_date_export_end = dol_mktime(23, 59, 59, $search_date_export_endmonth, $search_date_export_endday, $search_date_export_endyear);
$search_date_validation_startyear = GETPOST('search_date_validation_startyear', 'int');
$search_date_validation_startmonth = GETPOST('search_date_validation_startmonth', 'int');
$search_date_validation_startday = GETPOST('search_date_validation_startday', 'int');
$search_date_validation_endyear = GETPOST('search_date_validation_endyear', 'int');
$search_date_validation_endmonth = GETPOST('search_date_validation_endmonth', 'int');
$search_date_validation_endday = GETPOST('search_date_validation_endday', 'int');
$search_date_validation_start = dol_mktime(0, 0, 0, $search_date_validation_startmonth, $search_date_validation_startday, $search_date_validation_startyear);
$search_date_validation_end = dol_mktime(23, 59, 59, $search_date_validation_endmonth, $search_date_validation_endday, $search_date_validation_endyear);
$search_accountancy_code = GETPOST("search_accountancy_code");
$search_accountancy_code_start = GETPOST('search_accountancy_code_start', 'alpha');
if ($search_accountancy_code_start == - 1) {
$search_accountancy_code_start = '';
}
$search_accountancy_code_end = GETPOST('search_accountancy_code_end', 'alpha');
if ($search_accountancy_code_end == - 1) {
$search_accountancy_code_end = '';
}
$search_doc_ref = GETPOST('search_doc_ref', 'alpha');
$search_label_operation = GETPOST('search_label_operation', 'alpha');
$search_mvt_num = GETPOST('search_mvt_num', 'int');
$search_direction = GETPOST('search_direction', 'alpha');
$search_ledger_code = GETPOST('search_ledger_code', 'array');
$search_debit = GETPOST('search_debit', 'alpha');
$search_credit = GETPOST('search_credit', 'alpha');
$search_lettering_code = GETPOST('search_lettering_code', 'alpha');
$search_not_reconciled = GETPOST('search_not_reconciled', 'alpha');
if (GETPOST("button_delmvt_x") || GETPOST("button_delmvt.x") || GETPOST("button_delmvt")) {
$action = 'delbookkeepingyear';
}
// Load variable for pagination
$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : (empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION) ? $conf->liste_limit : $conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION);
$sortfield = GETPOST('sortfield', 'aZ09comma');
$sortorder = GETPOST('sortorder', 'aZ09comma');
$page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int');
if (empty($page) || $page < 0) {
$page = 0;
}
$offset = $limit * $page;
$pageprev = $page - 1;
$pagenext = $page + 1;
if ($sortorder == "") {
$sortorder = "ASC";
}
if ($sortfield == "") {
$sortfield = "t.doc_date,t.rowid";
}
// Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context
$object = new BookKeeping($db);
$formfile = new FormFile($db);
$hookmanager->initHooks(array('bookkeepingbysubaccountlist'));
$formaccounting = new FormAccounting($db);
$form = new Form($db);
if (empty($search_date_start) && empty($search_date_end) && !GETPOSTISSET('search_date_startday') && !GETPOSTISSET('search_date_startmonth') && !GETPOSTISSET('search_date_starthour')) {
$sql = "SELECT date_start, date_end from ".MAIN_DB_PREFIX."accounting_fiscalyear ";
$sql .= " where date_start < '".$db->idate(dol_now())."' and date_end > '".$db->idate(dol_now())."'";
$sql .= $db->plimit(1);
$res = $db->query($sql);
if ($res->num_rows > 0) {
$fiscalYear = $db->fetch_object($res);
$search_date_start = strtotime($fiscalYear->date_start);
$search_date_end = strtotime($fiscalYear->date_end);
} else {
$month_start = ($conf->global->SOCIETE_FISCAL_MONTH_START ? ($conf->global->SOCIETE_FISCAL_MONTH_START) : 1);
$year_start = dol_print_date(dol_now(), '%Y');
if (dol_print_date(dol_now(), '%m') < $month_start) {
$year_start--; // If current month is lower that starting fiscal month, we start last year
}
$year_end = $year_start + 1;
$month_end = $month_start - 1;
if ($month_end < 1) {
$month_end = 12;
$year_end--;
}
$search_date_start = dol_mktime(0, 0, 0, $month_start, 1, $year_start);
$search_date_end = dol_get_last_day($year_end, $month_end);
}
}
$arrayfields = array(
// 't.subledger_account'=>array('label'=>$langs->trans("SubledgerAccount"), 'checked'=>1),
't.piece_num'=>array('label'=>$langs->trans("TransactionNumShort"), 'checked'=>1),
't.code_journal'=>array('label'=>$langs->trans("Codejournal"), 'checked'=>1),
't.doc_date'=>array('label'=>$langs->trans("Docdate"), 'checked'=>1),
't.doc_ref'=>array('label'=>$langs->trans("Piece"), 'checked'=>1),
't.label_operation'=>array('label'=>$langs->trans("Label"), 'checked'=>1),
't.debit'=>array('label'=>$langs->trans("Debit"), 'checked'=>1),
't.credit'=>array('label'=>$langs->trans("Credit"), 'checked'=>1),
't.lettering_code'=>array('label'=>$langs->trans("LetteringCode"), 'checked'=>1),
't.date_export'=>array('label'=>$langs->trans("DateExport"), 'checked'=>1),
't.date_validated'=>array('label'=>$langs->trans("DateValidation"), 'checked'=>1),
);
if (empty($conf->global->ACCOUNTING_ENABLE_LETTERING)) {
unset($arrayfields['t.lettering_code']);
}
if ($search_date_start && empty($search_date_startyear)) {
$tmparray = dol_getdate($search_date_start);
$search_date_startyear = $tmparray['year'];
$search_date_startmonth = $tmparray['mon'];
$search_date_startday = $tmparray['mday'];
}
if ($search_date_end && empty($search_date_endyear)) {
$tmparray = dol_getdate($search_date_end);
$search_date_endyear = $tmparray['year'];
$search_date_endmonth = $tmparray['mon'];
$search_date_endday = $tmparray['mday'];
}
if (empty($conf->accounting->enabled)) {
accessforbidden();
}
if ($user->socid > 0) {
accessforbidden();
}
if (empty($user->rights->accounting->mouvements->lire)) {
accessforbidden();
}
/*
* Action
*/
if (GETPOST('cancel', 'alpha')) {
$action = 'list'; $massaction = '';
}
if (!GETPOST('confirmmassaction', 'alpha') && $massaction != 'presend' && $massaction != 'confirm_presend') {
$massaction = '';
}
$parameters = array('socid'=>$socid);
$reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks
if ($reshook < 0) {
setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
}
if (empty($reshook)) {
include DOL_DOCUMENT_ROOT.'/core/actions_changeselectedfields.inc.php';
if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) { // All tests are required to be compatible with all browsers
$search_doc_date = '';
$search_accountancy_code = '';
$search_accountancy_code_start = '';
$search_accountancy_code_end = '';
$search_label_account = '';
$search_doc_ref = '';
$search_label_operation = '';
$search_mvt_num = '';
$search_direction = '';
$search_ledger_code = array();
$search_date_start = '';
$search_date_end = '';
$search_date_startyear = '';
$search_date_startmonth = '';
$search_date_startday = '';
$search_date_endyear = '';
$search_date_endmonth = '';
$search_date_endday = '';
$search_date_export_start = '';
$search_date_export_end = '';
$search_date_export_startyear = '';
$search_date_export_startmonth = '';
$search_date_export_startday = '';
$search_date_export_endyear = '';
$search_date_export_endmonth = '';
$search_date_export_endday = '';
$search_date_validation_start = '';
$search_date_validation_end = '';
$search_date_validation_startyear = '';
$search_date_validation_startmonth = '';
$search_date_validation_startday = '';
$search_date_validation_endyear = '';
$search_date_validation_endmonth = '';
$search_date_validation_endday = '';
$search_debit = '';
$search_credit = '';
$search_lettering_code = '';
$search_not_reconciled = '';
}
// Must be after the remove filter action, before the export.
$param = '';
$filter = array();
if (!empty($search_date_start)) {
$filter['t.doc_date>='] = $search_date_start;
$param .= '&search_date_startmonth='.$search_date_startmonth.'&search_date_startday='.$search_date_startday.'&search_date_startyear='.$search_date_startyear;
}
if (!empty($search_date_end)) {
$filter['t.doc_date<='] = $search_date_end;
$param .= '&search_date_endmonth='.$search_date_endmonth.'&search_date_endday='.$search_date_endday.'&search_date_endyear='.$search_date_endyear;
}
if (!empty($search_doc_date)) {
$filter['t.doc_date'] = $search_doc_date;
$param .= '&doc_datemonth='.GETPOST('doc_datemonth', 'int').'&doc_dateday='.GETPOST('doc_dateday', 'int').'&doc_dateyear='.GETPOST('doc_dateyear', 'int');
}
if (!empty($search_accountancy_code_start)) {
$filter['t.subledger_account>='] = $search_accountancy_code_start;
$param .= '&search_accountancy_code_start='.urlencode($search_accountancy_code_start);
}
if (!empty($search_accountancy_code_end)) {
$filter['t.subledger_account<='] = $search_accountancy_code_end;
$param .= '&search_accountancy_code_end='.urlencode($search_accountancy_code_end);
}
if (!empty($search_label_account)) {
$filter['t.label_compte'] = $search_label_account;
$param .= '&search_label_compte='.urlencode($search_label_account);
}
if (!empty($search_mvt_num)) {
$filter['t.piece_num'] = $search_mvt_num;
$param .= '&search_mvt_num='.urlencode($search_mvt_num);
}
if (!empty($search_doc_ref)) {
$filter['t.doc_ref'] = $search_doc_ref;
$param .= '&search_doc_ref='.urlencode($search_doc_ref);
}
if (!empty($search_label_operation)) {
$filter['t.label_operation'] = $search_label_operation;
$param .= '&search_label_operation='.urlencode($search_label_operation);
}
if (!empty($search_direction)) {
$filter['t.sens'] = $search_direction;
$param .= '&search_direction='.urlencode($search_direction);
}
if (!empty($search_ledger_code)) {
$filter['t.code_journal'] = $search_ledger_code;
foreach ($search_ledger_code as $code) {
$param .= '&search_ledger_code[]='.urlencode($code);
}
}
if (!empty($search_debit)) {
$filter['t.debit'] = $search_debit;
$param .= '&search_debit='.urlencode($search_debit);
}
if (!empty($search_credit)) {
$filter['t.credit'] = $search_credit;
$param .= '&search_credit='.urlencode($search_credit);
}
if (!empty($search_lettering_code)) {
$filter['t.lettering_code'] = $search_lettering_code;
$param .= '&search_lettering_code='.urlencode($search_lettering_code);
}
if (!empty($search_not_reconciled)) {
$filter['t.reconciled_option'] = $search_not_reconciled;
$param .= '&search_not_reconciled='.urlencode($search_not_reconciled);
}
if (!empty($search_date_export_start)) {
$filter['t.date_export>='] = $search_date_export_start;
$param .= '&search_date_export_startmonth='.$search_date_export_startmonth.'&search_date_export_startday='.$search_date_export_startday.'&search_date_export_startyear='.$search_date_export_startyear;
}
if (!empty($search_date_export_end)) {
$filter['t.date_export<='] = $search_date_export_end;
$param .= '&search_date_export_endmonth='.$search_date_export_endmonth.'&search_date_export_endday='.$search_date_export_endday.'&search_date_export_endyear='.$search_date_export_endyear;
}
if (!empty($search_date_validation_start)) {
$filter['t.date_validated>='] = $search_date_validation_start;
$param .= '&search_date_validation_startmonth='.$search_date_validation_startmonth.'&search_date_validation_startday='.$search_date_validation_startday.'&search_date_validation_startyear='.$search_date_validation_startyear;
}
if (!empty($search_date_validation_end)) {
$filter['t.date_validated<='] = $search_date_validation_end;
$param .= '&search_date_validation_endmonth='.$search_date_validation_endmonth.'&search_date_validation_endday='.$search_date_validation_endday.'&search_date_validation_endyear='.$search_date_validation_endyear;
}
}
if ($action == 'delbookkeeping' && $user->rights->accounting->mouvements->supprimer) {
$import_key = GETPOST('importkey', 'alpha');
if (!empty($import_key)) {
$result = $object->deleteByImportkey($import_key);
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
}
// Make a redirect to avoid to launch the delete later after a back button
header("Location: ".$_SERVER["PHP_SELF"].($param ? '?'.$param : ''));
exit;
}
}
if ($action == 'delbookkeepingyearconfirm' && $user->rights->accounting->mouvements->supprimer_tous) {
$delmonth = GETPOST('delmonth', 'int');
$delyear = GETPOST('delyear', 'int');
if ($delyear == -1) {
$delyear = 0;
}
$deljournal = GETPOST('deljournal', 'alpha');
if ($deljournal == -1) {
$deljournal = 0;
}
if (!empty($delmonth) || !empty($delyear) || !empty($deljournal)) {
$result = $object->deleteByYearAndJournal($delyear, $deljournal, '', ($delmonth > 0 ? $delmonth : 0));
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
} else {
setEventMessages("RecordDeleted", null, 'mesgs');
}
// Make a redirect to avoid to launch the delete later after a back button
header("Location: ".$_SERVER["PHP_SELF"].($param ? '?'.$param : ''));
exit;
} else {
setEventMessages("NoRecordDeleted", null, 'warnings');
}
}
if ($action == 'delmouvconfirm' && $user->rights->accounting->mouvements->supprimer) {
$mvt_num = GETPOST('mvt_num', 'int');
if (!empty($mvt_num)) {
$result = $object->deleteMvtNum($mvt_num);
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
} else {
setEventMessages($langs->trans("RecordDeleted"), null, 'mesgs');
}
header("Location: ".$_SERVER["PHP_SELF"]."?noreset=1".($param ? '&'.$param : ''));
exit;
}
}
/*
* View
*/
$formaccounting = new FormAccounting($db);
$formfile = new FormFile($db);
$formother = new FormOther($db);
$form = new Form($db);
$title_page = $langs->trans("Operations").' - '.$langs->trans("VueByAccountAccounting").' ('.$langs->trans("BookkeepingSubAccount").')';
llxHeader('', $title_page);
// List
$nbtotalofrecords = '';
if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) {
$nbtotalofrecords = $object->fetchAllByAccount($sortorder, $sortfield, 0, 0, $filter, 'AND', 1);
if ($nbtotalofrecords < 0) {
setEventMessages($object->error, $object->errors, 'errors');
}
}
$result = $object->fetchAllByAccount($sortorder, $sortfield, $limit, $offset, $filter, 'AND', 1);
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
}
$num = count($object->lines);
if ($action == 'delmouv') {
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?mvt_num='.GETPOST('mvt_num'), $langs->trans('DeleteMvt'), $langs->trans('ConfirmDeleteMvtPartial'), 'delmouvconfirm', '', 0, 1);
print $formconfirm;
}
if ($action == 'delbookkeepingyear') {
$form_question = array();
$delyear = GETPOST('delyear', 'int');
$deljournal = GETPOST('deljournal', 'alpha');
if (empty($delyear)) {
$delyear = dol_print_date(dol_now(), '%Y');
}
$month_array = array();
for ($i = 1; $i <= 12; $i++) {
$month_array[$i] = $langs->trans("Month".sprintf("%02d", $i));
}
$year_array = $formaccounting->selectyear_accountancy_bookkepping($delyear, 'delyear', 0, 'array');
$journal_array = $formaccounting->select_journal($deljournal, 'deljournal', '', 1, 1, 1, '', 0, 1);
$form_question['delmonth'] = array(
'name' => 'delmonth',
'type' => 'select',
'label' => $langs->trans('DelMonth'),
'values' => $month_array,
'default' => ''
);
$form_question['delyear'] = array(
'name' => 'delyear',
'type' => 'select',
'label' => $langs->trans('DelYear'),
'values' => $year_array,
'default' => $delyear
);
$form_question['deljournal'] = array(
'name' => 'deljournal',
'type' => 'other', // We don't use select here, the journal_array is already a select html component
'label' => $langs->trans('DelJournal'),
'value' => $journal_array,
'default' => $deljournal
);
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?'.$param, $langs->trans('DeleteMvt'), $langs->trans('ConfirmDeleteMvt', $langs->transnoentitiesnoconv("RegistrationInAccounting")), 'delbookkeepingyearconfirm', $form_question, '', 1, 300);
print $formconfirm;
}
print '<form method="POST" id="searchFormList" action="'.$_SERVER["PHP_SELF"].'">';
print '<input type="hidden" name="token" value="'.newToken().'">';
print '<input type="hidden" name="action" value="list">';
if ($optioncss != '') {
print '<input type="hidden" name="optioncss" value="'.$optioncss.'">';
}
print '<input type="hidden" name="formfilteraction" id="formfilteraction" value="list">';
print '<input type="hidden" name="sortfield" value="'.$sortfield.'">';
print '<input type="hidden" name="sortorder" value="'.$sortorder.'">';
$parameters = array();
$reshook = $hookmanager->executeHooks('addMoreActionsButtons', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
if (empty($reshook)) {
$newcardbutton = dolGetButtonTitle($langs->trans('ViewFlatList'), '', 'fa fa-list paddingleft imgforviewmode', DOL_URL_ROOT.'/accountancy/bookkeeping/list.php?'.$param);
$newcardbutton .= dolGetButtonTitle($langs->trans('GroupByAccountAccounting'), '', 'fa fa-stream paddingleft imgforviewmode', DOL_URL_ROOT.'/accountancy/bookkeeping/listbyaccount.php?'.$param, '', 1, array('morecss' => 'marginleftonly'));
$newcardbutton .= dolGetButtonTitle($langs->trans('GroupBySubAccountAccounting'), '', 'fa fa-align-left vmirror paddingleft imgforviewmode', DOL_URL_ROOT.'/accountancy/bookkeeping/listbysubaccount.php?'.$param, '', 1, array('morecss' => 'marginleftonly btnTitleSelected'));
$newcardbutton .= dolGetButtonTitle($langs->trans('NewAccountingMvt'), '', 'fa fa-plus-circle paddingleft', DOL_URL_ROOT.'/accountancy/bookkeeping/card.php?action=create');
}
if (!empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) {
$param .= '&contextpage='.urlencode($contextpage);
}
if ($limit > 0 && $limit != $conf->liste_limit) {
$param .= '&limit='.urlencode($limit);
}
print_barre_liste($title_page, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $result, $nbtotalofrecords, 'title_accountancy', 0, $newcardbutton, '', $limit, 0, 0, 1);
print info_admin($langs->trans("WarningRecordWithoutSubledgerAreExcluded"));
$varpage = empty($contextpage) ? $_SERVER["PHP_SELF"] : $contextpage;
$selectedfields = $form->multiSelectArrayWithCheckbox('selectedfields', $arrayfields, $varpage); // This also change content of $arrayfields
if ($massactionbutton) {
$selectedfields .= $form->showCheckAddButtons('checkforselect', 1);
}
// Reverse sort order
if (preg_match('/^asc/i', $sortorder)) {
$sortorder = "asc";
} else {
$sortorder = "desc";
}
$moreforfilter = '';
// Accountancy account
$moreforfilter .= '<div class="divsearchfield">';
$moreforfilter .= $langs->trans('AccountAccounting').': ';
$moreforfilter .= '<div class="nowrap inline-block">';
$moreforfilter .= $formaccounting->select_auxaccount($search_accountancy_code_start, 'search_accountancy_code_start', $langs->trans('From'), 'maxwidth200');
$moreforfilter .= ' ';
$moreforfilter .= $formaccounting->select_auxaccount($search_accountancy_code_end, 'search_accountancy_code_end', $langs->trans('to'), 'maxwidth200');
$moreforfilter .= '</div>';
$moreforfilter .= '</div>';
$parameters = array();
$reshook = $hookmanager->executeHooks('printFieldPreListTitle', $parameters); // Note that $action and $object may have been modified by hook
if (empty($reshook)) {
$moreforfilter .= $hookmanager->resPrint;
} else {
$moreforfilter = $hookmanager->resPrint;
}
print '<div class="liste_titre liste_titre_bydiv centpercent">';
print $moreforfilter;
print '</div>';
print '<div class="div-table-responsive">';
print '<table class="tagtable liste centpercent">';
// Filters lines
print '<tr class="liste_titre_filter">';
// Movement number
if (!empty($arrayfields['t.piece_num']['checked'])) {
print '<td class="liste_titre"><input type="text" name="search_mvt_num" size="6" value="'.dol_escape_htmltag($search_mvt_num).'"></td>';
}
// Code journal
if (!empty($arrayfields['t.code_journal']['checked'])) {
print '<td class="liste_titre center">';
print $formaccounting->multi_select_journal($search_ledger_code, 'search_ledger_code', 0, 1, 1, 1);
print '</td>';
}
// Date document
if (!empty($arrayfields['t.doc_date']['checked'])) {
print '<td class="liste_titre center">';
print '<div class="nowrap">';
print $form->selectDate($search_date_start, 'search_date_start', 0, 0, 1, '', 1, 0, 0, '', '', '', '', 1, '', $langs->trans("From"));
print '</div>';
print '<div class="nowrap">';
print $form->selectDate($search_date_end, 'search_date_end', 0, 0, 1, '', 1, 0, 0, '', '', '', '', 1, '', $langs->trans("to"));
print '</div>';
print '</td>';
}
// Ref document
if (!empty($arrayfields['t.doc_ref']['checked'])) {
print '<td class="liste_titre"><input type="text" size="7" class="flat" name="search_doc_ref" value="'.dol_escape_htmltag($search_doc_ref).'"/></td>';
}
// Label operation
if (!empty($arrayfields['t.label_operation']['checked'])) {
print '<td class="liste_titre"><input type="text" size="7" class="flat" name="search_label_operation" value="'.dol_escape_htmltag($search_label_operation).'"/></td>';
}
// Debit
if (!empty($arrayfields['t.debit']['checked'])) {
print '<td class="liste_titre right"><input type="text" class="flat" name="search_debit" size="4" value="'.dol_escape_htmltag($search_debit).'"></td>';
}
// Credit
if (!empty($arrayfields['t.credit']['checked'])) {
print '<td class="liste_titre right"><input type="text" class="flat" name="search_credit" size="4" value="'.dol_escape_htmltag($search_credit).'"></td>';
}
// Lettering code
if (!empty($arrayfields['t.lettering_code']['checked'])) {
print '<td class="liste_titre center">';
print '<input type="text" size="3" class="flat" name="search_lettering_code" value="'.$search_lettering_code.'"/>';
print '<br><span class="nowrap"><input type="checkbox" name="search_not_reconciled" value="notreconciled"'.($search_not_reconciled == 'notreconciled' ? ' checked' : '').'>'.$langs->trans("NotReconciled").'</span>';
print '</td>';
}
// Date export
if (!empty($arrayfields['t.date_export']['checked'])) {
print '<td class="liste_titre center">';
print '<div class="nowrap">';
print $form->selectDate($search_date_export_start, 'search_date_export_start', 0, 0, 1, '', 1, 0, 0, '', '', '', '', 1, '', $langs->trans("From"));
print '</div>';
print '<div class="nowrap">';
print $form->selectDate($search_date_export_end, 'search_date_export_end', 0, 0, 1, '', 1, 0, 0, '', '', '', '', 1, '', $langs->trans("to"));
print '</div>';
print '</td>';
}
// Date validation
if (!empty($arrayfields['t.date_validated']['checked'])) {
print '<td class="liste_titre center">';
print '<div class="nowrap">';
print $form->selectDate($search_date_validation_start, 'search_date_validation_start', 0, 0, 1, '', 1, 0, 0, '', '', '', '', 1, '', $langs->trans("From"));
print '</div>';
print '<div class="nowrap">';
print $form->selectDate($search_date_validation_end, 'search_date_validation_end', 0, 0, 1, '', 1, 0, 0, '', '', '', '', 1, '', $langs->trans("to"));
print '</div>';
print '</td>';
}
// Fields from hook
$parameters = array('arrayfields'=>$arrayfields);
$reshook = $hookmanager->executeHooks('printFieldListOption', $parameters); // Note that $action and $object may have been modified by hook
print $hookmanager->resPrint;
// Action column
print '<td class="liste_titre center">';
$searchpicto = $form->showFilterButtons();
print $searchpicto;
print '</td>';
print "</tr>\n";
print '<tr class="liste_titre">';
if (!empty($arrayfields['t.piece_num']['checked'])) {
print_liste_field_titre($arrayfields['t.piece_num']['label'], $_SERVER['PHP_SELF'], "t.piece_num", "", $param, '', $sortfield, $sortorder);
}
if (!empty($arrayfields['t.code_journal']['checked'])) {
print_liste_field_titre($arrayfields['t.code_journal']['label'], $_SERVER['PHP_SELF'], "t.code_journal", "", $param, '', $sortfield, $sortorder, 'center ');
}
if (!empty($arrayfields['t.doc_date']['checked'])) {
print_liste_field_titre($arrayfields['t.doc_date']['label'], $_SERVER['PHP_SELF'], "t.doc_date", "", $param, '', $sortfield, $sortorder, 'center ');
}
if (!empty($arrayfields['t.doc_ref']['checked'])) {
print_liste_field_titre($arrayfields['t.doc_ref']['label'], $_SERVER['PHP_SELF'], "t.doc_ref", "", $param, "", $sortfield, $sortorder);
}
if (!empty($arrayfields['t.label_operation']['checked'])) {
print_liste_field_titre($arrayfields['t.label_operation']['label'], $_SERVER['PHP_SELF'], "t.label_operation", "", $param, "", $sortfield, $sortorder);
}
if (!empty($arrayfields['t.debit']['checked'])) {
print_liste_field_titre($arrayfields['t.debit']['label'], $_SERVER['PHP_SELF'], "t.debit", "", $param, '', $sortfield, $sortorder, 'right ');
}
if (!empty($arrayfields['t.credit']['checked'])) {
print_liste_field_titre($arrayfields['t.credit']['label'], $_SERVER['PHP_SELF'], "t.credit", "", $param, '', $sortfield, $sortorder, 'right ');
}
if (!empty($arrayfields['t.lettering_code']['checked'])) {
print_liste_field_titre($arrayfields['t.lettering_code']['label'], $_SERVER['PHP_SELF'], "t.lettering_code", "", $param, '', $sortfield, $sortorder, 'center ');
}
if (!empty($arrayfields['t.date_export']['checked'])) {
print_liste_field_titre($arrayfields['t.date_export']['label'], $_SERVER['PHP_SELF'], "t.date_export", "", $param, '', $sortfield, $sortorder, 'center ');
}
if (!empty($arrayfields['t.date_validated']['checked'])) {
print_liste_field_titre($arrayfields['t.date_validated']['label'], $_SERVER['PHP_SELF'], "t.date_validated", "", $param, '', $sortfield, $sortorder, 'center ');
}
// Hook fields
$parameters = array('arrayfields'=>$arrayfields, 'param'=>$param, 'sortfield'=>$sortfield, 'sortorder'=>$sortorder);
$reshook = $hookmanager->executeHooks('printFieldListTitle', $parameters); // Note that $action and $object may have been modified by hook
print $hookmanager->resPrint;
print_liste_field_titre($selectedfields, $_SERVER["PHP_SELF"], "", '', '', '', $sortfield, $sortorder, 'center maxwidthsearch ');
print "</tr>\n";
$total_debit = 0;
$total_credit = 0;
$sous_total_debit = 0;
$sous_total_credit = 0;
$displayed_account_number = null; // Start with undefined to be able to distinguish with empty
// Loop on record
// --------------------------------------------------------------------
$i = 0;
$totalarray = array();
while ($i < min($num, $limit)) {
$line = $object->lines[$i];
$total_debit += $line->debit;
$total_credit += $line->credit;
$accountg = length_accounta($line->subledger_account);
//if (empty($accountg)) $accountg = '-';
$colspan = 0; // colspan before field 'label of operation'
$colspanend = 3; // colspan after debit/credit
if (!empty($arrayfields['t.piece_num']['checked'])) { $colspan++; }
if (!empty($arrayfields['t.code_journal']['checked'])) { $colspan++; }
if (!empty($arrayfields['t.doc_date']['checked'])) { $colspan++; }
if (!empty($arrayfields['t.doc_ref']['checked'])) { $colspan++; }
if (!empty($arrayfields['t.label_operation']['checked'])) { $colspan++; }
if (!empty($arrayfields['t.date_export']['checked'])) { $colspanend++; }
if (!empty($arrayfields['t.date_validating']['checked'])) { $colspanend++; }
if (!empty($arrayfields['t.lettering_code']['checked'])) { $colspanend++; }
// Is it a break ?
if ($accountg != $displayed_account_number || !isset($displayed_account_number)) {
// Show a subtotal by accounting account
if (isset($displayed_account_number)) {
print '<tr class="liste_total">';
print '<td class="right" colspan="'.$colspan.'">'.$langs->trans("TotalForAccount").' '.length_accounta($displayed_account_number).':</td>';
print '<td class="nowrap right">'.price($sous_total_debit).'</td>';
print '<td class="nowrap right">'.price($sous_total_credit).'</td>';
print '<td colspan="'.$colspanend.'"></td>';
print '</tr>';
// Show balance of last shown account
$balance = $sous_total_debit - $sous_total_credit;
print '<tr class="liste_total">';
print '<td class="right" colspan="'.$colspan.'">'.$langs->trans("Balance").':</td>';
if ($balance > 0) {
print '<td class="nowraponall right">';
print price($sous_total_debit - $sous_total_credit);
print '</td>';
print '<td></td>';
} else {
print '<td></td>';
print '<td class="nowraponall right">';
print price($sous_total_credit - $sous_total_debit);
print '</td>';
}
print '<td colspan="'.$colspanend.'"></td>';
print '</tr>';
}
// Show the break account
print '<tr class="trforbreak">';
print '<td colspan="'.($totalarray['nbfield'] ? $totalarray['nbfield'] : 10).'" class="tdforbreak">';
if ($line->subledger_account != "" && $line->subledger_account != '-1') {
print $line->subledger_label.' : '.length_accounta($line->subledger_account);
} else {
// Should not happen: subledger account must be null or a non empty value
print '<span class="error">'.$langs->trans("Unknown");
if ($line->subledger_label) {
print ' ('.$line->subledger_label.')';
$htmltext = 'EmptyStringForSubledgerAccountButSubledgerLabelDefined';
} else {
$htmltext = 'EmptyStringForSubledgerAccountAndSubledgerLabel';
}
print $form->textwithpicto('', $htmltext);
print '</span>';
}
print '</td>';
print '</tr>';
$displayed_account_number = $accountg;
//if (empty($displayed_account_number)) $displayed_account_number='-';
$sous_total_debit = 0;
$sous_total_credit = 0;
$colspan = 0;
}
print '<tr class="oddeven">';
// Piece number
if (!empty($arrayfields['t.piece_num']['checked'])) {
print '<td>';
$object->id = $line->id;
$object->piece_num = $line->piece_num;
print $object->getNomUrl(1, '', 0, '', 1);
print '</td>';
if (!$i) {
$totalarray['nbfield']++;
}
}
// Journal code
if (!empty($arrayfields['t.code_journal']['checked'])) {
$accountingjournal = new AccountingJournal($db);
$result = $accountingjournal->fetch('', $line->code_journal);
$journaltoshow = (($result > 0) ? $accountingjournal->getNomUrl(0, 0, 0, '', 0) : $line->code_journal);
print '<td class="center">'.$journaltoshow.'</td>';
if (!$i) {
$totalarray['nbfield']++;
}
}
// Document date
if (!empty($arrayfields['t.doc_date']['checked'])) {
print '<td class="center">'.dol_print_date($line->doc_date, 'day').'</td>';
if (!$i) {
$totalarray['nbfield']++;
}
}
// Document ref
if (!empty($arrayfields['t.doc_ref']['checked'])) {
if ($line->doc_type == 'customer_invoice') {
$langs->loadLangs(array('bills'));
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
$objectstatic = new Facture($db);
$objectstatic->fetch($line->fk_doc);
//$modulepart = 'facture';
$filename = dol_sanitizeFileName($line->doc_ref);
$filedir = $conf->facture->dir_output.'/'.dol_sanitizeFileName($line->doc_ref);
$urlsource = $_SERVER['PHP_SELF'].'?id='.$objectstatic->id;
$documentlink = $formfile->getDocumentsLink($objectstatic->element, $filename, $filedir);
} elseif ($line->doc_type == 'supplier_invoice') {
$langs->loadLangs(array('bills'));
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php';
$objectstatic = new FactureFournisseur($db);
$objectstatic->fetch($line->fk_doc);
//$modulepart = 'invoice_supplier';
$filename = dol_sanitizeFileName($line->doc_ref);
$filedir = $conf->fournisseur->facture->dir_output.'/'.get_exdir($line->fk_doc, 2, 0, 0, $objectstatic, $modulepart).dol_sanitizeFileName($line->doc_ref);
$subdir = get_exdir($objectstatic->id, 2, 0, 0, $objectstatic, $modulepart).dol_sanitizeFileName($line->doc_ref);
$documentlink = $formfile->getDocumentsLink($objectstatic->element, $subdir, $filedir);
} elseif ($line->doc_type == 'expense_report') {
$langs->loadLangs(array('trips'));
require_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php';
$objectstatic = new ExpenseReport($db);
$objectstatic->fetch($line->fk_doc);
//$modulepart = 'expensereport';
$filename = dol_sanitizeFileName($line->doc_ref);
$filedir = $conf->expensereport->dir_output.'/'.dol_sanitizeFileName($line->doc_ref);
$urlsource = $_SERVER['PHP_SELF'].'?id='.$objectstatic->id;
$documentlink = $formfile->getDocumentsLink($objectstatic->element, $filename, $filedir);
} elseif ($line->doc_type == 'bank') {
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
$objectstatic = new AccountLine($db);
$objectstatic->fetch($line->fk_doc);
} else {
// Other type
}
print '<td class="maxwidth400">';
print '<table class="nobordernopadding"><tr class="nocellnopadd">';
// Picto + Ref
print '<td class="nobordernopadding">';
if ($line->doc_type == 'customer_invoice' || $line->doc_type == 'supplier_invoice' || $line->doc_type == 'expense_report') {
print $objectstatic->getNomUrl(1, '', 0, 0, '', 0, -1, 1);
print $documentlink;
} elseif ($line->doc_type == 'bank') {
print $objectstatic->getNomUrl(1);
$bank_ref = strstr($line->doc_ref, '-');
print " " . $bank_ref;
} else {
print $line->doc_ref;
}
print '</td></tr></table>';
print "</td>\n";
if (!$i) {
$totalarray['nbfield']++;
}
}
// Label operation
if (!empty($arrayfields['t.label_operation']['checked'])) {
// Affiche un lien vers la facture client/fournisseur
$doc_ref = preg_replace('/\(.*\)/', '', $line->doc_ref);
print strlen(length_accounta($line->subledger_account)) == 0 ? '<td>'.$line->label_operation.'</td>' : '<td>'.$line->label_operation.'<br><span style="font-size:0.8em">('.length_accounta($line->subledger_account).')</span></td>';
if (!$i) {
$totalarray['nbfield']++;
}
}
// Amount debit
if (!empty($arrayfields['t.debit']['checked'])) {
print '<td class="right nowraponall amount">'.($line->debit ? price($line->debit) : '').'</td>';
if (!$i) {
$totalarray['nbfield']++;
}
if (!$i) {
$totalarray['pos'][$totalarray['nbfield']] = 'totaldebit';
}
$totalarray['val']['totaldebit'] += $line->debit;
}
// Amount credit
if (!empty($arrayfields['t.credit']['checked'])) {
print '<td class="right nowraponall amount">'.($line->credit ? price($line->credit) : '').'</td>';
if (!$i) {
$totalarray['nbfield']++;
}
if (!$i) {
$totalarray['pos'][$totalarray['nbfield']] = 'totalcredit';
}
$totalarray['val']['totalcredit'] += $line->credit;
}
// Lettering code
if (!empty($arrayfields['t.lettering_code']['checked'])) {
print '<td class="center">'.$line->lettering_code.'</td>';
if (!$i) {
$totalarray['nbfield']++;
}
}
// Exported operation date
if (!empty($arrayfields['t.date_export']['checked'])) {
print '<td class="center">'.dol_print_date($line->date_export, 'dayhour').'</td>';
if (!$i) {
$totalarray['nbfield']++;
}
}
// Validated operation date
if (!empty($arrayfields['t.date_validated']['checked'])) {
print '<td class="center">'.dol_print_date($line->date_validation, 'dayhour').'</td>';
if (!$i) {
$totalarray['nbfield']++;
}
}
// Fields from hook
$parameters = array('arrayfields'=>$arrayfields, 'obj'=>$obj);
$reshook = $hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook
print $hookmanager->resPrint;
// Action column
print '<td class="nowraponall center">';
if (empty($line->date_export) && empty($line->date_validation)) {
if ($user->rights->accounting->mouvements->creer) {
print '<a class="editfielda paddingleft marginrightonly" href="' . DOL_URL_ROOT . '/accountancy/bookkeeping/card.php?piece_num=' . $line->piece_num . $param . '&page=' . $page . ($sortfield ? '&sortfield=' . $sortfield : '') . ($sortorder ? '&sortorder=' . $sortorder : '') . '">' . img_edit() . '</a>';
}
}
if (empty($line->date_validation)) {
if ($user->rights->accounting->mouvements->supprimer) {
print '<a class="reposition paddingleft marginrightonly" href="'.$_SERVER['PHP_SELF'].'?action=delmouv&token='.newToken().'&mvt_num='.$line->piece_num.$param.'&page='.$page.($sortfield ? '&sortfield='.$sortfield : '').($sortorder ? '&sortorder='.$sortorder : '').'">'.img_delete().'</a>';
}
}
print '</td>';
if (!$i) {
$totalarray['nbfield']++;
}
// Comptabilise le sous-total
$sous_total_debit += $line->debit;
$sous_total_credit += $line->credit;
print "</tr>\n";
$i++;
}
if ($num > 0 && $colspan > 0) {
print '<tr class="liste_total">';
print '<td class="right" colspan="'.$colspan.'">'.$langs->trans("TotalForAccount").' '.$accountg.':</td>';
print '<td class="nowrap right">'.price($sous_total_debit).'</td>';
print '<td class="nowrap right">'.price($sous_total_credit).'</td>';
print '<td colspan="'.$colspanend.'"></td>';
print '</tr>';
// Show balance of last shown account
$balance = $sous_total_debit - $sous_total_credit;
print '<tr class="liste_total">';
print '<td class="right" colspan="'.$colspan.'">'.$langs->trans("Balance").':</td>';
if ($balance > 0) {
print '<td class="nowraponall right">';
print price($sous_total_debit - $sous_total_credit);
print '</td>';
print '<td></td>';
} else {
print '<td></td>';
print '<td class="nowraponall right">';
print price($sous_total_credit - $sous_total_debit);
print '</td>';
}
print '<td colspan="'.$colspanend.'"></td>';
print '</tr>';
}
// Show total line
include DOL_DOCUMENT_ROOT.'/core/tpl/list_print_total.tpl.php';
print "</table>";
print '</div>';
// TODO Replace this with mass delete action
if ($user->rights->accounting->mouvements->supprimer_tous) {
print '<div class="tabsAction tabsActionNoBottom">'."\n";
print '<a class="butActionDelete" name="button_delmvt" href="'.$_SERVER["PHP_SELF"].'?action=delbookkeepingyear&token='.newToken().($param ? '&'.$param : '').'">'.$langs->trans("DeleteMvt").'</a>';
print '</div>';
}
print '</form>';
// End of page
llxFooter();
$db->close();

View File

@@ -1,325 +0,0 @@
<?php
/* Copyright (C) 2004-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2005 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2013 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2013-2019 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2018-2020 Frédéric France <frederic.france@netlogic.fr>
*
* 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
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
/**
* \file htdocs/accountancy/bookkeeping/thirdparty_lettering_customer.php
* \ingroup accountancy
* \brief Tab to manage customer lettering
*/
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/bookkeeping.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/lettering.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingjournal.class.php';
require_once DOL_DOCUMENT_ROOT.'/societe/class/societe.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
// Load translation files required by the page
$langs->loadLangs(array("compta", "accountancy"));
$action = GETPOST('action', 'aZ09');
$massaction = GETPOST('massaction', 'alpha');
$show_files = GETPOST('show_files', 'int');
$confirm = GETPOST('confirm', 'alpha');
$toselect = GETPOST('toselect', 'array');
// $socid = GETPOST('socid', 'int') ?GETPOST('socid', 'int') : GETPOST('id', 'int');
// Security check
$socid = GETPOSTINT("socid");
// if ($user->socid) $socid=$user->socid;
$limit = GETPOSTISSET('limit') ? GETPOST('limit', 'int') : $conf->liste_limit;
$sortfield = GETPOST('sortfield', 'aZ09comma');
$sortorder = GETPOST('sortorder', 'aZ09comma');
$page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int');
if (empty($page) || $page == - 1) {
$page = 0;
} // If $page is not defined, or '' or -1
$offset = $limit * $page;
$pageprev = $page - 1;
$pagenext = $page + 1;
if ($sortorder == "") {
$sortorder = "ASC";
}
if ($sortfield == "") {
$sortfield = "bk.doc_date";
}
/*
$search_date_start = dol_mktime(0, 0, 0, GETPOST('date_startmonth', 'int'), GETPOST('date_startday', 'int'), GETPOST('date_startyear', 'int'));
$search_date_end = dol_mktime(0, 0, 0, GETPOST('date_endmonth', 'int'), GETPOST('date_endday', 'int'), GETPOST('date_endyear', 'int'));
//$search_doc_type = GETPOST("search_doc_type", 'alpha');
$search_doc_ref = GETPOST("search_doc_ref", 'alpha');
*/
$lettering = GETPOST('lettering', 'alpha');
if (!empty($lettering)) {
$action = $lettering;
}
/*
if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x','alpha') || GETPOST('button_removefilter','alpha')) // All tests are required to be compatible with all browsers
{
$search_date_start = '';
$search_date_end = '';
//$search_doc_type = '';
$search_doc_ref = '';
}
*/
$lettering = new Lettering($db);
$object = new Societe($db);
$object->id = $socid;
$result = $object->fetch($socid);
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
}
if (empty($conf->accounting->enabled)) {
accessforbidden();
}
if ($user->socid > 0) {
accessforbidden();
}
if (empty($user->rights->accounting->mouvements->lire)) {
accessforbidden();
}
/*
* Action
*/
if ($action == 'lettering') {
$result = $lettering->updateLettering($toselect);
if ($result < 0) {
setEventMessages('', $lettering->errors, 'errors');
$error++;
}
}
/*
if ($action == 'autolettrage') {
$result = $lettering->letteringThirdparty($socid);
if ($result < 0) {
setEventMessages('', $lettering->errors, 'errors');
$error++;
}
}
*/
/*
* View
*/
$form = new Form($db);
$formaccounting = new FormAccounting($db);
$title = $object->name." - ".$langs->trans('TabLetteringCustomer');
$help_url = 'EN:Module_Third_Parties|FR:Module_Tiers|ES:Empresas|DE:Modul_Geschäftspartner';
llxHeader('', $title, $help_url);
$head = societe_prepare_head($object);
dol_htmloutput_mesg(is_numeric($error) ? '' : $error, $errors, 'error');
print dol_get_fiche_head($head, 'lettering_customer', $langs->trans("ThirdParty"), 0, 'company');
$linkback = '<a href="'.DOL_URL_ROOT.'/societe/list.php?restore_lastsearch_values=1">'.$langs->trans("BackToList").'</a>';
dol_banner_tab($object, 'socid', $linkback, ($user->socid ? 0 : 1), 'rowid', 'nom', '', '', 0, '', '', 'arearefnobottom');
print dol_get_fiche_end();
$sql = "SELECT bk.rowid, bk.doc_date, bk.doc_type, bk.doc_ref, ";
$sql .= " bk.subledger_account, bk.numero_compte , bk.label_compte, bk.debit, ";
$sql .= " bk.credit, bk.montant, bk.sens, bk.code_journal, bk.piece_num, bk.lettering_code";
$sql .= " FROM ".MAIN_DB_PREFIX."accounting_bookkeeping as bk";
$sql .= " WHERE (bk.subledger_account = '".$db->escape($object->code_compta)."' AND bk.numero_compte = '".$db->escape($conf->global->ACCOUNTING_ACCOUNT_CUSTOMER)."' )";
/*
if (dol_strlen($search_date_start) || dol_strlen($search_date_end)) {
$sql .= " AND ( bk.doc_date BETWEEN '" . $db->idate($search_date_start) . "' AND '" . $db->idate($search_date_end) . "' )";
}
*/
$sql .= ' AND bk.entity IN ('.getEntity('accountingbookkeeping').')';
$sql .= $db->order($sortfield, $sortorder);
$debit = 0;
$credit = 0;
$solde = 0;
// Count total nb of records and calc total sum
$nbtotalofrecords = '';
$resql = $db->query($sql);
if (!$resql) {
dol_print_error($db);
exit();
}
$nbtotalofrecords = $db->num_rows($resql);
while ($obj = $db->fetch_object($resql)) {
$debit += $obj->debit;
$credit += $obj->credit;
$solde += ($obj->credit - $obj->debit);
}
$sql .= $db->plimit($limit + 1, $offset);
dol_syslog("/accountancy/bookkeeping/thirdparty_lettering_customer.php", LOG_DEBUG);
$resql = $db->query($sql);
if (!$resql) {
dol_print_error($db);
exit();
}
$param = '';
$param .= "&socid=".urlencode($socid);
$num = $db->num_rows($resql);
dol_syslog("/accountancy/bookkeeping/thirdparty_lettering_customer.php", LOG_DEBUG);
if ($resql) {
$i = 0;
$param = "&socid=".$socid;
print '<form name="add" action="'.$_SERVER["PHP_SELF"].'?socid='.$object->id.'" method="POST">';
print '<input type="hidden" name="token" value="'.newToken().'">';
print '<input type="hidden" name="socid" value="'.$object->id.'">';
$letteringbutton = '<a class="divButAction"><span class="valignmiddle"><input class="butAction" type="submit" value="lettering" name="lettering" id="lettering"></span></a>';
print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'title_companies', 0, $letteringbutton, '', $limit);
print '<div class="div-table-responsive-no-min">';
print '<table class="liste centpercent">'."\n";
/*
print '<tr class="liste_titre">';
//print '<td><input type="text" name="search_doc_type" value="' . $search_doc_type . '"></td>';
// Date
print '<td class="liste_titre center">';
print '<div class="nowrap">';
print $langs->trans('From') . ' ';
print $form->selectDate($search_date_start, 'date_creation_start', 0, 0, 1);
print '</div>';
print '<div class="nowrap">';
print $langs->trans('to') . ' ';
print $form->selectDate($search_date_end, 'date_creation_end', 0, 0, 1);
print '</div>';
print '</td>';
// Piece
print '<td><input type="text" name="search_doc_ref" value="' . $search_doc_ref . '"></td>';
print '<td colspan="6">&nbsp;</td>';
print '<td class="right">';
$searchpicto = $form->showFilterButtons();
print $searchpicto;
print '</td>';
print '</tr>';
*/
print '<tr class="liste_titre">';
//print_liste_field_titre("Doctype", $_SERVER["PHP_SELF"], "bk.doc_type", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("Docdate", $_SERVER["PHP_SELF"], "bk.doc_date", "", $param, "", $sortfield, $sortorder, 'center ');
print_liste_field_titre("Piece", $_SERVER["PHP_SELF"], "bk.doc_ref", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("LabelAccount", $_SERVER["PHP_SELF"], "bk.label_compte", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("Debit", $_SERVER["PHP_SELF"], "bk.debit", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("Credit", $_SERVER["PHP_SELF"], "bk.credit", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("Balancing", $_SERVER["PHP_SELF"], "", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("Codejournal", $_SERVER["PHP_SELF"], "bk.code_journal", "", $param, "", $sortfield, $sortorder, 'center ');
print_liste_field_titre("LetteringCode", $_SERVER["PHP_SELF"], "bk.lettering_code", "", $param, "", $sortfield, $sortorder, 'center ');
print_liste_field_titre("", "", "", '', '', "", $sortfield, $sortorder, 'maxwidthsearch center ');
print "</tr>\n";
$solde = 0;
$tmp = '';
while ($obj = $db->fetch_object($resql)) {
if ($tmp != $obj->lettering_code || empty($tmp)) {
$tmp = $obj->lettering_code;
}
/*if ($tmp != $obj->lettering_code || empty($obj->lettering_code))*/ $solde += ($obj->credit - $obj->debit);
print '<tr class="oddeven">';
//print '<td>' . $obj->doc_type . '</td>' . "\n";
print '<td class="center">'.dol_print_date($db->jdate($obj->doc_date), 'day').'</td>';
print '<td>'.$obj->doc_ref.'</td>';
print '<td>'.$obj->label_compte.'</td>';
print '<td class="nowrap right">'.price($obj->debit).'</td>';
print '<td class="nowrap right">'.price($obj->credit).'</td>';
print '<td class="nowrap right">'.price(round($solde, 2)).'</td>';
// Journal
$accountingjournal = new AccountingJournal($db);
$result = $accountingjournal->fetch('', $obj->code_journal);
$journaltoshow = (($result > 0) ? $accountingjournal->getNomUrl(0, 0, 0, '', 0) : $obj->code_journal);
print '<td class="center">'.$journaltoshow.'</td>';
if (empty($obj->lettering_code) && empty($obj->date_validated)) {
print '<td class="nowrap center"><input type="checkbox" class="flat checkforselect" name="toselect[]" id="toselect[]" value="'.$obj->rowid.'" /></td>';
print '<td><a href="'.DOL_URL_ROOT.'/accountancy/bookkeeping/card.php?piece_num='.$obj->piece_num.'">';
print img_edit();
print '</a></td>'."\n";
} else {
print '<td class="center">'.$obj->lettering_code.'</td>';
print '<td></td>';
}
print "</tr>\n";
}
print '<tr class="oddeven">';
print '<td class="right" colspan="3">'.$langs->trans("Total").':</td>'."\n";
print '<td class="right nowraponall amount"><strong>'.price($debit).'</strong></td>';
print '<td class="right nowraponall amount"><strong>'.price($credit).'</strong></td>';
print '<td colspan="4"></td>';
print "</tr>\n";
print '<tr class="oddeven">';
print '<td class="right" colspan="3">'.$langs->trans("Balancing").':</td>'."\n";
print '<td colspan="2">&nbsp;</td>';
print '<td class="right nowraponall amount"><strong>'.price($credit - $debit).'</strong></td>';
print '<td colspan="6"></td>';
print "</tr>\n";
print "</table>";
print '<div class="tabsAction tabsActionNoBottom">'."\n";
print $letteringbutton;
print '</div>';
print "</form>";
$db->free($resql);
} else {
dol_print_error($db);
}
// End of page
llxFooter();
$db->close();

View File

@@ -1,322 +0,0 @@
<?php
/* Copyright (C) 2004-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2005 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2013 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2013-2019 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2018-2020 Frédéric France <frederic.france@netlogic.fr>
*
* 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
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
/**
* \file htdocs/accountancy/bookkeeping/thirdparty_lettering_supplier.php
* \ingroup Accountancy (Double entries)
* \brief Tab to setup lettering
*/
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/bookkeeping.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/lettering.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingjournal.class.php';
require_once DOL_DOCUMENT_ROOT.'/societe/class/societe.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
// Load translation files required by the page
$langs->loadLangs(array("compta", "accountancy"));
$action = GETPOST('action', 'aZ09');
$massaction = GETPOST('massaction', 'alpha');
$show_files = GETPOST('show_files', 'int');
$confirm = GETPOST('confirm', 'alpha');
$toselect = GETPOST('toselect', 'array');
// $socid = GETPOST('socid', 'int') ? ((int) GETPOST('socid', 'int')) : ((int) GETPOST('id', 'int'));
// Security check
$socid = GETPOSTINT("socid");
// if ($user->socid) $socid=$user->socid;
$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit;
$sortfield = GETPOST('sortfield', 'aZ09comma');
$sortorder = GETPOST('sortorder', 'aZ09comma');
$page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int');
if (empty($page) || $page == - 1) {
$page = 0;
} // If $page is not defined, or '' or -1
$offset = $limit * $page;
$pageprev = $page - 1;
$pagenext = $page + 1;
if ($sortorder == "") {
$sortorder = "ASC";
}
if ($sortfield == "") {
$sortfield = "bk.doc_date";
}
/*
$search_date_start = dol_mktime(0, 0, 0, GETPOST('date_startmonth', 'int'), GETPOST('date_startday', 'int'), GETPOST('date_startyear', 'int'));
$search_date_end = dol_mktime(0, 0, 0, GETPOST('date_endmonth', 'int'), GETPOST('date_endday', 'int'), GETPOST('date_endyear', 'int'));
//$search_doc_type = GETPOST("search_doc_type",'alpha');
$search_doc_ref = GETPOST("search_doc_ref",'alpha');
*/
$lettering = GETPOST('lettering', 'alpha');
if (!empty($lettering)) {
$action = $lettering;
}
/*
if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x','alpha') || GETPOST('button_removefilter','alpha')) // All tests are required to be compatible with all browsers
{
$search_date_start = '';
$search_date_end = '';
//$search_doc_type='';
$search_doc_ref='';
}
*/
$lettering = new Lettering($db);
$object = new Societe($db);
$object->id = $socid;
$result = $object->fetch($socid);
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
}
if (empty($conf->accounting->enabled)) {
accessforbidden();
}
if ($user->socid > 0) {
accessforbidden();
}
if (empty($user->rights->accounting->mouvements->lire)) {
accessforbidden();
}
/*
* Action
*/
if ($action == 'lettering') {
$result = $lettering->updateLettering($toselect);
if ($result < 0) {
setEventMessages('', $lettering->errors, 'errors');
$error++;
}
}
/*
if ($action == 'autolettrage') {
$result = $lettering->letteringThirdparty($socid);
if ($result < 0) {
setEventMessages('', $lettering->errors, 'errors');
$error++;
}
}
*/
/*
* View
*/
$form = new Form($db);
$formaccounting = new FormAccounting($db);
$title = $object->name." - ".$langs->trans('TabLetteringSupplier');
$help_url = 'EN:Module_Third_Parties|FR:Module_Tiers|ES:Empresas|DE:Modul_Geschäftspartner';
llxHeader('', $title, $help_url);
$head = societe_prepare_head($object);
dol_htmloutput_mesg(is_numeric($error) ? '' : $error, $errors, 'error');
print dol_get_fiche_head($head, 'lettering_supplier', $langs->trans("ThirdParty"), 0, 'company');
$linkback = '<a href="'.DOL_URL_ROOT.'/societe/list.php?restore_lastsearch_values=1">'.$langs->trans("BackToList").'</a>';
dol_banner_tab($object, 'socid', $linkback, ($user->socid ? 0 : 1), 'rowid', 'nom', '', '', 0, '', '', 'arearefnobottom');
print dol_get_fiche_end();
$sql = "SELECT bk.rowid, bk.doc_date, bk.doc_type, bk.doc_ref, ";
$sql .= " bk.subledger_account, bk.numero_compte , bk.label_compte, bk.debit, ";
$sql .= " bk.credit, bk.montant, bk.sens, bk.code_journal, bk.piece_num, bk.lettering_code, bk.date_validated ";
$sql .= " FROM ".MAIN_DB_PREFIX."accounting_bookkeeping as bk";
$sql .= " WHERE (bk.subledger_account = '".$db->escape($object->code_compta_fournisseur)."' AND bk.numero_compte = '".$db->escape($conf->global->ACCOUNTING_ACCOUNT_SUPPLIER)."' )";
if (dol_strlen($search_date_start) || dol_strlen($search_date_end)) {
$sql .= " AND (bk.doc_date BETWEEN '".$db->idate($search_date_start)."' AND '".$db->idate($search_date_end)."' )";
}
$sql .= ' AND bk.entity IN ('.getEntity('accountingbookkeeping').')';
$sql .= $db->order($sortfield, $sortorder);
$debit = 0;
$credit = 0;
$solde = 0;
// Count total nb of records and calc total sum
$nbtotalofrecords = '';
$resql = $db->query($sql);
if (!$resql) {
dol_print_error($db);
exit;
}
$nbtotalofrecords = $db->num_rows($resql);
while ($obj = $db->fetch_object($resql)) {
$debit += $obj->debit;
$credit += $obj->credit;
$solde += ($obj->credit - $obj->debit);
}
$sql .= $db->plimit($limit + 1, $offset);
dol_syslog("/accountancy/bookkeeping/thirdparty_lettering_supplier.php", LOG_DEBUG);
$resql = $db->query($sql);
if (!$resql) {
dol_print_error($db);
exit;
}
$param = '';
$param .= "&socid=".urlencode($socid);
$num = $db->num_rows($resql);
dol_syslog("/accountancy/bookkeeping/thirdparty_lettering_supplier.php", LOG_DEBUG);
$resql = $db->query($sql);
if ($resql) {
$num = $db->num_rows($resql);
$i = 0;
$param = "&socid=".$socid;
print '<form name="add" action="'.$_SERVER["PHP_SELF"].'?socid='.$object->id.'" method="POST">';
print '<input type="hidden" name="token" value="'.newToken().'">';
print '<input type="hidden" name="socid" value="'.$object->id.'">';
$letteringbutton = '<a class="divButAction"><span class="valignmiddle"><input class="butAction" type="submit" value="lettering" name="lettering" id="lettering"></span></a>';
print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'title_companies', 0, $letteringbutton, '', $limit);
print '<div class="div-table-responsive-no-min">';
print '<table class="liste centpercent">'."\n";
/*
print '<tr class="liste_titre">';
//print '<td><input type="text" name="search_doc_type" value="' . $search_doc_type . '"></td>';
// Date
print '<td class="liste_titre center">';
print '<div class="nowrap">';
print $langs->trans('From') . ' ';
print $form->selectDate($search_date_start, 'date_creation_start', 0, 0, 1);
print '</div>';
print '<div class="nowrap">';
print $langs->trans('to') . ' ';
print $form->selectDate($search_date_end, 'date_creation_end', 0, 0, 1);
print '</div>';
print '</td>';
// Piece
print '<td><input type="text" name="search_doc_ref" value="' . $search_doc_ref . '"></td>';
print '<td colspan="6">&nbsp;</td>';
print '<td class="right">';
$searchpicto = $form->showFilterButtons();
print $searchpicto;
print '</td>';
print '</tr>';
*/
print '<tr class="liste_titre">';
//print_liste_field_titre("Doctype", $_SERVER["PHP_SELF"], "bk.doc_type", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("Docdate", $_SERVER["PHP_SELF"], "bk.doc_date", "", $param, "", $sortfield, $sortorder, 'center ');
print_liste_field_titre("Piece", $_SERVER["PHP_SELF"], "bk.doc_ref", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("LabelAccount", $_SERVER["PHP_SELF"], "bk.label_compte", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("Debit", $_SERVER["PHP_SELF"], "bk.debit", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("Credit", $_SERVER["PHP_SELF"], "bk.credit", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("Balancing", $_SERVER["PHP_SELF"], "", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("Codejournal", $_SERVER["PHP_SELF"], "bk.code_journal", "", $param, "", $sortfield, $sortorder, 'center ');
print_liste_field_titre("LetteringCode", $_SERVER["PHP_SELF"], "bk.lettering_code", "", $param, "", $sortfield, $sortorder, 'center ');
print_liste_field_titre("", "", "", '', '', "", $sortfield, $sortorder, 'maxwidthsearch center ');
print "</tr>\n";
$solde = 0;
$tmp = '';
while ($obj = $db->fetch_object($resql)) {
if ($tmp != $obj->lettering_code || empty($tmp)) {
$tmp = $obj->lettering_code;
}
/*if ($tmp != $obj->lettering_code || empty($obj->lettering_code))*/ $solde += ($obj->credit - $obj->debit);
print '<tr class="oddeven">';
//print '<td>' . $obj->doc_type . '</td>' . "\n";
print '<td class="center">'.dol_print_date($db->jdate($obj->doc_date), 'day').'</td>';
print '<td>'.$obj->doc_ref.'</td>';
print '<td>'.$obj->label_compte.'</td>';
print '<td class="nowrap right">'.price($obj->debit).'</td>';
print '<td class="nowrap right">'.price($obj->credit).'</td>';
print '<td class="nowrap right">'.price(round($solde, 2)).'</td>';
// Journal
$accountingjournal = new AccountingJournal($db);
$result = $accountingjournal->fetch('', $obj->code_journal);
$journaltoshow = (($result > 0) ? $accountingjournal->getNomUrl(0, 0, 0, '', 0) : $obj->code_journal);
print '<td class="center">'.$journaltoshow.'</td>';
if (empty($obj->lettering_code) && empty($obj->date_validated)) {
print '<td class="nowrap center"><input type="checkbox" class="flat checkforselect" name="toselect[]" id="toselect[]" value="'.$obj->rowid.'" /></td>';
print '<td><a href="'.DOL_URL_ROOT.'/accountancy/bookkeeping/card.php?piece_num='.$obj->piece_num.'">';
print img_edit();
print '</a></td>'."\n";
} else {
print '<td class="center">'.$obj->lettering_code.'</td>';
print '<td></td>';
}
print "</tr>\n";
}
print '<tr class="oddeven">';
print '<td class="right" colspan="3">'.$langs->trans("Total").':</td>'."\n";
print '<td class="right nowraponall amount"><strong>'.price($debit).'</strong></td>';
print '<td class="right nowraponall amount"><strong>'.price($credit).'</strong></td>';
print '<td colspan="6"></td>';
print "</tr>\n";
print '<tr class="oddeven">';
print '<td class="right" colspan="3">'.$langs->trans("Balancing").':</td>'."\n";
print '<td colspan="2">&nbsp;</td>';
print '<td class="right nowraponall amount"><strong>'.price($credit - $debit).'</strong></td>';
print '<td colspan="4"></td>';
print "</tr>\n";
print "</table>";
print '<div class="tabsAction tabsActionNoBottom">'."\n";
print $letteringbutton;
print '</div>';
print "</form>";
$db->free($resql);
} else {
dol_print_error($db);
}
// End of page
llxFooter();
$db->close();

View File

@@ -11,6 +11,7 @@
* Copyright (C) 2017-2019 Frédéric France <frederic.france@netlogic.fr>
* Copyright (C) 2017 André Schild <a.schild@aarboard.ch>
* Copyright (C) 2020 Guillaume Alexandre <guillaume@tag-info.fr>
* Copyright (C) 2022 Joachim Kueter <jkueter@gmx.de>
*
* 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
@@ -34,6 +35,7 @@
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php';
/**
@@ -93,11 +95,13 @@ class AccountancyExport
*/
public function __construct(DoliDB $db)
{
global $conf;
global $conf, $hookmanager;
$this->db = $db;
$this->separator = $conf->global->ACCOUNTING_EXPORT_SEPARATORCSV;
$this->end_line = empty($conf->global->ACCOUNTING_EXPORT_ENDLINE) ? "\n" : ($conf->global->ACCOUNTING_EXPORT_ENDLINE == 1 ? "\n" : "\r\n");
$hookmanager->initHooks(array('accountancyexport'));
}
/**
@@ -105,9 +109,9 @@ class AccountancyExport
*
* @return array of type
*/
public static function getType()
public function getType()
{
global $langs;
global $langs, $hookmanager;
$listofexporttypes = array(
self::$EXPORT_TYPE_CONFIGURABLE => $langs->trans('Modelcsv_configurable'),
@@ -132,6 +136,10 @@ class AccountancyExport
self::$EXPORT_TYPE_ISUITEEXPERT => 'Export iSuite Expert',
);
// allow modules to define export formats
$parameters = array();
$reshook = $hookmanager->executeHooks('getType', $parameters, $listofexporttypes);
ksort($listofexporttypes, SORT_NUMERIC);
return $listofexporttypes;
@@ -168,7 +176,12 @@ class AccountancyExport
self::$EXPORT_TYPE_ISUITEEXPERT => 'isuiteexpert',
);
return $formatcode[$type];
global $hookmanager;
$code = $formatcode[$type];
$parameters = array('type' => $type);
$reshook = $hookmanager->executeHooks('getFormatCode', $parameters, $code);
return $code;
}
/**
@@ -176,11 +189,11 @@ class AccountancyExport
*
* @return array of type
*/
public static function getTypeConfig()
public function getTypeConfig()
{
global $conf, $langs;
return array(
$exporttypes = array(
'param' => array(
self::$EXPORT_TYPE_CONFIGURABLE => array(
'label' => $langs->trans('Modelcsv_configurable'),
@@ -265,6 +278,11 @@ class AccountancyExport
'txt' => $langs->trans("txt")
),
);
global $hookmanager;
$parameters = array();
$reshook = $hookmanager->executeHooks('getTypeConfig', $parameters, $exporttypes);
return $exporttypes;
}
@@ -350,7 +368,13 @@ class AccountancyExport
$this->exportiSuiteExpert($TData);
break;
default:
$this->errors[] = $langs->trans('accountancy_error_modelnotfound');
global $hookmanager;
$parameters = array('format' => $formatexportset);
// file contents will be created in the hooked function via print
$reshook = $hookmanager->executeHooks('export', $parameters, $TData);
if ($reshook != 1) {
$this->errors[] = $langs->trans('accountancy_error_modelnotfound');
}
break;
}
}
@@ -980,6 +1004,8 @@ class AccountancyExport
print dol_string_unaccent($date_creation) . $separator;
// FEC:EcritureLib
// Clean label operation to prevent problem on export with tab separator & other character
$line->label_operation = str_replace(array("\t", "\n", "\r"), " ", $line->label_operation);
print dol_string_unaccent($line->label_operation) . $separator;
// FEC:Debit
@@ -1007,6 +1033,8 @@ class AccountancyExport
print $date_limit_payment . $separator;
// FEC_suppl:NumFacture
// Clean ref invoice to prevent problem on export with tab separator & other character
$refInvoice = str_replace(array("\t", "\n", "\r"), " ", $refInvoice);
print dol_trunc(self::toAnsi($refInvoice), 17, 'right', 'UTF-8', 1);
print $end_line;
@@ -1107,6 +1135,8 @@ class AccountancyExport
print $date_document . $separator;
// FEC:EcritureLib
// Clean label operation to prevent problem on export with tab separator & other character
$line->label_operation = str_replace(array("\t", "\n", "\r"), " ", $line->label_operation);
print dol_string_unaccent($line->label_operation) . $separator;
// FEC:Debit
@@ -1134,6 +1164,8 @@ class AccountancyExport
print $date_limit_payment . $separator;
// FEC_suppl:NumFacture
// Clean ref invoice to prevent problem on export with tab separator & other character
$refInvoice = str_replace(array("\t", "\n", "\r"), " ", $refInvoice);
print dol_trunc(self::toAnsi($refInvoice), 17, 'right', 'UTF-8', 1);
@@ -1712,6 +1744,8 @@ class AccountancyExport
print self::trunc($line->label_compte, 60).$separator; //Account label
print self::trunc($line->doc_ref, 20).$separator; //Piece
// Clean label operation to prevent problem on export with tab separator & other character
$line->label_operation = str_replace(array("\t", "\n", "\r"), " ", $line->label_operation);
print self::trunc($line->label_operation, 60).$separator; //Operation label
print price(abs($line->debit - $line->credit)).$separator; //Amount
print $line->sens.$separator; //Direction

View File

@@ -29,7 +29,7 @@
/**
* \file htdocs/accountancy/class/accountancyimport.class.php
* \ingroup Accountancy (Double entries)
* \brief Class accountancy import
* \brief Class with methods for accountancy import
*/
@@ -52,68 +52,91 @@ class AccountancyImport
*/
public function __construct(DoliDB $db)
{
global $conf;
$this->db = $db;
}
/**
* Clean amount
*
* @param array $arrayrecord Array of read values: [fieldpos] => (['val']=>val, ['type']=>-1=null,0=blank,1=string), [fieldpos+1]...
* @param array $listfields Fields list to add
* @param int $record_key Record key
* @return mixed Value
*/
public function cleanAmount(&$arrayrecord, $listfields, $record_key)
{
$value_trim = trim($arrayrecord[$record_key]['val']);
return floatval($value_trim);
}
/**
* Clean value with trim
*
* @param array $arrayrecord Array of read values: [fieldpos] => (['val']=>val, ['type']=>-1=null,0=blank,1=string), [fieldpos+1]...
* @param array $listfields Fields list to add
* @param int $record_key Record key
* @return mixed Value
*/
public function cleanValue(&$arrayrecord, $listfields, $record_key)
{
return trim($arrayrecord[$record_key]['val']);
}
/**
* Compute amount
*
* @param array $arrayrecord Array of read values: [fieldpos] => (['val']=>val, ['type']=>-1=null,0=blank,1=string), [fieldpos+1]...
* @param string $fieldname Field name with alias
* @param array $listfields Fields list to add
* @param array $listvalues Values list to add
* @return int <0 if KO, >0 if OK
* @param int $record_key Record key
* @return mixed Value
*/
public function computeAmount(&$arrayrecord, $fieldname, &$listfields, &$listvalues)
public function computeAmount(&$arrayrecord, $listfields, $record_key)
{
$fieldArr = explode('.', $fieldname);
if (count($fieldArr) > 0) {
$fieldname = $fieldArr[1];
// get fields indexes
$field_index_list = array_flip($listfields);
if (isset($field_index_list['debit']) && isset($field_index_list['credit'])) {
$debit_index = $field_index_list['debit'];
$credit_index = $field_index_list['credit'];
$debit = floatval($arrayrecord[$debit_index]['val']);
$credit = floatval($arrayrecord[$credit_index]['val']);
if (!empty($debit)) {
$amount = $debit;
} else {
$amount = $credit;
}
return "'" . $this->db->escape(abs($amount)) . "'";
}
$debit = floatval(trim($arrayrecord[11]['val']));
$credit = floatval(trim($arrayrecord[12]['val']));
if (!empty($debit)) {
$amount = $debit;
} else {
$amount = $credit;
}
$listfields[] = $fieldname;
$listvalues[] = "'" . abs($amount) . "'";
return 1;
return "''";
}
/**
* Compute sens
* Compute direction
*
* @param array $arrayrecord Array of read values: [fieldpos] => (['val']=>val, ['type']=>-1=null,0=blank,1=string), [fieldpos+1]...
* @param string $fieldname Field name with alias
* @param array $listfields Fields list to add
* @param array $listvalues Values list to add
* @return int <0 if KO, >0 if OK
* @param int $record_key Record key
* @return mixed Value
*/
public function computeDirection(&$arrayrecord, $fieldname, &$listfields, &$listvalues)
public function computeDirection(&$arrayrecord, $listfields, $record_key)
{
$fieldArr = explode('.', $fieldname);
if (count($fieldArr) > 0) {
$fieldname = $fieldArr[1];
$field_index_list = array_flip($listfields);
if (isset($field_index_list['debit'])) {
$debit_index = $field_index_list['debit'];
$debit = floatval($arrayrecord[$debit_index]['val']);
if (!empty($debit)) {
$sens = 'D';
} else {
$sens = 'C';
}
return "'" . $this->db->escape($sens) . "'";
}
$debit = floatval(trim($arrayrecord[11]['val']));
if (!empty($debit)) {
$sens = 'D';
} else {
$sens = 'C';
}
$listfields[] = $fieldname;
$listvalues[] = "'" . $sens . "'";
return 1;
return "''";
}
}

View File

@@ -347,8 +347,8 @@ class AccountingAccount extends CommonObject
/**
* Update record
*
* @param User $user Use making update
* @return int <0 if KO, >0 if OK
* @param User $user User making update
* @return int <0 if KO (-2 = duplicate), >0 if OK
*/
public function update($user)
{
@@ -378,6 +378,12 @@ class AccountingAccount extends CommonObject
$this->db->commit();
return 1;
} else {
if ($this->db->lasterrno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') {
$this->error = $this->db->lasterror();
$this->db->rollback();
return -2;
}
$this->error = $this->db->lasterror();
$this->db->rollback();
return -1;
@@ -476,7 +482,7 @@ class AccountingAccount extends CommonObject
*/
public function getNomUrl($withpicto = 0, $withlabel = 0, $nourl = 0, $moretitle = '', $notooltip = 0, $save_lastsearch_value = -1, $withcompletelabel = 0, $option = '')
{
global $langs, $conf;
global $langs, $conf, $hookmanager;
require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php';
if (!empty($conf->dol_no_mouse_hover)) {
@@ -561,6 +567,15 @@ class AccountingAccount extends CommonObject
if ($withpicto != 2) {
$result .= $linkstart . $label_link . $linkend;
}
global $action;
$hookmanager->initHooks(array($this->element . 'dao'));
$parameters = array('id'=>$this->id, 'getnomurl' => &$result);
$reshook = $hookmanager->executeHooks('getNomUrl', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks
if ($reshook > 0) {
$result = $hookmanager->resPrint;
} else {
$result .= $hookmanager->resPrint;
}
return $result;
}
@@ -577,26 +592,19 @@ class AccountingAccount extends CommonObject
$sql .= ' WHERE a.rowid = ' . ((int) $id);
dol_syslog(get_class($this) . '::info sql=' . $sql);
$result = $this->db->query($sql);
$resql = $this->db->query($sql);
if ($result) {
if ($this->db->num_rows($result)) {
$obj = $this->db->fetch_object($result);
if ($resql) {
if ($this->db->num_rows($resql)) {
$obj = $this->db->fetch_object($resql);
$this->id = $obj->rowid;
if ($obj->fk_user_author) {
$cuser = new User($this->db);
$cuser->fetch($obj->fk_user_author);
$this->user_creation = $cuser;
}
if ($obj->fk_user_modif) {
$muser = new User($this->db);
$muser->fetch($obj->fk_user_modif);
$this->user_modification = $muser;
}
$this->user_creation_id = $obj->fk_user_author;
$this->user_modification_id = $obj->fk_user_modif;
$this->date_creation = $this->db->jdate($obj->datec);
$this->date_modification = $this->db->jdate($obj->tms);
}
$this->db->free($result);
$this->db->free($resql);
} else {
dol_print_error($this->db);
}
@@ -724,7 +732,7 @@ class AccountingAccount extends CommonObject
* @param FactureLigne|SupplierInvoiceLine $factureDet Facture Det
* @param array $accountingAccount Array of Account account
* @param string $type Customer / Supplier
* @return array Accounting accounts suggested
* @return array|int Accounting accounts suggested or < 0 if technical error.
*/
public function getAccountingCodeToBind(Societe $buyer, Societe $seller, Product $product, $facture, $factureDet, $accountingAccount = array(), $type = '')
{
@@ -732,13 +740,14 @@ class AccountingAccount extends CommonObject
global $hookmanager;
// Instantiate hooks for external modules
$hookmanager->initHooks(array('accoutancyBindingCalculation'));
$hookmanager->initHooks(array('accountancyBindingCalculation'));
// Execute hook accoutancyBindingCalculation
// Execute hook accountancyBindingCalculation
$parameters = array('buyer' => $buyer, 'seller' => $seller, 'product' => $product, 'facture' => $facture, 'factureDet' => $factureDet ,'accountingAccount'=>$accountingAccount, $type);
$reshook = $hookmanager->executeHooks('accoutancyBindingCalculation', $parameters); // Note that $action and $object may have been modified by some hooks
$reshook = $hookmanager->executeHooks('accountancyBindingCalculation', $parameters); // Note that $action and $object may have been modified by some hooks
if (empty($reshook)) {
$const_name = '';
if ($type == 'customer') {
$const_name = "SOLD";
} elseif ($type == 'supplier') {
@@ -854,7 +863,7 @@ class AccountingAccount extends CommonObject
if (!empty($buyer->code_compta_product)) {
$code_t = $buyer->code_compta_product;
$suggestedid = $accountingAccount['thirdparty'];
$suggestedaccountingaccountfor = 'thridparty';
$suggestedaccountingaccountfor = 'thirdparty';
}
}

View File

@@ -1,5 +1,5 @@
<?php
/* Copyright (C) 2017 Alexandre Spangaro <aspangaro@open-dsi.fr>
/* Copyright (C) 2017-2022 OpenDSI <support@open-dsi.fr>
*
* 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
@@ -81,6 +81,24 @@ class AccountingJournal extends CommonObject
*/
public $lines;
/**
* @var array Accounting account cached
*/
static public $accounting_account_cached = array();
/**
* @var array Nature mapping
*/
static public $nature_maps = array(
1 => 'variousoperations',
2 => 'sells',
3 => 'purchases',
4 => 'bank',
5 => 'expensereports',
8 => 'inventories',
9 => 'hasnew',
);
/**
* Constructor
*
@@ -221,7 +239,7 @@ class AccountingJournal extends CommonObject
*/
public function getNomUrl($withpicto = 0, $withlabel = 0, $nourl = 0, $moretitle = '', $notooltip = 0)
{
global $langs, $conf, $user;
global $langs, $conf, $user, $hookmanager;
if (!empty($conf->dol_no_mouse_hover)) {
$notooltip = 1; // Force disable tooltips
@@ -263,7 +281,7 @@ class AccountingJournal extends CommonObject
}
$label_link = $this->code;
if ($withlabel) {
if ($withlabel && !empty($this->label)) {
$label_link .= ' - '.($nourl ? '<span class="opacitymedium">' : '').$langs->transnoentities($this->label).($nourl ? '</span>' : '');
}
@@ -276,6 +294,15 @@ class AccountingJournal extends CommonObject
}
$result .= $linkend;
global $action;
$hookmanager->initHooks(array('accountingjournaldao'));
$parameters = array('id'=>$this->id, 'getnomurl' => &$result);
$reshook = $hookmanager->executeHooks('getNomUrl', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks
if ($reshook > 0) {
$result = $hookmanager->resPrint;
} else {
$result .= $hookmanager->resPrint;
}
return $result;
}
@@ -336,4 +363,680 @@ class AccountingJournal extends CommonObject
}
}
}
/**
* Get journal data
*
* @param User $user User who get infos
* @param string $type Type data returned ('view', 'bookkeeping', 'csv')
* @param int $date_start Filter 'start date'
* @param int $date_end Filter 'end date'
* @param string $in_bookkeeping Filter 'in bookkeeping' ('already', 'notyet')
* @return array|int <0 if KO, >0 if OK
*/
public function getData(User $user, $type = 'view', $date_start = null, $date_end = null, $in_bookkeeping = 'notyet')
{
global $hookmanager;
// Clean parameters
if (empty($type)) $type = 'view';
if (empty($in_bookkeeping)) $in_bookkeeping = 'notyet';
// Hook
if (!is_object($hookmanager)) {
include_once DOL_DOCUMENT_ROOT . '/core/class/hookmanager.class.php';
$hookmanager = new HookManager($this->db);
}
$data = array();
$hookmanager->initHooks(array('accountingjournaldao'));
$parameters = array('data' => &$data, 'user' => $user, 'type' => $type, 'date_start' => $date_start, 'date_end' => $date_end, 'in_bookkeeping' => $in_bookkeeping);
$reshook = $hookmanager->executeHooks('getData', $parameters, $this); // Note that $action and $object may have been
if ($reshook < 0) {
$this->error = $hookmanager->error;
$this->errors = $hookmanager->errors;
return -1;
} elseif (empty($reshook)) {
switch ($this->nature) {
case 1: // Various Journal
$data = $this->getAssetData($user, $type, $date_start, $date_end, $in_bookkeeping);
break;
// case 2: // Sells Journal
// case 3: // Purchases Journal
// case 4: // Bank Journal
// case 5: // Expense reports Journal
// case 8: // Inventory Journal
// case 9: // hasnew Journal
}
}
return $data;
}
/**
* Get asset data for various journal
*
* @param User $user User who get infos
* @param string $type Type data returned ('view', 'bookkeeping', 'csv')
* @param int $date_start Filter 'start date'
* @param int $date_end Filter 'end date'
* @param string $in_bookkeeping Filter 'in bookkeeping' ('already', 'notyet')
* @return array|int <0 if KO, >0 if OK
*/
public function getAssetData(User $user, $type = 'view', $date_start = null, $date_end = null, $in_bookkeeping = 'notyet')
{
global $conf, $langs;
if (!isModEnabled('asset')) {
return array();
}
require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php';
require_once DOL_DOCUMENT_ROOT . '/asset/class/asset.class.php';
require_once DOL_DOCUMENT_ROOT . '/asset/class/assetaccountancycodes.class.php';
require_once DOL_DOCUMENT_ROOT . '/asset/class/assetdepreciationoptions.class.php';
$langs->loadLangs(array("assets"));
// Clean parameters
if (empty($type)) $type = 'view';
if (empty($in_bookkeeping)) $in_bookkeeping = 'notyet';
$sql = "";
if ($in_bookkeeping == 'already' || $in_bookkeeping == 'notyet') {
$sql .= "WITH in_accounting_bookkeeping(fk_docdet) AS (";
$sql .= " SELECT DISTINCT fk_docdet";
$sql .= " FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping";
$sql .= " WHERE doc_type = 'asset'";
$sql .= ")";
}
$sql .= "SELECT ad.fk_asset AS rowid, a.ref AS asset_ref, a.label AS asset_label, a.acquisition_value_ht AS asset_acquisition_value_ht";
$sql .= ", a.disposal_date AS asset_disposal_date, a.disposal_amount_ht AS asset_disposal_amount_ht, a.disposal_subject_to_vat AS asset_disposal_subject_to_vat";
$sql .= ", ad.rowid AS depreciation_id, ad.depreciation_mode, ad.ref AS depreciation_ref, ad.depreciation_date, ad.depreciation_ht, ad.accountancy_code_debit, ad.accountancy_code_credit";
$sql .= " FROM " . MAIN_DB_PREFIX . "asset_depreciation as ad";
$sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "asset as a ON a.rowid = ad.fk_asset";
if ($in_bookkeeping == 'already' || $in_bookkeeping == 'notyet') {
$sql .= " LEFT JOIN in_accounting_bookkeeping as iab ON iab.fk_docdet = ad.rowid";
}
$sql .= " WHERE a.entity IN (" . getEntity('asset', 0) . ')'; // We don't share object for accountancy, we use source object sharing
$sql .= " AND ad.ref != ''"; // not reversal lines
if ($date_start && $date_end) {
$sql .= " AND ad.depreciation_date >= '" . $this->db->idate($date_start) . "' AND ad.depreciation_date <= '" . $this->db->idate($date_end) . "'";
}
// Define begin binding date
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
$sql .= " AND ad.depreciation_date >= '" . $this->db->idate($conf->global->ACCOUNTING_DATE_START_BINDING) . "'";
}
// Already in bookkeeping or not
if ($in_bookkeeping == 'already' || $in_bookkeeping == 'notyet') {
$sql .= " AND iab.fk_docdet IS" . ($in_bookkeeping == 'already' ? " NOT" : "") . " NULL";
}
$sql .= " ORDER BY ad.depreciation_date";
dol_syslog(__METHOD__, LOG_DEBUG);
$resql = $this->db->query($sql);
if (!$resql) {
$this->errors[] = $this->db->lasterror();
return -1;
}
$pre_data = array(
'elements' => array(),
);
while ($obj = $this->db->fetch_object($resql)) {
if (!isset($pre_data['elements'][$obj->rowid])) {
$pre_data['elements'][$obj->rowid] = array(
'ref' => $obj->asset_ref,
'label' => $obj->asset_label,
'acquisition_value_ht' => $obj->asset_acquisition_value_ht,
'depreciation' => array(),
);
// Disposal infos
if (isset($obj->asset_disposal_date)) {
$pre_data['elements'][$obj->rowid]['disposal'] = array(
'date' => $this->db->jdate($obj->asset_disposal_date),
'amount' => $obj->asset_disposal_amount_ht,
'subject_to_vat' => !empty($obj->asset_disposal_subject_to_vat),
);
}
}
$compta_debit = empty($obj->accountancy_code_debit) ? 'NotDefined' : $obj->accountancy_code_debit;
$compta_credit = empty($obj->accountancy_code_credit) ? 'NotDefined' : $obj->accountancy_code_credit;
$pre_data['elements'][$obj->rowid]['depreciation'][$obj->depreciation_id] = array(
'date' => $this->db->jdate($obj->depreciation_date),
'ref' => $obj->depreciation_ref,
'lines' => array(
$compta_debit => -$obj->depreciation_ht,
$compta_credit => $obj->depreciation_ht,
),
);
}
$disposal_ref = $langs->transnoentitiesnoconv('AssetDisposal');
$journal = $this->code;
$journal_label = $this->label;
$journal_label_formatted = $langs->transnoentities($journal_label);
$now = dol_now();
$element_static = new Asset($this->db);
$journal_data = array();
foreach ($pre_data['elements'] as $pre_data_id => $pre_data_info) {
$element_static->id = $pre_data_id;
$element_static->ref = (string) $pre_data_info["ref"];
$element_static->label = (string) $pre_data_info["label"];
$element_static->acquisition_value_ht = $pre_data_info["acquisition_value_ht"];
$element_link = $element_static->getNomUrl(1, 'with_label');
$element_name_formatted_0 = dol_trunc($element_static->label, 16);
$element_name_formatted_1 = utf8_decode(dol_trunc($element_static->label, 32));
$element_name_formatted_2 = utf8_decode(dol_trunc($element_static->label, 16));
$label_operation = $element_static->getNomUrl(0, 'label', 16);
$element = array(
'ref' => dol_trunc($element_static->ref, 16, 'right', 'UTF-8', 1),
'error' => $pre_data_info['error'],
'blocks' => array(),
);
// Depreciation lines
//--------------------
foreach ($pre_data_info['depreciation'] as $depreciation_id => $line) {
$depreciation_ref = $line["ref"];
$depreciation_date = $line["date"];
$depreciation_date_formatted = dol_print_date($depreciation_date, 'day');
// lines
$blocks = array();
foreach ($line['lines'] as $account => $mt) {
$account_infos = $this->getAccountingAccountInfos($account);
if ($type == 'view') {
$account_to_show = length_accounta($account);
if (($account_to_show == "") || $account_to_show == 'NotDefined') {
$account_to_show = '<span class="error">' . $langs->trans("AssetInAccountNotDefined") . '</span>';
}
$blocks[] = array(
'date' => $depreciation_date_formatted,
'piece' => $element_link,
'account_accounting' => $account_to_show,
'subledger_account' => '',
'label_operation' => $label_operation . ' - ' . $depreciation_ref,
'debit' => $mt < 0 ? price(-$mt) : '',
'credit' => $mt >= 0 ? price($mt) : '',
);
} elseif ($type == 'bookkeeping') {
if ($account_infos['found']) {
$blocks[] = array(
'doc_date' => $depreciation_date,
'date_lim_reglement' => '',
'doc_ref' => $element_static->ref,
'date_creation' => $now,
'doc_type' => 'asset',
'fk_doc' => $element_static->id,
'fk_docdet' => $depreciation_id, // Useless, can be several lines that are source of this record to add
'thirdparty_code' => '',
'subledger_account' => '',
'subledger_label' => '',
'numero_compte' => $account,
'label_compte' => $account_infos['label'],
'label_operation' => $element_name_formatted_0 . ' - ' . $depreciation_ref,
'montant' => $mt,
'sens' => $mt < 0 ? 'D' : 'C',
'debit' => $mt < 0 ? -$mt : 0,
'credit' => $mt >= 0 ? $mt : 0,
'code_journal' => $journal,
'journal_label' => $journal_label_formatted,
'piece_num' => '',
'import_key' => '',
'fk_user_author' => $user->id,
'entity' => $conf->entity,
);
}
} else { // $type == 'csv'
$blocks[] = array(
$depreciation_date, // Date
$element_static->ref, // Piece
$account_infos['code_formatted_1'], // AccountAccounting
$element_name_formatted_0 . ' - ' . $depreciation_ref, // LabelOperation
$mt < 0 ? price(-$mt) : '', // Debit
$mt >= 0 ? price($mt) : '', // Credit
);
}
}
$element['blocks'][] = $blocks;
}
// Disposal line
//--------------------
if (!empty($pre_data_info['disposal'])) {
$disposal_date = $pre_data_info['disposal']['date'];
if ((!($date_start && $date_end) || ($date_start <= $disposal_date && $disposal_date <= $date_end)) &&
(empty($conf->global->ACCOUNTING_DATE_START_BINDING) || $conf->global->ACCOUNTING_DATE_START_BINDING <= $disposal_date)
) {
$disposal_amount = $pre_data_info['disposal']['amount'];
$disposal_subject_to_vat = $pre_data_info['disposal']['subject_to_vat'];
$disposal_date_formatted = dol_print_date($disposal_date, 'day');
$disposal_vat = $conf->global->ASSET_DISPOSAL_VAT > 0 ? $conf->global->ASSET_DISPOSAL_VAT : 20;
// Get accountancy codes
//---------------------------
require_once DOL_DOCUMENT_ROOT . '/asset/class/assetaccountancycodes.class.php';
$accountancy_codes = new AssetAccountancyCodes($this->db);
$result = $accountancy_codes->fetchAccountancyCodes($element_static->id);
if ($result < 0) {
$element['error'] = $accountancy_codes->errorsToString();
} else {
// Get last depreciation cumulative amount
$element_static->fetchDepreciationLines();
foreach ($element_static->depreciation_lines as $mode_key => $depreciation_lines) {
$accountancy_codes_list = $accountancy_codes->accountancy_codes[$mode_key];
if (!isset($accountancy_codes_list['value_asset_sold'])) {
continue;
}
$accountancy_code_value_asset_sold = empty($accountancy_codes_list['value_asset_sold']) ? 'NotDefined' : $accountancy_codes_list['value_asset_sold'];
$accountancy_code_depreciation_asset = empty($accountancy_codes_list['depreciation_asset']) ? 'NotDefined' : $accountancy_codes_list['depreciation_asset'];
$accountancy_code_asset = empty($accountancy_codes_list['asset']) ? 'NotDefined' : $accountancy_codes_list['asset'];
$accountancy_code_receivable_on_assignment = empty($accountancy_codes_list['receivable_on_assignment']) ? 'NotDefined' : $accountancy_codes_list['receivable_on_assignment'];
$accountancy_code_vat_collected = empty($accountancy_codes_list['vat_collected']) ? 'NotDefined' : $accountancy_codes_list['vat_collected'];
$accountancy_code_proceeds_from_sales = empty($accountancy_codes_list['proceeds_from_sales']) ? 'NotDefined' : $accountancy_codes_list['proceeds_from_sales'];
$last_cumulative_amount_ht = 0;
$depreciated_ids = array_keys($pre_data_info['depreciation']);
foreach ($depreciation_lines as $line) {
$last_cumulative_amount_ht = $line['cumulative_depreciation_ht'];
if (!in_array($line['id'], $depreciated_ids) && empty($line['bookkeeping']) && !empty($line['ref'])) {
break;
}
}
$lines = array();
$lines[0][$accountancy_code_value_asset_sold] = -($element_static->acquisition_value_ht - $last_cumulative_amount_ht);
$lines[0][$accountancy_code_depreciation_asset] = -$last_cumulative_amount_ht;
$lines[0][$accountancy_code_asset] = $element_static->acquisition_value_ht;
$disposal_amount_vat = $disposal_subject_to_vat ? (double) price2num($disposal_amount * $disposal_vat / 100, 'MT') : 0;
$lines[1][$accountancy_code_receivable_on_assignment] = -($disposal_amount + $disposal_amount_vat);
if ($disposal_subject_to_vat) $lines[1][$accountancy_code_vat_collected] = $disposal_amount_vat;
$lines[1][$accountancy_code_proceeds_from_sales] = $disposal_amount;
foreach ($lines as $lines_block) {
$blocks = array();
foreach ($lines_block as $account => $mt) {
$account_infos = $this->getAccountingAccountInfos($account);
if ($type == 'view') {
$account_to_show = length_accounta($account);
if (($account_to_show == "") || $account_to_show == 'NotDefined') {
$account_to_show = '<span class="error">' . $langs->trans("AssetInAccountNotDefined") . '</span>';
}
$blocks[] = array(
'date' => $disposal_date_formatted,
'piece' => $element_link,
'account_accounting' => $account_to_show,
'subledger_account' => '',
'label_operation' => $label_operation . ' - ' . $disposal_ref,
'debit' => $mt < 0 ? price(-$mt) : '',
'credit' => $mt >= 0 ? price($mt) : '',
);
} elseif ($type == 'bookkeeping') {
if ($account_infos['found']) {
$blocks[] = array(
'doc_date' => $disposal_date,
'date_lim_reglement' => '',
'doc_ref' => $element_static->ref,
'date_creation' => $now,
'doc_type' => 'asset',
'fk_doc' => $element_static->id,
'fk_docdet' => 0, // Useless, can be several lines that are source of this record to add
'thirdparty_code' => '',
'subledger_account' => '',
'subledger_label' => '',
'numero_compte' => $account,
'label_compte' => $account_infos['label'],
'label_operation' => $element_name_formatted_0 . ' - ' . $disposal_ref,
'montant' => $mt,
'sens' => $mt < 0 ? 'D' : 'C',
'debit' => $mt < 0 ? -$mt : 0,
'credit' => $mt >= 0 ? $mt : 0,
'code_journal' => $journal,
'journal_label' => $journal_label_formatted,
'piece_num' => '',
'import_key' => '',
'fk_user_author' => $user->id,
'entity' => $conf->entity,
);
}
} else { // $type == 'csv'
$blocks[] = array(
$disposal_date, // Date
$element_static->ref, // Piece
$account_infos['code_formatted_1'], // AccountAccounting
$element_name_formatted_0 . ' - ' . $disposal_ref, // LabelOperation
$mt < 0 ? price(-$mt) : '', // Debit
$mt >= 0 ? price($mt) : '', // Credit
);
}
}
$element['blocks'][] = $blocks;
}
}
}
}
}
$journal_data[$pre_data_id] = $element;
}
unset($pre_data);
return $journal_data;
}
/**
* Write bookkeeping
*
* @param User $user User who write in the bookkeeping
* @param array $journal_data Journal data to write in the bookkeeping
* $journal_data = array(
* id_element => array(
* 'ref' => 'ref',
* 'error' => '',
* 'blocks' => array(
* pos_block => array(
* num_line => array(
* 'doc_date' => '',
* 'date_lim_reglement' => '',
* 'doc_ref' => '',
* 'date_creation' => '',
* 'doc_type' => '',
* 'fk_doc' => '',
* 'fk_docdet' => '',
* 'thirdparty_code' => '',
* 'subledger_account' => '',
* 'subledger_label' => '',
* 'numero_compte' => '',
* 'label_compte' => '',
* 'label_operation' => '',
* 'montant' => '',
* 'sens' => '',
* 'debit' => '',
* 'credit' => '',
* 'code_journal' => '',
* 'journal_label' => '',
* 'piece_num' => '',
* 'import_key' => '',
* 'fk_user_author' => '',
* 'entity' => '',
* ),
* ),
* ),
* ),
* );
* @param int $max_nb_errors Nb error authorized before stop the process
* @return int <0 if KO, >0 if OK
*/
public function writeIntoBookkeeping(User $user, &$journal_data = array(), $max_nb_errors = 10)
{
global $conf, $langs, $hookmanager;
require_once DOL_DOCUMENT_ROOT . '/accountancy/class/bookkeeping.class.php';
// Hook
if (!is_object($hookmanager)) {
include_once DOL_DOCUMENT_ROOT . '/core/class/hookmanager.class.php';
$hookmanager = new HookManager($this->db);
}
$error = 0;
$hookmanager->initHooks(array('accountingjournaldao'));
$parameters = array('journal_data' => &$journal_data);
$reshook = $hookmanager->executeHooks('writeBookkeeping', $parameters, $this); // Note that $action and $object may have been
if ($reshook < 0) {
$this->error = $hookmanager->error;
$this->errors = $hookmanager->errors;
return -1;
} elseif (empty($reshook)) {
// Clean parameters
$journal_data = is_array($journal_data) ? $journal_data : array();
foreach ($journal_data as $element_id => $element) {
$error_for_line = 0;
$total_credit = 0;
$total_debit = 0;
$this->db->begin();
if ($element['error'] == 'somelinesarenotbound') {
$error++;
$error_for_line++;
$this->errors[] = $langs->trans('ErrorInvoiceContainsLinesNotYetBounded', $element['ref']);
}
if (!$error_for_line) {
foreach ($element['blocks'] as $lines) {
foreach ($lines as $line) {
$bookkeeping = new BookKeeping($this->db);
$bookkeeping->doc_date = $line['doc_date'];
$bookkeeping->date_lim_reglement = $line['date_lim_reglement'];
$bookkeeping->doc_ref = $line['doc_ref'];
$bookkeeping->date_creation = $line['date_creation']; // not used
$bookkeeping->doc_type = $line['doc_type'];
$bookkeeping->fk_doc = $line['fk_doc'];
$bookkeeping->fk_docdet = $line['fk_docdet'];
$bookkeeping->thirdparty_code = $line['thirdparty_code'];
$bookkeeping->subledger_account = $line['subledger_account'];
$bookkeeping->subledger_label = $line['subledger_label'];
$bookkeeping->numero_compte = $line['numero_compte'];
$bookkeeping->label_compte = $line['label_compte'];
$bookkeeping->label_operation = $line['label_operation'];
$bookkeeping->montant = $line['montant'];
$bookkeeping->sens = $line['sens'];
$bookkeeping->debit = $line['debit'];
$bookkeeping->credit = $line['credit'];
$bookkeeping->code_journal = $line['code_journal'];
$bookkeeping->journal_label = $line['journal_label'];
$bookkeeping->piece_num = $line['piece_num'];
$bookkeeping->import_key = $line['import_key'];
$bookkeeping->fk_user_author = $user->id;
$bookkeeping->entity = $conf->entity;
$total_debit += $bookkeeping->debit;
$total_credit += $bookkeeping->credit;
$result = $bookkeeping->create($user);
if ($result < 0) {
if ($bookkeeping->error == 'BookkeepingRecordAlreadyExists') { // Already exists
$error++;
$error_for_line++;
$journal_data[$element_id]['error'] = 'alreadyjournalized';
} else {
$error++;
$error_for_line++;
$journal_data[$element_id]['error'] = 'other';
$this->errors[] = $bookkeeping->errorsToString();
}
}
//
// if (!$error_for_line && isModEnabled('asset') && $this->nature == 1 && $bookkeeping->fk_doc > 0) {
// // Set last cumulative depreciation
// require_once DOL_DOCUMENT_ROOT . '/asset/class/asset.class.php';
// $asset = new Asset($this->db);
// $result = $asset->setLastCumulativeDepreciation($bookkeeping->fk_doc);
// if ($result < 0) {
// $error++;
// $error_for_line++;
// $journal_data[$element_id]['error'] = 'other';
// $this->errors[] = $asset->errorsToString();
// }
// }
}
if ($error_for_line) {
break;
}
}
}
// Protection against a bug on lines before
if (!$error_for_line && (price2num($total_debit, 'MT') != price2num($total_credit, 'MT'))) {
$error++;
$error_for_line++;
$journal_data[$element_id]['error'] = 'amountsnotbalanced';
$this->errors[] = 'Try to insert a non balanced transaction in book for ' . $element['blocks'] . '. Canceled. Surely a bug.';
}
if (!$error_for_line) {
$this->db->commit();
} else {
$this->db->rollback();
if ($error >= $max_nb_errors) {
$this->errors[] = $langs->trans("ErrorTooManyErrorsProcessStopped");
break; // Break in the foreach
}
}
}
}
return $error ? -$error : 1;
}
/**
* Export journal CSV
* ISO and not UTF8 !
*
* @param array $journal_data Journal data to write in the bookkeeping
* $journal_data = array(
* id_element => array(
* 'continue' => false,
* 'blocks' => array(
* pos_block => array(
* num_line => array(
* data to write in the CSV line
* ),
* ),
* ),
* ),
* );
* @param int $search_date_end Search date end
* @param string $sep CSV separator
* @return int|string <0 if KO, >0 if OK
*/
public function exportCsv(&$journal_data = array(), $search_date_end = 0, $sep = '')
{
global $conf, $langs, $hookmanager;
if (empty($sep)) $sep = $conf->global->ACCOUNTING_EXPORT_SEPARATORCSV;
$out = '';
// Hook
if (!is_object($hookmanager)) {
include_once DOL_DOCUMENT_ROOT . '/core/class/hookmanager.class.php';
$hookmanager = new HookManager($this->db);
}
$hookmanager->initHooks(array('accountingjournaldao'));
$parameters = array('journal_data' => &$journal_data, 'search_date_end' => &$search_date_end, 'sep' => &$sep, 'out' => &$out);
$reshook = $hookmanager->executeHooks('exportCsv', $parameters, $this); // Note that $action and $object may have been
if ($reshook < 0) {
$this->error = $hookmanager->error;
$this->errors = $hookmanager->errors;
return -1;
} elseif (empty($reshook)) {
// Clean parameters
$journal_data = is_array($journal_data) ? $journal_data : array();
// CSV header line
$header = array();
if ($this->nature == 4) {
$header = array(
$langs->transnoentitiesnoconv("BankId"),
$langs->transnoentitiesnoconv("Date"),
$langs->transnoentitiesnoconv("PaymentMode"),
$langs->transnoentitiesnoconv("AccountAccounting"),
$langs->transnoentitiesnoconv("LedgerAccount"),
$langs->transnoentitiesnoconv("SubledgerAccount"),
$langs->transnoentitiesnoconv("Label"),
$langs->transnoentitiesnoconv("Debit"),
$langs->transnoentitiesnoconv("Credit"),
$langs->transnoentitiesnoconv("Journal"),
$langs->transnoentitiesnoconv("Note"),
);
} elseif ($this->nature == 5) {
$header = array(
$langs->transnoentitiesnoconv("Date"),
$langs->transnoentitiesnoconv("Piece"),
$langs->transnoentitiesnoconv("AccountAccounting"),
$langs->transnoentitiesnoconv("LabelOperation"),
$langs->transnoentitiesnoconv("Debit"),
$langs->transnoentitiesnoconv("Credit"),
);
} elseif ($this->nature == 1) {
$header = array(
$langs->transnoentitiesnoconv("Date"),
$langs->transnoentitiesnoconv("Piece"),
$langs->transnoentitiesnoconv("AccountAccounting"),
$langs->transnoentitiesnoconv("LabelOperation"),
$langs->transnoentitiesnoconv("Debit"),
$langs->transnoentitiesnoconv("Credit"),
);
}
if (!empty($header)) $out .= '"' . implode('"' . $sep . '"', $header) . '"' . "\n";
foreach ($journal_data as $element_id => $element) {
foreach ($element['blocks'] as $lines) {
foreach ($lines as $line) {
$out .= '"' . implode('"' . $sep . '"', $line) . '"' . "\n";
}
}
}
}
return $out;
}
/**
* Get accounting account infos
*
* @param string $account Accounting account number
* @return array Accounting account infos
*/
public function getAccountingAccountInfos($account)
{
if (!isset(self::$accounting_account_cached[$account])) {
require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php';
require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingaccount.class.php';
$accountingaccount = new AccountingAccount($this->db);
$result = $accountingaccount->fetch(null, $account, true);
if ($result > 0) {
self::$accounting_account_cached[$account] = array(
'found' => true,
'label' => $accountingaccount->label,
'code_formatted_1' => length_accounta(html_entity_decode($account)),
'label_formatted_1' => utf8_decode(dol_trunc($accountingaccount->label, 32)),
'label_formatted_2' => dol_trunc($accountingaccount->label, 32),
);
} else {
self::$accounting_account_cached[$account] = array(
'found' => false,
'label' => '',
'code_formatted_1' => length_accounta(html_entity_decode($account)),
'label_formatted_1' => '',
'label_formatted_2' => '',
);
}
}
return self::$accounting_account_cached[$account];
}
}

View File

@@ -1,6 +1,6 @@
<?php
/* Copyright (C) 2014-2017 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2015-2017 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2015-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2015-2020 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2018-2020 Frédéric France <frederic.france@netlogic.fr>
*
@@ -460,7 +460,7 @@ class BookKeeping extends CommonObject
{
global $db, $conf, $langs;
global $dolibarr_main_authentication, $dolibarr_main_demo;
global $menumanager;
global $menumanager, $hookmanager;
if (!empty($conf->dol_no_mouse_hover)) {
$notooltip = 1; // Force disable tooltips
@@ -512,6 +512,15 @@ class BookKeeping extends CommonObject
$result .= $linkend;
//if ($withpicto != 2) $result.=(($addlabel && $this->label) ? $sep . dol_trunc($this->label, ($addlabel > 1 ? $addlabel : 0)) : '');
global $action;
$hookmanager->initHooks(array($this->element . 'dao'));
$parameters = array('id'=>$this->id, 'getnomurl' => &$result);
$reshook = $hookmanager->executeHooks('getNomUrl', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks
if ($reshook > 0) {
$result = $hookmanager->resPrint;
} else {
$result .= $hookmanager->resPrint;
}
return $result;
}
@@ -597,9 +606,13 @@ class BookKeeping extends CommonObject
if (empty($this->credit)) {
$this->credit = 0;
}
if (empty($this->montant)) {
$this->montant = 0;
}
$this->debit = price2num($this->debit, 'MT');
$this->credit = price2num($this->credit, 'MT');
$this->montant = price2num($this->montant, 'MT');
$now = dol_now();
@@ -843,7 +856,8 @@ class BookKeeping extends CommonObject
$sql .= " t.piece_num,";
$sql .= " t.date_creation,";
$sql .= " t.date_export,";
$sql .= " t.date_validated as date_validation";
$sql .= " t.date_validated as date_validation,";
$sql .= " t.import_key";
// Manage filter
$sqlwhere = array();
if (count($filter) > 0) {
@@ -938,6 +952,7 @@ class BookKeeping extends CommonObject
$line->date_creation = $this->db->jdate($obj->date_creation);
$line->date_export = $this->db->jdate($obj->date_export);
$line->date_validation = $this->db->jdate($obj->date_validation);
$line->import_key = $obj->import_key;
$this->lines[] = $line;
@@ -1650,11 +1665,12 @@ class BookKeeping extends CommonObject
$this->doc_date = $this->db->jdate($obj->doc_date);
$this->doc_ref = $obj->doc_ref;
$this->doc_type = $obj->doc_type;
$this->date_creation = $obj->date_creation;
$this->date_modification = $obj->date_modification;
$this->date_export = $obj->date_export;
$this->date_validation = $obj->date_validated;
$this->date_validation = $obj->date_validation;
$this->date_creation = $this->db->jdate($obj->date_creation);
$this->date_modification = $this->db->jdate($obj->date_modification);
if ($mode != "_tmp") {
$this->date_export = $this->db->jdate($obj->date_export);
}
$this->date_validation = $this->db->jdate($obj->date_validation);
} else {
$this->error = "Error ".$this->db->lasterror();
dol_syslog(__METHOD__.$this->error, LOG_ERR);
@@ -1750,7 +1766,9 @@ class BookKeeping extends CommonObject
$line->piece_num = $obj->piece_num;
$line->date_creation = $obj->date_creation;
$line->date_modification = $obj->date_modification;
$line->date_export = $obj->date_export;
if ($mode != "_tmp") {
$line->date_export = $obj->date_export;
}
$line->date_validation = $obj->date_validation;
$this->linesmvt[] = $line;
@@ -1832,8 +1850,8 @@ class BookKeeping extends CommonObject
/**
* Transform transaction
*
* @param number $direction If 0 tmp => real, if 1 real => tmp
* @param string $piece_num Piece num
* @param number $direction If 0: tmp => real, if 1: real => tmp
* @param string $piece_num Piece num = Transaction ref
* @return int int <0 if KO, >0 if OK
*/
public function transformTransaction($direction = 0, $piece_num = '')
@@ -1851,57 +1869,82 @@ class BookKeeping extends CommonObject
if ($next_piecenum < 0) {
$error++;
}
$sql = 'INSERT INTO '.MAIN_DB_PREFIX.$this->table_element.' (doc_date, doc_type,';
$sql .= ' doc_ref, fk_doc, fk_docdet, entity, thirdparty_code, subledger_account, subledger_label,';
$sql .= ' numero_compte, label_compte, label_operation, debit, credit,';
$sql .= ' montant, sens, fk_user_author, import_key, code_journal, journal_label, piece_num, date_creation)';
$sql .= ' SELECT doc_date, doc_type,';
$sql .= ' doc_ref, fk_doc, fk_docdet, entity, thirdparty_code, subledger_account, subledger_label,';
$sql .= ' numero_compte, label_compte, label_operation, debit, credit,';
$sql .= ' montant, sens, fk_user_author, import_key, code_journal, journal_label, '.((int) $next_piecenum).", '".$this->db->idate($now)."'";
$sql .= ' FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity);
$resql = $this->db->query($sql);
if (!$resql) {
$error++;
$this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
if (!$error) {
// Delete if there is an empty line
$sql = 'DELETE FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity)." AND numero_compte IS NULL AND debit = 0 AND credit = 0";
$resql = $this->db->query($sql);
if (!$resql) {
$error++;
$this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
}
}
$sql = 'DELETE FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity);
$resql = $this->db->query($sql);
if (!$resql) {
$error++;
$this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
if (!$error) {
$sql = 'INSERT INTO '.MAIN_DB_PREFIX.$this->table_element.' (doc_date, doc_type,';
$sql .= ' doc_ref, fk_doc, fk_docdet, entity, thirdparty_code, subledger_account, subledger_label,';
$sql .= ' numero_compte, label_compte, label_operation, debit, credit,';
$sql .= ' montant, sens, fk_user_author, import_key, code_journal, journal_label, piece_num, date_creation)';
$sql .= ' SELECT doc_date, doc_type,';
$sql .= ' doc_ref, fk_doc, fk_docdet, entity, thirdparty_code, subledger_account, subledger_label,';
$sql .= ' numero_compte, label_compte, label_operation, debit, credit,';
$sql .= ' montant, sens, fk_user_author, import_key, code_journal, journal_label, '.((int) $next_piecenum).", '".$this->db->idate($now)."'";
$sql .= ' FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND numero_compte IS NOT NULL AND entity = ' .((int) $conf->entity);
$resql = $this->db->query($sql);
if (!$resql) {
$error++;
$this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
}
}
if (!$error) {
$sql = 'DELETE FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity);
$resql = $this->db->query($sql);
if (!$resql) {
$error++;
$this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
}
}
} elseif ($direction == 1) {
$sql = 'DELETE FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity);
$resql = $this->db->query($sql);
if (!$resql) {
$error++;
$this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
if (!$error) {
$sql = 'DELETE FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity);
$resql = $this->db->query($sql);
if (!$resql) {
$error++;
$this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
}
}
$sql = 'INSERT INTO '.MAIN_DB_PREFIX.$this->table_element.'_tmp (doc_date, doc_type,';
$sql .= ' doc_ref, fk_doc, fk_docdet, thirdparty_code, subledger_account, subledger_label,';
$sql .= ' numero_compte, label_compte, label_operation, debit, credit,';
$sql .= ' montant, sens, fk_user_author, import_key, code_journal, journal_label, piece_num)';
$sql .= ' SELECT doc_date, doc_type,';
$sql .= ' doc_ref, fk_doc, fk_docdet, thirdparty_code, subledger_account, subledger_label,';
$sql .= ' numero_compte, label_compte, label_operation, debit, credit,';
$sql .= ' montant, sens, fk_user_author, import_key, code_journal, journal_label, piece_num';
$sql .= ' FROM '.MAIN_DB_PREFIX.$this->table_element.' WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity);
$resql = $this->db->query($sql);
if (!$resql) {
$error++;
$this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
if (!$error) {
$sql = 'INSERT INTO '.MAIN_DB_PREFIX.$this->table_element.'_tmp (doc_date, doc_type,';
$sql .= ' doc_ref, fk_doc, fk_docdet, thirdparty_code, subledger_account, subledger_label,';
$sql .= ' numero_compte, label_compte, label_operation, debit, credit,';
$sql .= ' montant, sens, fk_user_author, import_key, code_journal, journal_label, piece_num)';
$sql .= ' SELECT doc_date, doc_type,';
$sql .= ' doc_ref, fk_doc, fk_docdet, thirdparty_code, subledger_account, subledger_label,';
$sql .= ' numero_compte, label_compte, label_operation, debit, credit,';
$sql .= ' montant, sens, fk_user_author, import_key, code_journal, journal_label, piece_num';
$sql .= ' FROM '.MAIN_DB_PREFIX.$this->table_element.' WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity);
$resql = $this->db->query($sql);
if (!$resql) {
$error++;
$this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
}
}
$sql = 'DELETE FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity);
$resql = $this->db->query($sql);
if (!$resql) {
$error++;
$this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
if (!$error) {
$sql = 'DELETE FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity);
$resql = $this->db->query($sql);
if (!$resql) {
$error++;
$this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
}
}
}
if (!$error) {

View File

@@ -33,6 +33,12 @@ include_once DOL_DOCUMENT_ROOT."/core/lib/date.lib.php";
*/
class Lettering extends BookKeeping
{
/**
* @var BookKeeping[] Bookkeeping cached
*/
public static $bookkeeping_cached = array();
/**
* letteringThirdparty
*
@@ -119,6 +125,7 @@ class Lettering extends BookKeeping
$ids[$obj2->rowid] = $obj2->rowid;
$ids_fact[] = $obj2->fact_id;
}
$this->db->free($resql2);
} else {
$this->errors[] = $this->db->lasterror;
return -1;
@@ -146,6 +153,7 @@ class Lettering extends BookKeeping
while ($obj2 = $this->db->fetch_object($resql2)) {
$ids[$obj2->rowid] = $obj2->rowid;
}
$this->db->free($resql2);
} else {
$this->errors[] = $this->db->lasterror;
return -1;
@@ -205,6 +213,7 @@ class Lettering extends BookKeeping
while ($obj2 = $this->db->fetch_object($resql2)) {
$ids[$obj2->rowid] = $obj2->rowid;
}
$this->db->free($resql2);
} else {
$this->errors[] = $this->db->lasterror;
return -1;
@@ -216,6 +225,7 @@ class Lettering extends BookKeeping
$result = $this->updateLettering($ids);
}
}
$this->db->free($resql);
}
if ($error) {
foreach ($this->errors as $errmsg) {
@@ -230,39 +240,55 @@ class Lettering extends BookKeeping
/**
*
* @param array $ids ids array
* @param boolean $notrigger no trigger
* @return number
* @param array $ids ids array
* @param boolean $notrigger no trigger
* @return int
*/
public function updateLettering($ids = array(), $notrigger = false)
{
$error = 0;
$lettre = 'AAA';
$sql = "SELECT DISTINCT lettering_code FROM ".MAIN_DB_PREFIX."accounting_bookkeeping WHERE ";
$sql .= " lettering_code != '' ORDER BY lettering_code DESC limit 1";
$sql = "SELECT DISTINCT ab2.lettering_code";
$sql .= " FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping As ab";
$sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "bank_url AS bu ON bu.fk_bank = ab.fk_doc";
$sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "bank_url AS bu2 ON bu2.url_id = bu.url_id";
$sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "accounting_bookkeeping AS ab2 ON ab2.fk_doc = bu2.fk_bank";
$sql .= " WHERE ab.rowid IN (" . $this->db->sanitize(implode(',', $ids)) . ")";
$sql .= " AND ab.doc_type = 'bank'";
$sql .= " AND ab2.doc_type = 'bank'";
$sql .= " AND bu.type = 'company'";
$sql .= " AND bu2.type = 'company'";
$sql .= " AND ab.subledger_account != ''";
$sql .= " AND ab2.subledger_account != ''";
$sql .= " AND ab.lettering_code IS NULL";
$sql .= " AND ab2.lettering_code != ''";
$sql .= " ORDER BY ab2.lettering_code DESC";
$sql .= " LIMIT 1 ";
$result = $this->db->query($sql);
if ($result) {
$obj = $this->db->fetch_object($result);
$resqla = $this->db->query($sql);
if ($resqla) {
$obj = $this->db->fetch_object($resqla);
$lettre = (empty($obj->lettering_code) ? 'AAA' : $obj->lettering_code);
if (!empty($obj->lettering_code)) {
$lettre++;
}
$this->db->free($resqla);
} else {
$this->errors[] = 'Error'.$this->db->lasterror();
$error++;
}
$sql = "SELECT SUM(ABS(debit)) as deb, SUM(ABS(credit)) as cred FROM ".MAIN_DB_PREFIX."accounting_bookkeeping WHERE ";
$sql .= " rowid IN (".$this->db->sanitize(implode(',', $ids)).") AND date_validated IS NULL";
$result = $this->db->query($sql);
if ($result) {
$obj = $this->db->fetch_object($result);
$sql .= " rowid IN (".$this->db->sanitize(implode(',', $ids)).") AND lettering_code IS NULL AND subledger_account != ''";
$resqlb = $this->db->query($sql);
if ($resqlb) {
$obj = $this->db->fetch_object($resqlb);
if (!(round(abs($obj->deb), 2) === round(abs($obj->cred), 2))) {
$this->errors[] = 'Total not exacts '.round(abs($obj->deb), 2).' vs '.round(abs($obj->cred), 2);
$error++;
}
$this->db->free($resqlb);
} else {
$this->errors[] = 'Erreur sql'.$this->db->lasterror();
$error++;
@@ -276,8 +302,7 @@ class Lettering extends BookKeeping
$sql = "UPDATE ".MAIN_DB_PREFIX."accounting_bookkeeping SET";
$sql .= " lettering_code='".$this->db->escape($lettre)."'";
$sql .= " , date_lettering = '".$this->db->idate($now)."'"; // todo correct date it's false
$sql .= " WHERE rowid IN (".$this->db->sanitize(implode(',', $ids)).") AND date_validated IS NULL ";
$this->db->begin();
$sql .= " WHERE rowid IN (".$this->db->sanitize(implode(',', $ids)).") AND lettering_code IS NULL AND subledger_account != ''";
dol_syslog(get_class($this)."::update", LOG_DEBUG);
$resql = $this->db->query($sql);
@@ -293,11 +318,431 @@ class Lettering extends BookKeeping
dol_syslog(get_class($this)."::update ".$errmsg, LOG_ERR);
$this->error .= ($this->error ? ', '.$errmsg : $errmsg);
}
$this->db->rollback();
return -1 * $error;
} else {
$this->db->commit();
return 1;
}
}
/**
*
* @param array $ids ids array
* @param boolean $notrigger no trigger
* @return int
*/
public function deleteLettering($ids, $notrigger = false)
{
$error = 0;
$sql = "UPDATE ".MAIN_DB_PREFIX."accounting_bookkeeping SET";
$sql .= " lettering_code = NULL";
$sql .= " , date_lettering = NULL";
$sql .= " WHERE rowid IN (".$this->db->sanitize(implode(',', $ids)).")";
$sql .= " AND subledger_account != ''";
dol_syslog(get_class($this)."::update", LOG_DEBUG);
$resql = $this->db->query($sql);
if (!$resql) {
$error++;
$this->errors[] = "Error ".$this->db->lasterror();
}
// Commit or rollback
if ($error) {
foreach ($this->errors as $errmsg) {
dol_syslog(get_class($this)."::update ".$errmsg, LOG_ERR);
$this->error .= ($this->error ? ', '.$errmsg : $errmsg);
}
return -1 * $error;
} else {
return 1;
}
}
/**
* Lettering bookkeeping lines all types
*
* @param array $bookkeeping_ids Lettering specific list of bookkeeping id
* @param bool $unlettering Do unlettering
* @return int <0 if error (nb lettered = result -1), 0 if noting to lettering, >0 if OK (nb lettered)
*/
public function bookkeepingLetteringAll($bookkeeping_ids, $unlettering = false)
{
dol_syslog(__METHOD__ . " - ", LOG_DEBUG);
$error = 0;
$errors = array();
$nb_lettering = 0;
$result = $this->bookkeepingLettering($bookkeeping_ids, 'customer_invoice', $unlettering);
if ($result < 0) {
$error++;
$errors = array_merge($errors, $this->errors);
$nb_lettering += abs($result) - 2;
} else {
$nb_lettering += $result;
}
$result = $this->bookkeepingLettering($bookkeeping_ids, 'supplier_invoice', $unlettering);
if ($result < 0) {
$error++;
$errors = array_merge($errors, $this->errors);
$nb_lettering += abs($result) - 2;
} else {
$nb_lettering += $result;
}
if ($error) {
$this->errors = $errors;
return -2 - $nb_lettering;
} else {
return $nb_lettering;
}
}
/**
* Lettering bookkeeping lines
*
* @param array $bookkeeping_ids Lettering specific list of bookkeeping id
* @param string $type Type of bookkeeping type to lettering ('customer_invoice' or 'supplier_invoice')
* @param bool $unlettering Do unlettering
* @return int <0 if error (nb lettered = result -1), 0 if noting to lettering, >0 if OK (nb lettered)
*/
public function bookkeepingLettering($bookkeeping_ids, $type = 'customer_invoice', $unlettering = false)
{
global $langs;
$this->errors = array();
// Clean parameters
$bookkeeping_ids = is_array($bookkeeping_ids) ? $bookkeeping_ids : array();
$type = trim($type);
$error = 0;
$nb_lettering = 0;
$grouped_lines = $this->getLinkedLines($bookkeeping_ids, $type);
foreach ($grouped_lines as $lines) {
$group_error = 0;
$total = 0;
$do_it = !$unlettering;
$lettering_code = null;
$piece_num_lines = array();
$bookkeeping_lines = array();
foreach ($lines as $line_infos) {
$bookkeeping_lines[$line_infos['id']] = $line_infos['id'];
$piece_num_lines[$line_infos['piece_num']] = $line_infos['piece_num'];
$total += ($line_infos['credit'] > 0 ? $line_infos['credit'] : -$line_infos['debit']);
// Check lettering code
if ($unlettering) {
if (isset($lettering_code) && $lettering_code != $line_infos['lettering_code']) {
$this->errors[] = $langs->trans('AccountancyErrorMismatchLetteringCode');
$group_error++;
break;
}
if (!isset($lettering_code)) $lettering_code = (string) $line_infos['lettering_code'];
if (!empty($line_infos['lettering_code'])) $do_it = true;
} elseif (!empty($line_infos['lettering_code'])) $do_it = false;
}
// Check balance amount
if (!$group_error && !$unlettering && price2num($total) != 0) {
$this->errors[] = $langs->trans('AccountancyErrorMismatchBalanceAmount', $total);
$group_error++;
}
// Lettering/Unlettering the group of bookkeeping lines
if (!$group_error && $do_it) {
if ($unlettering) $result = $this->deleteLettering($bookkeeping_lines);
else $result = $this->updateLettering($bookkeeping_lines);
if ($result < 0) {
$group_error++;
} else {
$nb_lettering++;
}
}
if ($group_error) {
$this->errors[] = $langs->trans('AccountancyErrorLetteringBookkeeping', implode(', ', $piece_num_lines));
$error++;
}
}
if ($error) {
return -2 - $nb_lettering;
} else {
return $nb_lettering;
}
}
/**
* Lettering bookkeeping lines
*
* @param array $bookkeeping_ids Lettering specific list of bookkeeping id
* @param string $type Type of bookkeeping type to lettering ('customer_invoice' or 'supplier_invoice')
* @return array|int <0 if error otherwise all linked lines by block
*/
public function getLinkedLines($bookkeeping_ids, $type = 'customer_invoice')
{
global $conf, $langs;
$this->errors = array();
// Clean parameters
$bookkeeping_ids = is_array($bookkeeping_ids) ? $bookkeeping_ids : array();
$type = trim($type);
if ($type == 'customer_invoice') {
$doc_type = 'customer_invoice';
$bank_url_type = 'payment';
$payment_element = 'paiement_facture';
$fk_payment_element = 'fk_paiement';
$fk_element = 'fk_facture';
$account_number = $conf->global->ACCOUNTING_ACCOUNT_CUSTOMER;
} elseif ($type == 'supplier_invoice') {
$doc_type = 'supplier_invoice';
$bank_url_type = 'payment_supplier';
$payment_element = 'paiementfourn_facturefourn';
$fk_payment_element = 'fk_paiementfourn';
$fk_element = 'fk_facturefourn';
$account_number = $conf->global->ACCOUNTING_ACCOUNT_SUPPLIER;
} else {
$langs->load('errors');
$this->errors[] = $langs->trans('ErrorBadParameters');
return -1;
}
$payment_ids = array();
// Get all payment id from bank lines
$sql = "SELECT DISTINCT bu.url_id AS payment_id";
$sql .= " FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping AS ab";
$sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "bank_url AS bu ON bu.fk_bank = ab.fk_doc";
$sql .= " WHERE ab.doc_type = 'bank'";
// $sql .= " AND ab.subledger_account != ''";
// $sql .= " AND ab.numero_compte = '" . $this->db->escape($account_number) . "'";
$sql .= " AND bu.type = '" . $this->db->escape($bank_url_type) . "'";
if (!empty($bookkeeping_ids)) $sql .= " AND ab.rowid IN (" . $this->db->sanitize(implode(',', $bookkeeping_ids)) . ")";
dol_syslog(__METHOD__ . " - Get all payment id from bank lines", LOG_DEBUG);
$resql = $this->db->query($sql);
if (!$resql) {
$this->errors[] = "Error " . $this->db->lasterror();
return -1;
}
while ($obj = $this->db->fetch_object($resql)) {
$payment_ids[$obj->payment_id] = $obj->payment_id;
}
$this->db->free($resql);
// Get all payment id from payment lines
$sql = "SELECT DISTINCT pe.$fk_payment_element AS payment_id";
$sql .= " FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping AS ab";
$sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "$payment_element AS pe ON pe.$fk_element = ab.fk_doc";
$sql .= " WHERE ab.doc_type = '" . $this->db->escape($doc_type) . "'";
// $sql .= " AND ab.subledger_account != ''";
// $sql .= " AND ab.numero_compte = '" . $this->db->escape($account_number) . "'";
$sql .= " AND pe.$fk_payment_element IS NOT NULL";
if (!empty($bookkeeping_ids)) $sql .= " AND ab.rowid IN (" . $this->db->sanitize(implode(',', $bookkeeping_ids)) . ")";
dol_syslog(__METHOD__ . " - Get all payment id from bank lines", LOG_DEBUG);
$resql = $this->db->query($sql);
if (!$resql) {
$this->errors[] = "Error " . $this->db->lasterror();
return -1;
}
while ($obj = $this->db->fetch_object($resql)) {
$payment_ids[$obj->payment_id] = $obj->payment_id;
}
$this->db->free($resql);
if (empty($payment_ids)) {
return array();
}
// Get all payments linked by group
$payment_by_group = $this->getLinkedPaymentByGroup($payment_ids, $type);
$groups = array();
foreach ($payment_by_group as $payment_list) {
$lines = array();
// Get bank lines
$sql = "SELECT DISTINCT ab.rowid, ab.piece_num, ab.lettering_code, ab.debit, ab.credit";
$sql .= " FROM " . MAIN_DB_PREFIX . "bank_url AS bu";
$sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "accounting_bookkeeping AS ab ON ab.fk_doc = bu.fk_bank";
$sql .= " WHERE bu.url_id IN (" . $this->db->sanitize(implode(',', $payment_list)) . ")";
$sql .= " AND bu.type = '" . $this->db->escape($bank_url_type) . "'";
$sql .= " AND ab.doc_type = 'bank'";
$sql .= " AND ab.subledger_account != ''";
$sql .= " AND ab.numero_compte = '" . $this->db->escape($account_number) . "'";
dol_syslog(__METHOD__ . " - Get bank lines", LOG_DEBUG);
$resql = $this->db->query($sql);
if (!$resql) {
$this->errors[] = "Error " . $this->db->lasterror();
return -1;
}
while ($obj = $this->db->fetch_object($resql)) {
$lines[$obj->rowid] = array('id' => $obj->rowid, 'piece_num' => $obj->piece_num, 'lettering_code' => $obj->lettering_code, 'debit' => $obj->debit, 'credit' => $obj->credit);
}
$this->db->free($resql);
// Get payment lines
$sql = "SELECT DISTINCT ab.rowid, ab.piece_num, ab.lettering_code, ab.debit, ab.credit";
$sql .= " FROM " . MAIN_DB_PREFIX . "$payment_element AS pe";
$sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "accounting_bookkeeping AS ab ON ab.fk_doc = pe.$fk_element";
$sql .= " WHERE pe.$fk_payment_element IN (" . $this->db->sanitize(implode(',', $payment_list)) . ")";
$sql .= " AND ab.doc_type = '" . $this->db->escape($doc_type) . "'";
$sql .= " AND ab.subledger_account != ''";
$sql .= " AND ab.numero_compte = '" . $this->db->escape($account_number) . "'";
dol_syslog(__METHOD__ . " - Get payment lines", LOG_DEBUG);
$resql = $this->db->query($sql);
if (!$resql) {
$this->errors[] = "Error " . $this->db->lasterror();
return -1;
}
while ($obj = $this->db->fetch_object($resql)) {
$lines[$obj->rowid] = array('id' => $obj->rowid, 'piece_num' => $obj->piece_num, 'lettering_code' => $obj->lettering_code, 'debit' => $obj->debit, 'credit' => $obj->credit);
}
$this->db->free($resql);
if (!empty($lines)) {
$groups[] = $lines;
}
}
return $groups;
}
/**
* Linked payment by group
*
* @param array $payment_ids list of payment id
* @param string $type Type of bookkeeping type to lettering ('customer_invoice' or 'supplier_invoice')
* @return array|int <0 if error otherwise all linked lines by block
*/
public function getLinkedPaymentByGroup($payment_ids, $type)
{
global $langs;
// Clean parameters
$payment_ids = is_array($payment_ids) ? $payment_ids : array();
$type = trim($type);
if (empty($payment_ids)) {
return array();
}
if ($type == 'customer_invoice') {
$payment_element = 'paiement_facture';
$fk_payment_element = 'fk_paiement';
$fk_element = 'fk_facture';
} elseif ($type == 'supplier_invoice') {
$payment_element = 'paiementfourn_facturefourn';
$fk_payment_element = 'fk_paiementfourn';
$fk_element = 'fk_facturefourn';
} else {
$langs->load('errors');
$this->errors[] = $langs->trans('ErrorBadParameters');
return -1;
}
// Get payment lines
$sql = "SELECT DISTINCT pe2.$fk_payment_element, pe2.$fk_element";
$sql .= " FROM " . MAIN_DB_PREFIX . "$payment_element AS pe";
$sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "$payment_element AS pe2 ON pe2.$fk_element = pe.$fk_element";
$sql .= " WHERE pe.$fk_payment_element IN (" . $this->db->sanitize(implode(',', $payment_ids)) . ")";
dol_syslog(__METHOD__ . " - Get payment lines", LOG_DEBUG);
$resql = $this->db->query($sql);
if (!$resql) {
$this->errors[] = "Error " . $this->db->lasterror();
return -1;
}
$current_payment_ids = array();
$payment_by_element = array();
$element_by_payment = array();
while ($obj = $this->db->fetch_object($resql)) {
$current_payment_ids[$obj->$fk_payment_element] = $obj->$fk_payment_element;
$element_by_payment[$obj->$fk_payment_element][$obj->$fk_element] = $obj->$fk_element;
$payment_by_element[$obj->$fk_element][$obj->$fk_payment_element] = $obj->$fk_payment_element;
}
$this->db->free($resql);
if (count(array_diff($payment_ids, $current_payment_ids))) {
return $this->getLinkedPaymentByGroup($current_payment_ids, $type);
}
return $this->getGroupElements($payment_by_element, $element_by_payment);
}
/**
* Get payment ids grouped by payment id and element id in common
*
* @param array $payment_by_element List of payment ids by element id
* @param array $element_by_payment List of element ids by payment id
* @param int $element_id Element Id (used for recursive function)
* @param array $current_group Current group (used for recursive function)
* @return array List of payment ids grouped by payment id and element id in common
*/
public function getGroupElements(&$payment_by_element, &$element_by_payment, $element_id = 0, &$current_group = array())
{
$grouped_payments = array();
if ($element_id > 0 && !isset($payment_by_element[$element_id])) {
// Return if specific element id not found
return $grouped_payments;
}
$save_payment_by_element = null;
$save_element_by_payment = null;
if ($element_id == 0) {
// Save list when is the begin of recursive function
$save_payment_by_element = $payment_by_element;
$save_element_by_payment = $element_by_payment;
}
do {
// Get current element id, get this payment id list and delete the entry
$current_element_id = $element_id > 0 ? $element_id : array_keys($payment_by_element)[0];
$payment_ids = $payment_by_element[$current_element_id];
unset($payment_by_element[$current_element_id]);
foreach ($payment_ids as $payment_id) {
// Continue if payment id in not found
if (!isset($element_by_payment[$payment_id])) continue;
// Set the payment in the current group
$current_group[$payment_id] = $payment_id;
// Get current element ids, get this payment id list and delete the entry
$element_ids = $element_by_payment[$payment_id];
unset($element_by_payment[$payment_id]);
// Set payment id on the current group for each element id of the payment
foreach ($element_ids as $id) {
$this->getGroupElements($payment_by_element, $element_by_payment, $id, $current_group);
}
}
if ($element_id == 0) {
// Save current group and reset the current group when is the begin of recursive function
$grouped_payments[] = $current_group;
$current_group = array();
}
} while (!empty($payment_by_element) && $element_id == 0);
if ($element_id == 0) {
// Restore list when is the begin of recursive function
$payment_by_element = $save_payment_by_element;
$element_by_payment = $save_element_by_payment;
}
return $grouped_payments;
}
}

View File

@@ -57,7 +57,7 @@ $search_date_end = dol_get_last_day($year_end, $month_end);
$year_current = $year_start;
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -112,6 +112,7 @@ if ($action == 'validate_movements_confirm' && !empty($user->rights->accounting-
}
}
/*
* View
*/
@@ -178,20 +179,40 @@ for ($i = 1; $i <= 12; $i++) {
}
print '<td width="60" class="right"><b>'.$langs->trans("Total").'</b></td></tr>';
$sql = "SELECT COUNT(b.rowid) as detail,";
for ($i = 1; $i <= 12; $i++) {
$j = $i + ($conf->global->SOCIETE_FISCAL_MONTH_START ? $conf->global->SOCIETE_FISCAL_MONTH_START : 1) - 1;
if ($j > 12) {
$j -= 12;
if (getDolGlobalString("ACCOUNTANCY_DISABLE_CLOSURE_LINE_BY_LINE")) {
// TODO Analyse is done by finding record not into a closed period
$sql = "SELECT COUNT(b.rowid) as detail,";
for ($i = 1; $i <= 12; $i++) {
$j = $i + ($conf->global->SOCIETE_FISCAL_MONTH_START ? $conf->global->SOCIETE_FISCAL_MONTH_START : 1) - 1;
if ($j > 12) {
$j -= 12;
}
$sql .= " SUM(".$db->ifsql("MONTH(b.doc_date)=".$j, "1", "0").") AS month".str_pad($j, 2, "0", STR_PAD_LEFT).",";
}
$sql .= " SUM(".$db->ifsql("MONTH(b.doc_date)=".$j, "1", "0").") AS month".str_pad($j, 2, "0", STR_PAD_LEFT).",";
$sql .= " COUNT(b.rowid) as total";
$sql .= " FROM ".MAIN_DB_PREFIX."accounting_bookkeeping as b";
$sql .= " WHERE b.doc_date >= '".$db->idate($search_date_start)."'";
$sql .= " AND b.doc_date <= '".$db->idate($search_date_end)."'";
$sql .= " AND b.entity IN (".getEntity('bookkeeping', 0).")"; // We don't share object for accountancy
// Loop on each closed period
$sql .= " AND b.doc_date BETWEEN 0 AND 0";
} else {
// Analyse closed record using the unitary flag/date on each record
$sql = "SELECT COUNT(b.rowid) as detail,";
for ($i = 1; $i <= 12; $i++) {
$j = $i + ($conf->global->SOCIETE_FISCAL_MONTH_START ? $conf->global->SOCIETE_FISCAL_MONTH_START : 1) - 1;
if ($j > 12) {
$j -= 12;
}
$sql .= " SUM(".$db->ifsql("MONTH(b.doc_date)=".$j, "1", "0").") AS month".str_pad($j, 2, "0", STR_PAD_LEFT).",";
}
$sql .= " COUNT(b.rowid) as total";
$sql .= " FROM ".MAIN_DB_PREFIX."accounting_bookkeeping as b";
$sql .= " WHERE b.doc_date >= '".$db->idate($search_date_start)."'";
$sql .= " AND b.doc_date <= '".$db->idate($search_date_end)."'";
$sql .= " AND b.entity IN (".getEntity('bookkeeping', 0).")"; // We don't share object for accountancy
$sql .= " AND date_validated IS NULL";
}
$sql .= " COUNT(b.rowid) as total";
$sql .= " FROM ".MAIN_DB_PREFIX."accounting_bookkeeping as b";
$sql .= " WHERE b.doc_date >= '".$db->idate($search_date_start)."'";
$sql .= " AND b.doc_date <= '".$db->idate($search_date_end)."'";
$sql .= " AND b.entity IN (".getEntity('bookkeeping', 0).")"; // We don't share object for accountancy
$sql .= " AND date_validated IS NULL";
dol_syslog('htdocs/accountancy/closure/index.php', LOG_DEBUG);
$resql = $db->query($sql);

View File

@@ -38,7 +38,7 @@ $codeventil = GETPOST('codeventil', 'int');
$id = GETPOST('id', 'int');
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {

View File

@@ -1,9 +1,9 @@
<?php
/* Copyright (C) 2013 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2014 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2013-2021 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>
* Copyright (C) 2015 Jean-François Ferry <jfefe@aternatik.fr>
/* Copyright (C) 2013 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2014 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2013-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>
* Copyright (C) 2015 Jean-François Ferry <jfefe@aternatik.fr>
*
* 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
@@ -40,7 +40,7 @@ $validatemonth = GETPOST('validatemonth', 'int');
$validateyear = GETPOST('validateyear', 'int');
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -77,7 +77,7 @@ $action = GETPOST('action', 'aZ09');
$chartaccountcode = dol_getIdFromCode($db, $conf->global->CHARTOFACCOUNTS, 'accounting_system', 'rowid', 'pcg_version');
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -174,7 +174,9 @@ if ($action == 'validatehistory') {
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa2 ON " . $alias_product_perentity . ".accountancy_code_sell_intra = aa2.account_number AND aa2.active = 1 AND aa2.fk_pcg_version = '".$db->escape($chartaccountcode)."' AND aa2.entity = ".$conf->entity;
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa3 ON " . $alias_product_perentity . ".accountancy_code_sell_export = aa3.account_number AND aa3.active = 1 AND aa3.fk_pcg_version = '".$db->escape($chartaccountcode)."' AND aa3.entity = ".$conf->entity;
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa4 ON " . $alias_societe_perentity . ".accountancy_code_sell = aa4.account_number AND aa4.active = 1 AND aa4.fk_pcg_version = '".$db->escape($chartaccountcode)."' AND aa4.entity = ".$conf->entity;
$sql .= " WHERE f.fk_statut > 0 AND l.fk_code_ventilation <= 0 AND l.product_type <= 2 AND f.entity = ".((int) $conf->entity);
$sql .= " WHERE f.fk_statut > 0 AND l.fk_code_ventilation <= 0";
$sql .= " AND l.product_type <= 2";
$sql .= " AND f.entity IN (".getEntity('invoice', 0).")"; // We don't share object for accountancy
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
$sql .= " AND f.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
}
@@ -620,7 +622,7 @@ if ($conf->global->MAIN_FEATURES_LEVEL > 0) { // This part of code looks strange
print '</div>';
if (!empty($conf->margin->enabled)) {
if (isModEnabled('margin')) {
print "<br>\n";
print '<div class="div-table-responsive-no-min">';
print '<table class="noborder centpercent">';

View File

@@ -68,7 +68,7 @@ $search_tvaintra = GETPOST('search_tvaintra', 'alpha');
$limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : (empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION) ? $conf->liste_limit : $conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION);
$sortfield = GETPOST('sortfield', 'aZ09comma');
$sortorder = GETPOST('sortorder', 'aZ09comma');
$page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int');
$page = GETPOSTISSET('pageplusonPour le détail de la facture ref…e') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int');
if (empty($page) || $page < 0) {
$page = 0;
}
@@ -85,7 +85,7 @@ if (!$sortorder) {
}
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -137,9 +137,9 @@ if (is_array($changeaccount) && count($changeaccount) > 0 && $user->rights->acco
if (!$error) {
$db->begin();
$sql1 = "UPDATE ".MAIN_DB_PREFIX."facturedet as l";
$sql1 .= " SET l.fk_code_ventilation=".(GETPOST('account_parent', 'int') > 0 ? GETPOST('account_parent', 'int') : '0');
$sql1 .= ' WHERE l.rowid IN ('.$db->sanitize(implode(',', $changeaccount)).')';
$sql1 = "UPDATE ".MAIN_DB_PREFIX."facturedet";
$sql1 .= " SET fk_code_ventilation=".(GETPOST('account_parent', 'int') > 0 ? GETPOST('account_parent', 'int') : '0');
$sql1 .= ' WHERE rowid IN ('.$db->sanitize(implode(',', $changeaccount)).')';
dol_syslog('accountancy/customer/lines.php::changeaccount sql= '.$sql1);
$resql1 = $db->query($sql1);
@@ -496,8 +496,8 @@ if ($result) {
}
print '</td>';
print '<td class="tdoverflowonsmartphone">';
$text = dolGetFirstLineOfText(dol_string_nohtmltag($objp->description));
print '<td class="tdoverflowonsmartphone small">';
$text = dolGetFirstLineOfText(dol_string_nohtmltag($objp->description, 1));
$trunclength = empty($conf->global->ACCOUNTING_LENGTH_DESCRIPTION) ? 32 : $conf->global->ACCOUNTING_LENGTH_DESCRIPTION;
print $form->textwithtooltip(dol_trunc($text, $trunclength), $objp->description);
print '</td>';

View File

@@ -5,6 +5,7 @@
* Copyright (C) 2013-2021 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>
* Copyright (C) 2016 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2021 Gauthier VERDOL <gauthier.verdol@atm-consulting.fr>
*
* 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
@@ -46,6 +47,7 @@ $show_files = GETPOST('show_files', 'int');
$confirm = GETPOST('confirm', 'alpha');
$toselect = GETPOST('toselect', 'array');
$optioncss = GETPOST('optioncss', 'alpha');
$default_account = GETPOST('default_account', 'int');
// Select Box
$mesCasesCochees = GETPOST('toselect', 'array');
@@ -102,7 +104,7 @@ $accountingAccount = new AccountingAccount($db);
$chartaccountcode = dol_getIdFromCode($db, $conf->global->CHARTOFACCOUNTS, 'accounting_system', 'rowid', 'pcg_version');
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -156,8 +158,8 @@ if (empty($reshook)) {
// Mass actions
$objectclass = 'AccountingAccount';
$permissiontoread = $user->rights->accounting->read;
$permissiontodelete = $user->rights->accounting->delete;
$permissiontoread = $user->hasRight('accounting', 'read');
$permissiontodelete = $user->hasRight('accounting', 'delete');
$uploaddir = $conf->accounting->dir_output;
include DOL_DOCUMENT_ROOT.'/core/actions_massactions.inc.php';
}
@@ -434,12 +436,15 @@ if ($result) {
$arrayofmassactions = array(
'ventil'=>img_picto('', 'check', 'class="pictofixedwidth"').$langs->trans("Ventilate")
,'set_default_account'=>img_picto('', 'check', 'class="pictofixedwidth"').$langs->trans("ConfirmPreselectAccount")
//'presend'=>img_picto('', 'email', 'class="pictofixedwidth"').$langs->trans("SendByMail"),
//'builddoc'=>img_picto('', 'pdf', 'class="pictofixedwidth"').$langs->trans("PDFMerge"),
);
//if ($user->rights->mymodule->supprimer) $arrayofmassactions['predelete'] = img_picto('', 'delete', 'class="pictofixedwidth"').$langs->trans("Delete");
//if (in_array($massaction, array('presend','predelete'))) $arrayofmassactions=array();
$massactionbutton = $form->selectMassAction('ventil', $arrayofmassactions, 1);
if ($massaction !== 'set_default_account') {
$massactionbutton = $form->selectMassAction('ventil', $arrayofmassactions, 1);
}
print '<form action="'.$_SERVER["PHP_SELF"].'" method="post">'."\n";
print '<input type="hidden" name="action" value="ventil">';
@@ -454,9 +459,17 @@ if ($result) {
print_barre_liste($langs->trans("InvoiceLines"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num_lines, $nbtotalofrecords, 'title_accountancy', 0, '', '', $limit);
if ($massaction == 'set_default_account') {
$formquestion[]=array('type' => 'other',
'name' => 'set_default_account',
'label' => $langs->trans("AccountancyCode"),
'value' => $formaccounting->select_account('', 'default_account', 1, array(), 0, 0, 'maxwidth200 maxwidthonsmartphone', 'cachewithshowemptyone'));
print $form->formconfirm($_SERVER["PHP_SELF"], $langs->trans("ConfirmPreselectAccount"), $langs->trans("ConfirmPreselectAccountQuestion", count($toselect)), "confirm_set_default_account", $formquestion, 1, 0, 200, 500, 1);
}
print '<span class="opacitymedium">'.$langs->trans("DescVentilTodoCustomer").'</span></br><br>';
if ($msg) {
if (!empty($msg)) {
print $msg.'<br>';
}
@@ -637,7 +650,7 @@ if ($result) {
// Description
print '<td class="tdoverflowonsmartphone small">';
$text = dolGetFirstLineOfText(dol_string_nohtmltag($facture_static_det->desc));
$text = dolGetFirstLineOfText(dol_string_nohtmltag($facture_static_det->desc, 1));
$trunclength = empty($conf->global->ACCOUNTING_LENGTH_DESCRIPTION) ? 32 : $conf->global->ACCOUNTING_LENGTH_DESCRIPTION;
print $form->textwithtooltip(dol_trunc($text, $trunclength), $facture_static_det->desc);
print '</td>';
@@ -712,7 +725,7 @@ if ($result) {
// Suggested accounting account
print '<td>';
print $formaccounting->select_account($suggestedid, 'codeventil'.$facture_static_det->id, 1, array(), 0, 0, 'codeventil maxwidth200 maxwidthonsmartphone', 'cachewithshowemptyone');
print $formaccounting->select_account(($default_account > 0 && $confirm === 'yes' && in_array($objp->rowid."_".$i, $toselect)) ? $default_account : $suggestedid, 'codeventil'.$facture_static_det->id, 1, array(), 0, 0, 'codeventil maxwidth200 maxwidthonsmartphone', 'cachewithshowemptyone');
print '</td>';
// Column with checkbox
@@ -721,6 +734,14 @@ if ($result) {
if (!empty($suggestedid) && $suggestedaccountingaccountfor != '' && $suggestedaccountingaccountfor != 'eecwithoutvatnumber') {
$ischecked = 1;
}
if (!empty($toselect)) {
$ischecked = 0;
if (in_array($objp->rowid."_".$i, $toselect)) {
$ischecked=1;
}
}
print '<input type="checkbox" class="flat checkforselect checkforselect'.$facture_static_det->id.'" name="toselect[]" value="'.$facture_static_det->id."_".$i.'"'.($ischecked ? " checked" : "").'/>';
print '</td>';

View File

@@ -42,7 +42,7 @@ $codeventil = GETPOST('codeventil', 'int');
$id = GETPOST('id', 'int');
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {

View File

@@ -58,7 +58,7 @@ $year_current = $year_start;
$action = GETPOST('action', 'aZ09');
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {

View File

@@ -1,6 +1,6 @@
<?php
/* Copyright (C) 2013-2016 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2017 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2013-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2014-2015 Ari Elbaz (elarifr) <github@accedinfo.com>
* Copyright (C) 2013-2016 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>
@@ -26,8 +26,8 @@
*/
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
require_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php';
require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php';
@@ -49,9 +49,14 @@ $search_desc = GETPOST('search_desc', 'alpha');
$search_amount = GETPOST('search_amount', 'alpha');
$search_account = GETPOST('search_account', 'alpha');
$search_vat = GETPOST('search_vat', 'alpha');
$search_day = GETPOST("search_day", "int");
$search_month = GETPOST("search_month", "int");
$search_year = GETPOST("search_year", "int");
$search_date_startday = GETPOST('search_date_startday', 'int');
$search_date_startmonth = GETPOST('search_date_startmonth', 'int');
$search_date_startyear = GETPOST('search_date_startyear', 'int');
$search_date_endday = GETPOST('search_date_endday', 'int');
$search_date_endmonth = GETPOST('search_date_endmonth', 'int');
$search_date_endyear = GETPOST('search_date_endyear', 'int');
$search_date_start = dol_mktime(0, 0, 0, $search_date_startmonth, $search_date_startday, $search_date_startyear); // Use tzserver
$search_date_end = dol_mktime(23, 59, 59, $search_date_endmonth, $search_date_endday, $search_date_endyear);
// Load variable for pagination
$limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : (empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION) ? $conf->liste_limit : $conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION);
@@ -61,9 +66,9 @@ $page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("pa
if (empty($page) || $page < 0) {
$page = 0;
}
$offset = $limit * $page;
$pageprev = $page - 1;
$pagenext = $page + 1;
$offset = $limit * $page;
if (!$sortfield) {
$sortfield = "erd.date, erd.rowid";
}
@@ -74,7 +79,7 @@ if (!$sortorder) {
}
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -101,9 +106,14 @@ if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x'
$search_amount = '';
$search_account = '';
$search_vat = '';
$search_day = '';
$search_month = '';
$search_year = '';
$search_date_startday = '';
$search_date_startmonth = '';
$search_date_startyear = '';
$search_date_endday = '';
$search_date_endmonth = '';
$search_date_endyear = '';
$search_date_start = '';
$search_date_end = '';
}
if (is_array($changeaccount) && count($changeaccount) > 0 && $user->rights->accounting->bind->write) {
@@ -204,7 +214,12 @@ if (strlen(trim($search_account))) {
if (strlen(trim($search_vat))) {
$sql .= natural_search("erd.tva_tx", price2num($search_vat), 1);
}
$sql .= dolSqlDateFilter('erd.date', $search_day, $search_month, $search_year);
if ($search_date_start) {
$sql .= " AND erd.date >= '".$db->idate($search_date_start)."'";
}
if ($search_date_end) {
$sql .= " AND erd.date <= '".$db->idate($search_date_end)."'";
}
$sql .= " AND er.entity IN (".getEntity('expensereport', 0).")"; // We don't share object for accountancy
$sql .= $db->order($sortfield, $sortorder);
@@ -222,9 +237,8 @@ if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) {
$sql .= $db->plimit($limit + 1, $offset);
dol_syslog('accountancy/expensereport/lines.php::list');
dol_syslog("accountancy/expensereport/lines.php", LOG_DEBUG);
$result = $db->query($sql);
if ($result) {
$num_lines = $db->num_rows($result);
$i = 0;
@@ -254,14 +268,23 @@ if ($result) {
if ($search_vat) {
$param .= "&search_vat=".urlencode($search_vat);
}
if ($search_day) {
$param .= '&search_day='.urlencode($search_day);
if ($search_date_startday) {
$param .= '&search_date_startday='.urlencode($search_date_startday);
}
if ($search_month) {
$param .= '&search_month='.urlencode($search_month);
if ($search_date_startmonth) {
$param .= '&search_date_startmonth='.urlencode($search_date_startmonth);
}
if ($search_year) {
$param .= '&search_year='.urlencode($search_year);
if ($search_date_startyear) {
$param .= '&search_date_startyear='.urlencode($search_date_startyear);
}
if ($search_date_endday) {
$param .= '&search_date_endday='.urlencode($search_date_endday);
}
if ($search_date_endmonth) {
$param .= '&search_date_endmonth='.urlencode($search_date_endmonth);
}
if ($search_date_endyear) {
$param .= '&search_date_endyear='.urlencode($search_date_endyear);
}
print '<form action="'.$_SERVER["PHP_SELF"].'" method="post">'."\n";
@@ -276,12 +299,11 @@ if ($result) {
print '<input type="hidden" name="page" value="'.$page.'">';
print_barre_liste($langs->trans("ExpenseReportLinesDone"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num_lines, $nbtotalofrecords, 'title_accountancy', 0, '', '', $limit);
print '<span class="opacitymedium">'.$langs->trans("DescVentilDoneExpenseReport").'</span><br>';
print '<br><div class="inline-block divButAction">'.$langs->trans("ChangeAccount").'<br>';
print '<br><div class="inline-block divButAction paddingbottom">'.$langs->trans("ChangeAccount").' ';
print $formaccounting->select_account($account_parent, 'account_parent', 2, array(), 0, 0, 'maxwidth300 maxwidthonsmartphone valignmiddle');
print '<input type="submit" class="button valignmiddle" value="'.$langs->trans("ChangeBinding").'" /></div>';
print '<input type="submit" class="button small valignmiddle" value="'.$langs->trans("ChangeBinding").'"/></div>';
$moreforfilter = '';
@@ -296,11 +318,12 @@ if ($result) {
print '<td class="liste_titre"></td>';
}
print '<td class="liste_titre center">';
if (!empty($conf->global->MAIN_LIST_FILTER_ON_DAY)) {
print '<input class="flat valignmiddle maxwidth25" type="text" maxlength="2" name="search_day" value="'.$search_day.'">';
}
print '<input class="flat valignmiddle maxwidth25" type="text" maxlength="2" name="search_month" value="'.$search_month.'">';
$formother->select_year($search_year, 'search_year', 1, 20, 5);
print '<div class="nowrap">';
print $form->selectDate($search_date_start ? $search_date_start : -1, 'search_date_start', 0, 0, 1, '', 1, 0, 0, '', '', '', '', 1, '', $langs->trans('From'));
print '</div>';
print '<div class="nowrap">';
print $form->selectDate($search_date_end ? $search_date_end : -1, 'search_date_end', 0, 0, 1, '', 1, 0, 0, '', '', '', '', 1, '', $langs->trans('to'));
print '</div>';
print '</td>';
print '<td class="liste_titre"><input type="text" class="flat maxwidth50" name="search_label" value="'.dol_escape_htmltag($search_label).'"></td>';
print '<td class="liste_titre"><input type="text" class="flat maxwidth50" name="search_desc" value="'.dol_escape_htmltag($search_desc).'"></td>';
@@ -382,7 +405,7 @@ if ($result) {
// Fees description -- Can be null
print '<td>';
$text = dolGetFirstLineOfText(dol_string_nohtmltag($objp->comments));
$text = dolGetFirstLineOfText(dol_string_nohtmltag($objp->comments, 1));
$trunclength = empty($conf->global->ACCOUNTING_LENGTH_DESCRIPTION) ? 32 : $conf->global->ACCOUNTING_LENGTH_DESCRIPTION;
print $form->textwithtooltip(dol_trunc($text, $trunclength), $objp->comments);
print '</td>';
@@ -394,12 +417,11 @@ if ($result) {
print '<td class="center">'.vatrate($objp->tva_tx.($objp->vat_src_code ? ' ('.$objp->vat_src_code.')' : '')).'</td>';
// Accounting account affected
print '<td>';
print '<td class="center">';
print $accountingaccountstatic->getNomUrl(0, 1, 1, '', 1);
print ' <a class="editfielda reposition marginleftonly marginrightonly" href="./card.php?id='.$objp->rowid.'&backtopage='.urlencode($_SERVER["PHP_SELF"].($param ? '?'.$param : '')).'">';
print img_edit();
print '</a></td>';
print '<td class="center"><input type="checkbox" class="checkforaction" name="changeaccount[]" value="'.$objp->rowid.'"/></td>';
print "</tr>";

View File

@@ -1,6 +1,6 @@
<?php
/* Copyright (C) 2013-2014 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2017 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2013-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2014-2015 Ari Elbaz (elarifr) <github@accedinfo.com>
* Copyright (C) 2013-2014 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>s
@@ -30,9 +30,9 @@ require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php';
require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
// Load translation files required by the page
@@ -59,9 +59,14 @@ $search_desc = GETPOST('search_desc', 'alpha');
$search_amount = GETPOST('search_amount', 'alpha');
$search_account = GETPOST('search_account', 'alpha');
$search_vat = GETPOST('search_vat', 'alpha');
$search_day = GETPOST("search_day", "int");
$search_month = GETPOST("search_month", "int");
$search_year = GETPOST("search_year", "int");
$search_date_startday = GETPOST('search_date_startday', 'int');
$search_date_startmonth = GETPOST('search_date_startmonth', 'int');
$search_date_startyear = GETPOST('search_date_startyear', 'int');
$search_date_endday = GETPOST('search_date_endday', 'int');
$search_date_endmonth = GETPOST('search_date_endmonth', 'int');
$search_date_endyear = GETPOST('search_date_endyear', 'int');
$search_date_start = dol_mktime(0, 0, 0, $search_date_startmonth, $search_date_startday, $search_date_startyear); // Use tzserver
$search_date_end = dol_mktime(23, 59, 59, $search_date_endmonth, $search_date_endday, $search_date_endyear);
// Load variable for pagination
$limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : (empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION) ? $conf->liste_limit : $conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION);
@@ -83,13 +88,16 @@ if (!$sortorder) {
}
}
// Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context
$hookmanager->initHooks(array('accountancyexpensereportlist'));
$formaccounting = new FormAccounting($db);
$accounting = new AccountingAccount($db);
$chartaccountcode = dol_getIdFromCode($db, $conf->global->CHARTOFACCOUNTS, 'accounting_system', 'rowid', 'pcg_version');
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -101,7 +109,7 @@ if (empty($user->rights->accounting->mouvements->lire)) {
/*
* Action
* Actions
*/
if (GETPOST('cancel', 'alpha')) {
@@ -111,30 +119,47 @@ if (!GETPOST('confirmmassaction', 'alpha') && $massaction != 'presend' && $massa
$massaction = '';
}
// Purge search criteria
if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) { // All test are required to be compatible with all browsers
$search_login = '';
$search_expensereport = '';
$search_label = '';
$search_desc = '';
$search_amount = '';
$search_account = '';
$search_vat = '';
$search_day = '';
$search_month = '';
$search_year = '';
$parameters = array();
$reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks
if ($reshook < 0) {
setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
}
if (empty($reshook)) {
// Purge search criteria
if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) { // All test are required to be compatible with all browsers
$search_login = '';
$search_expensereport = '';
$search_label = '';
$search_desc = '';
$search_amount = '';
$search_account = '';
$search_vat = '';
$search_date_startday = '';
$search_date_startmonth = '';
$search_date_startyear = '';
$search_date_endday = '';
$search_date_endmonth = '';
$search_date_endyear = '';
$search_date_start = '';
$search_date_end = '';
$search_country = '';
$search_tvaintra = '';
}
// Mass actions
$objectclass = 'ExpenseReport';
$objectlabel = 'ExpenseReport';
$permissiontoread = $user->hasRight('accounting', 'read');
$permissiontodelete = $user->hasRight('accounting', 'delete');
$uploaddir = $conf->expensereport->dir_output;
include DOL_DOCUMENT_ROOT . '/core/actions_massactions.inc.php';
}
// Mass actions
$objectclass = 'ExpenseReport';
$objectlabel = 'ExpenseReport';
$permissiontoread = $user->rights->expensereport->read;
$permissiontodelete = $user->rights->expensereport->delete;
$uploaddir = $conf->expensereport->dir_output;
include DOL_DOCUMENT_ROOT.'/core/actions_massactions.inc.php';
if ($massaction == 'ventil' && $user->rights->accounting->bind->write) {
$msg = '';
//print '<div><span style="color:red">' . $langs->trans("Processing") . '...</span></div>';
if (!empty($mesCasesCochees)) {
$msg = '<div>'.$langs->trans("SelectedLines").': '.count($mesCasesCochees).'</div>';
@@ -159,7 +184,7 @@ if ($massaction == 'ventil' && $user->rights->accounting->bind->write) {
$accountventilated = new AccountingAccount($db);
$accountventilated->fetch($monCompte, '', 1);
dol_syslog('accountancy/expensereport/list.php', LOG_DEBUG);
dol_syslog('accountancy/expensereport/list.php:: sql='.$sql, LOG_DEBUG);
if ($db->query($sql)) {
$msg .= '<div><span style="color:green">'.$langs->trans("LineOfExpenseReport").' '.$monId.' - '.$langs->trans("VentilatedinAccount").' : '.length_accountg($accountventilated->account_number).'</span></div>';
$ok++;
@@ -201,6 +226,9 @@ $sql .= " erd.rowid, erd.fk_c_type_fees, erd.comments, erd.total_ht as price, er
$sql .= " f.id as type_fees_id, f.code as type_fees_code, f.label as type_fees_label, f.accountancy_code as code_buy,";
$sql .= " u.rowid as userid, u.login, u.lastname, u.firstname, u.email, u.gender, u.employee, u.photo, u.statut,";
$sql .= " aa.rowid as aarowid";
$parameters = array();
$reshook = $hookmanager->executeHooks('printFieldListSelect', $parameters); // Note that $action and $object may have been modified by hook
$sql .= $hookmanager->resPrint;
$sql .= " FROM ".MAIN_DB_PREFIX."expensereport as er";
$sql .= " INNER JOIN ".MAIN_DB_PREFIX."expensereport_det as erd ON er.rowid = erd.fk_expensereport";
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_type_fees as f ON f.id = erd.fk_c_type_fees";
@@ -233,9 +261,19 @@ if (strlen(trim($search_account))) {
if (strlen(trim($search_vat))) {
$sql .= natural_search("erd.tva_tx", $search_vat, 1);
}
$sql .= dolSqlDateFilter('erd.date', $search_day, $search_month, $search_year);
if ($search_date_start) {
$sql .= " AND erd.date >= '".$db->idate($search_date_start)."'";
}
if ($search_date_end) {
$sql .= " AND erd.date <= '".$db->idate($search_date_end)."'";
}
$sql .= " AND er.entity IN (".getEntity('expensereport', 0).")"; // We don't share object for accountancy
// Add where from hooks
$parameters = array();
$reshook = $hookmanager->executeHooks('printFieldListWhere', $parameters); // Note that $action and $object may have been modified by hook
$sql .= $hookmanager->resPrint;
$sql .= $db->order($sortfield, $sortorder);
// Count total nb of records
@@ -251,7 +289,13 @@ if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST)) {
$sql .= $db->plimit($limit + 1, $offset);
dol_syslog('accountancy/expensereport/list.php');
dol_syslog("accountancy/expensereport/list.php", LOG_DEBUG);
// MAX_JOIN_SIZE can be very low (ex: 300000) on some limited configurations (ex: https://www.online.net/fr/hosting/online-perso)
// This big SELECT command may exceed the MAX_JOIN_SIZE limit => Therefore we use SQL_BIG_SELECTS=1 to disable the MAX_JOIN_SIZE security
if ($db->type == 'mysqli') {
$db->query("SET SQL_BIG_SELECTS=1");
}
$result = $db->query($sql);
if ($result) {
$num_lines = $db->num_rows($result);
@@ -272,14 +316,23 @@ if ($result) {
if ($search_lineid) {
$param .= '&search_lineid='.urlencode($search_lineid);
}
if ($search_day) {
$param .= '&search_day='.urlencode($search_day);
if ($search_date_startday) {
$param .= '&search_date_startday='.urlencode($search_date_startday);
}
if ($search_month) {
$param .= '&search_month='.urlencode($search_month);
if ($search_date_startmonth) {
$param .= '&search_date_startmonth='.urlencode($search_date_startmonth);
}
if ($search_year) {
$param .= '&search_year='.urlencode($search_year);
if ($search_date_startyear) {
$param .= '&search_date_startyear='.urlencode($search_date_startyear);
}
if ($search_date_endday) {
$param .= '&search_date_endday='.urlencode($search_date_endday);
}
if ($search_date_endmonth) {
$param .= '&search_date_endmonth='.urlencode($search_date_endmonth);
}
if ($search_date_endyear) {
$param .= '&search_date_endyear='.urlencode($search_date_endyear);
}
if ($search_expensereport) {
$param .= '&search_expensereport='.urlencode($search_expensereport);
@@ -302,7 +355,6 @@ if ($result) {
);
$massactionbutton = $form->selectMassAction('ventil', $arrayofmassactions, 1);
print '<form action="'.$_SERVER["PHP_SELF"].'" method="post">'."\n";
print '<input type="hidden" name="action" value="ventil">';
if ($optioncss != '') {
@@ -318,7 +370,7 @@ if ($result) {
print '<span class="opacitymedium">'.$langs->trans("DescVentilTodoExpenseReport").'</span></br><br>';
if ($msg) {
if (!empty($msg)) {
print $msg.'<br>';
}
@@ -335,20 +387,21 @@ if ($result) {
if (!empty($conf->global->ACCOUNTANCY_USE_EXPENSE_REPORT_VALIDATION_DATE)) {
print '<td class="liste_titre"></td>';
}
print '<td class="liste_titre center nowraponall minwidth100imp">';
if (!empty($conf->global->MAIN_LIST_FILTER_ON_DAY)) {
print '<input class="flat valignmiddle maxwidth25" type="text" maxlength="2" name="search_day" value="'.$search_day.'">';
}
print '<input class="flat valignmiddle maxwidth25" type="text" maxlength="2" name="search_month" value="'.$search_month.'">';
$formother->select_year($search_year, 'search_year', 1, 20, 5);
print '<td class="liste_titre center">';
print '<div class="nowrap">';
print $form->selectDate($search_date_start ? $search_date_start : -1, 'search_date_start', 0, 0, 1, '', 1, 0, 0, '', '', '', '', 1, '', $langs->trans('From'));
print '</div>';
print '<div class="nowrap">';
print $form->selectDate($search_date_end ? $search_date_end : -1, 'search_date_end', 0, 0, 1, '', 1, 0, 0, '', '', '', '', 1, '', $langs->trans('to'));
print '</div>';
print '</td>';
print '<td class="liste_titre"><input type="text" class="flat maxwidth50" name="search_label" value="'.dol_escape_htmltag($search_label).'"></td>';
print '<td class="liste_titre"><input type="text" class="flat maxwidthonsmartphone" name="search_desc" value="'.dol_escape_htmltag($search_desc).'"></td>';
print '<td class="liste_titre right"><input type="text" class="right flat maxwidth50" name="search_amount" value="'.dol_escape_htmltag($search_amount).'"></td>';
print '<td class="liste_titre right"><input type="text" class="right flat maxwidth50" name="search_vat" placeholder="%" size="1" value="'.dol_escape_htmltag($search_vat).'"></td>';
print '<td class="liste_titre right"><input type="text" class="flat maxwidth50 right" name="search_amount" value="'.dol_escape_htmltag($search_amount).'"></td>';
print '<td class="liste_titre right"><input type="text" class="flat maxwidth50 right" name="search_vat" placeholder="%" size="1" value="'.dol_escape_htmltag($search_vat).'"></td>';
print '<td class="liste_titre"></td>';
print '<td class="liste_titre"></td>';
print '<td class="center" class="liste_titre">';
print '<td class="center liste_titre">';
$searchpicto = $form->showFilterButtons();
print $searchpicto;
print '</td>';
@@ -428,7 +481,7 @@ if ($result) {
// Fees description -- Can be null
print '<td>';
$text = dolGetFirstLineOfText(dol_string_nohtmltag($objp->comments));
$text = dolGetFirstLineOfText(dol_string_nohtmltag($objp->comments, 1));
$trunclength = empty($conf->global->ACCOUNTING_LENGTH_DESCRIPTION) ? 32 : $conf->global->ACCOUNTING_LENGTH_DESCRIPTION;
print $form->textwithtooltip(dol_trunc($text, $trunclength), $objp->comments);
print '</td>';
@@ -468,6 +521,9 @@ if ($result) {
} else {
print $db->error();
}
if ($db->type == 'mysqli') {
$db->query("SET SQL_BIG_SELECTS=0"); // Enable MAX_JOIN_SIZE limitation
}
// Add code to auto check the box when we select an account
print '<script type="text/javascript">

View File

@@ -39,14 +39,14 @@ if ($user->socid > 0) {
accessforbidden();
}
/*
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if (empty($user->rights->accounting->mouvements->lire)) {
accessforbidden();
}
*/
if (empty($conf->comptabilite->enabled) && empty($conf->accounting->enabled) && empty($conf->asset->enabled) && empty($conf->intracommreport->enabled)) {
if (!isModEnabled('comptabilite') && !isModEnabled('accounting') && !isModEnabled('asset') && !isModEnabled('intracommreport')) {
accessforbidden();
}
if (empty($user->rights->compta->resultat->lire) && empty($user->rights->accounting->comptarapport->lire) && empty($user->rights->accounting->mouvements->lire) && empty($user->rights->asset->read) && empty($user->rights->intracommreport->read)) {
@@ -86,7 +86,7 @@ if (!empty($conf->global->INVOICE_USE_SITUATION) && $conf->global->INVOICE_USE_S
print '<span class="opacitymedium">'.$langs->trans("SorryThisModuleIsNotCompatibleWithTheExperimentalFeatureOfSituationInvoices")."</span>\n";
print "<br>";
} elseif ($conf->accounting->enabled) {
} elseif (isModEnabled('accounting')) {
$step = 0;
$resultboxes = FormOther::getBoxesArea($user, "27"); // Load $resultboxes (selectboxlist + boxactivated + boxlista + boxlistb)
@@ -117,77 +117,79 @@ if (!empty($conf->global->INVOICE_USE_SITUATION) && $conf->global->INVOICE_USE_S
print '<div class="'.($helpisexpanded ? '' : 'hideobject').'" id="idfaq">'; // hideobject is to start hidden
print "<br>\n";
print '<span class="opacitymedium">'.$langs->trans("AccountancyAreaDescIntro")."</span><br>\n";
print "<br>\n"; print "<br>\n";
if (!empty($user->rights->accounting->chartofaccount)) {
print "<br>\n"; print "<br>\n";
print load_fiche_titre('<span class="fa fa-calendar-check-o"></span> '.$langs->trans("AccountancyAreaDescActionOnce"), '', '')."\n";
print '<hr>';
print "<br>\n";
print load_fiche_titre('<span class="fa fa-calendar-check-o"></span> '.$langs->trans("AccountancyAreaDescActionOnce"), '', '')."\n";
print '<hr>';
print "<br>\n";
// STEPS
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescJournalSetup", $step, '{s}');
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/accountancy/admin/journals_list.php?id=35"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("AccountingJournals").'</strong></a>', $s);
print $s;
print "<br>\n";
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescChartModel", $step, '{s}');
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/accountancy/admin/accountmodel.php"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("Pcg_version").'</strong></a>', $s);
print $s;
print "<br>\n";
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescChart", $step, '{s}');
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/accountancy/admin/account.php"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("Chartofaccounts").'</strong></a>', $s);
print $s;
print "<br>\n";
print "<br>\n";
print $langs->trans("AccountancyAreaDescActionOnceBis");
print "<br>\n";
print "<br>\n";
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescDefault", $step, '{s}');
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/accountancy/admin/defaultaccounts.php"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("MenuDefaultAccounts").'</strong></a>', $s);
print $s;
print "<br>\n";
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescBank", $step, '{s}')."\n";
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/compta/bank/list.php"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("MenuBankAccounts").'</strong></a>', $s);
print $s;
print "<br>\n";
$step++;
$textlink = '<a href="'.DOL_URL_ROOT.'/admin/dict.php?id=10&from=accountancy"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("MenuVatAccounts").'</strong></a>';
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescVat", $step, '{s}');
$s = str_replace('{s}', $textlink, $s);
print $s;
print "<br>\n";
if (!empty($conf->tax->enabled)) {
$textlink = '<a href="'.DOL_URL_ROOT.'/admin/dict.php?id=7&from=accountancy"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("MenuTaxAccounts").'</strong></a>';
// STEPS
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescContrib", $step, '{s}');
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescJournalSetup", $step, '{s}');
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/accountancy/admin/journals_list.php?id=35"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("AccountingJournals").'</strong></a>', $s);
print $s;
print "<br>\n";
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescChartModel", $step, '{s}');
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/accountancy/admin/accountmodel.php"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("Pcg_version").'</strong></a>', $s);
print $s;
print "<br>\n";
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescChart", $step, '{s}');
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/accountancy/admin/account.php"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("Chartofaccounts").'</strong></a>', $s);
print $s;
print "<br>\n";
print "<br>\n";
print $langs->trans("AccountancyAreaDescActionOnceBis");
print "<br>\n";
print "<br>\n";
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescDefault", $step, '{s}');
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/accountancy/admin/defaultaccounts.php"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("MenuDefaultAccounts").'</strong></a>', $s);
print $s;
print "<br>\n";
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescBank", $step, '{s}')."\n";
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/compta/bank/list.php"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("MenuBankAccounts").'</strong></a>', $s);
print $s;
print "<br>\n";
$step++;
$textlink = '<a href="'.DOL_URL_ROOT.'/admin/dict.php?id=10&from=accountancy"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("MenuVatAccounts").'</strong></a>';
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescVat", $step, '{s}');
$s = str_replace('{s}', $textlink, $s);
print $s;
print "<br>\n";
}
if (!empty($conf->expensereport->enabled)) {
if (isModEnabled('tax')) {
$textlink = '<a href="'.DOL_URL_ROOT.'/admin/dict.php?id=7&from=accountancy"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("MenuTaxAccounts").'</strong></a>';
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescContrib", $step, '{s}');
$s = str_replace('{s}', $textlink, $s);
print $s;
print "<br>\n";
}
if (isModEnabled('expensereport')) { // TODO Move this in the default account page because this is only one accounting account per purpose, not several.
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescExpenseReport", $step, '{s}');
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/admin/dict.php?id=17&from=accountancy"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("MenuExpenseReportAccounts").'</strong></a>', $s);
print $s;
print "<br>\n";
}
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescExpenseReport", $step, '{s}');
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/admin/dict.php?id=17&from=accountancy"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("MenuExpenseReportAccounts").'</strong></a>', $s);
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescProd", $step, '{s}');
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/accountancy/admin/productaccount.php"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("ProductsBinding").'</strong></a>', $s);
print $s;
print "<br>\n";
print '<br>';
}
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescProd", $step, '{s}');
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/accountancy/admin/productaccount.php"><strong>'.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("ProductsBinding").'</strong></a>', $s);
print $s;
print "<br>\n";
print '<br>';
// Step A - E
print "<br>\n";
@@ -210,7 +212,7 @@ if (!empty($conf->global->INVOICE_USE_SITUATION) && $conf->global->INVOICE_USE_S
print $s;
print "<br>\n";
if (!empty($conf->expensereport->enabled) || !empty($conf->deplacement->enabled)) {
if (isModEnabled('expensereport') || isModEnabled('deplacement')) {
$step++;
$s = img_picto('', 'puce').' '.$langs->trans("AccountancyAreaDescBind", chr(64 + $step), $langs->transnoentitiesnoconv("ExpenseReports"), '{s}')."\n";
$s = str_replace('{s}', '<a href="'.DOL_URL_ROOT.'/accountancy/expensereport/index.php"><strong>'.$langs->transnoentitiesnoconv("TransferInAccounting").' - '.$langs->transnoentitiesnoconv("ExpenseReportsVentilation").'</strong></a>', $s);

View File

@@ -83,7 +83,7 @@ $now = dol_now();
$action = GETPOST('action', 'aZ09');
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -117,7 +117,7 @@ if (!GETPOSTISSET('date_startmonth') && (empty($date_start) || empty($date_end))
$date_end = dol_get_last_day($pastmonthyear, $pastmonth, false);
}
$sql = "SELECT b.rowid, b.dateo as do, b.datev as dv, b.amount, b.label, b.rappro, b.num_releve, b.num_chq, b.fk_type, b.fk_account,";
$sql = "SELECT b.rowid, b.dateo as do, b.datev as dv, b.amount, b.amount_main_currency, b.label, b.rappro, b.num_releve, b.num_chq, b.fk_type, b.fk_account,";
$sql .= " ba.courant, ba.ref as baref, ba.account_number, ba.fk_accountancy_journal,";
$sql .= " soc.rowid as socid, soc.nom as name, soc.email as email, bu1.type as typeop_company,";
if (!empty($conf->global->MAIN_COMPANY_PERENTITY_SHARED)) {
@@ -142,7 +142,7 @@ if (!empty($conf->global->MAIN_COMPANY_PERENTITY_SHARED)) {
}
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."user as u on bu2.url_id=u.rowid";
$sql .= " WHERE ba.fk_accountancy_journal=".((int) $id_journal);
$sql .= ' AND b.amount != 0 AND ba.entity IN ('.getEntity('bank_account', 0).')'; // We don't share object for accountancy
$sql .= ' AND b.amount <> 0 AND ba.entity IN ('.getEntity('bank_account', 0).')'; // We don't share object for accountancy
if ($date_start && $date_end) {
$sql .= " AND b.dateo >= '".$db->idate($date_start)."' AND b.dateo <= '".$db->idate($date_end)."'";
}
@@ -282,6 +282,7 @@ if ($result) {
$tabpay[$obj->rowid]["fk_bank"] = $obj->rowid;
$tabpay[$obj->rowid]["bank_account_ref"] = $obj->baref;
$tabpay[$obj->rowid]["fk_bank_account"] = $obj->fk_account;
$reg = array();
if (preg_match('/^\((.*)\)$/i', $obj->label, $reg)) {
$tabpay[$obj->rowid]["lib"] = $langs->trans($reg[1]);
} else {
@@ -296,10 +297,24 @@ if ($result) {
$tabtype[$obj->rowid] = 'unknown';
$tabmoreinfo[$obj->rowid] = array();
$amounttouse = $obj->amount;
if (!empty($obj->amount_main_currency)) {
// If $obj->amount_main_currency is set, it means that $obj->amount is not in same currency, we must use $obj->amount_main_currency
$amounttouse = $obj->amount_main_currency;
}
// get_url may return -1 which is not traversable
if (is_array($links) && count($links) > 0) {
$is_sc = false;
foreach ($links as $v) {
if ($v['type'] == 'sc') {
$is_sc = true;
break;
}
}
// Now loop on each link of record in bank (code similar to bankentries_list.php)
foreach ($links as $key => $val) {
if ($links[$key]['type'] == 'user' && !$is_sc) continue;
if (in_array($links[$key]['type'], array('sc', 'payment_sc', 'payment', 'payment_supplier', 'payment_vat', 'payment_expensereport', 'banktransfert', 'payment_donation', 'member', 'payment_loan', 'payment_salary', 'payment_various'))) {
// So we excluded 'company' and 'user' here. We want only payment lines
@@ -334,7 +349,7 @@ if ($result) {
$societestatic->email = $tabcompany[$obj->rowid]['email'];
$tabpay[$obj->rowid]["soclib"] = $societestatic->getNomUrl(1, '', 30);
if ($compta_soc) {
$tabtp[$obj->rowid][$compta_soc] += $obj->amount;
$tabtp[$obj->rowid][$compta_soc] += $amounttouse;
}
} elseif ($links[$key]['type'] == 'user') {
$userstatic->id = $links[$key]['url_id'];
@@ -350,7 +365,7 @@ if ($result) {
$tabpay[$obj->rowid]["soclib"] = '???'; // Should not happen, but happens with old data when id of user was not saved on expense report payment.
}
if ($compta_user) {
$tabtp[$obj->rowid][$compta_user] += $obj->amount;
$tabtp[$obj->rowid][$compta_user] += $amounttouse;
}
} elseif ($links[$key]['type'] == 'sc') {
$chargestatic->id = $links[$key]['url_id'];
@@ -383,7 +398,7 @@ if ($result) {
$resultmid = $db->query($sqlmid);
if ($resultmid) {
$objmid = $db->fetch_object($resultmid);
$tabtp[$obj->rowid][$objmid->accountancy_code] += $obj->amount;
$tabtp[$obj->rowid][$objmid->accountancy_code] += $amounttouse;
}
} elseif ($links[$key]['type'] == 'payment_donation') {
$paymentdonstatic->id = $links[$key]['url_id'];
@@ -391,7 +406,7 @@ if ($result) {
$paymentdonstatic->fk_donation = $links[$key]['url_id'];
$tabpay[$obj->rowid]["lib"] .= ' '.$paymentdonstatic->getNomUrl(2);
$tabpay[$obj->rowid]["paymentdonationid"] = $paymentdonstatic->id;
$tabtp[$obj->rowid][$account_pay_donation] += $obj->amount;
$tabtp[$obj->rowid][$account_pay_donation] += $amounttouse;
} elseif ($links[$key]['type'] == 'member') {
$paymentsubscriptionstatic->id = $links[$key]['url_id'];
$paymentsubscriptionstatic->ref = $links[$key]['url_id'];
@@ -399,14 +414,14 @@ if ($result) {
$tabpay[$obj->rowid]["lib"] .= ' '.$paymentsubscriptionstatic->getNomUrl(2);
$tabpay[$obj->rowid]["paymentsubscriptionid"] = $paymentsubscriptionstatic->id;
$paymentsubscriptionstatic->fetch($paymentsubscriptionstatic->id);
$tabtp[$obj->rowid][$account_pay_subscription] += $obj->amount;
$tabtp[$obj->rowid][$account_pay_subscription] += $amounttouse;
} elseif ($links[$key]['type'] == 'payment_vat') { // Payment VAT
$paymentvatstatic->id = $links[$key]['url_id'];
$paymentvatstatic->ref = $links[$key]['url_id'];
$paymentvatstatic->label = $links[$key]['label'];
$tabpay[$obj->rowid]["lib"] .= ' '.$paymentvatstatic->getNomUrl(2);
$tabpay[$obj->rowid]["paymentvatid"] = $paymentvatstatic->id;
$tabtp[$obj->rowid][$account_pay_vat] += $obj->amount;
$tabtp[$obj->rowid][$account_pay_vat] += $amounttouse;
} elseif ($links[$key]['type'] == 'payment_salary') {
$paymentsalstatic->id = $links[$key]['url_id'];
$paymentsalstatic->ref = $links[$key]['url_id'];
@@ -438,7 +453,7 @@ if ($result) {
if (empty($obj->typeop_user)) { // Add test to avoid to add amount twice if a link already exists also on user.
$compta_user = $userstatic->accountancy_code;
if ($compta_user) {
$tabtp[$obj->rowid][$compta_user] += $obj->amount;
$tabtp[$obj->rowid][$compta_user] += $amounttouse;
$tabuser[$obj->rowid] = array(
'id' => $userstatic->id,
'name' => dolGetFirstLastname($userstatic->firstname, $userstatic->lastname),
@@ -465,14 +480,14 @@ if ($result) {
$account_various = (!empty($paymentvariousstatic->accountancy_code) ? $paymentvariousstatic->accountancy_code : 'NotDefined'); // NotDefined is a reserved word
$account_subledger = (!empty($paymentvariousstatic->subledger_account) ? $paymentvariousstatic->subledger_account : ''); // NotDefined is a reserved word
$tabpay[$obj->rowid]["account_various"] = $account_various;
$tabtp[$obj->rowid][$account_subledger] += $obj->amount;
$tabtp[$obj->rowid][$account_subledger] += $amounttouse;
} elseif ($links[$key]['type'] == 'payment_loan') {
$paymentloanstatic->id = $links[$key]['url_id'];
$paymentloanstatic->ref = $links[$key]['url_id'];
$paymentloanstatic->fk_loan = $links[$key]['url_id'];
$tabpay[$obj->rowid]["lib"] .= ' '.$paymentloanstatic->getNomUrl(2);
$tabpay[$obj->rowid]["paymentloanid"] = $paymentloanstatic->id;
//$tabtp[$obj->rowid][$account_pay_loan] += $obj->amount;
//$tabtp[$obj->rowid][$account_pay_loan] += $amounttouse;
$sqlmid = 'SELECT pl.amount_capital, pl.amount_insurance, pl.amount_interest, l.accountancy_account_capital, l.accountancy_account_insurance, l.accountancy_account_interest';
$sqlmid .= ' FROM '.MAIN_DB_PREFIX.'payment_loan as pl, '.MAIN_DB_PREFIX.'loan as l';
$sqlmid .= ' WHERE l.rowid = pl.fk_loan AND pl.fk_bank = '.((int) $obj->rowid);
@@ -488,14 +503,14 @@ if ($result) {
} elseif ($links[$key]['type'] == 'banktransfert') {
$accountLinestatic->fetch($links[$key]['url_id']);
$tabpay[$obj->rowid]["lib"] .= ' '.$langs->trans("BankTransfer").'- '.$accountLinestatic ->getNomUrl(1);
$tabtp[$obj->rowid][$account_transfer] += $obj->amount;
$tabtp[$obj->rowid][$account_transfer] += $amounttouse;
$bankaccountstatic->fetch($tabpay[$obj->rowid]['fk_bank_account']);
$tabpay[$obj->rowid]["soclib"] = $bankaccountstatic->getNomUrl(2);
}
}
}
$tabbq[$obj->rowid][$compta_bank] += $obj->amount;
$tabbq[$obj->rowid][$compta_bank] += $amounttouse;
// If no links were found to know the amount on thirdparty, we try to guess it.
// This may happens on bank entries without the links lines to 'company'.
@@ -542,7 +557,7 @@ if ($result) {
}
}*/
// if($obj->socid)$tabtp[$obj->rowid][$compta_soc] += $obj->amount;
// if($obj->socid)$tabtp[$obj->rowid][$compta_soc] += $amounttouse;
$i++;
}
@@ -551,11 +566,11 @@ if ($result) {
}
/*var_dump($tabpay);
var_dump($tabcompany);
var_dump($tabbq);
var_dump($tabtp);
var_dump($tabtype);*/
//var_dump($tabpay);
//var_dump($tabcompany);
//var_dump($tabbq);
//var_dump($tabtp);
//var_dump($tabtype);
// Write bookkeeping
if (!$error && $action == 'writebookkeeping') {
@@ -587,9 +602,9 @@ if (!$error && $action == 'writebookkeeping') {
$db->begin();
// Introduce a protection. Total of tabtp must be total of tabbq
/*var_dump($tabpay);
var_dump($tabtp);
var_dump($tabbq);exit;*/
//var_dump($tabpay);
//var_dump($tabtp);
//var_dump($tabbq);exit;
// Bank
if (!$errorforline && is_array($tabbq[$key])) {
@@ -658,6 +673,8 @@ if (!$error && $action == 'writebookkeeping') {
// Line into thirdparty account
foreach ($tabtp[$key] as $k => $mt) {
if ($mt) {
$lettering = false;
$reflabel = '';
if (!empty($val['lib'])) {
$reflabel .= dol_string_nohtmltag($val['lib']).($val['soclib'] ? " - " : "");
@@ -686,11 +703,13 @@ if (!$error && $action == 'writebookkeeping') {
$bookkeeping->date_creation = $now;
if ($tabtype[$key] == 'payment') { // If payment is payment of customer invoice, we get ref of invoice
$lettering = true;
$bookkeeping->subledger_account = $k; // For payment, the subledger account is stored as $key of $tabtp
$bookkeeping->subledger_label = $tabcompany[$key]['name']; // $tabcompany is defined only if we are sure there is 1 thirdparty for the bank transaction
$bookkeeping->numero_compte = $conf->global->ACCOUNTING_ACCOUNT_CUSTOMER;
$bookkeeping->label_compte = $accountingaccountcustomer->label;
} elseif ($tabtype[$key] == 'payment_supplier') { // If payment is payment of supplier invoice, we get ref of invoice
$lettering = true;
$bookkeeping->subledger_account = $k; // For payment, the subledger account is stored as $key of $tabtp
$bookkeeping->subledger_label = $tabcompany[$key]['name']; // $tabcompany is defined only if we are sure there is 1 thirdparty for the bank transaction
$bookkeeping->numero_compte = $conf->global->ACCOUNTING_ACCOUNT_SUPPLIER;
@@ -773,6 +792,12 @@ if (!$error && $action == 'writebookkeeping') {
$errorforline++;
setEventMessages($bookkeeping->error, $bookkeeping->errors, 'errors');
}
} else {
if ($lettering && getDolGlobalInt('ACCOUNTING_ENABLE_LETTERING')) {
require_once DOL_DOCUMENT_ROOT . '/accountancy/class/lettering.class.php';
$lettering_static = new Lettering($db);
$nb_lettering = $lettering_static->bookkeepingLetteringAll(array($bookkeeping->id));
}
}
}
}
@@ -1250,9 +1275,9 @@ if (empty($action) || $action == 'view') {
$accounttoshowsubledger = length_accounta($k);
if ($accounttoshow != $accounttoshowsubledger) {
if (empty($accounttoshowsubledger) || $accounttoshowsubledger == 'NotDefined') {
/*var_dump($tabpay[$key]);
var_dump($tabtype[$key]);
var_dump($tabbq[$key]);*/
//var_dump($tabpay[$key]);
//var_dump($tabtype[$key]);
//var_dump($tabbq[$key]);
//print '<span class="error">'.$langs->trans("ThirdpartyAccountNotDefined").'</span>';
if (!empty($tabcompany[$key]['code_compta'])) {
if (in_array($tabtype[$key], array('payment_various', 'payment_salary'))) {

View File

@@ -58,7 +58,7 @@ if ($in_bookkeeping == '') {
$now = dol_now();
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -328,7 +328,7 @@ if ($action == 'writebookkeeping') {
foreach ($arrayofvat[$key] as $k => $mt) {
if ($mt) {
$accountingaccount->fetch($k, null, true); // TODO Use a cache for label
$accountingaccount->fetch(null, $k, true); // TODO Use a cache for label
$account_label = $accountingaccount->label;
// get compte id and label

View File

@@ -61,7 +61,7 @@ $hookmanager->initHooks(array('purchasesjournal'));
$parameters = array();
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -377,6 +377,12 @@ if ($action == 'writebookkeeping') {
$errorforinvoice[$key] = 'other';
setEventMessages($bookkeeping->error, $bookkeeping->errors, 'errors');
}
} else {
if (getDolGlobalInt('ACCOUNTING_ENABLE_LETTERING')) {
require_once DOL_DOCUMENT_ROOT . '/accountancy/class/lettering.class.php';
$lettering_static = new Lettering($db);
$nb_lettering = $lettering_static->bookkeepingLettering(array($bookkeeping->id), 'supplier_invoice');
}
}
}
}
@@ -451,7 +457,7 @@ if ($action == 'writebookkeeping') {
foreach ($arrayofvat[$key] as $k => $mt) {
if ($mt) {
$accountingaccount->fetch($k, null, true); // TODO Use a cache for label
$accountingaccount->fetch(null, $k, true); // TODO Use a cache for label
$label_account = $accountingaccount->label;
$bookkeeping = new BookKeeping($db);

View File

@@ -63,7 +63,7 @@ $hookmanager->initHooks(array('sellsjournal'));
$parameters = array();
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -390,6 +390,12 @@ if ($action == 'writebookkeeping') {
$errorforinvoice[$key] = 'other';
setEventMessages($bookkeeping->error, $bookkeeping->errors, 'errors');
}
} else {
if (getDolGlobalInt('ACCOUNTING_ENABLE_LETTERING')) {
require_once DOL_DOCUMENT_ROOT . '/accountancy/class/lettering.class.php';
$lettering_static = new Lettering($db);
$nb_lettering = $lettering_static->bookkeepingLettering(array($bookkeeping->id), 'customer_invoice');
}
}
}
}
@@ -412,8 +418,18 @@ if ($action == 'writebookkeeping') {
$bookkeeping->fk_docdet = 0; // Useless, can be several lines that are source of this record to add
$bookkeeping->thirdparty_code = $companystatic->code_client;
$bookkeeping->subledger_account = '';
$bookkeeping->subledger_label = '';
if (!empty($conf->global->ACCOUNTING_ACCOUNT_CUSTOMER_USE_AUXILIARY_ON_DEPOSIT)) {
if ($k == getDolGlobalString('ACCOUNTING_ACCOUNT_CUSTOMER_DEPOSIT')) {
$bookkeeping->subledger_account = $tabcompany[$key]['code_compta'];
$bookkeeping->subledger_label = $tabcompany[$key]['name'];
} else {
$bookkeeping->subledger_account = '';
$bookkeeping->subledger_label = '';
}
} else {
$bookkeeping->subledger_account = '';
$bookkeeping->subledger_label = '';
}
$bookkeeping->numero_compte = $k;
$bookkeeping->label_compte = $label_account;
@@ -463,7 +479,7 @@ if ($action == 'writebookkeeping') {
foreach ($arrayofvat[$key] as $k => $mt) {
if ($mt) {
$accountingaccount->fetch($k, null, true); // TODO Use a cache for label
$accountingaccount->fetch(null, $k, true); // TODO Use a cache for label
$label_account = $accountingaccount->label;
$bookkeeping = new BookKeeping($db);
@@ -886,6 +902,13 @@ if (empty($action) || $action == 'view') {
print "</td>";
// Subledger account
print "<td>";
if (!empty($conf->global->ACCOUNTING_ACCOUNT_CUSTOMER_USE_AUXILIARY_ON_DEPOSIT)) {
if ($k == getDolGlobalString('ACCOUNTING_ACCOUNT_CUSTOMER_DEPOSIT')) {
print length_accounta($tabcompany[$key]['code_compta']);
}
} elseif (($accountoshow == "") || $accountoshow == 'NotDefined') {
print '<span class="error">' . $langs->trans("ThirdpartyAccountNotDefined") . '</span>';
}
print '</td>';
$companystatic->id = $tabcompany[$key]['id'];
$companystatic->name = $tabcompany[$key]['name'];

View File

@@ -0,0 +1,314 @@
<?php
/* Copyright (C) 2021-2022 Open-DSI <support@open-dsi.fr>
*
* 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
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
/**
* \file htdocs/accountancy/journal/variousjournal.php
* \ingroup Accountancy (Double entries)
* \brief Page of a journal
*/
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingjournal.class.php';
// Load translation files required by the page
$langs->loadLangs(array("banks", "accountancy", "compta", "other", "errors"));
$id_journal = GETPOST('id_journal', 'int');
$action = GETPOST('action', 'aZ09');
$date_startmonth = GETPOST('date_startmonth');
$date_startday = GETPOST('date_startday');
$date_startyear = GETPOST('date_startyear');
$date_endmonth = GETPOST('date_endmonth');
$date_endday = GETPOST('date_endday');
$date_endyear = GETPOST('date_endyear');
$in_bookkeeping = GETPOST('in_bookkeeping');
if ($in_bookkeeping == '') {
$in_bookkeeping = 'notyet';
}
// Get information of journal
$object = new AccountingJournal($db);
$result = $object->fetch($id_journal);
if ($result > 0) {
$id_journal = $object->id;
} elseif ($result < 0) {
dol_print_error('', $object->error, $object->errors);
} elseif ($result == 0) {
accessforbidden($langs->trans('ErrorRecordNotFound'));
}
$hookmanager->initHooks(array('globaljournal', $object->nature.'journal'));
$parameters = array();
$date_start = dol_mktime(0, 0, 0, $date_startmonth, $date_startday, $date_startyear);
$date_end = dol_mktime(23, 59, 59, $date_endmonth, $date_endday, $date_endyear);
if (empty($date_startmonth) || empty($date_endmonth)) {
// Period by default on transfer
$dates = getDefaultDatesForTransfer();
$date_start = $dates['date_start'];
$date_end = $dates['date_end'];
$pastmonthyear = $dates['pastmonthyear'];
$pastmonth = $dates['pastmonth'];
}
if (!GETPOSTISSET('date_startmonth') && (empty($date_start) || empty($date_end))) { // We define date_start and date_end, only if we did not submit the form
$date_start = dol_get_first_day($pastmonthyear, $pastmonth, false);
$date_end = dol_get_last_day($pastmonthyear, $pastmonth, false);
}
$data_type = 'view';
if ($action == 'writebookkeeping') $data_type = 'bookkeeping';
if ($action == 'exportcsv') $data_type = 'csv';
$journal_data = $object->getData($user, $data_type, $date_start, $date_end, $in_bookkeeping);
if (!is_array($journal_data)) {
setEventMessages($object->error, $object->errors, 'errors');
}
// Security check
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
accessforbidden();
}
if (empty($user->rights->accounting->mouvements->lire)) {
accessforbidden();
}
/*
* Actions
*/
$reshook = $hookmanager->executeHooks('doActions', $parameters, $user, $action); // Note that $action and $object may have been modified by some hooks
$reload = false;
// Bookkeeping Write
if ($action == 'writebookkeeping') {
$error = 0;
$result = $object->writeIntoBookkeeping($user, $journal_data);
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
$error = abs($result);
}
$nb_elements = count($journal_data);
if (empty($error) && $nb_elements > 0) {
setEventMessages($langs->trans("GeneralLedgerIsWritten"), null, 'mesgs');
} elseif ($nb_elements == $error) {
setEventMessages($langs->trans("NoNewRecordSaved"), null, 'warnings');
} else {
setEventMessages($langs->trans("GeneralLedgerSomeRecordWasNotRecorded"), null, 'warnings');
}
$reload = true;
} elseif ($action == 'exportcsv') {
// Export CSV
$result = $object->exportCsv($journal_data, $date_end);
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
$reload = true;
} else {
$filename = 'journal';
$type_export = 'journal';
require_once DOL_DOCUMENT_ROOT . '/core/lib/date.lib.php';
include DOL_DOCUMENT_ROOT.'/accountancy/tpl/export_journal.tpl.php';
print $result;
$db->close();
exit();
}
}
// Must reload data, so we make a redirect
if ($reload) {
$param = 'id_journal=' . $id_journal;
$param .= '&date_startday=' . $date_startday;
$param .= '&date_startmonth=' . $date_startmonth;
$param .= '&date_startyear=' . $date_startyear;
$param .= '&date_endday=' . $date_endday;
$param .= '&date_endmonth=' . $date_endmonth;
$param .= '&date_endyear=' . $date_endyear;
$param .= '&in_bookkeeping=' . $in_bookkeeping;
header("Location: " . $_SERVER['PHP_SELF'] . ($param ? '?' . $param : ''));
exit;
}
/*
* View
*/
$form = new Form($db);
if ($object->nature == 2) {
$title = $langs->trans("SellsJournal");
$some_mandatory_steps_of_setup_were_not_done = $conf->global->ACCOUNTING_ACCOUNT_CUSTOMER == "" || $conf->global->ACCOUNTING_ACCOUNT_CUSTOMER == '-1';
$account_accounting_not_defined = $conf->global->ACCOUNTING_ACCOUNT_CUSTOMER == "" || $conf->global->ACCOUNTING_ACCOUNT_CUSTOMER == '-1';
} elseif ($object->nature == 3) {
$title = $langs->trans("PurchasesJournal");
$some_mandatory_steps_of_setup_were_not_done = $conf->global->ACCOUNTING_ACCOUNT_SUPPLIER == "" || $conf->global->ACCOUNTING_ACCOUNT_SUPPLIER == '-1';
$account_accounting_not_defined = $conf->global->ACCOUNTING_ACCOUNT_SUPPLIER == "" || $conf->global->ACCOUNTING_ACCOUNT_SUPPLIER == '-1';
} elseif ($object->nature == 4) {
$title = $langs->trans("FinanceJournal");
$some_mandatory_steps_of_setup_were_not_done = $conf->global->ACCOUNTING_ACCOUNT_CUSTOMER == "" || $conf->global->ACCOUNTING_ACCOUNT_CUSTOMER == '-1'
|| $conf->global->ACCOUNTING_ACCOUNT_SUPPLIER == "" || $conf->global->ACCOUNTING_ACCOUNT_SUPPLIER == '-1'
|| empty($conf->global->SALARIES_ACCOUNTING_ACCOUNT_PAYMENT) || $conf->global->SALARIES_ACCOUNTING_ACCOUNT_PAYMENT == '-1';
$account_accounting_not_defined = $conf->global->ACCOUNTING_ACCOUNT_CUSTOMER == "" || $conf->global->ACCOUNTING_ACCOUNT_CUSTOMER == '-1'
|| $conf->global->ACCOUNTING_ACCOUNT_SUPPLIER == "" || $conf->global->ACCOUNTING_ACCOUNT_SUPPLIER == '-1';
} elseif ($object->nature == 5) {
$title = $langs->trans("ExpenseReportsJournal");
$some_mandatory_steps_of_setup_were_not_done = empty($conf->global->SALARIES_ACCOUNTING_ACCOUNT_PAYMENT) || $conf->global->SALARIES_ACCOUNTING_ACCOUNT_PAYMENT == '-1';
$account_accounting_not_defined = empty($conf->global->SALARIES_ACCOUNTING_ACCOUNT_PAYMENT) || $conf->global->SALARIES_ACCOUNTING_ACCOUNT_PAYMENT == '-1';
} else {
$title = $object->getLibType();
$some_mandatory_steps_of_setup_were_not_done = false;
$account_accounting_not_defined = false;
}
$nom = $title . ' | ' . $object->getNomUrl(0, 1, 1, '', 1);
$nomlink = '';
$periodlink = '';
$exportlink = '';
$builddate = dol_now();
$description = $langs->trans("DescJournalOnlyBindedVisible") . '<br>';
if ($object->nature == 2 || $object->nature == 3) {
if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) {
$description .= $langs->trans("DepositsAreNotIncluded");
} else {
$description .= $langs->trans("DepositsAreIncluded");
}
}
$listofchoices = array('notyet' => $langs->trans("NotYetInGeneralLedger"), 'already' => $langs->trans("AlreadyInGeneralLedger"));
$period = $form->selectDate($date_start ? $date_start : -1, 'date_start', 0, 0, 0, '', 1, 0) . ' - ' . $form->selectDate($date_end ? $date_end : -1, 'date_end', 0, 0, 0, '', 1, 0);
$period .= ' - ' . $langs->trans("JournalizationInLedgerStatus") . ' ' . $form->selectarray('in_bookkeeping', $listofchoices, $in_bookkeeping, 1);
$varlink = 'id_journal=' . $id_journal;
llxHeader('', $title);
journalHead($nom, $nomlink, $period, $periodlink, $description, $builddate, $exportlink, array('action' => ''), '', $varlink);
if ($object->nature == 4) { // Bank journal
// Test that setup is complete (we are in accounting, so test on entity is always on $conf->entity only, no sharing allowed)
$sql = "SELECT COUNT(rowid) as nb";
$sql .= " FROM " . MAIN_DB_PREFIX . "bank_account";
$sql .= " WHERE entity = " . (int) $conf->entity;
$sql .= " AND fk_accountancy_journal IS NULL";
$sql .= " AND clos=0";
$resql = $db->query($sql);
if ($resql) {
$obj = $db->fetch_object($resql);
if ($obj->nb > 0) {
print '<br>' . img_warning() . ' ' . $langs->trans("TheJournalCodeIsNotDefinedOnSomeBankAccount");
print ' : ' . $langs->trans("AccountancyAreaDescBank", 9, '<strong>' . $langs->transnoentitiesnoconv("MenuAccountancy") . '-' . $langs->transnoentitiesnoconv("Setup") . "-" . $langs->transnoentitiesnoconv("BankAccounts") . '</strong>');
}
} else dol_print_error($db);
}
// Button to write into Ledger
if ($some_mandatory_steps_of_setup_were_not_done) {
print '<br><div class="warning">' . img_warning() . ' ' . $langs->trans("SomeMandatoryStepsOfSetupWereNotDone");
print ' : ' . $langs->trans("AccountancyAreaDescMisc", 4, '<strong>' . $langs->transnoentitiesnoconv("MenuAccountancy") . '-' . $langs->transnoentitiesnoconv("Setup") . "-" . $langs->transnoentitiesnoconv("MenuDefaultAccounts") . '</strong>');
print '</div>';
}
print '<div class="tabsAction tabsActionNoBottom centerimp">';
if (!empty($conf->global->ACCOUNTING_ENABLE_EXPORT_DRAFT_JOURNAL) && $in_bookkeeping == 'notyet') {
print '<input type="button" class="butAction" name="exportcsv" value="' . $langs->trans("ExportDraftJournal") . '" onclick="launch_export();" />';
}
if ($account_accounting_not_defined) {
print '<input type="button" class="butActionRefused classfortooltip" title="' . dol_escape_htmltag($langs->trans("SomeMandatoryStepsOfSetupWereNotDone")) . '" value="' . $langs->trans("WriteBookKeeping") . '" />';
} else {
if ($in_bookkeeping == 'notyet') {
print '<input type="button" class="butAction" name="writebookkeeping" value="' . $langs->trans("WriteBookKeeping") . '" onclick="writebookkeeping();" />';
} else {
print '<a href="#" class="butActionRefused classfortooltip" name="writebookkeeping">' . $langs->trans("WriteBookKeeping") . '</a>';
}
}
print '</div>';
// TODO Avoid using js. We can use a direct link with $param
print '
<script type="text/javascript">
function launch_export() {
$("div.fiche form input[name=\"action\"]").val("exportcsv");
$("div.fiche form input[type=\"submit\"]").click();
$("div.fiche form input[name=\"action\"]").val("");
}
function writebookkeeping() {
console.log("click on writebookkeeping");
$("div.fiche form input[name=\"action\"]").val("writebookkeeping");
$("div.fiche form input[type=\"submit\"]").click();
$("div.fiche form input[name=\"action\"]").val("");
}
</script>';
$object_label = $langs->trans("ObjectsRef");
if ($object->nature == 2 || $object->nature == 3) $object_label = $langs->trans("InvoiceRef");
if ($object->nature == 5) $object_label = $langs->trans("ExpenseReportRef");
/*
* Show result array
*/
print '<br>';
print '<div class="div-table-responsive">';
print '<table class="noborder centpercent">';
print '<tr class="liste_titre">';
print '<td>' . $langs->trans("Date") . '</td>';
print '<td>' . $langs->trans("Piece") . ' (' . $object_label . ')</td>';
print '<td>' . $langs->trans("AccountAccounting") . '</td>';
print '<td>' . $langs->trans("SubledgerAccount") . '</td>';
print '<td>' . $langs->trans("LabelOperation") . '</td>';
if ($object->nature == 4) print '<td class="center">' . $langs->trans("PaymentMode") . '</td>'; // bank
print '<td class="right">' . $langs->trans("Debit") . '</td>';
print '<td class="right">' . $langs->trans("Credit") . '</td>';
print "</tr>\n";
foreach ($journal_data as $element_id => $element) {
foreach ($element['blocks'] as $lines) {
foreach ($lines as $line) {
print '<tr class="oddeven">';
print '<td>' . $line['date'] . '</td>';
print '<td>' . $line['piece'] . '</td>';
print '<td>' . $line['account_accounting'] . '</td>';
print '<td>' . $line['subledger_account'] . '</td>';
print '<td>' . $line['label_operation'] . '</td>';
if ($object->nature == 4) print '<td class="center">' . $line['payment_mode'] . '</td>';
print '<td class="right nowraponall">' . $line['debit'] . '</td>';
print '<td class="right nowraponall">' . $line['credit'] . '</td>';
print '</tr>';
}
}
}
print '</table>';
print '</div>';
llxFooter();
$db->close();

View File

@@ -42,7 +42,7 @@ $codeventil = GETPOST('codeventil', 'int');
$id = GETPOST('id', 'int');
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {

View File

@@ -1,7 +1,7 @@
<?php
/* Copyright (C) 2013-2014 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2021 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2013-2021 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2013-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>
*
* This program is free software; you can redistribute it and/or modify
@@ -38,7 +38,7 @@ $validatemonth = GETPOST('validatemonth', 'int');
$validateyear = GETPOST('validateyear', 'int');
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -75,7 +75,7 @@ $action = GETPOST('action', 'aZ09');
$chartaccountcode = dol_getIdFromCode($db, $conf->global->CHARTOFACCOUNTS, 'accounting_system', 'rowid', 'pcg_version');
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -171,8 +171,10 @@ if ($action == 'validatehistory') {
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON " . $alias_product_perentity . ".accountancy_code_buy = aa.account_number AND aa.active = 1 AND aa.fk_pcg_version = '".$db->escape($chartaccountcode)."' AND aa.entity = ".$conf->entity;
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa2 ON " . $alias_product_perentity . ".accountancy_code_buy_intra = aa2.account_number AND aa2.active = 1 AND aa2.fk_pcg_version = '".$db->escape($chartaccountcode)."' AND aa2.entity = ".$conf->entity;
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa3 ON " . $alias_product_perentity . ".accountancy_code_buy_export = aa3.account_number AND aa3.active = 1 AND aa3.fk_pcg_version = '".$db->escape($chartaccountcode)."' AND aa3.entity = ".$conf->entity;
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa4 ON " . $alias_societe_perentity . ".accountancy_code_buy = aa4.account_number AND aa4.active = 1 AND aa4.fk_pcg_version = '".$db->escape($chartaccountcode)."' AND aa4.entity = ".$conf->entity;
$sql .= " WHERE f.fk_statut > 0 AND l.fk_code_ventilation <= 0 AND l.product_type <= 2 AND f.entity = ".((int) $conf->entity);
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa4 ON " . $alias_product_perentity . ".accountancy_code_buy = aa4.account_number AND aa4.active = 1 AND aa4.fk_pcg_version = '".$db->escape($chartaccountcode)."' AND aa4.entity = ".$conf->entity;
$sql .= " WHERE f.fk_statut > 0 AND l.fk_code_ventilation <= 0";
$sql .= " AND l.product_type <= 2";
$sql .= " AND f.entity IN (".getEntity('facture_fourn', 0).")"; // We don't share object for accountancy
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
$sql .= " AND f.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
}
@@ -373,10 +375,14 @@ $sql .= " AND ff.fk_statut > 0";
$sql .= " AND ffd.product_type <= 2";
$sql .= " AND ff.entity IN (".getEntity('facture_fourn', 0).")"; // We don't share object for accountancy
$sql .= " AND aa.account_number IS NULL";
if (!empty($conf->global->FACTURE_SUPPLIER_DEPOSITS_ARE_JUST_PAYMENTS)) {
$sql .= " AND ff.type IN (".FactureFournisseur::TYPE_STANDARD.",".FactureFournisseur::TYPE_REPLACEMENT.",".FactureFournisseur::TYPE_CREDIT_NOTE.")";
} else {
$sql .= " AND ff.type IN (".FactureFournisseur::TYPE_STANDARD.",".FactureFournisseur::TYPE_REPLACEMENT.",".FactureFournisseur::TYPE_CREDIT_NOTE.",".FactureFournisseur::TYPE_DEPOSIT.")";
}
$sql .= " GROUP BY ffd.fk_code_ventilation,aa.account_number,aa.label";
$sql .= ' ORDER BY aa.account_number';
dol_syslog('htdocs/accountancy/supplier/index.php');
dol_syslog('htdocs/accountancy/supplier/index.php', LOG_DEBUG);
$resql = $db->query($sql);
if ($resql) {
$num = $db->num_rows($resql);
@@ -474,11 +480,17 @@ $sql .= " AND ff.datef <= '".$db->idate($search_date_end)."'";
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
$sql .= " AND ff.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
}
$sql .= " AND ff.entity IN (".getEntity('facture_fourn', 0).")"; // We don't share object for accountancy
$sql .= " AND ff.fk_statut > 0";
$sql .= " AND ffd.product_type <= 2";
$sql .= " AND ff.entity IN (".getEntity('facture_fourn', 0).")"; // We don't share object for accountancy
if (!empty($conf->global->FACTURE_SUPPLIER_DEPOSITS_ARE_JUST_PAYMENTS)) {
$sql .= " AND ff.type IN (".FactureFournisseur::TYPE_STANDARD.", ".FactureFournisseur::TYPE_REPLACEMENT.", ".FactureFournisseur::TYPE_CREDIT_NOTE.")";
} else {
$sql .= " AND ff.type IN (".FactureFournisseur::TYPE_STANDARD.", ".FactureFournisseur::TYPE_REPLACEMENT.", ".FactureFournisseur::TYPE_CREDIT_NOTE.", ".FactureFournisseur::TYPE_DEPOSIT.")";
}
$sql .= " AND aa.account_number IS NOT NULL";
$sql .= " GROUP BY ffd.fk_code_ventilation,aa.account_number,aa.label";
$sql .= ' ORDER BY aa.account_number';
dol_syslog('htdocs/accountancy/supplier/index.php');
$resql = $db->query($sql);
@@ -494,13 +506,15 @@ if ($resql) {
print length_accountg($row[0]);
}
print '</td>';
print '<td>';
print '<td class="left">';
if ($row[0] == 'tobind') {
print $langs->trans("UseMenuToSetBindindManualy", DOL_URL_ROOT.'/accountancy/supplier/list.php?search_year='.((int) $y), $langs->transnoentitiesnoconv("ToBind"));
} else {
print $row[1];
}
print '</td>';
for ($i = 2; $i <= 13; $i++) {
print '<td class="right nowraponall amount">';
print price($row[$i]);
@@ -523,7 +537,6 @@ print "</table>\n";
print '</div>';
if ($conf->global->MAIN_FEATURES_LEVEL > 0) { // This part of code looks strange. Why showing a report that should rely on result of this step ?
print '<br>';
print '<br>';
@@ -560,9 +573,14 @@ if ($conf->global->MAIN_FEATURES_LEVEL > 0) { // This part of code looks strange
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
$sql .= " AND ff.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
}
$sql .= " AND ff.entity IN (".getEntity('facture_fourn', 0).")"; // We don't share object for accountancy
$sql .= " AND ff.fk_statut > 0";
$sql .= " AND ffd.product_type <= 2";
$sql .= " AND ff.entity IN (".getEntity('facture_fourn', 0).")"; // We don't share object for accountancy
if (!empty($conf->global->FACTURE_SUPPLIER_DEPOSITS_ARE_JUST_PAYMENTS)) {
$sql .= " AND ff.type IN (".FactureFournisseur::TYPE_STANDARD.", ".FactureFournisseur::TYPE_REPLACEMENT.", ".FactureFournisseur::TYPE_CREDIT_NOTE.")";
} else {
$sql .= " AND ff.type IN (".FactureFournisseur::TYPE_STANDARD.", ".FactureFournisseur::TYPE_REPLACEMENT.", ".FactureFournisseur::TYPE_CREDIT_NOTE.", ".FactureFournisseur::TYPE_DEPOSIT.")";
}
dol_syslog('htdocs/accountancy/supplier/index.php');
$resql = $db->query($sql);

View File

@@ -1,9 +1,9 @@
<?php
/* Copyright (C) 2013-2016 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2021 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2014-2015 Ari Elbaz (elarifr) <github@accedinfo.com>
* Copyright (C) 2013-2016 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>
/* Copyright (C) 2013-2016 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2014-2015 Ari Elbaz (elarifr) <github@accedinfo.com>
* Copyright (C) 2013-2016 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2014 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
@@ -49,6 +49,7 @@ $search_societe = GETPOST('search_societe', 'alpha');
$search_lineid = GETPOST('search_lineid', 'int');
$search_ref = GETPOST('search_ref', 'alpha');
$search_invoice = GETPOST('search_invoice', 'alpha');
$search_ref_supplier = GETPOST('search_ref_supplier', 'alpha');
$search_label = GETPOST('search_label', 'alpha');
$search_desc = GETPOST('search_desc', 'alpha');
$search_amount = GETPOST('search_amount', 'alpha');
@@ -88,7 +89,7 @@ if (!$sortorder) {
$formaccounting = new FormAccounting($db);
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -112,6 +113,7 @@ if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x'
$search_lineid = '';
$search_ref = '';
$search_invoice = '';
$search_ref_supplier = '';
$search_label = '';
$search_desc = '';
$search_amount = '';
@@ -140,9 +142,9 @@ if (is_array($changeaccount) && count($changeaccount) > 0 && $user->rights->acco
if (!$error) {
$db->begin();
$sql1 = "UPDATE ".MAIN_DB_PREFIX."facture_fourn_det as l";
$sql1 .= " SET l.fk_code_ventilation=".(GETPOST('account_parent', 'int') > 0 ? GETPOST('account_parent', 'int') : '0');
$sql1 .= ' WHERE l.rowid IN ('.$db->sanitize(implode(',', $changeaccount)).')';
$sql1 = "UPDATE ".MAIN_DB_PREFIX."facture_fourn_det";
$sql1 .= " SET fk_code_ventilation=".(GETPOST('account_parent', 'int') > 0 ? GETPOST('account_parent', 'int') : '0');
$sql1 .= ' WHERE rowid IN ('.$db->sanitize(implode(',', $changeaccount)).')';
dol_syslog('accountancy/supplier/lines.php::changeaccount sql= '.$sql1);
$resql1 = $db->query($sql1);
@@ -236,6 +238,9 @@ if ($search_lineid) {
if (strlen(trim($search_invoice))) {
$sql .= natural_search("f.ref", $search_invoice);
}
if (strlen(trim($search_ref_supplier))) {
$sql .= natural_search("f.ref_supplier", $search_ref_supplier);
}
if (strlen(trim($search_label))) {
$sql .= natural_search("f.libelle", $search_label);
}
@@ -328,6 +333,9 @@ if ($result) {
if ($search_ref) {
$param .= "&search_ref=".urlencode($search_ref);
}
if ($search_ref_supplier) {
$param .= '&search_ref_supplier='.urlencode($search_ref_supplier);
}
if ($search_label) {
$param .= "&search_label=".urlencode($search_label);
}
@@ -376,7 +384,7 @@ if ($result) {
print '<input type="hidden" name="sortorder" value="'.$sortorder.'">';
print '<input type="hidden" name="page" value="'.$page.'">';
print_barre_liste($langs->trans("InvoiceLinesDone"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num_lines, $nbtotalofrecords, 'title_accountancy', 0, '', '', $limit);
print_barre_liste($langs->trans("InvoiceLinesDone"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num_lines, $nbtotalofrecords, 'title_accountancy', 0, '', '', $limit);
print '<span class="opacitymedium">'.$langs->trans("DescVentilDoneSupplier").'</span><br>';
print '<br><div class="inline-block divButAction paddingbottom">'.$langs->trans("ChangeAccount").' ';
@@ -392,6 +400,7 @@ if ($result) {
print '<tr class="liste_titre_filter">';
print '<td class="liste_titre"><input type="text" class="flat maxwidth25" name="search_lineid" value="'.dol_escape_htmltag($search_lineid).'"></td>';
print '<td class="liste_titre"><input type="text" class="flat maxwidth50" name="search_invoice" value="'.dol_escape_htmltag($search_invoice).'"></td>';
print '<td class="liste_titre"><input type="text" class="flat maxwidth50" name="search_ref_supplier" value="'.dol_escape_htmltag($search_ref_supplier).'"></td>';
print '<td class="liste_titre"><input type="text" class="flat maxwidth50" name="search_label" value="'.dol_escape_htmltag($search_label).'"></td>';
print '<td class="liste_titre center">';
print '<div class="nowrap">';
@@ -420,6 +429,7 @@ if ($result) {
print '<tr class="liste_titre">';
print_liste_field_titre("LineId", $_SERVER["PHP_SELF"], "l.rowid", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("Invoice", $_SERVER["PHP_SELF"], "f.ref", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("RefSupplier", $_SERVER["PHP_SELF"], "f.ref_supplier", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("InvoiceLabel", $_SERVER["PHP_SELF"], "f.libelle", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("Date", $_SERVER["PHP_SELF"], "f.datef, f.ref, l.rowid", "", $param, '', $sortfield, $sortorder, 'center ');
print_liste_field_titre("ProductRef", $_SERVER["PHP_SELF"], "p.ref", "", $param, '', $sortfield, $sortorder);
@@ -446,6 +456,9 @@ if ($result) {
$facturefournisseur_static->ref = $objp->ref;
$facturefournisseur_static->id = $objp->facid;
$facturefournisseur_static->type = $objp->ftype;
$facturefournisseur_static->ref_supplier = $objp->ref_supplier;
$facturefournisseur_static->label = $objp->invoice_label;
$thirdpartystatic->id = $objp->socid;
$thirdpartystatic->name = $objp->name;
@@ -465,8 +478,8 @@ if ($result) {
$productstatic->status = $objp->tosell;
$productstatic->status_buy = $objp->tobuy;
$productstatic->accountancy_code_buy = $objp->accountancy_code_buy;
$productstatic->accountancy_code_buy_intra = $objp->accountancy_code_sell_buy;
$productstatic->accountancy_code_buy_export = $objp->accountancy_code_sell_buy;
$productstatic->accountancy_code_buy_intra = $objp->accountancy_code_sell_buy_intra;
$productstatic->accountancy_code_buy_export = $objp->accountancy_code_sell_buy_export;
$accountingaccountstatic->rowid = $objp->fk_compte;
$accountingaccountstatic->label = $objp->label_account;
@@ -481,7 +494,13 @@ if ($result) {
// Ref Invoice
print '<td class="nowraponall">'.$facturefournisseur_static->getNomUrl(1).'</td>';
print '<td class="tdoverflowonsmartphone">';
// Ref supplier invoice
print '<td class="tdoverflowmax100" title="'.dol_escape_htmltag($objp->ref_supplier).'">';
print $objp->ref_supplier;
print '</td>';
// Supplier invoice label
print '<td class="tdoverflowonsmartphone small" title="'.dol_escape_htmltag($objp->invoice_label).'">';
print $objp->invoice_label;
print '</td>';
@@ -501,8 +520,8 @@ if ($result) {
}
print '</td>';
print '<td class="tdoverflowonsmartphone">';
$text = dolGetFirstLineOfText(dol_string_nohtmltag($objp->description));
print '<td class="tdoverflowonsmartphone small">';
$text = dolGetFirstLineOfText(dol_string_nohtmltag($objp->description, 1));
$trunclength = empty($conf->global->ACCOUNTING_LENGTH_DESCRIPTION) ? 32 : $conf->global->ACCOUNTING_LENGTH_DESCRIPTION;
print $form->textwithtooltip(dol_trunc($text, $trunclength), $objp->description);
print '</td>';

View File

@@ -1,10 +1,11 @@
<?php
/* Copyright (C) 2013-2014 Olivier Geffroy <jeff@jeffinfo.com>
* Copyright (C) 2013-2021 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2013-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2014-2015 Ari Elbaz (elarifr) <github@accedinfo.com>
* Copyright (C) 2013-2021 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>s
* Copyright (C) 2016 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2021 Gauthier VERDOL <gauthier.verdol@atm-consulting.fr>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>s
* Copyright (C) 2016 Laurent Destailleur <eldy@users.sourceforge.net>
*
* 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
@@ -47,6 +48,7 @@ $show_files = GETPOST('show_files', 'int');
$confirm = GETPOST('confirm', 'alpha');
$toselect = GETPOST('toselect', 'array');
$optioncss = GETPOST('optioncss', 'alpha');
$default_account = GETPOST('default_account', 'int');
// Select Box
$mesCasesCochees = GETPOST('toselect', 'array');
@@ -55,6 +57,7 @@ $mesCasesCochees = GETPOST('toselect', 'array');
$search_societe = GETPOST('search_societe', 'alpha');
$search_lineid = GETPOST('search_lineid', 'int');
$search_ref = GETPOST('search_ref', 'alpha');
$search_ref_supplier = GETPOST('search_ref_supplier', 'alpha');
$search_invoice = GETPOST('search_invoice', 'alpha');
$search_label = GETPOST('search_label', 'alpha');
$search_desc = GETPOST('search_desc', 'alpha');
@@ -103,7 +106,7 @@ $accountingAccount = new AccountingAccount($db);
$chartaccountcode = dol_getIdFromCode($db, $conf->global->CHARTOFACCOUNTS, 'accounting_system', 'rowid', 'pcg_version');
// Security check
if (empty($conf->accounting->enabled)) {
if (!isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -137,6 +140,7 @@ if (empty($reshook)) {
$search_societe = '';
$search_lineid = '';
$search_ref = '';
$search_ref_supplier = '';
$search_invoice = '';
$search_label = '';
$search_desc = '';
@@ -157,8 +161,8 @@ if (empty($reshook)) {
// Mass actions
$objectclass = 'AccountingAccount';
$permissiontoread = $user->rights->accounting->read;
$permissiontodelete = $user->rights->accounting->delete;
$permissiontoread = $user->hasRight('accounting', 'read');
$permissiontodelete = $user->hasRight('accounting', 'delete');
$uploaddir = $conf->accounting->dir_output;
include DOL_DOCUMENT_ROOT.'/core/actions_massactions.inc.php';
}
@@ -290,6 +294,9 @@ if (strlen(trim($search_invoice))) {
if (strlen(trim($search_ref))) {
$sql .= natural_search("p.ref", $search_ref);
}
if (strlen(trim($search_ref_supplier))) {
$sql .= natural_search("f.ref_supplier", $search_ref_supplier);
}
if (strlen(trim($search_label))) {
$sql .= natural_search(array("p.label", "f.libelle"), $search_label);
}
@@ -413,6 +420,9 @@ if ($result) {
if ($search_ref) {
$param .= '&search_ref='.urlencode($search_ref);
}
if ($search_ref_supplier) {
$param .= '&search_ref_supplier='.urlencode($search_ref_supplier);
}
if ($search_label) {
$param .= '&search_label='.urlencode($search_label);
}
@@ -434,12 +444,15 @@ if ($result) {
$arrayofmassactions = array(
'ventil'=>img_picto('', 'check', 'class="pictofixedwidth"').$langs->trans("Ventilate")
,'set_default_account'=>img_picto('', 'check', 'class="pictofixedwidth"').$langs->trans("ConfirmPreselectAccount")
//'presend'=>img_picto('', 'email', 'class="pictofixedwidth"').$langs->trans("SendByMail"),
//'builddoc'=>img_picto('', 'pdf', 'class="pictofixedwidth"').$langs->trans("PDFMerge"),
);
//if ($user->rights->mymodule->supprimer) $arrayofmassactions['predelete'] = img_picto('', 'delete', 'class="pictofixedwidth"').$langs->trans("Delete");
//if (in_array($massaction, array('presend','predelete'))) $arrayofmassactions=array();
$massactionbutton = $form->selectMassAction('ventil', $arrayofmassactions, 1);
if ($massaction !== 'set_default_account') {
$massactionbutton = $form->selectMassAction('ventil', $arrayofmassactions, 1);
}
print '<form action="'.$_SERVER["PHP_SELF"].'" method="post">'."\n";
print '<input type="hidden" name="action" value="ventil">';
@@ -454,9 +467,17 @@ if ($result) {
print_barre_liste($langs->trans("InvoiceLines"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num_lines, $nbtotalofrecords, 'title_accountancy', 0, '', '', $limit);
if ($massaction == 'set_default_account') {
$formquestion[]=array('type' => 'other',
'name' => 'set_default_account',
'label' => $langs->trans("AccountancyCode"),
'value' => $formaccounting->select_account('', 'default_account', 1, array(), 0, 0, 'maxwidth200 maxwidthonsmartphone', 'cachewithshowemptyone'));
print $form->formconfirm($_SERVER["PHP_SELF"], $langs->trans("ConfirmPreselectAccount"), $langs->trans("ConfirmPreselectAccountQuestion", count($toselect)), "confirm_set_default_account", $formquestion, 1, 0, 200, 500, 1);
}
print '<span class="opacitymedium">'.$langs->trans("DescVentilTodoCustomer").'</span></br><br>';
if ($msg) {
if (!empty($msg)) {
print $msg.'<br>';
}
@@ -469,7 +490,8 @@ if ($result) {
print '<tr class="liste_titre_filter">';
print '<td class="liste_titre"><input type="text" class="flat maxwidth25" name="search_lineid" value="'.dol_escape_htmltag($search_lineid).'"></td>';
print '<td class="liste_titre"><input type="text" class="flat maxwidth50" name="search_invoice" value="'.dol_escape_htmltag($search_invoice).'"></td>';
//print '<td class="liste_titre"><input type="text" class="flat maxwidth50" name="search_label" value="'.dol_escape_htmltag($search_label).'"></td>';
print '<td class="liste_titre"><input type="text" class="flat maxwidth50" name="search_ref_supplier" value="'.dol_escape_htmltag($search_ref_supplier).'"></td>';
print '<td class="liste_titre"><input type="text" class="flat maxwidth50" name="search_label" value="'.dol_escape_htmltag($search_label).'"></td>';
print '<td class="liste_titre center">';
print '<div class="nowrap">';
print $form->selectDate($search_date_start ? $search_date_start : -1, 'search_date_start', 0, 0, 1, '', 1, 0, 0, '', '', '', '', 1, '', $langs->trans('From'));
@@ -499,7 +521,8 @@ if ($result) {
print '<tr class="liste_titre">';
print_liste_field_titre("LineId", $_SERVER["PHP_SELF"], "l.rowid", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("Invoice", $_SERVER["PHP_SELF"], "f.ref", "", $param, '', $sortfield, $sortorder);
//print_liste_field_titre("InvoiceLabel", $_SERVER["PHP_SELF"], "f.libelle", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("RefSupplier", $_SERVER["PHP_SELF"], "f.ref_supplier", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("InvoiceLabel", $_SERVER["PHP_SELF"], "f.libelle", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("Date", $_SERVER["PHP_SELF"], "f.datef, f.ref, l.rowid", "", $param, '', $sortfield, $sortorder, 'center ');
print_liste_field_titre("ProductRef", $_SERVER["PHP_SELF"], "p.ref", "", $param, '', $sortfield, $sortorder);
//print_liste_field_titre("ProductLabel", $_SERVER["PHP_SELF"], "p.label", "", $param, '', $sortfield, $sortorder);
@@ -566,6 +589,7 @@ if ($result) {
$facturefourn_static->ref = $objp->ref;
$facturefourn_static->id = $objp->facid;
$facturefourn_static->type = $objp->ftype;
$facturefourn_static->ref_supplier = $objp->ref_supplier;
$facturefourn_static->label = $objp->invoice_label;
$facturefourn_static->date = $db->jdate($objp->datef);
@@ -625,15 +649,21 @@ if ($result) {
// Ref Invoice
print '<td class="nowraponall">'.$facturefourn_static->getNomUrl(1).'</td>';
/*print '<td class="tdoverflowonsmartphone">';
// Ref supplier invoice
print '<td class="tdoverflowmax100" title="'.dol_escape_htmltag($objp->ref_supplier).'">';
print $objp->ref_supplier;
print '</td>';
// Supplier invoice label
print '<td class="tdoverflowmax125 small" title="'.dol_escape_htmltag($objp->invoice_label).'">';
print $objp->invoice_label;
print '</td>';
*/
// Date
print '<td class="center">'.dol_print_date($facturefourn_static->date, 'day').'</td>';
// Ref Product
print '<td class="tdoverflowmax150">';
print '<td class="tdoverflowmax100">';
if ($product_static->id > 0) {
print $product_static->getNomUrl(1);
}
@@ -644,7 +674,7 @@ if ($result) {
// Description
print '<td class="tdoverflowonsmartphone small">';
$text = dolGetFirstLineOfText(dol_string_nohtmltag($facturefourn_static_det->desc));
$text = dolGetFirstLineOfText(dol_string_nohtmltag($facturefourn_static_det->desc, 1));
$trunclength = empty($conf->global->ACCOUNTING_LENGTH_DESCRIPTION) ? 32 : $conf->global->ACCOUNTING_LENGTH_DESCRIPTION;
print $form->textwithtooltip(dol_trunc($text, $trunclength), $facturefourn_static_det->desc);
print '</td>';
@@ -719,7 +749,7 @@ if ($result) {
// Suggested accounting account
print '<td>';
print $formaccounting->select_account($suggestedid, 'codeventil'.$facturefourn_static_det->id, 1, array(), 0, 0, 'codeventil maxwidth200 maxwidthonsmartphone', 'cachewithshowemptyone');
print $formaccounting->select_account(($default_account > 0 && $confirm === 'yes' && in_array($objp->rowid."_".$i, $toselect)) ? $default_account : $suggestedid, 'codeventil'.$facturefourn_static_det->id, 1, array(), 0, 0, 'codeventil maxwidth200 maxwidthonsmartphone', 'cachewithshowemptyone');
print '</td>';
// Column with checkbox
@@ -728,6 +758,14 @@ if ($result) {
if (!empty($suggestedid) && $suggestedaccountingaccountfor != '' && $suggestedaccountingaccountfor != 'eecwithoutvatnumber') {
$ischecked = 1;
}
if (!empty($toselect)) {
$ischecked = 0;
if (in_array($objp->rowid."_".$i, $toselect)) {
$ischecked=1;
}
}
print '<input type="checkbox" class="flat checkforselect checkforselect'.$facturefourn_static_det->id.'" name="toselect[]" value="'.$facturefourn_static_det->id."_".$i.'"'.($ischecked ? " checked" : "").'/>';
print '</td>';

View File

@@ -1,5 +1,5 @@
<?php
/* Copyright (C) 2015-2018 Alexandre Spangaro <aspangaro@open-dsi.fr>
/* Copyright (C) 2015-2022 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2016 Charlie Benke <charlie@patas-monkey.com>
*
* This program is free software; you can redistribute it and/or modify
@@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
// $formatexportset ùust be defined
// $formatexportset must be defined
// Protection to avoid direct call of template
if (empty($conf) || !is_object($conf)) {
@@ -24,11 +24,11 @@ if (empty($conf) || !is_object($conf)) {
exit;
}
$code = $conf->global->MAIN_INFO_ACCOUNTANT_CODE;
$prefix = $conf->global->ACCOUNTING_EXPORT_PREFIX_SPEC;
$format = $conf->global->ACCOUNTING_EXPORT_FORMAT;
$nodateexport = $conf->global->ACCOUNTING_EXPORT_NO_DATE_IN_FILENAME;
$siren = $conf->global->MAIN_INFO_SIREN;
$code = getDolGlobalString('MAIN_INFO_ACCOUNTANT_CODE');
$prefix = getDolGlobalString('ACCOUNTING_EXPORT_PREFIX_SPEC');
$format = getDolGlobalString('ACCOUNTING_EXPORT_FORMAT');
$nodateexport = getDolGlobalInt('ACCOUNTING_EXPORT_NO_DATE_IN_FILENAME');
$siren = getDolGlobalString('MAIN_INFO_SIREN');
$date_export = "_".dol_print_date(dol_now(), '%Y%m%d%H%M%S');
$endaccountingperiod = dol_print_date(dol_now(), '%Y%m%d');

View File

@@ -64,7 +64,7 @@ if ($action == 'set_default') {
} elseif ($action == 'del_default') {
$ret = delDocumentModel($value, $type);
if ($ret > 0) {
if ($conf->global->MEMBER_ADDON_PDF_ODT == "$value") {
if (getDolGlobalString('MEMBER_ADDON_PDF_ODT') == "$value") {
dolibarr_del_const($db, 'MEMBER_ADDON_PDF_ODT', $conf->entity);
}
}
@@ -108,7 +108,7 @@ if ($action == 'set_default') {
$res3 = dolibarr_set_const($db, 'ADHERENT_CREATE_EXTERNAL_USER_LOGIN', GETPOST('ADHERENT_CREATE_EXTERNAL_USER_LOGIN', 'alpha'), 'chaine', 0, '', $conf->entity);
$res4 = dolibarr_set_const($db, 'ADHERENT_BANK_USE', GETPOST('ADHERENT_BANK_USE', 'alpha'), 'chaine', 0, '', $conf->entity);
// Use vat for invoice creation
if ($conf->facture->enabled) {
if (isModEnabled('facture')) {
$res4 = dolibarr_set_const($db, 'ADHERENT_VAT_FOR_SUBSCRIPTIONS', GETPOST('ADHERENT_VAT_FOR_SUBSCRIPTIONS', 'alpha'), 'chaine', 0, '', $conf->entity);
$res5 = dolibarr_set_const($db, 'ADHERENT_PRODUCT_ID_FOR_SUBSCRIPTIONS', GETPOST('ADHERENT_PRODUCT_ID_FOR_SUBSCRIPTIONS', 'alpha'), 'chaine', 0, '', $conf->entity);
if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
@@ -241,22 +241,22 @@ $arraychoices = array('0'=>$langs->trans("None"));
if (!empty($conf->banque->enabled)) {
$arraychoices['bankdirect'] = $langs->trans("MoreActionBankDirect");
}
if (!empty($conf->banque->enabled) && !empty($conf->societe->enabled) && !empty($conf->facture->enabled)) {
if (!empty($conf->banque->enabled) && !empty($conf->societe->enabled) && isModEnabled('facture')) {
$arraychoices['invoiceonly'] = $langs->trans("MoreActionInvoiceOnly");
}
if (!empty($conf->banque->enabled) && !empty($conf->societe->enabled) && !empty($conf->facture->enabled)) {
if (!empty($conf->banque->enabled) && !empty($conf->societe->enabled) && isModEnabled('facture')) {
$arraychoices['bankviainvoice'] = $langs->trans("MoreActionBankViaInvoice");
}
print '<td>';
print $form->selectarray('ADHERENT_BANK_USE', $arraychoices, $conf->global->ADHERENT_BANK_USE, 0);
if ($conf->global->ADHERENT_BANK_USE == 'bankdirect' || $conf->global->ADHERENT_BANK_USE == 'bankviainvoice') {
print $form->selectarray('ADHERENT_BANK_USE', $arraychoices, getDolGlobalString('ADHERENT_BANK_USE'), 0);
if (getDolGlobalString('ADHERENT_BANK_USE') == 'bankdirect' || getDolGlobalString('ADHERENT_BANK_USE') == 'bankviainvoice') {
print '<br><div style="padding-top: 5px;"><span class="opacitymedium">'.$langs->trans("ABankAccountMustBeDefinedOnPaymentModeSetup").'</span></div>';
}
print '</td>';
print "</tr>\n";
// Use vat for invoice creation
if ($conf->facture->enabled) {
if (isModEnabled('facture')) {
print '<tr class="oddeven"><td>'.$langs->trans("VATToUseForSubscriptions").'</td>';
if (!empty($conf->banque->enabled)) {
print '<td>';
@@ -378,16 +378,16 @@ foreach ($dirmodels as $reldir) {
print '</td>';
} else {
print '<td class="center">'."\n";
print '<a href="'.$_SERVER["PHP_SELF"].'?action=set_default&token='.newToken().'&value='.$name.'&scandir='.$module->scandir.'&label='.urlencode($module->name).'">'.img_picto($langs->trans("Disabled"), 'switch_off').'</a>';
print '<a href="'.$_SERVER["PHP_SELF"].'?action=set_default&token='.newToken().'&value='.$name.'&scandir='.(!empty($module->scandir) ? $module->scandir : '').'&label='.urlencode($module->name).'">'.img_picto($langs->trans("Disabled"), 'switch_off').'</a>';
print "</td>";
}
// Defaut
print '<td class="center">';
if ($conf->global->MEMBER_ADDON_PDF == $name) {
if (getDolGlobalString('MEMBER_ADDON_PDF') == $name) {
print img_picto($langs->trans("Default"), 'on');
} else {
print '<a href="'.$_SERVER["PHP_SELF"].'?action=setdoc&token='.newToken().'&value='.$name.'&scandir='.$module->scandir.'&label='.urlencode($module->name).'" alt="'.$langs->trans("Default").'">'.img_picto($langs->trans("Disabled"), 'off').'</a>';
print '<a href="'.$_SERVER["PHP_SELF"].'?action=setdoc&token='.newToken().'&value='.$name.'&scandir='.(!empty($module->scandir) ? $module->scandir : '').'&label='.urlencode($module->name).'" alt="'.$langs->trans("Default").'">'.img_picto($langs->trans("Disabled"), 'off').'</a>';
}
print '</td>';
@@ -398,8 +398,8 @@ foreach ($dirmodels as $reldir) {
$htmltooltip .= '<br>'.$langs->trans("Width").'/'.$langs->trans("Height").': '.$module->page_largeur.'/'.$module->page_hauteur;
}
$htmltooltip .= '<br><br><u>'.$langs->trans("FeaturesSupported").':</u>';
$htmltooltip .= '<br>'.$langs->trans("Logo").': '.yn($module->option_logo, 1, 1);
$htmltooltip .= '<br>'.$langs->trans("MultiLanguage").': '.yn($module->option_multilang, 1, 1);
$htmltooltip .= '<br>'.$langs->trans("Logo").': '.yn(!empty($module->option_logo) ? $module->option_logo : 0, 1, 1);
$htmltooltip .= '<br>'.$langs->trans("MultiLanguage").': '.yn(!empty($module->option_multilang) ? $module->option_multilang : 0, 1, 1);
print '<td class="center">';

View File

@@ -84,7 +84,7 @@ print dol_get_fiche_end();
// Buttons
if ($action != 'create' && $action != 'edit') {
print '<div class="tabsAction">';
print '<div class="inline-block divButAction"><a class="butAction" href="'.$_SERVER["PHP_SELF"]."?action=create\">".$langs->trans("NewAttribute").'</a></div>';
print '<a class="butAction reposition" href="'.$_SERVER["PHP_SELF"].'?action=create">'.$langs->trans("NewAttribute").'</a>';
print "</div>";
}

View File

@@ -87,7 +87,7 @@ print dol_get_fiche_end();
// Buttons
if ($action != 'create' && $action != 'edit') {
print '<div class="tabsAction">';
print '<div class="inline-block divButAction"><a class="butAction" href="'.$_SERVER["PHP_SELF"]."?action=create\">".$langs->trans("NewAttribute").'</a></div>';
print '<a class="butAction reposition" href="'.$_SERVER["PHP_SELF"].'?action=create">'.$langs->trans("NewAttribute").'</a>';
print "</div>";
}

View File

@@ -95,12 +95,13 @@ if ($action == 'update') {
$form = new Form($db);
$title = $langs->trans("MembersSetup");
$help_url = 'EN:Module_Foundations|FR:Module_Adh&eacute;rents|ES:M&oacute;dulo_Miembros';
llxHeader('', $langs->trans("MembersSetup"), $help_url);
llxHeader('', $title, $help_url);
$linkback = '<a href="'.DOL_URL_ROOT.'/admin/modules.php?restore_lastsearch_values=1">'.$langs->trans("BackToModuleList").'</a>';
print load_fiche_titre($langs->trans("MembersSetup"), $linkback, 'title_setup');
print load_fiche_titre($title, $linkback, 'title_setup');
$head = member_admin_prepare_head();
@@ -177,14 +178,14 @@ if (!empty($conf->global->MEMBER_ENABLE_PUBLIC)) {
print '<tr class="liste_titre">';
print '<td>'.$langs->trans("Parameter").'</td>';
print '<td class="right">'.$langs->trans("Value").'</td>';
print '<td>'.$langs->trans("Value").'</td>';
print "</tr>\n";
// Force Type
$adht = new AdherentType($db);
print '<tr class="oddeven drag" id="trforcetype"><td>';
print $langs->trans("ForceMemberType");
print '</td><td class="right">';
print '</td><td>';
$listofval = array();
$listofval += $adht->liste_array(1);
$forcetype = empty($conf->global->MEMBER_NEWFORM_FORCETYPE) ? -1 : $conf->global->MEMBER_NEWFORM_FORCETYPE;
@@ -196,7 +197,7 @@ if (!empty($conf->global->MEMBER_ENABLE_PUBLIC)) {
$morphys["mor"] = $langs->trans("Moral");
print '<tr class="oddeven drag" id="trforcenature"><td>';
print $langs->trans("ForceMemberNature");
print '</td><td class="right">';
print '</td><td>';
$forcenature = empty($conf->global->MEMBER_NEWFORM_FORCEMORPHY) ? 0 : $conf->global->MEMBER_NEWFORM_FORCEMORPHY;
print $form->selectarray("MEMBER_NEWFORM_FORCEMORPHY", $morphys, $forcenature, 1);
print "</td></tr>\n";
@@ -204,21 +205,21 @@ if (!empty($conf->global->MEMBER_ENABLE_PUBLIC)) {
// Amount
print '<tr class="oddeven" id="tramount"><td>';
print $langs->trans("DefaultAmount");
print '</td><td class="right">';
print '<input type="text" class="right width75" id="MEMBER_NEWFORM_AMOUNT" name="MEMBER_NEWFORM_AMOUNT" value="'.(!empty($conf->global->MEMBER_NEWFORM_AMOUNT) ? $conf->global->MEMBER_NEWFORM_AMOUNT : '').'">';
print '</td><td>';
print '<input type="text" class="right width50" id="MEMBER_NEWFORM_AMOUNT" name="MEMBER_NEWFORM_AMOUNT" value="'.(!empty($conf->global->MEMBER_NEWFORM_AMOUNT) ? $conf->global->MEMBER_NEWFORM_AMOUNT : '').'">';
print "</td></tr>\n";
// Can edit
print '<tr class="oddeven" id="tredit"><td>';
print $langs->trans("CanEditAmount");
print '</td><td class="right">';
print '</td><td>';
print $form->selectyesno("MEMBER_NEWFORM_EDITAMOUNT", (!empty($conf->global->MEMBER_NEWFORM_EDITAMOUNT) ? $conf->global->MEMBER_NEWFORM_EDITAMOUNT : 0), 1);
print "</td></tr>\n";
// Jump to an online payment page
print '<tr class="oddeven" id="trpayment"><td>';
print $langs->trans("MEMBER_NEWFORM_PAYONLINE");
print '</td><td class="right">';
print '</td><td>';
$listofval = array();
$listofval['-1'] = $langs->trans('No');
$listofval['all'] = $langs->trans('Yes').' ('.$langs->trans("VisitorCanChooseItsPaymentMode").')';

View File

@@ -65,6 +65,9 @@ if (GETPOST('actioncode', 'array')) {
}
$search_agenda_label = GETPOST('search_agenda_label');
// Get object canvas (By default, this is not defined, so standard usage of dolibarr)
$objcanvas = null;
// Security check
$result = restrictedArea($user, 'adherent', $id);
@@ -159,11 +162,11 @@ if ($object->id > 0) {
$newcardbutton = '';
if (!empty($conf->agenda->enabled)) {
$newcardbutton .= dolGetButtonTitle($langs->trans('AddAction'), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/comm/action/card.php?action=create&backtopage=1&origin=member&originid='.$id);
if (isModEnabled('agenda')) {
$newcardbutton .= dolGetButtonTitle($langs->trans('AddAction'), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/comm/action/card.php?action=create&backtopage='.urlencode($_SERVER['PHP_SELF']).($object->id > 0 ? '?id='.$object->id : '').'&origin=member&originid='.$id);
}
if (!empty($conf->agenda->enabled) && (!empty($user->rights->agenda->myactions->read) || !empty($user->rights->agenda->allactions->read))) {
if (isModEnabled('agenda') && (!empty($user->rights->agenda->myactions->read) || !empty($user->rights->agenda->allactions->read))) {
print '<br>';
$param = '&id='.$id;

View File

@@ -55,6 +55,7 @@ $id = GETPOST('id') ?GETPOST('id', 'int') : $rowid;
$typeid = GETPOST('typeid', 'int');
$userid = GETPOST('userid', 'int');
$socid = GETPOST('socid', 'int');
$ref = GETPOST('ref', 'alpha');
if (!empty($conf->mailmanspip->enabled)) {
include_once DOL_DOCUMENT_ROOT.'/mailmanspip/class/mailmanspip.class.php';
@@ -284,7 +285,7 @@ if (empty($reshook)) {
$object->lastname = trim(GETPOST("lastname", 'alphanohtml'));
$object->gender = trim(GETPOST("gender", 'alphanohtml'));
$object->login = trim(GETPOST("login", 'alphanohtml'));
$object->pass = trim(GETPOST("pass", 'alpha'));
$object->pass = trim(GETPOST("pass", 'none')); // For password, we must use 'none'
$object->societe = trim(GETPOST("societe", 'alphanohtml')); // deprecated
$object->company = trim(GETPOST("societe", 'alphanohtml'));
@@ -449,8 +450,8 @@ if (empty($reshook)) {
$email = preg_replace('/\s+/', '', GETPOST("member_email", 'alpha'));
$url = trim(GETPOST('url', 'custom', 0, FILTER_SANITIZE_URL));
$login = GETPOST("member_login", 'alphanohtml');
$pass = GETPOST("password", 'alpha');
$photo = GETPOST("photo", 'alpha');
$pass = GETPOST("password", 'none'); // For password, we use 'none'
$photo = GETPOST("photo", 'alphanohtml');
$morphy = GETPOST("morphy", 'alphanohtml');
$public = GETPOST("public", 'alphanohtml');
@@ -633,7 +634,7 @@ if (empty($reshook)) {
exit;
}
} else {
$errmesg = $object->error;
setEventMessages($object->error, null, 'errors');
}
}
@@ -998,7 +999,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
require_once DOL_DOCUMENT_ROOT.'/core/lib/security2.lib.php';
$generated_password = getRandomPassword(false);
print '<tr><td><span class="fieldrequired">'.$langs->trans("Password").'</span></td><td>';
print '<input type="text" class="minwidth300" maxlength="50" name="password" value="'.$generated_password.'">';
print '<input type="text" class="minwidth300" maxlength="50" name="password" value="'.dol_escape_htmltag($generated_password).'">';
print '</td></tr>';
}
@@ -1223,14 +1224,8 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
// Password
if (empty($conf->global->ADHERENT_LOGIN_NOT_REQUIRED)) {
print '<tr><td class="fieldrequired">'.$langs->trans("Password").'</td><td><input type="password" name="pass" class="minwidth300" maxlength="50" value="'.(GETPOSTISSET("pass") ? GETPOST("pass", '', 2) : $object->pass).'"></td></tr>';
print '<tr><td class="fieldrequired">'.$langs->trans("Password").'</td><td><input type="password" name="pass" class="minwidth300" maxlength="50" value="'.dol_escape_htmltag(GETPOSTISSET("pass") ? GETPOST("pass", 'none', 2) : $object->pass).'"></td></tr>';
}
// Morphy
$morphys["phy"] = $langs->trans("Physical");
$morphys["mor"] = $langs->trans("Moral");
print '<tr><td><span class="fieldrequired">'.$langs->trans("MemberNature").'</span></td><td>';
print $form->selectarray("morphy", $morphys, (GETPOSTISSET("morphy") ? GETPOST("morphy", 'alpha') : $object->morphy), 0, 0, 0, '', 0, 0, 0, '', '', 1);
print "</td></tr>";
// Type
print '<tr><td class="fieldrequired">'.$langs->trans("Type").'</td><td>';
@@ -1242,6 +1237,13 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
}
print "</td></tr>";
// Morphy
$morphys["phy"] = $langs->trans("Physical");
$morphys["mor"] = $langs->trans("Moral");
print '<tr><td><span class="fieldrequired">'.$langs->trans("MemberNature").'</span></td><td>';
print $form->selectarray("morphy", $morphys, (GETPOSTISSET("morphy") ? GETPOST("morphy", 'alpha') : $object->morphy), 0, 0, 0, '', 0, 0, 0, '', '', 1);
print "</td></tr>";
// Company
print '<tr><td id="tdcompany">'.$langs->trans("Company").'</td><td><input type="text" name="societe" class="minwidth300" maxlength="128" value="'.(GETPOSTISSET("societe") ? GETPOST("societe", 'alphanohtml', 2) : $object->company).'"></td></tr>';
@@ -1279,13 +1281,20 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
print '<tr><td><input type="checkbox" class="flat photodelete" name="deletephoto" id="photodelete"> '.$langs->trans("Delete").'<br><br></td></tr>';
}
print '<tr><td>'.$langs->trans("PhotoFile").'</td></tr>';
print '<tr><td><input type="file" class="flat" name="photo" id="photoinput"></td></tr>';
print '<tr><td>';
$maxfilesizearray = getMaxFileSizeArray();
$maxmin = $maxfilesizearray['maxmin'];
if ($maxmin > 0) {
print '<input type="hidden" name="MAX_FILE_SIZE" value="'.($maxmin * 1024).'">'; // MAX_FILE_SIZE must precede the field type=file
}
print '<input type="file" class="flat" name="photo" id="photoinput">';
print '</td></tr>';
print '</table>';
}
print '</td></tr>';
// EMail
print '<tr><td>'.($conf->global->ADHERENT_MAIL_REQUIRED ? '<span class="fieldrequired">' : '').$langs->trans("EMail").($conf->global->ADHERENT_MAIL_REQUIRED ? '</span>' : '').'</td>';
print '<tr><td>'.(getDolGlobalString("ADHERENT_MAIL_REQUIRED") ? '<span class="fieldrequired">' : '').$langs->trans("EMail").(getDolGlobalString("ADHERENT_MAIL_REQUIRED") ? '</span>' : '').'</td>';
print '<td>'.img_picto('', 'object_email', 'class="pictofixedwidth"').'<input type="text" name="member_email" class="minwidth300" maxlength="255" value="'.(GETPOSTISSET("member_email") ? GETPOST("member_email", '', 2) : $object->email).'"></td></tr>';
// Website
@@ -1502,7 +1511,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
$outputlangs->loadLangs(array("main", "members", "companies", "install", "other"));
// Get email content from template
$arraydefaultmessage = null;
$labeltouse = $conf->global->ADHERENT_EMAIL_TEMPLATE_MEMBER_VALIDATION;
$labeltouse = getDolGlobalString("ADHERENT_EMAIL_TEMPLATE_MEMBER_VALIDATION");
if (!empty($labeltouse)) {
$arraydefaultmessage = $formmail->getEMailTemplate($db, 'member', $user, $outputlangs, 0, 1, $labeltouse);
@@ -1534,7 +1543,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
// Create form popup
$formquestion = array();
if ($object->email) {
$formquestion[] = array('type' => 'checkbox', 'name' => 'send_mail', 'label' => $label, 'value' => ($conf->global->ADHERENT_DEFAULT_SENDINFOBYMAIL ?true:false));
$formquestion[] = array('type' => 'checkbox', 'name' => 'send_mail', 'label' => $label, 'value' => (getDolGlobalString('ADHERENT_DEFAULT_SENDINFOBYMAIL') ? true : false));
}
if (!empty($conf->mailman->enabled) && !empty($conf->global->ADHERENT_USE_MAILMAN)) {
$formquestion[] = array('type'=>'other', 'label'=>$langs->transnoentitiesnoconv("SynchroMailManEnabled"), 'value'=>'');
@@ -1565,7 +1574,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
$outputlangs->loadLangs(array("main", "members"));
// Get email content from template
$arraydefaultmessage = null;
$labeltouse = $conf->global->ADHERENT_EMAIL_TEMPLATE_CANCELATION;
$labeltouse = getDolGlobalString('ADHERENT_EMAIL_TEMPLATE_CANCELATION');
if (!empty($labeltouse)) {
$arraydefaultmessage = $formmail->getEMailTemplate($db, 'member', $user, $outputlangs, 0, 1, $labeltouse);
@@ -2029,7 +2038,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
$MAX = 10;
$morehtmlcenter = dolGetButtonTitle($langs->trans('SeeAll'), '', 'fa fa-list-alt imgforviewmode', DOL_URL_ROOT.'/adherents/agenda.php?id='.$object->id);
$morehtmlcenter = dolGetButtonTitle($langs->trans('SeeAll'), '', 'fa fa-bars imgforviewmode', DOL_URL_ROOT.'/adherents/agenda.php?id='.$object->id);
// List of actions on element
include_once DOL_DOCUMENT_ROOT.'/core/class/html.formactions.class.php';

View File

@@ -79,7 +79,7 @@ if ((!empty($foruserid) || !empty($foruserlogin) || !empty($mode)) && !$mesg) {
}
$sql .= " FROM ".MAIN_DB_PREFIX."adherent_type as t, ".MAIN_DB_PREFIX."adherent as d";
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_country as c ON d.country = c.rowid";
if (is_array($extrafields->attributes[$object->table_element]['label']) && count($extrafields->attributes[$object->table_element]['label'])) {
if (isset($extrafields->attributes[$object->table_element]['label']) && is_array($extrafields->attributes[$object->table_element]['label']) && count($extrafields->attributes[$object->table_element]['label'])) {
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."adherent_extrafields as ef on (d.rowid = ef.fk_object)";
}
$sql .= " WHERE d.fk_adherent_type = t.rowid AND d.statut = 1";
@@ -110,7 +110,7 @@ if ((!empty($foruserid) || !empty($foruserlogin) || !empty($mode)) && !$mesg) {
$adherentstatic->firstname = $objp->firstname;
// Format extrafield so they can be parsed in function complete_substitutions_array
if (is_array($extrafields->attributes[$object->table_element]['label']) && count($extrafields->attributes[$object->table_element]['label'])) {
if (isset($extrafields->attributes[$object->table_element]['label']) && is_array($extrafields->attributes[$object->table_element]['label']) && count($extrafields->attributes[$object->table_element]['label'])) {
$adherentstatic->array_options = array();
foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) {
$tmpkey = 'options_'.$key;

View File

@@ -7,7 +7,7 @@
* Copyright (C) 2009-2017 Regis Houssin <regis.houssin@inodbox.com>
* Copyright (C) 2014-2018 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
* Copyright (C) 2015-2020 Frédéric France <frederic.france@netlogic.fr>
* Copyright (C) 2015-2022 Frédéric France <frederic.france@netlogic.fr>
* Copyright (C) 2015 Raphaël Doursenaud <rdoursenaud@gpcsolutions.fr>
* Copyright (C) 2016 Juanjo Menent <jmenent@2byte.es>
* Copyright (C) 2018-2019 Thibault FOUCART <support@ptibogxiv.net>
@@ -656,6 +656,8 @@ class Adherent extends CommonObject
{
global $conf, $langs, $hookmanager;
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
$nbrowsaffected = 0;
$error = 0;
@@ -961,10 +963,10 @@ class Adherent extends CommonObject
}
/**
* Fonction qui supprime l'adherent et les donnees associees
* Fonction to delete a member and its data
*
* @param int $rowid Id of member to delete
* @param User $user User object
* @param User $user User object
* @param int $notrigger 1=Does not execute triggers, 0= execute triggers
* @return int <0 if KO, 0=nothing to do, >0 if OK
*/
@@ -1534,9 +1536,9 @@ class Adherent extends CommonObject
*
* @param int $date Date of effect of subscription
* @param double $amount Amount of subscription (0 accepted for some members)
* @param int $accountid Id bank account
* @param string $operation Type of payment (if Id bank account provided). Example: 'CB', ...
* @param string $label Label operation (if Id bank account provided)
* @param int $accountid Id bank account. NOT USED.
* @param string $operation Code of payment mode (if Id bank account provided). Example: 'CB', ... NOT USED.
* @param string $label Label operation (if Id bank account provided).
* @param string $num_chq Numero cheque (if Id bank account provided)
* @param string $emetteur_nom Name of cheque writer
* @param string $emetteur_banque Name of bank of cheque
@@ -1813,7 +1815,7 @@ class Adherent extends CommonObject
if (!$error) {
// Create payment line for invoice
$paiement_id = $paiement->create($user);
if (!$paiement_id > 0) {
if (!($paiement_id > 0)) {
$this->error = $paiement->error;
$this->errors = $paiement->errors;
$error++;
@@ -2163,7 +2165,7 @@ class Adherent extends CommonObject
*/
public function getNomUrl($withpictoimg = 0, $maxlen = 0, $option = 'card', $mode = '', $morecss = '', $save_lastsearch_value = -1, $notooltip = 0, $addlinktonotes = 0)
{
global $conf, $langs;
global $conf, $langs, $hookmanager;
if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER) && $withpictoimg) {
$withpictoimg = 0;
@@ -2281,7 +2283,15 @@ class Adherent extends CommonObject
$result .= '</span>';
}
}
global $action;
$hookmanager->initHooks(array($this->element . 'dao'));
$parameters = array('id'=>$this->id, 'getnomurl' => &$result);
$reshook = $hookmanager->executeHooks('getNomUrl', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks
if ($reshook > 0) {
$result = $hookmanager->resPrint;
} else {
$result .= $hookmanager->resPrint;
}
return $result;
}
@@ -2769,24 +2779,10 @@ class Adherent extends CommonObject
if ($this->db->num_rows($result)) {
$obj = $this->db->fetch_object($result);
$this->id = $obj->rowid;
if ($obj->fk_user_author) {
$cuser = new User($this->db);
$cuser->fetch($obj->fk_user_author);
$this->user_creation = $cuser;
}
if ($obj->fk_user_valid) {
$vuser = new User($this->db);
$vuser->fetch($obj->fk_user_valid);
$this->user_validation = $vuser;
}
if ($obj->fk_user_mod) {
$muser = new User($this->db);
$muser->fetch($obj->fk_user_mod);
$this->user_modification = $muser;
}
$this->user_creation_id = $obj->fk_user_author;
$this->user_validation_id = $obj->fk_user_valid;
$this->user_modification_id = $obj->fk_user_mod;
$this->date_creation = $this->db->jdate($obj->datec);
$this->date_validation = $this->db->jdate($obj->datev);
$this->date_modification = $this->db->jdate($obj->datem);

View File

@@ -121,6 +121,9 @@ class AdherentType extends CommonObject
/** @var array Array of members */
public $members = array();
/** @var string string other */
public $other = array();
public $multilangs = array();
@@ -271,7 +274,7 @@ class AdherentType extends CommonObject
$result = $this->db->query($sql);
if ($result) {
// Call trigger
$result = $this->call_trigger('ADHERENT_TYPE_DEL_MULTILANGS', $user);
$result = $this->call_trigger('MEMBER_TYPE_DEL_MULTILANGS', $user);
if ($result < 0) {
$this->error = $this->db->lasterror();
dol_syslog(get_class($this).'::delMultiLangs error='.$this->error, LOG_ERR);
@@ -431,6 +434,7 @@ class AdherentType extends CommonObject
/**
* Function to delete the member's status
* TODO Add param "User $user"
*
* @return int > 0 if OK, 0 if not found, < 0 if KO
*/

View File

@@ -358,7 +358,7 @@ class Subscription extends CommonObject
$result = $member->update_end_date($user);
if ($this->fk_bank > 0 && is_object($accountline) && $accountline->id > 0) { // If we found bank account line (this means this->fk_bank defined)
$result = $accountline->delete($user); // Return false if refused because line is conciliated
$result = $accountline->delete($user); // Return false if refused because line is reconciled
if ($result > 0) {
$this->db->commit();
return 1;
@@ -490,17 +490,17 @@ class Subscription extends CommonObject
$sql .= ' FROM '.MAIN_DB_PREFIX.'subscription as c';
$sql .= ' WHERE c.rowid = '.((int) $id);
$result = $this->db->query($sql);
if ($result) {
if ($this->db->num_rows($result)) {
$obj = $this->db->fetch_object($result);
$resql = $this->db->query($sql);
if ($resql) {
if ($this->db->num_rows($resql)) {
$obj = $this->db->fetch_object($resql);
$this->id = $obj->rowid;
$this->date_creation = $this->db->jdate($obj->datec);
$this->date_modification = $this->db->jdate($obj->datem);
}
$this->db->free($result);
$this->db->free($resql);
} else {
dol_print_error($this->db);
}

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