Хранилища Subversion ant

Сравнить редакции

Не учитывать пробелы Редакция 538 → Редакция 539

/branches/ant/0.9.x/process.php
154,6 → 154,45
}
 
break;
case 'sign-add':
// Добавление новой подписи
$SName = $secure->checkStr($_POST["sname"],1);
$SInfo = $secure->checkStr($_POST["sinfo"],1);
 
$r = $core->addSign($SName, $SInfo);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
 
break;
case 'sign-edit':
// Редактирование информации о подписи
$signID = $secure->checkInt($_POST["signID"]);
$SName = $secure->checkStr($_POST["sname"],1);
$SInfo = $secure->checkStr($_POST["sinfo"],1);
 
$r = $core->updateSign($signID, $SName, $SInfo);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
 
break;
case 'sign-delete':
// Удаление информации о подписи
$signID = $secure->checkInt($_POST["signID"]);
 
$r = $core->dropSign($signID);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
 
break;
}
 
?>
/branches/ant/0.9.x/lib/core.php
729,6 → 729,140
}
 
/**
* Показывает список подписей
*
* @author Alexander Wolf
* @category Core
*
* @param string $name
* @param string $actor
* @return string
*/
public function showSignsList($name, $actor) {
$query = "SELECT * FROM ".$this->prefix."signs";
$rq =& $this->db->query($query);
$show = "<ul>\n";
while ($rq->fetchInto($element)) {
$show .= "<li>[<a href='".$actor."?mode=".$name."&action=edit&uuid=".$element["sign_id"]."'>править</a>][<a href='".$actor."?mode=".$name."&action=delete&uuid=".$element["sign_id"]."'>удалить</a>] ".$this->secure->checkStr($element["sname"],1)."</li>\n";
}
$show .= "</ul>";
 
return $show;
}
 
/**
* Вывод формы редактирования/добавления подписей
*
* @author Alexander Wolf
* @category Core
*
* @param integer $sectionID
* @param string $info
* @return string
*/
public function showSignsForm($signID = 0, $info = "") {
$sSignID = $this->secure->checkInt($signID);
$sInfo = $this->secure->checkStr($info, 1);
if ($sInfo == "") {
$sInfo = "Подписи";
}
if ($sSignID != 0) {
// Режим редактирования
$query = "SELECT * FROM ".$this->prefix."signs WHERE sign_id='".$sSignID."'";
$rq =& $this->db->query($query);
$rq->fetchInto($element);
}
 
$show = "<fieldset><legend>".$sInfo."</legend>\n";
$show .= "<div class='inputbox'><label for='sname'>Название подписи:</label> <input type='text' name='sname' id='sname' value='".$this->secure->checkStr($element["sname"],1)."'></div>\n";
$show .= "<div class='inputbox'><label for='sinfo'>Описание подписи:</label> <input type='text' name='sinfo' id='sinfo' value='".$this->secure->checkStr($element["sinfo"],1)."'></div>\n";
$show .= "<div class='inputbox'><input type='submit' value=' Отправить данные '></div>\n</fieldset>\n";
 
return $show;
}
 
/**
* Обновление информации о секции
*
* @author Alexander Wolf
* @category Core
*
* @param integer $sectionID
* @param string $sname
* @param string $sinfo
* @return array
*/
public function updateSign($signID, $sname, $sinfo = "") {
$result = array();
$sSignID = $this->secure->checkInt($signID);
$sSName = $this->secure->checkStr($sname,1);
$sSInfo = $this->secure->checkStr($sinfo,1);
 
$query = "UPDATE ".$this->prefix."signs SET sname='".$sSName."', sinfo='".$sSInfo."' WHERE sign_id='".$sSignID."'";
$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 $sectionID
* @return array
*/
public function dropSection($signID) {
$result = array();
$sSignID = $this->secure->checkInt($signID);
 
// Удаление подписи
$query = "DELETE FROM ".$this->prefix."signs WHERE sign_id='".$sSignID."'";
$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 string $sname
* @param string $sinfo
* @return array
*/
public function addSection($sname, $sinfo = "") {
$result = array();
$sSName = $this->secure->checkStr($sname,1);
$sSInfo = $this->secure->checkStr($sinfo,1);
 
$query = "INSERT INTO ".$this->prefix."section SET secname='".$sSName."', sectinfo='".$sSInfo."'";
$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
909,6 → 1043,17
return 0;
}
 
/**
* Выгрузка картинок логотипов дистрибутивов
*
* @author Alexander Wolf
* @category Core
*
* @param string $path
* @param string $dist
* @param array $datafile
* @return integer
*/
public function uploadPicture($path, $dist, $datafile) {
$folder = $path.$dist."-orig.png";
$folderN = $path.$dist.".png";
/branches/ant/0.9.x/manager.php
35,6 → 35,7
$menu .= "<ul class='vfix'><li><a href='".$manager."?mode=distributions'>Дистрибутивы</a></li>";
$menu .= "<li><a href='".$manager."?mode=versions'>Версии</a></li>";
$menu .= "<li><a href='".$manager."?mode=sections'>Разделы</a></li>";
$menu .= "<li><a href='".$manager."?mode=signs'>Подписи</a></li>";
$menu .= "<li><a href='".$manager."?mode=repositories'>Репозитории</a></li>";
$menu .= "<li><a href='".$manager."?mode=settings'>Настройки</a></li>";
$menu .= "<li><a href='".$manager."?mode=exit'>Выход</a></li></ul>";
163,6 → 164,40
$tmpl->assign('body', $body);
$tmpl->display('manager.tpl');
break;
case 'signs':
// Управление подписями (rpm)
$body = "<h3>Управление подписями репозиториев</h3>";
switch ($action) {
case 'view':
$body .= "<p><a href='".$manager."?mode=signs&action=new'>Добавить новую секцию репозитория</a></p>";
$body .= $core->showSignsList("signs", $manager);
break;
case 'edit':
$body .= "<form action='".$process."' method='post'>\n";
$body .= "<input type='hidden' name='mode' value='sign-edit'>\n";
$body .= "<input type='hidden' name='signID' value='".$uuid."'>\n";
$body .= $core->showSignsForm($uuid, "Редактирование информации о подписи");
$body .= "</form>";
break;
case 'delete':
$body .= "<form action='".$process."' method='post'>\n";
$body .= "<input type='hidden' name='mode' value='sign-delete'>\n";
$body .= "<input type='hidden' name='signID' value='".$uuid."'>\n";
$body .= $core->showSignsForm($uuid, "Удаление информации о подписи");
$body .= "</form>";
break;
case 'new':
$body .= "<form action='".$process."' method='post'>\n";
$body .= "<input type='hidden' name='mode' value='sign-add'>\n";
$body .= $core->showSignsForm(0, "Добавление новой подписи");
$body .= "</form>";
break;
}
$tmpl->assign('header', "CPanel");
$tmpl->assign('description', "Панель управления генератором");
$tmpl->assign('body', $body);
$tmpl->display('manager.tpl');
break;
case 'repositories':
// Управление репозиториями
$body = "Функционал еще не готов";