1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-09-20 00:11:35 +02:00
invoiceninja/public/built.public.js.map
Holger Lösken d36675b15b Use Elixir for asset management
- Set up Elixir for asset management
- CSS + JS will be handled via Elixir/Gulp in gulpfile.js
- Removed outdates public/js files
2016-07-20 08:29:45 +00:00

1 line
129 KiB
Plaintext

{"version":3,"sources":["bootstrap.js","bootstrap-combobox.js"],"names":["jQuery","Error","$","version","fn","jquery","split","transitionEnd","el","document","createElement","transEndEventNames","WebkitTransition","MozTransition","OTransition","transition","name","undefined","style","end","emulateTransitionEnd","duration","called","$el","this","one","callback","trigger","support","setTimeout","event","special","bsTransitionEnd","bindType","delegateType","handle","e","target","is","handleObj","handler","apply","arguments","Plugin","option","each","$this","data","Alert","call","dismiss","on","close","VERSION","TRANSITION_DURATION","prototype","removeElement","$parent","detach","remove","selector","attr","replace","preventDefault","length","closest","Event","isDefaultPrevented","removeClass","hasClass","old","alert","Constructor","noConflict","options","Button","toggle","setState","element","$element","extend","DEFAULTS","isLoading","loadingText","state","d","val","resetText","proxy","addClass","removeAttr","changed","$input","find","prop","toggleClass","button","$btn","test","type","Carousel","action","slide","to","interval","pause","cycle","$indicators","paused","sliding","$active","$items","keyboard","keydown","documentElement","wrap","tagName","which","prev","next","clearInterval","setInterval","getItemIndex","item","parent","children","index","getItemForDirection","direction","active","delta","activeIndex","itemIndex","eq","pos","that","$next","isCycling","fallback","relatedTarget","slideEvent","$nextIndicator","slidEvent","offsetWidth","join","carousel","clickHandler","href","$target","slideIndex","window","$carousel","getTargetFromTrigger","$trigger","Collapse","filter","id","transitioning","getParent","addAriaAndCollapsedClass","dimension","hasWidth","show","activesData","actives","startEvent","complete","scrollSize","camelCase","hide","offsetHeight","i","isOpen","collapse","clearMenus","backdrop","Dropdown","isActive","insertAfter","stopPropagation","desc","dropdown","_relatedTarget","Modal","$body","body","$backdrop","isShown","scrollbarWidth","remote","load","BACKDROP_TRANSITION_DURATION","checkScrollbar","setScrollbar","escape","resize","appendTo","scrollTop","adjustBackdrop","adjustDialog","enforceFocus","off","hideModal","has","handleUpdate","resetAdjustments","resetScrollbar","removeBackdrop","animate","doAnimate","prependTo","currentTarget","focus","callbackRemove","css","scrollHeight","modalIsOverflowing","clientHeight","paddingLeft","bodyIsOverflowing","paddingRight","measureScrollbar","bodyPad","parseInt","scrollDiv","className","append","clientWidth","removeChild","modal","showEvent","Tooltip","enabled","timeout","hoverState","init","animation","placement","template","title","delay","html","container","viewport","padding","getOptions","$viewport","triggers","eventIn","eventOut","enter","leave","_options","fixTitle","getDefaults","getDelegateOptions","defaults","key","value","obj","self","constructor","$tip","clearTimeout","hasContent","inDom","contains","ownerDocument","tip","tipId","getUID","setContent","autoToken","autoPlace","top","left","display","getPosition","actualWidth","actualHeight","orgPlacement","$container","containerDim","bottom","right","width","calculatedOffset","getCalculatedOffset","applyPlacement","prevHoverState","offset","height","marginTop","marginLeft","isNaN","setOffset","using","props","Math","round","getViewportAdjustedDelta","isVertical","arrowDelta","arrowOffsetPosition","replaceArrow","isHorizontal","arrow","getTitle","$e","isBody","elRect","getBoundingClientRect","elOffset","scroll","outerDims","viewportPadding","viewportDimensions","topEdgeOffset","bottomEdgeOffset","leftEdgeOffset","rightEdgeOffset","o","prefix","random","getElementById","$arrow","enable","disable","toggleEnabled","destroy","removeData","tooltip","Popover","content","getContent","popover","ScrollSpy","process","$scrollElement","offsets","targets","activeTarget","refresh","getScrollHeight","max","offsetMethod","offsetBase","isWindow","map","$href","sort","a","b","push","maxScroll","activate","clear","parents","parentsUntil","scrollspy","$spy","Tab","$ul","$previous","hideEvent","tab","Affix","checkPosition","checkPositionWithEventLoop","affixed","unpin","pinnedOffset","RESET","getState","offsetTop","offsetBottom","position","targetHeight","initializing","colliderTop","colliderHeight","getPinnedOffset","affix","affixType","Combobox","combobox","$source","setup","$button","$menu","menu","matcher","sorter","highlighter","shown","selected","transferAttributes","listen","before","disabled","parse","source","selectedValue","placeholder","text","appendId","select","updater","scrollSafety","blur","lookup","query","items","grep","render","slice","bsVersion","toLowerCase","indexOf","beginswith","caseSensitive","caseInsensitive","shift","concat","RegExp","$1","match","first","last","clearTarget","triggerChange","clearElement","keypress","keyup","eventSupported","click","mouseenter","mouseleave","eventName","isSupported","setAttribute","move","keyCode","fixMenuScroll","menuHeight","suppressKeyPressRepeat","inArray","focused","mousedover"],"mappings":"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","file":"built.public.js","sourcesContent":["/*!\n * Bootstrap v3.3.1 (http://getbootstrap.com)\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\nif (typeof jQuery === 'undefined') {\n throw new Error('Bootstrap\\'s JavaScript requires jQuery')\n}\n\n+function ($) {\n var version = $.fn.jquery.split(' ')[0].split('.')\n if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1)) {\n throw new Error('Bootstrap\\'s JavaScript requires jQuery version 1.9.1 or higher')\n }\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: transition.js v3.3.1\n * http://getbootstrap.com/javascript/#transitions\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/)\n // ============================================================\n\n function transitionEnd() {\n var el = document.createElement('bootstrap')\n\n var transEndEventNames = {\n WebkitTransition : 'webkitTransitionEnd',\n MozTransition : 'transitionend',\n OTransition : 'oTransitionEnd otransitionend',\n transition : 'transitionend'\n }\n\n for (var name in transEndEventNames) {\n if (el.style[name] !== undefined) {\n return { end: transEndEventNames[name] }\n }\n }\n\n return false // explicit for ie8 ( ._.)\n }\n\n // http://blog.alexmaccaw.com/css-transitions\n $.fn.emulateTransitionEnd = function (duration) {\n var called = false\n var $el = this\n $(this).one('bsTransitionEnd', function () { called = true })\n var callback = function () { if (!called) $($el).trigger($.support.transition.end) }\n setTimeout(callback, duration)\n return this\n }\n\n $(function () {\n $.support.transition = transitionEnd()\n\n if (!$.support.transition) return\n\n $.event.special.bsTransitionEnd = {\n bindType: $.support.transition.end,\n delegateType: $.support.transition.end,\n handle: function (e) {\n if ($(e.target).is(this)) return e.handleObj.handler.apply(this, arguments)\n }\n }\n })\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: alert.js v3.3.1\n * http://getbootstrap.com/javascript/#alerts\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // ALERT CLASS DEFINITION\n // ======================\n\n var dismiss = '[data-dismiss=\"alert\"]'\n var Alert = function (el) {\n $(el).on('click', dismiss, this.close)\n }\n\n Alert.VERSION = '3.3.1'\n\n Alert.TRANSITION_DURATION = 150\n\n Alert.prototype.close = function (e) {\n var $this = $(this)\n var selector = $this.attr('data-target')\n\n if (!selector) {\n selector = $this.attr('href')\n selector = selector && selector.replace(/.*(?=#[^\\s]*$)/, '') // strip for ie7\n }\n\n var $parent = $(selector)\n\n if (e) e.preventDefault()\n\n if (!$parent.length) {\n $parent = $this.closest('.alert')\n }\n\n $parent.trigger(e = $.Event('close.bs.alert'))\n\n if (e.isDefaultPrevented()) return\n\n $parent.removeClass('in')\n\n function removeElement() {\n // detach from parent, fire event then clean up data\n $parent.detach().trigger('closed.bs.alert').remove()\n }\n\n $.support.transition && $parent.hasClass('fade') ?\n $parent\n .one('bsTransitionEnd', removeElement)\n .emulateTransitionEnd(Alert.TRANSITION_DURATION) :\n removeElement()\n }\n\n\n // ALERT PLUGIN DEFINITION\n // =======================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.alert')\n\n if (!data) $this.data('bs.alert', (data = new Alert(this)))\n if (typeof option == 'string') data[option].call($this)\n })\n }\n\n var old = $.fn.alert\n\n $.fn.alert = Plugin\n $.fn.alert.Constructor = Alert\n\n\n // ALERT NO CONFLICT\n // =================\n\n $.fn.alert.noConflict = function () {\n $.fn.alert = old\n return this\n }\n\n\n // ALERT DATA-API\n // ==============\n\n $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close)\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: button.js v3.3.1\n * http://getbootstrap.com/javascript/#buttons\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // BUTTON PUBLIC CLASS DEFINITION\n // ==============================\n\n var Button = function (element, options) {\n this.$element = $(element)\n this.options = $.extend({}, Button.DEFAULTS, options)\n this.isLoading = false\n }\n\n Button.VERSION = '3.3.1'\n\n Button.DEFAULTS = {\n loadingText: 'loading...'\n }\n\n Button.prototype.setState = function (state) {\n var d = 'disabled'\n var $el = this.$element\n var val = $el.is('input') ? 'val' : 'html'\n var data = $el.data()\n\n state = state + 'Text'\n\n if (data.resetText == null) $el.data('resetText', $el[val]())\n\n // push to event loop to allow forms to submit\n setTimeout($.proxy(function () {\n $el[val](data[state] == null ? this.options[state] : data[state])\n\n if (state == 'loadingText') {\n this.isLoading = true\n $el.addClass(d).attr(d, d)\n } else if (this.isLoading) {\n this.isLoading = false\n $el.removeClass(d).removeAttr(d)\n }\n }, this), 0)\n }\n\n Button.prototype.toggle = function () {\n var changed = true\n var $parent = this.$element.closest('[data-toggle=\"buttons\"]')\n\n if ($parent.length) {\n var $input = this.$element.find('input')\n if ($input.prop('type') == 'radio') {\n if ($input.prop('checked') && this.$element.hasClass('active')) changed = false\n else $parent.find('.active').removeClass('active')\n }\n if (changed) $input.prop('checked', !this.$element.hasClass('active')).trigger('change')\n } else {\n this.$element.attr('aria-pressed', !this.$element.hasClass('active'))\n }\n\n if (changed) this.$element.toggleClass('active')\n }\n\n\n // BUTTON PLUGIN DEFINITION\n // ========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.button')\n var options = typeof option == 'object' && option\n\n if (!data) $this.data('bs.button', (data = new Button(this, options)))\n\n if (option == 'toggle') data.toggle()\n else if (option) data.setState(option)\n })\n }\n\n var old = $.fn.button\n\n $.fn.button = Plugin\n $.fn.button.Constructor = Button\n\n\n // BUTTON NO CONFLICT\n // ==================\n\n $.fn.button.noConflict = function () {\n $.fn.button = old\n return this\n }\n\n\n // BUTTON DATA-API\n // ===============\n\n $(document)\n .on('click.bs.button.data-api', '[data-toggle^=\"button\"]', function (e) {\n var $btn = $(e.target)\n if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')\n Plugin.call($btn, 'toggle')\n e.preventDefault()\n })\n .on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^=\"button\"]', function (e) {\n $(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type))\n })\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: carousel.js v3.3.1\n * http://getbootstrap.com/javascript/#carousel\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // CAROUSEL CLASS DEFINITION\n // =========================\n\n var Carousel = function (element, options) {\n this.$element = $(element)\n this.$indicators = this.$element.find('.carousel-indicators')\n this.options = options\n this.paused =\n this.sliding =\n this.interval =\n this.$active =\n this.$items = null\n\n this.options.keyboard && this.$element.on('keydown.bs.carousel', $.proxy(this.keydown, this))\n\n this.options.pause == 'hover' && !('ontouchstart' in document.documentElement) && this.$element\n .on('mouseenter.bs.carousel', $.proxy(this.pause, this))\n .on('mouseleave.bs.carousel', $.proxy(this.cycle, this))\n }\n\n Carousel.VERSION = '3.3.1'\n\n Carousel.TRANSITION_DURATION = 600\n\n Carousel.DEFAULTS = {\n interval: 5000,\n pause: 'hover',\n wrap: true,\n keyboard: true\n }\n\n Carousel.prototype.keydown = function (e) {\n if (/input|textarea/i.test(e.target.tagName)) return\n switch (e.which) {\n case 37: this.prev(); break\n case 39: this.next(); break\n default: return\n }\n\n e.preventDefault()\n }\n\n Carousel.prototype.cycle = function (e) {\n e || (this.paused = false)\n\n this.interval && clearInterval(this.interval)\n\n this.options.interval\n && !this.paused\n && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))\n\n return this\n }\n\n Carousel.prototype.getItemIndex = function (item) {\n this.$items = item.parent().children('.item')\n return this.$items.index(item || this.$active)\n }\n\n Carousel.prototype.getItemForDirection = function (direction, active) {\n var delta = direction == 'prev' ? -1 : 1\n var activeIndex = this.getItemIndex(active)\n var itemIndex = (activeIndex + delta) % this.$items.length\n return this.$items.eq(itemIndex)\n }\n\n Carousel.prototype.to = function (pos) {\n var that = this\n var activeIndex = this.getItemIndex(this.$active = this.$element.find('.item.active'))\n\n if (pos > (this.$items.length - 1) || pos < 0) return\n\n if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) // yes, \"slid\"\n if (activeIndex == pos) return this.pause().cycle()\n\n return this.slide(pos > activeIndex ? 'next' : 'prev', this.$items.eq(pos))\n }\n\n Carousel.prototype.pause = function (e) {\n e || (this.paused = true)\n\n if (this.$element.find('.next, .prev').length && $.support.transition) {\n this.$element.trigger($.support.transition.end)\n this.cycle(true)\n }\n\n this.interval = clearInterval(this.interval)\n\n return this\n }\n\n Carousel.prototype.next = function () {\n if (this.sliding) return\n return this.slide('next')\n }\n\n Carousel.prototype.prev = function () {\n if (this.sliding) return\n return this.slide('prev')\n }\n\n Carousel.prototype.slide = function (type, next) {\n var $active = this.$element.find('.item.active')\n var $next = next || this.getItemForDirection(type, $active)\n var isCycling = this.interval\n var direction = type == 'next' ? 'left' : 'right'\n var fallback = type == 'next' ? 'first' : 'last'\n var that = this\n\n if (!$next.length) {\n if (!this.options.wrap) return\n $next = this.$element.find('.item')[fallback]()\n }\n\n if ($next.hasClass('active')) return (this.sliding = false)\n\n var relatedTarget = $next[0]\n var slideEvent = $.Event('slide.bs.carousel', {\n relatedTarget: relatedTarget,\n direction: direction\n })\n this.$element.trigger(slideEvent)\n if (slideEvent.isDefaultPrevented()) return\n\n this.sliding = true\n\n isCycling && this.pause()\n\n if (this.$indicators.length) {\n this.$indicators.find('.active').removeClass('active')\n var $nextIndicator = $(this.$indicators.children()[this.getItemIndex($next)])\n $nextIndicator && $nextIndicator.addClass('active')\n }\n\n var slidEvent = $.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) // yes, \"slid\"\n if ($.support.transition && this.$element.hasClass('slide')) {\n $next.addClass(type)\n $next[0].offsetWidth // force reflow\n $active.addClass(direction)\n $next.addClass(direction)\n $active\n .one('bsTransitionEnd', function () {\n $next.removeClass([type, direction].join(' ')).addClass('active')\n $active.removeClass(['active', direction].join(' '))\n that.sliding = false\n setTimeout(function () {\n that.$element.trigger(slidEvent)\n }, 0)\n })\n .emulateTransitionEnd(Carousel.TRANSITION_DURATION)\n } else {\n $active.removeClass('active')\n $next.addClass('active')\n this.sliding = false\n this.$element.trigger(slidEvent)\n }\n\n isCycling && this.cycle()\n\n return this\n }\n\n\n // CAROUSEL PLUGIN DEFINITION\n // ==========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.carousel')\n var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option)\n var action = typeof option == 'string' ? option : options.slide\n\n if (!data) $this.data('bs.carousel', (data = new Carousel(this, options)))\n if (typeof option == 'number') data.to(option)\n else if (action) data[action]()\n else if (options.interval) data.pause().cycle()\n })\n }\n\n var old = $.fn.carousel\n\n $.fn.carousel = Plugin\n $.fn.carousel.Constructor = Carousel\n\n\n // CAROUSEL NO CONFLICT\n // ====================\n\n $.fn.carousel.noConflict = function () {\n $.fn.carousel = old\n return this\n }\n\n\n // CAROUSEL DATA-API\n // =================\n\n var clickHandler = function (e) {\n var href\n var $this = $(this)\n var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\\s]+$)/, '')) // strip for ie7\n if (!$target.hasClass('carousel')) return\n var options = $.extend({}, $target.data(), $this.data())\n var slideIndex = $this.attr('data-slide-to')\n if (slideIndex) options.interval = false\n\n Plugin.call($target, options)\n\n if (slideIndex) {\n $target.data('bs.carousel').to(slideIndex)\n }\n\n e.preventDefault()\n }\n\n $(document)\n .on('click.bs.carousel.data-api', '[data-slide]', clickHandler)\n .on('click.bs.carousel.data-api', '[data-slide-to]', clickHandler)\n\n $(window).on('load', function () {\n $('[data-ride=\"carousel\"]').each(function () {\n var $carousel = $(this)\n Plugin.call($carousel, $carousel.data())\n })\n })\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: collapse.js v3.3.1\n * http://getbootstrap.com/javascript/#collapse\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // COLLAPSE PUBLIC CLASS DEFINITION\n // ================================\n\n var Collapse = function (element, options) {\n this.$element = $(element)\n this.options = $.extend({}, Collapse.DEFAULTS, options)\n this.$trigger = $(this.options.trigger).filter('[href=\"#' + element.id + '\"], [data-target=\"#' + element.id + '\"]')\n this.transitioning = null\n\n if (this.options.parent) {\n this.$parent = this.getParent()\n } else {\n this.addAriaAndCollapsedClass(this.$element, this.$trigger)\n }\n\n if (this.options.toggle) this.toggle()\n }\n\n Collapse.VERSION = '3.3.1'\n\n Collapse.TRANSITION_DURATION = 350\n\n Collapse.DEFAULTS = {\n toggle: true,\n trigger: '[data-toggle=\"collapse\"]'\n }\n\n Collapse.prototype.dimension = function () {\n var hasWidth = this.$element.hasClass('width')\n return hasWidth ? 'width' : 'height'\n }\n\n Collapse.prototype.show = function () {\n if (this.transitioning || this.$element.hasClass('in')) return\n\n var activesData\n var actives = this.$parent && this.$parent.find('> .panel').children('.in, .collapsing')\n\n if (actives && actives.length) {\n activesData = actives.data('bs.collapse')\n if (activesData && activesData.transitioning) return\n }\n\n var startEvent = $.Event('show.bs.collapse')\n this.$element.trigger(startEvent)\n if (startEvent.isDefaultPrevented()) return\n\n if (actives && actives.length) {\n Plugin.call(actives, 'hide')\n activesData || actives.data('bs.collapse', null)\n }\n\n var dimension = this.dimension()\n\n this.$element\n .removeClass('collapse')\n .addClass('collapsing')[dimension](0)\n .attr('aria-expanded', true)\n\n this.$trigger\n .removeClass('collapsed')\n .attr('aria-expanded', true)\n\n this.transitioning = 1\n\n var complete = function () {\n this.$element\n .removeClass('collapsing')\n .addClass('collapse in')[dimension]('')\n this.transitioning = 0\n this.$element\n .trigger('shown.bs.collapse')\n }\n\n if (!$.support.transition) return complete.call(this)\n\n var scrollSize = $.camelCase(['scroll', dimension].join('-'))\n\n this.$element\n .one('bsTransitionEnd', $.proxy(complete, this))\n .emulateTransitionEnd(Collapse.TRANSITION_DURATION)[dimension](this.$element[0][scrollSize])\n }\n\n Collapse.prototype.hide = function () {\n if (this.transitioning || !this.$element.hasClass('in')) return\n\n var startEvent = $.Event('hide.bs.collapse')\n this.$element.trigger(startEvent)\n if (startEvent.isDefaultPrevented()) return\n\n var dimension = this.dimension()\n\n this.$element[dimension](this.$element[dimension]())[0].offsetHeight\n\n this.$element\n .addClass('collapsing')\n .removeClass('collapse in')\n .attr('aria-expanded', false)\n\n this.$trigger\n .addClass('collapsed')\n .attr('aria-expanded', false)\n\n this.transitioning = 1\n\n var complete = function () {\n this.transitioning = 0\n this.$element\n .removeClass('collapsing')\n .addClass('collapse')\n .trigger('hidden.bs.collapse')\n }\n\n if (!$.support.transition) return complete.call(this)\n\n this.$element\n [dimension](0)\n .one('bsTransitionEnd', $.proxy(complete, this))\n .emulateTransitionEnd(Collapse.TRANSITION_DURATION)\n }\n\n Collapse.prototype.toggle = function () {\n this[this.$element.hasClass('in') ? 'hide' : 'show']()\n }\n\n Collapse.prototype.getParent = function () {\n return $(this.options.parent)\n .find('[data-toggle=\"collapse\"][data-parent=\"' + this.options.parent + '\"]')\n .each($.proxy(function (i, element) {\n var $element = $(element)\n this.addAriaAndCollapsedClass(getTargetFromTrigger($element), $element)\n }, this))\n .end()\n }\n\n Collapse.prototype.addAriaAndCollapsedClass = function ($element, $trigger) {\n var isOpen = $element.hasClass('in')\n\n $element.attr('aria-expanded', isOpen)\n $trigger\n .toggleClass('collapsed', !isOpen)\n .attr('aria-expanded', isOpen)\n }\n\n function getTargetFromTrigger($trigger) {\n var href\n var target = $trigger.attr('data-target')\n || (href = $trigger.attr('href')) && href.replace(/.*(?=#[^\\s]+$)/, '') // strip for ie7\n\n return $(target)\n }\n\n\n // COLLAPSE PLUGIN DEFINITION\n // ==========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.collapse')\n var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option)\n\n if (!data && options.toggle && option == 'show') options.toggle = false\n if (!data) $this.data('bs.collapse', (data = new Collapse(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n var old = $.fn.collapse\n\n $.fn.collapse = Plugin\n $.fn.collapse.Constructor = Collapse\n\n\n // COLLAPSE NO CONFLICT\n // ====================\n\n $.fn.collapse.noConflict = function () {\n $.fn.collapse = old\n return this\n }\n\n\n // COLLAPSE DATA-API\n // =================\n\n $(document).on('click.bs.collapse.data-api', '[data-toggle=\"collapse\"]', function (e) {\n var $this = $(this)\n\n if (!$this.attr('data-target')) e.preventDefault()\n\n var $target = getTargetFromTrigger($this)\n var data = $target.data('bs.collapse')\n var option = data ? 'toggle' : $.extend({}, $this.data(), { trigger: this })\n\n Plugin.call($target, option)\n })\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: dropdown.js v3.3.1\n * http://getbootstrap.com/javascript/#dropdowns\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // DROPDOWN CLASS DEFINITION\n // =========================\n\n var backdrop = '.dropdown-backdrop'\n var toggle = '[data-toggle=\"dropdown\"]'\n var Dropdown = function (element) {\n $(element).on('click.bs.dropdown', this.toggle)\n }\n\n Dropdown.VERSION = '3.3.1'\n\n Dropdown.prototype.toggle = function (e) {\n var $this = $(this)\n\n if ($this.is('.disabled, :disabled')) return\n\n var $parent = getParent($this)\n var isActive = $parent.hasClass('open')\n\n clearMenus()\n\n if (!isActive) {\n if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {\n // if mobile we use a backdrop because click events don't delegate\n $('<div class=\"dropdown-backdrop\"/>').insertAfter($(this)).on('click', clearMenus)\n }\n\n var relatedTarget = { relatedTarget: this }\n $parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget))\n\n if (e.isDefaultPrevented()) return\n\n $this\n .trigger('focus')\n .attr('aria-expanded', 'true')\n\n $parent\n .toggleClass('open')\n .trigger('shown.bs.dropdown', relatedTarget)\n }\n\n return false\n }\n\n Dropdown.prototype.keydown = function (e) {\n if (!/(38|40|27|32)/.test(e.which) || /input|textarea/i.test(e.target.tagName)) return\n\n var $this = $(this)\n\n e.preventDefault()\n e.stopPropagation()\n\n if ($this.is('.disabled, :disabled')) return\n\n var $parent = getParent($this)\n var isActive = $parent.hasClass('open')\n\n if ((!isActive && e.which != 27) || (isActive && e.which == 27)) {\n if (e.which == 27) $parent.find(toggle).trigger('focus')\n return $this.trigger('click')\n }\n\n var desc = ' li:not(.divider):visible a'\n var $items = $parent.find('[role=\"menu\"]' + desc + ', [role=\"listbox\"]' + desc)\n\n if (!$items.length) return\n\n var index = $items.index(e.target)\n\n if (e.which == 38 && index > 0) index-- // up\n if (e.which == 40 && index < $items.length - 1) index++ // down\n if (!~index) index = 0\n\n $items.eq(index).trigger('focus')\n }\n\n function clearMenus(e) {\n if (e && e.which === 3) return\n $(backdrop).remove()\n $(toggle).each(function () {\n var $this = $(this)\n var $parent = getParent($this)\n var relatedTarget = { relatedTarget: this }\n\n if (!$parent.hasClass('open')) return\n\n $parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget))\n\n if (e.isDefaultPrevented()) return\n\n $this.attr('aria-expanded', 'false')\n $parent.removeClass('open').trigger('hidden.bs.dropdown', relatedTarget)\n })\n }\n\n function getParent($this) {\n var selector = $this.attr('data-target')\n\n if (!selector) {\n selector = $this.attr('href')\n selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\\s]*$)/, '') // strip for ie7\n }\n\n var $parent = selector && $(selector)\n\n return $parent && $parent.length ? $parent : $this.parent()\n }\n\n\n // DROPDOWN PLUGIN DEFINITION\n // ==========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.dropdown')\n\n if (!data) $this.data('bs.dropdown', (data = new Dropdown(this)))\n if (typeof option == 'string') data[option].call($this)\n })\n }\n\n var old = $.fn.dropdown\n\n $.fn.dropdown = Plugin\n $.fn.dropdown.Constructor = Dropdown\n\n\n // DROPDOWN NO CONFLICT\n // ====================\n\n $.fn.dropdown.noConflict = function () {\n $.fn.dropdown = old\n return this\n }\n\n\n // APPLY TO STANDARD DROPDOWN ELEMENTS\n // ===================================\n\n $(document)\n .on('click.bs.dropdown.data-api', clearMenus)\n .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })\n .on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle)\n .on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown)\n .on('keydown.bs.dropdown.data-api', '[role=\"menu\"]', Dropdown.prototype.keydown)\n .on('keydown.bs.dropdown.data-api', '[role=\"listbox\"]', Dropdown.prototype.keydown)\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: modal.js v3.3.1\n * http://getbootstrap.com/javascript/#modals\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // MODAL CLASS DEFINITION\n // ======================\n\n var Modal = function (element, options) {\n this.options = options\n this.$body = $(document.body)\n this.$element = $(element)\n this.$backdrop =\n this.isShown = null\n this.scrollbarWidth = 0\n\n if (this.options.remote) {\n this.$element\n .find('.modal-content')\n .load(this.options.remote, $.proxy(function () {\n this.$element.trigger('loaded.bs.modal')\n }, this))\n }\n }\n\n Modal.VERSION = '3.3.1'\n\n Modal.TRANSITION_DURATION = 300\n Modal.BACKDROP_TRANSITION_DURATION = 150\n\n Modal.DEFAULTS = {\n backdrop: true,\n keyboard: true,\n show: true\n }\n\n Modal.prototype.toggle = function (_relatedTarget) {\n return this.isShown ? this.hide() : this.show(_relatedTarget)\n }\n\n Modal.prototype.show = function (_relatedTarget) {\n var that = this\n var e = $.Event('show.bs.modal', { relatedTarget: _relatedTarget })\n\n this.$element.trigger(e)\n\n if (this.isShown || e.isDefaultPrevented()) return\n\n this.isShown = true\n\n this.checkScrollbar()\n this.setScrollbar()\n this.$body.addClass('modal-open')\n\n this.escape()\n this.resize()\n\n this.$element.on('click.dismiss.bs.modal', '[data-dismiss=\"modal\"]', $.proxy(this.hide, this))\n\n this.backdrop(function () {\n var transition = $.support.transition && that.$element.hasClass('fade')\n\n if (!that.$element.parent().length) {\n that.$element.appendTo(that.$body) // don't move modals dom position\n }\n\n that.$element\n .show()\n .scrollTop(0)\n\n if (that.options.backdrop) that.adjustBackdrop()\n that.adjustDialog()\n\n if (transition) {\n that.$element[0].offsetWidth // force reflow\n }\n\n that.$element\n .addClass('in')\n .attr('aria-hidden', false)\n\n that.enforceFocus()\n\n var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget })\n\n transition ?\n that.$element.find('.modal-dialog') // wait for modal to slide in\n .one('bsTransitionEnd', function () {\n that.$element.trigger('focus').trigger(e)\n })\n .emulateTransitionEnd(Modal.TRANSITION_DURATION) :\n that.$element.trigger('focus').trigger(e)\n })\n }\n\n Modal.prototype.hide = function (e) {\n if (e) e.preventDefault()\n\n e = $.Event('hide.bs.modal')\n\n this.$element.trigger(e)\n\n if (!this.isShown || e.isDefaultPrevented()) return\n\n this.isShown = false\n\n this.escape()\n this.resize()\n\n $(document).off('focusin.bs.modal')\n\n this.$element\n .removeClass('in')\n .attr('aria-hidden', true)\n .off('click.dismiss.bs.modal')\n\n $.support.transition && this.$element.hasClass('fade') ?\n this.$element\n .one('bsTransitionEnd', $.proxy(this.hideModal, this))\n .emulateTransitionEnd(Modal.TRANSITION_DURATION) :\n this.hideModal()\n }\n\n Modal.prototype.enforceFocus = function () {\n $(document)\n .off('focusin.bs.modal') // guard against infinite focus loop\n .on('focusin.bs.modal', $.proxy(function (e) {\n if (this.$element[0] !== e.target && !this.$element.has(e.target).length) {\n this.$element.trigger('focus')\n }\n }, this))\n }\n\n Modal.prototype.escape = function () {\n if (this.isShown && this.options.keyboard) {\n this.$element.on('keydown.dismiss.bs.modal', $.proxy(function (e) {\n e.which == 27 && this.hide()\n }, this))\n } else if (!this.isShown) {\n this.$element.off('keydown.dismiss.bs.modal')\n }\n }\n\n Modal.prototype.resize = function () {\n if (this.isShown) {\n $(window).on('resize.bs.modal', $.proxy(this.handleUpdate, this))\n } else {\n $(window).off('resize.bs.modal')\n }\n }\n\n Modal.prototype.hideModal = function () {\n var that = this\n this.$element.hide()\n this.backdrop(function () {\n that.$body.removeClass('modal-open')\n that.resetAdjustments()\n that.resetScrollbar()\n that.$element.trigger('hidden.bs.modal')\n })\n }\n\n Modal.prototype.removeBackdrop = function () {\n this.$backdrop && this.$backdrop.remove()\n this.$backdrop = null\n }\n\n Modal.prototype.backdrop = function (callback) {\n var that = this\n var animate = this.$element.hasClass('fade') ? 'fade' : ''\n\n if (this.isShown && this.options.backdrop) {\n var doAnimate = $.support.transition && animate\n\n this.$backdrop = $('<div class=\"modal-backdrop ' + animate + '\" />')\n .prependTo(this.$element)\n .on('click.dismiss.bs.modal', $.proxy(function (e) {\n if (e.target !== e.currentTarget) return\n this.options.backdrop == 'static'\n ? this.$element[0].focus.call(this.$element[0])\n : this.hide.call(this)\n }, this))\n\n if (doAnimate) this.$backdrop[0].offsetWidth // force reflow\n\n this.$backdrop.addClass('in')\n\n if (!callback) return\n\n doAnimate ?\n this.$backdrop\n .one('bsTransitionEnd', callback)\n .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) :\n callback()\n\n } else if (!this.isShown && this.$backdrop) {\n this.$backdrop.removeClass('in')\n\n var callbackRemove = function () {\n that.removeBackdrop()\n callback && callback()\n }\n $.support.transition && this.$element.hasClass('fade') ?\n this.$backdrop\n .one('bsTransitionEnd', callbackRemove)\n .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) :\n callbackRemove()\n\n } else if (callback) {\n callback()\n }\n }\n\n // these following methods are used to handle overflowing modals\n\n Modal.prototype.handleUpdate = function () {\n if (this.options.backdrop) this.adjustBackdrop()\n this.adjustDialog()\n }\n\n Modal.prototype.adjustBackdrop = function () {\n this.$backdrop\n .css('height', 0)\n .css('height', this.$element[0].scrollHeight)\n }\n\n Modal.prototype.adjustDialog = function () {\n var modalIsOverflowing = this.$element[0].scrollHeight > document.documentElement.clientHeight\n\n this.$element.css({\n paddingLeft: !this.bodyIsOverflowing && modalIsOverflowing ? this.scrollbarWidth : '',\n paddingRight: this.bodyIsOverflowing && !modalIsOverflowing ? this.scrollbarWidth : ''\n })\n }\n\n Modal.prototype.resetAdjustments = function () {\n this.$element.css({\n paddingLeft: '',\n paddingRight: ''\n })\n }\n\n Modal.prototype.checkScrollbar = function () {\n this.bodyIsOverflowing = document.body.scrollHeight > document.documentElement.clientHeight\n this.scrollbarWidth = this.measureScrollbar()\n }\n\n Modal.prototype.setScrollbar = function () {\n var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10)\n if (this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad + this.scrollbarWidth)\n }\n\n Modal.prototype.resetScrollbar = function () {\n this.$body.css('padding-right', '')\n }\n\n Modal.prototype.measureScrollbar = function () { // thx walsh\n var scrollDiv = document.createElement('div')\n scrollDiv.className = 'modal-scrollbar-measure'\n this.$body.append(scrollDiv)\n var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth\n this.$body[0].removeChild(scrollDiv)\n return scrollbarWidth\n }\n\n\n // MODAL PLUGIN DEFINITION\n // =======================\n\n function Plugin(option, _relatedTarget) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.modal')\n var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option)\n\n if (!data) $this.data('bs.modal', (data = new Modal(this, options)))\n if (typeof option == 'string') data[option](_relatedTarget)\n else if (options.show) data.show(_relatedTarget)\n })\n }\n\n var old = $.fn.modal\n\n $.fn.modal = Plugin\n $.fn.modal.Constructor = Modal\n\n\n // MODAL NO CONFLICT\n // =================\n\n $.fn.modal.noConflict = function () {\n $.fn.modal = old\n return this\n }\n\n\n // MODAL DATA-API\n // ==============\n\n $(document).on('click.bs.modal.data-api', '[data-toggle=\"modal\"]', function (e) {\n var $this = $(this)\n var href = $this.attr('href')\n var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\\s]+$)/, ''))) // strip for ie7\n var option = $target.data('bs.modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())\n\n if ($this.is('a')) e.preventDefault()\n\n $target.one('show.bs.modal', function (showEvent) {\n if (showEvent.isDefaultPrevented()) return // only register focus restorer if modal will actually get shown\n $target.one('hidden.bs.modal', function () {\n $this.is(':visible') && $this.trigger('focus')\n })\n })\n Plugin.call($target, option, this)\n })\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: tooltip.js v3.3.1\n * http://getbootstrap.com/javascript/#tooltip\n * Inspired by the original jQuery.tipsy by Jason Frame\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // TOOLTIP PUBLIC CLASS DEFINITION\n // ===============================\n\n var Tooltip = function (element, options) {\n this.type =\n this.options =\n this.enabled =\n this.timeout =\n this.hoverState =\n this.$element = null\n\n this.init('tooltip', element, options)\n }\n\n Tooltip.VERSION = '3.3.1'\n\n Tooltip.TRANSITION_DURATION = 150\n\n Tooltip.DEFAULTS = {\n animation: true,\n placement: 'top',\n selector: false,\n template: '<div class=\"tooltip\" role=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n container: false,\n viewport: {\n selector: 'body',\n padding: 0\n }\n }\n\n Tooltip.prototype.init = function (type, element, options) {\n this.enabled = true\n this.type = type\n this.$element = $(element)\n this.options = this.getOptions(options)\n this.$viewport = this.options.viewport && $(this.options.viewport.selector || this.options.viewport)\n\n var triggers = this.options.trigger.split(' ')\n\n for (var i = triggers.length; i--;) {\n var trigger = triggers[i]\n\n if (trigger == 'click') {\n this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this))\n } else if (trigger != 'manual') {\n var eventIn = trigger == 'hover' ? 'mouseenter' : 'focusin'\n var eventOut = trigger == 'hover' ? 'mouseleave' : 'focusout'\n\n this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this))\n this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this))\n }\n }\n\n this.options.selector ?\n (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) :\n this.fixTitle()\n }\n\n Tooltip.prototype.getDefaults = function () {\n return Tooltip.DEFAULTS\n }\n\n Tooltip.prototype.getOptions = function (options) {\n options = $.extend({}, this.getDefaults(), this.$element.data(), options)\n\n if (options.delay && typeof options.delay == 'number') {\n options.delay = {\n show: options.delay,\n hide: options.delay\n }\n }\n\n return options\n }\n\n Tooltip.prototype.getDelegateOptions = function () {\n var options = {}\n var defaults = this.getDefaults()\n\n this._options && $.each(this._options, function (key, value) {\n if (defaults[key] != value) options[key] = value\n })\n\n return options\n }\n\n Tooltip.prototype.enter = function (obj) {\n var self = obj instanceof this.constructor ?\n obj : $(obj.currentTarget).data('bs.' + this.type)\n\n if (self && self.$tip && self.$tip.is(':visible')) {\n self.hoverState = 'in'\n return\n }\n\n if (!self) {\n self = new this.constructor(obj.currentTarget, this.getDelegateOptions())\n $(obj.currentTarget).data('bs.' + this.type, self)\n }\n\n clearTimeout(self.timeout)\n\n self.hoverState = 'in'\n\n if (!self.options.delay || !self.options.delay.show) return self.show()\n\n self.timeout = setTimeout(function () {\n if (self.hoverState == 'in') self.show()\n }, self.options.delay.show)\n }\n\n Tooltip.prototype.leave = function (obj) {\n var self = obj instanceof this.constructor ?\n obj : $(obj.currentTarget).data('bs.' + this.type)\n\n if (!self) {\n self = new this.constructor(obj.currentTarget, this.getDelegateOptions())\n $(obj.currentTarget).data('bs.' + this.type, self)\n }\n\n clearTimeout(self.timeout)\n\n self.hoverState = 'out'\n\n if (!self.options.delay || !self.options.delay.hide) return self.hide()\n\n self.timeout = setTimeout(function () {\n if (self.hoverState == 'out') self.hide()\n }, self.options.delay.hide)\n }\n\n Tooltip.prototype.show = function () {\n var e = $.Event('show.bs.' + this.type)\n\n if (this.hasContent() && this.enabled) {\n this.$element.trigger(e)\n\n var inDom = $.contains(this.$element[0].ownerDocument.documentElement, this.$element[0])\n if (e.isDefaultPrevented() || !inDom) return\n var that = this\n\n var $tip = this.tip()\n\n var tipId = this.getUID(this.type)\n\n this.setContent()\n $tip.attr('id', tipId)\n this.$element.attr('aria-describedby', tipId)\n\n if (this.options.animation) $tip.addClass('fade')\n\n var placement = typeof this.options.placement == 'function' ?\n this.options.placement.call(this, $tip[0], this.$element[0]) :\n this.options.placement\n\n var autoToken = /\\s?auto?\\s?/i\n var autoPlace = autoToken.test(placement)\n if (autoPlace) placement = placement.replace(autoToken, '') || 'top'\n\n $tip\n .detach()\n .css({ top: 0, left: 0, display: 'block' })\n .addClass(placement)\n .data('bs.' + this.type, this)\n\n this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element)\n\n var pos = this.getPosition()\n var actualWidth = $tip[0].offsetWidth\n var actualHeight = $tip[0].offsetHeight\n\n if (autoPlace) {\n var orgPlacement = placement\n var $container = this.options.container ? $(this.options.container) : this.$element.parent()\n var containerDim = this.getPosition($container)\n\n placement = placement == 'bottom' && pos.bottom + actualHeight > containerDim.bottom ? 'top' :\n placement == 'top' && pos.top - actualHeight < containerDim.top ? 'bottom' :\n placement == 'right' && pos.right + actualWidth > containerDim.width ? 'left' :\n placement == 'left' && pos.left - actualWidth < containerDim.left ? 'right' :\n placement\n\n $tip\n .removeClass(orgPlacement)\n .addClass(placement)\n }\n\n var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight)\n\n this.applyPlacement(calculatedOffset, placement)\n\n var complete = function () {\n var prevHoverState = that.hoverState\n that.$element.trigger('shown.bs.' + that.type)\n that.hoverState = null\n\n if (prevHoverState == 'out') that.leave(that)\n }\n\n $.support.transition && this.$tip.hasClass('fade') ?\n $tip\n .one('bsTransitionEnd', complete)\n .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) :\n complete()\n }\n }\n\n Tooltip.prototype.applyPlacement = function (offset, placement) {\n var $tip = this.tip()\n var width = $tip[0].offsetWidth\n var height = $tip[0].offsetHeight\n\n // manually read margins because getBoundingClientRect includes difference\n var marginTop = parseInt($tip.css('margin-top'), 10)\n var marginLeft = parseInt($tip.css('margin-left'), 10)\n\n // we must check for NaN for ie 8/9\n if (isNaN(marginTop)) marginTop = 0\n if (isNaN(marginLeft)) marginLeft = 0\n\n offset.top = offset.top + marginTop\n offset.left = offset.left + marginLeft\n\n // $.fn.offset doesn't round pixel values\n // so we use setOffset directly with our own function B-0\n $.offset.setOffset($tip[0], $.extend({\n using: function (props) {\n $tip.css({\n top: Math.round(props.top),\n left: Math.round(props.left)\n })\n }\n }, offset), 0)\n\n $tip.addClass('in')\n\n // check to see if placing tip in new offset caused the tip to resize itself\n var actualWidth = $tip[0].offsetWidth\n var actualHeight = $tip[0].offsetHeight\n\n if (placement == 'top' && actualHeight != height) {\n offset.top = offset.top + height - actualHeight\n }\n\n var delta = this.getViewportAdjustedDelta(placement, offset, actualWidth, actualHeight)\n\n if (delta.left) offset.left += delta.left\n else offset.top += delta.top\n\n var isVertical = /top|bottom/.test(placement)\n var arrowDelta = isVertical ? delta.left * 2 - width + actualWidth : delta.top * 2 - height + actualHeight\n var arrowOffsetPosition = isVertical ? 'offsetWidth' : 'offsetHeight'\n\n $tip.offset(offset)\n this.replaceArrow(arrowDelta, $tip[0][arrowOffsetPosition], isVertical)\n }\n\n Tooltip.prototype.replaceArrow = function (delta, dimension, isHorizontal) {\n this.arrow()\n .css(isHorizontal ? 'left' : 'top', 50 * (1 - delta / dimension) + '%')\n .css(isHorizontal ? 'top' : 'left', '')\n }\n\n Tooltip.prototype.setContent = function () {\n var $tip = this.tip()\n var title = this.getTitle()\n\n $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title)\n $tip.removeClass('fade in top bottom left right')\n }\n\n Tooltip.prototype.hide = function (callback) {\n var that = this\n var $tip = this.tip()\n var e = $.Event('hide.bs.' + this.type)\n\n function complete() {\n if (that.hoverState != 'in') $tip.detach()\n that.$element\n .removeAttr('aria-describedby')\n .trigger('hidden.bs.' + that.type)\n callback && callback()\n }\n\n this.$element.trigger(e)\n\n if (e.isDefaultPrevented()) return\n\n $tip.removeClass('in')\n\n $.support.transition && this.$tip.hasClass('fade') ?\n $tip\n .one('bsTransitionEnd', complete)\n .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) :\n complete()\n\n this.hoverState = null\n\n return this\n }\n\n Tooltip.prototype.fixTitle = function () {\n var $e = this.$element\n if ($e.attr('title') || typeof ($e.attr('data-original-title')) != 'string') {\n $e.attr('data-original-title', $e.attr('title') || '').attr('title', '')\n }\n }\n\n Tooltip.prototype.hasContent = function () {\n return this.getTitle()\n }\n\n Tooltip.prototype.getPosition = function ($element) {\n $element = $element || this.$element\n\n var el = $element[0]\n var isBody = el.tagName == 'BODY'\n\n var elRect = el.getBoundingClientRect()\n if (elRect.width == null) {\n // width and height are missing in IE8, so compute them manually; see https://github.com/twbs/bootstrap/issues/14093\n elRect = $.extend({}, elRect, { width: elRect.right - elRect.left, height: elRect.bottom - elRect.top })\n }\n var elOffset = isBody ? { top: 0, left: 0 } : $element.offset()\n var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() }\n var outerDims = isBody ? { width: $(window).width(), height: $(window).height() } : null\n\n return $.extend({}, elRect, scroll, outerDims, elOffset)\n }\n\n Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) {\n return placement == 'bottom' ? { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 } :\n placement == 'top' ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } :\n placement == 'left' ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } :\n /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width }\n\n }\n\n Tooltip.prototype.getViewportAdjustedDelta = function (placement, pos, actualWidth, actualHeight) {\n var delta = { top: 0, left: 0 }\n if (!this.$viewport) return delta\n\n var viewportPadding = this.options.viewport && this.options.viewport.padding || 0\n var viewportDimensions = this.getPosition(this.$viewport)\n\n if (/right|left/.test(placement)) {\n var topEdgeOffset = pos.top - viewportPadding - viewportDimensions.scroll\n var bottomEdgeOffset = pos.top + viewportPadding - viewportDimensions.scroll + actualHeight\n if (topEdgeOffset < viewportDimensions.top) { // top overflow\n delta.top = viewportDimensions.top - topEdgeOffset\n } else if (bottomEdgeOffset > viewportDimensions.top + viewportDimensions.height) { // bottom overflow\n delta.top = viewportDimensions.top + viewportDimensions.height - bottomEdgeOffset\n }\n } else {\n var leftEdgeOffset = pos.left - viewportPadding\n var rightEdgeOffset = pos.left + viewportPadding + actualWidth\n if (leftEdgeOffset < viewportDimensions.left) { // left overflow\n delta.left = viewportDimensions.left - leftEdgeOffset\n } else if (rightEdgeOffset > viewportDimensions.width) { // right overflow\n delta.left = viewportDimensions.left + viewportDimensions.width - rightEdgeOffset\n }\n }\n\n return delta\n }\n\n Tooltip.prototype.getTitle = function () {\n var title\n var $e = this.$element\n var o = this.options\n\n title = $e.attr('data-original-title')\n || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title)\n\n return title\n }\n\n Tooltip.prototype.getUID = function (prefix) {\n do prefix += ~~(Math.random() * 1000000)\n while (document.getElementById(prefix))\n return prefix\n }\n\n Tooltip.prototype.tip = function () {\n return (this.$tip = this.$tip || $(this.options.template))\n }\n\n Tooltip.prototype.arrow = function () {\n return (this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow'))\n }\n\n Tooltip.prototype.enable = function () {\n this.enabled = true\n }\n\n Tooltip.prototype.disable = function () {\n this.enabled = false\n }\n\n Tooltip.prototype.toggleEnabled = function () {\n this.enabled = !this.enabled\n }\n\n Tooltip.prototype.toggle = function (e) {\n var self = this\n if (e) {\n self = $(e.currentTarget).data('bs.' + this.type)\n if (!self) {\n self = new this.constructor(e.currentTarget, this.getDelegateOptions())\n $(e.currentTarget).data('bs.' + this.type, self)\n }\n }\n\n self.tip().hasClass('in') ? self.leave(self) : self.enter(self)\n }\n\n Tooltip.prototype.destroy = function () {\n var that = this\n clearTimeout(this.timeout)\n this.hide(function () {\n that.$element.off('.' + that.type).removeData('bs.' + that.type)\n })\n }\n\n\n // TOOLTIP PLUGIN DEFINITION\n // =========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.tooltip')\n var options = typeof option == 'object' && option\n var selector = options && options.selector\n\n if (!data && option == 'destroy') return\n if (selector) {\n if (!data) $this.data('bs.tooltip', (data = {}))\n if (!data[selector]) data[selector] = new Tooltip(this, options)\n } else {\n if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options)))\n }\n if (typeof option == 'string') data[option]()\n })\n }\n\n var old = $.fn.tooltip\n\n $.fn.tooltip = Plugin\n $.fn.tooltip.Constructor = Tooltip\n\n\n // TOOLTIP NO CONFLICT\n // ===================\n\n $.fn.tooltip.noConflict = function () {\n $.fn.tooltip = old\n return this\n }\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: popover.js v3.3.1\n * http://getbootstrap.com/javascript/#popovers\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // POPOVER PUBLIC CLASS DEFINITION\n // ===============================\n\n var Popover = function (element, options) {\n this.init('popover', element, options)\n }\n\n if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')\n\n Popover.VERSION = '3.3.1'\n\n Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, {\n placement: 'right',\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\"><div class=\"arrow\"></div><h3 class=\"popover-title\"></h3><div class=\"popover-content\"></div></div>'\n })\n\n\n // NOTE: POPOVER EXTENDS tooltip.js\n // ================================\n\n Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype)\n\n Popover.prototype.constructor = Popover\n\n Popover.prototype.getDefaults = function () {\n return Popover.DEFAULTS\n }\n\n Popover.prototype.setContent = function () {\n var $tip = this.tip()\n var title = this.getTitle()\n var content = this.getContent()\n\n $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)\n $tip.find('.popover-content').children().detach().end()[ // we use append for html objects to maintain js events\n this.options.html ? (typeof content == 'string' ? 'html' : 'append') : 'text'\n ](content)\n\n $tip.removeClass('fade top bottom left right in')\n\n // IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do\n // this manually by checking the contents.\n if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide()\n }\n\n Popover.prototype.hasContent = function () {\n return this.getTitle() || this.getContent()\n }\n\n Popover.prototype.getContent = function () {\n var $e = this.$element\n var o = this.options\n\n return $e.attr('data-content')\n || (typeof o.content == 'function' ?\n o.content.call($e[0]) :\n o.content)\n }\n\n Popover.prototype.arrow = function () {\n return (this.$arrow = this.$arrow || this.tip().find('.arrow'))\n }\n\n Popover.prototype.tip = function () {\n if (!this.$tip) this.$tip = $(this.options.template)\n return this.$tip\n }\n\n\n // POPOVER PLUGIN DEFINITION\n // =========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.popover')\n var options = typeof option == 'object' && option\n var selector = options && options.selector\n\n if (!data && option == 'destroy') return\n if (selector) {\n if (!data) $this.data('bs.popover', (data = {}))\n if (!data[selector]) data[selector] = new Popover(this, options)\n } else {\n if (!data) $this.data('bs.popover', (data = new Popover(this, options)))\n }\n if (typeof option == 'string') data[option]()\n })\n }\n\n var old = $.fn.popover\n\n $.fn.popover = Plugin\n $.fn.popover.Constructor = Popover\n\n\n // POPOVER NO CONFLICT\n // ===================\n\n $.fn.popover.noConflict = function () {\n $.fn.popover = old\n return this\n }\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: scrollspy.js v3.3.1\n * http://getbootstrap.com/javascript/#scrollspy\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // SCROLLSPY CLASS DEFINITION\n // ==========================\n\n function ScrollSpy(element, options) {\n var process = $.proxy(this.process, this)\n\n this.$body = $('body')\n this.$scrollElement = $(element).is('body') ? $(window) : $(element)\n this.options = $.extend({}, ScrollSpy.DEFAULTS, options)\n this.selector = (this.options.target || '') + ' .nav li > a'\n this.offsets = []\n this.targets = []\n this.activeTarget = null\n this.scrollHeight = 0\n\n this.$scrollElement.on('scroll.bs.scrollspy', process)\n this.refresh()\n this.process()\n }\n\n ScrollSpy.VERSION = '3.3.1'\n\n ScrollSpy.DEFAULTS = {\n offset: 10\n }\n\n ScrollSpy.prototype.getScrollHeight = function () {\n return this.$scrollElement[0].scrollHeight || Math.max(this.$body[0].scrollHeight, document.documentElement.scrollHeight)\n }\n\n ScrollSpy.prototype.refresh = function () {\n var offsetMethod = 'offset'\n var offsetBase = 0\n\n if (!$.isWindow(this.$scrollElement[0])) {\n offsetMethod = 'position'\n offsetBase = this.$scrollElement.scrollTop()\n }\n\n this.offsets = []\n this.targets = []\n this.scrollHeight = this.getScrollHeight()\n\n var self = this\n\n this.$body\n .find(this.selector)\n .map(function () {\n var $el = $(this)\n var href = $el.data('target') || $el.attr('href')\n var $href = /^#./.test(href) && $(href)\n\n return ($href\n && $href.length\n && $href.is(':visible')\n && [[$href[offsetMethod]().top + offsetBase, href]]) || null\n })\n .sort(function (a, b) { return a[0] - b[0] })\n .each(function () {\n self.offsets.push(this[0])\n self.targets.push(this[1])\n })\n }\n\n ScrollSpy.prototype.process = function () {\n var scrollTop = this.$scrollElement.scrollTop() + this.options.offset\n var scrollHeight = this.getScrollHeight()\n var maxScroll = this.options.offset + scrollHeight - this.$scrollElement.height()\n var offsets = this.offsets\n var targets = this.targets\n var activeTarget = this.activeTarget\n var i\n\n if (this.scrollHeight != scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n return activeTarget != (i = targets[targets.length - 1]) && this.activate(i)\n }\n\n if (activeTarget && scrollTop < offsets[0]) {\n this.activeTarget = null\n return this.clear()\n }\n\n for (i = offsets.length; i--;) {\n activeTarget != targets[i]\n && scrollTop >= offsets[i]\n && (!offsets[i + 1] || scrollTop <= offsets[i + 1])\n && this.activate(targets[i])\n }\n }\n\n ScrollSpy.prototype.activate = function (target) {\n this.activeTarget = target\n\n this.clear()\n\n var selector = this.selector +\n '[data-target=\"' + target + '\"],' +\n this.selector + '[href=\"' + target + '\"]'\n\n var active = $(selector)\n .parents('li')\n .addClass('active')\n\n if (active.parent('.dropdown-menu').length) {\n active = active\n .closest('li.dropdown')\n .addClass('active')\n }\n\n active.trigger('activate.bs.scrollspy')\n }\n\n ScrollSpy.prototype.clear = function () {\n $(this.selector)\n .parentsUntil(this.options.target, '.active')\n .removeClass('active')\n }\n\n\n // SCROLLSPY PLUGIN DEFINITION\n // ===========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.scrollspy')\n var options = typeof option == 'object' && option\n\n if (!data) $this.data('bs.scrollspy', (data = new ScrollSpy(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n var old = $.fn.scrollspy\n\n $.fn.scrollspy = Plugin\n $.fn.scrollspy.Constructor = ScrollSpy\n\n\n // SCROLLSPY NO CONFLICT\n // =====================\n\n $.fn.scrollspy.noConflict = function () {\n $.fn.scrollspy = old\n return this\n }\n\n\n // SCROLLSPY DATA-API\n // ==================\n\n $(window).on('load.bs.scrollspy.data-api', function () {\n $('[data-spy=\"scroll\"]').each(function () {\n var $spy = $(this)\n Plugin.call($spy, $spy.data())\n })\n })\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: tab.js v3.3.1\n * http://getbootstrap.com/javascript/#tabs\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // TAB CLASS DEFINITION\n // ====================\n\n var Tab = function (element) {\n this.element = $(element)\n }\n\n Tab.VERSION = '3.3.1'\n\n Tab.TRANSITION_DURATION = 150\n\n Tab.prototype.show = function () {\n var $this = this.element\n var $ul = $this.closest('ul:not(.dropdown-menu)')\n var selector = $this.data('target')\n\n if (!selector) {\n selector = $this.attr('href')\n selector = selector && selector.replace(/.*(?=#[^\\s]*$)/, '') // strip for ie7\n }\n\n if ($this.parent('li').hasClass('active')) return\n\n var $previous = $ul.find('.active:last a')\n var hideEvent = $.Event('hide.bs.tab', {\n relatedTarget: $this[0]\n })\n var showEvent = $.Event('show.bs.tab', {\n relatedTarget: $previous[0]\n })\n\n $previous.trigger(hideEvent)\n $this.trigger(showEvent)\n\n if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) return\n\n var $target = $(selector)\n\n this.activate($this.closest('li'), $ul)\n this.activate($target, $target.parent(), function () {\n $previous.trigger({\n type: 'hidden.bs.tab',\n relatedTarget: $this[0]\n })\n $this.trigger({\n type: 'shown.bs.tab',\n relatedTarget: $previous[0]\n })\n })\n }\n\n Tab.prototype.activate = function (element, container, callback) {\n var $active = container.find('> .active')\n var transition = callback\n && $.support.transition\n && (($active.length && $active.hasClass('fade')) || !!container.find('> .fade').length)\n\n function next() {\n $active\n .removeClass('active')\n .find('> .dropdown-menu > .active')\n .removeClass('active')\n .end()\n .find('[data-toggle=\"tab\"]')\n .attr('aria-expanded', false)\n\n element\n .addClass('active')\n .find('[data-toggle=\"tab\"]')\n .attr('aria-expanded', true)\n\n if (transition) {\n element[0].offsetWidth // reflow for transition\n element.addClass('in')\n } else {\n element.removeClass('fade')\n }\n\n if (element.parent('.dropdown-menu')) {\n element\n .closest('li.dropdown')\n .addClass('active')\n .end()\n .find('[data-toggle=\"tab\"]')\n .attr('aria-expanded', true)\n }\n\n callback && callback()\n }\n\n $active.length && transition ?\n $active\n .one('bsTransitionEnd', next)\n .emulateTransitionEnd(Tab.TRANSITION_DURATION) :\n next()\n\n $active.removeClass('in')\n }\n\n\n // TAB PLUGIN DEFINITION\n // =====================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.tab')\n\n if (!data) $this.data('bs.tab', (data = new Tab(this)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n var old = $.fn.tab\n\n $.fn.tab = Plugin\n $.fn.tab.Constructor = Tab\n\n\n // TAB NO CONFLICT\n // ===============\n\n $.fn.tab.noConflict = function () {\n $.fn.tab = old\n return this\n }\n\n\n // TAB DATA-API\n // ============\n\n var clickHandler = function (e) {\n e.preventDefault()\n Plugin.call($(this), 'show')\n }\n\n $(document)\n .on('click.bs.tab.data-api', '[data-toggle=\"tab\"]', clickHandler)\n .on('click.bs.tab.data-api', '[data-toggle=\"pill\"]', clickHandler)\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: affix.js v3.3.1\n * http://getbootstrap.com/javascript/#affix\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // AFFIX CLASS DEFINITION\n // ======================\n\n var Affix = function (element, options) {\n this.options = $.extend({}, Affix.DEFAULTS, options)\n\n this.$target = $(this.options.target)\n .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this))\n .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this))\n\n this.$element = $(element)\n this.affixed =\n this.unpin =\n this.pinnedOffset = null\n\n this.checkPosition()\n }\n\n Affix.VERSION = '3.3.1'\n\n Affix.RESET = 'affix affix-top affix-bottom'\n\n Affix.DEFAULTS = {\n offset: 0,\n target: window\n }\n\n Affix.prototype.getState = function (scrollHeight, height, offsetTop, offsetBottom) {\n var scrollTop = this.$target.scrollTop()\n var position = this.$element.offset()\n var targetHeight = this.$target.height()\n\n if (offsetTop != null && this.affixed == 'top') return scrollTop < offsetTop ? 'top' : false\n\n if (this.affixed == 'bottom') {\n if (offsetTop != null) return (scrollTop + this.unpin <= position.top) ? false : 'bottom'\n return (scrollTop + targetHeight <= scrollHeight - offsetBottom) ? false : 'bottom'\n }\n\n var initializing = this.affixed == null\n var colliderTop = initializing ? scrollTop : position.top\n var colliderHeight = initializing ? targetHeight : height\n\n if (offsetTop != null && colliderTop <= offsetTop) return 'top'\n if (offsetBottom != null && (colliderTop + colliderHeight >= scrollHeight - offsetBottom)) return 'bottom'\n\n return false\n }\n\n Affix.prototype.getPinnedOffset = function () {\n if (this.pinnedOffset) return this.pinnedOffset\n this.$element.removeClass(Affix.RESET).addClass('affix')\n var scrollTop = this.$target.scrollTop()\n var position = this.$element.offset()\n return (this.pinnedOffset = position.top - scrollTop)\n }\n\n Affix.prototype.checkPositionWithEventLoop = function () {\n setTimeout($.proxy(this.checkPosition, this), 1)\n }\n\n Affix.prototype.checkPosition = function () {\n if (!this.$element.is(':visible')) return\n\n var height = this.$element.height()\n var offset = this.options.offset\n var offsetTop = offset.top\n var offsetBottom = offset.bottom\n var scrollHeight = $('body').height()\n\n if (typeof offset != 'object') offsetBottom = offsetTop = offset\n if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element)\n if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element)\n\n var affix = this.getState(scrollHeight, height, offsetTop, offsetBottom)\n\n if (this.affixed != affix) {\n if (this.unpin != null) this.$element.css('top', '')\n\n var affixType = 'affix' + (affix ? '-' + affix : '')\n var e = $.Event(affixType + '.bs.affix')\n\n this.$element.trigger(e)\n\n if (e.isDefaultPrevented()) return\n\n this.affixed = affix\n this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null\n\n this.$element\n .removeClass(Affix.RESET)\n .addClass(affixType)\n .trigger(affixType.replace('affix', 'affixed') + '.bs.affix')\n }\n\n if (affix == 'bottom') {\n this.$element.offset({\n top: scrollHeight - height - offsetBottom\n })\n }\n }\n\n\n // AFFIX PLUGIN DEFINITION\n // =======================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.affix')\n var options = typeof option == 'object' && option\n\n if (!data) $this.data('bs.affix', (data = new Affix(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n var old = $.fn.affix\n\n $.fn.affix = Plugin\n $.fn.affix.Constructor = Affix\n\n\n // AFFIX NO CONFLICT\n // =================\n\n $.fn.affix.noConflict = function () {\n $.fn.affix = old\n return this\n }\n\n\n // AFFIX DATA-API\n // ==============\n\n $(window).on('load', function () {\n $('[data-spy=\"affix\"]').each(function () {\n var $spy = $(this)\n var data = $spy.data()\n\n data.offset = data.offset || {}\n\n if (data.offsetBottom != null) data.offset.bottom = data.offsetBottom\n if (data.offsetTop != null) data.offset.top = data.offsetTop\n\n Plugin.call($spy, data)\n })\n })\n\n}(jQuery);\n","/* =============================================================\n * bootstrap-combobox.js v1.1.7\n * =============================================================\n * Copyright 2012 Daniel Farrell\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ============================================================ */\n\n!function( $ ) {\n\n \"use strict\";\n\n /* COMBOBOX PUBLIC CLASS DEFINITION\n * ================================ */\n\n var Combobox = function ( element, options ) {\n this.options = $.extend({}, $.fn.combobox.defaults, options);\n this.template = this.options.template || this.template\n this.$source = $(element);\n this.$container = this.setup();\n this.$element = this.$container.find('input[type=text]');\n this.$target = this.$container.find('input[type=hidden]');\n this.$button = this.$container.find('.dropdown-toggle');\n this.$menu = $(this.options.menu).appendTo('body');\n this.matcher = this.options.matcher || this.matcher;\n this.sorter = this.options.sorter || this.sorter;\n this.highlighter = this.options.highlighter || this.highlighter;\n this.shown = false;\n this.selected = false;\n this.refresh();\n this.transferAttributes();\n this.listen();\n };\n\n Combobox.prototype = {\n\n constructor: Combobox\n\n , setup: function () {\n var combobox = $(this.template());\n this.$source.before(combobox);\n this.$source.hide();\n return combobox;\n }\n\n , disable: function() {\n this.$element.prop('disabled', true);\n this.$button.attr('disabled', true);\n this.disabled = true;\n this.$container.addClass('combobox-disabled');\n }\n\n , enable: function() {\n this.$element.prop('disabled', false);\n this.$button.attr('disabled', false);\n this.disabled = false;\n this.$container.removeClass('combobox-disabled');\n }\n , parse: function () {\n var that = this\n , map = {}\n , source = []\n , selected = false\n , selectedValue = '';\n this.$source.find('option').each(function() {\n var option = $(this);\n if (option.val() === '') {\n that.options.placeholder = option.text();\n return;\n }\n map[option.text()] = option.val();\n source.push(option.text());\n if (option.prop('selected')) {\n selected = option.text();\n selectedValue = option.val();\n }\n })\n this.map = map;\n if (selected) {\n this.$element.val(selected);\n this.$target.val(selectedValue);\n this.$container.addClass('combobox-selected');\n this.selected = true;\n }\n return source;\n }\n\n , transferAttributes: function() {\n this.options.placeholder = this.$source.attr('data-placeholder') || this.options.placeholder\n if(this.options.appendId !== \"undefined\") {\n \tthis.$element.attr('id', this.$source.attr('id') + this.options.appendId);\n }\n this.$element.attr('placeholder', this.options.placeholder)\n this.$target.prop('name', this.$source.prop('name'))\n this.$target.val(this.$source.val())\n this.$source.removeAttr('name') // Remove from source otherwise form will pass parameter twice.\n this.$element.attr('required', this.$source.attr('required'))\n this.$element.attr('rel', this.$source.attr('rel'))\n this.$element.attr('title', this.$source.attr('title'))\n this.$element.attr('class', this.$source.attr('class'))\n this.$element.attr('tabindex', this.$source.attr('tabindex'))\n this.$source.removeAttr('tabindex')\n if (this.$source.attr('disabled')!==undefined)\n this.disable();\n }\n\n , select: function () {\n var val = this.$menu.find('.active').attr('data-value');\n this.$element.val(this.updater(val)).trigger('change');\n this.$target.val(this.map[val]).trigger('change');\n this.$source.val(this.map[val]).trigger('change');\n this.$container.addClass('combobox-selected');\n this.selected = true;\n return this.hide();\n }\n\n , updater: function (item) {\n return item;\n }\n\n , show: function () {\n var pos = $.extend({}, this.$element.position(), {\n height: this.$element[0].offsetHeight\n });\n\n this.$menu\n .insertAfter(this.$element)\n .css({\n top: pos.top + pos.height\n , left: pos.left\n })\n .show();\n\n $('.dropdown-menu').on('mousedown', $.proxy(this.scrollSafety, this));\n\n this.shown = true;\n return this;\n }\n\n , hide: function () {\n this.$menu.hide();\n $('.dropdown-menu').off('mousedown', $.proxy(this.scrollSafety, this));\n this.$element.on('blur', $.proxy(this.blur, this));\n this.shown = false;\n return this;\n }\n\n , lookup: function (event) {\n this.query = this.$element.val();\n return this.process(this.source);\n }\n\n , process: function (items) {\n var that = this;\n\n items = $.grep(items, function (item) {\n return that.matcher(item);\n })\n\n items = this.sorter(items);\n\n if (!items.length) {\n return this.shown ? this.hide() : this;\n }\n\n return this.render(items.slice(0, this.options.items)).show();\n }\n\n , template: function() {\n if (this.options.bsVersion == '2') {\n return '<div class=\"combobox-container\"><input type=\"hidden\" /> <div class=\"input-append\"> <input type=\"text\" autocomplete=\"false\" /> <span class=\"add-on dropdown-toggle\" data-dropdown=\"dropdown\"> <span class=\"caret\"/> <i class=\"icon-remove\"/> </span> </div> </div>'\n } else {\n return '<div class=\"combobox-container\"> <input type=\"hidden\" /> <div class=\"input-group\"> <input type=\"text\" autocomplete=\"false\" /> <span class=\"input-group-addon dropdown-toggle\" data-dropdown=\"dropdown\"> <span class=\"caret\" /> <span class=\"glyphicon glyphicon-remove\" /> </span> </div> </div>'\n }\n }\n\n , matcher: function (item) {\n return ~item.toLowerCase().indexOf(this.query.toLowerCase());\n }\n\n , sorter: function (items) {\n var beginswith = []\n , caseSensitive = []\n , caseInsensitive = []\n , item;\n\n while (item = items.shift()) {\n if (!item.toLowerCase().indexOf(this.query.toLowerCase())) {beginswith.push(item);}\n else if (~item.indexOf(this.query)) {caseSensitive.push(item);}\n else {caseInsensitive.push(item);}\n }\n\n return beginswith.concat(caseSensitive, caseInsensitive);\n }\n\n , highlighter: function (item) {\n var query = this.query.replace(/[\\-\\[\\]{}()*+?.,\\\\\\^$|#\\s]/g, '\\\\$&');\n return item.replace(new RegExp('(' + query + ')', 'ig'), function ($1, match) {\n return '<strong>' + match + '</strong>';\n })\n }\n\n , render: function (items) {\n var that = this;\n\n items = $(items).map(function (i, item) {\n i = $(that.options.item).attr('data-value', item);\n i.find('a').html(that.highlighter(item));\n return i[0];\n })\n\n items.first().addClass('active');\n this.$menu.html(items);\n return this;\n }\n\n , next: function (event) {\n var active = this.$menu.find('.active').removeClass('active')\n , next = active.next();\n\n if (!next.length) {\n next = $(this.$menu.find('li')[0]);\n }\n\n next.addClass('active');\n }\n\n , prev: function (event) {\n var active = this.$menu.find('.active').removeClass('active')\n , prev = active.prev();\n\n if (!prev.length) {\n prev = this.$menu.find('li').last();\n }\n\n prev.addClass('active');\n }\n\n , toggle: function () {\n if (!this.disabled) {\n if (this.$container.hasClass('combobox-selected')) {\n this.clearTarget();\n this.triggerChange();\n this.clearElement();\n } else {\n if (this.shown) {\n this.hide();\n } else {\n this.clearElement();\n this.lookup();\n }\n }\n }\n }\n\n , scrollSafety: function(e) {\n if (e.target.tagName == 'UL') {\n this.$element.off('blur');\n }\n }\n , clearElement: function () {\n this.$element.val('').focus();\n }\n\n , clearTarget: function () {\n this.$source.val('');\n this.$target.val('');\n this.$container.removeClass('combobox-selected');\n this.selected = false;\n }\n\n , triggerChange: function () {\n this.$source.trigger('change');\n }\n\n , refresh: function () {\n this.source = this.parse();\n this.options.items = this.source.length;\n }\n\n , listen: function () {\n this.$element\n .on('focus', $.proxy(this.focus, this))\n .on('blur', $.proxy(this.blur, this))\n .on('keypress', $.proxy(this.keypress, this))\n .on('keyup', $.proxy(this.keyup, this));\n\n if (this.eventSupported('keydown')) {\n this.$element.on('keydown', $.proxy(this.keydown, this));\n }\n\n this.$menu\n .on('click', $.proxy(this.click, this))\n .on('mouseenter', 'li', $.proxy(this.mouseenter, this))\n .on('mouseleave', 'li', $.proxy(this.mouseleave, this));\n\n this.$button\n .on('click', $.proxy(this.toggle, this));\n }\n\n , eventSupported: function(eventName) {\n var isSupported = eventName in this.$element;\n if (!isSupported) {\n this.$element.setAttribute(eventName, 'return;');\n isSupported = typeof this.$element[eventName] === 'function';\n }\n return isSupported;\n }\n\n , move: function (e) {\n if (!this.shown) {return;}\n\n switch(e.keyCode) {\n case 9: // tab\n case 13: // enter\n case 27: // escape\n e.preventDefault();\n break;\n\n case 38: // up arrow\n e.preventDefault();\n this.prev();\n this.fixMenuScroll();\n break;\n\n case 40: // down arrow\n e.preventDefault();\n this.next();\n this.fixMenuScroll();\n break;\n }\n\n e.stopPropagation();\n }\n\n , fixMenuScroll: function(){\n var active = this.$menu.find('.active');\n if(active.length){\n var top = active.position().top;\n var bottom = top + active.height();\n var scrollTop = this.$menu.scrollTop();\n var menuHeight = this.$menu.height();\n if(bottom > menuHeight){\n this.$menu.scrollTop(scrollTop + bottom - menuHeight);\n } else if(top < 0){\n this.$menu.scrollTop(scrollTop + top);\n }\n }\n }\n\n , keydown: function (e) {\n this.suppressKeyPressRepeat = ~$.inArray(e.keyCode, [40,38,9,13,27]);\n this.move(e);\n }\n\n , keypress: function (e) {\n if (this.suppressKeyPressRepeat) {return;}\n this.move(e);\n }\n\n , keyup: function (e) {\n switch(e.keyCode) {\n case 40: // down arrow\n if (!this.shown){\n this.toggle();\n }\n break;\n case 39: // right arrow\n case 38: // up arrow\n case 37: // left arrow\n case 36: // home\n case 35: // end\n case 16: // shift\n case 17: // ctrl\n case 18: // alt\n break;\n\n case 9: // tab\n case 13: // enter\n if (!this.shown) {return;}\n this.select();\n break;\n\n case 27: // escape\n if (!this.shown) {return;}\n this.hide();\n break;\n\n default:\n this.clearTarget();\n this.lookup();\n }\n\n e.stopPropagation();\n e.preventDefault();\n }\n\n , focus: function (e) {\n this.focused = true;\n }\n\n , blur: function (e) {\n var that = this;\n this.focused = false;\n var val = this.$element.val();\n if (!this.selected && val !== '' ) {\n this.$element.val('');\n this.$source.val('').trigger('change');\n this.$target.val('').trigger('change');\n }\n if (!this.mousedover && this.shown) {setTimeout(function () { that.hide(); }, 200);}\n }\n\n , click: function (e) {\n e.stopPropagation();\n e.preventDefault();\n this.select();\n this.$element.focus();\n }\n\n , mouseenter: function (e) {\n this.mousedover = true;\n this.$menu.find('.active').removeClass('active');\n $(e.currentTarget).addClass('active');\n }\n\n , mouseleave: function (e) {\n this.mousedover = false;\n }\n };\n\n /* COMBOBOX PLUGIN DEFINITION\n * =========================== */\n $.fn.combobox = function ( option ) {\n return this.each(function () {\n var $this = $(this)\n , data = $this.data('combobox')\n , options = typeof option == 'object' && option;\n if(!data) {$this.data('combobox', (data = new Combobox(this, options)));}\n if (typeof option == 'string') {data[option]();}\n });\n };\n\n $.fn.combobox.defaults = {\n bsVersion: '3'\n , menu: '<ul class=\"typeahead typeahead-long dropdown-menu\"></ul>'\n , item: '<li><a href=\"#\"></a></li>'\n };\n\n $.fn.combobox.Constructor = Combobox;\n\n}( window.jQuery );\n"],"sourceRoot":"/source/"}