Compare commits

...

1133 Commits
9.0.7 ... 9.2.3

Author SHA1 Message Date
Yuri Kuznetsov
d13a1ffbc7 9.2.3 2025-10-21 11:30:08 +03:00
Yuri Kuznetsov
986be9f189 scroll gutter for record modals 2025-10-21 10:17:13 +03:00
Yuri Kuznetsov
40f13f7a3d change password template fix 2025-10-21 10:03:51 +03:00
Yuri Kuznetsov
2de3c97f8d edit dashboard templte fix 2025-10-21 10:01:12 +03:00
Yuri Kuznetsov
3b6fd0d363 modal record wide css fix 2025-10-21 10:01:01 +03:00
Yuri Kuznetsov
a7586e92a1 audit data 2025-10-20 18:19:22 +03:00
Yuri Kuznetsov
076644db85 auditView param 2025-10-20 13:06:57 +03:00
Yuri Kuznetsov
7eb139f35d small color correction 2025-10-18 19:43:06 +03:00
Yuri Kuznetsov
6f22686319 hazy logo remove 2025-10-18 19:32:18 +03:00
Yuri Kuznetsov
298307f613 color fix 2025-10-18 19:31:43 +03:00
Yuri Kuznetsov
664faa81ca narrower record full width in modal 2025-10-18 11:18:40 +03:00
Yuri Kuznetsov
be2dd74c43 do not use full width 2025-10-18 10:33:28 +03:00
Yuri Kuznetsov
d2ae211e53 small layout changes 2025-10-18 10:26:57 +03:00
Yuri Kuznetsov
e522d8d709 modal size changes 2025-10-18 10:26:51 +03:00
Yuri Kuznetsov
c5c191faa6 audit log email template 2025-10-17 18:00:32 +03:00
Yuri Kuznetsov
3ce4cd3bfc btm sm width 32px 2025-10-17 17:38:44 +03:00
Yuri Kuznetsov
e620a1195f dropdown-link-active-bg variable 2025-10-17 12:25:41 +03:00
Yuri Kuznetsov
880478689f foreign array fix 2025-10-16 15:47:31 +03:00
Yuri Kuznetsov
0d5d1710bf schema 2025-10-16 14:49:58 +03:00
Yuri Kuznetsov
0c7d795081 compact-form class 2025-10-16 13:06:28 +03:00
Yuri Kuznetsov
624bdb7192 less ref 2025-10-15 18:49:53 +03:00
Yuri Kuznetsov
db769d9c3e css ref 2025-10-15 18:33:36 +03:00
Yuri Kuznetsov
67045b12ac cleanup 2025-10-15 16:30:05 +03:00
Yuri Kuznetsov
e67ab0fd4d whitespace removal 2025-10-15 12:56:15 +03:00
Yuri Kuznetsov
99c64770dd theme name in body 2025-10-15 10:51:48 +03:00
Yuri Kuznetsov
ed60efcad4 hazyblue color tweak 2025-10-15 10:46:49 +03:00
Yuri Kuznetsov
443af201ed fix generate password special characters null 2025-10-14 20:34:55 +03:00
Yuri Kuznetsov
7a61dd096e fix ldap dynamic logic 2025-10-14 20:07:43 +03:00
Yuri Kuznetsov
9404c1d165 email update filter fix 2025-10-13 14:31:22 +03:00
Yuri Kuznetsov
2a76db6899 fix corrupted defs 2025-10-11 09:28:17 +03:00
Yuri Kuznetsov
915283d288 use all primary filter 2025-10-10 11:46:54 +03:00
Yuri Kuznetsov
483e6e9d5b apply all filter 2025-10-10 11:35:55 +03:00
Yuri Kuznetsov
046d94ceb8 update note ui impr 2025-10-09 10:42:51 +03:00
Yuri Kuznetsov
062008374d comment 2025-10-09 10:12:25 +03:00
Yuri Kuznetsov
df2f857197 prevent action handler fired twice 2025-10-09 09:24:09 +03:00
Yuri Kuznetsov
25c88259f8 secret function change 2025-10-04 13:23:43 +03:00
Usame Beşir
2ddfa39966 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:23:20 +03:00
Yuri Kuznetsov
ebec204d3a external account client manager using factory 2025-10-02 15:55:47 +03:00
Yuri Kuznetsov
b2a4f80408 9.2.2 2025-10-02 11:37:07 +03:00
Yuri Kuznetsov
9153fbf280 limit fields for status 2025-10-02 10:52:04 +03:00
Yuri Kuznetsov
cb16bc9254 ref 2025-10-02 10:43:35 +03:00
Yuri Kuznetsov
dc8f674248 notification index 2025-10-02 10:28:43 +03:00
Yuri Kuznetsov
803b07866a cast to object 2025-10-01 19:15:08 +03:00
Yuri Kuznetsov
50f422ded8 ignore state.php 2025-10-01 10:24:22 +03:00
Yuri Kuznetsov
25357d75d3 9.2.1 2025-09-30 18:40:40 +03:00
Yuri Kuznetsov
2cea39b5a9 do not use suppress amd in runtime 2025-09-30 17:31:29 +03:00
Yuri Kuznetsov
107571a544 fix schema 2025-09-29 10:51:14 +03:00
Yuri Kuznetsov
bacb824085 schema 2025-09-28 10:50:06 +03:00
Yuri Kuznetsov
3f9ca7aa78 link with avatar impr 2025-09-26 09:38:51 +03:00
Yuri Kuznetsov
9ce487fc90 autocomplete quick enter 2025-09-25 20:20:28 +03:00
Yuri Kuznetsov
3bbb54825c email template has one 2025-09-25 17:36:28 +03:00
Yuri Kuznetsov
68993e2448 htmlizer raw timezone fix 2025-09-25 17:24:12 +03:00
Yuri Kuznetsov
12fa090f61 ref 2025-09-25 17:20:09 +03:00
Yuri Kuznetsov
6d1a01a0d8 ref 2025-09-25 17:10:43 +03:00
Yuri Kuznetsov
670632d52b color change 2025-09-25 16:13:17 +03:00
Yuri Kuznetsov
2465a554f7 ref, clean 2025-09-25 16:03:09 +03:00
Yuri Kuznetsov
74cc701459 schema fix 2025-09-25 15:29:27 +03:00
Yuri Kuznetsov
125d84d3bf no load schema 2025-09-25 15:24:50 +03:00
Yuri Kuznetsov
1a0e674b81 filtersEnabled 2025-09-25 15:19:57 +03:00
Yuri Kuznetsov
fac125c9a9 lv_LV 2025-09-25 14:42:23 +03:00
Yuri Kuznetsov
7bad86f65d lt_LT 2025-09-25 14:41:58 +03:00
Yuri Kuznetsov
d44b2992de it_IT 2025-09-25 14:41:38 +03:00
Yuri Kuznetsov
04c73a7870 ja_JP 2025-09-25 14:41:15 +03:00
Yuri Kuznetsov
66fbfe193c fr_FR 2025-09-25 14:39:47 +03:00
Yuri Kuznetsov
3de036cca8 de_DE 2025-09-25 14:38:06 +03:00
Yurii Kuznietsov
81a9af78ff Merge pull request #3474 from rabiibrahimi/master
Fix: remove extra whitespace in constant reference
2025-09-25 12:47:30 +03:00
rabiibrahimi
e35ec52d74 Fix: remove extra whitespace in constant reference 2025-09-25 10:37:43 +01:00
Yuri Kuznetsov
fa85d9e132 websocket changes 2025-09-25 12:14:01 +03:00
Yuri Kuznetsov
aaf30cf694 warn 2025-09-24 22:28:45 +03:00
Yuri Kuznetsov
02fbda798f mass update default team fix 2025-09-24 10:04:41 +03:00
Yuri Kuznetsov
e9d5a04c73 comment 2025-09-23 14:27:47 +03:00
Yuri Kuznetsov
f5e145a971 notificationGrouping param 2025-09-23 14:26:36 +03:00
Yuri Kuznetsov
c446499ee9 cleanup 2025-09-23 13:28:10 +03:00
Yuri Kuznetsov
87c23f371b default link field use field entity 2025-09-23 13:13:14 +03:00
Yuri Kuznetsov
eb5d78e20d version 2025-09-23 09:56:55 +03:00
Yuri Kuznetsov
cd5ddb462e docs 2025-09-22 10:48:51 +03:00
Yuri Kuznetsov
1c155c4e19 Merge branch 'fix' 2025-09-22 10:08:03 +03:00
Yuri Kuznetsov
28356c6f13 9.1.9 2025-09-22 09:51:44 +03:00
Yuri Kuznetsov
45ea32e1e2 Merge branch 'fix' 2025-09-22 09:17:22 +03:00
Yuri Kuznetsov
58df349f43 move content type check to user 2025-09-20 13:13:03 +03:00
Yuri Kuznetsov
a53f1fdc46 cleanup 2025-09-19 17:43:27 +03:00
Yuri Kuznetsov
cc16f0fd6c block basic dialog if post 2025-09-19 17:41:04 +03:00
Yuri Kuznetsov
b5ff37bc5a Merge branch 'fix' 2025-09-19 17:20:10 +03:00
Yuri Kuznetsov
601d6a6743 content type check 2025-09-19 17:19:49 +03:00
Yuri Kuznetsov
a31d231a6b fix test 2025-09-19 13:56:21 +03:00
Yuri Kuznetsov
2015e4edee attachment modified at 2025-09-19 09:30:45 +03:00
Yuri Kuznetsov
67ea7859ff ref 2025-09-19 09:29:43 +03:00
Yuri Kuznetsov
9aa3e3213f remove in category search 2025-09-18 18:21:24 +03:00
Yuri Kuznetsov
a5baf82ddc catch forbidden 2025-09-18 18:21:01 +03:00
Yuri Kuznetsov
d4eccdb362 json array required 2025-09-18 15:53:10 +03:00
Yuri Kuznetsov
708595beae ref 2025-09-16 18:02:18 +03:00
Yuri Kuznetsov
0ec2112b03 htmlizer has one 2025-09-16 18:01:37 +03:00
Yuri Kuznetsov
c630db68d2 add name to libs 2025-09-16 14:50:53 +03:00
Yurii Kuznietsov
93150b4419 Merge pull request #3470 from bandtank/master
Add value to Item in default case of DefaultDateTimeItemTransformer
2025-09-12 20:11:41 +03:00
Anthony Andriano
986e028918 add value to Item in default case 2025-09-12 10:45:19 -06:00
Yuri Kuznetsov
419e8a15c8 Merge branch 'fix' 2025-09-09 14:57:57 +03:00
Yuri Kuznetsov
e350255bd7 fix null check 2025-09-09 14:57:44 +03:00
Yurii Kuznietsov
cc1b864ab9 Merge pull request #3469 from AntonSlyzhko/htmlizer-translation-fix
Fix Htmlizer translation for enum fields
2025-09-09 14:51:58 +03:00
Yuri Kuznetsov
94993d6d22 comment 2025-09-09 14:51:37 +03:00
Yuri Kuznetsov
e147d25dbf before upgrade check 2025-09-09 14:43:14 +03:00
Yuri Kuznetsov
68f7598a6a comment 2025-09-09 14:26:18 +03:00
AntonSlyzhko
8ee66c2d08 Fix Htmlizer translation for enum fields 2025-09-09 14:23:56 +03:00
Yuri Kuznetsov
efe30172e6 fix relate 2025-09-09 13:08:37 +03:00
Yuri Kuznetsov
af2c05f03e html fix 2025-09-09 11:56:18 +03:00
Yuri Kuznetsov
afa16365f2 data-is-dark 2025-09-09 10:23:28 +03:00
Yuri Kuznetsov
85946dbbed ref 2025-09-09 10:17:51 +03:00
Yuri Kuznetsov
d0e9798389 css fix 2025-09-07 12:17:00 +03:00
Yuri Kuznetsov
ea6b4a14b6 comment 2025-09-05 16:12:40 +03:00
Yuri Kuznetsov
5ba36b11d7 comment 2025-09-05 11:44:37 +03:00
Yuri Kuznetsov
9d305bb545 cs, ref 2025-09-05 11:40:27 +03:00
Yuri Kuznetsov
4d8fdf5c3c get rid of umask 2025-09-05 11:24:02 +03:00
Yuri Kuznetsov
b9893580f1 assignment users avatar fix 2025-09-04 20:41:04 +03:00
Yuri Kuznetsov
dd27b9abf2 fix task calendar websocket hook 2025-09-04 19:03:01 +03:00
Yuri Kuznetsov
300b2ae899 fix calendar websocket hook 2025-09-04 19:01:35 +03:00
Yuri Kuznetsov
30df71e5a4 typo fix 2025-09-04 17:32:48 +03:00
Yuri Kuznetsov
72080af45d dummy primary filter all 2025-09-04 17:16:53 +03:00
Yuri Kuznetsov
29a56f8952 default template type props 2025-09-03 09:57:41 +03:00
Yuri Kuznetsov
78fd4fd3de Merge branch 'master' of https://github.com/espocrm/espocrm 2025-09-02 09:06:49 +03:00
Yurii Kuznietsov
1d6ea0bfcf Merge pull request #3466 from Kharg/entity-removed-typo
entity-removed.js typo
2025-09-02 09:06:30 +03:00
Andrew Fontana
b4e8659efe entity-removed.js typo 2025-09-01 22:35:51 +02:00
Yuri Kuznetsov
e78b59fc40 format function throw exception 2025-09-01 16:02:53 +03:00
Yuri Kuznetsov
988a677f4c websocket improvements 2025-09-01 14:11:19 +03:00
Yuri Kuznetsov
495d2ccfbc entity methods return static 2025-09-01 08:58:17 +03:00
Yuri Kuznetsov
d94e758b8f metadata force append client lists 2025-08-31 15:59:21 +03:00
Yuri Kuznetsov
c5c7e0eda7 strip whitespaces in generated file names 2025-08-29 20:29:26 +03:00
Yuri Kuznetsov
85843a4dd0 cs 2025-08-29 20:18:59 +03:00
Yuri Kuznetsov
947dc396d0 disable port number formatting 2025-08-29 09:39:52 +03:00
Yuri Kuznetsov
ccb54fbdc8 schema 2025-08-29 09:37:15 +03:00
Yuri Kuznetsov
b5243d4829 Merge branch 'fix' 2025-08-27 15:53:38 +03:00
Yuri Kuznetsov
3608af3836 currency value object support int 2025-08-27 15:53:21 +03:00
Yuri Kuznetsov
2496d5e14f currency value object support int 2025-08-27 15:52:21 +03:00
Yuri Kuznetsov
cbc39cefe4 (c) source files 2025-08-26 20:10:28 +03:00
Yuri Kuznetsov
32c2a593f3 (c) update 2025-08-26 20:07:19 +03:00
Yuri Kuznetsov
de1ef5b7f3 update phpspreadsheet 2025-08-26 14:01:04 +03:00
Yuri Kuznetsov
b5e65ec5d8 id is not empty string check 2025-08-25 11:40:53 +03:00
Yuri Kuznetsov
285711a07a check id is string 2025-08-25 11:38:38 +03:00
Yuri Kuznetsov
607d9ba102 baseline role change warning 2025-08-22 17:30:03 +03:00
Yuri Kuznetsov
952694bb0e link select optional async 2025-08-22 17:29:52 +03:00
Yuri Kuznetsov
dc5d7a0a98 ref 2025-08-22 10:46:31 +03:00
Yuri Kuznetsov
74f267edb1 style fix 2025-08-22 10:46:11 +03:00
Yuri Kuznetsov
c4a61f9dc3 baseline role integration test 2025-08-22 10:33:51 +03:00
Yuri Kuznetsov
04bca8c3a7 ref 2025-08-22 10:33:38 +03:00
Yuri Kuznetsov
bb285bf69c baseline role 2025-08-22 10:10:00 +03:00
Yuri Kuznetsov
852345e004 ref 2025-08-21 20:10:14 +03:00
Yuri Kuznetsov
43af855e89 ref 2025-08-21 20:07:41 +03:00
Yuri Kuznetsov
a20b32ffda fix available reaction 2025-08-21 16:45:22 +03:00
Yuri Kuznetsov
28c2b69f21 ref 2025-08-21 11:46:31 +03:00
Yuri Kuznetsov
e76d77e703 ref 2025-08-21 11:03:15 +03:00
Yuri Kuznetsov
027bd3d062 date field refactor 2025-08-21 10:19:43 +03:00
Yurii Kuznietsov
9fa4007e65 Merge pull request #3457 from arkadiyasuratov/master
fix incorrect parent setting in compose modal
2025-08-19 18:10:27 +03:00
Arkadiy Asuratov
9f01ac29d0 fix incorrect parent setting in compose modal 2025-08-19 16:55:02 +02:00
Yuri Kuznetsov
6ff5640c00 fix modal title 2025-08-19 16:57:33 +03:00
Yuri Kuznetsov
b57cfe597f leadCaptureSiteUrl 2025-08-19 10:53:29 +03:00
Yuri Kuznetsov
ac10c06c02 ref 2025-08-19 10:44:19 +03:00
Yuri Kuznetsov
90c344a89c shortcut fixes 2025-08-19 10:28:54 +03:00
Yuri Kuznetsov
c92041b94a date time filter inclusive exclusive fix 2025-08-18 17:13:30 +03:00
Yuri Kuznetsov
6b7590770f last x days 1 second fix 2025-08-18 17:02:06 +03:00
Yuri Kuznetsov
b8ee2b934b date time range last second fix 2025-08-18 16:49:02 +03:00
Yuri Kuznetsov
e56d9411f0 suppress autoresponse only for non-email 2025-08-18 13:45:29 +03:00
Yuri Kuznetsov
c6185036d9 mass email auto submitted header skip for email type 2025-08-18 13:43:04 +03:00
Yuri Kuznetsov
5d35bde5b7 auto-submitted header usage 2025-08-18 13:00:03 +03:00
Yuri Kuznetsov
5c0d6fa9e8 auto reply in fielters layout 2025-08-18 12:15:35 +03:00
Yuri Kuznetsov
41e52c96fc auto reply on detail view 2025-08-18 12:02:32 +03:00
Yuri Kuznetsov
569f909362 fix test 2025-08-18 11:57:20 +03:00
Yuri Kuznetsov
f7729cdabf email auto reply field 2025-08-18 11:52:10 +03:00
Yuri Kuznetsov
c244f224b2 email: fix group folder archived not listed 2025-08-17 19:04:42 +03:00
Yuri Kuznetsov
948f1d2295 fix test 2025-08-17 14:22:20 +03:00
Yuri Kuznetsov
6a33ffc0fa drop select builder factory service 2025-08-16 18:22:57 +03:00
Yuri Kuznetsov
b05072d21e fix test 2025-08-16 14:13:20 +03:00
Yuri Kuznetsov
b78e87b3e3 fix email group folders in inbox 2025-08-16 12:15:30 +03:00
Yurii Kuznietsov
bcf39858c4 Merge pull request #3451 from traien/patch-4
keep user-addressed emails visible when routed to a Group Folder
2025-08-16 11:46:37 +03:00
Yuri Kuznetsov
b59dcac594 print pdf fix defs 2025-08-16 10:23:56 +03:00
Osama Bashir
9c21530cf7 change visibility of getUserGroupEmailFoldersIds method and add user context to query 2025-08-15 16:09:31 +03:00
Osama Bashir
6b07a2a939 fix phpstan No value type specified in iterable type 2025-08-15 14:37:30 +03:00
Osama Bashir
880b9949b7 keep user-addressed emails visible when routed to a Group Folder 2025-08-15 14:33:06 +03:00
Yuri Kuznetsov
f8f64412d9 link edit form change 2025-08-14 11:34:36 +03:00
Yuri Kuznetsov
494c6d9a27 fix test 2025-08-11 13:58:27 +03:00
Yuri Kuznetsov
9ee52dc469 ref 2025-08-10 16:00:22 +03:00
Yuri Kuznetsov
f1427222cf cleanup 2025-08-10 15:54:34 +03:00
Yuri Kuznetsov
f158501ed6 delete restorer 2025-08-10 15:52:59 +03:00
Yuri Kuznetsov
9fac1d6c51 ref 2025-08-10 15:27:05 +03:00
Yuri Kuznetsov
0f50142073 ref 2025-08-10 15:23:37 +03:00
Yuri Kuznetsov
c9a406f7f5 reminder: do not list to small if full day 2025-08-10 15:12:21 +03:00
Yuri Kuznetsov
944e504d7b ref 2025-08-10 15:01:15 +03:00
Yuri Kuznetsov
5d32456820 portal redirect trailing slash 2025-08-08 18:29:58 +03:00
Yuri Kuznetsov
b18c70bea3 ref 2025-08-08 18:13:27 +03:00
Yuri Kuznetsov
24f00dfa03 field manager param label translation 2025-08-08 11:15:07 +03:00
Yuri Kuznetsov
d32eea0e8a jsdocs 2025-08-08 10:52:25 +03:00
Yuri Kuznetsov
0975532b9c integration fields label translation 2025-08-08 10:40:18 +03:00
Yuri Kuznetsov
e0ab268624 ref 2025-08-08 10:30:18 +03:00
Yuri Kuznetsov
164713d2a8 fix safari dragging issue 2025-08-08 09:57:24 +03:00
Yuri Kuznetsov
cb87133fae calendar date scope support 2025-08-07 16:15:04 +03:00
Yuri Kuznetsov
2fa6162920 free-busy no date filed 2025-08-07 14:20:40 +03:00
Yuri Kuznetsov
d1de4135ec weak reference usage 2025-08-07 12:17:00 +03:00
Yuri Kuznetsov
f52ca3c524 mid dot usage 2025-08-07 12:17:00 +03:00
Yurii Kuznietsov
2f6c30c2a6 Merge pull request #3446 from espocrm/dependabot/npm_and_yarn/tmp-0.2.4
Bump tmp from 0.2.3 to 0.2.4
2025-08-06 20:30:52 +03:00
dependabot[bot]
561c623584 Bump tmp from 0.2.3 to 0.2.4
Bumps [tmp](https://github.com/raszi/node-tmp) from 0.2.3 to 0.2.4.
- [Changelog](https://github.com/raszi/node-tmp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/raszi/node-tmp/compare/v0.2.3...v0.2.4)

---
updated-dependencies:
- dependency-name: tmp
  dependency-version: 0.2.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-06 17:09:19 +00:00
Yuri Kuznetsov
bfd8846eeb markdown checkbox style 2025-08-05 18:29:07 +03:00
Yuri Kuznetsov
1842805f41 html layout fix 2025-08-05 00:09:21 +03:00
Yuri Kuznetsov
3fb824dd85 theme impr 2025-08-04 19:54:01 +03:00
Yuri Kuznetsov
a3e68c1505 theme impr 2025-08-01 19:22:33 +03:00
Yuri Kuznetsov
8662e8f4a6 theme impr 2025-08-01 18:39:23 +03:00
Yuri Kuznetsov
074eb7f5af theme impr 2025-08-01 17:45:27 +03:00
Yuri Kuznetsov
4b3ed0783e fix text 2025-08-01 15:09:12 +03:00
Yuri Kuznetsov
e88b8356d8 edit item shortcut 2025-08-01 15:07:34 +03:00
Yuri Kuznetsov
b4c80ecfed docs 2025-08-01 15:07:26 +03:00
Yuri Kuznetsov
76bf7dba23 items editable param 2025-08-01 15:00:38 +03:00
Yuri Kuznetsov
e2884aeb00 jsdocs 2025-08-01 14:21:31 +03:00
Yuri Kuznetsov
36a6acfdd2 array items editable 2025-08-01 14:11:27 +03:00
Yuri Kuznetsov
58ad7859d9 style 2025-08-01 13:18:50 +03:00
Yuri Kuznetsov
c2261feeec array drag handle 2025-08-01 11:27:09 +03:00
Yuri Kuznetsov
6e487345ec jsdocs 2025-08-01 09:50:40 +03:00
Yuri Kuznetsov
ecfec0e0f8 style ref, impr 2025-07-31 19:18:09 +03:00
Yuri Kuznetsov
03608a74d0 ref 2025-07-31 19:05:48 +03:00
Yuri Kuznetsov
a6491816bd remove Zaporizhzhia timezone 2025-07-30 15:45:09 +03:00
Yuri Kuznetsov
5301ce5b70 time zone enum option translations 2025-07-30 15:15:43 +03:00
Yuri Kuznetsov
3ae0c32270 Merge branch 'fix' 2025-07-30 15:03:39 +03:00
Yuri Kuznetsov
97eb0614dc remove Uzhhorod timezone 2025-07-30 15:03:24 +03:00
Yuri Kuznetsov
f1e3f07ee8 fix 2025-07-28 21:03:59 +03:00
Yuri Kuznetsov
b1af278364 from address in history 2025-07-25 15:51:34 +03:00
Yuri Kuznetsov
0331075d1e Merge branch 'fix' 2025-07-25 14:13:16 +03:00
Yuri Kuznetsov
7d0925de85 9.1.8 2025-07-25 14:02:42 +03:00
Yuri Kuznetsov
5d0350ef64 bool field web form 2025-07-25 11:33:15 +03:00
Yuri Kuznetsov
3ad57c4462 Merge branch 'fix' 2025-07-25 10:44:42 +03:00
Yuri Kuznetsov
d649181964 field loaders in the end 2025-07-25 09:47:10 +03:00
Yuri Kuznetsov
74fbedfb9a global search status 2025-07-24 20:26:15 +03:00
Yuri Kuznetsov
ee38f09665 getRecordsPerPage 2025-07-24 19:56:19 +03:00
Yuri Kuznetsov
914dc4aafe convert lead: user account from contact 2025-07-24 19:49:04 +03:00
Yuri Kuznetsov
7c5bb4b669 cs 2025-07-24 19:41:11 +03:00
Yuri Kuznetsov
27227cf51d service create for user usage 2025-07-24 19:37:46 +03:00
Yuri Kuznetsov
cce7ddbff2 no customization for utility field 2025-07-24 19:27:28 +03:00
Yuri Kuznetsov
f4889f3f5c ref 2025-07-24 17:28:29 +03:00
Yuri Kuznetsov
f1b529e68f Merge branch 'fix' 2025-07-24 17:06:45 +03:00
Yuri Kuznetsov
1c207e4445 fix avatar color 2025-07-24 11:51:06 +03:00
Yuri Kuznetsov
0dff4ac6b4 sanitize foreign fields 2025-07-24 10:38:11 +03:00
Yuri Kuznetsov
774143c5e2 consts 2025-07-24 10:38:01 +03:00
Yuri Kuznetsov
6e1786d000 set read only fix 2025-07-24 09:33:54 +03:00
Yuri Kuznetsov
700d95fad1 field setReadOnly fix 2025-07-24 09:13:45 +03:00
Yuri Kuznetsov
75f255117e prop 2025-07-24 09:07:32 +03:00
Yuri Kuznetsov
e8dfa31e57 Merge branch 'fix' 2025-07-24 08:49:33 +03:00
Yuri Kuznetsov
dd8c584f6f jp_JP language 2025-07-24 08:49:20 +03:00
Yuri Kuznetsov
2a57898088 Merge branch 'fix' 2025-07-23 11:27:17 +03:00
Yuri Kuznetsov
782f5e6b20 fix campaign stats query 2025-07-23 11:26:32 +03:00
Yuri Kuznetsov
e46540371a Merge branch 'master' of https://github.com/espocrm/espocrm 2025-07-23 10:50:53 +03:00
Yuri Kuznetsov
3bb0fcd146 campaign stats refresh fix 2025-07-23 10:50:43 +03:00
Yuri Kuznetsov
e3e101b9f6 Merge branch 'fix' 2025-07-23 10:39:05 +03:00
Yuri Kuznetsov
4a890e777c campaign stats sql fix 2025-07-23 10:37:33 +03:00
Yurii Kuznietsov
627dc9e505 Merge pull request #3435 from espocrm/dependabot/npm_and_yarn/form-data-4.0.4
Bump form-data from 4.0.0 to 4.0.4
2025-07-22 09:20:34 +03:00
dependabot[bot]
ee918a1fc7 Bump form-data from 4.0.0 to 4.0.4
---
updated-dependencies:
- dependency-name: form-data
  dependency-version: 4.0.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 23:04:12 +00:00
Yuri Kuznetsov
e2f0341eea attachment box style fix 2025-07-21 16:42:42 +03:00
Yuri Kuznetsov
b668f54a68 test 2025-07-21 16:09:27 +03:00
Yuri Kuznetsov
c1a23a9d49 language list fix 2025-07-21 16:06:41 +03:00
Yuri Kuznetsov
44333b81a1 cleanup 2025-07-21 14:47:18 +03:00
Yuri Kuznetsov
57bc86a17e language manager improvements 2025-07-21 14:38:08 +03:00
Yuri Kuznetsov
d15d41e829 Merge branch 'fix' 2025-07-21 10:56:43 +03:00
Yuri Kuznetsov
a5f69b8fd2 cs 2025-07-21 10:56:40 +03:00
Yuri Kuznetsov
370909de96 default side panel layout in layout set 2025-07-21 10:37:48 +03:00
Yuri Kuznetsov
5c35d3d856 style fix 2025-07-21 10:29:24 +03:00
Yuri Kuznetsov
6d8c89a041 attachment ui impr 2025-07-17 18:57:07 +03:00
Yuri Kuznetsov
1323e6a581 stlye fix 2025-07-17 17:55:46 +03:00
Yuri Kuznetsov
680bae4fed modal shortcuts suppress 2025-07-17 09:33:46 +03:00
Yuri Kuznetsov
3443a6a052 ref 2025-07-17 09:31:09 +03:00
Yuri Kuznetsov
480de128d8 css fix 2025-07-16 12:58:49 +03:00
Yuri Kuznetsov
c697fc29ce task date end color sync with status 2025-07-15 09:25:58 +03:00
Yuri Kuznetsov
78753644ad Merge branch 'master' of https://github.com/espocrm/espocrm 2025-07-14 13:55:03 +03:00
Yuri Kuznetsov
9bcad33012 markdown shortcuts 2025-07-14 13:53:38 +03:00
Yuri Kuznetsov
a23c4d179d Merge branch 'fix' 2025-07-14 11:30:56 +03:00
Yuri Kuznetsov
7f8b299015 bg lang 2025-07-14 11:30:44 +03:00
Yuri Kuznetsov
15691fc8b0 addSeconds function 2025-07-14 11:04:06 +03:00
Yurii Kuznietsov
8ef0d47e3b Update README.md 2025-07-13 10:45:20 +03:00
Yuri Kuznetsov
0e1cb6fd47 foreign enum option reference 2025-07-11 09:43:40 +03:00
Yuri Kuznetsov
1fa006775f Merge branch 'fix' 2025-07-10 16:41:19 +03:00
Yuri Kuznetsov
9c1e52f3bf fix test 2025-07-10 16:41:06 +03:00
Yuri Kuznetsov
5b7a4ec8f0 email: skip html to markdown if no html 2025-07-10 16:05:21 +03:00
Yuri Kuznetsov
19a09cc6d1 sendbox ui impr 2025-07-10 15:53:50 +03:00
Yuri Kuznetsov
889a8bfc90 forbid access to system requirements 2025-07-10 15:37:00 +03:00
Yuri Kuznetsov
9e4e461fd0 fix css 2025-07-10 14:49:48 +03:00
Yuri Kuznetsov
d3b272e45f Merge branch 'fix' 2025-07-10 13:37:56 +03:00
Yuri Kuznetsov
e3075abe4f selectize small fix 2025-07-10 13:37:40 +03:00
Yuri Kuznetsov
100c247d60 Merge branch 'fix' 2025-07-10 13:21:27 +03:00
Yuri Kuznetsov
81ef42118a small multiselect css 2025-07-10 13:21:16 +03:00
Yuri Kuznetsov
1b2086caa6 fix scope translation 2025-07-10 10:52:39 +03:00
Yuri Kuznetsov
2886cb690f loader fix 2025-07-10 10:17:05 +03:00
Yuri Kuznetsov
59279344f1 fix integration tests 2025-07-09 15:21:14 +03:00
Yuri Kuznetsov
4413871dd0 fix integration tests 2025-07-09 13:47:19 +03:00
Yuri Kuznetsov
258badc466 no error handler parameter 2025-07-09 13:33:23 +03:00
Yuri Kuznetsov
1bcf6647d6 integration test changes 2025-07-09 12:06:07 +03:00
Yuri Kuznetsov
d29ef9d998 fix tests 2025-07-09 10:52:07 +03:00
Yuri Kuznetsov
ee0bfb5970 fix test deprecations 2025-07-09 10:43:05 +03:00
Yuri Kuznetsov
cd7307c9f6 fix test deprecations 2025-07-09 10:24:58 +03:00
Yuri Kuznetsov
bc578d28e5 test deprecations fixes 2025-07-09 09:48:21 +03:00
Yuri Kuznetsov
a468c42347 phpunit update 2025-07-08 20:57:16 +03:00
Yuri Kuznetsov
7b30ba59dd webhook skip own 2025-07-08 13:34:19 +03:00
Yuri Kuznetsov
335301cefd ref 2025-07-08 10:58:59 +03:00
Yuri Kuznetsov
9f918295e1 ref 2025-07-08 10:40:19 +03:00
Yuri Kuznetsov
0fa05c5be2 ref 2025-07-07 20:20:05 +03:00
Yuri Kuznetsov
55dc020cf0 ref 2025-07-07 20:09:41 +03:00
Yuri Kuznetsov
47a9a06160 store sent email encoding fix 2025-07-07 14:13:11 +03:00
Yuri Kuznetsov
92174a8eac fix status notification 2025-07-07 11:20:48 +03:00
Yuri Kuznetsov
b205a58d10 fix set related 2025-07-07 11:20:30 +03:00
Yuri Kuznetsov
9f9ad1fe56 manual merge 2025-07-05 12:22:01 +03:00
Yuri Kuznetsov
72a069a1db ws reconnect impr 2025-07-05 12:09:28 +03:00
Yuri Kuznetsov
1abefcec34 stream refresh title 2025-07-04 11:44:12 +03:00
Yuri Kuznetsov
78ea0d7512 email template link mapping 2025-07-04 09:38:41 +03:00
Yuri Kuznetsov
98b5f25e08 email remplate ref, field access check 2025-07-04 09:02:26 +03:00
Yuri Kuznetsov
375c7278bd fix schema 2025-07-03 23:28:40 +03:00
Yuri Kuznetsov
1a0ba55448 Note status => update 2025-07-03 16:11:56 +03:00
Yurii Kuznietsov
9a541b2701 Merge pull request #3430 from SuchAFuriousDeath/fix-typo
Fix typo
2025-07-03 14:44:49 +03:00
Tomáš Procházka
c8664c9acd Fix typo 2025-07-03 13:31:28 +02:00
Yuri Kuznetsov
d2f24f2bcb rename 2025-07-03 13:48:05 +03:00
Yuri Kuznetsov
ddaa662a81 ref 2025-07-03 12:32:35 +03:00
Yuri Kuznetsov
0b41d3c612 createDerived method 2025-07-03 12:21:00 +03:00
Yuri Kuznetsov
712f3a1cbd ref 2025-07-03 11:54:24 +03:00
Yuri Kuznetsov
99902b8c10 deferred actions, note related in context 2025-07-03 11:45:51 +03:00
Yuri Kuznetsov
7e702f563b cleanup 2025-07-02 14:56:34 +03:00
Yuri Kuznetsov
70a76705b5 use css vars 2025-07-02 14:55:11 +03:00
Yuri Kuznetsov
9dcbdc5907 do not group notification about assignment 2025-07-02 14:47:38 +03:00
Yuri Kuznetsov
3bcce9b517 user id filter 2025-07-02 13:34:49 +03:00
Yurii Kuznietsov
29880ffd0c Merge pull request #3429 from yurikuzn/i/notification-grouping
Notification grouping
2025-07-02 10:25:39 +03:00
Yuri Kuznetsov
13f2d44869 update note improvement 2025-07-01 20:37:40 +03:00
Yuri Kuznetsov
473bc75f00 style improvement 2025-07-01 20:19:12 +03:00
Yuri Kuznetsov
b3a5587889 Meeting assignment notifications by default 2025-07-01 20:15:06 +03:00
Yuri Kuznetsov
2e704cc6d8 note status => update 2025-07-01 19:59:45 +03:00
Yuri Kuznetsov
364ed08dd3 event attendees audited 2025-07-01 18:22:20 +03:00
Yuri Kuznetsov
63ad1510e3 notification grouping 2025-07-01 17:20:52 +03:00
Yuri Kuznetsov
135e8f9608 Merge branch 'fix' 2025-07-01 10:49:03 +03:00
Yuri Kuznetsov
492d9abb25 document accounts allow direct access 2025-07-01 10:48:50 +03:00
Yuri Kuznetsov
15de70c8f7 action ID 2025-06-30 19:03:55 +03:00
Yuri Kuznetsov
0a7fe37014 ref 2025-06-30 17:10:57 +03:00
Yuri Kuznetsov
c4967c774c ref 2025-06-30 16:58:40 +03:00
Yuri Kuznetsov
36293123c7 note detail view websocket 2025-06-30 15:30:12 +03:00
Yuri Kuznetsov
9e412b686d ref 2025-06-30 15:00:21 +03:00
Yuri Kuznetsov
052cdf20dd note detail view header refresh 2025-06-30 14:48:17 +03:00
Yuri Kuznetsov
6958a5a357 webSocket frontend ref 2025-06-30 13:53:38 +03:00
Yuri Kuznetsov
cd7e03656a revert type 2025-06-30 11:59:39 +03:00
Yuri Kuznetsov
f00e86cd21 full name additional attribute list 2025-06-30 11:18:41 +03:00
Yuri Kuznetsov
d00fca02c1 fix typo 2025-06-29 18:54:09 +03:00
Yuri Kuznetsov
8f827eb9f1 ref 2025-06-29 16:52:10 +03:00
Yuri Kuznetsov
d11a04aa0a no websocket in quick edit modal 2025-06-29 16:49:17 +03:00
Yuri Kuznetsov
36f7ffaaa1 websocket debounce block 2025-06-29 16:40:12 +03:00
Yuri Kuznetsov
e5c4baef9e comment 2025-06-29 13:32:17 +03:00
Yuri Kuznetsov
d479408fea date change on after change only for date 2025-06-29 13:30:44 +03:00
Yuri Kuznetsov
a01f3333b3 date after set on change 2025-06-29 13:10:08 +03:00
Yuri Kuznetsov
46db6c2260 before:delete event, after:delete 2025-06-29 12:29:29 +03:00
Yuri Kuznetsov
c3b2f52590 jsdoc fix 2025-06-29 12:01:05 +03:00
Yuri Kuznetsov
d0321be776 jsdocs 2025-06-29 11:39:12 +03:00
Yuri Kuznetsov
8a177d5ac8 calendar websocket 2025-06-28 14:36:32 +03:00
Yuri Kuznetsov
b182e51a38 acl-check command impr 2025-06-28 10:54:34 +03:00
Yuri Kuznetsov
10a643586d ref 2025-06-28 10:20:00 +03:00
Yuri Kuznetsov
fc864fbce9 layout manager impr 2025-06-27 20:01:59 +03:00
Yuri Kuznetsov
de92d50386 do not allow to combing sub fields and main field in detail layout 2025-06-27 19:45:13 +03:00
Yuri Kuznetsov
82028df342 ref 2025-06-27 19:30:47 +03:00
Yuri Kuznetsov
b48827376f ref 2025-06-27 19:14:12 +03:00
Yuri Kuznetsov
d24abb2435 email users link multiple columns; store sent as read 2025-06-27 18:40:21 +03:00
Yuri Kuznetsov
e0b48ecae9 dashboard template importable 2025-06-27 17:39:43 +03:00
Yuri Kuznetsov
76ca781790 create handler: pass link, set-parent create handler 2025-06-27 16:43:57 +03:00
Yuri Kuznetsov
215d986c77 cs 2025-06-27 16:24:30 +03:00
Yurii Kuznietsov
c66c8821ff Merge pull request #3427 from alexsvorada/master
Possible bug/typo in phone field view
2025-06-27 13:32:33 +03:00
Alex Svorada
89a14a1dd7 Fix possible bug 2025-06-27 10:49:04 +02:00
Yuri Kuznetsov
5b4ad25763 continue inline edit focus 2025-06-27 11:42:00 +03:00
Yuri Kuznetsov
680c11bf12 fix jsdoc 2025-06-27 11:27:04 +03:00
Yuri Kuznetsov
3da606469f person name, phone focus 2025-06-27 11:25:51 +03:00
Yuri Kuznetsov
2deb34cb3a store list tree 2025-06-27 10:13:12 +03:00
Yuri Kuznetsov
86a77a321d manage category no url param 2025-06-27 09:07:54 +03:00
Yuri Kuznetsov
0e195c99c1 docs fix 2025-06-26 20:28:17 +03:00
Yuri Kuznetsov
6260ccbc3c fix error 2025-06-26 20:26:21 +03:00
Yuri Kuznetsov
7cb9faed13 open current category 2025-06-26 20:23:41 +03:00
Yuri Kuznetsov
7fa1a7f376 cs 2025-06-26 18:29:23 +03:00
Yuri Kuznetsov
489afbe3b4 Merge branch 'master' of https://github.com/espocrm/espocrm 2025-06-26 17:06:48 +03:00
Yuri Kuznetsov
308bb9563a select all result for relationships 2025-06-26 17:04:28 +03:00
Yuri Kuznetsov
74e458561a cleanup 2025-06-26 15:14:32 +03:00
Yuri Kuznetsov
b7462b8ad6 test fix 2025-06-26 13:53:50 +03:00
Yurii Kuznietsov
5d1d5d8d05 Merge pull request #3421 from tbrugier/master
French e-mail template for password reset is now translated
2025-06-26 13:44:58 +03:00
Yuri Kuznetsov
5a10a4d156 select where: foreign entity check 2025-06-26 11:22:59 +03:00
Yuri Kuznetsov
de37c9209b update requirements in readme 2025-06-26 09:46:05 +03:00
Yuri Kuznetsov
375807ca2b readme fix 2025-06-26 09:44:40 +03:00
Yuri Kuznetsov
3d3bd13819 docs 2025-06-26 09:17:41 +03:00
Yuri Kuznetsov
4f5dedfbe7 ref 2025-06-25 20:14:29 +03:00
Yuri Kuznetsov
18cae240c5 clear settings on login 2025-06-25 18:51:44 +03:00
Yurii Kuznietsov
ccd752d690 Merge pull request #3423 from yurikuzn/f/formula-where
F/formula where
2025-06-25 18:16:23 +03:00
Yuri Kuznetsov
b587ef50dd formula where tests 2025-06-25 15:06:15 +03:00
Yuri Kuznetsov
41a0fd48bb formula where 2025-06-25 14:21:24 +03:00
Yuri Kuznetsov
34e2f9502e system address not shared by default 2025-06-25 11:02:22 +03:00
Yuri Kuznetsov
819776d1c7 rename 2025-06-25 10:55:47 +03:00
Yuri Kuznetsov
07b79c49fe rename 2025-06-25 10:45:22 +03:00
Yuri Kuznetsov
09b94de327 ref 2025-06-25 10:42:31 +03:00
Yuri Kuznetsov
bedf805456 email to case relate replies 2025-06-25 10:12:15 +03:00
Yuri Kuznetsov
7724c3b625 update textcomplete 2025-06-24 19:24:27 +03:00
Tom BRUGIER
f5a38d5960 French e-mail template for password reset is now translated 2025-06-24 16:26:23 +02:00
Yuri Kuznetsov
f7523ecb62 Merge branch 'stable' 2025-06-24 14:49:12 +03:00
Yuri Kuznetsov
4baab4dff4 9.1.7 2025-06-24 14:39:53 +03:00
Yuri Kuznetsov
52898cd767 Merge branch 'fix' 2025-06-24 13:25:59 +03:00
Yuri Kuznetsov
9c9f35b33a fix type 2025-06-24 12:51:45 +03:00
Yuri Kuznetsov
b31b71756b fix time zone list in import 2025-06-24 12:44:04 +03:00
Yuri Kuznetsov
285f0bc011 cleanup 2025-06-24 12:41:20 +03:00
Yuri Kuznetsov
4e08872f68 ref 2025-06-24 12:40:44 +03:00
Yuri Kuznetsov
929611f317 throw bad request on uri starting with double slash 2025-06-24 12:34:23 +03:00
Yuri Kuznetsov
a2fce2d425 fr lang additions 2025-06-24 10:01:46 +03:00
Yuri Kuznetsov
ca98fb39af fix import error access filter 2025-06-24 09:22:46 +03:00
Yuri Kuznetsov
97e5aa8f90 ref 2025-06-23 19:46:42 +03:00
Yuri Kuznetsov
8649f1ac0c fix ldap query 2025-06-23 19:41:34 +03:00
Yuri Kuznetsov
c2f4afd520 entity factory create with additional attributes 2025-06-23 18:13:59 +03:00
Yurii Kuznietsov
902430a83f Merge pull request #3418 from yurikuzn/f/pdfa
PDF/A support
2025-06-23 09:57:56 +03:00
Yuri Kuznetsov
c2591357ab pdfa 2025-06-23 09:55:43 +03:00
Yuri Kuznetsov
6e477b7ff6 Merge branch 'fix' 2025-06-22 14:16:47 +03:00
Yuri Kuznetsov
4a38109d10 update cz 2025-06-22 14:12:11 +03:00
Yuri Kuznetsov
cb6d806d89 update fr 2025-06-22 14:10:05 +03:00
Yuri Kuznetsov
709e5b7e62 fix list view with filter 2025-06-21 18:15:03 +03:00
Yuri Kuznetsov
5ce71b0bcd shortcut capture 2025-06-21 15:41:46 +03:00
Yuri Kuznetsov
5e0736e60f cleanup 2025-06-21 15:22:19 +03:00
Yuri Kuznetsov
7a70c1096b Merge branch 'i/shortcuts' 2025-06-21 14:31:19 +03:00
Yuri Kuznetsov
310778a018 foreign enum label type 2025-06-21 09:38:12 +03:00
Yuri Kuznetsov
a8c5048079 shortcuts dev 2025-06-20 21:22:23 +03:00
Yuri Kuznetsov
60553a9a68 Merge branch 'master' of https://github.com/espocrm/espocrm 2025-06-20 11:00:54 +03:00
Yurii Kuznietsov
fba6568566 Merge pull request #3415 from SuchAFuriousDeath/fix-json-schema
Fixes json schema
2025-06-20 11:00:44 +03:00
Yuri Kuznetsov
f6daca5c3b Merge branch 'fix' 2025-06-20 09:33:00 +03:00
Yuri Kuznetsov
d00af77206 fix default currency 2025-06-20 09:32:47 +03:00
Tomáš Procházka
19fe743c1c Fixes json schema 2025-06-19 22:54:24 +02:00
Yuri Kuznetsov
b0579c9acf inline edit confirm unsaved switch to another field 2025-06-19 20:37:19 +03:00
Yuri Kuznetsov
dd7017fabe cs 2025-06-19 20:20:28 +03:00
Yuri Kuznetsov
107eb90aa4 ref 2025-06-19 20:11:05 +03:00
Yuri Kuznetsov
b9a3177f6a no all for email in portal role 2025-06-19 19:44:34 +03:00
Yuri Kuznetsov
c4b1dd0776 add type 2025-06-19 19:42:08 +03:00
Yuri Kuznetsov
5d77aefaa6 role validation impr 2025-06-19 19:37:50 +03:00
Yuri Kuznetsov
572f939d90 remove bc 2025-06-19 19:22:58 +03:00
Yuri Kuznetsov
5908de3c1c select only id 2025-06-19 19:11:47 +03:00
Yuri Kuznetsov
b16f126152 category parent use view 2025-06-19 11:32:51 +03:00
Yuri Kuznetsov
aa4d079539 loop reference check 2025-06-19 11:13:32 +03:00
Yuri Kuznetsov
8310f23e85 kb category not customizable 2025-06-19 10:56:38 +03:00
Yuri Kuznetsov
f69667a564 skip order if no filed 2025-06-19 10:55:25 +03:00
Yuri Kuznetsov
69b370c031 document folder not customizable 2025-06-19 10:55:16 +03:00
Yuri Kuznetsov
e1e83522dc impr 2025-06-19 10:41:47 +03:00
Yuri Kuznetsov
0048d6256c ref 2025-06-19 10:17:56 +03:00
Yuri Kuznetsov
5ba74c8f79 ref 2025-06-19 10:08:18 +03:00
Yuri Kuznetsov
9159792ec2 impr 2025-06-19 10:03:05 +03:00
Yuri Kuznetsov
bffc905c2a ref 2025-06-19 09:37:40 +03:00
Yuri Kuznetsov
bcb8e55c15 fix 2025-06-18 20:50:57 +03:00
Yuri Kuznetsov
9cba9bdd23 category order ui impr 2025-06-18 20:50:04 +03:00
Yuri Kuznetsov
ba78ab7eb7 drag ui impr 2025-06-18 16:09:44 +03:00
Yuri Kuznetsov
c46cf70079 fix possible js error 2025-06-18 16:04:16 +03:00
Yuri Kuznetsov
58c1071f59 style fix 2025-06-18 14:43:23 +03:00
Yuri Kuznetsov
5849a88ea1 fix 2025-06-18 14:42:39 +03:00
Yuri Kuznetsov
346d19f37e drag handle 2025-06-18 14:38:53 +03:00
Yuri Kuznetsov
5ec7610dda remove order field from layout 2025-06-18 13:31:25 +03:00
Yurii Kuznietsov
2a6624fb0e Merge pull request #3412 from yurikuzn/i/category
Category drag and drop
2025-06-18 13:24:40 +03:00
Yuri Kuznetsov
f81d8a39d4 category impro dev 2025-06-18 11:53:34 +03:00
Yuri Kuznetsov
e640315d8d category impr dev 2025-06-17 19:04:37 +03:00
Yuri Kuznetsov
7662a5eb6a preparable lib, draggable 2025-06-17 11:39:21 +03:00
Yuri Kuznetsov
c0b098d2f7 Merge branch 'fix' 2025-06-16 16:43:47 +03:00
Yuri Kuznetsov
d60a49a1bf css fix 2025-06-16 15:59:16 +03:00
Yuri Kuznetsov
60f7f2e16c update node dependencies 2025-06-16 15:42:16 +03:00
Yuri Kuznetsov
bd33d70365 fix list model removal recovery 2025-06-16 11:22:40 +03:00
Yuri Kuznetsov
26c2234ead docs 2025-06-16 11:22:10 +03:00
Yuri Kuznetsov
8cfc2321d1 composer email modal collapse not leave out 2025-06-16 10:44:16 +03:00
Yuri Kuznetsov
683c8ba091 Merge branch 'stable' 2025-06-16 10:17:49 +03:00
Yuri Kuznetsov
133d6144ad 9.1.6 2025-06-16 10:08:04 +03:00
Yuri Kuznetsov
2cd78c83c2 drop mysql 5.7 and mariadb 10.2 2025-06-15 18:07:39 +03:00
Yuri Kuznetsov
1460102cb7 Merge branch 'fix' 2025-06-15 18:05:53 +03:00
Yuri Kuznetsov
fe8bbb0d2e fix record grid shrink 2025-06-15 15:31:47 +03:00
Yuri Kuznetsov
3d5e98927d fix tests 2025-06-15 15:13:24 +03:00
Yuri Kuznetsov
bef5f4c762 create category action 2025-06-15 15:03:01 +03:00
Yuri Kuznetsov
60a6b63e30 Merge branch 'fix' 2025-06-15 13:35:55 +03:00
Yuri Kuznetsov
d406a7d78c collaborators own autocomplete 2025-06-15 13:34:18 +03:00
Yurii Kuznietsov
90e31c04bc Job sub-queue (#3403)
* cleanup

* job m0 queue
2025-06-15 12:39:43 +03:00
Yurii Kuznietsov
f1b89fd6c4 orm: join refactor (#3408) 2025-06-15 11:30:04 +03:00
Yuri Kuznetsov
94b15e8e8e list view: fetch only visible columns 2025-06-14 14:03:49 +03:00
Yuri Kuznetsov
078674b85b list view get select attributes ref 2025-06-14 13:30:29 +03:00
Yuri Kuznetsov
dae5cf9168 Merge branch 'fix' 2025-06-14 11:19:18 +03:00
Yuri Kuznetsov
fabbacdcc1 comment 2025-06-14 11:07:23 +03:00
Yuri Kuznetsov
809defb24a fix reduce usage 2025-06-14 10:16:27 +03:00
Yuri Kuznetsov
72f9ff1a4a fix multi-enum n^2 2025-06-13 21:13:23 +03:00
Yuri Kuznetsov
923bb27a93 fix pagination lost after full edit view 2025-06-13 13:38:14 +03:00
Yuri Kuznetsov
38f8fedec8 confirm cancel callback 2025-06-13 13:29:25 +03:00
Yuri Kuznetsov
acff675a54 cleanup 2025-06-12 18:38:25 +03:00
Yuri Kuznetsov
fbfa599cef Merge branch 'fix' 2025-06-12 13:03:47 +03:00
Yurii Kuznietsov
8a7b159fb3 loader: use script tag (#3400) 2025-06-12 13:03:19 +03:00
Eymen Elkum
a94fb01ceb fix: remove usage of non-existent 'hash' field (#3399) 2025-06-12 12:40:53 +03:00
Yuri Kuznetsov
edb2dc6a5a fix test 2025-06-11 20:48:29 +03:00
Yuri Kuznetsov
a90cd8a718 fix any of varchar 2025-06-11 16:55:38 +03:00
Yuri Kuznetsov
500bd35ff2 predefined default date dynamic values 2025-06-11 11:34:53 +03:00
Yuri Kuznetsov
6d0faf14a7 ref 2025-06-11 10:11:26 +03:00
Yuri Kuznetsov
2decdb010d email template status 2025-06-11 10:10:28 +03:00
Yuri Kuznetsov
10a6ff6a2d create button 2025-06-11 10:09:25 +03:00
Yuri Kuznetsov
c1f2d5d0f1 schema 2025-06-11 10:09:16 +03:00
Yuri Kuznetsov
6ca6c0b938 ref 2025-06-10 23:05:13 +03:00
Yuri Kuznetsov
80be866475 Merge branch 'fix' 2025-06-10 22:49:39 +03:00
Yuri Kuznetsov
e091db9063 reactions style change 2025-06-10 19:36:44 +03:00
Yuri Kuznetsov
4f9cfb487f cleanup 2025-06-10 19:26:42 +03:00
Yuri Kuznetsov
5f1a0f4f75 css likes fix 2025-06-10 19:26:05 +03:00
Yuri Kuznetsov
dc18d5166f user default color 2025-06-10 18:53:54 +03:00
Yuri Kuznetsov
bddbfc33b8 pdf template status 2025-06-10 18:16:06 +03:00
Yuri Kuznetsov
dc76b3340e force list view settings param 2025-06-10 17:41:14 +03:00
Yuri Kuznetsov
d48777d603 lastViewed param usage 2025-06-10 16:29:07 +03:00
Yuri Kuznetsov
e359be4a17 docs 2025-06-10 16:23:36 +03:00
Yuri Kuznetsov
46a9a1d1f5 remove options 2025-06-10 16:21:51 +03:00
Yuri Kuznetsov
1cfea5bd3b hazyblue color changes 2025-06-10 16:13:58 +03:00
Yuri Kuznetsov
074465ca72 panel primary color 2025-06-10 16:05:22 +03:00
Yuri Kuznetsov
7eb2f79e3b alert primary, less refactoring 2025-06-10 15:53:36 +03:00
Yuri Kuznetsov
eb760272c4 import user field change 2025-06-10 14:46:16 +03:00
Yuri Kuznetsov
d466756520 job creator 2025-06-10 14:45:30 +03:00
Yuri Kuznetsov
c3a3fb3407 import impr 2025-06-10 14:45:22 +03:00
Yuri Kuznetsov
75d710f953 Merge branch 'fix' 2025-06-10 13:36:46 +03:00
Yuri Kuznetsov
859f0c970b fix markdown list regexp 2025-06-10 11:18:05 +03:00
Yuri Kuznetsov
4f574abfe7 improve show password ui 2025-06-09 16:26:30 +03:00
Yuri Kuznetsov
042b15ae45 focus on toggle 2025-06-09 16:16:08 +03:00
Yuri Kuznetsov
ccccc13662 fix id 2025-06-09 16:08:32 +03:00
Yuri Kuznetsov
3008f47620 login form view password 2025-06-09 16:07:11 +03:00
Yuri Kuznetsov
c51d965fd1 Merge branch 'fix' 2025-06-09 13:46:12 +03:00
Yuri Kuznetsov
34df8c5f63 orm: support subquery in join on, ref 2025-06-09 13:46:00 +03:00
Yuri Kuznetsov
8feaadc162 calendar reRender date fix 2025-06-08 20:07:09 +03:00
Yuri Kuznetsov
bf95f79775 distinct usage removal 2025-06-08 19:40:11 +03:00
Yuri Kuznetsov
f2c4e0931d ref 2025-06-08 19:35:37 +03:00
Yuri Kuznetsov
9982ed0bef distinct usage rmoval 2025-06-08 19:21:27 +03:00
Yuri Kuznetsov
cd860cb7d0 ref, getting rid of distinct 2025-06-08 19:09:00 +03:00
Yuri Kuznetsov
22f7d2a8b0 comment 2025-06-08 19:08:22 +03:00
Yuri Kuznetsov
27bd869565 change in guidelines 2025-06-08 14:10:43 +03:00
Yuri Kuznetsov
b11b7899f6 Merge branch 'master' of https://github.com/espocrm/espocrm 2025-06-08 14:06:05 +03:00
Yuri Kuznetsov
a0fcb95a75 guidleness update 2025-06-08 14:05:56 +03:00
Yuri Kuznetsov
5fc25bee78 Merge branch 'fix' 2025-06-08 13:55:07 +03:00
Yuri Kuznetsov
e37d35bc9b ref, comments 2025-06-08 10:58:44 +03:00
Yuri Kuznetsov
4ef5f24212 fix calendar link 2025-06-07 23:54:53 +03:00
Yuri Kuznetsov
6aebcaed97 lateral join 2025-06-07 20:34:31 +03:00
Yuri Kuznetsov
d35f00b2cb orm: ANY_VALUE function 2025-06-07 13:33:05 +03:00
Yuri Kuznetsov
999f6f5593 status style 2025-06-06 20:44:36 +03:00
Yuri Kuznetsov
f92e261ea8 fix inline attachment UUID compatibility 2025-06-05 22:09:08 +03:00
Yuri Kuznetsov
ba03bfa6da schema 2025-06-04 15:17:21 +03:00
Yuri Kuznetsov
bd3e06d403 syckBackWithModel param 2025-06-04 10:16:25 +03:00
Alex
27ac6b4181 fix checkemailaccounts exception typo (#3386) 2025-06-03 15:24:39 +03:00
Yuri Kuznetsov
6d279a4511 Merge branch 'fix' 2025-06-03 10:17:04 +03:00
SuchAFuriousDeath
1736b3301a fixes composer psr-4 compliance errors (#3385) 2025-06-03 08:51:33 +03:00
Yuri Kuznetsov
bf43ab05ff fix test 2025-06-02 19:04:18 +03:00
Yuri Kuznetsov
8d81ac3acb fix or helper 2025-06-02 18:49:02 +03:00
Yuri Kuznetsov
2d0255909e disable activities dashlet in portal 2025-06-02 10:08:25 +03:00
Yuri Kuznetsov
767cc16920 issue template fix 2025-06-02 09:58:17 +03:00
Yuri Kuznetsov
a64164b803 mistake or typo template 2025-06-02 09:57:18 +03:00
Yuri Kuznetsov
2d025dc67a Merge branch 'fix' 2025-06-02 09:49:10 +03:00
Yuri Kuznetsov
2634bb7208 add columnIsNull filter 2025-06-02 09:47:13 +03:00
Yuri Kuznetsov
a4c80bf498 type 2025-06-01 12:19:10 +03:00
Yuri Kuznetsov
eb19cd14b5 bundled extension support in developer mode 2025-05-31 11:37:34 +03:00
Yuri Kuznetsov
c227fe7c34 pdf template default style 2025-05-29 18:54:58 +03:00
Yuri Kuznetsov
1fc92333dd autocomplete scroll fix 2025-05-29 13:51:03 +03:00
Yuri Kuznetsov
47c1a6fd05 dynamic logic field ref 2025-05-29 13:07:29 +03:00
Yuri Kuznetsov
8e454fd5b7 Merge branch 'stable' 2025-05-29 10:09:49 +03:00
Yuri Kuznetsov
acf5c2984d 9.1.5 2025-05-29 10:00:56 +03:00
Yuri Kuznetsov
98eb304903 fix pgsql interval 2025-05-29 09:38:16 +03:00
Yuri Kuznetsov
1b385f987b js compress to support ios 2025-05-28 17:19:01 +03:00
Yuri Kuznetsov
34c1cdbe86 less js compress 2025-05-28 16:40:36 +03:00
Yuri Kuznetsov
8563945199 modal list without buttons sticky header fix 2025-05-28 12:26:17 +03:00
Yuri Kuznetsov
162e05449c field view: fromField handling 2025-05-28 12:00:59 +03:00
Yuri Kuznetsov
e959df5177 Merge branch 'master' of https://github.com/espocrm/espocrm 2025-05-27 09:31:28 +03:00
Yuri Kuznetsov
25a9df9e31 Merge branch 'stable' 2025-05-27 09:31:18 +03:00
Yuri Kuznetsov
0b6fd83b14 9.1.4 2025-05-27 09:21:27 +03:00
Yuri Kuznetsov
3631f17a77 fix ff dd shadows 2025-05-26 20:51:32 +03:00
Yuri Kuznetsov
4100af5ad3 fix sa 2025-05-26 15:32:39 +03:00
Yuri Kuznetsov
b16024f205 error ref 2025-05-26 15:22:13 +03:00
Yuri Kuznetsov
a0dbef3b78 cleanup 2025-05-26 12:12:04 +03:00
Yuri Kuznetsov
12c24098c3 update frontend build tools 2025-05-26 12:06:00 +03:00
stasovskyj
486dbbba08 Update AddressBuilder.php (#3379)
NanoFix =)
2025-05-26 09:15:51 +03:00
Yuri Kuznetsov
8d03944e68 schema docs fix 2025-05-25 11:35:28 +03:00
Yuri Kuznetsov
3b5207871b link field fromField usage 2025-05-24 17:04:17 +03:00
Yuri Kuznetsov
0f2689deee fix kb article move 2025-05-24 13:53:01 +03:00
Yuri Kuznetsov
37d437dbae ref 2025-05-24 11:42:07 +03:00
Yuri Kuznetsov
bfe109e9e4 stream user link color 2025-05-24 09:20:54 +03:00
Yuri Kuznetsov
d8f7127528 comment 2025-05-23 20:06:43 +03:00
Yuri Kuznetsov
986af05002 fix user detail layout 2025-05-23 16:17:58 +03:00
Yuri Kuznetsov
bdbfbdabf1 complex text table css fix 2025-05-23 11:24:30 +03:00
Yuri Kuznetsov
04f74150ac complex text table style 2025-05-23 11:20:18 +03:00
Yuri Kuznetsov
74ce903cb7 element check 2025-05-23 09:19:14 +03:00
Yuri Kuznetsov
666dd116bd link one empty search fix 2025-05-20 23:15:09 +03:00
Yuri Kuznetsov
e0d262e733 portal user same account select 2025-05-20 23:05:57 +03:00
Yuri Kuznetsov
aa29aa9ca6 Merge branch 'master' of https://github.com/espocrm/espocrm 2025-05-20 15:06:11 +03:00
Yuri Kuznetsov
c333a31112 Merge branch 'stable' 2025-05-20 15:05:56 +03:00
Yuri Kuznetsov
128d7ec94d 9.1.3 2025-05-20 14:58:12 +03:00
Yuri Kuznetsov
e0277038cd fix email store 2025-05-20 13:57:55 +03:00
Yuri Kuznetsov
845a50a99f fix tree list view open link 2025-05-18 13:07:34 +03:00
SuchAFuriousDeath
7a451bd498 Fixes wrong translation scope (#3371) 2025-05-17 14:51:54 +03:00
Yuri Kuznetsov
a30a353156 markdown match fix 2025-05-17 11:33:15 +03:00
Yuri Kuznetsov
27a7e2f6f5 mass remove form web hook queue 2025-05-16 20:48:49 +03:00
Yuri Kuznetsov
febf78dab6 webhook in menu 2025-05-16 15:49:09 +03:00
Yuri Kuznetsov
fab0efa5e5 webhook event queue item list view 2025-05-16 15:47:48 +03:00
Yuri Kuznetsov
72794768af webhook queue items panel 2025-05-16 15:33:27 +03:00
Yuri Kuznetsov
75c71d4b28 skip starred and followers in webhook 2025-05-16 15:20:32 +03:00
Yuri Kuznetsov
81364eefb3 layout change 2025-05-16 15:17:01 +03:00
Yuri Kuznetsov
07a09dd08e email sender: reply-to after addresses 2025-05-15 19:56:36 +03:00
SuchAFuriousDeath
673370b9a5 fixes TIMESTAMPDIFF_MONTH error for postgresql (#3369) 2025-05-15 08:54:12 +03:00
Yuri Kuznetsov
2aacc5277d Merge branch 'master' of https://github.com/espocrm/espocrm 2025-05-14 21:15:20 +03:00
Yuri Kuznetsov
e444ce032f Merge branch 'fix' 2025-05-14 21:15:08 +03:00
Yuri Kuznetsov
c398ab0a40 text field: prevent scroll chrome woe with other solution 2025-05-14 19:24:12 +03:00
Yuri Kuznetsov
86f3801513 use setRangeText 2025-05-14 19:08:06 +03:00
Yuri Kuznetsov
678be304c5 cleanup 2025-05-14 18:32:01 +03:00
Yuri Kuznetsov
0243a2a5a0 9.1.2 2025-05-14 17:04:33 +03:00
Yuri Kuznetsov
15d95ddac9 select single category fix 2025-05-14 15:48:39 +03:00
Yuri Kuznetsov
33a15bdbd6 attachment file name fix 2025-05-14 14:09:51 +03:00
Yuri Kuznetsov
b71a237cad postgresql delete alias fix 2025-05-14 13:58:35 +03:00
Yuri Kuznetsov
11d9d2aee4 autocomplete max height 2025-05-13 22:12:31 +03:00
Yuri Kuznetsov
6a1a3b67c8 fix lead catpture list layout 2025-05-13 15:19:37 +03:00
Yuri Kuznetsov
d1bb6be354 fix record panels container multiple 2025-05-13 13:26:48 +03:00
Yuri Kuznetsov
55a387c785 fix 2025-05-13 12:49:23 +03:00
Yuri Kuznetsov
6efa058293 skip re-render email body on quick save 2025-05-13 12:00:49 +03:00
Yuri Kuznetsov
8f054a475c compose initial fields ref 2025-05-13 12:00:29 +03:00
Yurii Kuznietsov
650cc032b1 Update config.yml 2025-05-12 20:42:23 +03:00
Yuri Kuznetsov
5b1919b760 google map id 2025-05-12 17:36:42 +03:00
Yuri Kuznetsov
50ded4b933 new google maps api 2025-05-12 17:22:45 +03:00
Yuri Kuznetsov
c4b0629e4f google maps warning fix 2025-05-12 17:15:35 +03:00
Yuri Kuznetsov
0112ff7983 Merge branch 'fix' 2025-05-12 10:23:22 +03:00
Yuri Kuznetsov
3d5991495b 9.1.1 2025-05-12 10:13:54 +03:00
Yuri Kuznetsov
1ee853890c pgsql TZ fix 2025-05-11 19:00:35 +03:00
Yurii Kuznietsov
15626b5a32 Update config.yml 2025-05-11 15:42:59 +03:00
Yurii Kuznietsov
6abdfbfe05 Update CONTRIBUTING.md 2025-05-11 15:39:41 +03:00
Yurii Kuznietsov
e796b4a447 Update config.yml 2025-05-11 15:30:58 +03:00
Yuri Kuznetsov
400347740d comment 2025-05-11 13:45:47 +03:00
Yuri Kuznetsov
eae84b9d8f foreign-field params helper 2025-05-11 13:45:02 +03:00
Yuri Kuznetsov
1ba4937f32 phone foreign disable numeric search 2025-05-11 13:44:51 +03:00
Yuri Kuznetsov
205091dc6f change email template order 2025-05-11 12:41:45 +03:00
Yuri Kuznetsov
d704d089a3 lang fix 2025-05-11 12:41:30 +03:00
Yuri Kuznetsov
4cf6e4f9d3 email template text search only name 2025-05-11 12:32:29 +03:00
Yurii Kuznietsov
42c0f99cae Update config.yml 2025-05-11 10:09:16 +03:00
Yurii Kuznietsov
e90bbbc2a7 Update config.yml 2025-05-11 10:05:47 +03:00
Yurii Kuznietsov
a12712d304 Update config.yml 2025-05-11 10:04:48 +03:00
Yurii Kuznietsov
10bdc5adfb Update feature_request.md 2025-05-11 10:03:38 +03:00
Yuri Kuznetsov
88565e2e19 address field metadata independent 2025-05-10 17:45:46 +03:00
Yuri Kuznetsov
3a295bcbad fix select record tree item 2025-05-10 10:00:18 +03:00
Yuri Kuznetsov
3cf87f8bd9 uploaded image preview in full size 2025-05-09 18:16:21 +03:00
Yuri Kuznetsov
469f0e1913 assigned users avatars in list mode 2025-05-08 10:12:38 +03:00
Yuri Kuznetsov
6e8e2abd5f type guard 2025-05-07 11:45:16 +03:00
Yuri Kuznetsov
a7016ca153 kanban starred 2025-05-07 10:08:18 +03:00
Yuri Kuznetsov
7359367569 websocket reconnect subscribe 2025-05-07 09:48:47 +03:00
Yuri Kuznetsov
e394779737 markdown use custom tokenizer to escape html tags 2025-05-07 08:58:14 +03:00
Yuri Kuznetsov
9bb1b1a36c cleanup 2025-05-06 23:04:30 +03:00
Yuri Kuznetsov
7ac977ef6c change layout order 2025-05-06 21:12:02 +03:00
Yuri Kuznetsov
aabe966bcf Netowrk error message 2025-05-06 20:15:53 +03:00
Yuri Kuznetsov
ffbe6f5efa email list detail sync 2025-05-06 18:11:08 +03:00
Yuri Kuznetsov
68f568949e fix list remove sync 2025-05-06 17:45:38 +03:00
Yuri Kuznetsov
3fbaeab264 fix convert lead leav out confirm 2025-05-06 17:04:14 +03:00
Yuri Kuznetsov
bc0bcf3594 fix notify 2025-05-06 16:58:07 +03:00
Yuri Kuznetsov
0258f5e8b1 fix email to lead/contact js error 2025-05-06 10:50:38 +03:00
Yuri Kuznetsov
5e2ba0d28e type fix 2025-05-06 10:47:19 +03:00
Yuri Kuznetsov
ed03e6637f search on mobile fix 2025-05-05 20:30:09 +03:00
Yuri Kuznetsov
ccb17b1170 fix 2025-05-05 13:18:28 +03:00
Yuri Kuznetsov
8ce3f4dcc1 ref 2025-05-05 13:17:11 +03:00
Yuri Kuznetsov
dbf8f15333 attribute details css fix 2025-05-05 12:35:30 +03:00
Yuri Kuznetsov
51d838e1b2 enum field details type 2025-05-05 12:26:22 +03:00
Yuri Kuznetsov
c5381488ce lang 2025-05-05 12:02:09 +03:00
Yuri Kuznetsov
662b63e47b fix 2025-05-05 11:29:27 +03:00
Yuri Kuznetsov
3e8459d5c2 version 2025-05-05 10:09:01 +03:00
Yuri Kuznetsov
dcf0d4265b comments 2025-05-03 17:16:22 +03:00
Yuri Kuznetsov
ef3330d0fb ref 2025-05-03 17:14:32 +03:00
Yuri Kuznetsov
def0bbd55e ref 2025-05-03 17:11:37 +03:00
Yuri Kuznetsov
44c3aa0f19 dd small max height fix 2025-05-03 10:40:03 +03:00
Yuri Kuznetsov
96c8382143 dropdown with checkbox css fix 2025-05-02 16:40:14 +03:00
Yuri Kuznetsov
6e980eaea9 role table fix 2025-05-02 09:22:05 +03:00
Yuri Kuznetsov
42b703204a email template placeholders for fields with loaders 2025-05-01 18:56:42 +03:00
Yuri Kuznetsov
5ebad1c816 data ref 2025-05-01 18:26:52 +03:00
Yuri Kuznetsov
4e230845f9 template placeholder variables loader 2025-05-01 18:26:10 +03:00
Yuri Kuznetsov
8855161518 inline edit css fix 2025-05-01 17:41:48 +03:00
Yuri Kuznetsov
4418133ec0 entity defs field loaders 2025-05-01 17:22:13 +03:00
Yuri Kuznetsov
5b9ac837dd mass email information send opt out ignore 2025-05-01 14:11:29 +03:00
Yuri Kuznetsov
2a570dd573 mass email invalid check 2025-05-01 14:01:59 +03:00
Yuri Kuznetsov
a2e34ff6ce inline edit css fix 2025-05-01 13:12:05 +03:00
Yuri Kuznetsov
d75ff87824 datepicker fix 2025-04-30 19:38:27 +03:00
Yuri Kuznetsov
9fd4d78485 after render fix 2025-04-30 18:52:05 +03:00
Yuri Kuznetsov
b9a5f1cbff email subject fix 2025-04-30 17:07:01 +03:00
Yuri Kuznetsov
123605c442 add field to layout 2025-04-30 13:14:50 +03:00
Yuri Kuznetsov
0c539faaee layout manager hidden visual cue 2025-04-30 10:03:02 +03:00
Yuri Kuznetsov
a571e283d3 kanban: revert record after move error 2025-04-30 09:52:24 +03:00
Yuri Kuznetsov
0a17b974c9 dropdown overflow fix 2025-04-30 09:43:08 +03:00
Yuri Kuznetsov
cf3497c817 email listview attachment icon fix 2025-04-28 09:58:47 +03:00
Yuri Kuznetsov
22665ee951 label 2025-04-28 09:14:58 +03:00
Yuri Kuznetsov
416adafaa5 email: disable text search for fields 2025-04-28 09:12:24 +03:00
Yuri Kuznetsov
96bf57fea7 dropdown fix 2025-04-25 19:44:56 +03:00
SuchAFuriousDeath
a41374ef74 Remove double semicolons (#3345)
* Remove double semicolons

* fix formatting

* fix formatting 2
2025-04-23 14:08:39 +03:00
Yuri Kuznetsov
e2800c7dbf additional icon classes in metadata 2025-04-23 10:03:57 +03:00
Yuri Kuznetsov
8a8b800302 group folder do not list sent from group accounts 2025-04-22 18:50:04 +03:00
Yuri Kuznetsov
48ed42c29c form label CSS fix 2025-04-22 13:13:48 +03:00
Yuri Kuznetsov
d8722a4087 attachment search by ID 2025-04-22 09:27:18 +03:00
Yuri Kuznetsov
ac7eb466fc Merge branch 'fix' 2025-04-21 11:19:39 +03:00
Yuri Kuznetsov
839c31dbb8 before-upgrade version check 2025-04-21 11:19:30 +03:00
Yuri Kuznetsov
dbaa7adf20 update frontend timezones 2025-04-21 10:20:47 +03:00
Yuri Kuznetsov
98628a273b css fix 2025-04-19 19:31:07 +03:00
Yuri Kuznetsov
90bcd57d2c dropdown out of screen fix 2025-04-19 19:29:12 +03:00
Yuri Kuznetsov
e1acf4a2b8 create save context on save 2025-04-19 10:52:56 +03:00
Yuri Kuznetsov
449a8fcbb4 fix multi-enum bc 2025-04-18 16:51:03 +03:00
Yuri Kuznetsov
268615d8fe oidc userinfo support 2025-04-17 14:13:50 +03:00
Yuri Kuznetsov
2b98eef915 remove resource endpoint field 2025-04-17 10:45:42 +03:00
Yuri Kuznetsov
39e7b397e9 hide field 2025-04-17 10:36:15 +03:00
Yuri Kuznetsov
16576623f6 document accounts field metadata change 2025-04-17 10:12:11 +03:00
Yuri Kuznetsov
cc5c979af6 update bullbone 2025-04-16 21:00:55 +03:00
Yuri Kuznetsov
3fd33d3269 view stream attachments 2025-04-16 20:46:17 +03:00
Yuri Kuznetsov
39cefe99e6 cs 2025-04-16 18:52:15 +03:00
Yuri Kuznetsov
d8d9c3eb66 use cleanupAppLog 2025-04-16 17:34:45 +03:00
Yuri Kuznetsov
1502361fa3 cleanup improvements 2025-04-16 13:15:50 +03:00
Yuri Kuznetsov
61b50b5288 fix typo 2025-04-15 19:38:01 +03:00
Yuri Kuznetsov
2303a81751 attachments field search fix 2025-04-15 19:17:40 +03:00
Yuri Kuznetsov
0e7c405862 empty working range 2025-04-15 18:09:42 +03:00
Yuri Kuznetsov
23eb78d5c3 action sync listener fix 2025-04-15 14:12:02 +03:00
Yuri Kuznetsov
5e2c134194 Merge branch 'fix' 2025-04-15 10:05:42 +03:00
Yuri Kuznetsov
3dcbff1d08 9.0.8 2025-04-15 09:53:20 +03:00
Yuri Kuznetsov
4559f2746e record collection getApiOutput method 2025-04-15 09:45:46 +03:00
Yuri Kuznetsov
963fb40b2b fix save email settings 2025-04-14 11:13:15 +03:00
Yuri Kuznetsov
1682075267 ui fix 2025-04-14 11:06:23 +03:00
Yuri Kuznetsov
3032b2be87 select js error 2025-04-14 10:55:35 +03:00
Yuri Kuznetsov
2624c15763 fix 2025-04-14 10:24:23 +03:00
Yuri Kuznetsov
981be27151 email account dynamic logic changes 2025-04-14 09:18:44 +03:00
Yuri Kuznetsov
79b06df170 todo change 2025-04-13 16:27:14 +03:00
Yuri Kuznetsov
0eafe2ba35 system account color 2025-04-12 13:19:39 +03:00
Yuri Kuznetsov
11c6b79a4d remove system email account 2025-04-12 13:06:18 +03:00
Yuri Kuznetsov
b2ce89754f install changes 2025-04-12 12:56:31 +03:00
Yuri Kuznetsov
1c1aac38c2 email account quick search for admin 2025-04-12 11:14:23 +03:00
Yuri Kuznetsov
587ab9a492 cleanup 2025-04-12 11:01:18 +03:00
Yuri Kuznetsov
3a38c8245b change insert text 2025-04-11 20:02:03 +03:00
Yuri Kuznetsov
99cb0ed8ce ref 2025-04-11 14:17:40 +03:00
Yuri Kuznetsov
1d685dc772 fix email send test no password 2025-04-11 09:11:23 +03:00
Yuri Kuznetsov
cea34c95b5 skip audited 2025-04-10 19:53:38 +03:00
Yuri Kuznetsov
17bfe2d969 integration password type 2025-04-10 15:06:39 +03:00
Yuri Kuznetsov
7e4254ab42 ref 2025-04-10 14:48:06 +03:00
Yuri Kuznetsov
f7d0e54f7a stylefix 2025-04-10 14:33:31 +03:00
Yuri Kuznetsov
41ea5e22ca formula insert change 2025-04-10 08:52:44 +03:00
Yuri Kuznetsov
85907320b4 cleanup 2025-04-09 23:42:17 +03:00
Yuri Kuznetsov
a52a5e31e5 tracking url copy url 2025-04-09 23:23:31 +03:00
Yuri Kuznetsov
21bf43e33d Merge branch 'fix' 2025-04-09 23:14:07 +03:00
Yuri Kuznetsov
61c5ad9802 email show body plain impr 2025-04-09 21:54:03 +03:00
Yuri Kuznetsov
6b58d30eec improve html sanitize 2025-04-09 21:19:39 +03:00
Yuri Kuznetsov
84f7fc562c CSP form-action self 2025-04-09 21:11:27 +03:00
Yuri Kuznetsov
56f66976c7 add group index 2025-04-09 15:34:18 +03:00
Yuri Kuznetsov
16cc10bca0 style fixes 2025-04-09 10:38:30 +03:00
Yuri Kuznetsov
b18ccfcb7b dashlet changes 2025-04-09 10:30:53 +03:00
Yuri Kuznetsov
3c3ea2135b style fix 2025-04-09 09:15:34 +03:00
Yuri Kuznetsov
f860a8ecba role table ui impr 2025-04-09 09:12:25 +03:00
Yuri Kuznetsov
8fa5240dcd select style 2025-04-09 08:58:20 +03:00
Yuri Kuznetsov
9935c86538 native select 2025-04-08 22:46:02 +03:00
Yuri Kuznetsov
8ec1d5353f css fix 2025-04-08 22:24:22 +03:00
Yuri Kuznetsov
85ccb0da15 Merge branch 'fix' 2025-04-08 19:43:21 +03:00
Yuri Kuznetsov
b431f40f9f update ubuntu 2025-04-08 19:43:01 +03:00
Yuri Kuznetsov
2404dfff75 schema 2025-04-08 14:55:02 +03:00
Yuri Kuznetsov
e401f3aef2 read-only saved 2025-04-08 14:22:50 +03:00
Yuri Kuznetsov
33914a9b61 ref 2025-04-08 11:28:45 +03:00
Yuri Kuznetsov
46c23cec26 types 2025-04-08 10:56:36 +03:00
Yuri Kuznetsov
71cb29c507 ref 2025-04-08 10:49:54 +03:00
Yuri Kuznetsov
034a0b8ff1 dynamic logic required backend 2025-04-08 10:33:57 +03:00
Yuri Kuznetsov
f4c6c16df7 condition checker fix and has support 2025-04-07 18:32:41 +03:00
Yuri Kuznetsov
1bfc8a2b38 dynamic logic move 2025-04-07 17:14:11 +03:00
Yuri Kuznetsov
601cf8fdfd ConditionCheckerFactory 2025-04-07 11:27:11 +03:00
Yuri Kuznetsov
4be5829805 tests 2025-04-07 11:20:27 +03:00
Yuri Kuznetsov
66ae50b129 dynamic logic tool 2025-04-07 11:12:28 +03:00
Yuri Kuznetsov
daa94f53d0 jsdoc 2025-04-06 19:56:46 +03:00
Yuri Kuznetsov
42c54f4c84 X-Record-Link-Updated 2025-04-06 11:29:06 +03:00
Yuri Kuznetsov
633ac6e63f save context 2025-04-06 11:28:51 +03:00
Yuri Kuznetsov
8cfa9bd8af comments 2025-04-06 10:52:03 +03:00
Yuri Kuznetsov
7c63eabd76 remove legacy params 2025-04-06 10:37:41 +03:00
Yuri Kuznetsov
1dafe99fa9 debounce helper arguments 2025-04-05 17:58:05 +03:00
Yuri Kuznetsov
35431ede0d cs, jsdocs 2025-04-05 17:33:10 +03:00
Yuri Kuznetsov
869d73511c colorpicker alpha background stretch 2025-04-05 09:46:55 +03:00
Yuri Kuznetsov
3fab26158f cs 2025-04-04 19:07:47 +03:00
Yuri Kuznetsov
b1b0df004e compose email fix error handling 2025-04-04 18:24:44 +03:00
Yuri Kuznetsov
53bbfde2b2 ref 2025-04-04 18:23:31 +03:00
Yuri Kuznetsov
6c32b94376 email header refresh 2025-04-04 16:29:57 +03:00
Yuri Kuznetsov
8dd35ec9d3 email body to plain inprovement 2025-04-04 15:58:45 +03:00
Yuri Kuznetsov
55c7cff79d rename 2025-04-04 13:01:07 +03:00
Yuri Kuznetsov
06bd8ef175 ref 2025-04-04 13:00:15 +03:00
Yuri Kuznetsov
1894c5cc9a blank avatar cache 2025-04-04 12:34:41 +03:00
Yuri Kuznetsov
927fd7a589 avatar caching improvement 2025-04-04 12:27:07 +03:00
Yuri Kuznetsov
fe70eba7d6 attachment cache header change 2025-04-04 11:22:49 +03:00
Yuri Kuznetsov
4a4618ef56 html to plain link fix 2025-04-04 10:27:14 +03:00
Yuri Kuznetsov
3af94e3545 fix activities hasAttachment null => false 2025-04-03 22:22:48 +03:00
Yuri Kuznetsov
80ad254cf6 Merge branch 'master' of https://github.com/espocrm/espocrm 2025-04-03 22:21:41 +03:00
SuchAFuriousDeath
e4154a70ff Fix getActivitiesUserMeetingQueryin Activities service for Postgres (#3330)
* Fix getActivitiesUserMeetingQueryin Activities service

* change false to 'false'
2025-04-03 22:21:10 +03:00
Yuri Kuznetsov
0fe44b0885 fix 2025-04-03 11:15:42 +03:00
Yuri Kuznetsov
ad00a8cff8 expanded layout item params 2025-04-03 11:03:22 +03:00
Yuri Kuznetsov
8a71c651ae ref 2025-04-02 19:35:53 +03:00
Yuri Kuznetsov
c09c1a8298 imap security label fix, port autofill fix 2025-04-02 15:26:52 +03:00
Yuri Kuznetsov
c950559038 fix docs 2025-04-02 15:19:10 +03:00
Yuri Kuznetsov
251700eb50 external account languageIsGlobal 2025-04-02 12:18:48 +03:00
Yuri Kuznetsov
7bf3406735 fix labels 2025-04-01 15:22:07 +03:00
Yuri Kuznetsov
30e123ccbb fix smtp params transport preparator 2025-04-01 13:51:13 +03:00
Yuri Kuznetsov
d993f99ad1 add sensitive parameter annotation 2025-04-01 11:26:17 +03:00
Yuri Kuznetsov
e9fbb1d4d4 dynamic logic builder varchar matches fix 2025-04-01 10:50:28 +03:00
Yuri Kuznetsov
6f9ba6c7f6 smtp custom transport preparator 2025-03-31 23:36:33 +03:00
Yuri Kuznetsov
08f5bbeaba sender ref 2025-03-31 23:19:21 +03:00
Yuri Kuznetsov
520d55b98d sender ref 2025-03-31 23:12:12 +03:00
Yuri Kuznetsov
d57cea662d transport preparator 2025-03-31 22:49:23 +03:00
Yuri Kuznetsov
2f5b78f887 email sending library change 2025-03-31 19:15:30 +03:00
Yuri Kuznetsov
ef9795f6e4 send test notify 2025-03-31 15:27:59 +03:00
Yuri Kuznetsov
f8166a7109 fix 2025-03-31 15:27:09 +03:00
Yuri Kuznetsov
bcfd735844 fix send test 2025-03-31 15:24:34 +03:00
Yuri Kuznetsov
54f91df984 fix select 2025-03-30 22:33:14 +03:00
Yuri Kuznetsov
19843c19d1 sender replyTo set 2025-03-30 15:01:33 +03:00
Yuri Kuznetsov
e620317966 update libs 2025-03-30 13:45:43 +03:00
Yuri Kuznetsov
224187ba11 ref, suppress 2025-03-30 12:57:54 +03:00
Yuri Kuznetsov
9e9af5769a suppress inspection 2025-03-30 12:51:22 +03:00
Yuri Kuznetsov
1224e778d4 ref, deprecate 2025-03-29 19:55:42 +02:00
Yuri Kuznetsov
0ee1cbeaaf comment 2025-03-29 19:21:58 +02:00
Yuri Kuznetsov
d0c6400644 mail sender ref 2025-03-29 19:20:06 +02:00
Yuri Kuznetsov
19ae8f2499 Merge branch 'master' of https://github.com/espocrm/espocrm 2025-03-29 16:36:43 +02:00
Yuri Kuznetsov
0aae87a248 role edit view performance improvement 2025-03-29 16:36:21 +02:00
Yuri Kuznetsov
fa1bd30ac3 cleanup 2025-03-29 13:54:50 +02:00
SuchAFuriousDeath
73d0203b8f Fix doc comment (#3326) 2025-03-28 13:56:35 +02:00
Yuri Kuznetsov
caf3a729d1 formula: key access null coalescing 2025-03-27 17:13:04 +02:00
Yuri Kuznetsov
7e49e6491d formula: nested key access 2025-03-27 16:34:19 +02:00
Yuri Kuznetsov
ff045692d0 cs 2025-03-27 15:21:49 +02:00
Yuri Kuznetsov
2e0f0fb7db ref 2025-03-27 14:35:01 +02:00
Yuri Kuznetsov
7763ddb802 formula: key value access 2025-03-27 14:06:50 +02:00
Yuri Kuznetsov
eafd465ba2 formula: increment decrement 2025-03-27 12:01:04 +02:00
Yuri Kuznetsov
512ddc0d76 change insert 2025-03-27 11:36:02 +02:00
Yuri Kuznetsov
b2156f36b9 formula: array append 2025-03-27 11:13:07 +02:00
Yuri Kuznetsov
a56ccbd1f8 fix phpstan weird error 2025-03-26 15:34:47 +02:00
Yuri Kuznetsov
e91a98d0d5 fix 2025-03-26 15:27:35 +02:00
Yuri Kuznetsov
3d914d0591 fix 2025-03-26 15:18:13 +02:00
Yuri Kuznetsov
b95c1c8878 ref 2025-03-26 14:54:26 +02:00
Yuri Kuznetsov
f18ed3a531 ref 2025-03-26 13:57:53 +02:00
Yuri Kuznetsov
d2feca38d8 ref 2025-03-26 13:50:29 +02:00
Yuri Kuznetsov
41b0dd4e78 ref 2025-03-26 13:34:21 +02:00
Yuri Kuznetsov
e92b200eb3 update phpstan, ref 2025-03-26 12:24:39 +02:00
Yuri Kuznetsov
c1ae7dff95 select ref, docs 2025-03-26 11:10:24 +02:00
Yuri Kuznetsov
6cbf6cea73 access checker factory bind entityType 2025-03-26 10:59:47 +02:00
Yuri Kuznetsov
b8e1515015 ref 2025-03-25 18:19:16 +02:00
Yuri Kuznetsov
399bc60525 array field item max length param 2025-03-25 15:38:56 +02:00
Yuri Kuznetsov
913dc48bfe sensitive params 2025-03-25 14:32:48 +02:00
Yuri Kuznetsov
2af34da28f oauth providers 2025-03-25 14:15:39 +02:00
Yuri Kuznetsov
9043d37a08 fix 2025-03-25 13:45:12 +02:00
Yuri Kuznetsov
72cd6583d5 formula sandbox log errors 2025-03-25 13:42:23 +02:00
Yuri Kuznetsov
03969a20fe select for share mysql fix 2025-03-25 13:36:14 +02:00
Yuri Kuznetsov
f2a5e103dd fix 2025-03-25 09:50:48 +02:00
Yuri Kuznetsov
45d66461e8 wysiwyf mailto 2025-03-24 18:03:28 +02:00
Yuri Kuznetsov
79fb3eaa29 schema 2025-03-24 10:22:44 +02:00
Yuri Kuznetsov
946ad47765 jsdoc fix 2025-03-24 10:17:03 +02:00
Yuri Kuznetsov
488d5ab6ae added forbidden field name list 2025-03-24 09:15:58 +02:00
Yuri Kuznetsov
9c8d7d2062 user data ref 2025-03-24 09:13:07 +02:00
Yuri Kuznetsov
ce6abcd3f0 phone/email fields details 2025-03-23 12:01:07 +02:00
Yuri Kuznetsov
8f2ccb45a2 rename 2025-03-21 17:03:21 +02:00
Yuri Kuznetsov
415e9503f7 wysiwyg no none in list view 2025-03-21 12:42:16 +02:00
Yuri Kuznetsov
aec3e459b5 Merge branch 'fix' 2025-03-21 10:58:33 +02:00
Yuri Kuznetsov
0d2c30bcd9 Merge branch 'fix' 2025-03-21 10:52:21 +02:00
Yuri Kuznetsov
5cdcb8bd74 collapsable edit modal 2025-03-21 10:26:16 +02:00
Yuri Kuznetsov
e57018732f array field validate item not entered 2025-03-21 09:19:00 +02:00
Yuri Kuznetsov
4869d5f5b6 cleanup 2025-03-20 21:30:21 +02:00
Yuri Kuznetsov
7ffcb9031b ref 2025-03-20 21:22:36 +02:00
Yuri Kuznetsov
474fd25d3c ref 2025-03-20 21:15:18 +02:00
Yuri Kuznetsov
22d50aee21 modal bar ref 2025-03-20 20:59:04 +02:00
Yuri Kuznetsov
9fec3a57b2 ref 2025-03-20 20:44:49 +02:00
Yuri Kuznetsov
d3c480d481 ref 2025-03-20 20:38:28 +02:00
Yuri Kuznetsov
58e091b45e ref 2025-03-20 18:41:15 +02:00
Yuri Kuznetsov
c4303483b7 modal ref 2025-03-20 18:03:33 +02:00
Yuri Kuznetsov
c742c0859b impr confirm leave out, collapse modal ref 2025-03-20 16:59:02 +02:00
Yuri Kuznetsov
45ab1653a4 lead form ui changes 2025-03-20 14:23:42 +02:00
Yuri Kuznetsov
bc10efa640 today task danger style 2025-03-20 14:03:20 +02:00
Yuri Kuznetsov
757e2fbda1 text preview style impr 2025-03-20 12:34:10 +02:00
Yuri Kuznetsov
a09959a969 kb order do not restrict in portal 2025-03-20 11:15:02 +02:00
Yuri Kuznetsov
c39052a0d3 select applier factory ref 2025-03-20 11:12:29 +02:00
Yuri Kuznetsov
e321d61237 dynamlic logic builder not fix 2025-03-20 10:04:30 +02:00
Yuri Kuznetsov
678b3bb47d comment 2025-03-20 09:39:00 +02:00
Yuri Kuznetsov
489a5befde ref 2025-03-20 08:40:55 +02:00
Yuri Kuznetsov
c0a16d8b7c cleanup 2025-03-19 19:01:00 +02:00
Yuri Kuznetsov
2ce99b3702 order applier acl manager 2025-03-19 15:11:36 +02:00
Yuri Kuznetsov
8008741e35 order field access check 2025-03-19 14:54:45 +02:00
Yuri Kuznetsov
47edd2215f Merge branch 'fix' 2025-03-19 14:32:41 +02:00
Yuri Kuznetsov
ca5aa8edf0 remove no random_bytes fallback 2025-03-19 13:55:15 +02:00
Yuri Kuznetsov
81937ca606 secure froendend password generation 2 2025-03-19 13:25:16 +02:00
Yuri Kuznetsov
ba15bf8d7e secure frontend password generation 2025-03-19 13:19:52 +02:00
Yuri Kuznetsov
e529a72a00 test fix 2025-03-19 13:05:39 +02:00
Yuri Kuznetsov
080a7864b5 kanban createDisabled 2025-03-19 12:33:28 +02:00
Yuri Kuznetsov
3db7261c0e tooltips 2025-03-19 12:01:19 +02:00
Yuri Kuznetsov
bb47ab3261 Merge branch 'fix' 2025-03-19 11:21:59 +02:00
Yuri Kuznetsov
ee819fb58a lead form: use panel text 2025-03-18 18:51:07 +02:00
Yuri Kuznetsov
69eb1a1948 update package 2025-03-18 16:48:43 +02:00
Yuri Kuznetsov
a71bf16c51 element check cleanup 2025-03-18 16:42:05 +02:00
Yuri Kuznetsov
2a2e0cc15d update bullbone 2025-03-18 16:36:58 +02:00
Yuri Kuznetsov
fe99cf8db1 regression fix 2025-03-18 16:28:50 +02:00
Yuri Kuznetsov
5e7a089cb0 do not set person name unless all fields are present 2025-03-18 15:15:13 +02:00
Yuri Kuznetsov
a198cf8c65 cs 2025-03-18 14:19:19 +02:00
Yuri Kuznetsov
57e5202a28 schema 2025-03-18 14:17:01 +02:00
Yuri Kuznetsov
cf3cc2c4a5 ref 2025-03-18 14:14:53 +02:00
Yuri Kuznetsov
9eda4c48e9 style impr 2025-03-18 13:58:17 +02:00
Yuri Kuznetsov
06153536c1 cleanup 2025-03-18 13:45:25 +02:00
Yuri Kuznetsov
77fdd9e194 kb article full text search 2025-03-18 13:01:13 +02:00
Yuri Kuznetsov
0e383acfe3 jsdoc 2025-03-18 11:39:13 +02:00
Yuri Kuznetsov
9e65549eb3 select additional appliers in selectDefs 2025-03-18 11:08:12 +02:00
Yuri Kuznetsov
a6c0e2aa0e ref 2025-03-18 10:53:23 +02:00
Yuri Kuznetsov
67702f5a55 orm entity: prepare decimal 2025-03-18 10:04:56 +02:00
Yuri Kuznetsov
4270a452a7 ref 2025-03-18 09:25:04 +02:00
Yuri Kuznetsov
5178d72850 currency field: fix empty decimal part when 0 decimals 2025-03-18 09:09:43 +02:00
Yuri Kuznetsov
832cfb8915 record websocket debounce 2025-03-17 18:49:22 +02:00
Yuri Kuznetsov
79cd6ad7b9 user field select primary filter 2025-03-17 18:02:34 +02:00
Yuri Kuznetsov
a445c4d2a9 tab quick search order by length 2025-03-17 17:42:33 +02:00
Yuri Kuznetsov
4a1cb6a9d5 portal account contact backend default populate 2025-03-17 16:22:58 +02:00
Yuri Kuznetsov
5069547464 ref 2025-03-17 15:43:46 +02:00
Yuri Kuznetsov
335a62cb10 currency customizationOptionsReferenceDisabled 2025-03-17 15:26:40 +02:00
Yuri Kuznetsov
e74e9e519b setStatus methods 2025-03-17 15:25:45 +02:00
Yuri Kuznetsov
3f8fcbcb74 clnp 2025-03-17 15:20:05 +02:00
Yuri Kuznetsov
90db4b29c4 fix 2025-03-17 13:49:36 +02:00
dependabot[bot]
8fce28df3b Bump @babel/helpers from 7.26.0 to 7.26.10 (#3314)
Bumps [@babel/helpers](https://github.com/babel/babel/tree/HEAD/packages/babel-helpers) from 7.26.0 to 7.26.10.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.10/packages/babel-helpers)

---
updated-dependencies:
- dependency-name: "@babel/helpers"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-17 12:06:16 +02:00
dependabot[bot]
6ac4e7ef18 Bump axios from 1.7.5 to 1.8.3 (#3313)
Bumps [axios](https://github.com/axios/axios) from 1.7.5 to 1.8.3.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.7.5...v1.8.3)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-17 12:04:00 +02:00
Yuri Kuznetsov
9945080bec navbar item access data list 2025-03-17 11:44:53 +02:00
Yuri Kuznetsov
7dac68b6c0 user access checker check is active 2025-03-14 17:08:17 +02:00
Yuri Kuznetsov
209e828a49 Merge branch 'fix' 2025-03-14 16:58:48 +02:00
Yuri Kuznetsov
9b9ec31f0f lead form control save, error fix 2025-03-13 14:38:05 +02:00
Yuri Kuznetsov
946d0137af Merge branch 'fix' 2025-03-12 15:52:01 +02:00
Yuri Kuznetsov
3072c2a236 fix module name usage 2025-03-11 19:35:17 +02:00
Yuri Kuznetsov
a38803389c ref 2025-03-11 19:31:46 +02:00
Yuri Kuznetsov
4708cf00c0 ref 2025-03-11 19:30:19 +02:00
Yuri Kuznetsov
4d525ae8ef additional applier in kanban 2025-03-11 19:17:03 +02:00
Yuri Kuznetsov
57b69fe5a9 base field type label 2025-03-11 19:05:17 +02:00
Yuri Kuznetsov
6ee1387fcf Merge branch 'fix' 2025-03-11 19:01:26 +02:00
Yuri Kuznetsov
2abf1ccb73 base type change 2025-03-11 18:59:28 +02:00
Yuri Kuznetsov
09b977a798 custom field color 2025-03-11 14:47:10 +02:00
Yuri Kuznetsov
80fac162af field details 2025-03-11 14:19:55 +02:00
Yuri Kuznetsov
c5e43e6e49 field: set read only support not ready 2025-03-11 13:10:40 +02:00
Yuri Kuznetsov
08571e805a blockquote complex text margin 2025-03-10 20:52:28 +02:00
Yuri Kuznetsov
dd5691ef7f ref 2025-03-10 18:30:30 +02:00
Yuri Kuznetsov
6e43dc87f2 formula: return last expression 2025-03-10 16:17:27 +02:00
Yuri Kuznetsov
06dc8ef281 change event action 2025-03-10 13:35:16 +02:00
Yuri Kuznetsov
b05b4c78e8 schema desc 2025-03-08 11:58:36 +02:00
Yuri Kuznetsov
9726d63d0b ref 2025-03-08 11:56:48 +02:00
Yuri Kuznetsov
4ca7d27d39 optimistic concurrency control: skip 2025-03-08 11:56:41 +02:00
Yuri Kuznetsov
29b2304b25 bottom panels first tab select impr 2025-03-07 19:38:54 +02:00
Yuri Kuznetsov
8bca3b2113 jsdoc 2025-03-07 18:07:42 +02:00
Yuri Kuznetsov
7181d7196f ref 2025-03-07 13:28:31 +02:00
Yuri Kuznetsov
28ebc6ea81 ref 2025-03-07 12:36:18 +02:00
Yuri Kuznetsov
f3c4e631cd ref 2025-03-07 11:46:21 +02:00
Yuri Kuznetsov
cc14c69a5e duration focus after update fix 2025-03-06 13:56:00 +02:00
Yuri Kuznetsov
5ae385527b default preparator: use account contact links 2025-03-06 10:19:26 +02:00
Yuri Kuznetsov
b6aec6360b dynamic logic render deleted 2025-03-05 11:33:24 +02:00
Yuri Kuznetsov
5a5528f78f command.php add DIR 2025-03-05 11:09:35 +02:00
Yuri Kuznetsov
a3f11919c9 control label no select 2025-03-05 09:51:58 +02:00
Yuri Kuznetsov
3847afc50f view user access for acl entities 2025-03-05 09:50:17 +02:00
Yuri Kuznetsov
a3e7f5c5fa websocket ref 2025-03-03 10:03:02 +02:00
Yuri Kuznetsov
1fe2c74691 dropdown fix 2025-03-02 13:13:48 +02:00
Yuri Kuznetsov
7b5789e44c parent field get select layout method 2025-03-02 12:36:10 +02:00
Yuri Kuznetsov
61e03fd12a field editCancel set option & skipReRenderInEditMode 2025-03-01 17:38:39 +02:00
Yuri Kuznetsov
5f6bd7b748 currency converter forbidden exception 2025-03-01 11:55:39 +02:00
Yuri Kuznetsov
1e9a59f084 starred style change 2025-03-01 10:36:05 +02:00
Yuri Kuznetsov
9e11cecfa5 text field list enter impr 2025-03-01 09:42:02 +02:00
Yuri Kuznetsov
8a76e70fcb add exit code 2025-02-28 19:24:54 +02:00
Yuri Kuznetsov
92e4d03495 1 exit code on upgrade failure 2025-02-28 18:55:29 +02:00
Yuri Kuznetsov
a9d059c0df comment 2025-02-27 20:44:41 +02:00
Yuri Kuznetsov
2b14e11259 fix text height 2025-02-27 20:41:18 +02:00
Yuri Kuznetsov
50cde83341 note post to label 2025-02-27 20:37:40 +02:00
Yuri Kuznetsov
0283f781d7 cs 2025-02-27 20:31:23 +02:00
Yuri Kuznetsov
ddd54c321e Merge branch 'fix' 2025-02-27 20:21:41 +02:00
Yuri Kuznetsov
6209733497 wysiwyg iframe sandbox 2025-02-26 21:51:59 +02:00
Yuri Kuznetsov
5e37bc2d62 Merge branch 'fix' 2025-02-26 21:24:45 +02:00
Yuri Kuznetsov
5020c132b5 cal getAdditionalActionList for user 2025-02-26 14:06:09 +02:00
Yuri Kuznetsov
b70a354556 label changes 2025-02-25 10:33:35 +02:00
Yuri Kuznetsov
92f5afef3c options layout changes 2025-02-25 10:31:10 +02:00
Yuri Kuznetsov
9a407eef6d include shared dashlet parameter 2025-02-25 10:24:17 +02:00
Yuri Kuznetsov
e635a28f16 layout mass update filter fields 2025-02-24 21:57:17 +02:00
Yuri Kuznetsov
adbed86617 cleanup 2025-02-24 18:40:30 +02:00
Yuri Kuznetsov
eb556b978b campaign informational email 2025-02-24 18:08:48 +02:00
Yuri Kuznetsov
5b1647a42f campaign ref 2025-02-24 15:46:25 +02:00
Yuri Kuznetsov
153c09f282 mass email: skip for inactive campaign 2025-02-24 15:05:53 +02:00
Yuri Kuznetsov
8350bebb50 opportunity probability allow empty 2025-02-24 13:43:08 +02:00
Yuri Kuznetsov
75e5701a3b ref 2025-02-24 13:40:47 +02:00
Yuri Kuznetsov
eb7ca6188c ref 2025-02-24 13:22:56 +02:00
Yuri Kuznetsov
e80a885208 ref 2025-02-24 13:19:19 +02:00
Yuri Kuznetsov
b1076ba1bd full text search for cases 2025-02-24 13:10:35 +02:00
Yuri Kuznetsov
ed281abd92 cs 2025-02-24 13:06:45 +02:00
Yuri Kuznetsov
e63111c93f list column adjust width if greater than 100 2025-02-24 12:54:28 +02:00
Yuri Kuznetsov
e87ba0c4e1 ref 2025-02-23 18:40:36 +02:00
Yuri Kuznetsov
79f7243e70 ref 2025-02-23 18:21:22 +02:00
Yuri Kuznetsov
b19f148ee8 ref 2025-02-23 17:56:51 +02:00
Yuri Kuznetsov
4ee79811bc ref 2025-02-23 17:08:31 +02:00
Yuri Kuznetsov
e79e9d6ce1 ref 2025-02-23 15:05:29 +02:00
Yuri Kuznetsov
ddae4383dd jsdoc 2025-02-23 10:47:23 +02:00
Yuri Kuznetsov
683751ac0c cleanup 2025-02-23 10:11:03 +02:00
Yuri Kuznetsov
8407d27ea0 entity param 2025-02-23 10:10:31 +02:00
Yuri Kuznetsov
4126b99a7b ref 2025-02-23 10:10:23 +02:00
Yuri Kuznetsov
69003eae7f ref 2025-02-22 21:57:27 +02:00
Yuri Kuznetsov
ec5e173e40 ref 2025-02-22 20:11:38 +02:00
Yuri Kuznetsov
06603bd2b3 chart no user select 2025-02-22 13:26:31 +02:00
Yuri Kuznetsov
11263671b2 fix 2025-02-22 12:21:18 +02:00
Yuri Kuznetsov
e9f0880f01 dropdown up fix 2025-02-22 11:46:41 +02:00
Yuri Kuznetsov
2fac2328d0 ref 2025-02-22 11:25:55 +02:00
Yuri Kuznetsov
3ef7382ab0 jsdoc 2025-02-22 10:28:24 +02:00
Yuri Kuznetsov
fb4379ea34 search manager ref 2025-02-22 10:27:24 +02:00
Yuri Kuznetsov
e7bea7e7fe ref, types 2025-02-22 09:28:03 +02:00
Yuri Kuznetsov
20ea95238b onMassSelect 2025-02-22 09:15:28 +02:00
Yuri Kuznetsov
1098540ae4 ref 2025-02-22 09:03:34 +02:00
Yuri Kuznetsov
3ae31f6341 ref 2025-02-22 08:42:58 +02:00
Yuri Kuznetsov
014c6a3b73 ref 2025-02-21 20:31:06 +02:00
Yuri Kuznetsov
65f9cd35c9 ref 2025-02-21 19:02:23 +02:00
Yuri Kuznetsov
324bc26e1e ref 2025-02-21 18:42:26 +02:00
Yuri Kuznetsov
234ff55376 ref 2025-02-21 17:58:19 +02:00
Yuri Kuznetsov
e13f79134e ref 2025-02-21 17:50:23 +02:00
Yuri Kuznetsov
f78ca003d2 ref 2025-02-21 17:40:23 +02:00
Yuri Kuznetsov
d7460a9e0a ref 2025-02-21 17:29:38 +02:00
Yuri Kuznetsov
85a98326fe ref 2025-02-21 17:07:39 +02:00
Yuri Kuznetsov
5d1584ce83 timeline animate refresh 2025-02-21 16:46:24 +02:00
Yuri Kuznetsov
5f02605aca ref 2025-02-21 16:43:48 +02:00
Yuri Kuznetsov
b3b1441510 jsdoc fix 2025-02-21 16:40:13 +02:00
Yuri Kuznetsov
84ba790ef9 fix collection trigger sync 2025-02-21 16:37:29 +02:00
Yuri Kuznetsov
de93e83abe ref 2025-02-21 16:33:43 +02:00
Yuri Kuznetsov
1bcb8349de ref 2025-02-21 16:22:06 +02:00
Yuri Kuznetsov
dc527c2cf6 ref 2025-02-21 16:15:12 +02:00
Yuri Kuznetsov
71daa4ce2f ref 2025-02-21 16:06:36 +02:00
Yuri Kuznetsov
a13710e9d2 ref 2025-02-21 15:37:31 +02:00
Yuri Kuznetsov
bf2e7ac236 ref 2025-02-21 15:34:30 +02:00
Yuri Kuznetsov
72120f262d ref 2025-02-21 15:31:40 +02:00
Yuri Kuznetsov
6cde07a75b ref 2025-02-21 14:43:39 +02:00
Yuri Kuznetsov
42213789ba ref 2025-02-21 14:41:00 +02:00
Yuri Kuznetsov
598655ef33 ref 2025-02-21 14:20:32 +02:00
Yuri Kuznetsov
b247b00bd7 list sync keep modal 2025-02-21 14:02:58 +02:00
Yuri Kuznetsov
d39a732d17 ref 2025-02-21 13:40:50 +02:00
Yuri Kuznetsov
86e2e39772 cleanup 2025-02-21 13:16:20 +02:00
Yuri Kuznetsov
6405ab2b17 ref 2025-02-21 12:58:59 +02:00
Yuri Kuznetsov
cbbde8af9b ref 2025-02-21 12:29:14 +02:00
Yuri Kuznetsov
2c4779a98c notifyWait usage 2025-02-21 12:07:36 +02:00
Yuri Kuznetsov
b465faf936 remove related from list related 2025-02-21 12:04:13 +02:00
Yuri Kuznetsov
a0a801a7c7 list related full refresh 2025-02-21 12:01:09 +02:00
Yuri Kuznetsov
2863654f8f edit modal helper ref 2025-02-21 11:50:46 +02:00
Yuri Kuznetsov
717869d0da npm run commands 2025-02-20 21:28:13 +02:00
Yuri Kuznetsov
115465f017 schema 2025-02-20 21:17:54 +02:00
Yuri Kuznetsov
738f483aef integration populate defaults on rebuild 2025-02-20 21:12:11 +02:00
Yuri Kuznetsov
f7e782f081 ref Integration entity 2025-02-20 21:08:29 +02:00
Yuri Kuznetsov
2214c70b2b jsdoc, ref, modal afterExpand 2025-02-20 18:46:01 +02:00
Yuri Kuznetsov
7f4bc6f952 setInContainerNotWritten 2025-02-20 17:39:20 +02:00
Yuri Kuznetsov
bf28abc4ca email: do not re-add users on save 2025-02-20 16:56:47 +02:00
Yuri Kuznetsov
963b9e9e59 entity get fetched link multiple id list 2025-02-20 16:49:37 +02:00
Yuri Kuznetsov
8a8de30949 ref 2025-02-20 16:08:54 +02:00
Yuri Kuznetsov
cee67cbd97 ref 2025-02-20 15:24:31 +02:00
Yuri Kuznetsov
d60d834a65 cleanup 2025-02-20 14:09:20 +02:00
Yuri Kuznetsov
c1a10bf926 nameAttribute param 2025-02-20 13:20:26 +02:00
Yuri Kuznetsov
a1dd707315 dropdown up 2025-02-20 12:47:47 +02:00
Yuri Kuznetsov
60d778bcb1 ref 2025-02-20 11:38:43 +02:00
Yuri Kuznetsov
d6291b03e3 ref 2025-02-20 11:10:19 +02:00
Yuri Kuznetsov
24b5b94d63 ref 2025-02-20 11:07:07 +02:00
Yuri Kuznetsov
85d4f6f304 ref 2025-02-20 10:59:12 +02:00
Yuri Kuznetsov
da2c80b4fc jsdocs 2025-02-20 10:48:50 +02:00
Yuri Kuznetsov
18a91d633d ref 2025-02-20 10:47:13 +02:00
Yuri Kuznetsov
65ec35f4dd cleanup 2025-02-20 10:41:14 +02:00
Yuri Kuznetsov
515e388521 see more after stream post 2025-02-19 19:43:05 +02:00
Yuri Kuznetsov
b9037b9a52 ref 2025-02-19 19:29:13 +02:00
Yuri Kuznetsov
0bf7bcb204 whitespace fix 2025-02-19 18:50:14 +02:00
Yuri Kuznetsov
bec4a188a3 css fix 2025-02-19 18:47:35 +02:00
Yuri Kuznetsov
df6b5ae043 model-sync set 2025-02-19 18:04:46 +02:00
Yuri Kuznetsov
e29d0959c4 page content width param 2025-02-19 13:27:03 +02:00
Yuri Kuznetsov
cce73a8c32 ref 2025-02-19 12:13:48 +02:00
Yuri Kuznetsov
eee9d37c97 Merge branch 'master' of https://github.com/espocrm/espocrm 2025-02-19 12:00:34 +02:00
Yuri Kuznetsov
4b983afc5c middle dot usage 2025-02-19 12:00:24 +02:00
Yuri Kuznetsov
3a1dd252e1 Merge branch 'fix' 2025-02-19 11:55:01 +02:00
Andrew Fontana
732a4a24e6 Fix typo AccessChecker.php (#3289)
Was using capital I in getLinkMultipleIdList.
2025-02-19 08:29:30 +02:00
Yuri Kuznetsov
64e3cd23ad Merge branch 'fix' 2025-02-18 09:31:39 +02:00
Yuri Kuznetsov
9b0549a762 foreign fields setup fix 2025-02-17 21:32:29 +02:00
Yuri Kuznetsov
b0681b89ea multi enum ui impr 2025-02-17 17:35:48 +02:00
Yuri Kuznetsov
2182cf6a89 multi-select dropdown items style 2025-02-17 17:00:15 +02:00
Yuri Kuznetsov
2e13d48518 multi-enum option style 2025-02-17 16:32:10 +02:00
Yuri Kuznetsov
841e570e57 multi select do not increase height on drag 2025-02-17 15:14:39 +02:00
Yuri Kuznetsov
1a08df7824 Merge branch 'fix' 2025-02-17 15:02:21 +02:00
Yuri Kuznetsov
38a9c69bde Merge branch 'fix' 2025-02-17 11:17:02 +02:00
Yuri Kuznetsov
80c5decee8 list to detail collection cloning and sync 2025-02-16 20:00:18 +02:00
Yuri Kuznetsov
21b84c9f36 ref, jsdoc 2025-02-16 18:59:45 +02:00
Yuri Kuznetsov
970966e4c5 edit header ref 2025-02-16 18:04:51 +02:00
Yuri Kuznetsov
4336344d40 full refresh on header title click 2025-02-16 17:57:03 +02:00
Yuri Kuznetsov
fe9740e3eb ref 2025-02-16 17:37:12 +02:00
Yuri Kuznetsov
7581942b0c ref 2025-02-16 16:59:32 +02:00
Yuri Kuznetsov
5dfab7e325 ref 2025-02-16 16:48:59 +02:00
Yuri Kuznetsov
e93f338a9e jsdocs 2025-02-16 16:47:00 +02:00
Yuri Kuznetsov
d1b3afdd01 clone model on list to detail 2025-02-16 16:45:22 +02:00
Yuri Kuznetsov
054fde7288 suppress inspection 2025-02-16 16:33:06 +02:00
Yuri Kuznetsov
f887d05d5e Merge branch 'fix' 2025-02-16 16:31:00 +02:00
Yuri Kuznetsov
926a052e99 update dependencies 2025-02-15 15:11:54 +02:00
Yuri Kuznetsov
a7d10ae9d6 update summernote 2025-02-15 15:09:40 +02:00
Yuri Kuznetsov
0757ebf520 update dom purify 2025-02-15 14:59:05 +02:00
Yuri Kuznetsov
20479cdcab Merge branch 'fix' 2025-02-15 14:53:57 +02:00
Yuri Kuznetsov
50b7f2cf30 rename 2025-02-12 13:41:30 +02:00
Yuri Kuznetsov
cf20fe65cc fix test 2025-02-12 13:40:29 +02:00
Yuri Kuznetsov
a676f26c36 mail config data provider 2025-02-12 13:35:19 +02:00
Yuri Kuznetsov
8ba7fdfa85 ref 2025-02-12 13:23:27 +02:00
Yuri Kuznetsov
f81861df19 update ubuntu 2025-02-12 13:08:20 +02:00
Yuri Kuznetsov
1d6f654c2f collection methods 2025-02-12 12:43:31 +02:00
Yuri Kuznetsov
67df53dda8 throw not found, not error 2025-02-12 11:32:08 +02:00
Yuri Kuznetsov
11bc32ab8a cleanup 2025-02-12 11:24:27 +02:00
Yuri Kuznetsov
f5610bbdb4 modal maximize focus 2025-02-12 11:13:36 +02:00
Yuri Kuznetsov
24cd1b3c5d image number muted text 2025-02-12 11:03:26 +02:00
Yuri Kuznetsov
48c2bda539 cleanup 2025-02-12 10:57:20 +02:00
Yuri Kuznetsov
7888f5ca74 image number 2025-02-12 10:57:10 +02:00
Yuri Kuznetsov
1dfdb261e1 image preview ref 2025-02-12 10:25:45 +02:00
Yuri Kuznetsov
7b0217be6a cleanup 2025-02-12 09:34:37 +02:00
Yuri Kuznetsov
bab9140ef2 fit image on maximize 2025-02-11 21:18:50 +02:00
Yuri Kuznetsov
ddee6815af full screen image modal 2025-02-11 20:31:01 +02:00
Yuri Kuznetsov
4e9dbc98e3 image/avif 2025-02-11 19:06:34 +02:00
Yuri Kuznetsov
c313e72f75 target list categories 2025-02-11 18:45:46 +02:00
Yuri Kuznetsov
e0c84e007c client page theme, lead form theme 2025-02-11 15:35:00 +02:00
Yuri Kuznetsov
fe2f15c576 webhook: skip version number 2025-02-11 14:27:27 +02:00
Yuri Kuznetsov
87ef57eb29 client page custom title, lead form custom title 2025-02-11 14:23:00 +02:00
Yuri Kuznetsov
6f75dd3dbe cleanup 2025-02-11 13:11:19 +02:00
Yuri Kuznetsov
1d45e6d839 Merge branch 'fix' 2025-02-11 13:08:41 +02:00
Yuri Kuznetsov
8d6e8f2610 optimistic concurrency control improvement and ref 2025-02-11 12:54:33 +02:00
Yuri Kuznetsov
fe81fd3549 ref 2025-02-11 11:44:46 +02:00
Yuri Kuznetsov
fbfa219615 resolve conflict: improve ui 2025-02-11 11:39:41 +02:00
Yuri Kuznetsov
1e1ee6ba8c enable concurrency writing control for some entity types 2025-02-11 11:30:33 +02:00
Yuri Kuznetsov
c51bb22822 ref 2025-02-11 11:28:13 +02:00
Yuri Kuznetsov
7c32b525a3 entity manager: rebuild on reset to default 2025-02-11 11:21:56 +02:00
Yuri Kuznetsov
b242119e00 varcha field: any of, none of filters 2025-02-10 18:48:20 +02:00
Yuri Kuznetsov
ecf90a3941 navbar tabs: remove last dividers 2025-02-10 17:16:46 +02:00
Yuri Kuznetsov
c97ba58dcb Merge branch 'fix' 2025-02-10 16:59:27 +02:00
Yuri Kuznetsov
280accd9ad complex text style changes 2025-02-10 16:57:31 +02:00
Yuri Kuznetsov
f59122254d case & task description height 2025-02-10 16:36:48 +02:00
Yuri Kuznetsov
137b6fcff7 text field: show more after editing 2025-02-10 16:31:51 +02:00
Yuri Kuznetsov
44b9f60478 text field: prevent unwanted scroll on enter 2025-02-10 16:25:10 +02:00
Yuri Kuznetsov
a34c0ff776 Merge branch 'fix' 2025-02-10 16:14:14 +02:00
Yuri Kuznetsov
9c45642d79 Merge branch 'stable' 2025-02-09 23:00:16 +02:00
Yuri Kuznetsov
b8dc4e2dcd collection maxSize option 2025-02-09 12:17:41 +02:00
Yuri Kuznetsov
e4959e0c38 cleanup 2025-02-08 15:18:50 +02:00
Yuri Kuznetsov
dbafd6ba4d ORM: Mapper relate return false if no row affected 2025-02-08 15:16:43 +02:00
Yuri Kuznetsov
0f1057a6cf Merge branch 'fix' 2025-02-08 14:55:23 +02:00
Yuri Kuznetsov
4ce40dd85c markdown list items erase empty 2025-02-07 22:59:06 +02:00
Yuri Kuznetsov
bf2813c241 Merge branch 'fix' 2025-02-07 22:43:03 +02:00
Yuri Kuznetsov
6349db3122 text field markdown line syntax helper 2025-02-07 22:05:46 +02:00
Yuri Kuznetsov
62c7af7b38 style from options reference 2025-02-07 20:14:46 +02:00
Yuri Kuznetsov
6ab55fcd22 return static 2025-02-07 19:56:42 +02:00
Yuri Kuznetsov
947f049893 init systemConfig 2025-02-07 19:53:50 +02:00
Yuri Kuznetsov
71cbbbe556 Merge branch 'fix' 2025-02-07 19:40:59 +02:00
Yuri Kuznetsov
b2ee92d606 fix test 2025-02-07 14:30:08 +02:00
Yuri Kuznetsov
b68100df38 skip version check if @@version 2025-02-07 14:12:48 +02:00
Yuri Kuznetsov
41b8bb0acc config services 2025-02-07 14:05:08 +02:00
Yuri Kuznetsov
1b52f3ca3e ref 2025-02-07 13:55:28 +02:00
Yuri Kuznetsov
8ff6c8bd03 Merge branch 'fix' 2025-02-07 13:53:31 +02:00
Yuri Kuznetsov
ed9cb77bba use bfcache 2025-02-06 12:56:23 +02:00
Yuri Kuznetsov
6ad1d917bd Merge branch 'master' of https://github.com/espocrm/espocrm 2025-02-06 11:05:07 +02:00
Yuri Kuznetsov
e5c24a5fdc Merge branch 'stable' 2025-02-06 11:04:54 +02:00
dependabot[bot]
a6dd1d9db0 Bump phpoffice/phpspreadsheet from 1.29.8 to 1.29.9 (#3262)
Bumps [phpoffice/phpspreadsheet](https://github.com/PHPOffice/PhpSpreadsheet) from 1.29.8 to 1.29.9.
- [Release notes](https://github.com/PHPOffice/PhpSpreadsheet/releases)
- [Changelog](https://github.com/PHPOffice/PhpSpreadsheet/blob/1.29.9/CHANGELOG.md)
- [Commits](https://github.com/PHPOffice/PhpSpreadsheet/compare/1.29.8...1.29.9)

---
updated-dependencies:
- dependency-name: phpoffice/phpspreadsheet
  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-02-03 18:44:39 +02:00
Yuri Kuznetsov
b334da55ed fix comment 2025-02-01 13:44:01 +02:00
Yuri Kuznetsov
c6c2d5a0d9 ref 2025-02-01 12:56:13 +02:00
Yuri Kuznetsov
fc89a1bdf6 Merge branch 'fix' 2025-02-01 12:47:20 +02:00
Yuri Kuznetsov
489f71ea47 getVersion method 2025-01-31 21:09:21 +02:00
Yuri Kuznetsov
029331b3b7 Merge branch 'fix' 2025-01-31 21:01:39 +02:00
Yuri Kuznetsov
70aba2ec52 system config 2025-01-31 21:00:55 +02:00
Yuri Kuznetsov
ed0b8b4758 fix schema 2025-01-31 21:00:54 +02:00
Yuri Kuznetsov
251fb2cd49 phone number international validator class 2025-01-31 21:00:54 +02:00
Yuri Kuznetsov
0dc5b8282a larger gap above bottom panels if tabs in recird middle 2025-01-31 21:00:54 +02:00
Yuri Kuznetsov
d5eb165ea4 no user select on control label 2025-01-31 21:00:54 +02:00
Yuri Kuznetsov
9d4b39c1f7 one time code autocomplete param 2025-01-31 21:00:54 +02:00
Yuri Kuznetsov
c3dda027bf form 500px width, sticky button centered 2025-01-31 21:00:54 +02:00
dependabot[bot]
0307e9752d Bump phpoffice/phpspreadsheet from 1.29.7 to 1.29.8 (#3256)
Bumps [phpoffice/phpspreadsheet](https://github.com/PHPOffice/PhpSpreadsheet) from 1.29.7 to 1.29.8.
- [Release notes](https://github.com/PHPOffice/PhpSpreadsheet/releases)
- [Changelog](https://github.com/PHPOffice/PhpSpreadsheet/blob/1.29.8/CHANGELOG.md)
- [Commits](https://github.com/PHPOffice/PhpSpreadsheet/compare/1.29.7...1.29.8)

---
updated-dependencies:
- dependency-name: phpoffice/phpspreadsheet
  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-01-27 18:24:53 +02:00
4915 changed files with 61609 additions and 26368 deletions

View File

@@ -16,6 +16,10 @@ For this, please use our [forum](https://forum.espocrm.com).
If you are very new to EspoCRM, it's probable that an issue you ran into is not a bug.
Consider creating a topic on our [forum](https://forum.espocrm.com/forum/general) instead.
#### Upgrade issues
For upgrade-related issues, create a topic on the forum in the appropriate [section](https://forum.espocrm.com/forum/installation-and-upgrade-help). Upgrade-related issues posted on GitHub are removed.
#### Project's best interest
The issue tracker is for the benefit of the EspoCRM project. The project maintainers are going to handle issues in the project's best interest.
@@ -25,9 +29,18 @@ The maintainers have right to close issues without explanation.
As we reference GitHub issues in release notes, we strive to keep them free of off-topic comments.
#### Code-level issues
If an issue is not reproducible by actions made via the UI but only by coding, the reporter is expected to have a clear
understanding of its cause and to provide an explanation of it — unless the cause is obvious from the context.
Otherwise, it's advisable to post on the forum in the Developer Help section.
## Pull Requests
We are open for contributions that are bug fixes and small improvements. If you would like to contribute something that is not a small fix, please reach out to maintainers before submitting your PR (by creating a GitHub issue).
We are open for contributions that are bug fixes and small improvements. If you would like to contribute something
that is not a small fix, please reach out to maintainers before submitting your PR
(by creating a GitHub issue or a forum post).
Before we can merge your pull request, you need to accept our CLA [here](https://github.com/espocrm/cla).

20
.github/ISSUE_TEMPLATE/code_mistake.md vendored Normal file
View File

@@ -0,0 +1,20 @@
---
name: Mistake or typo
about: Report a typo or mistake in the code.
title: ''
labels: ''
assignees: ''
---
**Describe the mistake**
A clear and concise description of the mistake or typo.
**Location**
Path of the file where the mistake is found. Paste the incorrect line or snippet if helpful.
**Suggested correction**
How it should be fixed.
**Additional context**
Add any other context about the problem here.

View File

@@ -1,5 +1,11 @@
blank_issues_enabled: false
contact_links:
- name: EspoCRM forum
- name: Upgrade issue
url: https://forum.espocrm.com/forum/installation-and-upgrade-help
about: "If something went wrong with an upgrade."
- name: Feature request
url: https://forum.espocrm.com/forum/feature-requests
about: "Use our forum for feature requests."
- name: Forum
url: https://forum.espocrm.com/
about: "Use our forum for help requests and questions not related to product development. We don't provide support on GitHub."
about: "Use our forum for help requests and questions. We don't provide support on GitHub."

View File

@@ -1,6 +1,6 @@
---
name: Feature request
about: For high-level features, create feature requests on our forum. For low-level (framework) here on GitHub.
name: Feature request for framework
about: For low-level features. For high-level features, create feature requests on our forum.
title: ''
labels: ''
assignees: ''

View File

@@ -7,7 +7,7 @@ on:
jobs:
test:
name: Test on PHP ${{ matrix.php-versions }}
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
env:
TEST_DATABASE_HOST: '127.0.0.1'
TEST_DATABASE_PLATFORM: 'Postgresql'

View File

@@ -7,7 +7,7 @@ on:
jobs:
test:
name: Test on PHP ${{ matrix.php-versions }}
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
env:
TEST_DATABASE_HOST: '127.0.0.1'
TEST_DATABASE_PORT: '8888'

View File

@@ -23,7 +23,7 @@ on:
jobs:
test:
name: Test on PHP ${{ matrix.php-versions }}
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
strategy:
matrix:
php-versions: ['8.2', '8.3', '8.4']

1
.gitignore vendored
View File

@@ -7,6 +7,7 @@
/data/config-internal.php
/data/config-override.php
/data/config-internal-override.php
/data/state.php
/data/tmp/*
/build
/node_modules

View File

@@ -2,7 +2,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-${YEAR} Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-${YEAR} EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify

38
.idea/jsonSchemas.xml generated
View File

@@ -341,6 +341,25 @@
</SchemaInfo>
</value>
</entry>
<entry key="metadata/app/clientIcons">
<value>
<SchemaInfo>
<option name="generatedName" value="New Schema" />
<option name="name" value="metadata/app/clientIcons" />
<option name="relativePathToSchema" value="schema/metadata/app/clientIcons.json" />
<option name="schemaVersion" value="JSON Schema version 7" />
<option name="patterns">
<list>
<Item>
<option name="pattern" value="true" />
<option name="path" value="*/Resources/metadata/app/clientIcons.json" />
<option name="mappingKind" value="Pattern" />
</Item>
</list>
</option>
</SchemaInfo>
</value>
</entry>
<entry key="metadata/app/clientRecord">
<value>
<SchemaInfo>
@@ -1386,6 +1405,25 @@
</SchemaInfo>
</value>
</entry>
<entry key="metadata/logicDefs">
<value>
<SchemaInfo>
<option name="generatedName" value="New Schema" />
<option name="name" value="metadata/logicDefs" />
<option name="relativePathToSchema" value="schema/metadata/logicDefs.json" />
<option name="schemaVersion" value="JSON Schema version 7" />
<option name="patterns">
<list>
<Item>
<option name="pattern" value="true" />
<option name="path" value="*/metadata/logicDefs/*.json" />
<option name="mappingKind" value="Pattern" />
</Item>
</list>
</option>
</SchemaInfo>
</value>
</entry>
<entry key="metadata/notificationDefs">
<value>
<SchemaInfo>

12
.vscode/settings.json vendored
View File

@@ -82,6 +82,12 @@
],
"url": "./schema/metadata/integrations.json"
},
{
"fileMatch": [
"*/metadata/logicDefs/*.json"
],
"url": "./schema/metadata/logicDefs.json"
},
{
"fileMatch": [
"*/metadata/notificationDefs/*.json"
@@ -184,6 +190,12 @@
],
"url": "./schema/metadata/app/client.json"
},
{
"fileMatch": [
"*/Resources/metadata/app/clientIcons.json"
],
"url": "./schema/metadata/app/clientIcons.json"
},
{
"fileMatch": [
"*/Resources/metadata/app/clientRecord.json"

View File

@@ -2,7 +2,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -184,8 +184,12 @@ module.exports = grunt => {
comments: /^!/,
},
beautify: false,
mangle: true,
compress: true
compress: {
sequences: false,
collapse_vars: false,
keep_fargs: true,
webkit: true,
},
},
bundle: {
options: {

View File

@@ -20,23 +20,23 @@ You can try the CRM on an online [demo](https://www.espocrm.com/demo/).
### Requirements
* PHP 8.2 - 8.4;
* MySQL 5.7 (and later), or MariaDB 10.2 (and later);
* 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/).
### Why EspoCRM?
* **Open-source transparency**. EspoCRMs source code is open and accessible, so anyone can inspect it and see how data is being managed within the CRM.
* **Customization freedom**. You can develop features, create custom entities, fields, relationships, buttons to make the CRM fit your specific needs.
* **Clean user interface**. EspoCRM offers an uncluttered, minimalist, and fast user interface, which is easy to navigate and has a short learning curve.
* **Straightforward REST API**. It can be easily integrated with other applications using a REST API.
* 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.
* Customization freedom. You can develop features, create custom entities, fields, relationships, buttons to make the system fit your specific needs. EspoCRM is more than a CRM it's a platform for building custom business applications.
* Clean user interface. EspoCRM offers an uncluttered, minimalist, and fast user interface, which is easy to navigate and has a short learning curve.
* Straightforward REST API. It can be easily integrated with other applications using a REST API.
### Who is EspoCRM for?
* **Startups, small & medium-sized businesses**. Its an affordable solution that is flexible and fully customizable.
* **Developers & tech enthusiasts**. You can extend functionalities, build extensions, and create custom integrations.
* **Anyone seeking a free CRM**. If you're looking for a user-friendly and secure CRM platform, it can be a good option.
* Startups, small & medium-sized businesses. It's an affordable solution that is flexible and fully customizable.
* Developers & tech enthusiasts. You can extend functionalities, build extensions, and create custom integrations.
* Anyone seeking a free CRM. If you're looking for a user-friendly and secure CRM platform, it can be a good option.
### Installing stable version

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -53,6 +53,11 @@ class Binding implements BindingProcessor
private function bindServices(Binder $binder): void
{
$binder->bindService(
'Espo\\Core\\Application\\ApplicationParams',
'applicationParams'
);
$binder->bindService(
'Espo\\Core\\InjectableFactory',
'injectableFactory'
@@ -128,11 +133,6 @@ class Binding implements BindingProcessor
'authTokenManager'
);
$binder->bindService(
'Espo\\Core\\Select\\SelectBuilderFactory',
'selectBuilderFactory'
);
$binder->bindService(
'Espo\\Core\\ServiceFactory',
'serviceFactory'
@@ -232,6 +232,16 @@ class Binding implements BindingProcessor
'Espo\\Tools\\Stream\\Service',
'streamService'
);
$binder->bindService(
'Espo\\Core\\Utils\\Config\\SystemConfig',
'systemConfig'
);
$binder->bindService(
'Espo\\Core\\Utils\\Config\\ApplicationConfig',
'applicationConfig'
);
}
private function bindCore(Binder $binder): void
@@ -245,6 +255,11 @@ class Binding implements BindingProcessor
'Espo\\Core\\Utils\\Database\\ConfigDataProvider',
'Espo\\Core\\Utils\\Database\\DefaultConfigDataProvider'
);
$binder->bindImplementation(
'Espo\\Core\\Job\\JobScheduler\\Creator',
'Espo\\Core\\Job\\JobScheduler\\Creators\\EntityCreator',
);
}
private function bindMisc(Binder $binder): void
@@ -302,6 +317,11 @@ class Binding implements BindingProcessor
'Espo\\Core\\Mail\\Importer',
'Espo\\Core\\Mail\\Importer\\DefaultImporter'
);
$binder->bindImplementation(
'Espo\\Core\\Mail\\Importer\\AutoReplyDetector',
'Espo\\Core\\Mail\\Importer\\DefaultAutoReplyDetector'
);
}
private function bindAcl(Binder $binder): void

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -46,14 +46,10 @@ class AccessChecker implements AccessEntityCREDSChecker
{
use DefaultAccessCheckerDependency;
private DefaultAccessChecker $defaultAccessChecker;
private AclManager $aclManager;
public function __construct(DefaultAccessChecker $defaultAccessChecker, AclManager $aclManager)
{
$this->defaultAccessChecker = $defaultAccessChecker;
$this->aclManager = $aclManager;
}
public function __construct(
private DefaultAccessChecker $defaultAccessChecker,
private AclManager $aclManager,
) {}
public function checkEntityCreate(User $user, Entity $entity, ScopeData $data): bool
{
@@ -70,11 +66,7 @@ class AccessChecker implements AccessEntityCREDSChecker
public function checkEntityRead(User $user, Entity $entity, ScopeData $data): bool
{
if ($entity->isPortal()) {
if ($this->aclManager->getPermissionLevel($user, Permission::PORTAL) === Table::LEVEL_YES) {
return true;
}
if (!$user->isAdmin() && !$entity->isActive()) {
return false;
}
@@ -82,6 +74,14 @@ class AccessChecker implements AccessEntityCREDSChecker
return false;
}
if ($entity->isSystem()) {
return false;
}
if ($entity->isPortal()) {
return $this->aclManager->getPermissionLevel($user, Permission::PORTAL) === Table::LEVEL_YES;
}
return $this->defaultAccessChecker->checkEntityRead($user, $entity, $data);
}

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -68,9 +68,9 @@ class AccessChecker implements AccessEntityCREDSChecker
assert($entity instanceof CoreEntity);
$userIdList = $entity->getLinkMultipleIdLIst('users');
$userIdList = $entity->getLinkMultipleIdList('users');
if (is_array($userIdList) && in_array($user->getId(), $userIdList)) {
if (in_array($user->getId(), $userIdList)) {
return true;
}

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -30,29 +30,27 @@
namespace Espo\Classes\AppParams;
use Espo\Core\Acl;
use Espo\Core\Exceptions\BadRequest;
use Espo\Core\Exceptions\Forbidden;
use Espo\Core\ORM\EntityManager;
use Espo\Core\Select\SelectBuilderFactory;
use Espo\Entities\Template;
use Espo\Tools\App\AppParam;
use RuntimeException;
/**
* Returns a list of entity types for which a PDF template exists.
*
* @noinspection PhpUnused
*/
class TemplateEntityTypeList implements AppParam
{
private Acl $acl;
private SelectBuilderFactory $selectBuilderFactory;
private EntityManager $entityManager;
public function __construct(
Acl $acl,
SelectBuilderFactory $selectBuilderFactory,
EntityManager $entityManager
) {
$this->acl = $acl;
$this->selectBuilderFactory = $selectBuilderFactory;
$this->entityManager = $entityManager;
}
private Acl $acl,
private SelectBuilderFactory $selectBuilderFactory,
private EntityManager $entityManager,
) {}
/**
* @return string[]
@@ -65,14 +63,19 @@ class TemplateEntityTypeList implements AppParam
$list = [];
$query = $this->selectBuilderFactory
->create()
->from(Template::ENTITY_TYPE)
->withAccessControlFilter()
->buildQueryBuilder()
->select(['entityType'])
->group(['entityType'])
->build();
try {
$query = $this->selectBuilderFactory
->create()
->from(Template::ENTITY_TYPE)
->withAccessControlFilter()
->buildQueryBuilder()
->select(['entityType'])
->where(['status' => Template::STATUS_ACTIVE])
->group(['entityType'])
->build();
} catch (BadRequest|Forbidden $e) {
throw new RuntimeException('', 0, $e);
}
$templateCollection = $this->entityManager
->getRDBRepositoryByClass(Template::class)

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -30,6 +30,7 @@
namespace Espo\Classes\AssignmentNotificators;
use Espo\Core\Field\DateTime;
use Espo\Core\Field\LinkParent;
use Espo\Core\Name\Field;
use Espo\Core\Notification\DefaultAssignmentNotificator;
use Espo\Entities\EmailAddress;
@@ -273,13 +274,16 @@ class Email implements AssignmentNotificator
continue;
}
$this->entityManager->createEntity(Notification::ENTITY_TYPE, [
'type' => Notification::TYPE_EMAIL_RECEIVED,
'userId' => $userId,
'data' => $data,
'relatedId' => $entity->getId(),
'relatedType' => EmailEntity::ENTITY_TYPE,
]);
$notification = $this->entityManager->getRDBRepositoryByClass(Notification::class)->getNew();
$notification
->setType(Notification::TYPE_EMAIL_RECEIVED)
->setUserId($userId)
->setData($data)
->setRelated(LinkParent::createFromEntity($entity))
->setActionId($params->getActionId());
$this->entityManager->saveEntity($notification);
}
}
}

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -47,6 +47,10 @@ class AppLog implements Cleanup
public function process(): void
{
if (!$this->config->get('cleanupAppLog')) {
return;
}
$query = DeleteBuilder::create()
->from(AppLogRecord::ENTITY_TYPE)
->where(['createdAt<' => $this->getBefore()->toString()])

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -71,7 +71,7 @@ class Audit implements Cleanup
->where([
'parentType' => $entityType,
'createdAt<' => $this->getBefore()->toString(),
'type' => [Note::TYPE_UPDATE, Note::TYPE_STATUS],
'type' => [Note::TYPE_UPDATE],
])
->build();

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -31,42 +31,40 @@ namespace Espo\Classes\Cleanup;
use Espo\Core\Cleanup\Cleanup;
use Espo\Core\Utils\Config;
use Espo\Core\Utils\DateTime as DateTimeUtil;
use Espo\Entities\WebhookEventQueueItem;
use Espo\Entities\WebhookQueueItem;
use Espo\ORM\EntityManager;
use DateTime;
use Espo\ORM\Name\Attribute;
/**
* @noinspection PhpUnused
*/
class WebhookQueue implements Cleanup
{
private string $cleanupWebhookQueuePeriod = '10 days';
private $config;
private $entityManager;
public function __construct(Config $config, EntityManager $entityManager)
{
$this->config = $config;
$this->entityManager = $entityManager;
}
public function __construct(private Config $config, private EntityManager $entityManager)
{}
public function process(): void
{
$period = '-' . $this->config->get('cleanupWebhookQueuePeriod', $this->cleanupWebhookQueuePeriod);
$datetime = new DateTime();
$datetime->modify($period);
$from = $datetime->format('Y-m-d H:i:s');
$from = $datetime->format(DateTimeUtil::SYSTEM_DATE_TIME_FORMAT);
$query1 = $this->entityManager
->getQueryBuilder()
->delete()
->from('WebhookQueueItem')
->from(WebhookQueueItem::ENTITY_TYPE)
->where([
'DATE:(createdAt)<' => $from,
'OR' => [
'status!=' => 'Pending',
'deleted' => true,
'status!=' => WebhookQueueItem::STATUS_PENDING,
Attribute::DELETED => true,
],
])
->build();
@@ -76,12 +74,12 @@ class WebhookQueue implements Cleanup
$query2 = $this->entityManager
->getQueryBuilder()
->delete()
->from('WebhookEventQueueItem')
->from(WebhookEventQueueItem::ENTITY_TYPE)
->where([
'DATE:(createdAt)<' => $from,
'OR' => [
'isProcessed' => true,
'deleted' => true,
Attribute::DELETED => true,
],
])
->build();

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -85,7 +85,7 @@ class RelationshipRole implements FieldConverter
'from' => $midTable,
'select' => [$nearKey],
'whereClause' => [
'deleted' => false,
Attribute::DELETED => false,
$column => '{value}',
],
],
@@ -97,7 +97,7 @@ class RelationshipRole implements FieldConverter
'from' => $midTable,
'select' => [$nearKey],
'whereClause' => [
'deleted' => false,
Attribute::DELETED => false,
$column => '{value}',
],
],
@@ -109,7 +109,7 @@ class RelationshipRole implements FieldConverter
'from' => $midTable,
'select' => [$nearKey],
'whereClause' => [
'deleted' => false,
Attribute::DELETED => false,
$column => '{value}',
],
],
@@ -121,7 +121,7 @@ class RelationshipRole implements FieldConverter
'from' => $midTable,
'select' => [$nearKey],
'whereClause' => [
'deleted' => false,
Attribute::DELETED => false,
$column => '{value}',
],
],
@@ -133,7 +133,7 @@ class RelationshipRole implements FieldConverter
'from' => $midTable,
'select' => [$nearKey],
'whereClause' => [
'deleted' => false,
Attribute::DELETED => false,
"$column*" => '{value}',
],
],
@@ -145,7 +145,7 @@ class RelationshipRole implements FieldConverter
'from' => $midTable,
'select' => [$nearKey],
'whereClause' => [
'deleted' => false,
Attribute::DELETED => false,
"$column*" => '{value}',
],
],

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -52,11 +52,6 @@ class AddressDataLoader implements Loader
/** @var EmailRepository $repository */
$repository = $this->entityManager->getRepository(Email::ENTITY_TYPE);
$repository->loadFromField($entity);
$repository->loadToField($entity);
$repository->loadCcField($entity);
$repository->loadBccField($entity);
$repository->loadReplyToField($entity);
$repository->loadNameHash($entity);
}
}

View File

@@ -0,0 +1,60 @@
<?php
/************************************************************************
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 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\Email;
use Espo\Core\FieldProcessing\Loader;
use Espo\Core\FieldProcessing\Loader\Params;
use Espo\Core\ORM\EntityManager;
use Espo\Entities\Email;
use Espo\ORM\Entity;
use Espo\Repositories\Email as EmailRepository;
/**
* @implements Loader<Email>
*/
class AddressLoader implements Loader
{
public function __construct(private EntityManager $entityManager)
{}
/**
* @inheritDoc
*/
public function process(Entity $entity, Params $params): void
{
/** @var EmailRepository $repository */
$repository = $this->entityManager->getRepository(Email::ENTITY_TYPE);
$repository->loadFromField($entity);
$repository->loadToField($entity);
$repository->loadCcField($entity);
$repository->loadBccField($entity);
$repository->loadReplyToField($entity);
}
}

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -30,6 +30,7 @@
namespace Espo\Classes\FieldProcessing\Email;
use Espo\Core\Name\Field;
use Espo\Core\Name\Link;
use Espo\ORM\Entity;
use Espo\ORM\Name\Attribute;
use Espo\Repositories\EmailAddress as EmailAddressRepository;
@@ -44,17 +45,15 @@ use Espo\Entities\User;
*/
class StringDataLoader implements Loader
{
private EntityManager $entityManager;
private User $user;
private const LINK_EMAIL_ADDRESSES = Link::EMAIL_ADDRESSES;
/** @var array<string, string> */
private $fromEmailAddressNameCache = [];
public function __construct(EntityManager $entityManager, User $user)
{
$this->entityManager = $entityManager;
$this->user = $user;
}
public function __construct(
private EntityManager $entityManager,
private User $user
) {}
public function process(Entity $entity, Params $params): void
{
@@ -63,8 +62,7 @@ class StringDataLoader implements Loader
$userEmailAddressIdList = [];
$emailAddressCollection = $this->entityManager
->getRDBRepository(User::ENTITY_TYPE)
->getRelation($this->user, 'emailAddresses')
->getRelation($this->user, self::LINK_EMAIL_ADDRESSES)
->select([Attribute::ID])
->find();

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -35,6 +35,7 @@ use Espo\Core\FieldProcessing\Loader;
use Espo\Core\FieldProcessing\Loader\Params;
use Espo\Core\ORM\EntityManager;
use Espo\Entities\User;
use Espo\ORM\Name\Attribute;
/**
* @implements Loader<Email>
@@ -57,7 +58,7 @@ class UserColumnsLoader implements Loader
Email::USERS_COLUMN_IN_ARCHIVE,
])
->where([
'deleted' => false,
Attribute::DELETED => false,
'userId' => $this->user->getId(),
'emailId' => $entity->getId(),
])
@@ -72,12 +73,18 @@ class UserColumnsLoader implements Loader
return;
}
$entity->set([
$values = [
Email::USERS_COLUMN_IS_READ => $emailUser->get(Email::USERS_COLUMN_IS_READ),
Email::USERS_COLUMN_IS_IMPORTANT => $emailUser->get(Email::USERS_COLUMN_IS_IMPORTANT),
Email::USERS_COLUMN_IN_TRASH => $emailUser->get(Email::USERS_COLUMN_IN_TRASH),
Email::USERS_COLUMN_IN_ARCHIVE => $emailUser->get(Email::USERS_COLUMN_IN_ARCHIVE),
'isUsersSent' => $entity->getSentBy()?->getId() === $this->user->getId(),
]);
];
$entity->setMultiple($values);
foreach ($values as $key => $value) {
$entity->setFetched($key, $value);
}
}
}

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -31,7 +31,7 @@ namespace Espo\Classes\FieldProcessing\InboundEmail;
use Espo\Core\FieldProcessing\Loader;
use Espo\Core\FieldProcessing\Loader\Params;
use Espo\Core\Utils\Config;
use Espo\Core\Mail\ConfigDataProvider;
use Espo\Entities\InboundEmail;
use Espo\ORM\Entity;
@@ -41,12 +41,12 @@ use Espo\ORM\Entity;
class IsSystemLoader implements Loader
{
public function __construct(
private Config $config,
private ConfigDataProvider $configDataProvider,
) {}
public function process(Entity $entity, Params $params): void
{
$isSystem = $entity->getEmailAddress() === $this->config->get('outboundEmailFromAddress');
$isSystem = $entity->getEmailAddress() === $this->configDataProvider->getSystemOutboundAddress();
$entity->set('isSystem', $isSystem);
}

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 EspoCRM, Inc.
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
@@ -31,6 +31,7 @@ namespace Espo\Classes\FieldProcessing\LeadCapture;
use Espo\Core\FieldProcessing\Loader;
use Espo\Core\FieldProcessing\Loader\Params;
use Espo\Core\Utils\Config;
use Espo\Core\Utils\Config\ApplicationConfig;
use Espo\Core\Utils\FieldUtil;
use Espo\Core\Utils\Util;
@@ -48,7 +49,8 @@ class ExampleLoader implements Loader
public function __construct(
private FieldUtil $fieldUtil,
private ApplicationConfig $applicationConfig,
private EntityManager $entityManager
private EntityManager $entityManager,
private Config $config,
) {}
public function process(Entity $entity, Params $params): void
@@ -136,7 +138,7 @@ class ExampleLoader implements Loader
private function processFormUrl(LeadCapture $entity): void
{
$formId = $entity->getFormId();
$siteUrl = $this->applicationConfig->getSiteUrl();
$siteUrl = $this->getSiteUrl();
if (!$entity->hasFormEnabled() || !$formId) {
/** @noinspection PhpRedundantOptionalArgumentInspection */
@@ -149,4 +151,9 @@ class ExampleLoader implements Loader
$entity->set('formUrl', $formUrl);
}
private function getSiteUrl(): string
{
return $this->config->get('leadCaptureSiteUrl') ?? $this->applicationConfig->getSiteUrl();
}
}

View File

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

View File

@@ -0,0 +1,72 @@
<?php
/************************************************************************
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 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\OAuthAccount;
use Espo\Core\FieldProcessing\Loader;
use Espo\Core\FieldProcessing\Loader\Params;
use Espo\Entities\OAuthAccount;
use Espo\ORM\Entity;
use Espo\Tools\OAuth\ConfigDataProvider;
/**
* @implements Loader<OAuthAccount>
*/
class DataLoader implements Loader
{
public function __construct(
private ConfigDataProvider $configDataProvider,
) {}
public function process(Entity $entity, Params $params): void
{
if (!$entity->get('providerId')) {
return;
}
$provider = $entity->getProvider();
$scope = null;
if ($provider->getScopes()) {
$scope = implode($provider->getScopeSeparator() ?? ' ', $provider->getScopes());
}
$data = [
'endpoint' => $provider->getAuthorizationEndpoint(),
'clientId' => $provider->getClientId(),
'redirectUri' => $this->configDataProvider->getRedirectUri(),
'scope' => $scope,
'prompt' => $provider->getAuthorizationPrompt(),
'params' => $provider->getAuthorizationParams(),
];
$entity->set('data', $data);
}
}

View File

@@ -0,0 +1,51 @@
<?php
/************************************************************************
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 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\OAuthProvider;
use Espo\Core\FieldProcessing\Loader;
use Espo\Core\FieldProcessing\Loader\Params;
use Espo\Entities\OAuthProvider;
use Espo\ORM\Entity;
use Espo\Tools\OAuth\ConfigDataProvider;
/**
* @implements Loader<OAuthProvider>
*/
class AuthorizationRedirectUriLoader implements Loader
{
public function __construct(
private ConfigDataProvider $configDataProvider,
) {}
public function process(Entity $entity, Params $params): void
{
$entity->set('authorizationRedirectUri', $this->configDataProvider->getRedirectUri());
}
}

View File

@@ -3,7 +3,7 @@
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Copyright (C) 2014-2025 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