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
1ece486cd8
LSdyngroup: remove inexisting hooks
2021-07-22 11:52:27 +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
2a0981a21e
Fix displaying toggle-menu button in responsive view
2021-07-19 16:54:41 +02:00
Benjamin Renard
f07e10c40e
Update french translation
2021-07-12 19:00:08 +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
16c6d9fa6e
Add preprod CSS & SVG image to easily add a watermark
2021-07-09 18:13:46 +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
a0fc721776
LSformElement_supannCompositeAttribute: fix some PHP warnings in template
2021-07-07 17:53:12 +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
36eae85bc3
LSexample / personalTitle: remove Ms deprecated possible value
2021-06-11 18:29:52 +02:00
Benjamin Renard
df57967669
LSattr_html::select_box: add inline parameter
2021-06-11 18:26:25 +02:00
Benjamin Renard
bc652f81f8
Improve SUPANN attributes CSS
2021-06-11 17:58:31 +02:00
Benjamin Renard
107d8ba0af
LSformElement supannRessourceEtat & supannRessourceEtatDate: do not check etat value on parsing attribute value
2021-06-11 16:43:59 +02:00
Benjamin Renard
c87f609610
LSformElement_supannLabeledValue: improve API mode
2021-06-11 16:36:19 +02:00
Benjamin Renard
c533aecc34
LSformElement_supannCompositeAttribute: handle API/CLI mode
2021-06-11 16:33:42 +02:00
Benjamin Renard
7c45c4bb8c
LSformElement_supannCompositeAttribute: fix PHP syntax error
2021-06-11 16:22:32 +02:00
Benjamin Renard
9879dd3eda
LSaddon SUPANN::supannParseCompositeValue(): check global value integrity
2021-06-11 16:21:57 +02:00
Benjamin Renard
72933c9408
Update french translation according to recent changes on LSaddon::supann
2021-06-11 14:37:19 +02:00
Benjamin Renard
ef2271e7eb
Add support of supannRessourceEtat & supannRessourceEtatDate attributes
2021-06-11 14:28:08 +02:00
Benjamin Renard
88bb4eef49
LSformElement_supannCompositeAttribute: add flexibility
...
- Add possibility to override parse/format value methods to handle
different composite value formats
- Add possibility to configure date components LDAP format
2021-06-11 14:25:52 +02:00
Benjamin Renard
441b5d0af9
LSformElement_supannLabeledValue: Add validation of POST values from configured nomenclatures
2021-06-11 14:19:03 +02:00
Benjamin Renard
7e68b42b4c
Add support of some SUPANN attributes
...
Add support of following SUPANN attributes:
- supannEtuDiplome
- supannEtuElementPedagogique
- supannEtuEtape
- supannEtuRegimeInscription
- supannEtuSecteurDisciplinaire
- supannEtuTypeDiplome
For each, a new specific LSattr_html & LSformElement class was added,
and a function is provided to generate then from supannEtuInscription
attribute values.
2021-06-11 14:17:42 +02:00
Benjamin Renard
11f32dea04
LSaddon::SUPANN: fix nomenclatures sorting problem
2021-06-11 11:28:15 +02:00
Benjamin Renard
83e795044f
LSattr_ldap_sambaAcctFlagsparse_flags(): fix handling null|empty value
2021-06-10 19:02:19 +02:00
Benjamin Renard
8dbbda801a
LSattr_ldap::naiveDate: Add format option
2021-06-10 19:01:22 +02:00
Benjamin Renard
eccb234210
LSaddon::supann: Fix typo in previous commit
2021-06-10 18:50:29 +02:00
Benjamin Renard
159b3fbe7e
Fix PHP warning
2021-06-10 18:45:39 +02:00
Benjamin Renard
40fdc92451
Code cleaning: fix tabs
2021-06-10 18:45:00 +02:00
Benjamin Renard
febb83e39d
Update french translation according to recent changes on LSaddon::supann
2021-06-10 18:06:19 +02:00
Benjamin Renard
1683cadd73
LSaddon::supann: add new components of supannEtuInscription attribute (SUPANN 2021)
2021-06-10 17:58:03 +02:00
Benjamin Renard
bf28a6ea94
LSaddon::supann: rework on nomenclatures loading & add support of supannCodePopulation, supannEmpProfil & supannExtProfil
2021-06-10 17:56:34 +02:00
Benjamin Renard
cab8c2e66d
LSform: fix typo
2021-06-09 18:52:26 +02:00
Benjamin Renard
1aed362863
LSformElement::supannLabeledValue: Fix typo
2021-06-09 18:51:52 +02:00
Benjamin Renard
ade6a031dc
Add some missing SUPANN label images
2021-06-09 18:38:29 +02:00
Benjamin Renard
0f791ee3cc
LSaddon::supann: add support for supannOIDCGenre attribute
2021-06-09 15:52:23 +02:00
Benjamin Renard
6dcae071b5
LSaddon::supann: Normalize affiliations & civilites nomenclatures
2021-06-09 15:50:27 +02:00
Benjamin Renard
0ac0a7e068
Add support for supannMailPrive, supannAdressePostalePrivee and supannTelephonePrive attributes
2021-06-09 15:48:46 +02:00
Benjamin Renard
077a44fdf9
LSform: fix displaying multiple errors on same field (on Ajax submit)
2021-06-09 14:48:35 +02:00
Benjamin Renard
b104454603
LSaddon::supann: add eduPersonUniqueId()
2021-06-03 18:16:58 +02:00
Benjamin Renard
2a1d079717
LSformElement::supannLabeledValue: fix unparsable value display
2021-06-03 17:17:09 +02:00
Benjamin Renard
631502d9c2
LSsearch::setParamsFromRequest(): fix error handling filter parameter
2021-05-25 10:19:16 +02:00
Benjamin Renard
09d1aeb020
routes.php: fix error calling LSsession::addErrorCode() vs LSerror::addErrorCode()
2021-05-25 10:15:37 +02:00
Benjamin Renard
4b634e408d
LSldapObject: fix triggering after_modify event on create
2021-05-21 11:29:57 +02:00
Benjamin Renard
59d6d0865d
LSformElement::password: fix using LSldapobject getDisplayFData method instead of getFData
2021-05-21 11:29:57 +02:00
Benjamin Renard
7005100ac4
LSioFormat: handle multiple formats for generated fields
2021-04-27 12:13:32 +02:00
Benjamin Renard
6d95f9bfd5
LSauthMethod: fix PHP warning
2021-04-14 16:09:03 +02:00
Benjamin Renard
c81e2d0ee3
LSformElement::mail: fix duplicated email JS button
2021-04-14 15:55:38 +02:00
Benjamin Renard
639f46d8a4
Add LSdefaut copyable feature and use it in showTechInfo
2021-04-14 15:46:36 +02:00
Benjamin Renard
2b6b8ce270
Fix project URLs and list emails addresses
2021-04-13 18:04:19 +02:00
Benjamin Renard
d637a570f1
LSattr_html::valueWithUnit: fix handling zero value
2021-03-25 15:52:51 +01:00
Benjamin Renard
dff2aa8b46
light-blue.css: fix handling LSformElement_valueWithUnit width
2021-03-25 15:36:07 +01:00
Benjamin Renard
6cce15ddf5
pwdPolicy: improve duration attributes
2021-03-25 15:35:38 +01:00
Benjamin Renard
573737adfd
LSio::import/export: set timeout according to the number of objects
2021-03-23 16:40:03 +01:00
Benjamin Renard
0ffbf3274a
API::search method: set timeout according to the number of objects in response
2021-03-23 16:34:21 +01:00
Benjamin Renard
15823ad677
API::search method: add attributesDetails parameter
2021-03-23 14:44:01 +01:00
Benjamin Renard
84c3cd0d9b
API::search method: fix handling custom attributes
2021-03-23 14:28:40 +01:00
Benjamin Renard
d0397ec41e
LSattribute & LSattr_html: fix handling current/provided data
2021-03-23 14:27:27 +01:00
Benjamin Renard
3ddc51004f
LSformElement::image: fix bug deleting current image
2021-03-23 14:23:33 +01:00
Benjamin Renard
0e2911dfe5
LSformElement::image: fix getApiValue() method on multiple values
2021-03-23 12:38:36 +01:00
Benjamin Renard
f960b2d394
API: search method now return true attributes value as handle by LdapSaisie (instead of raw attributes's values)
2021-03-23 12:37:45 +01:00
Benjamin Renard
60d67f3123
pwdFailureTime: fix/improve no_value_label
2021-03-19 16:31:30 +01:00
Benjamin Renard
640c0c1d70
LSattr_ldap::pwdHistory: change timezone to local before displaying
2021-03-19 14:11:52 +01:00
Benjamin Renard
96c7e33034
API objects list method: add as_list parameter
2021-03-17 18:37:19 +01:00
Benjamin Renard
78fedd79b2
LSaccessRightsMatrixView: handle inherited rights from user LSprofiles
2021-03-16 17:52:08 +01:00
Benjamin Renard
3703d0330e
LSaccessRightsMatrixView: handle LSform layout to ordering attributes
2021-03-16 17:48:49 +01:00
Benjamin Renard
3d9b3c2947
LSsession::displayAjaxReturn(): Adjust HTTP returned code on unsuccessfull request
2021-03-11 17:29:20 +01:00
Benjamin Renard
825b5eb52f
Ppolicy : fix french translation (again)
2021-03-03 19:24:26 +01:00
Benjamin Renard
67774a6832
LSformElement :: mail: Move autocomplete feature in text parent class
2021-03-03 14:34:06 +01:00
Benjamin Renard
b26e21fb51
Ppolicy : fix french translation (again)
2021-03-02 16:28:37 +01:00
Benjamin Renard
7578b76737
Ppolicy : fix french translation
2021-03-02 09:57:55 +01:00
Benjamin Renard
d23c84a87d
ligth-blue.css: fix handling ul.LSselect_selectable_object_types
2021-02-25 15:49:15 +01:00
Benjamin Renard
44ab0ecab5
LSexample: add sysaccounts pwdPolicy
2021-02-24 20:11:50 +01:00
Benjamin Renard
ba2de0f9ec
LSexample: Add Ppolicy support
2021-02-24 19:15:42 +01:00
Benjamin Renard
c9f63fa5e9
Fix some PHP warnings
2021-02-23 20:03:04 +01:00
Benjamin Renard
3151721838
Fix/improve LSobject & LSsearch customActions code
2021-02-23 20:02:45 +01:00
Benjamin Renard
5b7b22dde1
Fix/improve/factorize search pagination
...
First page of a search is now one instead of zero. The pagination.tpl
template file contain factorized code to display pages list HTML code.
2021-02-22 17:31:57 +01:00
Benjamin Renard
8c317e127c
LSattribute::addToForm(): fix checking user rights before adding/freezing it
2021-02-22 15:50:43 +01:00
Benjamin Renard
a217e42a19
LSioFormat: Don't warn about non-added export attribute, just debug it
2021-02-18 16:02:46 +01:00
Benjamin Renard
4c4983b634
LSioFormat: Add some checks/logs during export process
2021-02-18 15:51:46 +01:00
Benjamin Renard
6098f3bc5f
LSioFormatCSV: remove unused require on 'File/CSV/DataSource.php'
2021-02-18 15:49:51 +01:00
Benjamin Renard
6b4bc036e3
LSaddon::supann: add generate_supann_codeEtablissement_uai_nomenclature CLI command
2021-02-17 17:20:52 +01:00
Benjamin Renard
60eca6967c
LSaddon::supann: Update/clean UAI nomenclatures
2021-02-17 17:17:51 +01:00
Benjamin Renard
68b1c182db
LSaddon::supann: Update/clean nomenclatures
2021-02-17 11:58:55 +01:00
Benjamin Renard
fb62ce2eed
Fix reconnectAs() calls
2021-02-17 11:45:39 +01:00
Benjamin Renard
d27a59f807
Add LSobject import/export API methods
2021-02-08 12:42:00 +01:00
Benjamin Renard
82a236a67c
LSattr_ldap_password: fix verify method for Salted SHA2 passwords
2021-02-08 11:11:23 +01:00
Benjamin Renard
f47e40a5ac
LSio: fix isSubmit() method to handle GET or POST forms
2021-02-05 18:39:24 +01:00
Benjamin Renard
1e284f098a
Regroup LSimport & LSexport classes in one common LSio class
2021-02-05 18:37:07 +01:00
Benjamin Renard
f36c989136
Add import & export CLI commands
2021-02-05 18:12:44 +01:00
Benjamin Renard
b8040e3d8b
LSformElement::select: fix typo in last commit
2021-02-05 16:41:10 +01:00
Benjamin Renard
19dd343106
LSformElement::getApiValue(): add $details parameter
...
This parameter permit to control if the returned value contain or not
details. By default (no details), the value used the format as accept by
create/modify method. The details mode is more efficient to display the
value.
2021-02-05 12:22:44 +01:00
Benjamin Renard
36a1719b26
LSexample/LSpeople: improve pagination config
2021-02-05 12:18:58 +01:00
Benjamin Renard
5f4798a5a1
Add export feature using existing LSioFormats
2021-02-05 12:18:26 +01:00
Benjamin Renard
7ecfa33afc
import: fix some PHP warnings and update comments
2021-02-04 12:35:14 +01:00
Benjamin Renard
7af066f4c2
LSimport: code cleaning and reload form options after submiting
2021-02-04 11:52:26 +01:00
Benjamin Renard
a25b1e8c10
LSldapObject: clean updata/validate form data code to fix handling just check mode
2021-02-04 11:49:35 +01:00
Benjamin Renard
e05f0df20d
Fix PHP warning
2021-02-04 10:33:13 +01:00
Benjamin Renard
16373e6904
Fix content-type on Ajax return
2021-02-04 10:22:10 +01:00
Benjamin Renard
724e9acedd
Fix PHP5 error compatibility in last commit
2021-02-03 14:46:06 +01:00
Benjamin Renard
0ec390e1fe
Add API feature
...
Some major changes have been made to handle this new feature :
- LSsession now have a flag about API mode. The displayTemplate() and
displayAjaxReturn() methods have been adjust to correctly handle this
mode.
- LSauth system have been adjust to handle a custom API mode :
- LSauthMethod can support or not this mode : the $api_mode_supported
permit to defined if supported (default, false). Currently, only
HTTP (default in API mode) and annonymous mode support it.
- An api_access parameter permit to configure witch type of user
LSobject types could use the API. This flag must be set to True to
allow a type of LSobject (default: False). In a same way, a
web_access parameter now permit to disable Web access for some
types of users (but this parameter is optional and its default value
is True).
- The HTTP method is the privileged first method for API mode. In this
mode, if auth data aren't present in environment, it will request it
by triggered a 403 HTTP error. Realm can be configured with new
LSAUTHMETHOD_HTTP_API_REALM constant.
- The LStemplate system handle API mode to correctly react on errors: it
return a JSON answer instead of HTML page. Error pages also now return
adjusted HTTP code (404 or 500).
- The LSurl system have been adjust to handle API mode :
- On declaring handlers, we could now specify if it's an API view with
new $api_mode paremeter of add_handler() method
- The LSurlRequest object have a new attribute to check if it's an API
request
- The error_404() method handle the API mode to return JSON answer.
Furthermore, if no handlers matched with the requested URL, API mode
is automatically enabled if the requested URL starts with 'api/'.
- LSform implement it own API mode flag and a new submited flag that
be toggle via the new setSubmited() method. Some major changes also
occured on LSformElement classes to specifically handle API
input/output for each types of attributes:
- a new getApiValue() method permit to retrieve the API value of the
attribute (on show API view)
- the getPostData() method now have to correctly handle API input for
the attribute (on create/modify API views). A programmatic way have
been adopted for each types of attributes.
- The LSimport and LScli create/modify commands also evolved to enable
API mode of the LSform. This permit to take advantage of the new
capability of LSform/LSformElement to handle input values with a
programmatic way.
- New routes have been add to handle API views. All this new routes
start with 'api/1.0/' and use the same URL schema as the web UI. The
API currently permit to search/show/add/modify/remove LSobjects and
manages their relations.
2021-02-03 14:40:28 +01:00
Benjamin Renard
e92bc10c8b
LSldapObject: fix default $attrValues handling for updateObjectsInRelation/deleteOneObjectInRelation methods
2021-02-03 14:19:37 +01:00
Benjamin Renard
305d7447ff
LSsession: Fix relationCanAccess() method and add debuging infos
2021-02-03 12:44:38 +01:00
Benjamin Renard
841b3d0bcf
LSsearch::setParamsFromRequest(): add check on parameters load from request data
2021-02-02 20:42:02 +01:00
Benjamin Renard
eb8cfbf66a
LSsearch: rename method setParamsFormPostData() to setParamsFromRequest()
2021-02-02 20:30:08 +01:00
Benjamin Renard
2544687b27
LSsession::checkAccess(): fix checking read right
2021-02-02 20:28:02 +01:00
Benjamin Renard
cb0106fda9
LSurlRequest: fix fatal error on logging
2021-01-29 17:12:29 +01:00
Benjamin Renard
ac7e042c2a
LSattribute: add default LDAP & HTML type (ascii / text)
2021-01-29 15:59:13 +01:00
Benjamin Renard
40a17c3524
LSlang: improve generate_lang_file command
...
Improve detection in PHP files, add detection in LSaddons/LSauthMethod
config files and includes PHP files. Add -I/--include-upstream parameter
(and use it for generate_ldapsaisie_pot command)
2021-01-29 15:23:22 +01:00
Benjamin Renard
bc9cc77cde
LSattr_ldap::shadowExpire: fix to rounding method to avoid date change
2021-01-29 12:30:59 +01:00
Benjamin Renard
d48a3c2dc0
LSexample/LSpeople: fix sambaPwdCanChange as single-value
2021-01-29 12:00:03 +01:00
Benjamin Renard
29e499e1d6
LSldapObject::submitChange(): fix error renaming LSobject
...
Old RDN value was keep and block the update ot the other changed
attributes.
2021-01-28 16:59:42 +01:00
Benjamin Renard
fadfe2d2ba
LSldapObject::validateAttrData(): fix fatal errors on missing formated log messages
2021-01-28 16:57:51 +01:00
Benjamin Renard
2fec564d91
LSexample/LSgroup: upgrade generate_gidNumber_withSambaDomainObject to generate_samba_gidNumber
2021-01-28 16:43:48 +01:00
Benjamin Renard
9680f8a18e
LSform: fix displaying error in form in case of global error
2021-01-18 15:04:14 +01:00
Benjamin Renard
957777d44f
LSldapObject::validateAttrData(): fix checking LDAP validation result
2021-01-18 15:03:26 +01:00
Benjamin Renard
7ef6e57c49
LSldapObject::submitChange(): code cleaning
2020-12-22 19:46:57 +01:00
Benjamin Renard
a353ca5c37
LSldapObject::submitChange(): Add security check about isNew() return
2020-12-22 19:45:35 +01:00
Benjamin Renard
06b8fddc51
LSldapObject::validateAttrData(): check return type of LSldap::getNumberResult()
2020-12-22 19:44:51 +01:00