fe01a20224bd956383c3af04ee3de0d54852a5aa
bernd Webalizer/Statistik-Funktio...

bernd authored 14 years ago

1) <?php
2) 
3) require_once("inc/icons.php");
4) 
5) require_once("vhosts.php");
6) 
7) require_role(ROLE_SYSTEMUSER);
8) 
9) 
10) 
11) if (isset($_REQUEST['vhost']))
12) {
13)   $v = get_vhost_details($_REQUEST['vhost']);
14) 
15)   if (isset($_REQUEST['public']))
16)   {
17)     $v['stats'] = ($_REQUEST['public'] == 1) ? 'public' : 'private';
18)   }
19)   if (isset($_REQUEST['action']))
20)   {
21)     if ($_REQUEST['action'] == 'delete')
22)       $v['stats'] = NULL;
23)     elseif ($_REQUEST['action'] == 'new')
24)       check_form_token('stats_new');
25)   }
26)   save_vhost($v);
27)   redirect('stats');
28) }
29) else
30) {
31) 
32) $all_vhosts = list_vhosts();
33) $stats_vhosts = array();
34) 
35) foreach ($all_vhosts AS $v)
36)   if ($v['stats'])
37)     $stats_vhosts[] = $v;
38) 
39) 
40) $title = "Zugriffs-Statistiken";
41) 
42) output('<h3>Zugriffs-Statistiken</h3>
43) <p>Um die Reichweite und das Publikum Ihrer Internet-Seiten besser einschätzen zu können, besteht die Möglichkeit aus den ggf. vorhandenen Webserver-Logfiles grafisch aufbereitete Statistiken erstellen zu lassen.</p>
44) 
45) <h3>Statistiken für Ihre Seiten</h3>
46) ');
47) 
48) if (count($stats_vhosts) > 0)
49) {
50)   output('
51)   <table><tr><th>Für Website</th><th>Öffentlich abrufbar?</th><th>Operationen</th></tr>
52)   ');
53) 
54)   foreach ($stats_vhosts AS $v)
55)   {
56)     output("<tr>");
57)     output("<td>".internal_link('showstats', $v['fqdn'], "vhost={$v['id']}")."</td>");
58) 
59)     if ($v['stats'] == 'public')
60)       output("<td><a href=\"http://stats.schokokeks.org/{$v['fqdn']}\">".icon_enabled("Diese Statistiken können von jedermann aufgerufen werden. Klicken Sie hier um die öffentliche Version zu sehen.")."</a></td>");
61)     else
62)       output("<td>".icon_disabled("Diese Statistiken können nur hier im Webinterface betrachtet werden.")."</td>");
63)     
64)     output("<td>");
65)     if ($v['stats'] == 'public')
66)       output(internal_link("", other_icon("lock.png", "Statistiken nicht mehr öffentlich anzeigen"), "vhost={$v['id']}&public=0"));
67)     else
68)       output(internal_link("", other_icon("world.png", "Statistiken veröffentlichen"), "vhost={$v['id']}&public=1"));
69)     output(" &#160; ".internal_link("", icon_delete("Diese Statistiken löschen"), "vhost={$v['id']}&action=delete")."</td>");
70)     output("</tr>");
71)   
72)   }
73)   output('</table');
74) }
75) else
76)   output('<em>Für Ihre Seiten werden bisher keine Statistiken erzeugt</em>');
77) 
78) 
79) output("<h3>Weitere Statistiken</h3>");
80) 
81) $sel = array();
82) foreach ($all_vhosts AS $v)
83) {
84)   if ($v['logtype'])
85)   {
86)     $found = False;
87)     foreach ($stats_vhosts AS $s)
88)       if ($s['id'] == $v['id'])
89)         $found = True;
90)     if (! $found)
91)       $sel[$v['id']] = $v['fqdn'];
92)   }
93) }
94) 
95) 
96) output(html_form('stats_new', '', 'action=new', "<p>".html_select("vhost", $sel).'<br/>
97) <input type="radio" name="public" id="public_0" value="0" checked="checked" /><label for="public_0"> Statistiken hier im Webinterface anzeigen</label><br />
bernd Hole Stats-Hostname aus mis...

bernd authored 14 years ago

98) <input type="radio" name="public" id="public_1" value="1" /><label for="public_1"> Statistiken unter '.config('stats_hostname').' veröffentlichen (Ohne Passwortschutz)</label><br />