Хранилища Subversion ant

Редакция

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

Редакция 398 Редакция 399
1
<?php
1
<?php
2
2
3
/**
3
/**
4
 *  
4
 *  
5
 *  Codename: ant-ng - generator of sources.list for Debian and
5
 *  Codename: ant-ng - generator of sources.list for Debian and
6
 *  distributives, based on Debian
6
 *  distributives, based on Debian
7
 *  http://alex-w.org.ru/p/antng/
7
 *  http://alex-w.org.ru/p/antng/
8
 *
8
 *
9
 *  Copyright (c) 2009 Alexander Wolf
9
 *  Copyright (c) 2009 Alexander Wolf
10
 *  Dual licensed under the MIT and GNU LGPL licenses.
10
 *  Dual licensed under the MIT and GNU LGPL licenses.
11
 *  http://alex-w.org.ru/p/antng/license
11
 *  http://alex-w.org.ru/p/antng/license
12
 *
12
 *
13
 */
13
 */
14
14
15
require_once dirname(__FILE__)."/init.php";
15
require_once dirname(__FILE__)."/init.php";
16
16
17
$scripts = "
17
$scripts = "
18
<script type='text/javascript'>
18
<script type='text/javascript'>
19
(function($){
19
(function($){
20
  // очищаем select
20
  // очищаем select
21
  $.fn.clearSelect = function() {
21
  $.fn.clearSelect = function() {
22
          return this.each(function(){
22
          return this.each(function(){
23
                  if(this.tagName=='SELECT') {
23
                  if(this.tagName=='SELECT') {
24
                      this.options.length = 0;
24
                      this.options.length = 0;
25
                      $(this).attr('disabled','disabled');
25
                      $(this).attr('disabled','disabled');
26
                  }
26
                  }
27
          });
27
          });
28
  }
28
  }
29
  // заполняем select
29
  // заполняем select
30
  $.fn.fillSelect = function(dataArray) {
30
  $.fn.fillSelect = function(dataArray) {
31
          return this.clearSelect().each(function(){
31
          return this.clearSelect().each(function(){
32
                  if(this.tagName=='SELECT') {
32
                  if(this.tagName=='SELECT') {
33
                          var currentSelect = this;
33
                          var currentSelect = this;
34
                          $.each(dataArray,function(index,data){
34
                          $.each(dataArray,function(index,data){
35
                                  var option = new Option(data.text,data.value);
35
                                  var option = new Option(data.text,data.value);
36
                                  if($.support.cssFloat) {
36
                                  if($.support.cssFloat) {
37
                                          currentSelect.add(option,null);
37
                                          currentSelect.add(option,null);
38
                                  } else {
38
                                  } else {
39
                                          currentSelect.add(option);
39
                                          currentSelect.add(option);
40
                                  }
40
                                  }
41
                          });
41
                          });
42
                  }
42
                  }
43
          });
43
          });
44
  }
44
  }
45
})(jQuery);
45
})(jQuery);
46
</script>
46
</script>
47
<script type='text/javascript'>
47
<script type='text/javascript'>
48
$(document).ready(function(){
48
$(document).ready(function(){
49
  // выбор дистрибутива
49
  // выбор дистрибутива
50
  function chooseDistro(){
50
  function chooseDistro(){
51
        var distValue = $('#dist').val();
51
        var distValue = $('#dist').val();
52
        var tmpSelect = $('#version');
52
        var tmpSelect = $('#version');
53
        if(distValue.length == 0) {
53
        if(distValue.length == 0) {
54
                tmpSelect.attr('disabled','disabled');
54
                tmpSelect.attr('disabled','disabled');
55
                tmpSelect.clearSelect();
55
                tmpSelect.clearSelect();
56
                chooseVersion();
56
                chooseVersion();
57
                $('#replist').css('display','none');
57
                $('#replist').css('display','none');
58
                $('#getfile').css('display','none');
58
                $('#getfile').css('display','none');
59
        } else {
59
        } else {
60
                $.getJSON('./request.php',{d:distValue,step:1},function(data) { tmpSelect.fillSelect(data).attr('disabled',''); chooseVersion(); });
60
                $.getJSON('./request.php',{d:distValue,step:1},function(data) { tmpSelect.fillSelect(data).attr('disabled',''); chooseVersion(); });
61
                $('#replist').css('display','none');
61
                $('#replist').css('display','none');
62
                $('#getfile').css('display','none');
62
                $('#getfile').css('display','none');
63
        }
63
        }
64
  };
64
  };
65
  // Выбор версии дистрибутива
65
  // Выбор версии дистрибутива
66
  function chooseVersion(){
66
  function chooseVersion(){
67
        var distValue = $('#dist').val();
67
        var distValue = $('#dist').val();
68
        var versionValue = $('#version').val();
68
        var versionValue = $('#version').val();
69
        if (distValue != 0 && versionValue != 0) {
69
        if (distValue != 0 && versionValue != 0) {
70
                $.get('./request.php',{d:distValue,v:versionValue,step:2},function(data){ $('#replist').css('display','block'); $('#replist').html(data); });
70
                $.get('./request.php',{d:distValue,v:versionValue,step:2},function(data){ $('#replist').css('display','block'); $('#replist').html(data); });
71
                $.get('./request.php',{d:distValue,v:versionValue,step:3},function(data){ $('#getfile').css('display','block'); $('#getfile').html(data); });
71
                $.get('./request.php',{d:distValue,v:versionValue,step:3},function(data){ $('#getfile').css('display','block'); $('#getfile').html(data); });
72
        } else {
72
        } else {
73
                $('#replist').css('display','none');
73
                $('#replist').css('display','none');
74
                $('#getfile').css('display','none');
74
                $('#getfile').css('display','none');
75
        }
75
        }
76
  }
76
  }
77

77

78
  $('#dist').change(chooseDistro);
78
  $('#dist').change(chooseDistro);
79
  $('#version').change(chooseVersion);
79
  $('#version').change(chooseVersion);
80

80

81
});
81
});
82
</script>
82
</script>
83
";
83
";
84
84
85
$body  = "<fieldset><legend>Дистрибутив</legend>\n";
85
$body  = "<fieldset><legend>Дистрибутив</legend>\n";
86
$body .= "<select id='dist'>\n<option value=''>Выберите дистрибутив</option>\n";
86
$body .= "<select id='dist'>\n<option value=''>Выберите дистрибутив</option>\n";
87
87
88
$query = "SELECT * FROM ".PREFIX."distribution ORDER BY dist_id ASC";
88
$query = "SELECT * FROM ".PREFIX."distribution ORDER BY dist_id ASC";
89
$rq =& $db->query($query);
89
$rq =& $db->query($query);
90
while ($rq->fetchInto($element)) {
90
while ($rq->fetchInto($element)) {
91
    $body .= "<option value='".$secure->checkInt($element["dist_id"])."'>".$secure->checkStr($element["distname"],1)."</option>\n";
91
    $body .= "<option value='".$secure->checkInt($element["dist_id"])."'>".$secure->checkStr($element["distname"],1)."</option>\n";
92
}
92
}
93
$body .= "</select></fieldset>";
93
$body .= "</select></fieldset>";
-
 
94
$body .= "<div id='vdist'>\n<fieldset>\n<legend>Версия дистрибутива</legend>\n";
-
 
95
$body .= "<select id='version' disabled='disabled'><option></option>\n";
-
 
96
$body .= "</select></div>\n";
94
97
95
$tmpl->assign('scripts', $scripts);
98
$tmpl->assign('scripts', $scripts);
96
$tmpl->assign('body', $body);
99
$tmpl->assign('body', $body);
97
100
98
$tmpl->display('default.tpl');
101
$tmpl->display('default.tpl');
99
102
100
?>
103
?>
101
 
104