diff options
| author | michael pereira | 2011-03-07 17:54:01 +0100 |
|---|---|---|
| committer | michael pereira | 2011-03-07 17:54:01 +0100 |
| commit | f122bafccf6a81b87d982956f615e70ceaecfeb3 (patch) | |
| tree | 98e9960b2fda10f29765d3382d7fd92cfc100f92 /application | |
| parent | BootMenuEntries fertig (diff) | |
| parent | dirty hack entfertn durch findBy-Methode (diff) | |
| download | pbs2-f122bafccf6a81b87d982956f615e70ceaecfeb3.tar.gz pbs2-f122bafccf6a81b87d982956f615e70ceaecfeb3.tar.xz pbs2-f122bafccf6a81b87d982956f615e70ceaecfeb3.zip | |
Merge branch 'master' of openslx.org:lsfks/master-teamprojekt/pbs2
Diffstat (limited to 'application')
36 files changed, 660 insertions, 46 deletions
diff --git a/application/configs/application.ini b/application/configs/application.ini index c02bd7c..226dc30 100644 --- a/application/configs/application.ini +++ b/application/configs/application.ini @@ -10,7 +10,7 @@ resources.frontController.params.displayExceptions = 0 resources.db.adapter = PDO_MYSQL resources.db.params.host = localhost resources.db.params.username = root -resources.db.params.password = lsfks +resources.db.params.password = 123456 resources.db.params.dbname = pbs resources.db.isDefaultTableAdapter = true resources.view[] = "" diff --git a/application/configs/application.ini.dist b/application/configs/application.ini.dist index 70ce3e4..48e29e5 100644 --- a/application/configs/application.ini.dist +++ b/application/configs/application.ini.dist @@ -13,6 +13,7 @@ resources.db.params.username = root resources.db.params.password = resources.db.params.dbname = pbs resources.db.isDefaultTableAdapter = true +resources.view[] = "" [staging : production] diff --git a/application/controllers/FilterController.php b/application/controllers/FilterController.php index 1305689..73b087c 100644 --- a/application/controllers/FilterController.php +++ b/application/controllers/FilterController.php @@ -20,11 +20,6 @@ class FilterController extends Zend_Controller_Action try{ $this->_filtermapper = new Application_Model_FilterMapper(); $this->view->filters = $this->_filtermapper->fetchAll(); - - $filterentries = new Application_Model_FilterEntriesMapper(); - - $this->view->filterentries = $filterentries->fetchAll(); - }catch (Zend_Exception $e) { echo "Error message 2: " . $e->getMessage() . "\n"; } @@ -309,6 +304,12 @@ class FilterController extends Zend_Controller_Action If client comes from a specific pool */ ######################################################### + // ClientID + $filtertypID = 8; + /* + If client is a specific client + */ + ######################################################### // BootIso $filtertypID = 4; /* @@ -318,13 +319,13 @@ class FilterController extends Zend_Controller_Action // Membership $filtertypID = 5; /* - + user is in a defined membership */ ######################################################### // Group $filtertypID = 6; /* - + user is in a defined groupID */ ######################################################### // Time diff --git a/application/controllers/PoolController.php b/application/controllers/PoolController.php index f9e54be..28bde8e 100644 --- a/application/controllers/PoolController.php +++ b/application/controllers/PoolController.php @@ -11,22 +11,143 @@ class PoolController extends Zend_Controller_Action public function indexAction() { $poolMapper = new Application_Model_PoolMapper(); - $this->view->pools = $poolMapper->fetchAll(); + $this->view->pools = $poolMapper->fetchAll(); + + $poolentriesMapper = new Application_Model_PoolEntriesMapper(); + #print_a($poolentriesMapper->findBy('poolID',1)); + } public function createpoolAction() { - // action body + if (!isset($_POST["add"])){ + $addfilterform = new Application_Form_Pool(); + $this->view->addpool = $addfilterform; + }else { + $addpoolform = new Application_Form_Pool($_POST); + if ($addpoolform->isValid($_POST)) { + try{ + $pool = new Application_Model_Pool($_POST); + $poolmapper = new Application_Model_PoolMapper(); + $poolmapper->save($pool); + $this->_redirect('/pool'); + return; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + } } public function deletepoolAction() { - // action body + $poolID = $this->_request->getParam('poolID'); + // TODO: ACL implementieren ob er den pool löschen darf + if(is_numeric($poolID)){ + $deletepool = new Application_Model_Pool(); + $deletepool->setID($poolID); + $poolmapper = new Application_Model_PoolMapper(); + $poolmapper->delete($deletepool); + } + $this->_redirect('/pool'); } public function editpoolAction() { - // action body + if (!isset($_POST["add"])){ + $poolID = $this->_request->getParam('poolID'); + + $pool = new Application_Model_Pool(); + $poolmapper = new Application_Model_PoolMapper(); + $poolmapper->find($poolID,$pool); + $poolArray = $pool->toArray(); + + $editpool = new Application_Form_Pool(); + $editpool->populate($poolArray); + $this->view->editpoolform = $editpool; + + }else { + $addpoolform = new Application_Form_Pool($_POST); + if ($addpoolform->isValid($_POST)) { + try{ + $pool = new Application_Model_Pool($_POST); + $pool->setID($this->_request->getParam('poolID')); + $poolmapper = new Application_Model_PoolMapper(); + $poolmapper->save($pool); + $this->_redirect('/pool'); + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + } + } + + public function linkclientAction() + { + if(!isset($_POST['clientID'])){ + print_a($_POST); + $clientmapper = new Application_Model_ClientMapper(); + $clients = $clientmapper->fetchAll(); + foreach($clients as $c){ + #$client = new Application_Model_Client($c); + $clientsArray[] = $c->toArray(); + } + $assignedclientmapper = new Application_Model_PoolEntriesMapper(); + $assignedclients = $assignedclientmapper->fetchAll(); + foreach($assignedclients as $c){ + $assignedclientsArray[] = $c->toArray(); + } + $freeclients = $this->arrayDiff($clientsArray,$assignedclientsArray); + + $poolclient = new Application_Form_PoolClient(array('clients'=> $freeclients)); + $this->view->poolclient = $poolclient; + }else { + #$_POST['poolID'] = $this->_request->getParam('poolID'); + $poolclientform = new Application_Form_PoolClient($_POST); + + try{ + $pool = new Application_Model_PoolEntries($_POST); + $pool->setPoolID($this->_request->getParam('poolID')); + + $poolmapper = new Application_Model_PoolEntriesMapper(); + $poolmapper->save($pool); + $this->_redirect('/pool'); + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + + } + } + private function arrayDiff($a, $b){ + foreach($a as $k1 => $i1){ + foreach($b as $k2 => $i2){ + if($i1['clientID'] == $i2['clientID']){ + unset($a[$k1]); + } + } + } + return $a; + } + + + public function unlinkclientAction() + { + $poolentriesID = $this->_request->getParam('poolentriesID'); + + // TODO: ACL implementieren ob er den filter löschen darf + if(is_numeric($poolentriesID)){ + $deletepoolentries = new Application_Model_PoolEntries(); + $deletepoolentries->setID($poolentriesID); + echo "<pre style='border:1px solid black;background-color:#F5B800'>"; + print_r($deletepoolentries); + echo "</pre>"; + + $deletepoolentriesmapper = new Application_Model_PoolEntriesMapper(); + $deletepoolentriesmapper->delete($deletepoolentries); + echo "ok"; + } +# echo "ready"; + $this->_redirect('/pool'); } @@ -38,3 +159,7 @@ class PoolController extends Zend_Controller_Action + + + + diff --git a/application/forms/Pool.php b/application/forms/Pool.php new file mode 100644 index 0000000..0cef533 --- /dev/null +++ b/application/forms/Pool.php @@ -0,0 +1,44 @@ +<?php + +class Application_Form_Pool extends Zend_Form +{ + + public function init() + { + $this->setName("pool"); + $this->setMethod('post'); + + $this->addElement('text', 'title', array( + 'filters' => array('StringTrim'), + 'validators' => array( + array('StringLength', false, array(0, 50)), + ), + 'required' => true, + 'label' => 'Title:', + )); + $this->addElement('textarea', 'description', array( + 'filters' => array('StringTrim'), + 'required' => false, + 'label' => 'Description:', + )); + // TODO: Add target of Filter + + $this->addElement('text', 'location', array( + 'filters' => array('StringTrim'), + 'validators' => array( + array('StringLength', false, array(0, 50)), + ), + 'required' => true, + 'label' => 'Location:', + )); + + $this->addElement('submit', 'add', array( + 'required' => false, + 'ignore' => true, + 'label' => 'Save', + )); + } + + +} + diff --git a/application/forms/PoolClient.php b/application/forms/PoolClient.php new file mode 100644 index 0000000..7bacae0 --- /dev/null +++ b/application/forms/PoolClient.php @@ -0,0 +1,31 @@ +<?php + +class Application_Form_PoolClient extends Zend_Form +{ + private $clients; + + public function init() + { + $this->setName("addClientToPool"); + $this->setMethod('post'); + + $clientfield = $this->createElement('select','clientID'); + $clientfield ->setLabel('Client:'); + foreach($this->clients as $c){ + $clientfield->addMultiOption($c['clientID'],$c['macadress']." - ".$c['hardwarehash']); + } + $this->addElement($clientfield); + + $this->addElement('submit', 'add', array( + 'required' => false, + 'ignore' => true, + 'label' => 'Save', + )); + } + public function setClients($clients){ + $this->clients = $clients; + return $this; + } + +} + diff --git a/application/models/BootIsoMapper.php b/application/models/BootIsoMapper.php index 0039677..11af0d7 100644 --- a/application/models/BootIsoMapper.php +++ b/application/models/BootIsoMapper.php @@ -5,6 +5,21 @@ class Application_Model_BootIsoMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/BootMenuEntriesMapper.php b/application/models/BootMenuEntriesMapper.php index a2a497a..d697c10 100644 --- a/application/models/BootMenuEntriesMapper.php +++ b/application/models/BootMenuEntriesMapper.php @@ -5,6 +5,21 @@ class Application_Model_BootMenuEntriesMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/BootMenuMapper.php b/application/models/BootMenuMapper.php index 51e85ef..550e956 100644 --- a/application/models/BootMenuMapper.php +++ b/application/models/BootMenuMapper.php @@ -5,6 +5,21 @@ class Application_Model_BootMenuMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/BootOsMapper.php b/application/models/BootOsMapper.php index d4a43af..2f43916 100644 --- a/application/models/BootOsMapper.php +++ b/application/models/BootOsMapper.php @@ -5,6 +5,21 @@ class Application_Model_BootOsMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/ClientMapper.php b/application/models/ClientMapper.php index bf513ea..7016ae7 100644 --- a/application/models/ClientMapper.php +++ b/application/models/ClientMapper.php @@ -5,6 +5,21 @@ class Application_Model_ClientMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { @@ -75,8 +90,7 @@ class Application_Model_ClientMapper $entries[] = $entry; } return $entries; - } - + } } diff --git a/application/models/ConfigMapper.php b/application/models/ConfigMapper.php index 8ee9e0c..dc2a524 100644 --- a/application/models/ConfigMapper.php +++ b/application/models/ConfigMapper.php @@ -5,6 +5,21 @@ class Application_Model_ConfigMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/FilterEntriesMapper.php b/application/models/FilterEntriesMapper.php index 10fd3f1..bf57dbd 100644 --- a/application/models/FilterEntriesMapper.php +++ b/application/models/FilterEntriesMapper.php @@ -5,6 +5,21 @@ class Application_Model_FilterEntriesMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { @@ -92,13 +107,7 @@ class Application_Model_FilterEntriesMapper ->setFiltervalue2($row->filtervalue2); return $filterentries; } - public function findBy($field,$value) - { - $db = $this->getAdapter(); - $where = $db->quoteInto($db->quoteIdentifier($field).' = ?', value); - return $this->fetchAll($where); - } public function fetchAll() { diff --git a/application/models/FilterMapper.php b/application/models/FilterMapper.php index 3960c0d..eba9b71 100644 --- a/application/models/FilterMapper.php +++ b/application/models/FilterMapper.php @@ -5,6 +5,21 @@ class Application_Model_FilterMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/FilterTypeMapper.php b/application/models/FilterTypeMapper.php index 8ed2722..105daf4 100644 --- a/application/models/FilterTypeMapper.php +++ b/application/models/FilterTypeMapper.php @@ -5,6 +5,21 @@ class Application_Model_FilterTypeMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/GroupGroupsMapper.php b/application/models/GroupGroupsMapper.php index 79bf774..d7f5095 100644 --- a/application/models/GroupGroupsMapper.php +++ b/application/models/GroupGroupsMapper.php @@ -5,6 +5,21 @@ class Application_Model_GroupGroupsMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/GroupMapper.php b/application/models/GroupMapper.php index b9c7e30..f48fc5f 100644 --- a/application/models/GroupMapper.php +++ b/application/models/GroupMapper.php @@ -5,6 +5,21 @@ class Application_Model_GroupMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/GroupRequestMapper.php b/application/models/GroupRequestMapper.php index c09e047..aa83095 100644 --- a/application/models/GroupRequestMapper.php +++ b/application/models/GroupRequestMapper.php @@ -5,6 +5,21 @@ class Application_Model_GroupRequestMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/MembershipFiltersMapper.php b/application/models/MembershipFiltersMapper.php index e894c82..353eea1 100644 --- a/application/models/MembershipFiltersMapper.php +++ b/application/models/MembershipFiltersMapper.php @@ -5,6 +5,21 @@ class Application_Model_MembershipFiltersMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/MembershipMapper.php b/application/models/MembershipMapper.php index f2c0aee..58fa9d5 100644 --- a/application/models/MembershipMapper.php +++ b/application/models/MembershipMapper.php @@ -5,6 +5,21 @@ class Application_Model_MembershipMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/PersonMapper.php b/application/models/PersonMapper.php index 07c0347..79a84c7 100644 --- a/application/models/PersonMapper.php +++ b/application/models/PersonMapper.php @@ -5,6 +5,21 @@ class Application_Model_PersonMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/PoolEntries.php b/application/models/PoolEntries.php index 31caf5f..102dc9d 100644 --- a/application/models/PoolEntries.php +++ b/application/models/PoolEntries.php @@ -2,6 +2,7 @@ class Application_Model_PoolEntries { + protected $_poolentriesID; protected $_poolID; protected $_clientID; @@ -42,7 +43,15 @@ class Application_Model_PoolEntries return $this; } - + public function getID() + { + return $this->_poolentriesID; + } + public function setID($_poolentriesID) + { + $this->_poolentriesID = $_poolentriesID; + return $this; + } public function getPoolID() { return $this->_poolID; diff --git a/application/models/PoolEntriesMapper.php b/application/models/PoolEntriesMapper.php index 5d92f4c..61e4e0a 100644 --- a/application/models/PoolEntriesMapper.php +++ b/application/models/PoolEntriesMapper.php @@ -5,6 +5,21 @@ class Application_Model_PoolEntriesMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { @@ -32,13 +47,13 @@ class Application_Model_PoolEntriesMapper public function save(Application_Model_PoolEntries $polentries) { - $data = array('poolID'=> $polentries->getPoolID() ,'clientID'=> $polentries->getClientID() ); + $data = array('poolentriesID' => $polentries->getID(), 'poolID'=> $polentries->getPoolID() ,'clientID'=> $polentries->getClientID() ); if (null === ($id = $polentries->getID()) ) { - unset($data['polentriesID']); + unset($data['poolentriesID']); $this->getDbTable()->insert($data); } else { - $this->getDbTable()->update($data, array('polentriesID = ?' => $id)); + $this->getDbTable()->update($data, array('poolentriesID = ?' => $id)); } } @@ -47,7 +62,7 @@ class Application_Model_PoolEntriesMapper if (null === ($id = $polentries->getID()) ) { return; } else { - $this->getDbTable()->delete(array('polentriesID = ?' => $id)); + $this->getDbTable()->delete(array('poolentriesID = ?' => $id)); } } @@ -60,7 +75,7 @@ class Application_Model_PoolEntriesMapper $row = $result->current(); - $polentries->setPoolID($row->poolID)->setClientID($row->clientID); + $polentries->setID($row->poolentriesID)->setPoolID($row->poolID)->setClientID($row->clientID); } public function fetchAll() @@ -70,7 +85,7 @@ class Application_Model_PoolEntriesMapper foreach ($resultSet as $row) { $entry = new Application_Model_PoolEntries(); - $entry->setPoolID($row->poolID)->setClientID($row->clientID); + $entry->setID($row->poolentriesID)->setPoolID($row->poolID)->setClientID($row->clientID); $entries[] = $entry; } diff --git a/application/models/PoolFiltersMapper.php b/application/models/PoolFiltersMapper.php index 582f955..7cc20bb 100644 --- a/application/models/PoolFiltersMapper.php +++ b/application/models/PoolFiltersMapper.php @@ -5,6 +5,21 @@ class Application_Model_PoolFiltersMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/PoolMapper.php b/application/models/PoolMapper.php index e2d351a..994a3fd 100644 --- a/application/models/PoolMapper.php +++ b/application/models/PoolMapper.php @@ -5,6 +5,21 @@ class Application_Model_PoolMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { @@ -31,7 +46,7 @@ class Application_Model_PoolMapper public function save(Application_Model_Pool $pol) { - + print_a($pol); $data = array('poolID'=> $pol->getID() , 'title'=> $pol->getTitle() , 'description'=> $pol->getDescription() , @@ -63,7 +78,10 @@ class Application_Model_PoolMapper $row = $result->current(); - $pol->setID($row->poolID)->setTitle($row->title)->setDescription($row->description)->setLocation($row->location); + $pol->setID($row->poolID) + ->setTitle($row->title) + ->setDescription($row->description) + ->setLocation($row->location); } public function fetchAll() @@ -80,7 +98,6 @@ class Application_Model_PoolMapper return $entries; } - } diff --git a/application/models/RightMapper.php b/application/models/RightMapper.php index 35e5b05..570259a 100644 --- a/application/models/RightMapper.php +++ b/application/models/RightMapper.php @@ -5,6 +5,21 @@ class Application_Model_RightMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/RightRolesMapper.php b/application/models/RightRolesMapper.php index ae409d8..e2adff5 100644 --- a/application/models/RightRolesMapper.php +++ b/application/models/RightRolesMapper.php @@ -5,6 +5,21 @@ class Application_Model_RightRolesMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/RoleMapper.php b/application/models/RoleMapper.php index da8d73a..bc9bc48 100644 --- a/application/models/RoleMapper.php +++ b/application/models/RoleMapper.php @@ -5,6 +5,21 @@ class Application_Model_RoleMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/RolesMapper.php b/application/models/RolesMapper.php index 681c173..d48d747 100644 --- a/application/models/RolesMapper.php +++ b/application/models/RolesMapper.php @@ -5,6 +5,21 @@ class Application_Model_RolesMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/models/SessionMapper.php b/application/models/SessionMapper.php index dac5c4e..57b2fdf 100644 --- a/application/models/SessionMapper.php +++ b/application/models/SessionMapper.php @@ -5,6 +5,21 @@ class Application_Model_SessionMapper protected $_dbTable; + public function findBy($criteria, $value) + { + try{ + $db = Zend_Db_Table::getDefaultAdapter(); + $select = $this->getDbTable()->select() + ->from($this->_dbTable) + ->where($criteria . ' = ?', $value); + $stmt = $select->query(); + $result = $stmt->fetchAll(); + return $result; + }catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + } + } + public function setDbTable($dbTable) { if (is_string($dbTable)) { diff --git a/application/views/scripts/filter/index.phtml b/application/views/scripts/filter/index.phtml index bbc7374..a3e6f25 100644 --- a/application/views/scripts/filter/index.phtml +++ b/application/views/scripts/filter/index.phtml @@ -57,30 +57,33 @@ tr.filter{background-color:#DDD;} </tr> <tr><td></td> <td colspan=6> + <?php + $fe = new Application_Model_FilterEntriesMapper(); + # print_a($erg = $fe->findBy('filterID',$filter->getID())); + $erg = $fe->findBy('filterID',$filter->getID()); + ?> <table style='width:100%;'> - <?php foreach ($this->filterentries as $filterentry): ?> - <?php - // TODO: Quick and dirty - // hier wird die gesamte liste durchgegangen... unperformant - if($filterentry->filterID == $filter->getID()): ?> + <?php foreach ($erg as $filterentry): ?> + <tr> <td><?php + $filter2 = new Application_Model_FilterTypeMapper(); $erg = new Application_Model_FilterType(); - $filter2->find($filterentry->getFiltertypeID(),$erg); + $filter2->find($filterentry['filtertypeID'],$erg); //name zur ID finden - echo "[".$filterentry->getFiltertypeID()."] "; + echo "[".$filterentry['filtertypeID']."] "; echo $erg->getFiltertypename(); ?></td> - <td><?php echo $filterentry->getFiltervalue();?></td> - <td><?php echo $filterentry->getFiltervalue2();?></td> + <td><?php echo $filterentry['filtervalue'];?></td> + <td><?php echo $filterentry['filtervalue2'];?></td> <td><a href="<?php echo $this->url( array( 'controller' => 'filter', 'action' => 'editfilterentry', - 'filterentriesID' => $filterentry->getID() + 'filterentriesID' => $filterentry['filtertypeID'] ), 'default', true) ?>">edit filterentry</a> @@ -88,12 +91,12 @@ tr.filter{background-color:#DDD;} array( 'controller' => 'filter', 'action' => 'removefilterentry', - 'filterentriesID' => $filterentry->getID() + 'filterentriesID' => $filterentry['filtertypeID'] ), 'default', true) ?>">remove filterentry</a> </tr> - <?php endif; ?> + <?php endforeach ?> </table> </td> diff --git a/application/views/scripts/pool/createpool.phtml b/application/views/scripts/pool/createpool.phtml index 3d7f8ca..305b36e 100644 --- a/application/views/scripts/pool/createpool.phtml +++ b/application/views/scripts/pool/createpool.phtml @@ -1 +1,2 @@ -<br /><br /><center>View script for controller <b>Pool</b> and script/action name <b>createpool</b></center>
\ No newline at end of file +<?php +echo $this->addpool; diff --git a/application/views/scripts/pool/editpool.phtml b/application/views/scripts/pool/editpool.phtml index c70464e..359a5f9 100644 --- a/application/views/scripts/pool/editpool.phtml +++ b/application/views/scripts/pool/editpool.phtml @@ -1 +1,4 @@ -<br /><br /><center>View script for controller <b>Pool</b> and script/action name <b>editpool</b></center>
\ No newline at end of file +<h1>Edit Pool</h1> +<?php + +echo $this->editpoolform; diff --git a/application/views/scripts/pool/index.phtml b/application/views/scripts/pool/index.phtml index 989cf41..25f1528 100644 --- a/application/views/scripts/pool/index.phtml +++ b/application/views/scripts/pool/index.phtml @@ -1,5 +1,13 @@ <h1>Pools</h1> +<a href="<?php echo $this->url( + array( + 'controller' => 'pool', + 'action' => 'createpool' + ), + 'default', + true) ?>">create pool</a> + <?php if ($this->pools): ?> <!-- A table of filters. --> @@ -19,12 +27,56 @@ <td><a href="<?php echo $this->url( array( 'controller' => 'pool', - 'action' => 'removepool', + 'action' => 'editpool', 'poolID' => $pool->getID() ), 'default', - true) ?>">remove pool</a></td> + true) ?>">edit pool</a></td> + <td><a href="<?php echo $this->url( + array( + 'controller' => 'pool', + 'action' => 'deletepool', + 'poolID' => $pool->getID() + ), + 'default', + true) ?>">delete pool</a></td> + <td><a href="<?php echo $this->url( + array( + 'controller' => 'pool', + 'action' => 'linkclient', + 'poolID' => $pool->getID() + ), + 'default', + true) ?>">link client</a></td> + </tr> + <tr> + <td> + </td> + <td colspan=6><table border=1><tr><th>clientID</th><th>mac</th><th>hardwarehash</th></th> + <?php + $poolentriesMapper = new Application_Model_PoolEntriesMapper(); + $clients = $poolentriesMapper->findBy('poolID',$pool->getID()); + foreach ($clients as $client): ?> + <tr> + <td><?php echo $client['clientID'];?></td> + <?php + $cli = new Application_Model_Client(); + $clientMapper = new Application_Model_ClientMapper(); + $clientMapper->find($client['clientID'],$cli); + ?> + <td><?php echo ($cli->macAdress); ?></td> + <td><?php echo ($cli->hardwarehash); ?></td> + <td><a href="<?php echo $this->url( + array( + 'controller' => 'pool', + 'action' => 'unlinkclient', + 'poolentriesID' => $client['poolentriesID'] + ), + 'default', + true) ?>">unlink client</a></td> </tr> + <?php endforeach ?> + </table> <?php endforeach ?> </table> diff --git a/application/views/scripts/pool/linkclient.phtml b/application/views/scripts/pool/linkclient.phtml new file mode 100644 index 0000000..cbd2dd4 --- /dev/null +++ b/application/views/scripts/pool/linkclient.phtml @@ -0,0 +1,3 @@ +<h1>Link Clients</h1> +<?php +echo $this->poolclient; diff --git a/application/views/scripts/pool/unlinkclient.phtml b/application/views/scripts/pool/unlinkclient.phtml new file mode 100644 index 0000000..35aa9c5 --- /dev/null +++ b/application/views/scripts/pool/unlinkclient.phtml @@ -0,0 +1 @@ +<br /><br /><center>View script for controller <b>Pool</b> and script/action name <b>unlinkclient</b></center>
\ No newline at end of file |
