From 72e222626597d674319af187cb3fef3796f7eaef Mon Sep 17 00:00:00 2001 From: jlukic Date: Tue, 22 Oct 2013 17:06:38 -0400 Subject: [PATCH] Fixes issue with module pattern setting/internal method --- src/modules/accordion.js | 13 +++++-------- src/modules/behavior/api.js | 24 ++++++++++-------------- src/modules/behavior/form.js | 26 ++++++++++---------------- src/modules/chatroom.js | 28 ++++++++++++++++------------ src/modules/checkbox.js | 24 ++++++++++-------------- src/modules/dropdown.js | 26 +++++++++++--------------- src/modules/nag.js | 13 +++++-------- src/modules/rating.js | 24 ++++++++++-------------- src/modules/search.js | 26 ++++++++++---------------- src/modules/shape.js | 24 ++++++++++-------------- src/modules/sidebar.js | 24 ++++++++++-------------- src/modules/tab.js | 24 ++++++++++-------------- src/modules/transition.js | 31 +++++++++++++++---------------- src/modules/video.js | 24 ++++++++++-------------- 14 files changed, 142 insertions(+), 189 deletions(-) diff --git a/src/modules/accordion.js b/src/modules/accordion.js index a9c91109f..db6ce4c11 100755 --- a/src/modules/accordion.js +++ b/src/modules/accordion.js @@ -202,14 +202,11 @@ $.fn.accordion = function(parameters) { }, setting: function(name, value) { - module.debug('Changing setting', name, value); - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else { - settings[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; } else { return settings[name]; diff --git a/src/modules/behavior/api.js b/src/modules/behavior/api.js index d2da587c6..680fca70b 100755 --- a/src/modules/behavior/api.js +++ b/src/modules/behavior/api.js @@ -350,26 +350,22 @@ }, setting: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else { - settings[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; } else { return settings[name]; } }, internal: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, module, name); - } - else { - module[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; } else { return module[name]; diff --git a/src/modules/behavior/form.js b/src/modules/behavior/form.js index 78253aa89..ec52708fe 100755 --- a/src/modules/behavior/form.js +++ b/src/modules/behavior/form.js @@ -383,28 +383,22 @@ $.fn.form = function(fields, parameters) { }, setting: function(name, value) { - module.debug('Changing setting', name, value); - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else { - settings[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; } else { return settings[name]; } }, internal: function(name, value) { - module.debug('Changing internal', name, value); - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, module, name); - } - else { - module[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; } else { return module[name]; diff --git a/src/modules/chatroom.js b/src/modules/chatroom.js index 3821922c7..0f2ebd890 100755 --- a/src/modules/chatroom.js +++ b/src/modules/chatroom.js @@ -13,8 +13,16 @@ $.fn.chatroom = function(parameters) { var - // hoist arguments - moduleArguments = arguments || false + $allModules = $(this), + moduleSelector = $allModules.selector || '', + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + returnedValue ; $(this) .each(function() { @@ -42,6 +50,7 @@ $.fn.chatroom = function(parameters) { $messageButton = $module.find(selector.messageButton), instance = $module.data('module'), + element = this, html = '', users = {}, @@ -435,8 +444,6 @@ $.fn.chatroom = function(parameters) { }, - - setting: function(name, value) { if(value !== undefined) { if( $.isPlainObject(name) ) { @@ -451,13 +458,11 @@ $.fn.chatroom = function(parameters) { } }, internal: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, module, name); - } - else { - module[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; } else { return module[name]; @@ -525,7 +530,6 @@ $.fn.chatroom = function(parameters) { if(moduleSelector) { title += ' \'' + moduleSelector + '\''; } - title += ' ' + '(' + $allDropdowns.size() + ')'; if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { console.groupCollapsed(title); if(console.table) { diff --git a/src/modules/checkbox.js b/src/modules/checkbox.js index c0f6cf489..6441a0bb9 100755 --- a/src/modules/checkbox.js +++ b/src/modules/checkbox.js @@ -136,26 +136,22 @@ $.fn.checkbox = function(parameters) { } }, setting: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else { - settings[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; } else { return settings[name]; } }, internal: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, module, name); - } - else { - module[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; } else { return module[name]; diff --git a/src/modules/dropdown.js b/src/modules/dropdown.js index 603ed97c3..b073e431b 100755 --- a/src/modules/dropdown.js +++ b/src/modules/dropdown.js @@ -63,10 +63,10 @@ $.fn.dropdown = function(parameters) { module.set.selected(); - // no use detecting mouse events because touch devices emulate them if(hasTouch) { module.bind.touchEvents(); } + // no use detecting mouse events because touch devices emulate them module.bind.mouseEvents(); module.instantiate(); }, @@ -573,26 +573,22 @@ $.fn.dropdown = function(parameters) { }, setting: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else { - settings[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; } else { return settings[name]; } }, internal: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, module, name); - } - else { - module[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; } else { return module[name]; diff --git a/src/modules/nag.js b/src/modules/nag.js index 0ef915083..5bf9935a0 100755 --- a/src/modules/nag.js +++ b/src/modules/nag.js @@ -299,14 +299,11 @@ $.fn.nag = function(parameters) { } }, setting: function(name, value) { - module.debug('Changing setting', name, value); - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else { - settings[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; } else { return settings[name]; diff --git a/src/modules/rating.js b/src/modules/rating.js index a182b26a0..fea6dc317 100755 --- a/src/modules/rating.js +++ b/src/modules/rating.js @@ -192,26 +192,22 @@ $.fn.rating = function(parameters) { }, setting: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else { - settings[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; } else { return settings[name]; } }, internal: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, module, name); - } - else { - module[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; } else { return module[name]; diff --git a/src/modules/search.js b/src/modules/search.js index 21c0d4214..9a912ddcd 100755 --- a/src/modules/search.js +++ b/src/modules/search.js @@ -405,28 +405,22 @@ $.fn.search = function(source, parameters) { }, setting: function(name, value) { - module.debug('Changing setting', name, value); - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else { - settings[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; } else { return settings[name]; } }, internal: function(name, value) { - module.debug('Changing internal', name, value); - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, module, name); - } - else { - module[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; } else { return module[name]; diff --git a/src/modules/shape.js b/src/modules/shape.js index 4051fe13e..81a4cbd9e 100755 --- a/src/modules/shape.js +++ b/src/modules/shape.js @@ -543,26 +543,22 @@ $.fn.shape = function(parameters) { } }, setting: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else { - settings[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; } else { return settings[name]; } }, internal: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, module, name); - } - else { - module[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; } else { return module[name]; diff --git a/src/modules/sidebar.js b/src/modules/sidebar.js index 8bcd3ba5f..7885070a6 100755 --- a/src/modules/sidebar.js +++ b/src/modules/sidebar.js @@ -272,26 +272,22 @@ $.fn.sidebar = function(parameters) { }, setting: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else { - settings[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; } else { return settings[name]; } }, internal: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, module, name); - } - else { - module[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; } else { return module[name]; diff --git a/src/modules/tab.js b/src/modules/tab.js index 4b0d9e74a..ac38bac00 100755 --- a/src/modules/tab.js +++ b/src/modules/tab.js @@ -463,26 +463,22 @@ }, setting: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else { - settings[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; } else { return settings[name]; } }, internal: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, module, name); - } - else { - module[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; } else { return module[name]; diff --git a/src/modules/transition.js b/src/modules/transition.js index aeee7158e..e4a546cc2 100755 --- a/src/modules/transition.js +++ b/src/modules/transition.js @@ -106,7 +106,6 @@ $.fn.transition = function() { if(settings.queue) { module.queue(settings.animation); } - return false; } module.save.conditions(); module.set.duration(settings.duration); @@ -146,10 +145,12 @@ $.fn.transition = function() { if($module.hasClass(className.outward)) { module.restore.conditions(); module.hide(); + $.proxy(settings.onHide, this)(); } else if($module.hasClass(className.inward)) { module.restore.conditions(); module.show(); + $.proxy(settings.onShow, this)(); } else { module.restore.conditions(); @@ -436,26 +437,22 @@ $.fn.transition = function() { }, setting: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else { - settings[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; } else { return settings[name]; } }, internal: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, module, name); - } - else { - module[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; } else { return module[name]; @@ -622,12 +619,14 @@ $.fn.transition.settings = { // animation complete event complete : function() {}, + onShow : function() {}, + onHide : function() {}, // animation duration animation : 'fade', duration : '700ms', - // queue up animations + // new animations will occur after previous ones queue : true, className : { diff --git a/src/modules/video.js b/src/modules/video.js index 04d80ec75..3f83d30b3 100755 --- a/src/modules/video.js +++ b/src/modules/video.js @@ -231,26 +231,22 @@ $.fn.video = function(parameters) { }, setting: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else { - settings[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; } else { return settings[name]; } }, internal: function(name, value) { - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, module, name); - } - else { - module[name] = value; - } + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; } else { return module[name];