aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrett Profitt <brett.profitt@gmail.com>2012-02-07 16:19:51 -0800
committerBrett Profitt <brett.profitt@gmail.com>2012-02-07 16:20:38 -0800
commit6064884c3132e55d69f6def45e618655101ad1c3 (patch)
tree82f29547fe9f3a036d0df56bcc2bd15d32c1a195
parenta2e4f84be4da51b7ec8fbe625b1b26dde2ad9289 (diff)
downloadelgg-6064884c3132e55d69f6def45e618655101ad1c3.tar.gz
elgg-6064884c3132e55d69f6def45e618655101ad1c3.tar.bz2
Refs #16. Added stats page.
-rw-r--r--languages/en.php11
-rw-r--r--start.php3
-rw-r--r--views/default/admin/statistics/tidypics.php57
-rw-r--r--views/default/tidypics/admin/stats.php36
4 files changed, 69 insertions, 38 deletions
diff --git a/languages/en.php b/languages/en.php
index 6f3de51ef..54cf2f258 100644
--- a/languages/en.php
+++ b/languages/en.php
@@ -12,6 +12,7 @@ $english = array(
'album' => "Photo Album",
'albums' => "Photo Albums",
'admin:settings:tidypics' => 'Tidypics',
+ 'admin:statistics:tidypics' => 'Tidypics',
'photos:add' => "Create album",
'images:upload' => "Upload photos",
@@ -49,7 +50,7 @@ $english = array(
'tidypics:viewsbyowner' => "by %s users (not including you)",
'tidypics:viewsbyothers' => "(%s by you)",
'tidypics:administration' => 'Tidypics Administration',
- 'tidypics:stats' => 'Stats',
+ 'tidypics:stats' => 'Tidypics Stats',
'tidypics:nophotosingroup' => 'This groups does not have any photos yet',
'tidypics:upgrade' => 'Upgrade',
'tidypics:sort' => 'Sorting the %s album',
@@ -89,6 +90,14 @@ $english = array(
'tidypics:option:none' => 'None',
'tidypics:option:cover' => 'Cover',
'tidypics:option:set' => 'Set',
+
+ // stats
+ 'tidypics:stats:images' => 'Total images',
+ 'tidypics:stats:albums' => 'Total albums',
+ 'tidypics:stats:photo_comments' => 'Total comments on photos',
+ 'tidypics:stats:album_comments' => 'Total comments on albums',
+ 'tidypics:stats:views' => 'Total views',
+ 'tidypics:stats:tags' => 'Total tags',
//actions
'album:create' => "Create new album",
diff --git a/start.php b/start.php
index f1fdf8434..5ea04f160 100644
--- a/start.php
+++ b/start.php
@@ -48,8 +48,9 @@ function tidypics_init() {
// Add photos link to owner block/hover menus
elgg_register_plugin_hook_handler('register', 'menu:owner_block', 'tidypics_owner_block_menu');
- // Add admin menu item
+ // Add admin menu items
elgg_register_admin_menu_item('configure', 'tidypics', 'settings');
+ elgg_register_admin_menu_item('administer', 'tidypics', 'statistics');
// Register for search
elgg_register_entity_type('object', 'image');
diff --git a/views/default/admin/statistics/tidypics.php b/views/default/admin/statistics/tidypics.php
new file mode 100644
index 000000000..3e4af782a
--- /dev/null
+++ b/views/default/admin/statistics/tidypics.php
@@ -0,0 +1,57 @@
+<?php
+/**
+ * Tidypics admin stats page.
+ */
+
+$stats = array();
+
+$img_type = get_subtype_id('object', 'image');
+$query = "SELECT count(guid) as total from {$CONFIG->dbprefix}entities where subtype={$img_type}";
+$total = get_data_row($query);
+$num_images = $total->total;
+$stats['images'] = $total->total;
+
+$img_type = get_subtype_id('object', 'album');
+$query = "SELECT count(guid) as total from {$CONFIG->dbprefix}entities where subtype={$img_type}";
+$total = get_data_row($query);
+$num_albums = $total->total;
+$stats['albums'] = $total->total;
+
+$options = array(
+ 'count' => true,
+ 'type' => 'object',
+ 'subtype' => 'image',
+ 'annotation_name' => 'generic_comment'
+);
+
+$stats['photo_comments'] = elgg_get_annotations($options);
+
+$options['subtype'] = 'album';
+$stats['album_comments'] = elgg_get_annotations($options);
+
+$options['subtype'] = 'image';
+$options['annotation_name'] = 'tp_view';
+$stats['views'] = elgg_get_annotations($options);
+
+if (elgg_get_plugin_setting('tagging', 'tidypics') != 'disabled') {
+ $options['annotation_name'] = 'phototag';
+ $stats['tags'] = elgg_get_annotations($options);
+}
+
+$content = '<table class="elgg-table-alt">';
+
+foreach ($stats as $str => $value) {
+ $str = elgg_echo("tidypics:stats:$str");
+ $value = (int)$value;
+
+ $content .= <<<HTML
+ <tr>
+ <td>$str:</td>
+ <td>$value</td>
+ </tr>
+HTML;
+}
+
+$content .= '</table>';
+
+echo elgg_view_module('inline', elgg_echo('tidypics:stats'), $content); \ No newline at end of file
diff --git a/views/default/tidypics/admin/stats.php b/views/default/tidypics/admin/stats.php
deleted file mode 100644
index 0b088dc2e..000000000
--- a/views/default/tidypics/admin/stats.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-
-$img_type = get_subtype_id('object', 'image');
-$query = "SELECT count(guid) as total from {$CONFIG->dbprefix}entities where subtype={$img_type}";
-$total = get_data_row($query);
-$num_images = $total->total;
-
-$img_type = get_subtype_id('object', 'album');
-$query = "SELECT count(guid) as total from {$CONFIG->dbprefix}entities where subtype={$img_type}";
-$total = get_data_row($query);
-$num_albums = $total->total;
-
-$num_comments_photos = count_annotations(0, 'object', 'image', 'generic_comment');
-$num_comments_albums = count_annotations(0, 'object', 'album', 'generic_comment');
-
-$num_views = count_annotations(0, 'object', 'image', 'tp_view');
-
-if (get_plugin_setting('tagging', 'tidypics') != "disabled") {
- $num_tags = count_annotations(0, 'object', 'image', 'phototag');
-}
-?>
-<p>
- <br />
- Photos: <?php echo $num_images; ?><br />
- Albums: <?php echo $num_albums; ?><br />
- Comments on photos: <?php echo $num_comments_photos; ?><br />
- Comments on albums: <?php echo $num_comments_albums; ?><br />
- Total views: <?php echo $num_views; ?><br />
-<?php
-if ($num_tags) {
-?>
- Photo tags: <?php echo $num_tags; ?><br />
-<?php
-}
-?>
-</p> \ No newline at end of file