515954878b5a1a5e7d92a52066b6c6be14bdadc4
[awstats-helper.git] / update-sites.php
1 <?php
2 /**
3  * Updates awstats for multiple sites
4  */
5 require 'config.php';
6
7 function aws_sites()
8 {
9     $sites = array();
10     foreach (glob($GLOBALS['confdir'] . '/awstats.*.conf') as $file) {
11         $sites[] = preg_replace('/^.*awstats.(.+).conf$/', '\\1', $file);
12     }
13     return $sites;
14 }
15
16 function aws_createHtml($site, $last = false)
17 {
18     if (!is_dir($GLOBALS['htmldir'])) {
19         die("HTML directory " . $GLOBALS['htmldir'] . " does not exist\n");
20     }
21
22     if ($last) {
23         $month = date('m', strtotime('last month'));
24         $year  = date('Y', strtotime('last month'));
25     } else {
26         $month = date('m');
27         $year  = date('Y');
28     }
29
30     $dir = $GLOBALS['htmldir'] . '/' . $site . '/' . $year . '-' . $month . '/';
31     if (!is_dir($dir)) {
32         mkdir($dir, 0777, true);
33     }
34     $cmd = $GLOBALS['awsbstp']
35         . ' -config=' . escapeshellarg($site)
36         . ' -awstatsprog=' . escapeshellarg($GLOBALS['awstats'])
37         . ' -update'
38         . ' -month=' . $month
39         . ' -year=' . $year
40         . ' -dir=' . escapeshellarg($dir);
41     passthru($cmd);var_dump($cmd);
42 }
43
44 foreach (aws_sites() as $site) {
45     aws_createHtml($site);
46 }
47 ?>