5 * Portions Copyright 1999-2001 (c) VA Linux Systems
6 * The rest Copyright (c) GForge, LLC
10 * This file is part of GForge.
12 * GForge is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License as published by
14 * the Free Software Foundation; either version 2 of the License, or
15 * (at your option) any later version.
17 * GForge is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 * GNU General Public License for more details.
22 * You should have received a copy of the GNU General Public License
23 * along with GForge; if not, write to the Free Software
24 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 US
27 require ('squal_pre.php');
28 require ('common/include/cron_utils.php');
38 // project stats by month
40 db_begin(SYS_DB_STATS);
41 $err .= "\n\nBeginning stats_project_months: ".date('Y-m-d H:i:s',time());
43 $rel = db_query("DELETE FROM stats_project_months;", -1, 0, SYS_DB_STATS);
44 $err .= db_error(SYS_DB_STATS);
46 $sql="INSERT INTO stats_project_months
47 SELECT month, group_id, ";
48 if ($sys_database_type == 'mysql') {
49 $sql.="avg(developers) AS developers, avg(group_ranking) AS group_ranking, ";
51 $sql.="avg(developers)::int AS developers, avg(group_ranking)::int AS group_ranking, ";
54 avg(group_metric) AS group_metric,
55 sum(logo_showings) AS logo_showings,
56 sum(downloads) AS downloads,
57 sum(site_views) AS site_views ,
58 sum(subdomain_views) AS subdomain_views,
59 sum(page_views) AS page_views,
60 sum(file_releases) AS file_releases,
61 sum(msg_posted) AS msg_posted,
62 sum(msg_uniq_auth) AS msg_uniq_auth,
63 sum(bugs_opened) AS bugs_opened,
64 sum(bugs_closed) AS bugs_closed,
65 sum(support_opened) AS support_opened,
66 sum(support_closed) AS support_closed,
67 sum(patches_opened) AS patches_opened,
68 sum(patches_closed) AS patches_closed,
69 sum(artifacts_opened) AS artifacts_opened,
70 sum(artifacts_closed) AS artifacts_closed,
71 sum(tasks_opened) AS tasks_opened,
72 sum(tasks_closed) AS tasks_closed,
73 sum(help_requests) AS help_requests,
74 sum(cvs_checkouts) AS cvs_checkouts,
75 sum(cvs_commits) AS cvs_commits,
76 sum(cvs_adds) AS cvs_adds
78 GROUP BY month,group_id
80 $rel=db_query($sql, -1, 0, SYS_DB_STATS);
81 $err .= db_error(SYS_DB_STATS);
83 db_commit(SYS_DB_STATS);
85 if ($sys_database_type != 'mysql') {
86 db_query("VACUUM ANALYZE stats_project_months;", -1, 0, SYS_DB_STATS);
91 // main site page views by month
93 db_begin(SYS_DB_STATS);
95 $err .= "\n\nBeginning stats_site_pages_by_month: ".date('Y-m-d H:i:s',time());
97 $rel = db_query("DELETE FROM stats_site_pages_by_month;", -1, 0, SYS_DB_STATS);
98 $err .= db_error(SYS_DB_STATS);
100 $rel=db_query("INSERT INTO stats_site_pages_by_month
101 select month,sum(site_page_views) as site_page_views
102 from stats_site_pages_by_day group by month;
103 ", -1, 0, SYS_DB_STATS);
106 $err .= "ERROR IN stats_site_pages_by_month";
109 $err .= db_error(SYS_DB_STATS);
111 db_commit(SYS_DB_STATS);
113 if ($sys_database_type != 'mysql') {
114 db_query("VACUUM ANALYZE stats_site_pages_by_month;", -1, 0, SYS_DB_STATS);
119 // sitewide stats in last 30 days
121 db_begin(SYS_DB_STATS);
123 $err .= "\n\nBeginning stats_site_months: ".date('Y-m-d H:i:s',time());
125 $rel = db_query("DELETE FROM stats_site_months;", -1, 0, SYS_DB_STATS);
126 $err .= db_error(SYS_DB_STATS);
128 $rel=db_query("INSERT INTO stats_site_months
130 sspbm.site_page_views,
131 SUM(spm.downloads) AS downloads,
132 SUM(spm.subdomain_views) AS subdomain_views,
133 SUM(spm.msg_posted) AS msg_posted,
134 SUM(spm.bugs_opened) AS bugs_opened,
135 SUM(spm.bugs_closed) AS bugs_closed,
136 SUM(spm.support_opened) AS support_opened,
137 SUM(spm.support_closed) AS support_closed,
138 SUM(spm.patches_opened) AS patches_opened,
139 SUM(spm.patches_closed) AS patches_closed,
140 SUM(spm.artifacts_opened) AS artifacts_opened,
141 SUM(spm.artifacts_closed) AS artifacts_closed,
142 SUM(spm.tasks_opened) AS tasks_opened,
143 SUM(spm.tasks_closed) AS tasks_closed,
144 SUM(spm.help_requests) AS help_requests,
145 SUM(spm.cvs_checkouts) AS cvs_checkouts,
146 SUM(spm.cvs_commits) AS cvs_commits,
147 SUM(spm.cvs_adds) AS cvs_adds
148 FROM stats_project_months spm, stats_site_pages_by_month sspbm
149 WHERE spm.month=sspbm.month
150 GROUP BY spm.month,sspbm.site_page_views
151 ORDER BY spm.month ASC;
152 ", -1, 0, SYS_DB_STATS);
154 $err .= db_error(SYS_DB_STATS);
156 db_commit(SYS_DB_STATS);
158 if ($sys_database_type != 'mysql') {
159 db_query("VACUUM ANALYZE stats_site_months;", -1, 0, SYS_DB_STATS);