Client default settings taken from config.js
authorDarren <darren@darrenwhitlen.com>
Sat, 1 Dec 2012 16:51:09 +0000 (16:51 +0000)
committerDarren <darren@darrenwhitlen.com>
Sat, 1 Dec 2012 16:51:09 +0000 (16:51 +0000)
client/assets/dev/build.js
client/assets/dev/model_application.js
config.example.js

index 2f0c5b8e3f4f87c82ef6abe1f20f9fada4fbdd4b..9db3895fe1cb1242851e4ec34562f3c77f0741a2 100644 (file)
@@ -85,13 +85,13 @@ var index_src = fs.readFileSync(__dirname + '/index.html.tmpl', FILE_ENCODING);
 var vars = {\r
     base_path: config.get().http_base_path || '/kiwi',\r
     cache_buster: Math.ceil(Math.random() * 9000).toString(),\r
-    server_settings: '{}',\r
-    client_plugins: '[]'\r
+    server_settings: {},\r
+    client_plugins: []\r
 };\r
 \r
 // Any restricted server mode set?\r
 if (config.get().restrict_server) {\r
-    vars.server_settings = JSON.stringify({\r
+    vars.server_settings = {\r
         connection: {\r
             server: config.get().restrict_server,\r
             port: config.get().restrict_server_port || 6667,\r
@@ -100,15 +100,21 @@ if (config.get().restrict_server) {
             nick: config.get().restrict_server_nick,\r
             allow_change: false\r
         }\r
-    });\r
+    };\r
+}\r
+\r
+// Any client default settings?\r
+if (config.get().client) {\r
+    vars.server_settings.client = config.get().client;\r
 }\r
 \r
 // Any client plugins?\r
 if (config.get().client_plugins && config.get().client_plugins.length > 0) {\r
-    vars.client_plugins = JSON.stringify(config.get().client_plugins);\r
+    vars.client_plugins = config.get().client_plugins;\r
 }\r
 \r
 _.each(vars, function(value, key) {\r
+    if (typeof value === 'object') value = JSON.stringify(value);\r
     index_src = index_src.replace(new RegExp('<%' + key + '%>', 'g'), value);\r
 });\r
 \r
index 6610a460aa88a6de1bee2d2cde59f8d57b49e15b..ef7deac14f730ed4c26270f996fdad9790742a75 100644 (file)
@@ -146,7 +146,7 @@ _kiwi.model.Application = function () {
         this.populateDefaultServerSettings = function () {\r
             var parts;\r
             var defaults = {\r
-                nick: getQueryVariable('nick') || 'kiwi_' + Math.ceil(Math.random() * 10000).toString(),\r
+                nick: getQueryVariable('nick') || 'kiwi_?',\r
                 server: 'irc.kiwiirc.com',\r
                 port: 6667,\r
                 ssl: false,\r
@@ -155,6 +155,35 @@ _kiwi.model.Application = function () {
             };\r
             var uricheck;\r
 \r
+\r
+            /**\r
+             * Get any settings set by the server\r
+             * These settings may be changed in the server selection dialog\r
+             */\r
+            if (this.server_settings.client) {\r
+                if (this.server_settings.client.nick)\r
+                    defaults.nick = this.server_settings.client.nick;\r
+\r
+                if (this.server_settings.client.server)\r
+                    defaults.server = this.server_settings.client.server;\r
+\r
+                if (this.server_settings.client.port)\r
+                    defaults.port = this.server_settings.client.port;\r
+\r
+                if (this.server_settings.client.ssl)\r
+                    defaults.ssl = this.server_settings.client.ssl;\r
+\r
+                if (this.server_settings.client.channel)\r
+                    defaults.channel = this.server_settings.client.channel;\r
+            }\r
+\r
+\r
+\r
+            /**\r
+             * Get any settings passed in the URL\r
+             * These settings may be changed in the server selection dialog\r
+             */\r
+\r
             // Process the URL part by part, extracting as we go\r
             parts = window.location.pathname.toString().replace(this.get('base_path'), '').split('/');\r
 \r
@@ -221,6 +250,10 @@ _kiwi.model.Application = function () {
             }\r
 \r
             // If any settings have been given by the server.. override any auto detected settings\r
+            /**\r
+             * Get any server restrictions as set in the server config\r
+             * These settings can not changed in the server selection dialog\r
+             */\r
             if (this.server_settings && this.server_settings.connection) {\r
                 if (this.server_settings.connection.server) {\r
                     defaults.server = this.server_settings.connection.server;\r
index 08d4877aa26f00672054b87267a6b1a18af26692..286ee214d79bacd3ed3b17c6b61c5bf2d0430c60 100644 (file)
@@ -93,6 +93,7 @@ conf.reject_unauthorised_certificates = false;
  * Reverse proxies that have been reported to work can be found at:
  *     http://github.com/prawnsalad/KiwiIRC/wiki/Running-behind-a-proxy
  */
+
 // Whitelisted HTTP proxies in CIDR format
 conf.http_proxies = ["127.0.0.1/32"];
 
@@ -120,6 +121,16 @@ conf.transports = [
 conf.quit_message = "http://www.kiwiirc.com/ - A hand-crafted IRC client";
 
 
+// Default settings for the client. These may be changed in the browser
+conf.client = {
+    server: 'irc.kiwiirc.com',
+    port:    6697,
+    ssl:     true,
+    channel: '#kiwiirc',
+    nick:    'kiwi_?'
+};
+
+
 // If not empty, the client may only connect to this 1 IRC server
 //conf.restrict_server = "irc.kiwiirc.com";
 //conf.restrict_server_port = 6667;
@@ -129,6 +140,8 @@ conf.quit_message = "http://www.kiwiirc.com/ - A hand-crafted IRC client";
 //conf.restrict_server_nick = "kiwi_";
 
 
+
+
 /*
  * Do not ammend the below lines unless you understand the changes!
  */