Хранилища Subversion ant

Редакция

Редакция 325 | Только различия | Не учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS

Редакция 325 Редакция 326
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
$ID     = $_GET["id"];
-
 
30
if(isset($ID)){    
-
 
31
    list($dist,$vers,$repstring) = split(",",$ID);
-
 
32
    if(!empty($dist)){$status=1;};
-
 
33
    if(!empty($vers)){$status=2;};
-
 
34
    if(!empty($repstring)){
-
 
35
        $status=4;
-
 
36
        $reps = split("-",$repstring);
-
 
37
    };
29
38
}elseif(!empty($dist)){
-
 
39
    $location="./classic.php?id=".$dist;
30
$query =& $db->query("SELECT * FROM distribution");
40
    if(!empty($vers)){$location.=",".$vers;}
31
while ($query->fetchInto($data, DB_FETCHMODE_ASSOC)) {
41
    if(!empty($reps)){
-
 
42
        for ($i=0;$i<count($reps);$i++) {
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";
43
            $shortreps .= $reps[$i];
-
 
44
            if ($i<count($reps)-1) {
-
 
45
                    $shortreps .= "-";
-
 
46
            }
-
 
47
        }
-
 
48
        $location.=",".$shortreps;
-
 
49
    }
-
 
50
    header("Location: ".$location);
-
 
51
    exit;
-
 
52
}
33
}
53
$infomsg = array( _("Step"), _("Next step"), _("Mirror selection"), _("Choosing a distribution"), _("Choosing a version of distribution"), _("Selection of repositories"), _("Get sources.list") );
-
 
