Хранилища Subversion ant

Редакция

Редакция 184 | Весь файл | Не учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS

Редакция 184 Редакция 185
Строка 248... Строка 248...
248
        case '4':
248
        case '4':
249
            // Работа с репозиториями
249
            // Работа с репозиториями
250
            switch ($act) {
250
            switch ($act) {
251
                case '0':
251
                case '0':
252
                        // Выбор дистрибутива
252
                        // Выбор дистрибутива
253
                        $dist =& $db->query("SELECT * FROM distribution d JOIN version v ON v.dist_id=d.dist_id ORDER BY d.dist_id,v.version_id ASC");
253
                        $dist =& $db->query("SELECT * FROM `repository` LEFT JOIN origin ON repository.orig_id=origin.orig_id LEFT JOIN root ON repository.root_id=root.root_id");
254
                        $display  = "<div class='modulename'>Имеются репозитории для:</div>\n";
254
                        $display  = "<div class='modulename'>Репозитории:</div>\n";
255
                        $display .= "<table><tr><th>Репозиторий</th></tr>\n";
255
                        $display .= "<table><tr><th>Репозиторий</th><th>Действие</th><th>Корень</th><th>Источник</th></tr>\n";
256
                        while ($dist->fetchInto($info, DB_FETCHMODE_ASSOC)) {
256
                        while ($dist->fetchInto($info, DB_FETCHMODE_ASSOC)) {
-
 
257
                            $display .= "<tr><td>".$info["repname"]."</td>";
257
                            $display .= "<tr><td><a href='".$admin."?mode=".$mode."&action=1&uid=".$info["version_id"]."'>".stripslashes($info["distname"])." ".stripslashes($info["version"])." &#8220;".stripslashes($info["vname"])."&#8221;</a></td></tr>";
258
                            $display .= "<td><a href='".$admin."?mode=".$mode."&action=2&uid=".$info["rep_id"]."' class='nodec'><img src='img/edt.png' width='16' height='16' title='Редактировать'></a>";
-
 
259
                            $display .= "<a href='".$admin."?mode=".$mode."&action=3&uid=".$info["rep_id"]."'><img title='Удалить' src='img/del.png' width='16' height='16'></a></td>\n";
-
 
260
                            $display .= "<td>".$info["root_folder"]."</td>";
-
 
261
                            $display .= "<td>".$info["origin"]."</td></tr>";
258
                        }
262
                        }
259
                        $display .= "</table>";
263
                        $display .= "</table><p><a href='".$admin."?mode=".$mode."&action=2&uid=".$uid."'><img src='img/add.png' width='16' height='16'>Добавить новый репозиторий</a></p>";
260
                        break;
264
                        break;
261
                case '1':
265
                case '1':
262
                        // Список доступных репозиториев для конкретной версии дистрибутива
-
 
263
                        $reps =& $db->query("SELECT * FROM repository r JOIN ver2rep a ON a.rep_id=r.rep_id WHERE a.ver_id='$uid'");
-
 
264
                        $display = "<div class='modulename'><a href='admin.php?mode=".$mode.">Репозитории</a> :: Доступные репозитории для выбранного дистрибутива</div> <ul id='replist'>";
-
 
265
                        if ($reps->numRows()>0) {
-
 
266
                            while ($reps->fetchInto($info, DB_FETCHMODE_ASSOC)) {
-
 
267
                                $display .= "<li><a href='".$admin."?mode=".$mode."&action=3&uid=".$info["rep_id"]."' class='edit'><img title='Редактировать' src='img/edt.png' width='16' height='16'></a><a href='".$admin."?mode=4&action=4&uid=".$info["rep_id"]."' class='delete'><img title='Удалить' src='img/del.png' width='16' height='16'></a> ".stripslashes($info["repname"])." &mdash; ".stripslashes($info["repdescribe"])."</li>";
-
 
268
                            }
-
 
269
                        }
-
 
270
                        $display .= "</ul><p><a href='".$admin."?mode=".$mode."&action=2&uid=".$uid."'><img src='img/add.png' width='16' height='16'>Добавить новый репозиторий</a></p>";
-
 
271
                        break;
-
 
272
                case '2':
-
 
273
                        // Новый репозиторий
266
                        // Новый репозиторий
274
                        $rep =& $db->query("SELECT * FROM distribution d JOIN version v ON v.dist_id=d.dist_id WHERE v.version_id='$uid'");
267
                        $rep =& $db->query("SELECT * FROM distribution d JOIN version v ON v.dist_id=d.dist_id WHERE v.version_id='$uid'");
275
                        $rep->fetchInto($dist, DB_FETCHMODE_ASSOC);
268
                        $rep->fetchInto($dist, DB_FETCHMODE_ASSOC);
276
                        $dist_id = $dist["dist_id"];
269
                        $dist_id = $dist["dist_id"];
277
                        $dist_vname = stripslashes($dist["distname"])." ".stripslashes($dist["version"])." &#8220;".stripslashes($dist["vname"])."&#8221;";
270
                        $dist_vname = stripslashes($dist["distname"])." ".stripslashes($dist["version"])." &#8220;".stripslashes($dist["vname"])."&#8221;";
Строка 279... Строка 272...
279
                        $rscheme = "<select name='scheme'>";
272
                        $rscheme = "<select name='scheme'>";
280
                        while ($dtype->fetchInto($dtinfo, DB_FETCHMODE_ASSOC)) {
273
                        while ($dtype->fetchInto($dtinfo, DB_FETCHMODE_ASSOC)) {
281
                            $rscheme .= "<option value='".$dtinfo["scheme_id"]."'>".stripslashes($dtinfo["scheme"])."</option>";
274
                            $rscheme .= "<option value='".$dtinfo["scheme_id"]."'>".stripslashes($dtinfo["scheme"])."</option>";
282
                        }
275
                        }
283
                        $rscheme .= "</select>";
276
                        $rscheme .= "</select>";
284
                        $rtype =& $db->query("SELECT * FROM rtype");
277
                        $origin_q =& $db->query("SELECT * FROM origin");
285
                        $reptype = "<select name='rtype'>";
278
                        $origin = "<select name='origin'>";
286
                        while ($rtype->fetchInto($rtinfo, DB_FETCHMODE_ASSOC)) {
279
                        while ($origin_q->fetchInto($origin_info, DB_FETCHMODE_ASSOC)) {
287
                            $reptype .= "<option value='".$rtinfo["rtype_id"]."'>".stripslashes($rtinfo["rtype"])."</option>";
280
                            $origin .= "<option value='".$origin_info["orig_id"]."'>".stripslashes($origin_info["origin"])."</option>";
288
                        }
281
                        }
289
                        $reptype .= "</select>\n";
282
                        $origin .= "</select>\n";
290
                        $sect =& $db->query("SELECT * FROM section s JOIN sect2dist d ON d.sect_id=s.sect_id WHERE d.dist_id='$dist_id'");
283
                        $sect =& $db->query("SELECT * FROM section s JOIN sect2dist d ON d.sect_id=s.sect_id WHERE d.dist_id='$dist_id'");
291
                        $list = "";
284
                        $list = "";
292
                        while ($sect->fetchInto($slist, DB_FETCHMODE_ASSOC)) {
285
                        while ($sect->fetchInto($slist, DB_FETCHMODE_ASSOC)) {
293
                            $list .= "<input type='checkbox' name='sect[]' value='".$slist["sect_id"]."'> <span title='".stripslashes($slist["sectinfo"])."'>".stripslashes($slist["sectname"])."</span> ";
286
                            $list .= "<input type='checkbox' name='sect[]' value='".$slist["sect_id"]."'> <span title='".stripslashes($slist["sectinfo"])."'>".stripslashes($slist["sectname"])."</span> ";
294
                        }
287
                        }
Строка 305... Строка 298...
305
                        $display .= "<input type='hidden' name='act' value='".$act."'>\n";
298
                        $display .= "<input type='hidden' name='act' value='".$act."'>\n";
306
                        $display .= "<input type='hidden' name='vers' value='$uid'>\n";
299
                        $display .= "<input type='hidden' name='vers' value='$uid'>\n";
307
                        $display .= "Название репозитория (codename): <input type='text' name='repName'><br>\n";
300
                        $display .= "Название репозитория (codename): <input type='text' name='repName'><br>\n";
308
                        $display .= "Описание репозитория:<br> <textarea name='repInfo'></textarea><br>\n";
301
                        $display .= "Описание репозитория:<br> <textarea name='repInfo'></textarea><br>\n";
309
                        $display .= "Схема репозитория: ".$rscheme."<br>";
302
                        $display .= "Схема репозитория: ".$rscheme."<br>";
310
                        $display .= "Тип репозитория: ".$reptype."<br>";
303
                        $display .= "Источник репозитория: ".$origin."<br>";
311
                        $display .= "Корневая папка репозитория: ".$rootfolder."<br>";
304
                        $display .= "Корневая папка репозитория: ".$rootfolder."<br>";
312
                        $display .= "Секции: ".$list;
305
                        $display .= "Секции: ".$list;
313
                        $display .= "<br><input type='submit' value='Создать'></form>\n";
306
                        $display .= "<br><input type='submit' value='Создать'></form>\n";
314
                        break;
307
                        break;
315
                case '3':
308
                case '2':
316
                        // Редактирование репозитория
309
                        // Редактирование репозитория
317
                        $rep =& $db->query("SELECT * FROM repository r JOIN ver2rep l ON l.rep_id=r.rep_id JOIN version v ON v.version_id=l.ver_id JOIN distribution d ON v.dist_id=d.dist_id JOIN root r2 ON r2.root_id=r.root_id WHERE r.rep_id='$uid'");
310
                        $rep =& $db->query("SELECT * FROM repository r JOIN ver2rep l ON l.rep_id=r.rep_id JOIN version v ON v.version_id=l.ver_id JOIN distribution d ON v.dist_id=d.dist_id JOIN root r2 ON r2.root_id=r.root_id WHERE r.rep_id='$uid'");
318
                        $rep->fetchInto($info, DB_FETCHMODE_ASSOC);
311
                        $rep->fetchInto($info, DB_FETCHMODE_ASSOC);
319
                        $dist_vname = stripslashes($info["distname"])." ".stripslashes($info["version"])." &#8220;".stripslashes($info["vname"])."&#8221;";
312
                        $dist_vname = stripslashes($info["distname"])." ".stripslashes($info["version"])." &#8220;".stripslashes($info["vname"])."&#8221;";
320
                        $tlist = "<select name='scheme'>";
313
                        $tlist = "<select name='scheme'>";
Строка 325... Строка 318...
325
                            } else {
318
                            } else {
326
                                $tlist .= "<option value='".$type["scheme_id"]."'>".stripslashes($type["scheme"])."</option>";
319
                                $tlist .= "<option value='".$type["scheme_id"]."'>".stripslashes($type["scheme"])."</option>";
327
                            }
320
                            }
