]> projects.mako.cc - selectricity/blobdiff - app/views/quickvote/list_voters.rhtml
My first gigantic-blob commit....
[selectricity] / app / views / quickvote / list_voters.rhtml
diff --git a/app/views/quickvote/list_voters.rhtml b/app/views/quickvote/list_voters.rhtml
new file mode 100644 (file)
index 0000000..795ab45
--- /dev/null
@@ -0,0 +1,49 @@
+<%= GMap.header %> 
+
+<div id="title-header">
+    <span class="header">Quickvote</span>
+      <span class="subheader">Voters</span>
+    </div>
+    
+  <div class="clear-div"></div>
+<%= @map.to_html %>  
+<%= @map.div(:width => 550, :height => 400) %> 
+<br><br>
+<table class="voterbox">
+<tr>
+<th>IP/Host</th>
+<th>Organization Name</th>
+</tr>
+<% for voter in @election.voters %>
+  <% next unless voter.voted? %>
+  <tr>
+    <td><% begin %>
+        <% raise ArgumentError.new, "Local Server" if voter.ipaddress == "127.0.0.1" %>
+        <% raise ArgumentError.new, "XML-RPC Voter" if voter.ipaddress == "XMLRPC Request" %>
+        <% # Test for intranet addresses to avoid untimely DNS timeouts.
+           # Of course the last regex is horrible; matches a few extra IP's that aren't intranet
+          raise ArgumentError.new, "Intranet: #{voter.ipaddress}" if voter.ipaddress =~
+            /^192\.168/ or voter.ipaddress =~ /^10\./ or voter.ipaddress =~ /^169\.254/ or
+            voter.ipaddress =~ /^172\.[1-3]/
+            %>
+        <% w= Whois::Whois.new(IPAddr.new(voter.ipaddress),true)%>
+        <%=h((w.host == nil or w.host.empty?) ? voter.ipaddress : w.host)%>
+      </td>
+      <td>
+        <%w.search_whois%>
+        <%=h (w.all.grep(/^(OrgName|org-name)/)[0] or "").sub(/^(OrgName|org-name)\:/,'').strip -%> - <%=  (w.all.grep(/^(NetName|netname)/)[0] or "").sub(/^(NetName|netname)\:/,'').strip %>
+
+    <% rescue ArgumentError => err %>
+      <%=h err %>
+    </td>
+    <td><%=h err%>
+    <% rescue NoMethodError %>
+      DNS Unreachable
+    </td>
+    <td> DNS Unreachable
+    <% end %>
+    </td>
+  </tr>
+<% end %>
+</table>
+

Benjamin Mako Hill || Want to submit a patch?