/** * Get rights * * @param array $params * @return array */ public function getRights(array $params) { $permission = $params['filters']['right_define_name']; $sql = 'SELECT right_id FROM ' . self::RIGHTS . "\n WHERE right_define_name = " . $this->db->escape($permission); return $this->db->GetAll($sql); }
function rebuildPath($parentCol, $pathCol, $srcCol, $fromNode = 0) { $this->db->startTrans(); $table = $this->tableName(); $node = $this->db->GetRow("SELECT * FROM {$table} WHERE pk=?", array($fromNode)); $parentNode = $this->db->GetRow("SELECT * FROM {$table} WHERE pk=?", array(arrData($node, $parentCol))); $childNodes = $this->db->GetAll("SELECT * FROM {$table} WHERE {$parentCol}=?", array($fromNode)); if (!empty($node)) { $path = arrData($parentNode, $pathCol, '/'); $this->db->update($table, array($pathCol => $path . $node[$srcCol] . '/'), 'pk=?', array($node['pk'])); } foreach ($childNodes as $node) { $this->rebuildPath($parentCol, $pathCol, $srcCol, $node['pk']); } $this->db->completeTrans(); }