Хранилища Subversion www_nix-files

Редакция

Редакция 22 | Редакция 30 | К новейшей редакции | Авторство | Сравнить с предыдущей | Последнее изменение | Открыть журнал | RSS

<?php
        require_once dirname(__FILE__)."/lib/init.php";
        include "./inc/header.htm";
?>
 <h2>niX-FILES</h2>
 <h1>любые файлы *nix тематики в локальных сетях Барнаула</h1>
 <h3><i>изучай/пользуй/обновляй линукс вместе с nix-files.org.ru</i></h3>
<?php

$mod = abs(intval($_GET["mod"]));

switch($mod) {
    case 0:
        // table header
        $nets =& $db->query("SELECT * FROM networks");
        echo "<table>";
        echo "<tr>";
        echo "<th>&nbsp;</th><th>&nbsp;</th><th>Ресурс</th>\n";
       
        $netlist = array();
        $netcount = $nets->numRows();
        $n = 0;
        while ($nets->fetchInto($info_nets, DB_FETCHMODE_ASSOC)) {
            // network name & link
            if ($info_nets['link']=="") { echo " <th>".$info_nets['network']."</th>\n"; }
            else { echo " <th><a href='".$info_nets['link']."'>".$info_nets['network']."</a></th>\n"; }
            // netlist
            $netlist[$n] = $info_nets['id'];
            $n++;
        }
       
        echo "</tr>\n";
        // table body
        $cats =& $db->query("SELECT * FROM categories");
        while ($cats->fetchInto($info_cats, DB_FETCHMODE_ASSOC)) {
            $res =& $db->query("SELECT * FROM resources WHERE category_id=".$info_cats['id']);
            $first = true;
            while ($res->fetchInto($info_res, DB_FETCHMODE_ASSOC)) {
                echo "<tr>\n";
               
                // add rowspan on first resource on category
                if ($first) {
                    echo " <td rowspan='".$res->numRows()."'>".$info_cats['category']."</td>\n";
                    $first = false;
                }
               
                // resource picture
                echo " <td><img src='".$info_res['picture']."' alt='".$info_res['resource']."'></td>\n";
               
                // resource name & link
                echo " <td><a href='./details.php?res=".$info_res['id']."'>".$info_res['resource']."</a></td>\n";
               
                // resource state by network
                for ($i=0;$i<$netcount;$i++) {
                    $curstate =& $db->getOne("SELECT state_id FROM res_net_stat WHERE resource_id=".$info_res['id']." AND network_id=".$netlist[$i]);
                    $curimg = "./img/state/unknown.png";
                    if ($curstate == null) {
                        echo " <td>&mdash;</td>\n";
                    }
                    else {
                        // !replace in future!
                        switch ($curstate) {
                            case '1':
                                $curimg = "./img/state/main.png";
                                $curalt = "Основной ресурс";
                            break;
                            case '2':
                                $curimg = "./img/state/mirror.png";
                                $curalt = "Зеркало";
                            break;
                            case '3':
                                $curimg = "./img/state/access.png";
                                $curalt = "Скоростной доступ";
                            break;
                            case '4':
                                $curimg = "./img/state/freeze.png";
                                $curalt = "Заморожен";
                            break;
                        }
                        echo " <td><a href='".$info_res['link_res']."'><img src='".$curimg."' alt='".$curalt."'></a></td>\n";
                    }
                }
                echo "</tr>\n";
            }
        }
        // table footer
        echo "</table>";
        include "./inc/legend.htm";
    break;
    case 1:
        $nets =& $db->query("SELECT * FROM networks");
        echo "<table>";
        echo "<tr>";
        echo "<th>Сеть</th><th>Описание</th><th>Подсети</th><th>Ресурсы</th>";
        while ($nets->fetchInto($info_nets, DB_FETCHMODE_ASSOC)) {
            $res =& $db->query("SELECT *
            FROM res_net_stat
            JOIN resources ON resources.id = res_net_stat.resource_id
            WHERE res_net_stat.network_id="
.$info_nets['id']);
            $reslist = "";
            while ($res->fetchInto($info_res, DB_FETCHMODE_ASSOC)) {
                $reslist .= $info_res['resource']."<br>";
            }
            echo "<tr><td>".$info_nets['network']."</td><td></td><td></td><td>".$reslist."</td></tr>";
        }
        echo "</table>";
    break;
}
        include "./inc/footer.htm";
?>