Редакция 249 | Редакция 265 | К новейшей редакции | Только различия | Учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS
Редакция 249 | Редакция 251 | ||
---|---|---|---|
1 | <?php
|
1 | <?php
|
2 | 2 | ||
3 | /**
|
3 | /**
|
4 | * Project: Ant: sources.list generator
|
4 | * Project: Ant: sources.list generator
|
5 | * File: classic.php
|
5 | * File: classic.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__)."/lib/init.php"; |
24 | require_once dirname(__FILE__)."/lib/init.php"; |
25 | $status = $secure->wrapInt($_GET["step"]); |
25 | $status = $secure->wrapInt($_GET["step"]); |
26 | $dist = $secure->wrapInt($_GET["d"]); |
26 | $dist = $secure->wrapInt($_GET["d"]); |
27 | $vers = $secure->wrapInt($_GET["v"]); |
27 | $vers = $secure->wrapInt($_GET["v"]); |
28 | $reps = $_GET["r"]; |
28 | $reps = $_GET["r"]; |
29 | 29 | ||
30 | $query =& $db->query("SELECT * FROM distribution"); |
- | |
31 | while ($query->fetchInto($data, DB_FETCHMODE_ASSOC)) { |
- | |
32 | $linux .= "<p><input type='radio' name='d' value='".$data["dist_id"]."'><span class='".$secure->stripStr($data["distua"])."'>".$secure->stripStr($data["distname"])."</span></p>\n"; |
- | |
33 | }
|
30 | |
34 | 31 | ||
35 | if (!isset($status)) { $status = 0; }; |
32 | if (!isset($status)) { $status = 0; }; |
36 | 33 | ||
37 | switch ($status) { |
34 | switch ($status) { |
38 | case 0: |
35 | case 0: |
39 | // Выбор дистрибутива
|
36 | //Выбор зеркала
|
- | 37 | $query =& $db->query("SELECT * FROM mirror"); |
|
- | 38 | while ($query->fetchInto($data, DB_FETCHMODE_ASSOC)) { |
|
- | 39 | $mirrors .= "<p><input type='radio' name='m' value='".$data["mirror_id"]."'>".$secure->stripStr($data["mname"])." (".$secure->stripStr($data["murl"]).")</p>\n"; |
|
- | 40 | }
|
|
40 | break; |
41 | break; |
41 | case 1: |
42 | case 1: |
- | 43 | // Выбор дистрибутива
|
|
- | 44 | $query =& $db->query("SELECT * FROM distribution"); |
|
- | 45 | while ($query->fetchInto($data, DB_FETCHMODE_ASSOC)) { |
|
- | 46 | $linux .= "<p><input type='radio' name='d' value='".$data["dist_id"]."'><span class='".$secure->stripStr($data["distua"])."'>".$secure->stripStr($data["distname"])."</span></p>\n"; |
|
- | 47 | }
|
|
- | 48 | break; |
|
- | 49 | case 2: |
|
42 | // Выбор версии
|
50 | // Выбор версии
|
43 | $query =& $db->query("SELECT * FROM version v JOIN distribution d ON d.dist_id=v.dist_id WHERE v.dist_id='$dist'"); |
51 | $query =& $db->query("SELECT * FROM version v JOIN distribution d ON d.dist_id=v.dist_id WHERE v.dist_id='$dist'"); |
44 | $distvers = "<p><input type='hidden' name='d' value='".$dist."'></p>\n"; |
52 | $distvers = "<p><input type='hidden' name='d' value='".$dist."'></p>\n"; |
45 | while ($query->fetchInto($version, DB_FETCHMODE_ASSOC)) { |
53 | while ($query->fetchInto($version, DB_FETCHMODE_ASSOC)) { |
46 | if ($version["vname"]!="") { |
54 | if ($version["vname"]!="") { |
47 | $distname = "“".$secure->stripStr($version["vname"])."”"; |
55 | $distname = "“".$secure->stripStr($version["vname"])."”"; |
48 | } else { |
56 | } else { |
49 | $distname = ""; |
57 | $distname = ""; |
50 | }
|
58 | }
|
51 | $distvers .= "<p><input type='radio' name='v' value='".$version["version_id"]."' /><span class='".$secure->stripStr($version["distua"])."'>".$secure->stripStr($version["distname"])." ".$secure->stripStr($version["version"])." ".$distname."</span></p>\n"; |
59 | $distvers .= "<p><input type='radio' name='v' value='".$version["version_id"]."' /><span class='".$secure->stripStr($version["distua"])."'>".$secure->stripStr($version["distname"])." ".$secure->stripStr($version["version"])." ".$distname."</span></p>\n"; |
52 | } break; |
60 | } break; |
53 | case 2; |
61 | case 3; |
54 | // Выбор репозиториев
|
62 | // Выбор репозиториев
|
55 | $repos = ""; |
63 | $repos = ""; |
56 | $repodata=$core->getRepList($dist,$vers,$db); |
64 | $repodata=$core->getRepList($dist,$vers,$db); |
57 | for($i=0;$i<count($repodata[0]);$i++) { |
65 | for($i=0;$i<count($repodata[0]);$i++) { |
58 | $repos.="<input type='hidden' name='d' value='".$dist."'><input type='hidden' name='v' value='".$vers."'>"; |
66 | $repos.="<input type='hidden' name='d' value='".$dist."'><input type='hidden' name='v' value='".$vers."'>"; |
59 | if ($repodata[3][$i]==true){$ch="checked";} else{$ch="";} |
67 | if ($repodata[3][$i]==true){$ch="checked";} else{$ch="";} |
60 | $repos.="<input type='checkbox' name='r[]' ".$ch." value='".$repodata[0][$i]."'>".$repodata[1][$i]." <em>(".$repodata[2][$i].")</em><br>"; |
68 | $repos.="<input type='checkbox' name='r[]' ".$ch." value='".$repodata[0][$i]."'>".$repodata[1][$i]." <em>(".$repodata[2][$i].")</em><br>"; |
61 | }; |
69 | }; |
62 | $steps .= "<a href='classic.php?step='".$status."'&d='".$dist."'> Шаг ".$status."</a> ::"; |
70 | $steps .= "<a href='classic.php?step='".$status."'&d='".$dist."'> Шаг ".$status."</a> ::"; |
63 | break; |
71 | break; |
64 | case 3; |
72 | case 4; |
65 | // Получение sources.list
|
73 | // Получение sources.list
|
66 | $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'"); |
74 | $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'"); |
67 | $query->fetchInto($infodist, DB_FETCHMODE_ASSOC); |
75 | $query->fetchInto($infodist, DB_FETCHMODE_ASSOC); |
68 | 76 | ||
69 | $distname = ""; |
77 | $distname = ""; |
70 | if ($infodist["vname"]!="") { |
78 | if ($infodist["vname"]!="") { |
71 | $distname = "“".$secure->stripStr($infodist["vname"])."”"; |
79 | $distname = "“".$secure->stripStr($infodist["vname"])."”"; |
72 | }
|
80 | }
|
73 | $info = "<h2>Репозитории для <em class='".$secure->stripStr($infodist["distua"])."-em'>".$secure->stripStr($infodist["distname"])." ".$secure->stripStr($infodist["version"])." ".$distname."</em></h2>"; |
81 | $info = "<h2>Репозитории для <em class='".$secure->stripStr($infodist["distua"])."-em'>".$secure->stripStr($infodist["distname"])." ".$secure->stripStr($infodist["version"])." ".$distname."</em></h2>"; |
74 | $result = "<p>Скопируйте эти строки в файл <span id='sourceslist'>/etc/apt/sources.list</span>:</p><pre>"; |
82 | $result = "<p>Скопируйте эти строки в файл <span id='sourceslist'>/etc/apt/sources.list</span>:</p><pre>"; |
75 | $result .= $core->getSourceList($dist,$vers,$reps,$db); |
83 | $result .= $core->getSourceList($dist,$vers,$reps,$db); |
76 | $result .= "</pre>"; |
84 | $result .= "</pre>"; |
77 | for ($i=0;$i<count($reps);$i++) { |
85 | for ($i=0;$i<count($reps);$i++) { |
78 | $getreps .= $reps[$i]; |
86 | $getreps .= $reps[$i]; |
79 | if ($i<count($reps)-1) { |
87 | if ($i<count($reps)-1) { |
80 | $getreps .= "-"; |
88 | $getreps .= "-"; |
81 | }
|
89 | }
|
82 | }
|
90 | }
|
83 | $result = $info.$result."<p><a href='./get.php?id=".$dist.",".$vers.",".$getreps."'>Получить sources.list файлом</a></p>"; |
91 | $result = $info.$result."<p><a href='./get.php?id=".$dist.",".$vers.",".$getreps."'>Получить sources.list файлом</a></p>"; |
84 | 92 | ||
85 | $link="<div class='sllink'><a title='Ссылка на этот source.list' href='".$_SERVER['php_self']."'>#</a></div>"; |
93 | $link="<div class='sllink'><a title='Ссылка на этот source.list' href='".$_SERVER['php_self']."'>#</a></div>"; |
86 | break; |
94 | break; |
87 | }
|
95 | }
|
88 | 96 | ||
89 | $steps='<a href="classic.php">Шаг 1</a> ::'; |
97 | $steps="<a href='classic.php'>Шаг 0</a> ::"; |
90 | if ($status>0){ $steps.='<a href="classic.php?step=1&d='.$dist.'"> Шаг 2</a> ::';} else{$steps.=' Шаг 2 ::';} |
98 | if ($status>0){ $steps .= "<a href='classic.php?step=1&m=".$mirr."'> Шаг 1</a> ::"; } else { $steps.=" Шаг 1 ::"; } |
91 | if ($status>1){ $steps.='<a href="classic.php?step=2&d='.$dist.'&v='.$vers.'"> Шаг 3</a> ::';} else{$steps.=' Шаг 3 ::';} |
99 | if ($status>1){ $steps .= "<a href='classic.php?step=2&m=".$mirr."&d=".$dist."'> Шаг 2</a> ::"; } else{ $steps.=" Шаг 2 ::"; } |
- | 100 | if ($status>2){ $steps .= "<a href='classic.php?step=3&m=".$mirr."&d=".$dist."&v=".$vers."'> Шаг 3</a> ::"; } else { $steps.=" Шаг 3 ::"; } |
|
92 | if ($status==3){ $steps.='<a href="'.$_SERVER['php_self'].'"> Шаг 4</a>';} else{$steps.=' Шаг 4';} |
101 | if ($status>3){ $steps .= "<a href='".$_SERVER["php_self"]."'> Шаг 4</a>"; } else { $steps.=" Шаг 4"; } |
93 | 102 | ||
94 | $smarty->assign('feedaddr',$_SERVER["HTTP_HOST"].dirname($_SERVER["PHP_SELF"])); |
103 | $smarty->assign('feedaddr',$_SERVER["HTTP_HOST"].dirname($_SERVER["PHP_SELF"])); |
95 | $smarty->assign('link',$link); |
104 | $smarty->assign('link',$link); |
96 | $smarty->assign('status',$status); |
105 | $smarty->assign('status',$status); |
97 | $smarty->assign('linux',$linux); |
106 | $smarty->assign('linux',$linux); |
- | 107 | $smarty->assign('mirrors',$mirrors); |
|
98 | $smarty->assign('steps',$steps); |
108 | $smarty->assign('steps',$steps); |
99 | $smarty->assign('repos',$repos); |
109 | $smarty->assign('repos',$repos); |
100 | $smarty->assign('version',$distvers); |
110 | $smarty->assign('version',$distvers); |
101 | $smarty->assign('result',$result); |
111 | $smarty->assign('result',$result); |
102 | $smarty->assign('antversion',$core->getSetting('version',$db)); |
112 | $smarty->assign('antversion',$core->getSetting('version',$db)); |
103 | $smarty->assign('title',$core->getSetting('codename',$db)); |
113 | $smarty->assign('title',$core->getSetting('codename',$db)); |
104 | $smarty->assign('interface'," • <a href='./changelog.php'>Изменения</a> • ".$core->getInterfacesList($_SERVER["REQUEST_URI"],$db)); |
114 | $smarty->assign('interface'," • <a href='./changelog.php'>Изменения</a> • ".$core->getInterfacesList($_SERVER["REQUEST_URI"],$db)); |
105 | $smarty->assign('style',$core->getCSSList($db)); |
115 | $smarty->assign('style',$core->getCSSList($db)); |
106 | $smarty->assign('theme',$theme->getThemeName($core,$db)); |
116 | $smarty->assign('theme',$theme->getThemeName($core,$db)); |
107 | 117 | ||
108 | $smarty->display('classic.tpl'); |
118 | $smarty->display('classic.tpl'); |
109 | 119 | ||
110 | ?>
|
120 | ?>
|
111 | 121 |