summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTed Trask <ttrask01@yahoo.com>2016-02-17 21:58:14 +0000
committerTed Trask <ttrask01@yahoo.com>2016-02-17 21:58:14 +0000
commite0c9a43169c3a90661574c86e9a918950a0cc0dd (patch)
treed4c42d23e1f36168e97c4896c6d535478e1f946f
parentf2b741e67b698590e15d3d65183dfb9b70b96ed8 (diff)
downloadacf-freeswitch-vmail-e0c9a43169c3a90661574c86e9a918950a0cc0dd.tar.bz2
acf-freeswitch-vmail-e0c9a43169c3a90661574c86e9a918950a0cc0dd.tar.xz
Change download(my)message to use proper cfe and new stream template
-rw-r--r--vmail-controller.lua7
-rw-r--r--vmail-listmessages-html.lsp8
-rw-r--r--vmail-model.lua26
3 files changed, 26 insertions, 15 deletions
diff --git a/vmail-controller.lua b/vmail-controller.lua
index a478db4..4754021 100644
--- a/vmail-controller.lua
+++ b/vmail-controller.lua
@@ -23,11 +23,14 @@ mymodule.listmymessages = function( self )
end
mymodule.downloadmessage = function( self )
- return self.model.get_message(self.clientdata.message)
+ return self.handle_form(self, self.model.get_download_message, self.model.download_message, self.clientdata, "Download", "Download Message")
end
mymodule.downloadmymessage = function( self )
- return self.model.get_message(self.clientdata.message, self.sessiondata.userinfo.userid)
+ self.clientdata.username = self.sessiondata.userinfo.userid
+ local retval = self.handle_form(self, self.model.get_download_message, self.model.download_message, self.clientdata, "Download", "Download Message")
+ retval.value.username.readonly = true
+ return retval
end
mymodule.deletemessage = function( self )
diff --git a/vmail-listmessages-html.lsp b/vmail-listmessages-html.lsp
index 00bbd52..ebf0fe4 100644
--- a/vmail-listmessages-html.lsp
+++ b/vmail-listmessages-html.lsp
@@ -275,11 +275,11 @@ end %>
<td>
<% message.value = v.uuid %>
<% if viewlibrary.check_permission("downloadmessage") then %>
- <% htmlviewfunctions.displayitem(cfe({type="link", value={message=message, viewtype=viewtype}, label="", option="Download", action="downloadmessage"}), page_info, -1) %>
- <% htmlviewfunctions.displayitem(cfe({type="link", value={message=message, viewtype=viewtype}, label="", option="Play", action="downloadmessage", class="playmessage"}), page_info, -1) %>
+ <% htmlviewfunctions.displayitem(cfe({type="form", value={message=message, viewtype=viewtype}, label="", option="Download", action="downloadmessage"}), page_info, -1) %>
+ <% htmlviewfunctions.displayitem(cfe({type="form", value={message=message, viewtype=viewtype}, label="", option="Play", action="downloadmessage", class="playmessage"}), page_info, -1) %>
<% elseif viewlibrary.check_permission("downloadmymessage") then %>
- <% htmlviewfunctions.displayitem(cfe({type="link", value={message=message, viewtype=viewtype}, label="", option="Download", action="downloadmymessage"}), page_info, -1) %>
- <% htmlviewfunctions.displayitem(cfe({type="link", value={message=message, viewtype=viewtype}, label="", option="Play", action="downloadmymessage", class="playmessage"}), page_info, -1) %>
+ <% htmlviewfunctions.displayitem(cfe({type="form", value={message=message, viewtype=viewtype}, label="", option="Download", action="downloadmymessage"}), page_info, -1) %>
+ <% htmlviewfunctions.displayitem(cfe({type="form", value={message=message, viewtype=viewtype}, label="", option="Play", action="downloadmymessage", class="playmessage"}), page_info, -1) %>
<% end %>
<% if callmenumber then %>
<% htmlviewfunctions.displayitem(cfe({type="form", value={message=message, extension=extension}, label="", option="CallMe", action="callbackmymessage"}), page_info, -1) %>
diff --git a/vmail-model.lua b/vmail-model.lua
index d129fdf..37b0c2d 100644
--- a/vmail-model.lua
+++ b/vmail-model.lua
@@ -456,27 +456,35 @@ mymodule.list_messages = function(username)
return cfe({ type="structure", value=retval, label="Messages", errtxt=errtxt })
end
-mymodule.get_message = function(message, username)
- local retval = cfe({ type="raw", label="error", option="audio/x-wav" })
+mymodule.get_download_message = function(self, clientdata)
+ local result = {}
+ result.message = cfe({ label="Message" })
+ result.username = cfe({ label="User Name" })
+ return cfe({ type="group", value=result, label="Download Message" })
+end
+
+mymodule.download_message = function(self, downloadrequest)
+ local file = cfe({ type="raw", label="error", option="audio/x-wav" })
local res, err = pcall(function()
local connected = vmaildb.databaseconnect()
local sql = "SELECT username, file_path FROM voicemail_msgs"
- sql = sql .. generatewhereclause(username, message)
+ sql = sql .. generatewhereclause(downloadrequest.value.username.value, downloadrequest.value.message.value)
local tmp = vmaildb.getselectresponse(sql)
if connected then databasedisconnect() end
if #tmp == 0 then
- retval.errtxt = "Invalid message"
+ downloadrequest.errtxt = "Invalid message"
else
- retval.label = posix.basename(tmp[1].file_path)
- retval.value = fs.read_file(tmp[1].file_path)
+ file.label = posix.basename(tmp[1].file_path)
+ file.value = fs.read_file(tmp[1].file_path)
-- Mark the message as read
- voicemail_read(tmp[1].username, config.domain, message)
+ voicemail_read(tmp[1].username, config.domain, downloadrequest.value.message.value)
end
+ downloadrequest.value.file = file
end)
if not res and err then
- retval.errtxt = err
+ downloadrequest.errtxt = err
end
- return retval
+ return downloadrequest
end
mymodule.get_delete_message = function(self, clientdata)