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