contour 2.1.0.beta10 → 2.1.0.beta11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +3 -2
- data/app/assets/javascripts/bootstrap/{v3.0.0-rc1 → v3.0.0-rc2}/bootstrap.js +77 -50
- data/app/assets/javascripts/contour.js +1 -1
- data/app/assets/stylesheets/bootstrap-overrides.css +6 -42
- data/app/assets/stylesheets/bootstrap/{v3.0.0-rc1 → v3.0.0-rc2}/bootstrap.css +1442 -552
- data/app/assets/stylesheets/contour.css +1 -1
- data/app/assets/stylesheets/typeahead.js-bootstrap.css +13 -8
- data/app/helpers/contour_helper.rb +1 -1
- data/app/views/contour/_links.html.erb +6 -6
- data/app/views/contour/layouts/_latest_news.html.erb +1 -1
- data/app/views/contour/layouts/_menu.html.erb +12 -10
- data/app/views/contour/layouts/application.html.erb +2 -2
- data/contour.gemspec +1 -1
- data/lib/contour/version.rb +1 -1
- data/lib/generators/contour/scaffold/templates/_paginate.html.erb +2 -2
- data/lib/generators/contour/scaffold/templates/index.html.erb +1 -1
- data/lib/generators/contour/scaffold/templates/show.html.erb +2 -2
- metadata +6 -6
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: fe26c130959148bee334c419ae2c102cd5d7d05f
         | 
| 4 | 
            +
              data.tar.gz: 56d679b7d0904a705768cba344f782b38e11f9f4
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 756666b84b4e52f3a75643c34acde4f864fe2d852c885962011620fea0f550bfd64dcb1a69318f9a78fa807098079f41d88c3fec6ff249c2435883172d48905e
         | 
| 7 | 
            +
              data.tar.gz: 5bd902c64cdf2207f31adf31e9e5ee36ee6b7dbe2d360dde5963a65df157e898554a40e6cf8f1954ba231821784fa9dbca9cbdeea7a6175ebabb895f2f7cb15e
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -1,12 +1,13 @@ | |
| 1 1 | 
             
            ## 2.1.0
         | 
| 2 2 |  | 
| 3 | 
            -
            - Updated Bootstrap to 3.0.0- | 
| 3 | 
            +
            - Updated Bootstrap to 3.0.0-rc2
         | 
| 4 4 | 
             
            - Added Twitter-Typeahead to replace BS Typeahead functionality
         | 
| 5 5 | 
             
            - Removed contour-mini pagination theme as the only options in BS3 are pagination-large, pagination, and pagination-small
         | 
| 6 | 
            -
            - Added `btn-cancel` and `btn-cancel-inverse` to complement other BS3 button styles
         | 
| 7 6 | 
             
            - Menu dropdowns can now have headers
         | 
| 8 7 | 
             
              - `links: [ ..., { header: 'Dropdown header' }, ... ]`
         | 
| 9 8 | 
             
            - Removed bootstrap-scroll-modal since it collided with BS3's implementation
         | 
| 9 | 
            +
            - **Gem Changes**
         | 
| 10 | 
            +
              - Updated to Devise 3.0.2
         | 
| 10 11 |  | 
| 11 12 | 
             
            ## 2.0.0 (July 25, 2013)
         | 
| 12 13 |  | 
| @@ -219,7 +219,9 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 219 219 | 
             
                var $parent = this.$element.closest('[data-toggle="buttons"]')
         | 
| 220 220 |  | 
| 221 221 | 
             
                if ($parent.length) {
         | 
| 222 | 
            -
                  var $input = this.$element.find('input') | 
| 222 | 
            +
                  var $input = this.$element.find('input')
         | 
| 223 | 
            +
                    .prop('checked', !this.$element.hasClass('active'))
         | 
| 224 | 
            +
                    .trigger('change')
         | 
| 223 225 | 
             
                  if ($input.prop('type') === 'radio') $parent.find('.active').removeClass('active')
         | 
| 224 226 | 
             
                }
         | 
