]> gitweb.fluxo.info Git - lorea/elgg.git/commitdiff
Refs #16. Added stats page.
authorBrett Profitt <brett.profitt@gmail.com>
Wed, 8 Feb 2012 00:19:51 +0000 (16:19 -0800)
committerBrett Profitt <brett.profitt@gmail.com>
Wed, 8 Feb 2012 00:20:38 +0000 (16:20 -0800)
languages/en.php
start.php
views/default/admin/statistics/tidypics.php [new file with mode: 0644]
views/default/tidypics/admin/stats.php [deleted file]

index 6f3de51ef51d4582439a172a7a040c12f8d42e6c..54cf2f258610e1b0e18482205cf7258a8f096818 100644 (file)
@@ -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",
index f1fdf84342d70dd731b8c63d5441640387a629ed..5ea04f1608e90ab75acb482d248292d44b3a88a9 100644 (file)
--- 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 (file)
index 0000000..3e4af78
--- /dev/null
@@ -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 (file)
index 0b088dc..0000000
+++ /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