Compare commits

...

393 Commits

Author SHA1 Message Date
Yurii
d678307d2d oidc pkce support 2026-02-25 15:07:54 +02:00
Yurii
74b1c2ba98 Merge branch 'fix' 2026-02-25 12:56:55 +02:00
Yurii
a8398965b8 fix loging data not available on logout 2026-02-25 12:56:40 +02:00
Yurii
1c550da572 oidc login fail console log 2026-02-25 12:25:08 +02:00
Yurii
b48b033be8 ux fix 2026-02-25 11:36:06 +02:00
Yurii
c392fabc14 categories for custom entity types 2026-02-24 17:10:45 +02:00
Yurii
1de9046b3d grunt minimatch override 2026-02-24 12:48:42 +02:00
Yurii
b007bef366 Revert "override dependency"
This reverts commit 33c8e202bc.
2026-02-24 12:36:45 +02:00
Yurii
33c8e202bc override dependency 2026-02-23 18:12:03 +02:00
Yurii
bbf77b16bd update npm dependency 2026-02-23 17:24:20 +02:00
Yurii
4da48a15a9 Merge branch 'fix' 2026-02-23 17:20:04 +02:00
Yurii
db504a3ee7 test 2026-02-23 17:14:16 +02:00
Yurii
5e2155d7e2 fix email subject truncate 2026-02-23 15:23:43 +02:00
Yurii
ee34bf8cba allow no colloaboarators if no assignment permission 2026-02-22 12:57:38 +02:00
Yurii
563843cac8 collaborators, add task to defaults 2026-02-21 23:39:43 +02:00
Yurii
9463c9ea55 forbid disabled link 2026-02-21 17:28:47 +02:00
Yurii
39b461a618 enable collaborators for tasks and cases 2026-02-21 16:50:52 +02:00
Yurii
65d2c1de07 added const 2026-02-21 16:17:12 +02:00
Yurii
adccaa7951 metadata legacy fix 2026-02-21 16:06:03 +02:00
Yurii
f9d0f3bcaf navbar url open in new tab parameter 2026-02-21 12:53:07 +02:00
Yurii
3321bf1020 category save in transaction 2026-02-21 12:38:35 +02:00
Yurii
d3da6fc8cc update npm packages 2026-02-21 10:24:53 +02:00
Yurii
6c0e3c67a8 line breaks 2026-02-21 10:08:19 +02:00
dependabot[bot]
2cd9b532f0 Bump directorytree/imapengine from 1.19.2 to 1.22.3 (#3580)
Bumps [directorytree/imapengine](https://github.com/DirectoryTree/ImapEngine) from 1.19.2 to 1.22.3.
- [Release notes](https://github.com/DirectoryTree/ImapEngine/releases)
- [Commits](https://github.com/DirectoryTree/ImapEngine/compare/v1.19.2...v1.22.3)

---
updated-dependencies:
- dependency-name: directorytree/imapengine
  dependency-version: 1.22.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-20 17:22:43 +02:00
dependabot[bot]
ce1e664d63 Bump tar from 7.5.7 to 7.5.8 (#3582)
Bumps [tar](https://github.com/isaacs/node-tar) from 7.5.7 to 7.5.8.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-tar/compare/v7.5.7...v7.5.8)

---
updated-dependencies:
- dependency-name: tar
  dependency-version: 7.5.8
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-19 20:52:34 +02:00
Yurii
a79771aedd 9.3.1 2026-02-19 10:55:00 +02:00
Yurii
2f97cf36ea Merge branch 'fix' 2026-02-19 10:17:13 +02:00
Yurii
c1eb14726e currency no join mode getting rates dynamically 2026-02-19 10:09:32 +02:00
Yurii
d7764af73d fix error message 2026-02-16 17:39:27 +02:00
Yurii
d74acd7776 bcmath and currency float casting fix 2026-02-16 13:52:39 +02:00
Yurii
299709f3ee code style params 2026-02-16 13:51:56 +02:00
Yurii
970c37d921 role table ui fixes 2026-02-16 12:42:20 +02:00
Yurii
9536146226 role ui: true on change 2026-02-16 12:07:09 +02:00
Yurii
5d68e153c3 select native fix for new chrome 2026-02-16 11:54:33 +02:00
Yurii
dc738fdbfe Merge branch 'fix' 2026-02-16 09:44:06 +02:00
Yurii
dadb4078cb readme change 2026-02-16 09:43:55 +02:00
Yurii
d77d99c68b remove unneeded template type 2026-02-15 18:06:26 +02:00
Yurii
a682394e53 pdf template style null fix 2026-02-15 18:02:52 +02:00
Yurii
44c20522a0 dompdf fonts 2026-02-14 19:05:37 +02:00
Yurii
3161d0c436 Merge branch 'fix' 2026-02-14 16:25:52 +02:00
dependabot[bot]
6930658c27 Bump qs from 6.14.1 to 6.14.2 (#3577)
Bumps [qs](https://github.com/ljharb/qs) from 6.14.1 to 6.14.2.
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.14.1...v6.14.2)

---
updated-dependencies:
- dependency-name: qs
  dependency-version: 6.14.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-14 14:57:04 +02:00
Yurii
9e1e3396d0 increase precision 2026-02-13 13:33:18 +02:00
Yurii
fbab0a9803 createDisabled check 2026-02-12 13:43:22 +02:00
Yurii
72f0f8e0a7 fix search layout ignoring fields 2026-02-12 13:03:08 +02:00
Yurii
5ca1cce14a record dashlet layout field translaction fix 2026-02-12 09:45:47 +02:00
Yurii
ba8c402813 load capture: load additional fields on generate 2026-02-09 22:30:04 +02:00
Yurii
b86aca9bff workking time exception ux impr 2026-02-09 19:41:19 +02:00
Yurii
cc8fa5a6b6 load columns only field in list 2026-02-09 19:05:19 +02:00
Yurii
95700564bb dompdf use cache dir 2026-02-09 18:08:39 +02:00
Yurii
e20c89d4ce detail modal update source collection event 2026-02-09 11:57:06 +02:00
Yurii
d0d7c8b36e link icon helper dynamic icon 2026-02-08 11:01:59 +02:00
Yurii
19e5c483fa link field icon helper 2026-02-08 10:19:02 +02:00
Yurii
7728f4765b reset count disabled to default 2026-02-07 20:32:19 +02:00
Yurii
3f846e861f dompdf fontdir 2026-02-06 20:56:31 +02:00
Yurii
616ee67622 pdf: disable js 2026-02-06 20:29:21 +02:00
Yurii
23592e9b66 open api spec link 2026-02-06 17:12:41 +02:00
Yurii
efb2ce9ba3 schema 2026-02-06 12:54:01 +02:00
Yurii
418770bce5 pdf font field sorted list 2026-02-06 12:50:18 +02:00
Yurii
767a77a66c PDF font mapping 2026-02-06 12:43:52 +02:00
Yurii
2ef02e8144 fix warning 2026-02-06 11:40:11 +02:00
Yurii
22cbfb669c fix image resize when width to height is large 2026-02-06 10:26:34 +02:00
Yurii
61e427d621 list settings no session storage 2026-02-06 10:03:38 +02:00
Yurii
ecad172891 clear settings temp storage 2026-02-05 15:40:28 +02:00
Yurii
a694db623c fix 2026-02-05 15:23:46 +02:00
Yurii
ed7677a4d7 list setting without storing 2026-02-05 15:22:01 +02:00
Yurii
229e8f2ae0 move article silent 2026-02-04 14:05:47 +02:00
Yurii
f04d178a3c kb order no limit 2026-02-03 19:15:05 +02:00
Yurii
b3543dc8da message change 2026-02-03 19:01:41 +02:00
Yurii
b7b1562111 ORM: no alias 2026-02-03 14:54:36 +02:00
Yurii
bd9bacb210 ORM: with recursive 2026-02-03 13:25:18 +02:00
Yurii
9d7d9ac29c categories disable if not read access 2026-02-02 19:19:44 +02:00
Yurii
d69db3689f create category fix 2026-02-02 19:10:24 +02:00
Yurii
50ea605c06 fix list with category use icon in header 2026-02-02 18:37:57 +02:00
Yurii
43e016eff8 cleanup 2026-02-02 18:32:10 +02:00
Yurii
21ca37f41c list with category use icon in header 2026-02-02 18:28:27 +02:00
Yurii
3f108cc0f5 fix doc 2026-02-02 17:45:11 +02:00
Yurii
5bf7774679 fix email collapse save 2026-02-02 17:42:38 +02:00
Yurii
fd12203e1c imap fetch order apply 2026-02-02 17:00:13 +02:00
Yurii
d25a693dc6 docs 2026-02-02 16:25:20 +02:00
Yurii
076483e4f2 fix imap unseen 2026-02-02 14:58:26 +02:00
Yurii
900c731b04 authUsernameFailedAttemptsPeriod param 2026-02-02 13:35:25 +02:00
Yurii
a84c42f7a7 fix imap uid fetch 2026-02-02 13:11:55 +02:00
Yurii
8b6f7d4aec version 2026-02-02 10:13:54 +02:00
Yurii
e706b7b892 max failed login for username 2026-01-31 13:12:55 +02:00
Yurii
e45e2fe6eb update tar 2026-01-30 17:01:10 +02:00
Yurii
e3c576b38f currency settings button 2026-01-30 13:31:26 +02:00
Yurii
cf2a80ffec created entity type message 2026-01-30 12:58:07 +02:00
Yurii
ab639c2913 fix decimal not storable 2026-01-30 12:48:01 +02:00
Yurii
ab89d8caef list settings allows custom label 2026-01-30 11:30:41 +02:00
Yurii
9ac836dc3e additional binding for tests 2026-01-29 09:56:01 +02:00
dependabot[bot]
ca1020403d Bump symfony/process from 7.4.3 to 7.4.5 (#3570)
Bumps [symfony/process](https://github.com/symfony/process) from 7.4.3 to 7.4.5.
- [Release notes](https://github.com/symfony/process/releases)
- [Changelog](https://github.com/symfony/process/blob/8.1/CHANGELOG.md)
- [Commits](https://github.com/symfony/process/compare/v7.4.3...v7.4.5)

---
updated-dependencies:
- dependency-name: symfony/process
  dependency-version: 7.4.5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-29 07:29:19 +02:00
Yurii
6094875ed0 logicDefs export 2026-01-28 12:07:49 +02:00
dependabot[bot]
2befaa41b6 Bump phpunit/phpunit from 11.5.46 to 11.5.50 (#3569)
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 11.5.46 to 11.5.50.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/11.5.50/ChangeLog-11.5.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/11.5.46...11.5.50)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-version: 11.5.50
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-28 08:33:40 +02:00
Yurii
336a64efe6 fix label 2026-01-27 17:09:05 +02:00
Yurii
6e18a78eb0 fix 2026-01-27 17:08:05 +02:00
Yurii
e18bad3e60 ar_AR 2026-01-27 10:40:01 +02:00
Yurii
f9d3254e84 bg_BG 2026-01-27 10:38:38 +02:00
Yurii
87b440e86a zh_CN 2026-01-27 10:36:53 +02:00
Yurii
643d04589c cs_CZ 2026-01-27 10:35:12 +02:00
Yurii
91cff9585f nl_NL 2026-01-27 10:33:55 +02:00
Yurii
8e14a719e0 fr_FR 2026-01-27 10:31:54 +02:00
Yurii
2c51a84422 el_GR 2026-01-27 10:30:11 +02:00
Yurii
6593aef458 lv_LV 2026-01-27 10:27:23 +02:00
Yurii
9097246082 lt_LT 2026-01-27 10:25:54 +02:00
Yurii
c7af50f802 ja_JP 2026-01-27 10:22:08 +02:00
Yurii
0c18064d98 nb_NO 2026-01-27 10:19:01 +02:00
Yurii
8d60761cc0 es_ES 2026-01-27 10:12:52 +02:00
Yurii
14c1ccd86e de_DE 2026-01-27 10:09:25 +02:00
Yurii
cc2096b4cf it_IT 2026-01-27 10:06:26 +02:00
Yurii
32252589a3 ur_IN 2026-01-27 10:03:33 +02:00
Yurii
752890d4b3 disable teams field parameters 2026-01-26 22:04:36 +02:00
Yurii
bff43d6b5d description fields 2026-01-26 09:10:15 +02:00
Anton Slyzhko
f12162ad72 prevent NotImplemented exception during template rendering (#3567)
* prevent NotImplemented exception during template rendering

* specify an action for ACL to check
2026-01-23 15:39:03 +02:00
Yurii
9a3ef004d3 comment 2026-01-22 18:16:59 +02:00
Yurii
ae853a7848 fix convert lead title 2026-01-22 18:13:40 +02:00
Yurii
f5d8f515d5 reactions popover css fix 2026-01-22 12:37:29 +02:00
Yurii
63e931fab1 restore new lines 2026-01-22 09:48:32 +02:00
dependabot[bot]
c05614d22e Bump tar from 7.5.3 to 7.5.4 (#3564)
Bumps [tar](https://github.com/isaacs/node-tar) from 7.5.3 to 7.5.4.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-tar/compare/v7.5.3...v7.5.4)

---
updated-dependencies:
- dependency-name: tar
  dependency-version: 7.5.4
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-22 09:47:35 +02:00
Yurii
2f9215ba52 input filter: pass entityType as param 2026-01-22 09:47:00 +02:00
dependabot[bot]
9620c4a7ce Bump lodash from 4.17.21 to 4.17.23 (#3565)
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.21 to 4.17.23.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.17.23)

---
updated-dependencies:
- dependency-name: lodash
  dependency-version: 4.17.23
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-22 09:45:37 +02:00
Yurii
594f1e7252 person acl account link field fix 2026-01-21 23:00:48 +02:00
kenyonit
edb3f7a35b Update PreferencesService to consider dashboard layout metadata (#3561)
* Update PreferencesService.php to consider dashboard layout metadata

The resetDashboard function only considers the dashboardLayout and dashletsOptions config. Updated code to check metadata app.defaultDashboardLayouts.Standard and app.defaultDashboardOptions.Standard so behaviour is consistent with the loadData function in Preferences.php

* Update PreferencesService.php

Fixed copyright year, accidentally overwritten
2026-01-21 13:19:30 +02:00
Yurii
af8f8a6adb updgrade version fix 2026-01-21 11:07:48 +02:00
Yurii
f7f4a7fdcb fix typo 2026-01-20 19:03:39 +02:00
Yurii
1f38d04e86 schema 2026-01-20 19:02:12 +02:00
Yurii
bca2b63b03 pass additional where to select additional applier 2026-01-20 18:13:48 +02:00
Yurii
14f46f26f9 htmlizer relation order 2026-01-20 12:48:36 +02:00
Yurii
bf250069f4 next number process field force 2026-01-18 18:39:54 +02:00
Yurii
f23d0ee911 fix doc 2026-01-18 18:26:44 +02:00
Yurii
89cf4f6165 update tar 2026-01-17 09:06:49 +02:00
Yurii
173f9d6150 Merge branch 'stable' 2026-01-17 09:01:25 +02:00
Yurii
ff8e8d23a8 9.2.7 2026-01-16 09:45:32 +02:00
Yurii
e46b954b71 Merge branch 'fix' 2026-01-16 09:43:59 +02:00
grray
ddb636239b fix error "Unknown column 'api' in 'field list'" on mass relate (#3562) 2026-01-16 09:43:40 +02:00
Yurii
8fcee30912 add php 8.5 to actions 2026-01-16 09:37:19 +02:00
Yurii
7c3a0964d5 update default dashboard layout in metadata 2026-01-16 08:34:02 +02:00
Yurii
e002846138 Merge branch 'fix' 2026-01-15 20:43:22 +02:00
Yurii
917dbdd3fe 9.2.6 2026-01-15 20:35:58 +02:00
Yurii
f645af4347 fix url rendering 2026-01-15 19:47:54 +02:00
Yurii
be228fa48a url validator util 2026-01-15 19:41:06 +02:00
Yurii
7760b01a50 htmlizer: skip link if same key defined in additional data 2026-01-15 10:34:50 +02:00
Yurii
33f3e8b6b2 schema 2026-01-15 10:15:42 +02:00
Yurii
89db06f319 data loader template 2026-01-15 10:13:29 +02:00
Yurii
6aecc8ea6b fix convert currency 2026-01-14 14:33:01 +02:00
Yurii
5fefed5933 exception fix 2026-01-13 12:26:42 +02:00
Yurii
9f87a53f38 fix exceptions 2026-01-13 11:42:42 +02:00
Yurii
049be51f9c fix exception 2026-01-13 11:34:37 +02:00
Yurii
1b469c0cfa export foreign field label add space 2026-01-12 17:23:46 +02:00
Yurii
81844358c6 cs 2026-01-12 17:22:01 +02:00
Yurii
3fe7e12c62 label change 2026-01-12 13:07:26 +02:00
Yurii
f482222c5d comment 2026-01-12 11:53:14 +02:00
Yurii
29a9a3a9ba fix duplicate link without field 2026-01-12 11:45:52 +02:00
Yurii
c6037ce0cd fix 2026-01-12 11:25:21 +02:00
Yurii
268ba27cf8 year change 2 2026-01-12 11:02:47 +02:00
Yurii
0b0a31821f year change 1 2026-01-12 10:54:39 +02:00
Yurii
79d5cd60c9 fix IMAP folders 2026-01-09 18:48:15 +02:00
Yurii
309ec572c4 fix folder 2026-01-09 18:35:02 +02:00
Yurii
7b35a69106 fix confirm conflicts shortcuts 2026-01-09 14:54:03 +02:00
Yurii
a52b383ff4 ref 2026-01-09 14:36:42 +02:00
Yurii
f5938ebbdc comment 2026-01-09 14:32:19 +02:00
Yurii
0ad7a9b99c fix merge attahment multiple 2026-01-09 13:53:13 +02:00
Yurii
0156fba5c5 Merge branch 'fix' 2026-01-09 12:50:36 +02:00
Yurii
5d443dda10 fix mariadb 12 2026-01-09 12:50:28 +02:00
Yurii
4708567bcc fix convert lead, url 2026-01-08 17:29:35 +02:00
Yurii
e52f886e3f tabPortal 2026-01-06 18:06:30 +02:00
Yurii
926e951dfc router options string to object 2026-01-05 11:15:37 +02:00
Yurii
48efb09003 cleanup 2026-01-05 11:04:23 +02:00
Yurii
66feaae474 ref 2026-01-05 11:02:26 +02:00
Yurii
683c570eea type fix 2026-01-05 10:52:33 +02:00
Yurii
e1be537667 cs 2026-01-05 10:40:54 +02:00
Yurii
7a444a6663 hide unlink if link is read only 2026-01-05 10:38:27 +02:00
Yurii
2efff1c310 skip select column if hidden and no settings 2026-01-05 10:29:53 +02:00
Yurii
25fbf66a70 ref 2026-01-05 10:27:02 +02:00
Yurii
b26c0368d9 update npm libs 2026-01-04 14:35:39 +02:00
Yurii
31e8b84989 php 8.5 support, update libs 2026-01-04 09:50:25 +02:00
Yurii
d7438f02bf fix timezone in tests 2026-01-04 09:48:11 +02:00
Yurii
20a0ed4133 type fixes 2026-01-04 09:44:24 +02:00
Yurii
4212934fd2 internal server error message 2026-01-01 15:52:34 +02:00
Yurii
711c1f7592 rate entry as of date method 2025-12-31 13:41:59 +02:00
Yurii
69cb68cd27 ref 2025-12-30 19:58:39 +02:00
Yurii
b97a612867 field not null check 2025-12-29 12:50:26 +02:00
Yurii
e8629384f7 next number hook suppression 2025-12-27 17:49:47 +02:00
Yurii
ebbeea54e9 ref 2025-12-27 17:23:45 +02:00
Yurii
5ca6f1ac42 css fix 2025-12-24 11:16:06 +02:00
Yurii
6d3c1b8bb7 case additional list layouts 2025-12-24 11:06:37 +02:00
Yurii
7165355ff4 fix json 2025-12-24 10:46:50 +02:00
Yurii
40c0a74279 directUpdateEnabled, importEnabled parameters 2025-12-24 10:33:12 +02:00
Yurii
2063e2cd1d field access frontend fixes 2025-12-24 10:18:03 +02:00
Yurii
891a0028af direct access disabled check 2025-12-23 22:45:38 +02:00
Yuri Kuznetsov
51c4850310 fix view name param 2025-12-20 17:46:51 +02:00
Yuri Kuznetsov
6ed69f4892 doc fix 2025-12-20 17:41:31 +02:00
Yuri Kuznetsov
5d40cbf8f6 filter view custom field view 2025-12-20 17:35:44 +02:00
Yuri Kuznetsov
a5327f3a3e cleanup 2025-12-20 17:13:52 +02:00
Yuri Kuznetsov
1ef21112a9 filters css fix 2025-12-20 16:22:24 +02:00
Yuri Kuznetsov
da5bf2c7eb update imap lib 2025-12-19 18:53:26 +02:00
Yuri Kuznetsov
1ef4875927 +30 days default date 2025-12-19 16:58:43 +02:00
Yuri Kuznetsov
ca29e47ab1 Merge branch 'fix' 2025-12-19 08:50:57 +02:00
Yuri Kuznetsov
74db03090b fix linked where filters 2025-12-19 08:50:17 +02:00
Yuri Kuznetsov
942a8f07c0 fix linked where filters 2025-12-18 23:28:27 +02:00
Yuri Kuznetsov
a0c2b19271 working time exception mass delete 2025-12-17 20:07:27 +02:00
Yuri Kuznetsov
63dd5462ef Merge branch 'fix' 2025-12-17 20:02:51 +02:00
Yuri Kuznetsov
03ac0a57c8 fix double shortcut issue 2025-12-17 20:02:39 +02:00
Yuri Kuznetsov
19c998d343 modal shourtcut fix 2025-12-17 20:01:50 +02:00
Yuri Kuznetsov
cd02641a6d update doc 2025-12-14 13:16:58 +02:00
Yuri Kuznetsov
3173150d19 fix test 2025-12-14 13:16:52 +02:00
Yuri Kuznetsov
b4bd66c363 clear currency cache 2025-12-13 20:12:11 +02:00
Yuri Kuznetsov
3b169fe5a0 currency rate cache 2025-12-13 19:25:50 +02:00
Yuri Kuznetsov
41db22a88d currency sync optimization 2025-12-13 17:59:09 +02:00
Yuri Kuznetsov
b745adaaa4 ref 2025-12-13 16:44:18 +02:00
Yuri Kuznetsov
bd785b2cb1 cleanup 2025-12-13 16:40:02 +02:00
Yuri Kuznetsov
1573ec059c cleanup 2025-12-13 16:38:49 +02:00
Yuri Kuznetsov
bb90be7cf3 schange scheduling 2025-12-13 16:35:46 +02:00
Yuri Kuznetsov
a75c4bdf42 sync in transaction 2025-12-13 16:24:51 +02:00
Yuri Kuznetsov
efdeca1190 sync currency rates job 2025-12-13 16:17:49 +02:00
Yurii
f16ddf0941 App/appParams endpoint 2025-12-13 11:18:49 +02:00
Yurii
0d17d12293 app params refresh with websocket 2025-12-13 11:09:06 +02:00
Yurii
7f9457e8d7 fix rates to string 2025-12-13 10:40:59 +02:00
Yurii Kuznietsov
0ee8d1dc91 Currency rates as entities (#3543) 2025-12-13 10:31:07 +02:00
Yurii
f46d9c8e4e file headers 2025-12-12 12:59:46 +02:00
Yurii
228a7ad8e4 schema fix 2025-12-12 11:17:07 +02:00
Yurii
3fe0ba41d7 fix schema 2025-12-12 09:14:13 +02:00
Yurii
900e34ded2 json schema decimal field 2025-12-12 08:39:12 +02:00
Yurii
fef6527bdb language restore entity type translation 2025-12-10 18:44:06 +02:00
Yurii Kuznietsov
e4bce0ab2c Merge pull request #3540 from ShaikhNaasir/fix-error
Remove double semicolons
2025-12-08 11:33:17 +02:00
Naasir
ed9d9b3620 Remove another double semicolons 2025-12-08 13:40:23 +05:30
Naasir
96b261b349 Remove double semicolons 2025-12-08 13:31:53 +05:30
Yurii Kuznietsov
d4fda8f741 Update SECURITY.md 2025-12-07 15:26:40 +02:00
Yuri Kuznetsov
4159faceb4 api spec title module 2025-12-06 15:38:20 +02:00
Yuri Kuznetsov
627cdaf58d api spec specific module 2025-12-06 15:13:45 +02:00
Yuri Kuznetsov
c095ec9334 api spec team 2025-12-06 15:00:51 +02:00
Yuri Kuznetsov
7083fb2c5c Merge branch 'master' of https://github.com/espocrm/espocrm 2025-12-06 15:00:25 +02:00
Yuri Kuznetsov
641e158529 open api: add team 2025-12-06 14:45:31 +02:00
Yurii
8736fcba21 fix type 2025-12-06 11:35:35 +02:00
Yuri Kuznetsov
771bedd25d merge 2025-12-06 11:00:28 +02:00
Yuri Kuznetsov
1f251eecb3 fix notification read 2025-12-06 10:43:26 +02:00
Yuri Kuznetsov
6dd898eb6e ref 2025-12-06 09:45:37 +02:00
Yuri Kuznetsov
1600c1eb13 update lib 2025-12-06 09:45:31 +02:00
Yuri Kuznetsov
469d3a4113 update frontend build tool 2025-12-05 13:38:27 +02:00
Yuri Kuznetsov
2e578b3941 update archiver 2025-12-05 13:18:11 +02:00
Yuri Kuznetsov
7364945ec0 min node version 20 2025-12-05 13:05:42 +02:00
Yuri Kuznetsov
a2cd2531d0 formula: record related columnData 2025-12-05 12:23:29 +02:00
Yurii Kuznietsov
914cecca10 Merge pull request #3536 from espocrm/imap-migration
Migrate IMAP lib from Laminas to ImapEngine
2025-12-05 11:46:52 +02:00
Yuri Kuznetsov
5cbeea8119 upgrade check 2025-12-05 11:18:57 +02:00
Yuri Kuznetsov
6d6512a05e imap migration 2025-12-04 19:23:03 +02:00
Yurii
889059c8d9 imap ref 2025-12-04 11:14:18 +02:00
Yurii
52f17733f2 mail sender: disable auto tls if no security 2025-12-04 09:52:35 +02:00
Yurii
0bf94aecb4 update symfony to 7 and spatie/async to 1.8 2025-12-04 09:34:40 +02:00
Yurii
8129495e4b update ratchet 2025-12-04 09:30:38 +02:00
Yuri Kuznetsov
64c2979a59 update avatar lib 2025-12-03 23:00:54 +02:00
Yuri Kuznetsov
d73a97373d fix postgresql index 2025-12-03 16:46:44 +02:00
Yurii
0a4ee2f949 note removal on email removal 2025-12-03 15:40:22 +02:00
Yurii
5ded6b1bcf currency attribute detail fix 2025-12-03 14:34:52 +02:00
Yurii
2c5edc3c96 phoneNumberData attribute detail fix 2025-12-03 14:32:18 +02:00
Yurii
64ce48de32 cs fix 2025-12-03 14:26:38 +02:00
Yurii
347e5349e0 api spec barcode 2025-12-03 14:25:37 +02:00
Yuri Kuznetsov
62964fa1cb update ldap lib 2025-12-03 13:23:55 +02:00
Yuri Kuznetsov
7c03c9953f composer lock php version to min 2025-12-03 13:04:11 +02:00
Yuri Kuznetsov
3ac9e78fa8 update dbal 2025-12-03 12:51:49 +02:00
Yuri Kuznetsov
8b8a3d0aa7 update monolog 2025-12-03 12:49:13 +02:00
Yuri Kuznetsov
df6f0edf5d update slim 2025-12-03 12:46:31 +02:00
Yuri Kuznetsov
db896ad467 update carbon 2025-12-03 12:43:58 +02:00
Yuri Kuznetsov
88c9a02136 update barcode and qrcode libs 2025-12-03 12:37:04 +02:00
Yuri Kuznetsov
d2d3628c2b update phpseclib 2025-12-03 12:06:03 +02:00
Yuri Kuznetsov
6014ef92e9 update league libs 2025-12-03 12:04:41 +02:00
Yuri Kuznetsov
d01c1c8469 update php-cidr-match 2025-12-03 11:58:49 +02:00
Yuri Kuznetsov
1e3e35334c update phpspreadheet 2025-12-03 11:50:26 +02:00
Yuri Kuznetsov
2d1226016a update openspout and mail-mime-parser 2025-12-03 11:41:22 +02:00
Yuri Kuznetsov
6f2e81357b cache 2025-12-03 10:59:37 +02:00
Yuri Kuznetsov
f492bfc374 isCustom fix 2025-12-03 00:03:35 +02:00
Yuri Kuznetsov
b2c7eef31a fix 2025-12-02 23:59:56 +02:00
Yuri Kuznetsov
c14d801224 use deepObject 2025-12-02 23:53:22 +02:00
Yuri Kuznetsov
6f35b7fe36 summary 2025-12-02 23:24:19 +02:00
dependabot[bot]
c8276dfe42 Bump express from 4.21.2 to 4.22.1 (#3534)
Bumps [express](https://github.com/expressjs/express) from 4.21.2 to 4.22.1.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/v4.22.1/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.21.2...v4.22.1)

---
updated-dependencies:
- dependency-name: express
  dependency-version: 4.22.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-02 16:28:25 +02:00
Yurii
2b6196c57f skip custom 2025-12-02 16:25:32 +02:00
Yurii
876df81526 open api spec 2025-12-02 16:14:42 +02:00
Yuri Kuznetsov
ddbfa80f82 update initial avatar generator lib 2025-11-28 15:46:32 +02:00
Yuri Kuznetsov
da564bc43c list row without id, fallback to index 2025-11-28 15:35:54 +02:00
Yuri Kuznetsov
e4e3a4dc17 bcmath required 2025-11-28 15:33:46 +02:00
Yuri Kuznetsov
c1f3d2fae8 opp role update disabled 2025-11-28 15:26:56 +02:00
Yuri Kuznetsov
203e8de34b tooltip lang fixes 2025-11-28 12:50:24 +02:00
Yuri Kuznetsov
5f701104dd translations 2025-11-28 11:11:32 +02:00
Anthony Andriano
3d1befc9b8 Allow system templates to be customized using metadata (#3486)
* Allow system templates to be customized using metadata

* refactor

* removed defaultModuleName parameter

* revert an unintended change in a function call
2025-11-27 22:18:34 +02:00
Yuri Kuznetsov
d179b4b792 salutationField prop 2025-11-27 22:11:41 +02:00
Yuri Kuznetsov
5efcd6bd8a follow as collaborator 2025-11-27 20:53:00 +02:00
Yurii
3ac3f04e3d Merge branch 'fix' 2025-11-27 19:49:12 +02:00
Yuri Kuznetsov
b7a079b9d3 use assignment notification parameter for collaborator notifications 2025-11-27 17:16:43 +02:00
Yuri Kuznetsov
3581736bd5 add to collaborators notification 2025-11-27 16:48:40 +02:00
Yuri Kuznetsov
baeac78c5f pdf: currency symbol helper 2025-11-27 10:40:43 +02:00
Yuri Kuznetsov
dab2981c3c fix test 2025-11-27 10:40:26 +02:00
Yuri Kuznetsov
1d1e012991 htmlizer: currency format 2025-11-27 10:34:13 +02:00
Yurii
5b87d12449 frontend populate defaults before view 2025-11-20 17:30:14 +02:00
Yurii
00db2ab1c3 git changed package.json 2025-11-20 16:27:56 +02:00
dependabot[bot]
c8fae4fe71 Bump glob from 10.4.5 to 10.5.0 (#3526)
Bumps [glob](https://github.com/isaacs/node-glob) from 10.4.5 to 10.5.0.
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/node-glob/compare/v10.4.5...v10.5.0)

---
updated-dependencies:
- dependency-name: glob
  dependency-version: 10.5.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-19 09:15:08 +02:00
dependabot[bot]
6967498530 Bump js-yaml from 3.14.1 to 3.14.2 (#3525)
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.14.1 to 3.14.2.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/3.14.1...3.14.2)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 3.14.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-18 11:35:13 +02:00
dependabot[bot]
f0da407398 Bump glob from 10.3.10 to 11.1.0 (#3524)
Bumps [glob](https://github.com/isaacs/node-glob) from 10.3.10 to 11.1.0.
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/node-glob/compare/v10.3.10...v11.1.0)

---
updated-dependencies:
- dependency-name: glob
  dependency-version: 11.1.0
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-18 09:14:22 +02:00
Usame Beşir
83439e5384 fix missing value of entityType variable (#3523) 2025-11-17 12:06:19 +02:00
Yuri Kuznetsov
1df75fcece currencyAttribute prop 2025-11-15 13:18:31 +02:00
dependabot[bot]
19fe3d68a0 Bump js-yaml from 3.13.1 to 4.1.1 (#3521)
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.13.1 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/3.13.1...4.1.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-14 16:59:22 +02:00
Yuri Kuznetsov
974ea5f353 Merge branch 'master' of https://github.com/espocrm/espocrm 2025-11-14 15:26:38 +02:00
Yuri Kuznetsov
804c9622a6 Merge branch 'fix' 2025-11-14 15:26:30 +02:00
Yuri Kuznetsov
5ce2e0b6dc 9.2.5 2025-11-14 15:16:05 +02:00
Anton Slyzhko
445ea1f240 Fix incorrect alias in subscriptionExclude join (#3520) 2025-11-14 14:51:47 +02:00
Yuri Kuznetsov
94d2f6aabb array field: override allowCustomOptions false 2025-11-13 18:12:26 +02:00
Yuri Kuznetsov
c426a637fe email address add impr 2025-11-13 18:11:02 +02:00
Yuri Kuznetsov
9e78d4cad3 no-select 2025-11-13 18:03:00 +02:00
Yuri Kuznetsov
08fecd2dc0 search menu check icon fix 2025-11-13 17:56:06 +02:00
Yuri Kuznetsov
6dfbb08ce6 Merge branch 'fix' of https://github.com/espocrm/espocrm into fix 2025-11-13 17:25:45 +02:00
Yuri Kuznetsov
610c1004aa jsdoc fix 2025-11-13 17:25:10 +02:00
Shaikh Naasir
26ee35cb7d Fix typo in accessCheckCommand description (#3519)
This pull request fixes a minor typo in the WebSocket schema description:

Changed 'patameter' to 'parameter'.
No functional changes were made. Purely a documentation correction.
2025-11-13 16:07:22 +02:00
dependabot[bot]
50eecc891f Bump symfony/http-foundation from 6.4.18 to 6.4.29 (#3516)
Bumps [symfony/http-foundation](https://github.com/symfony/http-foundation) from 6.4.18 to 6.4.29.
- [Release notes](https://github.com/symfony/http-foundation/releases)
- [Changelog](https://github.com/symfony/http-foundation/blob/7.3/CHANGELOG.md)
- [Commits](https://github.com/symfony/http-foundation/compare/v6.4.18...v6.4.29)

---
updated-dependencies:
- dependency-name: symfony/http-foundation
  dependency-version: 6.4.29
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-13 07:59:08 +02:00
Yuri Kuznetsov
0a69f46e14 schema 2025-11-12 15:07:42 +02:00
Yuri Kuznetsov
e66d7fc367 schema 2025-11-11 23:07:43 +02:00
Yuri Kuznetsov
e311ac6dbb fix width in layouts 2025-11-11 22:00:27 +02:00
Yuri Kuznetsov
9901070fb1 fix layout 2025-11-11 08:14:35 +02:00
Yuri Kuznetsov
379a2d22f3 autocomplete suggestion min width 2025-11-08 20:53:02 +02:00
Yuri Kuznetsov
fc7c949cf3 link field: foreign name attribute 2025-11-08 20:31:46 +02:00
Yuri Kuznetsov
f1f0f3ea9a process dynamic logic if model default preparator is used 2025-11-07 16:00:16 +02:00
Yuri Kuznetsov
f1c2e3049f js doc fix 2025-11-07 15:37:39 +02:00
Yuri Kuznetsov
d036df059e valid usage 2025-11-06 19:37:12 +02:00
Yuri Kuznetsov
748392ab7f personal email folder mapping 2025-11-05 15:05:34 +02:00
Yuri Kuznetsov
683f86806f curl error 2025-11-05 12:25:41 +02:00
Yuri Kuznetsov
7de690c425 curl error details 2025-11-05 12:18:45 +02:00
Yuri Kuznetsov
9a6e3e5ebd update php in readme 2025-11-02 11:37:30 +02:00
Yuri Kuznetsov
65d3c96387 update test workflows 2025-11-02 11:31:20 +02:00
Yuri Kuznetsov
865ac27cd9 drop php 8.2 2025-11-02 11:29:23 +02:00
Yuri Kuznetsov
f08fb723d6 merge 2025-11-02 11:16:23 +02:00
Yuri Kuznetsov
c1c4a2bedc controller name check 2025-11-01 16:04:19 +02:00
Yuri Kuznetsov
876b74aefc loader error callback fix 2025-11-01 15:53:04 +02:00
Yuri Kuznetsov
be9e88aa2d foreign access filters support collaborators and multiple assigned users 2025-10-31 13:19:55 +02:00
Yuri Kuznetsov
15ff1dc6eb audited fields 2025-10-31 08:50:09 +02:00
Yuri Kuznetsov
63e31d33bb document fields audited 2025-10-31 08:43:19 +02:00
Yuri Kuznetsov
ee2a0e888c pdf template scope label 2025-10-30 18:30:21 +02:00
Yuri Kuznetsov
4d830e76b0 pdf filename 2025-10-30 18:26:01 +02:00
Yuri Kuznetsov
6e2416dc56 fix kanban menu with star 2025-10-30 17:00:57 +02:00
Yuri Kuznetsov
3e23994991 kanban support options reference 2025-10-30 16:23:54 +02:00
Yuri Kuznetsov
65d487d72e kanban event fix 2025-10-30 16:08:44 +02:00
Yuri Kuznetsov
badb2c28cc update dompdf 2025-10-30 15:33:23 +02:00
Yuri Kuznetsov
e58a2abd2b update libs 2025-10-30 15:26:09 +02:00
Yuri Kuznetsov
bec5dc841a Merge branch 'fix' 2025-10-30 15:17:34 +02:00
Yuri Kuznetsov
33451a1118 lead capture fields ui fix 2025-10-30 14:45:28 +02:00
Yuri Kuznetsov
b98f535634 formula user update type check 2025-10-30 14:00:57 +02:00
Yuri Kuznetsov
b57969b017 import label fix 2025-10-30 13:15:10 +02:00
Yuri Kuznetsov
252240f11b mass convert currency catch conflict 2025-10-30 13:13:43 +02:00
Yuri Kuznetsov
20391bee3e mass convert currency catch bad request 2025-10-30 13:13:18 +02:00
Yuri Kuznetsov
3a22e517b5 ref 2025-10-30 13:09:56 +02:00
Yuri Kuznetsov
4a71972d60 Merge branch 'fix' 2025-10-30 13:03:58 +02:00
bfzgaier
90d7b99936 fix Cannot access protected property id (#3506) 2025-10-30 13:03:44 +02:00
Yuri Kuznetsov
fb6fc00347 numberic string as multiplier 2025-10-30 13:02:40 +02:00
Yuri Kuznetsov
d8fa506599 false if not strings 2025-10-30 12:13:15 +02:00
Yuri Kuznetsov
301944f52d Merge branch 'master' of https://github.com/espocrm/espocrm 2025-10-30 12:06:55 +02:00
Yuri Kuznetsov
e1a5ed86e7 decimal field type 2025-10-30 12:03:49 +02:00
Anton Slyzhko
86215d0094 int getMinValue fix (#3507)
Fix getMinValue logic that overwrote valid minValue due to wrong null comparison
2025-10-30 11:29:47 +02:00
bfzgaier
5d3201260a fix Cannot access protected property id (#3506) 2025-10-30 10:27:58 +02:00
Yuri Kuznetsov
f75ed7e279 docs 2025-10-30 09:52:56 +02:00
Yuri Kuznetsov
94d433d698 fix order 2025-10-29 21:39:35 +02:00
Yuri Kuznetsov
7838d2e480 ref 2025-10-29 21:34:00 +02:00
Yuri Kuznetsov
f04738c963 currencyRate in state config 2025-10-29 21:24:43 +02:00
Yuri Kuznetsov
1521168cf3 Merge branch 'fix' 2025-10-29 21:20:08 +02:00
Yuri Kuznetsov
36f03f0a76 fix schema diff for decimal 2025-10-26 12:58:27 +02:00
Yuri Kuznetsov
a141a664c6 default decimal to string 2025-10-26 12:38:06 +02:00
Yuri Kuznetsov
fc221f8964 Merge branch 'fix' 2025-10-26 11:28:24 +02:00
Yuri Kuznetsov
0a1b7a9817 create builder method 2025-10-26 11:22:27 +02:00
Yuri Kuznetsov
47b9d35153 default order in relations 2025-10-26 11:13:50 +02:00
Yuri Kuznetsov
169e6b53be default template value 2025-10-26 11:09:06 +02:00
Yuri Kuznetsov
9935a6cd11 default template value 2025-10-26 10:29:05 +02:00
Yuri Kuznetsov
86a43a703c test disabled field 2025-10-26 09:03:49 +02:00
Yuri Kuznetsov
419481b8a1 mass update: do not list disabled fields 2025-10-25 20:44:25 +03:00
Yuri Kuznetsov
018da93de3 disabled restrict 2025-10-25 20:35:48 +03:00
Yuri Kuznetsov
3052d548f5 Merge branch 'fix' 2025-10-25 19:34:08 +03:00
Yuri Kuznetsov
02f1e94c86 fix link category parent field 2025-10-25 17:33:41 +03:00
Yuri Kuznetsov
0d4d4dc9ed category folders fetch on refresh 2025-10-25 17:25:13 +03:00
Yuri Kuznetsov
d69cfd8b31 typo 2025-10-25 12:51:26 +03:00
Yuri Kuznetsov
599646c397 metadata aclDependency anyScopeList 2025-10-25 12:47:21 +03:00
Yuri Kuznetsov
5d90911e26 enable stars for contacts 2025-10-25 10:23:21 +03:00
Yuri Kuznetsov
4e0d5a2267 schema 2025-10-25 10:22:56 +03:00
Yuri Kuznetsov
58a30fe56b Merge branch 'stable' 2025-10-23 10:58:29 +03:00
Yuri Kuznetsov
5e2544a192 Merge branch 'fix' 2025-10-22 09:02:41 +03:00
Usame Beşir
fadaf5891e fix oauth refresh token check (#3498) 2025-10-21 20:00:23 +03:00
Yuri Kuznetsov
d75bd20ffc Merge branch 'stable' 2025-10-21 11:37:06 +03:00
Yuri Kuznetsov
2e59cd4653 drop alias usage 2025-10-06 10:42:55 +03:00
Yuri Kuznetsov
70c28d9a78 ref 2025-10-04 14:49:39 +03:00
Yuri Kuznetsov
e4157e5ce9 copy to clipboard secret name 2025-10-04 13:48:38 +03:00
Yuri Kuznetsov
1a90cf149f Merge branch 'fix' 2025-10-04 13:24:05 +03:00
Yuri Kuznetsov
e6611e1658 secret function change 2025-10-04 13:21:10 +03:00
Usame Beşir
9361046216 Add getSecret formula function (#3481)
* add getSecret formula function

* simplify getSecret method by removing unnecessary null check

* update process method to allow nullable return type

* rename getSecret function to ext\appSecret\get
2025-10-04 13:13:59 +03:00
Yuri Kuznetsov
6fe977b2db Merge branch 'fix' 2025-10-02 11:48:56 +03:00
Yuri Kuznetsov
11da4d0d81 create post edit view change 2025-10-01 12:12:14 +03:00
Yuri Kuznetsov
9790a7ee6f Merge branch 'state-config' 2025-10-01 10:20:59 +03:00
Yuri Kuznetsov
20474a9d3e state config 2025-10-01 10:20:47 +03:00
Yuri Kuznetsov
258e827db3 Merge branch 'fix' 2025-09-30 18:48:59 +03:00
Yuri Kuznetsov
3c81bf93e3 cs 2025-09-30 14:34:31 +03:00
Yuri Kuznetsov
575a63b22c overridden typed validator honor validation value 2025-09-30 12:56:30 +03:00
Yuri Kuznetsov
ec5bc2f6f2 notify about reactions if not followed 2025-09-30 12:21:40 +03:00
4875 changed files with 41898 additions and 12063 deletions

4
.github/SECURITY.md vendored
View File

@@ -4,6 +4,10 @@
If you believe you have discovered a vulnerability in EspoCRM, please contacts us via [this](https://www.espocrm.com/contacts/) or [this](https://www.espocrm.com/support/) forms. Or create a private vulnerability report on GitHub.
### LLM slop
Low-effort, LLM-generated reports are not allowed. In such cases, if it is evident that the author does not understand the subject they submitted, the account will be blocked.
## Supported versions
For severe vulnerabilities we provide fixes for 2 minor versions (the second number in the version string) back from the current stable version.

View File

@@ -33,7 +33,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.3']
php-versions: ['8.4']
branches: ['master']
steps:

View File

@@ -27,7 +27,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['8.2', '8.4']
php-versions: ['8.3', '8.5']
branches: ['master']
steps:

View File

@@ -26,7 +26,7 @@ jobs:
runs-on: ubuntu-24.04
strategy:
matrix:
php-versions: ['8.2', '8.3', '8.4']
php-versions: ['8.3', '8.4', '8.5']
steps:
- uses: actions/checkout@v2

View File

@@ -7,6 +7,7 @@
<option name="GROUP_USE_WRAP" value="2" />
<option name="VARIABLE_NAMING_STYLE" value="CAMEL_CASE" />
<option name="KEEP_RPAREN_AND_LBRACE_ON_ONE_LINE" value="true" />
<option name="SPACE_BEFORE_SHORT_CLOSURE_LEFT_PARENTHESIS" value="true" />
<option name="FORCE_EMPTY_METHODS_IN_ONE_LINE" value="true" />
</PHPCodeStyleSettings>
<codeStyleSettings language="JSON">
@@ -19,6 +20,8 @@
<option name="KEEP_CONTROL_STATEMENT_IN_ONE_LINE" value="false" />
<option name="ALIGN_MULTILINE_PARAMETERS" value="false" />
<option name="ALIGN_MULTILINE_FOR" value="false" />
<option name="SPACE_AROUND_UNARY_OPERATOR" value="true" />
<option name="SPACE_AFTER_TYPE_CAST" value="true" />
<option name="METHOD_PARAMETERS_RPAREN_ON_NEXT_LINE" value="true" />
<option name="METHOD_CALL_CHAIN_WRAP" value="5" />
</codeStyleSettings>

View File

@@ -2,7 +2,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -19,12 +19,24 @@ You can try the CRM on an online [demo](https://www.espocrm.com/demo/).
### Requirements
* PHP 8.2 - 8.4;
* PHP 8.3 - 8.5;
* MySQL 8.0 (and later), or MariaDB 10.3 (and later);
* PostgreSQL 15 (and later).
For more information about server configuration, see [this article](https://docs.espocrm.com/administration/server-configuration/).
### Download
[Download](https://www.espocrm.com/download/) the latest release from our website or from GitHub [releases](https://github.com/espocrm/espocrm/releases).
### Release notes
Release notes are available at GitHub [releases](https://github.com/espocrm/espocrm/releases).
### Documentation
See the [documentation](https://docs.espocrm.com) for administrators, users and developers.
### Why EspoCRM?
* Open-source transparency. EspoCRM's source code is open and accessible, so anyone can inspect it and see how data is being managed within the CRM.
@@ -47,18 +59,6 @@ See installation instructions:
* [Installation with Docker](https://docs.espocrm.com/administration/docker/installation/)
* [Installation with Traefik](https://docs.espocrm.com/administration/docker/traefik/)
### Download
[Download](https://www.espocrm.com/download/) the latest release from our website. You can also download the latest and previous release packages from GitHub [releases](https://github.com/espocrm/espocrm/releases).
### Release notes
Release notes are available at GitHub [releases](https://github.com/espocrm/espocrm/releases).
### Documentation
See the [documentation](https://docs.espocrm.com) for administrators, users and developers.
### Bug reporting
Create a [GitHub issue](https://github.com/espocrm/espocrm/issues/new/choose) or post on our [forum](https://forum.espocrm.com/forum/bug-reports).

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -242,6 +242,11 @@ class Binding implements BindingProcessor
'Espo\\Core\\Utils\\Config\\ApplicationConfig',
'applicationConfig'
);
$binder->bindService(
'Espo\\Core\\Session\\Session',
'session'
);
}
private function bindCore(Binder $binder): void

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -0,0 +1,79 @@
<?php
/************************************************************************
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero 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 Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
namespace Espo\Classes\Acl\CurrencyRecordRate;
use Espo\Core\Acl\AccessEntityCREDChecker;
use Espo\Core\Acl\DefaultAccessChecker;
use Espo\Core\Acl\ScopeData;
use Espo\Core\Acl\Table;
use Espo\Core\Acl\Traits\DefaultAccessCheckerDependency;
use Espo\Entities\CurrencyRecordRate;
use Espo\Entities\User;
use Espo\ORM\Entity;
/**
* @implements AccessEntityCREDChecker<CurrencyRecordRate>
*/
class AccessChecker implements AccessEntityCREDChecker
{
use DefaultAccessCheckerDependency;
public function __construct(
private DefaultAccessChecker $defaultAccessChecker,
) {}
public function checkCreate(User $user, ScopeData $data): bool
{
if ($data->getEdit() === Table::LEVEL_YES) {
return true;
}
return false;
}
public function checkDelete(User $user, ScopeData $data): bool
{
if ($data->getEdit() === Table::LEVEL_YES) {
return true;
}
return false;
}
public function checkEntityCreate(User $user, Entity $entity, ScopeData $data): bool
{
return $this->checkCreate($user, $data);
}
public function checkEntityDelete(User $user, Entity $entity, ScopeData $data): bool
{
return $this->checkDelete($user, $data);
}
}

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -0,0 +1,59 @@
<?php
/************************************************************************
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero 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 Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
namespace Espo\Classes\AppParams;
use Espo\Core\Currency\ConfigDataProvider;
use Espo\Core\Utils\NumberUtil;
use Espo\Tools\App\AppParam;
use stdClass;
/**
* @noinspection PhpUnused
*/
class CurrencyRates implements AppParam
{
private const int PRECISION = 6;
public function __construct(
private ConfigDataProvider $configDataProvider,
private NumberUtil $numberUtil,
) {}
public function get(): stdClass
{
$rates = $this->configDataProvider->getCurrencyRates()->toAssoc();
foreach ($rates as $code => $value) {
$rates[$code] = $this->numberUtil->format($value, self::PRECISION, '.', '');
}
return (object) $rates;
}
}

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -35,7 +35,7 @@ use Espo\Core\Console\Exceptions\ArgumentNotSpecified;
use Espo\Core\Console\Exceptions\InvalidArgument;
use Espo\Core\Console\IO;
use Espo\Core\Exceptions\Error;
use Espo\Core\FieldProcessing\NextNumber\BeforeSaveProcessor;
use Espo\Core\FieldProcessing\NextNumber\Processor;
use Espo\Core\Name\Field;
use Espo\Core\ORM\Entity as CoreEntity;
use Espo\Core\ORM\Repository\Option\SaveOption;
@@ -44,11 +44,11 @@ use Espo\ORM\Query\Part\Order;
class PopulateNumbers implements Command
{
private BeforeSaveProcessor $beforeSaveProcessor;
private Processor $beforeSaveProcessor;
private EntityManager $entityManager;
public function __construct(
BeforeSaveProcessor $beforeSaveProcessor,
Processor $beforeSaveProcessor,
EntityManager $entityManager
) {
$this->beforeSaveProcessor = $beforeSaveProcessor;

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -0,0 +1,63 @@
<?php
/************************************************************************
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero 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 Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
namespace Espo\Classes\FieldProcessing\CurrencyRecord;
use Espo\Core\Currency\ConfigDataProvider;
use Espo\Core\FieldProcessing\Loader;
use Espo\Core\FieldProcessing\Loader\Params;
use Espo\Entities\CurrencyRecord;
use Espo\ORM\Entity;
use ValueError;
/**
* @implements Loader<CurrencyRecord>
*/
class IsBase implements Loader
{
public function __construct(
private ConfigDataProvider $configDataProvider,
) {}
public function process(Entity $entity, Params $params): void
{
try {
$code = $entity->getCode();
} catch (ValueError) {
$entity->setIsBase(false);
return;
}
$isBase = $code === $this->configDataProvider->getBaseCurrency();
$entity->setIsBase($isBase);
}
}

View File

@@ -0,0 +1,60 @@
<?php
/************************************************************************
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero 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 Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
namespace Espo\Classes\FieldProcessing\CurrencyRecord;
use Espo\Core\FieldProcessing\Loader;
use Espo\Core\FieldProcessing\Loader\Params;
use Espo\Core\Utils\Language;
use Espo\Entities\CurrencyRecord;
use Espo\ORM\Entity;
use ValueError;
/**
* @implements Loader<CurrencyRecord>
*/
class Label implements Loader
{
public function __construct(
private Language $defaultLanguage
) {}
public function process(Entity $entity, Params $params): void
{
try {
$code = $entity->getCode();
} catch (ValueError) {
return;
}
$name = $this->defaultLanguage->translateLabel($code, 'names', 'Currency');
$entity->setLabel($name);
}
}

View File

@@ -0,0 +1,57 @@
<?php
/************************************************************************
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero 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 Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
namespace Espo\Classes\FieldProcessing\CurrencyRecord;
use Espo\Core\Currency\ConfigDataProvider;
use Espo\Core\FieldProcessing\Loader;
use Espo\Core\FieldProcessing\Loader\Params;
use Espo\Entities\CurrencyRecord;
use Espo\ORM\Entity;
use Espo\Tools\Currency\RateEntryProvider;
/**
* @implements Loader<CurrencyRecord>
*/
class Rate implements Loader
{
public function __construct(
private RateEntryProvider $rateEntryProvider,
private ConfigDataProvider $configDataProvider,
) {}
public function process(Entity $entity, Params $params): void
{
$rate = $entity->getCode() !== $this->configDataProvider->getBaseCurrency() ?
$this->rateEntryProvider->getCurrentRateEntry($entity)?->getRate() :
'1';
$entity->setRate($rate);
}
}

View File

@@ -0,0 +1,57 @@
<?php
/************************************************************************
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero 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 Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
namespace Espo\Classes\FieldProcessing\CurrencyRecord;
use Espo\Core\Currency\ConfigDataProvider;
use Espo\Core\FieldProcessing\Loader;
use Espo\Core\FieldProcessing\Loader\Params;
use Espo\Entities\CurrencyRecord;
use Espo\ORM\Entity;
use Espo\Tools\Currency\RateEntryProvider;
/**
* @implements Loader<CurrencyRecord>
*/
class RateDate implements Loader
{
public function __construct(
private RateEntryProvider $rateEntryProvider,
private ConfigDataProvider $configDataProvider,
) {}
public function process(Entity $entity, Params $params): void
{
$date = $entity->getCode() !== $this->configDataProvider->getBaseCurrency() ?
$this->rateEntryProvider->getCurrentRateEntry($entity)?->getDate() :
null;
$entity->setRateDate($date);
}
}

View File

@@ -0,0 +1,59 @@
<?php
/************************************************************************
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero 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 Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
namespace Espo\Classes\FieldProcessing\CurrencyRecord;
use Espo\Core\FieldProcessing\Loader;
use Espo\Core\FieldProcessing\Loader\Params;
use Espo\Core\Utils\Metadata;
use Espo\Entities\CurrencyRecord;
use Espo\ORM\Entity;
use ValueError;
/**
* @implements Loader<CurrencyRecord>
*/
class Symbol implements Loader
{
public function __construct(
private Metadata $metadata,
) {}
public function process(Entity $entity, Params $params): void
{
try {
$code = $entity->getCode();
} catch (ValueError) {
return;
}
$symbol = $this->metadata->get("app.currency.symbolMap.$code");
$entity->setSymbol($symbol);
}
}

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Copyright (C) 2014-2026 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

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