Changeset 263 for trunk/index.php


Ignore:
Timestamp:
Nov 19, 2009, 7:51:52 AM (15 years ago)
Author:
george
Message:
  • Upraveno: Načítat panely vstupní stránky a seznamy odkazů z databáze.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/index.php

    r260 r263  
    88  var $FullTitle = '<strong>ZděchovNET</strong> - komunitní počítačová síť';
    99  var $ShortTitle = 'Rozcestník';
    10   var $Links = array(
    11     'main' => array('Síť',
    12       array('Finance', '/finance/', 'money.png'),
    13       array('Statistika', 'http://stat.zdechov.net/centrala/', 'chart.png'),
    14       //array('Prohledat sdílení', '/share/', 'prohledavac_sdileni.gif', array('Share', 'Display')),
    15       array('Seznam uživatelů', '/userlist.php', 'comp.png'),
    16       array('Seznam počítačů', '/hostlist.php', 'comp.png'),
    17       array('Sdílení souborů', 'http://wiki.zdechov.net/index.php/DC_hub', 'prohledavac_sdileni.png'),
    18       array('Historie chatu', '/chat/history.php', 'sunrisechat.png', array('Chat', 'Display')),
    19       array('Webový chat', 'http://embed.mibbit.com/?server=game.zdechov.net%3A6667&amp;channel=%23zdechov&amp;forcePrompt=true&amp;charset=utf-8', 'sunrisechat.png'),
    20       array('Fotogalerie', '/galerie/', 'gallery.png'),
    21       array('Diskusní fórum', '/forum/', 'discus.png'),
    22       array('WebMail', 'https://mail.zdechov.net/', 'openwebmail.png'),
    23       array('Jídelníček', '/jidelna/', 'apple.png'),
    24       //array('Televize', 'http://tv.zdechov.net/', ''),
    25       //array('Telefonní seznam', '/telseznam.php', 'tel.gif'),
    26       array('Mapa sítě', '/map/', 'map.png'),
    27       array('Otvírací doby', '/otevreno.php', 'otv_doby.png'),
    28       array('Wiki', 'http://wiki.zdechov.net/', 'clear.png'),
    29       array('Topologie sítě', '/is/topologie.php', 'topologie.png'),
    30       array('Technické informace', '/network.php', 'tech.png'),
    31       array('Webkamera', '/webcam/', 'camera.png'),
    32       array('Vnější stránky sítě', 'http://www.zdechov.net/', ''),
    33       array('Historie sítě', '/history.php', 'history.png'),
    34       //array('Měřič spotřeby', '/merak.php', 'electric.png'),
    35       array('Plánované projekty', '/ukoly.php', ''),
    36     ),
    37     'local' => array('Místní organizace',
    38       array('Obecní úřad', 'http://www.zdechov.cz/', 'obec_zdechov.png'),
    39       array('Motokrosová grapa', 'http://zdechovskagrapa.sweb.cz/', ''),
    40       array('Snowpark', 'http://www.snbzdechov.com/', 'www_snbzdechov_com.png'),
    41       array('Sbor dobrovolných hasičů', 'http://www.sdhzdechov.wz.cz/', ''),
    42       array('TJ Sokol', 'http://fotbal.zdechov.net/', 'socer.png'),   
    43       array('Farnost', 'http://farnost.zdechov.net/', 'cfix.png'),
    44     ),
    45     'citizen' => array('Stránky občanů',
    46        array('Staněk Tatra team', 'http://www.stanek-tatra.cz/', 'www_stanek-tatra_cz.png'),
    47        array('Zděchov.eu', 'http://www.zdechov.eu/', 'obec_zdechov.png'),
    48      ),
    49     'search' => array('Vyhledávání',
    50       array('Google', 'http://www.google.cz/', 'www_google_cz.png'),
    51       array('Morfeo', 'http://morfeo.centrum.cz/', 'morfeo.png'),
    52       array('Centrum', 'http://www.centrum.cz/', 'www_centrum_cz.png'),
    53       array('Seznam', 'http://www.seznam.cz/', 'www_seznam_cz.png'),
    54       array('Atlas', 'http://www.atlas.cz/', 'www_atlas_cz.png'),
    55       array('Tiscali', 'http://www.tiscali.cz/', 'www_tiscali_cz.png'),
    56     ),
    57     'usefull' => array('Užitečné',
    58       array('Mapa ČR', 'http://www.mapy.cz/', 'www_mapy_cz.png'),
    59       array('Online TV', 'http://www.tvinfo.cz/live/televize/evropa/cz', 'www_tvinfo_cz.png'),
    60       array('Jízdní řády', 'http://jizdnirady.idnes.cz/', 'www_idos_cz.png'),
    61       array('TV programy', 'http://tv.atlas.cz/', 'www_atlas_cz.png'),
    62       array('ICQ', 'javascript:openClient(\'flash\')', 'www_icq_com.png'),
    63       array('Slovníky', 'http://www.slovnik.cz/', 'www_slovnik_cz.png'),
    64       array('Počasí', 'http://www.meteopress.cz/', 'pocasi.png'),
    65       array('T-Mobile SMS', 'http://www.tzones.cz/', 'www_tzones_cz.png'),
    66       array('Knihovna&nbsp;Vsetín', 'http://www.mvk.cz/', 'www_mvk_cz.png'),   
    67     ),
    68     'fun' => array('Zábava',
    69       array('Youtube', 'http://www.youtube.com/', 'www_youtube_com.png'),
    70       array('Stream.cz', 'http://www.stream.cz/', 'www_stream_cz.png'),
    71       array('Last.fm', 'http://www.last.fm/', 'www_last_fm.png'),   
    72       array('Ulož.to', 'http://uloz.to/', 'uloz_to.png'),
    73     ),
    74     'hosted' => array('Hostované stránky',
    75       array('Heroes of Fantasy', 'http://www.heroesoffantasy.cz/', 'cube.png'),
    76       array('WoW překlad', 'http://wowpreklad.zdechov.net/', 'cube.png'),
    77       array('Archangel portál', 'http://archangel-portal.cz/', 'clear.png'),
    78       array('Temné časy', 'http://temnecasy.zdechov.net/', 'cube.png'),
    79       array('Sharp MZ community web', 'http://sharp.zdechov.net/', 'clear.png'),
    80     ),
    81     /*'computers' => array('Prodej počítačů',
    82       array('SOFTCOM', 'http://www.softcom.cz/', 'www_computershop_cz.png'),
    83       array('Alfacomp', 'http://www.alfacomp.cz/php/zbozi.php?akc=2', 'www_alfacomp_cz.gif'),
    84       array('Petracomp', 'http://www.petracomp.cz/', 'www_petracomp_cz.png'),
    85       array('TS Bohemia', 'http://interlink.tsbohemia.cz/', 'www_tsbohemia_cz.png'),
    86     ),
    87       */
    88   );
    8910 
    90   function ShowLinks($LinkGroup)
    91   {
    92     $Result = '';
    93     //foreach($this->Links as $LinkGroup)
    94     //{
    95       $Title = array_shift($LinkGroup);
    96       //$Result .= '<h3>'.$Title.'</h3>';
    97       foreach($LinkGroup as $Link)
    98       {
    99         if($Link[2] == '') $Link[2] = 'clear.png';
    100         if(substr($Link[1], 0, 4) != 'http') $Link[1] = $this->System->Config['Web']['RootFolder'].$Link[1];
    101         if(!isset($Link[3]) or (isset($Link[3]) and $this->System->Modules['User']->CheckPermission($Link[3][0], $Link[3][1])))
    102        
    103         $Result .= '<img alt="'.$Link[0].'" src="images/favicons/'.$Link[2].'" width="16" height="16" /> <a href="'.$Link[1].'">'.$Link[0].'</a><br />';
    104       }
    105     //}
    106     return($this->Panel($Title, $Result));
     11  function ShowLinks($GroupId)
     12  {
     13    global $Database;
     14   
     15    $DbResult = $Database->query('SELECT * FROM `HyperlinkGroup` WHERE `Id`='.$GroupId);
     16    $HyperlinkGroup = $DbResult->fetch_assoc();
     17
     18    $Output = '';
     19    $DbResult = $Database->query('SELECT * FROM `Hyperlink` WHERE `Group`='.$GroupId);
     20    while($HyperLink = $DbResult->fetch_assoc())
     21    {
     22      if($HyperLink['IconFile'] == '') $HyperLink['IconFile'] = 'clear.png';
     23        if(substr($HyperLink['URL'], 0, 4) != 'http') $HyperLink['URL'] = $this->System->Config['Web']['RootFolder'].$HyperLink['URL'];
     24        if(($HyperLink['PermissionModule'] == '') or (($HyperLink['PermissionModule'] != '') and $this->System->Modules['User']->CheckPermission($HyperLink['PermissionModule'], $HyperLink['PermissionOperation'])))       
     25        $Output .= '<img alt="'.$HyperLink['Name'].'" src="images/favicons/'.$HyperLink['IconFile'].'" width="16" height="16" /> <a href="'.$HyperLink['URL'].'">'.$HyperLink['Name'].'</a><br />';
     26    }
     27    return($this->Panel($HyperlinkGroup['Name'], $Output));
    10728  }
    10829
     
    371292    $Database->select_db($Config['Database']['Database']);
    372293
     294    // Show pannels
     295    //if(IsInternetAddr()) echo('Internet'); else echo('LAN');
    373296    //$Output .= $this->InfoBar();
    374     $Output .= '<table id="MainTable"><tr><td valign="top">';
    375     $Output .= $this->ShowLinks($this->Links['main']);
    376     $Output .= $this->ShowLinks($this->Links['hosted']);
    377     $Output .= '</td><td valign="top">';
    378     $Output .= $this->ShowLinks($this->Links['search']);
    379     $Output .= $this->ShowLinks($this->Links['usefull']);
    380     $Output .= $this->ShowLinks($this->Links['fun']);
    381     $Output .= $this->ShowLinks($this->Links['local']);
    382     $Output .= $this->ShowLinks($this->Links['citizen']);
    383     $Output .= '</td><td id="NewsColumn" valign="top">';
    384     $Output .= $this->Panel('Aktuality', $this->System->Modules['News']->Show(), array('<a href="?Action=CustomizeNews">Upravit</a>'));
    385     $Output .= '</td><td valign="top">';
    386     if($this->System->Modules['User']->User['Id'] != $this->System->Modules['User']->AnonymousUserId)
    387     $Output .= $this->Panel('Nabídka uživatele', $this->UserPanel());
    388     $Output .= $this->Panel('Kamery', $this->WebcamPanel());
    389     $Output .= $this->Panel('Online počítače', $this->OnlineHostList());
    390     $Output .= '<br />';
    391     $Output .= '</td></tr></table>';
    392     //if(IsInternetAddr()) echo('Internet'); else echo('LAN');
     297    $Output .= '<table id="MainTable"><tr>';
     298    $DbResult = $Database->select('PanelColumn', '*');
     299    while($PanelColumn =  $DbResult->fetch_assoc())
     300    {
     301      if($PanelColumn != '') $Width = ' width="'.$PanelColumn['Width'].'"';
     302        else $Width = '';
     303      $Output .= '<td valign="top"'.$Width.'>';
     304      $DbResult2 = $Database->query('SELECT * FROM  `Panel` WHERE `PanelColumn`='.$PanelColumn['Id'].' ORDER BY `Order`');
     305      while($Panel = $DbResult2->fetch_assoc())
     306      {
     307        if($Panel['Module'] == 'HyperlinkGroup') $Output .= $this->ShowLinks($Panel['Parameters']);
     308        else if($Panel['Module'] == 'OnlineHostList') $Output .= $this->Panel('Online počítače', $this->OnlineHostList());
     309        else if($Panel['Module'] == 'UserOptions')
     310        {
     311          if($this->System->Modules['User']->User['Id'] != $this->System->Modules['User']->AnonymousUserId) $Output .= $this->UserPanel();
     312        } else
     313        if($Panel['Module'] == 'Webcam') $Output .= $this->Panel('Kamery', $this->WebcamPanel());
     314        else if($Panel['Module'] == 'NewsGroupList') $Output .= $this->Panel('Aktuality', $this->System->Modules['News']->Show(), array('<a href="?Action=CustomizeNews">Upravit</a>'));
     315      }
     316      $Output .= '</td>';
     317    } 
     318    $Output .= '</table>';
    393319    return($Output);
    394320  }
Note: See TracChangeset for help on using the changeset viewer.