Global objects started
authorDarren <darren@darrenwhitlen.com>
Sun, 16 Sep 2012 11:22:50 +0000 (12:22 +0100)
committerDarren <darren@darrenwhitlen.com>
Sun, 16 Sep 2012 11:22:50 +0000 (12:22 +0100)
client_backbone/dev/app.js
client_backbone/dev/applet_nickserv.js [new file with mode: 0644]
client_backbone/dev/build.js
client_backbone/dev/model_application.js
client_backbone/index.html

index 329b3a0571798369ef28ed6ecc6396b762d62bea..c680b417d96c4bfccd6252649705c16e23dbe5f1 100644 (file)
@@ -15,9 +15,13 @@ kiwi.applets = {};
  * and data (think: plugins)\r
  */\r
 kiwi.global = {\r
+       utils: undefined, // Re-usable methods\r
        gateway: undefined,\r
        user: undefined,\r
        server: undefined,\r
+       command: undefined,  // The control box\r
+\r
+       // TODO: think of a better term for this as it will also refer to queries\r
        channels: undefined,\r
 \r
        // Entry point to start the kiwi application\r
@@ -33,9 +37,7 @@ kiwi.global = {
                kiwi.app.start();\r
 \r
                return true;\r
-       },\r
-\r
-       utils: undefined // Re-usable methods\r
+       }\r
 };\r
 \r
 \r
diff --git a/client_backbone/dev/applet_nickserv.js b/client_backbone/dev/applet_nickserv.js
new file mode 100644 (file)
index 0000000..0244d1d
--- /dev/null
@@ -0,0 +1,38 @@
+(function () {\r
+    var View = Backbone.View.extend({\r
+        events: {\r
+            'click .save': 'saveSettings'\r
+        },\r
+\r
+        initialize: function (options) {\r
+            this.$el = $($('#tmpl_applet_settings').html());\r
+        },\r
+        \r
+        saveSettings: function () {\r
+            var theme = $('.theme', this.$el).val(),\r
+                containers = $('#panels > .panel_container');\r
+\r
+            // Clear any current theme\r
+            containers.removeClass(function (i, css) {\r
+                return (css.match (/\btheme_\S+/g) || []).join(' ');\r
+            });\r
+\r
+            if (theme) containers.addClass('theme_' + theme);\r
+        }\r
+    });\r
+\r
+\r
+\r
+    kiwi.applets.nickserv = Backbone.Model.extend({\r
+        initialize: function () {\r
+            this.set('title', 'Nickserv Login');\r
+            //this.view = new View();\r
+\r
+            kiwi.global.control.on('command_login', this.loginCommand, this);\r
+        },\r
+\r
+        loginCommand: function (event) {\r
+            console.log('waheeyy');\r
+        }\r
+    });\r
+})();
\ No newline at end of file
index 8ec86d4e59ba70f891c9bbb4e47a6301cdf738f5..58b4c5f9cffde12c0bdabf46f5fb08ca61b45b5d 100644 (file)
@@ -27,6 +27,7 @@ var src = concat([
     __dirname + '/model_applet.js',\r
 \r
     __dirname + '/applet_settings.js',\r
+    __dirname + '/applet_nickserv.js',\r
 \r
     __dirname + '/utils.js',\r
     __dirname + '/view.js'\r
index a33e910106340738a976ff624ecb0a1ca1ade0c5..d78da3cc79821685cab702102056f799c15c7dd7 100644 (file)
@@ -37,6 +37,8 @@ kiwi.model.Application = Backbone.Model.extend(new (function () {
         this.bindGatewayCommands(kiwi.gateway);\r
 \r
         this.initializeClient();\r
+        this.initializeGlobals();\r
+\r
         this.view.barsHide(true);\r
 \r
         this.panels.server.server_login.bind('server_connect', function (event) {\r
@@ -115,6 +117,11 @@ kiwi.model.Application = Backbone.Model.extend(new (function () {
     };\r
 \r
 \r
+    this.initializeGlobals = function () {\r
+        kiwi.global.control = this.controlbox;\r
+    };\r
+\r
+\r
 \r
     this.bindGatewayCommands = function (gw) {\r
         gw.on('onmotd', function (event) {\r
@@ -644,7 +651,7 @@ kiwi.model.Application = Backbone.Model.extend(new (function () {
         } else {\r
             // Load a pre-loaded applet\r
             if (kiwi.applets[ev.params[0]]) {\r
-                panel.load(new kiwi.applets[ev.params[0]]);\r
+                panel.load(new kiwi.applets[ev.params[0]]());\r
             } else {\r
                 kiwi.app.panels.server.addMsg('', 'Applet "' + ev.params[0] + '" does not exist');\r
                 return;\r
index a73c661e7391f5d09cb53af212bc2c798fe0d46f..d3903664e0fe8a33b7f9da85b3921433ad377acf 100644 (file)
                     'dev/model_applet.js'
                 ],
 
-                ['dev/applet_settings.js'],
+                [
+                    'dev/applet_settings.js',
+                    'dev/applet_nickserv.js'
+                ],
 
                 [
                     'dev/utils.js',