summaryrefslogtreecommitdiff
path: root/www/js/router.js
diff options
context:
space:
mode:
authorPeter Grassberger <petertheone@gmail.com>2016-04-20 15:58:14 (GMT)
committerPeter Grassberger <petertheone@gmail.com>2016-04-20 15:58:14 (GMT)
commit16b507e9ab3b7d9bfbe72319d2197cea98905294 (patch)
treeacc475be6eda15d098b166f7f37ebd6d0b75a572 /www/js/router.js
parentaff9aaaa27bfb989432e23c768b2ec52fc8e70f7 (diff)
rewrite auth and apps
Diffstat (limited to 'www/js/router.js')
-rw-r--r--www/js/router.js74
1 files changed, 74 insertions, 0 deletions
diff --git a/www/js/router.js b/www/js/router.js
new file mode 100644
index 0000000..ce84950
--- /dev/null
+++ b/www/js/router.js
@@ -0,0 +1,74 @@
+/*
+ * rhwebimport
+ *
+ * Copyright (C) 2014-2016 Christian Pointner <equinox@helsinki.at>
+ * Copyright (C) 2015-2016 Peter Grassberger <petertheone@gmail.com>
+ *
+ * This file is part of rhwebimport.
+ *
+ * rhwebimport is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * any later version.
+ *
+ * rhwebimport is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with rhwebimport. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+'use strict';
+
+var auth = null;
+var router = null;
+
+$(document).ready(function() {
+ auth = new Rdxport.Auth();
+ router = new Rdxport.Router(auth);
+ router.route();
+});
+
+Rdxport.Router = function(auth) {
+ console.log('Router');
+ this.auth = auth;
+ this.authView = new Rdxport.AuthView(this.auth);
+};
+
+Rdxport.Router.prototype.route = function(page, subpage) {
+ console.log('route');
+ if (!this.auth.isLoggedIn()) {
+ this.login();
+ return;
+ }
+
+ this.authView.renderLoggedIn();
+
+ // todo: if previously login form
+ //$('#username-field').html(auth_fullname + ' (' + auth_username + ')');
+ //$('#loginbox').slideUp();
+ //$('#mainwindow').fadeIn();
+
+ // todo: route..
+};
+
+Rdxport.Router.prototype.login = function() {
+ console.log('login');
+ this.authView.renderLoginForm();
+};
+
+Rdxport.Router.prototype.logout = function() {
+ console.log('logout');
+ if (importer && importer.isUploading()) {
+ alert('Achtung: Es laufen noch imports.');
+ return;
+ }
+
+ this.auth.cleanup();
+ // todo: more cleanup?
+ //apps_cleanup();
+
+ this.login();
+};