summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjörn Geiger2011-06-08 22:12:42 +0200
committerBjörn Geiger2011-06-08 22:12:42 +0200
commit42417a19f39ca22a37870d711991b43419c695f6 (patch)
tree13177416043f552571beb3c9bb1eebbdaaa4cf3c
parentFilter API korrigiert (diff)
downloadpbs2-42417a19f39ca22a37870d711991b43419c695f6.tar.gz
pbs2-42417a19f39ca22a37870d711991b43419c695f6.tar.xz
pbs2-42417a19f39ca22a37870d711991b43419c695f6.zip
Filter API nun auch Filter Delete
-rw-r--r--application/controllers/ResourceController.php36
-rw-r--r--scripts/api_filter_test.html10
2 files changed, 42 insertions, 4 deletions
diff --git a/application/controllers/ResourceController.php b/application/controllers/ResourceController.php
index 43ca070..3f5c5f0 100644
--- a/application/controllers/ResourceController.php
+++ b/application/controllers/ResourceController.php
@@ -169,11 +169,11 @@ class ResourceController extends Zend_Controller_Action
$params = $this->_request->getParams();
$groupID = $this->membership->getGroupID();
-
+
$filterMapper = new Application_Model_FilterMapper();
$filterentriesMapper = new Application_Model_FilterEntriesMapper();
- $filter = new Application_Model_Filter();
+ $filter = new Application_Model_Filter();
$filter->setOptions($params);
$filter->setGroupID($groupID);
$filter->setMembershipID($this->membership->getID());
@@ -190,6 +190,38 @@ class ResourceController extends Zend_Controller_Action
header('HTTP/1.0 201 Filter created');
}
+ public function deletefilterAction() {
+ list($rightroles) = $this->rightrolesMapper->findBy(array('rightID' => '90', 'roleID' => $this->membership->getRoleID()));
+ if($rightroles == null){
+ header('HTTP/1.0 403 No Right to Delete Filter');
+ die();
+ }
+
+ $apikey = $this->_request->getParam('apikey');
+ if($apikey == ""){
+ header('HTTP/1.0 400 No API-Key');
+ die();
+ }
+
+ $params = $this->_request->getParams();
+ $groupID = $this->membership->getGroupID();
+ $filterid = $params['filterid'];
+
+ $filterMapper = new Application_Model_FilterMapper();
+ $filterentriesMapper = new Application_Model_FilterEntriesMapper();
+
+ $filter = new Application_Model_Filter();
+ $filterMapper->find($filterid, $filter);
+ if(isset($filter)) {
+ $filterMapper->delete($filter);
+
+ header('HTTP/1.0 201 Filter deleted');
+ } else {
+ header('HTTP/1.0 400 Filter not found');
+ die();
+ }
+ }
+
public function editbootosAction()
{
diff --git a/scripts/api_filter_test.html b/scripts/api_filter_test.html
index 9676c41..d66d22f 100644
--- a/scripts/api_filter_test.html
+++ b/scripts/api_filter_test.html
@@ -1,3 +1,4 @@
+<h2>Add Filter:</h2>
<form enctype='multipart/form-data' action='http://pbs2.local/resource/addfilter/apikey/apikey1' method='POST'>
BootMenuID: <input name='bootmenuID' type='text'/>
Title:<input name='title' type='text'/>
@@ -6,6 +7,11 @@ Priority:<input name='priority' type='text'/>
FilterTypeID (1=IP, 2=MAC, 3=PoolID, 4=BootISO, 5=Membership, 6=AllMembers, 7=Time, 8=Client, 9=Hardwarehash, 10=Weekday, 11=Date):<input name='filtertypeID' type='text'/>
Value1<input name='filtervalue' type='text'/>
Value2<input name='filtervalue2' type='text'/>
-<input type='submit' value='Upload'/>
+<input type='submit' value='Add'/>
</form>
-<style>input{display:block}</style>
+<h2>Delete Filter:</h2>
+<form enctype='multipart/form-data' action='http://pbs2.local/resource/deletefilter/apikey/apikey1' method='POST'>
+FilterID: <input name='filterid' type='text'/>
+<input type='submit' value='Delete'/>
+</form>
+<style>input{display:block}</style> \ No newline at end of file