Created on 1 December 2014, over 10 years ago
Updated 27 July 2023, almost 2 years ago

Hi i was able to get work this module on the 7.x-1.0 version over a oracle backend, this is the patch:

Binary files sites/all/modules/contrib/acl/.DS_Store and /Users/directordrupal/Desktop/acl/.DS_Store differ
diff -ENwbur sites/all/modules/contrib/acl/acl.admin.inc /Users/directordrupal/Desktop/acl/acl.admin.inc
--- sites/all/modules/contrib/acl/acl.admin.inc	2014-12-01 10:25:26.000000000 -0500
+++ /Users/directordrupal/Desktop/acl/acl.admin.inc	2011-11-26 11:42:22.000000000 -0500
@@ -12,26 +12,19 @@
   $users = array();
   if (!$new_acl) {
     // Ensure the ACL in question even exists.
-    $record = db_select('acl', 'a')
-      ->fields('a', array('name', 'number_acl'))
-      ->condition('a.acl_id', $acl_id)
-      ->execute()
-      ->fetchAssoc();
-    if (!$record) {
+    if (!($record = db_query("SELECT name, number FROM {acl} WHERE acl_id = :acl_id", array(
+      'acl_id' => $acl_id,
+    ))->fetchAssoc())) {
       return array();
     }
-    $query = db_select('users', 'u');
-    $query->leftJoin('acl_user', 'aclu', 'aclu.uid = u.uid');
-    $result = $query
-      ->fields('u', array('uid', 'name'))
-      ->condition('aclu.acl_id', $acl_id)
-      ->execute();
+    $result = db_query("SELECT u.uid, u.name FROM {users} u LEFT JOIN {acl_user} aclu ON aclu.uid = u.uid WHERE acl_id = :acl_id", array(
+      'acl_id' => $acl_id));
     foreach ($result as $user) {
       $users[$user->uid] = $user->name;
     }
   }
   if (!isset($label)) {
-    $label = (isset($record['name']) ? $record['name'] : (isset($record['number_acl']) ? $record['number_acl'] : $acl_id));
+    $label = (isset($record['name']) ? $record['name'] : (isset($record['number']) ? $record['number'] : $acl_id));
   }
 
   $form = array(
@@ -99,11 +92,9 @@
     }
   }
   elseif (isset($form_state['triggering_element']) && $form_state['triggering_element']['#value'] == $form['add_button']['#value'] && !empty($form['add']['#value'])) {
-    $user = db_select('users', 'u')
-      ->fields('u', array('uid', 'name'))
-      ->condition('u.name', $form['add']['#value'])
-      ->execute()
-      ->fetchObject();
+    $user = db_query("SELECT uid, name FROM {users} WHERE name = :name", array(
+      'name' => $form['add']['#value'],
+    ))->fetchObject();
     if (!$user || !$user->uid) {
       form_error($form['add'], t("Invalid user specified."));
     }
@@ -155,3 +146,4 @@
       ->execute();
   }
 }
+
diff -ENwbur sites/all/modules/contrib/acl/acl.install /Users/directordrupal/Desktop/acl/acl.install
--- sites/all/modules/contrib/acl/acl.install	2014-11-28 13:58:26.000000000 -0500
+++ /Users/directordrupal/Desktop/acl/acl.install	2011-11-26 11:42:22.000000000 -0500
@@ -28,15 +28,15 @@
         'type'        => 'varchar',
         'length'      => 255,
       ),
