Редакция 589 | К новейшей редакции | Авторство | Сравнить с предыдущей | Последнее изменение | Открыть журнал | Скачать | RSS
<?php
/**
*
* Codename: ant-ng - generator of sources.list for apt-distributives
* http://alex-w.org.ru/p/antng/
*
* Copyright (c) 2009 Alexander Wolf
* Dual licensed under the MIT and GNU LGPL licenses.
* http://alex-w.org.ru/p/antng/license
*
*/
require_once dirname(__FILE__)."/init.php";
$mode = $_POST["mode"];
switch ($mode) {
case 'authorize':
$r = $core->checkSign($_POST["word"]);
header("Location: ".$r["Location"]."\n\n");
break;
case 'distributive-add':
// Добавление нового дистрибутива
$DName = $secure->checkStr($_POST["dname"],1);
$DUA = $secure->checkStr($_POST["dua"],1);
$DType = $secure->checkInt($_POST["dtype"]);
$DLogo = 0;
if ($_FILES["distlogo"]["type"]!="") {
$DLogo = $core->uploadPicture($picture, $DUA, $_FILES);
}
$r = $core->addDistribution($DName, $DType, $DUA, $DLogo);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'distributive-edit':
// Редактирование информации о дистрибутиве
$ID = $secure->checkInt($_POST["distID"]);
$DName = $secure->checkStr($_POST["dname"],1);
$DUA = $secure->checkStr($_POST["dua"],1);
$DType = $secure->checkInt($_POST["dtype"]);
if ($_FILES["distlogo"]["type"]!="") {
$DLogo = $core->uploadPicture($picture, $DUA, $_FILES);
$r = $core->updateDistribution($ID, $DName, $DType, $DUA, $DLogo);
}
$r = $core->updateDistribution($ID, $DName, $DType, $DUA);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'distributive-delete':
// Удаление информации о дистрибутиве
$ID = $secure->checkInt($_POST["distID"]);
$r = $core->dropDistribution($ID);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'version-add':
// Добавление новой версии дистрибутива
$DistID = $secure->checkInt($_POST["distname"]);
$VName = $secure->checkStr($_POST["vname"],1);
$VNmbr = $secure->checkStr($_POST["version"],1);
$VCNme = $secure->checkStr($_POST["vcodename"],1);
$r = $core->addDistVersion($DistID, $VNmbr, $VName, $VCNme);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'version-edit':
// Редактирование версии дистрибутива
$versID = $secure->checkInt($_POST["versionID"]);
$VName = $secure->checkStr($_POST["vname"],1);
$VNmbr = $secure->checkStr($_POST["version"],1);
$VCNme = $secure->checkStr($_POST["vcodename"],1);
$r = $core->updateDistVersion($versID, $VNmbr, $VName, $VCNme);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'version-delete':
// Удаление версии дистрибутива
$versID = $secure->checkInt($_POST["versionID"]);
$r = $core->dropDistVersion($versID);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'section-add':
// Добавление новой секции
$SName = $secure->checkStr($_POST["sname"],1);
$SInfo = $secure->checkStr($_POST["sinfo"],1);
$r = $core->addSection($SName, $SInfo);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'section-edit':
// Редактирование информации о секции
$sectID = $secure->checkInt($_POST["sectionID"]);
$SName = $secure->checkStr($_POST["sname"],1);
$SInfo = $secure->checkStr($_POST["sinfo"],1);
$r = $core->updateSection($sectID, $SName, $SInfo);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'section-delete':
// Удаление информации о секции
$sectID = $secure->checkInt($_POST["sectionID"]);
$r = $core->dropSection($sectID);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
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;
case 'arch-add':
// Добавление новой архитектуры
$arch = $secure->checkStr($_POST["arch"],1);
$r = $core->addArch($arch);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'arch-edit':
// Редактирование архитектуры
$archID = $secure->checkInt($_POST["archID"]);
$arch = $secure->checkStr($_POST["arch"],1);
$r = $core->updateArch($archID, $arch);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'arch-delete':
// Удаление архитектуры
$archID = $secure->checkInt($_POST["archID"]);
$r = $core->dropArch($archID);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'scheme-add':
// Добавление новой схемы репозитория
$scheme = $secure->checkStr($_POST["scheme"],1);
$r = $core->addScheme($scheme);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'scheme-edit':
// Редактирование схемы репозитория
$schemeID = $secure->checkInt($_POST["schemeID"]);
$scheme = $secure->checkStr($_POST["scheme"],1);
$r = $core->updateScheme($schemeID, $scheme);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'scheme-delete':
// Удаление схемы репозитория
$schemeID = $secure->checkInt($_POST["schemeID"]);
$r = $core->dropScheme($schemeID);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'proto-add':
// Добавление протокола доступа
$proto = $secure->checkStr($_POST["proto"],1);
$r = $core->addProto($proto);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'proto-edit':
// Редактирование протокола доступа
$protoID = $secure->checkInt($_POST["protoID"]);
$proto = $secure->checkStr($_POST["proto"],1);
$r = $core->updateProto($protoID, $proto);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'proto-delete':
// Удаление протокола доступа
$protoID = $secure->checkInt($_POST["protoID"]);
$r = $core->dropProto($protoID);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'host-add':
// Добавление хоста репозитория
$host = $secure->checkStr($_POST["rhost"],1);
$r = $core->addHost($host);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'host-edit':
// Редактирование хоста репозитория
$hostID = $secure->checkInt($_POST["hostID"]);
$host = $secure->checkStr($_POST["rhost"],1);
$r = $core->updateHost($hostID, $host);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'host-delete':
// Удаление хоста репозитория
$hostID = $secure->checkInt($_POST["hostID"]);
$r = $core->dropHost($hostID);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'folder-add':
// Добавление корневой папки репозитория
$folder = $secure->checkStr($_POST["rfolder"],1);
$r = $core->addFolder($folder);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'folder-edit':
// Редактирование корневой папки репозитория
$folderID = $secure->checkInt($_POST["folderID"]);
$folder = $secure->checkStr($_POST["rfolder"],1);
$r = $core->updateFolder($folderID, $folder);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'folder-delete':
// Удаление корневой папки репозитория
$folderID = $secure->checkInt($_POST["folderID"]);
$r = $core->dropFolder($folderID);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
case 'repository-master':
// Добавляем новый репозиторий
$rdist = $secure->checkInt($_POST["rdist"]); // Версия дистрибутива
$rname = $secure->checkStr($_POST["rname"]); // Название репозитория
$rinfo = $secure->checkStr($_POST["rinfo"]); // Описание репозитория
$rkey = $secure->checkStr($_POST["rkey"]); // Ключ подписи репозитория
$rproto = $secure->checkInt($_POST["rproto"]); // Протокол доступа
$rhost = $secure->checkInt($_POST["rhost"]); // Хост репозитория
$rfolder = $secure->checkInt($_POST["rfolder"]); // Корневая папка
$rtype = $secure->checkInt($_POST["rtype"]); // Тип репозитория
$rscheme = $secure->checkInt($_POST["rscheme"]); // Схема репозитория
$rsign = $secure->checkInt($_POST["rsign"]); // Подпись репозитория (для rpm/ALTLinux)
$r = $core->addRepository($rdist, $rname, $rinfo, $rkey, $proto, $rhost, $rfolder, $rtype, $_POST["rsects"], $_POST["rarchs"], $rscheme, $rsign);
if ($r["ERR"]==0) {
header("Location: ".$manager."\n\n");
} else {
echo $r["ERRINFO"];
}
break;
}
?>