Редакция 20 | Редакция 31 | К новейшей редакции | Только различия | Учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS
Редакция 20 | Редакция 27 | ||
---|---|---|---|
1 | <?php
|
1 | <?php
|
2 | 2 | ||
3 | include "lib/init.php"; |
3 | include "lib/init.php"; |
4 | $status = abs(intval($_GET["step"])); |
4 | $status = abs(intval($_GET["step"])); |
5 | $dist = abs(intval($_GET["d"])); |
5 | $dist = abs(intval($_GET["d"])); |
6 | $vers = abs(intval($_GET["v"])); |
6 | $vers = abs(intval($_GET["v"])); |
7 | 7 | ||
8 | $query =& $db->query("SELECT * FROM settings WHERE opt LIKE 'version'"); |
8 | $query =& $db->query("SELECT * FROM settings WHERE opt LIKE 'version'"); |
9 | $query->fetchInto($antv, DB_FETCHMODE_ASSOC); |
9 | $query->fetchInto($antv, DB_FETCHMODE_ASSOC); |
10 | $antversion = $antv["optvalue"]; |
10 | $antversion = $antv["optvalue"]; |
11 | 11 | ||
12 | $query =& $db->query("SELECT * FROM distribution"); |
12 | $query =& $db->query("SELECT * FROM distribution"); |
13 | while ($query->fetchInto($data, DB_FETCHMODE_ASSOC)) { |
13 | while ($query->fetchInto($data, DB_FETCHMODE_ASSOC)) { |
14 | $linux .= "<p><input type='radio' name='d' value='".$data["dist_id"]."' />".stripslashes($data["distname"])."</p>\n"; |
14 | $linux .= "<p><input type='radio' name='d' value='".$data["dist_id"]."' />".stripslashes($data["distname"])."</p>\n"; |
15 | }
|
15 | }
|
16 | 16 | ||
17 | if (!isset($status)) { $status = 0; }; |
17 | if (!isset($status)) { $status = 0; }; |
18 | 18 | ||
19 | if (isset($dist)) { |
19 | if (isset($dist)) { |
20 | $query =& $db->query("SELECT * FROM version v JOIN distribution d ON d.dist_id=v.dist_id WHERE v.dist_id='$dist'"); |
20 | $query =& $db->query("SELECT * FROM version v JOIN distribution d ON d.dist_id=v.dist_id WHERE v.dist_id='$dist'"); |
21 | $distvers = "<p><input type='hidden' name='d' value='".$dist."' /></p>\n"; |
21 | $distvers = "<p><input type='hidden' name='d' value='".$dist."' /></p>\n"; |
22 | while ($query->fetchInto($version, DB_FETCHMODE_ASSOC)) { |
22 | while ($query->fetchInto($version, DB_FETCHMODE_ASSOC)) { |
23 | if ($version["vname"]!="") { |
23 | if ($version["vname"]!="") { |
24 | $distname = "“".stripslashes($version["vname"])."”"; |
24 | $distname = "“".stripslashes($version["vname"])."”"; |
25 | } else { |
25 | } else { |
26 | $distname = ""; |
26 | $distname = ""; |
27 | }
|
27 | }
|
28 | $distvers .= "<p><input type='radio' name='v' value='".$version["version_id"]."' />".stripslashes($version["distname"])." ".stripslashes($version["version"])." ".$distname."</p>\n"; |
28 | $distvers .= "<p><input type='radio' name='v' value='".$version["version_id"]."' />".stripslashes($version["distname"])." ".stripslashes($version["version"])." ".$distname."</p>\n"; |
29 | }
|
29 | }
|
30 | }
|
30 | }
|
31 | 31 | ||
32 | if (isset($vers)) { |
32 | if (isset($vers)) { |
33 | $query =& $db->query("SELECT * FROM settings"); |
33 | $query =& $db->query("SELECT * FROM settings"); |
34 | $settings = array(); |
34 | $settings = array(); |
35 | while ($query->fetchInto($setting, DB_FETCHMODE_ASSOC)) { |
35 | while ($query->fetchInto($setting, DB_FETCHMODE_ASSOC)) { |
36 | $settings[stripslashes($setting["opt"])] = stripslashes($setting["optvalue"]); |
36 | $settings[stripslashes($setting["opt"])] = stripslashes($setting["optvalue"]); |
37 | }; |
37 | }; |
38 | $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'"); |
38 | $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'"); |
39 | $query->fetchInto($infodist, DB_FETCHMODE_ASSOC); |
39 | $query->fetchInto($infodist, DB_FETCHMODE_ASSOC); |
40 | $distname = ""; |
40 | $distname = ""; |
41 | if ($infodist["vname"]!="") { |
41 | if ($infodist["vname"]!="") { |
42 | $distname = "“".stripslashes($infodist["vname"])."”"; |
42 | $distname = "“".stripslashes($infodist["vname"])."”"; |
43 | }
|
43 | }
|
44 | $info = "<h2>Доступные репозитории для <em>".stripslashes($infodist["distname"])." ".stripslashes($infodist["version"])." ".$distname."</em></h2>"; |
44 | $info = "<h2>Доступные репозитории для <em>".stripslashes($infodist["distname"])." ".stripslashes($infodist["version"])." ".$distname."</em></h2>"; |
45 | $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"); |
45 | $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"); |
46 | $result = "<p>Скопируйте эти строки в файл <span id='sourceslist'>/etc/apt/sources.list</span>:</p><pre>"; |
46 | $result = "<p>Скопируйте эти строки в файл <span id='sourceslist'>/etc/apt/sources.list</span>:</p><pre>"; |
47 | while ($query->fetchInto($resinfo, DB_FETCHMODE_ASSOC)) { |
47 | while ($query->fetchInto($resinfo, DB_FETCHMODE_ASSOC)) { |
48 | $repscheme = stripslashes($resinfo["scheme"]); |
48 | $repscheme = stripslashes($resinfo["scheme"]); |
49 | 49 | ||
50 | $querysect =& $db->query("SELECT * FROM section s JOIN sect2rep r ON s.sect_id=r.sect_id WHERE |
50 | $querysect =& $db->query("SELECT * FROM section s JOIN sect2rep r ON s.sect_id=r.sect_id WHERE |
51 | r.rep_id='$resinfo[rep_id]'"); |
51 | r.rep_id='$resinfo[rep_id]'"); |
52 | $sections = ""; |
52 | $sections = ""; |
53 | while ($querysect->fetchInto($section,DB_FETCHMODE_ASSOC)) { |
53 | while ($querysect->fetchInto($section,DB_FETCHMODE_ASSOC)) { |
54 | $sections .= stripslashes($section["sectname"])." "; |
54 | $sections .= stripslashes($section["sectname"])." "; |
55 | }
|
55 | }
|
56 | 56 | ||
57 | $repscheme = str_replace("{TYPE}",stripslashes($infodist["type"]),$repscheme); |
57 | $repscheme = str_replace("{TYPE}",stripslashes($infodist["type"]),$repscheme); |
58 | $repscheme = str_replace("{PROTO}",$settings["proto"],$repscheme); |
58 | $repscheme = str_replace("{PROTO}",$settings["proto"],$repscheme); |
59 | $repscheme = str_replace("{URL}",$settings["url"],$repscheme); |
59 | $repscheme = str_replace("{URL}",$settings["url"],$repscheme); |
60 | $repscheme = str_replace("{REP}",stripslashes($resinfo["repname"]),$repscheme); |
60 | $repscheme = str_replace("{REP}",stripslashes($resinfo["repname"]),$repscheme); |
61 | $repscheme = str_replace("{DIST}",stripslashes($infodist["vcodename"]),$repscheme); |
61 | $repscheme = str_replace("{DIST}",stripslashes($infodist["vcodename"]),$repscheme); |
62 | $repscheme = str_replace("{SECT}",$sections,$repscheme); |
62 | $repscheme = str_replace("{SECT}",$sections,$repscheme); |
63 | 63 | ||
64 | $result .= $repscheme."\n"; |
64 | $result .= $repscheme."\n"; |
65 | }
|
65 | }
|
66 | $result .= "</pre>"; |
66 | $result .= "</pre>"; |
67 | $result = $info.$result; |
67 | $result = $info.$result; |
68 | }
|
68 | }
|
69 | 69 | ||
70 | $smarty->assign('status',$status); |
70 | $smarty->assign('status',$status); |
71 | $smarty->assign('linux',$linux); |
71 | $smarty->assign('linux',$linux); |
72 | $smarty->assign('version',$distvers); |
72 | $smarty->assign('version',$distvers); |
73 | $smarty->assign('result',$result); |
73 | $smarty->assign('result',$result); |
74 | $smarty->assign('antversion',$antversion); |
74 | $smarty->assign('antversion',$antversion); |
75 | 75 | ||
76 | $smarty->display('index.tpl'); |
76 | $smarty->display('classic.tpl'); |
77 | 77 | ||
78 | ?>
|
78 | ?>
|
79 | 79 |