PEAR is archived and read-only

This mirror preserves historical PEAR package releases and metadata so existing references remain available.

Home » Authentication » LiveUser » Bug #2452

Admin/Perm/DB_Medium getGroups method broken

Details

Submitted2004-10-04 21:14 UTC
Fromtim at nonfiction dot ca
Assigneddufuz
StatusClosed
PackageLiveUser
PHP Version4.3.6
OSMandrake 9
Roadmaps(Not assigned)

Comments

[2004-10-04 21:14 UTC] tim at nonfiction dot ca

Description:
------------
Admin/Perm/Container/DB_Medium.php getGroups() method
has an SQL Syntax error.

Reproduce code:
---------------
--- DB_Medium1.php Mon Oct 4 15:06:21 2004
+++ DB_Medium2.php Mon Oct 4 15:06:29 2004
@@ -586,33 +586,33 @@
);

if (isset($this->groupTableCols['optional']['group_type'])) {
- $customFields[] = $this->groupTableCols['optional']['group_type']['name'] . ' AS group_type';
+ $customFields[] = 'groups.' . $this->groupTableCols['optional']['group_type']['name'] . ' AS group_type';
}

if (isset($this->groupTableCols['optional']['is_active'])) {
- $customFields[] = "CASE {$this->groupTableCols['optional']['is_active']['name']}
+ $customFields[] = "CASE groups.{$this->groupTableCols['optional']['is_active']['name']}
WHEN 'Y' THEN 1
WHEN 'N' THEN 0 END
AS is_active";
}

if (isset($this->groupTableCols['optional']['owner_user_id'])) {
- $customFields[] = $this->groupTableCols['optional']['owner_user_id']['name'] . ' AS owner_user_id';
+ $customFields[] = 'groups.' . $this->groupTableCols['optional']['owner_user_id']['name'] . ' AS owner_user_id';
}

if (isset($this->groupTableCols['optional']['owner_group_id'])) {
- $customFields[] = $this->groupTableCols['optional']['owner_group_id']['name'] . ' AS owner_group_id';
+ $customFields[] = 'groups.' . $this->groupTableCols['optional']['owner_group_id']['name'] . ' AS owner_group_id';
}

if (isset($this->groupTableCols['custom']) && sizeof($this->groupTableCols['custom']) > 0) {
foreach ($this->groupTableCols['custom'] as $alias => $field_data) {
- $customFields[] = $field_data['name'] . ' AS ' . $alias;
+ $customFields[] = 'groups.' . $field_data['name'] . ' AS ' . $alias;
}
}

if (count($customFields) > 0) {
$fields = ',';
- $fields .= implode(', groups.', $customFields);
+ $fields .= implode(', ', $customFields);
}

$query = 'SELECT

Expected result:
----------------
Should get back an array of groups.

Actual result:
--------------
Returns a DB Error object