コード例 #1
0
 public function editAction($idReport)
 {
     $report = Report::findFirst(array('conditions' => 'idReport = ?1', 'bind' => array(1 => $idReport)));
     if (!$report) {
         $this->flashSession->error('El reporte que desea editar no existe, por favor valide la información');
         return $this->response->redirect('report');
     }
     $form = new ReportForm($report);
     if ($this->request->isPost()) {
         $form->bind($this->request->getPost(), $report);
         $g = $form->getValue('graphics');
         $report->graphic = empty($g) || !$g ? 0 : 1;
         $report->updated = time();
         if ($form->isValid() && $report->save()) {
             $this->flashSession->success("Se ha editado el reporte exitosamente");
             return $this->response->redirect("report");
         }
         foreach ($report->getMessages() as $msg) {
             $this->flashSession->error($msg->getMessage());
         }
     }
     $this->view->ReportForm = $form;
     $this->view->setVar("report", $report);
 }
コード例 #2
0
 function thankyouAction()
 {
     $adminAddSession = Zend_Session::namespaceGet("adminAddSession");
     $id = (int) $this->_request->getParam('survey', 0);
     $currentTime = date("Y-m-d H:i:s");
     $code = $this->_request->getParam('c');
     if (isset($adminAddSession['consumer'])) {
         $consumer_id = $adminAddSession['consumer'];
     } else {
         $consumer = $this->_currentUser;
         $consumer_id = $consumer->id;
         // $id = 266;
         if ($consumer->getTableClass() == 'Admin') {
             // if admin get report from session (sms report)
             if (Zend_Session::namespaceIsset("AgentReports")) {
                 $session = Zend_Session::namespaceGet("AgentReports");
                 if (isset($session[$code]) && $session[$code] != null) {
                     $consumer_id = $session[$code];
                     $session[$code] = null;
                     // delete this accesscode
                     $this->view->adminredirect = true;
                     // for admin redirect
                 }
             }
         }
     }
     $reportModel = new Report();
     $duplicatedReport = $reportModel->fetchAll('report.accesscode = "' . $code . '"');
     $campaignModel = new Campaign();
     $campaign = $campaignModel->fetchRow("i2_survey_id =" . $id . " or " . "i2_survey_id_en =" . $id);
     //create a record in report table
     if (count($duplicatedReport) == 0) {
         $report = $reportModel->createRow();
         $report->consumer_id = $consumer_id;
         $report->campaign_id = $campaign->id;
         $report->create_date = $currentTime;
         $session = Zend_Session::namespaceGet("AgentReports");
         if (isset($session[$code]) && $session[$code] != null) {
             $report->source = $session[$code . '_source'];
             $session[$code . '_source'] = null;
         }
         //ham.bao 2011/04/29 admin add the report
         $adminAddSession = Zend_Session::namespaceGet("adminAddSession");
         if (isset($adminAddSession['consumer'])) {
             $this->view->adminredirect = true;
             $report->source = $adminAddSession['source'];
             $report->consumer_id = $adminAddSession['consumer'];
             $report->campaign_id = $adminAddSession['campaign'];
         }
         $report->state = 'NEW';
         $report->accesscode = $code;
         $reportId = $report->save();
         $this->view->reportId = $reportId;
         if ($this->view->adminredirect) {
             //ham.bao 2010-10-13 update the incoming_email state
             if (Zend_Session::namespaceIsset("IncomingEmail")) {
                 $emailSession = new Zend_Session_Namespace('IncomingEmail');
                 $incomingEmailModel = new IncomingEmail();
                 $incomingEmailModel->update(array('report_id' => $reportId), 'id=' . $emailSession->id);
                 $this->_helper->redirector('successconvert', 'email');
             }
             //ham.bao 2011/04/29 admin add the report
             if (isset($adminAddSession['consumer'])) {
                 $this->_helper->redirector('successconvert', 'email');
             }
         }
         //change state in campaign_particpation table
         //			$invitationModel = new CampaignInvitation();
         //			$invitation = $invitationModel->fetchRow("campaign_id =".$campaign->id." and consumer_id=".$consumer->id);
         //
         //			$participationModel = new CampaignParticipation();
         //			$participation = $participationModel->fetchRow('campaign_invitation_id = '.$invitation->id);
         //			$participation->state = 'REPORT SUBMITTED';
         //			$participation->save();
     } else {
         $this->view->reportId = $duplicatedReport[0]['id'];
     }
     $option = array($this->view->reportId, $consumer_id);
     $form = new ReportForm($option);
     $this->view->form = $form;
     if ($this->_request->isPost()) {
         $image = $form->getValue('image');
         if ($image != '') {
             $reportImage = new ReportImages();
             $row = $reportImage->createRow();
             $row->name = $image;
             $row->consumer = $consumer_id;
             $row->report = $this->view->reportId;
             $row->crdate = date('Y-m-d H:i:s');
             $row->save();
             $this->view->saved = 1;
         } else {
             $this->view->saved = -1;
         }
         //var_dump($image);die;
     }
     $this->view->consumer = $consumer_id;
     $this->view->title = $this->view->title = $this->view->translate("Wildfire") . " - " . $this->view->translate("Thanks_For_report");
 }