Author: humbedooh
Date: Sun Mar 22 15:27:06 2015
New Revision: 1668390

URL: http://svn.apache.org/r1668390
Log:
updates for HTML + CSS + JS for admin interface:
- Add issue add page
- Add election editor
- Add invite page
- Start work on issue editor

Added:
    steve/trunk/pytest/www/htdocs/admin/edit_issue.html
    steve/trunk/pytest/www/htdocs/images/icon_delete.png   (with props)
    steve/trunk/pytest/www/htdocs/images/icon_view.png   (with props)
Modified:
    steve/trunk/pytest/www/htdocs/admin/add_issue.html
    steve/trunk/pytest/www/htdocs/admin/edit_election.html
    steve/trunk/pytest/www/htdocs/admin/invite.html
    steve/trunk/pytest/www/htdocs/css/steve_interactive.css
    steve/trunk/pytest/www/htdocs/js/steve_rest.js

Modified: steve/trunk/pytest/www/htdocs/admin/add_issue.html
URL: 
http://svn.apache.org/viewvc/steve/trunk/pytest/www/htdocs/admin/add_issue.html?rev=1668390&r1=1668389&r2=1668390&view=diff
==============================================================================
--- steve/trunk/pytest/www/htdocs/admin/add_issue.html (original)
+++ steve/trunk/pytest/www/htdocs/admin/add_issue.html Sun Mar 22 15:27:06 2015
@@ -13,6 +13,7 @@
         <img src="/images/steve_logo.png"/>
     </p>
 <div class="formbox">
+           <a 
href="javascript:void(location.href='edit_election.html'+(document.location.search.split('/'))[0]);">Back
 to election editing front page</a>
        <h2>Add a new issue:</h2>
  <fieldset>
         <legend>Base data</legend>

Modified: steve/trunk/pytest/www/htdocs/admin/edit_election.html
URL: 
http://svn.apache.org/viewvc/steve/trunk/pytest/www/htdocs/admin/edit_election.html?rev=1668390&r1=1668389&r2=1668390&view=diff
==============================================================================
--- steve/trunk/pytest/www/htdocs/admin/edit_election.html (original)
+++ steve/trunk/pytest/www/htdocs/admin/edit_election.html Sun Mar 22 15:27:06 
2015
@@ -24,10 +24,14 @@
         <a 
href="javascript:void(location.href='add_issue.html'+document.location.search);"
 class="btn-green"><img style="vertical-align: middle;"  
src="/images/icon_add.png"/> Add an issue</a>
         &nbsp; 
         <a 
href="javascript:void(location.href='close.html'+document.location.search);" 
class="btn-red"><img style="vertical-align: middle;"  
src="/images/icon_close.png"/> Close election</a>
+        &nbsp; 
+        <a 
href="javascript:void(location.href='edit_basedata.html'+document.location.search);"
 class="btn"><img style="vertical-align: middle;"  
src="/images/icon_edit.png"/> Edit election base data</a>
+        &nbsp; 
+        <a 
href="javascript:void(location.href='/election.html'+document.location.search);"
 class="btn-purple"><img style="vertical-align: middle;"  
src="/images/icon_view.png"/> View election</a>
         <br/>
 </fieldset>
 <form>
-    <h3>Issues in this election:</h3>
+    <h3>Issues in this election (click to edit):</h3>
     <ol id="ballot">
         <img src="/images/steve_spinner.gif"/>
     </ol>

