642,7 → 642,6 |
return $show; |
} |
|
|
/** |
* Вывод формы редактирования/добавления секций |
* |
757,6 → 756,171 |
} |
|
/** |
* Вывод списка поддерживаемых архитектур |
* |
* @author Alexander Wolf |
* @category Core |
* |
* @param string $name |
* @param string $actor |
* @param string $format |
* @return string |
*/ |
public function showArchList($name, $actor, $format = 'list') { |
switch($format) { |
case 'list': |
$query = "SELECT * FROM ".$this->prefix."arch"; |
$rq =& $this->db->query($query); |
$show = "<ul>\n"; |
while ($rq->fetchInto($element)) { |
$show .= "<li>[<a href='".$actor."?mode=".$name."&action=edit&uuid=".$element["arch_id"]."' class='edit'>править</a>][<a href='".$actor."?mode=".$name."&action=delete&uuid=".$element["arch_id"]."' class='delete'>удалить</a>] ".$this->secure->checkStr($element["arch"],1)."</li>\n"; |
} |
$show .= "</ul>"; |
break; |
case 'innerhtml': |
$show = ""; |
$repID = $this->secure->checkInt($actor); |
if ($archID==0) { |
$query = "SELECT * FROM ".$this->prefix."arch"; |
$rq =& $this->db->query($query); |
while ($rq->fetchInto($element)) { |
$show .= "<input type='checkbox' name='".$name."[]' value='".$element["arch_id"]."'> ".$this->secure->checkStr($element["arch"],1)." "; |
} |
} else { |
$query = "SELECT * FROM ".$this->prefix."arch a JOIN ".$this->prefix."arch2rep r ON a.arch_id=r.arch_id WHERE r.rep_id='$repID'"; |
$rq =& $this->db->query($query); |
while ($rq->fetchInto($element)) { |
$show .= "<input type='checkbox' name='".$name."[]' value='".$element["arch_id"]."' checked> ".$this->secure->checkStr($element["arch"],1)." "; |
} |
$query = "SELECT a.* FROM ".$this->prefix."arch a WHERE a.arch_id NOT IN (SELECT arch_id FROM ".$this->prefix."arch2rep WHERE rep_id='$repID')"; |
$rq =& $this->db->query($query); |
while ($rq->fetchInto($element)) { |
$show .= "<input type='checkbox' name='".$name."[]' value='".$element["arch_id"]."'> ".$this->secure->checkStr($element["arch"],1)." "; |
} |
} |
break; |
} |
return $show; |
} |
|
/** |
* Добавление новой архитектуры |
* |
* @author Alexander Wolf |
* @category Core |
* |
* @param string $arch |
* @return array |
*/ |
public function addArch($arch) { |
$result = array(); |
$sArch = $this->secure->checkStr($arch,1); |
|
$query = "INSERT INTO ".$this->prefix."arch SET arch='".$sArch."'"; |
$rq =& $this->db->query($query); |
if (PEAR::isError($this->db)) { |
$result["ERR"] = 1; |
$result["ERRINFO"] = $this->db->getMessage(); |
} else { |
$result["ERR"] = 0; |
} |
|
return $result; |
} |
|
/** |
* Удаление информации об архитектуре |
* |
* @author Alexander Wolf |
* @category Core |
* |
* @param integer $archID |
* @return array |
*/ |
public function dropArch($archID) { |
$result = array(); |
$sArchID = $this->secure->checkInt($archID); |
|
// Удаление архитектуры |
$query = "DELETE FROM ".$this->prefix."arch WHERE arch_id='".$sArchID."'"; |
$rq =& $this->db->query($query); |
if (PEAR::isError($this->db)) { |
$result["ERR"] = 1; |
$result["ERRINFO"] = $this->db->getMessage(); |
} else { |
$result["ERR"] = 0; |
} |
|
// Удаление архитектуры из списка репозиториев |
$query = "DELETE FROM ".$this->prefix."arch2rep WHERE arch_id='".$sArchID."'"; |
$rq =& $this->db->query($query); |
if (PEAR::isError($this->db)) { |
$result["ERR"] = 1; |
$result["ERRINFO"] = $this->db->getMessage(); |
} else { |
$result["ERR"] = 0; |
} |
return $result; |
} |
|
/** |
* Обновление информации об архитектуре |
* |
* @author Alexander Wolf |
* @category Core |
* |
* @param integer $archID |
* @param string $arch |
* @return array |
*/ |
public function updateArch($archID, $arch) { |
$result = array(); |
$sArchID = $this->secure->checkInt($archID); |
$sArch = $this->secure->checkStr($arch,1); |
|
$query = "UPDATE ".$this->prefix."arch SET arch='".$sArch."' WHERE arch_id='".$sArchID."'"; |
$rq =& $this->db->query($query); |
if (PEAR::isError($this->db)) { |
$result["ERR"] = 1; |
$result["ERRINFO"] = $this->db->getMessage(); |
} else { |
$result["ERR"] = 0; |
} |
|
return $result; |
} |
|
/** |
* Вывод формы редактирования/добавления архитектур |
* |
* @author Alexander Wolf |
* @category Core |
* |
* @param integer $archID |
* @param string $info |
* @return string |
*/ |
public function showArchForm($archID = 0, $info = "") { |
$sArchID = $this->secure->checkInt($archID); |
$sInfo = $this->secure->checkStr($info, 1); |
if ($sInfo == "") { |
$sInfo = "Архитектура"; |
} |
if ($sArchID != 0) { |
// Режим редактирования |
$query = "SELECT * FROM ".$this->prefix."arch WHERE arch_id='".$sArchID."'"; |
$rq =& $this->db->query($query); |
$rq->fetchInto($element); |
} |
|
$show = "<fieldset><legend>".$sInfo."</legend>\n"; |
$show .= "<div class='inputbox'><label for='arch'>Архитектура:</label> <input type='text' name='arch' id='arch' value='".$this->secure->checkStr($element["arch"],1)."'></div>\n"; |
$show .= "<div class='inputbox'><input type='submit' value=' Отправить данные '></div>\n</fieldset>\n"; |
|
return $show; |
} |
|
/** |
* Показывает список подписей |
* |
* @author Alexander Wolf |