328
                        }
321
                        }
329
                        $tlist .= "</select>";
322
                        $tlist .= "</select>";
330
                        $tlist2 = "<select name='rtype'>";
323
                        $tlist2 = "<select name='origin'>";
331
                        $sq =& $db->query("SELECT * FROM rtype");
324
                        $sq =& $db->query("SELECT * FROM origin");
332
                        while ($sq->fetchInto($type, DB_FETCHMODE_ASSOC)) {
325
                        while ($sq->fetchInto($type, DB_FETCHMODE_ASSOC)) {
333
                            if ($type["rtype_id"]==$info["rtype_id"]) {
326
                            if ($type["orig_id"]==$info["orig_id"]) {
334
                                $tlist2 .= "<option value='".$type["rtype_id"]."' selected>".stripslashes($type["rtype"])."</option>";
327
                                $tlist2 .= "<option value='".$type["orig_id"]."' selected>".stripslashes($type["origin"])."</option>";
335
                            } else {
328
                            } else {
336
                                $tlist2 .= "<option value='".$type["rtype_id"]."'>".stripslashes($type["rtype"])."</option>";
329
                                $tlist2 .= "<option value='".$type["orig_id"]."'>".stripslashes($type["origin"])."</option>";
337
                            }
330
                            }
338
                        }
331
                        }