Added: steve/trunk/pytest/www/htdocs/admin/edit_issue.html
URL: 
http://svn.apache.org/viewvc/steve/trunk/pytest/www/htdocs/admin/edit_issue.html?rev=1668390&view=auto
==============================================================================
--- steve/trunk/pytest/www/htdocs/admin/edit_issue.html (added)
+++ steve/trunk/pytest/www/htdocs/admin/edit_issue.html Sun Mar 22 15:27:06 2015
@@ -0,0 +1,29 @@
+ <!DOCTYPE HTML>
+<html>
+<head>
+<link rel="stylesheet" href="/css/steve_interactive.css">
+<link rel="stylesheet" href="/css/jquery-ui.css">
+<script src="/js/steve_rest.js" type="text/javascript"></script>
+<script src="/js/jquery.js" type="text/javascript"></script>
+<script src="/js/jquery-ui.js" type="text/javascript"></script>
+<title>Edit an issue</title>
+</head>
+<body onload="window.setTimeout(loadIssueAdmin, 500);">
+    <div id="popups"></div>
+    <p style="text-align: center;">
+        <img src="/images/steve_logo.png"/>
+    </p>
+<div class="formbox">
+    <a 
href="javascript:void(location.href='edit_election.html'+(document.location.search.split('/'))[0]);">Back
 to election editing front page</a>
+    <a href="javascript:void(deleteIssue());" class="btn-red"><img 
style="vertical-align: middle;"  src="/images/icon_delete.png"/> Delete 
issue</a>
+<h2 id="title">Edit an issue:</h2>
+
+
+<div id="preloaderWrapper">
+    <img src="/images/steve_spinner.gif"/><br/>
+        Loading issue, please wait...
+</div>
+
+</div>
+</body>
+</html>
\ No newline at end of file

Modified: steve/trunk/pytest/www/htdocs/admin/invite.html
URL: 
http://svn.apache.org/viewvc/steve/trunk/pytest/www/htdocs/admin/invite.html?rev=1668390&r1=1668389&r2=1668390&view=diff
==============================================================================
--- steve/trunk/pytest/www/htdocs/admin/invite.html (original)
+++ steve/trunk/pytest/www/htdocs/admin/invite.html Sun Mar 22 15:27:06 2015
@@ -52,7 +52,7 @@
         <img src="/images/steve_logo.png"/>
     </p>
 <div class="formbox">
-       
+       <a 
href="javascript:void(location.href='edit_election.html'+document.location.search);"
 class="btn">Back to election editing</a>
 <fieldset>
         <legend>Invite one or more users to this election</legend>
     <div class="keyvaluepair">

