Commit graph

652 commits

Author SHA1 Message Date
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
Benjamin Renard 89ecbb8a5c LSldap: fix search & getNumberResult methods to use basedn from configuration instead of empty one. 2020-12-22 19:43:50 +01:00
Benjamin Renard 14352da6bd LSformElement::jsonCompositeAttribute: Fix PHP warning 2020-12-22 19:32:14 +01:00
Benjamin Renard 514a2eb0fd Code cleaning 2020-12-22 18:42:56 +01:00
Benjamin Renard 7535530416 LSformRule: do not defined validate_one_by_one constant visibility
To keep compatibility with PHP < 7.1.
2020-12-22 18:05:28 +01:00
Benjamin Renard 43d2620f8e CLI search: add JSON output (with -j|--json parameters)
Futhermore, --pretty parameter also permit to prettify the JSON 
output.
2020-12-22 11:01:38 +01:00
Benjamin Renard 1c13aa7cdd CLI search: add --all parameter to permit to disable pagination 2020-12-22 11:00:49 +01:00
Benjamin Renard f6f2e352bc CLI show: add JSON output (with -j|--json parameters)
Futhermore, -p|--pretty parameter also permit to prettify the JSON 
output.
2020-12-22 10:31:23 +01:00
Benjamin Renard d39bba45fb CLI show: fix handling --raw-values parameter 2020-12-22 10:27:22 +01:00
Benjamin Renard 1428b5df62 LSattr_ldap::pwdHistory: fix fatal error on time encoding. 2020-12-21 14:54:37 +01:00
Benjamin Renard 114e3c48ac LSformRule: add validate_values() method and use it to value rules
Also add validate_one_by_one class constant to allow to handle 
validation on all values together instead of one-by-one.
2020-12-21 14:53:36 +01:00
Benjamin Renard 089693ea0e Fix/improve LSsession_13 errors (unconfigured/unknown custom action function) 2020-12-16 17:42:55 +01:00
Benjamin Renard d59f8c52bb HTML buttons are now handle by default CSS (and light-blue one) 2020-12-16 17:22:39 +01:00
Benjamin Renard 443d51865f Add LStable CSS class to make easier to create customized table 2020-12-16 17:21:47 +01:00
Benjamin Renard 28ac541c3c Fix possibility to scroll the menu on responsive view 2020-12-16 14:51:26 +01:00
Benjamin Renard 0f0bff5a77 LSldapObject::submitChange(): on new object, check if generated DN is not already affected 2020-12-14 19:42:19 +01:00
Benjamin Renard ab922356c0 LSsession :: loadLSprofilesLSobjects(): fix a PHP warning 2020-12-14 19:37:13 +01:00
Benjamin Renard a49cf4ba0c LSldapObject: fix/improve validateAttrData() 2020-12-14 19:36:21 +01:00
Benjamin Renard 8b292f538d LSconfig :: get(): add array casting (using ensureIsArray()) 2020-12-14 19:35:03 +01:00
Benjamin Renard 2abc369c73 LSformElement::labeledValue: fix label translation on freeze view 2020-12-10 17:21:21 +01:00
Benjamin Renard f6a6c226f4 LSattribute: fix handling default_value in generateValue() 2020-12-02 20:17:18 +01:00
Benjamin Renard 852b375964 LSattribute: fix canBeGenerated() when default_value isn't a string 2020-12-02 19:53:29 +01:00
Benjamin Renard 1da0693138 LSaddon::samba: fix PHP warning about LS_SAMBA_UNIX_ID_POOL_DN contant 2020-12-02 19:49:37 +01:00
Benjamin Renard a7ab192274 Add LSldap_attr::pwdHistory 2020-12-02 18:12:00 +01:00
Benjamin Renard c6501d479b LSattr_html::jsonCompositeAttribute: Add fullWidth parameter and improve responsive display 2020-12-02 17:43:55 +01:00
Benjamin Renard 2161cc701a LSattr_ldap::compositeValueToJSON: use static instead of self keyword
Use static instead of self keyword to use static method. This permit to 
easily override this class.
2020-12-02 16:37:41 +01:00
Benjamin Renard bc462c07b6 Add some debugging/trace messages 2020-12-01 16:48:07 +01:00
Benjamin Renard 597054acad LSattr_ldap::shadowExpire: fix getUpdateData()
Fix to return a correctly rounded value as string.
2020-12-01 16:43:31 +01:00
Benjamin Renard 42dd0aa728 LSformElement :: date: fix getPostData() method 2020-12-01 16:42:20 +01:00
Benjamin Renard 3c75ef482e Remove historic read right on all attributes of the hard-coded "admin" LSprofile 2020-12-01 16:40:21 +01:00
Benjamin Renard 4e8a6db06b LSaddon::posix: fix generate_shadowLastChange()
Just return a timestamp because its designed to be used with 
LSattr_ldap_shadowExpire that will handled the division by 86400.
2020-12-01 16:37:01 +01:00
Benjamin Renard 0addf22c2e LSldapObject :: _updateData(): make method protected instead of private
This change allow this method usage from children classes to allow 
custom relation implementations.
2020-12-01 15:04:20 +01:00
Benjamin Renard b4a5824ee8 Code cleaning 2020-11-30 19:44:14 +01:00
Benjamin Renard 106a2d9f04 Use ensureIsArray() helper to make code more readable 2020-11-30 19:43:52 +01:00
Benjamin Renard 770533b7ec Ensure attributes values are always an array in LSattribute & LSattr_ldap 2020-11-30 19:37:44 +01:00
Benjamin Renard f7231229f5 LSsession: fix errors in changeAuthUser() and add logging messages 2020-11-30 16:13:36 +01:00
Benjamin Renard 335d6a4efa Default config files: add ending-line commas to avoid problem on editing 2020-11-25 15:59:36 +01:00
Benjamin Renard b93187f208 LSformElement::labeledValue: add translate_labels parameter and fix translating it 2020-11-25 15:46:25 +01:00
Benjamin Renard b00f59af2e light-blue.css: improve custom select display 2020-11-25 15:37:56 +01:00
Benjamin Renard 88248506cf LSformElement::labeledValue: fix/improve display 2020-11-25 15:20:25 +01:00
Benjamin Renard ef9470bf31 LSexample: fix value_attribute ('dn' vs '%{dn}') 2020-11-24 19:50:44 +01:00
Benjamin Renard 8b996885d1 LSsession: improve loadLSaddons() method 2020-11-17 17:56:04 +01:00
Benjamin Renard 56ffbd7a71 Fix bug in last commit 2020-11-17 17:47:50 +01:00
Benjamin Renard d5bfddf124 LSaddon::mail: Add test_send_mail CLI command 2020-11-17 11:26:06 +01:00
Benjamin Renard 6c35af3109 Fix PHP warning about undefined constant SELF (routes.php) 2020-10-08 18:08:35 +02:00
Benjamin Renard 3598e48c6e LSaddon::LSaccessRightsMatrixView: handle customActions & customSearchActions 2020-09-23 14:10:50 +02:00
Benjamin Renard 85b74feb86 LSaddon SUPANN: add supannCheckEntityCouldBeDeleted() function 2020-09-22 20:47:03 +02:00
Benjamin Renard 43cf5ccd7a LSaddon SUPANN: add support for some attributes
Add support of following attributes:
- supannCivilite:
  add supannGetCivilitePossibleValues()
- eduPersonAffiliation:
  add supannGetAffiliationPossibleValues() and
  supannCheckEduPersonAffiliation()
- supannCheckEduPersonAffiliation:
  add supannGetAffiliationPossibleValues() and
  supannCheckEduPersonPrimaryAffiliation()
- supannCheckEduPersonPrimaryAffiliation:
  add generate_eduPersonPrincipalName()
2020-09-22 18:10:05 +02:00
Benjamin Renard de62999fea LSattr_html::select_list: add get_possible_values parameter 2020-09-22 15:04:31 +02:00
Benjamin Renard 8f407e9345 Add LSaddon::showTechInfo 2020-09-21 15:47:07 +02:00
Benjamin Renard 5315005382 LSldapObject::loadData(): explicitly list need attributes in LDAP request 2020-09-21 12:45:39 +02:00