339
                        $tlist2 .= "</select>";
332
                        $tlist2 .= "</select>";
340
                        $list = "";
333
                        $list = "";
341
                        $req =& $db->query("SELECT * FROM section s JOIN sect2rep r ON s.sect_id=r.sect_id WHERE r.rep_id='$uid'");
334
                        $req =& $db->query("SELECT * FROM section s JOIN sect2rep r ON s.sect_id=r.sect_id WHERE r.rep_id='$uid'");
Строка 369... Строка 362...
369
                        $display .= "<input type='hidden' name='act' value=".$act.">\n";
362
                        $display .= "<input type='hidden' name='act' value=".$act.">\n";
370
                        $display .= "<input type='hidden' name='rep' value='$uid'>\n";
363
                        $display .= "<input type='hidden' name='rep' value='$uid'>\n";
371
                        $display .= "Название репозитория (codename): <input type='text' name='repName' value='".stripslashes($info["repname"])."'><br>\n";
364
                        $display .= "Название репозитория (codename): <input type='text' name='repName' value='".stripslashes($info["repname"])."'><br>\n";
372
                        $display .= "Описание репозитория:<br> <textarea name='repInfo'>".stripslashes($info["repdescribe"])."</textarea><br>\n";
365
                        $display .= "Описание репозитория:<br> <textarea name='repInfo'>".stripslashes($info["repdescribe"])."</textarea><br>\n";
