diff --git a/html/admin/js/templates/foxxActiveView.ejs b/html/admin/js/templates/foxxActiveView.ejs new file mode 100644 index 0000000000..892101c694 --- /dev/null +++ b/html/admin/js/templates/foxxActiveView.ejs @@ -0,0 +1,14 @@ + +
+ <% var appInfos = attributes.app.split(":"); %> +
<%= appInfos[1] %>
+

+ + Mount-Point: <%=attributes.mount %>
+ Version: <%=appInfos[2] %>
+ Prefix: <%=attributes.collectionPrefix%>
+ Active: <%=attributes.active%> + +

+
+
\ No newline at end of file diff --git a/html/admin/js/templates/foxxInstalledView.ejs b/html/admin/js/templates/foxxInstalledView.ejs new file mode 100644 index 0000000000..575322c5e5 --- /dev/null +++ b/html/admin/js/templates/foxxInstalledView.ejs @@ -0,0 +1,11 @@ + +
+
<%= attributes.name %>
+

+ Description: <%=attributes.description %>
+ Path: <%=attributes.path %>
+ Version: <%=attributes.version %>
+ +

+
+
\ No newline at end of file diff --git a/html/admin/js/views/foxxActiveListView.js b/html/admin/js/views/foxxActiveListView.js new file mode 100644 index 0000000000..05fc136171 --- /dev/null +++ b/html/admin/js/views/foxxActiveListView.js @@ -0,0 +1,34 @@ +var FoxxActiveListView = Backbone.View.extend({ + el: '#content', + template: new EJS({url: '/_admin/html/js/templates/foxxListView.ejs'}), + + events: { + // 'click button#add': 'callback' + }, + + initialize: function() { + this._subViews = {}; + var self = this; + this.collection.fetch({ + success: function() { + self.collection.where({type: "mount"}.each(function (foxx) { + var subView = new window.FoxxActiveView({model: foxx}); + self._subViews[foxx.get('_id')] = subView; + }); + self.render(); + } + }); + this.render(); + }, + + + render: function() { + $(this.el).html(this.template.text); + var self = this; + _.each(this._subViews, function (v) { + $("#foxxList").append(v.render()); + }); + this.delegateEvents(); + return this; + } +}); diff --git a/html/admin/js/views/foxxActiveView.js b/html/admin/js/views/foxxActiveView.js new file mode 100644 index 0000000000..eee8fe4ea6 --- /dev/null +++ b/html/admin/js/views/foxxActiveView.js @@ -0,0 +1,18 @@ +window.FoxxActiveView = Backbone.View.extend({ + tagName: 'li', + className: "span3", + template: new EJS({url: '/_admin/html/js/templates/foxxView.ejs'}), + + events: { + // 'click button#add': 'callback' + }, + + initialize: function(){ + _.bindAll(this, 'render'); + }, + + render: function(){ + $(this.el).html(this.template.render(this.model)); + return $(this.el); + } +}); diff --git a/html/admin/js/views/foxxInstalledListView.js b/html/admin/js/views/foxxInstalledListView.js new file mode 100644 index 0000000000..1179c9888d --- /dev/null +++ b/html/admin/js/views/foxxInstalledListView.js @@ -0,0 +1,33 @@ +var FoxxInstalledListView = Backbone.View.extend({ + el: '#content', + template: new EJS({url: '/_admin/html/js/templates/foxxListView.ejs'}), + + events: { + // 'click button#add': 'callback' + }, + + initialize: function() { + this._subViews = {}; + var self = this; + this.collection.fetch({ + success: function() { + self.collection.where({type: "app"}).each(function (foxx) { + var subView = new window.FoxxInstalledView({model: foxx}); + self._subViews[foxx.get('_id')] = subView; + }); + self.render(); + } + }); + }, + + + render: function() { + $(this.el).html(this.template.text); + var self = this; + _.each(this._subViews, function (v) { + $("#foxxList").append(v.render()); + }); + this.delegateEvents(); + return this; + } +}); diff --git a/html/admin/js/views/foxxInstalledView.js b/html/admin/js/views/foxxInstalledView.js new file mode 100644 index 0000000000..0382a9aea1 --- /dev/null +++ b/html/admin/js/views/foxxInstalledView.js @@ -0,0 +1,18 @@ +window.FoxxInstalledView = Backbone.View.extend({ + tagName: 'li', + className: "span3", + template: new EJS({url: '/_admin/html/js/templates/foxxInstalledView.ejs'}), + + events: { + // 'click button#add': 'callback' + }, + + initialize: function(){ + _.bindAll(this, 'render'); + }, + + render: function(){ + $(this.el).html(this.template.render(this.model)); + return $(this.el); + } +});