Commit graph

525 commits

Author SHA1 Message Date
Benjamin Renard
29bfca1792
LSform / dataEntryForm: Add forceGeneration parameter 2023-02-10 11:59:55 +01:00
Benjamin Renard
796e3287e9
supann: rename supannCheckEduPersonPrimaryAffiliation as validate_eduPersonPrimaryAffiliation 2023-02-10 11:21:59 +01:00
Benjamin Renard
2239120912
supann: rename supannCheckEduPersonAffiliation as validate_eduPersonAffiliation 2023-02-10 11:21:32 +01:00
Benjamin Renard
a529b8ce2b
supann: add validate_supannEntiteAffectationPrincipale 2023-02-10 11:20:40 +01:00
Benjamin Renard
aae4751a41
supann: add generate_supannRessourceEtat 2023-02-10 11:19:45 +01:00
Benjamin Renard
1534a40c7b
supann: add generate_supannEntiteAffectationPrincipale 2023-02-10 11:19:24 +01:00
Benjamin Renard
f113c87a15 LSaddon::mail: fix catch all message suffix in HTML mode 2023-01-11 19:45:25 +01:00
Benjamin Renard
68fcb6f81a LSaddon::mail: make optional parameter of sendMail() defaulty null 2023-01-11 19:34:25 +01:00
Benjamin Renard
cbf1ff1769 LSaddon::mail: add MAIL_CATCH_ALL parameter 2023-01-11 19:08:04 +01:00
Benjamin Renard
82b29e6abc LSsession::canExecuteCustomAction(): fix handling self LSprofile 2023-01-09 19:53:41 +01:00
Benjamin Renard
4f69036f2f Add LSaddon::showSupportInfo 2023-01-09 19:32:06 +01:00
Benjamin Renard
43cb6c3f93 Add LSaddon::impersonate 2023-01-09 18:07:15 +01:00
Benjamin Renard
1b38957235 LSsession::loadLSprofiles(): reset current LSprofiles on each call
Be sure to reset current LSprofiles before (re)loading it.
2023-01-09 17:38:41 +01:00
Benjamin Renard
d80c15acc1 LStemplate: rollback from array class constant to class variables to restore PHP < 7 2023-01-03 15:32:03 +01:00
Benjamin Renard
d7ba794839 Rollback class properties typing to restore PHP < 7.4 support 2023-01-03 12:51:45 +01:00
Benjamin Renard
20432adb14 Clean errors detected by PHPstan (level 3) 2023-01-02 01:17:46 +01:00
Benjamin Renard
bbde10bbf0 Add some class properties type & coments and clean errors detected by PHPstan (level 2) 2023-01-01 19:38:03 +01:00
Benjamin Renard
8a02680114 Clean/normalize comments format about parameters & returned value of functions/methods 2022-12-31 05:52:31 +01:00
Benjamin Renard
e71823b644 Clean errors detected by PHPstan (level 1) 2022-12-31 04:09:56 +01:00
Benjamin Renard
38fa02619d Clean PHP8 compatibility errors detected by PHPstan 2022-12-31 02:31:21 +01:00
Benjamin Renard
7f862c9765 Clean errors detected by PHPstan (level 0) and configure CI to run it on each commit 2022-12-31 02:02:28 +01:00
Benjamin Renard
a8e0707e7a select_list/select_box: force sub-options at the end when sorting 2022-12-07 17:11:17 +01:00
Benjamin Renard
fd17f87a57 LSformElement::jsonCompositeAttribute: fix handling empty value & $onlyIfPresent parameter 2022-10-17 17:29:36 +02:00
Benjamin Renard
a0ceb1dbdc search: handle translation of LSformat, alternativeLSformats and formaterLSformat 2022-09-30 10:37:55 +02:00
Benjamin Renard
dcf68a2330 LSprofiles by LSobject: add possibility to compute basedn using LSformat on authenticated user 2022-09-28 16:50:24 +02:00
Benjamin Renard
a56b20728a LSform: fix handling default values of dataEntryForm 2022-08-01 11:27:28 +02:00
Benjamin Renard
e23ee2f209 LSaddon::accesslog: show events author 2022-07-20 14:56:16 +02:00
Benjamin Renard
75258d9744 LSaddon::accesslog: Fix PHP < 7.3 compatibility 2022-07-20 14:53:28 +02:00
Benjamin Renard
c0d8f9f81a LSldap::update(): fix object creation with required userPassword attribute 2022-06-23 10:17:44 +02:00
Emmanuel Saracco
2adbdb62c7 Add LSaddon accesslog 2022-06-16 13:15:28 +02:00
Emmanuel Saracco
855bcc8564 LSselect : code cleaning 2022-06-16 12:59:14 +02:00
Emmanuel Saracco
3eba1e24d6 LSselect : fix ajax input 2022-06-16 11:50:42 +02:00
Benjamin Renard
fd81cb496f Restore location paths in ldapsaisie.pot file but make it relative 2022-06-14 17:05:53 +02:00
Emmanuel Saracco
c657e318dd LSlang: add "--no-location" to xgettext 2022-06-14 16:10:02 +02:00
Emmanuel Saracco
38d5fd5094 LSldap: add LDAP password policy 2022-06-14 16:06:55 +02:00
Benjamin Renard
457995bc22 Add argon2 passwords support 2022-04-19 11:53:39 +02:00
Benjamin Renard
f5d21ec93c LSaddon ppolicy: fix badges color of password_expiration extraDisplayedColumn 2022-04-11 19:09:45 +02:00
Benjamin Renard
064d0f720b Add ppolicy LSaddon 2022-04-11 18:24:41 +02:00
Benjamin Renard
faad922f03 LSldap: translate comments 2022-03-07 16:06:39 +01:00
Benjamin Renard
9d3e69c86d LSldap: fix updating internal attributes
LSldap::getEntry method now list expected attributes when using
the LSldap::getLdapEntry method. This method now also accept a
new $attrs attribute to specify expected attributes list.
2022-03-07 16:02:50 +01:00
Benjamin Renard
ad38812859 Add LSaddon orgchart
A first implementation of this addon which deserves some improvements.
2022-02-22 18:24:37 +01:00
Benjamin Renard
bbf40090a9 LSformRule::inarray: add reverse parameter 2022-02-17 10:38:41 +01:00
Benjamin Renard
fe1181b531 AJAX routes: ensure to enable AJAX mode even if an error occured handling request 2022-02-01 21:47:50 +01:00
Benjamin Renard
2375f95063 SUPANN: Add UAI code of ENSAD 2022-01-19 11:33:48 +01:00
Benjamin Renard
db287937b7 Add LSformRule_zxcvbn 2021-12-16 18:58:29 +01:00
Benjamin Renard
dfe3f7d27a LSaddon_mailquota: improve error reporting 2021-12-15 15:37:52 +01:00
Benjamin Renard
29966b75ae LSattribute::addToForm(): fix freezing 2021-11-29 12:46:58 +01:00
Benjamin Renard
25f2ccd32e LSformElement::getEmptyField(): do not set value to null (already set by fetchTemplate()) 2021-11-29 12:34:39 +01:00
Benjamin Renard
b42093cf45 Improve handling Ajax mode
- LSurlRequest: add ajax property to check if Ajax mode is enabled
- LSurl: handle_request() now handle Ajax mode detection
- LSsession :: setApiMode now trigger LSsession :: setAjaxDisplay()
- Fix LStemplate::fatal_error() to correctly handle Ajax mode
- LSform: fix reporting failure on Ajax submit
2021-11-16 13:59:17 +01:00
Benjamin Renard
d15fdc5d8e LSformElement::password: fix multiple sent email in some cases 2021-11-15 18:38:40 +01:00
Benjamin Renard
2d27a7049f LStemplate: fix & improve handling loop detection displaying fatal error 2021-10-25 19:05:10 +02:00
Benjamin Renard
74df3d2f61 LStemplate: improve handling loop detection displaying fatal error 2021-10-25 18:55:00 +02:00
Benjamin Renard
06071f2f5f LStemplate: detect and stop template displaying loop 2021-10-25 17:48:58 +02:00
Benjamin Renard
c9b2341dbf LSformElement::password: fix sendind email in create form 2021-10-21 20:25:58 +02:00
Benjamin Renard
7cb8620cb5 Disable unidecode lib loading if mb_ord() not available (PHP>=7.2 required) 2021-10-21 20:19:45 +02:00
Benjamin Renard
27f06b7b66 generate_lang_file CLI command: add -F/--fix-utf8 parameter
Add an option to allow to try to load and fix existing translation files
with broken UTF-8 characters.
2021-10-08 17:20:31 +02:00
Benjamin Renard
c0d874c68d generate_lang_file CLI command: add -K/--keep-unused parameter 2021-10-08 17:17:17 +02:00
Benjamin Renard
6770babe14 LSldapObject::getValue(): ensure return is array in case of attribute 2021-10-08 14:32:56 +02:00
Benjamin Renard
5e500d5cde LSurl: expose current request as static class variable 2021-10-08 12:31:48 +02:00
Benjamin Renard
5f06ec8d28 Improve getCallableName() helper function 2021-10-08 12:31:12 +02:00
Benjamin Renard
d89d75f72b Fix handling disableOnSuccessMsg parameter on LSobject customActions 2021-10-08 12:17:51 +02:00
Benjamin Renard
17b9701061 LSaddon::supann Fix PHP5 support 2021-10-08 11:52:23 +02:00
Benjamin Renard
872a15af94 Fix handling noRedirect parameter of LSobject's customAction 2021-09-15 17:59:37 +02:00
Benjamin Renard
59ecc0d7fa Add authz proxy authorization support
Add useAuthzProxyControl parameter to combine with useUserCredentials to 
also using authz proxy authorization.
2021-08-26 20:16:22 +02:00
Benjamin Renard
9907e08f18 Code cleaning 2021-08-25 18:02:37 +02:00
Benjamin Renard
a3aa857c78 Improve/fix LSdefaut / LSsession / LSerror / LSdebug / LSinfosBox 2021-08-25 16:50:29 +02:00
Benjamin Renard
26c0026cfc LSformRule_compare: code cleaning 2021-08-25 09:41:05 +02:00
Benjamin Renard
fed9acfedd LSauthMethod_HTTP: fix logging HTTP_AUTHORIZATION parsing error 2021-08-25 09:39:25 +02:00
Benjamin Renard
b5c5123bbb LSformElement_password: code cleaning 2021-08-25 09:37:44 +02:00
Benjamin Renard
2b71bba8db LSurl::add_handler: fix handling all params in case of multiple patterns 2021-08-18 12:29:50 +02:00
Benjamin Renard
2fa20316bc LSattr_html: add $singleValue class variable to handle this common case
Also unify the usage of the class variable $LSformElement_type.
2021-08-18 12:28:56 +02:00
Benjamin Renard
e099a27533 Add dynamic groups support (with cache members attributes)
Add LSaddon dyngroup with feature to handle update static cache members
attributes on users or dyngroup URI changes. The update process could
also be runned using CLI update_dyngroups_members_cache command
(allowing cron task configuration).