Modified: steve/trunk/pytest/www/htdocs/css/steve_interactive.css
URL: 
http://svn.apache.org/viewvc/steve/trunk/pytest/www/htdocs/css/steve_interactive.css?rev=1668390&r1=1668389&r2=1668390&view=diff
==============================================================================
--- steve/trunk/pytest/www/htdocs/css/steve_interactive.css (original)
+++ steve/trunk/pytest/www/htdocs/css/steve_interactive.css Sun Mar 22 15:27:06 
2015
@@ -46,13 +46,15 @@ p {
   color: #fff;
   display: inline-block;
   font-size: 14px;
-  padding: 8px 15px;
+  padding: 4px 8px;
   text-decoration: none;
   text-align: center;
-  min-width: 60px;
+  font-weight: bold;
+  min-width: 50px;
   position: relative;
   transition: color .1s ease;
   cursor: pointer;
+  margin-left: 10px;
 }
 .btn-red {
   background: #c5321b !important;
@@ -76,6 +78,28 @@ p {
   transition: 0.3s ease;
 }
 
+.btn-purple {
+  background: #b532bb !important;
+  border: #bd351e solid 1px;
+  border-radius: 3px;
+  color: #fff !important;
+  display: inline-block;
+  font-weight: bold;
+  font-size: 14px;
+  padding: 4px 8px;
+  text-decoration: none;
+  text-align: center;
+  min-width: 30px;
+  position: relative;
+  transition: color .1s ease;
+  cursor: pointer;
+  margin-left: 10px;
+}
+.btn-purple:hover {
+  background: #d542db !important;
+  transition: 0.3s ease;
+}
+
 .btn-green {
   font-weight: bold;
   background: #328a2b !important;

Added: steve/trunk/pytest/www/htdocs/images/icon_delete.png
URL: 
http://svn.apache.org/viewvc/steve/trunk/pytest/www/htdocs/images/icon_delete.png?rev=1668390&view=auto
==============================================================================
Binary file - no diff available.

Propchange: steve/trunk/pytest/www/htdocs/images/icon_delete.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: steve/trunk/pytest/www/htdocs/images/icon_view.png
URL: 
http://svn.apache.org/viewvc/steve/trunk/pytest/www/htdocs/images/icon_view.png?rev=1668390&view=auto
==============================================================================
Binary file - no diff available.

Propchange: steve/trunk/pytest/www/htdocs/images/icon_view.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Modified: steve/trunk/pytest/www/htdocs/js/steve_rest.js
URL: 
http://svn.apache.org/viewvc/steve/trunk/pytest/www/htdocs/js/steve_rest.js?rev=1668390&r1=1668389&r2=1668390&view=diff
==============================================================================
--- steve/trunk/pytest/www/htdocs/js/steve_rest.js (original)
+++ steve/trunk/pytest/www/htdocs/js/steve_rest.js Sun Mar 22 15:27:06 2015
@@ -99,7 +99,6 @@ function createElection() {
 function renderEditElection(code, response, election) {
        if (code == 200) {
                document.getElementById('title').innerHTML = "Edit election: " 
+ response.base_data.title + " (#" + election  + ")"
-               document.getElementById('iid').value = 
parseInt(Math.random()*987654321).toString(16).toLowerCase();
                
                var obj = document.getElementById('ballot')
                obj.innerHTML = "There are no issues in this election yet"
@@ -142,6 +141,57 @@ function loadAdminElectionData(election)
        getJSON("/steve/admin/view/" + election, election, renderEditElection)
 }
 
+
+function loadIssueAdmin() {
+       var l = document.location.search.substr(1).split('/');
+       var election = l[0]
+       var issue = l[1]
+       getJSON("/steve/admin/view/" + document.location.search.substr(1), 
issue, renderEditIssue)
+}
+
+
+var edit_c = []
+var edit_s = []
+var edit_i = null
+function renderEditIssue(code, response, issue) {
+       if (code == 200) {
+               var obj = document.getElementById('preloaderWrapper')
+               obj.setAttribute("id", "contents")
+               for (i in response.issues) {
+                       if (response.issues[i].id == issue) {
+                               edit_i = response.issues[i]
+                               break
+                       }
+               }
+               if (!edit_i) {
+                       obj.innerHTML = "<h3>No such issue found :( </h3>"
+               }
+               else if (edit_i.type == "yna") {
+                       obj.innerHTML = "<h3>Editing a YNA issue</h3>"
+                       
+               } else if (edit_i.type.match(/^stv/)) {
+                       obj.innerHTML = "<h3>Editing an STV issue</h3>"
+               }
+       } else {
+               alert(response.message)
+       }
+}
+
+function deleteIssueCallback(code, response, election) {
+       if (code == 200) {
+               alert("Issue deleted")
+               location.href = "/admin/edit_election.html?" + election
+       } else {
+               alert(code + ":" + response.message)
+       }
+}
+function deleteIssue() {
+       var l = document.location.search.substr(1).split('/');
+       var election = l[0]
+       getJSON("/steve/admin/delete/" + document.location.search.substr(1), 
election, deleteIssueCallback)
+}
+
+
 function changeSTVType(type) {
        if (type == "yna") {
                document.getElementById('yna').style.display = "block";
@@ -154,7 +204,7 @@ function changeSTVType(type) {
 
 function createIssueCallback(code, response, state) {
        if (code == 201) {
-               location.href = "/edit_issue.html?" + state.election + "/" + 
state.issue;
+               location.href = "/admin/edit_issue.html?" + state.election + 
"/" + state.issue;
        } else {
                alert(response.message)
        }


Reply via email to