Редакция 43 | К новейшей редакции | Весь файл | Не учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS
Редакция 43 | Редакция 45 | ||
---|---|---|---|
Строка 20... | Строка 20... | ||
20 | *
|
20 | *
|
21 | */
|
21 | */
|
22 | 22 | ||
23 | 23 | ||
24 | include "lib/init.php"; |
24 | include "lib/init.php"; |
25 | $status = abs(intval($_POST["step"])); |
25 | $dist = abs(intval($_GET["d"])); |
26 | $dist = abs(intval($_POST["d"])); |
26 | $vers = abs(intval($_GET["v"])); |
27 | $vers = abs(intval($_POST["v"])); |
27 | $status = abs(intval($_GET["status"])); |
28 | 28 | ||
29 | if (!isset($status)) { $status = 0; } |
29 | header('Content-Type: text/html; charset=utf-8'); |
- | 30 | //if($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') {
|
|
30 | 31 | ||
31 | if (isset($dist)) { |
32 | switch($status) { |
32 | $query =& $db->query("SELECT * FROM version v JOIN distribution d ON d.dist_id=v.dist_id WHERE v.dist_id='$dist'"); |
- | |
- | 33 | case '1': |
|
33 | $distvers = "<h2>Выбор версии дистрибутива</h2>\n"; |
34 | $result = '[{value:"",text:"Выбрать версию дистрибутива"}'; |
34 | $distvers .= "<form action='./m-process.php' method='post' id='distro' >\n"; |
- | |
35 | $distvers .= "<p><input type='hidden' name='step' value='2' /><input type='hidden' name='d' value='".$dist."' /></p>\n"; |
35 | $query =& $db->query("SELECT * FROM version v JOIN distribution d ON d.dist_id=v.dist_id WHERE v.dist_id='$dist'"); |
36 | while ($query->fetchInto($version, DB_FETCHMODE_ASSOC)) { |
36 | while ($query->fetchInto($version, DB_FETCHMODE_ASSOC)) { |
37 | if ($version["vname"]!="") { |
37 | if ($version["vname"]!="") { |
38 | $distname = "“".stripslashes($version["vname"])."”"; |
38 | $distname = stripslashes($version["vname"]); |
39 | } else { |
39 | } else { |
40 | $distname = ""; |
40 | $distname = ""; |
41 | }
|
41 | }
|
42 | $distvers .= "<p><input type='radio' name='v' value='".$version["version_id"]."' />".stripslashes($version["distname"])." ".stripslashes($version["version"])." ".$distname."</p>\n"; |
42 | $result .= ',{value:"'.$version["version_id"].'",text:"'.stripslashes($version["version"]).' '.$distname.'"}'; |
43 | }
|
43 | }
|
44 | $distvers .= "<p><input type='submit' value='Выбрать версию' /></p>"; |
- | |
45 | $distvers .= "</form>"; |
44 | $result .= ']'; |
46 | }
|
45 | break; |
47 | - | ||
48 | if (isset($vers)) { |
46 | case '2': |
49 | $query =& $db->query("SELECT * FROM settings"); |
47 | $query =& $db->query("SELECT * FROM settings"); |
50 | $settings = array(); |
48 | $settings = array(); |
51 | while ($query->fetchInto($setting, DB_FETCHMODE_ASSOC)) { |
49 | while ($query->fetchInto($setting, DB_FETCHMODE_ASSOC)) { |
52 | $settings[stripslashes($setting["opt"])] = stripslashes($setting["optvalue"]); |
50 | $settings[stripslashes($setting["opt"])] = stripslashes($setting["optvalue"]); |
53 | }
|
51 | }; |
54 | $query =& $db->query("SELECT * FROM version v JOIN distribution d ON d.dist_id=v.dist_id JOIN dtype p ON d.disttype=p.type_id WHERE v.dist_id='$dist' AND v.version_id='$vers'"); |
52 | $query =& $db->query("SELECT * FROM version v JOIN distribution d ON d.dist_id=v.dist_id JOIN dtype p ON d.disttype=p.type_id WHERE v.dist_id='$dist' AND v.version_id='$vers'"); |
55 | $query->fetchInto($infodist, DB_FETCHMODE_ASSOC); |
53 | $query->fetchInto($infodist, DB_FETCHMODE_ASSOC); |
- | 54 | $query =& $db->query("SELECT * FROM repository r JOIN ver2rep v ON r.rep_id=v.rep_id JOIN version v2 ON v.ver_id=v2.version_id JOIN scheme s ON s.scheme_id=r.scheme_id WHERE v.ver_id='$vers' ORDER BY r.rtype_id, r.scheme_id ASC"); |
|
- | 55 | while ($query->fetchInto($resinfo, DB_FETCHMODE_ASSOC)) { |
|
- | 56 | $repscheme = stripslashes($resinfo["scheme"]); |
|
- | 57 | ||
- | 58 | $querysect =& $db->query("SELECT * FROM section s JOIN sect2rep r ON s.sect_id=r.sect_id WHERE |
|
- | 59 | r.rep_id='$resinfo[rep_id]'"); |
|
56 | $distname = ""; |
60 | $sections = ""; |
- | 61 | while ($querysect->fetchInto($section,DB_FETCHMODE_ASSOC)) { |
|
57 | if ($infodist["vname"]!="") { |
62 | $sections .= stripslashes($section["sectname"])." "; |
- | 63 | }
|
|
- | 64 | ||
- | 65 | $repscheme = str_replace("{TYPE}",stripslashes($infodist["type"]),$repscheme); |
|
- | 66 | $repscheme = str_replace("{PROTO}",$settings["proto"],$repscheme); |
|
- | 67 | $repscheme = str_replace("{URL}",$settings["url"],$repscheme); |
|
- | 68 | $repscheme = str_replace("{REP}",stripslashes($resinfo["repname"]),$repscheme); |
|
58 | $distname = "“".stripslashes($infodist["vname"])."”"; |
69 | $repscheme = str_replace("{DIST}",stripslashes($infodist["vcodename"]),$repscheme); |
- | 70 | $repscheme = str_replace("{SECT}",$sections,$repscheme); |
|
- | 71 | ||
- | 72 | $result .= $repscheme."\n"; |
|
- | 73 | }
|
|
- | 74 | break; |
|
59 | }
|
75 | }
|
60 | $info = "<h2>Доступные репозитории для <em>".stripslashes($infodist["distname"])." ".stripslashes($infodist["version"])." ".$distname."</em></h2>"; |
- | |
61 | $query =& $db->query("SELECT * FROM repository r JOIN ver2rep v ON r.rep_id=v.ver_id JOIN version v2 ON v.ver_id=v2.version_id JOIN scheme s ON s.scheme_id=r.scheme_id WHERE v.ver_id='$vers' ORDER BY r.rtype_id, r.scheme_id ASC"); |
- | |
62 | $result = "<p>Скопируйте эти строки в файл <span id='sourceslist'>/etc/apt/sources.list</span>:</p><pre>"; |
- | |
63 | while ($query->fetchInto($resinfo, DB_FETCHMODE_ASSOC)) { |
- | |
64 | $repscheme = stripslashes($resinfo["scheme"]); |
- | |
65 | - | ||
66 | $querysect =& $db->query("SELECT * FROM section s JOIN sect2rep r ON s.sect_id=r.sect_id WHERE r.rep_id='$resinfo[rep_id]'"); |
- | |
67 | $sections = ""; |
- | |
68 | while ($querysect->fetchInto($section, DB_FETCHMODE_ASSOC)) { |
- | |
69 | $sections .= stripslashes($section["sectname"])." "; |
- | |
70 | }
|
- | |
71 | - | ||
72 | $repscheme = str_replace("{TYPE}",stripslashes($infodist["type"]),$repscheme); |
- | |
73 | $repscheme = str_replace("{PROTO}",$setting["proto"],$repscheme); |
- | |
74 | $repscheme = str_replace("{URL}",$setting["url"],$repscheme); |
- | |
75 | $repscheme = str_replace("{REP}",stripslashes($resinfo["repname"]),$repscheme); |
- | |
76 | $repscheme = str_replace("{DIST}",stripslashes($infodist["vcodename"]),$repscheme); |
- | |
77 | $repscheme = str_replace("{SECT}",$sections,$repscheme); |
- | |
78 | - | ||
79 | $result .= $repscheme."\n"; |
- | |
80 | }
|
- | |
81 | $result .= "</pre>"; |
- | |
82 | $result = $info.$result; |
- | |
83 | }
|
- | |
84 | - | ||
85 | - | ||
86 | switch ($status) { |
- | |
87 | case '1': |
- | |
88 | print $distvers; |
- | |
89 | break; |
- | |
90 | case '2': |
- | |
91 | print $result; |
76 | print $result; |
92 | break; |
- | |
93 | }
|
77 | //}
|
94 | 78 | ||
95 | ?>
|
79 | ?>
|