]> git.nbdom.net Git - nb.git/commitdiff
lib/php/db/types/ldap.php
authorNicolas Boisselier <nicolas.boisselier@gmail.com>
Wed, 27 May 2026 21:38:25 +0000 (23:38 +0200)
committerNicolas Boisselier <nicolas.boisselier@gmail.com>
Wed, 27 May 2026 21:38:25 +0000 (23:38 +0200)
lib/php/db/types/ldap.php

index aefb016fe72e6ae1633b8b28d64d11a2a2d27162..c9a4beffbebb39b215ba5d762b2ee412ddd414cd 100644 (file)
@@ -3,7 +3,7 @@ if (!class_exists('Db')) {
        echo "Hi there! I'm just a plugin, not much I can do when called directly.\n";
        exit;
 }
-$LDAP_CONN = null;
+$GLOBALS['LDAP_CONN'] = null;
 $DB_TYPES['ldap'] = [
        'quote_name' => '',
        'quote' => function($v) { return $v; },
@@ -11,25 +11,25 @@ $DB_TYPES['ldap'] = [
        '_connect' => function($db) {
                require_once(NB_ROOT.'/lib/php/ldap.php');
 
-               $LDAP_CONN = new Ldap([
+               $GLOBALS['LDAP_CONN'] = new Ldap([
                        'host' => $db->host,
                        'user' => $db->user,
                        'password' => $db->password,
                        'base' => $db->name,
                ]);
 
-               return $LDAP_CONN->connect();
+               return $GLOBALS['LDAP_CONN']->connect();
        },
        'rows_prepare' => function($table,$sql) {
                $fields = (empty($table->fields_only) ? array_keys($table->fields()) : $table->fields_only);
                $table->replace_fields($fields);
-               $LDAP_CONN->prepare($sql,['attrs'=>$fields]); return $LDAP_CONN;
+               $GLOBALS['LDAP_CONN']->prepare($sql,['attrs'=>$fields]); return $GLOBALS['LDAP_CONN'];
        },
        'rows_fetch' => function($table) {
-               $row = $LDAP_CONN->fetch();
+               $row = $GLOBALS['LDAP_CONN']->fetch();
                if (!$row) return [];
                $fields = (empty($table->fields_only) ? array_keys($table->fields()) : $table->fields_only);
-               $row = $LDAP_CONN->ar_filter_keys($row,$fields);
+               $row = $GLOBALS['LDAP_CONN']->ar_filter_keys($row,$fields);
                $table->fields_only($row,$fields); # reorder by fields
                return $row;
        },
@@ -59,12 +59,12 @@ $DB_TYPES['ldap'] = [
                        foreach ($m[1] as $v) {
                                $row['objectClass'][] = $v;
                        }
-                       $row['dn'] = 'cn=CHANGEME,'.$LDAP_CONN->base();
+                       $row['dn'] = 'cn=CHANGEME,'.$GLOBALS['LDAP_CONN']->base();
                } else {
-                       $LDAP_CONN->prepare([
+                       $GLOBALS['LDAP_CONN']->prepare([
                                'base' => $values['dn'],
                        ]);
-                       $row = $LDAP_CONN->fetch();
+                       $row = $GLOBALS['LDAP_CONN']->fetch();
                }
 
                # Sort fields
@@ -90,15 +90,15 @@ $DB_TYPES['ldap'] = [
                        )) unset($values[$k]);
                }
                #bye([$dn,$values]);
-               return (int)$LDAP_CONN->add($dn,$values);
+               return (int)$GLOBALS['LDAP_CONN']->add($dn,$values);
        },
        'delete' => function(&$table,&$values) {
                $dn = $values['dn']; unset($values['dn']);
-               return (int)$LDAP_CONN->delete($dn);
+               return (int)$GLOBALS['LDAP_CONN']->delete($dn);
        },
        'update' => function(&$table,&$values) {
                $dn = $values['dn']; unset($values['dn']);
-               return (int)$LDAP_CONN->update($dn,$values);
+               return (int)$GLOBALS['LDAP_CONN']->update($dn,$values);
        },
 ];