summaryrefslogtreecommitdiffstats
path: root/module/web/app/scripts/app.js
diff options
context:
space:
mode:
Diffstat (limited to 'module/web/app/scripts/app.js')
-rw-r--r--module/web/app/scripts/app.js105
1 files changed, 0 insertions, 105 deletions
diff --git a/module/web/app/scripts/app.js b/module/web/app/scripts/app.js
deleted file mode 100644
index 427cb1bc8..000000000
--- a/module/web/app/scripts/app.js
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Global Application Object
- * Contains all necessary logic shared across views
- */
-define([
-
- // Libraries.
- 'jquery',
- 'underscore',
- 'backbone',
- 'utils/initHB',
- 'utils/animations',
- 'utils/lazyRequire',
- 'utils/dialogs',
- 'marionette',
- 'bootstrap',
- 'animate'
-
-], function($, _, Backbone, Handlebars) {
- 'use strict';
-
- Backbone.Marionette.TemplateCache.prototype.compileTemplate = function(rawTemplate) {
- return Handlebars.compile(rawTemplate);
- };
-
- // TODO: configurable root
- var App = new Backbone.Marionette.Application({
- root: '/'
- });
-
- App.addRegions({
- header: '#header',
- notification: '#notification-area',
- selection: '#selection-area',
- content: '#content',
- actionbar: '#actionbar'
- });
-
- App.navigate = function(url) {
- return Backbone.history.navigate(url, true);
- };
-
- App.apiUrl = function(path) {
- var url = window.hostProtocol + window.hostAddress + ':' + window.hostPort + window.pathPrefix + path;
- return url;
- };
-
- // Add Global Helper functions
- // Generates options dict that can be used for xhr requests
- App.apiRequest = function(method, data, options) {
- options || (options = {});
- options.url = App.apiUrl('api/' + method);
- options.dataType = 'json';
-
- if (data) {
- options.type = 'POST';
- options.data = {};
- // Convert arguments to json
- _.keys(data).map(function(key) {
- options.data[key] = JSON.stringify(data[key]);
- });
- }
-
- return options;
- };
-
- App.setTitle = function(name) {
- var title = window.document.title;
- var newTitle;
- // page name separator
- var index = title.indexOf('-');
- if (index >= 0)
- newTitle = name + ' - ' + title.substr(index + 2, title.length);
- else
- newTitle = name + ' - ' + title;
-
- window.document.title = newTitle;
- };
-
- App.openWebSocket = function(path) {
- // TODO
- return new WebSocket(window.wsAddress.replace('%s', window.hostAddress) + path);
- };
-
- App.on('initialize:after', function() {
-// TODO pushState variable
- Backbone.history.start({
- pushState: false,
- root: App.root
- });
-
- // All links should be handled by backbone
- $(document).on('click', 'a[data-nav]', function(evt) {
- var href = { prop: $(this).prop('href'), attr: $(this).attr('href') };
- var root = location.protocol + '//' + location.host + App.root;
- if (href.prop.slice(0, root.length) === root) {
- evt.preventDefault();
- Backbone.history.navigate(href.attr, true);
- }
- });
- });
-
- // Returns the app object to be available to other modules through require.js.
- return App;
-}); \ No newline at end of file