{"version":3,"sources":["jquery.lazy.js","jquery.switcher.js","bootstrap.js","jquery.bootstrap.min.js","functions.js","divibibCoverHelper.js","coverHelper.js","coverflow.js","glightbox.min.js","searchservice.js","loginPopup.js","ratingController.js","iban.js","ncipService.js","search.js","quiter.js","mobileCheck.js","jquery.multiSelect.js","jquery.pinify.js","jquery.unveil.js","spin.min.js","segment.js","jquery.kwicks.min.js","jquery.scrollView.js","jquery.treeview.js","jquery.backdrop.js","jquery.tagsinput.js","jquery.autocomplete.js","jquery.coverflow.js","jquery.rating.js","js.cookie.js","LmsCheckbox.js","portalService.js"],"names":["window","undefined","$","jQuery","Zepto","lazyInstanceId","windowLoaded","_executeLazy","instance","config","items","events","namespace","_awaitingAfterLoad","_actualWidth","_actualHeight","_isRetinaDisplay","_afterLoad","_load","_error","_img","_src","_srcset","_sizes","_backgroundImage","_initialize","delay","callback","timeout","lastExecute","devicePixelRatio","_prepareItems","setTimeout","_lazyLoadItems","combined","e","throttle","event","type","all","ignoreThrottle","elapsed","Date","run","call","clearTimeout","enableThrottle","a","additionalItems","push","apply","g","filter","this","data","loadedName","f","forcedItems","i","length","item","appendScroll","on","defaultImage","placeholder","imageBase","srcsetAttribute","loaderAttribute","forcedTags","_f","l","element","tag","_getElementTagName","handledName","attr","attribute","name","elementImageBase","imageBaseAttribute","_getCorrectedSrcSet","css","allItems","forced","elements","loadTriggered","_isInLoadableArea","customLoader","visibleOnly","is","_handleItem","autoDestroy","destroy","errorCallback","_triggerCallback","_reduceAwaiting","noop","srcAttribute","sizesAttribute","retinaAttribute","removeAttribute","elementRetina","loadCallback","removeAttr","off","one","response","trigger","imageObj","Image","hide","effect","effectTime","remove","imageSrc","complete","elementBound","getBoundingClientRect","direction","scrollDirection","threshold","vertical","height","top","bottom","horizontal","width","left","right","tagName","toLowerCase","srcset","entries","split","trim","args","slice","arguments","bind","LazyPlugin","settings","_instance","_config","extend","_events","_namespace","entryName","value","addItems","getItems","update","useThrottle","force","loadAll","chainable","fn","Lazy","lazy","names","loader","isFunction","isArray","prototype","c","beforeLoad","afterLoad","onError","onFinishedAll","document","hasClass","state","children","toggleClass","sender","checked","transitionEnd","support","transition","el","createElement","transEndEventNames","WebkitTransition","MozTransition","OTransition","style","end","Alert","dismiss","close","$parent","$this","selector","removeElement","replace","preventDefault","parent","Event","isDefaultPrevented","removeClass","old","alert","option","each","Constructor","noConflict","Button","options","$element","button","defaults","setState","d","$el","val","resetText","addClass","toggle","closest","find","loadingText","$btn","target","Carousel","$indicators","pause","proxy","cycle","paused","interval","clearInterval","setInterval","next","getActiveIndex","$active","$items","index","to","pos","activeIndex","that","sliding","slide","prev","$next","isCycling","fallback","relatedTarget","$nextIndicator","offsetWidth","join","carousel","action","href","slideIndex","$target","Collapse","collapse","constructor","dimension","show","scroll","actives","hasData","transitioning","camelCase","reset","size","method","startEvent","completeEvent","Dropdown","clearMenus","getParent","test","isActive","documentElement","insertBefore","focus","keydown","keyCode","stopPropagation","which","click","eq","dropdown","Modal","delegate","remote","load","isShown","escape","backdrop","appendTo","body","enforceFocus","hideWithTransition","hideModal","has","keyboard","removeBackdrop","$backdrop","animate","doAnimate","modal","Tooltip","init","eventIn","eventOut","triggers","getOptions","enabled","enter","leave","_options","fixTitle","self","key","currentTarget","hoverState","$tip","actualWidth","actualHeight","placement","tp","hasContent","tip","setContent","animation","detach","display","container","insertAfter","getPosition","offsetHeight","applyPlacement","offset","delta","replaceArrow","position","arrow","title","getTitle","html","$e","o","template","$arrow","validate","parentNode","enable","disable","toggleEnabled","removeData","tooltip","Popover","content","getContent","popover","ScrollSpy","process","scrollspy","$scrollElement","$body","refresh","offsets","targets","map","$href","isWindow","get","scrollTop","sort","b","maxScroll","scrollHeight","activeTarget","last","activate","active","$spy","Tab","previous","$ul","tab","Typeahead","typeahead","matcher","sorter","highlighter","updater","source","$menu","menu","shown","listen","select","change","lookup","query","minLength","grep","render","indexOf","beginswith","caseSensitive","caseInsensitive","shift","concat","RegExp","$1","match","first","blur","keypress","keyup","eventSupported","mouseenter","mouseleave","eventName","isSupported","setAttribute","move","suppressKeyPressRepeat","inArray","focused","mousedover","Affix","affix","$window","checkPosition","offsetBottom","offsetTop","unpin","affixed","String","format","t","n","dialog","r","buttons","s","empty","u","Array","h","p","Object","id","text","classed","Function","$button","append","dialogClass","onClose","autoOpen","messager","model","ok","popup","confirm","cancel","datagrid","selectChange","edit","formatter","field","maxlength","readonly","selectedClass","singleSelect","columns","v","m","rows","y","row","w","E","after","S","x","T","N","before","splice","tree","attributes","JSON","stringify","onClick","attrs","parse","IsInternetExplorer","ua","navigator","userAgent","msie","parseInt","substring","rv","edge","ConvertTextToUmlaut","SearchInWikipedia","autor","GetSelectedText","open","SearchExternSite","url","defaultValue","getSelection","toString","selection","createRange","bbcode","GetFormatedBBCode","encodeHtml","ajax","async","success","GetFormatedBBCodeMain","input","output","charCodeAt","Dec2Hex","decimal","hexChars","charAt","InsertBookmark","datavalue","serviceurl","$link","InsertBookmarkService","Success","fadeOut","Text","fadeIn","InsertBookmarkDetail","linkButton","serviceUrl","dataValue","dataType","DeleteBookmark","cellCopiesId","$row","$cellCopiesRow","spinner","DeleteBookmarkService","backdropClear","slideUp","Count","SetBookmarkImageInMasterPage","result","splitted","spit","bookmarkimage","redirectToFavoritePage","SetBookmarkImageInDetailPage","Result","ar","hlToolbarFav","getElementById","bookmarkId","hyperlinkId","src","onclick","innerHTML","location","ShowDeleteReservationModal","masterRow","detailRow","reservationsResultFailedUrl","DeleteReservation","error","XMLHttpRequest","textStatus","errorThrown","contents","outerHeight","ready","exists","idle","time","queue","dequeue","isBound","scrollTo","speed","easing","targetOffset","selectRange","start","setSelectionRange","createTextRange","range","moveEnd","moveStart","insidepermapanel","DisplayPermaLinkPanel","linkId","newLeft","outerWidth","AddBookmark","comment","sidebar","addPanel","opera","print","elem","external","AddFavorite","selectItemByValue","selected","debounce","func","wait","immediate","context","callNow","MatchImage","image","modalBody","newImageWidth","newImageHeight","imageWidth","naturalWidth","imageHeight","naturalHeight","bodyWidth","bodyHeight","xFactor","yFactor","currentZoomFactor","xMargin","yMargin","setupClickEvents","handler","$thisRow","$detailRow","add","visible","barBorrow","ajaxOnSuccessLazyLoadCover","LazyLoadCovers","grp","rootUrl","loadList","userServiceUrl","isMobile","sidePanelRightClientId","spin","lines","radius","tail","color","SetParentHRef","isHugendubelImage","elementDataDetail","GLightbox","LoadMissingCoverMediaGroupImage","CheckSize","LoadMissingCoverReplacement","hgCoverUrl","imageLoaded","Promise","resolve","reject","unbind","removeEventListener","loaded","rejected","addEventListener","then","magnifierUrl","Coverflow","searchData","successCallback","$elem","suppressempty","suppressempty_containerid","spacing","startIndex","DetailUrl","Title","MediaGroupName","MediaStatus","Width","ImageUrl","FallbackImageUrl","HugendubelConfigured","HugendubelImageUrl","Status","$newElement","replaceWith","flipster","autoplay","loop","buttonPrev","buttonNext","cache","mobile","returnType","reload","exports","module","define","amd","Symbol","iterator","TypeError","enumerable","configurable","writable","defineProperty","now","hasOwnProperty","k","A","L","P","O","evt","found","onElement","withCallback","avoidDuplicate","once","useCapture","C","querySelectorAll","classList","contains","parentElement","matches","msMatchesSelector","OAnimation","MozAnimation","WebkitAnimation","webkitTransform","MozTransform","msTransform","OTransform","transform","createDocumentFragment","firstChild","appendChild","innerWidth","clientWidth","innerHeight","clientHeight","I","console","getElementsByTagName","rel","media","onload","nodeType","isFinite","keys","M","isNaN","parseFloat","z","getAttribute","Math","max","querySelector","Y","sqrt","handlers","D","_","touches","nodeName","log","x1","pageX","y1","pageY","touchStart","dispatch","preTapPosition","isDoubleTap","abs","singleTapTimeout","preV","_cancelLongTap","_cancelSingleTap","pinchStartLen","multipointStart","_preventTap","longTapTimeout","longTap","zoom","pinch","angle","acos","PI","rotate","x2","sx2","deltaX","deltaY","y2","sy2","twoFingerPressMove","pressMove","touchMove","changedTouches","multipointEnd","_swipeDirection","swipeTimeout","swipe","tapTimeout","tap","doubleTap","singleTap","touchEnd","cancelAll","touchCancel","del","_cancelAllHandler","translateContainer","W","opacity","H","widowWidth","zoomedIn","img","maxWidth","maxHeight","setTranslate","currentX","currentY","initialX","initialY","xOffset","yOffset","onclose","clientX","clientY","dragging","isDragging","V","dragContainer","doSlideChange","preventOutsideClick","prevSlide","nextSlide","doSlideClose","toleranceReached","lastDirection","shouldChange","dragAutoSnap","dragEnd","toleranceY","shouldClose","toleranceX","lastChild","dragEl","dragStart","drag","setZoomEvents","zoomOut","zoomIn","F","getAllPlayers","plyr","protocol","js","exec","pop","mp4","ogg","webm","Plyr","detail","dataset","resize","R","descPosition","sourceType","setSize","alt","sanitizeValue","description","DOMException","slideConfig","checkSize","videosWidth","_hasCustomWidth","_hasCustomHeight","U","beforeSlideLoad","player","afterSlideLoad","getSlidePlayerInstance","removeChild","moreLength","smallDescription","slideShortDesc","moreText","descriptionEvents","className","cloneNode","draggable","dragToleranceX","dragToleranceY","zoomable","sizes","allow","innerText","substr","slideHTML","slideExtraAttributes","parseConfig","J","K","createTouch","msMaxTouchPoints","Q","ee","skin","theme","closeButton","startAt","autoplayVideos","autofocusVideos","beforeSlideChange","afterSlideChange","slideInserted","slideRemoved","onOpen","preload","oneSlidePerOpen","touchNavigation","touchFollowAxis","keyboardNavigation","closeOnOutsideClick","plugins","ratio","fullscreen","iosNative","youtube","noCookie","showinfo","iv_load_policy","vimeo","byline","portrait","transparent","openEffect","closeEffect","slideEffect","cssEfects","fade","in","out","slideBack","none","svg","lightboxHTML","te","getSelector","baseEvents","getElements","activeSlide","prevActiveSlideIndex","prevActiveSlide","fullElementsList","getGalleryElements","getElementIndex","build","overlay","head","showSlide","prevButton","nextButton","lightboxOpen","X","q","targetTouches","scaleX","scaleY","touch","B","activeElement","toLocaleLowerCase","slidesContainer","slideAnimateOut","slideAnimateIn","slideNode","node","slideDescription","slideDescriptionContained","preloadSlide","updateNavigationClasses","goToSlide","getConfig","create","getActiveSlideIndex","effectsClasses","slidePlayerPlay","current","slidePlayerPause","videoPlayers","playing","play","gallery","built","childNodes","hasAttribute","bodyHiddenChildElms","outClose","floor","loopAtEnd","closing","clearAllEvents","apiEvents","customOptions","getAnimationClasses","SearchService","simpleAjaxRequest","argument","ajaxRequest","searchServiceBaseUrl","Init","SetCoverVisibility","SetSearchDetailsVisibility","SetSearchTypeState","searchType","SetFilterTypeState","filterType","SetFontSizeState","lastSelector","loginAsync","base","showResult","loginFormId","errorObject","showLoading","checkResult","redirectBadPasswordTo","loginSuccessful","redirectTo","passwordField","usernameField","defaultOptions","stopImmediatePropagation","webkit","messageHandlers","callbackHandler","postMessage","B24AppJavascriptInterface","onLogin","user","pass","serviceUserUrl","prop","loginButtonPlugin","ratingControl","rated","$base","showDetails","rating","link","ratingText","TotalRatings","AverageRating","RatingModels","Range","PercentWidth","PercentText","DisplayText","userRated","slideToggle","root","factory","IBAN","fun","len","res","thisArg","Z","iso13616Prepare","iban","toUpperCase","code","iso7064Mod97_10","block","remainder","electronicFormat","NON_ALPHANUM","Specification","countryCode","structure","example","_regex","_cachedRegex","regex","pattern","repeats","isValid","toBBAN","separator","fromBBAN","bban","isValidBBAN","Error","checkDigit","countries","addSpecification","EVERY_FOUR_CHARS","isString","countryStructure","printFormat","ncip","IsDefaultSearchInputVisible","defaultSearchPanel","IsSimpleSearchInputVisible","simpleSearchPanel","IsExpertSearchInputVisible","ShowSimpleSearchInputs","SetSimpleSearchTextBox","ShowSimpleSearch","HideDefaultSearch","HideExpertSearch","SetHiddenState","simpleSearchId","ShowExpertSearchInputs","SetDefaultSearchTextboxes","HideSimpleSearch","ShowExpertSearch","ShowDefaultSearch","expertSearchId","ShowDefaultSearchInputs","defaultSearchId","ToggleExpertSearch","SetAutoComplete","inputControl","dropDownControl","completeWidth","autocomplete","extraParams","searchfield","matchContains","minChars","selectFirst","highlight","term","InitFieldStateToOperator","$control","$operatorControl","$textField","fields","currentField","SetFieldStateToOperator","SetContainsOperatorEnabled","SetOperatorValueEnabled","$targetOption","suppressDialog","unloadEvent","cancelBubble","returnValue","message","registerUnloadMessage","onSubmit","onLinkClicked","onF5Key","onbeforeunload","mobileCheck","ios","android","blackBerry","windows","smartphone","tablet","Selectpicker","selectpicker","selectAll","deselectAll","multiple","createView","selectPosition","_this","checkDisabled","checkTabIndex","clickListener","createDropdown","$drop","$li","createLi","reloadLi","destroyLi","_li","_liA","_liHtml","optGroup","optionClass","subtext","icon","hideDisabled","label","labelSubtext","createA","group","classes","setDisabled","setSelected","selectedItems","toArray","selectedTextFormat","noneSelectedText","newTitle","count","liHeight","divHeight","selectOffset_top","selectHeight","menuPadding","notDisabled","getSize","minHeight","selectOffset_top_scroll","windowHeight","menuExtras","menuHeight","min-height","optIndex","divLength","ulWidth","containerOffset","eltOffset","selectElementTop","selectElementLeft","disabled","isDisabled","tabindex","clickedIndex","$select","parents","prevValue","not","dt","nextPrev","nextAll","prevAll","keyCodeMap","48","49","50","51","52","53","54","55","56","57","59","65","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","87","88","89","90","96","97","98","99","100","101","102","103","104","105","keyIndex","chain","property","createMetaTag","siteModeSupported","applicationName","favIcon","host","navColor","startUrl","tasks","enablePinning","enableSiteMode","msAddSiteMode","pinTeaser","msIsSiteMode","contentDiv","leftDiv","leftBar","rightDiv","mainContent","pinText","secondaryText","addStartLink","linkText","sticky","linkColor","backgroundColor","textColor","backgroundImage","leftBackgoundImage","rightBackgoundImage","closeButtonImage","topHat","backgoundImage","class","brandedTopHat","doubleTopHat","leftBackgroundImage","rightBackgroundImage","hangingChad","background-color","pinify","firstRunState","msIsSiteModeFirstRun","isPinned","addJumpList","msSiteModeClearJumplist","msSiteModeCreateJumplist","msSiteModeAddJumpListItem","msSiteModeShowJumplist","clearJumpList","msSiteModeClearJumpList","addOverlay","msSiteModeClearIconOverlay","msSiteModeSetIconOverlay","clearOverlay","flashTaskbar","msSiteModeActivate","createThumbbarButtons","j","alternateStyle","activeStyle","buttonID","msSiteModeShowButtonStyle","msSiteModeAddThumbBarButton","msSiteModeAddButtonStyle","onunload","msSiteModeUpdateThumbBarButton","msSiteModeShowThumbBar","unveil","$w","th","attrib","images","inview","wt","wb","et","eb","Spinner","useCssAnimations","prefixes","animations","createEl","ins","sheet","styleSheet","vendor","pp","merge","obj","def","getColor","idx","corners","trail","fps","zIndex","opts","stop","alpha","ostep","astep","anim","seg","prefix","pre","fill","shadow","background","boxShadow","transformOrigin","borderRadius","hwaccel","insertRule","cssRules","probe","behavior","vml","adj","addRule","coordsize","coordorigin","margin","dx","rotation","arcsize","require","presets","tiny","small","large","default","methods","maxSize","minSize","duration","isVertical","autoResize","delayMouseIn","delayMouseOut","selectOnClick","deselectOnClick","interactive","Kwick","expand","kwick","expandedIndex","$panels","expanded","$container","collapsed","oldIndex","oldExpanded","getExpandedPanel","isAnimated","timeoutId","selectedIndex","unselected","oldSelected","getSelectedPanel","kwicks","special","_default","onDestroyHandlers","orientation","containerClasses","onDestroy","primaryDimension","secondaryDimension","calculatePanelSizes","primaryAlignment","secondaryAlignment","$timer","progress","getOffsetsForExpanded","updatePanelStyles","initBehavior","initWindowResizeHandler","containerSize","getContainerSize","spacingUnits","panelSpacing","numPanels","sumPanelSize","panelSize","panelMaxSize","maxSizeUnits","panelMinSize","minSizeUnits","setStyle","cssText","prevOffset","pDim","pAlign","sAlign","stylePrefix","_stylesInited","round","initMenuBehavior","initSlideshowBehavior","addEventHandler","isSelected","running","intervalId","curSlide","numSlides","prevTime","execScheduled","onResize","clearCache","_containerSize","getCollapsedPanels","getUnselectedPanels","_dirtyOffsets","startOffsets","targetOffsets","step","newOffset","dimensions","win","isRoot","rootrx","border","domElement","styles","defaultView","getComputedStyle","currentStyle","px","borderTopWidth","borderLeftWidth","borderBottomWidth","borderRightWidth","borders","scrollLeft","scrollbar","rect","converter","both","scrollintoview","dirStr","scroller","dim","animOptions","min","isEmptyObject","scrollValue","auto","hidden","expr","scrollable","meta","stack","overflow","overflowX","overflowY","client","scrollWidth","scrollableX","scrollableY","swapClass","c1","c2","c1Elements","replaceClass","hoverClass","hover","heightToggle","animated","heightHide","prepareBranches","prerendered","CLASSES","closed","applyClasses","toggler","expandable","lastExpandable","collapsable","lastCollapsable","prepend","hitarea","treeview","cookieId","collapsableHitarea","expandableHitarea","lastCollapsableHitarea","lastExpandableHitarea","unique","siblings","control","branches","persist","toggleCallback","cookie","stored","deserialize","andSelf","Treeview","baseId","baseClass","cssClass","$wrapper","$spinner","tagClass","itemValue","itemText","itemTitle","freeInput","addOnBlur","maxTags","maxChars","confirmKeys","onTagExists","$tag","trimValue","allowDuplicates","TagsInput","itemsArray","isSelect","objectItems","placeholderText","inputSize","$input","makeOptionItemFunction","propertyName","makeOptionFunction","dontPushVal","pushVal","existing","maxInputLength","beforeItemAddEvent","htmlEncode","findInputWrapper","encodeURIComponent","$option","$existingTag","other","beforeItemRemoveEvent","removeAll","nodeValue","processItems","texts","when","typeaheadjs","typeaheadConfig","typeaheadDatasets","datum","valueKey","$inputWrapper","doGetCaretPosition","$prevTag","$nextTag","textLength","ceil","keyPressEvent","lookupList","maxLengthReached","keyCombination","altKey","shiftKey","ctrl","ctrlKey","elt","tagsinput","arg1","arg2","arg3","results","retVal","htmlEncodeContainer","oField","iCaretPos","oSel","selectionStart","utils","escapeRegExChars","createNode","containerClass","div","Autocomplete","ajaxSettings","autoSelectFirst","onSelect","deferRequestBy","params","formatResult","delimiter","noCache","onSearchStart","onSearchComplete","onSearchError","preserveInput","tabDisabled","currentRequest","triggerSelectOnValidInput","preventBadQueries","lookupFilter","suggestion","originalQuery","queryLowerCase","paramName","transformResult","parseJSON","showNoSuggestionNotice","noSuggestionNotice","forceFixPosition","suggestions","badQueries","currentValue","cachedResponse","onChangeInterval","onChange","isLocal","suggestionsContainer","noSuggestionsContainer","hint","hintValue","initialize","setOptions","Value","killerFn","suggestionSelector","killSuggestions","disableKillerFn","fixPositionCapture","fixPosition","onKeyPress","onKeyUp","onBlur","onFocus","onValueChange","enableKillerFn","abortAjax","abort","suppliedOptions","verifySuggestionsFormat","validateOrientation","max-height","z-index","clear","containerParent","containerHeight","viewPortHeight","topOverflow","bottomOverflow","parentOffsetDiff","offsetParent","stopKillSuggestions","isCursorAtEnd","valLength","onHint","selectHint","moveUp","moveDown","suggest","findBestHint","getQuery","onInvalidateSelection","isExactMatch","getSuggestions","parts","getSuggestionsLocal","limit","lookupLimit","cacheKey","ignoreParams","param","isBadQuery","done","processResponse","fail","jqXHR","onHide","signalHint","category","groupBy","classSelected","beforeRender","currentCategory","adjustContainerWidth","noSuggestions","bestMatch","foundMatch","activeItem","adjustScroll","upperBound","lowerBound","heightDelta","getValue","onSelectCallback","dispose","devbridgeAutocomplete","dataKey","inputElement","timer","checkStyleSupport","ucProp","props","svgNS","transformSupport","itemContainer","itemSelector","pauseOnHover","scrollwheel","nav","onItemSwitch","main","navChild","navItem","navLink","navCurrent","navCategory","navCategoryLink","itemCurrent","itemPast","itemFuture","itemContent","classRemover","whiteSpaceRemover","_container","_containerWidth","_resizeInterval","_items","_currentItem","_nav","_navItems","_navLinks","_itemOffsets","_currentIndex","_playing","_startDrag","buildButton","dir","jump","resetTransition","skipTransition","itemHeight","biggestHeight","center","newClass","total","updateNav","removeEmptyImageEntries","currentItems","endsWith","includes","_previous","navCategories","wrapInner","categoryItem","categoryLink","wrap","alreadyShown","imagesLoaded","tabIndex","_dir","_lastDir","_actionThrottle","_throttleTimeout","_delta","_wheelInside","originalEvent","wheelDelta","wheelEvents","offsetY","offsetX","_startDragY","_touchJump","touchstart.flipster","touchmove.flipster","touchend.flipster touchcancel.flipster ","touchEvents","execCommand","makeArray","calls","eid","form","raters","rater","metadata","stars","inputs","serial","readOnly","required","cancelValue","star","half","stw","starWidth","spi","spw","margin-left","selfTriggered","addBack","drain","draw","starson","wantCallBack","lastipt","registeredInModuleLoader","OldCookies","Cookies","api","path","expires","setMilliseconds","getMilliseconds","toUTCString","write","decodeURIComponent","stringifiedAttributes","attributeName","cookies","rdecode","json","read","set","getJSON","withConverter","LmsCheckbox_ChangeState","checkbox","targetMode","hasButtonTarget","hasMessageTarget","targetButtonId","targetButton","replaceAll","countAllCheckboxes","countAllNotCheckedCheckboxes","targetMessage","lastPanelWidth","lastPageRemoved","keepAliveState","ServiceMode","setcontainer","setvisibility","removeContainer","setWidth","removePage","movePage","moveContainerToPage","copyPage","lastServiceMode","lastContainerStateVisible","lastContainerStateId","lastContainerState","Id","Visible","lastContainerPositions","topPanel","Containers","leftPanel","rightPanel","bottomPanel","SetContainerState","CallService","modalCallback","SetPanelWidth","KeepSessionAlive","CallServiceAjax","DeleteContainerService","containerId","DeletePageService","pageId","MovePageService","parentId","CopyPageService","MoveContainerToPageService","UpdateContainerPositions","newPositions","RestoreState","restoreSorting","hideStatus","queryData","serviceModeAction","successMessage","failedMessage","showStatus"],"mappings":"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","file":"scripts.js","sourcesContent":["/*!\n * jQuery & Zepto Lazy - v1.7.10\n * http://jquery.eisbehr.de/lazy/\n *\n * Copyright 2012 - 2018, Daniel 'Eisbehr' Kern\n *\n * Dual licensed under the MIT and GPL-2.0 licenses:\n * http://www.opensource.org/licenses/mit-license.php\n * http://www.gnu.org/licenses/gpl-2.0.html\n *\n * $(\"img.lazy\").lazy();\n */\n\n;(function(window, undefined) {\n \"use strict\";\n\n // noinspection JSUnresolvedVariable\n /**\n * library instance - here and not in construct to be shorter in minimization\n * @return void\n */\n var $ = window.jQuery || window.Zepto,\n\n /**\n * unique plugin instance id counter\n * @type {number}\n */\n lazyInstanceId = 0,\n\n /**\n * helper to register window load for jQuery 3\n * @type {boolean}\n */ \n windowLoaded = false;\n\n /**\n * make lazy available to jquery - and make it a bit more case-insensitive :)\n * @access public\n * @type {function}\n * @param {object} settings\n * @return {LazyPlugin}\n */\n $.fn.Lazy = $.fn.lazy = function(settings) {\n return new LazyPlugin(this, settings);\n };\n\n /**\n * helper to add plugins to lazy prototype configuration\n * @access public\n * @type {function}\n * @param {string|Array} names\n * @param {string|Array|function} [elements]\n * @param {function} loader\n * @return void\n */\n $.Lazy = $.lazy = function(names, elements, loader) {\n // make second parameter optional\n if ($.isFunction(elements)) {\n loader = elements;\n elements = [];\n }\n\n // exit here if parameter is not a callable function\n if (!$.isFunction(loader)) {\n return;\n }\n\n // make parameters an array of names to be sure\n names = $.isArray(names) ? names : [names];\n elements = $.isArray(elements) ? elements : [elements];\n\n var config = LazyPlugin.prototype.config,\n forced = config._f || (config._f = {});\n\n // add the loader plugin for every name\n for (var i = 0, l = names.length; i < l; i++) {\n if (config[names[i]] === undefined || $.isFunction(config[names[i]])) {\n config[names[i]] = loader;\n }\n }\n\n // add forced elements loader\n for (var c = 0, a = elements.length; c < a; c++) {\n forced[elements[c]] = names[0];\n }\n };\n\n /**\n * contains all logic and the whole element handling\n * is packed in a private function outside class to reduce memory usage, because it will not be created on every plugin instance\n * @access private\n * @type {function}\n * @param {LazyPlugin} instance\n * @param {object} config\n * @param {object|Array} items\n * @param {object} events\n * @param {string} namespace\n * @return void\n */\n function _executeLazy(instance, config, items, events, namespace) {\n /**\n * a helper to trigger the 'onFinishedAll' callback after all other events\n * @access private\n * @type {number}\n */\n var _awaitingAfterLoad = 0,\n\n /**\n * visible content width\n * @access private\n * @type {number}\n */\n _actualWidth = -1,\n\n /**\n * visible content height\n * @access private\n * @type {number}\n */\n _actualHeight = -1,\n\n /**\n * determine possibly detected high pixel density\n * @access private\n * @type {boolean}\n */\n _isRetinaDisplay = false, \n\n /**\n * dictionary entry for better minimization\n * @access private\n * @type {string}\n */\n _afterLoad = 'afterLoad',\n\n /**\n * dictionary entry for better minimization\n * @access private\n * @type {string}\n */\n _load = 'load',\n\n /**\n * dictionary entry for better minimization\n * @access private\n * @type {string}\n */\n _error = 'error',\n\n /**\n * dictionary entry for better minimization\n * @access private\n * @type {string}\n */\n _img = 'img',\n\n /**\n * dictionary entry for better minimization\n * @access private\n * @type {string}\n */\n _src = 'src',\n\n /**\n * dictionary entry for better minimization\n * @access private\n * @type {string}\n */\n _srcset = 'srcset',\n\n /**\n * dictionary entry for better minimization\n * @access private\n * @type {string}\n */\n _sizes = 'sizes',\n\n /**\n * dictionary entry for better minimization\n * @access private\n * @type {string}\n */\n _backgroundImage = 'background-image';\n\n /**\n * initialize plugin\n * bind loading to events or set delay time to load all items at once\n * @access private\n * @return void\n */\n function _initialize() {\n // detect actual device pixel ratio\n // noinspection JSUnresolvedVariable\n _isRetinaDisplay = window.devicePixelRatio > 1;\n\n // prepare all initial items\n items = _prepareItems(items);\n\n // if delay time is set load all items at once after delay time\n if (config.delay >= 0) {\n setTimeout(function() {\n _lazyLoadItems(true);\n }, config.delay);\n }\n\n // if no delay is set or combine usage is active bind events\n if (config.delay < 0 || config.combined) {\n // create unique event function\n events.e = _throttle(config.throttle, function(event) {\n // reset detected window size on resize event\n if (event.type === 'resize') {\n _actualWidth = _actualHeight = -1;\n }\n\n // execute 'lazy magic'\n _lazyLoadItems(event.all);\n });\n\n // create function to add new items to instance\n events.a = function(additionalItems) {\n additionalItems = _prepareItems(additionalItems);\n items.push.apply(items, additionalItems);\n };\n\n // create function to get all instance items left\n events.g = function() {\n // filter loaded items before return in case internal filter was not running until now\n return (items = $(items).filter(function() {\n return !$(this).data(config.loadedName);\n }));\n };\n\n // create function to force loading elements\n events.f = function(forcedItems) {\n for (var i = 0; i < forcedItems.length; i++) {\n // only handle item if available in current instance\n // use a compare function, because Zepto can't handle object parameter for filter\n // var item = items.filter(forcedItems[i]);\n /* jshint loopfunc: true */\n var item = items.filter(function() {\n return this === forcedItems[i];\n });\n\n if (item.length) {\n _lazyLoadItems(false, item); \n }\n }\n };\n\n // load initial items\n _lazyLoadItems();\n\n // bind lazy load functions to scroll and resize event\n // noinspection JSUnresolvedVariable\n $(config.appendScroll).on('scroll.' + namespace + ' resize.' + namespace, events.e);\n }\n }\n\n /**\n * prepare items before handle them\n * @access private\n * @param {Array|object|jQuery} items\n * @return {Array|object|jQuery}\n */\n function _prepareItems(items) {\n // fetch used configurations before loops\n var defaultImage = config.defaultImage,\n placeholder = config.placeholder,\n imageBase = config.imageBase,\n srcsetAttribute = config.srcsetAttribute,\n loaderAttribute = config.loaderAttribute,\n forcedTags = config._f || {};\n\n // filter items and only add those who not handled yet and got needed attributes available\n items = $(items).filter(function() {\n var element = $(this),\n tag = _getElementTagName(this);\n\n return !element.data(config.handledName) && \n (element.attr(config.attribute) || element.attr(srcsetAttribute) || element.attr(loaderAttribute) || forcedTags[tag] !== undefined);\n })\n\n // append plugin instance to all elements\n .data('plugin_' + config.name, instance);\n\n for (var i = 0, l = items.length; i < l; i++) {\n var element = $(items[i]),\n tag = _getElementTagName(items[i]),\n elementImageBase = element.attr(config.imageBaseAttribute) || imageBase;\n\n // generate and update source set if an image base is set\n if (tag === _img && elementImageBase && element.attr(srcsetAttribute)) {\n element.attr(srcsetAttribute, _getCorrectedSrcSet(element.attr(srcsetAttribute), elementImageBase));\n }\n\n // add loader to forced element types\n if (forcedTags[tag] !== undefined && !element.attr(loaderAttribute)) {\n element.attr(loaderAttribute, forcedTags[tag]);\n }\n\n // set default image on every element without source\n if (tag === _img && defaultImage && !element.attr(_src)) {\n element.attr(_src, defaultImage);\n }\n\n // set placeholder on every element without background image\n else if (tag !== _img && placeholder && (!element.css(_backgroundImage) || element.css(_backgroundImage) === 'none')) {\n element.css(_backgroundImage, \"url('\" + placeholder + \"')\");\n }\n }\n\n return items;\n }\n\n /**\n * the 'lazy magic' - check all items\n * @access private\n * @param {boolean} [allItems]\n * @param {object} [forced]\n * @return void\n */\n function _lazyLoadItems(allItems, forced) {\n // skip if no items where left\n if (!items.length) {\n // destroy instance if option is enabled\n if (config.autoDestroy) {\n // noinspection JSUnresolvedFunction\n instance.destroy();\n }\n\n return;\n }\n\n var elements = forced || items,\n loadTriggered = false,\n imageBase = config.imageBase || '',\n srcsetAttribute = config.srcsetAttribute,\n handledName = config.handledName;\n\n // loop all available items\n for (var i = 0; i < elements.length; i++) {\n // item is at least in loadable area\n if (allItems || forced || _isInLoadableArea(elements[i])) {\n var element = $(elements[i]),\n tag = _getElementTagName(elements[i]),\n attribute = element.attr(config.attribute),\n elementImageBase = element.attr(config.imageBaseAttribute) || imageBase,\n customLoader = element.attr(config.loaderAttribute);\n\n // is not already handled \n if (!element.data(handledName) &&\n // and is visible or visibility doesn't matter\n (!config.visibleOnly || element.is(':visible')) && (\n // and image source or source set attribute is available\n (attribute || element.attr(srcsetAttribute)) && (\n // and is image tag where attribute is not equal source or source set\n (tag === _img && (elementImageBase + attribute !== element.attr(_src) || element.attr(srcsetAttribute) !== element.attr(_srcset))) ||\n // or is non image tag where attribute is not equal background\n (tag !== _img && elementImageBase + attribute !== element.css(_backgroundImage))\n ) ||\n // or custom loader is available\n customLoader))\n {\n // mark element always as handled as this point to prevent double handling\n loadTriggered = true;\n element.data(handledName, true);\n\n // load item\n _handleItem(element, tag, elementImageBase, customLoader);\n }\n }\n }\n\n // when something was loaded remove them from remaining items\n if (loadTriggered) {\n items = $(items).filter(function() {\n return !$(this).data(handledName);\n });\n }\n }\n\n /**\n * load the given element the lazy way\n * @access private\n * @param {object} element\n * @param {string} tag\n * @param {string} imageBase\n * @param {function} [customLoader]\n * @return void\n */\n function _handleItem(element, tag, imageBase, customLoader) {\n // increment count of items waiting for after load\n ++_awaitingAfterLoad;\n\n // extended error callback for correct 'onFinishedAll' handling\n var errorCallback = function() {\n _triggerCallback('onError', element);\n _reduceAwaiting();\n\n // prevent further callback calls\n errorCallback = $.noop;\n };\n\n // trigger function before loading image\n _triggerCallback('beforeLoad', element);\n\n // fetch all double used data here for better code minimization\n var srcAttribute = config.attribute,\n srcsetAttribute = config.srcsetAttribute,\n sizesAttribute = config.sizesAttribute,\n retinaAttribute = config.retinaAttribute,\n removeAttribute = config.removeAttribute,\n loadedName = config.loadedName,\n elementRetina = element.attr(retinaAttribute);\n\n // handle custom loader\n if (customLoader) {\n // on load callback\n var loadCallback = function() {\n // remove attribute from element\n if (removeAttribute) {\n element.removeAttr(config.loaderAttribute);\n }\n\n // mark element as loaded\n element.data(loadedName, true);\n\n // call after load event\n _triggerCallback(_afterLoad, element);\n\n // remove item from waiting queue and possibly trigger finished event\n // it's needed to be asynchronous to run after filter was in _lazyLoadItems\n setTimeout(_reduceAwaiting, 1);\n\n // prevent further callback calls\n loadCallback = $.noop;\n };\n\n // bind error event to trigger callback and reduce waiting amount\n element.off(_error).one(_error, errorCallback)\n\n // bind after load callback to element\n .one(_load, loadCallback);\n\n // trigger custom loader and handle response\n if (!_triggerCallback(customLoader, element, function(response) {\n if(response) {\n element.off(_load);\n loadCallback();\n }\n else {\n element.off(_error);\n errorCallback();\n }\n })) {\n element.trigger(_error);\n }\n }\n\n // handle images\n else {\n // create image object\n var imageObj = $(new Image());\n\n // bind error event to trigger callback and reduce waiting amount\n imageObj.one(_error, errorCallback)\n\n // bind after load callback to image\n .one(_load, function() {\n // remove element from view\n element.hide();\n\n // set image back to element\n // do it as single 'attr' calls, to be sure 'src' is set after 'srcset'\n if (tag === _img) {\n element.attr(_sizes, imageObj.attr(_sizes))\n .attr(_srcset, imageObj.attr(_srcset))\n .attr(_src, imageObj.attr(_src));\n }\n else {\n element.css(_backgroundImage, \"url('\" + imageObj.attr(_src) + \"')\");\n }\n\n // bring it back with some effect!\n element[config.effect](config.effectTime);\n\n // remove attribute from element\n if (removeAttribute) {\n element.removeAttr(srcAttribute + ' ' + srcsetAttribute + ' ' + retinaAttribute + ' ' + config.imageBaseAttribute);\n\n // only remove 'sizes' attribute, if it was a custom one\n if (sizesAttribute !== _sizes) {\n element.removeAttr(sizesAttribute);\n }\n }\n\n // mark element as loaded\n element.data(loadedName, true);\n\n // call after load event\n _triggerCallback(_afterLoad, element);\n\n // cleanup image object\n imageObj.remove();\n\n // remove item from waiting queue and possibly trigger finished event\n _reduceAwaiting();\n });\n\n // set sources\n // do it as single 'attr' calls, to be sure 'src' is set after 'srcset'\n var imageSrc = (_isRetinaDisplay && elementRetina ? elementRetina : element.attr(srcAttribute)) || '';\n imageObj.attr(_sizes, element.attr(sizesAttribute))\n .attr(_srcset, element.attr(srcsetAttribute))\n .attr(_src, imageSrc ? imageBase + imageSrc : null);\n\n // call after load even on cached image\n imageObj.complete && imageObj.trigger(_load); // jshint ignore : line\n }\n }\n\n /**\n * check if the given element is inside the current viewport or threshold\n * @access private\n * @param {object} element\n * @return {boolean}\n */\n function _isInLoadableArea(element) {\n var elementBound = element.getBoundingClientRect(),\n direction = config.scrollDirection,\n threshold = config.threshold,\n vertical = // check if element is in loadable area from top\n ((_getActualHeight() + threshold) > elementBound.top) &&\n // check if element is even in loadable are from bottom\n (-threshold < elementBound.bottom),\n horizontal = // check if element is in loadable area from left\n ((_getActualWidth() + threshold) > elementBound.left) &&\n // check if element is even in loadable area from right\n (-threshold < elementBound.right);\n\n if (direction === 'vertical') {\n return vertical;\n }\n else if (direction === 'horizontal') {\n return horizontal;\n }\n\n return vertical && horizontal;\n }\n\n /**\n * receive the current viewed width of the browser\n * @access private\n * @return {number}\n */\n function _getActualWidth() {\n return _actualWidth >= 0 ? _actualWidth : (_actualWidth = $(window).width());\n }\n\n /**\n * receive the current viewed height of the browser\n * @access private\n * @return {number}\n */\n function _getActualHeight() {\n return _actualHeight >= 0 ? _actualHeight : (_actualHeight = $(window).height());\n }\n\n /**\n * get lowercase tag name of an element\n * @access private\n * @param {object} element\n * @returns {string}\n */\n function _getElementTagName(element) {\n return element.tagName.toLowerCase();\n }\n\n /**\n * prepend image base to all srcset entries\n * @access private\n * @param {string} srcset\n * @param {string} imageBase\n * @returns {string}\n */\n function _getCorrectedSrcSet(srcset, imageBase) {\n if (imageBase) {\n // trim, remove unnecessary spaces and split entries\n var entries = srcset.split(',');\n srcset = '';\n\n for (var i = 0, l = entries.length; i < l; i++) {\n srcset += imageBase + entries[i].trim() + (i !== l - 1 ? ',' : '');\n }\n }\n\n return srcset;\n }\n\n /**\n * helper function to throttle down event triggering\n * @access private\n * @param {number} delay\n * @param {function} callback\n * @return {function}\n */\n function _throttle(delay, callback) {\n var timeout,\n lastExecute = 0;\n\n return function(event, ignoreThrottle) {\n var elapsed = +new Date() - lastExecute;\n\n function run() {\n lastExecute = +new Date();\n // noinspection JSUnresolvedFunction\n callback.call(instance, event);\n }\n\n timeout && clearTimeout(timeout); // jshint ignore : line\n\n if (elapsed > delay || !config.enableThrottle || ignoreThrottle) {\n run();\n }\n else {\n timeout = setTimeout(run, delay - elapsed);\n }\n };\n }\n\n /**\n * reduce count of awaiting elements to 'afterLoad' event and fire 'onFinishedAll' if reached zero\n * @access private\n * @return void\n */\n function _reduceAwaiting() {\n --_awaitingAfterLoad;\n\n // if no items were left trigger finished event\n if (!items.length && !_awaitingAfterLoad) {\n _triggerCallback('onFinishedAll');\n }\n }\n\n /**\n * single implementation to handle callbacks, pass element and set 'this' to current instance\n * @access private\n * @param {string|function} callback\n * @param {object} [element]\n * @param {*} [args]\n * @return {boolean}\n */\n function _triggerCallback(callback, element, args) {\n if ((callback = config[callback])) {\n // jQuery's internal '$(arguments).slice(1)' are causing problems at least on old iPads\n // below is shorthand of 'Array.prototype.slice.call(arguments, 1)'\n callback.apply(instance, [].slice.call(arguments, 1));\n return true;\n }\n\n return false;\n }\n\n // if event driven or window is already loaded don't wait for page loading\n if (config.bind === 'event' || windowLoaded) {\n _initialize();\n }\n\n // otherwise load initial items and start lazy after page load\n else {\n // noinspection JSUnresolvedVariable\n $(window).on(_load + '.' + namespace, _initialize);\n } \n }\n\n /**\n * lazy plugin class constructor\n * @constructor\n * @access private\n * @param {object} elements\n * @param {object} settings\n * @return {object|LazyPlugin}\n */\n function LazyPlugin(elements, settings) {\n /**\n * this lazy plugin instance\n * @access private\n * @type {object|LazyPlugin|LazyPlugin.prototype}\n */\n var _instance = this,\n\n /**\n * this lazy plugin instance configuration\n * @access private\n * @type {object}\n */\n _config = $.extend({}, _instance.config, settings),\n\n /**\n * instance generated event executed on container scroll or resize\n * packed in an object to be referenceable and short named because properties will not be minified\n * @access private\n * @type {object}\n */\n _events = {},\n\n /**\n * unique namespace for instance related events\n * @access private\n * @type {string}\n */\n _namespace = _config.name + '-' + (++lazyInstanceId);\n\n // noinspection JSUndefinedPropertyAssignment\n /**\n * wrapper to get or set an entry from plugin instance configuration\n * much smaller on minify as direct access\n * @access public\n * @type {function}\n * @param {string} entryName\n * @param {*} [value]\n * @return {LazyPlugin|*}\n */\n _instance.config = function(entryName, value) {\n if (value === undefined) {\n return _config[entryName];\n }\n\n _config[entryName] = value;\n return _instance;\n };\n\n // noinspection JSUndefinedPropertyAssignment\n /**\n * add additional items to current instance\n * @access public\n * @param {Array|object|string} items\n * @return {LazyPlugin}\n */\n _instance.addItems = function(items) {\n _events.a && _events.a($.type(items) === 'string' ? $(items) : items); // jshint ignore : line\n return _instance;\n };\n\n // noinspection JSUndefinedPropertyAssignment\n /**\n * get all left items of this instance\n * @access public\n * @returns {object}\n */\n _instance.getItems = function() {\n return _events.g ? _events.g() : {};\n };\n\n // noinspection JSUndefinedPropertyAssignment\n /**\n * force lazy to load all items in loadable area right now\n * by default without throttle\n * @access public\n * @type {function}\n * @param {boolean} [useThrottle]\n * @return {LazyPlugin}\n */\n _instance.update = function(useThrottle) {\n _events.e && _events.e({}, !useThrottle); // jshint ignore : line\n return _instance;\n };\n\n // noinspection JSUndefinedPropertyAssignment\n /**\n * force element(s) to load directly, ignoring the viewport\n * @access public\n * @param {Array|object|string} items\n * @return {LazyPlugin}\n */\n _instance.force = function(items) {\n _events.f && _events.f($.type(items) === 'string' ? $(items) : items); // jshint ignore : line\n return _instance;\n };\n\n // noinspection JSUndefinedPropertyAssignment\n /**\n * force lazy to load all available items right now\n * this call ignores throttling\n * @access public\n * @type {function}\n * @return {LazyPlugin}\n */\n _instance.loadAll = function() {\n _events.e && _events.e({all: true}, true); // jshint ignore : line\n return _instance;\n };\n\n // noinspection JSUndefinedPropertyAssignment\n /**\n * destroy this plugin instance\n * @access public\n * @type {function}\n * @return undefined\n */\n _instance.destroy = function() {\n // unbind instance generated events\n // noinspection JSUnresolvedFunction, JSUnresolvedVariable\n $(_config.appendScroll).off('.' + _namespace, _events.e);\n // noinspection JSUnresolvedVariable\n $(window).off('.' + _namespace);\n\n // clear events\n _events = {};\n\n return undefined;\n };\n\n // start using lazy and return all elements to be chainable or instance for further use\n // noinspection JSUnresolvedVariable\n _executeLazy(_instance, _config, elements, _events, _namespace);\n return _config.chainable ? elements : _instance;\n }\n\n /**\n * settings and configuration data\n * @access public\n * @type {object|*}\n */\n LazyPlugin.prototype.config = {\n // general\n name : 'lazy',\n chainable : true,\n autoDestroy : true,\n bind : 'load',\n threshold : 500,\n visibleOnly : false,\n appendScroll : window,\n scrollDirection : 'both',\n imageBase : null,\n defaultImage : 'data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==',\n placeholder : null,\n delay : -1,\n combined : false,\n\n // attributes\n attribute : 'data-src',\n srcsetAttribute : 'data-srcset',\n sizesAttribute : 'data-sizes',\n retinaAttribute : 'data-retina',\n loaderAttribute : 'data-loader',\n imageBaseAttribute : 'data-imagebase',\n removeAttribute : true,\n handledName : 'handled',\n loadedName : 'loaded',\n\n // effect\n effect : 'show',\n effectTime : 0,\n\n // throttle\n enableThrottle : true,\n throttle : 250,\n\n // callbacks\n beforeLoad : undefined,\n afterLoad : undefined,\n onError : undefined,\n onFinishedAll : undefined\n };\n\n // register window load event globally to prevent not loading elements\n // since jQuery 3.X ready state is fully async and may be executed after 'load' \n $(window).on('load', function() {\n windowLoaded = true;\n });\n})(window);","\r\n$(document).on(\"click\", \".switcher\", function () {\r\n if (!$(this).hasClass(\"disabled\")) {\r\n var state = $(this).children(\"input:checked\").length > 0;\r\n\r\n $(this).children('span').css(\"left\", state ? \"20px\" : \"0px\");\r\n $(this).toggleClass('on', state);\r\n \r\n $.event.trigger({\r\n type: \"switchChanged\",\r\n sender: $(this),\r\n checked: state\r\n });\r\n }\r\n});","/* ===================================================\n * bootstrap-transition.js v2.3.2\n * http://twitter.github.com/bootstrap/javascript.html#transitions\n * ===================================================\n * Copyright 2012 Twitter, Inc.\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\n!function ($) {\n\n \"use strict\"; // jshint ;_;\n\n\n /* CSS TRANSITION SUPPORT (http://www.modernizr.com/)\n * ======================================================= */\n\n $(function () {\n\n $.support.transition = (function () {\n\n var transitionEnd = (function () {\n\n var el = document.createElement('bootstrap')\n , transEndEventNames = {\n 'WebkitTransition' : 'webkitTransitionEnd'\n , 'MozTransition' : 'transitionend'\n , 'OTransition' : 'oTransitionEnd otransitionend'\n , 'transition' : 'transitionend'\n }\n , name\n\n for (name in transEndEventNames){\n if (el.style[name] !== undefined) {\n return transEndEventNames[name]\n }\n }\n\n }())\n\n return transitionEnd && {\n end: transitionEnd\n }\n\n })()\n\n })\n\n}(window.jQuery);/* ==========================================================\n * bootstrap-alert.js v2.3.2\n * http://twitter.github.com/bootstrap/javascript.html#alerts\n * ==========================================================\n * Copyright 2012 Twitter, Inc.\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\n!function ($) {\n\n \"use strict\"; // jshint ;_;\n\n\n /* ALERT CLASS DEFINITION\n * ====================== */\n\n var dismiss = '[data-dismiss=\"alert\"]'\n , Alert = function (el) {\n $(el).on('click', dismiss, this.close)\n }\n\n Alert.prototype.close = function (e) {\n var $this = $(this)\n , selector = $this.attr('data-target')\n , $parent\n\n if (!selector) {\n selector = $this.attr('href')\n selector = selector && selector.replace(/.*(?=#[^\\s]*$)/, '') //strip for ie7\n }\n\n $parent = $(selector)\n\n e && e.preventDefault()\n\n $parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent())\n\n $parent.trigger(e = $.Event('close'))\n\n if (e.isDefaultPrevented()) return\n\n $parent.removeClass('in')\n\n function removeElement() {\n $parent\n .trigger('closed')\n .remove()\n }\n\n $.support.transition && $parent.hasClass('fade') ?\n $parent.on($.support.transition.end, removeElement) :\n removeElement()\n }\n\n\n /* ALERT PLUGIN DEFINITION\n * ======================= */\n\n var old = $.fn.alert\n\n $.fn.alert = function (option) {\n return this.each(function () {\n var $this = $(this)\n , data = $this.data('alert')\n if (!data) $this.data('alert', (data = new Alert(this)))\n if (typeof option == 'string') data[option].call($this)\n })\n }\n\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.alert.data-api', dismiss, Alert.prototype.close)\n\n}(window.jQuery);/* ============================================================\n * bootstrap-button.js v2.3.2\n * http://twitter.github.com/bootstrap/javascript.html#buttons\n * ============================================================\n * Copyright 2012 Twitter, Inc.\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\n!function ($) {\n\n \"use strict\"; // jshint ;_;\n\n\n /* BUTTON PUBLIC CLASS DEFINITION\n * ============================== */\n\n var Button = function (element, options) {\n this.$element = $(element)\n this.options = $.extend({}, $.fn.button.defaults, options)\n }\n\n Button.prototype.setState = function (state) {\n var d = 'disabled'\n , $el = this.$element\n , data = $el.data()\n , val = $el.is('input') ? 'val' : 'html'\n\n state = state + 'Text'\n data.resetText || $el.data('resetText', $el[val]())\n\n $el[val](data[state] || this.options[state])\n\n // push to event loop to allow forms to submit\n setTimeout(function () {\n state == 'loadingText' ?\n $el.addClass(d).attr(d, d) :\n $el.removeClass(d).removeAttr(d)\n }, 0)\n }\n\n Button.prototype.toggle = function () {\n var $parent = this.$element.closest('[data-toggle=\"buttons-radio\"]')\n\n $parent && $parent\n .find('.active')\n .removeClass('active')\n\n this.$element.toggleClass('active')\n }\n\n\n /* BUTTON PLUGIN DEFINITION\n * ======================== */\n\n var old = $.fn.button\n\n $.fn.button = function (option) {\n return this.each(function () {\n var $this = $(this)\n , data = $this.data('button')\n , options = typeof option == 'object' && option\n if (!data) $this.data('button', (data = new Button(this, options)))\n if (option == 'toggle') data.toggle()\n else if (option) data.setState(option)\n })\n }\n\n $.fn.button.defaults = {\n loadingText: 'loading...'\n }\n\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).on('click.button.data-api', '[data-toggle^=button]', function (e) {\n var $btn = $(e.target)\n if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')\n $btn.button('toggle')\n })\n\n}(window.jQuery);/* ==========================================================\n * bootstrap-carousel.js v2.3.2\n * http://twitter.github.com/bootstrap/javascript.html#carousel\n * ==========================================================\n * Copyright 2012 Twitter, Inc.\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\n!function ($) {\n\n \"use strict\"; // jshint ;_;\n\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.options.pause == 'hover' && this.$element\n .on('mouseenter', $.proxy(this.pause, this))\n .on('mouseleave', $.proxy(this.cycle, this))\n }\n\n Carousel.prototype = {\n\n cycle: function (e) {\n if (!e) this.paused = false\n if (this.interval) clearInterval(this.interval);\n this.options.interval\n && !this.paused\n && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))\n return this\n }\n\n , getActiveIndex: function () {\n this.$active = this.$element.find('.item.active')\n this.$items = this.$active.parent().children()\n return this.$items.index(this.$active)\n }\n\n , to: function (pos) {\n var activeIndex = this.getActiveIndex()\n , that = this\n\n if (pos > (this.$items.length - 1) || pos < 0) return\n\n if (this.sliding) {\n return this.$element.one('slid', function () {\n that.to(pos)\n })\n }\n\n if (activeIndex == pos) {\n return this.pause().cycle()\n }\n\n return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos]))\n }\n\n , pause: function (e) {\n if (!e) this.paused = true\n if (this.$element.find('.next, .prev').length && $.support.transition.end) {\n this.$element.trigger($.support.transition.end)\n this.cycle(true)\n }\n clearInterval(this.interval)\n this.interval = null\n return this\n }\n\n , next: function () {\n if (this.sliding) return\n return this.slide('next')\n }\n\n , prev: function () {\n if (this.sliding) return\n return this.slide('prev')\n }\n\n , slide: function (type, next) {\n var $active = this.$element.find('.item.active')\n , $next = next || $active[type]()\n , isCycling = this.interval\n , direction = type == 'next' ? 'left' : 'right'\n , fallback = type == 'next' ? 'first' : 'last'\n , that = this\n , e\n\n this.sliding = true\n\n isCycling && this.pause()\n\n $next = $next.length ? $next : this.$element.find('.item')[fallback]()\n\n e = $.Event('slide', {\n relatedTarget: $next[0]\n , direction: direction\n })\n\n if ($next.hasClass('active')) return\n\n if (this.$indicators.length) {\n this.$indicators.find('.active').removeClass('active')\n this.$element.one('slid', function () {\n var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()])\n $nextIndicator && $nextIndicator.addClass('active')\n })\n }\n\n if ($.support.transition && this.$element.hasClass('slide')) {\n this.$element.trigger(e)\n if (e.isDefaultPrevented()) return\n $next.addClass(type)\n $next[0].offsetWidth // force reflow\n $active.addClass(direction)\n $next.addClass(direction)\n this.$element.one($.support.transition.end, function () {\n $next.removeClass([type, direction].join(' ')).addClass('active')\n $active.removeClass(['active', direction].join(' '))\n that.sliding = false\n setTimeout(function () { that.$element.trigger('slid') }, 0)\n })\n } else {\n this.$element.trigger(e)\n if (e.isDefaultPrevented()) return\n $active.removeClass('active')\n $next.addClass('active')\n this.sliding = false\n this.$element.trigger('slid')\n }\n\n isCycling && this.cycle()\n\n return this\n }\n\n }\n\n\n /* CAROUSEL PLUGIN DEFINITION\n * ========================== */\n\n var old = $.fn.carousel\n\n $.fn.carousel = function (option) {\n return this.each(function () {\n var $this = $(this)\n , data = $this.data('carousel')\n , options = $.extend({}, $.fn.carousel.defaults, typeof option == 'object' && option)\n , action = typeof option == 'string' ? option : options.slide\n if (!data) $this.data('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 $.fn.carousel.defaults = {\n interval: 5000\n , pause: 'hover'\n }\n\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 /* CAROUSEL DATA-API\n * ================= */\n\n $(document).on('click.carousel.data-api', '[data-slide], [data-slide-to]', function (e) {\n var $this = $(this), href\n , $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\\s]+$)/, '')) //strip for ie7\n , options = $.extend({}, $target.data(), $this.data())\n , slideIndex\n\n $target.carousel(options)\n\n if (slideIndex = $this.attr('data-slide-to')) {\n $target.data('carousel').pause().to(slideIndex).cycle()\n }\n\n e.preventDefault()\n })\n\n}(window.jQuery);/* =============================================================\n * bootstrap-collapse.js v2.3.2\n * http://twitter.github.com/bootstrap/javascript.html#collapse\n * =============================================================\n * Copyright 2012 Twitter, Inc.\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\n!function ($) {\n\n \"use strict\"; // jshint ;_;\n\n\n /* COLLAPSE PUBLIC CLASS DEFINITION\n * ================================ */\n\n var Collapse = function (element, options) {\n this.$element = $(element)\n this.options = $.extend({}, $.fn.collapse.defaults, options)\n\n if (this.options.parent) {\n this.$parent = $(this.options.parent)\n }\n\n this.options.toggle && this.toggle()\n }\n\n Collapse.prototype = {\n\n constructor: Collapse\n\n , dimension: function () {\n var hasWidth = this.$element.hasClass('width')\n return hasWidth ? 'width' : 'height'\n }\n\n , show: function () {\n var dimension\n , scroll\n , actives\n , hasData\n\n if (this.transitioning || this.$element.hasClass('in')) return\n\n dimension = this.dimension()\n scroll = $.camelCase(['scroll', dimension].join('-'))\n actives = this.$parent && this.$parent.find('> .accordion-group > .in')\n\n if (actives && actives.length) {\n hasData = actives.data('collapse')\n if (hasData && hasData.transitioning) return\n actives.collapse('hide')\n hasData || actives.data('collapse', null)\n }\n\n this.$element[dimension](0)\n this.transition('addClass', $.Event('show'), 'shown')\n $.support.transition && this.$element[dimension](this.$element[0][scroll])\n }\n\n , hide: function () {\n var dimension\n if (this.transitioning || !this.$element.hasClass('in')) return\n dimension = this.dimension()\n this.reset(this.$element[dimension]())\n this.transition('removeClass', $.Event('hide'), 'hidden')\n this.$element[dimension](0)\n }\n\n , reset: function (size) {\n var dimension = this.dimension()\n\n this.$element\n .removeClass('collapse')\n [dimension](size || 'auto')\n [0].offsetWidth\n\n this.$element[size !== null ? 'addClass' : 'removeClass']('collapse')\n\n return this\n }\n\n , transition: function (method, startEvent, completeEvent) {\n var that = this\n , complete = function () {\n if (startEvent.type == 'show') that.reset()\n that.transitioning = 0\n that.$element.trigger(completeEvent)\n }\n\n this.$element.trigger(startEvent)\n\n if (startEvent.isDefaultPrevented()) return\n\n this.transitioning = 1\n\n this.$element[method]('in')\n\n $.support.transition && this.$element.hasClass('collapse') ?\n this.$element.one($.support.transition.end, complete) :\n complete()\n }\n\n , toggle: function () {\n this[this.$element.hasClass('in') ? 'hide' : 'show']()\n }\n\n }\n\n\n /* COLLAPSE PLUGIN DEFINITION\n * ========================== */\n\n var old = $.fn.collapse\n\n $.fn.collapse = function (option) {\n return this.each(function () {\n var $this = $(this)\n , data = $this.data('collapse')\n , options = $.extend({}, $.fn.collapse.defaults, $this.data(), typeof option == 'object' && option)\n if (!data) $this.data('collapse', (data = new Collapse(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n $.fn.collapse.defaults = {\n toggle: true\n }\n\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.collapse.data-api', '[data-toggle=collapse]', function (e) {\n var $this = $(this), href\n , target = $this.attr('data-target')\n || e.preventDefault()\n || (href = $this.attr('href')) && href.replace(/.*(?=#[^\\s]+$)/, '') //strip for ie7\n , option = $(target).data('collapse') ? 'toggle' : $this.data()\n $this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed')\n $(target).collapse(option)\n })\n\n}(window.jQuery);/* ============================================================\n * bootstrap-dropdown.js v2.3.2\n * http://twitter.github.com/bootstrap/javascript.html#dropdowns\n * ============================================================\n * Copyright 2012 Twitter, Inc.\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\n!function ($) {\n\n \"use strict\"; // jshint ;_;\n\n\n /* DROPDOWN CLASS DEFINITION\n * ========================= */\n\n var toggle = '[data-toggle=dropdown]'\n , Dropdown = function (element) {\n var $el = $(element).on('click.dropdown.data-api', this.toggle)\n $('html').on('click.dropdown.data-api', function () {\n $el.parent().removeClass('open')\n })\n }\n\n Dropdown.prototype = {\n\n constructor: Dropdown\n\n , toggle: function (e) {\n var $this = $(this)\n , $parent\n , isActive\n\n if ($this.is('.disabled, :disabled')) return\n\n $parent = getParent($this)\n\n isActive = $parent.hasClass('open')\n\n clearMenus()\n\n if (!isActive) {\n if ('ontouchstart' in document.documentElement) {\n // if mobile we we use a backdrop because click events don't delegate\n $('
').insertBefore($(this)).on('click', clearMenus)\n }\n $parent.toggleClass('open')\n }\n\n $this.focus()\n\n return false\n }\n\n , keydown: function (e) {\n var $this\n , $items\n , $active\n , $parent\n , isActive\n , index\n\n if (!/(38|40|27)/.test(e.keyCode)) return\n\n $this = $(this)\n\n e.preventDefault()\n e.stopPropagation()\n\n if ($this.is('.disabled, :disabled')) return\n\n $parent = getParent($this)\n\n isActive = $parent.hasClass('open')\n\n if (!isActive || (isActive && e.keyCode == 27)) {\n if (e.which == 27) $parent.find(toggle).focus()\n return $this.click()\n }\n\n $items = $('[role=menu] li:not(.divider):visible a', $parent)\n\n if (!$items.length) return\n\n index = $items.index($items.filter(':focus'))\n\n if (e.keyCode == 38 && index > 0) index-- // up\n if (e.keyCode == 40 && index < $items.length - 1) index++ // down\n if (!~index) index = 0\n\n $items\n .eq(index)\n .focus()\n }\n\n }\n\n function clearMenus() {\n $('.dropdown-backdrop').remove()\n $(toggle).each(function () {\n getParent($(this)).removeClass('open')\n })\n }\n\n function getParent($this) {\n var selector = $this.attr('data-target')\n , $parent\n\n if (!selector) {\n selector = $this.attr('href')\n selector = selector && /#/.test(selector) && selector.replace(/.*(?=#[^\\s]*$)/, '') //strip for ie7\n }\n\n if (selector && selector !== '#') {\n $parent = $(selector)\n }\n\n if (!$parent || !$parent.length) $parent = $this.parent()\n\n return $parent\n }\n\n\n /* DROPDOWN PLUGIN DEFINITION\n * ========================== */\n\n var old = $.fn.dropdown\n\n $.fn.dropdown = function (option) {\n return this.each(function () {\n var $this = $(this)\n , data = $this.data('dropdown')\n if (!data) $this.data('dropdown', (data = new Dropdown(this)))\n if (typeof option == 'string') data[option].call($this)\n })\n }\n\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.dropdown.data-api', clearMenus)\n .on('click.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })\n .on('click.dropdown.data-api' , toggle, Dropdown.prototype.toggle)\n .on('keydown.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)\n\n}(window.jQuery);\n/* =========================================================\n * bootstrap-modal.js v2.3.2\n * http://twitter.github.com/bootstrap/javascript.html#modals\n * =========================================================\n * Copyright 2012 Twitter, Inc.\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\n!function ($) {\n\n \"use strict\"; // jshint ;_;\n\n\n /* MODAL CLASS DEFINITION\n * ====================== */\n\n var Modal = function (element, options) {\n this.options = options\n this.$element = $(element)\n .delegate('[data-dismiss=\"modal\"]', 'click.dismiss.modal', $.proxy(this.hide, this))\n this.options.remote && this.$element.find('.modal-body').load(this.options.remote)\n }\n\n Modal.prototype = {\n\n constructor: Modal\n\n , toggle: function () {\n return this[!this.isShown ? 'show' : 'hide']()\n }\n\n , show: function () {\n var that = this\n , e = $.Event('show')\n\n this.$element.trigger(e)\n\n if (this.isShown || e.isDefaultPrevented()) return\n\n this.isShown = true\n\n this.escape()\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(document.body) //don't move modals dom position\n }\n\n that.$element.show()\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 transition ?\n that.$element.one($.support.transition.end, function () { that.$element.focus().trigger('shown') }) :\n that.$element.focus().trigger('shown')\n\n })\n }\n\n , hide: function (e) {\n e && e.preventDefault()\n\n var that = this\n\n e = $.Event('hide')\n\n this.$element.trigger(e)\n\n if (!this.isShown || e.isDefaultPrevented()) return\n\n this.isShown = false\n\n this.escape()\n\n $(document).off('focusin.modal')\n\n this.$element\n .removeClass('in')\n .attr('aria-hidden', true)\n\n $.support.transition && this.$element.hasClass('fade') ?\n this.hideWithTransition() :\n this.hideModal()\n }\n\n , enforceFocus: function () {\n var that = this\n $(document).on('focusin.modal', function (e) {\n if (that.$element[0] !== e.target && !that.$element.has(e.target).length) {\n that.$element.focus()\n }\n })\n }\n\n , escape: function () {\n var that = this\n if (this.isShown && this.options.keyboard) {\n this.$element.on('keyup.dismiss.modal', function ( e ) {\n e.which == 27 && that.hide()\n })\n } else if (!this.isShown) {\n this.$element.off('keyup.dismiss.modal')\n }\n }\n\n , hideWithTransition: function () {\n var that = this\n , timeout = setTimeout(function () {\n that.$element.off($.support.transition.end)\n that.hideModal()\n }, 500)\n\n this.$element.one($.support.transition.end, function () {\n clearTimeout(timeout)\n that.hideModal()\n })\n }\n\n , hideModal: function () {\n var that = this\n this.$element.hide()\n this.backdrop(function () {\n that.removeBackdrop()\n that.$element.trigger('hidden')\n })\n }\n\n , removeBackdrop: function () {\n this.$backdrop && this.$backdrop.remove()\n this.$backdrop = null\n }\n\n , backdrop: function (callback) {\n var that = this\n , animate = this.$element.hasClass('fade') ? 'fade' : ''\n\n if (this.isShown && this.options.backdrop) {\n var doAnimate = $.support.transition && animate\n\n this.$backdrop = $('
')\n .appendTo(document.body)\n\n this.$backdrop.click(\n this.options.backdrop == 'static' ?\n $.proxy(this.$element[0].focus, this.$element[0])\n : $.proxy(this.hide, this)\n )\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.one($.support.transition.end, callback) :\n callback()\n\n } else if (!this.isShown && this.$backdrop) {\n this.$backdrop.removeClass('in')\n\n $.support.transition && this.$element.hasClass('fade')?\n this.$backdrop.one($.support.transition.end, callback) :\n callback()\n\n } else if (callback) {\n callback()\n }\n }\n }\n\n\n /* MODAL PLUGIN DEFINITION\n * ======================= */\n\n var old = $.fn.modal\n\n $.fn.modal = function (option) {\n return this.each(function () {\n var $this = $(this)\n , data = $this.data('modal')\n , options = $.extend({}, $.fn.modal.defaults, $this.data(), typeof option == 'object' && option)\n if (!data) $this.data('modal', (data = new Modal(this, options)))\n if (typeof option == 'string') data[option]()\n else if (options.show) data.show()\n })\n }\n\n $.fn.modal.defaults = {\n backdrop: true\n , keyboard: true\n , show: true\n }\n\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.modal.data-api', '[data-toggle=\"modal\"]', function (e) {\n var $this = $(this)\n , href = $this.attr('href')\n , $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\\s]+$)/, ''))) //strip for ie7\n , option = $target.data('modal') ? 'toggle' : $.extend({ remote:!/#/.test(href) && href }, $target.data(), $this.data())\n\n e.preventDefault()\n\n $target\n .modal(option)\n .one('hide', function () {\n $this.focus()\n })\n })\n\n}(window.jQuery);\n/* ===========================================================\n * bootstrap-tooltip.js v2.3.2\n * http://twitter.github.com/bootstrap/javascript.html#tooltips\n * Inspired by the original jQuery.tipsy by Jason Frame\n * ===========================================================\n * Copyright 2012 Twitter, Inc.\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\n!function ($) {\n\n \"use strict\"; // jshint ;_;\n\n\n /* TOOLTIP PUBLIC CLASS DEFINITION\n * =============================== */\n\n var Tooltip = function (element, options) {\n this.init('tooltip', element, options)\n }\n\n Tooltip.prototype = {\n\n constructor: Tooltip\n\n , init: function (type, element, options) {\n var eventIn\n , eventOut\n , triggers\n , trigger\n , i\n\n this.type = type\n this.$element = $(element)\n this.options = this.getOptions(options)\n this.enabled = true\n\n triggers = this.options.trigger.split(' ')\n\n for (i = triggers.length; i--;) {\n trigger = triggers[i]\n if (trigger == 'click') {\n this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this))\n } else if (trigger != 'manual') {\n eventIn = trigger == 'hover' ? 'mouseenter' : 'focus'\n eventOut = trigger == 'hover' ? 'mouseleave' : 'blur'\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 , getOptions: function (options) {\n options = $.extend({}, $.fn[this.type].defaults, 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 , enter: function (e) {\n var defaults = $.fn[this.type].defaults\n , options = {}\n , self\n\n this._options && $.each(this._options, function (key, value) {\n if (defaults[key] != value) options[key] = value\n }, this)\n\n self = $(e.currentTarget)[this.type](options).data(this.type)\n\n if (!self.options.delay || !self.options.delay.show) return self.show()\n\n clearTimeout(this.timeout)\n self.hoverState = 'in'\n this.timeout = setTimeout(function() {\n if (self.hoverState == 'in') self.show()\n }, self.options.delay.show)\n }\n\n , leave: function (e) {\n var self = $(e.currentTarget)[this.type](this._options).data(this.type)\n\n if (this.timeout) clearTimeout(this.timeout)\n if (!self.options.delay || !self.options.delay.hide) return self.hide()\n\n self.hoverState = 'out'\n this.timeout = setTimeout(function() {\n if (self.hoverState == 'out') self.hide()\n }, self.options.delay.hide)\n }\n\n , show: function () {\n var $tip\n , pos\n , actualWidth\n , actualHeight\n , placement\n , tp\n , e = $.Event('show')\n\n if (this.hasContent() && this.enabled) {\n this.$element.trigger(e)\n if (e.isDefaultPrevented()) return\n $tip = this.tip()\n this.setContent()\n\n if (this.options.animation) {\n $tip.addClass('fade')\n }\n\n placement = typeof this.options.placement == 'function' ?\n this.options.placement.call(this, $tip[0], this.$element[0]) :\n this.options.placement\n\n $tip\n .detach()\n .css({ top: 0, left: 0, display: 'block' })\n\n this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element)\n\n pos = this.getPosition()\n\n actualWidth = $tip[0].offsetWidth\n actualHeight = $tip[0].offsetHeight\n\n switch (placement) {\n case 'bottom':\n tp = {top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2}\n break\n case 'top':\n tp = {top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2}\n break\n case 'left':\n tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth}\n break\n case 'right':\n tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width}\n break\n }\n\n this.applyPlacement(tp, placement)\n this.$element.trigger('shown')\n }\n }\n\n , applyPlacement: function(offset, placement){\n var $tip = this.tip()\n , width = $tip[0].offsetWidth\n , height = $tip[0].offsetHeight\n , actualWidth\n , actualHeight\n , delta\n , replace\n\n $tip\n .offset(offset)\n .addClass(placement)\n .addClass('in')\n\n actualWidth = $tip[0].offsetWidth\n actualHeight = $tip[0].offsetHeight\n\n if (placement == 'top' && actualHeight != height) {\n offset.top = offset.top + height - actualHeight\n replace = true\n }\n\n if (placement == 'bottom' || placement == 'top') {\n delta = 0\n\n if (offset.left < 0){\n delta = offset.left * -2\n offset.left = 0\n $tip.offset(offset)\n actualWidth = $tip[0].offsetWidth\n actualHeight = $tip[0].offsetHeight\n }\n\n this.replaceArrow(delta - width + actualWidth, actualWidth, 'left')\n } else {\n this.replaceArrow(actualHeight - height, actualHeight, 'top')\n }\n\n if (replace) $tip.offset(offset)\n }\n\n , replaceArrow: function(delta, dimension, position){\n this\n .arrow()\n .css(position, delta ? (50 * (1 - delta / dimension) + \"%\") : '')\n }\n\n , setContent: function () {\n var $tip = this.tip()\n , 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 , hide: function () {\n var that = this\n , $tip = this.tip()\n , e = $.Event('hide')\n\n this.$element.trigger(e)\n if (e.isDefaultPrevented()) return\n\n $tip.removeClass('in')\n\n function removeWithAnimation() {\n var timeout = setTimeout(function () {\n $tip.off($.support.transition.end).detach()\n }, 500)\n\n $tip.one($.support.transition.end, function () {\n clearTimeout(timeout)\n $tip.detach()\n })\n }\n\n $.support.transition && this.$tip.hasClass('fade') ?\n removeWithAnimation() :\n $tip.detach()\n\n this.$element.trigger('hidden')\n\n return this\n }\n\n , 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 , hasContent: function () {\n return this.getTitle()\n }\n\n , getPosition: function () {\n var el = this.$element[0]\n return $.extend({}, (typeof el.getBoundingClientRect == 'function') ? el.getBoundingClientRect() : {\n width: el.offsetWidth\n , height: el.offsetHeight\n }, this.$element.offset())\n }\n\n , getTitle: function () {\n var title\n , $e = this.$element\n , 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 , tip: function () {\n return this.$tip = this.$tip || $(this.options.template)\n }\n\n , arrow: function(){\n return this.$arrow = this.$arrow || this.tip().find(\".tooltip-arrow\")\n }\n\n , validate: function () {\n if (!this.$element[0].parentNode) {\n this.hide()\n this.$element = null\n this.options = null\n }\n }\n\n , enable: function () {\n this.enabled = true\n }\n\n , disable: function () {\n this.enabled = false\n }\n\n , toggleEnabled: function () {\n this.enabled = !this.enabled\n }\n\n , toggle: function (e) {\n var self = e ? $(e.currentTarget)[this.type](this._options).data(this.type) : this\n self.tip().hasClass('in') ? self.hide() : self.show()\n }\n\n , destroy: function () {\n this.hide().$element.off('.' + this.type).removeData(this.type)\n }\n\n }\n\n\n /* TOOLTIP PLUGIN DEFINITION\n * ========================= */\n\n var old = $.fn.tooltip\n\n $.fn.tooltip = function ( option ) {\n return this.each(function () {\n var $this = $(this)\n , data = $this.data('tooltip')\n , options = typeof option == 'object' && option\n if (!data) $this.data('tooltip', (data = new Tooltip(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n $.fn.tooltip.Constructor = Tooltip\n\n $.fn.tooltip.defaults = {\n animation: true\n , placement: 'top'\n , selector: false\n , template: '
'\n , trigger: 'hover focus'\n , title: ''\n , delay: 0\n , html: false\n , container: false\n }\n\n\n /* TOOLTIP NO CONFLICT\n * =================== */\n\n $.fn.tooltip.noConflict = function () {\n $.fn.tooltip = old\n return this\n }\n\n}(window.jQuery);\n/* ===========================================================\n * bootstrap-popover.js v2.3.2\n * http://twitter.github.com/bootstrap/javascript.html#popovers\n * ===========================================================\n * Copyright 2012 Twitter, Inc.\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\n!function ($) {\n\n \"use strict\"; // jshint ;_;\n\n\n /* POPOVER PUBLIC CLASS DEFINITION\n * =============================== */\n\n var Popover = function (element, options) {\n this.init('popover', element, options)\n }\n\n\n /* NOTE: POPOVER EXTENDS BOOTSTRAP-TOOLTIP.js\n ========================================== */\n\n Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype, {\n\n constructor: Popover\n\n , setContent: function () {\n var $tip = this.tip()\n , title = this.getTitle()\n , content = this.getContent()\n\n $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)\n $tip.find('.popover-content')[this.options.html ? 'html' : 'text'](content)\n\n $tip.removeClass('fade top bottom left right in')\n }\n\n , hasContent: function () {\n return this.getTitle() || this.getContent()\n }\n\n , getContent: function () {\n var content\n , $e = this.$element\n , o = this.options\n\n content = (typeof o.content == 'function' ? o.content.call($e[0]) : o.content)\n || $e.attr('data-content')\n\n return content\n }\n\n , tip: function () {\n if (!this.$tip) {\n this.$tip = $(this.options.template)\n }\n return this.$tip\n }\n\n , destroy: function () {\n this.hide().$element.off('.' + this.type).removeData(this.type)\n }\n\n })\n\n\n /* POPOVER PLUGIN DEFINITION\n * ======================= */\n\n var old = $.fn.popover\n\n $.fn.popover = function (option) {\n return this.each(function () {\n var $this = $(this)\n , data = $this.data('popover')\n , options = typeof option == 'object' && option\n if (!data) $this.data('popover', (data = new Popover(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n $.fn.popover.Constructor = Popover\n\n $.fn.popover.defaults = $.extend({} , $.fn.tooltip.defaults, {\n placement: 'right'\n , trigger: 'click'\n , content: ''\n , template: '