LSexample also evoluate to add example of dynamic groups implementation.
On this occasion, the restore_lsexample script was completely rewrited.
2021-07-21 19:42:22 +02:00
Benjamin Renard
a7356f5e67 LSformRules: configure CLI parameters autocompleters 2021-07-21 16:35:02 +02:00
Benjamin Renard
f635ad609a Add test_form_rule CLI command
You have to manually load LSformRule class to use this command, for 
instance :

ldapsaisie -L LSformRule test_form_rule integer 12
2021-07-21 16:03:33 +02:00
Benjamin Renard
18cc960755 Add LSformRule_numberOfValues 2021-07-19 16:54:41 +02:00
Benjamin Renard
531991a1e5 LSform/LSformRule: Handle rule without options or message 2021-07-19 16:54:41 +02:00
Benjamin Renard
3298320b3d LSform / LSformRule: only show default error message if rule does not trigger itself an error 2021-07-19 16:54:41 +02:00
Benjamin Renard
096b1d3301 LSform: display fields errors in same order as triggered 2021-07-12 18:59:47 +02:00
Benjamin Renard
0af81bf0a3 Improve LSformRules to throw LSformRuleException with error details 2021-07-12 18:59:34 +02:00
Benjamin Renard
9315acc545 Remove miss commited file 2021-07-12 18:29:44 +02:00
Benjamin Renard
ba8b78706a jsonCompositeValue & supannCompositeValue: fix checking value method
Use LSformRule::validate_values() to check value instead of 
reimplementing incomplete checking method.
2021-07-12 17:57:07 +02:00
Benjamin Renard
988d744836 LSformRule: add possibility to throw custom exception to provide error details 2021-07-12 17:54:08 +02:00
Benjamin Renard
9469103f0e Add footer with LdapSaisie version 2021-07-08 10:39:09 +02:00
Benjamin Renard
cc07f293ab LSformElement_supannCompositeAttribute: fix handling field JS reinitialization for date components 2021-07-07 18:32:15 +02:00
Benjamin Renard
3161ace3b7 LSformElement_supannCompositeAttribute::getPostData(): fix handing empty form value 2021-07-07 17:50:56 +02:00
Benjamin Renard
e8b8dd1730 supannRessourceEtat & supannRessourceEtatDate: fix parsing & formating optional components value 2021-07-07 17:48:45 +02:00
Benjamin Renard
3c6ce596d9 LSsession::getLSuserObject(): improve errors logging 2021-07-07 16:27:35 +02:00
Benjamin Renard
3c02b94085 supannCompositeAttribute: fix clearing value 2021-07-07 16:26:55 +02:00
Benjamin Renard
6e98cfef20 supannRessourceEtat & supannRessourceEtatDate: fix parsing optional components value 2021-07-07 16:20:00 +02:00
Benjamin Renard
25162f406d supannRessourceEtat & supannRessourceEtatDate: add empty possible value to required components to allow empty value 2021-07-07 13:45:00 +02:00
Benjamin Renard
3c7ec2890a API / Show an object: make API return all accessible attribute
The method now return all accessible attributes and not only thow who 
are configured to be displayed in view
2021-06-30 18:11:26 +02:00
Benjamin Renard
6bc1e46afb Fix tmp files access 2021-06-29 17:00:37 +02:00
Benjamin Renard
0b850e8acb LSlang: fix handling locales that only existing in local directory 2021-06-29 16:50:25 +02:00
Benjamin Renard
516cc12d1b LSlang: fix loading alternative lang files in local directory 2021-06-29 16:46:50 +02:00
Benjamin Renard
b936decf89 withoutAccents(): use unidecode lib if available 2021-06-28 16:22:26 +02:00
Benjamin Renard
afb67b02e9 LSurl: add request HTTP method check that must match with one of supported by handler (default: GET or POST) 2021-06-24 10:21:50 +02:00
Benjamin Renard
c45f884aa1 LSrelation: add display_name_format parameter 2021-06-21 12:31:49 +02:00
Benjamin Renard
78de233321 API: add search parameters in return on LSobject search 2021-06-14 11:48:07 +02:00
Benjamin Renard
0360ab7951 API: add keepParamsBetweenSearches on LSobject search 2021-06-14 11:46:44 +02:00
Benjamin Renard
df57967669 LSattr_html::select_box: add inline parameter 2021-06-11 18:26:25 +02:00