Хранилища Subversion ant

Редакция

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

Редакция Автор № строки Строка
2 alex-w 1
<?php
2
 
31 alex-w 3
/**
4
 * Project:     Ant: sources.list generator
5
 * File:        process.php
6
 *
60 alex-w 7
 * This application is free software; you can redistribute it and/or
31 alex-w 8
 * modify it under the terms of the GNU Lesser General Public
9
 * License as published by the Free Software Foundation; either
10
 * version 2.1 of the License, or (at your option) any later version.
11
 *
60 alex-w 12
 * This application is distributed in the hope that it will be useful,
31 alex-w 13
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15
 * Lesser General Public License for more details.
16
 *
17
 * You should have received a copy of the GNU Lesser General Public
18
 * License along with this library; if not, write to the Free Software
19
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
20
 *
21
 */
22
 
23
 
2 alex-w 24
include "./sign-valid.php";
25
 
26
$mode = abs(intval($_POST["mode"]));
27
 
28
$go = "./admin.php";
29
 
30
switch ($mode) {
31
    case '0':
32
	    break;
33
    case '1':
34
	    // Добавление нового дистрибутива
35
	    $distname = mysql_real_escape_string($_POST["distName"]);
61 alex-w 36
	    $distua   = mysql_real_escape_string($_POST["distUA"]);
2 alex-w 37
	    $disttype = abs(intval($_POST["distType"]));
38
 
61 alex-w 39
	    $res =& $db->query("INSERT INTO distribution SET distname='$distname', distua='$distua', disttype='$disttype'");
2 alex-w 40
 
41
	    break;
42
    case '2':
43
	    // Правка существующего дистрибутива
44
	    $distname = mysql_real_escape_string($_POST["distName"]);
61 alex-w 45
	    $distua   = mysql_real_escape_string($_POST["distUA"]);
2 alex-w 46
	    $disttype = abs(intval($_POST["distType"]));
47
	    $distID = abs(intval($_POST["distID"]));
48
 
61 alex-w 49
	    $res =& $db->query("UPDATE distribution SET distname='$distname', distua='$distua', disttype='$disttype' WHERE dist_id='$distID'");
2 alex-w 50
 
51
	    break;
52
    case '3':
53
	    // Удаление существующего дистрибутива
54
	    $distID = abs(intval($_POST["distID"]));
55
 
56
	    $res =& $db->query("DELETE FROM distribution WHERE dist_id='$distID'");
57
	    $res =& $db->query("DELETE FROM sect2dist WHERE dist_id='$distID'");
58
 
59
	    break;
60
    case '4':
61
	    // Добавление новой версии дистрибутива
62
	    $versname = mysql_real_escape_string($_POST["versNam"]);
63
	    $versnumb = mysql_real_escape_string($_POST["versNum"]);
64
	    $verscode = mysql_real_escape_string($_POST["versCN"]);
65
	    $distname = abs(intval($_POST["distName"]));
66
 
67
	    $res =& $db->query("INSERT INTO version SET dist_id='$distname', vname='$versname', version='$versnumb', vcodename='$verscode'");
68
 
69
	    break;
70
    case '5':
71
	    // Правка имеющейся версии дистрибутива
72
	    $versname = mysql_real_escape_string($_POST["versNam"]);
73
	    $versnumb = mysql_real_escape_string($_POST["versNum"]);
74
	    $verscode = mysql_real_escape_string($_POST["versCN"]);
75
	    $distname = abs(intval($_POST["distName"]));
76
	    $versID   = abs(intval($_POST["versID"]));
77
 
78
	    $res =& $db->query("UPDATE version SET dist_id='$distname', vname='$versname', version='$versnumb', vcodename='$verscode' WHERE version_id='$versID'");
79
 
80
	    break;
81
    case '6':
82
	    // Удаление существующей версии дистрибутива
83
	    $versID = abs(intval($_POST["versID"]));
84
 
85
	    $res =& $db->query("DELETE FROM version WHERE version_id='$versID'");
86
	    $res =& $db->query("DELETE FROM ver2rep WHERE ver_id='$versID'");
87
 
88
	    break;
89
    case '7':
90
            // Добавление нового репозитория
91
            $versID  = abs(intval($_POST["vers"]));
92
            $repname = mysql_real_escape_string($_POST["repName"]);
93
            $repinfo = mysql_real_escape_string($_POST["repInfo"]);
8 alex-w 94
            $repsche = abs(intval($_POST["scheme"]));
11 alex-w 95
	    $reptype = abs(intval($_POST["rtype"]));
2 alex-w 96
 
11 alex-w 97
            $res =& $db->query("INSERT INTO repository SET repname='$repname', repdescribe='$repinfo', scheme_id='$repsche', rtype_id='$reptype'");
2 alex-w 98
            $res =& $db->query("SELECT rep_id FROM repository ORDER BY rep_id DESC LIMIT 1");
99
            $res->fetchInto($rep, DB_FETCHMODE_ASSOC);
100
            $rep_id = $rep["rep_id"];
101
 
102
            $res =& $db->query("INSERT INTO ver2rep SET ver_id='$versID', rep_id='$rep_id'");
103
 
104
            for ($i=0;$i<count($_POST["sect"]);$i++) {
105
                $res =& $db->query("INSERT INTO sect2rep SET sect_id='".$_POST["sect"][$i]."', rep_id='$rep_id'");
106
            }
107
            break;
108
    case '8':
109
	    // Правка репозитория
110
	    $repID	= abs(intval($_POST["rep"]));
111
	    $repname	= mysql_real_escape_string($_POST["repName"]);
112
            $repinfo = mysql_real_escape_string($_POST["repInfo"]);
8 alex-w 113
            $repsche = abs(intval($_POST["scheme"]));
11 alex-w 114
	    $reptype = abs(intval($_POST["rtype"]));
2 alex-w 115
 
11 alex-w 116
            $res =& $db->query("UPDATE repository SET repname='$repname', repdescribe='$repinfo', scheme_id='$repsche', rtype_id='$reptype' WHERE rep_id='$repID'");
2 alex-w 117
            $res =& $db->query("DELETE FROM sect2rep WHERE rep_id='$repID'");
118
            for ($i=0;$i<count($_POST["sect"]);$i++) {
119
                $res =& $db->query("INSERT INTO sect2rep SET sect_id='".$_POST["sect"][$i]."', rep_id='$repID'");
120
            }
121
	    break;
122
    case '9':
123
	    // Удаление репозитория
124
	    $repID	= abs(intval($_POST["rep"]));
125
 
126
	    $res =& $db->query("DELETE FROM repository WHERE rep_id='$repID'");
127
	    $res =& $db->query("DELETE FROM sect2rep WHERE rep_id='$repID'");
128
	    $res =& $db->query("DELETE FROM ver2rep WHERE rep_id='$repID'");
129
 
130
	    break;
131
    case '10':
132
	    // Создание секции
133
	    $sectname	= mysql_real_escape_string($_POST["sectName"]);
134
	    $sectinfo	= mysql_real_escape_string($_POST["sectInfo"]);
135
 
136
	    $req =& $db->query("INSERT INTO section SET sectname='$sectname', sectinfo='$sectinfo'");
137
	    $req =& $db->query("SELECT sect_id FROM section ORDER BY sect_id DESC LIMIT 1");
138
	    $req->fetchInto($sect, DB_FETCHMODE_ASSOC);
139
 
140
	    for($i=0;$i<count($_POST["dist"]);$i++) {
141
		$req =& $db->query("INSERT INTO sect2dist SET dist_id='".$_POST["dist"][$i]."', sect_id='".$sect["sect_id"]."'");
142
	    }
143
 
144
	    break;
145
    case '11':
146
	    // Правка секции
147
	    $sectID	= abs(intval($_POST["sectID"]));
148
	    $sectname	= mysql_real_escape_string($_POST["sectName"]);
149
	    $sectinfo	= mysql_real_escape_string($_POST["sectInfo"]);
150
 
151
	    $req =& $db->query("UPDATE section SET sectname='$sectname', sectinfo='$sectinfo' WHERE sect_id='$sectID'");
152
	    $req =& $db->query("DELETE FROM sect2dist WHERE sect_id='$sectID'");
153
 
154
	    for($i=0;$i<count($_POST["dist"]);$i++) {
155
		$req =& $db->query("INSERT INTO sect2dist SET dist_id='".$_POST["dist"][$i]."', sect_id='".$sectID."'");
156
	    }
157
 
158
	    break;
159
    case '12':
160
	    // Удаление секции
161
	    $sectID	= abs(intval($_POST["sectID"]));
162
 
163
	    $req =& $db->query("DELETE FROM section WHERE sect_id='$sectID'");
164
	    $req =& $db->query("DELETE FROM sect2dist WHERE sect_id='$sectID'");
165
	    $req =& $db->query("DELETE FROM sect2rep WHERE sect_id='$sectID'");
166
 
167
	    break;
5 alex-w 168
    case '13':
169
	    // Добавление новой схемы
170
	    $scheme	= mysql_real_escape_string($_POST["scheme"]);
171
 
172
	    $req =& $db->query("INSERT INTO scheme SET scheme='$scheme'");
173
 
174
	    break;
175
    case '14':
176
	    // Правка схемы
177
	    $schemeID	= abs(intval($_POST["schemeID"]));
178
	    $scheme	= mysql_real_escape_string($_POST["scheme"]);
179
 
180
	    $req =& $db->query("UPDATE scheme SET scheme='$scheme' WHERE scheme_id='$schemeID'");
181
 
182
	    break;
183
    case '15':
184
	    // Удаление схемы
185
	    $schemeID	= abs(intval($_POST["schemeID"]));
186
 
187
	    $req =& $db->query("DELETE FROM scheme WHERE scheme_id='$schemeID'");
188
 
189
	    break;
7 alex-w 190
    case '16':
191
	    // Добавление новой настройки Ant
192
	    $option	= mysql_real_escape_string($_POST["setoption"]);
193
	    $value	= mysql_real_escape_string($_POST["setvalue"]);
194
 
195
	    $req =& $db->query("INSERT INTO settings SET opt='$option', optvalue='$value'");
196
 
197
	    break;
198
    case '17':
199
	    // Правка настройки Ant
200
	    $optID	= abs(intval($_POST["optID"]));
201
	    $option	= mysql_real_escape_string($_POST["setoption"]);
202
	    $value	= mysql_real_escape_string($_POST["setvalue"]);
203
 
204
	    $req =& $db->query("UPDATE settings SET opt='$option', optvalue='$value' WHERE opt_id='$optID'");
205
 
206
	    break;
207
    case '18':
208
	    // Удаление настройки
209
	    $optID	= abs(intval($_POST["optID"]));
210
 
211
	    $req =& $db->query("DELETE FROM settings WHERE opt_id='$optID'");
212
 
213
	    break;
11 alex-w 214
    case '19':
215
	    // Добавление нового типа репозитория
216
	    $rtype	= mysql_real_escape_string($_POST["rtype"]);
217
 
218
	    $req =& $db->query("INSERT INTO rtype SET rtype='$rtype'");
219
 
220
	    break;
221
    case '20':
222
	    // Правка существующего типа репозитория
223
	    $rtypeID	= abs(intval($_POST["rtypeID"]));
224
	    $rtype	= mysql_real_escape_string($_POST["rtype"]);
225
 
226
	    $req =& $db->query("UPDATE rtype SET rtype='$rtype' WHERE rtype_id='$rtypeID'");
227
 
228
	    break;
16 alex-w 229
    case '21':
11 alex-w 230
	    // Удаление типа репозитория
231
	    $rtypeID	= abs(intval($_POST["rtypeID"]));
232
 
233
	    $req =& $db->query("DELETE FROM rtype WHERE rtype_id='$rtypeID'");
234
 
235
	    break;
16 alex-w 236
    case '22':
237
            // Смена пароля
238
            // $OID        = abs(intval($_POST["OID"]));
239
            $oldpass    = mysql_real_escape_string($_POST["oldPW"]);
240
            $newpass1   = mysql_real_escape_string($_POST["newPW1"]);
241
            $newpass2   = mysql_real_escape_string($_POST["newPW2"]);
242
 
243
            $errpwd = 0;
244
            $spass = md5($newpass1."ANT");
245
            $soldpass = md5($oldpass."ANT");
246
            if ($soldpass != $_COOKIE[$CookiePasswd]) {
247
                $go .= "?error=1";
248
                $errpwd = 1;
249
            }
250
            if ($newpass1 != $newpass2) {
251
                $go .= "?error=2";
252
                $errpwd = 2;
253
            }
254
 
255
            if ($errpwd==0) {
256
                // fix: Для многопользовательского варианта придется запрос переписать
257
                $req =& $db->query("UPDATE owner SET passwd='$spass' WHERE login='admin'");
258
            }
259
 
260
            break;
2 alex-w 261
}
262
 
263
header("Location: $go\n\n");
264
 
60 alex-w 265
?>