diff options
author | sf34 | 2011-03-05 19:55:00 +0100 |
---|---|---|
committer | sf34 | 2011-03-05 19:55:00 +0100 |
commit | fd3df2571717c254ab67f7dcab4a98e1d0ca0b12 (patch) | |
tree | ecb3d5a4e80b4d6ae0d1557fc8de147c98e8dc64 /application/controllers/FilterController.php | |
parent | filter-oberffäche fertig, nun zur auswahl des bootmenus && funktion toArray ... (diff) | |
download | pbs2-fd3df2571717c254ab67f7dcab4a98e1d0ca0b12.tar.gz pbs2-fd3df2571717c254ab67f7dcab4a98e1d0ca0b12.tar.xz pbs2-fd3df2571717c254ab67f7dcab4a98e1d0ca0b12.zip |
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
Diffstat (limited to 'application/controllers/FilterController.php')
-rw-r--r-- | application/controllers/FilterController.php | 134 |
1 files changed, 104 insertions, 30 deletions
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 "<pre>case 1.1</pre>"; }catch (Zend_Exception $e) { echo "Error message 2: " . $e->getMessage() . "\n"; } } else{ $editfilterform = new Application_Form_FilterEntriesAdd($_POST); - echo "case2"; + echo "<pre style='padding:5px;border:1px solid black; background-color:#3CF;'>case2</pre>"; if ($editfilterform->isValid($_POST)) { - + echo "<pre style='padding:5px;border:1px solid black; background-color:#3CF;'>case 2.2</pre>"; $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 "<pre style='border:1px solid black;background-color:#F5B800'>"; + print_r($newfilterenty); + echo "</pre>"; $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 "<pre style='border:1px solid black;background-color:#F5B800'>"; @@ -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 "<pre style='border:1px solid black;background-color:#F5B800'>"; - print_r($_POST); - echo "</pre>"; - 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 "<pre style='border:1px solid black;background-color:#F5B800'>"; + print_r($newfilterenty); + echo "</pre>"; + $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 "<pre>"; - var_dump(array($filterID,$filtertypeID)); - echo "</pre>"; + $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 "<pre style='border:1px solid black;background-color:#F5B800'>"; + print_r($deletefilterentry); + echo "</pre>"; $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 + */ + } } |