!function ($){ "use strict"; $(function (){ $.support.transition = (function (){ var transitionEnd = (function (){ var el = _AN_Call_createelement("createElement", document, 'bootstrap'), transEndEventNames = { 'WebkitTransition': 'webkitTransitionEnd', 'MozTransition': 'transitionend', 'OTransition': 'oTransitionEnd otransitionend', 'transition': 'transitionend'} , name; for (name in transEndEventNames){ if (el.style[name] !== undefined) { return transEndEventNames[name]; } } } ()); return transitionEnd && { end: transitionEnd} ; } )(); } ); } (window.jQuery); !function ($){ "use strict"; var dismiss = '[data-dismiss="alert"]', Alert = function (el){ $(el).on('click', dismiss, this.close); } ; Alert.prototype.close = function (e){ var $this = $(this), selector = $this.attr('data-target'), $parent; if (!selector) { selector = $this.attr('href'); selector = selector && _AN_Call_replace('replace', selector, /.*(?=#[^\s]*$)/, ''); } $parent = $(selector); e && e.preventDefault(); _AN_Read_length('length', $parent) || ($parent = $this.hasClass('alert')? $this: $this.parent()); $parent.trigger(e = $.Event('close')); if (e.isDefaultPrevented()) return ; $parent.removeClass('in'); function removeElement(){ $parent.trigger('closed').remove(); } $.support.transition && $parent.hasClass('fade')? $parent.on($.support.transition.end, removeElement): removeElement(); } ; var old = $.fn.alert; $.fn.alert = function (option){ return this.each(function (){ var $this = $(this), data = $this.data('alert'); if (!data) $this.data('alert', (data = new Alert(this))); if (typeof option == 'string') data[option].call($this); } ); } ; $.fn.alert.Constructor = Alert; $.fn.alert.noConflict = function (){ $.fn.alert = old; return this; } ; $(document).on('click.alert.data-api', dismiss, Alert.prototype.close); } (window.jQuery); !function ($){ "use strict"; var Button = function (element, options){ this.$element = $(element); this.options = $.extend({ } , $.fn.button.defaults, options); } ; Button.prototype.setState = function (state){ var d = 'disabled', $el = this.$element, data = $el.data(), val = $el.is('input')? 'val': 'html'; state = state + 'Text'; data.resetText || $el.data('resetText', $el[val]()); $el[val](data[state] || this.options[state]); _AN_Call_settimeout('setTimeout', window, function (){ state == 'loadingText'? $el.addClass(d).attr(d, d): $el.removeClass(d).removeAttr(d); } , 0); } ; Button.prototype.toggle = function (){ var $parent = this.$element.closest('[data-toggle="buttons-radio"]'); $parent && $parent.find('.active').removeClass('active'); this.$element.toggleClass('active'); } ; var old = $.fn.button; $.fn.button = function (option){ return this.each(function (){ var $this = $(this), data = $this.data('button'), options = typeof option == 'object' && option; if (!data) $this.data('button', (data = new Button(this, options))); if (option == 'toggle') data.toggle(); else if (option) data.setState(option); } ); } ; $.fn.button.defaults = { loadingText: 'loading...'} ; $.fn.button.Constructor = Button; $.fn.button.noConflict = function (){ $.fn.button = old; return this; } ; $(document).on('click.button.data-api', '[data-toggle^=button]', function (e){ var $btn = $(_AN_Read_target('target', e)); if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn'); $btn.button('toggle'); } ); } (window.jQuery); !function ($){ "use strict"; var Carousel = function (element, options){ this.$element = $(element); this.options = options; this.options.pause == 'hover' && this.$element.on('mouseenter', $.proxy(this.pause, this)).on('mouseleave', $.proxy(this.cycle, this)); } ; Carousel.prototype = { cycle: function (e){ if (!e) this.paused = false ; this.options.interval && !this.paused && (this.interval = _AN_Call_setinterval('setInterval', window, $.proxy(this.next, this), this.options.interval)); return this; } , to: function (pos){ var $active = this.$element.find('.item.active'), children = $active.parent().children(), activePos = children.index($active), that = this; if (pos > (_AN_Read_length('length', children) - 1) || pos < 0) return ; if (this.sliding) { return this.$element.one('slid', function (){ that.to(pos); } ); } if (activePos == pos) { return this.pause().cycle(); } return this.slide(pos > activePos? 'next': 'prev', $(children[pos])); } , pause: function (e){ if (!e) this.paused = true ; if (_AN_Read_length('length', this.$element.find('.next, .prev')) && $.support.transition.end) { this.$element.trigger($.support.transition.end); this.cycle(); } clearInterval(this.interval); this.interval = null ; return this; } , next: function (){ if (this.sliding) return ; return this.slide('next'); } , prev: function (){ if (this.sliding) return ; return this.slide('prev'); } , slide: function (type, next){ var $active = this.$element.find('.item.active'), $next = next || $active[type](), isCycling = this.interval, direction = type == 'next'? 'left': 'right', fallback = type == 'next'? 'first': 'last', that = this, e; this.sliding = true ; isCycling && this.pause(); $next = _AN_Read_length('length', $next)? $next: this.$element.find('.item')[fallback](); e = $.Event('slide', { relatedTarget: $next[0]} ); if ($next.hasClass('active')) return ; if ($.support.transition && this.$element.hasClass('slide')) { this.$element.trigger(e); if (e.isDefaultPrevented()) return ; $next.addClass(type); $next[0].offsetWidth; $active.addClass(direction); $next.addClass(direction); this.$element.one($.support.transition.end, function (){ $next.removeClass([type, direction] .join(' ')).addClass('active'); $active.removeClass(['active', direction] .join(' ')); that.sliding = false ; _AN_Call_settimeout('setTimeout', window, function (){ that.$element.trigger('slid'); } , 0); } ); } else { this.$element.trigger(e); if (e.isDefaultPrevented()) return ; $active.removeClass('active'); $next.addClass('active'); this.sliding = false ; this.$element.trigger('slid'); } isCycling && this.cycle(); return this; } } ; var old = $.fn.carousel; $.fn.carousel = function (option){ return this.each(function (){ var $this = $(this), data = $this.data('carousel'), options = $.extend({ } , $.fn.carousel.defaults, typeof option == 'object' && option), action = typeof option == 'string'? option: options.slide; if (!data) $this.data('carousel', (data = new Carousel(this, options))); if (typeof option == 'number') data.to(option); else if (action) data[action](); else if (options.interval) data.cycle(); } ); } ; $.fn.carousel.defaults = { interval: 5000, pause: 'hover'} ; $.fn.carousel.Constructor = Carousel; $.fn.carousel.noConflict = function (){ $.fn.carousel = old; return this; } ; $(document).on('click.carousel.data-api', '[data-slide]', function (e){ var $this = $(this), href, $target = $($this.attr('data-target') || (href = $this.attr('href')) && _AN_Call_replace('replace', href, /.*(?=#[^\s]+$)/, '')), options = $.extend({ } , $target.data(), $this.data()); $target.carousel(options); e.preventDefault(); } ); } (window.jQuery); !function ($){ "use strict"; var Collapse = function (element, options){ this.$element = $(element); this.options = $.extend({ } , $.fn.collapse.defaults, options); if (this.options.parent) { this.$parent = $(this.options.parent); } this.options.toggle && this.toggle(); } ; Collapse.prototype = { constructor: Collapse, dimension: function (){ var hasWidth = this.$element.hasClass('width'); return hasWidth? 'width': 'height'; } , show: function (){ var dimension, scroll, actives, hasData; if (this.transitioning) return ; dimension = this.dimension(); scroll = $.camelCase(['scroll', dimension] .join('-')); actives = this.$parent && this.$parent.find('> .accordion-group > .in'); if (actives && _AN_Read_length('length', actives)) { hasData = actives.data('collapse'); if (hasData && hasData.transitioning) return ; actives.collapse('hide'); hasData || actives.data('collapse', null ); } this.$element[dimension](0); this.transition('addClass', $.Event('show'), 'shown'); $.support.transition && this.$element[dimension](this.$element[0][scroll]); } , hide: function (){ var dimension; if (this.transitioning) return ; dimension = this.dimension(); this.reset(this.$element[dimension]()); this.transition('removeClass', $.Event('hide'), 'hidden'); this.$element[dimension](0); } , reset: function (size){ var dimension = this.dimension(); this.$element.removeClass('collapse')[dimension](size || 'auto')[0].offsetWidth; this.$element[size !== null ? 'addClass': 'removeClass']('collapse'); return this; } , transition: function (method, startEvent, completeEvent){ var that = this, complete = function (){ if (startEvent.type == 'show') that.reset(); that.transitioning = 0; that.$element.trigger(completeEvent); } ; this.$element.trigger(startEvent); if (startEvent.isDefaultPrevented()) return ; this.transitioning = 1; this.$element[method]('in'); $.support.transition && this.$element.hasClass('collapse')? this.$element.one($.support.transition.end, complete): complete(); } , toggle: function (){ this[this.$element.hasClass('in')? 'hide': 'show'](); } } ; var old = $.fn.collapse; $.fn.collapse = function (option){ return this.each(function (){ var $this = $(this), data = $this.data('collapse'), options = typeof option == 'object' && option; if (!data) $this.data('collapse', (data = new Collapse(this, options))); if (typeof option == 'string') data[option](); } ); } ; $.fn.collapse.defaults = { toggle: true } ; $.fn.collapse.Constructor = Collapse; $.fn.collapse.noConflict = function (){ $.fn.collapse = old; return this; } ; $(document).on('click.collapse.data-api', '[data-toggle=collapse]', function (e){ var $this = $(this), href, target = $this.attr('data-target') || e.preventDefault() || (href = $this.attr('href')) && _AN_Call_replace('replace', href, /.*(?=#[^\s]+$)/, ''), option = $(target).data('collapse')? 'toggle': $this.data(); $this[$(target).hasClass('in')? 'addClass': 'removeClass']('collapsed'); $(target).collapse(option); } ); } (window.jQuery); !function ($){ "use strict"; var toggle = '[data-toggle=dropdown]', Dropdown = function (element){ var $el = $(element).on('click.dropdown.data-api', this.toggle); $('html').on('click.dropdown.data-api', function (){ $el.parent().removeClass('open'); } ); } ; Dropdown.prototype = { constructor: Dropdown, toggle: function (e){ var $this = $(this), $parent, isActive; if ($this.is('.disabled, :disabled')) return ; $parent = getParent($this); isActive = $parent.hasClass('open'); clearMenus(); if (!isActive) { $parent.toggleClass('open'); } $this.focus(); return false ; } , keydown: function (e){ var $this, $items, $active, $parent, isActive, index; if (!/(38|40|27)/.test(e.keyCode)) return ; $this = $(this); e.preventDefault(); e.stopPropagation(); if ($this.is('.disabled, :disabled')) return ; $parent = getParent($this); isActive = $parent.hasClass('open'); if (!isActive || (isActive && e.keyCode == 27)) return $this.click(); $items = $('[role=menu] li:not(.divider):visible a', $parent); if (!_AN_Read_length('length', $items)) return ; index = $items.index($items.filter(':focus')); if (e.keyCode == 38 && index > 0) index-- ; if (e.keyCode == 40 && index < _AN_Read_length('length', $items) - 1) index++ ; if (!~index) index = 0; $items.eq(index).focus(); } } ; function clearMenus(){ $(toggle).each(function (){ getParent($(this)).removeClass('open'); } ); } function getParent($this){ var selector = $this.attr('data-target'), $parent; if (!selector) { selector = $this.attr('href'); selector = selector && /#/.test(selector) && _AN_Call_replace('replace', selector, /.*(?=#[^\s]*$)/, ''); } $parent = $(selector); _AN_Read_length('length', $parent) || ($parent = $this.parent()); return $parent; } var old = $.fn.dropdown; $.fn.dropdown = function (option){ return this.each(function (){ var $this = $(this), data = $this.data('dropdown'); if (!data) $this.data('dropdown', (data = new Dropdown(this))); if (typeof option == 'string') data[option].call($this); } ); } ; $.fn.dropdown.Constructor = Dropdown; $.fn.dropdown.noConflict = function (){ $.fn.dropdown = old; return this; } ; $(document).on('click.dropdown.data-api touchstart.dropdown.data-api', clearMenus).on('click.dropdown touchstart.dropdown.data-api', '.dropdown form', function (e){ e.stopPropagation(); } ).on('touchstart.dropdown.data-api', '.dropdown-menu', function (e){ e.stopPropagation(); } ).on('click.dropdown.data-api touchstart.dropdown.data-api', toggle, Dropdown.prototype.toggle).on('keydown.dropdown.data-api touchstart.dropdown.data-api', toggle + ', [role=menu]', Dropdown.prototype.keydown); } (window.jQuery); !function ($){ "use strict"; var Modal = function (element, options){ this.options = options; this.$element = $(element).delegate('[data-dismiss="modal"]', 'click.dismiss.modal', $.proxy(this.hide, this)); this.options.remote && _AN_Call_load('load', this.$element.find('.modal-body'), this.options.remote); } ; Modal.prototype = { constructor: Modal, toggle: function (){ return this[!this.isShown? 'show': 'hide'](); } , show: function (){ var that = this, e = $.Event('show'); this.$element.trigger(e); if (this.isShown || e.isDefaultPrevented()) return ; this.isShown = true ; this.escape(); this.backdrop(function (){ var transition = $.support.transition && that.$element.hasClass('fade'); if (!_AN_Read_length('length', that.$element.parent())) { that.$element.appendTo(document.body); } _AN_Call_show('show', that.$element); if (transition) { that.$element[0].offsetWidth; } that.$element.addClass('in').attr('aria-hidden', false ); that.enforceFocus(); transition? that.$element.one($.support.transition.end, function (){ that.$element.focus().trigger('shown'); } ): that.$element.focus().trigger('shown'); } ); } , hide: function (e){ e && e.preventDefault(); var that = this; e = $.Event('hide'); this.$element.trigger(e); if (!this.isShown || e.isDefaultPrevented()) return ; this.isShown = false ; this.escape(); $(document).off('focusin.modal'); this.$element.removeClass('in').attr('aria-hidden', true ); $.support.transition && this.$element.hasClass('fade')? this.hideWithTransition(): this.hideModal(); } , enforceFocus: function (){ var that = this; $(document).on('focusin.modal', function (e){ if (that.$element[0] !== _AN_Read_target('target', e) && !_AN_Read_length('length', that.$element.has(_AN_Read_target('target', e)))) { that.$element.focus(); } } ); } , escape: function (){ var that = this; if (this.isShown && this.options.keyboard) { this.$element.on('keyup.dismiss.modal', function (e){ e.which == 27 && that.hide(); } ); } else if (!this.isShown) { this.$element.off('keyup.dismiss.modal'); } } , hideWithTransition: function (){ var that = this, timeout = _AN_Call_settimeout('setTimeout', window, function (){ that.$element.off($.support.transition.end); that.hideModal(); } , 500); this.$element.one($.support.transition.end, function (){ clearTimeout(timeout); that.hideModal(); } ); } , hideModal: function (that){ this.$element.hide().trigger('hidden'); this.backdrop(); } , removeBackdrop: function (){ this.$backdrop.remove(); this.$backdrop = null ; } , backdrop: function (callback){ var that = this, animate = this.$element.hasClass('fade')? 'fade': ''; if (this.isShown && this.options.backdrop) { var doAnimate = $.support.transition && animate; this.$backdrop = $('