Huge script change, see http://forum.mxchange.org/topic-458.html for details:
[mailer.git] / inc / modules / admin / what-surfbar_stats.php
1 <?php
2 /************************************************************************
3  * MXChange v0.2.1                                    Start: 09/09/2008 *
4  * ================                             Last change: 09/09/2008 *
5  *                                                                      *
6  * -------------------------------------------------------------------- *
7  * File              : what-surfbar_stats.php                           *
8  * -------------------------------------------------------------------- *
9  * Short description : Surfbar URL statistics                           *
10  * -------------------------------------------------------------------- *
11  * Kurzbeschreibung  : URL-Statistiken fuer die Surfbar                 *
12  * -------------------------------------------------------------------- *
13  * $Revision::                                                        $ *
14  * $Date::                                                            $ *
15  * $Tag:: 0.2.1-FINAL                                                 $ *
16  * $Author::                                                          $ *
17  * Needs to be in all Files and every File needs "svn propset           *
18  * svn:keywords Date Revision" (autoprobset!) at least!!!!!!            *
19  * -------------------------------------------------------------------- *
20  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
21  * For more information visit: http://www.mxchange.org                  *
22  *                                                                      *
23  * This program is free software; you can redistribute it and/or modify *
24  * it under the terms of the GNU General Public License as published by *
25  * the Free Software Foundation; either version 2 of the License, or    *
26  * (at your option) any later version.                                  *
27  *                                                                      *
28  * This program is distributed in the hope that it will be useful,      *
29  * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
30  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
31  * GNU General Public License for more details.                         *
32  *                                                                      *
33  * You should have received a copy of the GNU General Public License    *
34  * along with this program; if not, write to the Free Software          *
35  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *
36  * MA  02110-1301  USA                                                  *
37  ************************************************************************/
38
39 // Some security stuff...
40 if ((!defined('__SECURITY')) || (!isAdmin())) {
41         die();
42 }
43
44 // Add description as navigation point
45 addMenuDescription('admin', __FILE__);
46
47 // Is the 'url_id' set?
48 if (isGetRequestElementSet(('url_id'))) {
49         // Generate general statistics
50         $result = SQL_QUERY_ESC("SELECT `userid`,`count` AS `total_visits`, UNIX_TIMESTAMP(`last_surfed`) AS `last_surfed`
51 FROM `{?_MYSQL_PREFIX?}_surfbar_stats`
52 WHERE `url_id`=%s
53 ORDER BY `userid` ASC",
54         array(bigintval(getRequestElement('url_id'))), __FILE__, __LINE__);
55
56         // Entries found?
57         if (SQL_NUMROWS($result) > 0) {
58                 // Get all rows
59                 $OUT = ''; $SW = 2; $cnt = 0; $visits = 0;
60                 while ($content = SQL_FETCHARRAY($result)) {
61                         // Count totals
62                         $visits += $content['total_visits'];
63
64                         // "Translate" some data
65                         $content['userid']       = generateUserProfileLink($content['userid']);
66                         $content['total_visits'] = translateComma($content['total_visits']);
67                         $content['last_surfed']  = generateDateTime($content['last_surfed'], '2');
68                         $content['sw']           = $SW;
69
70                         // Load row template
71                         $OUT .= loadTemplate('admin_surfbar_url_stats_row', true, $content);
72                         $cnt++; $SW = 3 - $SW;
73                 } // END - while
74
75                 // Prepare content
76                 $content = array(
77                         'rows'    => $OUT,
78                         'userids' => $cnt,
79                         'visits'  => $visits
80                 );
81
82
83                 // Load main template
84                 loadTemplate('admin_surfbar_url_stats', false, $content);
85         } else {
86                 // No statistics so far
87                 loadTemplate('admin_settings_saved', false, getMessage('ADMIN_SURFBAR_NO_URL_STATS'));
88         }
89 } else {
90         // Generate general statistics
91         $result = SQL_QUERY("SELECT
92         `userid`, COUNT(`url_id`) AS `visited_urls`, SUM(`count`) AS `total_visits`
93 FROM
94         `{?_MYSQL_PREFIX?}_surfbar_stats`
95 GROUP BY
96         `userid`
97 ORDER BY
98         `userid` ASC", __FILE__, __LINE__);
99
100         // Entries found?
101         if (SQL_NUMROWS($result) > 0) {
102                 // Get all rows
103                 $OUT = ''; $SW = 2; $urls = 0; $visits = 0;
104                 while ($content = SQL_FETCHARRAY($result)) {
105                         // Count totals
106                         $urls   += $content['visited_urls'];
107                         $visits += $content['total_visits'];
108
109                         // "Translate" some data
110                         $content['userid']       = generateUserProfileLink($content['userid']);
111                         $content['visited_urls'] = translateComma($content['visited_urls']);
112                         $content['total_visits'] = translateComma($content['total_visits']);
113                         $content['sw']           = $SW;
114
115                         // Load row template
116                         $OUT .= loadTemplate('admin_surfbar_stats_row', true, $content);
117                         $SW = 3 - $SW;
118                 } // END - while
119
120                 // Prepare content
121                 $content = array(
122                         'rows'   => $OUT,
123                         'urls'   => $urls,
124                         'visits' => $visits
125                 );
126
127
128                 // Load main template
129                 loadTemplate('admin_surfbar_stats', false, $content);
130         } else {
131                 // No statistics so far
132                 loadTemplate('admin_settings_saved', false, getMessage('ADMIN_SURFBAR_NO_STATS'));
133         }
134 }
135
136 // Free result
137 SQL_FREERESULT($result);
138
139 //
140 ?>