From d96ad89b126e93468134e706130330a89c87ae01 Mon Sep 17 00:00:00 2001 From: Daniel Insley Date: Wed, 30 May 2012 16:24:10 -0700 Subject: [PATCH 1/2] fixed issue where it was always attempting to connect via SSL --- assets/js/views/overview.js | 20 ++++++++++++-------- lib/irchandler.js | 8 ++++---- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/assets/js/views/overview.js b/assets/js/views/overview.js index b019a29..2f5993b 100644 --- a/assets/js/views/overview.js +++ b/assets/js/views/overview.js @@ -45,20 +45,24 @@ var OverviewView = Backbone.View.extend({ connect: function(event) { event.preventDefault(); $('.error').removeClass('error'); + var server = $('#connect-server').val(); var nick = $('#connect-nick').val(); - var port = $('#connect-port').val(); - var secure = $('#connect-secure').val(); - var selfSigned = $('#connect-selfSigned').val(); - var password = $('#connect-password').val(); + var port = $('#connect-port').val(); + var secure = $('#connect-secure').is(':checked'); + var selfSigned = $('#connect-selfSigned').is(':checked'); + var password = $('#connect-password').val(); + if (!server) { $('#connect-server').closest('.clearfix').addClass('error'); $('#connect-server').addClass('error'); } + if (!nick) { $('#connect-nick').closest('.clearfix').addClass('error'); $('#connect-nick').addClass('error'); } + if (nick && server) { $('form').append(ich.load_image()); $('#connect-button').addClass('disabled'); @@ -66,10 +70,10 @@ var OverviewView = Backbone.View.extend({ var connectInfo = { nick: nick, server: server, - port: port, - secure: secure, - selfSigned: selfSigned, - password: password + port: port, + secure: secure, + selfSigned: selfSigned, + password: password }; irc.me = new User(connectInfo); irc.me.on('change:nick', irc.appView.renderUserBox); diff --git a/lib/irchandler.js b/lib/irchandler.js index ebe8d0b..099885e 100644 --- a/lib/irchandler.js +++ b/lib/irchandler.js @@ -123,10 +123,10 @@ var irchandler = exports.irchandler = function(socket) { } if(client === undefined) { client = new irc.Client(data.server, data.nick, { - port: data.port || 6667, - password: data.password, - secure: data.secure, - selfSigned: data.selfSigned, + port: data.port || 6667, + password: data.password, + secure: data.secure, + selfSigned: data.selfSigned, debug: true, logged_in: false, showErrors: true, From 049e1b7db1cc34b212c2dca01f19e56e2be39927 Mon Sep 17 00:00:00 2001 From: Daniel Insley Date: Wed, 30 May 2012 17:19:20 -0700 Subject: [PATCH 2/2] default ports being displayed, and toggles for SSL. also bumped font down to 12 as it looks a little cleaner --- assets/css/subway.css | 6 ++++++ assets/js/views/overview.js | 15 ++++++++++++++- lib/irchandler.js | 2 +- views/templates.jade | 12 ++++++------ 4 files changed, 27 insertions(+), 8 deletions(-) diff --git a/assets/css/subway.css b/assets/css/subway.css index 89dc6bc..9911dbe 100644 --- a/assets/css/subway.css +++ b/assets/css/subway.css @@ -8,6 +8,7 @@ html { overflow: hidden; } position: absolute; zoom: 1; padding: 0; + font-size: 12px; } .container-fluid:before, .container-fluid:after { display: table; @@ -109,6 +110,11 @@ html { overflow: hidden; } background: #434950; } +#ssl-self-signed { + display: none; +} + + #user-box div{ padding: 10px 25px; background: #434950; diff --git a/assets/js/views/overview.js b/assets/js/views/overview.js index 2f5993b..295101c 100644 --- a/assets/js/views/overview.js +++ b/assets/js/views/overview.js @@ -7,7 +7,8 @@ var OverviewView = Backbone.View.extend({ 'click #connect-button': 'connect', 'click #login-button': 'login_register', 'click #register-button': 'login_register', - 'keypress': 'connectOnEnter' + 'keypress': 'connectOnEnter', + 'click #connect-secure': 'toggle_ssl_options' }, el: '.content', @@ -75,6 +76,7 @@ var OverviewView = Backbone.View.extend({ selfSigned: selfSigned, password: password }; + irc.me = new User(connectInfo); irc.me.on('change:nick', irc.appView.renderUserBox); irc.socket.emit('connect', connectInfo); @@ -85,16 +87,20 @@ var OverviewView = Backbone.View.extend({ var action = event.target.innerHTML.toLowerCase() || event.action.toLowerCase(); event.preventDefault(); $('.error').removeClass('error'); + var username = $('#' + action + '-username').val(); var password = $('#' + action + '-password').val(); + if (!username) { $('#' + action + '-username').closest('.clearfix').addClass('error'); $('#' + action + '-username').addClass('error'); } + if (!password) { $('#' + action + '-password').closest('.clearfix').addClass('error'); $('#login-password').addClass('error'); } + if(username && password){ $('form').append(ich.load_image()); $('#' + action + '-button').addClass('disabled'); @@ -104,6 +110,13 @@ var OverviewView = Backbone.View.extend({ username: username, password: password }); + }, + + toggle_ssl_options: function(event) { + var port = $('#connect-secure').is(':checked') ? 6697 : 6667 + $('#connect-port').attr('placeholder', port) + $('#ssl-self-signed').toggle(); } + }); diff --git a/lib/irchandler.js b/lib/irchandler.js index 099885e..71d7178 100644 --- a/lib/irchandler.js +++ b/lib/irchandler.js @@ -123,7 +123,7 @@ var irchandler = exports.irchandler = function(socket) { } if(client === undefined) { client = new irc.Client(data.server, data.nick, { - port: data.port || 6667, + port: data.port || (data.secure ? 6697 : 6667), password: data.password, secure: data.secure, selfSigned: data.selfSigned, diff --git a/views/templates.jade b/views/templates.jade index 1fed453..bde440a 100644 --- a/views/templates.jade +++ b/views/templates.jade @@ -38,22 +38,22 @@ script(id="overview_connection", type="text/html") label(for="connect-server") Server .controls input#connect-server(type="text") - .control-group - label(for="connect-nick") Nick - .controls - input#connect-nick(type="text") .control-group label(for="connect-port") Port .controls - input#connect-port(type="text") + input#connect-port.input-small(type="text", placeholder="6667") .control-group label(for="connect-secure") SSL .controls input#connect-secure(type="checkbox") - .control-group + .control-group#ssl-self-signed label(for="connect-selfSigned") Self-signed SSL Cert .controls input#connect-selfSigned(type="checkbox") + .control-group + label(for="connect-nick") Nick + .controls + input#connect-nick(type="text") .control-group label(for="connect-password") Password .controls