summaryrefslogtreecommitdiffstats
path: root/openssl-read-html.lsp
diff options
context:
space:
mode:
Diffstat (limited to 'openssl-read-html.lsp')
-rw-r--r--openssl-read-html.lsp171
1 files changed, 171 insertions, 0 deletions
diff --git a/openssl-read-html.lsp b/openssl-read-html.lsp
new file mode 100644
index 0000000..b22484b
--- /dev/null
+++ b/openssl-read-html.lsp
@@ -0,0 +1,171 @@
+<% local view, viewlibrary, page_info, session = ... %>
+<% require("htmlviewfunctions") %>
+
+<script type="text/javascript" src="<%= html.html_escape(page_info.wwwprefix) %>/js/jquery-latest.js"></script>
+<script type="text/javascript" src="<%= html.html_escape(page_info.wwwprefix) %>/js/jquery.tablesorter.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() {
+ $("#pending").tablesorter({headers: {0:{sorter: false}}});
+ $("#approved").tablesorter({headers: {0:{sorter: false}, 5:{sorter:'usLongDate'}}});
+ $("#revoked").tablesorter({headers: {0:{sorter: false}, 5:{sorter:'usLongDate'}}});
+ });
+</script>
+
+<% htmlviewfunctions.displaycommandresults({"approve", "deleterequest", "deletemyrequest", "renewcert", "requestrenewcert", "revoke", "deletecert"}, session) %>
+
+<H1>Pending certificate requests<% if view.value.user then%> for <%= html.html_escape(view.value.user.value) %><% end %></H1>
+<DL>
+<% if not view.value.pending or #view.value.pending.value == 0 then %>
+ No certificates pending
+<% else %>
+<table id="pending" class="tablesorter">
+<thead>
+ <tr>
+ <th>Action</th>
+ <th>User</th>
+ <th>Cert Type</th>
+ <th>Common Name</th>
+ </tr>
+</thead>
+<tbody>
+ <% for i,request in ipairs(view.value.pending.value) do %>
+ <tr>
+ <td>
+ <% if viewlibrary.check_permission("viewrequest") then
+ io.write(html.link{value="viewrequest?request="..request.name, label="View "})
+ end %>
+ <% if viewlibrary.check_permission("approve") then
+ io.write(html.link{value="approve?submit=true&request="..request.name, label="Approve "})
+ end %>
+ <% if viewlibrary.check_permission("deleterequest") then
+ io.write(html.link{value="deleterequest?submit=true&request="..request.name, label="Delete "})
+ elseif viewlibrary.check_permission("deletemyrequest") then
+ io.write(html.link{value="deletemyrequest?submit=true&request="..request.name, label="Delete "})
+ end %>
+ </td>
+ <td><%= html.html_escape(request.user) %></td>
+ <td><%= html.html_escape(request.certtype) %></td>
+ <td><%= html.html_escape(request.commonName) %></td>
+ </tr>
+ <% end %>
+</tbody>
+</table>
+<% end %>
+</DL>
+
+<% local reverserevoked = {}
+local approved = {}
+local revoked = {}
+if view.value.revoked and #view.value.revoked.value > 0 then
+ for i,serial in ipairs(view.value.revoked.value) do
+ reverserevoked[serial] = i
+ end
+ for i,cert in ipairs(view.value.approved.value) do
+ if reverserevoked[cert.serial] then
+ revoked[#revoked + 1] = cert
+ else
+ approved[#approved + 1] = cert
+ end
+ end
+else
+ approved = view.value.approved.value
+end %>
+
+<H1>Approved certificate requests<% if view.value.user then%> for <%= html.html_escape(view.value.user.value) %><% end %></H1>
+<DL>
+<% if #approved == 0 then %>
+ No certificates approved
+<% else %>
+<table id="approved" class="tablesorter">
+<thead>
+ <tr>
+ <th>Action</th>
+ <th>User</th>
+ <th>Cert Type</th>
+ <th>Common Name</th>
+ <th>Serial Num</th>
+ <th>End Date</th>
+ </tr>
+</thead>
+<tbody>
+ <% for i,cert in ipairs(approved) do %>
+ <tr <% if cert.daysremaining < 14 then %>class='error'<% end %>>
+ <td>
+ <% if viewlibrary.check_permission("viewcert") then %>
+ <%= html.link{value="viewcert?cert="..cert.name, label="View "} %>
+ <% end %>
+ <% if viewlibrary.check_permission("getcert") then %>
+ <%= html.link{value="getcert?cert="..cert.name, label="Download "} %>
+ <% end %>
+ <% if viewlibrary.check_permission("renewcert") then %>
+ <%= html.link{value="renewcert?submit=true&cert="..cert.name, label="Renew "} %>
+ <% elseif viewlibrary.check_permission("requestrenewcert") then %>
+ <%= html.link{value="requestrenewcert?submit=true&cert="..cert.name, label="Renew "} %>
+ <% end %>
+ <% if viewlibrary.check_permission("revoke") then %>
+ <%= html.link{value="revoke?submit=true&cert="..cert.name, label="Revoke "} %>
+ <% end %>
+ <% if viewlibrary.check_permission("deletecert") then %>
+ <%= html.link{value="deletecert?submit=true&cert="..cert.name, label="Delete "} %>
+ <% end %>
+ </td>
+ <td><%= html.html_escape(cert.user) %></td>
+ <td><%= html.html_escape(cert.certtype) %></td>
+ <td><%= html.html_escape(cert.commonName) %></td>
+ <td><%= html.html_escape(tostring(tonumber('0x'..cert.serial))) %></td>
+ <td><%= html.html_escape(cert.enddate) %></td>
+ </tr>
+ <% end %>
+<tbody>
+</table>
+<% end %>
+</DL>
+
+<H1>Revoked certificates<% if view.value.user then%> for <%= html.html_escape(view.value.user.value) %><% end %></H1>
+<DL>
+<% if #revoked == 0 then %>
+ No certificates revoked
+<% else %>
+<table id="revoked" class="tablesorter">
+<thead>
+ <tr>
+ <th>Action</th>
+ <th>User</th>
+ <th>Cert Type</th>
+ <th>Common Name</th>
+ <th>Serial Num</th>
+ </tr>
+</thead>
+<tbody>
+ <% for i,cert in ipairs(revoked) do %>
+ <tr>
+ <td>
+ <% if viewlibrary.check_permission("viewcert") then %>
+ <%= html.link{value="viewcert?cert="..cert.name, label="View "} %>
+ <% end %>
+ <% --[[ if viewlibrary.check_permission("getcert") then %>
+ <%= html.link{value="getcert?cert="..cert.name, label="Download "} %>
+ <% end --]] %>
+ <% if viewlibrary.check_permission("deletecert") then %>
+ <%= html.link{value="deletecert?submit=true&cert="..cert.name, label="Delete "} %>
+ <% end %>
+ </td>
+ <td><%= html.html_escape(cert.user) %></td>
+ <td><%= html.html_escape(cert.certtype) %></td>
+ <td><%= html.html_escape(cert.commonName) %></td>
+ <td><%= html.html_escape(tostring(tonumber('0x'..cert.serial))) %></td>
+ </tr>
+ <% end %>
+</tbody>
+</table>
+<% end %>
+</DL>
+
+<% if viewlibrary.check_permission("getrevoked") then %>
+<H1>Get revoked list (crl)</H1>
+<DL>
+<%= html.link{value="getrevoked?crltype=PEM", label="Download PEM "} %><BR>
+<%= html.link{value="getrevoked?crltype=DER", label="Download DER "} %><BR>
+<%= html.link{value="getrevoked", label="Import to Firefox"} %><BR>
+</DL>
+<% end %>