summaryrefslogtreecommitdiffstats
path: root/did-model.lua
diff options
context:
space:
mode:
authorTed Trask <ttrask01@yahoo.com>2010-01-27 10:21:05 +0000
committerTed Trask <ttrask01@yahoo.com>2010-01-27 10:21:05 +0000
commit31f561d164569c5d53bf1ed3ca5f4311fac9104b (patch)
treeca0df3311cec491532af890f4a2da07fc09c5a8d /did-model.lua
parent06cac7216f74c580126bfbf9294b8c6bc9d7d0a0 (diff)
downloadacf-did-31f561d164569c5d53bf1ed3ca5f4311fac9104b.tar.bz2
acf-did-31f561d164569c5d53bf1ed3ca5f4311fac9104b.tar.xz
Reverse order of history and added dashes to DIDs in UI.
Diffstat (limited to 'did-model.lua')
-rw-r--r--did-model.lua56
1 files changed, 41 insertions, 15 deletions
diff --git a/did-model.lua b/did-model.lua
index f75b911..f6f6858 100644
--- a/did-model.lua
+++ b/did-model.lua
@@ -158,7 +158,7 @@ end
local listhistorylogentries = function()
local entries = {}
- cur = assert (con:execute"SELECT logdatetime, msgtext, userid from dbhistlog")
+ cur = assert (con:execute"SELECT logdatetime, msgtext, userid from dbhistlog ORDER BY logdatetime DESC")
row = cur:fetch ({}, "a")
while row do
entries[#entries+1] = {logdatetime = row.logdatetime, msgtext = row.msgtext, userid = row.userid}
@@ -567,47 +567,65 @@ local function createdefinitionlist(did, extension, identification, description,
return cfe({ type="group", value=retval, label="DID Definition List" })
end
+local function stripdash(did)
+ return (string.gsub(did or "", "%-", ""))
+end
+
+local function adddash(did)
+ if #did > 0 then
+ return (did:sub(1,3) or "") .. "-" .. (did:sub(4,6) or "") .. "-" .. (did:sub(7) or "")
+ else
+ return did
+ end
+end
+
-- ################################################################################
-- PUBLIC FUNCTIONS
function getuseddefinitionlist(did, extension, identification, description, department)
- local def = createdefinitionlist(did, extension, identification, description, department)
+ local def = createdefinitionlist(stripdash(did), extension, identification, description, department)
def.label = "Used "..def.label
local res, err = pcall(function()
local connected = databaseconnect(DatabaseUser)
- def.value.definitions.value = listuseddefinitions(did, extension, identification, description, department)
+ def.value.definitions.value = listuseddefinitions(stripdash(did), extension, identification, description, department)
if connected then databasedisconnect() end
end)
if not res then
def.errtxt = err
end
+ for i,d in ipairs(def.value.definitions.value) do
+ d.did = adddash(d.did)
+ end
return def
end
function getunuseddefinitionlist(did, identification, description, department)
- local def = createdefinitionlist(did, nil, identification, description, department)
+ local def = createdefinitionlist(stripdash(did), nil, identification, description, department)
def.value.extension = nil
def.label = "Unused "..def.label
local res, err = pcall(function()
local connected = databaseconnect(DatabaseUser)
- def.value.definitions.value = listunuseddefinitions(did, identification, description, department)
+ def.value.definitions.value = listunuseddefinitions(stripdash(did), identification, description, department)
if connected then databasedisconnect() end
end)
if not res then
def.errtxt = err
end
+ for i,d in ipairs(def.value.definitions.value) do
+ d.did = adddash(d.did)
+ end
return def
end
function getdefinitionlist(did, extension, identification, description, department)
- local def = createdefinitionlist(did, extension, identification, description, department)
+ local def = createdefinitionlist(stripdash(did), extension, identification, description, department)
--def.value.extension = nil
local res, err = pcall(function()
local connected = databaseconnect(DatabaseUser)
--def.value.definitions.value = listdefinitions(did, identification, description, department)
- def.value.definitions.value = listuseddefinitions(did, extension, identification, description, department)
+ def.value.definitions.value = listuseddefinitions(stripdash(did), extension, identification, description, department)
if def.value.extension.value == "" then
- local tmp = listunuseddefinitions(did, identification, description, department)
+ local tmp = listunuseddefinitions(stripdash(did), identification, description, department)
for i,val in ipairs(tmp) do
val.extension = ""
table.insert(def.value.definitions.value, val)
@@ -619,6 +637,9 @@ function getdefinitionlist(did, extension, identification, description, departme
if not res then
def.errtxt = err
end
+ for i,d in ipairs(def.value.definitions.value) do
+ d.did = adddash(d.did)
+ end
return def
end
@@ -626,9 +647,9 @@ function searchdefinitions(did)
local result = {}
local res, err = pcall(function()
local connected = databaseconnect(DatabaseUser)
- local list = listdefinitions("^"..did)
- for i,did in ipairs(list) do
- result[#result+1] = did.did
+ local list = listdefinitions("^"..stripdash(did))
+ for i,d in ipairs(list) do
+ result[#result+1] = adddash(d.did)
end
if connected then databasedisconnect() end
end)
@@ -641,7 +662,7 @@ end
function getdefinition(did)
local errtxt
local group = {}
- group.did = cfe({ value=did or "", label="DID" })
+ group.did = cfe({ value=stripdash(did) or "", label="DID" })
group.identification = cfe({ label="Identification Number" })
group.department = cfe({ label="Department" })
group.description = cfe({ label="Description" })
@@ -650,8 +671,8 @@ function getdefinition(did)
group.did.errtxt = "DID does not exist"
local res, err = pcall(function()
local connected = databaseconnect(DatabaseUser)
- local definition = listdefinitions(did)
- local rules = listrules(did)
+ local definition = listdefinitions(stripdash(did))
+ local rules = listrules(stripdash(did))
if connected then databasedisconnect() end
if #definition == 1 then
group.did.errtxt = nil
@@ -669,6 +690,7 @@ function getdefinition(did)
errtxt = err
end
end
+ group.did.value = adddash(group.did.value)
return cfe({ type="group", value=group, label="DID Description", errtxt=errtxt })
end
@@ -679,6 +701,7 @@ function savedefinition(defin, exists)
defin.value.rules.value = string.gsub("\n"..format.dostounix(defin.value.rules.value), "\n%s*,%s*,%s*,%s*,%s*,%s*0000000", "")
defin.value.rules.value = string.gsub(defin.value.rules.value, "$\n", "")
+ defin.value.did.value = stripdash(defin.value.did.value)
local rules = parserules(defin.value.did.value, defin.value.rules.value)
-- note that validaterules might change the rules to standard formatting
local success, errtxt = validaterules(rules)
@@ -721,6 +744,7 @@ function savedefinition(defin, exists)
defin.errtxt = defin.errtxt .. "\n" .. err
end
end
+ defin.value.did.value = adddash(defin.value.did.value)
return defin
end
@@ -731,6 +755,7 @@ end
function deletedefinition(did)
local result = cfe({ label="Delete Definition Result", errtxt="Definition does not exist" })
+ did = stripdash(did)
local res, err = pcall(function()
databasedisconnect()
local pw = format.parse_ini_file(fs.read_file(configfile) or "", "", "password") or ""
@@ -782,7 +807,7 @@ function setunuseddefinition(defin)
success = false
defin.value.exchange.errtxt = "There are no unused extensions for that exchange"
else
- defin.value.did = cfe({ value=did[1], label="DID" })
+ defin.value.did = cfe({ value=adddash(did[1]), label="DID" })
end
if connected then databasedisconnect() end
end)
@@ -799,6 +824,7 @@ end
function publishdefinition(did)
local result = ""
local errtxt = "Invalid DID"
+ did = stripdash(did)
local pw = format.parse_ini_file(fs.read_file(configfile) or "", "", "password") or ""
local res, err = pcall(function()
databasedisconnect()