-      'number_acl'        => array(
-        'description' => "A number for this ACL entry, given by the module that created it; use either 'name' or 'number_acl'.",
+      'number'        => array(
+        'description' => "A number for this ACL entry, given by the module that created it; use either 'name' or 'number'.",
         'type'        => 'int',
       ),
     ),
     'primary key'     => array('acl_id'),
     'indexes'         => array(
-      'module_name_number' => array(array('module', 64), array('name', 64), 'number_acl'),
-      'module_number' => array(array('module', 64), 'number_acl'),
+      'module_name_number' => array(array('module', 64), array('name', 64), 'number'),
+      'module_number' => array(array('module', 64), 'number'),
     ),
   );
   $schema['acl_user'] = array(
@@ -187,8 +187,8 @@
  * Add 'number' column if it's not there yet.
  */
 function acl_update_7000() {
-  if (!db_field_exists('acl', 'number_acl')) {
-    db_add_field('acl', 'number_acl', array('type' => 'int', 'description' => "A number for this ACL entry, given by the module that created it; use either 'name' or 'number_acl'."));
+  if (!db_field_exists('acl', 'number')) {
+    db_add_field('acl', 'number', array('type' => 'int', 'description' => "A number for this ACL entry, given by the module that created it; use either 'name' or 'number'."));
   }
 }
 
@@ -200,13 +200,13 @@
     db_drop_index('acl', 'name');
   }
   if (!db_index_exists('acl', 'module_name_number')) {
-    db_add_index('acl', 'module_name_number', array(array('module', 64), array('name', 64), 'number_acl'));
+    db_add_index('acl', 'module_name_number', array(array('module', 64), array('name', 64), 'number'));
   }
-  if (db_index_exists('acl', 'number_acl')) {
-    db_drop_index('acl', 'number_acl');
+  if (db_index_exists('acl', 'number')) {
+    db_drop_index('acl', 'number');
   }
   if (!db_index_exists('acl', 'module_number')) {
-    db_add_index('acl', 'module_number', array(array('module', 64), 'number_acl'));
+    db_add_index('acl', 'module_number', array(array('module', 64), 'number'));
   }
 }
 
diff -ENwbur sites/all/modules/contrib/acl/acl.module /Users/directordrupal/Desktop/acl/acl.module
--- sites/all/modules/contrib/acl/acl.module	2014-12-01 11:56:23.000000000 -0500
+++ /Users/directordrupal/Desktop/acl/acl.module	2011-11-26 11:42:22.000000000 -0500
@@ -29,7 +29,7 @@
   $acl = array(
     'module' => $module,
     'name' => $name,
-    'number_acl' => $number
+    'number' => $number
   );
   drupal_write_record('acl', $acl);
   return $acl['acl_id'];
@@ -63,12 +63,10 @@
  * Add the specified UID to an ACL.
  */
 function acl_add_user($acl_id, $uid) {
-  $test_uid = db_select('acl_user', 'aclu')
-    ->fields('aclu', array('uid'))
-    ->condition('aclu.acl_id', $acl_id)
-    ->condition('aclu.uid', $uid)
-    ->execute()
-    ->fetchField();
+  $test_uid = db_query("SELECT uid FROM {acl_user} WHERE acl_id = :acl_id AND uid = :uid", array(
+    'acl_id' => $acl_id,
+    'uid' => $uid,
+  ))->fetchField();
   if (!$test_uid) {
     db_insert('acl_user')
     ->fields(array(
@@ -103,8 +101,6 @@
  * Provide access control to all nodes selected by a subquery, based upon an ACL id.
  */
 function acl_add_nodes($subselect, $acl_id, $view, $update, $delete, $priority = 0) {
-  $result = $subselect->execute();
-  if ($result->rowCount() > 0) {
     db_delete('acl_node')
       ->condition('acl_id', $acl_id)
       ->condition('nid', $subselect, 'IN')
@@ -118,7 +114,6 @@
       ->from($subselect)
       ->execute();
   }
-}
 
 /**
  * Provide access control to a node based upon an ACL id.
@@ -179,7 +174,7 @@
     ->condition('a.module', $module)
     ->condition('a.name', $name);
   if (isset($number)) {
-    $query->condition('a.number_acl', $number);
+    $query->condition('a.number', $number);
   }
   return $query->execute()->fetchField();
 }
@@ -191,7 +186,7 @@
   $query = db_select('acl', 'a')
     ->fields('a', array('acl_id'))
     ->condition('a.module', $module)
-    ->condition('a.number_acl', $number);
+    ->condition('a.number', $number);
   return $query->execute()->fetchField();
 }
 
@@ -199,25 +194,19 @@
  * Determine whether an ACL has some assigned users.
  */
 function acl_has_users($acl_id) {
-  return db_select('acl_user', 'aclu')
-    ->fields('aclu', array('uid'))
-    ->condition('aclu.acl_id', $acl_id)
-    ->countQuery()
-    ->execute()
-    ->fetchField();
+  return db_query("SELECT COUNT(uid) FROM {acl_user} WHERE acl_id = :acl_id", array(
+    'acl_id' => $acl_id,
+  ))->fetchField();
 }
 
 /**
  * Determine whether an ACL has a specific assigned user.
  */
 function acl_has_user($acl_id, $uid) {
-  return db_select('acl_user', 'aclu')
-    ->fields('aclu', array('uid'))
-    ->condition('aclu.acl_id', $acl_id)
-    ->condition('aclu.uid', $uid)
-    ->countQuery()
-    ->execute()
-    ->fetchField();
+  return db_query("SELECT COUNT(uid) FROM {acl_user} WHERE acl_id = :acl_id AND uid = :uid", array(
+    'acl_id' => $acl_id,
+    'uid' => $uid,
+  ))->fetchField();
 }
 
 /**
@@ -234,7 +223,7 @@
     $query->condition('a.name', $name);
   }
   if (isset($number)) {
-    $query->condition('a.number_acl', $number);
+    $query->condition('a.number', $number);
   }
   $acl_ids = $query->execute()->fetchCol();
   return $acl_ids;
@@ -244,11 +233,9 @@
  * Get the uids of an ACL.
  */
 function acl_get_uids($acl_id) {
-  $uids = db_select('acl_user', 'aclu')
-    ->fields('aclu', array('uid'))
-    ->condition('aclu.acl_id', $acl_id)
-    ->execute()
-    ->fetchCol();
+  $uids = db_query("SELECT uid FROM {acl_user} WHERE acl_id = :acl_id", array(
+    'acl_id' => $acl_id,
+  ))->fetchCol();
   return $uids;
 }
 
@@ -259,15 +246,9 @@
   if (!$node->nid) {
     return;
   }
-  $query = db_select('acl_node', 'n', array('fetch' => PDO::FETCH_ASSOC));
-  $query->join('acl', 'a', 'n.acl_id = a.acl_id');
-  $query->addField('n', 'acl_id', 'gid');
-  $query->addField('a', 'module');
-  $query->addExpression("'acl'", 'realm');
-  $result = $query
-    ->fields('n')
-    ->condition('n.nid', $node->nid)
-    ->execute();
+  $result = db_query("SELECT n.*, 'acl' AS realm, n.acl_id AS gid, a.module FROM {acl_node} n INNER JOIN {acl} a ON n.acl_id = a.acl_id WHERE nid = :nid", array(
+    'nid' => $node->nid,
+  ), array('fetch' => PDO::FETCH_ASSOC));
   $grants = array();
   foreach ($result as $grant) {
     if (module_invoke($grant['module'], 'enabled')) {
@@ -294,12 +275,9 @@
  * Implements hook_node_grants().
  */
 function acl_node_grants($account, $op) {
-  $acl_ids = db_select('acl_user', 'u')
-    ->fields('u', array('acl_id'))
-    ->condition('u.uid', $account->uid)
-    ->execute()
-    ->fetchCol();
-
+  $acl_ids = db_query("SELECT acl_id FROM {acl_user} WHERE uid = :uid", array(
+    'uid' => $account->uid,
+  ))->fetchCol();
   return (!empty($acl_ids) ? array('acl' => $acl_ids) : NULL);
 }
 
@@ -341,49 +319,35 @@
   static $interpretations = array();
   if ($row->realm == 'acl') {
     if (!isset($interpretations[$row->gid])) {
-      $acl = db_select('acl', 'a')
-        ->fields('a')
-        ->condition('a.acl_id', $row->gid)
-        ->execute()
-        ->fetchObject();
+      $acl = db_query("SELECT * FROM {acl} WHERE acl_id = :acl_id", array(
+        'acl_id' => $row->gid,
+      ))->fetchObject();
       $acl->tag = '?';
       if (!isset($acl->name)) {
-        $acl->tag = $acl->number_acl;
+        $acl->tag = $acl->number;
       }
-      elseif (!isset($acl->number_acl)) {
+      elseif (!isset($acl->number)) {
         $acl->tag = $acl->name;
       }
       else {
-        $acl->tag = $acl->name . '-' . $acl->number_acl;
+        $acl->tag = $acl->name . '-' . $acl->number;
       }
-      $query = db_select('acl_user', 'au');
-      $query->join('users', 'u', 'au.uid = u.uid');
-      $query
-        ->fields('u', array('name'))
-        ->condition('au.acl_id', $row->gid);
-      $result = $query->execute();
-
+      $result = db_query("SELECT u.name FROM {acl_user} au, {users} u WHERE au.acl_id = :acl_id AND au.uid = u.uid", array(
+        'acl_id' => $row->gid,
+      ));
       foreach ($result as $user) {
         $users[] = $user->name;
       }
       if (isset($users)) {
         $users = implode(', ', $users);
-        $interpretations[$row->gid] = _acl_get_explanation("$acl->module/$acl->tag: $users", $acl->acl_id, $acl->module, $acl->name, $acl->number_acl, $users);
+        $interpretations[$row->gid] = _acl_get_explanation("$acl->module/$acl->tag: $users", $acl->acl_id, $acl->module, $acl->name, $acl->number, $users);
       }
       elseif ($row->gid == 0) {
-
-        $query = db_select('acl_node', 'an');
-        $query->join('acl', 'a', 'an.acl_id = a.acl_id');
-        $query->leftJoin('acl_user', 'au', 'a.acl_id = au.acl_id');
-        $query
-          ->fields('an', array('acl_id'))
-          ->fields('a', array('module', 'name'))
-          ->condition('an.nid', $row->nid)
-          ->isNull('au.uid');
-        $result = $query->execute();
-
+        $result = db_query("SELECT an.acl_id, a.module, a.name FROM {acl_node} an JOIN {acl} a ON an.acl_id = a.acl_id LEFT JOIN {acl_user} au ON a.acl_id = au.acl_id WHERE an.nid = :nid AND au.uid IS NULL", array(
+          'nid' => $row->nid,
+        ));
         foreach ($result as $acl) {
-          $rows[] = _acl_get_explanation("$acl->acl_id: $acl->module/$acl->tag", $acl->acl_id, $acl->module, $acl->name, $acl->number_acl);
+          $rows[] = _acl_get_explanation("$acl->acl_id: $acl->module/$acl->tag", $acl->acl_id, $acl->module, $acl->name, $acl->number);
         }
         if (!empty($rows)) {
           return implode('<br />', $rows);
@@ -391,7 +355,7 @@
         return 'No access via ACL.';
       }
       else {
-        $interpretations[$row->gid] = _acl_get_explanation("$acl->module/$acl->tag: no users!", $acl->acl_id, $acl->module, $acl->name, $acl->number_acl);
+        $interpretations[$row->gid] = _acl_get_explanation("$acl->module/$acl->tag: no users!", $acl->acl_id, $acl->module, $acl->name, $acl->number);
       }
     }
     return $interpretations[$row->gid];
@@ -409,3 +373,4 @@
   }
   return $text;
 }
+
diff -ENwbur sites/all/modules/contrib/acl/acl.test /Users/directordrupal/Desktop/acl/acl.test
--- sites/all/modules/contrib/acl/acl.test	2014-12-01 10:23:39.000000000 -0500
+++ /Users/directordrupal/Desktop/acl/acl.test	2011-11-26 11:42:22.000000000 -0500
@@ -31,21 +31,13 @@
     acl_create_acl('test1', $node1->title);
     $acl_id = acl_get_id_by_name('test1', $node1->title);
     $this->assertNotNull($acl_id, t('ACL ID was succesfully found.'), $group = 'ACL');
-    $records = db_select('acl', 'a')
-      ->fields('a', array('acl_id', 'name'))
-      ->condition('a.acl_id', $acl_id)
-      ->execute()
-      ->fetchAll();
+    $records = db_query('SELECT acl_id, name FROM {acl} WHERE acl_id = :acl_id', array(':acl_id' => $acl_id))->fetchAll();
     $this->assertEqual(count($records), 1, t('ACL was succesfully created.'), $group = 'ACL');
     acl_delete_acl($records[0]->acl_id);
 
-    $count = db_select('acl', 'a')
-      ->fields('a', array('acl_id', 'name'))
-      ->condition('a.acl_id', $records[0]->acl_id)
-      ->countQuery()
-      ->execute()
-      ->fetchField();
-    $this->assertEqual($count, 0, t('ACL was succesfully removed.'), $group = 'ACL');
+    $records = db_query('SELECT acl_id, name FROM {acl} WHERE acl_id = :acl_id', array(':acl_id' => $records[0]->acl_id))->fetchAll();
+    $this->pass(var_export($records, TRUE));
+    $this->assertEqual(count($records), 0, t('ACL was succesfully removed.'), $group = 'ACL');
   }
 
   /**
@@ -62,37 +54,22 @@
     // made it in.
     $acl_id = acl_get_id_by_name('test2', $node1->title);
     $this->assertNotNull($acl_id, t('ACL ID was succesfully found.'), $group = 'ACL');
-    $count = db_select('acl', 'a')
-      ->fields('a', array('acl_id', 'name'))
-      ->condition('a.acl_id', $acl_id)
-      ->countQuery()
-      ->execute()
-      ->fetchField();
-    $this->assertEqual($count, 1, t('ACL was succesfully created.'), $group = 'ACL');
+    $records = db_query('SELECT acl_id, name FROM {acl} WHERE acl_id = :acl_id', array(':acl_id' => $acl_id))->fetchAll();
+    $this->assertEqual(count($records), 1, t('ACL was succesfully created.'), $group = 'ACL');
 
     // Add user (can't we use the user created in setup?).
     $web_user_1 = $this->drupalCreateUser();
     //$this->drupalLogin($web_user);
     acl_add_user($acl_id, $web_user_1->uid);
-    $count = db_select('acl_user', 'u')
-      ->fields('u', array('acl_id', 'uid'))
-      ->condition('u.uid', $web_user_1->uid)
-      ->countQuery()
-      ->execute()
-      ->fetchField();
+    $records = db_query('SELECT acl_id, uid FROM {acl_user} WHERE uid = :uid', array(':uid' => $web_user_1->uid))->fetchAll();
     // Verify user is added.
-    $this->assertEqual($count, 1, t('User was succesfully added.'), $group = 'ACL');
+    $this->assertEqual(count($records), 1, t('User was succesfully added.'), $group = 'ACL');
 
     // Remove user.
     acl_remove_user($acl_id, $web_user_1->uid);
-    $count = db_select('acl_user', 'u')
-      ->fields('u', array('acl_id', 'uid'))
-      ->condition('u.uid', $web_user_1->uid)
-      ->countQuery()
-      ->execute()
-      ->fetchField();
+    $records = db_query('SELECT acl_id, uid FROM {acl_user} WHERE uid = :uid', array(':uid' => $web_user_1->uid))->fetchAll();
     // Verify user is removed.
-    $this->assertEqual($count, 0, t('User was succesfully removed.'), $group = 'ACL');
+    $this->assertEqual(count($records), 0, t('User was succesfully removed.'), $group = 'ACL');
   }
 
   /**
@@ -113,51 +90,26 @@
     // Add two nodes.
     $query = db_select('node', 'n')
       ->fields('n', array('nid'))
-      ->condition('n.nid', array($node1->nid, $node2->nid), 'IN');
+      ->condition('nid', array($node1->nid, $node2->nid), 'IN');
     acl_add_nodes($query, $acl_id1, 1, 1, 1);
-    $count = db_select('acl_node', 'n')
-      ->fields('n', array('nid'))
-      ->condition('n.acl_id', $acl_id1)
-      ->countQuery()
-      ->execute()
-      ->fetchField();
+    $count = db_query('SELECT COUNT(nid) FROM {acl_node} WHERE acl_id = :acl_id', array(':acl_id' => $acl_id1))->fetchField();
     $this->assertEqual($count, 2, t("2 nodes under control ($count)."), $group = 'ACL');
     // Add a third node.
     acl_node_add_acl($node3->nid, $acl_id1, 1, 1, 1);
-    $count = db_select('acl_node', 'n')
-      ->fields('n', array('nid'))
-      ->condition('n.acl_id', $acl_id1)
-      ->countQuery()
-      ->execute()
-      ->fetchField();
+    $count = db_query('SELECT COUNT(nid) FROM {acl_node} WHERE acl_id = :acl_id', array(':acl_id' => $acl_id1))->fetchField();
     $this->assertEqual($count, 3, t('3 nodes under control.'), $group = 'ACL');
     // Add the second node again.
     acl_node_add_acl($node2->nid, $acl_id1, 1, 1, 1);
-    $count = db_select('acl_node', 'n')
-      ->fields('n', array('nid'))
-      ->condition('n.acl_id', $acl_id1)
-      ->countQuery()
-      ->execute()
-      ->fetchField();
+    $count = db_query('SELECT COUNT(nid) FROM {acl_node} WHERE acl_id = :acl_id', array(':acl_id' => $acl_id1))->fetchField();
     $this->assertEqual($count, 3, t('Still only 3 nodes under control.'), $group = 'ACL');
 
     // Remove the second node again.
     acl_node_remove_acl($node2->nid, $acl_id1);
-    $count = db_select('acl_node', 'n')
-      ->fields('n', array('nid'))
-      ->condition('n.acl_id', $acl_id1)
-      ->countQuery()
-      ->execute()
-      ->fetchField();
+    $count = db_query('SELECT COUNT(nid) FROM {acl_node} WHERE acl_id = :acl_id', array(':acl_id' => $acl_id1))->fetchField();
     $this->assertEqual($count, 2, t('2 nodes left under control.'), $group = 'ACL');
     // Remove the second node again.
     acl_node_remove_acl($node2->nid, $acl_id1);
-    $count = db_select('acl_node', 'n')
-      ->fields('n', array('nid'))
-      ->condition('n.acl_id', $acl_id1)
-      ->countQuery()
-      ->execute()
-      ->fetchField();
+    $count = db_query('SELECT COUNT(nid) FROM {acl_node} WHERE acl_id = :acl_id', array(':acl_id' => $acl_id1))->fetchField();
     $this->assertEqual($count, 2, t('Still 2 nodes left under control.'), $group = 'ACL');
 
     // Create another ACL and add nodes.
@@ -165,28 +117,13 @@
     $this->assertNotNull($acl_id2, t('ACL ID was created.'), $group = 'ACL');
     acl_node_add_acl($node1->nid, $acl_id2, 1, 1, 1);
     acl_node_add_acl($node2->nid, $acl_id2, 1, 1, 1);
-    $count = db_select('acl_node', 'n')
-      ->fields('n', array('nid'))
-      ->condition('n.acl_id', $acl_id2)
-      ->countQuery()
-      ->execute()
-      ->fetchField();
+    $count = db_query('SELECT COUNT(nid) FROM {acl_node} WHERE acl_id = :acl_id', array(':acl_id' => $acl_id2))->fetchField();
     $this->assertEqual($count, 2, t('2 nodes under control.'), $group = 'ACL');
     // Remove a node (which has two ACLs).
     acl_node_clear_acls($node1->nid, 'test3');
-    $count = db_select('acl_node', 'n')
-      ->fields('n', array('nid'))
-      ->condition('n.acl_id', $acl_id1)
-      ->countQuery()
-      ->execute()
-      ->fetchField();
+    $count = db_query('SELECT COUNT(nid) FROM {acl_node} WHERE acl_id = :acl_id', array(':acl_id' => $acl_id1))->fetchField();
     $this->assertEqual($count, 1, t('1 node left under control.'), $group = 'ACL');
-    $count = db_select('acl_node', 'n')
-      ->fields('n', array('nid'))
-      ->condition('n.acl_id', $acl_id2)
-      ->countQuery()
-      ->execute()
-      ->fetchField();
+    $count = db_query('SELECT COUNT(nid) FROM {acl_node} WHERE acl_id = :acl_id', array(':acl_id' => $acl_id2))->fetchField();
     $this->assertEqual($count, 1, t('1 node left under control.'), $group = 'ACL');
   }
🐛 Bug report
Status

Closed: outdated

Version

1.0

Component

Code

Created by

🇨🇴Colombia metallized

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

Production build 0.71.5 2024