Example #1
0
 function sendSavedReports(Am_Event $event)
 {
     class_exists('Am_Report', true);
     require_once 'Am/Report/Standard.php';
     foreach ($this->getDi()->adminTable->findBy() as $admin) {
         $frequency = $admin->getPref(Admin::PREF_REPORTS_SEND_FREQUENCY);
         if ($frequency == $event->getId()) {
             $content = '';
             foreach ($this->findByAdminId($admin->pk()) as $report) {
                 $r = Am_Report_Abstract::createById($report->report_id);
                 $r->applyConfigForm(new Am_Request(unserialize($report->request)));
                 $result = $r->getReport();
                 $output = new Am_Report_Text($result);
                 $content .= $report->title . "\n----------------------------\n";
                 $content .= $output->render() . "\n";
             }
             if ($content) {
                 $mail = $this->getDi()->mail;
                 $mail->addTo($admin->email);
                 $mail->setSubject($this->getDi()->config->get('site_title') . ': Reports');
                 $mail->setBodyText($content);
                 $mail->send();
             }
         }
     }
 }