Commit graph

237 commits

Author SHA1 Message Date
Benjamin Renard
96c7e33034 API objects list method: add as_list parameter 2021-03-17 18:37:19 +01: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
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
5f4798a5a1 Add export feature using existing LSioFormats 2021-02-05 12:18:26 +01:00
Benjamin Renard
5c10277861 Doc: Add anchors for API sections 2021-02-03 15:09:25 +01:00
Benjamin Renard
638bb83eed Doc / API relation method: use group objects from LSexample 2021-02-03 15:01:35 +01:00
Benjamin Renard
ff57a12b0e Fix typo in API doc 2021-02-03 15:00:45 +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
bbaa0a99df Auto declare simple PHP class for simple LSObject type
On LSsession::loadLSobject(), if PHP class file is not found, a simple 
one will be declare.
2020-09-03 16:00:51 +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
6ed225be8f doc: fix typo 2020-08-26 12:20:27 +02:00
Benjamin Renard
be497226ae doc / contrib: Some fixes and adjustments 2020-08-26 12:15:16 +02:00
Benjamin Renard
7711b3c00a Doc / contrib: add section about LSformRules 2020-08-26 11:49:21 +02:00
Benjamin Renard
5975d36a1c Doc / contrib: add section about LSformElements 2020-08-26 11:25:56 +02:00
Benjamin Renard
c5b378abe4 doc: reorganize contrib sub-sections 2020-08-25 20:39:20 +02:00
Benjamin Renard
592288bfaa doc: fix typo 2020-08-25 20:34:55 +02:00
Benjamin Renard
0c9a077399 doc: fix typo 2020-08-25 20:32:35 +02:00
Benjamin Renard
74468584c1 Publish and complete contrib section of the documentation about LSaddons 2020-08-25 20:32:17 +02:00
Benjamin Renard
a8e2ecc343 Translate LSerror message at formating/diplaying time
It's permit to be sure to translate message in the right user language, 
even if its context isn't loaded at error emission time.
2020-08-25 17:31:50 +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
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
1b98dbfe80 Fix helpInfo feature by LSsession::addHelpInfos to LStemplate
LSsession :: addHelpInfos() is now deprecated in favor of LStemplate :: 
addHelpInfo().
2020-06-04 19:04:48 +02:00
Benjamin Renard
506c0fb622 Update news, changelog and upgrade doc about interface responsive 2020-06-02 20:06:13 +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
4f2afc318f Doc / upgrade: add note about $GLOBALS['defaultJSscipts'] changes 2020-05-28 20:06:45 +02:00
Benjamin Renard
7b14412516 Update upgrade doc 2020-05-28 19:39:58 +02:00
Benjamin Renard
3fbd9e8073 Move custom JS & CSS handling methods from LSsession to LStemplates
The following method are now offer by LStemplate:
 - addJSscript()
 - addLibJSscript()
 - addJSconfigParam()
 - addCssFile()
 - addLibCssFile()
Old methods are always provided by LSsession, but an deprecated error 
message wil be displayed to alert on it.
2020-05-28 16:56:36 +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