diff options
author | Ted Trask <ttrask01@yahoo.com> | 2013-12-23 02:00:42 +0000 |
---|---|---|
committer | Ted Trask <ttrask01@yahoo.com> | 2013-12-23 02:00:42 +0000 |
commit | 418c8cfe9a36c036a900c47059450f822095dab7 (patch) | |
tree | bfab41c8c3a794a3a86a04306f87a9f2ef398e03 | |
parent | fb9dad6bac4d4d4363cc80ffe047d0ca5d4b5860 (diff) | |
download | acf-freeswitch-vmail-418c8cfe9a36c036a900c47059450f822095dab7.tar.bz2 acf-freeswitch-vmail-418c8cfe9a36c036a900c47059450f822095dab7.tar.xz |
Change bulk creation to use nid from database rather than hardcoding
-rw-r--r-- | vmail-model.lua | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/vmail-model.lua b/vmail-model.lua index aa0b6be..eaedffb 100644 --- a/vmail-model.lua +++ b/vmail-model.lua @@ -719,9 +719,16 @@ mymodule.set_bunchsettings = function (self, bunchdata) local res, err = pcall(function() local connected = vmaildb.databaseconnect() + local entry = {} + entry.value = getuserparams() + if not entry.value or not entry.value.username or not entry.value.firstname or not entry.value.lastname or not entry.value["vm-password"] then + error("Database parameters missing", 0) + end + entry.value["vm-password-confirm"] = nil + local sql = "BEGIN TRANSACTION" vmaildb.runsqlcommand(sql) - + for i,line in ipairs(format.string_to_table(format.dostounix(bunchdata.value.bunch.value), '\n')) do if string.find(line, "%S") then local username, firstname, lastname, password = string.match(line, "(%w+):(%w+):(%w+):(%w+)") @@ -736,19 +743,18 @@ mymodule.set_bunchsettings = function (self, bunchdata) vmaildb.runsqlcommand("ROLLBACK") break else - local entry = cfe({value={}}) - entry.value.username = cfe({value=username}) - entry.value.firstname = cfe({value=firstname}) - entry.value.lastname = cfe({value=lastname}) - entry.value["vm-password"] = cfe({value=password}) + entry.value.username.value = username + entry.value.firstname.value=firstname + entry.value.lastname.value=lastname + entry.value["vm-password"].value=password if validateentry(entry) then sql = "INSERT INTO voicemail_users VALUES(null, '"..vmaildb.escape(username).."')" vmaildb.runsqlcommand(sql) sql = "SELECT uid FROM voicemail_users where username ='"..vmaildb.escape(username).."'"; uid = vmaildb.getselectresponse(sql) - sql = "INSERT INTO voicemail_values VALUES('"..uid[1].uid.."', '2', '"..vmaildb.escape(tostring(firstname)).."')" + sql = "INSERT INTO voicemail_values VALUES('"..vmaildb.escape(uid[1].uid).."', '"..vmaildb.escape(entry.value.firstname.nid).."', '"..vmaildb.escape(tostring(firstname)).."')" vmaildb.runsqlcommand(sql) - sql = "INSERT INTO voicemail_values VALUES('"..uid[1].uid.."', '3', '"..vmaildb.escape(tostring(lastname)).."')" + sql = "INSERT INTO voicemail_values VALUES('"..vmaildb.escape(uid[1].uid).."', '"..vmaildb.escape(entry.value.lastname.nid).."', '"..vmaildb.escape(tostring(lastname)).."')" vmaildb.runsqlcommand(sql) sql = "INSERT INTO voicemail_prefs (username, domain, password) VALUES ('"..vmaildb.escape(username).."', '"..config.domain.."', '"..vmaildb.escape(password).."')" |