Commit graph

198 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 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 8cb36c7aa9 doc: fix typos 2021-07-19 16:54:41 +02:00
Benjamin Renard 18cc960755 Add LSformRule_numberOfValues 2021-07-19 16:54:41 +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 b37a2b321f Doc/LSrelation: Make canEdit_attribute parameter more visible in case of simple relation 2021-06-21 12:32:38 +02:00
Benjamin Renard c45f884aa1 LSrelation: add display_name_format parameter 2021-06-21 12:31:49 +02:00
Benjamin Renard df57967669 LSattr_html::select_box: add inline parameter 2021-06-11 18:26:25 +02:00
Benjamin Renard 8dbbda801a LSattr_ldap::naiveDate: Add format option 2021-06-10 19:01:22 +02:00
Benjamin Renard fdbb9842df Improve doc about attribute values validation 2021-06-03 17:35:16 +02:00
Florent Angebault d94f96498a doc: fix some typos 2021-05-04 18:56:24 +02:00
Benjamin Renard 7005100ac4 LSioFormat: handle multiple formats for generated fields 2021-04-27 12:13:32 +02:00
Benjamin Renard d6aad3acc8 doc: add sections missing IDs 2021-04-13 18:45:47 +02:00
Benjamin Renard 67774a6832 LSformElement :: mail: Move autocomplete feature in text parent class 2021-03-03 14:34:06 +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 d27a59f807 Add LSobject import/export API methods 2021-02-08 12:42:00 +01:00
Benjamin Renard 5f4798a5a1 Add export feature using existing LSioFormats 2021-02-05 12:18:26 +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 ac7e042c2a LSattribute: add default LDAP & HTML type (ascii / text) 2021-01-29 15:59:13 +01:00
Benjamin Renard e2ff1503ab LSattr_ldap:📅 add note about date & time with micro-seconds 2020-12-09 18:58:43 +01:00
Benjamin Renard 3a946a47e3 Doc: Add note about the default_value LSattribute parameter 2020-12-02 20:20:05 +01:00
Benjamin Renard f2a78f3d5c LSattr_html::sambaAcctFlags: Add note about how setting default_value 2020-12-02 20:19:20 +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 b93187f208 LSformElement::labeledValue: add translate_labels parameter and fix translating it 2020-11-25 15:46:25 +01: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 d6c9e358f3 LSaddon::mail: add possibility to send HTML email 2020-09-16 10:35:47 +02:00
Benjamin Renard a848888894 Add doc about LSattr_ldap::shadowExpire 2020-09-11 13:51:50 +02:00
Benjamin Renard 15941ac678 Add LSattr LDAP & HTML sambaAcctFlags type 2020-09-09 18:45:34 +02:00
Benjamin Renard 7e74853021 LSattr_html::date & LSformRule:📅 add special_values parameter 2020-09-09 18:40:44 +02:00
Benjamin Renard 0de62c218d doc: fix info about LSobject and LSattribute event triggers configuration 2020-08-26 17:06:24 +02:00
Benjamin Renard 0c9a077399 doc: fix typo 2020-08-25 20:32:35 +02:00
Benjamin Renard f234709722 LSlog: add TRACE log level 2020-08-07 18:05:50 +02:00
Benjamin Renard 712d18b09f LSsession: fix/improve methods & doc about global preference parameters 2020-08-06 13:48:43 +02:00
Benjamin Renard 5b6bb28b4d LSformElement :: password: fix/improve send new password feature 2020-07-07 16:04:32 +02:00
Benjamin Renard 5872430863 LSlog handlers: add enabled parameter 2020-06-30 11:03:48 +02:00
Benjamin Renard 2c6b95b3d6 LSformElement::password: Add confirmInput feature 2020-06-30 09:57:16 +02:00
Benjamin Renard 079f39ab4b LSformElement::password: Add confirmChangeQuestion parameter 2020-06-13 10:14:16 +02:00
Benjamin Renard 38ed2ca08c LSformElement::password: Add confirmChange parameter 2020-06-11 20:14:16 +02:00
Benjamin Renard c989126f9a Fix historical typo in variable $GLOBALS['defaultJSscripts'] name (missing "R") 2020-05-28 20:32:18 +02:00
Benjamin Renard d68b15bac3 Add default LSprofiles with the name of authenticable object types
Consquently adjust LSaccessRigthsMatrixView addon and make some 
representative change in LSexample for demo
2020-05-25 11:09:32 +02:00
Benjamin Renard fc92305bf3 Doc: fix typo 2020-05-19 18:13:02 +02:00
Benjamin Renard a6e9aeaa8b Update doc about new possibility of LSattr_html :: select_object to select multiple type of objects 2020-05-19 18:12:28 +02:00
Benjamin Renard c014e235e8 doc / LSauthMethod_HTTP: remove note about old authObjectFilter
Replace in previous commit by a global note on this topic.
2020-05-12 19:40:49 +02:00
Benjamin Renard a6f07faca0 LSauth: Add possibility to configure more than one LSobject type as user 2020-05-12 19:23:24 +02:00
Benjamin Renard 0d916d3d0d Update doc about LSlog new features 2020-05-08 16:47:27 +02:00
Benjamin Renard 2183149097 Update doc 2020-05-06 12:31:24 +02:00
Benjamin Renard aba1d18b95 Improve doc about public_root_url parameter 2020-05-02 18:46:15 +02:00