373
                        $display .= "Схема репозитория: ".$tlist."<br>";
366
                        $display .= "Схема репозитория: ".$tlist."<br>";
374
                        $display .= "Тип репозитория: ".$tlist2."<br>";
367
                        $display .= "Источник репозитория: ".$tlist2."<br>";
375
                        $display .= "Корневая папка репозитория: ".$rootfolder."<br>";
368
                        $display .= "Корневая папка репозитория: ".$rootfolder."<br>";
376
                        $display .= "Секции: ".$list;
369
                        $display .= "Секции: ".$list;
377
                        $display .= "<br><input type='submit' value='Править'></form>\n";
370
                        $display .= "<br><input type='submit' value='Править'></form>\n";
378
                break;
371
                break;
379
                case '4':
372
                case '3':
380
                        // Удаление репозитория
373
                        // Удаление репозитория
381
                        $rep =& $db->query("SELECT * FROM repository r JOIN ver2rep l ON l.rep_id=r.rep_id JOIN version v ON v.version_id=l.ver_id JOIN distribution d ON v.dist_id=d.dist_id WHERE r.rep_id='$uid'");
374
                        $rep =& $db->query("SELECT * FROM repository r JOIN ver2rep l ON l.rep_id=r.rep_id JOIN version v ON v.version_id=l.ver_id JOIN distribution d ON v.dist_id=d.dist_id WHERE r.rep_id='$uid'");
382
                        $rep->fetchInto($info, DB_FETCHMODE_ASSOC);
375
                        $rep->fetchInto($info, DB_FETCHMODE_ASSOC);
383
                        $dist_vname = stripslashes($info["distname"])." ".stripslashes($info["version"])." &#8220;".stripslashes($info["vname"])."&#8221;";
376
                        $dist_vname = stripslashes($info["distname"])." ".stripslashes($info["version"])." &#8220;".stripslashes($info["vname"])."&#8221;";
384
                        $display  = "<div class='modulename'><a href='admin.php?mode=3'>Репозитории</a> :: Удаление репозитория ".$info["repname"]." для <em>".$dist_vname."</em></div>";
377
                        $display  = "<div class='modulename'><a href='admin.php?mode=3'>Репозитории</a> :: Удаление репозитория ".$info["repname"]." для <em>".$dist_vname."</em></div>";