diff --git a/lib/bootstrap-sass/version.rb b/lib/bootstrap-sass/version.rb index eeed0758..25411ca3 100644 --- a/lib/bootstrap-sass/version.rb +++ b/lib/bootstrap-sass/version.rb @@ -1,4 +1,4 @@ module Bootstrap VERSION = '3.0.3.0' - BOOTSTRAP_SHA = 'dffd4ffad2b6cad7fb0bab747671d524d791054d' + BOOTSTRAP_SHA = '50cf0b1a9d883ae3c4054dfd4071963fdf8aa812' end diff --git a/vendor/assets/javascripts/bootstrap/button.js b/vendor/assets/javascripts/bootstrap/button.js index f9cca154..34a61f58 100644 --- a/vendor/assets/javascripts/bootstrap/button.js +++ b/vendor/assets/javascripts/bootstrap/button.js @@ -13,8 +13,9 @@ // ============================== var Button = function (element, options) { - this.$element = $(element) - this.options = $.extend({}, Button.DEFAULTS, options) + this.$element = $(element) + this.options = $.extend({}, Button.DEFAULTS, options) + this.isLoading = false } Button.DEFAULTS = { @@ -34,25 +35,26 @@ $el[val](data[state] || this.options[state]) // push to event loop to allow forms to submit - setTimeout(function () { - state == 'loadingText' ? - $el.addClass(d).attr(d, d) : - $el.removeClass(d).removeAttr(d); - }, 0) + setTimeout($.proxy(function () { + if (state == 'loadingText') { + this.isLoading = true + $el.addClass(d).attr(d, d) + } else if (this.isLoading) { + this.isLoading = false + $el.removeClass(d).removeAttr(d) + } + }, this), 0) } Button.prototype.toggle = function () { - var $parent = this.$element.closest('[data-toggle="buttons"]') var changed = true + var $parent = this.$element.closest('[data-toggle="buttons"]') if ($parent.length) { var $input = this.$element.find('input') - if ($input.prop('type') === 'radio') { - // see if clicking on current one - if ($input.prop('checked') && this.$element.hasClass('active')) - changed = false - else - $parent.find('.active').removeClass('active') + if ($input.prop('type') == 'radio') { + if ($input.prop('checked') && this.$element.hasClass('active')) changed = false + else $parent.find('.active').removeClass('active') } if (changed) $input.prop('checked', !this.$element.hasClass('active')).trigger('change') } diff --git a/vendor/assets/javascripts/bootstrap/carousel.js b/vendor/assets/javascripts/bootstrap/carousel.js index fbd05511..a9a2eb2d 100644 --- a/vendor/assets/javascripts/bootstrap/carousel.js +++ b/vendor/assets/javascripts/bootstrap/carousel.js @@ -100,7 +100,7 @@ $next = this.$element.find('.item')[fallback]() } - if ($next.hasClass('active')) return + if ($next.hasClass('active')) return this.sliding = false var e = $.Event('slide.bs.carousel', { relatedTarget: $next[0], direction: direction }) this.$element.trigger(e) diff --git a/vendor/assets/javascripts/bootstrap/collapse.js b/vendor/assets/javascripts/bootstrap/collapse.js index bdd7d854..cd8f3843 100644 --- a/vendor/assets/javascripts/bootstrap/collapse.js +++ b/vendor/assets/javascripts/bootstrap/collapse.js @@ -58,7 +58,7 @@ var complete = function () { this.$element .removeClass('collapsing') - .addClass('in') + .addClass('collapse in') [dimension]('auto') this.transitioning = 0 this.$element.trigger('shown.bs.collapse') diff --git a/vendor/assets/javascripts/bootstrap/dropdown.js b/vendor/assets/javascripts/bootstrap/dropdown.js index 48752fda..1e25403f 100644 --- a/vendor/assets/javascripts/bootstrap/dropdown.js +++ b/vendor/assets/javascripts/bootstrap/dropdown.js @@ -34,13 +34,14 @@ $('