From fca04a6dab252eb9e8c0a92ce3b7e14b32e68d1e Mon Sep 17 00:00:00 2001 From: Sebastian Schmelzer Date: Wed, 11 Jan 2012 14:36:35 +0100 Subject: format source files --- .../modules/user/controllers/PoolController.php | 685 ++++++++++----------- 1 file changed, 336 insertions(+), 349 deletions(-) (limited to 'application/modules/user/controllers/PoolController.php') diff --git a/application/modules/user/controllers/PoolController.php b/application/modules/user/controllers/PoolController.php index d85bfdc..0f6636d 100644 --- a/application/modules/user/controllers/PoolController.php +++ b/application/modules/user/controllers/PoolController.php @@ -1,354 +1,341 @@ -hasIdentity()) { - $userIDsNamespace = Zend_Session::namespaceGet('userIDs'); - if($userIDsNamespace['membershipID'] ==''){ - $pbsNotifier = new Pbs_Notifier(); - echo $pbsNotifier->notify('No membershipID set','forbidden'); - } - - $membershipMapper = new Application_Model_MembershipMapper(); - $this->membership = new Application_Model_Membership(); - $membershipMapper->find($userIDsNamespace['membershipID'],$this->membership); - } else { - $this->_helper->redirector('login', 'auth'); - } - $this->page = $this->_request->getParam('page'); - } - - public function indexAction() - { - // ACL: is he allowed to see the pools of a group - if(!Pbs_Acl::checkRight('poo')) - $this->_redirect('/user'); - - $result = $this->_request->getParam('deleteresult'); - if($result != ""){ - $pbsNotifier = new Pbs_Notifier(); - $this->view->notification = $pbsNotifier->notify('delete',$result); - } - $result = $this->_request->getParam('modifyresult'); - if($result != ""){ - $pbsNotifier = new Pbs_Notifier(); - $this->view->notification = $pbsNotifier->notify('modify',$result); - } - $result = $this->_request->getParam('addresult'); - if($result != ""){ - $pbsNotifier = new Pbs_Notifier(); - $this->view->notification = $pbsNotifier->notify('create',$result); - } - $result = $this->_request->getParam('linkresult'); - if($result != ""){ - $pbsNotifier = new Pbs_Notifier(); - $this->view->notification = $pbsNotifier->notify('link',$result); - } - $result = $this->_request->getParam('unlinkresult'); - if($result != ""){ - $pbsNotifier = new Pbs_Notifier(); - $this->view->notification = $pbsNotifier->notify('unlink',$result); - } - - // get all pools from this group - $poolMapper = new Application_Model_PoolMapper(); - $pools = $poolMapper->findBy(array('groupID' => $this->membership->getGroupID()),true); - foreach($pools as $pool){ - $ff = new Application_Model_Pool(); - $ff->setOptions($pool); - $ff->setID($pool['poolID']); - $yourpools[] = $ff; - } - - // Search - $search = $this->_request->getParam('search'); - $mySearch = new Pbs_Search(); - $mySearch->setSearchTerm($search) ->setModule('pool'); - if($search != ''){ - $this->view->search = $mySearch->getSearchTerm(); - $yourpools = $mySearch->search($yourpools); - } - $this->view->searchform = $mySearch->searchForm(); - - // Pagination - $pagination = new Pbs_Pagination(); - $pagination->setPerPage(10) - ->setElement($yourpools) - ->setRequestPage($this->_request->getParam('page')) - ->setPageUrl('/user/pool/index'.((isset($this->view->search))?'/search/'.$this->view->search:'')); - $yourpools = $pagination->getElements(); - - $this->view->pagination = $pagination->pagination(); - $this->view->page = $pagination->getRequestPage(); - $this->view->pools = $yourpools; - - - // Get all Clients from this group - $clientmapper = new Application_Model_ClientMapper(); - $clientsArray = $clientmapper->findBy(array('groupID' => $this->membership->getGroupID()),true); - - // Get all assigned Clients - $assignedclientmapper = new Application_Model_PoolEntriesMapper(); - $assignedclients = $assignedclientmapper->fetchAll(); - foreach($assignedclients as $c){ - $assignedclientsArray[] = $c->toArray(); - } - - $db = Zend_Db_Table::getDefaultAdapter(); - // extract the un-assigned clients from the clientlist of the group - $stmt = $db->query("SELECT c.clientID, c.groupID, macadress,hardwarehash,created - FROM pbs_poolentries pe RIGHT OUTER JOIN pbs_client c ON - c.clientID = pe.clientID - WHERE poolentriesID IS NULL - AND c.groupID = '".$this->membership->getGroupID()."'"); - - $freeclients = $stmt->fetchAll(); - // Format Time-String - foreach($freeclients as $k=>$cig){- - $freeclients[$k]['created'] = date(Zend_Registry::get('dateformat'),$cig['created']); - } - - if(Pbs_Acl::checkRight('posuc')) - $this->view->freeclients = $freeclients; - } - - public function searchAction(){ - $this->_redirect('/user/pool/index/search/'.($_GET['search'])); - } - - public function createpoolAction() - { - // ACL: is he allowed to create a pool? - if(!Pbs_Acl::checkRight('poc')) - $this->_redirect('/user'); - - if (!isset($_POST["add"])){ - $addfilterform = new user_Form_Pool(array( - 'buttontext' => 'Create Pool', - 'page' => $this->page)); - $this->view->addpool = $addfilterform; - }else { - $addpoolform = new user_Form_Pool(array( - 'buttontext' => 'Create Pool', - 'page' => $this->page),$_POST); - if ($addpoolform->isValid($_POST)) { - try{ - $pool = new Application_Model_Pool($_POST); - $pool->setGroupID($this->membership->getGroupID()); - $poolmapper = new Application_Model_PoolMapper(); - $poolmapper->save($pool); - $this->_redirect('/user/pool/index/addresult/ok'); - }catch (Zend_Exception $e) { - echo "Error message 2: " . $e->getMessage() . "\n"; - $this->_redirect('/user/pool/index/addresult/error'); - } - } - $this->view->addpool = $addpoolform; - } - } - - public function deletepoolAction() - { - $poolID = $this->_request->getParam('poolID'); - - // ACL: is he allowed to delete a pool? - if(!Pbs_Acl::checkRight('pod')) - $this->_redirect('/user'); - - if(is_numeric($poolID)){ - $poolmapper = new Application_Model_PoolMapper(); - $pool = new Application_Model_Pool(); - $poolmapper->find($poolID,$pool); - if($this->membership->getGroupID() == $pool->getGroupID()){ - $deletepool = new Application_Model_Pool(); - $deletepool->setID($poolID); - $poolmapper->delete($deletepool); - $this->_redirect('/user/pool/index/page/'.$this->page.'/deleteresult/ok'); - } - else{ - $this->_redirect('/user/pool/index/page/'.$this->page.'/deleteresult/forbidden'); - } - } - $this->_redirect('/user/pool/index/page/'.$this->page.'/deleteresult/error'); - } - - public function editpoolAction() - { - // ACL: is he allowed to edit a pool? - if(!Pbs_Acl::checkRight('poe')) - $this->_redirect('/user'); - - if (!isset($_POST["add"])){ - $poolID = $this->_request->getParam('poolID'); - $pool = new Application_Model_Pool(); - $poolmapper = new Application_Model_PoolMapper(); - $poolmapper->find($poolID,$pool); - if($pool->getGroupID() == $this->membership->getGroupID()){ - $poolArray = $pool->toArray(); - $editpool = new user_Form_Pool(array( - 'buttontext' => 'Edit Pool', - 'page' => $this->page)); - $editpool->populate($poolArray); - $this->view->editpool = $editpool; - } - else{ - $this->_redirect('/user/pool/index/page/'.$this->page.'/modifyresult/forbidden'); - } - }else { - $editpoolform = new user_Form_Pool(array( - 'buttontext' => 'Edit Pool', - 'page' => $this->page),$_POST); - if ($editpoolform->isValid($_POST)) { - try{ - $poolmapper = new Application_Model_PoolMapper(); - $poolID = $this->_request->getParam('poolID'); - $pooldb = new Application_Model_Pool(); - $poolmapper->find($poolID,$pooldb); - print_a($pooldb->getGroupID(), $this->membership->getGroupID()); - if($pooldb->getGroupID() == $this->membership->getGroupID()){ - $pool = new Application_Model_Pool($_POST); - $pool->setID($poolID) - ->setGroupID($this->membership->getGroupID()); - $poolmapper->save($pool); - $this->_redirect('/user/pool/index/page/'.$this->page.'/modifyresult/ok'); - } - else{ - $this->_redirect('/user/pool/index/page/'.$this->page.'/modifyresult/forbidden'); - } - }catch (Zend_Exception $e) { - echo "Error message 2: " . $e->getMessage() . "\n"; - $this->_redirect('/user/pool/index/page/'.$this->page.'/modifyresult/error'); - } - } - $this->view->editpool = $editpoolform; - } - } - - public function linkclientAction() - { - $clientID = $this->_request->getParam('clientID'); - $poolID = $this->_request->getParam('poolID'); - - // ACL: Is he allowed to link clients to pools? - if(!Pbs_Acl::checkRight('polc')) - $this->_redirect('/user'); - - if(!isset($_POST['clientID']) && ($clientID == '')){ - $clientmapper = new Application_Model_ClientMapper(); - $clients = $clientmapper->findBy(array('groupID',$this->membership->getGroupID()),true); - $assignedclientmapper = new Application_Model_PoolEntriesMapper(); - $assignedclients = $assignedclientmapper->fetchAll(); - foreach($assignedclients as $c){ - $assignedclientsArray[] = $c->toArray(); - } - $freeclients = $this->arrayDiff($clients,$assignedclientsArray); - - $poolclient = new user_Form_PoolClient(array( - 'buttontext' => 'Link Client', - 'clients'=> $freeclients, - 'page' => $this->page)); - $this->view->poolclient = $poolclient; - }else { - $poolclient = new user_Form_PoolClient(array( - 'buttontext' => 'Link Client', - 'page' => $this->page),$_POST); - try{ - $poolID = $this->_request->getParam('poolID'); - $poolmapper = new Application_Model_PoolMapper(); - $pooldb = new Application_Model_Pool(); - $poolmapper->find($poolID,$pooldb); - $clientmapper = new Application_Model_ClientMapper(); - $clientdb = new Application_Model_Client(); - $clientmapper->find($clientID,$clientdb); - - if($pooldb->getGroupID() == $this->membership->getGroupID() && $clientdb->getGroupID() == $this->membership->getGroupID()){ - $poolentriesmapper = new Application_Model_PoolEntriesMapper(); - $poolentry = new Application_Model_PoolEntries($_POST); - $poolentry->setPoolID($poolID); - if($poolentry->getClientID() == ''){ - $poolentry->setClientID($clientID); - } - $poolentriesmapper->save($poolentry); - $this->_redirect('/user/pool/index/page/'.$this->page.'/linkresult/ok'); - } - else{ - $this->_redirect('/user/pool/index/page/'.$this->page.'/linkresult/forbidden'); - } - }catch (Zend_Exception $e) { - echo "Error message 2: " . $e->getMessage() . "\n"; - $this->_redirect('/user/pool/index/page/'.$this->page.'/linkresult/error'); - } - $this->view->poolclient = $poolclient; - } - } - - public function unlinkclientAction() - { - $poolentriesID = $this->_request->getParam('poolentriesID'); - - // ACL: Is he allowed to unlink clients from pools? - if(!Pbs_Acl::checkRight('pouc')) - $this->_redirect('/user'); - - if(is_numeric($poolentriesID)){ - $poolentriesMapper = new Application_Model_PoolEntriesMapper(); - $poolentry = new Application_Model_PoolEntries(); - $poolentriesMapper->find($poolentriesID,$poolentry); - $clientMapper = new Application_Model_ClientMapper(); - $client = new Application_Model_Client(); - - $poolMapper = new Application_Model_PoolMapper(); - $pool = new Application_Model_Pool(); - - $clientMapper->find($poolentry->getClientID(),$client); - $poolMapper->find($poolentry->getPoolID(),$pool); - - - if($pool->getGroupID() == $this->membership->getGroupID() && $client->getGroupID() == $this->membership->getGroupID()){ - $deletepoolentries = new Application_Model_PoolEntries(); - $deletepoolentries->setID($poolentriesID); - $deletepoolentriesmapper = new Application_Model_PoolEntriesMapper(); - $deletepoolentriesmapper->delete($deletepoolentries); - $this->_redirect('/user/pool/index/page/'.$this->page.'/unlinkresult/ok'); - } - else{ - $this->_redirect('/user/pool/index/page/'.$this->page.'/unlinkresult/forbidden'); - } - } - else{ - $this->_redirect('/user/pool/index/page/'.$this->page.'/unlinkresult/error'); - } - } - - // creates an array of two arrays - // first parameter is the list of all clients - // second parameter is the list of clients which are already in a group - // return value is a list of all clients, which are in no group - 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; - } +* This program is free software distributed under the GPL version 2. +* See http://gpl.openslx.org/ +* +* If you have any feedback please consult http://feedback.openslx.org/ and +* send your suggestions, praise, or complaints to feedback@openslx.org +* +* General information about OpenSLX can be found at http://openslx.org/ +*/ + +class User_PoolController extends Zend_Controller_Action { + private $membership; + protected $page; + + public function init() { + if (Zend_Auth::getInstance()->hasIdentity()) { + $userIDsNamespace = Zend_Session::namespaceGet('userIDs'); + if($userIDsNamespace['membershipID'] == '') { + $pbsNotifier = new Pbs_Notifier(); + echo $pbsNotifier->notify('No membershipID set', 'forbidden'); + } + + $membershipMapper = new Application_Model_MembershipMapper(); + $this->membership = new Application_Model_Membership(); + $membershipMapper->find($userIDsNamespace['membershipID'], $this->membership); + } else { + $this->_helper->redirector('login', 'auth'); + } + $this->page = $this->_request->getParam('page'); + } + + public function indexAction() { + // ACL: is he allowed to see the pools of a group + if(!Pbs_Acl::checkRight('poo')) + { $this->_redirect('/user'); } + + $result = $this->_request->getParam('deleteresult'); + if($result != "") { + $pbsNotifier = new Pbs_Notifier(); + $this->view->notification = $pbsNotifier->notify('delete', $result); + } + $result = $this->_request->getParam('modifyresult'); + if($result != "") { + $pbsNotifier = new Pbs_Notifier(); + $this->view->notification = $pbsNotifier->notify('modify', $result); + } + $result = $this->_request->getParam('addresult'); + if($result != "") { + $pbsNotifier = new Pbs_Notifier(); + $this->view->notification = $pbsNotifier->notify('create', $result); + } + $result = $this->_request->getParam('linkresult'); + if($result != "") { + $pbsNotifier = new Pbs_Notifier(); + $this->view->notification = $pbsNotifier->notify('link', $result); + } + $result = $this->_request->getParam('unlinkresult'); + if($result != "") { + $pbsNotifier = new Pbs_Notifier(); + $this->view->notification = $pbsNotifier->notify('unlink', $result); + } + + // get all pools from this group + $poolMapper = new Application_Model_PoolMapper(); + $pools = $poolMapper->findBy(array('groupID' => $this->membership->getGroupID()), true); + foreach($pools as $pool) { + $ff = new Application_Model_Pool(); + $ff->setOptions($pool); + $ff->setID($pool['poolID']); + $yourpools[] = $ff; + } + + // Search + $search = $this->_request->getParam('search'); + $mySearch = new Pbs_Search(); + $mySearch->setSearchTerm($search) ->setModule('pool'); + if($search != '') { + $this->view->search = $mySearch->getSearchTerm(); + $yourpools = $mySearch->search($yourpools); + } + $this->view->searchform = $mySearch->searchForm(); + + // Pagination + $pagination = new Pbs_Pagination(); + $pagination->setPerPage(10) + ->setElement($yourpools) + ->setRequestPage($this->_request->getParam('page')) + ->setPageUrl('/user/pool/index'.((isset($this->view->search)) ? '/search/'.$this->view->search : '')); + $yourpools = $pagination->getElements(); + + $this->view->pagination = $pagination->pagination(); + $this->view->page = $pagination->getRequestPage(); + $this->view->pools = $yourpools; + + + // Get all Clients from this group + $clientmapper = new Application_Model_ClientMapper(); + $clientsArray = $clientmapper->findBy(array('groupID' => $this->membership->getGroupID()), true); + + // Get all assigned Clients + $assignedclientmapper = new Application_Model_PoolEntriesMapper(); + $assignedclients = $assignedclientmapper->fetchAll(); + foreach($assignedclients as $c) { + $assignedclientsArray[] = $c->toArray(); + } + + $db = Zend_Db_Table::getDefaultAdapter(); + // extract the un-assigned clients from the clientlist of the group + $stmt = $db->query("SELECT c.clientID, c.groupID, macadress,hardwarehash,created + FROM pbs_poolentries pe RIGHT OUTER JOIN pbs_client c ON + c.clientID = pe.clientID + WHERE poolentriesID IS NULL + AND c.groupID = '".$this->membership->getGroupID()."'"); + + $freeclients = $stmt->fetchAll(); + // Format Time-String + foreach($freeclients as $k => $cig) { + - + $freeclients[$k]['created'] = date(Zend_Registry::get('dateformat'), $cig['created']); + } + + if(Pbs_Acl::checkRight('posuc')) + { $this->view->freeclients = $freeclients; } + } + + public function searchAction() { + $this->_redirect('/user/pool/index/search/'.($_GET['search'])); + } + + public function createpoolAction() { + // ACL: is he allowed to create a pool? + if(!Pbs_Acl::checkRight('poc')) + { $this->_redirect('/user'); } + + if (!isset($_POST["add"])) { + $addfilterform = new user_Form_Pool(array( + 'buttontext' => 'Create Pool', + 'page' => $this->page)); + $this->view->addpool = $addfilterform; + } else { + $addpoolform = new user_Form_Pool(array( + 'buttontext' => 'Create Pool', + 'page' => $this->page), $_POST); + if ($addpoolform->isValid($_POST)) { + try { + $pool = new Application_Model_Pool($_POST); + $pool->setGroupID($this->membership->getGroupID()); + $poolmapper = new Application_Model_PoolMapper(); + $poolmapper->save($pool); + $this->_redirect('/user/pool/index/addresult/ok'); + } catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + $this->_redirect('/user/pool/index/addresult/error'); + } + } + $this->view->addpool = $addpoolform; + } + } + + public function deletepoolAction() { + $poolID = $this->_request->getParam('poolID'); + + // ACL: is he allowed to delete a pool? + if(!Pbs_Acl::checkRight('pod')) + { $this->_redirect('/user'); } + + if(is_numeric($poolID)) { + $poolmapper = new Application_Model_PoolMapper(); + $pool = new Application_Model_Pool(); + $poolmapper->find($poolID, $pool); + if($this->membership->getGroupID() == $pool->getGroupID()) { + $deletepool = new Application_Model_Pool(); + $deletepool->setID($poolID); + $poolmapper->delete($deletepool); + $this->_redirect('/user/pool/index/page/'.$this->page.'/deleteresult/ok'); + } else { + $this->_redirect('/user/pool/index/page/'.$this->page.'/deleteresult/forbidden'); + } + } + $this->_redirect('/user/pool/index/page/'.$this->page.'/deleteresult/error'); + } + + public function editpoolAction() { + // ACL: is he allowed to edit a pool? + if(!Pbs_Acl::checkRight('poe')) + { $this->_redirect('/user'); } + + if (!isset($_POST["add"])) { + $poolID = $this->_request->getParam('poolID'); + $pool = new Application_Model_Pool(); + $poolmapper = new Application_Model_PoolMapper(); + $poolmapper->find($poolID, $pool); + if($pool->getGroupID() == $this->membership->getGroupID()) { + $poolArray = $pool->toArray(); + $editpool = new user_Form_Pool(array( + 'buttontext' => 'Edit Pool', + 'page' => $this->page)); + $editpool->populate($poolArray); + $this->view->editpool = $editpool; + } else { + $this->_redirect('/user/pool/index/page/'.$this->page.'/modifyresult/forbidden'); + } + } else { + $editpoolform = new user_Form_Pool(array( + 'buttontext' => 'Edit Pool', + 'page' => $this->page), $_POST); + if ($editpoolform->isValid($_POST)) { + try { + $poolmapper = new Application_Model_PoolMapper(); + $poolID = $this->_request->getParam('poolID'); + $pooldb = new Application_Model_Pool(); + $poolmapper->find($poolID, $pooldb); + print_a($pooldb->getGroupID(), $this->membership->getGroupID()); + if($pooldb->getGroupID() == $this->membership->getGroupID()) { + $pool = new Application_Model_Pool($_POST); + $pool->setID($poolID) + ->setGroupID($this->membership->getGroupID()); + $poolmapper->save($pool); + $this->_redirect('/user/pool/index/page/'.$this->page.'/modifyresult/ok'); + } else { + $this->_redirect('/user/pool/index/page/'.$this->page.'/modifyresult/forbidden'); + } + } catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + $this->_redirect('/user/pool/index/page/'.$this->page.'/modifyresult/error'); + } + } + $this->view->editpool = $editpoolform; + } + } + + public function linkclientAction() { + $clientID = $this->_request->getParam('clientID'); + $poolID = $this->_request->getParam('poolID'); + + // ACL: Is he allowed to link clients to pools? + if(!Pbs_Acl::checkRight('polc')) + { $this->_redirect('/user'); } + + if(!isset($_POST['clientID']) && ($clientID == '')) { + $clientmapper = new Application_Model_ClientMapper(); + $clients = $clientmapper->findBy(array('groupID', $this->membership->getGroupID()), true); + $assignedclientmapper = new Application_Model_PoolEntriesMapper(); + $assignedclients = $assignedclientmapper->fetchAll(); + foreach($assignedclients as $c) { + $assignedclientsArray[] = $c->toArray(); + } + $freeclients = $this->arrayDiff($clients, $assignedclientsArray); + + $poolclient = new user_Form_PoolClient(array( + 'buttontext' => 'Link Client', + 'clients' => $freeclients, + 'page' => $this->page)); + $this->view->poolclient = $poolclient; + } else { + $poolclient = new user_Form_PoolClient(array( + 'buttontext' => 'Link Client', + 'page' => $this->page), $_POST); + try { + $poolID = $this->_request->getParam('poolID'); + $poolmapper = new Application_Model_PoolMapper(); + $pooldb = new Application_Model_Pool(); + $poolmapper->find($poolID, $pooldb); + $clientmapper = new Application_Model_ClientMapper(); + $clientdb = new Application_Model_Client(); + $clientmapper->find($clientID, $clientdb); + + if($pooldb->getGroupID() == $this->membership->getGroupID() && $clientdb->getGroupID() == $this->membership->getGroupID()) { + $poolentriesmapper = new Application_Model_PoolEntriesMapper(); + $poolentry = new Application_Model_PoolEntries($_POST); + $poolentry->setPoolID($poolID); + if($poolentry->getClientID() == '') { + $poolentry->setClientID($clientID); + } + $poolentriesmapper->save($poolentry); + $this->_redirect('/user/pool/index/page/'.$this->page.'/linkresult/ok'); + } else { + $this->_redirect('/user/pool/index/page/'.$this->page.'/linkresult/forbidden'); + } + } catch (Zend_Exception $e) { + echo "Error message 2: " . $e->getMessage() . "\n"; + $this->_redirect('/user/pool/index/page/'.$this->page.'/linkresult/error'); + } + $this->view->poolclient = $poolclient; + } + } + + public function unlinkclientAction() { + $poolentriesID = $this->_request->getParam('poolentriesID'); + + // ACL: Is he allowed to unlink clients from pools? + if(!Pbs_Acl::checkRight('pouc')) + { $this->_redirect('/user'); } + + if(is_numeric($poolentriesID)) { + $poolentriesMapper = new Application_Model_PoolEntriesMapper(); + $poolentry = new Application_Model_PoolEntries(); + $poolentriesMapper->find($poolentriesID, $poolentry); + $clientMapper = new Application_Model_ClientMapper(); + $client = new Application_Model_Client(); + + $poolMapper = new Application_Model_PoolMapper(); + $pool = new Application_Model_Pool(); + + $clientMapper->find($poolentry->getClientID(), $client); + $poolMapper->find($poolentry->getPoolID(), $pool); + + + if($pool->getGroupID() == $this->membership->getGroupID() && $client->getGroupID() == $this->membership->getGroupID()) { + $deletepoolentries = new Application_Model_PoolEntries(); + $deletepoolentries->setID($poolentriesID); + $deletepoolentriesmapper = new Application_Model_PoolEntriesMapper(); + $deletepoolentriesmapper->delete($deletepoolentries); + $this->_redirect('/user/pool/index/page/'.$this->page.'/unlinkresult/ok'); + } else { + $this->_redirect('/user/pool/index/page/'.$this->page.'/unlinkresult/forbidden'); + } + } else { + $this->_redirect('/user/pool/index/page/'.$this->page.'/unlinkresult/error'); + } + } + + // creates an array of two arrays + // first parameter is the list of all clients + // second parameter is the list of clients which are already in a group + // return value is a list of all clients, which are in no group + 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; + } } -- cgit v1.2.3-55-g7522