summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--index.html166
1 files changed, 100 insertions, 66 deletions
diff --git a/index.html b/index.html
index 4f86282..abf66b5 100644
--- a/index.html
+++ b/index.html
@@ -27,10 +27,6 @@
<script src="/javascript/twitter-bootstrap/js/bootstrap.min.js"></script>
<script src="/javascript/twitter-bootstrap/js/bootstrap-alert.min.js"></script>
<script type="text/javascript">
- var username = sessionStorage.getItem("username");
- var token = sessionStorage.getItem("token");
- var app = sessionStorage.getItem("app");
-
alertbox = function() {}
alertbox.warning = function (heading, message) {
$('#alertbox').html('<div class="alert"><a class="close" data-dismiss="alert" href="#">&times;</a><h4 class="alert-heading">' + heading + '</h4>' + message + '</div>');
@@ -54,6 +50,7 @@
+
var shows_currentid;
var shows_list = [];
var shows_current;
@@ -108,27 +105,29 @@
sessionStorage.setItem("shows_currentid", shows_currentid);
shows_current = $.grep(shows_list, function(elem) { return elem.id == shows_currentid; })[0];
- $('#show-title').text(shows_current.title);
- $('#show-dow').text(weekday[shows_current.dow]);
- $('#show-rhythm').text(shows_current.rhythm);
- $('#show-starttime').text(shows_current.starttime);
- $('#show-length').text(shows_current.length + ' Min.');
-
- shows_log_carts = [];
- data = { COMMAND: 22, LOGIN_NAME: username, PASSWORD: token, NAME: shows_current.log };
- lcd = $.post("/rd-bin/rdxport.cgi", data, shows_updateLogCartList, "xml");
-
- shows_group_carts = [];
- data = { COMMAND: 6, LOGIN_NAME: username, PASSWORD: token, GROUP_NAME: shows_current.group.name, INCLUDE_CUTS: 1 };
- gcd = $.post("/rd-bin/rdxport.cgi", data, shows_updateGroupCartList, "xml");
-
- $.when(lcd, gcd).done(
- function(lcres, gcres) {
- if(lcres[1] == 'success' && gcres[1] == 'success') {
- shows_udpateCartListing();
+ if(shows_current) {
+ $('#show-title').text(shows_current.title);
+ $('#show-dow').text(weekday[shows_current.dow]);
+ $('#show-rhythm').text(shows_current.rhythm);
+ $('#show-starttime').text(shows_current.starttime);
+ $('#show-length').text(shows_current.length + ' Min.');
+
+ shows_log_carts = [];
+ data = { COMMAND: 22, LOGIN_NAME: auth_username, PASSWORD: auth_token, NAME: shows_current.log };
+ lcd = $.post("/rd-bin/rdxport.cgi", data, shows_updateLogCartList, "xml");
+
+ shows_group_carts = [];
+ data = { COMMAND: 6, LOGIN_NAME: auth_username, PASSWORD: auth_token, GROUP_NAME: shows_current.group.name, INCLUDE_CUTS: 1 };
+ gcd = $.post("/rd-bin/rdxport.cgi", data, shows_updateGroupCartList, "xml");
+
+ $.when(lcd, gcd).done(
+ function(lcres, gcres) {
+ if(lcres[1] == 'success' && gcres[1] == 'success') {
+ shows_udpateCartListing();
+ }
}
- }
- );
+ );
+ }
}
function shows_updateList(data, status, req) {
@@ -170,16 +169,32 @@
function shows_init() {
shows_currentid = sessionStorage.getItem("shows_currentid");
shows_list = [];
- data = { LOGIN_NAME: username, PASSWORD: token };
+ data = { LOGIN_NAME: auth_username, PASSWORD: auth_token };
$.post("/listdropboxes.cgi", data, shows_updateList, "xml")
}
function shows_cleanup() {
sessionStorage.removeItem("shows_currentid");
delete shows_currentid;
+ shows_list = [];
+ shows_group_carts = [];
+ shows_log_carts = [];
+ }
+
+
+
+
+ function musicpools_init() {
+ }
+
+ function musicpools_cleanup() {
}
+
+
+ var apps_current;
+
function apps_select(app) {
switch(app) {
case "musicpools":
@@ -187,51 +202,59 @@
$('#nav-btn-shows').removeClass('active');
$('#app-musicpools').show();
$('#nav-btn-musicpools').addClass('active');
+ musicpools_init();
break;
default:
$('#app-shows').show();
$('#nav-btn-shows').addClass('active');
$('#app-musicpools').hide();
$('#nav-btn-musicpools').removeClass('active');
- app = 'shows';
+ apps_current = 'shows';
shows_init();
}
- sessionStorage.setItem("app", app);
+ sessionStorage.setItem("apps_current", apps_current);
+ }
+
+ function apps_init() {
+ apps_current = sessionStorage.getItem("apps_current");
+ apps_select(apps_current);
}
+ function apps_cleanup() {
+ shows_cleanup();
+ musicpools_cleanup();
+
+ sessionStorage.removeItem("apps_current");
+ delete apps_current;
+ }
+
+
+
+ var auth_username;
+ var auth_token;
- function authSuccess(data) {
+ function auth_loginSuccess(data) {
if (data.status == 'OK') {
- username = data.username;
- sessionStorage.setItem("username", username);
+ auth_username = data.username;
+ sessionStorage.setItem("auth_username", auth_username);
- token = data.token;
- sessionStorage.setItem("token", token);
+ auth_token = data.token;
+ sessionStorage.setItem("auth_token", auth_token);
apps_select('shows');
- $('#username-field').html(username);
+ $('#username-field').html(auth_username);
$('#loginbox').slideUp();
$('#mainwindow').fadeIn();
} else {
alertbox.error("Fehler beim Login", data.errorstring);
-
- sessionStorage.removeItem("username");
- delete username;
- $("#username").val('').focus();
-
- sessionStorage.removeItem("token");
- delete token;
- $("#password").val('');
-
- sessionStorage.removeItem("app");
- delete app;
+ auth_cleanup();
}
}
- function authError(req, status, error) {
+ function auth_loginError(req, status, error) {
message = req.status + ': ' + error;
if(req.status == 401) {
message = "Benutzer und/oder Passwort sind falsch!";
@@ -240,28 +263,22 @@
$("#password").val('');
}
- function login()
+ function auth_login()
{
$.ajax("/authtoken.json",
{ cache: false,
username: $("#username").val(),
password: $("#password").val(),
dataType: "json",
- error: authError,
- success: authSuccess
+ error: auth_loginError,
+ success: auth_loginSuccess
});
}
- function logout()
+ function auth_logout()
{
- sessionStorage.removeItem("username");
- delete username;
- sessionStorage.removeItem("token");
- delete token;
- sessionStorage.removeItem("app");
- delete app;
-
- shows_cleanup();
+ auth_cleanup();
+ apps_cleanup();
$(".alert").alert('close');
$("#username").val('');
@@ -270,6 +287,29 @@
$('#username-field').html('');
$('#loginbox').slideDown();
}
+
+ function auth_init() {
+ auth_username = sessionStorage.getItem("auth_username");
+ auth_token = sessionStorage.getItem("auth_token");
+
+ if(auth_token && auth_username) {
+ $("#loginbox").hide();
+ $('#username-field').html(auth_username);
+ } else {
+ $("#mainwindow").hide();
+ }
+ $("#loginform").submit(function(event) { auth_login(); event.preventDefault(); });
+ }
+
+ function auth_cleanup() {
+ sessionStorage.removeItem("auth_username");
+ delete auth_username;
+ $("#username").val('').focus();
+
+ sessionStorage.removeItem("auth_token");
+ delete auth_token;
+ $("#password").val('');
+ }
</script>
</head>
<body>
@@ -308,7 +348,7 @@
</ul>
<form id="logoutform" class="navbar-form pull-right">
<span class="navbar-text">angmeldet als <strong id="username-field">UNKNOWN</strong></span>&nbsp;&nbsp;
- <button style="margin-top: 0;" type="button" class="btn btn-danger btn-small" onclick="logout()">
+ <button style="margin-top: 0;" type="button" class="btn btn-danger btn-small" onclick="auth_logout()">
<i class="icon-off icon-white"></i> Abmelden
</button>
</form>
@@ -416,14 +456,8 @@
</div>
<script type="text/javascript">
- $("#loginform").submit(function(event) { login(); event.preventDefault(); });
- $('#username-field').html(username);
- apps_select(app);
- if(token && username) {
- $("#loginbox").hide();
- } else {
- $("#mainwindow").hide();
- }
+ auth_init();
+ apps_init();
</script>
</body>