Exemple #1
0
 /**
  * Executes index action
  *
  * @param sfRequest $request A request object
  */
 public function executeView(sfWebRequest $request)
 {
     $dispatcher_id = $request->getParameter('dispatcher_id');
     // used to get parent id component (extjs)
     //$this->containerId = $request->getParameter('containerId');
     // load modules file of dispatcher
     if ($dispatcher_id) {
         $criteria = new Criteria();
         $criteria->add(EtvaServicePeer::ID, $dispatcher_id);
         //$criteria->add(EtvaServicePeer::NAME_TMPL,$dispatcher);
         $etva_service = EtvaServicePeer::doSelectOne($criteria);
         $dispatcher = $etva_service->getNameTmpl();
         $etva_server = $etva_service->getEtvaServer();
         $tmpl = $etva_server->getAgentTmpl() . '_' . $dispatcher . '_modules';
         $directory = $this->context->getConfiguration()->getTemplateDir('etms', '_' . $tmpl . '.php');
         //echo 'dispatcher_id ---> '.$tmpl;
         if ($directory) {
             return $this->renderPartial($tmpl);
         } else {
             return $this->renderText('Template ' . $tmpl . ' not found');
         }
     } else {
         $this->etva_server = EtvaServerPeer::retrieveByPK($request->getParameter('sid'));
     }
 }
Exemple #2
0
 /**
  * Executes index action
  *
  * @param sfRequest $request A request object
  */
 public function executeView(sfWebRequest $request)
 {
     $dispatcher_id = $request->getParameter('dispatcher_id');
     // load modules file of dispatcher
     if ($dispatcher_id) {
         $criteria = new Criteria();
         $criteria->add(EtvaServicePeer::ID, $dispatcher_id);
         $etva_service = EtvaServicePeer::doSelectOne($criteria);
         $dispatcher = $etva_service->getNameTmpl();
         $etva_server = $etva_service->getEtvaServer();
         $tmpl = $etva_server->getAgentTmpl() . '_' . $dispatcher . '_modules';
         //if exists, load _DUMMY_main_modules.php file
         $directory = $this->context->getConfiguration()->getTemplateDir('dummy', '_' . $tmpl . '.php');
         if ($directory) {
             return $this->renderPartial($tmpl);
         } else {
             return $this->renderText('Template ' . $tmpl . ' not found');
         }
     } else {
         $this->etva_server = EtvaServerPeer::retrieveByPK($request->getParameter('sid'));
     }
 }
Exemple #3
0
 public function executeETFW_wizard(sfWebRequest $request)
 {
     $etva_server = EtvaServerPeer::retrieveByPK($request->getParameter('sid'));
     $criteria = new Criteria();
     $criteria->add(EtvaServicePeer::SERVER_ID, $etva_server->getId());
     $criteria->add(EtvaServicePeer::NAME_TMPL, 'wizard');
     $network_dispatcher = EtvaServicePeer::doSelectOne($criteria);
     $this->wizard_dispatcher_id = $network_dispatcher->getId();
     $this->wizard_name = $request->getParameter('tpl');
     $this->containerId = $request->getParameter('containerId');
     if ($this->wizard_name == 'dhcp') {
         //get active interfaces info...
         $active_ifaces = $this->ETFW_network($etva_server, 'active_interfaces', array(), '');
         if ($active_ifaces['success']) {
             $data = $active_ifaces['data'];
             $ifaces = array();
             foreach ($data as $key => $val) {
                 $ifaces[$val['fullname']] = $data[$key];
             }
             $this->interfaces = $ifaces;
         }
     }
 }
Exemple #4
0
 public function executeSoapInit(sfWebRequest $request)
 {
     if (sfConfig::get('sf_environment') == 'soap') {
         $agent_tmpl = $request->getParameter('name');
         $ip = $request->getParameter('ip');
         $port = $request->getParameter('port');
         $services = $request->getParameter('services');
         $macaddr = $request->getParameter('macaddr');
         $c = new Criteria();
         $c->add(EtvaNetworkPeer::MAC, $macaddr);
         $etva_network = EtvaNetworkPeer::doSelectOne($c);
         if (!$etva_network) {
             $error_msg = sprintf('Object etva_network does not exist (%s).', $macaddr);
             $error = array('success' => false, 'error' => $error_msg);
             return $error;
         }
         // print_r($agent_tmpl);
         $etva_server = $etva_network->getEtvaServer();
         $etva_server->setIp($ip);
         $etva_server->setAgentTmpl($agent_tmpl);
         $etva_server->setAgentPort($port);
         $etva_server->setState(1);
         $etva_server->save();
         if ($services) {
             foreach ($services as $service) {
                 $c = new Criteria();
                 $c->add(EtvaServicePeer::NAME_TMPL, $service->name);
                 $c->add(EtvaServicePeer::SERVER_ID, $etva_server->getId());
                 $etva_service = EtvaServicePeer::doSelectOne($c);
                 if (!$etva_service) {
                     $etva_service = new EtvaService();
                     $etva_service->setNameTmpl($service->name);
                     $etva_service->setEtvaServer($etva_server);
                 }
                 if (isset($service->description)) {
                     $etva_service->setDescription($service->description);
                 }
                 if (isset($service->params)) {
                     $params = $service->params;
                     $encoded_json = json_encode($params);
                     $etva_service->setParams($encoded_json);
                 }
                 $etva_service->save();
             }
         }
         /*
          *
          * check if has restore to perform....
          */
         $apli = new Appliance();
         $backup_url = $apli->get_backupconf_url(Appliance::MA_ARCHIVE_FILE, $etva_server->getUuid(), $etva_server->getAgentTmpl());
         $result = array('success' => true);
         if ($backup_url) {
             $result['reset'] = 1;
             $result['backup_url'] = $backup_url;
         }
         return $result;
     }
 }