Хранилища Subversion ant

Редакция

Редакция 11 | Редакция 31 | К новейшей редакции | Содержимое файла | Сравнить с предыдущей | Последнее изменение | Открыть журнал | RSS

Редакция Автор № строки Строка
2 alex-w 1
<?php
2
 
3
include "./sign-valid.php";
4
 
5
$mode = abs(intval($_POST["mode"]));
6
 
7
$go = "./admin.php";
8
 
9
switch ($mode) {
10
    case '0':
11
	    break;
12
    case '1':
13
	    // Добавление нового дистрибутива
14
	    $distname = mysql_real_escape_string($_POST["distName"]);
15
	    $disttype = abs(intval($_POST["distType"]));
16
 
17
	    $res =& $db->query("INSERT INTO distribution SET distname='$distname', disttype='$disttype'");
18
 
19
	    break;
20
    case '2':
21
	    // Правка существующего дистрибутива
22
	    $distname = mysql_real_escape_string($_POST["distName"]);
23
	    $disttype = abs(intval($_POST["distType"]));
24
	    $distID = abs(intval($_POST["distID"]));
25
 
26
	    $res =& $db->query("UPDATE distribution SET distname='$distname', disttype='$disttype' WHERE dist_id='$distID'");
27
 
28
	    break;
29
    case '3':
30
	    // Удаление существующего дистрибутива
31
	    $distID = abs(intval($_POST["distID"]));
32
 
33
	    $res =& $db->query("DELETE FROM distribution WHERE dist_id='$distID'");
34
	    $res =& $db->query("DELETE FROM sect2dist WHERE dist_id='$distID'");
35
 
36
	    break;
37
    case '4':
38
	    // Добавление новой версии дистрибутива
39
	    $versname = mysql_real_escape_string($_POST["versNam"]);
40
	    $versnumb = mysql_real_escape_string($_POST["versNum"]);
41
	    $verscode = mysql_real_escape_string($_POST["versCN"]);
42
	    $distname = abs(intval($_POST["distName"]));
43
 
44
	    $res =& $db->query("INSERT INTO version SET dist_id='$distname', vname='$versname', version='$versnumb', vcodename='$verscode'");
45
 
46
	    break;
47
    case '5':
48
	    // Правка имеющейся версии дистрибутива
49
	    $versname = mysql_real_escape_string($_POST["versNam"]);
50
	    $versnumb = mysql_real_escape_string($_POST["versNum"]);
51
	    $verscode = mysql_real_escape_string($_POST["versCN"]);
52
	    $distname = abs(intval($_POST["distName"]));
53
	    $versID   = abs(intval($_POST["versID"]));
54
 
55
	    $res =& $db->query("UPDATE version SET dist_id='$distname', vname='$versname', version='$versnumb', vcodename='$verscode' WHERE version_id='$versID'");
56
 
57
	    break;
58
    case '6':
59
	    // Удаление существующей версии дистрибутива
60
	    $versID = abs(intval($_POST["versID"]));
61
 
62
	    $res =& $db->query("DELETE FROM version WHERE version_id='$versID'");
63
	    $res =& $db->query("DELETE FROM ver2rep WHERE ver_id='$versID'");
64
 
65
	    break;
66
    case '7':
67
            // Добавление нового репозитория
68
            $versID  = abs(intval($_POST["vers"]));
69
            $repname = mysql_real_escape_string($_POST["repName"]);
70
            $repinfo = mysql_real_escape_string($_POST["repInfo"]);
8 alex-w 71
            $repsche = abs(intval($_POST["scheme"]));
11 alex-w 72
	    $reptype = abs(intval($_POST["rtype"]));
2 alex-w 73
 
11 alex-w 74
            $res =& $db->query("INSERT INTO repository SET repname='$repname', repdescribe='$repinfo', scheme_id='$repsche', rtype_id='$reptype'");
2 alex-w 75
            $res =& $db->query("SELECT rep_id FROM repository ORDER BY rep_id DESC LIMIT 1");
76
            $res->fetchInto($rep, DB_FETCHMODE_ASSOC);
77
            $rep_id = $rep["rep_id"];
78
 
79
            $res =& $db->query("INSERT INTO ver2rep SET ver_id='$versID', rep_id='$rep_id'");
80
 
81
            for ($i=0;$i<count($_POST["sect"]);$i++) {
82
                $res =& $db->query("INSERT INTO sect2rep SET sect_id='".$_POST["sect"][$i]."', rep_id='$rep_id'");
83
            }
84
            break;
85
    case '8':
86
	    // Правка репозитория
87
	    $repID	= abs(intval($_POST["rep"]));
88
	    $repname	= mysql_real_escape_string($_POST["repName"]);
89
            $repinfo = mysql_real_escape_string($_POST["repInfo"]);
8 alex-w 90
            $repsche = abs(intval($_POST["scheme"]));
11 alex-w 91
	    $reptype = abs(intval($_POST["rtype"]));
2 alex-w 92
 
11 alex-w 93
            $res =& $db->query("UPDATE repository SET repname='$repname', repdescribe='$repinfo', scheme_id='$repsche', rtype_id='$reptype' WHERE rep_id='$repID'");
2 alex-w 94
            $res =& $db->query("DELETE FROM sect2rep WHERE rep_id='$repID'");
95
            for ($i=0;$i<count($_POST["sect"]);$i++) {
96
                $res =& $db->query("INSERT INTO sect2rep SET sect_id='".$_POST["sect"][$i]."', rep_id='$repID'");
97
            }
98
	    break;
99
    case '9':
100
	    // Удаление репозитория
101
	    $repID	= abs(intval($_POST["rep"]));
102
 
103
	    $res =& $db->query("DELETE FROM repository WHERE rep_id='$repID'");
104
	    $res =& $db->query("DELETE FROM sect2rep WHERE rep_id='$repID'");
105
	    $res =& $db->query("DELETE FROM ver2rep WHERE rep_id='$repID'");
106
 
107
	    break;
108
    case '10':
109
	    // Создание секции
110
	    $sectname	= mysql_real_escape_string($_POST["sectName"]);
111
	    $sectinfo	= mysql_real_escape_string($_POST["sectInfo"]);
112
 
113
	    $req =& $db->query("INSERT INTO section SET sectname='$sectname', sectinfo='$sectinfo'");
114
	    $req =& $db->query("SELECT sect_id FROM section ORDER BY sect_id DESC LIMIT 1");
115
	    $req->fetchInto($sect, DB_FETCHMODE_ASSOC);
116
 
117
	    for($i=0;$i<count($_POST["dist"]);$i++) {
118
		$req =& $db->query("INSERT INTO sect2dist SET dist_id='".$_POST["dist"][$i]."', sect_id='".$sect["sect_id"]."'");
119
	    }
120
 
121
	    break;
122
    case '11':
123
	    // Правка секции
124
	    $sectID	= abs(intval($_POST["sectID"]));
125
	    $sectname	= mysql_real_escape_string($_POST["sectName"]);
126
	    $sectinfo	= mysql_real_escape_string($_POST["sectInfo"]);
127
 
128
	    $req =& $db->query("UPDATE section SET sectname='$sectname', sectinfo='$sectinfo' WHERE sect_id='$sectID'");
129
	    $req =& $db->query("DELETE FROM sect2dist WHERE sect_id='$sectID'");
130
 
131
	    for($i=0;$i<count($_POST["dist"]);$i++) {
132
		$req =& $db->query("INSERT INTO sect2dist SET dist_id='".$_POST["dist"][$i]."', sect_id='".$sectID."'");
133
	    }
134
 
135
	    break;
136
    case '12':
137
	    // Удаление секции
138
	    $sectID	= abs(intval($_POST["sectID"]));
139
 
140
	    $req =& $db->query("DELETE FROM section WHERE sect_id='$sectID'");
141
	    $req =& $db->query("DELETE FROM sect2dist WHERE sect_id='$sectID'");
142
	    $req =& $db->query("DELETE FROM sect2rep WHERE sect_id='$sectID'");
143
 
144
	    break;
5 alex-w 145
    case '13':
146
	    // Добавление новой схемы
147
	    $scheme	= mysql_real_escape_string($_POST["scheme"]);
148
 
149
	    $req =& $db->query("INSERT INTO scheme SET scheme='$scheme'");
150
 
151
	    break;
152
    case '14':
153
	    // Правка схемы
154
	    $schemeID	= abs(intval($_POST["schemeID"]));
155
	    $scheme	= mysql_real_escape_string($_POST["scheme"]);
156
 
157
	    $req =& $db->query("UPDATE scheme SET scheme='$scheme' WHERE scheme_id='$schemeID'");
158
 
159
	    break;
160
    case '15':
161
	    // Удаление схемы
162
	    $schemeID	= abs(intval($_POST["schemeID"]));
163
 
164
	    $req =& $db->query("DELETE FROM scheme WHERE scheme_id='$schemeID'");
165
 
166
	    break;
7 alex-w 167
    case '16':
168
	    // Добавление новой настройки Ant
169
	    $option	= mysql_real_escape_string($_POST["setoption"]);
170
	    $value	= mysql_real_escape_string($_POST["setvalue"]);
171
 
172
	    $req =& $db->query("INSERT INTO settings SET opt='$option', optvalue='$value'");
173
 
174
	    break;
175
    case '17':
176
	    // Правка настройки Ant
177
	    $optID	= abs(intval($_POST["optID"]));
178
	    $option	= mysql_real_escape_string($_POST["setoption"]);
179
	    $value	= mysql_real_escape_string($_POST["setvalue"]);
180
 
181
	    $req =& $db->query("UPDATE settings SET opt='$option', optvalue='$value' WHERE opt_id='$optID'");
182
 
183
	    break;
184
    case '18':
185
	    // Удаление настройки
186
	    $optID	= abs(intval($_POST["optID"]));
187
 
188
	    $req =& $db->query("DELETE FROM settings WHERE opt_id='$optID'");
189
 
190
	    break;
11 alex-w 191
    case '19':
192
	    // Добавление нового типа репозитория
193
	    $rtype	= mysql_real_escape_string($_POST["rtype"]);
194
 
195
	    $req =& $db->query("INSERT INTO rtype SET rtype='$rtype'");
196
 
197
	    break;
198
    case '20':
199
	    // Правка существующего типа репозитория
200
	    $rtypeID	= abs(intval($_POST["rtypeID"]));
201
	    $rtype	= mysql_real_escape_string($_POST["rtype"]);
202
 
203
	    $req =& $db->query("UPDATE rtype SET rtype='$rtype' WHERE rtype_id='$rtypeID'");
204
 
205
	    break;
16 alex-w 206
    case '21':
11 alex-w 207
	    // Удаление типа репозитория
208
	    $rtypeID	= abs(intval($_POST["rtypeID"]));
209
 
210
	    $req =& $db->query("DELETE FROM rtype WHERE rtype_id='$rtypeID'");
211
 
212
	    break;
16 alex-w 213
    case '22':
214
            // Смена пароля
215
            // $OID        = abs(intval($_POST["OID"]));
216
            $oldpass    = mysql_real_escape_string($_POST["oldPW"]);
217
            $newpass1   = mysql_real_escape_string($_POST["newPW1"]);
218
            $newpass2   = mysql_real_escape_string($_POST["newPW2"]);
219
 
220
            $errpwd = 0;
221
            $spass = md5($newpass1."ANT");
222
            $soldpass = md5($oldpass."ANT");
223
            if ($soldpass != $_COOKIE[$CookiePasswd]) {
224
                $go .= "?error=1";
225
                $errpwd = 1;
226
            }
227
            if ($newpass1 != $newpass2) {
228
                $go .= "?error=2";
229
                $errpwd = 2;
230
            }
231
 
232
            if ($errpwd==0) {
233
                // fix: Для многопользовательского варианта придется запрос переписать
234
                $req =& $db->query("UPDATE owner SET passwd='$spass' WHERE login='admin'");
235
            }
236
 
237
            break;
2 alex-w 238
}
239
 
240
header("Location: $go\n\n");
241
 
242
?>