54
34
55
if (!isset($status)) { $status = 0; };
35
if (!isset($status)) { $status = 0; };
56
36
57
switch ($status) {
37
if (isset($dist)) {
58
    case 0:
-
 
59
        // Выбор дистрибутива
-
 
60
        $query =& $db->query("SELECT * FROM distribution");
-
 
61
        $linux .= "<input type='hidden' name='m' value='".$mirror."'>";
-
 
62
        while ($query->fetchInto($data, DB_FETCHMODE_ASSOC)) {
-
 
63
        $linux .= "<p><input type='radio' name='d' value='".$data["dist_id"]."'><span class='".$secure->stripStr($data["distua"])."'>".$secure->stripStr($data["distname"])."</span></p>\n";
-
 
64
        }
-
 
65
    break;
-
 
66
    case 1:
-
 
67
        // Выбор версии
-
 
68
        $query =& $db->query("SELECT * FROM version v JOIN distribution d ON d.dist_id=v.dist_id WHERE v.dist_id='$dist'");
38
        $query =& $db->query("SELECT * FROM version v JOIN distribution d ON d.dist_id=v.dist_id WHERE v.dist_id='$dist'");
69
        $distvers = "<input type='hidden' name='m' value='".$mirror."'>";
-
 
70
        $distvers .= "<p><input type='hidden' name='d' value='".$dist."'></p>\n";
39
        $distvers = "<p><input type='hidden' name='d' value='".$dist."'></p>\n";
71
        while ($query->fetchInto($version, DB_FETCHMODE_ASSOC)) {
40
        while ($query->fetchInto($version, DB_FETCHMODE_ASSOC)) {
72
                if ($version["vname"]!="") {
41
                if ($version["vname"]!="") {
73
                        $distname = "&#8220;".$secure->stripStr($version["vname"])."&#8221;";
42
                        $distname = "&#8220;".$secure->stripStr($version["vname"])."&#8221;";
74
                } else {
43
                } else {
75
                        $distname = "";
44
                        $distname = "";
76
                }
45
                }
77
                $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";
46
                $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";
78
        }    break;
47
        }
-
 
48
}
-
 
49
79
    case 2;
50
if ($status==2)
80
        // Выбор репозиториев
-
 
-
 
51
{
81
        $repos = "<input type='hidden' name='m' value='".$mirror."'>";
52
        $repos = "";
82
        $repodata=$core->getRepList($dist,$vers,$db);
53
        $repodata=$core->getRepList($dist,$vers,$db);
-
 
54
        for($i=0;$i<count($repodata[0]);$i++) {
83
        $repos.="<input type='hidden' name='d' value='".$dist."'><input type='hidden' name='v' value='".$vers."'>";
55
        $repos.="<input type='hidden' name='d' value='".$dist."'><input type='hidden' name='v' value='".$vers."'>";
84
        for($i=0;$i<count($repodata[0]);$i++) {
-
 
85
            if ($repodata[3][$i]==true){$ch="checked";} else{$ch="";}
56
        if ($repodata[3][$i]==true){$ch="checked";} else{$ch="";}
86
            $repos.="<input type='checkbox' name='r[]' ".$ch." value='".$repodata[0][$i]."'>".$repodata[1][$i]." <em>(".$repodata[2][$i].")</em><br>";
57
        $repos.="<input type='checkbox' name='r[]' ".$ch." value='".$repodata[0][$i]."'>".$repodata[1][$i]." <em>(".$repodata[2][$i].")</em><br>";
-
 
58
        };
87
        };
59
}
88
        $steps .= "<a href='classic.php?step='".$status."'&d='".$dist."'> ".$info[0]." ".$status."</a> ::";
-
 
89
    break;
60
90
    case 3;
61
if ($status==3) {
91
        // Получение sources.list
-
 
92
        $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'");
62
        $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'");
93
        $query->fetchInto($infodist, DB_FETCHMODE_ASSOC);
63
        $query->fetchInto($infodist, DB_FETCHMODE_ASSOC);
94
       
64
95
        $distname = "";
65
        $distname = "";
96
        if ($infodist["vname"]!="") {
66
        if ($infodist["vname"]!="") {
97
                $distname = "&#8220;".$secure->stripStr($infodist["vname"])."&#8221;";
67
                $distname = "&#8220;".$secure->stripStr($infodist["vname"])."&#8221;";
98
        }
68
        }
99
        $info = "<h2>"._("Repositories for")." <em class='".$secure->stripStr($infodist["distua"])."-em'>".$secure->stripStr($infodist["distname"])." ".$secure->stripStr($infodist["version"])." ".$distname."</em></h2>";
69
        $info = "<h2>Репозитории для <em class='".$secure->stripStr($infodist["distua"])."-em'>".$secure->stripStr($infodist["distname"])." ".$secure->stripStr($infodist["version"])." ".$distname."</em></h2>";
100
        $result = "<p>"._("Copy this strings into file")." <span id='sourceslist'>/etc/apt/sources.list</span>:</p><pre>";
70
        $result = "<p>Скопируйте эти строки в файл <span id='sourceslist'>/etc/apt/sources.list</span>:</p><pre>";
101
        $result .= $core->getSourceList($dist,$vers,$reps,$db);
71
        $result .= $core->getSourceList($dist,$vers,$reps,$db);
102
        $result .= "</pre>";
72
        $result .= "</pre>";
103
        $result = $info.$result."<p><a href='./get.php?id=".$dist.",".$vers.",".$repstring."'>".$infomsg[6]."</a></p>";
73
        for ($i=0;$i<count($reps);$i++) {
-
 
74
                $getreps .= $reps[$i];
-
 
75
                if ($i<count($reps)-1) {
-
 
76
                        $getreps .= "-";
-
 
77
                }
104
       
78
        }
105
        $link="<div class='sllink'><a title='"._("Link to this sources.list")."' href=./classic.php?id=".$mirror.",".$dist.",".$vers.",".$repstring.">#</a></div>";
79
        $result = $info.$result."<p><a href='./get.php?id=".$dist.",".$vers.",".$getreps."'>Получить sources.list файлом</a></p>";
106
    break;
-
 
107
}
80
}
108
81
109
if ($status==3){$link='<div class="sllink"><a title="Ссылка на этот source.list" href=./classic.php?id='.$dist.",".$vers.",".$repstring.'>#</a></div>';}
82
if ($status==3){$link='<div class="sllink"><a title="Ссылка на этот source.list" href='.$_SERVER['php_self'].'>#</a></div>';}
110
$steps="<a href='classic.php'>".$infomsg[0]." 1</a> ::";
83
$steps='<a href="classic.php">Шаг 1</a> ::';
111
if ($status>0){ $steps .= "<a href='classic.php?id=".$dist."'> ".$infomsg[0]." 2</a> ::"; } else { $steps.=" ".$infomsg[0]." 2 ::"; }
84
if ($status>0){ $steps.='<a href="classic.php?step=1&d='.$dist.'"> Шаг 2</a> ::';} else{$steps.=' Шаг 2 ::';}
112
if ($status>1){ $steps .= "<a href='classic.php?id=".$dist.",".$vers."'> ".$infomsg[0]." 3</a> ::"; } else{ $steps.=" ".$infomsg[0]." 3 ::"; }
85
if ($status>1){ $steps.='<a href="classic.php?step=2&d='.$dist.'&v='.$vers.'"> Шаг 3</a> ::';} else{$steps.=' Шаг 3 ::';}
113
if ($status>2){ $steps .= '<a href=./classic.php?id='.$dist.','.$vers.','.$repstring.'>'.$infomsg[0].' 4</a>'; } else { $steps.=" ".$infomsg[0]." 4"; }
86
if ($status==3){ $steps.='<a href="'.$_SERVER['php_self'].'"> Шаг 4</a>';} else{$steps.=' Шаг 4';}
114
87
115
$smarty->assign('feedaddr',$_SERVER["HTTP_HOST"].dirname($_SERVER["PHP_SELF"]));
88
$smarty->assign('feedaddr',$_SERVER["HTTP_HOST"].dirname($_SERVER["PHP_SELF"]));
116
$smarty->assign('stepinfo',$infomsg[0]);
-
 
