/**
  * Action permettant de créer un data set.
  *
  * @param sfWebRequest $request
  */
 public function execute($request)
 {
     $this->ei_scenario = Doctrine_Core::getTable('EiScenario')->find($this->scenario->getId());
     $this->forward404Unless($this->ei_scenario);
     $this->forward404Unless(Doctrine_Core::getTable("EiProjectUser")->getEiProjet($this->ei_scenario->getProjectId(), $this->ei_scenario->getProjectRef(), $this->user->getEiUser()));
     /** @var EiDataSetStructure $ei_root_node */
     $ei_root_node = Doctrine_Core::getTable("EiDataSetStructure")->getRoot($this->ei_scenario->getId());
     $this->forward404Unless($ei_root_node);
     /** @var DOMDocument $xsd */
     $xsd = EiDataSetStructure::createXSD($ei_root_node);
     $xsd->formatOutput = true;
     $xsd = $xsd->saveXML();
     $response = $this->getResponse();
     $response->setContentType('text/xml');
     $response->setHttpHeader('Content-Disposition', 'attachment; filename="' . $this->ei_scenario->getNomScenario() . '-XSD.xsd');
     $response->setContent($xsd);
     return sfView::NONE;
 }
예제 #2
0
 /**
  * @param sfWebRequest $request
  */
 public function executeDownloadXSD(sfWebRequest $request)
 {
     //**************************************************************************************************************
     // VERIFICATION DES INFORMATIONS PROJET/PROFIL.
     $this->checkUpParameters($request);
     // Récupération & vérification du scénario.
     $this->ei_scenario = Doctrine_Core::getTable('EiScenario')->find($this->request->getParameter('ei_scenario_id'));
     $this->forward404Unless($this->ei_scenario);
     /** @var EiDataSetStructure $ei_root_node */
     $ei_root_node = Doctrine_Core::getTable("EiDataSetStructure")->getRoot($this->ei_scenario->getId());
     $this->forward404Unless($ei_root_node);
     /** @var DOMDocument $xsd */
     $xsd = EiDataSetStructure::createXSD($ei_root_node);
     $xsd->formatOutput = true;
     $xsd = $xsd->saveXML();
     $response = $this->getResponse();
     $response->setContentType('text/xml');
     $response->setHttpHeader('Content-Disposition', 'attachment; filename="' . $this->ei_scenario->getNomScenario() . '-XSD.xsd');
     $response->setContent($xsd);
     return sfView::NONE;
 }