<% local view, viewlibrary, page_info, session = ... htmlviewfunctions = require("htmlviewfunctions") html = require("acf.html") %> <% -- Pregenerate the list of users local useroptions = {{value="", label=""}} if viewlibrary.check_permission("listusers") and (viewlibrary.check_permission("forwardmessage") or viewlibrary.check_permission("forwardmymessage")) then local users = viewlibrary.dispatch_component("listusers", nil, true) if users.value and users.value.result then for i,v in ipairs(users.value.result.value) do v.firstname = v.firstname or "" v.lastname = v.lastname or "" v.username = v.username or "" end table.sort(users.value.result.value, function(a,b) if a.firstname ~= b.firstname then return a.firstname < b.firstname elseif a.lastname ~= b.lastname then return a.lastname < b.lastname else return a.username < b.username end end) for i,u in ipairs(users.value.result.value) do if u.username ~= session.userinfo.userid then useroptions[#useroptions+1] = {value=u.username, label=u.firstname..' '..u.lastname..' ('..u.username..')'} end end end end %> <% -- Pregenerate the list of folders local reversefolders = {} local folderoptions = {{value="", label=""}} local dontmove=false if viewlibrary.check_permission("listfolders") then local folders = viewlibrary.dispatch_component("listfolders", nil, true) for i,u in ipairs(folders.value) do reversefolders[u.in_folder] = u.label end if (viewlibrary.check_permission("movemessage") or viewlibrary.check_permission("movemymessage")) then if #folders.value <= 1 then dontmove = true end for i,u in ipairs(folders.value) do folderoptions[#folderoptions+1] = {value=u.in_folder, label=u.label} end end end %> <% -- Figure out the callback number local callmenumber = nil if viewlibrary.check_permission("editmyusersettings") and viewlibrary.check_permission("callbackmymessage") then local settings = viewlibrary.dispatch_component("editmyusersettings", nil, true) if settings and settings.value and settings.value.callmenumber then callmenumber = settings.value.callmenumber.value end end %> <% htmlviewfunctions.displaycommandresults({"deletemessage", "deletemymessage", "forwardmessage", "forwardmymessage", "emailmessage", "emailmymessage", "movemessage", "movemymessage", "callbackmessage", "callbackmymessage"}, session) %> <% local header_level = htmlviewfunctions.displaysectionstart(view, page_info) %>
<% local message = cfe({type="hidden"}) %> <% if viewlibrary.check_permission("deletemessage") or viewlibrary.check_permission("deletemymessage") then local form = cfe({type="form", value={message=message}, label="", option="Delete", action="deletemymessage", class="multidelete" }) if viewlibrary.check_permission("deletemessage") then form.action = "deletemessage" end htmlviewfunctions.displayitem(form, page_info, -1) end if viewlibrary.check_permission("forwardmessage") or viewlibrary.check_permission("forwardmymessage") then local form = cfe({type="form", value={message=message}, label="", option="Forward", action="forwardmymessage", class="multiforward" }) if viewlibrary.check_permission("forwardmessage") then form.action = "forwardmessage" end form.value.newuser = cfe({type="select", option=useroptions}) htmlviewfunctions.displayitem(form, page_info, -1) end if viewlibrary.check_permission("emailmessage") or viewlibrary.check_permission("emailmymessage") then local form = cfe({type="form", value={message=message}, label="", option="E-mail", action="emailmymessage", class="multiemail" }) if viewlibrary.check_permission("emailmessage") then form.action = "emailmessage" end form.value.address = cfe({}) htmlviewfunctions.displayitem(form, page_info, -1) end if viewlibrary.check_permission("movemessage") or viewlibrary.check_permission("movemymessage") then if not dontmove then local form = cfe({type="form", value={message=message}, label="", option="Move", action="movemymessage", class="multimove" }) if viewlibrary.check_permission("movemessage") then form.action = "movemessage" end form.value.newfolder = cfe({type="select", option=folderoptions}) htmlviewfunctions.displayitem(form, page_info, -1) end end %>
select: all none
<% local message = cfe({ type="hidden" }) %> <% local viewtype = cfe({ type="hidden", value="stream" }) %> <% local extension = cfe({ type="hidden", value=callmenumber }) %> <% for k,v in ipairs( view.value ) do %> <% end %>
Action Date Time Caller ID Priority Orig Mailbox Folder Duration
<% message.value = v.uuid %> <% filetype = string.match(v.file_path or "", "[^.]*$") or "" %> <% if viewlibrary.check_permission("downloadmessage") then %> <% 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 "..filetype}), page_info, -1) %> <% elseif viewlibrary.check_permission("downloadmymessage") then %> <% 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 "..filetype}), 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) %> <% end %> <%= html.html_escape(os.date("%x", v.created_epoch)) %> <%= html.html_escape(os.date("%X", v.created_epoch)) %> <%= html.html_escape(v.cid_number) %> <%= html.html_escape(v.read_flags) %> <%= html.html_escape(v.username) %> <%= html.html_escape(reversefolders[v.in_folder] or v.in_folder) %> <%= html.html_escape(v.message_len) %>
<% if view.errtxt then %>

<%= html.html_escape(view.errtxt) %>

<% end %> <% if #view.value == 0 then %>

No messages found

<% end %> <% htmlviewfunctions.displaysectionend(header_level) %>