117
$smarty->assign('nextstep',$infomsg[1]);
-
 
118
$smarty->assign('distrochoose',$infomsg[3]);
-
 
119
$smarty->assign('distrovchoose',$infomsg[4]);
-
 
120
$smarty->assign('repselect',$infomsg[5]);
-
 
121
$smarty->assign('getsourceslist',$infomsg[6]);
-
 
122
$smarty->assign('link',$link);
89
$smarty->assign('link',$link);
123
$smarty->assign('status',$status);
90
$smarty->assign('status',$status);
124
$smarty->assign('linux',$linux);
91
$smarty->assign('linux',$linux);
125
$smarty->assign('mirrors',$mirrors);
-
 
126
$smarty->assign('steps',$steps);
92
$smarty->assign('steps',$steps);
127
$smarty->assign('repos',$repos);
93
$smarty->assign('repos',$repos);
128
$smarty->assign('version',$distvers);
94
$smarty->assign('version',$distvers);
129
$smarty->assign('result',$result);
95
$smarty->assign('result',$result);
130
$smarty->assign('antversion',$core->getSetting('version',$db));
96
$smarty->assign('antversion',$core->getSetting('version',$db));
131
$smarty->assign('title',$core->getSetting('codename',$db));
97
$smarty->assign('title',$core->getSetting('codename',$db));
132
$smarty->assign('interface'," &bull; <a href='./changelog.php'>"._("Changes")."</a> &bull; ".$core->getInterfacesList($_SERVER["REQUEST_URI"],$db));
98
$smarty->assign('interface'," &bull; <a href='./changelog.php'>Изменения</a> &bull; ".$core->getInterfacesList($_SERVER["REQUEST_URI"],$db));
133
$smarty->assign('style',$core->getCSSList($db));
99
$smarty->assign('style',$core->getCSSList($db));
134
$smarty->assign('theme',$theme->getThemeName($core,$db));
-
 
135
100
136
$smarty->display('classic.tpl');
101
$smarty->display('classic.tpl');
137
102
138
?>
103
?>
139
 
104