From 6e8a0f79f5ad7182a0bc35308ae06c63222667ed Mon Sep 17 00:00:00 2001 From: RaNaN Date: Sat, 23 Mar 2013 21:56:42 +0100 Subject: implemented interactions for multi user, show waiting queries on webui --- module/web/static/js/views/notificationView.js | 65 ++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 module/web/static/js/views/notificationView.js (limited to 'module/web/static/js/views/notificationView.js') diff --git a/module/web/static/js/views/notificationView.js b/module/web/static/js/views/notificationView.js new file mode 100644 index 000000000..22c727304 --- /dev/null +++ b/module/web/static/js/views/notificationView.js @@ -0,0 +1,65 @@ +define(['jquery', 'backbone', 'underscore', 'app', 'collections/InteractionList'], + function($, Backbone, _, App, InteractionList) { + + // Renders context actions for selection packages and files + return Backbone.View.extend({ + el: '#notification-area', + template: _.compile($("#template-notification").html()), + + events: { + 'click .btn-query': 'openQuery', + 'click .btn-notification': 'openNotifications' + }, + + tasks: null, + // current open task + current: null, + // area is slided out + visible: false, + + initialize: function() { + this.tasks = new InteractionList(); + + this.$el.calculateHeight().height(0); + + App.vent.on('interaction:added', _.bind(this.onAdd, this)); + App.vent.on('interaction:deleted', _.bind(this.onDelete, this)); + + var render = _.bind(this.render, this); + this.listenTo(this.tasks, 'add', render); + this.listenTo(this.tasks, 'remove', render); + + }, + + onAdd: function(task) { + this.tasks.add(task); + }, + + onDelete: function(task) { + this.tasks.remove(task); + }, + + render: function() { + this.$el.html(this.template(this.tasks.toJSON())); + + if (this.tasks.length > 0 && !this.visible) { + this.$el.slideOut(); + this.visible = true; + } + else if (this.tasks.length === 0 && this.visible) { + this.$el.slideIn(); + this.visible = false; + } + + return this; + }, + + openQuery: function() { + + }, + + openNotifications: function() { + + } + }); + }); \ No newline at end of file -- cgit v1.2.3