'\n })\n\n\n /* POPOVER NO CONFLICT\n * =================== */\n\n $.fn.popover.noConflict = function () {\n $.fn.popover = old\n return this\n }\n\n}(window.jQuery);\n/* =============================================================\n * bootstrap-scrollspy.js v2.3.2\n * http://twitter.github.com/bootstrap/javascript.html#scrollspy\n * =============================================================\n * Copyright 2012 Twitter, Inc.\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\n!function ($) {\n\n \"use strict\"; // jshint ;_;\n\n\n /* SCROLLSPY CLASS DEFINITION\n * ========================== */\n\n function ScrollSpy(element, options) {\n var process = $.proxy(this.process, this)\n , $element = $(element).is('body') ? $(window) : $(element)\n , href\n this.options = $.extend({}, $.fn.scrollspy.defaults, options)\n this.$scrollElement = $element.on('scroll.scroll-spy.data-api', process)\n this.selector = (this.options.target\n || ((href = $(element).attr('href')) && href.replace(/.*(?=#[^\\s]+$)/, '')) //strip for ie7\n || '') + ' .nav li > a'\n this.$body = $('body')\n this.refresh()\n this.process()\n }\n\n ScrollSpy.prototype = {\n\n constructor: ScrollSpy\n\n , refresh: function () {\n var self = this\n , $targets\n\n this.offsets = $([])\n this.targets = $([])\n\n $targets = this.$body\n .find(this.selector)\n .map(function () {\n var $el = $(this)\n , href = $el.data('target') || $el.attr('href')\n , $href = /^#\\w/.test(href) && $(href)\n return ( $href\n && $href.length\n && [[ $href.position().top + (!$.isWindow(self.$scrollElement.get(0)) && self.$scrollElement.scrollTop()), 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 , process: function () {\n var scrollTop = this.$scrollElement.scrollTop() + this.options.offset\n , scrollHeight = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight\n , maxScroll = scrollHeight - this.$scrollElement.height()\n , offsets = this.offsets\n , targets = this.targets\n , activeTarget = this.activeTarget\n , i\n\n if (scrollTop >= maxScroll) {\n return activeTarget != (i = targets.last()[0])\n && this.activate ( i )\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 , activate: function (target) {\n var active\n , selector\n\n this.activeTarget = target\n\n $(this.selector)\n .parent('.active')\n .removeClass('active')\n\n selector = this.selector\n + '[data-target=\"' + target + '\"],'\n + this.selector + '[href=\"' + target + '\"]'\n\n active = $(selector)\n .parent('li')\n .addClass('active')\n\n if (active.parent('.dropdown-menu').length) {\n active = active.closest('li.dropdown').addClass('active')\n }\n\n active.trigger('activate')\n }\n\n }\n\n\n /* SCROLLSPY PLUGIN DEFINITION\n * =========================== */\n\n var old = $.fn.scrollspy\n\n $.fn.scrollspy = function (option) {\n return this.each(function () {\n var $this = $(this)\n , data = $this.data('scrollspy')\n , options = typeof option == 'object' && option\n if (!data) $this.data('scrollspy', (data = new ScrollSpy(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n $.fn.scrollspy.Constructor = ScrollSpy\n\n $.fn.scrollspy.defaults = {\n offset: 10\n }\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', function () {\n $('[data-spy=\"scroll\"]').each(function () {\n var $spy = $(this)\n $spy.scrollspy($spy.data())\n })\n })\n\n}(window.jQuery);/* ========================================================\n * bootstrap-tab.js v2.3.2\n * http://twitter.github.com/bootstrap/javascript.html#tabs\n * ========================================================\n * Copyright 2012 Twitter, Inc.\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\n!function ($) {\n\n \"use strict\"; // jshint ;_;\n\n\n /* TAB CLASS DEFINITION\n * ==================== */\n\n var Tab = function (element) {\n this.element = $(element)\n }\n\n Tab.prototype = {\n\n constructor: Tab\n\n , show: function () {\n var $this = this.element\n , $ul = $this.closest('ul:not(.dropdown-menu)')\n , selector = $this.attr('data-target')\n , previous\n , $target\n , e\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 previous = $ul.find('.active:last a')[0]\n\n e = $.Event('show', {\n relatedTarget: previous\n })\n\n $this.trigger(e)\n\n if (e.isDefaultPrevented()) return\n\n $target = $(selector)\n\n this.activate($this.parent('li'), $ul)\n this.activate($target, $target.parent(), function () {\n $this.trigger({\n type: 'shown'\n , relatedTarget: previous\n })\n })\n }\n\n , activate: function ( element, container, callback) {\n var $active = container.find('> .active')\n , transition = callback\n && $.support.transition\n && $active.hasClass('fade')\n\n function next() {\n $active\n .removeClass('active')\n .find('> .dropdown-menu > .active')\n .removeClass('active')\n\n element.addClass('active')\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.closest('li.dropdown').addClass('active')\n }\n\n callback && callback()\n }\n\n transition ?\n $active.one($.support.transition.end, next) :\n next()\n\n $active.removeClass('in')\n }\n }\n\n\n /* TAB PLUGIN DEFINITION\n * ===================== */\n\n var old = $.fn.tab\n\n $.fn.tab = function ( option ) {\n return this.each(function () {\n var $this = $(this)\n , data = $this.data('tab')\n if (!data) $this.data('tab', (data = new Tab(this)))\n if (typeof option == 'string') data[option]()\n })\n }\n\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 $(document).on('click.tab.data-api', '[data-toggle=\"tab\"], [data-toggle=\"pill\"]', function (e) {\n e.preventDefault()\n $(this).tab('show')\n })\n\n}(window.jQuery);/* =============================================================\n * bootstrap-typeahead.js v2.3.2\n * http://twitter.github.com/bootstrap/javascript.html#typeahead\n * =============================================================\n * Copyright 2012 Twitter, Inc.\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\n!function($){\n\n \"use strict\"; // jshint ;_;\n\n\n /* TYPEAHEAD PUBLIC CLASS DEFINITION\n * ================================= */\n\n var Typeahead = function (element, options) {\n this.$element = $(element)\n this.options = $.extend({}, $.fn.typeahead.defaults, options)\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.updater = this.options.updater || this.updater\n this.source = this.options.source\n this.$menu = $(this.options.menu)\n this.shown = false\n this.listen()\n }\n\n Typeahead.prototype = {\n\n constructor: Typeahead\n\n , select: function () {\n var val = this.$menu.find('.active').attr('data-value')\n this.$element\n .val(this.updater(val))\n .change()\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 this.shown = true\n return this\n }\n\n , hide: function () {\n this.$menu.hide()\n this.shown = false\n return this\n }\n\n , lookup: function (event) {\n var items\n\n this.query = this.$element.val()\n\n if (!this.query || this.query.length < this.options.minLength) {\n return this.shown ? this.hide() : this\n }\n\n items = $.isFunction(this.source) ? this.source(this.query, $.proxy(this.process, this)) : this.source\n\n return items ? this.process(items) : this\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 , 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 '' + match + ''\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 , 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\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 break\n\n case 40: // down arrow\n e.preventDefault()\n this.next()\n break\n }\n\n e.stopPropagation()\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 case 38: // up arrow\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.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 this.focused = false\n if (!this.mousedover && this.shown) this.hide()\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 if (!this.focused && this.shown) this.hide()\n }\n\n }\n\n\n /* TYPEAHEAD PLUGIN DEFINITION\n * =========================== */\n\n var old = $.fn.typeahead\n\n $.fn.typeahead = function (option) {\n return this.each(function () {\n var $this = $(this)\n , data = $this.data('typeahead')\n , options = typeof option == 'object' && option\n if (!data) $this.data('typeahead', (data = new Typeahead(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n $.fn.typeahead.defaults = {\n source: []\n , items: 8\n , menu: ''\n , item: '
  • '\n , minLength: 1\n }\n\n $.fn.typeahead.Constructor = Typeahead\n\n\n /* TYPEAHEAD NO CONFLICT\n * =================== */\n\n $.fn.typeahead.noConflict = function () {\n $.fn.typeahead = old\n return this\n }\n\n\n /* TYPEAHEAD DATA-API\n * ================== */\n\n $(document).on('focus.typeahead.data-api', '[data-provide=\"typeahead\"]', function (e) {\n var $this = $(this)\n if ($this.data('typeahead')) return\n $this.typeahead($this.data())\n })\n\n}(window.jQuery);\n/* ==========================================================\n * bootstrap-affix.js v2.3.2\n * http://twitter.github.com/bootstrap/javascript.html#affix\n * ==========================================================\n * Copyright 2012 Twitter, Inc.\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\n!function ($) {\n\n \"use strict\"; // jshint ;_;\n\n\n /* AFFIX CLASS DEFINITION\n * ====================== */\n\n var Affix = function (element, options) {\n this.options = $.extend({}, $.fn.affix.defaults, options)\n this.$window = $(window)\n .on('scroll.affix.data-api', $.proxy(this.checkPosition, this))\n .on('click.affix.data-api', $.proxy(function () { setTimeout($.proxy(this.checkPosition, this), 1) }, this))\n this.$element = $(element)\n this.checkPosition()\n }\n\n Affix.prototype.checkPosition = function () {\n if (!this.$element.is(':visible')) return\n\n var scrollHeight = $(document).height()\n , scrollTop = this.$window.scrollTop()\n , position = this.$element.offset()\n , offset = this.options.offset\n , offsetBottom = offset.bottom\n , offsetTop = offset.top\n , reset = 'affix affix-top affix-bottom'\n , affix\n\n if (typeof offset != 'object') offsetBottom = offsetTop = offset\n if (typeof offsetTop == 'function') offsetTop = offset.top()\n if (typeof offsetBottom == 'function') offsetBottom = offset.bottom()\n\n affix = this.unpin != null && (scrollTop + this.unpin <= position.top) ?\n false : offsetBottom != null && (position.top + this.$element.height() >= scrollHeight - offsetBottom) ?\n 'bottom' : offsetTop != null && scrollTop <= offsetTop ?\n 'top' : false\n\n if (this.affixed === affix) return\n\n this.affixed = affix\n this.unpin = affix == 'bottom' ? position.top - scrollTop : null\n\n this.$element.removeClass(reset).addClass('affix' + (affix ? '-' + affix : ''))\n }\n\n\n /* AFFIX PLUGIN DEFINITION\n * ======================= */\n\n var old = $.fn.affix\n\n $.fn.affix = function (option) {\n return this.each(function () {\n var $this = $(this)\n , data = $this.data('affix')\n , options = typeof option == 'object' && option\n if (!data) $this.data('affix', (data = new Affix(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n $.fn.affix.Constructor = Affix\n\n $.fn.affix.defaults = {\n offset: 0\n }\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 , data = $spy.data()\n\n data.offset = data.offset || {}\n\n data.offsetBottom && (data.offset.bottom = data.offsetBottom)\n data.offsetTop && (data.offset.top = data.offsetTop)\n\n $spy.affix(data)\n })\n })\n\n\n}(window.jQuery);","/**\r\n* jquery.bootstrap.js\r\nCopyright (c) Kris Zhang \r\nLicense: MIT (https://github.com/newghost/bootstrap-jquery-plugin/blob/master/LICENSE)\r\nSrc: https://raw.githubusercontent.com/newghost/bootstrap-jquery-plugin/master/js/jquery.bootstrap.min.js\r\nhttp://bootstrap.ourjs.com/\r\n*/\r\nString.prototype.format || (String.prototype.format = function () { var e = arguments; return this.replace(/{(\\d+)}/g, function (t, n) { return typeof e[n] != \"undefined\" ? e[n] : t }) }), function (e) { e.fn.dialog = function (t) { var n = this, r = e(n), i = e(document.body), s = r.closest(\".dialog\"), o = \"dialog-parent\", u = arguments[1], a = arguments[2], f = function () { var t = '

    '; s = e(t), e(document.body).append(s), s.find(\".modal-body\").append(r) }, l = function (r) { var i = (r || t || {}).buttons || {}, o = s.find(\".modal-footer\"); o.empty(); var u = i.constructor == Array; for (var a in i) { var f = i[a], l = \"\", c = \"\", h = \"btn-default\", p = \"\"; if (f.constructor == Object) l = f.id, c = f.text, h = f[\"class\"] || f.classed || h, p = f.click; else { if (!!u || f.constructor != Function) continue; c = a, p = f } $button = e('\\n \\n \\n
    \\n
    '},te=function(){function e(){var i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};t(this,e),this.customOptions=i,this.settings=l(ee,i),this.effectsClasses=this.getAnimationClasses(),this.videoPlayers={},this.apiEvents=[],this.fullElementsList=!1}return n(e,[{key:\"init\",value:function(){var e=this,t=this.getSelector();t&&(this.baseEvents=a(\"click\",{onElement:t,withCallback:function(t,i){t.preventDefault(),e.open(i)}})),this.elements=this.getElements()}},{key:\"open\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(0==this.elements.length)return!1;this.activeSlide=null,this.prevActiveSlideIndex=null,this.prevActiveSlide=null;var i=M(t)?t:this.settings.startAt;if(k(e)){var n=e.getAttribute(\"data-gallery\");n&&(this.fullElementsList=this.elements,this.elements=this.getGalleryElements(this.elements,n)),I(i)&&(i=this.getElementIndex(e))<0&&(i=0)}M(i)||(i=0),this.build(),g(this.overlay,\"none\"==this.settings.openEffect?\"none\":this.settings.cssEfects.fade.in);var s=document.body,l=window.innerWidth-document.documentElement.clientWidth;if(l>0){var o=document.createElement(\"style\");o.type=\"text/css\",o.className=\"gcss-styles\",o.innerText=\".gscrollbar-fixer {margin-right: \".concat(l,\"px}\"),document.head.appendChild(o),h(s,\"gscrollbar-fixer\")}h(s,\"glightbox-open\"),h(Q,\"glightbox-open\"),J&&(h(document.body,\"glightbox-mobile\"),this.settings.slideEffect=\"slide\"),this.showSlide(i,!0),1==this.elements.length?(h(this.prevButton,\"glightbox-button-hidden\"),h(this.nextButton,\"glightbox-button-hidden\")):(d(this.prevButton,\"glightbox-button-hidden\"),d(this.nextButton,\"glightbox-button-hidden\")),this.lightboxOpen=!0,this.trigger(\"open\"),T(this.settings.onOpen)&&this.settings.onOpen(),K&&this.settings.touchNavigation&&B(this),this.settings.keyboardNavigation&&X(this)}},{key:\"openAt\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.open(null,e)}},{key:\"showSlide\",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];f(this.loader),this.index=parseInt(t);var n=this.slidesContainer.querySelector(\".current\");n&&d(n,\"current\"),this.slideAnimateOut();var s=this.slidesContainer.querySelectorAll(\".gslide\")[t];if(c(s,\"loaded\"))this.slideAnimateIn(s,i),p(this.loader);else{f(this.loader);var l=this.elements[t],o={index:this.index,slide:s,slideNode:s,slideConfig:l.slideConfig,slideIndex:this.index,trigger:l.node,player:null};this.trigger(\"slide_before_load\",o),l.instance.setContent(s,(function(){p(e.loader),e.resize(),e.slideAnimateIn(s,i),e.trigger(\"slide_after_load\",o)}))}this.slideDescription=s.querySelector(\".gslide-description\"),this.slideDescriptionContained=this.slideDescription&&c(this.slideDescription.parentNode,\"gslide-media\"),this.settings.preload&&(this.preloadSlide(t+1),this.preloadSlide(t-1)),this.updateNavigationClasses(),this.activeSlide=s}},{key:\"preloadSlide\",value:function(e){var t=this;if(e<0||e>this.elements.length-1)return!1;if(I(this.elements[e]))return!1;var i=this.slidesContainer.querySelectorAll(\".gslide\")[e];if(c(i,\"loaded\"))return!1;var n=this.elements[e],s=n.type,l={index:e,slide:i,slideNode:i,slideConfig:n.slideConfig,slideIndex:e,trigger:n.node,player:null};this.trigger(\"slide_before_load\",l),\"video\"==s||\"external\"==s?setTimeout((function(){n.instance.setContent(i,(function(){t.trigger(\"slide_after_load\",l)}))}),200):n.instance.setContent(i,(function(){t.trigger(\"slide_after_load\",l)}))}},{key:\"prevSlide\",value:function(){this.goToSlide(this.index-1)}},{key:\"nextSlide\",value:function(){this.goToSlide(this.index+1)}},{key:\"goToSlide\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this.prevActiveSlide=this.activeSlide,this.prevActiveSlideIndex=this.index,!this.loop()&&(e<0||e>this.elements.length-1))return!1;e<0?e=this.elements.length-1:e>=this.elements.length&&(e=0),this.showSlide(e)}},{key:\"insertSlide\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;t<0&&(t=this.elements.length);var i=new U(e,this,t),n=i.getConfig(),s=l({},n),o=i.create(),r=this.elements.length-1;s.index=t,s.node=!1,s.instance=i,s.slideConfig=n,this.elements.splice(t,0,s);var a=null,h=null;if(this.slidesContainer){if(t>r)this.slidesContainer.appendChild(o);else{var d=this.slidesContainer.querySelectorAll(\".gslide\")[t];this.slidesContainer.insertBefore(o,d)}(this.settings.preload&&0==this.index&&0==t||this.index-1==t||this.index+1==t)&&this.preloadSlide(t),0==this.index&&0==t&&(this.index=1),this.updateNavigationClasses(),a=this.slidesContainer.querySelectorAll(\".gslide\")[t],h=this.getSlidePlayerInstance(t),s.slideNode=a}this.trigger(\"slide_inserted\",{index:t,slide:a,slideNode:a,slideConfig:n,slideIndex:t,trigger:null,player:h}),T(this.settings.slideInserted)&&this.settings.slideInserted({index:t,slide:a,player:h})}},{key:\"removeSlide\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e<0||e>this.elements.length-1)return!1;var t=this.slidesContainer&&this.slidesContainer.querySelectorAll(\".gslide\")[e];t&&(this.getActiveSlideIndex()==e&&(e==this.elements.length-1?this.prevSlide():this.nextSlide()),t.parentNode.removeChild(t)),this.elements.splice(e,1),this.trigger(\"slide_removed\",e),T(this.settings.slideRemoved)&&this.settings.slideRemoved(e)}},{key:\"slideAnimateIn\",value:function(e,t){var i=this,n=e.querySelector(\".gslide-media\"),s=e.querySelector(\".gslide-description\"),l={index:this.prevActiveSlideIndex,slide:this.prevActiveSlide,slideNode:this.prevActiveSlide,slideIndex:this.prevActiveSlide,slideConfig:I(this.prevActiveSlideIndex)?null:this.elements[this.prevActiveSlideIndex].slideConfig,trigger:I(this.prevActiveSlideIndex)?null:this.elements[this.prevActiveSlideIndex].node,player:this.getSlidePlayerInstance(this.prevActiveSlideIndex)},o={index:this.index,slide:this.activeSlide,slideNode:this.activeSlide,slideConfig:this.elements[this.index].slideConfig,slideIndex:this.index,trigger:this.elements[this.index].node,player:this.getSlidePlayerInstance(this.index)};if(n.offsetWidth>0&&s&&(p(s),s.style.display=\"\"),d(e,this.effectsClasses),t)g(e,this.settings.cssEfects[this.settings.openEffect].in,(function(){i.settings.autoplayVideos&&i.slidePlayerPlay(e),i.trigger(\"slide_changed\",{prev:l,current:o}),T(i.settings.afterSlideChange)&&i.settings.afterSlideChange.apply(i,[l,o])}));else{var r=this.settings.slideEffect,a=\"none\"!==r?this.settings.cssEfects[r].in:r;this.prevActiveSlideIndex>this.index&&\"slide\"==this.settings.slideEffect&&(a=this.settings.cssEfects.slideBack.in),g(e,a,(function(){i.settings.autoplayVideos&&i.slidePlayerPlay(e),i.trigger(\"slide_changed\",{prev:l,current:o}),T(i.settings.afterSlideChange)&&i.settings.afterSlideChange.apply(i,[l,o])}))}setTimeout((function(){i.resize(e)}),100),h(e,\"current\")}},{key:\"slideAnimateOut\",value:function(){if(!this.prevActiveSlide)return!1;var e=this.prevActiveSlide;d(e,this.effectsClasses),h(e,\"prev\");var t=this.settings.slideEffect,i=\"none\"!==t?this.settings.cssEfects[t].out:t;this.slidePlayerPause(e),this.trigger(\"slide_before_change\",{prev:{index:this.prevActiveSlideIndex,slide:this.prevActiveSlide,slideNode:this.prevActiveSlide,slideIndex:this.prevActiveSlideIndex,slideConfig:I(this.prevActiveSlideIndex)?null:this.elements[this.prevActiveSlideIndex].slideConfig,trigger:I(this.prevActiveSlideIndex)?null:this.elements[this.prevActiveSlideIndex].node,player:this.getSlidePlayerInstance(this.prevActiveSlideIndex)},current:{index:this.index,slide:this.activeSlide,slideNode:this.activeSlide,slideIndex:this.index,slideConfig:this.elements[this.index].slideConfig,trigger:this.elements[this.index].node,player:this.getSlidePlayerInstance(this.index)}}),T(this.settings.beforeSlideChange)&&this.settings.beforeSlideChange.apply(this,[{index:this.prevActiveSlideIndex,slide:this.prevActiveSlide,player:this.getSlidePlayerInstance(this.prevActiveSlideIndex)},{index:this.index,slide:this.activeSlide,player:this.getSlidePlayerInstance(this.index)}]),this.prevActiveSlideIndex>this.index&&\"slide\"==this.settings.slideEffect&&(i=this.settings.cssEfects.slideBack.out),g(e,i,(function(){var t=e.querySelector(\".ginner-container\"),i=e.querySelector(\".gslide-media\"),n=e.querySelector(\".gslide-description\");t.style.transform=\"\",i.style.transform=\"\",d(i,\"greset\"),i.style.opacity=\"\",n&&(n.style.opacity=\"\"),d(e,\"prev\")}))}},{key:\"getAllPlayers\",value:function(){return this.videoPlayers}},{key:\"getSlidePlayerInstance\",value:function(e){var t=\"gvideo\"+e,i=this.getAllPlayers();return!(!O(i,t)||!i[t])&&i[t]}},{key:\"stopSlideVideo\",value:function(e){if(k(e)){var t=e.querySelector(\".gvideo-wrapper\");t&&(e=t.getAttribute(\"data-index\"))}console.log(\"stopSlideVideo is deprecated, use slidePlayerPause\");var i=this.getSlidePlayerInstance(e);i&&i.playing&&i.pause()}},{key:\"slidePlayerPause\",value:function(e){if(k(e)){var t=e.querySelector(\".gvideo-wrapper\");t&&(e=t.getAttribute(\"data-index\"))}var i=this.getSlidePlayerInstance(e);i&&i.playing&&i.pause()}},{key:\"playSlideVideo\",value:function(e){if(k(e)){var t=e.querySelector(\".gvideo-wrapper\");t&&(e=t.getAttribute(\"data-index\"))}console.log(\"playSlideVideo is deprecated, use slidePlayerPlay\");var i=this.getSlidePlayerInstance(e);i&&!i.playing&&i.play()}},{key:\"slidePlayerPlay\",value:function(e){if(k(e)){var t=e.querySelector(\".gvideo-wrapper\");t&&(e=t.getAttribute(\"data-index\"))}var i=this.getSlidePlayerInstance(e);i&&!i.playing&&(i.play(),this.settings.autofocusVideos&&i.elements.container.focus())}},{key:\"setElements\",value:function(e){var t=this;this.settings.elements=!1;var i=[];e&&e.length&&o(e,(function(e,n){var s=new U(e,t,n),o=s.getConfig(),r=l({},o);r.slideConfig=o,r.instance=s,r.index=n,i.push(r)})),this.elements=i,this.lightboxOpen&&(this.slidesContainer.innerHTML=\"\",this.elements.length&&(o(this.elements,(function(){var e=m(t.settings.slideHTML);t.slidesContainer.appendChild(e)})),this.showSlide(0,!0)))}},{key:\"getElementIndex\",value:function(e){var t=!1;return o(this.elements,(function(i,n){if(O(i,\"node\")&&i.node==e)return t=n,!0})),t}},{key:\"getElements\",value:function(){var e=this,t=[];this.elements=this.elements?this.elements:[],!I(this.settings.elements)&&E(this.settings.elements)&&this.settings.elements.length&&o(this.settings.elements,(function(i,n){var s=new U(i,e,n),o=s.getConfig(),r=l({},o);r.node=!1,r.index=n,r.instance=s,r.slideConfig=o,t.push(r)}));var i=!1;return this.getSelector()&&(i=document.querySelectorAll(this.getSelector())),i?(o(i,(function(i,n){var s=new U(i,e,n),o=s.getConfig(),r=l({},o);r.node=i,r.index=n,r.instance=s,r.slideConfig=o,r.gallery=i.getAttribute(\"data-gallery\"),t.push(r)})),t):t}},{key:\"getGalleryElements\",value:function(e,t){return e.filter((function(e){return e.gallery==t}))}},{key:\"getSelector\",value:function(){return!this.settings.elements&&(this.settings.selector&&\"data-\"==this.settings.selector.substring(0,5)?\"*[\".concat(this.settings.selector,\"]\"):this.settings.selector)}},{key:\"getActiveSlide\",value:function(){return this.slidesContainer.querySelectorAll(\".gslide\")[this.index]}},{key:\"getActiveSlideIndex\",value:function(){return this.index}},{key:\"getAnimationClasses\",value:function(){var e=[];for(var t in this.settings.cssEfects)if(this.settings.cssEfects.hasOwnProperty(t)){var i=this.settings.cssEfects[t];e.push(\"g\".concat(i.in)),e.push(\"g\".concat(i.out))}return e.join(\" \")}},{key:\"build\",value:function(){var e=this;if(this.built)return!1;var t=document.body.childNodes,i=[];o(t,(function(e){e.parentNode==document.body&&\"#\"!==e.nodeName.charAt(0)&&e.hasAttribute&&!e.hasAttribute(\"aria-hidden\")&&(i.push(e),e.setAttribute(\"aria-hidden\",\"true\"))}));var n=O(this.settings.svg,\"next\")?this.settings.svg.next:\"\",s=O(this.settings.svg,\"prev\")?this.settings.svg.prev:\"\",l=O(this.settings.svg,\"close\")?this.settings.svg.close:\"\",r=this.settings.lightboxHTML;r=m(r=(r=(r=r.replace(/{nextSVG}/g,n)).replace(/{prevSVG}/g,s)).replace(/{closeSVG}/g,l)),document.body.appendChild(r);var d=document.getElementById(\"glightbox-body\");this.modal=d;var g=d.querySelector(\".gclose\");this.prevButton=d.querySelector(\".gprev\"),this.nextButton=d.querySelector(\".gnext\"),this.overlay=d.querySelector(\".goverlay\"),this.loader=d.querySelector(\".gloader\"),this.slidesContainer=document.getElementById(\"glightbox-slider\"),this.bodyHiddenChildElms=i,this.events={},h(this.modal,\"glightbox-\"+this.settings.skin),this.settings.closeButton&&g&&(this.events.close=a(\"click\",{onElement:g,withCallback:function(t,i){t.preventDefault(),e.close()}})),g&&!this.settings.closeButton&&g.parentNode.removeChild(g),this.nextButton&&(this.events.next=a(\"click\",{onElement:this.nextButton,withCallback:function(t,i){t.preventDefault(),e.nextSlide()}})),this.prevButton&&(this.events.prev=a(\"click\",{onElement:this.prevButton,withCallback:function(t,i){t.preventDefault(),e.prevSlide()}})),this.settings.closeOnOutsideClick&&(this.events.outClose=a(\"click\",{onElement:d,withCallback:function(t,i){e.preventOutsideClick||c(document.body,\"glightbox-mobile\")||u(t.target,\".ginner-container\")||u(t.target,\".gbtn\")||c(t.target,\"gnext\")||c(t.target,\"gprev\")||e.close()}})),o(this.elements,(function(t,i){e.slidesContainer.appendChild(t.instance.create()),t.slideNode=e.slidesContainer.querySelectorAll(\".gslide\")[i]})),K&&h(document.body,\"glightbox-touch\"),this.events.resize=a(\"resize\",{onElement:window,withCallback:function(){e.resize()}}),this.built=!0}},{key:\"resize\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if((e=e||this.activeSlide)&&!c(e,\"zoomed\")){var t=y(),i=e.querySelector(\".gvideo-wrapper\"),n=e.querySelector(\".gslide-image\"),s=this.slideDescription,l=t.width,o=t.height;if(l<=768?h(document.body,\"glightbox-mobile\"):d(document.body,\"glightbox-mobile\"),i||n){var r=!1;if(s&&(c(s,\"description-bottom\")||c(s,\"description-top\"))&&!c(s,\"gabsolute\")&&(r=!0),n)if(l<=768)n.querySelector(\"img\");else if(r){var a=s.offsetHeight,u=n.querySelector(\"img\");u.setAttribute(\"style\",\"max-height: calc(100vh - \".concat(a,\"px)\")),s.setAttribute(\"style\",\"max-width: \".concat(u.offsetWidth,\"px;\"))}if(i){var g=O(this.settings.plyr.config,\"ratio\")?this.settings.plyr.config.ratio:\"\";if(!g){var v=i.clientWidth,f=i.clientHeight,p=v/f;g=\"\".concat(v/p,\":\").concat(f/p)}var m=g.split(\":\"),x=this.settings.videosWidth,b=this.settings.videosWidth,S=(b=M(x)||-1!==x.indexOf(\"px\")?parseInt(x):-1!==x.indexOf(\"vw\")?l*parseInt(x)/100:-1!==x.indexOf(\"vh\")?o*parseInt(x)/100:-1!==x.indexOf(\"%\")?l*parseInt(x)/100:parseInt(i.clientWidth))/(parseInt(m[0])/parseInt(m[1]));if(S=Math.floor(S),r&&(o-=s.offsetHeight),b>l||S>o||ob){var w=i.offsetWidth,T=i.offsetHeight,C=o/T,k={width:w*C,height:T*C};i.parentNode.setAttribute(\"style\",\"max-width: \".concat(k.width,\"px\")),r&&s.setAttribute(\"style\",\"max-width: \".concat(k.width,\"px;\"))}else i.parentNode.style.maxWidth=\"\".concat(x),r&&s.setAttribute(\"style\",\"max-width: \".concat(x,\";\"))}}}}},{key:\"reload\",value:function(){this.init()}},{key:\"updateNavigationClasses\",value:function(){var e=this.loop();d(this.nextButton,\"disabled\"),d(this.prevButton,\"disabled\"),0==this.index&&this.elements.length-1==0?(h(this.prevButton,\"disabled\"),h(this.nextButton,\"disabled\")):0!==this.index||e?this.index!==this.elements.length-1||e||h(this.nextButton,\"disabled\"):h(this.prevButton,\"disabled\")}},{key:\"loop\",value:function(){var e=O(this.settings,\"loopAtEnd\")?this.settings.loopAtEnd:null;return e=O(this.settings,\"loop\")?this.settings.loop:e,e}},{key:\"close\",value:function(){var e=this;if(!this.lightboxOpen){if(this.events){for(var t in this.events)this.events.hasOwnProperty(t)&&this.events[t].destroy();this.events=null}return!1}if(this.closing)return!1;this.closing=!0,this.slidePlayerPause(this.activeSlide),this.fullElementsList&&(this.elements=this.fullElementsList),this.bodyHiddenChildElms.length&&o(this.bodyHiddenChildElms,(function(e){e.removeAttribute(\"aria-hidden\")})),h(this.modal,\"glightbox-closing\"),g(this.overlay,\"none\"==this.settings.openEffect?\"none\":this.settings.cssEfects.fade.out),g(this.activeSlide,this.settings.cssEfects[this.settings.closeEffect].out,(function(){if(e.activeSlide=null,e.prevActiveSlideIndex=null,e.prevActiveSlide=null,e.built=!1,e.events){for(var t in e.events)e.events.hasOwnProperty(t)&&e.events[t].destroy();e.events=null}var i=document.body;d(Q,\"glightbox-open\"),d(i,\"glightbox-open touching gdesc-open glightbox-touch glightbox-mobile gscrollbar-fixer\"),e.modal.parentNode.removeChild(e.modal),e.trigger(\"close\"),T(e.settings.onClose)&&e.settings.onClose();var n=document.querySelector(\".gcss-styles\");n&&n.parentNode.removeChild(n),e.lightboxOpen=!1,e.closing=null}))}},{key:\"destroy\",value:function(){this.close(),this.clearAllEvents(),this.baseEvents&&this.baseEvents.destroy()}},{key:\"on\",value:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!e||!T(t))throw new TypeError(\"Event name and callback must be defined\");this.apiEvents.push({evt:e,once:i,callback:t})}},{key:\"once\",value:function(e,t){this.on(e,t,!0)}},{key:\"trigger\",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=[];o(this.apiEvents,(function(t,s){var l=t.evt,o=t.once,r=t.callback;l==e&&(r(i),o&&n.push(s))})),n.length&&o(n,(function(e){return t.apiEvents.splice(e,1)}))}},{key:\"clearAllEvents\",value:function(){this.apiEvents.splice(0,this.apiEvents.length)}},{key:\"version\",value:function(){return\"3.1.1\"}}]),e}();return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=new te(e);return t.init(),t}}));\n","\r\n\r\nvar SearchService = (function() {\r\n \r\n var searchServiceBaseUrl;\r\n \r\n //Private Methods\r\n var simpleAjaxRequest = function (method, argument) {\r\n ajaxRequest(method, argument, null, null);\r\n }\r\n var ajaxRequest = function (method, args, successCallback, errorCallback) {\r\n $.ajax({\r\n url: searchServiceBaseUrl,\r\n type: 'POST',\r\n cache: false,\r\n data: { method: method, args: args },\r\n success: successCallback,\r\n error: errorCallback\r\n });\r\n }\r\n\r\n return {\r\n Init: function(url) {\r\n searchServiceBaseUrl = url\r\n },\r\n\r\n SetCoverVisibility: function(visible) {\r\n simpleAjaxRequest('SetCoverVisibility', { visible: visible } );\r\n },\r\n\r\n SetSearchDetailsVisibility: function(visible) {\r\n simpleAjaxRequest('SetSearchDetailsVisibility', { visible: visible });\r\n },\r\n\r\n SetSearchTypeState: function(state) {\r\n simpleAjaxRequest('SetSearchType', { searchType: state });\r\n },\r\n \r\n SetFilterTypeState: function (state) {\r\n simpleAjaxRequest('SetFilterType', { filterType: state });\r\n },\r\n \r\n SetFontSizeState: function (state) {\r\n simpleAjaxRequest('SetFontSize', { size: state });\r\n },\r\n }\r\n})();\r\n\r\n","\r\n(function ($) {\r\n $.loginAsync = function (el, options) {\r\n // To avoid scope issues, use 'base' instead of 'this'\r\n // to reference this class from internal events and functions.\r\n var base = this;\r\n\r\n // Access to jQuery and DOM versions of element\r\n base.$el = $(el);\r\n base.el = el;\r\n\r\n // Add a reverse reference to the DOM object\r\n base.$el.data(\"loginAsync\", base);\r\n\r\n base.showResult = function(callback) {\r\n $(base.options.loginFormId + ' .loginLoading').fadeOut('fast', function () {\r\n $(base.options.loginFormId + ' .spinner-container').spin(false);\r\n $(base.options.loginFormId + ' .loginFieldset').fadeIn('fast', function () {\r\n $(base.options.errorObject).show();\r\n if (typeof callback == \"function\")\r\n callback();\r\n });\r\n });\r\n };\r\n base.showLoading = function (callback) {\r\n $(base.options.errorObject).hide();\r\n $(base.options.loginFormId + ' .loginFieldset').fadeOut('fast', function () {\r\n $(base.options.loginFormId + ' .spinner-container').spin();\r\n $(base.options.loginFormId + ' .loginLoading').fadeIn('fast', function () {\r\n if (typeof callback == \"function\")\r\n callback();\r\n });\r\n });\r\n };\r\n base.checkResult = function(result) {\r\n if (result !== \"\" && result === \"okbutbadpassword\") {\r\n if (base.options.redirectBadPasswordTo.length > 0) {\r\n if (window.parent !== window.top) {\r\n window.parent.location.href = base.options.redirectBadPasswordTo;\r\n } else {\r\n window.location.href = base.options.redirectBadPasswordTo;\r\n }\r\n }\r\n } \r\n else if (result !== \"\" && result === \"ok\") {\r\n if (typeof(base.options.loginSuccessful) == \"function\") {\r\n base.options.loginSuccessful(base);\r\n }\r\n else if (base.options.redirectTo.length > 0) {\r\n if (window.parent !== window.top) {\r\n window.parent.location.href = base.options.redirectTo;\r\n } else {\r\n window.location.href = base.options.redirectTo;\r\n }\r\n }\r\n else {\r\n $(base.options.errorObject).html(\"Bei der Anmeldung ist ein Fehler aufgetreten bitte versuchen Sie es noch einmal.\");\r\n base.showResult();\r\n }\r\n } else {\r\n $(base.options.errorObject).html(result);\r\n\r\n base.showResult(function () {\r\n $(base.options.passwordField).val(\"\");\r\n \r\n if ($(base.options.usernameField).val() !== \"\")\r\n $(base.options.passwordField).focus();\r\n else\r\n $(base.options.usernameField).focus();\r\n });\r\n }\r\n };\r\n\r\n base.init = function () {\r\n base.options = $.extend({}, $.loginAsync.defaultOptions, options);\r\n\r\n $(base.options.usernameField + \", \" + base.options.passwordField).on(\"keydown\", function (a) {\r\n if (a.which === 13) {\r\n a.stopImmediatePropagation();\r\n a.preventDefault();\r\n base.$el.click();\r\n }\r\n });\r\n\r\n\r\n base.$el.on(\"click\", function (e) {\r\n e.stopImmediatePropagation();\r\n e.preventDefault();\r\n \r\n\r\n try {\r\n webkit.messageHandlers.callbackHandler.postMessage(\"B24AppOnLogin\");\r\n } catch(error) {\r\n }\r\n\r\n try {\r\n B24AppJavascriptInterface.onLogin();\r\n } catch (error) {\r\n\r\n }\r\n\r\n base.showLoading(function() {\r\n var user = $(options.usernameField).val();\r\n var pass = $(options.passwordField).val();\r\n\r\n // if the password contains a '&', replace it with utf-8 encoding character '%26' | see: https://www.w3schools.com/tags/ref_urlencode.asp\r\n pass = pass.replace(\"&\", \"%26\");\r\n\r\n $.ajax({\r\n type: \"POST\",\r\n async: true,\r\n url: options.serviceUserUrl,\r\n data: \"action=userlogin&user=\" + user + \"&password=\" + pass,\r\n success: base.checkResult\r\n });\r\n });\r\n\r\n return false;\r\n });\r\n\r\n $(\"form\").on('submit', function() {\r\n $(options.usernameField).prop(\"disabled\", true);\r\n $(options.passwordField).prop(\"disabled\", true);\r\n });\r\n };\r\n\r\n base.init();\r\n };\r\n\r\n $.loginAsync.defaultOptions = {\r\n serviceUserUrl: \"\",\r\n usernameField: \"#username\",\r\n passwordField: \"#password\",\r\n errorObject: \"#errorMessage\",\r\n loginFormId: \"#loginBox\",\r\n redirectTo: \"\",\r\n redirectBadPasswordTo: \"\",\r\n loginSuccessful: null,\r\n sender: null\r\n };\r\n\r\n $.fn.loginAsync = function (options) {\r\n return this.each(function () {\r\n (new $.loginAsync(this, options));\r\n });\r\n };\r\n\r\n})(jQuery);\r\n\r\nvar lastSelector;\r\n\r\n$(function () {\r\n $(document).on(\"click\", \".loginButton\", function (a) {\r\n\r\n a.stopImmediatePropagation();\r\n a.preventDefault();\r\n\r\n $(\"#loginBox\").show().css(\"opacity\", \"0\");\r\n $(\"#loginBox\").css(\"left\", ($(this).offset().left + $(this).outerWidth()) - $(\"#loginBox\").outerWidth());\r\n $(\"#loginBox\").css(\"top\", $(this).offset().top + $(this).outerHeight());\r\n\r\n loginButtonPlugin.data(\"loginAsync\").options.redirectTo = $(this).attr(\"href\");\r\n loginButtonPlugin.data(\"loginAsync\").options.sender = $(this);\r\n \r\n $(\"#loginBox\").css(\"opacity\", \"1\");\r\n\r\n setTimeout(function () {\r\n $(\"#username\").focus();\r\n }, 100);\r\n\r\n if (lastSelector != undefined && $(this).attr(\"id\") !== lastSelector && $(this).hasClass(\"active\"))\r\n return false;\r\n\r\n $(this).toggleClass(\"active\");\r\n lastSelector = $(this).attr(\"id\");\r\n\r\n return false;\r\n });\r\n $(\".loginForm\").on(\"mouseup\", function () { return false });\r\n $(this).on(\"mouseup\", function (a) {\r\n if ($(a.target).hasClass(\"loginButton\")) {\r\n return;\r\n }\r\n\r\n $(\".loginButton\").removeClass(\"active\");\r\n $(\".loginBox\").fadeOut();\r\n });\r\n});\r\n\r\n","(function ($) {\r\n\r\n $.fn.ratingControl = function (options) {\r\n\r\n var rated = false;\r\n var ratingHtmlData;\r\n\r\n var $base = this;\r\n\r\n var settings = $.extend({\r\n // These are the defaults.\r\n enabled: true,\r\n showDetails: false,\r\n callback: function () { }\r\n }, options);\r\n\r\n\r\n $('.ratingcontrols', $base).show();\r\n\r\n $('.rating', $base).rating({\r\n callback: function (value, link) {\r\n var serviceUrl = $(this).data('url');\r\n if (!rated) {\r\n $.ajax({\r\n type: \"POST\",\r\n async: true,\r\n dataType: \"json\",\r\n url: serviceUrl,\r\n data: \"action=rating&rating=\" + value,\r\n success: function (data) {\r\n\r\n if (data) {\r\n rated = true;\r\n var ratingText = \"(\" + data.TotalRatings + \" \";\r\n ratingText += \"Bewertung\" + (data.TotalRatings == 1 ? \"\" : \"en\");\r\n ratingText += \")\";\r\n\r\n $('.ratingLink', $base).text(ratingText);\r\n\r\n $('.rating', $base).rating('select', data.AverageRating-1); // -1 because of Index\r\n $('.rating', $base).rating('readOnly', true);\r\n\r\n $.each(data.RatingModels, function (i, item) {\r\n var range = item.Range;\r\n var target = $(\"span[data-id='\" + range + \"']\", $base);\r\n target.css('width', item.PercentWidth);\r\n target.next('.text').html(item.PercentText);\r\n\r\n var desc = $(\"span[data-desc='\" + range + \"']\", $base);\r\n desc.html(item.DisplayText);\r\n });\r\n\r\n settings.callback();\r\n \r\n if (typeof(userRated) === \"function\") {\r\n userRated();\r\n }\r\n }\r\n }\r\n });\r\n }\r\n }\r\n });\r\n\r\n if (!settings.enabled) {\r\n $('.rating', $base).rating('readOnly', true);\r\n rated = true;\r\n }\r\n\r\n $(\".ratingLink\", $base).on('click', function (e) {\r\n e.preventDefault();\r\n $('.ratingDetailView', $base).slideToggle();\r\n });\r\n\r\n if (settings.showDetails) {\r\n $('.ratingDetailView', $base).show();\r\n }\r\n };\r\n\r\n}(jQuery));","(function (root, factory) {\r\n if (typeof define === 'function' && define.amd) {\r\n // AMD. Register as an anonymous module.\r\n define(['exports'], factory);\r\n } else if (typeof exports === 'object' && typeof exports.nodeName !== 'string') {\r\n // CommonJS\r\n factory(exports);\r\n } else {\r\n // Browser globals\r\n factory(root.IBAN = {});\r\n }\r\n}(this, function (exports) {\r\n\r\n // Array.prototype.map polyfill\r\n // code from https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/map\r\n if (!Array.prototype.map) {\r\n Array.prototype.map = function (fun /*, thisArg */) {\r\n \"use strict\";\r\n\r\n if (this === void 0 || this === null)\r\n throw new TypeError();\r\n\r\n var t = Object(this);\r\n var len = t.length >>> 0;\r\n if (typeof fun !== \"function\")\r\n throw new TypeError();\r\n\r\n var res = new Array(len);\r\n var thisArg = arguments.length >= 2 ? arguments[1] : void 0;\r\n for (var i = 0; i < len; i++) {\r\n // NOTE: Absolute correctness would demand Object.defineProperty\r\n // be used. But this method is fairly new, and failure is\r\n // possible only if Object.prototype or Array.prototype\r\n // has a property |i| (very unlikely), so use a less-correct\r\n // but more portable alternative.\r\n if (i in t)\r\n res[i] = fun.call(thisArg, t[i], i, t);\r\n }\r\n\r\n return res;\r\n };\r\n }\r\n\r\n var A = 'A'.charCodeAt(0),\r\n Z = 'Z'.charCodeAt(0);\r\n\r\n function iso13616Prepare(iban) {\r\n iban = iban.toUpperCase();\r\n iban = iban.substr(4) + iban.substr(0, 4);\r\n\r\n return iban.split('').map(function (n) {\r\n var code = n.charCodeAt(0);\r\n if (code >= A && code <= Z) {\r\n // A = 10, B = 11, ... Z = 35\r\n return code - A + 10;\r\n } else {\r\n return n;\r\n }\r\n }).join('');\r\n }\r\n\r\n function iso7064Mod97_10(iban) {\r\n var remainder = iban,\r\n block;\r\n\r\n while (remainder.length > 2) {\r\n block = remainder.slice(0, 9);\r\n remainder = parseInt(block, 10) % 97 + remainder.slice(block.length);\r\n }\r\n\r\n return parseInt(remainder, 10) % 97;\r\n }\r\n\r\n function parseStructure(structure) {\r\n // split in blocks of 3 chars\r\n var regex = structure.match(/(.{3})/g).map(function (block) {\r\n\r\n // parse each structure block (1-char + 2-digits)\r\n var format,\r\n pattern = block.slice(0, 1),\r\n repeats = parseInt(block.slice(1), 10);\r\n\r\n switch (pattern) {\r\n case \"A\": format = \"0-9A-Za-z\"; break;\r\n case \"B\": format = \"0-9A-Z\"; break;\r\n case \"C\": format = \"A-Za-z\"; break;\r\n case \"F\": format = \"0-9\"; break;\r\n case \"L\": format = \"a-z\"; break;\r\n case \"U\": format = \"A-Z\"; break;\r\n case \"W\": format = \"0-9a-z\"; break;\r\n }\r\n\r\n return '([' + format + ']{' + repeats + '})';\r\n });\r\n\r\n return new RegExp('^' + regex.join('') + '$');\r\n }\r\n\r\n function electronicFormat(iban) {\r\n return iban.replace(NON_ALPHANUM, '').toUpperCase();\r\n }\r\n\r\n\r\n function Specification(countryCode, length, structure, example) {\r\n\r\n this.countryCode = countryCode;\r\n this.length = length;\r\n this.structure = structure;\r\n this.example = example;\r\n }\r\n\r\n Specification.prototype._regex = function () {\r\n return this._cachedRegex || (this._cachedRegex = parseStructure(this.structure))\r\n };\r\n\r\n Specification.prototype.isValid = function (iban) {\r\n return this.length === iban.length\r\n && this.countryCode === iban.slice(0, 2)\r\n && this._regex().test(iban.slice(4))\r\n && iso7064Mod97_10(iso13616Prepare(iban)) === 1;\r\n };\r\n\r\n Specification.prototype.toBBAN = function (iban, separator) {\r\n return this._regex().exec(iban.slice(4)).slice(1).join(separator);\r\n };\r\n\r\n Specification.prototype.fromBBAN = function (bban) {\r\n if (!this.isValidBBAN(bban)) {\r\n throw new Error('Invalid BBAN');\r\n }\r\n\r\n var remainder = iso7064Mod97_10(iso13616Prepare(this.countryCode + '00' + bban)),\r\n checkDigit = ('0' + (98 - remainder)).slice(-2);\r\n\r\n return this.countryCode + checkDigit + bban;\r\n };\r\n\r\n Specification.prototype.isValidBBAN = function (bban) {\r\n return this.length - 4 === bban.length\r\n && this._regex().test(bban);\r\n };\r\n\r\n var countries = {};\r\n\r\n function addSpecification(IBAN) {\r\n countries[IBAN.countryCode] = IBAN;\r\n }\r\n\r\n addSpecification(new Specification(\"AD\", 24, \"F04F04A12\", \"AD1200012030200359100100\"));\r\n addSpecification(new Specification(\"AE\", 23, \"F03F16\", \"AE070331234567890123456\"));\r\n addSpecification(new Specification(\"AL\", 28, \"F08A16\", \"AL47212110090000000235698741\"));\r\n addSpecification(new Specification(\"AT\", 20, \"F05F11\", \"AT611904300234573201\"));\r\n addSpecification(new Specification(\"AZ\", 28, \"U04A20\", \"AZ21NABZ00000000137010001944\"));\r\n addSpecification(new Specification(\"BA\", 20, \"F03F03F08F02\", \"BA391290079401028494\"));\r\n addSpecification(new Specification(\"BE\", 16, \"F03F07F02\", \"BE68539007547034\"));\r\n addSpecification(new Specification(\"BG\", 22, \"U04F04F02A08\", \"BG80BNBG96611020345678\"));\r\n addSpecification(new Specification(\"BH\", 22, \"U04A14\", \"BH67BMAG00001299123456\"));\r\n addSpecification(new Specification(\"BR\", 29, \"F08F05F10U01A01\", \"BR9700360305000010009795493P1\"));\r\n addSpecification(new Specification(\"BY\", 28, \"A04F04A16\", \"BY13NBRB3600900000002Z00AB00\"));\r\n addSpecification(new Specification(\"CH\", 21, \"F05A12\", \"CH9300762011623852957\"));\r\n addSpecification(new Specification(\"CR\", 22, \"F04F14\", \"CR72012300000171549015\"));\r\n addSpecification(new Specification(\"CY\", 28, \"F03F05A16\", \"CY17002001280000001200527600\"));\r\n addSpecification(new Specification(\"CZ\", 24, \"F04F06F10\", \"CZ6508000000192000145399\"));\r\n addSpecification(new Specification(\"DE\", 22, \"F08F10\", \"DE89370400440532013000\"));\r\n addSpecification(new Specification(\"DK\", 18, \"F04F09F01\", \"DK5000400440116243\"));\r\n addSpecification(new Specification(\"DO\", 28, \"U04F20\", \"DO28BAGR00000001212453611324\"));\r\n addSpecification(new Specification(\"EE\", 20, \"F02F02F11F01\", \"EE382200221020145685\"));\r\n addSpecification(new Specification(\"ES\", 24, \"F04F04F01F01F10\", \"ES9121000418450200051332\"));\r\n addSpecification(new Specification(\"FI\", 18, \"F06F07F01\", \"FI2112345600000785\"));\r\n addSpecification(new Specification(\"FO\", 18, \"F04F09F01\", \"FO6264600001631634\"));\r\n addSpecification(new Specification(\"FR\", 27, \"F05F05A11F02\", \"FR1420041010050500013M02606\"));\r\n addSpecification(new Specification(\"GB\", 22, \"U04F06F08\", \"GB29NWBK60161331926819\"));\r\n addSpecification(new Specification(\"GE\", 22, \"U02F16\", \"GE29NB0000000101904917\"));\r\n addSpecification(new Specification(\"GI\", 23, \"U04A15\", \"GI75NWBK000000007099453\"));\r\n addSpecification(new Specification(\"GL\", 18, \"F04F09F01\", \"GL8964710001000206\"));\r\n addSpecification(new Specification(\"GR\", 27, \"F03F04A16\", \"GR1601101250000000012300695\"));\r\n addSpecification(new Specification(\"GT\", 28, \"A04A20\", \"GT82TRAJ01020000001210029690\"));\r\n addSpecification(new Specification(\"HR\", 21, \"F07F10\", \"HR1210010051863000160\"));\r\n addSpecification(new Specification(\"HU\", 28, \"F03F04F01F15F01\", \"HU42117730161111101800000000\"));\r\n addSpecification(new Specification(\"IE\", 22, \"U04F06F08\", \"IE29AIBK93115212345678\"));\r\n addSpecification(new Specification(\"IL\", 23, \"F03F03F13\", \"IL620108000000099999999\"));\r\n addSpecification(new Specification(\"IS\", 26, \"F04F02F06F10\", \"IS140159260076545510730339\"));\r\n addSpecification(new Specification(\"IT\", 27, \"U01F05F05A12\", \"IT60X0542811101000000123456\"));\r\n addSpecification(new Specification(\"IQ\", 23, \"U04F03A12\", \"IQ98NBIQ850123456789012\"));\r\n addSpecification(new Specification(\"JO\", 30, \"A04F22\", \"JO15AAAA1234567890123456789012\"));\r\n addSpecification(new Specification(\"KW\", 30, \"U04A22\", \"KW81CBKU0000000000001234560101\"));\r\n addSpecification(new Specification(\"KZ\", 20, \"F03A13\", \"KZ86125KZT5004100100\"));\r\n addSpecification(new Specification(\"LB\", 28, \"F04A20\", \"LB62099900000001001901229114\"));\r\n addSpecification(new Specification(\"LC\", 32, \"U04F24\", \"LC07HEMM000100010012001200013015\"));\r\n addSpecification(new Specification(\"LI\", 21, \"F05A12\", \"LI21088100002324013AA\"));\r\n addSpecification(new Specification(\"LT\", 20, \"F05F11\", \"LT121000011101001000\"));\r\n addSpecification(new Specification(\"LU\", 20, \"F03A13\", \"LU280019400644750000\"));\r\n addSpecification(new Specification(\"LV\", 21, \"U04A13\", \"LV80BANK0000435195001\"));\r\n addSpecification(new Specification(\"MC\", 27, \"F05F05A11F02\", \"MC5811222000010123456789030\"));\r\n addSpecification(new Specification(\"MD\", 24, \"U02A18\", \"MD24AG000225100013104168\"));\r\n addSpecification(new Specification(\"ME\", 22, \"F03F13F02\", \"ME25505000012345678951\"));\r\n addSpecification(new Specification(\"MK\", 19, \"F03A10F02\", \"MK07250120000058984\"));\r\n addSpecification(new Specification(\"MR\", 27, \"F05F05F11F02\", \"MR1300020001010000123456753\"));\r\n addSpecification(new Specification(\"MT\", 31, \"U04F05A18\", \"MT84MALT011000012345MTLCAST001S\"));\r\n addSpecification(new Specification(\"MU\", 30, \"U04F02F02F12F03U03\", \"MU17BOMM0101101030300200000MUR\"));\r\n addSpecification(new Specification(\"NL\", 18, \"U04F10\", \"NL91ABNA0417164300\"));\r\n addSpecification(new Specification(\"NO\", 15, \"F04F06F01\", \"NO9386011117947\"));\r\n addSpecification(new Specification(\"PK\", 24, \"U04A16\", \"PK36SCBL0000001123456702\"));\r\n addSpecification(new Specification(\"PL\", 28, \"F08F16\", \"PL61109010140000071219812874\"));\r\n addSpecification(new Specification(\"PS\", 29, \"U04A21\", \"PS92PALS000000000400123456702\"));\r\n addSpecification(new Specification(\"PT\", 25, \"F04F04F11F02\", \"PT50000201231234567890154\"));\r\n addSpecification(new Specification(\"QA\", 29, \"U04A21\", \"QA30AAAA123456789012345678901\"));\r\n addSpecification(new Specification(\"RO\", 24, \"U04A16\", \"RO49AAAA1B31007593840000\"));\r\n addSpecification(new Specification(\"RS\", 22, \"F03F13F02\", \"RS35260005601001611379\"));\r\n addSpecification(new Specification(\"SA\", 24, \"F02A18\", \"SA0380000000608010167519\"));\r\n addSpecification(new Specification(\"SC\", 31, \"U04F04F16U03\", \"SC18SSCB11010000000000001497USD\"));\r\n addSpecification(new Specification(\"SE\", 24, \"F03F16F01\", \"SE4550000000058398257466\"));\r\n addSpecification(new Specification(\"SI\", 19, \"F05F08F02\", \"SI56263300012039086\"));\r\n addSpecification(new Specification(\"SK\", 24, \"F04F06F10\", \"SK3112000000198742637541\"));\r\n addSpecification(new Specification(\"SM\", 27, \"U01F05F05A12\", \"SM86U0322509800000000270100\"));\r\n addSpecification(new Specification(\"ST\", 25, \"F08F11F02\", \"ST68000100010051845310112\"));\r\n addSpecification(new Specification(\"SV\", 28, \"U04F20\", \"SV62CENR00000000000000700025\"));\r\n addSpecification(new Specification(\"TL\", 23, \"F03F14F02\", \"TL380080012345678910157\"));\r\n addSpecification(new Specification(\"TN\", 24, \"F02F03F13F02\", \"TN5910006035183598478831\"));\r\n addSpecification(new Specification(\"TR\", 26, \"F05F01A16\", \"TR330006100519786457841326\"));\r\n addSpecification(new Specification(\"UA\", 29, \"F25\", \"UA511234567890123456789012345\"));\r\n addSpecification(new Specification(\"VG\", 24, \"U04F16\", \"VG96VPVG0000012345678901\"));\r\n addSpecification(new Specification(\"XK\", 20, \"F04F10F02\", \"XK051212012345678906\"));\r\n\r\n\r\n // The following countries are not included in the official IBAN registry but use the IBAN specification\r\n\r\n // Angola\r\n addSpecification(new Specification(\"AO\", 25, \"F21\", \"AO69123456789012345678901\"));\r\n // Burkina\r\n addSpecification(new Specification(\"BF\", 27, \"F23\", \"BF2312345678901234567890123\"));\r\n // Burundi\r\n addSpecification(new Specification(\"BI\", 16, \"F12\", \"BI41123456789012\"));\r\n // Benin\r\n addSpecification(new Specification(\"BJ\", 28, \"F24\", \"BJ39123456789012345678901234\"));\r\n // Ivory\r\n addSpecification(new Specification(\"CI\", 28, \"U02F22\", \"CI70CI1234567890123456789012\"));\r\n // Cameron\r\n addSpecification(new Specification(\"CM\", 27, \"F23\", \"CM9012345678901234567890123\"));\r\n // Cape Verde\r\n addSpecification(new Specification(\"CV\", 25, \"F21\", \"CV30123456789012345678901\"));\r\n // Algeria\r\n addSpecification(new Specification(\"DZ\", 24, \"F20\", \"DZ8612345678901234567890\"));\r\n // Iran\r\n addSpecification(new Specification(\"IR\", 26, \"F22\", \"IR861234568790123456789012\"));\r\n // Madagascar\r\n addSpecification(new Specification(\"MG\", 27, \"F23\", \"MG1812345678901234567890123\"));\r\n // Mali\r\n addSpecification(new Specification(\"ML\", 28, \"U01F23\", \"ML15A12345678901234567890123\"));\r\n // Mozambique\r\n addSpecification(new Specification(\"MZ\", 25, \"F21\", \"MZ25123456789012345678901\"));\r\n // Senegal\r\n addSpecification(new Specification(\"SN\", 28, \"U01F23\", \"SN52A12345678901234567890123\"));\r\n\r\n var NON_ALPHANUM = /[^a-zA-Z0-9]/g,\r\n EVERY_FOUR_CHARS = /(.{4})(?!$)/g;\r\n\r\n \r\n function isString(v) {\r\n return (typeof v === 'string' || v instanceof String);\r\n }\r\n\r\n exports.isValid = function (iban) {\r\n if (!isString(iban)) {\r\n return false;\r\n }\r\n iban = electronicFormat(iban);\r\n var countryStructure = countries[iban.slice(0, 2)];\r\n return !!countryStructure && countryStructure.isValid(iban);\r\n };\r\n\r\n exports.toBBAN = function (iban, separator) {\r\n if (typeof separator === 'undefined') {\r\n separator = ' ';\r\n }\r\n iban = electronicFormat(iban);\r\n var countryStructure = countries[iban.slice(0, 2)];\r\n if (!countryStructure) {\r\n throw new Error('No country with code ' + iban.slice(0, 2));\r\n }\r\n return countryStructure.toBBAN(iban, separator);\r\n };\r\n\r\n exports.fromBBAN = function (countryCode, bban) {\r\n var countryStructure = countries[countryCode];\r\n if (!countryStructure) {\r\n throw new Error('No country with code ' + countryCode);\r\n }\r\n return countryStructure.fromBBAN(electronicFormat(bban));\r\n };\r\n\r\n exports.isValidBBAN = function (countryCode, bban) {\r\n if (!isString(bban)) {\r\n return false;\r\n }\r\n var countryStructure = countries[countryCode];\r\n return countryStructure && countryStructure.isValidBBAN(electronicFormat(bban));\r\n };\r\n\r\n exports.printFormat = function (iban, separator) {\r\n if (typeof separator === 'undefined') {\r\n separator = ' ';\r\n }\r\n return electronicFormat(iban).replace(EVERY_FOUR_CHARS, \"$1\" + separator);\r\n };\r\n\r\n exports.electronicFormat = electronicFormat;\r\n /**\r\n * An object containing all the known IBAN specifications.\r\n */\r\n exports.countries = countries;\r\n\r\n}));","(function ($) {\r\n \"use strict\";\r\n \r\n $.fn.extend({\r\n ncip: function (serviceUrl, callback) {\r\n\r\n return this.each(function () {\r\n \tvar $elem = $(this);\r\n var id = $elem.data(\"id\");\r\n $.ajax({\r\n type: \"POST\",\r\n async: true,\r\n cache: false,\r\n url: serviceUrl,\r\n data: \"action=lookup&itemId=\" + id,\r\n dataType: \"json\",\r\n success: function (data) {\r\n callback($elem, data);\r\n }\r\n });\r\n });\r\n }\r\n });\r\n})(jQuery);","\r\nfunction IsDefaultSearchInputVisible() {\r\n return $(defaultSearchPanel).is(\":visible\");\r\n}\r\n\r\nfunction IsSimpleSearchInputVisible() {\r\n return $(simpleSearchPanel).is(\":visible\");\r\n}\r\n\r\nfunction IsExpertSearchInputVisible() {\r\n return $('.expert').is(\":visible\");\r\n}\r\n\r\nfunction ShowSimpleSearchInputs() {\r\n $('.SearchPanelWrapper').show();\r\n //$('.multiSelectOptions').width(($('.multiSelectOptions').prev().get(0).clientWidth) + 'px');\r\n\r\n SetSimpleSearchTextBox();\r\n ShowSimpleSearch();\r\n HideDefaultSearch();\r\n HideExpertSearch();\r\n SetHiddenState(simpleSearchId);\r\n return false;\r\n}\r\nfunction ShowExpertSearchInputs() {\r\n $('.SearchPanelWrapper').show();\r\n //$('.multiSelectOptions').width(($('.multiSelectOptions').prev().get(0).IniientWidth) + 'px');\r\n\r\n SetDefaultSearchTextboxes();\r\n HideSimpleSearch();\r\n ShowExpertSearch();\r\n ShowDefaultSearch();\r\n SetHiddenState(expertSearchId);\r\n return false;\r\n}\r\nfunction ShowDefaultSearchInputs() {\r\n $('.SearchPanelWrapper').show();\r\n //$('.multiSelectOptions').width(($('.multiSelectOptions').prev().get(0).clientWidth) + 'px');\r\n\r\n SetDefaultSearchTextboxes();\r\n HideExpertSearch();\r\n HideSimpleSearch();\r\n ShowDefaultSearch();\r\n SetHiddenState(defaultSearchId);\r\n return false;\r\n}\r\n\r\nfunction ToggleExpertSearch() {\r\n if (IsExpertSearchInputVisible()) {\r\n HideExpertSearch();\r\n }\r\n else {\r\n ShowExpertSearch();\r\n }\r\n}\r\n\r\nfunction ShowSimpleSearch() {\r\n $(simpleSearchPanel).show();\r\n}\r\n\r\nfunction HideSimpleSearch() {\r\n $(simpleSearchPanel).hide();\r\n}\r\n\r\nfunction ShowDefaultSearch() {\r\n $(defaultSearchPanel).show();\r\n}\r\n\r\nfunction HideDefaultSearch() {\r\n $(defaultSearchPanel).hide();\r\n}\r\n\r\nfunction ShowExpertSearch() {\r\n $('.expert').show();\r\n}\r\n\r\nfunction HideExpertSearch() {\r\n $('.expert').hide();\r\n}\r\n\r\nfunction SetAutoComplete(inputControl, dropDownControl, url) {\r\n var completeWidth = jQuery(inputControl).outerWidth();\r\n $(inputControl).autocomplete(url, {\r\n extraParams: {\r\n searchfield: function () { return $(dropDownControl).val(); }\r\n },\r\n matchContains: true,\r\n width: completeWidth + 'px',\r\n minChars: 2,\r\n scroll: false,\r\n selectFirst: false,\r\n highlight: function (value, term) {\r\n return value.replace(new RegExp(\"(?![^&;]+;)(?!<[^<>]*)(\" + term.replace(/([\\^\\$\\(\\)\\[\\]\\{\\}\\*\\.\\+\\?\\|\\\\])/gi, \"\\\\$1\") + \")(?![^<>]*>)(?![^&;]+;)\", \"gi\"), '$1');\r\n }\r\n });\r\n}\r\n\r\nfunction InitFieldStateToOperator($control, $operatorControl, $textField, fields, enable) {\r\n $control.on('change', (function() {\r\n var currentField = $(this).val();\r\n $(\" option[value='\" + (currentField === 3 ? 7 : 8) + \"']\", $operatorControl).attr(\"selected\", \"selected\");\r\n SetFieldStateToOperator(currentField, $operatorControl, fields, enable);\r\n $textField.focus();\r\n }));\r\n\r\n var curval = $control.val();\r\n SetFieldStateToOperator(curval, $operatorControl, fields, enable);\r\n}\r\n\r\nfunction SetFieldStateToOperator(currentField, $operatorControl, fields, enable) {\r\n $(\"option\", $operatorControl).removeAttr('disabled');\r\n $.each(fields, function (index, field) {\r\n if (currentField === field)\r\n SetContainsOperatorEnabled($operatorControl, enable);\r\n });\r\n}\r\n\r\nfunction SetContainsOperatorEnabled($operatorControl, enabled) {\r\n SetOperatorValueEnabled($operatorControl, 8, enabled);\r\n}\r\n\r\nfunction SetOperatorValueEnabled($operatorControl, value, enabled) {\r\n var $targetOption = $(\" option[value='\" + value + \"']\", $operatorControl);\r\n \r\n if (!enabled) {\r\n $targetOption.attr(\"disabled\", \"disabled\");\r\n if ($targetOption.is(':selected')) {\r\n $(\" option[value='7']\", $operatorControl).attr(\"selected\", \"selected\");\r\n }\r\n }\r\n else {\r\n $targetOption.removeAttr('disabled');\r\n }\r\n}","\r\n\r\n!(function ($) {\r\n \r\n \"use strict\";\r\n\r\n var settings;\r\n var suppressDialog = false;\r\n\r\n $.fn.registerUnloadMessage = function (options) {\r\n\r\n settings = $.extend({\r\n // These are the defaults.\r\n message: \"Achtung Sie haben Einstellungen geändert. Diese werden nicht gespeichert.\",\r\n onSubmit: false,\r\n onLinkClicked: true,\r\n onF5Key: true\r\n }, options);\r\n\r\n\r\n window.onbeforeunload = unloadEvent;\r\n\r\n\r\n if (!settings.onF5Key) {\r\n $(\"document\").bind(\"keypress\", function(e) {\r\n if (e.keyCode === 116) {\r\n suppressDialog = true;\r\n }\r\n });\r\n }\r\n\r\n var $body = $(\"body\");\r\n\r\n if (!settings.onLinkClicked) {\r\n $body.on(\"click\", \"a\", function() {\r\n suppressDialog = true;\r\n });\r\n }\r\n\r\n if (!settings.onSubmit) {\r\n\r\n $body.on(\"submit\", \"form\", function (e) {\r\n suppressDialog = true;\r\n });\r\n\r\n $body.on(\"click\", \"input[type=submit]\", function (e) {\r\n suppressDialog = true;\r\n });\r\n\r\n }\r\n\r\n \r\n return this;\r\n\r\n };\r\n\r\n function unloadEvent(e) {\r\n\r\n if (suppressDialog)\r\n return;\r\n\r\n if (!e)\r\n e = window.event;\r\n\r\n //e.cancelBubble is supported by IE - this will kill the bubbling process.\r\n e.cancelBubble = true;\r\n e.returnValue = settings.message;\r\n\r\n //e.stopPropagation works in Firefox.\r\n if (e.stopPropagation) {\r\n e.stopPropagation();\r\n e.preventDefault();\r\n }\r\n\r\n //return works for Chrome and Safari\r\n return settings.message;\r\n }\r\n\r\n\r\n}(jQuery));","//var check = {\r\n// Android: function() {\r\n// return navigator.userAgent.match(/Android/i);\r\n// },\r\n// BlackBerry: function() {\r\n// return navigator.userAgent.match(/BlackBerry/i);\r\n// },\r\n// iOS: function() {\r\n// return navigator.userAgent.match(/iPhone|iPad|iPod/i);\r\n// },\r\n// Opera: function() {\r\n// return navigator.userAgent.match(/Opera Mini/i);\r\n// },\r\n// Windows: function() {\r\n// return navigator.userAgent.match(/IEMobile/i);\r\n// },\r\n\r\n// isMobile: function() {\r\n// return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows());\r\n// }\r\n//};\r\n\r\nvar mobileCheck = {\r\n ios: (function () {\r\n return navigator.userAgent.match(/iPhone|iPad|iPod/i);\r\n }()),\r\n android: (function () {\r\n return navigator.userAgent.match(/Android/i);\r\n }()),\r\n blackBerry: (function () {\r\n return navigator.userAgent.match(/BB10|Tablet|Mobile/i);\r\n }()),\r\n windows: (function () {\r\n return navigator.userAgent.match(/IEMobile/i);\r\n }()),\r\n smartphone: (function () {\r\n return (window.innerWidth <= 384 && window.innerHeight <= 640);\r\n }()),\r\n tablet: (function () {\r\n return (navigator.userAgent.match(/Tablet|iPad|iPod/i) && window.innerWidth <= 1280 && window.innerHeight <= 800);\r\n }()),\r\n all: (function () {\r\n return navigator.userAgent.match(/Android|BlackBerry|Tablet|Mobile|iPhone|iPad|iPod|Opera Mini|IEMobile/i);\r\n }())\r\n};","!function ($) {\r\n\r\n \"use strict\";\r\n\r\n var Selectpicker = function (element, options, e) {\r\n if (e) {\r\n e.stopPropagation();\r\n e.preventDefault();\r\n }\r\n this.$element = $(element);\r\n this.$newElement = null;\r\n this.button = null;\r\n\r\n //Merge defaults, options and data-attributes to make our options\r\n this.options = $.extend({}, $.fn.selectpicker.defaults, this.$element.data(), typeof options == 'object' && options);\r\n\r\n //If we have no title yet, check the attribute 'title' (this is missed by jq as its not a data-attribute\r\n if (this.options.title == null)\r\n this.options.title = this.$element.attr('title');\r\n\r\n //Expose public methods\r\n this.val = Selectpicker.prototype.val;\r\n this.render = Selectpicker.prototype.render;\r\n this.refresh = Selectpicker.prototype.refresh;\r\n this.selectAll = Selectpicker.prototype.selectAll;\r\n this.deselectAll = Selectpicker.prototype.deselectAll;\r\n this.init();\r\n };\r\n\r\n Selectpicker.prototype = {\r\n\r\n constructor: Selectpicker,\r\n\r\n init: function (e) {\r\n if (!this.options.container) {\r\n this.$element.hide();\r\n } else {\r\n this.$element.css('visibility', 'hidden');\r\n };\r\n this.multiple = this.$element.prop('multiple');\r\n var classList = this.$element.attr('class') !== undefined ? this.$element.attr('class').split(/\\s+/) : '';\r\n var id = this.$element.attr('id');\r\n this.$element.after(this.createView());\r\n this.$newElement = this.$element.next('.bootstrap-select');\r\n if (this.options.container) {\r\n this.selectPosition();\r\n }\r\n this.button = this.$newElement.find('> button');\r\n if (id !== undefined) {\r\n var _this = this;\r\n this.button.attr('data-id', id);\r\n $('label[for=\"' + id + '\"]').click(function () {\r\n _this.$newElement.find('button[data-id=' + id + ']').focus();\r\n })\r\n }\r\n for (var i = 0; i < classList.length; i++) {\r\n if (classList[i] != 'selectpicker') {\r\n this.$newElement.addClass(classList[i]);\r\n }\r\n }\r\n //If we are multiple, then add the show-tick class by default\r\n //Old:\r\n /*if (this.multiple) {\r\n this.$newElement.addClass('show-tick');\r\n }*/\r\n this.$newElement.addClass('show-tick');\r\n\r\n this.button.addClass(this.options.style);\r\n this.checkDisabled();\r\n this.checkTabIndex();\r\n this.clickListener();\r\n\r\n this.render();\r\n this.setSize();\r\n },\r\n\r\n createDropdown: function () {\r\n var drop =\r\n \"
    \" +\r\n \"\" +\r\n \"\" +\r\n \"
    \";\r\n\r\n return $(drop);\r\n },\r\n\r\n\r\n createView: function () {\r\n var $drop = this.createDropdown();\r\n var $li = this.createLi();\r\n $drop.find('ul').append($li);\r\n return $drop;\r\n },\r\n\r\n reloadLi: function () {\r\n //Remove all children.\r\n this.destroyLi();\r\n //Re build\r\n var $li = this.createLi();\r\n this.$newElement.find('ul').append($li);\r\n },\r\n\r\n destroyLi: function () {\r\n this.$newElement.find('li').remove();\r\n },\r\n\r\n createLi: function () {\r\n\r\n var _this = this;\r\n var _li = [];\r\n var _liA = [];\r\n var _liHtml = '';\r\n\r\n this.$element.find('option').each(function () {\r\n _li.push($(this).text());\r\n });\r\n\r\n var optGroup = '';\r\n this.$element.find('option').each(function (index) {\r\n var $this = $(this);\r\n\r\n //Get the class and text for the option\r\n var optionClass = $this.attr(\"class\") !== undefined ? $this.attr(\"class\") : '';\r\n var text = $this.text();\r\n var subtext = $this.data('subtext') !== undefined ? '' + $this.data('subtext') + '' : '';\r\n var icon = $this.data('icon') !== undefined ? ' ' : '';\r\n if ($this.is(':disabled') || $this.parent().is(':disabled')) {\r\n icon = '' + icon + '';\r\n }\r\n optGroup = $this.data('category') ? $this.data('category') : '';\r\n\r\n //Prepend any icon and append any subtext to the main text.\r\n //text = icon + '' + text + subtext + '';\r\n text = icon + text + subtext;\r\n\r\n if (_this.options.hideDisabled && ($this.is(':disabled') || $this.parent().is(':disabled'))) {\r\n _liA.push('');\r\n } else if ($this.parent().is('optgroup') && $this.data('divider') != true) {\r\n if ($this.index() == 0) {\r\n //Get the opt group label\r\n var label = $this.parent().attr('label');\r\n optGroup = label;\r\n var labelSubtext = $this.parent().data('subtext') !== undefined ? '' + $this.parent().data('subtext') + '' : '';\r\n var labelIcon = $this.parent().data('icon') ? ' ' : '';\r\n label = labelIcon + '' + label + labelSubtext + '';\r\n\r\n if ($this[0].index != 0) {\r\n _liA.push(\r\n '
    ' +\r\n '
    ' + label + '
    ' +\r\n _this.createA(text, optGroup, \"opt \" + optionClass)\r\n );\r\n } else {\r\n _liA.push(\r\n '
    ' + label + '
    ' +\r\n _this.createA(text, optGroup, \"opt \" + optionClass));\r\n }\r\n } else {\r\n _liA.push(_this.createA(text, optGroup, \"opt \" + optionClass));\r\n }\r\n } else if ($this.data('divider') == true) {\r\n _liA.push('
    ');\r\n } else if ($(this).data('hidden') == true) {\r\n _liA.push('');\r\n } else {\r\n _liA.push(_this.createA(text, optGroup, optionClass));\r\n }\r\n });\r\n\r\n if (_li.length > 0) {\r\n for (var i = 0; i < _li.length; i++) {\r\n var $option = this.$element.find('option').eq(i);\r\n /*\r\n var group;\r\n if ($(_liA[i]).is('div')) {\r\n group = $(_liA[i]).filter(\"dt\").data(\"group\");\r\n _liHtml += \"
  • \" + _liA[i] + \"
  • \";\r\n }\r\n else\r\n */\r\n _liHtml += \"
  • \" + _liA[i] + \"
  • \";\r\n }\r\n }\r\n\r\n //If we are not multiple, and we dont have a selected item, and we dont have a title, select the first element so something is set in the button\r\n if (!this.multiple && this.$element.find('option:selected').length == 0 && !_this.options.title) {\r\n this.$element.find('option').eq(0).prop('selected', true).attr('selected', 'selected');\r\n }\r\n\r\n return $(_liHtml);\r\n },\r\n\r\n createA: function (text, group, classes) {\r\n var html =\r\n ' 0 ? ' style=\"display:none\" data-group=\"' + group + '\"' : '') +\r\n ' title=\"' + text /*$(text).text()*/ + '\" ' +\r\n ' >' +\r\n text +\r\n '' +\r\n '';\r\n\r\n return html;\r\n },\r\n\r\n render: function () {\r\n var _this = this;\r\n\r\n //Update the LI to match the SELECT\r\n this.$element.find('option').each(function (index) {\r\n _this.setDisabled(index, $(this).is(':disabled') || $(this).parent().is(':disabled'));\r\n _this.setSelected(index, $(this).is(':selected'));\r\n });\r\n\r\n\r\n var items = this.$element.find('option');\r\n var selectedItems = this.$element.find('option:selected').map(function (index, value) {\r\n if ($(this).attr('title') != undefined) {\r\n return $(this).attr('title');\r\n } else {\r\n return $(this).text();\r\n }\r\n }).toArray();\r\n\r\n //Fixes issue in IE10 occurring when no default option is selected and at least one option is disabled\r\n //Convert all the values into a comma delimited string \r\n var title = !this.multiple ? selectedItems[0] : selectedItems.join(\", \");\r\n\r\n //If this is multi select, and the selectText type is count, the show 1 of 2 selected etc.. \r\n if (_this.multiple && _this.options.selectedTextFormat.indexOf('count') > -1) {\r\n var max = _this.options.selectedTextFormat.split(\">\");\r\n if ((max.length > 1 && selectedItems.length > max[1]) || (max.length === 1 && selectedItems.length >= 2)) {\r\n if (items.length == selectedItems.length) {\r\n title = _this.options.noneSelectedText;\r\n } else {\r\n title = selectedItems.length + ' von ' + items.length + ' ausgewählt';\r\n }\r\n }\r\n }\r\n\r\n //If we dont have a title, then use the default, or if nothing is set at all, use the not selected text\r\n if (!title) {\r\n title = _this.options.title != undefined ? _this.options.title : _this.options.noneSelectedText;\r\n }\r\n\r\n _this.$newElement.find('.filter-option').html(title);\r\n \r\n _this.$newElement.trigger({\r\n type: \"updateSelection\",\r\n newTitle: title,\r\n count: selectedItems.length\r\n });\r\n },\r\n\r\n setSize: function () {\r\n if (this.options.container) {\r\n // Show $newElement before perfoming size calculations\r\n this.$newElement.toggle(this.$element.parent().is(':visible'));\r\n }\r\n var _this = this;\r\n var menu = this.$newElement.find('.dropdown-menu');\r\n var liHeight = this.$newElement.addClass('open').find('.dropdown-menu li > a').outerHeight();\r\n this.$newElement.removeClass('open');\r\n \r\n var divHeight = menu.find('li .divider').outerHeight(true);\r\n var selectOffset_top = this.$newElement.offset().top;\r\n var selectHeight = this.$newElement.outerHeight();\r\n var menuPadding = parseInt(menu.css('padding-top')) + parseInt(menu.css('padding-bottom')) + parseInt(menu.css('border-top-width')) + parseInt(menu.css('border-bottom-width'));\r\n var notDisabled = this.options.hideDisabled ? ':not(.disabled)' : '';\r\n var menuHeight;\r\n if (this.options.size == 'auto') {\r\n var getSize = function () {\r\n var selectOffset_top_scroll = selectOffset_top - $(window).scrollTop();\r\n var windowHeight = window.innerHeight;\r\n var menuExtras = menuPadding + parseInt(menu.css('margin-top')) + parseInt(menu.css('margin-bottom')) + 2;\r\n var selectOffset_bot = windowHeight - selectOffset_top_scroll - selectHeight - menuExtras;\r\n var minHeight;\r\n menuHeight = selectOffset_bot;\r\n if (_this.$newElement.hasClass('dropup')) {\r\n menuHeight = selectOffset_top_scroll - menuExtras;\r\n }\r\n if ((menu.find('li').length + menu.find('dt').length) > 3) {\r\n minHeight = liHeight * 3 + menuExtras - 2;\r\n } else {\r\n minHeight = 0;\r\n }\r\n menu.css({ /*'max-height': menuHeight + 'px','overflow-y': 'auto',*/ 'min-height': minHeight + 'px' });\r\n }\r\n getSize();\r\n $(window).resize(getSize);\r\n $(window).scroll(getSize);\r\n } else if (this.options.size && this.options.size != 'auto' && menu.find('li' + notDisabled).length > this.options.size) {\r\n var optIndex = menu.find(\"li\" + notDisabled + \" > *\").filter(':not(.div-contain)').slice(0, this.options.size).last().parent().index();\r\n var divLength = menu.find(\"li\").slice(0, optIndex + 1).find('.div-contain').length;\r\n menuHeight = liHeight * this.options.size + divLength * divHeight + menuPadding;\r\n //menu.css({ /*'max-height': menuHeight + 'px',*/ 'overflow-y': 'auto' });\r\n }\r\n\r\n //Set width of select\r\n if (this.options.width == 'auto') {\r\n this.$newElement.find('.dropdown-menu').css('min-width', '0');\r\n var ulWidth = this.$newElement.find('.dropdown-menu').css('width');\r\n this.$newElement.css('width', ulWidth);\r\n if (this.options.container) {\r\n this.$element.css('width', ulWidth);\r\n }\r\n } else if (this.options.width) {\r\n if (this.options.container) {\r\n // Note: options.width can be %\r\n this.$element.css('width', this.options.width);\r\n // Set pixel width of $newElement based on $element's pixel width\r\n this.$newElement.width(this.$element.outerWidth());\r\n } else {\r\n this.$newElement.css('width', this.options.width);\r\n }\r\n } else if (this.options.container) {\r\n // Set width of $newElement based on $element\r\n this.$newElement.width(this.$element.outerWidth());\r\n }\r\n },\r\n\r\n selectPosition: function () {\r\n var containerOffset = $(this.options.container).offset();\r\n var eltOffset = this.$element.offset();\r\n if (containerOffset && eltOffset) {\r\n var selectElementTop = eltOffset.top - containerOffset.top;\r\n var selectElementLeft = eltOffset.left - containerOffset.left;\r\n this.$newElement.appendTo(this.options.container);\r\n this.$newElement.css({ 'position': 'absolute', 'top': selectElementTop + 'px', 'left': selectElementLeft + 'px' });\r\n }\r\n },\r\n\r\n refresh: function () {\r\n this.reloadLi();\r\n this.render();\r\n this.setSize();\r\n this.checkDisabled();\r\n if (this.options.container) {\r\n this.selectPosition();\r\n }\r\n },\r\n\r\n setSelected: function (index, selected) {\r\n if (selected) {\r\n this.$newElement.find('li').eq(index).addClass('selected');\r\n } else {\r\n this.$newElement.find('li').eq(index).removeClass('selected');\r\n }\r\n },\r\n\r\n setDisabled: function (index, disabled) {\r\n if (disabled) {\r\n this.$newElement.find('li').eq(index).addClass('disabled').find('a').attr('href', '#').attr('tabindex', -1);\r\n } else {\r\n this.$newElement.find('li').eq(index).removeClass('disabled').find('a').removeAttr('href').attr('tabindex', 0);\r\n }\r\n },\r\n\r\n isDisabled: function () {\r\n return this.$element.is(':disabled') || this.$element.attr('readonly');\r\n },\r\n\r\n checkDisabled: function () {\r\n if (this.isDisabled()) {\r\n this.button.addClass('disabled');\r\n this.button.click(function (e) {\r\n e.preventDefault();\r\n });\r\n this.button.attr('tabindex', '-1');\r\n } else if (!this.isDisabled() && this.button.hasClass('disabled')) {\r\n this.button.removeClass('disabled');\r\n this.button.click(function () {\r\n return true;\r\n });\r\n this.button.removeAttr('tabindex');\r\n }\r\n },\r\n\r\n checkTabIndex: function () {\r\n if (this.$element.is('[tabindex]')) {\r\n var tabindex = this.$element.attr(\"tabindex\");\r\n this.button.attr('tabindex', tabindex);\r\n }\r\n },\r\n\r\n clickListener: function () {\r\n var _this = this;\r\n\r\n $('body').on('touchstart.dropdown', '.dropdown-menu', function (e) { e.stopPropagation(); });\r\n\r\n this.$newElement.on('click', 'li a', function (e) {\r\n var clickedIndex = $(this).parent().index(),\r\n $this = $(this).parent(),\r\n $select = $this.parents('.bootstrap-select'),\r\n prevValue = _this.$element.val();\r\n\r\n //Dont close on multi choice menu \r\n if (_this.multiple) {\r\n e.stopPropagation();\r\n }\r\n\r\n e.preventDefault();\r\n\r\n //Dont run if we have been disabled\r\n if (_this.$element.not(':disabled') && !$(this).parent().hasClass('disabled')) {\r\n //Deselect all others if not multi select box\r\n if (!_this.multiple) {\r\n _this.$element.find('option').removeAttr('selected');\r\n _this.$element.find('option').eq(clickedIndex).prop('selected', true).attr('selected', 'selected');\r\n }\r\n //Else toggle the one we have chosen if we are multi select.\r\n else {\r\n var selected = _this.$element.find('option').eq(clickedIndex).prop('selected');\r\n\r\n if (selected) {\r\n _this.$element.find('option').eq(clickedIndex).removeAttr('selected');\r\n } else {\r\n _this.$element.find('option').eq(clickedIndex).prop('selected', true).attr('selected', 'selected');\r\n }\r\n }\r\n\r\n\r\n $select.find('.filter-option').html($this.text());\r\n //$select.find('button').focus();\r\n\r\n // Trigger select 'change'\r\n if (prevValue != _this.$element.val()) {\r\n _this.$element.trigger('change');\r\n }\r\n\r\n _this.render();\r\n }\r\n\r\n });\r\n\r\n this.$newElement.on('click', function (e) {\r\n\r\n $(\"a[data-group]\", $(this)).hide();\r\n $(\"a:not([data-group])\", $(this)).show();\r\n $(\".divider, .opt-group\", $(this)).show();\r\n $('i', $(this)).removeClass('active');\r\n $('dt', $(this)).removeClass('single');\r\n\r\n });\r\n \r\n this.$newElement.on('click', 'li.disabled a, li .div-contain', function (e) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n var $select = $(this).parent().parents('.bootstrap-select');\r\n //$select.find('button').focus();\r\n });\r\n\r\n this.$newElement.on('click', 'li dt', function (e) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n var $select = $(this).parent().parents('.bootstrap-select')\r\n var group = $(this).data('group');\r\n var dt = $(this);\r\n var li = $(dt).parent();\r\n \r\n\r\n if ($(\"a[data-group='\" + group + \"']\", $select).is(\":hidden\")) {\r\n \r\n $(\"a:visible, .divider, .opt-group:not([data-group='\" + group + \"'])\", $select).slideUp(200, function () {\r\n $(\"a[data-group='\" + group + \"']\", $select).fadeIn();\r\n $('i', $(dt)).addClass('active');\r\n $(dt).addClass('single');\r\n });\r\n } else {\r\n $(\"a[data-group]\", $select).hide();\r\n $(\"a:not([data-group])\", $select).fadeIn();\r\n $(\".divider, .opt-group\", $select).show();\r\n $('i', $(dt)).removeClass('active');\r\n $(dt).removeClass('single');\r\n }\r\n });\r\n\r\n this.$element.on('change', function (e) {\r\n _this.render();\r\n });\r\n },\r\n\r\n val: function (value) {\r\n\r\n if (value != undefined) {\r\n this.$element.val(value);\r\n\r\n this.$element.trigger('change');\r\n return this.$element;\r\n } else {\r\n return this.$element.val();\r\n }\r\n },\r\n\r\n selectAll: function () {\r\n this.$element.find('option').prop('selected', true).attr('selected', 'selected');\r\n this.render();\r\n },\r\n\r\n deselectAll: function () {\r\n this.$element.find('option').prop('selected', false).removeAttr('selected');\r\n this.render();\r\n },\r\n\r\n keydown: function (e) {\r\n var $this,\r\n $items,\r\n $parent,\r\n index,\r\n next,\r\n first,\r\n last,\r\n prev,\r\n nextPrev\r\n\r\n $this = $(this);\r\n\r\n $parent = $this.parent();\r\n\r\n $items = $('[role=menu] li:not(.divider):visible a', $parent);\r\n\r\n if (!$items.length) return;\r\n\r\n if (/(38|40)/.test(e.keyCode)) {\r\n\r\n index = $items.index($items.filter(':focus'));\r\n\r\n first = $items.parent(':not(.disabled)').first().index();\r\n last = $items.parent(':not(.disabled)').last().index();\r\n next = $items.eq(index).parent().nextAll(':not(.disabled)').eq(0).index();\r\n prev = $items.eq(index).parent().prevAll(':not(.disabled)').eq(0).index();\r\n nextPrev = $items.eq(next).parent().prevAll(':not(.disabled)').eq(0).index();\r\n\r\n if (e.keyCode == 38) {\r\n if (index != nextPrev && index > prev) index = prev;\r\n if (index < first) index = first;\r\n }\r\n\r\n if (e.keyCode == 40) {\r\n if (index != nextPrev && index < next) index = next;\r\n if (index > last) index = last;\r\n }\r\n\r\n $items.eq(index).focus()\r\n } else {\r\n var keyCodeMap = {\r\n 48: \"0\", 49: \"1\", 50: \"2\", 51: \"3\", 52: \"4\", 53: \"5\", 54: \"6\", 55: \"7\", 56: \"8\", 57: \"9\", 59: \";\",\r\n 65: \"a\", 66: \"b\", 67: \"c\", 68: \"d\", 69: \"e\", 70: \"f\", 71: \"g\", 72: \"h\", 73: \"i\", 74: \"j\", 75: \"k\", 76: \"l\",\r\n 77: \"m\", 78: \"n\", 79: \"o\", 80: \"p\", 81: \"q\", 82: \"r\", 83: \"s\", 84: \"t\", 85: \"u\", 86: \"v\", 87: \"w\", 88: \"x\", 89: \"y\", 90: \"z\",\r\n 96: \"0\", 97: \"1\", 98: \"2\", 99: \"3\", 100: \"4\", 101: \"5\", 102: \"6\", 103: \"7\", 104: \"8\", 105: \"9\"\r\n }\r\n\r\n var keyIndex = [];\r\n\r\n $items.each(function () {\r\n if ($(this).parent().is(':not(.disabled)')) {\r\n if ($.trim($(this).text().toLowerCase()).substring(0, 1) == keyCodeMap[e.keyCode]) {\r\n keyIndex.push($(this).parent().index());\r\n }\r\n }\r\n });\r\n\r\n var count = $(document).data('keycount');\r\n count++;\r\n $(document).data('keycount', count);\r\n\r\n var prevKey = $.trim($(':focus').text().toLowerCase()).substring(0, 1);\r\n\r\n if (prevKey != keyCodeMap[e.keyCode]) {\r\n count = 1;\r\n $(document).data('keycount', count);\r\n } else if (count >= keyIndex.length) {\r\n $(document).data('keycount', 0);\r\n }\r\n\r\n $items.eq(keyIndex[count - 1]).focus();\r\n }\r\n\r\n if (/(13)/.test(e.keyCode)) {\r\n $(':focus').click();\r\n $parent.addClass('open');\r\n\r\n $(document).data('keycount', 0);\r\n }\r\n }\r\n };\r\n\r\n $.fn.selectpicker = function (option, event) {\r\n //get the args of the outer function..\r\n var args = arguments;\r\n var value;\r\n var chain = this.each(function () {\r\n if ($(this).is('select')) {\r\n var $this = $(this),\r\n data = $this.data('selectpicker'),\r\n options = typeof option == 'object' && option;\r\n\r\n if (!data) {\r\n $this.data('selectpicker', (data = new Selectpicker(this, options, event)));\r\n } else if (options) {\r\n for (var i in options) {\r\n data.options[i] = options[i];\r\n }\r\n }\r\n\r\n if (typeof option == 'string') {\r\n //Copy the value of option, as once we shift the arguments\r\n //it also shifts the value of option.\r\n var property = option;\r\n if (data[property] instanceof Function) {\r\n [].shift.apply(args);\r\n value = data[property].apply(data, args);\r\n } else {\r\n value = data.options[property];\r\n }\r\n }\r\n }\r\n });\r\n\r\n if (value != undefined) {\r\n return value;\r\n } else {\r\n return chain;\r\n }\r\n };\r\n\r\n $.fn.selectpicker.defaults = {\r\n style: null,\r\n size: 'auto',\r\n title: null,\r\n selectedTextFormat: 'values',\r\n noneSelectedText: 'Nothing selected',\r\n width: null,\r\n container: false,\r\n hideDisabled: false\r\n }\r\n\r\n $(document)\r\n .data('keycount', 0)\r\n .on('keydown', '[data-toggle=dropdown], [role=menu]', Selectpicker.prototype.keydown)\r\n\r\n}(window.jQuery);\r\n","(function ($, l) { function createMetaTag(a, b, c) { if ($('meta[name=' + a + ']').length && a !== 'msapplication-task') { return } if (!b.length) { return } $('', { name: a, content: b }).appendTo(c) } function siteModeSupported() { return (!!window.external) && ('msIsSiteMode' in window.external) } var m = { init: function (e) { var f = { applicationName: document.title.toString(), favIcon: 'http://' + location.host + '/favicon.ico', navColor: '', startUrl: 'http://' + location.host, tooltip: document.title.toString(), window: 'width=800;height=600', tasks: [] }; e = $.extend({}, f, e); return this.each(function () { var c = e.tasks; var d = this; if ($('link[type^=image]').length === 0) { $(\"\", { rel: \"shortcut icon\", type: \"image/ico\", href: e.favIcon }).appendTo(this) } createMetaTag('application-name', e.applicationName, this); createMetaTag('msapplication-tooltip', e.tooltip, this); createMetaTag('msapplication-starturl', e.startUrl, this); createMetaTag('msapplication-navbutton-color', e.navColor, this); createMetaTag('msapplication-window', e.window, this); $.each(c, function (a, b) { if (typeof a != 'undefined' && typeof b != 'undefined') { createMetaTag('msapplication-task', 'name=' + b.name + ';action-uri=' + b.action + ';fa fa-uri=' + b.icon, d) } }) }) }, enablePinning: function (a) { return this.each(function () { a = a || \"Drag this image to your Windows 7 Taskbar to pin this site with IE9\"; $(this).addClass('msPinSite').attr(\"title\", a) }) }, enableSiteMode: function (b) { b = b || \"click\"; return this.each(function () { $(this).bind(b, function (a) { a.preventDefault(); try { window.external.msAddSiteMode() } catch (e) { } }) }) }, pinTeaser: function (b) { if (window.external.msIsSiteMode()) { return this } var c = $(this); var d = { type: 'hangingChad', icon: 'http://' + location.host + '/favicon.ico', pinText: 'Drag this image to the taskbar to pin this site', secondaryText: 'Simply drag the icon or tab to taskbar to pin.', addStartLink: true, linkText: 'Click here to add this site to the start menu', sticky: true, timeout: 10000, style: { linkColor: 'rgb(0, 108, 172)', backgroundColor: 'rgb(0, 108, 172)', textColor: 'white', backgroundImage: null, leftBackgoundImage: null, rightBackgoundImage: null, closeButtonImage: null} }; var f, contentDiv, leftDiv, leftBar, rightDiv, mainContent; var g = { topHat: function () { c.addClass('pinify-topHat-container pinify-teaser').css('color', b.style.textColor); if (b.style.backgoundImage) { c.css('background-image', b.style.backgroundImage) } f = $('
    ', { 'class': 'pinify-topHat-alignment' }).appendTo(c); contentDiv = $('
    ', { 'class': 'pinify-topHat-content' }).appendTo(f); $('', { id: 'pinify-topHat-logo', src: b.icon, alt: 'Drag Me', 'class': 'msPinSite' }).appendTo(contentDiv); $('').addClass('pinify-topHat-text').text(b.pinText).appendTo(contentDiv) }, brandedTopHat: function () { c.addClass('pinify-brandedTopHat-container pinify-teaser').css('color', b.style.textColor); if (b.style.backgoundImage) { c.css('background-image', b.style.backgroundImage) } contentDiv = $('
    ', { 'class': 'pinify-brandedTopHat-content' }).appendTo(c); $('', { id: 'pinify-brandedTopHat-firstLogo', src: b.icon, alt: 'Drag Me', 'class': 'msPinSite' }).appendTo(contentDiv); $('', { id: 'pinify-brandedTopHat-thirdLogo', src: b.icon, alt: 'Drag Me', 'class': 'msPinSite' }).appendTo(contentDiv); $('
    ', { 'class': 'pinify-mainText' }).text(b.pinText).appendTo(contentDiv); $('
    ', { 'class': 'pinify-brandedTopHat-secondaryText' }).text(b.secondaryText).appendTo(contentDiv) }, doubleTopHat: function () { c.addClass('pinify-doubleTopHat-container pinify-teaser').css('color', b.style.textColor); leftDiv = $('
    ', { 'class': 'pinify-doubleTopHat-left' }).appendTo(c); if (b.style.leftBackgroundImage) { $(leftDiv).css('background-image', b.style.leftBackgoundImage) } leftBar = $('
    ', { id: 'pinify-doubleTopHat-leftBar' }).appendTo(leftDiv); $('', { id: 'pinify-doubleTopHat-logo', src: b.icon, alt: 'Drag Me', 'class': 'msPinSite' }).appendTo(leftBar); rightDiv = $('
    ', { 'class': 'pinify-doubleTopHat-right' }).appendTo(c); if (b.style.rightBackgroundImage) { $(rightDiv).css('background-image', b.style.rightBackgoundImage) } $('
    ', { id: 'pinify-doubleTopHat-rightBar' }).appendTo(rightDiv); mainContent = $('
    ', { id: 'pinify-doubleTopHat-rightBarMainContent' }).appendTo(rightDiv); $('
    ', { 'class': 'pinify-mainText' }).text(b.pinText).appendTo(mainContent); $('
    ', { 'class': 'pinify-doubleTopHat-lighterText' }).text(b.secondaryText).appendTo(rightDiv) }, hangingChad: function () { c.hide(); c.css({ 'color': b.style.textColor, 'background-color': b.style.backgroundColor }).addClass('pinify-hanging-container pinify-teaser'); $('', { src: b.icon, 'class': 'msPinSite' }).appendTo(c); $('
    ', { 'class': 'pinify-hanging-content' }).appendTo(c); $('
    ', { id: 'pinify-pinText' }).text(b.pinText).appendTo(c); c.fadeIn('slow') } }; b = $.extend({}, d, b); return this.each(function () { g[b.type](); if (!b.sticky) { this.delay(b.timeout).fadeOut('slow') } else { $('
    ').addClass('pinify-closePin').click(function () { $('.pinify-teaser').slideUp('slow'); c.slideUp('slow') }).appendTo(c) } if (!b.addStartLink) { return } $('').addClass('pinify-addSiteLink').attr('href', '#').click(function (a) { a.preventDefault(); try { window.external.msAddSiteMode() } catch (e) { } }).css('color', b.linkColor).appendTo(c).text(b.linkText) }) } }; $.fn.pinify = function (a) { if (!siteModeSupported()) { return this } if (m[a]) { return m[a].apply(this, Array.prototype.slice.call(arguments, 1)) } else if (typeof a === 'object' || !a) { return m.init.apply(this, arguments) } else { $.error('Method ' + a + ' does not exist on jQuery.pinify') } }; $.pinify = {}; $.pinify.firstRunState = function (a) { if (!siteModeSupported()) { return 0 } if (a) { a = false } try { return window.external.msIsSiteModeFirstRun(a) } catch (e) { return 0 } }; $.pinify.isPinned = function () { if (!siteModeSupported()) { return false } try { return window.external.msIsSiteMode() } catch (e) { return false } }; $.pinify.addJumpList = function (c) { if (!siteModeSupported()) { return this } var d = { title: '', items: [] }; c = $.extend({}, d, c); try { if (window.external.msIsSiteMode()) { window.external.msSiteModeClearJumplist(); window.external.msSiteModeCreateJumplist(c.title); var f = c.items; $.each(f, function (a, b) { window.external.msSiteModeAddJumpListItem(b.name, b.url, b.icon) }); window.external.msSiteModeShowJumplist() } } catch (e) { } return this }; $.pinify.clearJumpList = function () { if (!siteModeSupported()) { return this } try { if (window.external.msIsSiteMode()) { window.external.msSiteModeClearJumpList() } } catch (e) { } }; $.pinify.addOverlay = function (a) { if (!siteModeSupported()) { return this } var b = { eventName: 'click', title: '', icon: '' }; a = $.extend({}, b, a); try { if (window.external.msIsSiteMode()) { window.external.msSiteModeClearIconOverlay(); window.external.msSiteModeSetIconOverlay(a.icon, a.title) } } catch (e) { } }; $.pinify.clearOverlay = function () { if (!siteModeSupported()) { return this } try { if (window.external.msIsSiteMode()) { window.external.msSiteModeClearIconOverlay() } } catch (e) { } }; $.pinify.flashTaskbar = function (a) { if (!siteModeSupported()) { return this } try { if (window.external.msIsSiteMode()) { window.external.msSiteModeActivate() } } catch (e) { } }; $.pinify.createThumbbarButtons = function (g) { if (!siteModeSupported()) { return this } var h = { buttons: [] }; g = $.extend({}, h, g); try { if (window.external.msIsSiteMode()) { var i = []; var j = function () { }; j.prototype.button = null; j.prototype.alternateStyle = null; j.prototype.activeStyle = 0; j.prototype.click = null; var k = function (a) { var b = i[a.buttonID]; b.click(); if (b.alternateStyle) { var c = b.activeStyle === 0 ? b.alternateStyle : 0; window.external.msSiteModeShowButtonStyle(b.button, c); b.activeStyle = c } }; $.each(g.buttons, function (a, b) { var c = window.external.msSiteModeAddThumbBarButton(b.icon, b.name); var d; if (b.alternateStyle) { var e = b.alternateStyle; d = window.external.msSiteModeAddButtonStyle(c, e.icon, e.name) } var f = new j(); f.button = c; f.alternateStyle = d; f.click = b.click; i[c] = f; document.addEventListener('msthumbnailclick', k, false) }); window.onunload = function () { var a; for (a in i) { if (i.hasOwnProperty(a)) { window.external.msSiteModeUpdateThumbBarButton(i[a].button, true, false) } } }; window.onload = function () { var a; for (a in i) { if (i.hasOwnProperty(a)) { window.external.msSiteModeUpdateThumbBarButton(i[a].button, true, true) } } }; window.external.msSiteModeShowThumbBar() } } catch (e) { } } })(jQuery)\r\n","/**\r\n * jQuery Unveil\r\n * A very lightweight jQuery plugin to lazy load images\r\n * http://luis-almeida.github.com/unveil\r\n *\r\n * Licensed under the MIT license.\r\n * Copyright 2013 Luís Almeida\r\n * https://github.com/luis-almeida\r\n */\r\n\r\n; (function ($)\r\n{\r\n\r\n $.fn.unveil = function (threshold, callback)\r\n {\r\n\r\n var $w = $(window),\r\n th = threshold || 0,\r\n retina = window.devicePixelRatio > 1,\r\n attrib = retina ? \"data-src-retina\" : \"data-src\",\r\n images = this,\r\n loaded;\r\n\r\n this.one(\"unveil\", function ()\r\n {\r\n var source = this.getAttribute(attrib);\r\n source = source || this.getAttribute(\"data-src\");\r\n if (source)\r\n {\r\n this.setAttribute(\"src\", source);\r\n if (typeof callback === \"function\") callback.call(this);\r\n }\r\n });\r\n\r\n function unveil()\r\n {\r\n var inview = images.filter(function ()\r\n {\r\n var $e = $(this);\r\n if ($e.is(\":hidden\")) return;\r\n\r\n var wt = $w.scrollTop(),\r\n wb = wt + $w.height(),\r\n et = $e.offset().top,\r\n eb = et + $e.height();\r\n\r\n return eb >= wt - th && et <= wb + th;\r\n });\r\n\r\n loaded = inview.trigger(\"unveil\");\r\n images = images.not(loaded);\r\n }\r\n\r\n $w.on(\"scroll.unveil resize.unveil lookup.unveil\", unveil);\r\n\r\n unveil();\r\n\r\n return this;\r\n\r\n };\r\n\r\n})(window.jQuery || window.Zepto);","\r\n\r\n//fgnass.github.com/spin.js#v2.0.1\r\n/**\r\n * Copyright (c) 2011-2014 Felix Gnass\r\n * Licensed under the MIT license\r\n */\r\n(function (root, factory) {\r\n\r\n\t/* CommonJS */\r\n\tif (typeof exports == 'object') module.exports = factory()\r\n\r\n\t\t/* AMD module */\r\n\telse if (typeof define == 'function' && define.amd) define(factory)\r\n\r\n\t\t/* Browser global */\r\n\telse root.Spinner = factory()\r\n}\r\n(this, function () {\r\n\t\"use strict\";\r\n\r\n\tvar prefixes = ['webkit', 'Moz', 'ms', 'O'] /* Vendor prefixes */\r\n\t , animations = {} /* Animation rules keyed by their name */\r\n\t , useCssAnimations /* Whether to use CSS animations or setTimeout */\r\n\r\n\t/**\r\n\t * Utility function to create elements. If no tag name is given,\r\n\t * a DIV is created. Optionally properties can be passed.\r\n\t */\r\n\tfunction createEl(tag, prop) {\r\n\t\tvar el = document.createElement(tag || 'div')\r\n\t\t , n\r\n\r\n\t\tfor (n in prop) el[n] = prop[n]\r\n\t\treturn el\r\n\t}\r\n\r\n\t/**\r\n\t * Appends children and returns the parent.\r\n\t */\r\n\tfunction ins(parent /* child1, child2, ...*/) {\r\n\t\tfor (var i = 1, n = arguments.length; i < n; i++)\r\n\t\t\tparent.appendChild(arguments[i])\r\n\r\n\t\treturn parent\r\n\t}\r\n\r\n\t/**\r\n\t * Insert a new stylesheet to hold the @keyframe or VML rules.\r\n\t */\r\n\tvar sheet = (function () {\r\n\t\tvar el = createEl('style', { type: 'text/css' })\r\n\t\tins(document.getElementsByTagName('head')[0], el)\r\n\t\treturn el.sheet || el.styleSheet\r\n\t}())\r\n\r\n\t/**\r\n\t * Creates an opacity keyframe animation rule and returns its name.\r\n\t * Since most mobile Webkits have timing issues with animation-delay,\r\n\t * we create separate rules for each line/segment.\r\n\t */\r\n\tfunction addAnimation(alpha, trail, i, lines) {\r\n\t\tvar name = ['opacity', trail, ~~(alpha * 100), i, lines].join('-')\r\n\t\t , start = 0.01 + i / lines * 100\r\n\t\t , z = Math.max(1 - (1 - alpha) / trail * (100 - start), alpha)\r\n\t\t , prefix = useCssAnimations.substring(0, useCssAnimations.indexOf('Animation')).toLowerCase()\r\n\t\t , pre = prefix && '-' + prefix + '-' || ''\r\n\r\n\t\tif (!animations[name]) {\r\n\t\t\tsheet.insertRule(\r\n\t\t\t '@' + pre + 'keyframes ' + name + '{' +\r\n\t\t\t '0%{opacity:' + z + '}' +\r\n\t\t\t start + '%{opacity:' + alpha + '}' +\r\n\t\t\t (start + 0.01) + '%{opacity:1}' +\r\n\t\t\t (start + trail) % 100 + '%{opacity:' + alpha + '}' +\r\n\t\t\t '100%{opacity:' + z + '}' +\r\n\t\t\t '}', sheet.cssRules.length)\r\n\r\n\t\t\tanimations[name] = 1\r\n\t\t}\r\n\r\n\t\treturn name\r\n\t}\r\n\r\n\t/**\r\n\t * Tries various vendor prefixes and returns the first supported property.\r\n\t */\r\n\tfunction vendor(el, prop) {\r\n\t\tvar s = el.style\r\n\t\t , pp\r\n\t\t , i\r\n\r\n\t\tprop = prop.charAt(0).toUpperCase() + prop.slice(1)\r\n\t\tfor (i = 0; i < prefixes.length; i++) {\r\n\t\t\tpp = prefixes[i] + prop\r\n\t\t\tif (s[pp] !== undefined) return pp\r\n\t\t}\r\n\t\tif (s[prop] !== undefined) return prop\r\n\t}\r\n\r\n\t/**\r\n\t * Sets multiple style properties at once.\r\n\t */\r\n\tfunction css(el, prop) {\r\n\t\tfor (var n in prop)\r\n\t\t\tel.style[vendor(el, n) || n] = prop[n]\r\n\r\n\t\treturn el\r\n\t}\r\n\r\n\t/**\r\n\t * Fills in default values.\r\n\t */\r\n\tfunction merge(obj) {\r\n\t\tfor (var i = 1; i < arguments.length; i++) {\r\n\t\t\tvar def = arguments[i]\r\n\t\t\tfor (var n in def)\r\n\t\t\t\tif (obj[n] === undefined) obj[n] = def[n]\r\n\t\t}\r\n\t\treturn obj\r\n\t}\r\n\r\n\t/**\r\n\t * Returns the absolute page-offset of the given element.\r\n\t */\r\n\tfunction pos(el) {\r\n\t\tvar o = { x: el.offsetLeft, y: el.offsetTop }\r\n\t\twhile ((el = el.offsetParent))\r\n\t\t\to.x += el.offsetLeft, o.y += el.offsetTop\r\n\r\n\t\treturn o\r\n\t}\r\n\r\n\t/**\r\n\t * Returns the line color from the given string or array.\r\n\t */\r\n\tfunction getColor(color, idx) {\r\n\t\treturn typeof color == 'string' ? color : color[idx % color.length]\r\n\t}\r\n\r\n\t// Built-in defaults\r\n\r\n\tvar defaults = {\r\n\t\tlines: 12, // The number of lines to draw\r\n\t\tlength: 7, // The length of each line\r\n\t\twidth: 5, // The line thickness\r\n\t\tradius: 10, // The radius of the inner circle\r\n\t\trotate: 0, // Rotation offset\r\n\t\tcorners: 1, // Roundness (0..1)\r\n\t\tcolor: '#3c85fe', // #rgb or #rrggbb\r\n\t\tdirection: 1, // 1: clockwise, -1: counterclockwise\r\n\t\tspeed: 1, // Rounds per second\r\n\t\ttrail: 81, // Afterglow percentage\r\n\t\topacity: 0, // Opacity of the lines\r\n\t\tfps: 20, // Frames per second when using setTimeout()\r\n\t\tzIndex: 2e9, // Use a high z-index by default\r\n\t\tclassName: 'spinner', // CSS class to assign to the element\r\n\t\ttop: '50%', // center vertically\r\n\t\tleft: '50%', // center horizontally\r\n\t\tposition: 'absolute' // element position\r\n\t}\r\n\r\n\t/** The constructor */\r\n\tfunction Spinner(o) {\r\n\t\tthis.opts = merge(o || {}, Spinner.defaults, defaults)\r\n\t}\r\n\r\n\t// Global defaults that override the built-ins:\r\n\tSpinner.defaults = {}\r\n\r\n\tmerge(Spinner.prototype, {\r\n\r\n\t\t/**\r\n\t\t * Adds the spinner to the given target element. If this instance is already\r\n\t\t * spinning, it is automatically removed from its previous target b calling\r\n\t\t * stop() internally.\r\n\t\t */\r\n\t\tspin: function (target) {\r\n\t\t\tthis.stop()\r\n\r\n\t\t\tvar self = this\r\n\t\t\t , o = self.opts\r\n\t\t\t , el = self.el = css(createEl(0, { className: o.className }), { position: o.position, width: 0, zIndex: o.zIndex })\r\n\t\t\t , mid = o.radius + o.length + o.width\r\n\r\n\t\t\tcss(el, {\r\n\t\t\t\tleft: o.left,\r\n\t\t\t\ttop: o.top\r\n\t\t\t})\r\n\r\n\t\t\tif (target) {\r\n\t\t\t\ttarget.insertBefore(el, target.firstChild || null)\r\n\t\t\t}\r\n\r\n\t\t\tel.setAttribute('role', 'progressbar')\r\n\t\t\tself.lines(el, self.opts)\r\n\r\n\t\t\tif (!useCssAnimations) {\r\n\t\t\t\t// No CSS animation support, use setTimeout() instead\r\n\t\t\t\tvar i = 0\r\n\t\t\t\t , start = (o.lines - 1) * (1 - o.direction) / 2\r\n\t\t\t\t , alpha\r\n\t\t\t\t , fps = o.fps\r\n\t\t\t\t , f = fps / o.speed\r\n\t\t\t\t , ostep = (1 - o.opacity) / (f * o.trail / 100)\r\n\t\t\t\t , astep = f / o.lines\r\n\r\n\t\t\t\t; (function anim() {\r\n\t\t\t\t\ti++;\r\n\t\t\t\t\tfor (var j = 0; j < o.lines; j++) {\r\n\t\t\t\t\t\talpha = Math.max(1 - (i + (o.lines - j) * astep) % f * ostep, o.opacity)\r\n\r\n\t\t\t\t\t\tself.opacity(el, j * o.direction + start, alpha, o)\r\n\t\t\t\t\t}\r\n\t\t\t\t\tself.timeout = self.el && setTimeout(anim, ~~(1000 / fps))\r\n\t\t\t\t})()\r\n\t\t\t}\r\n\t\t\treturn self\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Stops and removes the Spinner.\r\n\t\t */\r\n\t\tstop: function () {\r\n\t\t\tvar el = this.el\r\n\t\t\tif (el) {\r\n\t\t\t\tclearTimeout(this.timeout)\r\n\t\t\t\tif (el.parentNode) el.parentNode.removeChild(el)\r\n\t\t\t\tthis.el = undefined\r\n\t\t\t}\r\n\t\t\treturn this\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Internal method that draws the individual lines. Will be overwritten\r\n\t\t * in VML fallback mode below.\r\n\t\t */\r\n\t\tlines: function (el, o) {\r\n\t\t\tvar i = 0\r\n\t\t\t , start = (o.lines - 1) * (1 - o.direction) / 2\r\n\t\t\t , seg\r\n\r\n\t\t\tfunction fill(color, shadow) {\r\n\t\t\t\treturn css(createEl(), {\r\n\t\t\t\t\tposition: 'absolute',\r\n\t\t\t\t\twidth: (o.length + o.width) + 'px',\r\n\t\t\t\t\theight: o.width + 'px',\r\n\t\t\t\t\tbackground: color,\r\n\t\t\t\t\tboxShadow: shadow,\r\n\t\t\t\t\ttransformOrigin: 'left',\r\n\t\t\t\t\ttransform: 'rotate(' + ~~(360 / o.lines * i + o.rotate) + 'deg) translate(' + o.radius + 'px' + ',0)',\r\n\t\t\t\t\tborderRadius: (o.corners * o.width >> 1) + 'px'\r\n\t\t\t\t})\r\n\t\t\t}\r\n\r\n\t\t\tfor (; i < o.lines; i++) {\r\n\t\t\t\tseg = css(createEl(), {\r\n\t\t\t\t\tposition: 'absolute',\r\n\t\t\t\t\ttop: 1 + ~(o.width / 2) + 'px',\r\n\t\t\t\t\ttransform: o.hwaccel ? 'translate3d(0,0,0)' : '',\r\n\t\t\t\t\topacity: o.opacity,\r\n\t\t\t\t\tanimation: useCssAnimations && addAnimation(o.opacity, o.trail, start + i * o.direction, o.lines) + ' ' + 1 / o.speed + 's linear infinite'\r\n\t\t\t\t})\r\n\r\n\t\t\t\tif (o.shadow) ins(seg, css(fill('#000', '0 0 4px ' + '#000'), { top: 2 + 'px' }))\r\n\t\t\t\tins(el, ins(seg, fill(getColor(o.color, i), '0 0 1px rgba(0,0,0,.1)')))\r\n\t\t\t}\r\n\t\t\treturn el\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Internal method that adjusts the opacity of a single line.\r\n\t\t * Will be overwritten in VML fallback mode below.\r\n\t\t */\r\n\t\topacity: function (el, i, val) {\r\n\t\t\tif (i < el.childNodes.length) el.childNodes[i].style.opacity = val\r\n\t\t}\r\n\r\n\t})\r\n\r\n\r\n\tfunction initVML() {\r\n\r\n\t\t/* Utility function to create a VML tag */\r\n\t\tfunction vml(tag, attr) {\r\n\t\t\treturn createEl('<' + tag + ' xmlns=\"urn:schemas-microsoft.com:vml\" class=\"spin-vml\">', attr)\r\n\t\t}\r\n\r\n\t\t// No CSS transforms but VML support, add a CSS rule for VML elements:\r\n\t\tsheet.addRule('.spin-vml', 'behavior:url(#default#VML)')\r\n\r\n\t\tSpinner.prototype.lines = function (el, o) {\r\n\t\t\tvar r = o.length + o.width\r\n\t\t\t , s = 2 * r\r\n\r\n\t\t\tfunction grp() {\r\n\t\t\t\treturn css(\r\n\t\t\t\t vml('group', {\r\n\t\t\t\t\t coordsize: s + ' ' + s,\r\n\t\t\t\t\t coordorigin: -r + ' ' + -r\r\n\t\t\t\t }),\r\n\t\t\t\t { width: s, height: s }\r\n\t\t\t\t)\r\n\t\t\t}\r\n\r\n\t\t\tvar margin = -(o.width + o.length) * 2 + 'px'\r\n\t\t\t , g = css(grp(), { position: 'absolute', top: margin, left: margin })\r\n\t\t\t , i\r\n\r\n\t\t\tfunction seg(i, dx, filter) {\r\n\t\t\t\tins(g,\r\n\t\t\t\t ins(css(grp(), { rotation: 360 / o.lines * i + 'deg', left: ~~dx }),\r\n\t\t\t\t\tins(css(vml('roundrect', { arcsize: o.corners }), {\r\n\t\t\t\t\t\twidth: r,\r\n\t\t\t\t\t\theight: o.width,\r\n\t\t\t\t\t\tleft: o.radius,\r\n\t\t\t\t\t\ttop: -o.width >> 1,\r\n\t\t\t\t\t\tfilter: filter\r\n\t\t\t\t\t}),\r\n\t\t\t\t\t vml('fill', { color: getColor(o.color, i), opacity: o.opacity }),\r\n\t\t\t\t\t vml('stroke', { opacity: 0 }) // transparent stroke to fix color bleeding upon opacity change\r\n\t\t\t\t\t)\r\n\t\t\t\t )\r\n\t\t\t\t)\r\n\t\t\t}\r\n\r\n\t\t\tif (o.shadow)\r\n\t\t\t\tfor (i = 1; i <= o.lines; i++)\r\n\t\t\t\t\tseg(i, -2, 'progid:DXImageTransform.Microsoft.Blur(pixelradius=2,makeshadow=1,shadowopacity=.3)')\r\n\r\n\t\t\tfor (i = 1; i <= o.lines; i++) seg(i)\r\n\t\t\treturn ins(el, g)\r\n\t\t}\r\n\r\n\t\tSpinner.prototype.opacity = function (el, i, val, o) {\r\n\t\t\tvar c = el.firstChild\r\n\t\t\to = o.shadow && o.lines || 0\r\n\t\t\tif (c && i + o < c.childNodes.length) {\r\n\t\t\t\tc = c.childNodes[i + o]; c = c && c.firstChild; c = c && c.firstChild\r\n\t\t\t\tif (c) c.opacity = val\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tvar probe = css(createEl('group'), { behavior: 'url(#default#VML)' })\r\n\r\n\tif (!vendor(probe, 'transform') && probe.adj) initVML()\r\n\telse useCssAnimations = vendor(probe, 'animation')\r\n\r\n\treturn Spinner\r\n\r\n}));\r\n\r\n\r\n\r\n\r\n\r\n(function (factory) {\r\n\r\n\tif (typeof exports == 'object') {\r\n\t\t// CommonJS\r\n\t\tfactory(require('jquery'), require('spin'))\r\n\t}\r\n\telse if (typeof define == 'function' && define.amd) {\r\n\t\t// AMD, register as anonymous module\r\n\t\tdefine(['jquery', 'spin'], factory)\r\n\t}\r\n\telse {\r\n\t\t// Browser globals\r\n\t\tif (!window.Spinner) throw new Error('Spin.js not present')\r\n\t\tfactory(window.jQuery, window.Spinner)\r\n\t}\r\n\r\n}(function ($, Spinner) {\r\n\r\n\t$.fn.spin = function (opts, color) {\r\n\r\n\t\treturn this.each(function () {\r\n\t\t\tvar $this = $(this),\r\n\t\t\t data = $this.data();\r\n\r\n\t\t\tif (data.spinner) {\r\n\t\t\t\tdata.spinner.stop();\r\n\t\t\t\tdelete data.spinner;\r\n\t\t\t}\r\n\t\t\tif (opts !== false) {\r\n\t\t\t\topts = $.extend(\r\n\t\t\t\t { color: color || $this.css('color') },\r\n\t\t\t\t $.fn.spin.presets[opts] || opts\r\n\t\t\t\t)\r\n\t\t\t\tdata.spinner = new Spinner(opts).spin(this)\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\t$.fn.spin.presets = {\r\n\t\ttiny: { lines: 8, length: 2, width: 2, radius: 3, color: '#3c85fe', opacity: 0, trail: 81 },\r\n\t\tsmall: { lines: 8, length: 4, width: 3, radius: 5, color: '#3c85fe', opacity: 0, trail: 81 },\r\n\t\tlarge: { lines: 10, length: 8, width: 4, radius: 8, color: '#3c85fe', opacity: 0, trail: 81 },\r\n\t\tdefault: { lines: 12, length: 8, width: 4, radius: 8, color: '#3c85fe', opacity: 0, trail: 81 }\r\n\t}\r\n\r\n}));\r\n\r\n\r\n","\r\n(function ($) {\r\n\r\n 'use strict';\r\n\r\n $(document).on('click', '.segmented-control .control-item', function (e) {\r\n e.preventDefault();\r\n\r\n var container = $(e.target).data('target');\r\n if (!container) return;\r\n\r\n\r\n $('.segmented-control .control-item').removeClass('active');\r\n $('.control-content').removeClass('active');\r\n\r\n $(e.target).addClass('active');\r\n $(container).addClass('active');\r\n\r\n return false;\r\n });\r\n\r\n $('.segmented-control .control-item').addClass('noeffect');\r\n \r\n})(window.jQuery);","/*!\n * Kwicks: Sexy Sliding Panels for jQuery - v2.2.1\n * http://devsmash.com/projects/kwicks\n *\n * Copyright 2013 Jeremy Martin (jmar777)\n * Contributors: Duke Speer (Duke3D), Guillermo Guerrero (gguerrero)\n * Released under the MIT license\n * http://www.opensource.org/licenses/mit-license.php\n */\n\n(function ($) {\n\n\t/**\n\t * API methods for the plugin\n\t */\n\tvar methods = {\n\t\tinit: function (opts) {\n\t\t\tvar defaults = {\n\t\t\t\t// general options:\n\t\t\t\tmaxSize: -1,\n\t\t\t\tminSize: -1,\n\t\t\t\tspacing: 5,\n\t\t\t\tduration: 500,\n\t\t\t\tisVertical: false,\n\t\t\t\teasing: undefined,\n\t\t\t\tautoResize: true,\n\t\t\t\tbehavior: null,\n\t\t\t\t// menu behavior options:\n\t\t\t\tdelayMouseIn: 0,\n\t\t\t\tdelayMouseOut: 0,\n\t\t\t\tselectOnClick: true,\n\t\t\t\tdeselectOnClick: false,\n\t\t\t\t// slideshow behavior options:\n\t\t\t\tinterval: 2500,\n\t\t\t\tinteractive: true\n\t\t\t};\n\t\t\tvar o = $.extend(defaults, opts);\n\n\t\t\t// validate and normalize options\n\t\t\tif (o.minSize !== -1 && o.maxSize !== -1)\n\t\t\t\tthrow new Error('Kwicks options minSize and maxSize may not both be set');\n\t\t\tif (o.behavior && o.behavior !== 'menu' && o.behavior !== 'slideshow')\n\t\t\t\tthrow new Error('Unrecognized Kwicks behavior specified: ' + o.behavior);\n\t\t\t$.each(['minSize', 'maxSize', 'spacing'], function (i, prop) {\n\t\t\t\tvar val = o[prop];\n\t\t\t\tswitch (typeof val) {\n\t\t\t\t\tcase 'number':\n\t\t\t\t\t\to[prop + 'Units'] = 'px';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'string':\n\t\t\t\t\t\tif (val.slice(-1) === '%') {\n\t\t\t\t\t\t\to[prop + 'Units'] = '%';\n\t\t\t\t\t\t\to[prop] = +val.slice(0, -1) / 100;\n\t\t\t\t\t\t} else if (val.slice(-2) === 'px') {\n\t\t\t\t\t\t\to[prop + 'Units'] = 'px';\n\t\t\t\t\t\t\to[prop] = +val.slice(0, -2);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tthrow new Error('Invalid value for Kwicks option ' + prop + ': ' + val);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tthrow new Error('Invalid value for Kwicks option ' + prop + ': ' + val);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\treturn this.each(function () {\n\t\t\t\t$(this).data('kwicks', new Kwick(this, o));\n\t\t\t});\n\t\t},\n\t\texpand: function (index, opts) {\n\t\t\tif (typeof index === 'object') {\n\t\t\t\topts = index;\n\t\t\t\tindex = undefined;\n\t\t\t}\n\n\t\t\tvar delay = opts && opts.delay || 0;\n\n\t\t\treturn this.each(function () {\n\t\t\t\tvar $this = $(this),\n\t\t\t\t\tkwick = $this.data('kwicks');\n\n\t\t\t\t// assume this is the container\n\t\t\t\tif (kwick) {\n\t\t\t\t\tindex = typeof index === 'number' ? index : -1;\n\t\t\t\t}\n\t\t\t\t// otherwise, assume we have a panel\n\t\t\t\telse if (kwick = $this.parent().data('kwicks')) {\n\t\t\t\t\tindex = $this.index();\n\t\t\t\t} else {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tvar expand = function () {\n\t\t\t\t\t// bail out if the panel is already expanded\n\t\t\t\t\tif (index === kwick.expandedIndex) return;\n\n\t\t\t\t\tvar $panels = kwick.$panels,\n\t\t\t\t\t\texpanded = $panels[index] || null;\n\n\t\t\t\t\tkwick.$container.trigger('expand.kwicks', {\n\t\t\t\t\t\tindex: index,\n\t\t\t\t\t\texpanded: expanded,\n\t\t\t\t\t\tcollapsed: $panels.not(expanded).get(),\n\t\t\t\t\t\toldIndex: kwick.expandedIndex,\n\t\t\t\t\t\toldExpanded: kwick.getExpandedPanel(),\n\t\t\t\t\t\tisAnimated: kwick.isAnimated\n\t\t\t\t\t});\n\t\t\t\t};\n\n\t\t\t\tvar timeoutId = kwick.$container.data('kwicks-timeout-id');\n\t\t\t\tif (timeoutId) {\n\t\t\t\t\tkwick.$container.removeData('kwicks-timeout-id');\n\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t}\n\t\t\t\tif (delay > 0) {\n\t\t\t\t\tkwick.$container.data('kwicks-timeout-id', setTimeout(expand, delay));\n\t\t\t\t} else {\n\t\t\t\t\texpand();\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\texpanded: function () {\n\t\t\tvar kwick = this.first().data('kwicks');\n\t\t\tif (!kwick) return;\n\t\t\treturn kwick.expandedIndex;\n\t\t},\n\t\tselect: function (index) {\n\t\t\treturn this.each(function () {\n\t\t\t\tvar $this = $(this),\n\t\t\t\t\tkwick = $this.data('kwicks');\n\n\t\t\t\t// assume this is the container\n\t\t\t\tif (kwick) {\n\t\t\t\t\tindex = typeof index === 'number' ? index : -1;\n\t\t\t\t}\n\t\t\t\t// otherwise, assume we have a panel\n\t\t\t\telse if (kwick = $this.parent().data('kwicks')) {\n\t\t\t\t\tindex = $this.index();\n\t\t\t\t} else {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// don't trigger event if its already selected\n\t\t\t\tif (index !== kwick.selectedIndex) {\n\t\t\t\t\tvar $panels = kwick.$panels,\n\t\t\t\t\t\tselected = $panels[index] || null;\n\n\t\t\t\t\tkwick.$container.trigger('select.kwicks', {\n\t\t\t\t\t\tindex: index,\n\t\t\t\t\t\tselected: selected,\n\t\t\t\t\t\tunselected: $panels.not(selected).get(),\n\t\t\t\t\t\toldIndex: kwick.selectedIndex,\n\t\t\t\t\t\toldSelected: kwick.getSelectedPanel()\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\t// call expand\n\t\t\t\tkwick.$container.kwicks('expand', index);\n\t\t\t});\n\t\t},\n\t\tselected: function () {\n\t\t\tvar kwick = this.first().data('kwicks');\n\t\t\tif (!kwick) return;\n\t\t\treturn kwick.selectedIndex;\n\t\t},\n\t\tresize: function () {\n\t\t\treturn this.each(function () {\n\t\t\t\tvar $this = $(this),\n\t\t\t\t\tkwick = $this.data('kwicks');\n\n\t\t\t\tif (!kwick) return;\n\n\t\t\t\tkwick.resize();\n\t\t\t});\n\t\t},\n\t\tdestroy: function () {\n\t\t\treturn this.each(function () {\n\t\t\t\tvar $this = $(this),\n\t\t\t\t\tkwick = $this.data('kwicks');\n\n\t\t\t\tif (!kwick) return;\n\n\t\t\t\tkwick.destroy();\n\t\t\t});\n\t\t}\n\t};\n\n\t/**\n\t * Expose the actual plugin\n\t */\n\t$.fn.kwicks = function (opts) {\n\t\tif (methods[opts]) {\n\t\t\treturn methods[opts].apply(this, Array.prototype.slice.call(arguments, 1));\n\t\t} else if (typeof opts === 'object' || !opts) {\n\t\t\treturn methods.init.apply(this, arguments);\n\t\t} else {\n\t\t\tthrow new Error('Unrecognized kwicks method: ' + opts);\n\t\t}\n\t};\n\n\t/**\n\t * Special event for triggering default behavior on 'expand.kwicks' events\n\t */\n\t$.event.special.expand = {\n\t\t_default: function (e, data) {\n\t\t\tif (e.namespace !== 'kwicks') return;\n\t\t\tvar kwick = $(e.target).data('kwicks');\n\t\t\tif (kwick) kwick.expand(data.index);\n\t\t}\n\t};\n\n\t/**\n\t * Special event for triggering default behavior on 'select.kwicks' events\n\t */\n\t$.event.special.select = {\n\t\t_default: function (e, data) {\n\t\t\tif (e.namespace !== 'kwicks') return;\n\t\t\tvar kwick = $(e.target).data('kwicks');\n\t\t\tif (kwick) kwick.select(data.index);\n\t\t}\n\t};\n\n\t/**\n\t * Instantiates a new Kwick instance using the provided container and options.\n\t */\n\tvar Kwick = function Kwick(container, opts) {\n\t\tvar self = this;\n\n\t\tthis.opts = opts;\n\n\t\t// an array of callbacks to invoke if 'destroy' is invoked\n\t\tthis.onDestroyHandlers = [];\n\n\t\t// references to our DOM elements\n\t\tvar orientation = opts.isVertical ? 'vertical' : 'horizontal';\n\t\tthis.$container = $(container);\n\t\tthis.$panels = this.$container.children();\n\n\t\t// semi-smart add/remove around container classes so that we don't bork\n\t\t// the styling if/when destroy is called\n\t\tvar containerClasses = ['kwicks', 'kwicks-' + orientation];\n\t\t$.each(containerClasses, function (className) {\n\t\t\tif (self.$container.hasClass(className)) return;\n\t\t\tself.$container.addClass(className);\n\t\t\tself.onDestroy(function () {\n\t\t\t\tself.$container.removeClass(className);\n\t\t\t});\n\t\t});\n\n\t\t// zero-based, -1 for \"none\"\n\t\tthis.selectedIndex = this.$panels.filter('.kwicks-selected').index();\n\t\tthis.expandedIndex = this.selectedIndex;\n\n\t\t// each instance has a primary and a secondary dimension (primary is the animated dimension)\n\t\tthis.primaryDimension = opts.isVertical ? 'height' : 'width';\n\t\tthis.secondaryDimension = opts.isVertical ? 'width' : 'height';\n\n\t\t// initialize panel sizes\n\t\tthis.calculatePanelSizes();\n\n\t\t// likewise, we have primary and secondary alignments (all panels but the last use primary,\n\t\t// which uses the secondary alignment). this is to allow the first and last panels to have\n\t\t// fixed offsets. this reduces jittering, which is much more noticeable on the last item.\n\t\tthis.primaryAlignment = opts.isVertical ? 'top' : 'left';\n\t\tthis.secondaryAlignment = opts.isVertical ? 'bottom' : 'right';\n\n\t\t// object for creating a \"master\" animation loop for all panel animations\n\t\tthis.$timer = $({ progress: 0 });\n\n\t\t// keeps track of whether or not an animation is in progress\n\t\tthis.isAnimated = false;\n\n\t\t// the current offsets for each panel\n\t\tthis.offsets = this.getOffsetsForExpanded();\n\n\t\tthis.updatePanelStyles();\n\t\tthis.initBehavior();\n\t\tthis.initWindowResizeHandler();\n\n\t\t// somewhat of a blind stab at handling rare/sporadic failures to initialize styles.\n\t\t// https://github.com/jmar777/kwicks/issues/31\n\t\tsetTimeout(function () {\n\t\t\tself.updatePanelStyles();\n\t\t}, 100);\n\t};\n\n\t/**\n\t * Calculates size, minSize, maxSize, and spacing based on the current size of the container and\n\t * the user-provided options. The results will be stored on this.panelSize, this.panelMinSize,\n\t * this.panelMaxSize, and this.panelSpacing. This should be run on initialization and whenever\n\t * the container's primary dimension may have changed in size.\n\t */\n\tKwick.prototype.calculatePanelSizes = function () {\n\t\tvar opts = this.opts,\n\t\t\tcontainerSize = this.getContainerSize(true);\n\n\t\t// calculate spacing first\n\t\tif (opts.spacingUnits === '%') {\n\t\t\tthis.panelSpacing = containerSize * opts.spacing;\n\t\t} else {\n\t\t\tthis.panelSpacing = opts.spacing;\n\t\t}\n\n\t\tvar numPanels = this.$panels.length,\n\t\t\tsumSpacing = this.panelSpacing * (numPanels - 1),\n\t\t\tsumPanelSize = containerSize - sumSpacing;\n\n\t\tthis.panelSize = sumPanelSize / numPanels;\n\n\t\tif (opts.minSize === -1) {\n\t\t\tif (opts.maxSize === -1) {\n\t\t\t\t// if neither minSize or maxSize or set, then we try to pick a sensible default\n\t\t\t\tif (numPanels < 5) {\n\t\t\t\t\tthis.panelMaxSize = containerSize / 3 * 2;\n\t\t\t\t} else {\n\t\t\t\t\tthis.panelMaxSize = containerSize / 3;\n\t\t\t\t}\n\t\t\t} else if (opts.maxSizeUnits === '%') {\n\t\t\t\tthis.panelMaxSize = sumPanelSize * opts.maxSize;\n\t\t\t} else {\n\t\t\t\tthis.panelMaxSize = opts.maxSize;\n\t\t\t}\n\n\t\t\t// at this point we know that this.panelMaxSize is set\n\t\t\tthis.panelMinSize = (sumPanelSize - this.panelMaxSize) / (numPanels - 1);\n\t\t} else if (opts.maxSize === -1) {\n\t\t\t// at this point we know that opts.minSize is set\n\t\t\tif (opts.minSizeUnits === '%') {\n\t\t\t\tthis.panelMinSize = sumPanelSize * opts.minSize;\n\t\t\t} else {\n\t\t\t\tthis.panelMinSize = opts.minSize;\n\t\t\t}\n\n\t\t\t// at this point we know that this.panelMinSize is set\n\t\t\tthis.panelMaxSize = sumPanelSize - (this.panelMinSize * (numPanels - 1));\n\t\t}\n\t};\n\n\t/**\n\t * Returns the calculated panel offsets based on the currently expanded panel.\n\t */\n\tKwick.prototype.getOffsetsForExpanded = function () {\n\t\t// todo: cache the offset values\n\t\tvar expandedIndex = this.expandedIndex,\n\t\t\tnumPanels = this.$panels.length,\n\t\t\tspacing = this.panelSpacing,\n\t\t\tsize = this.panelSize,\n\t\t\tminSize = this.panelMinSize,\n\t\t\tmaxSize = this.panelMaxSize;\n\n\t\t//first panel is always offset by 0\n\t\tvar offsets = [0];\n\n\t\tfor (var i = 1; i < numPanels; i++) {\n\t\t\t// no panel is expanded\n\t\t\tif (expandedIndex === -1) {\n\t\t\t\toffsets[i] = i * (size + spacing);\n\t\t\t}\n\t\t\t// this panel is before or is the expanded panel\n\t\t\telse if (i <= expandedIndex) {\n\t\t\t\toffsets[i] = i * (minSize + spacing);\n\t\t\t}\n\t\t\t// this panel is after the expanded panel\n\t\t\telse {\n\t\t\t\toffsets[i] = maxSize + (minSize * (i - 1)) + (i * spacing);\n\t\t\t}\n\t\t}\n\n\t\treturn offsets;\n\t};\n\n\t/**\n\t * Sets the style attribute on the specified element using the provided value. This probably\n\t * doesn't belong on Kwick.prototype, but here it is...\n\t */\n\tKwick.prototype.setStyle = (function () {\n\t\tif ($.support.style) {\n\t\t\treturn function (el, style) { el.setAttribute('style', style); };\n\t\t} else {\n\t\t\treturn function (el, style) { el.style.cssText = style; };\n\t\t}\n\t})();\n\n\t/**\n\t * Updates the offset and size styling of each panel based on the current values in\n\t * `this.offsets`. Also does some special handling to convert panels to absolute positioning\n\t * the first time this is invoked.\n\t */\n\tKwick.prototype.updatePanelStyles = function () {\n\t\tvar offsets = this.offsets,\n\t\t\t$panels = this.$panels,\n\t\t\tpDim = this.primaryDimension,\n\t\t\tpAlign = this.primaryAlignment,\n\t\t\tsAlign = this.secondaryAlignment,\n\t\t\tspacing = this.panelSpacing,\n\t\t\tcontainerSize = this.getContainerSize();\n\n\t\t// the kwicks-processed class ensures that panels are absolutely positioned, but on our\n\t\t// first pass we need to set offsets, width|length, and positioning atomically to prevent\n\t\t// mid-update repaints\n\t\tvar stylePrefix = !!this._stylesInited ? '' : 'position:absolute;',\n\t\t\toffset, size, prevOffset, style;\n\n\t\t// loop through remaining panels\n\t\tfor (var i = $panels.length; i--;) {\n\t\t\tprevOffset = offset;\n\t\t\t// todo: maybe we do one last pass at the end and round offsets, rather than on every\n\t\t\t// update\n\t\t\toffset = Math.round(offsets[i]);\n\t\t\tif (i === $panels.length - 1) {\n\t\t\t\tsize = containerSize - offset;\n\t\t\t\tstyle = sAlign + ':0;' + pDim + ':' + size + 'px;';\n\t\t\t} else {\n\t\t\t\tsize = prevOffset - offset - spacing;\n\t\t\t\tstyle = pAlign + ':' + offset + 'px;' + pDim + ':' + size + 'px;';\n\t\t\t}\n\t\t\tthis.setStyle($panels[i], stylePrefix + style);\n\t\t}\n\n\t\tif (!this._stylesInited) {\n\t\t\tthis.$container.addClass('kwicks-processed');\n\t\t\tthis._stylesInited = true;\n\t\t}\n\t};\n\n\t/**\n\t * Assuming for a moment that out-of-the-box behaviors aren't a horrible idea, this method\n\t * encapsulates the initialization logic thereof.\n\t */\n\tKwick.prototype.initBehavior = function () {\n\t\tif (!this.opts.behavior) return;\n\n\t\tswitch (this.opts.behavior) {\n\t\t\tcase 'menu':\n\t\t\t\tthis.initMenuBehavior();\n\t\t\t\tbreak;\n\t\t\tcase 'slideshow':\n\t\t\t\tthis.initSlideshowBehavior();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthrow new Error('Unrecognized behavior option: ' + this.opts.behavior);\n\t\t}\n\t};\n\n\t/**\n\t * Initializes the menu behavior.\n\t */\n\tKwick.prototype.initMenuBehavior = function () {\n\t\tvar self = this,\n\t\t\topts = self.opts;\n\n\t\tthis.addEventHandler(this.$container, 'mouseleave', function () {\n\t\t\tself.$container.kwicks('expand', -1, { delay: opts.delayMouseOut });\n\t\t});\n\n\t\tthis.addEventHandler(this.$panels, 'mouseenter', function () {\n\t\t\t$(this).kwicks('expand', { delay: opts.delayMouseIn });\n\t\t});\n\n\t\tif (!opts.selectOnClick && !opts.deselectOnClick) return;\n\n\t\tthis.addEventHandler(this.$panels, 'click', function () {\n\t\t\tvar $this = $(this),\n\t\t\t\tisSelected = $this.hasClass('kwicks-selected');\n\n\t\t\tif (isSelected && opts.deselectOnClick) {\n\t\t\t\t$this.parent().kwicks('select', -1);\n\t\t\t} else if (!isSelected && opts.selectOnClick) {\n\t\t\t\t$this.kwicks('select');\n\t\t\t}\n\t\t});\n\t};\n\n\t/**\n\t * Initializes the slideshow behavior.\n\t */\n\tKwick.prototype.initSlideshowBehavior = function () {\n\t\tvar self = this,\n\t\t\tnumSlides = this.$panels.length,\n\t\t\tcurSlide = 0,\n\t\t\t// flag to handle weird corner cases\n\t\t\trunning = false,\n\t\t\tintervalId;\n\n\t\tvar start = function () {\n\t\t\tif (running) return;\n\t\t\tintervalId = setInterval(function () {\n\t\t\t\tself.$container.kwicks('expand', ++curSlide % numSlides);\n\t\t\t}, self.opts.interval);\n\t\t\trunning = true;\n\t\t};\n\t\tvar pause = function () {\n\t\t\tclearInterval(intervalId);\n\t\t\trunning = false;\n\t\t};\n\n\t\tstart();\n\t\tthis.onDestroy(pause);\n\n\t\tif (!this.opts.interactive) return;\n\n\t\tthis.addEventHandler(this.$container, 'mouseenter', pause);\n\t\tthis.addEventHandler(this.$container, 'mouseleave', start);\n\t\tthis.addEventHandler(this.$panels, 'mouseenter', function () {\n\t\t\tcurSlide = $(this).kwicks('expand').index();\n\t\t});\n\t};\n\n\t/**\n\t * Sets up a throttled window resize handler that triggers resize logic for the panels\n\t * todo: hideous code, needs refactor for the eye bleeds\n\t */\n\tKwick.prototype.initWindowResizeHandler = function () {\n\t\tif (!this.opts.autoResize) return;\n\n\t\tvar self = this,\n\t\t\tprevTime = 0,\n\t\t\texecScheduled = false,\n\t\t\t$window = $(window);\n\n\t\tvar onResize = function (e) {\n\t\t\t// if there's no event, then this is a scheduled from our setTimeout\n\t\t\tif (!e) { execScheduled = false; }\n\n\t\t\t// if we've already run in the last 20ms, then delay execution\n\t\t\tvar now = +new Date();\n\t\t\tif (now - prevTime < 20) {\n\t\t\t\t// if we already scheduled a run, don't do it again\n\t\t\t\tif (execScheduled) return;\n\t\t\t\tsetTimeout(onResize, 20 - (now - prevTime));\n\t\t\t\texecScheduled = true;\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// throttle rate is satisfied, go ahead and run\n\t\t\tprevTime = now;\n\t\t\tself.resize();\n\t\t};\n\n\t\tthis.addEventHandler($window, 'resize', onResize);\n\t};\n\n\t/**\n\t * Returns the size in pixels of the container's primary dimension. This value is cached as it\n\t * is used repeatedly during animation loops, but the cache can be cleared by passing `true`.\n\t * todo: benchmark to see if this caching business is even at all necessary.\n\t */\n\tKwick.prototype.getContainerSize = function (clearCache) {\n\t\tvar containerSize = this._containerSize;\n\t\tif (clearCache || !containerSize) {\n\t\t\tcontainerSize = this._containerSize = this.$container[this.primaryDimension]();\n\t\t}\n\t\treturn containerSize;\n\t};\n\n\t/**\n\t * Gets a reference to the currently expanded panel (if there is one)\n\t */\n\tKwick.prototype.getExpandedPanel = function () {\n\t\treturn this.$panels[this.expandedIndex] || null;\n\t};\n\n\t/**\n\t * Gets a reference to the currently collapsed panels\n\t */\n\tKwick.prototype.getCollapsedPanels = function () {\n\t\tif (this.expandedIndex === -1) return [];\n\t\treturn this.$panels.not(this.getExpandedPanel()).get();\n\t};\n\n\t/**\n\t * Gets a reference to the currently selected panel (if there is one)\n\t */\n\tKwick.prototype.getSelectedPanel = function () {\n\t\treturn this.$panels[this.selectedIndex] || null;\n\t};\n\n\t/**\n\t * Gets a reference to the currently unselected panels\n\t */\n\tKwick.prototype.getUnselectedPanels = function () {\n\t\treturn this.$panels.not(this.getSelectedPanel()).get();\n\t};\n\n\t/**\n\t * Registers a handler to be invoked if/when 'destroy' is invoked\n\t */\n\tKwick.prototype.onDestroy = function (handler) {\n\t\tthis.onDestroyHandlers.push(handler);\n\t};\n\n\t/**\n\t * Adds an event handler and automatically registers it to be removed if/when\n\t * the plugin is destroyed.\n\t */\n\tKwick.prototype.addEventHandler = function ($el, eventName, handler) {\n\t\t$el.on(eventName, handler);\n\t\tthis.onDestroy(function () {\n\t\t\t$el.off(eventName, handler);\n\t\t});\n\t};\n\n\t/**\n\t * \"Destroys\" this Kwicks instance plugin by performing the following:\n\t * 1) Stops any currently running animations\n\t * 2) Invokes all destroy handlers\n\t * 3) Clears out all style attributes on panels\n\t * 4) Removes all kwicks class names from panels and container\n\t * 5) Removes the 'kwicks' data value from the container\n\t */\n\tKwick.prototype.destroy = function () {\n\t\tthis.$timer.stop();\n\t\tfor (var i = 0, len = this.onDestroyHandlers.length; i < len; i++) {\n\t\t\tthis.onDestroyHandlers[i]();\n\t\t}\n\t\tthis.$panels\n\t\t\t.attr('style', '')\n\t\t\t.removeClass('kwicks-expanded kwicks-selected kwicks-collapsed');\n\t\tthis.$container\n\t\t\t// note: kwicks and kwicks- classes have extra smarts around them\n\t\t\t// back in the constructor\n\t\t\t.removeClass('kwicks-processed')\n\t\t\t.removeData('kwicks');\n\t};\n\n\t/**\n\t * Forces the panels to be updated in response to the container being resized.\n\t */\n\tKwick.prototype.resize = function () {\n\t\t// bail out if container size hasn't changed\n\t\tif (this.getContainerSize() === this.getContainerSize(true)) return;\n\n\t\tthis.calculatePanelSizes();\n\t\tthis.offsets = this.getOffsetsForExpanded();\n\n\t\t// if the panels are currently being animated, we'll just set a flag that can be detected\n\t\t// during the next animation step\n\t\tif (this.isAnimated) {\n\t\t\tthis._dirtyOffsets = true;\n\t\t} else {\n\t\t\t// otherwise update the styles immediately\n\t\t\tthis.updatePanelStyles();\n\t\t}\n\t};\n\n\t/**\n\t * Selects the panel with the specified index (use -1 to select none)\n\t */\n\tKwick.prototype.select = function (index) {\n\t\t// make sure the panel isn't already selected\n\t\tif (index === this.selectedIndex) return;\n\n\t\t$(this.getSelectedPanel()).removeClass('kwicks-selected');\n\t\tthis.selectedIndex = index;\n\t\t$(this.getSelectedPanel()).addClass('kwicks-selected');\n\t};\n\n\t/**\n\t * Expands the panel with the specified index (use -1 to expand none)\n\t */\n\tKwick.prototype.expand = function (index) {\n\t\tvar self = this,\n\t\t\t// used for expand-complete event later on\n\t\t\toldIndex = this.expandedIndex,\n\t\t\toldExpanded = this.getExpandedPanel();\n\n\t\t// if the index is -1, then default it to the currently selected index (which will also be\n\t\t// -1 if no panels are currently selected)\n\t\tif (index === -1) index = this.selectedIndex;\n\n\t\t// make sure the panel isn't already expanded\n\t\tif (index === this.expandedIndex) return;\n\n\t\t$(this.getExpandedPanel()).removeClass('kwicks-expanded');\n\t\t$(this.getCollapsedPanels()).removeClass('kwicks-collapsed');\n\t\tthis.expandedIndex = index;\n\t\t$(this.getExpandedPanel()).addClass('kwicks-expanded');\n\t\t$(this.getCollapsedPanels()).addClass('kwicks-collapsed');\n\n\t\t// handle panel animation\n\t\tvar $timer = this.$timer,\n\t\t\tnumPanels = this.$panels.length,\n\t\t\tstartOffsets = this.offsets.slice(),\n\t\t\toffsets = this.offsets,\n\t\t\ttargetOffsets = this.getOffsetsForExpanded();\n\n\t\t$timer.stop()[0].progress = 0;\n\t\tthis.isAnimated = true;\n\t\t$timer.animate({ progress: 1 }, {\n\t\t\tduration: this.opts.duration,\n\t\t\teasing: this.opts.easing,\n\t\t\tstep: function (progress) {\n\t\t\t\t// check if we've resized mid-animation (yes, we're thorough)\n\t\t\t\tif (self._dirtyOffsets) {\n\t\t\t\t\toffsets = self.offsets;\n\t\t\t\t\ttargetOffsets = self.getOffsetsForExpanded();\n\t\t\t\t\tself._dirtyOffsets = false;\n\t\t\t\t}\n\t\t\t\toffsets.length = 0;\n\t\t\t\tfor (var i = 0; i < numPanels; i++) {\n\t\t\t\t\tvar targetOffset = targetOffsets[i],\n\t\t\t\t\t\tnewOffset = targetOffset - ((targetOffset - startOffsets[i]) * (1 - progress));\n\t\t\t\t\toffsets[i] = newOffset;\n\t\t\t\t}\n\t\t\t\tself.updatePanelStyles();\n\t\t\t},\n\t\t\tcomplete: function () {\n\t\t\t\tself.isAnimated = false;\n\t\t\t\tself.$container.trigger('expand-complete.kwicks', {\n\t\t\t\t\tindex: index,\n\t\t\t\t\texpanded: self.getExpandedPanel(),\n\t\t\t\t\tcollapsed: self.getCollapsedPanels(),\n\t\t\t\t\toldIndex: oldIndex,\n\t\t\t\t\toldExpanded: oldExpanded,\n\t\t\t\t\t// note: this will always be false but is included to match expand event\n\t\t\t\t\tisAnimated: false\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t};\n\n})(jQuery);","/*!\r\n * jQuery scrollintoview() plugin and :scrollable selector filter\r\n *\r\n * Version 1.8 (14 Jul 2011)\r\n * Requires jQuery 1.4 or newer\r\n *\r\n * Copyright (c) 2011 Robert Koritnik\r\n * Licensed under the terms of the MIT license\r\n * http://www.opensource.org/licenses/mit-license.php\r\n */\r\n\r\n(function ($) {\r\n\tvar converter = {\r\n\t\tvertical: { x: false, y: true },\r\n\t\thorizontal: { x: true, y: false },\r\n\t\tboth: { x: true, y: true },\r\n\t\tx: { x: true, y: false },\r\n\t\ty: { x: false, y: true }\r\n\t};\r\n\r\n\tvar settings = {\r\n\t\tduration: \"fast\",\r\n\t\tdirection: \"both\"\r\n\t};\r\n\r\n\tvar rootrx = /^(?:html)$/i;\r\n\r\n\t// gets border dimensions\r\n\tvar borders = function (domElement, styles) {\r\n\t\tstyles = styles || (document.defaultView && document.defaultView.getComputedStyle ? document.defaultView.getComputedStyle(domElement, null) : domElement.currentStyle);\r\n\t\tvar px = document.defaultView && document.defaultView.getComputedStyle ? true : false;\r\n\t\tvar b = {\r\n\t\t\ttop: (parseFloat(px ? styles.borderTopWidth : $.css(domElement, \"borderTopWidth\")) || 0),\r\n\t\t\tleft: (parseFloat(px ? styles.borderLeftWidth : $.css(domElement, \"borderLeftWidth\")) || 0),\r\n\t\t\tbottom: (parseFloat(px ? styles.borderBottomWidth : $.css(domElement, \"borderBottomWidth\")) || 0),\r\n\t\t\tright: (parseFloat(px ? styles.borderRightWidth : $.css(domElement, \"borderRightWidth\")) || 0)\r\n\t\t};\r\n\t\treturn {\r\n\t\t\ttop: b.top,\r\n\t\t\tleft: b.left,\r\n\t\t\tbottom: b.bottom,\r\n\t\t\tright: b.right,\r\n\t\t\tvertical: b.top + b.bottom,\r\n\t\t\thorizontal: b.left + b.right\r\n\t\t};\r\n\t};\r\n\r\n\tvar dimensions = function ($element) {\r\n\t\tvar win = $(window);\r\n\t\tvar isRoot = rootrx.test($element[0].nodeName);\r\n\t\treturn {\r\n\t\t\tborder: isRoot ? { top: 0, left: 0, bottom: 0, right: 0} : borders($element[0]),\r\n\t\t\tscroll: {\r\n\t\t\t\ttop: (isRoot ? win : $element).scrollTop(),\r\n\t\t\t\tleft: (isRoot ? win : $element).scrollLeft()\r\n\t\t\t},\r\n\t\t\tscrollbar: {\r\n\t\t\t\tright: isRoot ? 0 : $element.innerWidth() - $element[0].clientWidth,\r\n\t\t\t\tbottom: isRoot ? 0 : $element.innerHeight() - $element[0].clientHeight\r\n\t\t\t},\r\n\t\t\trect: (function () {\r\n\t\t\t\tvar r = $element[0].getBoundingClientRect();\r\n\t\t\t\treturn {\r\n\t\t\t\t\ttop: isRoot ? 0 : r.top,\r\n\t\t\t\t\tleft: isRoot ? 0 : r.left,\r\n\t\t\t\t\tbottom: isRoot ? $element[0].clientHeight : r.bottom,\r\n\t\t\t\t\tright: isRoot ? $element[0].clientWidth : r.right\r\n\t\t\t\t};\r\n\t\t\t})()\r\n\t\t};\r\n\t};\r\n\r\n\t$.fn.extend({\r\n\t\tscrollintoview: function (options) {\r\n\t\t\t/// Scrolls the first element in the set into view by scrolling its closest scrollable parent.\r\n\t\t\t/// Additional options that can configure scrolling:\r\n\t\t\t/// duration (default: \"fast\") - jQuery animation speed (can be a duration string or number of milliseconds)\r\n\t\t\t/// direction (default: \"both\") - select possible scrollings (\"vertical\" or \"y\", \"horizontal\" or \"x\", \"both\")\r\n\t\t\t/// complete (default: none) - a function to call when scrolling completes (called in context of the DOM element being scrolled)\r\n\t\t\t/// \r\n\t\t\t/// Returns the same jQuery set that this function was run on.\r\n\r\n\t\t\toptions = $.extend({}, settings, options);\r\n\t\t\toptions.direction = converter[typeof (options.direction) === \"string\" && options.direction.toLowerCase()] || converter.both;\r\n\r\n\t\t\tvar dirStr = \"\";\r\n\t\t\tif (options.direction.x === true) dirStr = \"horizontal\";\r\n\t\t\tif (options.direction.y === true) dirStr = dirStr ? \"both\" : \"vertical\";\r\n\r\n\t\t\tvar el = this.eq(0);\r\n\t\t\tvar scroller = el.closest(\":scrollable(\" + dirStr + \")\");\r\n\r\n\t\t\t// check if there's anything to scroll in the first place\r\n\t\t\tif (scroller.length > 0)\r\n\t\t\t{\r\n\t\t\t\tscroller = scroller.eq(0);\r\n\r\n\t\t\t\tvar dim = {\r\n\t\t\t\t\te: dimensions(el),\r\n\t\t\t\t\ts: dimensions(scroller)\r\n\t\t\t\t};\r\n\r\n\t\t\t\tvar rel = {\r\n\t\t\t\t\ttop: dim.e.rect.top - (dim.s.rect.top + dim.s.border.top),\r\n\t\t\t\t\tbottom: dim.s.rect.bottom - dim.s.border.bottom - dim.s.scrollbar.bottom - dim.e.rect.bottom,\r\n\t\t\t\t\tleft: dim.e.rect.left - (dim.s.rect.left + dim.s.border.left),\r\n\t\t\t\t\tright: dim.s.rect.right - dim.s.border.right - dim.s.scrollbar.right - dim.e.rect.right\r\n\t\t\t\t};\r\n\r\n\t\t\t\tvar animOptions = {};\r\n\r\n\t\t\t\t// vertical scroll\r\n\t\t\t\tif (options.direction.y === true)\r\n\t\t\t\t{\r\n\t\t\t\t\tif (rel.top < 0)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tanimOptions.scrollTop = dim.s.scroll.top + rel.top;\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse if (rel.top > 0 && rel.bottom < 0)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tanimOptions.scrollTop = dim.s.scroll.top + Math.min(rel.top, -rel.bottom);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// horizontal scroll\r\n\t\t\t\tif (options.direction.x === true)\r\n\t\t\t\t{\r\n\t\t\t\t\tif (rel.left < 0)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tanimOptions.scrollLeft = dim.s.scroll.left + rel.left;\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse if (rel.left > 0 && rel.right < 0)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tanimOptions.scrollLeft = dim.s.scroll.left + Math.min(rel.left, -rel.right);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// scroll if needed\r\n\t\t\t\tif (!$.isEmptyObject(animOptions))\r\n\t\t\t\t{\r\n\t\t\t\t\tif (rootrx.test(scroller[0].nodeName))\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tscroller = $(\"html,body\");\r\n\t\t\t\t\t}\r\n\t\t\t\t\tscroller\r\n\t\t\t\t\t\t.animate(animOptions, options.duration)\r\n\t\t\t\t\t\t.eq(0) // we want function to be called just once (ref. \"html,body\")\r\n\t\t\t\t\t\t.queue(function (next) {\r\n\t\t\t\t\t\t\t$.isFunction(options.complete) && options.complete.call(scroller[0]);\r\n\t\t\t\t\t\t\tnext();\r\n\t\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\t// when there's nothing to scroll, just call the \"complete\" function\r\n\t\t\t\t\t$.isFunction(options.complete) && options.complete.call(scroller[0]);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// return set back\r\n\t\t\treturn this;\r\n\t\t}\r\n\t});\r\n\r\n\tvar scrollValue = {\r\n\t\tauto: true,\r\n\t\tscroll: true,\r\n\t\tvisible: false,\r\n\t\thidden: false\r\n\t};\r\n\r\n\t$.extend($.expr[\":\"], {\r\n\t\tscrollable: function (element, index, meta, stack) {\r\n\t\t\tvar direction = converter[typeof (meta[3]) === \"string\" && meta[3].toLowerCase()] || converter.both;\r\n\t\t\tvar styles = (document.defaultView && document.defaultView.getComputedStyle ? document.defaultView.getComputedStyle(element, null) : element.currentStyle);\r\n\t\t\tvar overflow = {\r\n\t\t\t\tx: scrollValue[styles.overflowX.toLowerCase()] || false,\r\n\t\t\t\ty: scrollValue[styles.overflowY.toLowerCase()] || false,\r\n\t\t\t\tisRoot: rootrx.test(element.nodeName)\r\n\t\t\t};\r\n\r\n\t\t\t// check if completely unscrollable (exclude HTML element because it's special)\r\n\t\t\tif (!overflow.x && !overflow.y && !overflow.isRoot)\r\n\t\t\t{\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\r\n\t\t\tvar size = {\r\n\t\t\t\theight: {\r\n\t\t\t\t\tscroll: element.scrollHeight,\r\n\t\t\t\t\tclient: element.clientHeight\r\n\t\t\t\t},\r\n\t\t\t\twidth: {\r\n\t\t\t\t\tscroll: element.scrollWidth,\r\n\t\t\t\t\tclient: element.clientWidth\r\n\t\t\t\t},\r\n\t\t\t\t// check overflow.x/y because iPad (and possibly other tablets) don't dislay scrollbars\r\n\t\t\t\tscrollableX: function () {\r\n\t\t\t\t\treturn (overflow.x || overflow.isRoot) && this.width.scroll > this.width.client;\r\n\t\t\t\t},\r\n\t\t\t\tscrollableY: function () {\r\n\t\t\t\t\treturn (overflow.y || overflow.isRoot) && this.height.scroll > this.height.client;\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t\treturn direction.y && size.scrollableY() || direction.x && size.scrollableX();\r\n\t\t}\r\n\t});\r\n})(jQuery);","; (function($) { $.extend($.fn, { swapClass: function(c1, c2) { var c1Elements = this.filter('.' + c1); this.filter('.' + c2).removeClass(c2).addClass(c1); c1Elements.removeClass(c1).addClass(c2); return this }, replaceClass: function(c1, c2) { return this.filter('.' + c1).removeClass(c1).addClass(c2).end() }, hoverClass: function(className) { className = className || \"hover\"; return this.hover(function() { $(this).addClass(className) }, function() { $(this).removeClass(className) }) }, heightToggle: function(animated, callback) { animated ? this.animate({ height: \"toggle\" }, animated, callback) : this.each(function() { jQuery(this)[jQuery(this).is(\":hidden\") ? \"show\" : \"hide\"](); if (callback) callback.apply(this, arguments) }) }, heightHide: function(animated, callback) { if (animated) { this.animate({ height: \"hide\" }, animated, callback) } else { this.hide(); if (callback) this.each(callback) } }, prepareBranches: function(settings) { if (!settings.prerendered) { this.filter(\":last-child:not(ul)\").addClass(CLASSES.last); this.filter((settings.collapsed ? \"\" : \".\" + CLASSES.closed) + \":not(.\" + CLASSES.open + \")\").find(\">ul\").hide() } return this.filter(\":has(>ul)\") }, applyClasses: function(settings, toggler) { this.filter(\":has(>ul):not(:has(>a))\").find(\">span\").click(function(event) { toggler.apply($(this).next()) }).add($(\"a\", this)).hoverClass(); if (!settings.prerendered) { this.filter(\":has(>ul:hidden)\").addClass(CLASSES.expandable).replaceClass(CLASSES.last, CLASSES.lastExpandable); this.not(\":has(>ul:hidden)\").addClass(CLASSES.collapsable).replaceClass(CLASSES.last, CLASSES.lastCollapsable); this.prepend(\"
    \").find(\"div.\" + CLASSES.hitarea).each(function() { var classes = \"\"; $.each($(this).parent().attr(\"class\").split(\" \"), function() { classes += this + \"-hitarea \" }); $(this).addClass(classes) }) } this.find(\"div.\" + CLASSES.hitarea).click(toggler) }, treeview: function(settings) { settings = $.extend({ cookieId: \"treeview\" }, settings); if (settings.add) { return this.trigger(\"add\", [settings.add]) } if (settings.toggle) { var callback = settings.toggle; settings.toggle = function() { return callback.apply($(this).parent()[0], arguments) } } function treeController(tree, control) { function handler(filter) { return function() { toggler.apply($(\"div.\" + CLASSES.hitarea, tree).filter(function() { return filter ? $(this).parent(\".\" + filter).length : true })); return false } } $(\"a:eq(0)\", control).click(handler(CLASSES.collapsable)); $(\"a:eq(1)\", control).click(handler(CLASSES.expandable)); $(\"a:eq(2)\", control).click(handler()) } function toggler() { $(this).parent().find(\">.hitarea\").swapClass(CLASSES.collapsableHitarea, CLASSES.expandableHitarea).swapClass(CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea).end().swapClass(CLASSES.collapsable, CLASSES.expandable).swapClass(CLASSES.lastCollapsable, CLASSES.lastExpandable).find(\">ul\").heightToggle(settings.animated, settings.toggle); if (settings.unique) { $(this).parent().siblings().find(\">.hitarea\").replaceClass(CLASSES.collapsableHitarea, CLASSES.expandableHitarea).replaceClass(CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea).end().replaceClass(CLASSES.collapsable, CLASSES.expandable).replaceClass(CLASSES.lastCollapsable, CLASSES.lastExpandable).find(\">ul\").heightHide(settings.animated, settings.toggle) } } function serialize() { function binary(arg) { return arg ? 1 : 0 } var data = []; branches.each(function(i, e) { data[i] = $(e).is(\":has(>ul:visible)\") ? 1 : 0 }); $.cookie(settings.cookieId, data.join(\"\")) } function deserialize() { var stored = $.cookie(settings.cookieId); if (stored) { var data = stored.split(\"\"); branches.each(function(i, e) { $(e).find(\">ul\")[parseInt(data[i]) ? \"show\" : \"hide\"]() }) } } this.addClass(\"treeview\"); var branches = this.find(\"li\").prepareBranches(settings); switch (settings.persist) { case \"cookie\": var toggleCallback = settings.toggle; settings.toggle = function() { serialize(); if (toggleCallback) { toggleCallback.apply(this, arguments) } }; deserialize(); break; case \"location\": var current = this.find(\"a\").filter(function() { return this.href.toLowerCase() == location.href.toLowerCase() }); if (current.length) { current.addClass(\"selected\").parents(\"ul, li\").add(current.next()).show() } break } branches.applyClasses(settings, toggler); if (settings.control) { treeController(this, settings.control); $(settings.control).show() } return this.bind(\"add\", function(event, branches) { $(branches).prev().removeClass(CLASSES.last).removeClass(CLASSES.lastCollapsable).removeClass(CLASSES.lastExpandable).find(\">.hitarea\").removeClass(CLASSES.lastCollapsableHitarea).removeClass(CLASSES.lastExpandableHitarea); $(branches).find(\"li\").andSelf().prepareBranches(settings).applyClasses(settings, toggler) }) } }); var CLASSES = $.fn.treeview.classes = { open: \"open\", closed: \"closed\", expandable: \"expandable\", expandableHitarea: \"expandable-hitarea\", lastExpandableHitarea: \"lastExpandable-hitarea\", collapsable: \"collapsable\", collapsableHitarea: \"collapsable-hitarea\", lastCollapsableHitarea: \"lastCollapsable-hitarea\", lastCollapsable: \"lastCollapsable\", lastExpandable: \"lastExpandable\", last: \"last\", hitarea: \"hitarea\" }; $.fn.Treeview = $.fn.treeview })(jQuery);","(function ($) {\r\n \"use strict\";\r\n\r\n var baseId = \"backdrop\";\r\n var baseClass = baseId;\r\n \r\n\r\n $.fn.extend({\r\n backdrop: function (options) {\r\n\r\n var settings = $.extend({\r\n text: \"\",\r\n small: false,\r\n animation: true,\r\n spinner: false,\r\n cssClass: \"\"\r\n }, options);\r\n\r\n return this.each(function() {\r\n //$(this).addClass(\"backdrop-source\");\r\n\r\n // Get Body and add Class\r\n var $body = $(\"body\");\r\n var $backdrop;\r\n var exist = false;\r\n\r\n if ($(\"#\" + baseId).length) {\r\n exist = true;\r\n\r\n $backdrop = $(\"#\" + baseId);\r\n $backdrop.html();\r\n $backdrop.attr(\"class\", baseClass + \" \" + settings.cssClass);\r\n } else {\r\n\r\n $body.addClass(\"backdrop-body\");\r\n\r\n // Create Backdrop Element\r\n $backdrop = $(\"
    \", { id: baseId, class: baseClass }).addClass(settings.cssClass);\r\n \r\n // Append backdrop Element to body\r\n $backdrop.appendTo($body);\r\n }\r\n\r\n if (settings.animation)\r\n $backdrop.addClass(\"backdrop-animation\");\r\n if (settings.small)\r\n $backdrop.addClass(\"backdrop--small\");\r\n\r\n // Create Wrapper\r\n var $wrapper = $(\"
    \", {\r\n class: \"backdrop-wrapper\"\r\n });\r\n\r\n // Create Spinner and append to wrapper\r\n var $spinner = $(\"
    \", {\r\n class: \"spinner-container\"\r\n }).appendTo($wrapper);\r\n\r\n // Problem with generating a p Element with html\r\n var $text = $(\"

    \" + settings.text + \"

    \").appendTo($wrapper);\r\n\r\n // Append wrapper to Backdrop Element\r\n $wrapper.appendTo($backdrop);\r\n\r\n\r\n // If should spin?\r\n if (settings.spinner) {\r\n $spinner.spin();\r\n }\r\n\r\n // Delay for animation\r\n setTimeout(function () {\r\n $backdrop.css(\"opacity\", \"1\");\r\n }, 50);\r\n });\r\n },\r\n backdropClear: function () {\r\n return this.each(function () {\r\n $(\"#\" + baseId).remove();\r\n $(\"body\").removeClass(\"backdrop-body\");\r\n $(\".spinner-container\").spin(false);\r\n });\r\n }\r\n });\r\n})(jQuery);","(function ($) {\r\n \"use strict\";\r\n\r\n var defaultOptions = {\r\n tagClass: function (item) {\r\n return 'label label-info';\r\n },\r\n itemValue: function (item) {\r\n return item ? item.toString() : item;\r\n },\r\n itemText: function (item) {\r\n return this.itemValue(item);\r\n },\r\n itemTitle: function (item) {\r\n return null;\r\n },\r\n freeInput: true,\r\n addOnBlur: true,\r\n maxTags: undefined,\r\n maxChars: undefined,\r\n confirmKeys: [13, 44],\r\n onTagExists: function (item, $tag) {\r\n $tag.hide().fadeIn();\r\n },\r\n trimValue: false,\r\n allowDuplicates: false\r\n };\r\n\r\n /**\r\n * Constructor function\r\n */\r\n function TagsInput(element, options) {\r\n this.itemsArray = [];\r\n\r\n this.$element = $(element);\r\n this.$element.hide();\r\n\r\n this.isSelect = (element.tagName === 'SELECT');\r\n this.multiple = (this.isSelect && element.hasAttribute('multiple'));\r\n this.objectItems = options && options.itemValue;\r\n this.placeholderText = element.hasAttribute('placeholder') ? this.$element.attr('placeholder') : '';\r\n this.inputSize = Math.max(1, this.placeholderText.length);\r\n\r\n this.$container = $('
    ');\r\n this.$input = $('').appendTo(this.$container);\r\n\r\n this.$element.before(this.$container);\r\n\r\n this.build(options);\r\n }\r\n\r\n TagsInput.prototype = {\r\n constructor: TagsInput,\r\n\r\n /**\r\n * Adds the given item as a new tag. Pass true to dontPushVal to prevent\r\n * updating the elements val()\r\n */\r\n add: function (item, dontPushVal, options) {\r\n var self = this;\r\n\r\n if (self.options.maxTags && self.itemsArray.length >= self.options.maxTags)\r\n return;\r\n\r\n // Ignore falsey values, except false\r\n if (item !== false && !item)\r\n return;\r\n\r\n // Trim value\r\n if (typeof item === \"string\" && self.options.trimValue) {\r\n item = $.trim(item);\r\n }\r\n\r\n // Throw an error when trying to add an object while the itemValue option was not set\r\n if (typeof item === \"object\" && !self.objectItems)\r\n throw (\"Can't add objects when itemValue option is not set\");\r\n\r\n // Ignore strings only containg whitespace\r\n if (item.toString().match(/^\\s*$/))\r\n return;\r\n\r\n // If SELECT but not multiple, remove current tag\r\n if (self.isSelect && !self.multiple && self.itemsArray.length > 0)\r\n self.remove(self.itemsArray[0]);\r\n\r\n if (typeof item === \"string\" && this.$element[0].tagName === 'INPUT') {\r\n var items = item.split(',');\r\n if (items.length > 1) {\r\n for (var i = 0; i < items.length; i++) {\r\n this.add(items[i], true);\r\n }\r\n\r\n if (!dontPushVal)\r\n self.pushVal();\r\n return;\r\n }\r\n }\r\n\r\n var itemValue = self.options.itemValue(item),\r\n itemText = self.options.itemText(item),\r\n tagClass = self.options.tagClass(item),\r\n itemTitle = self.options.itemTitle(item);\r\n\r\n // Ignore items allready added\r\n var existing = $.grep(self.itemsArray, function (item) { return self.options.itemValue(item) === itemValue; })[0];\r\n if (existing && !self.options.allowDuplicates) {\r\n // Invoke onTagExists\r\n if (self.options.onTagExists) {\r\n var $existingTag = $(\".tag\", self.$container).filter(function () { return $(this).data(\"item\") === existing; });\r\n self.options.onTagExists(item, $existingTag);\r\n }\r\n return;\r\n }\r\n\r\n // if length greater than limit\r\n if (self.items().toString().length + item.length + 1 > self.options.maxInputLength)\r\n return;\r\n\r\n // raise beforeItemAdd arg\r\n var beforeItemAddEvent = $.Event('beforeItemAdd', { item: item, cancel: false, options: options });\r\n self.$element.trigger(beforeItemAddEvent);\r\n if (beforeItemAddEvent.cancel)\r\n return;\r\n\r\n // register item in internal array and map\r\n self.itemsArray.push(item);\r\n\r\n // add a tag element\r\n\r\n var $tag = $('' + htmlEncode(itemText) + '');\r\n $tag.data('item', item);\r\n self.findInputWrapper().before($tag);\r\n $tag.after(' ');\r\n\r\n // add