summaryrefslogtreecommitdiffstats
path: root/application/controllers/FilterController.php
diff options
context:
space:
mode:
authorsf342011-03-05 19:55:00 +0100
committersf342011-03-05 19:55:00 +0100
commitfd3df2571717c254ab67f7dcab4a98e1d0ca0b12 (patch)
treeecb3d5a4e80b4d6ae0d1557fc8de147c98e8dc64 /application/controllers/FilterController.php
parentfilter-oberffäche fertig, nun zur auswahl des bootmenus && funktion toArray ... (diff)
downloadpbs2-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.php134
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
+ */
+ }
}