chevereto-free/lib/Peafowl/peafowl.min.js

260 lines
180 KiB
JavaScript
Raw Normal View History

2016-08-18 20:39:31 +00:00
$(function(){$.ajaxSetup({"url":PF.obj.config.json_api,"cache":false,"dataType":"json","data":{auth_token:PF.obj.config.auth_token}});$(window).bind("beforeunload",function(){if($("form",PF.obj.modal.selectors.root).data("beforeunload")=="continue")return;if($(PF.obj.modal.selectors.root).is(":visible")&&PF.fn.form_modal_has_changed()){return PF.fn._s("All the changes that you have made will be lost if you continue.");}});$(window).bind("hashchange",function(){if(window.location.hash=="#edit"&&!$(PF.obj.modal.selectors.root).exists())$("[data-modal=edit]").first().click();});PF.fn.bindtipTip();var resizeTimer,scrollTimer,width=$(window).width();$(window).on("resize",function(){PF.fn.growl.fixPosition();PF.fn.modal.fixScrollbars();var device=PF.fn.getDeviceName(),handled=["phone","phablet"],desktop=["tablet","laptop","desktop"];clearTimeout(resizeTimer);clearTimeout(scrollTimer);scrollTimer=setTimeout(function(){PF.obj.follow_scroll.set();},100);var new_device=PF.fn.getDeviceName();if(new_device!==device&&($.inArray(device,handled)>=0&&$.inArray(new_device,handled)==-1)||($.inArray(device,desktop)>=0&&$.inArray(new_device,desktop)==-1)){PF.fn.close_pops();}
$(".top-bar").css("top","");$(PF.fn.topMenu.vars.menu).css("height",$(window).height());$("body").css({position:"",height:""});$(".antiscroll").removeClass("jsly").data("antiscroll","");$(".antiscroll-inner").css({height:"",width:"",maxheight:""});PF.fn.list_fluid_width();if(width!==$(window).width()){if($("[data-action=top-bar-menu-full]","#top-bar").hasClass("current")){PF.fn.topMenu.hide(0);}
var cols_fn=function(){PF.fn.listing.columnizer(true,0);$(PF.obj.listing.selectors.list_item).show();};cols_fn();}
width=$(window).width();PF.obj.follow_scroll.process();});$(document).on("click","html",function(){PF.fn.close_pops();});if($("html").hasClass("no-svg")){$("img.replace-svg").replace_svg();}
$(document).on("keydown",".numeric-input",function(e){e.keydown_numeric();});$(document).on("click","[data-scrollto]",function(e){var target=$(this).data("scrollto"),$target=$(!target.match(/^\#|\./)?"#"+target:target);if($target.exists()){PF.fn.scroll($target);}else{console.log("PF scrollto error: target doesn't exists",$target);}});$(document).on("click","[data-trigger]",function(e){var trigger=$(this).data("trigger"),$target=$(!trigger.match(/^\#|\./)?"#"+trigger:trigger);if($target.exists()){e.stopPropagation();e.preventDefault();if(!$target.closest(PF.obj.modal.selectors.root).length){PF.fn.modal.close();}
$target.click();}else{console.log("PF trigger error: target doesn't exists",$target);}});$("form[method=post]").each(function(){if(!$("input[name=auth_token]",this).exists()){$(this).append($('<input>',{type:'hidden',name:"auth_token",value:PF.obj.config.auth_token}));}});$(document).on("click",".clear-form",function(){$(this).closest("form")[0].reset();});$(document).on("submit","form[data-action=validate]",function(e){var type=$(this).data("type"),errors=false,$validate=$(this).find("[required], [data-validate]");$validate.each(function(){var input_type=$(this).attr("type"),pattern=$(this).attr("pattern"),errorFn=function(el){$(el).highlight();errors=true;};if($(this).is("[required]")&&$(this).val()==""){if($(this).is(":hidden")){var $hidden_target=$($($(this).data("highlight")).exists()?$(this).data("highlight"):"#"+$(this).data("highlight"));$($hidden_target).highlight();}
errorFn(this);}
if(typeof pattern=="undefined"&&/mail|url/.test(input_type)==false){return true;}
if(pattern){pattern=new RegExp(pattern);if(!pattern.test($(this).val())){errorFn(this);}}
if(input_type=="email"&&!$(this).val().isEmail()){errorFn(this);}});if(errors){PF.fn.growl.expirable(PF.fn._s("Check the errors in the form to continue."));return false;}});$(document).on("change","select[data-combo]",function(){var $combo=$("#"+$(this).data("combo"));if($combo.exists()){$combo.children(".switch-combo").hide();}
var $combo_container=$("#"+$(this).closest("select").data("combo")),$combo_target=$("[data-combo-value~="+$("option:selected",this).attr("value")+"]",$combo_container);if($combo_target.exists()){$combo_target.show().find("[data-required]").each(function(){$(this).attr("required","required");});}
$(".switch-combo",$combo_container).each(function(){if($(this).is(":visible"))return;$("[required]",this).attr("data-required",true).removeAttr("required");});});$(document).on("keyup",function(e){$this=$(e.target);if(e.keyCode==27){if($(PF.obj.modal.selectors.root).is(":visible")&&!$this.is(":input")){$("[data-action=cancel],[data-action=close-modal]",PF.obj.modal.selectors.root).first().click();}}});$(document).on("change",":input",function(e){PF.fn.growl.close();});$(document).on("keyup",":input",function(e){$(".input-warning",$(this).closest(".input-label")).html("");});$(document).on("blur",":input",function(){var this_val=$.trim($(this).prop("value"));$(this).prop("value",this_val);});$(document).on("click",":input[data-focus=select-all]",function(){this.select();});$(document).on("keyup change blur",":input[type=password]",function(){var password=testPassword($(this).val()),$parent=$(this).closest("div");if($(this).val()==""){password.percent=0;password.verdict="";}
$("[data-content=password-meter-bar]",$parent).width(password.percent);$("[data-text=password-meter-message]",$parent).removeClass("red-warning").text(password.verdict!==""?PF.fn._s(password.verdict):"");});$(document).on("click","[rel=popup-link], .popup-link",function(e){e.preventDefault();var href=$(this)[typeof $(this).attr("href")!=="undefined"?"attr":"data"]("href");if(typeof href=="undefined"){return;}
if(href.substring(0,6)=="mailto"&&PF.fn.isDevice(["phone","phablet"])){window.location=href;return false;}
PF.fn.popup({href:href});});$(window).scroll(function(){PF.obj.follow_scroll.process();});$(document).on("click","[data-modal=simple],[data-modal=html]",function(){var $target=$("[data-modal="+$(this).data("target")+"], #"+$(this).data("target")).first();PF.fn.modal.call({template:$target.html(),buttons:false});});$(document).on("submit",PF.obj.modal.selectors.root+" form",function(e){if($(this).data("prevented"))return false;if(typeof $(this).attr("method")!=="undefined")return;return false;});$(document).on("click","[data-modal=edit],[data-modal=form],[data-confirm]",function(e){e.preventDefault();var $this=$(this),$target,submit_function,cancel_function,onload_function,submit_done_msg;if($this.is("[data-confirm]")){$target=$this;PF.obj.modal.type="confirm";}else{$target=$("[data-modal="+$this.data("target")+"], #"+$this.data("target")).first();if($target.length==0){$target=$("[data-modal=form-modal], #form-modal").first();}
if($target.length==0){console.log("PF Error: Modal target doesn't exists.");}
PF.obj.modal.type=$this.data("modal");}
var args=$this.data("args"),submit_function=window[$target.data("submit-fn")],cancel_function=window[$target.data("cancel-fn")],onload_function=window[$target.data("load-fn")],submit_done_msg=$target.data("submit-done"),ajax={url:$target.data("ajax-url"),deferred:window[$target.data("ajax-deferred")]};if(typeof submit_function!=="function"&&$target.data("submit-fn")){var submit_fn_split=$target.data("submit-fn").split(".");submit_function=window;for(var i=0;i<submit_fn_split.length;i++){submit_function=submit_function[submit_fn_split[i]];}}
if(typeof cancel_function!=="function"&&$target.data("cancel-fn")){var cancel_fn_split=$target.data("cancel-fn").split(".");cancel_function=window;for(var i=0;i<cancel_fn_split.length;i++){cancel_function=cancel_function[cancel_fn_split[i]];}}
if(typeof load_function!=="function"&&$target.data("load-fn")){var load_fn_split=$target.data("load-fn").split(".");load_function=window;for(var i=0;i<load_fn_split.length;i++){load_function=load_function[load_fn_split[i]];}}
if(typeof ajax.deferred!=="object"&&$target.data("ajax-deferred")){var deferred_obj_split=$target.data("ajax-deferred").split(".");ajax.deferred=window;for(var i=0;i<deferred_obj_split.length;i++){ajax.deferred=ajax.deferred[deferred_obj_split[i]];}}
var fn_before=window[$target.data("before-fn")];if(typeof fn_before!=="function"&&$target.data("before-fn")){var before_obj_split=$target.data("before-fn").split(".");fn_before=window;for(var i=0;i<before_obj_split.length;i++){fn_before=fn_before[before_obj_split[i]];}}
if(typeof fn_before=="function"){fn_before(e);}
var inline_options=$(this).data("options")||{};if($this.is("[data-confirm]")){var default_options={message:$this.data("confirm"),confirm:typeof submit_function=="function"?submit_function(args):"",cancel:typeof cancel_function=="function"?cancel_function(args):"",ajax:ajax};if($this.attr("href")&&default_options.confirm==""){default_options.confirm=function(){return window.location.replace($this.attr("href"));}}
PF.fn.modal.confirm($.extend(default_options,inline_options));}else{var default_options={template:$target.html(),button_submit:$(this).is("[data-modal=edit]")?PF.fn._s("Save changes"):PF.fn._s("Submit"),confirm:function(){var form_modal_has_changed=PF.fn.form_modal_has_changed();var $form=$("form",PF.obj.modal.selectors.root);if(typeof $form.attr("action")!=="undefined"){$form.data("prevented",!form_modal_has_changed);PF.fn.modal.close();return;}
$(":input[name]",$form).each(function(){if(!$(this).is(":visible")){var input_attr=$(this).attr("required");if(typeof input_attr!==typeof undefined&&input_attr!==false){$(this).prop("required",false).attr("data-required","required");}}else{if($(this).attr("data-required")=="required"){$(this).prop("required",true);}}});if(!$form[0].checkValidity()){return false;}
if(!form_modal_has_changed&&!inline_options.forced){PF.fn.modal.close();return;}
if(typeof submit_function=="function")submit_fn=submit_function();if(typeof submit_fn!=="undefined"&&submit_fn==false){return false;}
$(":input",PF.obj.modal.selectors.root).each(function(){$(this).val($.trim($(this).val()));});if($this.is("[data-modal=edit]")){$target.html($(PF.obj.modal.selectors.body,$(PF.obj.modal.selectors.root).bindFormData()).html().replace(/rel=[\'"]tooltip[\'"]/g,'rel="template-tooltip"'));}
if(typeof ajax.url!=="undefined"){return true;}else{PF.fn.modal.close(function(){if(typeof submit_done_msg!=="undefined"){PF.fn.growl.expirable(submit_done_msg!==""?submit_done_msg:PF.fn._s("Changes saved successfully."));}});}},cancel:function(){if(typeof cancel_fn=="function")cancel_fn=cancel_fn();if(typeof cancel_fn!=="undefined"&&cancel_fn==false){return false;}
if(PF.fn.form_modal_has_changed()){if($(PF.obj.modal.selectors.changes_confirm).exists())return;$(PF.obj.modal.selectors.box,PF.obj.modal.selectors.root).css({transition:"none"}).hide();$(PF.obj.modal.selectors.root).append('<div id="'+PF.obj.modal.selectors.changes_confirm.replace("#","")+'"><div class="content-width"><h2>'+PF.fn._s("All the changes that you have made will be lost if you continue.")+'</h2><div class="'+PF.obj.modal.selectors.btn_container.replace(".","")+' margin-bottom-0"><button class="btn btn-input default" data-action="cancel">'+PF.fn._s("Go back to form")+'</button> <span class="btn-alt">'+PF.fn._s("or")+' <a data-action="submit">'+PF.fn._s("continue anyway")+'</a></span></div></div>');$(PF.obj.modal.selectors.changes_confirm).css("margin-top",-$(PF.obj.modal.selectors.changes_confirm).outerHeight(true)/2).hide().fadeIn("fast");}else{PF.fn.modal.close();if(window.location.hash=="#edit")window.location.hash="";}},load:function(){if(typeof load_function=="function")load_function();},callback:function(){},ajax:ajax};PF.fn.modal.call($.extend(default_options,inline_options));}});if(!PF.fn.is_user_logged()){$("[data-login-needed]:input, [data-user-logged=must]:input").each(function(){$(this).attr("readonly",true);});}
$(document).on("click focus","[data-login-needed], [data-user-logged=must]",function(e){if(!PF.fn.is_user_logged()){e.preventDefault();e.stopPropagation();if($(this).is(":input"))$(this).attr("readonly",true).blur();PF.fn.modal.call({type:"login"});}});$(document).on("keydown",PF.obj.modal.selectors.root+" input",function(e){var $this=$(e.target),key=e.charCode||e.keyCode;if(key!==13){PF.fn.growl.close();return;}
if(key==13&&$("[data-action=submit]",PF.obj.modal.selectors.root).exists()&&!$this.is(".prevent-submit")){$("[data-action=submit]",PF.obj.modal.selectors.root).click();}});if(window.location.hash&&window.location.hash=="#edit"){$("[data-modal=edit]").first().click();}
$(document).on("click","[data-action=top-bar-menu-full]",function(){var hasClass=$('[data-action=top-bar-menu-full]',"#top-bar").hasClass("current");PF.fn.topMenu[hasClass?"hide":"show"]();});$(document).on("click","[data-action=top-bar-search]",function(){$("[data-action=top-bar-search-input]",".top-bar").removeClass("hidden").show();$("[data-action=top-bar-search-input]:visible input").first().focus();if(is_ios()&&!$(this).closest(PF.fn.topMenu.vars.menu).exists()){$('.top-bar').css('position','absolute');}
$("[data-action=top-bar-search]",".top-bar").hide();});$(document).on("click",".input-search .icon-search",function(e){$("input",e.currentTarget.offsetParent).focus();});$(document).on("click",".input-search .icon-close, .input-search [data-action=clear-search]",function(e){var $input=$("input",e.currentTarget.offsetParent);if($input.val()==""){if($(this).closest("[data-action=top-bar-search-input]").exists()){$("[data-action=top-bar-search-input]",".top-bar").hide();$("[data-action=top-bar-search]",".top-bar").removeClass("opened").show();if(is_ios()&&$(this).closest("#top-bar").css("position")!=="fixed"){$('.top-bar').css('position','fixed');}}}else{if(!$(this).closest("[data-action=top-bar-search-input]").exists()){$(this).hide();}
$input.val("").change();}});$(document).on("keyup change","input.search",function(e){var $input=$(this),$div=$(this).closest(".input-search");if(!$(this).closest("[data-action=top-bar-search-input]").exists()){var todo=$input.val()==""?"hide":"show";$(".icon-close, [data-action=clear-search]",$div)[todo]();}});$(document).on("click mouseenter",".pop-btn",function(e){if(PF.fn.isDevice(["phone","phablet"])&&(e.type=="mouseenter"||$(this).hasClass("pop-btn-desktop"))){return;}
var $this_click=$(e.target),$pop_btn,$pop_box,devices=$.makeArray(["phone","phablet"]);var $this=$(this);if(e.type=="mouseenter"&&!$(this).hasClass("pop-btn-auto"))return;if($(this).hasClass("disabled")||(($this_click.closest(".current").exists()&&!PF.fn.isDevice("phone"))&&!$this_click.closest(".pop-btn-show").exists())){return;}
PF.fn.growl.close();e.stopPropagation();$pop_btn=$(this);$pop_box=$(".pop-box",$pop_btn);$pop_btn.addClass("opened");$(".pop-box-inner",$pop_box).css("max-height","");if(PF.fn.isDevice(devices)){var text=$('.btn-text,.text,.pop-btn-text',$pop_btn).first().text();if(typeof text=="undefined"||text==""){text=PF.fn._s("Select");}
if(!$(".pop-box-header",$pop_box).exists()){$pop_box.prepend($('<div/>',{"class":'pop-box-header',"html":text+'<span class="btn-icon icon-close"></span></span>'}));}}else{$('.pop-box-header',$pop_box).remove();$pop_box.css({bottom:''});}
if($pop_box.hasClass("anchor-center")){if(!PF.fn.isDevice(devices)){$pop_box.css("margin-left",-($pop_box.width()/2));}else{$pop_box.css("margin-left","");}}
if($this_click.is("[data-change]")){$("li",$pop_box).removeClass("current");$this_click.closest("li").addClass("current");$("[data-text-change]",$pop_btn).text($("li.current a",$pop_box).text());e.preventDefault();}
if(!$pop_box.exists())return;var $this=e.istriggered?$(e.target):$(this);if($pop_box.is(":visible")&&$(e.target).closest(".pop-box-inner").exists()&&$this.hasClass("pop-keep-click")){return;}
$(".pop-box:visible").not($pop_box).hide().closest(".pop-btn").removeClass("opened");var callback=function($pop_box){if(!$pop_box.is(":visible")){$pop_box.closest(".pop-btn").removeClass("opened");}else{if(!PF.fn.isDevice(devices)){$(".antiscroll-wrap:not(.jsly):visible",$pop_box).addClass("jsly").antiscroll();}else{$(".antiscroll-inner",$pop_box).height("100%");}}};if(PF.fn.isDevice(devices)){if($(this).is("[data-action=top-bar-notifications]")){$pop_box.css({height:$(window).height()});}
var pop_box_h=$pop_box.height()+'px';var menu_top=(parseInt($(".top-bar").outerHeight())+parseInt($(".top-bar").css("top"))+parseInt($(".top-bar").css("margin-top"))+parseInt($(".top-bar").css("margin-bottom")))+"px";if($pop_box.is(":visible")){$('#pop-box-mask').css({opacity:0});$pop_box.css({transform:"none"});if($this.closest(PF.fn.topMenu.vars.menu).exists()){$(".top-bar").css({transform:"none"});$(PF.fn.topMenu.vars.menu).css({height:$(window).height()+parseInt(menu_top),});}
setTimeout(function(){$pop_box.hide().attr("style","");$('#pop-box-mask').remove();callback($pop_box);if($this.closest(PF.fn.topMenu.vars.menu).exists()){$(PF.fn.topMenu.vars.menu).css({height:"",});$(PF.fn.topMenu.vars.menu).animate({scrollTop:PF.fn.topMenu.vars.scrollTop},PF.obj.config.animation.normal / 2);}},PF.obj.config.animation.normal);if(!$("body").data("hasOverflowHidden")){$("body").removeClass("overflow-hidden");}}else{$('#pop-box-mask').remove();$pop_box.parent().prepend($('<div/>',{"id":'pop-box-mask',"class":'fullscreen soft-black'}).css({zIndex:400,display:"block"}));PF.fn.topMenu.vars.scrollTop=$(PF.fn.topMenu.vars.menu).scrollTop();setTimeout(function(){$("#pop-box-mask").css({opacity:1});setTimeout(function(){$pop_box.show().css({bottom:'-'+pop_box_h,maxHeight:$(window).height(),zIndex:1000,transform:"translate(0,-"+pop_box_h+")"});setTimeout(function(){callback($pop_box);},PF.obj.config.animation.normal);if($("body").hasClass("overflow-hidden")){$("body").data("hasOverflowHidden",1);}else{$("body").addClass("overflow-hidden");}
if($this.closest(PF.fn.topMenu.vars.menu).exists()){$(".top-bar").css({transform:"translate(0, -"+menu_top+")"});$(PF.fn.topMenu.vars.menu).css({height:$(window).height()+parseInt(menu_top),});}
$(".pop-box-inner",$pop_box).css("height",$pop_box.height()-$('.pop-box-header',$pop_box).outerHeight(true));},1);},1);}}else{$pop_box["fade"+($pop_box.is(":visible")?"Out":"In")](50,function(){callback($pop_box);});}}).on("mouseleave",".pop-btn",function(){if(!PF.fn.isDevice(["laptop","desktop"])){return;}
var $pop_btn=$(this),$pop_box=$(".pop-box",$pop_btn);if(!$pop_btn.hasClass("pop-btn-auto")||(PF.fn.isDevice(["phone","phablet"])&&$pop_btn.hasClass("pop-btn-auto"))){return;}
if(!PF.fn.isDevice(['phone','phablet','tablet'])&&$(this).hasClass("pop-btn-delayed")){$(this).removeClass("pop-btn-auto");}
$pop_box.hide().closest(".pop-btn").removeClass("opened");});$(".pop-btn-delayed").delayedAction({delayedAction:function($element){if(PF.fn.isDevice(['phone','phablet','tablet']))return;var $el=$(".pop-box-inner",$element);if($el.is(":hidden")){$element.addClass("pop-btn-auto").click();}},hoverTime:2000});if(window.location.hash){}
if($(".content-tabs").exists()){var $tab=$("a",".content-tabs .current");History.replaceState({href:$tab.attr("href"),"data-tab":$tab.data("tab"),pushed:"tabs",statenum:0},null,null);}
var State=History.getState();if(typeof State.data=="undefined"){History.replaceState({scrollTop:0},document.title,window.location.href);}
History.Adapter.bind(window,"popstate",function(){var State=History.getState();if(State.data&&typeof State.data.scrollTop!=="undefined"){if($(window).scrollTop()!==State.data.scrollTop){$(window).scrollTop(State.data.scrollTop);}}
return;});$("a",".content-tabs").click(function(e){if($(this).data("link")==true){$(this).data("tab",false);}
if($(this).closest(".current,.disabled").exists()){e.preventDefault();return;}
if(typeof $(this).data("tab")=="undefined")return;var dataTab={};$.each(this.attributes,function(){dataTab[this.name]=this.value;});dataTab.pushed="tabs";if($("#"+dataTab["data-tab"]).data("load")!="classic"){if(window.location.hash){var url=window.location.href;url=url.replace(window.location.hash,"");}
History.pushState(dataTab,document.title,(typeof url!=="undefined")?url:$(this).attr("href"));e.preventDefault();}
var $tab_menu=$("[data-action=tab-menu]",$(this).closest(".header"));$tab_menu.find("[data-content=current-tab-label]").text($(this).text());if($tab_menu.is(":visible")){$tab_menu.click();}});$(document).on("click","[data-action=tab-menu]",function(){var $tabs=$(this).closest(".header").find(".content-tabs"),visible=$tabs.is(":visible"),$this=$(this);if(!visible){$tabs.data("classes",$tabs.attr("class"));$tabs.removeClass(function(index,css){return(css.match(/\b\w+-hide/g)||[]).join(' ');});$tabs.hide();}
if(!visible){$this.removeClass("current");}
$tabs[visible?"hide":"show"]();if(visible){$tabs.css("display","").addClass($tabs.data("classes"));$this.addClass("current");}});$(window).bind("statechange",function(e){PF.fn.growl.close();var dataTab;dataTab=History.getState().data;if(dataTab&&dataTab.pushed=="tabs"){PF.fn.show_tab(dataTab["data-tab"]);}});$(document).on("click",".list-item a",function(e){if($(this).attr("src")=="")return;History.replaceState({scrollTop:$(window).scrollTop()},document.title,window.location.href);});$(document).on("click","[data-action=load-more]",function(e){$(this).closest('.content-listing-more').hide();if(!PF.fn.is_listing()||$(this).closest(PF.obj.listing.selectors.content_listing).is(":hidden")||$(this).closest("#content-listing-template").exists()||PF.obj.listing.calling)return;PF.fn.listing.queryString.stock_new();PF.obj.listing.query_string.page=$(PF.obj.listing.selectors.content_listing_visible).data("page");PF.obj.listing.query_string.page++;var offset=$(PF.obj.listing.selectors.content_listing_visible).data("offset");if(typeof offset!=="undefined"){PF.obj.listing.query_string.offset=offset;if(typeof PF.obj.listing.hidden_params=="undefined"){PF.obj.listing.hidden_params={};}
PF.obj.listing.hidden_params.offset=offset;}else{if(typeof PF.obj.listing.query_string.offset!=="undefined"){delete PF.obj.listing.query_string.offset;}
if(PF.obj.listing.hidden_params&&typeof PF.obj.listing.hidden_params.offset!=="undefined"){delete PF.obj.listing.hidden_params.offset;}}
PF.fn.listing.ajax();e.preventDefault();});if($(PF.obj.listing.selectors.list_item).length>0){PF.fn.listing.show();$(window).scroll(function(){var $loadMore=$(PF.obj.listing.selectors.content_listing_pagination,PF.obj.listing.selectors.content_listing_visible).find("[data-action=load-more]");if($loadMore.length>0&&(($(window).scrollTop()+$(window).innerHeight())>($(document).height()-300))&&PF.obj.listing.calling==false){$loadMore.click();}});}
$(document).on("click",PF.obj.modal.selectors.root+" [data-switch]",function(){var $this_modal=$(this).closest(PF.obj.modal.selectors.root);$("[data-view=switchable]",$this_modal).hide();$("#"+$(this).attr("data-switch"),$this_modal).show();});$(document).on("click","[data-toggle]",function(){var $target=$("[data-content="+$(this).data("toggle")+"]"),show=!$target.is(":visible");$(this).html($(this).data('html-'+(show?'on':'off')));$target.toggle();});$(document).on("click","[data-action=cookie-law-close]",function(){$("#cookie-law-banner").animate({bottom:"-100%"},300,function(){var cookieName=(typeof $(this).data("cookie")!==typeof undefined)?$(this).data("cookie"):"PF_COOKIE_LAW_DISPLAY";Cookies.set(cookieName,0,{expires:365});$(this).remove();});});Clipboard=new Clipboard("[data-action=copy]",{text:function(trigger){var $target=$(trigger.getAttribute("data-action-target"));var text=$target.is(":input")?$target.val():$target.text();return text.trim();}});Clipboard.on('success',function(e){var $target=$(e.trigger.getAttribute("data-action-target"));$target.highlight();e.clearSelection();});});var PF={fn:{},str:{},obj:{}};PF.obj.config={base_url:"",json_api:"/json/",listing:{items_per_page:24},animation:{easingFn:"ease",normal:400,fast:250}};PF.obj.l10n={};PF.fn._s=function(string,s){var string;if(typeof string=="undefined"){return string;}
if(typeof PF.obj.l10n!=="undefined"&&typeof PF.obj.l10n[string]!=="undefined"){string=PF.obj.l10n[string][0];if(typeof string=="undefined"){string=string;}}else{string=string;}
string=string.toString();if(typeof s!=="undefined"){string=sprintf(string,s);}
return string;};PF.fn._n=function(singular,plural,n){var string;if(typeof PF.obj.l10n!=="undefined"&&typeof PF.obj.l10n[singular]!=="undefined"){string=PF.obj.l10n[singular][n==1?0:1];}else{string=n==1?singular:plural;}
string=typeof string=="undefined"?singular:string.toString();if(typeof n!=="undefined"){string=sprintf(string,n);}
return string;};PF.fn.extend_lang=function(strings){$.each(PF.obj.lang_strings,function(i,v){if(typeof strings[i]!=="undefined"){$.extend(PF.obj.lang_strings[i],strings[i]);}});};PF.fn.get_url_vars=function(){var match,pl=/\+/g,search=/([^&=]+)=?([^&]*)/g,decode=function(s){return decodeURIComponent(escape(s.replace(pl," ")));},query=window.location.search.substring(1),urlParams={};while(match=search.exec(query)){urlParams[decode(match[1])]=decode(match[2]);}
return urlParams;};PF.fn.get_url_var=function(name){return PF.fn.get_url_vars()[name];};PF.fn.is_user_logged=function(){return $("#top-bar-user").is(":visible");};PF.fn.generate_random_string=function(len){if(typeof len=="undefined")len=5;var text="";var possible="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(var i=0;i<len;i++){text+=possible.charAt(Math.floor(Math.random()*possible.length));}
return text;};PF.fn.getDateTime=function(){var now=new Date();var year=now.getFullYear();var month=now.getMonth()+1;var day=now.getDate();var hour=now.getHours();var minute=now.getMinutes();var second=now.getSeconds();if(month.toString().length==1){var month='0'+month;}
if(day.toString().length==1){var day='0'+day;}
if(hour.toString().length==1){var hour='0'+hour;}
if(minute.toString().length==1){var minute='0'+minute;}
if(second.toString().length==1){var second='0'+second;}
var dateTime=year+'-'+month+'-'+day+' '+hour+':'+minute+':'+second;return dateTime;};PF.fn.htmlEncode=function(value){return $('<div/>').text($.trim(value)).html();};PF.fn.htmlDecode=function(value){return $('<div/>').html($.trim(value)).text();};PF.fn.nl2br=function(str){var breakTag='<br>';return(str+'').replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g,'$1'+breakTag+'$2');};PF.fn.versionCompare=function(left,right){if(typeof left+typeof right!='stringstring')
return false;var a=left.split('.'),b=right.split('.'),i=0,len=Math.max(a.length,b.length);for(;i<len;i++){if((a[i]&&!b[i]&&parseInt(a[i])>0)||(parseInt(a[i])>parseInt(b[i]))){return 1;}else if((b[i]&&!a[i]&&parseInt(b[i])>0)||(parseInt(a[i])<parseInt(b[i]))){return-1;}}
return 0;}
PF.fn.baseName=function(str){var base=new String(str).substring(str.lastIndexOf('/')+1);if(base.lastIndexOf(".")!=-1){base=base.substring(0,base.lastIndexOf("."));}
return base;}
PF.fn.guid=function(){function s4(){return Math.floor((1+Math.random())*0x10000).toString(16).substring(1);}
return s4()+s4()+'-'+s4()+'-'+s4()+'-'+s4()+'-'+s4()+s4()+s4();}
PF.fn.md5=function(string){return SparkMD5.hash(string);}
PF.fn.dataURItoBlob=function(dataURI){var byteString;if(dataURI.split(',')[0].indexOf('base64')>=0){byteString=atob(dataURI.split(',')[1]);}else{byteString=unescape(dataURI.split(',')[1]);}
var mimeString=dataURI.split(',')[0].split(':')[1].split(';')[0];var ia=new Uint8Array(byteString.length);for(var i=0;i<byteString.length;i++){ia[i]=byteString.charCodeAt(i);}
return new Blob([ia],{type:mimeString});}
PF.fn.clean_facebook_hash=function(){if(window.location.hash=="#_=_"){window.location.hash="";}};PF.fn.clean_facebook_hash();Array.min=function(array){return Math.min.apply(Math,array);};Array.max=function(array){return Math.max.apply(Math,array);};Array.sum=function(array){return array.reduce(function(pv,cv){return cv+pv});};Object.size=function(obj){var size=0,key;for(key in obj){if(obj.hasOwnProperty(key))size++;}
return size;};Object.flatten=function(obj,prefix){if(typeof prefix=="undefined")var prefix="";var result={};$.each(obj,function(key,value){if(!value)return;if(typeof value=="object"){result=$.extend({},result,Object.flatten(value,prefix+key+'_'));}else{result[prefix+key]=value;}});return result;};String.prototype.isNumeric=function(){return!isNaN(parseFloat(this))&&isFinite(this);};String.prototype.repeat=function(num){return new Array(num+1).join(this);};String.prototype.capitalizeFirstLetter=function(){return this.charAt(0).toUpperCase()+this.slice(1);}
String.prototype.isEmail=function(){var regex=/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;return regex.test(this);};String.prototype.getRounded=function(precision,mode){var m,f,isHalf,sgn;precision|=0;m=Math.pow(10,precision);value=this;value*=m;sgn=(value>0)|-(value<0);isHalf=value%1===0.5*sgn;f=Math.floor(value);if(isHalf){switch(mode){case'PHP_ROUND_HALF_DOWN':value=f+(sgn<0);break;case'PHP_ROUND_HALF_EVEN':value=f+(f%2*sgn);break;case'PHP_ROUND_HALF_ODD':value=f+!(f%2);break;default:value=f+(sgn>0);}}
return(isHalf?value:Math.round(value))/ m;};String.prototype.getBytes=function(){var units=["KB","MB","GB","TB","PB","EB","ZB","YB"],suffix=this.toUpperCase().substr(-2);if(units.indexOf(suffix)==-1){return this;}
var pow_factor=units.indexOf(suffix)+1;return parseFloat(this)*Math.pow(1000,pow_factor);};String.prototype.formatBytes=function(round){var bytes=parseInt(this),units=["KB","MB","GB","TB","PB","EB","ZB","YB"];if(!$.isNumeric(this)){return false;}
if(bytes<1000)return bytes+" B";if(typeof round=="undefined")var round=2;for(var i=0;i<units.length;i++){var multiplier=Math.pow(1000,i+1),threshold=multiplier*1000;if(bytes<threshold){var size=bytes / multiplier;return this.getRounded.call(size,round)+" "+units[i];}}};String.prototype.match_image_urls=function(){return this.match(/\b(?:(http[s]?|ftp[s]):\/\/)?([^:\/\s]+)(:[0-9]+)?((?:\/\w+)*\/)([\w\-\.]+[^#?\s]+)([^#\s]*)?(#[\w\-]+)?(?:jpe?g|gif|png|bmp)\b/gim);};String.prototype.match_urls=function(){return this.match(/\b(?:(http[s]?|ftp[s]):\/\/)?([^:\/\s]+)(:[0-9]+)?((?:\/\w+)*\/)([\w\-\.]+[^#?\s]+)([^#\s]*)?(#[\w\-]+)?\b/gim);};if(!("indexOf"in Array.prototype)){Array.prototype.indexOf=function(find,i){if(i===undefined)i=0;if(i<0)i+=this.length;if(i<0)i=0;for(var n=this.length;i<n;i++){if(i in this&&this[i]===find){return i;}}
return-1;};}
Array.prototype.array_unique=function(){var result=[];$.each(this,function(i,e){if($.inArray(e,result)==-1)result.push(e);});return result;};PF.fn.deparam=function(querystring){if(typeof querystring=="undefined"||!querystring)return;var obj={},pairs=querystring.replace(/^[\?|&]*/,"").replace(/[&|\?]*$/,"").split("&");for(var i=0;i<pairs.length;i++){var split=pairs[i].split('=');var key=decodeURIComponent(split[0]);var value=decodeURIComponent(split[1]);if(obj.hasOwnProperty(key)&&!value){continue;}
obj[key]=value;}
return obj;};String.prototype.removeURLParameter=function(key){var url="",deparam=PF.fn.deparam(this);if(typeof deparam[key]!=="undefined"){delete deparam[key];}
return decodeURIComponent($.param(deparam));};String.prototype.truncate_middle=function(l){var l=typeof(l)!="undefined"?l:40,chunk_l=(l/2),url=this.replace(/https?:\/\//g,"");if(url.length<=l){return url;}
function shortString(s,l,reverse){var stop_chars=[' ','/','&'],acceptable_shortness=l*0.80,reverse=typeof(reverse)!="undefined"?reverse:false,s=reverse?s.split("").reverse().join(""):s,short_s="";for(var i=0;i<l-1;i++){short_s+=s[i];if(i>=acceptable_shortness&&stop_chars.indexOf(s[i])>=0){break;}};if(reverse){return short_s.split("").reverse().join("");}
return short_s;};return shortString(url,chunk_l,false)+"..."+shortString(url,chunk_l,true);};jQuery.extend({compare:function(a,b){var obj_str='[object Object]',arr_str='[object Array]',a_type=Object.prototype.toString.apply(a),b_type=Object.prototype.toString.apply(b);if(a_type!==b_type){return false;}else if(a_type===obj_str){return $.compareObject(a,b);}else if(a_type===arr_str){return $.compareArray(a,b);}
return(a===b);},compareArray:function(arrayA,arrayB){var a,b,i,a_type,b_type;if(arrayA===arrayB){return true;}
if(arrayA.length!=arrayB.length){return false;}
a=jQuery.extend(true,[],arrayA);b=jQuery.extend(true,[],arrayB);a.sort();b.sort();for(i=0,l=a.length;i<l;i+=1){a_type=Object.prototype.toString.apply(a[i]);b_type=Object.prototype.toString.apply(b[i]);if(a_type!==b_type){return false;}
if($.compare(a[i],b[i])===false){return false;}}
return true;},compareObject:function(objA,objB){var i,a_type,b_type;if(objA===objB){return true;}
if(Object.keys(objA).length!==Object.keys(objB).length){return false;}
for(i in objA){if(objA.hasOwnProperty(i)){if(typeof objB[i]==='undefined'){return false;}else{a_type=Object.prototype.toString.apply(objA[i]);b_type=Object.prototype.toString.apply(objB[i]);if(a_type!==b_type){return false;}}}
if($.compare(objA[i],objB[i])===false){return false;}}
return true;}});jQuery.fn.exists=function(){return this.length>0;};jQuery.fn.replace_svg=function(){if(!this.attr("src"))return;$(this).each(function(){$(this).attr("src",$(this).attr("src").replace(".svg",".png"));});};jQuery.fn.is_fluid=function(){return true;return(this.hasClass("fluid")||this.css("width")=="100%");};jQuery.fn.bindFormData=function(){$(":input",this).each(function(){var safeVal=PF.fn.htmlEncode($(this).val());if($(this).is("input")){this.setAttribute("value",this.value);if(this.checked){this.setAttribute("checked","checked");}else{this.removeAttribute("checked");}}
if($(this).is("textarea")){$(this).html(safeVal);}
if($(this).is("select")){var index=this.selectedIndex,i=0;$(this).children("option").each(function(){if(i++!=index){this.removeAttribute("selected");}else{this.setAttribute("selected","selected");}});}});return this;};jQuery.fn.formValues=function(data){var els=$(":input",this);if(typeof data!="object"){data={};$.each(els,function(){if(this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/color|date|datetime|datetime-local|email|month|range|search|tel|time|url|week|text|number|hidden|password/i.test(this.type))){if(this.name.match(/^.*\[\]$/)&&this.checked){if(typeof data[this.name]=="undefined"){data[this.name]=[];}
data[this.name].push($(this).val());}else{data[this.name]=$(this).val();}}});return data;}else{$.each(els,function(){if(this.name.match(/^.*\[\]$/)&&typeof data[this.name]=="object"){$(this).prop("checked",data[this.name].indexOf($(this).val())!==-1);}else{if(this.name&&data[this.name]){if(/checkbox|radio/i.test(this.type)){$(this).prop("checked",(data[this.name]==$(this).val()));}else{$(this).val(data[this.name]);}}else if(/checkbox|radio/i.test(this.type)){$(this).removeProp("checked");}}});return $(this);}};jQuery.fn.storeformData=function(dataname){if(typeof dataname=="undefined"&&typeof $(this).attr("id")!=="undefined"){dataname=$(this).attr("id");}
if(typeof dataname!=="undefined")$(this).data(dataname,$(this).formValues());return this;};jQuery.fn.is_sameformData=function(dataname){var $this=$(this);if(typeof dataname=="undefined")dataname=$this.attr("id");return jQuery.compare($this.formValues(),$this.data(dataname));};jQuery.Event.prototype.keydown_numeric=function(){var e=this;if(e.shiftKey){e.preventDefault();return false;}
var key=e.charCode||e.keyCode,target=e.target,value=($(target).val()=="")?0:parseInt($(target).val());if(key==13){return true;}
if(key==46||key==8||key==9||key==27||(key==65&&e.ctrlKey===true)||(key>=35&&key<=40)){return true;}else{if((key<48||key>57)&&(key<96||key>105)){e.preventDefault();}}};PF.fn.is_canvas_supported=function(){var elem=document.createElement("canvas");return!!(elem.getContext&&elem.getContext("2d"));};PF.fn.is_validity_supported=function(){var i=document.createElement("input");return typeof i.validity==="object";};PF.fn.getScrollBarWidth=function(){var inner=document.createElement('p');inner.style.width="100%";inner.style.height="200px";var outer=document.createElement('div');outer.style.position="absolute";outer.style.top="0px";outer.style.left="0px";outer.style.visibility="hidden";outer.style.width="200px";outer.style.height="150px";outer.style.overflow="hidden";outer.appendChild(inner);document.body.appendChild(outer);var w1=inner.offsetWidth;outer.style.overflow='scroll';var w2=inner.offsetWidth;if(w1==w2)w2=outer.clientWidth;document.body.removeChild(outer);return(w1-w2);};PF.str.ScrollBarWidth=PF.fn.getScrollBarWidth();PF.fn.top_notifications_viewed=function(){var $top_bar_notifications=$("[data-action=top-bar-notifications]"),$notifications_lists=$(".top-bar-notifications-list",$top_bar_notifications),$notifications_count=$(".top-btn-number",$top_bar_notifications);if($(".persistent",$top_bar_notifications).exists()){$notifications_count.text($(".persistent",$top_bar_notifications).length).addClass("on");}else{$notifications_count.removeClass("on");}};PF.fn.bindtipTip=function($target,options){if(typeof $target=="undefined")$target=$("body");if($target instanceof jQuery==false)$target=$($target);var bindtipTipoptions={delay:0,content:false,fadeIn:0};if(typeof options!=="undefined"){if(typeof options.delay!=="undefined")bindtipTipoptions.delay=options.delay;if(typeof options.content!=="undefined")bindtipTipoptions.content=options.content;if(typeof options.content!=="undefined")bindtipTipoptions.fadeIn=options.fadeIn;}
if($target.attr("rel")!=="tooltip")$target=$("[rel=tooltip]",$target);$target.each(function(){if((typeof $(this).attr("href")!=="undefined"||typeof $(this).data("href")!=="undefined")&&PF.fn.isDevice(["phone","phablet","tablet"])){return true;}
var position=typeof $(this).data("tiptip")=="undefined"?"bottom":$(this).data("tiptip");if(PF.fn.isDevice(["phone","phablet"])){position="top";}
$(this).tipTip({delay:bindtipTipoptions.delay,defaultPosition:position,content:bindtipTipoptions.content,fadeIn:bindtipTipoptions.fadeIn,fadeOut:0});});};PF.fn.form_modal_has_changed=function(){if($(PF.obj.modal.selectors.root).is(":hidden"))return;if(typeof $("html").data("modal-form-values")==typeof undefined)return;var data_stored=$("html").data("modal-form-values");var data_modal=PF.fn.deparam($(":input:visible",PF.obj.modal.selectors.root).serialize());var has_changed=false;var keys=$.extend({},data_stored,data_modal);for(var k in keys){if(data_stored[k]!==data_modal[k]){has_changed=true;break;}}
return has_changed;};PF.fn.is_listing=function(){return $(PF.obj.listing.selectors.content_listing).exists();};PF.fn.is_tabs=function(){return $(".content-tabs").exists();};jQuery.fn.shake=function(callback){this.each(function(init){var jqNode=$(this),jqNode_position=jqNode.css("position");if(!jqNode_position.match("relative|absolute|fixed"))jqNode.css({position:"relative"});var jqNode_left=parseInt(jqNode.css("left"));if(!jqNode_left.toString().isNumeric())jqNode_left=0;if(!jqNode.is(":animated")){for(var x=1;x<=2;x++){jqNode.animate({left:jqNode_left-10},0).animate({left:jqNode_left},30).animate({left:jqNode_left+10},30).animate({left:jqNode_left},30);};if(jqNode_position!=="static")jqNode.css({position:jqNode_position});};});if(typeof callback=="function")callback();return this;};jQuery.fn.highlight=function(color){if(this.is(":animated")||!this.exists())return this;if(typeof color=="undefined")color="yellow";var fadecolor=color;switch(color){case"yellow":fadecolor="#FFFBA2";break;case"red":fadecolor="#FF7F7F";break;default:fadecolor=color;break;};var base_background_color=$(this).css("background-color"),base_background=$(this).css("background");$(this).css({background:"",backgroundColor:fadecolor}).animate({backgroundColor:base_background_color},800,function(){$(this).css("background","");});return this;};jQuery.fn.pf_slideDown=function(speed,callback){var default_speed="normal",this_length=$(this).length,css_prechanges,css_animation,animation_speed;if(typeof speed=="function"){callback=speed;speed=default_speed;}
if(typeof speed=="undefined"){speed=default_speed;}
$(this).each(function(index){var this_css_top=parseInt($(this).css("top")),to_top=this_css_top>0?this_css_top:0;if(speed==0){css_prechanges={display:"block",opacity:0},css_animation={opacity:1},animation_speed=jQuery.speed("fast").duration;}else{css_prechanges={top:-$(this).outerHeight(true),opacity:1,display:"block"};css_animation={top:to_top};animation_speed=jQuery.speed(speed).duration;}
$(this).data("originalTop",$(this).css("top"));$(this).css(css_prechanges).animate(css_animation,animation_speed,function(){if(index==this_length-1){if(typeof callback=="function"){callback();}}});});return this;};jQuery.fn.pf_slideUp=function(speed,callback){var default_speed="normal",this_length=$(this).length;if(typeof speed=="function"){callback=speed;speed=default_speed;}
if(typeof speed=="undefined"){speed=default_speed;}
$(this).each(function(index){$(this).animate({top:-$(this).outerHeight(true)},jQuery.speed(speed).duration,function(){$(this).css({display:"none",top:$(this).data("originalTop")});if(index==this_length-1){if(typeof callback=="function"){callback();}}});});return this;};jQuery.fn.is_in_viewport=function(){var rect=$(this)[0].getBoundingClientRect();return(rect.top>=0&&rect.left>=0&&rect.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&rect.right<=(window.innerWidth||document.documentElement.clientWidth));};PF.fn.scroll=function(target,callback){if(typeof target=="function"){var callback=target,target="";}
var pxtop=parseInt($("body").css("margin-top"));if(pxtop==0&&$(".top-bar-placeholder").exists()){pxtop=$(".top-bar-placeholder").height();}
if(!$(target).exists())target="html";$("body,html").animate({scrollTop:$(target).offset().top-pxtop},"normal",function(){if(typeof callback=="function")callback();});};PF.fn.close_pops=function(e){$(".pop-box:visible").each(function(){$(this).closest(".pop-btn").click();});};PF.fn.growl={selectors:{root:"#growl"},str:{timeout:null,timeoutcall:false},call:function(options){if(typeof options=="undefined")return;if(typeof options=="string"){options={message:options};}
if(typeof options.message=="undefined")return;var growl_options,$growl,growl_class,growl_color;growl_options={message:options.message,insertTo:"body",where:"before",color:"default",css:{},classes:"",expires:0,callback:function(){}};for(key in growl_options){if(typeof options[key]!=="undefined"){if(key.match("/^(callback)$/")){if(typeof options[key]=="function"){growl_options[key]=options[key];}}else{growl_options[key]=options[key];}}}
if(!$(growl_options.insertTo).exists()){growl_options.insertTo="body";}
if($(PF.fn.growl.selectors.root).exists()){if($(PF.fn.growl.selectors.root).text()==growl_options.message){$(PF.fn.growl.selectors.root).shake();return;}
$(PF.fn.growl.selectors.root).remove();}
$growl=$('<div id="'+PF.fn.growl.selectors.root.replace("#","")+'" class="growl">'+growl_options.message+'<span class="icon icon-close" data-action="close"></span></div>').css(growl_options.css).addClass(growl_options.classes);growl_class=growl_options.insertTo!=="body"?"static":"";switch(growl_options.color){case"dark":growl_color="dark";break;default:growl_color="";break;}
$growl.addClass(growl_class+" "+growl_color);if(growl_options.where=="before"){$(growl_options.insertTo).prepend($growl.hide());}else{$(growl_options.insertTo).append($growl.hide());}
if($(".fullscreen").is(":visible")){$growl.css({"z-index":parseInt($(".fullscreen").css("z-index"))+1});}
if($(PF.obj.modal.selectors.root).is(":visible")){var $modal_box=$(PF.obj.modal.selectors.box,PF.obj.modal.selectors.root);$growl.show();$growl.css("top",($("#top-bar").outerHeight(true)-$growl.outerHeight(true))/2);PF.fn.growl.fixPosition();$growl.hide();}
$growl.pf_slideDown(growl_class=="static"?0:200,function(){if(typeof growl_options.callback=="function"){growl_options.callback();}});$(document).on("click",".growl",function(e){if(PF.fn.isDevice(["phone","phablet"])||$(e.target).is("[data-action=close]")){PF.fn.growl.close(true);}});if(growl_options.expires>0){if(typeof this.str.timeout=="number"){clearTimeout(this.str.timeout);}
this.str.timeout=setTimeout(function(){PF.fn.growl.str.timeoutcall=true;PF.fn.growl.close();},growl_options.expires);}},expirable:function(msg,time){if(typeof msg=="undefined")return;if(typeof time=="undefined")time=5000;PF.fn.growl.call({message:msg,expires:time});},close:function(forced,callback){var $growl=$(PF.fn.growl.selectors.root);if(forced){this.str.timeout=null;this.str.timeoutcall=false;clearTimeout(this.str.timeout);}
if(!$growl.exists()||(typeof this.str.timeout=="number"&&!this.str.timeoutcall)){return;}
$growl.fadeOut("fast",function(){$(this).remove();if(typeof callback=="function"){callback();}});},fixPosition:function(){var $growl=$(PF.fn.growl.selectors.root);if(!$growl.exists()||!$(PF.obj.modal.selectors.root).exists()){return;}
if($growl.data("fixedPosition")=="scrollbar"&&$(PF.obj.modal.selectors.root).hasScrollBar().vertical){return;}
var offsetX={modal:$(PF.obj.modal.selectors.box).offset().left,growl:$growl.offset().left},growlCompensate=offsetX.modal-offsetX.growl,marginLeft=growlCompensate<0?("-="+Math.abs(growlCompensate)):"-"+parseInt($growl.css("width"))/2;if(!PF.fn.isDevice(["phone","phablet"])){$growl.css("marginLeft",marginLeft+"px");}
$growl.data("fixedPosition",$(PF.obj.modal.selectors.root).hasScrollBar().vertical?"scrollbar":"no-scrollbar");}};PF.obj.modal={type:"",selectors:{root:"#fullscreen-modal",box:"#fullscreen-modal-box",body:"#fullscreen-modal-body",login:"[data-modal=login]",changes_confirm:"#fullscreen-changes-confirm",btn_container:".btn-container",close_buttons:".close-modal,.cancel-modal,[data-action=cancel],[data-action-close]",submit_button:"[data-action=submit]",growl_placeholder:"#fullscreen-growl-placeholder"},ajax:{url:"",deferred:{}},locked:false,form_data:{},XHR:{},prevented:false};PF.obj.modal.$close_buttons=$(PF.obj.modal.selectors.close_buttons,PF.obj.modal.selectors.root);PF.obj.modal.$submit_button=$(PF.obj.modal.selectors.submit_button,PF.obj.modal.selectors.root);PF.fn.modal={str:{transition:"all "+PF.obj.config.animation.fast+"ms ease"},call:function(options){var modal_options,modal_base_template,modal_message;if(typeof options=="undefined")return;if(typeof options.template!=="undefined"&&typeof options.type=="undefined")options.type="html";if((typeof options.title=="undefined"||typeof options.message=="undefined")&&(options.type!=="login"&&options.type!=="html"))return;PF.fn.growl.close();modal_options={forced:false,type:"confirm",title:options.title,message:options.message,html:false,template:options.template,buttons:true,button_submit:PF.fn._s("Submit"),txt_or:PF.fn._s("or"),button_cancel:PF.fn._s("cancel"),ajax:{url:null,data:null,deferred:{}},confirm:function(){},cancel:function(){PF.fn.modal.close();},load:function(){},callback:function(){}};for(key in modal_options){if(typeof options[key]!=="undefined"){if((/^cancel|confirm|callback$/).test(key)){if(typeof options[key]=="function"){modal_options[key]=options[key];}}else{modal_options[key]=options[key];}}}
if(typeof options.ajax!=="undefined"&&!options.ajax.url&&options.ajax.deferred){modal_options.ajax.url=PF.obj.config.json_api;}
if(modal_options.type=="login"){modal_options.buttons=false;}
if(modal_options.type=="confirm"){modal_options.button_submit=PF.fn._s("Confirm");}
var overlay_background="soft-black";if($("html").hasClass("tone-dark")){overlay_background="black";}
var modal_base_template=['<div id="',PF.obj.modal.selectors.root.replace("#",""),'"class="fullscreen '+overlay_background+'"><div id="',PF.obj.modal.selectors.box.replace("#",""),'"class="clickable"><div id="',PF.obj.modal.selectors.body.replace("#",""),'">%MODAL_BODY%</div>%MODAL_BUTTONS%<span class="close-modal icon-close" data-action="close-modal"></span></div></div>'].join("");var modal_buttons=modal_options.buttons?['<div class="',PF.obj.modal.selectors.btn_container.replace(".",""),'"><button class="btn btn-input default" data-action="submit" type="submit">',modal_options.button_submit,'</button> <span class="btn-alt">',modal_options.txt_or,'<a class="cancel" data-action="cancel">',modal_options.button_cancel,'</a></span></div>'].join(""):"";if(modal_options.type=="login"){modal_options.template=typeof modal_options.template=="undefined"?$(PF.obj.modal.selectors.login).html():modal_options.template;}
var modalBodyHTML;switch(modal_options.type){case"html":case"login":modalBodyHTML=modal_options.template;break;case"confirm":default:modal_message=modal_options.message;if(!modal_options.html){modal_message='<p>'+modal_message+'</p>';}
modalBodyHTML='<h1>'+modal_options.title+'</h1>'+modal_message;break;}
if(typeof modalBodyHTML=="undefined"){console.log("PF Error: Modal content is empty");return;}
modal_base_template=modal_base_template.replace("%MODAL_BODY%",modalBodyHTML).replace("%MODAL_BUTTONS%",modal_buttons).replace(/template-tooltip/g,"tooltip");$(PF.obj.modal.selectors.root).remove();$("body").data("overflow-hidden",$("body").hasClass("overflow-hidden"));$("body").prepend(modal_base_template).addClass("overflow-hidden");this.fixScrollbars();$("[rel=tooltip]",PF.obj.modal.selectors.root).each(function(){PF.fn.bindtipTip(this,{content:$(this).data("title")});});if($(":button, input[type=submit], input[type=reset]",PF.obj.modal.selectors.root).length>0){var $form=$("form",PF.obj.modal.selectors.root);if($form.exists()){$form.append($($(PF.obj.modal.selectors.btn_container,PF.obj.modal.selectors.root).html()).wrapInner(PF.obj.modal.selectors.btn_container.replace(".","")));$(PF.obj.modal.selectors.btn_container,PF.obj.modal.selectors.root).each(function(){if(!$(this).closest("form").exists()){$(this).remove();}});}else{$(PF.obj.modal.selectors.box,PF.obj.modal.selectors.root).wrapInner('<form />');}}
modal_options.callback();$(PF.obj.modal.selectors.box).css({transform:"scale(0.7)",opacity:0,transition:PF.fn.modal.str.transition});$(PF.obj.modal.selectors.root).css({display:"block"});setTimeout(function(){$(PF.obj.modal.selectors.root).css({opacity:1});$(PF.obj.modal.selectors.box).css({transform:"scale(1)",opacity:1});setTimeout(function(){if(typeof modal_options.load=="function"){modal_options.load();}
$("html").data("modal-form-values",PF.fn.deparam($(":input:visible",PF.obj.modal.selectors.root).serialize()));},PF.obj.config.animation.fast);},1);$(PF.obj.modal.selectors.root).click(function(e){var $this=$(e.target),_this=this;if(PF.obj.modal.locked){return;}
if($this.closest(PF.obj.modal.selectors.changes_confirm).exists()&&($this.is(PF.obj.modal.selectors.close_buttons)||$this.is(PF.obj.modal.selectors.submit_button))){$(PF.obj.modal.selectors.changes_confirm).remove();if($this.is(PF.obj.modal.selectors.close_buttons)){$(PF.obj.modal.selectors.box,_this).fadeIn("fast",function(){$(this).css("transition",PF.fn.modal.str.transition);});}else{PF.fn.modal.close();}}else{if(!$this.closest(".clickable").exists()||$this.is(PF.obj.modal.selectors.close_buttons)){PF.fn.growl.close();modal_options.cancel();}
if($this.is(PF.obj.modal.selectors.submit_button)){if(modal_options.confirm()===false){return;}
var modal_submit_continue=true;if($("input, textarea, select",PF.obj.modal.selectors.root).not(":input[type=button], :input[type=submit], :input[type=reset]").length>0&&!PF.fn.form_modal_has_changed()&&!modal_options.forced){modal_submit_continue=false;}
if(modal_submit_continue){if(modal_options.ajax.url){var $btn_container=$(PF.obj.modal.selectors.btn_container,PF.obj.modal.selectors.root);PF.obj.modal.locked=true;$btn_container.first().clone().height($btn_container.height()).html("").addClass("loading").appendTo(PF.obj.modal.selectors.root+" form");$btn_container.hide();PF.obj.modal.$close_buttons.hide();var modal_loading_msg;switch(PF.obj.modal.type){case"edit":modal_loading_msg=PF.fn._s("Saving");break;case"confirm":case"form":default:modal_loading_msg=PF.fn._s("Sending");break;}
PF.fn.loading.inline($(PF.obj.modal.selectors.btn_container+".loading",PF.obj.modal.selectors.root),{size:"small",message:modal_loading_msg,valign:"center"});$(PF.obj.modal.selectors.root).disableForm();if(!$.isEmptyObject(PF.obj.modal.form_data)||(typeof options.ajax!=="undefined"&&typeof options.ajax.data=="undefined")){modal_options.ajax.data=PF.obj.modal.form_data;}
PF.obj.modal.XHR=$.ajax({url:modal_options.ajax.url,type:"POST",data:modal_options.ajax.data}).complete(function(XHR){PF.obj.modal.locked=false;if(XHR.status==200){var success_fn=typeof modal_options.ajax.deferred!=="undefined"&&typeof modal_options.ajax.deferred.success!=="undefined"?modal_options.ajax.deferred.success:null;if(typeof success_fn=="function"){PF.fn.modal.close(function(){if(typeof success_fn=="function"){success_fn(XHR);}});}else if(typeof success_fn=="object"){if(typeof success_fn.before=="function"){success_fn.before(XHR);}
if(typeof success_fn.done=="function"){success_fn.done(XHR);}}}else{$(PF.obj.modal.selectors.root).enableForm();$(PF.obj.modal.selectors.btn_container+".loading",PF.obj.modal.selectors.root).remove();$btn_container.css("display","");if(typeof modal_options.ajax.deferred!=="undefined"&&typeof modal_options.ajax.deferred.error=="function"){modal_options.ajax.deferred.error(XHR);}else{var message=PF.fn._s("An error occurred. Please try again later.");PF.fn.growl.call(message);}}});}else{PF.fn.modal.close(modal_options.callback());}}}}});},confirm:function(options){options.type="confirm";if(typeof options.title=="undefined"){options.title=PF.fn._s("Confirm action");}
PF.fn.modal.call(options);},simple:function(options){if(typeof options=="string")options={message:options};if(typeof options.buttons=="undefined")options.buttons=false;if(typeof options.title=="undefined")options.title=PF.fn._s("information");PF.fn.modal.call(options);},fixScrollbars:function(){if(!$(PF.obj.modal.selectors.root).exists()){return;}
var $targets={padding:$(".top-bar, .fixed, .position-fixed"),margin:$("html"),}
var properties={}
if(PF.str.ScrollBarWidth>0&&$("html").hasScrollBar().vertical&&!$("body").data("overflow-hidden")){properties.padding=PF.str.ScrollBarWidth+"px";properties.margin=PF.str.ScrollBarWidth+"px";}else{properties.padding="";properties.margin="";}
$targets.padding.css({paddingRight:properties.padding});$targets.margin.css({marginRight:properties.margin});},close:function(callback){if(!$(PF.obj.modal.selectors.root).exists()){return;}
PF.fn.growl.close(true);$("[rel=tooltip]",PF.obj.modal.selectors.root).tipTip("hide");$(PF.obj.modal.selectors.box).css({transform:"scale(0.5)",opacity:0});$(PF.obj.modal.selectors.root).css({opacity:0});setTimeout(function(){if(PF.str.ScrollBarWidth>0&&$("html").hasScrollBar().vertical){$(".top-bar, .fixed, .position-fixed").css({paddingRight:""});}
$("html").css({marginRight:""});if(!$("body").data("overflow-hidden")){$("body").removeClass("overflow-hidden");}
$("body").removeData("overflow-hidden");$(PF.obj.modal.selectors.root).remove();if(typeof callback=="function")callback();},PF.obj.config.animation.normal);},};PF.fn.popup=function(options){var settings={height:options.height||500,width:options.width||650,scrollTo:0,resizable:0,scrollbars:0,location:0};settings.top=(screen.height/2)-(settings.height/2);settings.left=(screen.width/2)-(settings.width/2);var settings_="";for(var key in settings){settings_+=key+"="+settings[key]+",";}
settings_=settings_.slice(0,-1);window.open(options.href,"Popup",settings_);return;};PF.fn.list_fluid_width=function(){if(!$("body").is_fluid())return;var $content_listing=$(PF.obj.listing.selectors.content_listing_visible),$pad_content_listing=$(PF.obj.listing.selectors.pad_content,$content_listing),$list_item=$(PF.obj.listing.selectors.list_item,$content_listing),list_item_width=$list_item.outerWidth(true),list_item_gutter=$list_item.outerWidth(true)-$list_item.width();PF.obj.listing.content_listing_ratio=parseInt(($content_listing.width()+list_item_gutter)/ list_item_width);if($list_item.length<PF.obj.listing.content_listing_ratio){$pad_content_listing.css("width","100%");return;}
if(PF.fn.isDevice(["tablet","laptop","desktop"])){}
if(PF.obj.follow_scroll.$node.hasClass("position-fixed")){PF.obj.follow_scroll.$node.width($(".content-width").first().width());}};PF.obj.tabs={hashdata:{}};PF.fn.show_tab=function(tab){if(typeof tab=="undefined")return;var $this=$("a[data-tab="+tab+"]",".content-tabs");$("li",$this.closest("ul")).removeClass("current");$this.closest("li").addClass("current");var $tab_content_group=$("#tabbed-content-group");$target=$("#"+$this.data("tab"));$(".tabbed-content",$tab_content_group).removeClass("visible").hide();$($target,$tab_content_group).addClass("visible").show();$("[data-content=list-selection]").removeClass("visible").addClass("hidden");$("[data-content=list-selection][data-tab="+$this.data("tab")+"]").removeClass("hidden").addClass("visible");if($tab_content_group.exists()){var $list_item_target=$(PF.obj.listing.selectors.list_item+":not(.jsly)",$target),target_fade=!$target.hasClass("jsly");if($target.data("load")=="ajax"&&$target.data("empty")!=="true"&&!$(PF.obj.listing.selectors.list_item,$target).exists()){PF.fn.listing.queryString.stock_load();$target.html(PF.obj.listing.template.fill);PF.fn.loading.inline($(PF.obj.listing.selectors.content_listing_loading,$target));PF.fn.listing.queryString.stock_new();PF.fn.listing.ajax();}else{PF.fn.listing.queryString.stock_current();PF.fn.listing.columnizer(false,0,false);$list_item_target[target_fade?"fadeIn":"show"]();}}
PF.fn.listing.columnizerQueue();if($(PF.obj.listing.selectors.content_listing_visible).data("queued")==true){PF.fn.listing.columnizer(true,0);}};PF.obj.listing={columns:"",columns_number:1,current_column:"",current_column:"",XHR:{},query_string:PF.fn.get_url_vars(),calling:false,content_listing_ratio:1,selectors:{sort:".sort-listing .current [data-sort]",content_listing:".content-listing",content_listing_visible:".content-listing:visible",content_listing_loading:".content-listing-loading",content_listing_load_more:".content-listing-more",content_listing_pagination:".content-listing-pagination",empty_icon:".icon icon-drawer",pad_content:".pad-content-listing",list_item:".list-item",},template:{fill:$("[data-template=content-listing]").html(),empty:$("[data-template=content-listing-empty]").html(),loading:$("[data-template=content-listing-loading]").html()}};PF.fn.listing={};PF.fn.listing.show=function(response,callback){$content_listing=$("#content-listing-tabs").exists()?$(PF.obj.listing.selectors.content_listing_visible,"#content-listing-tabs"):$(PF.obj.listing.selectors.content_listing);PF.fn.loading.inline(PF.obj.listing.selectors.content_listing_loading);$(PF.obj.listing.selectors.list_item+":not(.jsly)",$content_listing).each(function(){$(this).imagesLoaded(function(i){var items=PF.obj.listing.selectors.list_item,$subjects=$(items+":visible",PF.obj.listing.selectors.content_listing_visible),$targets=$(i.elements);if((typeof response!=="undefined"&&$(response.html).length<PF.obj.config.listing.items_per_page)||$(PF.obj.listing.selectors.list_item,$content_listing).length<PF.obj.config.listing.items_per_page){PF.fn.listing.removeLoader($content_listing);}
if($(PF.obj.listing.selectors.content_listing_pagination,$content_listing).is("[data-type=classic]")||!$("[data-action=load-more]",$content_listing).exists()){$(PF.obj.listing.selectors.content_listing_loading,$content_listing).remove();}
if($subjects.length==0){$targets.show();PF.fn.listing.columnizer(false,0);PF.obj.listing.recolumnize=true;}
var animation_time=0;PF.fn.listing.columnizer(PF.obj.listing.recolumnize,animation_time,$subjects.length==0);$targets.hide();PF.obj.listing.recolumnize=false;if(PF.fn.isDevice(["laptop","desktop"])){$targets.each(function(){$(this).show().find(".image-container").hide();var callTime=$.now();var $this=$(this);var $target=$(".image-container",$this);$(".image-container",this).imagesLoaded(function(){var loadTime=$.now()-callTime;if($subjects.length==0){if(loadTime>PF.obj.config.animation.normal){$target.fadeIn(PF.obj.config.animation.normal);}else{$target.show();}}else{$target.fadeIn(PF.obj.config.animation.normal);}});});}else{$targets.show();}
PF.obj.listing.calling=false;var visible_loading=$(PF.obj.listing.selectors.content_listing_loading,$content_listing).exists()&&($(PF.obj.listing.selectors.content_listing_loading,$content_listing).is_in_viewport());if(typeof PF.obj.listing.show_load_more==typeof undefined){PF.obj.listing.show_load_more=visible_loading;}
$(PF.obj.listing.selectors.content_listing_loading,$content_listing)[(visible_loading?"add":"remove")+"Class"]("visibility-hidden");$(PF.obj.listing.selectors.content_listing_load_more,$content_listing)[(PF.obj.listing.show_load_more?"show":"hide")]();var State=History.getState();if(State.data&&typeof State.data.scrollTop!=="undefined"){if($(window).scrollTop()!==State.data.scrollTop){}}
if(typeof callback=="function"){callback();}})});};PF.fn.listing.removeLoader=function(obj){var remove=[PF.obj.listing.selectors.content_listing_load_more,PF.obj.listing.selectors.content_listing_loading];if($(PF.obj.listing.selectors.content_listing_pagination,$content_listing).is("[data-type=endless]")){remove.push(PF.obj.listing.selectors.content_listing_pagination);}
$.each(remove,function(i,v){$(v,obj).remove();});};PF.fn.listing.queryString={stock_load:function(){var $content_listing=$(PF.obj.listing.selectors.content_listing_visible),params=PF.fn.deparam($content_listing.data("params"));PF.obj.listing.hidden_params=typeof $content_listing.data("params-hidden")!=="undefined"?PF.fn.deparam($content_listing.data("params-hidden")):null;if(typeof PF.obj.listing.query_string.action=="undefined"){PF.obj.listing.query_string.action=$content_listing.data("action")||"list";}
if(typeof PF.obj.listing.query_string.list=="undefined"){PF.obj.listing.query_string.list=$content_listing.data("list");}
if(typeof PF.obj.listing.query_string.sort=="undefined"){if(typeof params!=="undefined"&&typeof params.sort!=="undefined"){PF.obj.listing.query_string.sort=params.sort;}else{PF.obj.listing.query_string.sort=$(":visible"+PF.obj.listing.selectors.sort).data("sort");}}
if(typeof PF.obj.listing.query_string.page=="undefined"){PF.obj.listing.query_string.page=1;}
$content_listing.data("page",PF.obj.listing.query_string.page);$(PF.obj.listing.selectors.content_listing+"[data-load=ajax]").each(function(){var $sortable_switch=$("[data-tab="+$(this).attr("id")+"]"+PF.obj.listing.selectors.sort);var dataParams=PF.fn.deparam($(this).data("params")),dataParamsHidden=PF.fn.deparam($(this).data("params-hidden")),params={q:dataParams&&dataParams.q?dataParams.q:null,list:$(this).data("list"),sort:$sortable_switch.exists()?$sortable_switch.data("sort"):(dataParams&&dataParams.sort?dataParams.sort:null),page:dataParams&&dataParams.page?dataParams.page:1};if(dataParamsHidden&&dataParamsHidden.list){delete params.list;}
for(var k in params){if(!params[k])delete params[k];}});for(var k in params){if(/action|list|sort|page/.test(k)==false){PF.obj.listing.query_string[k]=params[k];}}
for(var k in PF.obj.listing.hidden_params){if(/action|list|sort|page/.test(k)==false){PF.obj.listing.query_string[k]=PF.obj.listing.hidden_params[k];}}},stock_new:function(){var $content_listing=$(PF.obj.listing.selectors.content_listing_visible),params=PF.fn.deparam($content_listing.data("params"));if($content_listing.data("offset")){PF.obj.listing.query_string.offset=$content_listing.data("offset");}else{delete PF.obj.listing.query_string.offset;}
PF.obj.listing.query_string.action=$content_listing.data("action")||"list";PF.obj.listing.query_string.list=$content_listing.data("list");if(typeof params!=="undefined"&&typeof params.sort!=="undefined"){PF.obj.listing.query_string.sort=params.sort;}else{PF.obj.listing.query_string.sort=$(":visible"+PF.obj.listing.selectors.sort).data("sort");}
PF.obj.listing.query_string.page=1;},stock_current:function(){this.stock_new();PF.obj.listing.query_string.page=$(PF.obj.listing.selectors.content_listing_visible).data("page");}};PF.fn.listing.queryString.stock_load();PF.fn.listing.ajax=function(){if(PF.obj.listing.calling==true){return;}
PF.obj.listing.calling=true;var $content_listing=$(PF.obj.listing.selectors.content_listing_visible),$pad_content_listing=$(PF.obj.listing.selectors.pad_content,$content_listing);$(PF.obj.listing.selectors.content_listing_load_more,$content_listing).hide();$(PF.obj.listing.selectors.content_listing_loading,$content_listing).removeClass("visibility-hidden").show();PF.obj.listing.XHR=$.ajax({type:"POST",data:$.param($.extend({},PF.obj.listing.query_string,$.ajaxSettings.data))}).complete(function(XHR){var response=XHR.responseJSON;var removePagination=function(){$(PF.obj.listing.selectors.content_listing_loading+","+PF.obj.listing.selectors.content_listing_pagination+":not([data-visibility=visible])",$content_listing).remove();},setEmptyTemplate=function(){$content_listing.data("empty","true").html(PF.obj.listing.template.empty);$("[data-content=list-selection][data-tab="+$content_listing.attr("id")+"]").addClass("disabled");};if(XHR.readyState==4&&typeof response!=="undefined"){$("[data-content=list-selection][data-tab="+$content_listing.attr("id")+"]").removeClass("disabled");if(XHR.status!==200){var response_output=typeof response.error!=="undefined"&&typeof response.error.message!=="undefined"?response.error.message:"Bad request";PF.fn.growl.call("Error: "+response_output);$content_listing.data("load","");}
if((typeof response.html=="undefined"||response.html=="")&&$(PF.obj.listing.selectors.list_item,$content_listing).length==0){setEmptyTemplate();}
if(typeof response.html=="undefined"||response.html==""){removePagination();PF.obj.listing.calling=false;if(typeof PF.fn.listing_end=="function"){PF.fn.listing_end();}
return;}
$content_listing.data({"load":"","page":PF.obj.listing.query_string.page});var url_object=$.extend({},PF.obj.listing.query_string);for(var k in PF.obj.listing.hidden_params){if(typeof url_object[k]!=="undefined"){delete url_object[k];}}
delete url_object["action"];for(var k in url_object){if(!url_object[k])delete url_object[k];}
if(document.URL.indexOf("?"+$.param(url_object))==-1){var url=window.location.href;url=url.split("?")[0].replace(/\/$/,"")+"/?"+$.param(url_object);if(window.location.hash){url=url.replace(window.location.hash,'');}
History.pushState({pushed:"pagination",scrollTop:$(window).scrollTop()},document.title,url);}
$("a[data-tab="+$content_listing.attr("id")+"]").attr("href",document.URL);$pad_content_listing.append(response.html);PF.fn.listing.show(response,function(){$(PF.obj.listing.selectors.content_listing_loading,$content_listing).addClass("visibility-hidden");});}else{PF.obj.listing.calling=false;$content_listing.data("load","");removePagination();if($(PF.obj.listing.selectors.list_item,$content_listing).length==0){setEmptyTemplate();}
if(XHR.readyState!==0){PF.fn.growl.call(PF.fn._s("An error occurred. Please try again later."));}}
if(typeof PF.fn.listing.ajax.callback=="function"){PF.fn.listing.ajax.callback(XHR);}});};PF.fn.listing.columnizerQueue=function(){$(PF.obj.listing.selectors.content_listing+":hidden").data("queued",true);};PF.fn.listing.refresh=function(animation_time){PF.fn.listing.columnizer(true,animation_time,false);$(PF.obj.listing.selectors.list_item).show();};var width=$(window).width();PF.fn.listing.columnizer=function(forced,animation_time,hard_forced){var device_to_columns={phone:1,phablet:3,tablet:4,laptop:5,desktop:6,largescreen:7,};if(typeof forced!=="boolean")var forced=false;if(typeof PF.obj.listing.mode=="undefined")forced=true;if(typeof hard_forced!=="boolean"){var hard_forced=false,default_hard_forced=true;}else{var default_hard_forced=false;}
if(!hard_forced&&default_hard_forced){if(width!==$(window).width()||forced){hard_forced=true;}}
if(typeof animation_time==typeof undefined)var animation_time=PF.obj.config.animation.normal;var $container=$("#content-listing-tabs").exists()?$(PF.obj.listing.selectors.content_listing_visible,"#content-listing-tabs"):$(PF.obj.listing.selectors.content_listing),$pad_content_listing=$(PF.obj.listing.selectors.pad_content,$container),list_mode="responsive",$list_item=$(forced||hard_forced?PF.obj.listing.selectors.list_item:PF.obj.listing.selectors.list_item+":not(.jsly)",$container);$container.addClass("jsly");if(typeof PF.obj.config.listing.device_to_columns!=="undefined"){device_to_columns=$.extend({},device_to_columns,PF.obj.config.listing.device_to_columns);}
if($container.data("device-columns")){device_to_columns=$.extend({},device_to_columns,$container.data("device-columns"));}
PF.obj.listing.mode=list_mode;PF.obj.listing.device=PF.fn.getDeviceName();if(!$list_item.exists())return;if(typeof $container.data("columns")!=="undefined"&&!forced&&!hard_forced){PF.obj.listing.columns=$container.data("columns");PF.obj.listing.columns_number=$container.data("columns").length-1;PF.obj.listing.current_column=$container.data("current_column");}else{var $list_item_1st=$list_item.first();$list_item_1st.css("width","");PF.obj.listing.columns=new Array();PF.obj.listing.columns_number=device_to_columns[PF.fn.getDeviceName()];for(i=0;i<PF.obj.listing.columns_number;i++){PF.obj.listing.columns[i+1]=0;}
PF.obj.listing.current_column=1;}
$container.removeClass("small-cols").addClass(PF.obj.listing.columns_number>6?"small-cols":"");$pad_content_listing.css("width","100%");var delay=0;$list_item.each(function(index){$(this).addClass("jsly");var $list_item_img=$(".list-item-image",this),$list_item_src=$(".list-item-image img",this),$list_item_thumbs=$(".list-item-thumbs",this),isJslyLoaded=$list_item_src.hasClass("jsly-loaded");$list_item_src.show();if(hard_forced){$(this).css({top:"",left:"",height:"",position:""});$list_item_img.css({maxHeight:"",height:""});$list_item_src.removeClass("jsly").css({width:"",height:""}).parent().css({marginLeft:"",marginTop:""});$("li",$list_item_thumbs).css({width:"",height:""});}
var width_responsive=PF.obj.listing.columns_number==1?"100%":parseInt((1/PF.obj.listing.columns_number)*($container.width()-(10*(PF.obj.listing.columns_number-1)))+"px");$(this).css("width",width_responsive);if(PF.obj.listing.current_column>PF.obj.listing.columns_number){PF.obj.listing.current_column=1}
$(this).attr("data-col",PF.obj.listing.current_column);if(!$list_item_src.exists()){var empty=true;$list_item_src=$(".image-container .empty",this);}
var already_shown=$(this).is(":visible");$list_item.show();var isFixed=$list_item_img.hasClass("fixed-size");var image={w:parseInt($list_item_src.attr("width")),h:parseInt($list_item_src.attr("height"))};image.ratio=image.w / image.h;if(hard_forced&&PF.obj.listing.columns_number>1){$list_item_src.css({width:"auto",height:"auto"});$(".image-container:not(.list-item-avatar-cover)",this).css({width:"",height:"auto"});}else{if(image.w>$container.width()){$(".image-container:not(.list-item-avatar-cover)",this).css(image.ratio<1?{maxWidth:"100%",height:"auto"}:{height:"100%",width:"auto"});$list_item_src.css(image.ratio<1?{maxWidth:"100%",height:"auto"}:{height:"100%",width:"auto"});}}
if(empty||($list_item_img.css("min-height")&&!$list_item_src.hasClass("jsly"))){var list_item_img_min_height=parseInt($list_item_img.css("height")),col={w:$(this).width(),h:isFixed?$(this).width():null},magicWidth=Math.min(image.w,image.w<col.w?image.w:col.w);if(isFixed){$list_item_img.css({height:col.w});if(image.ratio<=3&&(image.ratio>1||image.ratio==1)){image.h=Math.min(image.h,image.w<col.w?image.w:col.w);image.w=image.h*image.ratio;}else{image.w=magicWidth;image.h=image.w / image.ratio;}
var list_item_img_min_h=parseInt($list_item_img.css("min-height"));$list_item_img.css("min-height",0);}else{image.w=magicWidth;if(image.ratio>=3||image.ratio<1||image.ratio==1){image.h=image.w / image.ratio;}else{image.h=Math.min(image.h,image.w);image.w=image.h*image.ratio;}
if(empty){image.h=col.w;}
$list_item_img.css({height:image.h});}
$list_item_src.css({width:image.w,height:image.h});if($list_item_src.width()==0){$list_item_src.css({width:magicWidth,height:magicWidth / image.ratio});}
if($(".image-container",this).is(".list-item-avatar-cover")){$list_item_src.css(isFixed?{width:"auto",height:"100%"}:{width:"100%",height:"auto"});}
if($list_item_src.height()!==0&&($list_item_img.height()>$list_item_src.height()||isFixed)){$list_item_src.parent().css({"marginTop":($list_item_img.outerHeight()-$list_item_src.height())/2});}
if($list_item_img.width()<$list_item_src.width()){$list_item_src.parent().css({"marginLeft":-(($list_item_src.outerWidth()-$list_item_img.width())/2)+"px"});}
var list_item_src_pitfall_x=Math.max($list_item_src.position().left*2,0),list_item_src_pitfall_y=Math.max($list_item_src.position().top*2,0);if(PF.obj.listing.columns_number>6&&(list_item_src_pitfall_x>0||list_item_src_pitfall_y>0)){var pitfall_ratio_x=list_item_src_pitfall_x/$list_item_img.width(),pitfall_ratio_y=list_item_src_pitfall_y/$list_item_img.height(),pitfall={};if(pitfall_ratio_x<=.25&&pitfall_ratio_y<=.25){if(pitfall_ratio_x>pitfall_ratio_y){pitfall.width=list_item_src_pitfall_x+$list_item_img.width();pitfall.height=pitfall.width / image.ratio;}else{pitfall.height=list_item_src_pitfall_y+$list_item_src.height();pitfall.width=pitfall.height*image.ratio;}
$list_item_src.css(pitfall);$list_item_src.parent().css({"marginLeft":-(($list_item_src.width()-$list_item_img.width())/2),"marginTop":0});}}
if($list_item_thumbs.exists()){$("li",$list_item_thumbs).css({width:100/$("li",$list_item_thumbs).length+"%"}).css({height:$("li",$list_item_thumbs).width()});}
if(!already_shown){$list_item.hide();}}
if(!$list_item_src.hasClass("jsly")&&$(this).is(":hidden")){$(this).css('top',"100%");}
PF.obj.listing.columns[PF.obj.listing.current_column]+=$(this).outerHeight(true);if(PF.obj.listing.columns_number==1){$(this).removeClass("position-absolute");}else{if($(this).is(":animated")){animation_time=0;}
$(this).addClass("position-absolute");var new_left=$(this).outerWidth(true)*(PF.obj.listing.current_column-1);var must_change_left=parseInt($(this).css("left"))!=new_left;if(must_change_left){animate_grid=true;$(this).animate({left:new_left},animation_time);}
var new_top=PF.obj.listing.columns[PF.obj.listing.current_column]-$(this).outerHeight(true);if(parseInt($(this).css("top"))!=new_top){animate_grid=true;$(this).animate({top:new_top},animation_time);if(must_change_left){delay=1;}}}
if(already_shown){$list_item.show();}
if(!isJslyLoaded){$list_item_src.addClass("jsly").hide().imagesLoaded(function(i){$(i.elements).show().addClass("jsly-loaded");});}
if(!isFixed){var minCol,minH,currentH;for(var i=1;i<=PF.obj.listing.columns_number;i++){currentH=PF.obj.listing.columns[i];if(typeof minH=="undefined"){minH=currentH;minCol=i;}
if(PF.obj.listing.columns[i]==0){minCol=i;break;}
if(currentH<minH){minH=PF.obj.listing.columns[i];minCol=i;}}
PF.obj.listing.current_column=minCol;}else{PF.obj.listing.current_column++;}});$container.data({"columns":PF.obj.listing.columns,"current_column":PF.obj.listing.current_column});var content_listing_height=0;$.each(PF.obj.listing.columns,function(i,v){if(v>content_listing_height){content_listing_height=v;}});if(content_listing_height>10){content_listing_height-=10;}
PF.obj.listing.width=$container.width();if(typeof PF.obj.listing.height!==typeof undefined){var old_listing_height=PF.obj.listing.height;}
PF.obj.listing.height=content_listing_height;var do_listing_h_resize=typeof old_listing_height!==typeof undefined&&old_listing_height!==PF.obj.listing.height;if(!do_listing_h_resize){$pad_content_listing.height(content_listing_height);PF.fn.list_fluid_width();}
if(do_listing_h_resize){$pad_content_listing.height(old_listing_height);setTimeout(function(){$pad_content_listing.animate({height:content_listing_height},animation_time,function(){PF.fn.list_fluid_width();});},animation_time*delay);}
$container.data("list-mode",PF.obj.listing.mode);$(PF.obj.listing.selectors.content_listing_visible).data("queued",false);};PF.fn.loading={spin:{small:{lines:11,length:0,width:3,radius:7,speed:1,trail:45,blocksize:20},normal:{lines:11,length:0,width:5,radius:10,speed:1,trail:45,blocksize:30},big:{lines:11,length:0,width:7,radius:13,speed:1,trail:45,blocksize:40},huge:{lines:11,length:0,width:9,radius:16,speed:1,trail:45,blocksize:50}},inline:function($target,options){if(typeof $target=="undefined")return;if($target instanceof jQuery==false){var $target=$($target);}
var defaultoptions={size:"normal",color:$("body").css("color"),center:false,position:"absolute",shadow:false,valign:"top"};if(typeof options=="undefined"){options=defaultoptions;}else{for(var k in defaultoptions){if(typeof options[k]=="undefined"){options[k]=defaultoptions[k];}}}
var size=PF.fn.loading.spin[options.size];PF.fn.loading.spin[options.size].color=options.color;PF.fn.loading.spin[options.size].shadow=options.shadow;$target.html('<span class="loading-indicator"></span>'+(typeof options.message!=="undefined"?'<span class="loading-text">'+options.message+'</span>':'')).css({"line-height":PF.fn.loading.spin[options.size].blocksize+"px"});$(".loading-indicator",$target).css({width:PF.fn.loading.spin[options.size].blocksize,height:PF.fn.loading.spin[options.size].blocksize}).spin(PF.fn.loading.spin[options.size]);if(options.center){$(".loading-indicator",$target.css("textAlign","center")).css({position:options.position,top:"50%",left:"50%",marginTop:-(PF.fn.loading.spin[options.size].blocksize/2),marginLeft:-(PF.fn.loading.spin[options.size].blocksize/2)});}
if(options.valign=="center"){$(".loading-indicator,.loading-text",$target).css("marginTop",($target.height()-PF.fn.loading.spin[options.size].blocksize)/2+"px");}
$(".spinner",$target).css({top:PF.fn.loading.spin[options.size].blocksize/2+"px",left:PF.fn.loading.spin[options.size].blocksize/2+"px"});},fullscreen:function(){$("body").append('<div class="fullscreen" id="pf-fullscreen-loader"><div class="fullscreen-loader black-bkg"><span class="loading-txt">'+PF.fn._s("loading")+'</span></div></div>');$(".fullscreen-loader","#pf-fullscreen-loader").spin(PF.fn.loading.spin.huge);$("#pf-fullscreen-loader").css("opacity",1);},destroy:function($target){var $loader_fs=$("#pf-fullscreen-loader"),$loader_os=$("#pf-onscreen-loader");if($target=="fullscreen")$target=$loader_fs;if($target=="onscreen")$target=$loader_os;if(typeof $target!=="undefined"){$target.remove();}else{$loader_fs.remove();$loader_os.remove();}}};jQuery.fn.disableForm=function(){$(this).data("disabled",true);$(":input",this).each(function(){$(this).attr("disabled",true);});return this;};jQuery.fn.enableForm=function(){$(this).data("disabled",false);$(":input",this).removeAttr("disabled");return this;};PF.obj.follow_scroll={Y:0,y:0,$node:$(".follow-scroll"),node_h:0,set:function(){var exists=PF.obj.follow_scroll.$node.closest(".follow-scroll-wrapper").exists();if(exists){PF.obj.follow_scroll.$node.closest(".follow-scroll-wrapper").css("position","static");}
PF.obj.follow_scroll.y=PF.obj.follow_scroll.$node.exists()?PF.obj.follow_scroll.$node.offset().top:null;PF.obj.follow_scroll.node_h=PF.obj.follow_scroll.$node.outerHeight();if(exists){PF.obj.follow_scroll.$node.closest(".follow-scroll-wrapper").css("position","");}},checkDocumentHeight:function(){var lastHeight=document.body.clientHeight,newHeight,timer;(function run(){newHeight=document.body.clientHeight;if(lastHeight!=newHeight)
PF.obj.follow_scroll.set();lastHeight=newHeight;timer=setTimeout(run,200);})();}};PF.obj.follow_scroll.set();PF.obj.follow_scroll.checkDocumentHeight();PF.obj.follow_scroll.process=function(){if(!PF.obj.follow_scroll.$node.exists()||PF.fn.isDevice("phone"))return;var $parent=PF.obj.follow_scroll.$node.closest("[data-content=follow-scroll-parent]");if(!$parent.exists()){$parent=PF.obj.follow_scroll.$node.closest(".content-width");}
var top=PF.obj.follow_scroll.node_h,cond=$(window).scrollTop()>PF.obj.follow_scroll.y-top;if($("#top-bar").css("position")!=="fixed"){PF.obj.follow_scroll.Y-=$(window).scrollTop();if(PF.obj.follow_scroll.Y<0)PF.obj.follow_scroll.Y=0;cond=cond&&$(window).scrollTop()>PF.obj.follow_scroll.y;}
var $wrapper=PF.obj.follow_scroll.$node.closest('.follow-scroll-wrapper');if((cond&&$wrapper.hasClass("position-fixed"))||(!cond&&!$wrapper.hasClass("position-fixed"))){return;}
if(!$wrapper.exists()){PF.obj.follow_scroll.$node.wrapAll('<div class="follow-scroll-wrapper" />');$wrapper=PF.obj.follow_scroll.$node.closest('.follow-scroll-wrapper');}
$wrapper.height(PF.obj.follow_scroll.node_h);PF.obj.follow_scroll.Y=$("#top-bar").outerHeight(true)+parseInt($("#top-bar").css("top"));if(cond){var placeholderHeight=PF.obj.follow_scroll.$node.outerHeight(true);$wrapper.addClass("position-fixed").css({top:PF.obj.follow_scroll.Y});if(!$wrapper.next().is(".follow-scroll-placeholder")){$wrapper.after($('<div class="follow-scroll-placeholder" />').css("height",placeholderHeight));}else{$wrapper.parent().find(".follow-scroll-placeholder").show();}}else{$wrapper.removeClass("position-fixed").css({top:"",width:"",height:""});$wrapper.parent().find(".follow-scroll-placeholder").hide();}
$("[data-show-on=follow-scroll]")[(cond?"remove":"add")+"Class"]("hidden soft-hidden");if(!$("html").data("top-bar-box-shadow-prevent")){$("html")[(cond?"add":"remove")+"Class"]("top-bar-box-shadow-none");}
PF.obj.follow_scroll.$node[(cond?"add":"remove")+"Class"]("content-width");};PF.fn.isDevice=function(device){if(typeof device=="object"){var device='.'+device.join(",.");}else{var device='.'+device;}
return $("html").is(device);};PF.fn.getDeviceName=function(){var current_device;$.each(PF.obj.devices,function(i,v){if(PF.fn.isDevice(v)){current_device=v;return true;}});return current_device;};PF.fn.topMenu={vars:{$button:$("[data-action=top-bar-menu-full]","#top-bar"),menu:"#menu-fullscreen",speed:PF.obj.config.animation.fast,menu_top:(parseInt($("#top-bar").outerHeight())+parseInt($("#top-bar").css("top"))+parseInt($("#top-bar").css("margin-top"))+parseInt($("#top-bar").css("margin-bottom"))-parseInt($("#top-bar").css("border-bottom-width")))+"px"},show:function(speed){if($("body").is(":animated"))return;if(typeof speed=="undefined"){var speed=this.vars.speed;}
this.vars.$button.addClass("current");$("html").addClass("menu-fullscreen-visible");$("#top-bar").css("position","fixed").append($("<div/>",{id:"menu-fullscreen","class":"touch-scroll",html:$('<ul/>',{html:$(".top-bar-left").html()+$(".top-bar-right").html()})}).css({borderTopWidth:this.vars.menu_top,left:"-100%",}));var $menu=$(this.vars.menu);$("li.phone-hide, li > .top-btn-text, li > .top-btn-text > span, li > a > .top-btn-text > span",$menu).each(function(){$(this).removeClass("phone-hide");});$("[data-action=top-bar-menu-full]",$menu).remove();$(".btn.black, .btn.default, .btn.blue, .btn.green, .btn.orange, .btn.red, .btn.transparent",$menu).removeClass("btn black default blue green orange red transparent");setTimeout(function(){$menu.css({transform:"translate(100%, 0)"});},1);setTimeout(function(){$("html").css({backgroundColor:""});},this.vars.speed);},hide:function(speed){if($("body").is(":animated"))return;if(!$(this.vars.menu).is(":visible"))return;if(typeof speed=="undefined"){var speed=this.vars.speed;}
$("#top-bar").css("position","");this.vars.$button.removeClass("current");$("html").removeClass("menu-fullscreen-visible");var $menu=$(this.vars.menu);$menu.css({transform:"none"});setTimeout(function(){$menu.remove();},speed);}};function sprintf(){var e=/%%|%(\d+\$)?([-+\'#0 ]*)(\*\d+\$|\*|\d+)?(\.(\*\d+\$|\*|\d+))?([scboxXuideEfFgG])/g;var t=arguments;var n=0;var r=t[n++];var i=function(e,t,n,r){if(!n){n=" "}var i=e.length>=t?"":(new Array(1+t-e.length>>>0)).join(n);return r?e+i:i+e};var s=function(e,t,n,r,s,o){var u=r-e.length;if(u>0){if(n||!s){e=i(e,r,o,n)}else{e=e.slice(0,t.length)+i("",u,"0",true)+e.slice(t.length)}}return e};var o=function(e,t,n,r,o,u,a){var f=e>>>0;n=n&&f&&{2:"0b",8:"0",16:"0x"}[t]||"";e=n+i(f.toString(t),u||0,"0",false);return s(e,n,r,o,a)};var u=function(e,t,n,r,i,o){if(r!=null){e=e.slice(0,r)}return s(e,"",t,n,i,o)};var a=function(e,r,a,f,l,c,h){var p,d,v,m,g;if(e==="%%"){return"%"}var y=false;var b="";var w=false;var E=false;var S=" ";var x=a.length;for(var T=0;a&&T<x;T++){switch(a.charAt(T)){case" ":b=" ";break;case"+":b="+";break;case"-":y=true;break;case"'":S=a.charAt(T+1);break;case"0":w=true;S="0";break;case"#":E=true;break}}if(!f){f=0}else if(f==="*"){f=+t[n++]}else if(f.charAt(0)=="*"){f=+t[f.slice(1,-1)]}else{f=+f}if(f<0){f=-f;y=true}if(!isFinite(f)){throw new Error("sprintf: (minimum-)width must be finite")}if(!c){c="fFeE".indexOf(h)>-1?6:h==="d"?0:undefined}else if(c==="*"){c=+t[n++]}else if(c.charAt(0)=="*"){c=+t[c.slice(1,-1)]}else{c=+c}g=r?t[r.slice(0,-1)]:t[n++];switch(h){case"s":return u(String(g),y,f,c,w,S);case"c":return u(String.fromCharCode(+g),y,f,c,w);case"b":return o(g,2,E,y,f,c,w);case"o":return o(g,8,E,y,f,c,w);case"x":return o(g,16,E,y,f,c,w);case"X":return o(g,16,E,y,f,c,w).toUpperCase();case"u":return o(g,10,E,y,f,c,w);case"i":case"d":p=+g||0;p=Math.round(p-p%1);d=p<0?"-":b;g=d+i(String(Math.abs(p)),c,"0",false);return s(g,d,y,f,w);case"e":case"E":case"f":case"F":case"g":case"G":p=+g;d=p<0?"-":b;v=["toExponential","toFixed","toPrecision"]["efg".indexOf(h.toLowerCase())];m=["toString","toUpperCase"]["eEfFgG".indexOf(h)%2];g=d+Math.abs(p)[v](c);return s(g,d,y,f,w)[m]();default:return e}};return r.replace(e,a)};!function(t,e){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",e):"object"==typeof module&&module.exports?module.exports=e():t.EvEmitter=e()}(this,function(){function t(){}var e=t.prototype;return e.on=function(t,e){if(t&&e){var i=this._events=this._events||{},n=i[t]=i[t]||[];return-1==n.indexOf(e)&&n.push(e),this}},e.once=function(t,e){if(t&&e){this.on(t,e);var i=this._onceEvents=this._onceEvents||{},n=i[t]=i[t]||[];return n[e]=!0,this}},e.off=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){var n=i.indexOf(e);return-1!=n&&i.splice(n,1),this}},e.emitEvent=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){var n=0,o=i[n];e=e||[];for(var r=this._onceEvents&&this._onceEvents[t];o;){var s=r&&r[o];s&&(this.off(t,o),delete r[o]),o.apply(this,e),n+=s?0:1,o=i[n]}return this}},t}),function(t,e){"use strict";"function"==typeof define&&define.amd?define(["ev-emitter/ev-emitter"],function(i){return e(t,i)}):"object"==typeof module&&module.exports?module.exports=e(t,require("ev-emitter")):t.imagesLoaded=e(t,t.EvEmitter)}(window,function(t,e){function i(t,e){for(var i in e)t[i]=e[i];return t}function n(t){var e=[];if(Array.isArray(t))e=t;else if("number"==typeof t.length)for(var i=0;i<t.length;i++)e.push(t[i]);else e.push(t);return e}function o(t,e,r){return this instanceof o?("string"==typeof t&&(t=document.querySelectorAll(t)),this.elements=n(t),this.options=i({},this.options),"function"==typeof e?r=e:i(this.options,e),r&&this.on("always",r),this.getImages(),h&&(this.jqDeferred=new h.Deferred),void setTimeout(function(){this.check()}.bind(this))):new o(t,e,r)}function r(t){this.img=t}function s(t,e){this.url=t,this.element=e,this.img=new Image}var h=t.jQuery,a=t.console;o.prototype=Object.create(e.prototype),o.prototype.options={},o.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImage
return e?(g.src=e,g):b.readFile(a,function(a){var b=a.target;b&&b.result?g.src=b.result:c&&c(a)})},c=window.createObjectURL&&window||window.URL&&URL.revokeObjectURL&&URL||window.webkitURL&&webkitURL;b.isInstanceOf=function(a,b){return Object.prototype.toString.call(b)==="[object "+a+"]"},b.transformCoordinates=function(){},b.getTransformedOptions=function(a,b){var c,d,e,f,g=b.aspectRatio;if(!g)return b;c={};for(d in b)b.hasOwnProperty(d)&&(c[d]=b[d]);return c.crop=!0,e=a.naturalWidth||a.width,f=a.naturalHeight||a.height,e / f>g?(c.maxWidth=f*g,c.maxHeight=f):(c.maxWidth=e,c.maxHeight=e / g),c},b.renderImageToCanvas=function(a,b,c,d,e,f,g,h,i,j){return a.getContext("2d").drawImage(b,c,d,e,f,g,h,i,j),a},b.hasCanvasOption=function(a){return a.canvas||a.crop||a.aspectRatio},b.scale=function(a,c){c=c||{};var d,e,f,g,h,i,j,k,l,m=document.createElement("canvas"),n=a.getContext||b.hasCanvasOption(c)&&m.getContext,o=a.naturalWidth||a.width,p=a.naturalHeight||a.height,q=o,r=p,s=function(){var a=Math.max((f||q)/ q,(g||r)/ r);a>1&&(q*=a,r*=a)},t=function(){var a=Math.min((d||q)/ q,(e||r)/ r);1>a&&(q*=a,r*=a)};return n&&(c=b.getTransformedOptions(a,c),j=c.left||0,k=c.top||0,c.sourceWidth?(h=c.sourceWidth,void 0!==c.right&&void 0===c.left&&(j=o-h-c.right)):h=o-j-(c.right||0),c.sourceHeight?(i=c.sourceHeight,void 0!==c.bottom&&void 0===c.top&&(k=p-i-c.bottom)):i=p-k-(c.bottom||0),q=h,r=i),d=c.maxWidth,e=c.maxHeight,f=c.minWidth,g=c.minHeight,n&&d&&e&&c.crop?(q=d,r=e,l=h / i-d / e,0>l?(i=e*h / d,void 0===c.top&&void 0===c.bottom&&(k=(p-i)/ 2)):l>0&&(h=d*i / e,void 0===c.left&&void 0===c.right&&(j=(o-h)/ 2))):((c.contain||c.cover)&&(f=d=d||f,g=e=e||g),c.cover?(t(),s()):(s(),t())),n?(m.width=q,m.height=r,b.transformCoordinates(m,c),b.renderImageToCanvas(m,a,j,k,h,i,0,0,q,r)):(a.width=q,a.height=r,a)},b.createObjectURL=function(a){return c?c.createObjectURL(a):!1},b.revokeObjectURL=function(a){return c?c.revokeObjectURL(a):!1},b.readFile=function(a,b,c){if(window.FileReader){var d=new FileReader;if(d.onload=d.onerror=b,c=c||"readAsDataURL",d[c])return d[c](a),d}
return!1},"function"==typeof define&&define.amd?define(function(){return b}):a.loadImage=b}(this),function(a){"use strict";"function"==typeof define&&define.amd?define(["load-image"],a):a(window.loadImage)}(function(a){"use strict";if(window.navigator&&window.navigator.platform&&/iP(hone|od|ad)/.test(window.navigator.platform)){var b=a.renderImageToCanvas;a.detectSubsampling=function(a){var b,c;return a.width*a.height>1048576?(b=document.createElement("canvas"),b.width=b.height=1,c=b.getContext("2d"),c.drawImage(a,-a.width+1,0),0===c.getImageData(0,0,1,1).data[3]):!1},a.detectVerticalSquash=function(a,b){var c,d,e,f,g,h=a.naturalHeight||a.height,i=document.createElement("canvas"),j=i.getContext("2d");for(b&&(h /=2),i.width=1,i.height=h,j.drawImage(a,0,0),c=j.getImageData(0,0,1,h).data,d=0,e=h,f=h;f>d;)g=c[4*(f-1)+3],0===g?e=f:d=f,f=e+d>>1;return f / h||1},a.renderImageToCanvas=function(c,d,e,f,g,h,i,j,k,l){if("image/jpeg"===d._type){var m,n,o,p,q=c.getContext("2d"),r=document.createElement("canvas"),s=1024,t=r.getContext("2d");if(r.width=s,r.height=s,q.save(),m=a.detectSubsampling(d),m&&(e /=2,f /=2,g /=2,h /=2),n=a.detectVerticalSquash(d,m),m||1!==n){for(f*=n,k=Math.ceil(s*k / g),l=Math.ceil(s*l / h / n),j=0,p=0;h>p;){for(i=0,o=0;g>o;)t.clearRect(0,0,s,s),t.drawImage(d,e,f,g,h,-o,-p,g,h),q.drawImage(r,0,0,s,s,i,j,k,l),o+=s,i+=k;p+=s,j+=l}
return q.restore(),c}}
return b(c,d,e,f,g,h,i,j,k,l)}}}),function(a){"use strict";"function"==typeof define&&define.amd?define(["load-image"],a):a(window.loadImage)}(function(a){"use strict";var b=a.hasCanvasOption,c=a.transformCoordinates,d=a.getTransformedOptions;a.hasCanvasOption=function(c){return b.call(a,c)||c.orientation},a.transformCoordinates=function(b,d){c.call(a,b,d);var e=b.getContext("2d"),f=b.width,g=b.height,h=d.orientation;if(h&&!(h>8))switch(h>4&&(b.width=g,b.height=f),h){case 2:e.translate(f,0),e.scale(-1,1);break;case 3:e.translate(f,g),e.rotate(Math.PI);break;case 4:e.translate(0,g),e.scale(1,-1);break;case 5:e.rotate(.5*Math.PI),e.scale(1,-1);break;case 6:e.rotate(.5*Math.PI),e.translate(0,-g);break;case 7:e.rotate(.5*Math.PI),e.translate(f,-g),e.scale(-1,1);break;case 8:e.rotate(-.5*Math.PI),e.translate(-f,0)}},a.getTransformedOptions=function(b,c){var e,f,g=d.call(a,b,c),h=g.orientation;if(!h||h>8||1===h)return g;e={};for(f in g)g.hasOwnProperty(f)&&(e[f]=g[f]);switch(g.orientation){case 2:e.left=g.right,e.right=g.left;break;case 3:e.left=g.right,e.top=g.bottom,e.right=g.left,e.bottom=g.top;break;case 4:e.top=g.bottom,e.bottom=g.top;break;case 5:e.left=g.top,e.top=g.left,e.right=g.bottom,e.bottom=g.right;break;case 6:e.left=g.top,e.top=g.right,e.right=g.bottom,e.bottom=g.left;break;case 7:e.left=g.bottom,e.top=g.right,e.right=g.top,e.bottom=g.left;break;case 8:e.left=g.bottom,e.top=g.left,e.right=g.top,e.bottom=g.right}
return g.orientation>4&&(e.maxWidth=g.maxHeight,e.maxHeight=g.maxWidth,e.minWidth=g.minHeight,e.minHeight=g.minWidth,e.sourceWidth=g.sourceHeight,e.sourceHeight=g.sourceWidth),e}}),function(a){"use strict";"function"==typeof define&&define.amd?define(["load-image"],a):a(window.loadImage)}(function(a){"use strict";var b=window.Blob&&(Blob.prototype.slice||Blob.prototype.webkitSlice||Blob.prototype.mozSlice);a.blobSlice=b&&function(){var a=this.slice||this.webkitSlice||this.mozSlice;return a.apply(this,arguments)},a.metaDataParsers={jpeg:{65505:[]}},a.parseMetaData=function(b,c,d){d=d||{};var e=this,f=d.maxMetaDataSize||262144,g={},h=!(window.DataView&&b&&b.size>=12&&a.blobSlice),t=b.type;(h||!a.readFile(a.blobSlice.call(b,0,f),function(b){if(b.target.error)return console.log(b.target.error),void c(g);var f,h,i,j,k=b.target.result,l=new DataView(k),m=2,n=l.byteLength-4,o=m;g.buffer=k;if("image/jpeg"!==t){c(g);return;};if(65496===l.getUint16(0)){for(;n>m&&(f=l.getUint16(m),f>=65504&&65519>=f||65534===f);){if(h=l.getUint16(m+2)+2,m+h>l.byteLength){console.log("Invalid meta data: Invalid segment size.");break}
if(i=a.metaDataParsers.jpeg[f])
for(j=0;j<i.length;j+=1)i[j].call(e,l,m,h,g,d);m+=h,o=m}!d.disableImageHead&&o>6&&(g.imageHead=k.slice?k.slice(0,o):new Uint8Array(k).subarray(0,o))}else console.log("Invalid JPEG file: Missing JPEG marker.");c(g)},"readAsArrayBuffer"))&&c(g)}}),function(a){"use strict";"function"==typeof define&&define.amd?define(["load-image","load-image-meta"],a):a(window.loadImage)}(function(a){"use strict";a.ExifMap=function(){return this},a.ExifMap.prototype.map={Orientation:274},a.ExifMap.prototype.get=function(a){return this[a]||this[this.map[a]]},a.getExifThumbnail=function(a,b,c){var d,e,f;if(!c||b+c>a.byteLength)return void console.log("Invalid Exif data: Invalid thumbnail data.");for(d=[],e=0;c>e;e+=1)f=a.getUint8(b+e),d.push((16>f?"0":"")+f.toString(16));return"data:image/jpeg,%"+d.join("%")},a.exifTagTypes={1:{getValue:function(a,b){return a.getUint8(b)},size:1},2:{getValue:function(a,b){return String.fromCharCode(a.getUint8(b))},size:1,ascii:!0},3:{getValue:function(a,b,c){return a.getUint16(b,c)},size:2},4:{getValue:function(a,b,c){return a.getUint32(b,c)},size:4},5:{getValue:function(a,b,c){return a.getUint32(b,c)/ a.getUint32(b+4,c)},size:8},9:{getValue:function(a,b,c){return a.getInt32(b,c)},size:4},10:{getValue:function(a,b,c){return a.getInt32(b,c)/ a.getInt32(b+4,c)},size:8}},a.exifTagTypes[7]=a.exifTagTypes[1],a.getExifValue=function(b,c,d,e,f,g){var h,i,j,k,l,m,n=a.exifTagTypes[e];if(!n)return void console.log("Invalid Exif data: Invalid tag type.");if(h=n.size*f,i=h>4?c+b.getUint32(d+8,g):d+8,i+h>b.byteLength)return void console.log("Invalid Exif data: Invalid data offset.");if(1===f)return n.getValue(b,i,g);for(j=[],k=0;f>k;k+=1)j[k]=n.getValue(b,i+k*n.size,g);if(n.ascii){for(l="",k=0;k<j.length&&(m=j[k],"\x00"!==m);k+=1)l+=m;return l}
return j},a.parseExifTag=function(b,c,d,e,f){var g=b.getUint16(d,e);f.exif[g]=a.getExifValue(b,c,d,b.getUint16(d+2,e),b.getUint32(d+4,e),e)},a.parseExifTags=function(a,b,c,d,e){var f,g,h;if(c+6>a.byteLength)return void console.log("Invalid Exif data: Invalid directory offset.");if(f=a.getUint16(c,d),g=c+2+12*f,g+4>a.byteLength)return void console.log("Invalid Exif data: Invalid directory size.");for(h=0;f>h;h+=1)this.parseExifTag(a,b,c+2+12*h,d,e);return a.getUint32(g,d)},a.parseExifData=function(b,c,d,e,f){if(!f.disableExif){var g,h,i,j=c+10;if(1165519206===b.getUint32(c+4)){if(j+8>b.byteLength)return void console.log("Invalid Exif data: Invalid segment size.");if(0!==b.getUint16(c+8))return void console.log("Invalid Exif data: Missing byte alignment offset.");switch(b.getUint16(j)){case 18761:g=!0;break;case 19789:g=!1;break;default:return void console.log("Invalid Exif data: Invalid byte alignment marker.")}
if(42!==b.getUint16(j+2,g))return void console.log("Invalid Exif data: Missing TIFF marker.");h=b.getUint32(j+4,g),e.exif=new a.ExifMap,h=a.parseExifTags(b,j,j+h,g,e),h&&!f.disableExifThumbnail&&(i={exif:{}},h=a.parseExifTags(b,j,j+h,g,i),i.exif[513]&&(e.exif.Thumbnail=a.getExifThumbnail(b,j+i.exif[513],i.exif[514]))),e.exif[34665]&&!f.disableExifSub&&a.parseExifTags(b,j,j+e.exif[34665],g,e),e.exif[34853]&&!f.disableExifGps&&a.parseExifTags(b,j,j+e.exif[34853],g,e)}}},a.metaDataParsers.jpeg[65505].push(a.parseExifData)}),function(a){"use strict";"function"==typeof define&&define.amd?define(["load-image","load-image-exif"],a):a(window.loadImage)}(function(a){"use strict";a.ExifMap.prototype.tags={256:"ImageWidth",257:"ImageHeight",34665:"ExifIFDPointer",34853:"GPSInfoIFDPointer",40965:"InteroperabilityIFDPointer",258:"BitsPerSample",259:"Compression",262:"PhotometricInterpretation",274:"Orientation",277:"SamplesPerPixel",284:"PlanarConfiguration",530:"YCbCrSubSampling",531:"YCbCrPositioning",282:"XResolution",283:"YResolution",296:"ResolutionUnit",273:"StripOffsets",278:"RowsPerStrip",279:"StripByteCounts",513:"JPEGInterchangeFormat",514:"JPEGInterchangeFormatLength",301:"TransferFunction",318:"WhitePoint",319:"PrimaryChromaticities",529:"YCbCrCoefficients",532:"ReferenceBlackWhite",306:"DateTime",270:"ImageDescription",271:"Make",272:"Model",305:"Software",315:"Artist",33432:"Copyright",36864:"ExifVersion",40960:"FlashpixVersion",40961:"ColorSpace",40962:"PixelXDimension",40963:"PixelYDimension",42240:"Gamma",37121:"ComponentsConfiguration",37122:"CompressedBitsPerPixel",37500:"MakerNote",37510:"UserComment",40964:"RelatedSoundFile",36867:"DateTimeOriginal",36868:"DateTimeDigitized",37520:"SubSecTime",37521:"SubSecTimeOriginal",37522:"SubSecTimeDigitized",33434:"ExposureTime",33437:"FNumber",34850:"ExposureProgram",34852:"SpectralSensitivity",34855:"PhotographicSensitivity",34856:"OECF",34864:"SensitivityType",34865:"StandardOutputSensitivity",34866:"RecommendedExposureIndex",34867:"ISOSpeed",34868:"ISOSpeedLatitudeyyy",34869:"ISOSpeedLatitudezzz",37377:"ShutterSpeedValue",37378:"ApertureValue",37379:"BrightnessValue",37380:"ExposureBias",37381:"MaxApertureValue",37382:"SubjectDistance",37383:"MeteringMode",37384:"LightSource",37385:"Flash",37396:"SubjectArea",37386:"FocalLength",41483:"FlashEnergy",41484:"SpatialFrequencyResponse",41486:"FocalPlaneXResolution",41487:"FocalPlaneYResolution",41488:"FocalPlaneResolutionUnit",41492:"SubjectLocation",41493:"ExposureIndex",41495:"SensingMethod",41728:"FileSource",41729:"SceneType",41730:"CFAPattern",41985:"CustomRendered",41986:"ExposureMode",41987:"WhiteBalance",41988:"DigitalZoomRatio",41989:"FocalLengthIn35mmFilm",41990:"SceneCaptureType",41991:"GainControl",41992:"Contrast",41993:"Saturation",41994:"Sharpness",41995:"DeviceSettingDescription",41996:"SubjectDistanceRange",42016:"ImageUniqueID",42032:"CameraOwnerName",42033:"BodySerialNumber",42034:"LensSpecification",42035:"LensMake",42036:"LensModel",42037:"LensSerialNumber",0:"GPSVersionID",1:"GPSLatitudeRef",2:"GPSLatitude",3:"GPSLongitudeRef",4:"GPSLongitude",5:"GPSAltitudeRef",6:"GPSAltitude",7:"GPSTimeStamp",8:"GPSSatellites",9:"GPSStatus",10:"GPSMeasureMode",11:"GPSDOP",12:"GPSSpeedRef",13:"GPSSpeed",14:"GPSTrackRef",15:"GPSTrack",16:"GPSImgDirectionRef",17:"GPSImgDirection",18:"GPSMapDatum",19:"GPSDestLatitudeRef",20:"GPSDestLatitude",21:"GPSDestLongitudeRef",22:"GPSDestLongitude",23:"GPSDestBearingRef",24:"GPSDestBearing",25:"GPSDestDistanceRef",26:"GPSDestDistance",27:"GPSProcessingMethod",28:"GPSAreaInformation",29:"GPSDateStamp",30:"GPSDifferential",31:"GPSHPositioningError"},a.ExifMap.prototype.stringValues={ExposureProgram:{0:"Undefined",1:"Manual",2:"Normal program",3:"Aperture priority",4:"Shutter priority",5:"Creative program",6:"Action program",7:"Portrait mode",8:"Landscape mode"},MeteringMode:{0:"Unknown",1:"Average",2:"CenterWeightedAverage",3:"Spot",4:"MultiSpot",5:"Pattern",6:"Partial",255:"Other"},LightSource:{0:"Unknown",1:"Daylight",2:"Fluorescent",3:"Tungsten (incandescent light)",4:"Flash",9:"F
return String(b)},function(a){var b,c=a.tags,d=a.map;for(b in c)c.hasOwnProperty(b)&&(d[c[b]]=b)}(a.ExifMap.prototype),a.ExifMap.prototype.getAll=function(){var a,b,c={};for(a in this)this.hasOwnProperty(a)&&(b=this.tags[a],b&&(c[b]=this.getText(b)));return c}});typeof JSON!="object"&&(JSON={}),function(){"use strict";function f(e){return e<10?"0"+e:e}function quote(e){return escapable.lastIndex=0,escapable.test(e)?'"'+e.replace(escapable,function(e){var t=meta[e];return typeof t=="string"?t:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+e+'"'}function str(e,t){var n,r,i,s,o=gap,u,a=t[e];a&&typeof a=="object"&&typeof a.toJSON=="function"&&(a=a.toJSON(e)),typeof rep=="function"&&(a=rep.call(t,e,a));switch(typeof a){case"string":return quote(a);case"number":return isFinite(a)?String(a):"null";case"boolean":case"null":return String(a);case"object":if(!a)return"null";gap+=indent,u=[];if(Object.prototype.toString.apply(a)==="[object Array]"){s=a.length;for(n=0;n<s;n+=1)u[n]=str(n,a)||"null";return i=u.length===0?"[]":gap?"[\n"+gap+u.join(",\n"+gap)+"\n"+o+"]":"["+u.join(",")+"]",gap=o,i}if(rep&&typeof rep=="object"){s=rep.length;for(n=0;n<s;n+=1)typeof rep[n]=="string"&&(r=rep[n],i=str(r,a),i&&u.push(quote(r)+(gap?": ":":")+i))}else for(r in a)Object.prototype.hasOwnProperty.call(a,r)&&(i=str(r,a),i&&u.push(quote(r)+(gap?": ":":")+i));return i=u.length===0?"{}":gap?"{\n"+gap+u.join(",\n"+gap)+"\n"+o+"}":"{"+u.join(",")+"}",gap=o,i}}typeof Date.prototype.toJSON!="function"&&(Date.prototype.toJSON=function(e){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+f(this.getUTCMonth()+1)+"-"+f(this.getUTCDate())+"T"+f(this.getUTCHours())+":"+f(this.getUTCMinutes())+":"+f(this.getUTCSeconds())+"Z":null},String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(e){return this.valueOf()});var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},rep;typeof JSON.stringify!="function"&&(JSON.stringify=function(e,t,n){var r;gap="",indent="";if(typeof n=="number")for(r=0;r<n;r+=1)indent+=" ";else typeof n=="string"&&(indent=n);rep=t;if(!t||typeof t=="function"||typeof t=="object"&&typeof t.length=="number")return str("",{"":e});throw new Error("JSON.stringify")}),typeof JSON.parse!="function"&&(JSON.parse=function(text,reviver){function walk(e,t){var n,r,i=e[t];if(i&&typeof i=="object")for(n in i)Object.prototype.hasOwnProperty.call(i,n)&&(r=walk(i,n),r!==undefined?i[n]=r:delete i[n]);return reviver.call(e,t,i)}var j;text=String(text),cx.lastIndex=0,cx.test(text)&&(text=text.replace(cx,function(e){return"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)}));if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return j=eval("("+text+")"),typeof reviver=="function"?walk({"":j},""):j;throw new SyntaxError("JSON.parse")})}(),function(e,t){"use strict";var n=e.History=e.History||{},r=e.jQuery;if(typeof n.Adapter!="undefined")throw new Error("History.js Adapter has already been loaded...");n.Adapter={bind:function(e,t,n){r(e).bind(t,n)},trigger:function(e,t,n){r(e).trigger(t,n)},extractEventData:function(e,n,r){var i=n&&n.originalEvent&&n.originalEvent[e]||r&&r[e]||t;return i},onDomLoad:function(e){r(e)}},typeof n.init!="undefined"&&n.init()}(window),function(e,t){"use strict";var n=e.document,r=e.setTimeout||r,i=e.clearTimeout||i,s=e.setInterval||s,o=e.History=e.History||{};if(typeof o.initHtml4!="undefined")throw new Error("History.js HTML4 Support has already been loaded...");o.initHtml4=function(){if(typeof o.initHtml4.initialized!="undefined")return!1;o.initHtml4.initialized=!0,o.enabled=!0,o.savedHashes=[],o.isLastHash=function(e){var t=o.getHashByIndex(),n;return n=e===t
barWidth)};Scrollbar.Horizontal.prototype.mousewheel=function(ev,delta,x,y){if(x<0&&0==this.pane.inner.get(0).scrollLeft||x>0&&this.innerEl.scrollLeft+Math.ceil(this.pane.el.width())==this.innerEl.scrollWidth){ev.preventDefault();return false}};Scrollbar.Vertical=function(pane){this.el=$('<div class="antiscroll-scrollbar antiscroll-scrollbar-vertical">',pane.el);Scrollbar.call(this,pane)};inherits(Scrollbar.Vertical,Scrollbar);Scrollbar.Vertical.prototype.update=function(){var paneHeight=this.pane.el.height(),trackHeight=paneHeight-this.pane.padding*2,innerEl=this.innerEl;var scrollbarHeight=trackHeight*paneHeight/innerEl.scrollHeight;scrollbarHeight=scrollbarHeight<20?20:scrollbarHeight;var topPos=trackHeight*innerEl.scrollTop/innerEl.scrollHeight;if(topPos+scrollbarHeight>trackHeight){var diff=topPos+scrollbarHeight-trackHeight;topPos=topPos-diff-3}this.el.css("height",scrollbarHeight).css("top",topPos);return paneHeight<innerEl.scrollHeight};Scrollbar.Vertical.prototype.mousemove=function(ev){var paneHeight=this.pane.el.height(),trackHeight=paneHeight-this.pane.padding*2,pos=ev.pageY-this.startPageY,barHeight=this.el.height(),innerEl=this.innerEl;var y=Math.min(Math.max(pos,0),trackHeight-barHeight);innerEl.scrollTop=(innerEl.scrollHeight-paneHeight)*y/(trackHeight-barHeight)};Scrollbar.Vertical.prototype.mousewheel=function(ev,delta,x,y){if(y>0&&0==this.innerEl.scrollTop||y<0&&this.innerEl.scrollTop+Math.ceil(this.pane.el.height())==this.innerEl.scrollHeight){ev.preventDefault();return false}};function inherits(ctorA,ctorB){function f(){}f.prototype=ctorB.prototype;ctorA.prototype=new f}var size;function scrollbarSize(){if(size===undefined){var div=$('<div class="antiscroll-inner" style="width:50px;height:50px;overflow-y:scroll;'+'position:absolute;top:-200px;left:-200px;"><div style="height:100px;width:100%">'+"</div>");$("body").append(div);var w1=$(div).innerWidth();var w2=$("div",div).innerWidth();$(div).remove();size=w1-w2}return size}})(jQuery);(function(factory){if(typeof define==="function"&&define.amd)define(["jquery"],factory);else if(typeof exports==="object")module.exports=factory;else factory(jQuery)})(function($){var toFix=["wheel","mousewheel","DOMMouseScroll","MozMousePixelScroll"];var toBind="onwheel"in document||document.documentMode>=9?["wheel"]:["mousewheel","DomMouseScroll","MozMousePixelScroll"];var lowestDelta,lowestDeltaXY;if($.event.fixHooks)for(var i=toFix.length;i;)$.event.fixHooks[toFix[--i]]=$.event.mouseHooks;$.event.special.mousewheel={setup:function(){if(this.addEventListener)for(var i=toBind.length;i;)this.addEventListener(toBind[--i],handler,false);else this.onmousewheel=handler},teardown:function(){if(this.removeEventListener)for(var i=toBind.length;i;)this.removeEventListener(toBind[--i],handler,false);else this.onmousewheel=null}};$.fn.extend({mousewheel:function(fn){return fn?this.bind("mousewheel",fn):this.trigger("mousewheel")},unmousewheel:function(fn){return this.unbind("mousewheel",fn)}});function handler(event){var orgEvent=event||window.event,args=[].slice.call(arguments,1),delta=0,deltaX=0,deltaY=0,absDelta=0,absDeltaXY=0,fn;event=$.event.fix(orgEvent);event.type="mousewheel";if(orgEvent.wheelDelta)delta=orgEvent.wheelDelta;if(orgEvent.detail)delta=orgEvent.detail*-1;if(orgEvent.deltaY){deltaY=orgEvent.deltaY*-1;delta=deltaY}if(orgEvent.deltaX){deltaX=orgEvent.deltaX;delta=deltaX*-1}if(orgEvent.wheelDeltaY!==undefined)deltaY=orgEvent.wheelDeltaY;if(orgEvent.wheelDeltaX!==undefined)deltaX=orgEvent.wheelDeltaX*-1;absDelta=Math.abs(delta);if(!lowestDelta||absDelta<lowestDelta)lowestDelta=absDelta;absDeltaXY=Math.max(Math.abs(deltaY),Math.abs(deltaX));if(!lowestDeltaXY||absDeltaXY<lowestDeltaXY)lowestDeltaXY=absDeltaXY;fn=delta>0?"floor":"ceil";delta=Math[fn](delta/lowestDelta);deltaX=Math[fn](deltaX/lowestDeltaXY);deltaY=Math[fn](deltaY/lowestDeltaXY);args.unshift(event,delta,deltaX,deltaY);return($.event.dispatch||$.event.handle).apply(this,args)}});(function($){$.fn.delayedAction=function(options)
{var settings=$.extend({},{delayedAction:function(){},cancelledAction:function(){},hoverTime:1000},options);return this.each(function(){var $this=$(this);$this.hover(function(){$this.data('timerId',setTimeout(function(){$this.data('hover',false);settings.delayedAction($this);},settings.hoverTime));$this.data('hover',true);},function(){if($this.data('hover')){clearTimeout($this.data('timerId'));settings.cancelledAction($this);}
$this.data('hover',false);});});}})(jQuery);function testPassword(e){var t=0,n="weak",r="",i=0;if(e.length<5){t=t+3;r=r+"3 points for length ("+e.length+")\n"}else if(e.length>4&&e.length<8){t=t+6;r=r+"6 points for length ("+e.length+")\n"}else if(e.length>7&&e.length<16){t=t+12;r=r+"12 points for length ("+e.length+")\n"}else if(e.length>15){t=t+18;r=r+"18 point for length ("+e.length+")\n"}if(e.match(/[a-z]/)){t=t+1;r=r+"1 point for at least one lower case char\n"}if(e.match(/[A-Z]/)){t=t+5;r=r+"5 points for at least one upper case char\n"}if(e.match(/\d+/)){t=t+5;r=r+"5 points for at least one number\n"}if(e.match(/(.*[0-9].*[0-9].*[0-9])/)){t=t+5;r=r+"5 points for at least three numbers\n"}if(e.match(/.[!,@,#,$,%,^,&,*,?,_,~]/)){t=t+5;r=r+"5 points for at least one special char\n"}if(e.match(/(.*[!,@,#,$,%,^,&,*,?,_,~].*[!,@,#,$,%,^,&,*,?,_,~])/)){t=t+5;r=r+"5 points for at least two special chars\n"}if(e.match(/([a-z].*[A-Z])|([A-Z].*[a-z])/)){t=t+2;r=r+"2 combo points for upper and lower letters\n"}if(e.match(/([a-zA-Z])/)&&e.match(/([0-9])/)){t=t+2;r=r+"2 combo points for letters and numbers\n"}if(e.match(/([a-zA-Z0-9].*[!,@,#,$,%,^,&,*,?,_,~])|([!,@,#,$,%,^,&,*,?,_,~].*[a-zA-Z0-9])/)){t=t+2;r=r+"2 combo points for letters, numbers and special chars\n"}if(e.length==0){t=0}if(t<16){n="very weak"}else if(t>15&&t<25){n="weak"}else if(t>24&&t<35){n="average"}else if(t>34&&t<45){n="strong"}else{n="stronger"}i=Math.round(Math.min(100,100*t/45))/100;return{score:t,ratio:i,percent:i*100+"%",verdict:n,log:r}}
(function(factory){if(typeof exports==="object"){module.exports=factory()}else if(typeof define==="function"&&define.amd){define(factory)}else{var glob;try{glob=window}catch(e){glob=self}glob.SparkMD5=factory()}})(function(undefined){"use strict";var add32=function(a,b){return a+b&4294967295},hex_chr=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];function cmn(q,a,b,x,s,t){a=add32(add32(a,q),add32(x,t));return add32(a<<s|a>>>32-s,b)}function ff(a,b,c,d,x,s,t){return cmn(b&c|~b&d,a,b,x,s,t)}function gg(a,b,c,d,x,s,t){return cmn(b&d|c&~d,a,b,x,s,t)}function hh(a,b,c,d,x,s,t){return cmn(b^c^d,a,b,x,s,t)}function ii(a,b,c,d,x,s,t){return cmn(c^(b|~d),a,b,x,s,t)}function md5cycle(x,k){var a=x[0],b=x[1],c=x[2],d=x[3];a=ff(a,b,c,d,k[0],7,-680876936);d=ff(d,a,b,c,k[1],12,-389564586);c=ff(c,d,a,b,k[2],17,606105819);b=ff(b,c,d,a,k[3],22,-1044525330);a=ff(a,b,c,d,k[4],7,-176418897);d=ff(d,a,b,c,k[5],12,1200080426);c=ff(c,d,a,b,k[6],17,-1473231341);b=ff(b,c,d,a,k[7],22,-45705983);a=ff(a,b,c,d,k[8],7,1770035416);d=ff(d,a,b,c,k[9],12,-1958414417);c=ff(c,d,a,b,k[10],17,-42063);b=ff(b,c,d,a,k[11],22,-1990404162);a=ff(a,b,c,d,k[12],7,1804603682);d=ff(d,a,b,c,k[13],12,-40341101);c=ff(c,d,a,b,k[14],17,-1502002290);b=ff(b,c,d,a,k[15],22,1236535329);a=gg(a,b,c,d,k[1],5,-165796510);d=gg(d,a,b,c,k[6],9,-1069501632);c=gg(c,d,a,b,k[11],14,643717713);b=gg(b,c,d,a,k[0],20,-373897302);a=gg(a,b,c,d,k[5],5,-701558691);d=gg(d,a,b,c,k[10],9,38016083);c=gg(c,d,a,b,k[15],14,-660478335);b=gg(b,c,d,a,k[4],20,-405537848);a=gg(a,b,c,d,k[9],5,568446438);d=gg(d,a,b,c,k[14],9,-1019803690);c=gg(c,d,a,b,k[3],14,-187363961);b=gg(b,c,d,a,k[8],20,1163531501);a=gg(a,b,c,d,k[13],5,-1444681467);d=gg(d,a,b,c,k[2],9,-51403784);c=gg(c,d,a,b,k[7],14,1735328473);b=gg(b,c,d,a,k[12],20,-1926607734);a=hh(a,b,c,d,k[5],4,-378558);d=hh(d,a,b,c,k[8],11,-2022574463);c=hh(c,d,a,b,k[11],16,1839030562);b=hh(b,c,d,a,k[14],23,-35309556);a=hh(a,b,c,d,k[1],4,-1530992060);d=hh(d,a,b,c,k[4],11,1272893353);c=hh(c,d,a,b,k[7],16,-155497632);b=hh(b,c,d,a,k[10],23,-1094730640);a=hh(a,b,c,d,k[13],4,681279174);d=hh(d,a,b,c,k[0],11,-358537222);c=hh(c,d,a,b,k[3],16,-722521979);b=hh(b,c,d,a,k[6],23,76029189);a=hh(a,b,c,d,k[9],4,-640364487);d=hh(d,a,b,c,k[12],11,-421815835);c=hh(c,d,a,b,k[15],16,530742520);b=hh(b,c,d,a,k[2],23,-995338651);a=ii(a,b,c,d,k[0],6,-198630844);d=ii(d,a,b,c,k[7],10,1126891415);c=ii(c,d,a,b,k[14],15,-1416354905);b=ii(b,c,d,a,k[5],21,-57434055);a=ii(a,b,c,d,k[12],6,1700485571);d=ii(d,a,b,c,k[3],10,-1894986606);c=ii(c,d,a,b,k[10],15,-1051523);b=ii(b,c,d,a,k[1],21,-2054922799);a=ii(a,b,c,d,k[8],6,1873313359);d=ii(d,a,b,c,k[15],10,-30611744);c=ii(c,d,a,b,k[6],15,-1560198380);b=ii(b,c,d,a,k[13],21,1309151649);a=ii(a,b,c,d,k[4],6,-145523070);d=ii(d,a,b,c,k[11],10,-1120210379);c=ii(c,d,a,b,k[2],15,718787259);b=ii(b,c,d,a,k[9],21,-343485551);x[0]=add32(a,x[0]);x[1]=add32(b,x[1]);x[2]=add32(c,x[2]);x[3]=add32(d,x[3])}function md5blk(s){var md5blks=[],i;for(i=0;i<64;i+=4){md5blks[i>>2]=s.charCodeAt(i)+(s.charCodeAt(i+1)<<8)+(s.charCodeAt(i+2)<<16)+(s.charCodeAt(i+3)<<24)}return md5blks}function md5blk_array(a){var md5blks=[],i;for(i=0;i<64;i+=4){md5blks[i>>2]=a[i]+(a[i+1]<<8)+(a[i+2]<<16)+(a[i+3]<<24)}return md5blks}function md51(s){var n=s.length,state=[1732584193,-271733879,-1732584194,271733878],i,length,tail,tmp,lo,hi;for(i=64;i<=n;i+=64){md5cycle(state,md5blk(s.substring(i-64,i)))}s=s.substring(i-64);length=s.length;tail=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(i=0;i<length;i+=1){tail[i>>2]|=s.charCodeAt(i)<<(i%4<<3)}tail[i>>2]|=128<<(i%4<<3);if(i>55){md5cycle(state,tail);for(i=0;i<16;i+=1){tail[i]=0}}tmp=n*8;tmp=tmp.toString(16).match(/(.*?)(.{0,8})$/);lo=parseInt(tmp[2],16);hi=parseInt(tmp[1],16)||0;tail[14]=lo;tail[15]=hi;md5cycle(state,tail);return state}function md51_array(a){var n=a.length,state=[1732584193,-271733879,-1732584194,271733878],i,length,tail,tmp,lo,hi;for(i=64;i<=n;i+=64){md5cycle(state,md5blk_array(a.subarray(i-64,i)))}a=i-64<n?a.subarray(i-64):new Uint8Array(0);length=a.length;tail=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(i=0;i<length;i+=1){tail[i>