File: admin_page.html

package info (click to toggle)
python-bottle-cork 0.12.0-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 924 kB
  • ctags: 1,383
  • sloc: python: 6,863; makefile: 4
file content (127 lines) | stat: -rw-r--r-- 3,966 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="content-type">
<div id='main'>
    <h2>Cork - Administration page</h2>
    <p>Welcome {{current_user.username}}, your role is: {{current_user.role}},
    access time: {{current_user.session_accessed_time}}</p>
    <div id='commands'>
      <p>Create new user:</p>
      <form action="create_user" method="post">
          <p><label>Username</label> <input type="text" name="username" /></p>
          <p><label>Role</label> <input type="text" name="role" /></p>
          <p><label>Password</label> <input type="password" name="password" /></p>
          <button type="submit" > OK </button>
          <button type="button" class="close"> Cancel </button>
      </form>
      <br />
      <p>Delete user:</p>
      <form action="delete_user" method="post">
          <p><label>Username</label> <input type="text" name="username" /></p>
          <button type="submit" > OK </button>
          <button type="button" class="close"> Cancel </button>
      </form>
      <br />
      <p>Create new role:</p>
      <form action="create_role" method="post">
          <p><label>Role</label> <input type="text" name="role" /></p>
          <p><label>Level</label> <input type="text" name="level" /></p>
          <button type="submit" > OK </button>
          <button type="button" class="close"> Cancel </button>
      </form>
      <br />
      <p>Delete role:</p>
      <form action="delete_role" method="post">
          <p><label>Role</label> <input type="text" name="role" /></p>
          <button type="submit" > OK </button>
          <button type="button" class="close"> Cancel </button>
      </form>
    </div>
    <div id="users">
        <table>
            <tr><th>Username</th><th>Role</th><th>Email</th><th>Description</th></tr>
            {% for u in users: %}
            <tr><td>{{u[0]}}</td><td>{{u[1]}}</td><td>{{u[2]}}</td><td>{{u[2]}}</td></tr>
            {% endfor %}
        </table>
        <br/>
        <table>
            <tr><th>Role</th><th>Level</th></tr>
            {% for r in roles: %}
            <tr><td>{{r[0]}}</td><td>{{r[1]}}</td></tr>
            {% endfor %}
        </table>
        <p>(Reload page to refresh)</p>
    </div>

    <div class="clear"></div>

    <div id='status'><p>Ready.</p></div>
    <div id="urls">
      <a href="/">index</a> <a href="/logout">logout</a>
    </div>
    <script src="/jquery/jquery.min.js"></script>
    <script>
        // Prevent form submission, send POST asynchronously and parse returned JSON
        $('form').submit(function() {
            $("div#status").fadeIn(100);
            z = $(this);
            $.post($(this).attr('action'), $(this).serialize(), function(j){
              if (j.ok) {
                $("div#status").css("background-color", "#f0fff0");
                $("div#status p").text('Ok.');
              } else {
                $("div#status").css("background-color", "#fff0f0");
                $("div#status p").text(j.msg);
              }
              $("div#status").delay(800).fadeOut(500);
            }, "json");
            return false;
        });
    </script>
</div>
<style>
div#commands { width: 45%%; float: left}
div#users { width: 45%; float: right}
div#main {
    color: #777;
    margin: auto;
    margin-left: 5em;
    font-size: 80%;
}
input {
    background: #f8f8f8;
    border: 1px solid #777;
    margin: auto;
}
input:hover { background: #fefefe}
label {
  width: 8em;
  float: left;
  text-align: right;
  margin-right: 0.5em;
  display: block
}
button {
    margin-left: 13em;
}
button.close {
    margin-left: .1em;
}
div#status {
    border: 1px solid #999;
    padding: .5em;
    margin: 2em;
    width: 15em;
    -moz-border-radius: 10px;
    border-radius: 10px;
}
.clear { clear: both;}
div#urls {
  position:absolute;
  top:0;
  right:1em;
}
</style>