From 6bf29ef081fc7d51fcd47f81fd260e0e66794f6c Mon Sep 17 00:00:00 2001 From: Nicolas Boisselier Date: Mon, 19 Feb 2018 02:08:55 +0000 Subject: [PATCH] lib/php/db/types/ldap.php --- etc/dbq/ldap.php | 2 +- lib/php/db/field.php | 2 ++ lib/php/db/types/ldap.php | 14 ++++++++++++++ 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/etc/dbq/ldap.php b/etc/dbq/ldap.php index b142a288..503d50cf 100644 --- a/etc/dbq/ldap.php +++ b/etc/dbq/ldap.php @@ -77,7 +77,7 @@ $DBQ['ldap'] = $GLOBALS['DBQ_LDAP'] + [ 'displayName', 'givenName', #'audio', - 'businessCategory', + #'businessCategory', 'carLicense', #'departmentNumber', #'employeeNumber', diff --git a/lib/php/db/field.php b/lib/php/db/field.php index 3efea7af..6950ad32 100644 --- a/lib/php/db/field.php +++ b/lib/php/db/field.php @@ -119,6 +119,8 @@ class field extends nb { $html = ''; $multi = is_array($values) ? true : false; + #if ($db = $this->db() and $db->type == 'ldap') $multi = true; + if ($db = $this->db() and $fct=$db->conf_type('html_edit_multi')) $multi = $fct($this); $suff = $multi ? '[]' : ''; if ($type === null) $type = $this->html_type(); diff --git a/lib/php/db/types/ldap.php b/lib/php/db/types/ldap.php index 03c89e4a..9c3cb7e3 100644 --- a/lib/php/db/types/ldap.php +++ b/lib/php/db/types/ldap.php @@ -37,6 +37,20 @@ $DB_TYPES['ldap'] = [ $table->fields_only($row,$fields); # reorder by fields return $row; }, + 'html_edit_multi' => function($field) { + $r = !in_array($field->name,[ + 'dn', + 'cn', + 'sn', + 'uid', + 'gid', + 'homeDirectory', + 'displayName', + 'initials', + 'loginShell', + ]); + return $r; + }, 'html_edit_row' => function(&$table,&$values) { $table->db()->ldap->prepare([ 'base' => $values['dn'], -- 2.47.3