Редакция 249 | Редакция 265 | К новейшей редакции | Содержимое файла | Сравнить с предыдущей | Последнее изменение | Открыть журнал | RSS
Редакция | Автор | № строки | Строка |
---|---|---|---|
20 | alex-w | 1 | <?php |
2 | |||
31 | alex-w | 3 | /** |
4 | * Project: Ant: sources.list generator |
||
5 | * File: classic.php |
||
6 | * |
||
60 | alex-w | 7 | * This application is free software; you can redistribute it and/or |
31 | alex-w | 8 | * modify it under the terms of the GNU Lesser General Public |
9 | * License as published by the Free Software Foundation; either |
||
10 | * version 2.1 of the License, or (at your option) any later version. |
||
11 | * |
||
60 | alex-w | 12 | * This application is distributed in the hope that it will be useful, |
31 | alex-w | 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
||
15 | * Lesser General Public License for more details. |
||
16 | * |
||
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 |
||
19 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
||
20 | * |
||
21 | */ |
||
22 | |||
23 | |||
101 | alex-w | 24 | require_once dirname(__FILE__)."/lib/init.php"; |
209 | alex-w | 25 | $status = $secure->wrapInt($_GET["step"]); |
26 | $dist = $secure->wrapInt($_GET["d"]); |
||
27 | $vers = $secure->wrapInt($_GET["v"]); |
||
217 | diffor | 28 | $reps = $_GET["r"]; |
20 | alex-w | 29 | |
30 | |||
251 | diffor | 31 | |
20 | alex-w | 32 | if (!isset($status)) { $status = 0; }; |
33 | |||
249 | diffor | 34 | switch ($status) { |
35 | case 0: |
||
251 | diffor | 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 | } |
||
41 | break; |
||
42 | case 1: |
||
249 | diffor | 43 | // Выбор дистрибутива |
251 | diffor | 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 | } |
||
249 | diffor | 48 | break; |
251 | diffor | 49 | case 2: |
249 | diffor | 50 | // Выбор версии |
20 | alex-w | 51 | $query =& $db->query("SELECT * FROM version v JOIN distribution d ON d.dist_id=v.dist_id WHERE v.dist_id='$dist'"); |
51 | alex-w | 52 | $distvers = "<p><input type='hidden' name='d' value='".$dist."'></p>\n"; |
20 | alex-w | 53 | while ($query->fetchInto($version, DB_FETCHMODE_ASSOC)) { |
54 | if ($version["vname"]!="") { |
||
209 | alex-w | 55 | $distname = "“".$secure->stripStr($version["vname"])."”"; |
20 | alex-w | 56 | } else { |
57 | $distname = ""; |
||
58 | } |
||
209 | alex-w | 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"; |
249 | diffor | 60 | } break; |
251 | diffor | 61 | case 3; |
249 | diffor | 62 | // Выбор репозиториев |
217 | diffor | 63 | $repos = ""; |
218 | diffor | 64 | $repodata=$core->getRepList($dist,$vers,$db); |
65 | for($i=0;$i<count($repodata[0]);$i++) { |
||
249 | diffor | 66 | $repos.="<input type='hidden' name='d' value='".$dist."'><input type='hidden' name='v' value='".$vers."'>"; |
67 | if ($repodata[3][$i]==true){$ch="checked";} else{$ch="";} |
||
68 | $repos.="<input type='checkbox' name='r[]' ".$ch." value='".$repodata[0][$i]."'>".$repodata[1][$i]." <em>(".$repodata[2][$i].")</em><br>"; |
||
69 | }; |
||
70 | $steps .= "<a href='classic.php?step='".$status."'&d='".$dist."'> Шаг ".$status."</a> ::"; |
||
71 | break; |
||
251 | diffor | 72 | case 4; |
249 | diffor | 73 | // Получение sources.list |
20 | alex-w | 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'"); |
75 | $query->fetchInto($infodist, DB_FETCHMODE_ASSOC); |
||
249 | diffor | 76 | |
20 | alex-w | 77 | $distname = ""; |
78 | if ($infodist["vname"]!="") { |
||
209 | alex-w | 79 | $distname = "“".$secure->stripStr($infodist["vname"])."”"; |
20 | alex-w | 80 | } |
217 | diffor | 81 | $info = "<h2>Репозитории для <em class='".$secure->stripStr($infodist["distua"])."-em'>".$secure->stripStr($infodist["distname"])." ".$secure->stripStr($infodist["version"])." ".$distname."</em></h2>"; |
249 | diffor | 82 | $result = "<p>Скопируйте эти строки в файл <span id='sourceslist'>/etc/apt/sources.list</span>:</p><pre>"; |
83 | $result .= $core->getSourceList($dist,$vers,$reps,$db); |
||
84 | $result .= "</pre>"; |
||
224 | alex-w | 85 | for ($i=0;$i<count($reps);$i++) { |
86 | $getreps .= $reps[$i]; |
||
87 | if ($i<count($reps)-1) { |
||
88 | $getreps .= "-"; |
||
89 | } |
||
90 | } |
||
249 | diffor | 91 | $result = $info.$result."<p><a href='./get.php?id=".$dist.",".$vers.",".$getreps."'>Получить sources.list файлом</a></p>"; |
92 | |||
93 | $link="<div class='sllink'><a title='Ссылка на этот source.list' href='".$_SERVER['php_self']."'>#</a></div>"; |
||
94 | break; |
||
20 | alex-w | 95 | } |
96 | |||
251 | diffor | 97 | $steps="<a href='classic.php'>Шаг 0</a> ::"; |
98 | if ($status>0){ $steps .= "<a href='classic.php?step=1&m=".$mirr."'> Шаг 1</a> ::"; } else { $steps.=" Шаг 1 ::"; } |
||
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 ::"; } |
||
101 | if ($status>3){ $steps .= "<a href='".$_SERVER["php_self"]."'> Шаг 4</a>"; } else { $steps.=" Шаг 4"; } |
||
220 | sivan | 102 | |
131 | alex-w | 103 | $smarty->assign('feedaddr',$_SERVER["HTTP_HOST"].dirname($_SERVER["PHP_SELF"])); |
230 | sivan | 104 | $smarty->assign('link',$link); |
20 | alex-w | 105 | $smarty->assign('status',$status); |
106 | $smarty->assign('linux',$linux); |
||
251 | diffor | 107 | $smarty->assign('mirrors',$mirrors); |
220 | sivan | 108 | $smarty->assign('steps',$steps); |
193 | sivan | 109 | $smarty->assign('repos',$repos); |
20 | alex-w | 110 | $smarty->assign('version',$distvers); |
111 | $smarty->assign('result',$result); |
||
132 | alex-w | 112 | $smarty->assign('antversion',$core->getSetting('version',$db)); |
113 | $smarty->assign('title',$core->getSetting('codename',$db)); |
||
143 | alex-w | 114 | $smarty->assign('interface'," • <a href='./changelog.php'>Изменения</a> • ".$core->getInterfacesList($_SERVER["REQUEST_URI"],$db)); |
79 | alex-w | 115 | $smarty->assign('style',$core->getCSSList($db)); |
238 | sivan | 116 | $smarty->assign('theme',$theme->getThemeName($core,$db)); |
20 | alex-w | 117 | |
27 | alex-w | 118 | $smarty->display('classic.tpl'); |
20 | alex-w | 119 | |
120 | ?> |