Хранилища Subversion ant

Редакция

Редакция 688 | Содержимое файла | Сравнить с предыдущей | Последнее изменение | Открыть журнал | 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>";
568 alex-w 39
$menu .= "<li><a href='".$manager."?mode=archs'>Архитектуры</a></li>";
570 alex-w 40
$menu .= "<li><a href='".$manager."?mode=schemes'>Схемы</a></li>";
574 alex-w 41
$menu .= "<li><a href='".$manager."?mode=protos'>Протоколы</a></li>";
583 alex-w 42
$menu .= "<li><a href='".$manager."?mode=hosts'>Хосты репозиториев</a></li>";
589 alex-w 43
$menu .= "<li><a href='".$manager."?mode=folders'>Корневые папки</a></li>";
490 alex-w 44
$menu .= "<li><a href='".$manager."?mode=settings'>Настройки</a></li>";
45
$menu .= "<li><a href='".$manager."?mode=exit'>Выход</a></li></ul>";
432 alex-w 46
$menu .=" </fieldset>\n";
445 alex-w 47
 
48
$tmpl->assign('scripts', $scripts);
432 alex-w 49
$tmpl->assign('menu', $menu);
368 alex-w 50
 
388 alex-w 51
switch ($mode) {
360 alex-w 52
    case 'empty':
368 alex-w 53
        if ($valid["ERR"]==1)  {
54
            $tmpl->assign('header', "Вход");
387 alex-w 55
            $tmpl->assign('description', "Вход в панель управления генератором");
368 alex-w 56
            $tmpl->assign('body', $core->showSigninForm());
388 alex-w 57
            $tmpl->display('default.tpl');
368 alex-w 58
        } else {
486 alex-w 59
            $tmpl->assign('header', "CPanel");
432 alex-w 60
            $tmpl->assign('description', "Панель управления генератором");      
368 alex-w 61
            $tmpl->assign('body', $body);
388 alex-w 62
            $tmpl->display('manager.tpl');
63
        }        
360 alex-w 64
        break;
65
    case 'exit':
66
        setcookie($cookie, '', time()-10);
67
        header("Location: ./\n\n");
68
        break;
487 alex-w 69
    case 'distributions':
388 alex-w 70
        // Управление дистрибутивами
506 alex-w 71
        $body = "<h3>Управление дистрибутивами</h3>";
72
        switch ($action) {
73
            case 'view':
74
                    $body .= "<p><a href='".$manager."?mode=distributions&action=new'>Добавить новый дистрибутив</a></p>";
512 alex-w 75
                    $body .= $core->showDistributionList("distributions", $maganer, "", "list");
506 alex-w 76
                break;
508 alex-w 77
            case 'new':
530 alex-w 78
                    $body .= "<form action='".$process."' method='post' enctype='multipart/form-data'>\n";
508 alex-w 79
                    $body .= "<input type='hidden' name='mode' value='distributive-add'>\n";
511 alex-w 80
                    $body .= $core->showDistributionForm(0,"Добавление информации о новом дистрибутиве");
508 alex-w 81
                    $body .= "</form>";
82
                break;
83
            case 'edit':
530 alex-w 84
                    $body .= "<form action='".$process."' method='post' enctype='multipart/form-data'>\n";
509 alex-w 85
                    $body .= "<input type='hidden' name='mode' value='distributive-edit'>\n";
508 alex-w 86
                    $body .= "<input type='hidden' name='distID' value='".$uuid."'>\n";
511 alex-w 87
                    $body .= $core->showDistributionForm($uuid, "Редактирование информации о дистрибутиве");
508 alex-w 88
                    $body .= "</form>";
89
                break;
90
            case 'delete':
509 alex-w 91
                    $body .= "<form action='".$process."' method='post'>\n";
92
                    $body .= "<input type='hidden' name='mode' value='distributive-delete'>\n";
93
                    $body .= "<input type='hidden' name='distID' value='".$uuid."'>\n";
511 alex-w 94
                    $body .= $core->showDistributionForm($uuid, "Удаление информации о дистрибутиве");
509 alex-w 95
                    $body .= "</form>";
508 alex-w 96
                break;
506 alex-w 97
        }
507 alex-w 98
        $tmpl->assign('header', "CPanel");
99
        $tmpl->assign('description', "Панель управления генератором");
100
        $tmpl->assign('body', $body);
101
        $tmpl->display('manager.tpl');
388 alex-w 102
        break;
484 alex-w 103
    case 'versions':
104
        // Управление версиями
506 alex-w 105
        $body  = "<h3>Управление версиями</h3>";
497 alex-w 106
        switch ($action) {
107
            case 'view':
506 alex-w 108
                    $body .= "<p><a href='".$manager."?mode=versions&action=new'>Добавить новую версию дистрибутива</a></p>";
509 alex-w 109
                    $body .= $core->showDistVersionsList("versions", 0, "list", $manager);
497 alex-w 110
                break;
111
            case 'edit':
509 alex-w 112
                    $body .= "<form action='".$process."' method='post'>\n";
113
                    $body .= "<input type='hidden' name='mode' value='version-edit'>\n";
114
                    $body .= "<input type='hidden' name='versionID' value='".$uuid."'>\n";
511 alex-w 115
                    $body .= $core->showDistVersionsForm($uuid, "Редактирование информации о версии дистрибутива");
509 alex-w 116
                    $body .= "</form>";
497 alex-w 117
                break;
509 alex-w 118
            case 'delete':
119
                    $body .= "<form action='".$process."' method='post'>\n";
120
                    $body .= "<input type='hidden' name='mode' value='version-delete'>\n";
121
                    $body .= "<input type='hidden' name='versionID' value='".$uuid."'>\n";
511 alex-w 122
                    $body .= $core->showDistVersionsForm($uuid, "Удаление информации о версии дистрибутива");
509 alex-w 123
                    $body .= "</form>";
503 alex-w 124
                break;
509 alex-w 125
            case 'new':
126
                    $body .= "<form action='".$process."' method='post'>\n";
127
                    $body .= "<input type='hidden' name='mode' value='version-add'>\n";
511 alex-w 128
                    $body .= $core->showDistVersionsForm(0, "Добавление новой версии дистрибутива");
509 alex-w 129
                    $body .= "</form>";
503 alex-w 130
                break;
497 alex-w 131
        }
494 alex-w 132
        $tmpl->assign('header', "CPanel");
133
        $tmpl->assign('description', "Панель управления генератором");
134
        $tmpl->assign('body', $body);
135
        $tmpl->display('manager.tpl');
484 alex-w 136
        break;
522 alex-w 137
    case 'sections':
138
        // Управление секциями (deb)
139
        $body  = "<h3>Управление секциями репозиториев</h3>";
140
        switch ($action) {
141
            case 'view':
142
                    $body .= "<p><a href='".$manager."?mode=sections&action=new'>Добавить новую секцию репозитория</a></p>";
143
                    $body .= $core->showSectionsList("sections", $manager);
144
                break;
145
            case 'edit':
146
                    $body .= "<form action='".$process."' method='post'>\n";
147
                    $body .= "<input type='hidden' name='mode' value='section-edit'>\n";
148
                    $body .= "<input type='hidden' name='sectionID' value='".$uuid."'>\n";
149
                    $body .= $core->showSectionsForm($uuid, "Редактирование информации о секции");
150
                    $body .= "</form>";
151
                break;
152
            case 'delete':
153
                    $body .= "<form action='".$process."' method='post'>\n";
154
                    $body .= "<input type='hidden' name='mode' value='section-delete'>\n";
155
                    $body .= "<input type='hidden' name='sectionID' value='".$uuid."'>\n";
156
                    $body .= $core->showSectionsForm($uuid, "Удаление информации о секции");
157
                    $body .= "</form>";
158
                break;
159
            case 'new':
160
                    $body .= "<form action='".$process."' method='post'>\n";
161
                    $body .= "<input type='hidden' name='mode' value='section-add'>\n";
162
                    $body .= $core->showSectionsForm(0, "Добавление новой секции");
163
                    $body .= "</form>";
164
                break;
165
        }
166
        $tmpl->assign('header', "CPanel");
167
        $tmpl->assign('description', "Панель управления генератором");
168
        $tmpl->assign('body', $body);
169
        $tmpl->display('manager.tpl');
170
        break;
539 alex-w 171
    case 'signs':
172
        // Управление подписями (rpm)
173
        $body  = "<h3>Управление подписями репозиториев</h3>";
174
        switch ($action) {
175
            case 'view':
541 alex-w 176
                    $body .= "<p><a href='".$manager."?mode=signs&action=new'>Добавить новую подпись репозитория</a></p>";
539 alex-w 177
                    $body .= $core->showSignsList("signs", $manager);
178
                break;
179
            case 'edit':
180
                    $body .= "<form action='".$process."' method='post'>\n";
181
                    $body .= "<input type='hidden' name='mode' value='sign-edit'>\n";
182
                    $body .= "<input type='hidden' name='signID' value='".$uuid."'>\n";
183
                    $body .= $core->showSignsForm($uuid, "Редактирование информации о подписи");
184
                    $body .= "</form>";
185
                break;
186
            case 'delete':
187
                    $body .= "<form action='".$process."' method='post'>\n";
188
                    $body .= "<input type='hidden' name='mode' value='sign-delete'>\n";
189
                    $body .= "<input type='hidden' name='signID' value='".$uuid."'>\n";
190
                    $body .= $core->showSignsForm($uuid, "Удаление информации о подписи");
191
                    $body .= "</form>";
192
                break;
193
            case 'new':
194
                    $body .= "<form action='".$process."' method='post'>\n";
195
                    $body .= "<input type='hidden' name='mode' value='sign-add'>\n";
196
                    $body .= $core->showSignsForm(0, "Добавление новой подписи");
197
                    $body .= "</form>";
198
                break;
199
        }
200
        $tmpl->assign('header', "CPanel");
201
        $tmpl->assign('description', "Панель управления генератором");
202
        $tmpl->assign('body', $body);
203
        $tmpl->display('manager.tpl');
204
        break;
568 alex-w 205
    case 'archs':
206
        // Управление архитектурами
207
        $body  = "<h3>Управление архитектурами</h3>";
208
        switch ($action) {
209
            case 'view':
210
                    $body .= "<p><a href='".$manager."?mode=archs&action=new'>Добавить новую архитектуру</a></p>";
211
                    $body .= $core->showArchList("archs", $manager, "list");
212
                break;
213
            case 'edit':
214
                    $body .= "<form action='".$process."' method='post'>\n";
215
                    $body .= "<input type='hidden' name='mode' value='arch-edit'>\n";
216
                    $body .= "<input type='hidden' name='archID' value='".$uuid."'>\n";
217
                    $body .= $core->showArchForm($uuid, "Редактирование информации об архитектуре");
218
                    $body .= "</form>";
219
                break;
220
            case 'delete':
221
                    $body .= "<form action='".$process."' method='post'>\n";
222
                    $body .= "<input type='hidden' name='mode' value='arch-delete'>\n";
223
                    $body .= "<input type='hidden' name='archID' value='".$uuid."'>\n";
224
                    $body .= $core->showArchForm($uuid, "Удаление информации об архитектуре");
225
                    $body .= "</form>";
226
                break;
227
            case 'new':
228
                    $body .= "<form action='".$process."' method='post'>\n";
229
                    $body .= "<input type='hidden' name='mode' value='arch-add'>\n";
230
                    $body .= $core->showArchForm(0, "Добавление новой архитектуре");
231
                    $body .= "</form>";
232
                break;
233
        }
234
        $tmpl->assign('header', "CPanel");
235
        $tmpl->assign('description', "Панель управления генератором");
236
        $tmpl->assign('body', $body);
237
        $tmpl->display('manager.tpl');
238
        break;
570 alex-w 239
    case 'schemes':
240
        // Управление схемами репозиториев
241
        $body  = "<h3>Управление схемами репозиториев</h3>";
242
        switch ($action) {
243
            case 'view':
244
                    $body .= "<p><a href='".$manager."?mode=schemes&action=new'>Добавить новую схему репозитория</a></p>";
245
                    $body .= $core->showSchemeList("schemes", $manager, "list");
246
                break;
247
            case 'edit':
248
                    $body .= "<form action='".$process."' method='post'>\n";
249
                    $body .= "<input type='hidden' name='mode' value='scheme-edit'>\n";
250
                    $body .= "<input type='hidden' name='schemeID' value='".$uuid."'>\n";
251
                    $body .= $core->showSchemeForm($uuid, "Редактирование информации о схеме репозитория");
252
                    $body .= "</form>";
253
                break;
254
            case 'delete':
255
                    $body .= "<form action='".$process."' method='post'>\n";
256
                    $body .= "<input type='hidden' name='mode' value='scheme-delete'>\n";
257
                    $body .= "<input type='hidden' name='schemeID' value='".$uuid."'>\n";
258
                    $body .= $core->showSchemeForm($uuid, "Удаление информации о схеме репозитория");
259
                    $body .= "</form>";
260
                break;
261
            case 'new':
262
                    $body .= "<form action='".$process."' method='post'>\n";
263
                    $body .= "<input type='hidden' name='mode' value='scheme-add'>\n";
264
                    $body .= $core->showSchemeForm(0, "Добавление новой схемы репозитория");
265
                    $body .= "</form>";
266
                break;
267
        }
268
        $tmpl->assign('header', "CPanel");
269
        $tmpl->assign('description', "Панель управления генератором");
270
        $tmpl->assign('body', $body);
271
        $tmpl->display('manager.tpl');
272
        break;
574 alex-w 273
    case 'protos':
274
        // Управление протоколами доступа
275
        $body  = "<h3>Управление протоколами доступа</h3>";
276
        switch ($action) {
277
            case 'view':
278
                    $body .= "<p><a href='".$manager."?mode=protos&action=new'>Добавить новый протокол доступа</a></p>";
279
                    $body .= $core->showProtoList("protos", $manager, "list");
280
                break;
281
            case 'edit':
282
                    $body .= "<form action='".$process."' method='post'>\n";
283
                    $body .= "<input type='hidden' name='mode' value='proto-edit'>\n";
284
                    $body .= "<input type='hidden' name='protoID' value='".$uuid."'>\n";
285
                    $body .= $core->showProtoForm($uuid, "Редактирование информации о протоколе доступа");
286
                    $body .= "</form>";
287
                break;
288
            case 'delete':
289
                    $body .= "<form action='".$process."' method='post'>\n";
290
                    $body .= "<input type='hidden' name='mode' value='proto-delete'>\n";
291
                    $body .= "<input type='hidden' name='protoID' value='".$uuid."'>\n";
292
                    $body .= $core->showProtoForm($uuid, "Удаление информации о протоколе доступа");
293
                    $body .= "</form>";
294
                break;
295
            case 'new':
296
                    $body .= "<form action='".$process."' method='post'>\n";
297
                    $body .= "<input type='hidden' name='mode' value='proto-add'>\n";
298
                    $body .= $core->showProtoForm(0, "Добавление нового протокола доступа");
299
                    $body .= "</form>";
300
                break;
301
        }
302
        $tmpl->assign('header', "CPanel");
303
        $tmpl->assign('description', "Панель управления генератором");
304
        $tmpl->assign('body', $body);
305
        $tmpl->display('manager.tpl');
306
        break;
582 alex-w 307
    case 'hosts':
308
        // Управление хостами репозиториев
309
        $body  = "<h3>Управление хостами репозиториев</h3>";
310
        switch ($action) {
311
            case 'view':
312
                    $body .= "<p><a href='".$manager."?mode=hosts&action=new'>Добавить новый хост репозитория</a></p>";
313
                    $body .= $core->showHostsList("hosts", $manager, "list");
314
                break;
315
            case 'edit':
316
                    $body .= "<form action='".$process."' method='post'>\n";
317
                    $body .= "<input type='hidden' name='mode' value='host-edit'>\n";
318
                    $body .= "<input type='hidden' name='hostID' value='".$uuid."'>\n";
319
                    $body .= $core->showHostForm($uuid, "Редактирование информации о хосте репозитория");
320
                    $body .= "</form>";
321
                break;
322
            case 'delete':
323
                    $body .= "<form action='".$process."' method='post'>\n";
324
                    $body .= "<input type='hidden' name='mode' value='host-delete'>\n";
325
                    $body .= "<input type='hidden' name='hostID' value='".$uuid."'>\n";
326
                    $body .= $core->showHostForm($uuid, "Удаление информации о хосте репозитория");
327
                    $body .= "</form>";
328
                break;
329
            case 'new':
330
                    $body .= "<form action='".$process."' method='post'>\n";
331
                    $body .= "<input type='hidden' name='mode' value='host-add'>\n";
332
                    $body .= $core->showHostForm(0, "Добавление нового хоста репозитория");
333
                    $body .= "</form>";
334
                break;
335
        }
336
        $tmpl->assign('header', "CPanel");
337
        $tmpl->assign('description', "Панель управления генератором");
338
        $tmpl->assign('body', $body);
339
        $tmpl->display('manager.tpl');
340
        break;
589 alex-w 341
    case 'folders':
342
        // Управление коревыми папками
343
        $body  = "<h3>Управление коревыми папками репозиториев</h3>";
344
        switch ($action) {
345
            case 'view':
346
                    $body .= "<p><a href='".$manager."?mode=folders&action=new'>Добавить новую корневую папку репозитория</a></p>";
347
                    $body .= $core->showFoldersList("folders", $manager, "list");
348
                break;
349
            case 'edit':
350
                    $body .= "<form action='".$process."' method='post'>\n";
351
                    $body .= "<input type='hidden' name='mode' value='folder-edit'>\n";
352
                    $body .= "<input type='hidden' name='folderID' value='".$uuid."'>\n";
353
                    $body .= $core->showFolderForm($uuid, "Редактирование информации о корневой папке репозитория");
354
                    $body .= "</form>";
355
                break;
356
            case 'delete':
357
                    $body .= "<form action='".$process."' method='post'>\n";
358
                    $body .= "<input type='hidden' name='mode' value='folder-delete'>\n";
359
                    $body .= "<input type='hidden' name='folderID' value='".$uuid."'>\n";
360
                    $body .= $core->showFolderForm($uuid, "Удаление информации о корневой папке репозитория");
361
                    $body .= "</form>";
362
                break;
363
            case 'new':
364
                    $body .= "<form action='".$process."' method='post'>\n";
365
                    $body .= "<input type='hidden' name='mode' value='folder-add'>\n";
366
                    $body .= $core->showFolderForm(0, "Добавление новой корневой папки репозитория");
367
                    $body .= "</form>";
368
                break;
369
        }
370
        $tmpl->assign('header', "CPanel");
371
        $tmpl->assign('description', "Панель управления генератором");
372
        $tmpl->assign('body', $body);
373
        $tmpl->display('manager.tpl');
374
        break;
484 alex-w 375
    case 'repositories':
376
        // Управление репозиториями
552 alex-w 377
        $body  = "<h3>Управление репозиториями</h3>";
543 alex-w 378
        switch ($action) {
379
            case 'view':
594 alex-w 380
                    $body .= "<ul><li><a href='".$manager."?mode=repositories&action=new-master'>Добавить новый репозиторий (мастер)</a></li>";
550 alex-w 381
                    $body .= "<li><a href='".$manager."?mode=repositories&action=new'>Добавить новый репозиторий (&#8220;хакерский&#8221; способ)</a></li></ul>";
548 alex-w 382
                    $body .= $core->showRepositoriesList("repositories", $manager, "list");
543 alex-w 383
                break;
384
            case 'edit':
385
                    $body .= "<form action='".$process."' method='post'>\n";
598 alex-w 386
                    $body .= "<input type='hidden' name='mode' value='repository-edit'>\n";
621 alex-w 387
                    $body .= "<input type='hidden' name='repositoryID' value='".$uuid."'>\n";
553 alex-w 388
                    $body .= $core->showRepositoriesForm($uuid, "Редактирование информации о репозитории");
543 alex-w 389
                    $body .= "</form>";
390
                break;
391
            case 'delete':
392
                    $body .= "<form action='".$process."' method='post'>\n";
598 alex-w 393
                    $body .= "<input type='hidden' name='mode' value='repository-delete'>\n";
619 alex-w 394
                    $body .= "<input type='hidden' name='repositoryID' value='".$uuid."'>\n";
553 alex-w 395
                    $body .= $core->showRepositoriesForm($uuid, "Удаление информации о репозитории");
543 alex-w 396
                    $body .= "</form>";
397
                break;
594 alex-w 398
            case 'new-master':
543 alex-w 399
                    $body .= "<form action='".$process."' method='post'>\n";
598 alex-w 400
                    $body .= "<input type='hidden' name='mode' value='repository-master'>\n";
597 alex-w 401
                    $body .= $core->showRepositoriesForm(0, "Добавление нового репозитория");
543 alex-w 402
                    $body .= "</form>";
594 alex-w 403
                break;            
551 alex-w 404
            case 'new':
405
                    $body .= "<form action='".$process."' method='post'>\n";
598 alex-w 406
                    $body .= "<input type='hidden' name='mode' value='repository-add'>\n";
551 alex-w 407
                    $body .= "<fieldset><legend>Добавление нового репозитория</legend>\n";
408
                    $body .= "<div class='inputbox'><label for='repscheme'>Строка sources.list:</label> <input type='text' id='repscheme' name='repscheme' value=''></div>\n";
409
                    $body .= "<div class='inputbox'><input type='submit' value=' Обработать строку '></div>\n";
410
                    $body .= "</fieldset></form>";
411
                break;
543 alex-w 412
        }
513 alex-w 413
 
414
        $tmpl->assign('header', "CPanel");
415
        $tmpl->assign('description', "Панель управления генератором");
416
        $tmpl->assign('body', $body);
417
        $tmpl->display('manager.tpl');
484 alex-w 418
        break;
487 alex-w 419
    case 'settings':
420
        // Настройки генератора
684 alex-w 421
        $body  = "<h3>Настройка генератора</h3>";
422
        switch ($action) {
423
            case 'view':
424
                    $body .= $core->showSettingsList("settings", $manager, "list");
425
                break;
688 alex-w 426
            case 'update-password':
684 alex-w 427
                    $body .= "<form action='".$process."' method='post'>\n";
688 alex-w 428
                    $body .= "<input type='hidden' name='mode' value='update-password'>\n";
429
                    $body .= $core->showUpdatePasswordForm();
684 alex-w 430
                    $body .= "</form>";
688 alex-w 431
                break;            
684 alex-w 432
        }
513 alex-w 433
 
434
        $tmpl->assign('header', "CPanel");
435
        $tmpl->assign('description', "Панель управления генератором");
436
        $tmpl->assign('body', $body);
437
        $tmpl->display('manager.tpl');
487 alex-w 438
        break;
360 alex-w 439
}
440
 
441
?>