diff options
author | Ted Trask <ttrask01@yahoo.com> | 2010-07-01 12:42:51 +0000 |
---|---|---|
committer | Ted Trask <ttrask01@yahoo.com> | 2010-07-01 12:42:51 +0000 |
commit | 2536d0c904364e560b5fc2c4ab0460739426b274 (patch) | |
tree | 8f217baf5dcb484711d2cac04d2746ca351a0e86 /did-controller.lua | |
parent | 072e06ced2652119c9c1d6fcd2fddeba8cd6445c (diff) | |
download | acf-did-2536d0c904364e560b5fc2c4ab0460739426b274.tar.bz2 acf-did-2536d0c904364e560b5fc2c4ab0460739426b274.tar.xz |
Added user/roles permissions on a DID-by-DID basis.
Diffstat (limited to 'did-controller.lua')
-rw-r--r-- | did-controller.lua | 47 |
1 files changed, 35 insertions, 12 deletions
diff --git a/did-controller.lua b/did-controller.lua index 79d9a6d..9d631a9 100644 --- a/did-controller.lua +++ b/did-controller.lua @@ -6,23 +6,26 @@ require("controllerfunctions") default_action = "viewrecords" function listuseddefinitions(self) - return self.model.getuseddefinitionlist(self.clientdata.did, self.clientdata.extension, - self.clientdata.identification, self.clientdata.description, self.clientdata.department, self.clientdata.page) + return self.model.getuseddefinitionlist(self, sessiondata.userinfo.userid, self.clientdata.did, + self.clientdata.extension, self.clientdata.identification, self.clientdata.description, + self.clientdata.department, self.clientdata.page) end function listunuseddefinitions(self) - return self.model.getunuseddefinitionlist(self.clientdata.did, self.clientdata.identification, - self.clientdata.description, self.clientdata.department, self.clientdata.page) + return self.model.getunuseddefinitionlist(self, sessiondata.userinfo.userid, self.clientdata.did, + self.clientdata.identification, self.clientdata.description, self.clientdata.department, + self.clientdata.page) end function listdefinitions(self) - return self.model.getdefinitionlist(self.clientdata.did, self.clientdata.extension, - self.clientdata.identification, self.clientdata.description, self.clientdata.department, self.clientdata.page) + return self.model.getdefinitionlist(self, sessiondata.userinfo.userid, self.clientdata.did, + self.clientdata.extension, self.clientdata.identification, self.clientdata.description, + self.clientdata.department, self.clientdata.page) end function searchdefinitionlist(self) self.clientdata.did = self.clientdata.q or self.clientdata.did - local result = self.model.searchdefinitions(self.clientdata.did) + local result = self.model.searchdefinitions(self, sessiondata.userinfo.userid, self.clientdata.did) if self.clientdata.q then self.conf.viewtype = "text" end @@ -70,20 +73,20 @@ local function handle_form(self, getFunction, setFunction, clientdata, option, l end function editdefinition(self) - return handle_form(self, function() return self.model.getdefinition(self.clientdata.did) end, self.model.updatedefinition, self.clientdata, "Save", "Edit DID Number") + return handle_form(self, function() return self.model.getdefinition(self, sessiondata.userinfo.userid, self.clientdata.did) end, function(value) return self.model.updatedefinition(self, sessiondata.userinfo.userid, value) end, self.clientdata, "Save", "Edit DID Number") end function createdefinition(self) - return handle_form(self, self.model.getdefinition, self.model.savedefinition, self.clientdata, "Save", "Create DID Number") + return handle_form(self, function() return self.model.getdefinition(self, sessiondata.userinfo.userid) end, function(value) return self.model.savedefinition(self, sessiondata.userinfo.userid, value) end, self.clientdata, "Save", "Create DID Number") end function assigndefinition(self) self.conf.viewtype = self.clientdata.viewtype or self.conf.viewtype - return controllerfunctions.handle_form(self, function() return self.model.getdefinition(self.clientdata.did) end, self.model.updatedefinition, self.clientdata, "Save", "Assign DID Number") + return controllerfunctions.handle_form(self, function() return self.model.getdefinition(self, sessiondata.userinfo.userid, self.clientdata.did) end, function(value) return self.model.updatedefinition(self, sessiondata.userinfo.userid, value) end, self.clientdata, "Save", "Assign DID Number") end function newdefinition(self) - local retval = controllerfunctions.handle_form(self, self.model.getunuseddefinition, self.model.setunuseddefinition, self.clientdata, "Select", "Create New DID Number") + local retval = controllerfunctions.handle_form(self, self.model.getunuseddefinition, function(value) return self.model.setunuseddefinition(self, sessiondata.userinfo.userid, value) end, self.clientdata, "Select", "Create New DID Number") if retval.value.did and not retval.errtxt then -- Successfully found an unused did, redirect to edit it self:redirect("editdefinition?did="..retval.value.did.value.."&redir=listdefinitions") @@ -92,7 +95,7 @@ function newdefinition(self) end function deletedefinition(self) - return self:redirect_to_referrer(self.model.deletedefinition(self.clientdata.did)) + return self:redirect_to_referrer(self.model.deletedefinition(self, sessiondata.userinfo.userid, self.clientdata.did)) end function publish(self) @@ -114,3 +117,23 @@ end function viewactivitylog(self) return self.model.getactivitylog() end + +function listpermissions(self) + return self.model:getpermissionslist() +end + +function edituserpermissions(self) + return controllerfunctions.handle_form(self, function() + return self.model:getuserpermissions(self.clientdata.userid) + end, function(value) + return self.model:setuserpermissions(value) + end, self.clientdata, "Save", "Edit User Permissions", "User permissions set") +end + +function editrolepermissions(self) + return controllerfunctions.handle_form(self, function() + return self.model:getrolepermissions(self.clientdata.role) + end, function(value) + return self.model:setrolepermissions(value) + end, self.clientdata, "Save", "Edit Role Permissions", "Role permissions set") +end |