Ejemplo n.º 1
0
 public function savefiltersAction()
 {
     $auth = Zend_Auth::getInstance();
     $lic = $_REQUEST['lic'];
     if ($lic != $_SESSION['OPENZISKEYHOLE']) {
         $this->view->msg = 'Not Ajax Request';
         $this->_forward('error', 'error');
     } else {
         if ($auth->hasIdentity()) {
             if (!$this->getRequest()->isXmlHttpRequest()) {
                 $this->view->msg = 'Not Ajax Request';
                 $this->_forward('error', 'error');
             } else {
                 $filterChain = new Zend_Filter();
                 $filterChain->addFilter(new Zend_Filter_StripTags())->addFilter(new Zend_Filter_Digits());
                 $filterChain2 = new Zend_Filter();
                 $filterChain2->addFilter(new Zend_Filter_StripTags());
                 $agentId = $filterChain->filter($_REQUEST['agent_id']);
                 $zoneId = $filterChain->filter($_REQUEST['zone_id']);
                 $contextId = $filterChain->filter($_REQUEST['context_id']);
                 $filteredElementsString = $filterChain2->filter($_REQUEST['filtered_elements']);
                 DataElement::ClearFilters($agentId, $zoneId, $contextId);
                 $elementIdHash = explode("|", $filteredElementsString);
                 foreach ($elementIdHash as $idHash) {
                     $idArray = explode("_", $idHash);
                     $element_id = $idArray[0];
                     if (count($idArray) == 3) {
                         $object_id = $idArray[2];
                         $parentElementId = $idArray[1];
                         DataElement::saveFilteredChildElement($object_id, $parentElementId, $element_id, $agentId, $zoneId, $contextId);
                     } else {
                         $object_id = $idArray[1];
                         if ($object_id != null && $element_id != null) {
                             DataElement::saveFilteredElement($object_id, $element_id, $agentId, $zoneId, $contextId);
                         }
                     }
                 }
                 $this->render('ajaxsuccessjson');
             }
         }
     }
 }