1 | <?php
|
---|
2 | include_once('global.php');
|
---|
3 |
|
---|
4 | class NetworkInformationPage extends Page
|
---|
5 | {
|
---|
6 | var $FullTitle = 'Technické informace o síti';
|
---|
7 | var $ShortTitle = 'Technické informace';
|
---|
8 |
|
---|
9 | function Show()
|
---|
10 | {
|
---|
11 | $Output = '';
|
---|
12 | if(!array_key_exists('section', $_GET)) $_GET['section'] = '';
|
---|
13 | switch($_GET['section'])
|
---|
14 | {
|
---|
15 | case 'obsazeni_wifi_kanalu':
|
---|
16 | // http://en.wikipedia.org/wiki/List_of_WLAN_channels
|
---|
17 | //$ChannelList = array(2412 => 1, 2417 => 2, 2422 => 3, 2427 => 4, 2432 => 5, 2437 => 6, 2442 => 7, 2447 => 8, 2452 => 9, 2457 => 10, 2462 => 11, 2467 => 12, 2472 => 13, 5200 => 40, 5205 => 41, 5210 => 42, 5215 => 43, 5220 => 44, 5225 => 45, 5230 => 46, 5235 => 47, 5240 => 48, 5245 => 49, 5250 => 50, 5255 => 51, 5260 => 52, 5265 => 53, 5270 => 54, 5275 => 55, 5280 => 56, 5285 => 57, 5290 => 58, 5295 => 59, 5300 => 60, 5500 => 100, 5520 => 104, 5540 => 108, 5560 => 112, 5580 => 116, 5600 => 120, 5620 => 124, 5640 => 128, 5660 => 132, 5700 => 140, 5720 => 144);
|
---|
18 | $Output .= '<div align="center">'.
|
---|
19 | '<a href="?section=obsazeni_wifi_kanalu&range=a">Pásmo 2,4 GHz (a)</a> '.
|
---|
20 | '<a href="?section=obsazeni_wifi_kanalu&range=bc">Pásmo 5 GHz dolní (b, c)</a> '.
|
---|
21 | '<a href="?section=obsazeni_wifi_kanalu&range=d">Pásmo 5 GHz horní (d)</a> '.
|
---|
22 | '<a href="http://www.ctu.cz/1/download/Opatreni%20obecne%20povahy/VO_R_12_08_2005_34.pdf">VO_R_12_08_2005_34</a><br/>'.
|
---|
23 | '<strong>Seznam známých AP a obsazení kmitočtových pásem:</strong></div>'.
|
---|
24 | '<table class="WideTable">'.
|
---|
25 | '<tr><th/><br/>SSID<br/><br/></th>';
|
---|
26 | $ChannelList = array();
|
---|
27 | if(!array_key_exists('range', $_GET)) $_GET['range'] = 'a';
|
---|
28 | if($_GET['range'] == 'a')
|
---|
29 | {
|
---|
30 | $Where = '(Frequency < 5000)';
|
---|
31 | for($Freq = 2402; $Freq <= 2482; $Freq = $Freq + 5) $ChannelList[] = $Freq;
|
---|
32 | }
|
---|
33 | if($_GET['range'] == 'bc')
|
---|
34 | {
|
---|
35 | $Where = '(Frequency >= 5000) AND (Frequency <= 5350)';
|
---|
36 | for($Freq = 5150; $Freq <= 5350; $Freq = $Freq + 5) $ChannelList[] = $Freq;
|
---|
37 | }
|
---|
38 | if($_GET['range'] == 'd')
|
---|
39 | {
|
---|
40 | $Where = '(Frequency >= 5470)';
|
---|
41 | for($Freq = 5470; $Freq <= 5725; $Freq = $Freq + 5) $ChannelList[] = $Freq;
|
---|
42 | }
|
---|
43 |
|
---|
44 | foreach($ChannelList as $Frequency)
|
---|
45 | {
|
---|
46 | $Output .= '<th><div class="RotatedHeader">'.$Frequency.'<div></th>';
|
---|
47 | }
|
---|
48 | $Output .= '</tr>';
|
---|
49 | $DbResult = $this->Database->query('SELECT Frequency FROM NetworkAP WHERE '.$Where.' GROUP BY Frequency');
|
---|
50 | while($DbRow = $DbResult->fetch_assoc())
|
---|
51 | {
|
---|
52 | $DbResult2 = $this->Database->query('SELECT * FROM NetworkAP WHERE Frequency='.$DbRow['Frequency'].' AND '.$Where);
|
---|
53 | while($DbRow2 = $DbResult2->fetch_assoc())
|
---|
54 | {
|
---|
55 | $LowFrequency = $DbRow['Frequency'] - $DbRow2['ChannelWidth'] / 2;
|
---|
56 | $HighFrequency = $DbRow['Frequency'] + $DbRow2['ChannelWidth'] / 2;
|
---|
57 | $Output .= '<tr><td>'.$DbRow2['SSID'].'</td>';
|
---|
58 | foreach($ChannelList as $Frequency)
|
---|
59 | {
|
---|
60 | if(($LowFrequency <= ($Frequency - 2.5)) and ($HighFrequency >= ($Frequency + 2.5))) $Color = '#808080';
|
---|
61 | else if(($LowFrequency == $Frequency) or ($HighFrequency == $Frequency)) $Color = '#c0c0c0';
|
---|
62 | else $Color = '#ffffff';
|
---|
63 | $Output .= '<td style="background-color: '.$Color.';"> </td>';
|
---|
64 | }
|
---|
65 |
|
---|
66 | $Output .= '</tr>';
|
---|
67 | }
|
---|
68 | }
|
---|
69 | $Output .= '</table>';
|
---|
70 | break;
|
---|
71 | default:
|
---|
72 | $Output .= '<a href="?section=obsazeni_wifi_kanalu">Obsazení Wi-Fi kanálů</a><br />';
|
---|
73 | $Output .= '<a href="network/dostupnost.php">Měření dostupnosti zařízení</a><br />';
|
---|
74 | $Output .= '<a href="network/subnet.php">Výpis registrovaných podsítí</a><br />';
|
---|
75 | $Output .= '<a href="tkr.php">Kanály kabelové televize</a>';
|
---|
76 | }
|
---|
77 | return($Output);
|
---|
78 | }
|
---|
79 | }
|
---|
80 |
|
---|
81 | $System->AddModule(new NetworkInformationPage());
|
---|
82 | $System->Modules['NetworkInformationPage']->GetOutput();
|
---|
83 |
|
---|
84 | ?>
|
---|