| 225 227 |  | 
| @@ -235,7 +237,7 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 235 237 | 
             
              $.fn.button = function (option) {
         | 
| 236 238 | 
             
                return this.each(function () {
         | 
| 237 239 | 
             
                  var $this   = $(this)
         | 
| 238 | 
            -
                  var data    = $this.data('button')
         | 
| 240 | 
            +
                  var data    = $this.data('bs.button')
         | 
| 239 241 | 
             
                  var options = typeof option == 'object' && option
         | 
| 240 242 |  | 
| 241 243 | 
             
                  if (!data) $this.data('bs.button', (data = new Button(this, options)))
         | 
| @@ -312,6 +314,7 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 312 314 | 
             
              Carousel.DEFAULTS = {
         | 
| 313 315 | 
             
                interval: 5000
         | 
| 314 316 | 
             
              , pause: 'hover'
         | 
| 317 | 
            +
              , wrap: true
         | 
| 315 318 | 
             
              }
         | 
| 316 319 |  | 
| 317 320 | 
             
              Carousel.prototype.cycle =  function (e) {
         | 
| @@ -376,12 +379,15 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 376 379 | 
             
                var fallback  = type == 'next' ? 'first' : 'last'
         | 
| 377 380 | 
             
                var that      = this
         | 
| 378 381 |  | 
| 382 | 
            +
                if (!$next.length) {
         | 
| 383 | 
            +
                  if (!this.options.wrap) return
         | 
| 384 | 
            +
                  $next = this.$element.find('.item')[fallback]()
         | 
| 385 | 
            +
                }
         | 
| 386 | 
            +
             | 
| 379 387 | 
             
                this.sliding = true
         | 
| 380 388 |  | 
| 381 389 | 
             
                isCycling && this.pause()
         | 
| 382 390 |  | 
| 383 | 
            -
                $next = $next.length ? $next : this.$element.find('.item')[fallback]()
         | 
| 384 | 
            -
             | 
| 385 391 | 
             
                var e = $.Event('slide.bs.carousel', { relatedTarget: $next[0], direction: direction })
         | 
| 386 392 |  | 
| 387 393 | 
             
                if ($next.hasClass('active')) return
         | 
| @@ -533,7 +539,7 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 533 539 | 
             
                this.$element.trigger(startEvent)
         | 
| 534 540 | 
             
                if (startEvent.isDefaultPrevented()) return
         | 
| 535 541 |  | 
| 536 | 
            -
                var actives | 
| 542 | 
            +
                var actives = this.$parent && this.$parent.find('> .panel > .in')
         | 
| 537 543 |  | 
| 538 544 | 
             
                if (actives && actives.length) {
         | 
| 539 545 | 
             
                  var hasData = actives.data('bs.collapse')
         | 
| @@ -654,7 +660,7 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 654 660 | 
             
                var $parent = parent && $(parent)
         | 
| 655 661 |  | 
| 656 662 | 
             
                if (!data || !data.transitioning) {
         | 
| 657 | 
            -
                  if ($parent) $parent.find('[data-toggle=collapse][data-parent=' + parent + ']').not($this).addClass('collapsed')
         | 
| 663 | 
            +
                  if ($parent) $parent.find('[data-toggle=collapse][data-parent="' + parent + '"]').not($this).addClass('collapsed')
         | 
| 658 664 | 
             
                  $this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
         | 
| 659 665 | 
             
                }
         | 
| 660 666 |  | 
| @@ -849,7 +855,7 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 849 855 | 
             
                this.$backdrop =
         | 
| 850 856 | 
             
                this.isShown   = null
         | 
| 851 857 |  | 
| 852 | 
            -
                if (this.options.remote) this.$element. | 
| 858 | 
            +
                if (this.options.remote) this.$element.load(this.options.remote)
         | 
| 853 859 | 
             
              }
         | 
| 854 860 |  | 
| 855 861 | 
             
              Modal.DEFAULTS = {
         | 
| @@ -858,13 +864,13 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 858 864 | 
             
                , show: true
         | 
| 859 865 | 
             
              }
         | 
| 860 866 |  | 
| 861 | 
            -
              Modal.prototype.toggle = function () {
         | 
| 862 | 
            -
                return this[!this.isShown ? 'show' : 'hide']()
         | 
| 867 | 
            +
              Modal.prototype.toggle = function (_relatedTarget) {
         | 
| 868 | 
            +
                return this[!this.isShown ? 'show' : 'hide'](_relatedTarget)
         | 
| 863 869 | 
             
              }
         | 
| 864 870 |  | 
| 865 | 
            -
              Modal.prototype.show = function () {
         | 
| 871 | 
            +
              Modal.prototype.show = function (_relatedTarget) {
         | 
| 866 872 | 
             
                var that = this
         | 
| 867 | 
            -
                var e    = $.Event('show.bs.modal')
         | 
| 873 | 
            +
                var e    = $.Event('show.bs.modal', { relatedTarget: _relatedTarget })
         | 
| 868 874 |  | 
| 869 875 | 
             
                this.$element.trigger(e)
         | 
| 870 876 |  | 
| @@ -893,13 +899,15 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 893 899 |  | 
| 894 900 | 
             
                  that.enforceFocus()
         | 
| 895 901 |  | 
| 902 | 
            +
                  var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget })
         | 
| 903 | 
            +
             | 
| 896 904 | 
             
                  transition ?
         | 
| 897 905 | 
             
                    that.$element
         | 
| 898 906 | 
             
                      .one($.support.transition.end, function () {
         | 
| 899 | 
            -
                        that.$element.focus().trigger( | 
| 907 | 
            +
                        that.$element.focus().trigger(e)
         | 
| 900 908 | 
             
                      })
         | 
| 901 909 | 
             
                      .emulateTransitionEnd(300) :
         | 
| 902 | 
            -
                    that.$element.focus().trigger( | 
| 910 | 
            +
                    that.$element.focus().trigger(e)
         | 
| 903 911 | 
             
                })
         | 
| 904 912 | 
             
              }
         | 
| 905 913 |  | 
| @@ -921,6 +929,7 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 921 929 | 
             
                this.$element
         | 
| 922 930 | 
             
                  .removeClass('in')
         | 
| 923 931 | 
             
                  .attr('aria-hidden', true)
         | 
| 932 | 
            +
                  .off('click.dismiss.modal')
         | 
| 924 933 |  | 
| 925 934 | 
             
                $.support.transition && this.$element.hasClass('fade') ?
         | 
| 926 935 | 
             
                  this.$element
         | 
| @@ -973,7 +982,7 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 973 982 | 
             
                  this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
         | 
| 974 983 | 
             
                    .appendTo(document.body)
         | 
| 975 984 |  | 
| 976 | 
            -
                  this.$element.on('click', $.proxy(function (e) {
         | 
| 985 | 
            +
                  this.$element.on('click.dismiss.modal', $.proxy(function (e) {
         | 
| 977 986 | 
             
                    if (e.target !== e.currentTarget) return
         | 
| 978 987 | 
             
                    this.options.backdrop == 'static'
         | 
| 979 988 | 
             
                      ? this.$element[0].focus.call(this.$element[0])
         | 
| @@ -1012,15 +1021,15 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 1012 1021 |  | 
| 1013 1022 | 
             
              var old = $.fn.modal
         | 
| 1014 1023 |  | 
| 1015 | 
            -
              $.fn.modal = function (option) {
         | 
| 1024 | 
            +
              $.fn.modal = function (option, _relatedTarget) {
         | 
| 1016 1025 | 
             
                return this.each(function () {
         | 
| 1017 1026 | 
             
                  var $this   = $(this)
         | 
| 1018 1027 | 
             
                  var data    = $this.data('bs.modal')
         | 
| 1019 1028 | 
             
                  var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option)
         | 
| 1020 1029 |  | 
| 1021 1030 | 
             
                  if (!data) $this.data('bs.modal', (data = new Modal(this, options)))
         | 
| 1022 | 
            -
                  if (typeof option == 'string') data[option]()
         | 
| 1023 | 
            -
                  else if (options.show) data.show()
         | 
| 1031 | 
            +
                  if (typeof option == 'string') data[option](_relatedTarget)
         | 
| 1032 | 
            +
                  else if (options.show) data.show(_relatedTarget)
         | 
| 1024 1033 | 
             
                })
         | 
| 1025 1034 | 
             
              }
         | 
| 1026 1035 |  | 
| @@ -1043,28 +1052,26 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 1043 1052 | 
             
                var $this   = $(this)
         | 
| 1044 1053 | 
             
                var href    = $this.attr('href')
         | 
| 1045 1054 | 
             
                var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7
         | 
| 1046 | 
            -
                var option  = $target.data('modal') ? 'toggle' : $.extend({ remote | 
| 1055 | 
            +
                var option  = $target.data('modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())
         | 
| 1047 1056 |  | 
| 1048 1057 | 
             
                e.preventDefault()
         | 
| 1049 1058 |  | 
| 1050 1059 | 
             
                $target
         | 
| 1051 | 
            -
                  .modal(option)
         | 
| 1060 | 
            +
                  .modal(option, this)
         | 
| 1052 1061 | 
             
                  .one('hide', function () {
         | 
| 1053 1062 | 
             
                    $this.is(':visible') && $this.focus()
         | 
| 1054 1063 | 
             
                  })
         | 
| 1055 1064 | 
             
              })
         | 
| 1056 1065 |  | 
| 1057 | 
            -
              $( | 
| 1058 | 
            -
                 | 
| 1059 | 
            -
             | 
| 1060 | 
            -
                  .on('hidden.bs.modal', '.modal', function () { $body.removeClass('modal-open') })
         | 
| 1061 | 
            -
              })
         | 
| 1066 | 
            +
              $(document)
         | 
| 1067 | 
            +
                .on('shown.bs.modal',  '.modal', function () { $(document.body).addClass('modal-open') })
         | 
| 1068 | 
            +
                .on('hidden.bs.modal', '.modal', function () { $(document.body).removeClass('modal-open') })
         | 
| 1062 1069 |  | 
| 1063 1070 | 
             
            }(window.jQuery);
         | 
| 1064 1071 |  | 
| 1065 1072 | 
             
            /* ========================================================================
         | 
| 1066 1073 | 
             
             * Bootstrap: tooltip.js v3.0.0
         | 
| 1067 | 
            -
             * http://twbs.github.com/bootstrap/javascript.html# | 
| 1074 | 
            +
             * http://twbs.github.com/bootstrap/javascript.html#tooltip
         | 
| 1068 1075 | 
             
             * Inspired by the original jQuery.tipsy by Jason Frame
         | 
| 1069 1076 | 
             
             * ========================================================================
         | 
| 1070 1077 | 
             
             * Copyright 2012 Twitter, Inc.
         | 
| @@ -1128,7 +1135,7 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 1128 1135 | 
             
                    var eventIn  = trigger == 'hover' ? 'mouseenter' : 'focus'
         | 
| 1129 1136 | 
             
                    var eventOut = trigger == 'hover' ? 'mouseleave' : 'blur'
         | 
| 1130 1137 |  | 
| 1131 | 
            -
                    this.$element.on(eventIn | 
| 1138 | 
            +
                    this.$element.on(eventIn  + '.' + this.type, this.options.selector, $.proxy(this.enter, this))
         | 
| 1132 1139 | 
             
                    this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this))
         | 
| 1133 1140 | 
             
                  }
         | 
| 1134 1141 | 
             
                }
         | 
| @@ -1155,16 +1162,20 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 1155 1162 | 
             
                return options
         | 
| 1156 1163 | 
             
              }
         | 
| 1157 1164 |  | 
| 1158 | 
            -
              Tooltip.prototype. | 
| 1159 | 
            -
                var defaults = this.getDefaults()
         | 
| 1165 | 
            +
              Tooltip.prototype.getDelegateOptions = function () {
         | 
| 1160 1166 | 
             
                var options  = {}
         | 
| 1167 | 
            +
                var defaults = this.getDefaults()
         | 
| 1161 1168 |  | 
| 1162 1169 | 
             
                this._options && $.each(this._options, function (key, value) {
         | 
| 1163 1170 | 
             
                  if (defaults[key] != value) options[key] = value
         | 
| 1164 1171 | 
             
                })
         | 
| 1165 1172 |  | 
| 1173 | 
            +
                return options
         | 
| 1174 | 
            +
              }
         | 
| 1175 | 
            +
             | 
| 1176 | 
            +
              Tooltip.prototype.enter = function (obj) {
         | 
| 1166 1177 | 
             
                var self = obj instanceof this.constructor ?
         | 
| 1167 | 
            -
                  obj : $(obj.currentTarget)[this.type]( | 
| 1178 | 
            +
                  obj : $(obj.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type)
         | 
| 1168 1179 |  | 
| 1169 1180 | 
             
                clearTimeout(self.timeout)
         | 
| 1170 1181 |  | 
| @@ -1178,7 +1189,7 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 1178 1189 |  | 
| 1179 1190 | 
             
              Tooltip.prototype.leave = function (obj) {
         | 
| 1180 1191 | 
             
                var self = obj instanceof this.constructor ?
         | 
| 1181 | 
            -
                  obj : $(obj.currentTarget)[this.type](this. | 
| 1192 | 
            +
                  obj : $(obj.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type)
         | 
| 1182 1193 |  | 
| 1183 1194 | 
             
                clearTimeout(self.timeout)
         | 
| 1184 1195 |  | 
| @@ -1243,12 +1254,9 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 1243 1254 | 
             
                      .addClass(placement)
         | 
| 1244 1255 | 
             
                  }
         | 
| 1245 1256 |  | 
| 1246 | 
            -
                  var  | 
| 1247 | 
            -
                           placement == 'top'    ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2  } :
         | 
| 1248 | 
            -
                           placement == 'left'   ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } :
         | 
| 1249 | 
            -
                        /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width   }
         | 
| 1257 | 
            +
                  var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight)
         | 
| 1250 1258 |  | 
| 1251 | 
            -
                  this.applyPlacement( | 
| 1259 | 
            +
                  this.applyPlacement(calculatedOffset, placement)
         | 
| 1252 1260 | 
             
                  this.$element.trigger('shown.bs.' + this.type)
         | 
| 1253 1261 | 
             
                }
         | 
| 1254 1262 | 
             
              }
         | 
| @@ -1260,25 +1268,33 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 1260 1268 | 
             
                var height = $tip[0].offsetHeight
         | 
| 1261 1269 |  | 
| 1262 1270 | 
             
                // manually read margins because getBoundingClientRect includes difference
         | 
| 1263 | 
            -
                 | 
| 1264 | 
            -
                 | 
| 1271 | 
            +
                var marginTop = parseInt($tip.css('margin-top'), 10)
         | 
| 1272 | 
            +
                var marginLeft = parseInt($tip.css('margin-left'), 10)
         | 
| 1273 | 
            +
             | 
| 1274 | 
            +
                // we must check for NaN for ie 8/9
         | 
| 1275 | 
            +
                if (isNaN(marginTop))  marginTop  = 0
         | 
| 1276 | 
            +
                if (isNaN(marginLeft)) marginLeft = 0
         | 
| 1277 | 
            +
             | 
| 1278 | 
            +
                offset.top  = offset.top  + marginTop
         | 
| 1279 | 
            +
                offset.left = offset.left + marginLeft
         | 
| 1265 1280 |  | 
| 1266 1281 | 
             
                $tip
         | 
| 1267 1282 | 
             
                  .offset(offset)
         | 
| 1268 1283 | 
             
                  .addClass('in')
         | 
| 1269 1284 |  | 
| 1285 | 
            +
                // check to see if placing tip in new offset caused the tip to resize itself
         | 
| 1270 1286 | 
             
                var actualWidth  = $tip[0].offsetWidth
         | 
| 1271 1287 | 
             
                var actualHeight = $tip[0].offsetHeight
         | 
| 1272 1288 |  | 
| 1273 1289 | 
             
                if (placement == 'top' && actualHeight != height) {
         | 
| 1274 1290 | 
             
                  replace = true
         | 
| 1275 | 
            -
                  offset.top | 
| 1291 | 
            +
                  offset.top = offset.top + height - actualHeight
         | 
| 1276 1292 | 
             
                }
         | 
| 1277 1293 |  | 
| 1278 | 
            -
                if ( | 
| 1294 | 
            +
                if (/bottom|top/.test(placement)) {
         | 
| 1279 1295 | 
             
                  var delta = 0
         | 
| 1280 1296 |  | 
| 1281 | 
            -
                  if (offset.left < 0){
         | 
| 1297 | 
            +
                  if (offset.left < 0) {
         | 
| 1282 1298 | 
             
                    delta       = offset.left * -2
         | 
| 1283 1299 | 
             
                    offset.left = 0
         | 
| 1284 1300 |  | 
| @@ -1313,6 +1329,8 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 1313 1329 | 
             
                var $tip = this.tip()
         | 
| 1314 1330 | 
             
                var e    = $.Event('hide.bs.' + this.type)
         | 
| 1315 1331 |  | 
| 1332 | 
            +
                function complete() { $tip.detach() }
         | 
| 1333 | 
            +
             | 
| 1316 1334 | 
             
                this.$element.trigger(e)
         | 
| 1317 1335 |  | 
| 1318 1336 | 
             
                if (e.isDefaultPrevented()) return
         | 
| @@ -1321,9 +1339,9 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 1321 1339 |  | 
| 1322 1340 | 
             
                $.support.transition && this.$tip.hasClass('fade') ?
         | 
| 1323 1341 | 
             
                  $tip
         | 
| 1324 | 
            -
                    .one($.support.transition.end,  | 
| 1342 | 
            +
                    .one($.support.transition.end, complete)
         | 
| 1325 1343 | 
             
                    .emulateTransitionEnd(150) :
         | 
| 1326 | 
            -
                   | 
| 1344 | 
            +
                  complete()
         | 
| 1327 1345 |  | 
| 1328 1346 | 
             
                this.$element.trigger('hidden.bs.' + this.type)
         | 
| 1329 1347 |  | 
| @@ -1349,6 +1367,13 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 1349 1367 | 
             
                }, this.$element.offset())
         | 
| 1350 1368 | 
             
              }
         | 
| 1351 1369 |  | 
| 1370 | 
            +
              Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) {
         | 
| 1371 | 
            +
                return placement == 'bottom' ? { top: pos.top + pos.height,   left: pos.left + pos.width / 2 - actualWidth / 2  } :
         | 
| 1372 | 
            +
                       placement == 'top'    ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2  } :
         | 
| 1373 | 
            +
                       placement == 'left'   ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } :
         | 
| 1374 | 
            +
                    /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width   }
         | 
| 1375 | 
            +
              }
         | 
| 1376 | 
            +
             | 
| 1352 1377 | 
             
              Tooltip.prototype.getTitle = function () {
         | 
| 1353 1378 | 
             
                var title
         | 
| 1354 1379 | 
             
                var $e = this.$element
         | 
| @@ -1364,8 +1389,8 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 1364 1389 | 
             
                return this.$tip = this.$tip || $(this.options.template)
         | 
| 1365 1390 | 
             
              }
         | 
| 1366 1391 |  | 
| 1367 | 
            -
              Tooltip.prototype.arrow =function(){
         | 
| 1368 | 
            -
                return this.$arrow = this.$arrow || this.tip().find( | 
| 1392 | 
            +
              Tooltip.prototype.arrow = function () {
         | 
| 1393 | 
            +
                return this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow')
         | 
| 1369 1394 | 
             
              }
         | 
| 1370 1395 |  | 
| 1371 1396 | 
             
              Tooltip.prototype.validate = function () {
         | 
| @@ -1389,7 +1414,7 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 1389 1414 | 
             
              }
         | 
| 1390 1415 |  | 
| 1391 1416 | 
             
              Tooltip.prototype.toggle = function (e) {
         | 
| 1392 | 
            -
                var self = e ? $(e.currentTarget)[this.type](this. | 
| 1417 | 
            +
                var self = e ? $(e.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type) : this
         | 
| 1393 1418 | 
             
                self.tip().hasClass('in') ? self.leave(self) : self.enter(self)
         | 
| 1394 1419 | 
             
              }
         | 
| 1395 1420 |  | 
| @@ -1487,7 +1512,9 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 1487 1512 |  | 
| 1488 1513 | 
             
                $tip.removeClass('fade top bottom left right in')
         | 
| 1489 1514 |  | 
| 1490 | 
            -
                 | 
| 1515 | 
            +
                // IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do
         | 
| 1516 | 
            +
                // this manually by checking the contents.
         | 
| 1517 | 
            +
                if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide()
         | 
| 1491 1518 | 
             
              }
         | 
| 1492 1519 |  | 
| 1493 1520 | 
             
              Popover.prototype.hasContent = function () {
         | 
| @@ -1504,15 +1531,15 @@ if (!jQuery) { throw new Error("Bootstrap requires jQuery") } | |
| 1504 1531 | 
             
                        o.content)
         | 
| 1505 1532 | 
             
              }
         | 
| 1506 1533 |  | 
| 1534 | 
            +
              Popover.prototype.arrow = function () {
         | 
| 1535 | 
            +
                return this.$arrow = this.$arrow || this.tip().find('.arrow')
         | 
| 1536 | 
            +
              }
         | 
| 1537 | 
            +
             | 
| 1507 1538 | 
             
              Popover.prototype.tip = function () {
         | 
| 1508 1539 | 
             
                if (!this.$tip) this.$tip = $(this.options.template)
         | 
| 1509 1540 | 
             
                return this.$tip
         | 
| 1510 1541 | 
             
              }
         | 
| 1511 1542 |  | 
| 1512 | 
            -
              Popover.prototype.destroy = function () {
         | 
| 1513 | 
            -
                this.hide().$element.off('.' + this.type).removeData(this.type)
         | 
| 1514 | 
            -
              }
         | 
| 1515 | 
            -
             | 
| 1516 1543 |  | 
| 1517 1544 | 
             
              // POPOVER PLUGIN DEFINITION
         | 
| 1518 1545 | 
             
              // =========================
         | 
| @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            /* bootstrap-base-overrides.css */
         | 
| 2 2 | 
             
            /* These overrides come after bootstrap.css */
         | 
| 3 3 |  | 
| 4 | 
            -
            body { padding-top:  | 
| 4 | 
            +
            body { padding-top: 70px; padding-bottom: 90px; }
         | 
| 5 5 |  | 
| 6 6 | 
             
            /* Skinnier titles */
         | 
| 7 7 |  | 
| @@ -52,7 +52,11 @@ dt, dd { | |
| 52 52 |  | 
| 53 53 | 
             
            /* Make sure datepicker shows up ontop of bootstrap modals */
         | 
| 54 54 | 
             
            .datepicker {
         | 
| 55 | 
            -
              z-index: 10000 !important | 
| 55 | 
            +
              z-index: 10000 !important;
         | 
| 56 | 
            +
            }
         | 
| 57 | 
            +
             | 
| 58 | 
            +
            .datepicker-dropdown {
         | 
| 59 | 
            +
              padding: 4px;
         | 
| 56 60 | 
             
            }
         | 
| 57 61 |  | 
| 58 62 | 
             
            /* Make sure some text is always veiwable in the form control */
         | 
| @@ -99,40 +103,6 @@ dt, dd { | |
| 99 103 | 
             
              border-color: #c9302c;
         | 
| 100 104 | 
             
            }
         | 
| 101 105 |  | 
| 102 | 
            -
            .btn-cancel {
         | 
| 103 | 
            -
              color:  #777;
         | 
| 104 | 
            -
              background-color: #ededed;;
         | 
| 105 | 
            -
            }
         | 
| 106 | 
            -
             | 
| 107 | 
            -
            .btn-cancel:hover,
         | 
| 108 | 
            -
            .btn-cancel:focus,
         | 
| 109 | 
            -
            .btn-cancel:active,
         | 
| 110 | 
            -
            .btn-cancel.active,
         | 
| 111 | 
            -
            .btn-cancel.disabled,
         | 
| 112 | 
            -
            .btn-cancel[disabled] {
         | 
| 113 | 
            -
              color: #fff;
         | 
| 114 | 
            -
              background-color: #777;
         | 
| 115 | 
            -
              border-color: #777;
         | 
| 116 | 
            -
            }
         | 
| 117 | 
            -
             | 
| 118 | 
            -
             | 
| 119 | 
            -
            .btn-cancel-inverse {
         | 
| 120 | 
            -
              border: 1px solid #ededed;
         | 
| 121 | 
            -
              color:  #777;
         | 
| 122 | 
            -
              background-color: white;
         | 
| 123 | 
            -
            }
         | 
| 124 | 
            -
             | 
| 125 | 
            -
            .btn-cancel-inverse:hover,
         | 
| 126 | 
            -
            .btn-cancel-inverse:focus,
         | 
| 127 | 
            -
            .btn-cancel-inverse:active,
         | 
| 128 | 
            -
            .btn-cancel-inverse.active,
         | 
| 129 | 
            -
            .btn-cancel-inverse.disabled,
         | 
| 130 | 
            -
            .btn-cancel-inverse[disabled] {
         | 
| 131 | 
            -
              color: #fff;
         | 
| 132 | 
            -
              background-color: #777;
         | 
| 133 | 
            -
              border-color: #777;
         | 
| 134 | 
            -
            }
         | 
| 135 | 
            -
             | 
| 136 106 | 
             
            .form-inline select,
         | 
| 137 107 | 
             
            .form-inline input[type="text"],
         | 
| 138 108 | 
             
            .form-inline input[type="password"] {
         | 
| @@ -142,9 +112,3 @@ dt, dd { | |
| 142 112 | 
             
            .radio, .checkbox {
         | 
| 143 113 | 
             
              min-height: 35px;
         | 
| 144 114 | 
             
            }
         | 
| 145 | 
            -
             | 
| 146 | 
            -
            /* Make default active gray instead of black next to black to give more contrast between selected options */
         | 
| 147 | 
            -
            .btn.btn-default:active, .btn.active.btn-default {
         | 
| 148 | 
            -
              background-color: #ededed;
         | 
| 149 | 
            -
              color: #333333;
         | 
| 150 | 
            -
            }
         |