static function &get($p = array()) { $defaults = array('id' => null); $p = Pommo_Api::getParams($defaults, $p); $dbo =& Pommo::$_dbo; $o = array(); $query = "\n SELECT g.group_id, g.group_name, c.rule_id, c.field_id, c.logic, c.value, c.type\n FROM " . $dbo->table['groups'] . " g\n LEFT JOIN " . $dbo->table['group_rules'] . " c\n ON (g.group_id = c.group_id)\n WHERE\n 1\n [AND g.group_id IN(%C)]\n ORDER BY g.group_name"; $query = $dbo->prepare($query, array($p['id'])); while ($row = $dbo->getRows($query)) { if (empty($o[$row['group_id']])) { $o[$row['group_id']] = Pommo_Groups::makeDB($row); } if (!empty($row['rule_id'])) { $c = array('field_id' => $row['field_id'], 'logic' => $row['logic'], 'value' => $row['value'], 'or' => $row['type'] == 0 ? false : true); $o[$row['group_id']]['rules'][$row['rule_id']] = $c; } } return $o; }