Commit graph

365 commits

Author SHA1 Message Date
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
b93187f208 LSformElement::labeledValue: add translate_labels parameter and fix translating it 2020-11-25 15:46:25 +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
Benjamin Renard
9edfa2b92e LSldap::getAttrs(): add $attrs and $include_internal optional parameters 2020-09-21 12:45:33 +02:00
Benjamin Renard
d6c9e358f3 LSaddon::mail: add possibility to send HTML email 2020-09-16 10:35:47 +02:00
Benjamin Renard
255817d7aa Improve POSIX support and add examples to handle this type of attributes 2020-09-11 13:54:08 +02:00
Benjamin Renard
bf482c648f LSattr_ldap::shadowExpire: fix getUpdateData() method to return string values 2020-09-11 13:40:48 +02:00
Benjamin Renard
41d816c025 LSformElement:📅 add clear btn 2020-09-11 13:38:07 +02:00
Benjamin Renard
e4ca5bbf71 LSformElement:📅 Make today btn working even if input is empty 2020-09-11 13:35:35 +02:00
Benjamin Renard
052882eb49 Fix handling "0" (zero string) value 2020-09-11 13:34:42 +02:00
Benjamin Renard
1169772c4a LSattr_html::select_list: clean code of getPossibleValues() method 2020-09-10 15:53:19 +02:00
Benjamin Renard
b8c00a8708 LSattr_html::select_box: fix double translation of labels on unfreeze field 2020-09-10 15:52:29 +02:00
Benjamin Renard
e62ddbdc19 LSformElement::image: fix error on non-AJAX form when no file is submited 2020-09-10 15:46:10 +02:00
Benjamin Renard
aeea76ab2a LSform: fix/improve handling config
Permit to fix handling ajaxSubmit form.
2020-09-10 15:45:26 +02:00
Benjamin Renard
00132e32ad LSform: fix non-AJAX form submission (or form with input[type=file]) 2020-09-10 15:43:52 +02:00
Benjamin Renard
060ebf1bff Allow conversion of LSattr_ldap to string 2020-09-10 12:26:48 +02:00
Benjamin Renard
00d92d1c37 generate_lang_file CLI command: improve logging 2020-09-10 12:26:25 +02:00
Benjamin Renard
4e87ddb898 generate_lang_file CLI command: factor handling possible_values of select list&box 2020-09-10 12:09:26 +02:00
Benjamin Renard
d344c56f45 generate_lang_file CLI command: fix PHP warning 2020-09-10 12:07:04 +02:00
Benjamin Renard
be04b6becf Add warning on unknown key requested using __get methods 2020-09-10 10:38:35 +02:00
Benjamin Renard
d0d3e944ed Extend LSlog_handler using LSlog_staticLoggerClass 2020-09-10 10:26:49 +02:00
Benjamin Renard
988054bfc5 LSlog handlers: fix log TRACE enabled error (even if disabled) 2020-09-10 10:17:19 +02:00
Benjamin Renard
fd4bf4f38a Fix some PHP5 syntax errors 2020-09-09 20:11:03 +02:00
Benjamin Renard
02ad9ded1e generate_lang_file CLI command: add Q choice in interactive mode to quit 2020-09-09 20:06:43 +02:00
Benjamin Renard
63f57cfd77 LSldap: fix/improve update() and getEntry() methods 2020-09-09 19:02:32 +02:00
Benjamin Renard
a4183a88fc Improve Samba support using LSaddon::samba 2020-09-09 19:00:55 +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
cccce6edb5 LSldapObject::submitChange(): improve logging 2020-09-09 18:36:46 +02:00
Benjamin Renard
6a3fd60d3e LSformElement::getEmptyField() / LSformElement.tpl: Provide value index as $value_idx template variable 2020-09-08 18:42:54 +02:00
Benjamin Renard
df1c46eab6 Add __toString() method to all common extendable PHP classes
This permit to make context logging easier.
2020-09-08 17:29:10 +02:00
Benjamin Renard
e89d13d002 LSsearch: fix PHP warning 2020-09-08 16:36:54 +02:00
Benjamin Renard
14bccc1e17 LSrelation: check relation is correctly configured before using it
To avoid some unreal warnings in case of misconfigured relation
2020-09-03 18:59:13 +02:00
Benjamin Renard
88d8d7f026 LSrelation: fix error codes prefix 2020-09-03 18:38:08 +02:00
Benjamin Renard
9db67eb2ba LSsession: improve error messages 2020-09-03 18:31:53 +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
406b017023 Add method LSldapObject::isValidTypeName() and use it in LSsession::loadLSobject() 2020-09-03 15:40:59 +02:00
Benjamin Renard
4c427b26d6 Improve logging on LSobject & LSattribute triggers executions 2020-08-26 18:08:14 +02:00
Benjamin Renard
8be45249cb LSformRule :: imagesize: use self :: log_debug() instead of LSdebug() 2020-08-26 16:11:21 +02:00
Benjamin Renard
5b9e6409f4 LSform: fix call of LSformRules validate method to provide LSformElement by ref 2020-08-26 16:10:50 +02:00
Benjamin Renard
4c1c7b2fae LSldapObject->getValue(): add $first and $default parameters 2020-08-26 12:56:58 +02:00
Benjamin Renard
699631b63c LsformRule: provide reference to LSformElement instead of copied value 2020-08-26 11:45:59 +02:00
Benjamin Renard
f0ef642cf0 LScli::add_command(): fix typo in comment 2020-08-25 20:33:08 +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
827cf2ca7f Handle redirections of old-style URL even if user not authenticated
It's avoid to display error only after login form success.
2020-08-25 17:14:34 +02:00
Benjamin Renard
3d49092262 LSlang: fix warning about return not True 2020-08-25 11:01:28 +02:00
Benjamin Renard
75cbea9459 modify page: fix URL encode object DN in redirection URL 2020-08-25 10:55:28 +02:00
Benjamin Renard
a7d202e5ff LScli: add --trace parameter 2020-08-24 18:03:50 +02:00
Benjamin Renard
8a1eefc5e3 LSsession::loadLSprofiles(): restructuring code and improve comments and logging 2020-08-24 17:56:42 +02:00
Benjamin Renard
c4dc2a0441 LSsearch::getHash(): fix handling onlyAccessible parameter 2020-08-24 16:55:24 +02:00
Benjamin Renard
11c2e3c9d4 LSsearch: remove buggy _hash cache parameter and replace it by an hash accessible key 2020-08-24 16:54:43 +02:00
Benjamin Renard
7c8fb87c99 LSsearchEntry: remove useless $hash private property 2020-08-24 16:14:16 +02:00
Benjamin Renard
70370f99f9 LSsearch: fix/improve logging 2020-08-24 16:04:23 +02:00
Benjamin Renard
e8768d94ce LStemplate::getImagePath(): handle SVG image type/ext as prefered format 2020-08-20 18:29:19 +02:00
Benjamin Renard
b13ff9b832 LSurl::redirect: fix handling absolute URL without protocol
For instance "//localhost/phpldapadmin/")
2020-08-20 18:11:48 +02:00
Benjamin Renard
34d7e10f9a Log referer URL in case of old-style URL redirection 2020-08-19 15:35:18 +02:00
Benjamin Renard
845fdbb4d8 LSauthMethod :: authenticate(): fix PHP warning 2020-08-19 15:11:49 +02:00
Benjamin Renard
f223827157 LSsession::includeFile(): improve logging 2020-08-17 20:04:21 +02:00
Benjamin Renard
cdd6189e91 dumpFile(): add $force_download and $filename parameters 2020-08-13 16:20:34 +02:00
Benjamin Renard
848d85589b LSauthMethod_basic::authenticate(): add debug/trace messages 2020-08-07 18:27:54 +02:00
Benjamin Renard
5fcf3bbf9c LSsession: add trace messages in whoami() and canAccess methods 2020-08-07 18:19:24 +02:00
Benjamin Renard
1f1a4e16fa LSsession: add log_exception() method 2020-08-07 18:17:02 +02:00
Benjamin Renard
f234709722 LSlog: add TRACE log level 2020-08-07 18:05:50 +02:00
Benjamin Renard
42e6437966 LSsession: fix usage of self :: $topDn instead of self :: getTopDn() 2020-08-07 17:40:40 +02:00
Benjamin Renard
3ce495c2c3 LSerror: format error message at adding time
Format error message at adding time to make sure to be able to format 
it, even if the component triggered it is not loaded.
2020-08-07 16:11:32 +02:00
Benjamin Renard
6eee099bd2 LScli: fix --sub-dn autocompletion even if LDAP server not selected 2020-08-07 11:09:20 +02:00
Benjamin Renard
3dc0d7f637 LScli :: search: remove buggy --subDn parameter 2020-08-07 10:55:18 +02:00
Benjamin Renard
5bbe076e23 LScli: fix handling LDAP servers with configured subDn
In case of LDAP server with configured subDn, always select a subDn, 
even if user didn't make it with --sub-dn parameter. Futhermore, in BASH 
autocompletion, autocomplete LSobject types with only available ones in 
current subDn.
2020-08-07 10:39:41 +02:00
Benjamin Renard
d5d88d2601 LSsession : fix handling subDn in recoverPassword feature 2020-08-06 17:01:51 +02:00
Benjamin Renard
ba85e5c2fc LSerror: fix PHP error 2020-08-06 16:44:18 +02:00
Benjamin Renard
14f28a1ec0 LScli: add global --sub-dn parameter 2020-08-06 16:43:50 +02:00
Benjamin Renard
3dbfe18afb LSsession: add setSubDn() method 2020-08-06 16:43:35 +02:00
Benjamin Renard
1420439403 LScli: fix autocomplete_LSobject_types() in case of configured subDn 2020-08-06 15:11:41 +02:00
Benjamin Renard
712d18b09f LSsession: fix/improve methods & doc about global preference parameters 2020-08-06 13:48:43 +02:00
Benjamin Renard
626e0d854c Fix subDn form style 2020-08-06 13:20:49 +02:00
Benjamin Renard
36ecea5174 Typo 2020-08-04 10:31:02 +02:00
Benjamin Renard
669d679464 LSformElement :: boolean: fix translation of default labels 2020-08-04 10:30:49 +02:00
Benjamin Renard
f9ebf06a63 LSview: Fix validated URL generation 2020-07-28 12:40:46 +02:00
Benjamin Renard
7eac609bd9 LSformElement JS : fire change event on input field cleared 2020-07-24 11:16:22 +02:00
Benjamin Renard
5b6bb28b4d LSformElement :: password: fix/improve send new password feature 2020-07-07 16:04:32 +02:00
Benjamin Renard
bf054a839d LSformElement :: password: fix PHP warning 2020-07-07 15:41:16 +02:00
Benjamin Renard
f8f24df2dd LSformElement :: password: fix confirmInput feature on CLI mode 2020-07-07 14:28:55 +02:00
Benjamin Renard
69fc42a299 LScli create command: add autocompletion 2020-07-07 14:28:04 +02:00
Benjamin Renard
05e0cd56b4 LSldapObject: replace LSlog :: debug() usage by self :: log_debug() 2020-07-07 14:16:13 +02:00
Benjamin Renard
0a8ed10695 LSsearch: replace $logger property by using LSlog_staticLoggerClass 2020-07-07 14:15:30 +02:00
Benjamin Renard
0b180e63b0 LSformElement :: password: fix typo 2020-07-07 12:44:18 +02:00
Benjamin Renard
f0bb4f585c LScli modify command: add autocompletion
Autocompletion feature also add on LSform and LSformElement for 
attribute values
2020-07-07 12:43:55 +02:00
Benjamin Renard
312b3dfb11 Wording 2020-07-07 12:38:28 +02:00
Benjamin Renard
a21b40d706 LScli autocompleter: fix handling quoted arguments 2020-07-06 17:53:54 +02:00
Benjamin Renard
f277528400 LScli relation command: improve -r/--remove autocompletion 2020-07-06 10:22:27 +02:00
Benjamin Renard
c232a9899d LSlog_console: fix stderr switching on message other than INFO / DEBUG 2020-07-06 10:21:44 +02:00
Benjamin Renard
5696eb99c4 LSformElement::password: fix changeInput feature
Fix error in modify form when object's attribute is not already set.
2020-06-30 15:55:21 +02:00
Benjamin Renard
5872430863 LSlog handlers: add enabled parameter 2020-06-30 11:03:48 +02:00
Benjamin Renard
e58999bbaf LSformElement::password: Improve UX with confirmInput and confirmChange features enabled 2020-06-30 10:19:51 +02:00
Benjamin Renard
d456240fde LSform::validate(): fix checking elements's errors after getPostData() 2020-06-30 10:00:22 +02:00
Benjamin Renard
e44be00ebd LSformElement::password: fix confirmChangeQuestion translation 2020-06-30 09:59:25 +02:00
Benjamin Renard
f66b7186e8 LSformElement::password: fix some jshint errors 2020-06-30 09:58:57 +02:00
Benjamin Renard
dde982f42c generate_ldapsaisie_pot CLI command: fix handling ___() keyword 2020-06-30 09:58:22 +02:00
Benjamin Renard
2c6b95b3d6 LSformElement::password: Add confirmInput feature 2020-06-30 09:57:16 +02:00
Benjamin Renard
47d97a00ce Fix LSurl :: get_rewrite_base() method (again) 2020-06-29 16:59:23 +02:00
Benjamin Renard
d0beb86b3d Fix LSurl :: get_rewrite_base() method (again) 2020-06-25 16:17:38 +02:00
Benjamin Renard
c36b385e0f Fix LSurl :: get_rewrite_base() method 2020-06-25 16:08:49 +02:00
Benjamin Renard
f0f2ce48ad LSurl: fix translation of all fatal error messages 2020-06-25 16:03:49 +02:00
Benjamin Renard
06852080a8 LSurl: Remove REQUESTED_URL parameter and always detecting URL from REQUEST_URI
This permit to correctly handle object's DN with slashes (with 
AllowEncodedSlashes NoDecode).
2020-06-25 16:00:20 +02:00
Benjamin Renard
0ce63f3d1e Add route to handle default browser favicon.ico request 2020-06-25 11:55:20 +02:00
Benjamin Renard
458ca79418 LSsearch: Fix PHP < 7 syntax error 2020-06-23 16:17:19 +02:00
4a72388c60 Fix handling positional args on CLI command search autocompletion 2020-06-23 16:00:25 +02:00
1eced8f47a Add autocompleter for CLI command relation 2020-06-23 15:59:29 +02:00
daac4db329 Improve LScli :: autocomplete_LSobject_dn() to provide RDN attribute on empty compword 2020-06-23 15:58:37 +02:00
9de22502ef Add autocompleter for CLI command remove 2020-06-15 11:32:24 +02:00
4ba584e8c6 Add autocompleter for CLI command show 2020-06-15 11:26:57 +02:00
559f9d9475 Add autocompleter for CLI command search 2020-06-15 10:40:48 +02:00
a65322335e LScli::bash_autocomplete(): run command autocompleter with command args instead of complete command args 2020-06-15 08:55:00 +02:00
c8820ff841 Add autocompleter for CLI command LSlang :: generate_lang_file 2020-06-15 08:30:50 +02:00
3494cc55c8 LScli: add BASH autocompletion support 2020-06-15 08:22:55 +02:00
079f39ab4b LSformElement::password: Add confirmChangeQuestion parameter 2020-06-13 10:14:16 +02:00
Benjamin Renard
a5814afefc LSform: add CSS class on submitting form to permit visual adaptation 2020-06-11 20:35:55 +02:00
Benjamin Renard
6e02cbe2d5 Fix typo 2020-06-11 20:31:21 +02:00
Benjamin Renard
38ed2ca08c LSformElement::password: Add confirmChange parameter 2020-06-11 20:14:16 +02:00
Benjamin Renard
9c11a81220 LSform JS events: Add possibility to callback to confirm/cancel event 2020-06-11 20:05:28 +02:00
Benjamin Renard
6e14916bae Fix Internet Explorer deprecation warning on IE11 2020-06-04 19:35:49 +02:00
Benjamin Renard
ac1626fe22 LSsession: fix some error messages 2020-06-04 19:05:23 +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
c6dcc95b51 LSview/LSform: fix loading view dependencies 2020-06-04 17:12:28 +02:00
Benjamin Renard
62b0eb36ab LSrelation: use LSview_actions.tpl 2020-06-04 16:46:00 +02:00
Benjamin Renard
6f3edba986 Object custom action question view: add some LSview actions links 2020-06-04 16:35:54 +02:00
Benjamin Renard
6f612199a0 Remove question view: add some LSview actions links 2020-06-04 16:35:19 +02:00
Benjamin Renard
cbaa1eadfd Fix toggle_menu undefined error 2020-06-04 10:02:29 +02:00
Benjamin Renard
31f6189f4a LSform: Avoid page scrolling on tab change 2020-06-03 12:58:37 +02:00
Benjamin Renard
bfd60b28c6 LSform: fix preserving current tab on actions links click 2020-06-03 12:58:05 +02:00