From fd3df2571717c254ab67f7dcab4a98e1d0ca0b12 Mon Sep 17 00:00:00 2001 From: sf34 Date: Sat, 5 Mar 2011 19:55:00 +0100 Subject: Primary Key inn filterentries eingeführt um meherere Elemente eines Filtertypes hinzuzufügen - filter-Oberfläche funktioniert nun - Skizzen für evaluate von Filtern notiert --- application/controllers/FilterController.php | 134 +++++++++++++++++++++------ 1 file changed, 104 insertions(+), 30 deletions(-) (limited to 'application/controllers/FilterController.php') diff --git a/application/controllers/FilterController.php b/application/controllers/FilterController.php index 3f7fa73..fc1ce8d 100644 --- a/application/controllers/FilterController.php +++ b/application/controllers/FilterController.php @@ -116,31 +116,41 @@ class FilterController extends Zend_Controller_Action public function addfilterentryAction() { + // TODO: ACL implementieren ob er editieren darf if (!isset($_POST["add"])){ echo "case1"; try{ $editfilterform = new Application_Form_FilterEntriesAdd(array('filterID' => $this->_request->getParam('filterID'))); $this->view->editfilterform = $editfilterform; - echo "case 1.1"; + echo "
case 1.1
"; }catch (Zend_Exception $e) { echo "Error message 2: " . $e->getMessage() . "\n"; } } else{ $editfilterform = new Application_Form_FilterEntriesAdd($_POST); - echo "case2"; + echo "
case2
"; if ($editfilterform->isValid($_POST)) { - + echo "
case 2.2
"; $newfilterenty = new Application_Model_FilterEntries(); $newfilterenty->setFilterID($_POST['filterID']); $newfilterenty->setFiltertypeID($_POST['filtertypeID']); - $newfilterenty->setFiltervalue($_POST['filtervalue']); - $newfilterenty->setFiltervalue2($_POST['filtervalue2']); + + if($_POST['filtertypeID'] == 1){ + $newfilterenty->setFiltervalue($this->fillIP($_POST['filtervalue'])); + $newfilterenty->setFiltervalue2($this->fillIP($_POST['filtervalue2'])); + } + else{ + $newfilterenty->setFiltervalue($_POST['filtervalue']); + $newfilterenty->setFiltervalue2($_POST['filtervalue2']); + } $newfilter2 = new Application_Model_FilterEntriesMapper(); - + echo "
";
+				print_r($newfilterenty);
+				echo "
"; $newfilter2->save($newfilterenty); } $this->_redirect('/filter'); @@ -151,14 +161,14 @@ class FilterController extends Zend_Controller_Action if (!isset($_POST["add"])){ echo "case1"; try{ - $filterID = $this->_request->getParam('filterID'); - $filtertypeID = $this->_request->getParam('filtertypeID'); + $filterentriesID = $this->_request->getParam('filterentriesID'); $filterentry = new Application_Model_FilterEntries(); $filterentriesmapper = new Application_Model_FilterEntriesMapper(); - $filterentriesmapper->find($filterID,$filtertypeID,$filterentry); + $filterentriesmapper->find($filterentriesID,$filterentry); + $editfilterform = new Application_Form_FilterEntriesAdd(); echo "
";
@@ -173,20 +183,33 @@ class FilterController extends Zend_Controller_Action
 				echo "Error message 2: " . $e->getMessage() . "\n";  
 			}
 		} else{
-			$editfilterform = new Application_Form_FilterEntriesAdd($_POST);
-			echo "case2";	
-			echo "
";
-			print_r($_POST);
-			echo "
"; - if ($editfilterform->isValid($_POST)) { - echo "valid\n"; - $newfilterenty = new Application_Model_FilterEntries($_POST); - $newfilter2 = new Application_Model_FilterEntriesMapper(); - $newfilter2->save($newfilterenty); + try{ + $filterentriesID = $this->_request->getParam('filterentriesID'); + $editfilterform = new Application_Form_FilterEntriesAdd($_POST); + if ($editfilterform->isValid($_POST)) { + echo "valid\n"; + $newfilterenty = new Application_Model_FilterEntries($_POST); + $newfilterenty->setID($filterentriesID); + if($_POST['filtertypeID'] == 1){ + $newfilterenty->setFiltervalue($this->fillIP($_POST['filtervalue'])); + $newfilterenty->setFiltervalue2($this->fillIP($_POST['filtervalue2'])); + } + else{ + $newfilterenty->setFiltervalue($_POST['filtervalue']); + $newfilterenty->setFiltervalue2($_POST['filtervalue2']); + } + echo "
";
+					print_r($newfilterenty);
+					echo "
"; + $newfilter2 = new Application_Model_FilterEntriesMapper(); + $newfilter2->save($newfilterenty); - } - else{ - echo 'nö'; + } + else{ + echo 'nö'; + } + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; } $this->_redirect('/filter'); } @@ -195,26 +218,77 @@ class FilterController extends Zend_Controller_Action { try{ - $filterID = $this->_request->getParam('filterID'); - $filtertypeID = $this->_request->getParam('filtertypeID'); - echo "
";
-			var_dump(array($filterID,$filtertypeID));
-			echo "
"; + $filterentriesID = $this->_request->getParam('filterentriesID'); + // TODO: ACL implementieren ob er den filter löschen darf - if(is_numeric($filterID)){ + if(is_numeric($filterentriesID)){ $deletefilterentry = new Application_Model_FilterEntries(); - $deletefilterentry->setFilterID($filterID); - $deletefilterentry->setFiltertypeID($filtertypeID); + $deletefilterentry->setID($filterentriesID); + echo "
";
+				print_r($deletefilterentry);
+				echo "
"; $filterentriesmapper = new Application_Model_FilterEntriesMapper(); $filterentriesmapper->delete($deletefilterentry); + echo "ok"; } +# echo "ready"; $this->_redirect('/filter'); }catch (Zend_Exception $e) { echo "Error message 2: " . $e->getMessage() . "\n"; } } + private function fillIP($ip){ + $ar = explode(".",$ip); + $representation = array(); + foreach($ar as $part){ + $representation[] = sprintf("%03s",$part); + } + return implode(".",$representation); + } + public function evaluate(){ + + // IP bereich + /* + $ipAdress = $this->fillIP('192.168.2.1'); + if( ( replace(".","",filtervalue) <= replace(".","",$ipAdress) + && replace(".","",$ipAdress) <= replace(".","",filtervalue2) + // resultset + */ + ######################################################### + // Mac bereich + /* + */ + ######################################################### + // PoolID + /* + If client comes from a specific pool + */ + ######################################################### + // BootIso + /* + WHERE bootiso = bootiso + */ + ######################################################### + // Membership + /* + + */ + ######################################################### + // Group + ######################################################### + // Time + /* + $nowShort = date('H-i',time()); + $nowLong = date('Y-m-d-H-i',time()); + if( ( replace("-","",filtervalue) <= replace("-","",$nowShort) + && replace("-","",$nowShort) <= replace("-","",filtervalue2) + ||( replace("-","",filtervalue) <= replace("-","",$nowLong) + && replace("-","",$nowLong) <= replace("-","",filtervalue2)) + // resultset + */ + } } -- cgit v1.2.3-55-g7522