summaryrefslogtreecommitdiffstats
path: root/application/controllers
diff options
context:
space:
mode:
authorSimon2011-03-13 00:29:00 +0100
committerSimon2011-03-13 00:29:00 +0100
commit8618f91b2ba420eea204e70355470af94d3ca2b7 (patch)
tree1aafe6899935c52e85ae9f8041d9662b0a8185a1 /application/controllers
parentcss repariert (diff)
downloadpbs2-8618f91b2ba420eea204e70355470af94d3ca2b7.tar.gz
pbs2-8618f91b2ba420eea204e70355470af94d3ca2b7.tar.xz
pbs2-8618f91b2ba420eea204e70355470af94d3ca2b7.zip
filtertypen hinzugefügt, Zeit, Datum und Wochentage können in Filtern definiert werden, Formular wird automatisch aktualisiert
Diffstat (limited to 'application/controllers')
-rw-r--r--application/controllers/FilterController.php163
1 files changed, 127 insertions, 36 deletions
diff --git a/application/controllers/FilterController.php b/application/controllers/FilterController.php
index 7b05b0e..da52c34 100644
--- a/application/controllers/FilterController.php
+++ b/application/controllers/FilterController.php
@@ -122,7 +122,12 @@ class FilterController extends Zend_Controller_Action
// TODO: ACL implementieren ob er editieren darf
if (!isset($_POST["add"])){
try{
- $editfilterform = new Application_Form_FilterEntriesAdd(array('buttontext' => 'Add Filterentry','filterID' => $this->_request->getParam('filterID')));
+ $editfilterform = new Application_Form_FilterEntriesAdd(
+ array( 'buttontext' => 'Add Filterentry',
+ 'filterID' => $this->_request->getParam('filterID'),
+ 'data' => $_POST
+ ));
+ $editfilterform->populate($_POST);
$this->view->editfilterform = $editfilterform;
}catch (Zend_Exception $e) {
echo "Error message 2: " . $e->getMessage() . "\n";
@@ -145,6 +150,7 @@ class FilterController extends Zend_Controller_Action
$newfilter2 = new Application_Model_FilterEntriesMapper();
$newfilter2->save($newfilterenty);
+ #print_a($newfilterenty);
$this->_redirect('/filter');
}
$this->view->editfilterform = $editfilterform;
@@ -156,17 +162,25 @@ class FilterController extends Zend_Controller_Action
if (!isset($_POST["add"])){
try{
$filterentriesID = $this->_request->getParam('filterentriesID');
-
-
+
$filterentry = new Application_Model_FilterEntries();
$filterentriesmapper = new Application_Model_FilterEntriesMapper();
$filterentriesmapper->find($filterentriesID,$filterentry);
-
- $editfilterform = new Application_Form_FilterEntriesAdd(array('buttontext' => 'Edit Filterentry'));
+
+
+ #$editfilterform->setFilterID($filterID);
+ if(isset($_POST['filtertypeID']) && $_POST['filtertypeID'] != $filterentry->getFiltertypeID()){
+ $filterentry->setFiltertypeID($_POST['filtertypeID']) ;
+ }
+ $data = $filterentry->toArray();
+ print_a($data);
+ $editfilterform = new Application_Form_FilterEntriesAdd(
+ array('buttontext' => 'Edit Filterentry',
+ 'data' => $data));
+
$editfilterform->populate($filterentry->toArray());
- $editfilterform->setFilterID($filterID);
$this->view->editfilterform = $editfilterform;
}catch (Zend_Exception $e) {
@@ -176,7 +190,9 @@ class FilterController extends Zend_Controller_Action
try{
$filterentriesID = $this->_request->getParam('filterentriesID');
$editfilterform = new Application_Form_FilterEntriesAdd(array('buttontext' => 'Edit Filterentry'),$_POST);
- if ($editfilterform->isValid($_POST)) {
+ if ($editfilterform->isValid($_POST)) {
+ if($_POST['filterID'] == '')
+ unset($_POST['filterID']);
$newfilterenty = new Application_Model_FilterEntries($_POST);
$newfilterenty->setID($filterentriesID);
if($_POST['filtertypeID'] == 1){
@@ -189,6 +205,7 @@ class FilterController extends Zend_Controller_Action
}
$newfilter2 = new Application_Model_FilterEntriesMapper();
$newfilter2->save($newfilterenty);
+ #print_a($newfilterenty);
$this->_redirect('/filter');
}
@@ -202,24 +219,24 @@ class FilterController extends Zend_Controller_Action
public function removefilterentryAction()
{
try{
- $filterentriesID = $this->_request->getParam('filterentriesID');
-
- // TODO: ACL implementieren ob er den filter löschen darf
- if(is_numeric($filterentriesID)){
- $deletefilterentry = new Application_Model_FilterEntries();
- $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";
- }
- $this->_redirect('/filter');
- }catch (Zend_Exception $e) {
- echo "Error message 2: " . $e->getMessage() . "\n";
- }
+ $filterentriesID = $this->_request->getParam('filterentriesID');
+
+ // TODO: ACL implementieren ob er den filter löschen darf
+ if(is_numeric($filterentriesID)){
+ $deletefilterentry = new Application_Model_FilterEntries();
+ $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";
+ }
+ $this->_redirect('/filter');
+ }catch (Zend_Exception $e) {
+ echo "Error message 2: " . $e->getMessage() . "\n";
+ }
}
private function fillIP($ip)
@@ -258,8 +275,10 @@ class FilterController extends Zend_Controller_Action
$bootisoID = $_POST['bootisoID'];
$membershipID = $_POST['membershipID'];
$groupID = $_POST['groupID'];
- $time = strtotime($_POST['time']);
+ $time = ($_POST['time']);
$clientID = $_POST['clientID'];
+ $weekday = $_POST['weekday'];
+ $date = $_POST['date'];
print_a('Input',
array('ipAdress'=>$ipAdress,
'macAdress'=>$macAdress,
@@ -267,8 +286,11 @@ class FilterController extends Zend_Controller_Action
'bootisoID' => $bootisoID,
'membershipID'=>$membershipID,
'groupID'=>$groupID,
- 'time'=>$time." - ".date('d.m.Y H:i:s',$time),
- 'clientID' => $clientID));
+ 'time'=> $time." - ".date('d.m.Y H:i:s',$time),
+ 'clientID' => $clientID,
+ 'hardwarehash' => $hardwarehash,
+ 'weekday' => $weekday,
+ 'date' => $date));
}
@@ -276,7 +298,7 @@ class FilterController extends Zend_Controller_Action
$mysession = '1';
$set = array();
- $filtertypID = 8;
+
$session = new Application_Model_Session();
$sessionmapper = new Application_Model_SessionMapper();
$sessionmapper->find($mysession,$session);
@@ -447,21 +469,18 @@ class FilterController extends Zend_Controller_Action
// Time
$filtertypID = 7;
if(!$testFilter){
- $time = time();
+ $time = time("H:i");
}
- $nowShort = date('H-i',$time);
- $nowLong = date('Y-m-d-H-i',$time);
+ $nowShort = $time;
- $nowShort = str_replace("-","",$nowShort);
- $nowLong = str_replace("-","",$nowLong);
+ $nowShort = str_replace(":","",$nowShort);
try{
$select = $db->select()
->from(array('pbs_filterentries')
)
->where('filtertypeID = ?',$filtertypID)
- ->where('REPLACE(filtervalue,"-","") <= ? AND ? <= REPLACE(filtervalue2,"-","")',$nowShort)
- ->orWhere('REPLACE(filtervalue,"-","") <= ? AND ? <= REPLACE(filtervalue2,"-","")',$nowLong);
+ ->where('REPLACE(filtervalue,":","") <= ? AND ? <= REPLACE(filtervalue2,":","")',$nowShort);
$stmt = $select->query();
$result = $stmt->fetchAll();
@@ -473,6 +492,78 @@ class FilterController extends Zend_Controller_Action
if($showPartResults)
print_a('time',$result,$set[$filtertypID]);
+ #########################################################
+ // Hardwarehash
+ $filtertypID = 9;
+ if(!$testFilter){
+ // get hardwarehash from session
+ $hardwarehash = 'aaaa';
+ }
+
+ try{
+ $select = $db->select()
+ ->from(array('pbs_filterentries')
+ )
+ ->where('filtertypeID = ?',$filtertypID)
+ ->where('`filtervalue` = ?',$hardwarehash);
+ $stmt = $select->query();
+ $result = $stmt->fetchAll();
+ foreach($result as $r){
+ $set[$filtertypID][] = $r['filterID'];
+ }
+ }
+ catch(Exception $e){}
+
+ if($showPartResults)
+ print_a('hardwarehash',$result,$set[$filtertypID]);
+ #########################################################
+ // weekday
+ $filtertypID = 10;
+ if(!$testFilter){
+ $weekday = date('N');
+ }
+
+ try{
+ $select = $db->select()
+ ->from(array('pbs_filterentries')
+ )
+ ->where('filtertypeID = ?',$filtertypID)
+ ->where('filtervalue = ? ',$weekday);
+
+ $stmt = $select->query();
+ $result = $stmt->fetchAll();
+ foreach($result as $r){
+ $set[$filtertypID][] = $r['filterID'];
+ }
+ }
+ catch(Exception $e){}
+
+ if($showPartResults)
+ print_a('weekday',$result,$set[$filtertypID]);
+ #########################################################
+ // weekday
+ $filtertypID = 11;
+ if(!$testFilter){
+ $date = date('d.m.Y');
+ }
+
+ try{
+ $select = $db->select()
+ ->from(array('pbs_filterentries')
+ )
+ ->where('filtertypeID = ?',$filtertypID)
+ ->where('REPLACE(filtervalue,".","") <= ? AND ? <= REPLACE(filtervalue2,".","")',$date);
+
+ $stmt = $select->query();
+ $result = $stmt->fetchAll();
+ foreach($result as $r){
+ $set[$filtertypID][] = $r['filterID'];
+ }
+ }
+ catch(Exception $e){}
+
+ if($showPartResults)
+ print_a('weekday',$result,$set[$filtertypID]);
########################################
// ErgebnisSet auswerten
print_a('the result sets of the filtertypes',$set);