Changeset 263


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.
Location:
trunk
Files:
2 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  }
  • trunk/sql/updates/262.sql

    r262 r263  
    11ALTER TABLE `NetworkMark` ADD INDEX ( `Comment` ) ;
     2
     3ALTER TABLE `HostedProject`  ENGINE = InnoDB;
     4
     5CREATE TABLE IF NOT EXISTS `Hyperlink` (
     6  `Id` int(11) NOT NULL auto_increment,
     7  `Name` varchar(255) collate utf8_czech_ci NOT NULL,
     8  `URL` varchar(255) collate utf8_czech_ci NOT NULL,
     9  `Group` int(11) NOT NULL,
     10  `IconFile` varchar(255) collate utf8_czech_ci NOT NULL,
     11  `PermissionModule` varchar(255) collate utf8_czech_ci NOT NULL,
     12  `PermissionOperation` varchar(255) collate utf8_czech_ci NOT NULL,
     13  `Enable` int(11) NOT NULL default '1',
     14  PRIMARY KEY  (`Id`),
     15  KEY `Group` (`Group`),
     16  KEY `Enable` (`Enable`)
     17) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=57 ;
     18
     19INSERT INTO `Hyperlink` (`Id`, `Name`, `URL`, `Group`, `IconFile`, `PermissionModule`, `PermissionOperation`, `Enable`) VALUES
     20(1, 'Finance', '/finance/', 1, 'money.png', '', '', 1),
     21(2, 'Statistika', 'http://stat.zdechov.net/centrala/', 1, 'chart.png', '', '', 1),
     22(3, 'Seznam uživatelů', '/userlist.php', 1, 'comp.png', '', '', 1),
     23(4, 'Seznam počítačů', '/hostlist.php', 1, 'comp.png', '', '', 1),
     24(5, 'Sdílení souborů', 'http://wiki.zdechov.net/index.php/DC_hub', 1, 'prohledavac_sdileni.png', '', '', 1),
     25(6, 'Historie chatu', '/chat/history.php', 1, 'sunrisechat.png', 'Chat', 'Display', 1),
     26(7, 'Webový chat', 'http://embed.mibbit.com/?server=game.zdechov.net%3A6667&amp;channel=%23zdechov&amp;forcePrompt=true&amp;charset=utf-8', 1, 'sunrisechat.png', '', '', 1),
     27(8, 'Fotogalerie', '/galerie/', 1, 'gallery.png', '', '', 1),
     28(9, 'Diskusní fórum', '/forum/', 1, 'discus.png', '', '', 1),
     29(10, 'WebMail', 'https://mail.zdechov.net/', 1, 'openwebmail.png', '', '', 1),
     30(11, 'Jídelníček', '/jidelna/', 1, 'apple.png', '', '', 1),
     31(12, 'Mapa sítě', '/map/', 1, 'map.png', '', '', 1),
     32(13, 'Otvírací doby', '/otevreno.php', 1, 'otv_doby.png', '', '', 1),
     33(14, 'Wiki', 'http://wiki.zdechov.net/', 1, 'clear.png', '', '', 1),
     34(15, 'Topologie sítě', '/is/topologie.php', 1, 'topologie.png', '', '', 1),
     35(16, 'Technické informace', '/network.php', 1, 'tech.png', '', '', 1),
     36(17, 'Webkamera', '/webcam/', 1, 'camera.png', '', '', 1),
     37(18, 'Vnější stránky sítě', 'http://www.zdechov.net/', 1, '', '', '', 1),
     38(19, 'Historie sítě', '/history.php', 1, 'history.png', '', '', 1),
     39(20, 'Plánované projekty', '/ukoly.php', 1, '', '', '', 1),
     40(21, 'Obecní úřad', 'http://www.zdechov.cz/', 2, 'obec_zdechov.png', '', '', 1),
     41(22, 'Motokrosová grapa', 'http://zdechovskagrapa.sweb.cz/', 2, '', '', '', 1),
     42(23, 'Snowpark', 'http://www.snbzdechov.com/', 2, 'www_snbzdechov_com.png', '', '', 1),
     43(24, 'Sbor dobrovolných hasičů', 'http://www.sdhzdechov.wz.cz/', 2, '', '', '', 1),
     44(25, 'TJ Sokol', 'http://fotbal.zdechov.net/', 2, 'socer.png', '', '', 1),
     45(26, 'Farnost', 'http://farnost.zdechov.net/', 2, 'cfix.png', '', '', 1),
     46(27, 'Staněk Tatra team', 'http://www.stanek-tatra.cz/', 3, 'www_stanek-tatra_cz.png', '', '', 1),
     47(28, 'Zděchov.eu', 'http://www.zdechov.eu/', 3, 'obec_zdechov.png', '', '', 1),
     48(29, 'Google', 'http://www.google.cz/', 4, 'www_google_cz.png', '', '', 1),
     49(30, 'Morfeo', 'http://morfeo.centrum.cz/', 4, 'morfeo.png', '', '', 1),
     50(31, 'Centrum', 'http://www.centrum.cz/', 4, 'www_centrum_cz.png', '', '', 1),
     51(32, 'Seznam', 'http://www.seznam.cz/', 4, 'www_seznam_cz.png', '', '', 1),
     52(33, 'Atlas', 'http://www.atlas.cz/', 4, 'www_atlas_cz.png', '', '', 1),
     53(34, 'Tiscali', 'http://www.tiscali.cz/', 4, 'www_tiscali_cz.png', '', '', 1),
     54(35, 'Mapa ČR', 'http://www.mapy.cz/', 5, 'www_mapy_cz.png', '', '', 1),
     55(36, 'Online TV', 'http://www.tvinfo.cz/live/televize/evropa/cz', 5, 'www_tvinfo_cz.png', '', '', 1),
     56(37, 'Jízdní řády', 'http://jizdnirady.idnes.cz/', 5, 'www_idos_cz.png', '', '', 1),
     57(38, 'TV programy', 'http://tv.atlas.cz/', 5, 'www_atlas_cz.png', '', '', 1),
     58(39, 'ICQ', 'javascript:openClient(\\''flash\\'')', 5, 'www_icq_com.png', '', '', 1),
     59(40, 'Slovníky', 'http://www.slovnik.cz/', 5, 'www_slovnik_cz.png', '', '', 1),
     60(41, 'Počasí', 'http://www.meteopress.cz/''', 5, 'pocasi.png', '', '', 1),
     61(42, 'T-Mobile SMS', 'http://www.tzones.cz/', 5, 'www_tzones_cz.png', '', '', 1),
     62(43, 'Knihovna&nbsp;Vsetín', 'http://www.mvk.cz/', 5, 'www_mvk_cz.png', '', '', 1),
     63(44, 'Youtube', 'http://www.youtube.com/', 6, 'www_youtube_com.png', '', '', 1),
     64(45, 'Stream.cz', 'http://www.stream.cz/', 6, 'www_stream_cz.png', '', '', 1),
     65(46, 'Last.fm', 'http://www.last.fm/', 6, 'www_last_fm.png', '', '', 1),
     66(47, 'Ulož.to', 'http://uloz.to/', 6, 'uloz_to.png', '', '', 1),
     67(48, 'SOFTCOM', 'http://www.softcom.cz', 8, 'www_computershop_cz.png', '', '', 1),
     68(49, 'Alfacomp', 'http://www.alfacomp.cz/php/zbozi.php?akc=2', 8, 'www_alfacomp_cz.png', '', '', 1),
     69(50, 'Petracomp', 'http://www.petracomp.cz/', 8, 'www_petracomp_cz.png', '', '', 0),
     70(51, 'TS Bohemia', 'http://interlink.tsbohemia.cz/', 8, 'www_tsbohemia_cz.png', '', '', 1),
     71(52, 'Heroes of Fantasy', 'http://www.heroesoffantasy.cz/', 7, 'cube.png', '', '', 1),
     72(53, 'WoW překlad', 'http://wowpreklad.zdechov.net/', 7, 'cube.png', '', '', 1),
     73(54, 'Archangel portál', 'http://archangel-portal.cz/', 7, 'clear.png', '', '', 1),
     74(55, 'Temné časy', 'http://temnecasy.zdechov.net/', 7, 'cube.png', '', '', 1),
     75(56, 'Sharp MZ community web', 'http://sharp.zdechov.net/', 7, '', '', '', 1);
     76
     77CREATE TABLE IF NOT EXISTS `HyperlinkGroup` (
     78  `Id` int(11) NOT NULL auto_increment,
     79  `Name` varchar(255) collate utf8_czech_ci NOT NULL,
     80  PRIMARY KEY  (`Id`)
     81) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=9 ;
     82
     83INSERT INTO `HyperlinkGroup` (`Id`, `Name`) VALUES
     84(1, 'Síť'),
     85(2, 'Místní organizace'),
     86(3, 'Stránky občanů'),
     87(4, 'Vyhledávání'),
     88(5, 'Užitečné'),
     89(6, 'Zábava'),
     90(7, 'Hostované stránky'),
     91(8, 'Prodej počítačů');
     92
     93CREATE TABLE IF NOT EXISTS `Panel` (
     94  `Id` int(11) NOT NULL auto_increment,
     95  `Module` varchar(255) collate utf8_czech_ci NOT NULL,
     96  `Parameters` varchar(255) collate utf8_czech_ci NOT NULL,
     97  `Order` int(11) NOT NULL,
     98  `PanelColumn` int(11) NOT NULL,
     99  PRIMARY KEY  (`Id`),
     100  KEY `PanelColumn` (`PanelColumn`)
     101) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=12 ;
     102
     103INSERT INTO `Panel` (`Id`, `Module`, `Parameters`, `Order`, `PanelColumn`) VALUES
     104(1, 'HyperlinkGroup', '1', 1, 1),
     105(2, 'HyperlinkGroup', '7', 2, 1),
     106(3, 'HyperlinkGroup', '4', 1, 2),
     107(4, 'HyperlinkGroup', '5', 2, 2),
     108(5, 'HyperlinkGroup', '6', 3, 2),
     109(6, 'HyperlinkGroup', '2', 4, 2),
     110(7, 'HyperlinkGroup', '3', 5, 2),
     111(8, 'NewsGroupList', '', 1, 3),
     112(9, 'Webcam', '', 2, 4),
     113(10, 'OnlineHostList', '', 3, 4),
     114(11, 'UserOptions', '', 1, 4);
     115
     116CREATE TABLE IF NOT EXISTS `PanelColumn` (
     117  `Id` int(11) NOT NULL auto_increment,
     118  `Width` varchar(255) collate utf8_czech_ci NOT NULL,
     119  PRIMARY KEY  (`Id`)
     120) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=5 ;
     121
     122INSERT INTO `PanelColumn` (`Id`, `Width`) VALUES
     123(1, ''),
     124(2, ''),
     125(3, '50%'),
     126(4, '');
     127
     128ALTER TABLE `Panel`
     129  ADD CONSTRAINT `Panel_ibfk_1` FOREIGN KEY (`PanelColumn`) REFERENCES `PanelColumn` (`Id`);
     130 
     131ALTER TABLE `Hyperlink`
     132  ADD CONSTRAINT `Hyperlink_ibfk_1` FOREIGN KEY (`Group`) REFERENCES `HyperlinkGroup` (`Id`);
Note: See TracChangeset for help on using the changeset viewer.