Редакция 553 | К новейшей редакции | Содержимое файла | Сравнить с предыдущей | Последнее изменение | Открыть журнал | RSS
Редакция | Автор | № строки | Строка |
---|---|---|---|
360 | alex-w | 1 | <?php |
2 | /** |
||
3 | * |
||
554 | alex-w | 4 | * Codename: ant-ng - generator of sources.list for apt-distributives |
360 | alex-w | 5 | * http://alex-w.org.ru/p/antng/ |
6 | * |
||
7 | * Copyright (c) 2009 Alexander Wolf |
||
8 | * Dual licensed under the MIT and GNU LGPL licenses. |
||
9 | * http://alex-w.org.ru/p/antng/license |
||
10 | * |
||
11 | */ |
||
12 | |||
13 | require_once dirname(__FILE__)."/init.php"; |
||
14 | |||
15 | if(!empty($_GET["action"])) { |
||
16 | $action = $_GET["action"]; |
||
17 | } else { |
||
388 | alex-w | 18 | $action = "view"; |
360 | alex-w | 19 | } |
388 | alex-w | 20 | if(!empty($_GET["mode"])) { |
21 | $mode = $_GET["mode"]; |
||
22 | } else { |
||
23 | $mode = "empty"; |
||
24 | } |
||
360 | alex-w | 25 | |
388 | alex-w | 26 | $uuid = $secure->checkInt($_GET["uuid"]); |
27 | |||
368 | alex-w | 28 | $valid = $core->checkCookieSign($_COOKIE[$cookie]); |
443 | alex-w | 29 | |
492 | alex-w | 30 | $scripts = ""; |
443 | alex-w | 31 | |
442 | alex-w | 32 | $menu = "<fieldset><legend>Меню</legend>\n"; |
441 | alex-w | 33 | $menu .= "<div id='rmenu'></div>\n"; |
490 | alex-w | 34 | $menu .= "<ul class='vfix'><li><a href='".$manager."?mode=distributions'>Дистрибутивы</a></li>"; |
35 | $menu .= "<li><a href='".$manager."?mode=versions'>Версии</a></li>"; |
||
542 | alex-w | 36 | $menu .= "<li><a href='".$manager."?mode=sections'>Секции</a></li>"; |
539 | alex-w | 37 | $menu .= "<li><a href='".$manager."?mode=signs'>Подписи</a></li>"; |
490 | alex-w | 38 | $menu .= "<li><a href='".$manager."?mode=repositories'>Репозитории</a></li>"; |
39 | $menu .= "<li><a href='".$manager."?mode=settings'>Настройки</a></li>"; |
||
40 | $menu .= "<li><a href='".$manager."?mode=exit'>Выход</a></li></ul>"; |
||
432 | alex-w | 41 | $menu .=" </fieldset>\n"; |
445 | alex-w | 42 | |
43 | $tmpl->assign('scripts', $scripts); |
||
432 | alex-w | 44 | $tmpl->assign('menu', $menu); |
368 | alex-w | 45 | |
388 | alex-w | 46 | switch ($mode) { |
360 | alex-w | 47 | case 'empty': |
368 | alex-w | 48 | if ($valid["ERR"]==1) { |
49 | $tmpl->assign('header', "Вход"); |
||
387 | alex-w | 50 | $tmpl->assign('description', "Вход в панель управления генератором"); |
368 | alex-w | 51 | $tmpl->assign('body', $core->showSigninForm()); |
388 | alex-w | 52 | $tmpl->display('default.tpl'); |
368 | alex-w | 53 | } else { |
486 | alex-w | 54 | $tmpl->assign('header', "CPanel"); |
432 | alex-w | 55 | $tmpl->assign('description', "Панель управления генератором"); |
368 | alex-w | 56 | $tmpl->assign('body', $body); |
388 | alex-w | 57 | $tmpl->display('manager.tpl'); |
58 | } |
||
360 | alex-w | 59 | break; |
60 | case 'exit': |
||
61 | setcookie($cookie, '', time()-10); |
||
62 | header("Location: ./\n\n"); |
||
63 | break; |
||
487 | alex-w | 64 | case 'distributions': |
388 | alex-w | 65 | // Управление дистрибутивами |
506 | alex-w | 66 | $body = "<h3>Управление дистрибутивами</h3>"; |
67 | switch ($action) { |
||
68 | case 'view': |
||
69 | $body .= "<p><a href='".$manager."?mode=distributions&action=new'>Добавить новый дистрибутив</a></p>"; |
||
512 | alex-w | 70 | $body .= $core->showDistributionList("distributions", $maganer, "", "list"); |
506 | alex-w | 71 | break; |
508 | alex-w | 72 | case 'new': |
530 | alex-w | 73 | $body .= "<form action='".$process."' method='post' enctype='multipart/form-data'>\n"; |
508 | alex-w | 74 | $body .= "<input type='hidden' name='mode' value='distributive-add'>\n"; |
511 | alex-w | 75 | $body .= $core->showDistributionForm(0,"Добавление информации о новом дистрибутиве"); |
508 | alex-w | 76 | $body .= "</form>"; |
77 | break; |
||
78 | case 'edit': |
||
530 | alex-w | 79 | $body .= "<form action='".$process."' method='post' enctype='multipart/form-data'>\n"; |
509 | alex-w | 80 | $body .= "<input type='hidden' name='mode' value='distributive-edit'>\n"; |
508 | alex-w | 81 | $body .= "<input type='hidden' name='distID' value='".$uuid."'>\n"; |
511 | alex-w | 82 | $body .= $core->showDistributionForm($uuid, "Редактирование информации о дистрибутиве"); |
508 | alex-w | 83 | $body .= "</form>"; |
84 | break; |
||
85 | case 'delete': |
||
509 | alex-w | 86 | $body .= "<form action='".$process."' method='post'>\n"; |
87 | $body .= "<input type='hidden' name='mode' value='distributive-delete'>\n"; |
||
88 | $body .= "<input type='hidden' name='distID' value='".$uuid."'>\n"; |
||
511 | alex-w | 89 | $body .= $core->showDistributionForm($uuid, "Удаление информации о дистрибутиве"); |
509 | alex-w | 90 | $body .= "</form>"; |
508 | alex-w | 91 | break; |
506 | alex-w | 92 | } |
507 | alex-w | 93 | $tmpl->assign('header', "CPanel"); |
94 | $tmpl->assign('description', "Панель управления генератором"); |
||
95 | $tmpl->assign('body', $body); |
||
96 | $tmpl->display('manager.tpl'); |
||
388 | alex-w | 97 | break; |
484 | alex-w | 98 | case 'versions': |
99 | // Управление версиями |
||
506 | alex-w | 100 | $body = "<h3>Управление версиями</h3>"; |
497 | alex-w | 101 | switch ($action) { |
102 | case 'view': |
||
506 | alex-w | 103 | $body .= "<p><a href='".$manager."?mode=versions&action=new'>Добавить новую версию дистрибутива</a></p>"; |
509 | alex-w | 104 | $body .= $core->showDistVersionsList("versions", 0, "list", $manager); |
497 | alex-w | 105 | break; |
106 | case 'edit': |
||
509 | alex-w | 107 | $body .= "<form action='".$process."' method='post'>\n"; |
108 | $body .= "<input type='hidden' name='mode' value='version-edit'>\n"; |
||
109 | $body .= "<input type='hidden' name='versionID' value='".$uuid."'>\n"; |
||
511 | alex-w | 110 | $body .= $core->showDistVersionsForm($uuid, "Редактирование информации о версии дистрибутива"); |
509 | alex-w | 111 | $body .= "</form>"; |
497 | alex-w | 112 | break; |
509 | alex-w | 113 | case 'delete': |
114 | $body .= "<form action='".$process."' method='post'>\n"; |
||
115 | $body .= "<input type='hidden' name='mode' value='version-delete'>\n"; |
||
116 | $body .= "<input type='hidden' name='versionID' value='".$uuid."'>\n"; |
||
511 | alex-w | 117 | $body .= $core->showDistVersionsForm($uuid, "Удаление информации о версии дистрибутива"); |
509 | alex-w | 118 | $body .= "</form>"; |
503 | alex-w | 119 | break; |
509 | alex-w | 120 | case 'new': |
121 | $body .= "<form action='".$process."' method='post'>\n"; |
||
122 | $body .= "<input type='hidden' name='mode' value='version-add'>\n"; |
||
511 | alex-w | 123 | $body .= $core->showDistVersionsForm(0, "Добавление новой версии дистрибутива"); |
509 | alex-w | 124 | $body .= "</form>"; |
503 | alex-w | 125 | break; |
497 | alex-w | 126 | } |
494 | alex-w | 127 | $tmpl->assign('header', "CPanel"); |
128 | $tmpl->assign('description', "Панель управления генератором"); |
||
129 | $tmpl->assign('body', $body); |
||
130 | $tmpl->display('manager.tpl'); |
||
484 | alex-w | 131 | break; |
522 | alex-w | 132 | case 'sections': |
133 | // Управление секциями (deb) |
||
134 | $body = "<h3>Управление секциями репозиториев</h3>"; |
||
135 | switch ($action) { |
||
136 | case 'view': |
||
137 | $body .= "<p><a href='".$manager."?mode=sections&action=new'>Добавить новую секцию репозитория</a></p>"; |
||
138 | $body .= $core->showSectionsList("sections", $manager); |
||
139 | break; |
||
140 | case 'edit': |
||
141 | $body .= "<form action='".$process."' method='post'>\n"; |
||
142 | $body .= "<input type='hidden' name='mode' value='section-edit'>\n"; |
||
143 | $body .= "<input type='hidden' name='sectionID' value='".$uuid."'>\n"; |
||
144 | $body .= $core->showSectionsForm($uuid, "Редактирование информации о секции"); |
||
145 | $body .= "</form>"; |
||
146 | break; |
||
147 | case 'delete': |
||
148 | $body .= "<form action='".$process."' method='post'>\n"; |
||
149 | $body .= "<input type='hidden' name='mode' value='section-delete'>\n"; |
||
150 | $body .= "<input type='hidden' name='sectionID' value='".$uuid."'>\n"; |
||
151 | $body .= $core->showSectionsForm($uuid, "Удаление информации о секции"); |
||
152 | $body .= "</form>"; |
||
153 | break; |
||
154 | case 'new': |
||
155 | $body .= "<form action='".$process."' method='post'>\n"; |
||
156 | $body .= "<input type='hidden' name='mode' value='section-add'>\n"; |
||
157 | $body .= $core->showSectionsForm(0, "Добавление новой секции"); |
||
158 | $body .= "</form>"; |
||
159 | break; |
||
160 | } |
||
161 | $tmpl->assign('header', "CPanel"); |
||
162 | $tmpl->assign('description', "Панель управления генератором"); |
||
163 | $tmpl->assign('body', $body); |
||
164 | $tmpl->display('manager.tpl'); |
||
165 | break; |
||
539 | alex-w | 166 | case 'signs': |
167 | // Управление подписями (rpm) |
||
168 | $body = "<h3>Управление подписями репозиториев</h3>"; |
||
169 | switch ($action) { |
||
170 | case 'view': |
||
541 | alex-w | 171 | $body .= "<p><a href='".$manager."?mode=signs&action=new'>Добавить новую подпись репозитория</a></p>"; |
539 | alex-w | 172 | $body .= $core->showSignsList("signs", $manager); |
173 | break; |
||
174 | case 'edit': |
||
175 | $body .= "<form action='".$process."' method='post'>\n"; |
||
176 | $body .= "<input type='hidden' name='mode' value='sign-edit'>\n"; |
||
177 | $body .= "<input type='hidden' name='signID' value='".$uuid."'>\n"; |
||
178 | $body .= $core->showSignsForm($uuid, "Редактирование информации о подписи"); |
||
179 | $body .= "</form>"; |
||
180 | break; |
||
181 | case 'delete': |
||
182 | $body .= "<form action='".$process."' method='post'>\n"; |
||
183 | $body .= "<input type='hidden' name='mode' value='sign-delete'>\n"; |
||
184 | $body .= "<input type='hidden' name='signID' value='".$uuid."'>\n"; |
||
185 | $body .= $core->showSignsForm($uuid, "Удаление информации о подписи"); |
||
186 | $body .= "</form>"; |
||
187 | break; |
||
188 | case 'new': |
||
189 | $body .= "<form action='".$process."' method='post'>\n"; |
||
190 | $body .= "<input type='hidden' name='mode' value='sign-add'>\n"; |
||
191 | $body .= $core->showSignsForm(0, "Добавление новой подписи"); |
||
192 | $body .= "</form>"; |
||
193 | break; |
||
194 | } |
||
195 | $tmpl->assign('header', "CPanel"); |
||
196 | $tmpl->assign('description', "Панель управления генератором"); |
||
197 | $tmpl->assign('body', $body); |
||
198 | $tmpl->display('manager.tpl'); |
||
199 | break; |
||
484 | alex-w | 200 | case 'repositories': |
201 | // Управление репозиториями |
||
552 | alex-w | 202 | $body = "<h3>Управление репозиториями</h3>"; |
543 | alex-w | 203 | switch ($action) { |
204 | case 'view': |
||
550 | alex-w | 205 | $body .= "<ul><li><a href='".$manager."?mode=repositories&action=new-rpm'>Добавить новый rpm-репозиторий (мастер)</a></li>"; |
206 | $body .= "<li><a href='".$manager."?mode=repositories&action=new-deb'>Добавить новый deb-репозиторий (мастер)</a></li>"; |
||
207 | $body .= "<li><a href='".$manager."?mode=repositories&action=new'>Добавить новый репозиторий (“хакерский” способ)</a></li></ul>"; |
||
548 | alex-w | 208 | $body .= $core->showRepositoriesList("repositories", $manager, "list"); |
543 | alex-w | 209 | break; |
210 | case 'edit': |
||
211 | $body .= "<form action='".$process."' method='post'>\n"; |
||
212 | $body .= "<input type='hidden' name='mode' value='repositories-edit'>\n"; |
||
213 | $body .= "<input type='hidden' name='repositoriesID' value='".$uuid."'>\n"; |
||
553 | alex-w | 214 | $body .= $core->showRepositoriesForm($uuid, "Редактирование информации о репозитории"); |
543 | alex-w | 215 | $body .= "</form>"; |
216 | break; |
||
217 | case 'delete': |
||
218 | $body .= "<form action='".$process."' method='post'>\n"; |
||
219 | $body .= "<input type='hidden' name='mode' value='repositories-delete'>\n"; |
||
220 | $body .= "<input type='hidden' name='repositoriesID' value='".$uuid."'>\n"; |
||
553 | alex-w | 221 | $body .= $core->showRepositoriesForm($uuid, "Удаление информации о репозитории"); |
543 | alex-w | 222 | $body .= "</form>"; |
223 | break; |
||
224 | case 'new-rpm': |
||
225 | $body .= "<form action='".$process."' method='post'>\n"; |
||
226 | $body .= "<input type='hidden' name='mode' value='repositories-add-rpm'>\n"; |
||
553 | alex-w | 227 | $body .= $core->showRepositoriesForm(0, "Добавление нового rpm-репозитория", "rpm"); |
543 | alex-w | 228 | $body .= "</form>"; |
229 | break; |
||
230 | case 'new-deb': |
||
231 | $body .= "<form action='".$process."' method='post'>\n"; |
||
232 | $body .= "<input type='hidden' name='mode' value='repositories-add-deb'>\n"; |
||
553 | alex-w | 233 | $body .= $core->showRepositoriesForm(0, "Добавление нового deb-репозитория", "deb"); |
543 | alex-w | 234 | $body .= "</form>"; |
235 | break; |
||
551 | alex-w | 236 | case 'new': |
237 | $body .= "<form action='".$process."' method='post'>\n"; |
||
238 | $body .= "<input type='hidden' name='mode' value='repositories-add'>\n"; |
||
239 | $body .= "<fieldset><legend>Добавление нового репозитория</legend>\n"; |
||
240 | $body .= "<div class='inputbox'><label for='repscheme'>Строка sources.list:</label> <input type='text' id='repscheme' name='repscheme' value=''></div>\n"; |
||
241 | $body .= "<div class='inputbox'><input type='submit' value=' Обработать строку '></div>\n"; |
||
242 | $body .= "</fieldset></form>"; |
||
243 | break; |
||
543 | alex-w | 244 | } |
513 | alex-w | 245 | |
246 | $tmpl->assign('header', "CPanel"); |
||
247 | $tmpl->assign('description', "Панель управления генератором"); |
||
248 | $tmpl->assign('body', $body); |
||
249 | $tmpl->display('manager.tpl'); |
||
484 | alex-w | 250 | break; |
487 | alex-w | 251 | case 'settings': |
252 | // Настройки генератора |
||
513 | alex-w | 253 | $body = "Функционал еще не готов"; |
254 | |||
255 | $tmpl->assign('header', "CPanel"); |
||
256 | $tmpl->assign('description', "Панель управления генератором"); |
||
257 | $tmpl->assign('body', $body); |
||
258 | $tmpl->display('manager.tpl'); |
||
487 | alex-w | 259 | break; |
360 | alex-w | 260 | } |
261 | |||
262 | ?> |