Commit bd7832e0d833844b00af037524185adf20a6dffc
1 parent
6cebde62
Exists in
master
and in
1 other branch
- changes in the looks of the admin page
Showing
2 changed files
with
57 additions
and
46 deletions
Show diff stats
static/js/admin.js
1 | 1 | $(document).ready(function() { |
2 | 2 | // button handlers (runs once) |
3 | - function define_buttons_handlers() { | |
3 | + function button_handlers() { | |
4 | 4 | $("#allow_all").click( |
5 | 5 | function() { |
6 | 6 | $(":checkbox").prop("checked", true).trigger('change'); |
... | ... | @@ -13,11 +13,13 @@ $(document).ready(function() { |
13 | 13 | ); |
14 | 14 | $("#reset_password").click( |
15 | 15 | function () { |
16 | - var number = $("#reset_number").val(); | |
17 | 16 | $.ajax({ |
18 | 17 | type: "POST", |
19 | 18 | url: "/admin", |
20 | - data: {"cmd": "reset_password", "value": number} | |
19 | + data: { | |
20 | + "cmd": "reset_password", | |
21 | + "value": $("#reset_number").val() | |
22 | + } | |
21 | 23 | }); |
22 | 24 | } |
23 | 25 | ); |
... | ... | @@ -78,16 +80,15 @@ $(document).ready(function() { |
78 | 80 | active.sort(function(a,b){return a[2] < b[2] ? -1 : (a[2] == b[2] ? 0 : 1);}); |
79 | 81 | n = active.length; |
80 | 82 | for(var i = 0; i < n; i++) { |
81 | - rows += '<tr' + (active[i][5]? '' : ' class="danger"') + '>\ | |
83 | + rows += '<tr' + (active[i][5]? '' : ' class="bg-danger"') + '>\ | |
82 | 84 | <td>' + active[i][0] + '</td>\ |
83 | 85 | <td>' + active[i][1] + '</td>\ |
84 | 86 | <td>' + active[i][2].slice(11,19) + '</td>\ |
85 | - <td><div data-toggle="tooltip" data-placement="top" title="'+active[i][4]+'">' + active[i][3] + '</div></td>\ | |
86 | - <td>' + (active[i][5]? '' : '<span class="label label-danger">unfocus</span>') + '</td>\ | |
87 | + <td>' + (active[i][5]? '' : '<span class="label bg-danger">unfocus</span>') + '</td>\ | |
87 | 88 | </tr>'; |
88 | 89 | } |
89 | 90 | $("#online_students").html(rows); |
90 | - $("#online-header").html(n + " Activo(s)"); | |
91 | + $("#online-header").html(n); | |
91 | 92 | |
92 | 93 | } |
93 | 94 | |
... | ... | @@ -111,7 +112,7 @@ $(document).ready(function() { |
111 | 112 | // ---------------------------------------------------------------------- |
112 | 113 | function populateStudentsTable(students) { |
113 | 114 | var n = students.length; |
114 | - $("#students-header").html(n + " Inscritos") | |
115 | + $("#students-header").html(n) | |
115 | 116 | var rows = ""; |
116 | 117 | $.each(students, function(i, d) { |
117 | 118 | var uid = d['uid']; |
... | ... | @@ -130,8 +131,8 @@ $(document).ready(function() { |
130 | 131 | (d['start_time']=='' ? '' : ' <span class="label label-success">teste</span>') + |
131 | 132 | // (d['online'] ? '<span class="label label-warning">online</span>' : '') + |
132 | 133 | '</td>\ |
133 | - <td>' + uid + '</td>\ | |
134 | - <td>' + d['name'] + (d['password_defined'] ? ' <span class="label label-default">pw</span>' : '') +'</td>\ | |
134 | + <td>' + uid + (d['password_defined'] ? ' <i class="fa fa-key" aria-hidden="true"></i>' : '') + '</td>\ | |
135 | + <td>' + d['name'] + '</td>\ | |
135 | 136 | <td>'; |
136 | 137 | var g = d['grades']; |
137 | 138 | var glength = g.length; |
... | ... | @@ -171,6 +172,6 @@ $(document).ready(function() { |
171 | 172 | } |
172 | 173 | |
173 | 174 | populate(); // run once when the page is loaded |
174 | - define_buttons_handlers(); | |
175 | + button_handlers(); // assign handlers to buttons | |
175 | 176 | setInterval(populate, 5000); // poll server on 5s interval |
176 | 177 | }); | ... | ... |
templates/admin.html
... | ... | @@ -11,12 +11,11 @@ |
11 | 11 | |
12 | 12 | <!-- optional --> |
13 | 13 | <link rel="stylesheet" href="/static/font-awesome/css/font-awesome.min.css"> |
14 | - <link rel="stylesheet" href="/static/css/test.css"> | |
14 | + <!-- <link rel="stylesheet" href="/static/css/test.css"> --> | |
15 | 15 | |
16 | 16 | <style> |
17 | 17 | body { |
18 | 18 | padding-top: 100px; |
19 | - background: #ccc; | |
20 | 19 | } |
21 | 20 | </style> |
22 | 21 | </head> |
... | ... | @@ -24,22 +23,42 @@ |
24 | 23 | <body> |
25 | 24 | <nav class="navbar navbar-expand-lg fixed-top navbar-dark bg-dark"> |
26 | 25 | <a class="navbar-brand" href="#"> |
27 | - <i class="fa fa-clock-o" aria-hidden="true"></i> | |
26 | + <!-- <i class="fa fa-clock-o" aria-hidden="true"></i> --> | |
28 | 27 | <span id="clock"> --:-- </span> |
29 | 28 | </a> |
30 | - <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarText" aria-controls="navbarText" aria-expanded="false" aria-label="Toggle navigation"> | |
29 | + | |
30 | + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation"> | |
31 | 31 | <span class="navbar-toggler-icon"></span> |
32 | 32 | </button> |
33 | 33 | |
34 | - <div class="collapse navbar-collapse" id="navbarText"> | |
35 | - <ul class="navbar-nav mr-auto"> | |
36 | - </ul> | |
34 | +<!-- <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarText" aria-controls="navbarText" aria-expanded="false" aria-label="Toggle navigation"> | |
35 | + <span class="navbar-toggler-icon"></span> | |
36 | + </button> | |
37 | 37 | |
38 | - <span class="navbar-text"> | |
38 | + --> | |
39 | + <div class="collapse navbar-collapse" id="navbarNavDropdown"> | |
40 | + <ul class="navbar-nav"> | |
41 | +<!-- <li class="nav-item"> | |
42 | + <a class="nav-link" href="#">Features</a> | |
43 | + </li> --> | |
44 | + <li class="nav-item dropdown"> | |
45 | + <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownAluno" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> | |
46 | + Aluno | |
47 | + </a> | |
48 | + <div class="dropdown-menu" aria-labelledby="navbarDropdownAluno"> | |
49 | + <a class="dropdown-item" href="#" id="inserir_novo_aluno">Inserir novo...</a> | |
50 | + <a class="dropdown-item" href="#" id="reset_password">Reset password...</a> | |
51 | + <a class="dropdown-item" href="#" id="allow_all">Autorizar todos</a> | |
52 | + <a class="dropdown-item" href="#" id="deny_all">Desautorizar todos</a> | |
53 | + </div> | |
54 | + </li> | |
55 | + </ul> | |
56 | + <div class="navbar-nav"></div> | |
57 | +<!-- <span class="navbar-text"> | |
39 | 58 | <i class="fa fa-user" aria-hidden="true"></i> |
40 | 59 | <span id="name">Admin</span> |
41 | 60 | <span class="caret"></span> |
42 | - </span> | |
61 | + </span> --> | |
43 | 62 | </div> |
44 | 63 | </nav> |
45 | 64 | <!-- ===================================================================== --> |
... | ... | @@ -49,18 +68,18 @@ |
49 | 68 | <h3 id="title"></h3> |
50 | 69 | Ref: <span id="ref"></span><br> |
51 | 70 | Enunciado: <span id="filename"></span><br> |
52 | - Database: <span id="database"></span><br> | |
53 | - Testes entregues: <span id="answers_dir"></span> | |
71 | + Base de dados: <span id="database"></span><br> | |
72 | + Testes submetidos: <span id="answers_dir"></span><br> | |
73 | + <span class="badge badge-secondary"><span id="students-header"></span></span> inscritos<br> | |
74 | + <span class="badge badge-success"><span id="online-header"></span></span> online | |
75 | + | |
54 | 76 | </div> <!-- jumbotron --> |
55 | 77 | |
56 | 78 | <!-- ===================================================================== --> |
57 | - <div class="card border-dark"> | |
58 | - <div class="card-header" id="online-header"> | |
59 | - <!-- to be populated --> | |
60 | - </div> | |
61 | - <div class="card-body"> | |
79 | + <!-- <div class="card border-dark"> --> | |
80 | + <!-- <div class="card-body"> --> | |
62 | 81 | <table class="table table-condensed noleftmargin"> |
63 | - <thead> | |
82 | + <thead class="thead-default"> | |
64 | 83 | <tr> |
65 | 84 | <th>Número</th> |
66 | 85 | <th>Nome</th> |
... | ... | @@ -74,18 +93,14 @@ |
74 | 93 | <!-- to be populated --> |
75 | 94 | </tbody> |
76 | 95 | </table> |
77 | - </div> <!-- card-body --> | |
78 | - </div> <!-- card --> | |
96 | + <!-- </div> card-body --> | |
97 | + <!-- </div> card --> | |
79 | 98 | |
80 | 99 | <!-- ===================================================================== --> |
81 | - <div class="card border-dark"> | |
82 | - <div class="card-header" id="students-header"> | |
83 | - <!-- to be populated --> | |
84 | - </div> | |
85 | - | |
86 | - <div class="card-body"> | |
100 | + <!-- <div class="card border-dark"> --> | |
101 | + <!-- <div class="card-body"> --> | |
87 | 102 | <table class="table noleftmargin"> |
88 | - <thead> | |
103 | + <thead class="thead-default"> | |
89 | 104 | <tr> |
90 | 105 | <th>Perm.</th> |
91 | 106 | <th>Número</th> |
... | ... | @@ -98,16 +113,11 @@ |
98 | 113 | <!-- to be populated --> |
99 | 114 | </tbody> |
100 | 115 | </table> |
101 | - </div> <!-- card-body --> | |
116 | + <!-- </div> card-body --> | |
102 | 117 | |
103 | - <div class="card-footer"> | |
118 | + <!-- <div class="card-footer"> --> | |
104 | 119 | <div class="row"> |
105 | 120 | <div class="col-sm-4"> |
106 | - Permitir | |
107 | - <button id="allow_all" class="btn btn-xs btn-primary">Todos</button> | |
108 | - <button id="deny_all" class="btn btn-xs btn-primary">Nenhum</button> | |
109 | - </div> | |
110 | - <div class="col-sm-4"> | |
111 | 121 | <button id="novo_aluno" class="btn btn-xs btn-primary" data-toggle="modal" data-target="#novo_aluno_modal">Inserir novo aluno</button> |
112 | 122 | </div> |
113 | 123 | <div class="col-sm-4"> |
... | ... | @@ -119,8 +129,8 @@ |
119 | 129 | </div> |
120 | 130 | </div> |
121 | 131 | </div> <!-- row --> |
122 | - </div> <!-- card-footer --> | |
123 | - </div> <!-- card --> | |
132 | + <!-- </div> card-footer --> | |
133 | + <!-- </div> card --> | |
124 | 134 | <!-- ===================================================================== --> |
125 | 135 | </div> <!-- container --> |
126 | 136 | <!-- ===================================================================== --> | ... | ... |