Хранилища Subversion ant

Редакция

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

Редакция 183 Редакция 185
1
<?php
1
<?php
2
2
3
/**
3
/**
4
 * Project:     Ant: sources.list generator
4
 * Project:     Ant: sources.list generator
5
 * File:        process.php
5
 * File:        process.php
6
 *
6
 *
7
 * This application is free software; you can redistribute it and/or
7
 * This application is free software; you can redistribute it and/or
8
 * modify it under the terms of the GNU Lesser General Public
8
 * modify it under the terms of the GNU Lesser General Public
9
 * License as published by the Free Software Foundation; either
9
 * License as published by the Free Software Foundation; either
10
 * version 2.1 of the License, or (at your option) any later version.
10
 * version 2.1 of the License, or (at your option) any later version.
11
 *
11
 *
12
 * This application is distributed in the hope that it will be useful,
12
 * This application is distributed in the hope that it will be useful,
13
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15
 * Lesser General Public License for more details.
15
 * Lesser General Public License for more details.
16
 *
16
 *
17
 * You should have received a copy of the GNU Lesser General Public
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
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
19
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
20
 *
20
 *
21
 */
21
 */
22
22
23
23
24
require_once dirname(__FILE__)."/sign-valid.php";
24
require_once dirname(__FILE__)."/sign-valid.php";
25
25
26
$mode = abs(intval($_POST["mode"]));
26
$mode = abs(intval($_POST["mode"]));
27
$act = abs(intval($_POST["act"]));
27
$act = abs(intval($_POST["act"]));
28
28
29
$go = "./admin.php";
29
$go = "./admin.php";
30
30
31
switch ($mode) {
31
switch ($mode) {
32
    case '0':
32
    case '0':
33
    break;
33
    break;
34
    case '1':
34
    case '1':
35
        switch ($act) {
35
        switch ($act) {
36
            case '0':
36
            case '0':
37
            break;
37
            break;
38
            case '1':
38
            case '1':
39
                // Добавление нового дистрибутива
39
                // Добавление нового дистрибутива
40
                $distname = mysql_real_escape_string($_POST["distName"]);
40
                $distname = mysql_real_escape_string($_POST["distName"]);
41
                $distua   = mysql_real_escape_string($_POST["distUA"]);
41
                $distua   = mysql_real_escape_string($_POST["distUA"]);
42
                $disttype = abs(intval($_POST["distType"]));
42
                $disttype = abs(intval($_POST["distType"]));
43
43
44
                $distlogo = 0;
44
                $distlogo = 0;
45
                if ($_FILES["distLOGO"]["type"]!=0) {
45
                if ($_FILES["distLOGO"]["type"]!=0) {
46
                    $folder   = dirname(__FILE__)."/img/logo/".stripslashes($distua)."-orig.png";
46
                    $folder   = dirname(__FILE__)."/img/logo/".stripslashes($distua)."-orig.png";
47
                    $folderN  = dirname(__FILE__)."/img/logo/".stripslashes($distua).".png";
47
                    $folderN  = dirname(__FILE__)."/img/logo/".stripslashes($distua).".png";
48
                    $folderEM = dirname(__FILE__)."/img/logo/".stripslashes($distua)."-em.png";
48
                    $folderEM = dirname(__FILE__)."/img/logo/".stripslashes($distua)."-em.png";
49
                    if (move_uploaded_file($_FILES["distLOGO"]["tmp_name"],$folder)) {
49
                    if (move_uploaded_file($_FILES["distLOGO"]["tmp_name"],$folder)) {
50
                        chmod($folder, 0644);
50
                        chmod($folder, 0644);
51
                        list($width, $height) = GetImageSize($folder);
51
                        list($width, $height) = GetImageSize($folder);
52
                        $percent = 32/$height;
52
                        $percent = 32/$height;
53
                        $newwidth = $width * $percent;
53
                        $newwidth = $width * $percent;
54
                        $newheight = $height * $percent;
54
                        $newheight = $height * $percent;
55
                       
55
                       
56
                        $output = ImageCreateTrueColor($newwidth, $newheight);
56
                        $output = ImageCreateTrueColor($newwidth, $newheight);
57
                        $source = ImageCreateFromPNG($folder);
57
                        $source = ImageCreateFromPNG($folder);
58
58
59
                        ImageCopyResampled($output, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
59
                        ImageCopyResampled($output, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
60
                        ImagePNG($output, $folderEM);
60
                        ImagePNG($output, $folderEM);
61
61
62
                        $percent = 15/$height;
62
                        $percent = 15/$height;
63
                        $newwidth = $width * $percent;
63
                        $newwidth = $width * $percent;
64
                        $newheight = $height * $percent;
64
                        $newheight = $height * $percent;
65
65
66
                        $output = ImageCreateTrueColor($newwidth, $newheight);
66
                        $output = ImageCreateTrueColor($newwidth, $newheight);
67
67
68
                        ImageCopyResized($output, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
68
                        ImageCopyResized($output, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
69
                        ImagePNG($output, $folderN);
69
                        ImagePNG($output, $folderN);
70
70
71
                        unlink($folder);
71
                        unlink($folder);
72
                        $distlogo = 1;
72
                        $distlogo = 1;
73
                    }
73
                    }
74
                }
74
                }
75
75
76
                $res =& $db->query("INSERT INTO distribution SET distname='$distname', distua='$distua', disttype='$disttype', distlogo='$distlogo'");
76
                $res =& $db->query("INSERT INTO distribution SET distname='$distname', distua='$distua', disttype='$disttype', distlogo='$distlogo'");
77
77
78
                // ChangeLog recording
78
                // ChangeLog recording
79
                $res =& $db->query("SELECT * FROM dtype WHERE type_id='$disttype'");
79
                $res =& $db->query("SELECT * FROM dtype WHERE type_id='$disttype'");
80
                $res->fetchInto($log, DB_FETCHMODE_ASSOC);
80
                $res->fetchInto($log, DB_FETCHMODE_ASSOC);
81
                $title = "Добавлен новый дистрибутив";
81
                $title = "Добавлен новый дистрибутив";
82
                $dinfo = "В Ant добавлена поддержка основанного на ".stripslashes($log["type"])."-пакетах дистрибутива ".$distname.".";
82
                $dinfo = "В Ant добавлена поддержка основанного на ".stripslashes($log["type"])."-пакетах дистрибутива ".$distname.".";
83
                $res =& $db->query("INSERT INTO changelog SET log_record=NOW(), log_title='$title', log_desc='$dinfo'");
83
                $res =& $db->query("INSERT INTO changelog SET log_record=NOW(), log_title='$title', log_desc='$dinfo'");
84
84
85
                $go .= "?mode=".$mode."&action=0";
85
                $go .= "?mode=".$mode."&action=0";
86
86
87
                break;
87
                break;
88
            case '2':
88
            case '2':
89
                // Правка существующего дистрибутива
89
                // Правка существующего дистрибутива
90
                $distname = mysql_real_escape_string($_POST["distName"]);
90
                $distname = mysql_real_escape_string($_POST["distName"]);
91
                $distua   = mysql_real_escape_string($_POST["distUA"]);
91
                $distua   = mysql_real_escape_string($_POST["distUA"]);
92
                $disttype = abs(intval($_POST["distType"]));
92
                $disttype = abs(intval($_POST["distType"]));
93
                $distID = abs(intval($_POST["distID"]));
93
                $distID = abs(intval($_POST["distID"]));
94
94
95
                if ($_FILES["distLOGO"]["type"]!='') {
95
                if ($_FILES["distLOGO"]["type"]!='') {
96
                    $folder   = dirname(__FILE__)."/img/logo/".$distua."-orig.png";
96
                    $folder   = dirname(__FILE__)."/img/logo/".$distua."-orig.png";
97
                    $folderN  = dirname(__FILE__)."/img/logo/".$distua.".png";
97
                    $folderN  = dirname(__FILE__)."/img/logo/".$distua.".png";
98
                    $folderEM = dirname(__FILE__)."/img/logo/".$distua."-em.png";
98
                    $folderEM = dirname(__FILE__)."/img/logo/".$distua."-em.png";
99
                    if (move_uploaded_file($_FILES["distLOGO"]["tmp_name"],$folder)) {
99
                    if (move_uploaded_file($_FILES["distLOGO"]["tmp_name"],$folder)) {
100
                        chmod ($folder, 0644);
100
                        chmod ($folder, 0644);
101
                        list($width, $height) = GetImageSize($folder);
101
                        list($width, $height) = GetImageSize($folder);
102
                        $percent = 32/$height;
102
                        $percent = 32/$height;
103
                        $newwidth = $width * $percent;
103
                        $newwidth = $width * $percent;
104
                        $newheight = $height * $percent;
104
                        $newheight = $height * $percent;
105
105
106
                        $output = ImageCreateTrueColor($newwidth, $newheight);
106
                        $output = ImageCreateTrueColor($newwidth, $newheight);
107
                        $black  = ImageColorAllocate($output, 0, 0, 0);
107
                        $black  = ImageColorAllocate($output, 0, 0, 0);
108
                        $source = ImageCreateFromPNG($folder);
108
                        $source = ImageCreateFromPNG($folder);
109
109
110
                        ImageCopyResampled($output, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
110
                        ImageCopyResampled($output, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
111
                        ImageColorTransparent($output, $black);
111
                        ImageColorTransparent($output, $black);
112
                        ImagePNG($output, $folderEM);
112
                        ImagePNG($output, $folderEM);
113
113
114
                        $percent = 15/$height;
114
                        $percent = 15/$height;
115
                        $newwidth = $width * $percent;
115
                        $newwidth = $width * $percent;
116
                        $newheight = $height * $percent;
116
                        $newheight = $height * $percent;
117
117
118
                        $output = ImageCreateTrueColor($newwidth, $newheight);
118
                        $output = ImageCreateTrueColor($newwidth, $newheight);
119
                        $black  = ImageColorAllocate($output, 0, 0, 0);
119
                        $black  = ImageColorAllocate($output, 0, 0, 0);
120
120
121
                        ImageCopyResized($output, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
121
                        ImageCopyResized($output, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
122
                        ImageColorTransparent($output, $black);
122
                        ImageColorTransparent($output, $black);
123
                        ImagePNG($output, $folderN);
123
                        ImagePNG($output, $folderN);
124
124
125
                        unlink($folder);
125
                        unlink($folder);
126
126
127
                        $res =& $db->query("UPDATE distribution SET distlogo='1' WHERE dist_id='$distID'");
127
                        $res =& $db->query("UPDATE distribution SET distlogo='1' WHERE dist_id='$distID'");
128
128
129
                    }
129
                    }
130
                }
130
                }
131
131
132
                $res =& $db->query("UPDATE distribution SET distname='$distname', distua='$distua', disttype='$disttype' WHERE dist_id='$distID'");
132
                $res =& $db->query("UPDATE distribution SET distname='$distname', distua='$distua', disttype='$disttype' WHERE dist_id='$distID'");
133
133
134
                $go .= "?mode=".$mode."&action=0";
134
                $go .= "?mode=".$mode."&action=0";
135
135
136
            break;
136
            break;
137
            case '3':
137
            case '3':
138
                // Удаление существующего дистрибутива
138
                // Удаление существующего дистрибутива
139
                $distID = abs(intval($_POST["distID"]));
139
                $distID = abs(intval($_POST["distID"]));
140
                $distUA = $_POST["distUA"];
140
                $distUA = $_POST["distUA"];
141
141
142
                $folder1 = dirname(__FILE__)."/img/logo/".$distUA."-em.png";
142
                $folder1 = dirname(__FILE__)."/img/logo/".$distUA."-em.png";
143
                $folder2 = dirname(__FILE__)."/img/logo/".$distUA.".png";
143
                $folder2 = dirname(__FILE__)."/img/logo/".$distUA.".png";
144
144
145
                if (file_exists($folder1)) { unlink($folder1); }
145
                if (file_exists($folder1)) { unlink($folder1); }
146
                if (file_exists($folder2)) { unlink($folder2); }
146
                if (file_exists($folder2)) { unlink($folder2); }
147
147
148
                $res =& $db->query("SELECT * FROM distribution d JOIN dtype t ON d.disttype=t.type_id WHERE d.dist_id='$distID'");
148
                $res =& $db->query("SELECT * FROM distribution d JOIN dtype t ON d.disttype=t.type_id WHERE d.dist_id='$distID'");
149
                $res->fetchInto($log, DB_FETCHMODE_ASSOC);
149
                $res->fetchInto($log, DB_FETCHMODE_ASSOC);
150
150
151
                $res =& $db->query("DELETE FROM distribution WHERE dist_id='$distID'");
151
                $res =& $db->query("DELETE FROM distribution WHERE dist_id='$distID'");
152
                $res =& $db->query("DELETE FROM sect2dist WHERE dist_id='$distID'");       
152
                $res =& $db->query("DELETE FROM sect2dist WHERE dist_id='$distID'");       
153
                $res =& $db->query("DELETE FROM version WHERE dist_id='$distID'");
153
                $res =& $db->query("DELETE FROM version WHERE dist_id='$distID'");
154
154
155
                // ChangeLog recording
155
                // ChangeLog recording
156
                $title = "Удаление поддержки дистрибутива";
156
                $title = "Удаление поддержки дистрибутива";
157
                $dinfo = "Из Ant удалена поддержка основанного на ".stripslashes($log["type"])."-пакетах дистрибутива ".stripslashes($log["distname"]).".";
157
                $dinfo = "Из Ant удалена поддержка основанного на ".stripslashes($log["type"])."-пакетах дистрибутива ".stripslashes($log["distname"]).".";
158
                $res =& $db->query("INSERT INTO changelog SET log_record=NOW(), log_title='$title', log_desc='$dinfo'");
158
                $res =& $db->query("INSERT INTO changelog SET log_record=NOW(), log_title='$title', log_desc='$dinfo'");
159
159
160
                $go .= "?mode=".$mode."&action=0";
160
                $go .= "?mode=".$mode."&action=0";
161
161
162
            break;
162
            break;
163
        }
163
        }
164
    break;
164
    break;
165
    case '2':
165
    case '2':
166
        switch ($act) {
166
        switch ($act) {
167
            case '0':
167
            case '0':
168
            break;
168
            break;
169
            case '1':
169
            case '1':
170
                // Добавление новой версии дистрибутива
170
                // Добавление новой версии дистрибутива
171
                $versname = mysql_real_escape_string($_POST["versNam"]);
171
                $versname = mysql_real_escape_string($_POST["versNam"]);
172
                $versnumb = mysql_real_escape_string($_POST["versNum"]);
172
                $versnumb = mysql_real_escape_string($_POST["versNum"]);
173
                $verscode = mysql_real_escape_string($_POST["versCN"]);
173
                $verscode = mysql_real_escape_string($_POST["versCN"]);
174
                $distname = abs(intval($_POST["distName"]));
174
                $distname = abs(intval($_POST["distName"]));
175
175
176
                $res =& $db->query("INSERT INTO version SET dist_id='$distname', vname='$versname', version='$versnumb', vcodename='$verscode'");
176
                $res =& $db->query("INSERT INTO version SET dist_id='$distname', vname='$versname', version='$versnumb', vcodename='$verscode'");
177
177
178
                // ChangeLog recording
178
                // ChangeLog recording
179
                $res =& $db->query("SELECT * FROM distribution WHERE dist_id='$distname'");
179
                $res =& $db->query("SELECT * FROM distribution WHERE dist_id='$distname'");
180
                $res->fetchInto($log, DB_FETCHMODE_ASSOC);
180
                $res->fetchInto($log, DB_FETCHMODE_ASSOC);
181
                $title = "Добавлена новая версия ".$log["distname"];
181
                $title = "Добавлена новая версия ".$log["distname"];
182
                $dinfo = "В Ant добавлена поддержка новой версии дистрибутива ".$log["distname"]." &ndash; ".$versnumb;
182
                $dinfo = "В Ant добавлена поддержка новой версии дистрибутива ".$log["distname"]." &ndash; ".$versnumb;
183
                if ($versname!="") {
183
                if ($versname!="") {
184
                    $dinfo .= " с кодовым названием &#8220;".$versname."&#8221;.";
184
                    $dinfo .= " с кодовым названием &#8220;".$versname."&#8221;.";
185
                } else {
185
                } else {
186
                    $dinfo .= ".";
186
                    $dinfo .= ".";
187
                }
187
                }
188
                $res =& $db->query("INSERT INTO changelog SET log_record=NOW(), log_title='$title', log_desc='$dinfo'");
188
                $res =& $db->query("INSERT INTO changelog SET log_record=NOW(), log_title='$title', log_desc='$dinfo'");
189
189
190
                $go .= "?mode=".$mode."&action=0";
190
                $go .= "?mode=".$mode."&action=0";
191
191
192
            break;
192
            break;
193
            case '2':
193
            case '2':
194
                // Правка имеющейся версии дистрибутива
194
                // Правка имеющейся версии дистрибутива
195
                $versname = mysql_real_escape_string($_POST["versNam"]);
195
                $versname = mysql_real_escape_string($_POST["versNam"]);
196
                $versnumb = mysql_real_escape_string($_POST["versNum"]);
196
                $versnumb = mysql_real_escape_string($_POST["versNum"]);
197
                $verscode = mysql_real_escape_string($_POST["versCN"]);
197
                $verscode = mysql_real_escape_string($_POST["versCN"]);
198
                $distname = abs(intval($_POST["distName"]));
198
                $distname = abs(intval($_POST["distName"]));
199
                $versID   = abs(intval($_POST["versID"]));
199
                $versID   = abs(intval($_POST["versID"]));
200
200
201
                $res =& $db->query("UPDATE version SET dist_id='$distname', vname='$versname', version='$versnumb', vcodename='$verscode' WHERE version_id='$versID'");
201
                $res =& $db->query("UPDATE version SET dist_id='$distname', vname='$versname', version='$versnumb', vcodename='$verscode' WHERE version_id='$versID'");
202
202
203
                $go .= "?mode=".$mode."&action=0";
203
                $go .= "?mode=".$mode."&action=0";
204
204
205
            break;
205
            break;
206
            case '3':
206
            case '3':
207
                // Удаление существующей версии дистрибутива
207
                // Удаление существующей версии дистрибутива
208
                $versID = abs(intval($_POST["versID"]));
208
                $versID = abs(intval($_POST["versID"]));
209
209
210
                $res =& $db->query("SELECT * FROM version v JOIN distribution d ON v.dist_id=d.dist_id WHERE v.version_id='$versID'");
210
                $res =& $db->query("SELECT * FROM version v JOIN distribution d ON v.dist_id=d.dist_id WHERE v.version_id='$versID'");
211
                $res->fetchInto($log, DB_FETCHMODE_ASSOC);
211
                $res->fetchInto($log, DB_FETCHMODE_ASSOC);
212
212
213
                $res =& $db->query("DELETE FROM version WHERE version_id='$versID'");
213
                $res =& $db->query("DELETE FROM version WHERE version_id='$versID'");
214
                $res =& $db->query("DELETE FROM ver2rep WHERE ver_id='$versID'");
214
                $res =& $db->query("DELETE FROM ver2rep WHERE ver_id='$versID'");
215
215
216
                // ChangeLog recording
216
                // ChangeLog recording
217
                $title = "Удалена поддержка ".$log["distname"]." ".$log["version"];
217
                $title = "Удалена поддержка ".$log["distname"]." ".$log["version"];
218
                $dinfo = "Из Ant удалена поддержка версии ".$log["version"]."{CNAME} дистрибутива ".$log["distname"].".";
218
                $dinfo = "Из Ant удалена поддержка версии ".$log["version"]."{CNAME} дистрибутива ".$log["distname"].".";
219
                if ($log["vname"]!="") {
219
                if ($log["vname"]!="") {
220
                $dinfo = str_replace("{CNAME}","(&#8220;".$log["vname"]."&#8221;)",$dinfo);
220
                $dinfo = str_replace("{CNAME}","(&#8220;".$log["vname"]."&#8221;)",$dinfo);
221
                } else {
221
                } else {
222
                    $dinfo = str_replace("{CNAME}","",$dinfo);
222
                    $dinfo = str_replace("{CNAME}","",$dinfo);
223
                }
223
                }
224
                $res =& $db->query("INSERT INTO changelog SET log_record=NOW(), log_title='$title', log_desc='$dinfo'");
224
                $res =& $db->query("INSERT INTO changelog SET log_record=NOW(), log_title='$title', log_desc='$dinfo'");
225
225
226
                $go .= "?mode=".$mode."&action=0";
226
                $go .= "?mode=".$mode."&action=0";
227
227
228
            break;
228
            break;
229
        }
229
        }
230
    case '3':
230
    case '3':
231
        switch ($act) {
231
        switch ($act) {
232
            case '0':
232
            case '0':
233
            break;
233
            break;
234
            case '1':
234
            case '1':
235
                // Добавление нового источника
235
                // Добавление нового источника
236
                $origin = mysql_real_escape_string($_POST["origin"]);
236
                $origin = mysql_real_escape_string($_POST["origin"]);
237
                $res =& $db->query("INSERT INTO origin SET origin='$origin'");
237
                $res =& $db->query("INSERT INTO origin SET origin='$origin'");
238
                $go .= "?mode=".$mode."&action=0";
238
                $go .= "?mode=".$mode."&action=0";
239
            break;
239
            break;
240
            case '2':
240
            case '2':
241
                // Правка существующего источника
241
                // Правка существующего источника
242
                $origin = mysql_real_escape_string($_POST["origin"]);
242
                $origin = mysql_real_escape_string($_POST["origin"]);
243
                $id = abs(intval($_POST["originID"]));
243
                $id = abs(intval($_POST["originID"]));
244
                $res =& $db->query("UPDATE origin SET origin='$origin' WHERE orig_id='$id'");
244
                $res =& $db->query("UPDATE origin SET origin='$origin' WHERE orig_id='$id'");
245
                $go .= "?mode=$mode&action=0";
245
                $go .= "?mode=$mode&action=0";
246
            break;
246
            break;
247
            case '3':
247
            case '3':
248
                // Удаление существующего источника
248
                // Удаление существующего источника
249
                $id = abs(intval($_POST["originID"]));
249
                $id = abs(intval($_POST["originID"]));
250
                $res =& $db->query("DELETE FROM rep2orig WHERE orig_id='$id'");
250
                $res =& $db->query("DELETE FROM rep2orig WHERE orig_id='$id'");
251
                $res =& $db->query("DELETE FROM origin WHERE orig_id='$id'");
251
                $res =& $db->query("DELETE FROM origin WHERE orig_id='$id'");
252
                $go .= "?mode=".$mode."&action=0";
252
                $go .= "?mode=".$mode."&action=0";
253
            break;
253
            break;
254
        }
254
        }
255
    break;
255
    break;
256
    case '4':
256
    case '4':
257
        switch ($act) {
257
        switch ($act) {
258
            case '0':
258
            case '0':
259
            break;
259
            break;
260
            case '1':
260
            case '1':
261
            break;
-
 
262
            case '2':
-
 
263
                // Добавление нового репозитория
261
                // Добавление нового репозитория
264
                $versID  = abs(intval($_POST["vers"]));
262
                $versID  = abs(intval($_POST["vers"]));
265
                $repname = mysql_real_escape_string($_POST["repName"]);
263
                $repname = mysql_real_escape_string($_POST["repName"]);
266
                $repinfo = mysql_real_escape_string($_POST["repInfo"]);
264
                $repinfo = mysql_real_escape_string($_POST["repInfo"]);
267
                $repsche = abs(intval($_POST["scheme"]));
265
                $repsche = abs(intval($_POST["scheme"]));
268
                $reptype = abs(intval($_POST["rtype"]));
266
                $origin = abs(intval($_POST["orign"]));
269
                $reproot = abs(intval($_POST["rootFolder"]));
267
                $reproot = abs(intval($_POST["rootFolder"]));
270
268
271
                $res =& $db->query("INSERT INTO repository SET repname='$repname', repdescribe='$repinfo', scheme_id='$repsche', rtype_id='$reptype', root_id='$reproot'");
269
                $res =& $db->query("INSERT INTO repository SET repname='$repname', repdescribe='$repinfo', scheme_id='$repsche', orig_id='$origin', root_id='$reproot'");
272
                $res =& $db->query("SELECT rep_id FROM repository ORDER BY rep_id DESC LIMIT 1");
270
                $res =& $db->query("SELECT rep_id FROM repository ORDER BY rep_id DESC LIMIT 1");
273
                $res->fetchInto($rep, DB_FETCHMODE_ASSOC);
271
                $res->fetchInto($rep, DB_FETCHMODE_ASSOC);
274
                $rep_id = $rep["rep_id"];
272
                $rep_id = $rep["rep_id"];
275
273
276
                $res =& $db->query("INSERT INTO ver2rep SET ver_id='$versID', rep_id='$rep_id'");
274
                $res =& $db->query("INSERT INTO ver2rep SET ver_id='$versID', rep_id='$rep_id'");
277
275
278
                for ($i=0;$i<count($_POST["sect"]);$i++) {
276
                for ($i=0;$i<count($_POST["sect"]);$i++) {
279
                $res =& $db->query("INSERT INTO sect2rep SET sect_id='".$_POST["sect"][$i]."', rep_id='$rep_id'");
277
                $res =& $db->query("INSERT INTO sect2rep SET sect_id='".$_POST["sect"][$i]."', rep_id='$rep_id'");
280
                }
278
                }
281
279
282
                $go .= "?mode=".$mode."&action=0";
280
                $go .= "?mode=".$mode."&action=0";
283
281
284
            break;
282
            break;
285
            case '3':
283
            case '2':
286
                // Правка репозитория
284
                // Правка репозитория
287
                $repID = abs(intval($_POST["rep"]));
285
                $repID = abs(intval($_POST["rep"]));
288
                $repname = mysql_real_escape_string($_POST["repName"]);
286
                $repname = mysql_real_escape_string($_POST["repName"]);
289
                $repinfo = mysql_real_escape_string($_POST["repInfo"]);
287
                $repinfo = mysql_real_escape_string($_POST["repInfo"]);
290
                $repsche = abs(intval($_POST["scheme"]));
288
                $repsche = abs(intval($_POST["scheme"]));
291
                $reptype = abs(intval($_POST["rtype"]));
289
                $origin = abs(intval($_POST["origin"]));
292
                $reproot = abs(intval($_POST["rootFolder"]));
290
                $reproot = abs(intval($_POST["rootFolder"]));
293
291
294
                $res =& $db->query("UPDATE repository SET repname='$repname', repdescribe='$repinfo', scheme_id='$repsche', rtype_id='$reptype', root_id='$reproot' WHERE rep_id='$repID'");
292
                $res =& $db->query("UPDATE repository SET repname='$repname', repdescribe='$repinfo', scheme_id='$repsche', orig_id='$origin', root_id='$reproot' WHERE rep_id='$repID'");
295
                $res =& $db->query("DELETE FROM sect2rep WHERE rep_id='$repID'");
293
                $res =& $db->query("DELETE FROM sect2rep WHERE rep_id='$repID'");
296
                for ($i=0;$i<count($_POST["sect"]);$i++) {
294
                for ($i=0;$i<count($_POST["sect"]);$i++) {
297
                    $res =& $db->query("INSERT INTO sect2rep SET sect_id='".$_POST["sect"][$i]."', rep_id='$repID'");
295
                    $res =& $db->query("INSERT INTO sect2rep SET sect_id='".$_POST["sect"][$i]."', rep_id='$repID'");
298
                }
296
                }
299
297
300
                $go .= "?mode=".$mode."&action=0";
298
                $go .= "?mode=".$mode."&action=0";
301
299
302
            break;
300
            break;
303
            case '4':
301
            case '3':
304
                // Удаление репозитория
302
                // Удаление репозитория
305
                $repID = abs(intval($_POST["rep"]));
303
                $repID = abs(intval($_POST["rep"]));
306
304
307
                $res =& $db->query("DELETE FROM repository WHERE rep_id='$repID'");
305
                $res =& $db->query("DELETE FROM repository WHERE rep_id='$repID'");
308
                $res =& $db->query("DELETE FROM sect2rep WHERE rep_id='$repID'");
306
                $res =& $db->query("DELETE FROM sect2rep WHERE rep_id='$repID'");
309
                $res =& $db->query("DELETE FROM ver2rep WHERE rep_id='$repID'");
307
                $res =& $db->query("DELETE FROM ver2rep WHERE rep_id='$repID'");
310
308
311
                $go .= "?mode=".$mode."&action=0";
309
                $go .= "?mode=".$mode."&action=0";
312
310
313
            break;
311
            break;
314
        }
312
        }
315
    break;
313
    break;
316
    case '5':
314
    case '5':
317
        switch ($act) {
315
        switch ($act) {
318
            case '0':
316
            case '0':
319
            break;
317
            break;
320
            case '1':
318
            case '1':
321
                // Создание секции
319
                // Создание секции
322
                $sectname = mysql_real_escape_string($_POST["sectName"]);
320
                $sectname = mysql_real_escape_string($_POST["sectName"]);
323
                $sectinfo = mysql_real_escape_string($_POST["sectInfo"]);
321
                $sectinfo = mysql_real_escape_string($_POST["sectInfo"]);
324
322
325
                $req =& $db->query("INSERT INTO section SET sectname='$sectname', sectinfo='$sectinfo'");
323
                $req =& $db->query("INSERT INTO section SET sectname='$sectname', sectinfo='$sectinfo'");
326
                $req =& $db->query("SELECT sect_id FROM section ORDER BY sect_id DESC LIMIT 1");
324
                $req =& $db->query("SELECT sect_id FROM section ORDER BY sect_id DESC LIMIT 1");
327
                $req->fetchInto($sect, DB_FETCHMODE_ASSOC);
325
                $req->fetchInto($sect, DB_FETCHMODE_ASSOC);
328
326
329
                for($i=0;$i<count($_POST["dist"]);$i++) {
327
                for($i=0;$i<count($_POST["dist"]);$i++) {
330
                    $req =& $db->query("INSERT INTO sect2dist SET dist_id='".$_POST["dist"][$i]."', sect_id='".$sect["sect_id"]."'");
328
                    $req =& $db->query("INSERT INTO sect2dist SET dist_id='".$_POST["dist"][$i]."', sect_id='".$sect["sect_id"]."'");
331
                }
329
                }
332
330
333
                $go .= "?mode=".$mode."&act=0";
331
                $go .= "?mode=".$mode."&act=0";
334
332
335
            break;
333
            break;
336
            case '2':
334
            case '2':
337
                // Правка секции
335
                // Правка секции
338
                $sectID = abs(intval($_POST["sectID"]));
336
                $sectID = abs(intval($_POST["sectID"]));
339
                $sectname = mysql_real_escape_string($_POST["sectName"]);
337
                $sectname = mysql_real_escape_string($_POST["sectName"]);
340
                $sectinfo = mysql_real_escape_string($_POST["sectInfo"]);
338
                $sectinfo = mysql_real_escape_string($_POST["sectInfo"]);
341
339
342
                $req =& $db->query("UPDATE section SET sectname='$sectname', sectinfo='$sectinfo' WHERE sect_id='$sectID'");
340
                $req =& $db->query("UPDATE section SET sectname='$sectname', sectinfo='$sectinfo' WHERE sect_id='$sectID'");
343
                $req =& $db->query("DELETE FROM sect2dist WHERE sect_id='$sectID'");
341
                $req =& $db->query("DELETE FROM sect2dist WHERE sect_id='$sectID'");
344
342
345
                for($i=0;$i<count($_POST["dist"]);$i++) {
343
                for($i=0;$i<count($_POST["dist"]);$i++) {
346
                    $req =& $db->query("INSERT INTO sect2dist SET dist_id='".$_POST["dist"][$i]."', sect_id='".$sectID."'");
344
                    $req =& $db->query("INSERT INTO sect2dist SET dist_id='".$_POST["dist"][$i]."', sect_id='".$sectID."'");
347
                }
345
                }
348
346
349
                $go .= "?mode=".$mode."&action=0";
347
                $go .= "?mode=".$mode."&action=0";
350
348
351
            break;
349
            break;
352
            case '3':
350
            case '3':
353
                // Удаление секции
351
                // Удаление секции
354
                $sectID = abs(intval($_POST["sectID"]));
352
                $sectID = abs(intval($_POST["sectID"]));
355
353
356
                $req =& $db->query("DELETE FROM section WHERE sect_id='$sectID'");
354
                $req =& $db->query("DELETE FROM section WHERE sect_id='$sectID'");
357
                $req =& $db->query("DELETE FROM sect2dist WHERE sect_id='$sectID'");
355
                $req =& $db->query("DELETE FROM sect2dist WHERE sect_id='$sectID'");
358
                $req =& $db->query("DELETE FROM sect2rep WHERE sect_id='$sectID'");
356
                $req =& $db->query("DELETE FROM sect2rep WHERE sect_id='$sectID'");
359
357
360
                $go .= "?mode=".$mode."&action=0";
358
                $go .= "?mode=".$mode."&action=0";
361
359
362
            break;
360
            break;
363
        }
361
        }
364
    break;
362
    break;
365
    case '6':
363
    case '6':
366
        switch ($act) {
364
        switch ($act) {
367
            case '0':
365
            case '0':
368
            break;
366
            break;
369
            case '1':
367
            case '1':
370
                // Добавление новой схемы
368
                // Добавление новой схемы
371
                $scheme = mysql_real_escape_string($_POST["scheme"]);
369
                $scheme = mysql_real_escape_string($_POST["scheme"]);
372
                $req =& $db->query("INSERT INTO scheme SET scheme='$scheme'");
370
                $req =& $db->query("INSERT INTO scheme SET scheme='$scheme'");
373
                $go .= "?mode=".$mode."&act=0";
371
                $go .= "?mode=".$mode."&act=0";
374
            break;
372
            break;
375
            case '2':
373
            case '2':
376
                // Правка схемы
374
                // Правка схемы
377
                $schemeID = abs(intval($_POST["schemeID"]));
375
                $schemeID = abs(intval($_POST["schemeID"]));
378
                $scheme = mysql_real_escape_string($_POST["scheme"]);
376
                $scheme = mysql_real_escape_string($_POST["scheme"]);
379
                $req =& $db->query("UPDATE scheme SET scheme='$scheme' WHERE scheme_id='$schemeID'");
377
                $req =& $db->query("UPDATE scheme SET scheme='$scheme' WHERE scheme_id='$schemeID'");
380
                $go .= "?mode=".$mode."&act=0";
378
                $go .= "?mode=".$mode."&act=0";
381
            break;
379
            break;
382
            case '3':
380
            case '3':
383
                // Удаление схемы
381
                // Удаление схемы
384
                $schemeID = abs(intval($_POST["schemeID"]));
382
                $schemeID = abs(intval($_POST["schemeID"]));
385
                $req =& $db->query("DELETE FROM scheme WHERE scheme_id='$schemeID'");
383
                $req =& $db->query("DELETE FROM scheme WHERE scheme_id='$schemeID'");
386
                $go .= "?mode=".$mode."&act=0";
384
                $go .= "?mode=".$mode."&act=0";
387
            break;
385
            break;
388
        }
386
        }
389
    break;
387
    break;
390
    case '7':
388
    case '7':
391
        switch ($act) {
389
        switch ($act) {
392
            case '0':
390
            case '0':
393
            break;
391
            break;
394
            case '1':
392
            case '1':
395
                // Добавление нового типа репозитория
393
                // Добавление нового типа репозитория
396
                $rtype = mysql_real_escape_string($_POST["rtype"]);
394
                $rtype = mysql_real_escape_string($_POST["rtype"]);
397
                $req =& $db->query("INSERT INTO rtype SET rtype='$rtype'");
395
                $req =& $db->query("INSERT INTO rtype SET rtype='$rtype'");
398
                $go .= "?mode=".$mode."&act=0";
396
                $go .= "?mode=".$mode."&act=0";
399
            break;
397
            break;
400
            case '2':
398
            case '2':
401
                // Правка существующего типа репозитория
399
                // Правка существующего типа репозитория
402
                $rtypeID = abs(intval($_POST["rtypeID"]));
400
                $rtypeID = abs(intval($_POST["rtypeID"]));
403
                $rtype = mysql_real_escape_string($_POST["rtype"]);
401
                $rtype = mysql_real_escape_string($_POST["rtype"]);
404
                $req =& $db->query("UPDATE rtype SET rtype='$rtype' WHERE rtype_id='$rtypeID'");
402
                $req =& $db->query("UPDATE rtype SET rtype='$rtype' WHERE rtype_id='$rtypeID'");
405
                $go .= "?mode=".$mode."&act=0";
403
                $go .= "?mode=".$mode."&act=0";
406
            break;
404
            break;
407
            case '3':
405
            case '3':
408
                // Удаление типа репозитория
406
                // Удаление типа репозитория
409
                $rtypeID = abs(intval($_POST["rtypeID"]));
407
                $rtypeID = abs(intval($_POST["rtypeID"]));
410
                $req =& $db->query("DELETE FROM rtype WHERE rtype_id='$rtypeID'");
408
                $req =& $db->query("DELETE FROM rtype WHERE rtype_id='$rtypeID'");
411
                $go .= "?mode=".$mode."&act=0";
409
                $go .= "?mode=".$mode."&act=0";
412
            break;
410
            break;
413
        }
411
        }
414
    break;
412
    break;
415
    case '8':
413
    case '8':
416
        switch ($act) {
414
        switch ($act) {
417
            case '0':
415
            case '0':
418
            break;
416
            break;
419
            case '1':
417
            case '1':
420
                // Создание корневой папки репозиториев
418
                // Создание корневой папки репозиториев
421
                $root = mysql_real_escape_string($_POST["rootFolder"]);
419
                $root = mysql_real_escape_string($_POST["rootFolder"]);
422
                $req =& $db->query("INSERT INTO root SET root_folder='$root'");
420
                $req =& $db->query("INSERT INTO root SET root_folder='$root'");
423
                $go .= "?mode=".$mode."&act=0";
421
                $go .= "?mode=".$mode."&act=0";
424
            break;
422
            break;
425
            case '2':
423
            case '2':
426
                // Редактирование корневой папки репозиториев
424
                // Редактирование корневой папки репозиториев
427
                $root_id = abs(intval($_POST["rootID"]));
425
                $root_id = abs(intval($_POST["rootID"]));
428
                $root_fd = mysql_real_escape_string($_POST["rootFolder"]);
426
                $root_fd = mysql_real_escape_string($_POST["rootFolder"]);
429
                $req =& $db->query("UPDATE root SET root_folder='$root_fd' WHERE root_id='$root_id'");
427
                $req =& $db->query("UPDATE root SET root_folder='$root_fd' WHERE root_id='$root_id'");
430
                $go .= "?mode=".$mode."&act=0";
428
                $go .= "?mode=".$mode."&act=0";
431
            break;
429
            break;
432
            case '3':
430
            case '3':
433
                // Удаление корневой папки репозиториев
431
                // Удаление корневой папки репозиториев
434
                $root_id = abs(intval($_POST["rootID"]));
432
                $root_id = abs(intval($_POST["rootID"]));
435
                $req =& $db->query("DELETE FROM root WHERE root_id='$root_id'");
433
                $req =& $db->query("DELETE FROM root WHERE root_id='$root_id'");
436
                $go .= "?mode=".$mode."&act=0";
434
                $go .= "?mode=".$mode."&act=0";
437
            break;
435
            break;
438
        }
436
        }
439
    break;
437
    break;
440
    case '20':
438
    case '20':
441
        switch ($act) {
439
        switch ($act) {
442
            case '0':
440
            case '0':
443
            break;
441
            break;
444
            case '1':
442
            case '1':
445
                // Добавление новой настройки Ant
443
                // Добавление новой настройки Ant
446
                $option = mysql_real_escape_string($_POST["setoption"]);
444
                $option = mysql_real_escape_string($_POST["setoption"]);
447
                $value = mysql_real_escape_string($_POST["setvalue"]);
445
                $value = mysql_real_escape_string($_POST["setvalue"]);
448
                $req =& $db->query("INSERT INTO settings SET opt='$option', optvalue='$value'");
446
                $req =& $db->query("INSERT INTO settings SET opt='$option', optvalue='$value'");
449
                $go .= "?mode=".$mode."&act=0";
447
                $go .= "?mode=".$mode."&act=0";
450
            break;
448
            break;
451
            case '2':
449
            case '2':
452
                // Правка настройки Ant
450
                // Правка настройки Ant
453
                $optID = abs(intval($_POST["optID"]));
451
                $optID = abs(intval($_POST["optID"]));
454
                $option = mysql_real_escape_string($_POST["setoption"]);
452
                $option = mysql_real_escape_string($_POST["setoption"]);
455
                $value = mysql_real_escape_string($_POST["setvalue"]);
453
                $value = mysql_real_escape_string($_POST["setvalue"]);
456
                $req =& $db->query("UPDATE settings SET opt='$option', optvalue='$value' WHERE opt_id='$optID'");
454
                $req =& $db->query("UPDATE settings SET opt='$option', optvalue='$value' WHERE opt_id='$optID'");
457
                $go .= "?mode=".$mode."&act=0";
455
                $go .= "?mode=".$mode."&act=0";
458
            break;
456
            break;
459
            case '3':
457
            case '3':
460
                // Удаление настройки
458
                // Удаление настройки
461
                $optID = abs(intval($_POST["optID"]));
459
                $optID = abs(intval($_POST["optID"]));
462
                $req =& $db->query("DELETE FROM settings WHERE opt_id='$optID'");
460
                $req =& $db->query("DELETE FROM settings WHERE opt_id='$optID'");
463
                $go .= "?mode=".$mode."&act=0";
461
                $go .= "?mode=".$mode."&act=0";
464
            break;
462
            break;
465
        }
463
        }
466
    break;
464
    break;
467
    case '21':
465
    case '21':
468
        switch ($act) {
466
        switch ($act) {
469
            case '0':
467
            case '0':
470
            break;
468
            break;
471
            case '1':
469
            case '1':
472
                // Добавление интерфейса
470
                // Добавление интерфейса
473
                $ifname = mysql_real_escape_string($_POST["ifname"]);
471
                $ifname = mysql_real_escape_string($_POST["ifname"]);
474
                $ifinfo = mysql_real_escape_string($_POST["ifinfo"]);
472
                $ifinfo = mysql_real_escape_string($_POST["ifinfo"]);
475
                $ifname = str_replace(".php","",$ifname);
473
                $ifname = str_replace(".php","",$ifname);
476
                $req =& $db->query("INSERT INTO interfaces SET interface='$ifname', interfaceinfo='$ifinfo'");
474
                $req =& $db->query("INSERT INTO interfaces SET interface='$ifname', interfaceinfo='$ifinfo'");
477
                $go .= "?mode=".$mode."&act=0";
475
                $go .= "?mode=".$mode."&act=0";
478
            break;
476
            break;
479
            case '2':
477
            case '2':
480
                // Правка интерфейса
478
                // Правка интерфейса
481
                $ifname = mysql_real_escape_string($_POST["ifname"]);
479
                $ifname = mysql_real_escape_string($_POST["ifname"]);
482
                $ifinfo = mysql_real_escape_string($_POST["ifinfo"]);
480
                $ifinfo = mysql_real_escape_string($_POST["ifinfo"]);
483
                $if  = abs(intval($_POST["if"]));
481
                $if  = abs(intval($_POST["if"]));
484
                $ifname = str_replace(".php","",$ifname);
482
                $ifname = str_replace(".php","",$ifname);
485
                $req =& $db->query("UPDATE interfaces SET interface='$ifname', interfaceinfo='$ifinfo' WHERE if_id='$if'");
483
                $req =& $db->query("UPDATE interfaces SET interface='$ifname', interfaceinfo='$ifinfo' WHERE if_id='$if'");
486
                $go .= "?mode=".$mode."&act=0";
484
                $go .= "?mode=".$mode."&act=0";
487
            break;
485
            break;
488
            case '3':
486
            case '3':
489
                // Удаление интерфейса
487
                // Удаление интерфейса
490
                $if = abs(intval($_POST["if"]));
488
                $if = abs(intval($_POST["if"]));
491
                $req =& $db->query("DELETE FROM interfaces WHERE if_id='$if'");
489
                $req =& $db->query("DELETE FROM interfaces WHERE if_id='$if'");
492
                $go .= "?mode=".$mode."&act=0";
490
                $go .= "?mode=".$mode."&act=0";
493
            break;
491
            break;
494
        }
492
        }
495
    break;
493
    break;
496
    case '22':
494
    case '22':
497
        switch ($act) {
495
        switch ($act) {
498
            case '0':
496
            case '0':
499
                // Смена пароля
497
                // Смена пароля
500
                // $OID        = abs(intval($_POST["OID"]));
498
                // $OID        = abs(intval($_POST["OID"]));
501
                $oldpass    = mysql_real_escape_string($_POST["oldPW"]);
499
                $oldpass    = mysql_real_escape_string($_POST["oldPW"]);
502
                $newpass1   = mysql_real_escape_string($_POST["newPW1"]);
500
                $newpass1   = mysql_real_escape_string($_POST["newPW1"]);
503
                $newpass2   = mysql_real_escape_string($_POST["newPW2"]);
501
                $newpass2   = mysql_real_escape_string($_POST["newPW2"]);
504
502
505
                $errpwd = 0;
503
                $errpwd = 0;
506
                $spass = md5($newpass1."ANT");
504
                $spass = md5($newpass1."ANT");
507
                $soldpass = md5($oldpass."ANT");
505
                $soldpass = md5($oldpass."ANT");
508
                if ($soldpass != $_COOKIE[$CookiePasswd]) {
506
                if ($soldpass != $_COOKIE[$CookiePasswd]) {
509
                    $go .= "?error=1";
507
                    $go .= "?error=1";
510
                    $errpwd = 1;
508
                    $errpwd = 1;
511
                }
509
                }
512
                if ($newpass1 != $newpass2) {
510
                if ($newpass1 != $newpass2) {
513
                $go .= "?error=2";
511
                $go .= "?error=2";
514
                $errpwd = 2;
512
                $errpwd = 2;
515
                }
513
                }
516
514
517
                if ($errpwd==0) {
515
                if ($errpwd==0) {
518
                // fix: Для многопользовательского варианта придется запрос переписать
516
                // fix: Для многопользовательского варианта придется запрос переписать
519
                $req =& $db->query("UPDATE owner SET passwd='$spass' WHERE login='admin'");
517
                $req =& $db->query("UPDATE owner SET passwd='$spass' WHERE login='admin'");
520
                }
518
                }
521
            break;
519
            break;
522
        }
520
        }
523
    break;
521
    break;
524
}
522
}
525
523
526
header("Location: $go\n\n");
524
header("Location: $go\n\n");
527
525
528
?>
526
?>
529
 
527