Хранилища Subversion ant

Редакция

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