Ejemplo n.º 1
0
 public static function _getReportChartt($report, $decorator = null)
 {
     $interval = self::getMeasurementInterval($report->getId());
     // fetch the date of the first measurement
     $start_date = $interval['first'];
     // fetch the date of the last measurement
     $end_date = $interval['last'];
     // number of daily measurements
     $day_count = 0;
     // number of weekly measurements
     $week_count = 0;
     // number of monthly measurements
     $month_count = 0;
     foreach ($report->getReportQuerys() as $report_query) {
         sfContext::getInstance()->getLogger()->info("ARMUT ARMUT ARMUT");
         $temp = QueryResultPeer::countDaily($report_query->getQueryId());
         if ($temp > $day_count) {
             $day_count = $temp;
         }
         $temp = QueryResultPeer::countWeekly($report_query->getQueryId());
         if ($temp > $week_count) {
             $week_count = $temp;
         }
         $temp = QueryResultPeer::countMonthly($report_query->getQueryId());
         if ($temp > $month_count) {
             $month_count = $temp;
         }
     }
     sfContext::getInstance()->getLogger()->info("{$day_count} {$week_count} {$month_count}");
     if ($day_count <= self::DAY_COUNT) {
         $decorator->setFrequency('D');
         return self::_getReportChart($report, $start_date, $end_date, QueryResultPeer::FREQUENCY_DAY, $decorator);
     } else {
         if ($week_count <= self::WEEK_COUNT) {
             $decorator->setFrequency('W');
             return self::_getReportChart($report, $start_date, $end_date, QueryResultPeer::FREQUENCY_WEEK, $decorator);
         } else {
             $decorator->setFrequency('M');
             return self::_getReportChart($report, $start_date, $end_date, QueryResultPeer::FREQUENCY_MONTH, $decorator);
         }
     }
 }