*/ /** * Statistics * * Provides statistics about Gallery * * @package Statistics */ class StatisticsModule extends GalleryModule { function StatisticsModule() { global $gallery; $this->setId('statistics'); $this->setName($gallery->i18n('Statistics')); $this->setDescription($gallery->i18n('Provides statistics about this Gallery installation')); $this->setVersion('0.5.0'); $this->setCallbacks('getSiteAdminViews'); $this->setGroup('data', $gallery->i18n('Extra Data')); $this->setRequiredCoreApi(array(7, 0)); $this->setRequiredModuleApi(array(3, 0)); } /** * @see GalleryModule::autoConfigure */ function autoConfigure() { /* We don't require any special configuration */ return array(null, true); } /** * @see GalleryModule::getSiteAdminViews */ function getSiteAdminViews() { $views = array(); // These views are always enabled $views[] = array('name' => $this->translate('Statistics'), 'view' => 'statistics.StatisticsSiteAdmin'); return array(null, $views); } /** * @see GalleryModule::performFactoryRegistrations */ function performFactoryRegistrations() { /* Cursory information plugin */ $ret = GalleryCoreApi::registerFactoryImplementation( 'StatisticsSiteAdminPlugin', 'StatisticsSiteAdminCursory', 'StatisticsSiteAdminCursory', 'modules/statistics/StatisticsSiteAdminCursory.inc', 'statistics', null); if ($ret) { return $ret; } /* Disk Usage plugin */ $ret = GalleryCoreApi::registerFactoryImplementation( 'StatisticsSiteAdminPlugin', 'StatisticsSiteAdminDisk', 'StatisticsSiteAdminDisk', 'modules/statistics/StatisticsSiteAdminDisk.inc', 'statistics', null); if ($ret) { return $ret; } /* Register our Maintenance task */ $ret = GalleryCoreApi::registerFactoryImplementation('MaintenanceTask', 'RecalculateStatisticsTask', 'RecalculateStatisticsTask', 'modules/statistics/classes/RecalculateStatistics.class', 'statistics', null); if ($ret) { return $ret; } return null; } } ?>