27,93 → 27,35 |
$query->fetchInto($antv, DB_FETCHMODE_ASSOC); |
$antversion = $antv["optvalue"]; |
|
$scripts = " |
(function($){ |
// очищаем select |
$.fn.clearSelect = function() { |
return this.each(function(){ |
if(this.tagName=='SELECT') { |
this.options.length = 0; |
$(this).attr('disabled','disabled'); |
} |
}); |
} |
// заполняем select |
$.fn.fillSelect = function(dataArray) { |
return this.clearSelect().each(function(){ |
if(this.tagName=='SELECT') { |
var currentSelect = this; |
$.each(dataArray,function(index,data){ |
var option = new Option(data.text,data.value); |
if($.support.cssFloat) { |
currentSelect.add(option,null); |
} else { |
currentSelect.add(option); |
} |
}); |
} |
}); |
} |
})(jQuery); |
</script> |
<script type='text/javascript'> |
$(document).ready(function(){ |
// выбор дистрибутива |
function adjustDistro(){ |
var distroValue = $('#distro').val(); |
var tmpSelect = $('#distver'); |
if(distroValue.length == 0) { |
tmpSelect.attr('disabled','disabled'); |
tmpSelect.clearSelect(); |
adjustReps(); |
$('#replist').css('display','none'); |
$('#getfile').css('display','none'); |
} else { |
$.getJSON('m-process.php',{d:distroValue,status:1},function(data) { tmpSelect.fillSelect(data).attr('disabled',''); adjustReps(); }); |
$('#replist').css('display','none'); |
$('#getfile').css('display','none'); |
} |
}; |
// Выбор версии дистрибутива |
function adjustReps(){ |
var distroValue = $('#distro').val(); |
var versionValue = $('#distver').val(); |
if (distroValue != 0 && versionValue != 0) { |
$.get('m-process.php',{d:distroValue,v:versionValue,status:2},function(data){ $('#replist').css('display','block'); $('#replist').html(data); }); |
$.get('m-process.php',{d:distroValue,v:versionValue,status:3},function(data){ $('#getfile').css('display','block'); $('#getfile').html(data); }); |
} else { |
$('#replist').css('display','none'); |
$('#getfile').css('display','none'); |
} |
} |
$info = array(); |
|
$('#distro').change(adjustDistro); |
$('#distver').change(adjustReps); |
$info = $core->getInfo($_SERVER["HTTP_USER_AGENT"],$db); |
|
}); |
"; |
$telepathy = "<h2>Генератор sources.list</h2><p>".$info[1]; |
|
$query =& $db->query("SELECT * FROM distribution"); |
while ($query->fetchInto($data, DB_FETCHMODE_ASSOC)) { |
$linux .= "<option value='".$data["dist_id"]."'>".stripslashes($data["distname"])."</option>\n"; |
} |
if ($info[0]!="unknown") { |
$cnt = count($info); |
switch ($cnt) { |
case '2': |
$telepathy .= "GNU/Linux, но явно не та, которую мы поддерживаем или дистрибутив и его версия тчательно замаскированы. Если это маскировка, то можно попробовать сгенерировать sources.list “<a href='./modern.php'>вручную</a>”.</p>"; |
break; |
case '4': |
$telepathy .= "<em>".$info[3]."</em>, а что за версия не могу разобрать. Попробуем создать sources.list “<a href='./modern.php'>вручную</a>”?</p>"; |
break; |
case '6': |
$telepathy .= "<em>".$info[3]." ".$info[5]."</em>. Если это не так, то выберите дистрибутив и версию <a href='./modern.php'>вручную</a>.</p>"; |
$telepathy .= "<p>Для этой версии у нас есть следующие репозитории (список нужно скопировать в файл <span id='sourceslist'>/etc/apt/sources.list</span>):</p>"; |
$telepathy .= "<pre># Ant: sources.list generator :: http://track.altlug.ru/projects/show/ant\n\n".$core->getRepList($info[2],$info[4],$db)."</pre>"; |
$telepathy .= "<p><a href='./get.php?id=".$info[2].",".$info[4]."'>Получить sources.list файлом</a></p>"; |
break; |
} |
} else { |
$telepathy .= "</p>"; |
}; |
|
$modern .= "<h2>Генератор sources.list</h2>"; |
$modern .= "<div class='border'>"; |
$modern .= "<label>Дистрибутив</label><br>"; |
$modern .= "<select id='distro'>\n<option value=''>Выбрать дистрибутив</option>\n"; |
$modern .= $linux."</select>"; |
$modern .= "</div><div class='border'>"; |
$modern .= "<label>Версия дистрибутива</label><br>"; |
$modern .= "<select id='distver' disabled='disabled'><option></option>"; |
$modern .= "</select></div>"; |
$modern .= "<pre id='replist'></pre>"; |
$modern .= "<p id='getfile'></p>"; |
|
$smarty->assign('modern',$modern); |
$smarty->assign('scripts',$scripts); |
$smarty->assign('modern',$telepathy); |
$smarty->assign('antversion',$antversion); |
$smarty->assign('interface'," • <a href='./classic.php'>Классический интерфейс</a>"); |
$smarty->assign('interface'," • <a href='./classic.php'>Классический интерфейс</a> • <a href='./modern.php'>Современный интерфейс</a>"); |
|
$smarty->display('modern.tpl'); |
|