/** * @param sfWebRequest $request */ public function executeExport(sfWebRequest $request) { //$this->forward404Unless(in_array($this->getUser()->getGuardUser()->account_type, array('Pro', 'Enterprice'))); $decision_id = $request->getParameter('decision_id', false); $decision = DecisionTable::getInstance()->getDecisionForUser($this->getUser()->getGuardUser(), $decision_id); $this->forward404Unless($decision); header('Content-type: application/force-download'); header('Content-Disposition: attachment; filename="' . $decision->name . '.xlsx"'); $criteriaAnalyze = new CriteriaAnalyze(); $criteriaAnalyze->setDecisionId($decision_id); $criteriaAnalyze->load(); $logicalFilter = new LogicalFilterView(); $logicalFilter->setDecisionId($decision_id); $logicalFilter->load(); $roleFilter = new RoleFilterView(); $roleFilter->setDecisionId($decision_id); $roleFilter->load(); $statusFilter = new StatusFilterView(); $statusFilter->setDecisionId($decision_id); $statusFilter->load(); $tagFilter = new TagFilterView(); $tagFilter->setDecisionId($decision_id); $tagFilter->load(); $stackedBarChart = new StackedBarChart(); $stackedBarChart->setDecisionId($decision_id); $stackedBarChart->setCriteriaValues($criteriaAnalyze->getCriteriaValues()); $stackedBarChart->setRoleFilterData($roleFilter->getData()); $stackedBarChart->setStatusFilterData($statusFilter->getData()); $stackedBarChart->setTagFilterData($tagFilter->getDataForSQL()); $stackedBarChart->setFilteredAlternativesIds($logicalFilter->getFilteredAlternativesIds()); $stackedBarChart->load(); $excelExporter = new AlternativesExcelExporter($stackedBarChart); $excelExporter->export(); exit; }