$options['subtype'] = $s; $count = elgg_get_entities($options); $indexed = elgg_solr_get_indexed_count("type:{$type}", array('subtype' => "subtype:{$s}")); $stats["{$type}:{$s}"] = array('count' => $count, 'indexed' => $indexed); } continue; } $options['subtype'] = ELGG_ENTITIES_NO_VALUE; $count = elgg_get_entities($options); $indexed = elgg_solr_get_indexed_count("type:{$type}"); $stats[$type] = array('count' => $count, 'indexed' => $indexed); } $indexable = _elgg_services()->hooks->trigger('elgg_solr:can_index', 'annotation', [], []); foreach ($indexable as $name) { $options = ['annotation_names' => $name, 'count' => true]; $stats['annotation:' . $name] = ['count' => elgg_get_annotations($options), 'indexed' => elgg_solr_get_indexed_count('type:annotation', ['subtype' => "subtype:{$name}"])]; } $system_total = 0; $indexed_total = 0; access_show_hidden_entities($show_hidden); ?> <div class="elgg-solr-stats"> <table> <tr> <td> <strong><?php echo elgg_echo('elgg_solr:type:subtype'); ?> </strong> </td> <td>
/** * Note - only needed for 1.8 * * @param type $time * @param type $block * @return type */ function elgg_solr_get_comment_stats($time, $block) { $type = 'annotation'; $fq = array('subtype' => "subtype:generic_comment"); $stats = array(); switch ($block) { case 'hour': // I don't think we need minute resolution right now... break; case 'day': for ($i = 0; $i < 24; $i++) { $starttime = mktime($i, 0, 0, date('m', $time), date('j', $time), date('Y', $time)); $endtime = mktime($i + 1, 0, 0, date('m', $time), date('j', $time), date('Y', $time)) - 1; $fq['time_created'] = "time_created:[{$starttime} TO {$endtime}]"; $indexed = elgg_solr_get_indexed_count("type:{$type}", $fq); $system = elgg_get_annotations(array('annotation_name' => 'generic_comment', 'annotation_created_time_lower' => $starttime, 'annotation_created_time_upper' => $endtime, 'count' => true)); $stats[date('H', $starttime)] = array('count' => $system, 'indexed' => $indexed, 'starttime' => $starttime, 'endtime' => $endtime, 'block' => false); } break; case 'month': for ($i = 1; $i < date('t', $time) + 1; $i++) { $starttime = mktime(0, 0, 0, date('m', $time), $i, date('Y', $time)); $endtime = mktime(0, 0, 0, date('m', $time), $i + 1, date('Y', $time)) - 1; $fq['time_created'] = "time_created:[{$starttime} TO {$endtime}]"; $indexed = elgg_solr_get_indexed_count("type:{$type}", $fq); $system = elgg_get_annotations(array('annotation_name' => 'generic_comment', 'annotation_created_time_lower' => $starttime, 'annotation_created_time_upper' => $endtime, 'count' => true)); $stats[date('d', $starttime)] = array('count' => $system, 'indexed' => $indexed, 'starttime' => $starttime, 'endtime' => $endtime, 'block' => 'day'); } break; case 'year': for ($i = 1; $i < 13; $i++) { $starttime = mktime(0, 0, 0, $i, 1, date('Y', $time)); $endtime = mktime(0, 0, 0, $i + 1, 1, date('Y', $time)) - 1; $fq['time_created'] = "time_created:[{$starttime} TO {$endtime}]"; $indexed = elgg_solr_get_indexed_count("type:{$type}", $fq); $system = elgg_get_annotations(array('annotation_name' => 'generic_comment', 'annotation_created_time_lower' => $starttime, 'annotation_created_time_upper' => $endtime, 'count' => true)); $stats[date('F', $starttime)] = array('count' => $system, 'indexed' => $indexed, 'starttime' => $starttime, 'endtime' => $endtime, 'block' => 'month'); } break; case 'all': default: $startyear = date('Y', elgg_get_site_entity()->time_created); $currentyear = date('Y'); for ($i = $currentyear; $i > $startyear - 1; $i--) { $starttime = mktime(0, 0, 0, 1, 1, $i); $endtime = mktime(0, 0, 0, 1, 1, $i + 1) - 1; $fq['time_created'] = "time_created:[{$starttime} TO {$endtime}]"; $indexed = elgg_solr_get_indexed_count("type:{$type}", $fq); $system = elgg_get_annotations(array('annotation_name' => 'generic_comment', 'annotation_created_time_lower' => $starttime, 'annotation_created_time_upper' => $endtime, 'count' => true)); $stats[$i] = array('count' => $system, 'indexed' => $indexed, 'starttime' => $starttime, 'endtime' => $endtime, 'block' => 'year'); } break; } return $stats; }
foreach ($subtypes as $s) { $options['subtype'] = $s; $count = elgg_get_entities($options); $indexed = elgg_solr_get_indexed_count("type:{$type}", array('subtype' => "subtype:{$s}")); $stats["{$type}:{$s}"] = array('count' => $count, 'indexed' => $indexed); } continue; } $options['subtype'] = ELGG_ENTITIES_NO_VALUE; $count = elgg_get_entities($options); $indexed = elgg_solr_get_indexed_count("type:{$type}"); $stats[$type] = array('count' => $count, 'indexed' => $indexed); } if ($is_elgg18) { // comments $stats['comments'] = array('count' => elgg_get_annotations(array('annotation_name' => 'generic_comment', 'count' => true)), 'indexed' => elgg_solr_get_indexed_count('type:annotation', array('subtype' => 'subtype:generic_comment'))); } $system_total = 0; $indexed_total = 0; access_show_hidden_entities($show_hidden); ?> <div class="elgg-solr-stats"> <table> <tr> <td> <strong><?php echo elgg_echo('elgg_solr:type:subtype'); ?> </strong> </td> <td>