Ejemplo n.º 1
0
 function reportGenerator($args)
 {
     import('pages.manager.StatisticsHandler');
     StatisticsHandler::reportGenerator($args);
 }
Ejemplo n.º 2
0
 function savePublicStatisticsList()
 {
     parent::validate();
     $journal =& Request::getJournal();
     foreach (StatisticsHandler::getPublicStatisticsNames() as $name) {
         $journal->updateSetting($name, Request::getUserVar($name) ? true : false);
     }
     $journal->updateSetting('statViews', Request::getUserVar('statViews') ? true : false);
     Request::redirect(null, null, 'statistics', null, array('statisticsYear' => Request::getUserVar('statisticsYear')));
 }
Ejemplo n.º 3
0
 function savePublicStatisticsList()
 {
     $this->validate();
     $schedConf =& Request::getSchedConf();
     if (!$schedConf) {
         Request::redirect(null, 'index');
     }
     foreach (StatisticsHandler::_getPublicStatisticsNames() as $name) {
         $schedConf->updateSetting($name, Request::getUserVar($name) ? true : false);
     }
     Request::redirect(null, null, 'manager', 'statistics', null, array('statisticsYear' => Request::getUserVar('statisticsYear')));
 }
Ejemplo n.º 4
0
 function getPublicStatisticsNames()
 {
     import('pages.manager.ManagerHandler');
     import('pages.manager.StatisticsHandler');
     return StatisticsHandler::getPublicStatisticsNames();
 }
Ejemplo n.º 5
0
 function reportGenerator($args)
 {
     parent::validate();
     $journal =& Request::getJournal();
     $fromDate = Request::getUserDateVar('dateFrom', 1, 1);
     if ($fromDate !== null) {
         $fromDate = date('Y-m-d H:i:s', $fromDate);
     }
     $toDate = Request::getUserDateVar('dateTo', 32, 12, null, 23, 59, 59);
     if ($toDate !== null) {
         $toDate = date('Y-m-d H:i:s', $toDate);
     }
     $journalStatisticsDao =& DAORegistry::getDAO('JournalStatisticsDAO');
     $reportType = (int) Request::getUserVar('reportType');
     switch ($reportType) {
         case REPORT_TYPE_EDITOR:
             $report =& $journalStatisticsDao->getEditorReport($journal->getJournalId(), $fromDate, $toDate);
             break;
         case REPORT_TYPE_REVIEWER:
             $report =& $journalStatisticsDao->getReviewerReport($journal->getJournalId(), $fromDate, $toDate);
             break;
         case REPORT_TYPE_SECTION:
             $report =& $journalStatisticsDao->getSectionReport($journal->getJournalId(), $fromDate, $toDate);
             break;
         case REPORT_TYPE_JOURNAL:
         default:
             $reportType = REPORT_TYPE_JOURNAL;
             $report =& $journalStatisticsDao->getJournalReport($journal->getJournalId(), $fromDate, $toDate);
             break;
     }
     $templateMgr =& TemplateManager::getManager();
     header('content-type: text/comma-separated-values');
     header('content-disposition: attachment; filename=report.csv');
     $separator = ',';
     // Display the heading row.
     switch ($reportType) {
         case REPORT_TYPE_EDITOR:
             echo Locale::translate('user.role.editor') . $separator;
             break;
         case REPORT_TYPE_REVIEWER:
             echo Locale::translate('user.role.reviewer') . $separator;
             echo Locale::translate('manager.statistics.reports.singleScore') . $separator;
             echo Locale::translate('user.affiliation') . $separator;
             break;
         case REPORT_TYPE_SECTION:
             echo Locale::translate('section.section') . $separator;
             break;
     }
     echo Locale::translate('article.submissionId');
     for ($i = 0; $i < $report->getMaxAuthors(); $i++) {
         echo $separator . Locale::translate('manager.statistics.reports.author', array('num' => $i + 1));
         echo $separator . Locale::translate('manager.statistics.reports.affiliation', array('num' => $i + 1));
         echo $separator . Locale::translate('manager.statistics.reports.country', array('num' => $i + 1));
     }
     echo $separator . Locale::translate('article.title');
     if ($reportType !== REPORT_TYPE_SECTION) {
         echo $separator . Locale::translate('section.section');
     }
     echo $separator . Locale::translate('submissions.submitted');
     if ($reportType !== REPORT_TYPE_EDITOR) {
         for ($i = 0; $i < $report->getMaxEditors(); $i++) {
             echo $separator . Locale::translate('manager.statistics.reports.editor', array('num' => $i + 1));
         }
     }
     if ($reportType !== REPORT_TYPE_REVIEWER) {
         for ($i = 0; $i < $report->getMaxReviewers(); $i++) {
             echo $separator . Locale::translate('manager.statistics.reports.reviewer', array('num' => $i + 1));
             echo $separator . Locale::translate('manager.statistics.reports.score', array('num' => $i + 1));
             echo $separator . Locale::translate('manager.statistics.reports.recommendation', array('num' => $i + 1));
         }
     }
     echo $separator . Locale::translate('editor.article.decision');
     echo $separator . Locale::translate('manager.statistics.reports.daysToDecision');
     echo $separator . Locale::translate('manager.statistics.reports.daysToPublication');
     echo "\n";
     // Display the report.
     $dateFormatShort = Config::getVar('general', 'date_format_short');
     while ($row =& $report->next()) {
         switch ($reportType) {
             case REPORT_TYPE_EDITOR:
                 echo $row['editor'] . $separator;
                 break;
             case REPORT_TYPE_REVIEWER:
                 echo $row['reviewer'] . $separator;
                 echo $row['score'] . $separator;
                 echo $row['affiliation'] . $separator;
                 break;
             case REPORT_TYPE_SECTION:
                 echo $row['section'] . $separator;
                 break;
         }
         echo $row['articleId'];
         for ($i = 0; $i < $report->getMaxAuthors(); $i++) {
             echo $separator . StatisticsHandler::csvEscape($row['authors'][$i]);
             echo $separator . StatisticsHandler::csvEscape($row['affiliations'][$i]);
             echo $separator . StatisticsHandler::csvEscape($row['countries'][$i]);
         }
         echo $separator . StatisticsHandler::csvEscape($row['title']);
         if ($reportType !== REPORT_TYPE_SECTION) {
             echo $separator . StatisticsHandler::csvEscape($row['section']);
         }
         echo $separator . $row['dateSubmitted'];
         if ($reportType !== REPORT_TYPE_EDITOR) {
             for ($i = 0; $i < $report->getMaxEditors(); $i++) {
                 echo $separator . StatisticsHandler::csvEscape($row['editors'][$i]);
             }
         }
         if ($reportType !== REPORT_TYPE_REVIEWER) {
             for ($i = 0; $i < $report->getMaxReviewers(); $i++) {
                 echo $separator . StatisticsHandler::csvEscape($row['reviewers'][$i]);
                 echo $separator . StatisticsHandler::csvEscape($row['scores'][$i]);
                 echo $separator . StatisticsHandler::csvEscape($row['recommendations'][$i]);
             }
         }
         echo $separator . StatisticsHandler::csvEscape($row['decision']);
         echo $separator . StatisticsHandler::csvEscape($row['daysToDecision']);
         echo $separator . StatisticsHandler::csvEscape($row['daysToPublication']);
         echo "\n";
     }
 }