(function(){var root=(typeof self==='object'&&self.self===self&&self)||(typeof global==='object'&&global.global===global&&global);var previousUnderscore=root._;var ArrayProto=Array.prototype,ObjProto=Object.prototype,FuncProto=Function.prototype;var push=ArrayProto.push,slice=ArrayProto.slice,toString=ObjProto.toString,hasOwnProperty=ObjProto.hasOwnProperty;var nativeIsArray=Array.isArray,nativeKeys=Object.keys,nativeBind=FuncProto.bind,nativeCreate=Object.create;var Ctor=function(){};var _=function(obj){if(obj instanceof _)return obj;if(!(this instanceof _))return new _(obj);this._wrapped=obj;};if(typeof exports!=='undefined'){if(typeof module!=='undefined'&&module.exports){exports=module.exports=_;} exports._=_;}else{root._=_;} _.VERSION='1.8.3';var optimizeCb=function(func,context,argCount){if(context===void 0)return func;switch(argCount==null?3:argCount){case 1:return function(value){return func.call(context,value);};case 2:return function(value,other){return func.call(context,value,other);};case 3:return function(value,index,collection){return func.call(context,value,index,collection);};case 4:return function(accumulator,value,index,collection){return func.call(context,accumulator,value,index,collection);};} return function(){return func.apply(context,arguments);};};var cb=function(value,context,argCount){if(value==null)return _.identity;if(_.isFunction(value))return optimizeCb(value,context,argCount);if(_.isObject(value))return _.matcher(value);return _.property(value);};_.iteratee=function(value,context){return cb(value,context,Infinity);};var restArgs=function(func,startIndex){startIndex=startIndex==null?func.length-1:+startIndex;return function(){var length=Math.max(arguments.length-startIndex,0);var rest=Array(length);for(var index=0;index=0&&length<=MAX_ARRAY_INDEX;};_.each=_.forEach=function(obj,iteratee,context){iteratee=optimizeCb(iteratee,context);var i,length;if(isArrayLike(obj)){for(i=0,length=obj.length;i0?0:length-1;if(!initial){memo=obj[keys?keys[index]:index];index+=dir;} for(;index>=0&&index=3;return reducer(obj,optimizeCb(iteratee,context,4),memo,initial);};};_.reduce=_.foldl=_.inject=createReduce(1);_.reduceRight=_.foldr=createReduce(-1);_.find=_.detect=function(obj,predicate,context){var key;if(isArrayLike(obj)){key=_.findIndex(obj,predicate,context);}else{key=_.findKey(obj,predicate,context);} if(key!==void 0&&key!==-1)return obj[key];};_.filter=_.select=function(obj,predicate,context){var results=[];predicate=cb(predicate,context);_.each(obj,function(value,index,list){if(predicate(value,index,list))results.push(value);});return results;};_.reject=function(obj,predicate,context){return _.filter(obj,_.negate(cb(predicate)),context);};_.every=_.all=function(obj,predicate,context){predicate=cb(predicate,context);var keys=!isArrayLike(obj)&&_.keys(obj),length=(keys||obj).length;for(var index=0;index=0;};_.invoke=restArgs(function(obj,method,args){var isFunc=_.isFunction(method);return _.map(obj,function(value){var func=isFunc?method:value[method];return func==null?func:func.apply(value,args);});});_.pluck=function(obj,key){return _.map(obj,_.property(key));};_.where=function(obj,attrs){return _.filter(obj,_.matcher(attrs));};_.findWhere=function(obj,attrs){return _.find(obj,_.matcher(attrs));};_.max=function(obj,iteratee,context){var result=-Infinity,lastComputed=-Infinity,value,computed;if(iteratee==null&&obj!=null){obj=isArrayLike(obj)?obj:_.values(obj);for(var i=0,length=obj.length;iresult){result=value;}}}else{iteratee=cb(iteratee,context);_.each(obj,function(value,index,list){computed=iteratee(value,index,list);if(computed>lastComputed||computed===-Infinity&&result===-Infinity){result=value;lastComputed=computed;}});} return result;};_.min=function(obj,iteratee,context){var result=Infinity,lastComputed=Infinity,value,computed;if(iteratee==null&&obj!=null){obj=isArrayLike(obj)?obj:_.values(obj);for(var i=0,length=obj.length;ilength-n-1;index--){rand=_.random(0,index);temp=sample[index];sample[index]=sample[rand];sample[rand]=temp;} return sample.slice(length-n);};_.sortBy=function(obj,iteratee,context){iteratee=cb(iteratee,context);return _.pluck(_.map(obj,function(value,index,list){return{value:value,index:index,criteria:iteratee(value,index,list)};}).sort(function(left,right){var a=left.criteria;var b=right.criteria;if(a!==b){if(a>b||a===void 0)return 1;if(a0?0:length-1;for(;index>=0&&index0){i=idx>=0?idx:Math.max(idx+length,i);}else{length=idx>=0?Math.min(idx+1,length):idx+length+1;}}else if(sortedIndex&&idx&&length){idx=sortedIndex(array,item);return array[idx]===item?idx:-1;} if(item!==item){idx=predicateFind(slice.call(array,i,length),_.isNaN);return idx>=0?idx+i:-1;} for(idx=dir>0?i:length-1;idx>=0&&idxwait){if(timeout){clearTimeout(timeout);timeout=null;} previous=now;result=func.apply(context,args);if(!timeout)context=args=null;}else if(!timeout&&options.trailing!==false){timeout=setTimeout(later,remaining);} return result;};};_.debounce=function(func,wait,immediate){var timeout,args,context,timestamp,result;var later=function(){var last=_.now()-timestamp;if(last=0){timeout=setTimeout(later,wait-last);}else{timeout=null;if(!immediate){result=func.apply(context,args);if(!timeout)context=args=null;}}};return function(){context=this;args=arguments;timestamp=_.now();var callNow=immediate&&!timeout;if(!timeout)timeout=setTimeout(later,wait);if(callNow){result=func.apply(context,args);context=args=null;} return result;};};_.wrap=function(func,wrapper){return _.partial(wrapper,func);};_.negate=function(predicate){return function(){return!predicate.apply(this,arguments);};};_.compose=function(){var args=arguments;var start=args.length-1;return function(){var i=start;var result=args[start].apply(this,arguments);while(i--)result=args[i].call(this,result);return result;};};_.after=function(times,func){return function(){if(--times<1){return func.apply(this,arguments);}};};_.before=function(times,func){var memo;return function(){if(--times>0){memo=func.apply(this,arguments);} if(times<=1)func=null;return memo;};};_.once=_.partial(_.before,2);_.restArgs=restArgs;var hasEnumBug=!{toString:null}.propertyIsEnumerable('toString');var nonEnumerableProps=['valueOf','isPrototypeOf','toString','propertyIsEnumerable','hasOwnProperty','toLocaleString'];var collectNonEnumProps=function(obj,keys){var nonEnumIdx=nonEnumerableProps.length;var constructor=obj.constructor;var proto=(_.isFunction(constructor)&&constructor.prototype)||ObjProto;var prop='constructor';if(_.has(obj,prop)&&!_.contains(keys,prop))keys.push(prop);while(nonEnumIdx--){prop=nonEnumerableProps[nonEnumIdx];if(prop in obj&&obj[prop]!==proto[prop]&&!_.contains(keys,prop)){keys.push(prop);}}};_.keys=function(obj){if(!_.isObject(obj))return[];if(nativeKeys)return nativeKeys(obj);var keys=[];for(var key in obj)if(_.has(obj,key))keys.push(key);if(hasEnumBug)collectNonEnumProps(obj,keys);return keys;};_.allKeys=function(obj){if(!_.isObject(obj))return[];var keys=[];for(var key in obj)keys.push(key);if(hasEnumBug)collectNonEnumProps(obj,keys);return keys;};_.values=function(obj){var keys=_.keys(obj);var length=keys.length;var values=Array(length);for(var i=0;i1)iteratee=optimizeCb(iteratee,keys[1]);keys=_.allKeys(obj);}else{iteratee=keyInObj;keys=flatten(keys,false,false);obj=Object(obj);} for(var i=0,length=keys.length;i1)context=keys[1];}else{keys=_.map(flatten(keys,false,false),String);iteratee=function(value,key){return!_.contains(keys,key);};} return _.pick(obj,iteratee,context);});_.defaults=createAssigner(_.allKeys,true);_.create=function(prototype,props){var result=baseCreate(prototype);if(props)_.extendOwn(result,props);return result;};_.clone=function(obj){if(!_.isObject(obj))return obj;return _.isArray(obj)?obj.slice():_.extend({},obj);};_.tap=function(obj,interceptor){interceptor(obj);return obj;};_.isMatch=function(object,attrs){var keys=_.keys(attrs),length=keys.length;if(object==null)return!length;var obj=Object(object);for(var i=0;i':'>','"':'"',"'":''','`':'`'};var unescapeMap=_.invert(escapeMap);var createEscaper=function(map){var escaper=function(match){return map[match];};var source='(?:'+_.keys(map).join('|')+')';var testRegexp=RegExp(source);var replaceRegexp=RegExp(source,'g');return function(string){string=string==null?'':''+string;return testRegexp.test(string)?string.replace(replaceRegexp,escaper):string;};};_.escape=createEscaper(escapeMap);_.unescape=createEscaper(unescapeMap);_.result=function(object,property,fallback){var value=object==null?void 0:object[property];if(value===void 0){value=fallback;} return _.isFunction(value)?value.call(object):value;};var idCounter=0;_.uniqueId=function(prefix){var id=++idCounter+'';return prefix?prefix+id:id;};_.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var noMatch=/(.)^/;var escapes={"'":"'",'\\':'\\','\r':'r','\n':'n','\u2028':'u2028','\u2029':'u2029'};var escaper=/\\|'|\r|\n|\u2028|\u2029/g;var escapeChar=function(match){return'\\'+escapes[match];};_.template=function(text,settings,oldSettings){if(!settings&&oldSettings)settings=oldSettings;settings=_.defaults({},settings,_.templateSettings);var matcher=RegExp([(settings.escape||noMatch).source,(settings.interpolate||noMatch).source,(settings.evaluate||noMatch).source].join('|')+'|$','g');var index=0;var source="__p+='";text.replace(matcher,function(match,escape,interpolate,evaluate,offset){source+=text.slice(index,offset).replace(escaper,escapeChar);index=offset+match.length;if(escape){source+="'+\n((__t=("+escape+"))==null?'':_.escape(__t))+\n'";}else if(interpolate){source+="'+\n((__t=("+interpolate+"))==null?'':__t)+\n'";}else if(evaluate){source+="';\n"+evaluate+"\n__p+='";} return match;});source+="';\n";if(!settings.variable)source='with(obj||{}){\n'+source+'}\n';source="var __t,__p='',__j=Array.prototype.join,"+"print=function(){__p+=__j.call(arguments,'');};\n"+ source+'return __p;\n';try{var render=new Function(settings.variable||'obj','_',source);}catch(e){e.source=source;throw e;} var template=function(data){return render.call(this,data,_);};var argument=settings.variable||'obj';template.source='function('+argument+'){\n'+source+'}';return template;};_.chain=function(obj){var instance=_(obj);instance._chain=true;return instance;};var result=function(instance,obj){return instance._chain?_(obj).chain():obj;};_.mixin=function(obj){_.each(_.functions(obj),function(name){var func=_[name]=obj[name];_.prototype[name]=function(){var args=[this._wrapped];push.apply(args,arguments);return result(this,func.apply(_,args));};});};_.mixin(_);_.each(['pop','push','reverse','shift','sort','splice','unshift'],function(name){var method=ArrayProto[name];_.prototype[name]=function(){var obj=this._wrapped;method.apply(obj,arguments);if((name==='shift'||name==='splice')&&obj.length===0)delete obj[0];return result(this,obj);};});_.each(['concat','join','slice'],function(name){var method=ArrayProto[name];_.prototype[name]=function(){return result(this,method.apply(this._wrapped,arguments));};});_.prototype.value=function(){return this._wrapped;};_.prototype.valueOf=_.prototype.toJSON=_.prototype.value;_.prototype.toString=function(){return''+this._wrapped;};if(typeof define==='function'&&define.amd){define('underscore',[],function(){return _;});}}()); ;(function(factory){if(typeof define==='function'&&define.amd){define(['jquery'],factory);}else if(typeof exports==='object'){module.exports=factory(require('jquery'));}else{factory(jQuery);}}(function($){var pluses=/\+/g;function encode(s){return config.raw?s:encodeURIComponent(s);} function decode(s){return config.raw?s:decodeURIComponent(s);} function stringifyCookieValue(value){return encode(config.json?JSON.stringify(value):String(value));} function parseCookieValue(s){if(s.indexOf('"')===0){s=s.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,'\\');} try{s=decodeURIComponent(s.replace(pluses,' '));return config.json?JSON.parse(s):s;}catch(e){}} function read(s,converter){var value=config.raw?s:parseCookieValue(s);return $.isFunction(converter)?converter(value):value;} var config=$.cookie=function(key,value,options){if(arguments.length>1&&!$.isFunction(value)){options=$.extend({},config.defaults,options);if(typeof options.expires==='number'){var days=options.expires,t=options.expires=new Date();t.setMilliseconds(t.getMilliseconds()+days*864e+5);} return(document.cookie=[encode(key),'=',stringifyCookieValue(value),options.expires?'; expires='+options.expires.toUTCString():'',options.path?'; path='+options.path:'',options.domain?'; domain='+options.domain:'',options.secure?'; secure':''].join(''));} var result=key?undefined:{},cookies=document.cookie?document.cookie.split('; '):[],i=0,l=cookies.length;for(;i_.length(this._area)){m--;i--;}} return and||this;},keys:function(){return this.each(function(k,list){list.push(k);},[]);},get:function(key,alt){var s=_.get(this._area,this._in(key));return s!==null?_.parse(s):alt||s;},getAll:function(){return this.each(function(k,all){all[k]=this.get(k);},{});},set:function(key,data,overwrite){var d=this.get(key);if(d!=null&&overwrite===false){return data;} return _.set(this._area,this._in(key),_.stringify(data),overwrite)||d;},setAll:function(data,overwrite){var changed,val;for(var key in data){val=data[key];if(this.set(key,val,overwrite)!==val){changed=true;}} return changed;},remove:function(key){var d=this.get(key);_.remove(this._area,this._in(key));return d;},clear:function(){if(!this._ns){_.clear(this._area);}else{this.each(function(k){_.remove(this._area,this._in(k));},1);} return this;},clearAll:function(){var area=this._area;for(var id in _.areas){if(_.areas.hasOwnProperty(id)){this._area=_.areas[id];this.clear();}} this._area=area;return this;},_in:function(k){if(typeof k!=="string"){k=_.stringify(k);} return this._ns?this._ns+k:k;},_out:function(k){return this._ns?k&&k.indexOf(this._ns)===0?k.substring(this._ns.length):undefined:k;}},storageAPI:{length:0,has:function(k){return this.items.hasOwnProperty(k);},key:function(i){var c=0;for(var k in this.items){if(this.has(k)&&i===c++){return k;}}},setItem:function(k,v){if(!this.has(k)){this.length++;} this.items[k]=v;},removeItem:function(k){if(this.has(k)){delete this.items[k];this.length--;}},getItem:function(k){return this.has(k)?this.items[k]:null;},clear:function(){for(var k in this.list){this.removeItem(k);}},toString:function(){return this.length+' items in '+this.name+'Storage';}}};if(window.store){_.conflict=window.store;} var store=_.Store("local",(function(){try{return localStorage;}catch(e){}})());store.local=store;store._=_;store.area("session",(function(){try{return sessionStorage;}catch(e){}})());window.store=store;if(typeof define==='function'&&define.amd!==undefined){define(function(){return store;});}else if(typeof module!=='undefined'&&module.exports){module.exports=store;}})(this,this.define); ;var dp={view:{},model:{},collection:{},pages:[],launch:function(modules,ns){if(typeof modules!=='object'){return;} var root=dp;if(typeof ns==='string'&&dp.hasOwnProperty(ns)){root=dp[ns];} for(var i=0;i0){new DP.UI($elements,'ButtonsEffects');}});});dp.loader.add(function(){var trace=new dp.Trace('dp new DP.View.SearchForms');dp.view.searchForms=new DP.View.SearchForms();trace.push('Finished');trace.end();});dp.loader.add({target:'.d_text_overflow_ellipsis',handlers:'textOverflow',enabled:!('textOverflow'in document.documentElement.style)},0);dp.loader.add({target:'.d_placeholder',handlers:'placeholder'},0);dp.loader.add({target:'.d_disabled',handlers:'disabled'},0);dp.loader.add({target:'.d_loading',handlers:'depositLoading'},0);dp.loader.add({target:'.d_slidable',handlers:'depositSlidable'},0);dp.loader.add({target:'.for-popup',handlers:'depositPopup'},0);dp.loader.add({target:'.service-popup',handlers:'depositServicePopup'},0);dp.loader.add({target:'.d-has-balance',handlers:'depositInHeader',enabled:!!dp.config.user.id},0);dp.loader.add({target:'.d_has_title, .d_html_tips_custom',handlers:'depositTips'},0);dp.loader.add({target:'.shopping-cart-menu',handlers:'depositInCart'},0);dp.loader.add({target:'.to-top-bicon',handlers:'depositLiftUpButton'},0);dp.loader.add({target:'.d_html_tips',handlers:'depositTips',options:{pointer:{priority:['lt','lm','tm','rm','bl','br','tl','tr','rt','rb','lb','auto']},template:{priority:['rt','rm','bm','bl','br','tm','lm','tl','tr','rb','lt','lb','wright','wleft','auto']},display:{force:false}}},0);dp.loader.add({target:'.search-input',handlers:[{name:'depositSearchHints',options:{mode:'simple',sizeObject:'div.search-left'}}]},0);dp.loader.add({target:'[data-mask]',handlers:function(){$(this).each(function(){var $this=$(this);$this.mask($this.attr('data-mask'));});},enabled:function(){return typeof($.fn.mask)==='function';}},0);dp.loader.add({target:'.livechat-link, .open-livechat',handlers:'depositLiveChat',options:{id:dp.config.livechat,groupId:dp.config.livechatGroupId,encodedUserId:dp.config.encodedUserId,logged:dp.config.user.id}},0);dp.loader.add({target:'[data-role="content"]',handlers:'depositRefillMembership',enabled:!!dp.config.user.id});dp.loader.add({target:{},handlers:dp.track.search,force:true},0);dp.loader.add({target:'[data-popup]',handlers:function(){dp.popup.dispatch($(this));}},0);dp.loader.add({target:'.pager-v2.pager-master',handlers:'depositPager'},0);dp.loader.add(function(){$.smartbanner({title:'Depositphotos',price:'FREE'});},0);},bindOnResize:function(){var resizeTimer;var resizeHandler=function(first){$.event.remove(this,'resize',handler);$('.d_binded_resize').trigger('resize',first);$(window).trigger('_resize',first);$.event.add(this,'resize',handler);};var handler=function(e,first){clearTimeout(resizeTimer);resizeTimer=setTimeout(function(){resizeHandler(first);},10);};$(window).off('resize.dp').on('resize.dp',handler);handler({},true);},npTools:function(){dp.observer.add('netPeakTools','pageFullReload, pagePartReload',function(){var $npHref=$('[data-np-href]');if($npHref.length===0){return false;} $npHref.each(function(){var $npHrefElement=$(this);if(this.tagName.toLowerCase()==='a'){dp.tools.getTransition($npHrefElement);this.setAttribute('href',this.getAttribute('data-np-href'));this.removeAttribute('data-np-href');dp.tools.setTransition($npHrefElement);}else{$npHrefElement.off('.np').on('click.np',function(){window.location.href=this.getAttribute('data-np-href');});}});});},popupAutoShow:function(){if(window.location.hash.length){var hashParam=window.location.hash.replace('#','');if(dp.config.deferPopups.indexOf(hashParam)>=0||dp.popup.data[hashParam]){var index=window.location.href.indexOf('#');if(index&&history&&history.replaceState){history.replaceState({},document.title,window.location.href.substring(0,index));} dp.popup.show(hashParam);}}},updateBalanceHandler:function($tips){var $items=$tips.find('a');var membership=dp.config.user.activeMembership;if(membership){$items.filter('[data-subscription-id='+membership.subscription_itansaction_id+']').find('._balance span').html(membership.count_left);} dp.config.user.activeOnDemandPlans.forEach(function(plan){$items.filter('[data-product='+plan.product+'][data-subproduct='+plan.subproduct+'][data-splitCount='+plan.split_count+']').find('[data-balance]').html(plan.balance);});$items.not('[data-product]').each(function(index,item){var $el=$(item);var method=$el.attr('data-pack')||$el.attr('data-method');var balanceItem;if(method==='subscription'){var subscriptionId=dp.tools.number($el.attr('data-subscription-id'));balanceItem=dp.config.user.subscriptionFilesCount[subscriptionId];$el.find('span[data-balance]').html(balanceItem);}else{balanceItem=(method==='credits')?dp.tools.number(dp.config.user.credits):dp.tools.number(dp.config.user.imagePacksCount);$el.find('[data-balance="'+method+'"]').html((method==='credits')?balanceItem.dpNumberFormat(2,'.',''):balanceItem);}});}}};(function(w){w.DP={Model:{},View:{},Collection:{},UI:{},Mixin:{}};})(window); ;dp.core={binder:function(targets,handlers,ns){this.launch(targets,handlers,ns,'_bind');},unbinder:function(targets,handlers,ns){this.launch(targets,handlers,ns,'_unbind');},launch:function(targets,handlers,ns,f1){if(typeof targets==='object'&&typeof handlers==='object'){if(this._isDeepLevel(targets)){this[f1](targets,handlers,ns);} for(var i in handlers){if(handlers.hasOwnProperty(i)&&targets.hasOwnProperty(i)){arguments.callee.call(this,targets[i],handlers[i],ns,f1);}}}},_isDeepLevel:function(object){for(var i in object){if(object.hasOwnProperty(i)&&i.charAt(0)==='$'){return true;}} return false;},_bind:function(targets,handlers,ns){var trigger=[];var run=[];for(var i in targets){var _i=i.replace(/^\$/,'');if(!targets.hasOwnProperty(i)||!handlers.hasOwnProperty(_i)){continue;} var handlerData=handlers[_i];var $target=targets[i];if(typeof handlerData.enabled==='function'){handlerData.enabled=handlerData.enabled();} if(!$target||$target.length===0||handlerData.enabled===false){continue;} if(handlerData.hasOwnProperty('handler')){var events=this._detectEvents($target,handlerData.events);if(events){for(var j=0;j0&&$target instanceof jQuery){if(typeof ns==='string'){$target.off('.'+ns.replace(/\./g,''));}else{for(var j=0;jthis.options.lifetime-1?this.data.splice(0,1):false;this._debug('_truncate',result);return result;};dpCache.prototype._debug=function(){if(this.options.debug===true){console.log('dp.cache.'+arguments[0]+':',arguments[1],arguments[2]);}};dpCache.prototype.set=function(key,value){if(this.options.lifetime===0){return false;} this.remove(key);if(this.options.lifetime>0){this._truncate();} this._debug('set',key,[value]);return this.data.push({key:key,value:value});};dpCache.prototype.get=function(key){var index=this._getIndexByKey(key);var result=index!==false?this.data[index].value:false;this._debug('get',key,[result]);return result;};dpCache.prototype.remove=function(key){var index=this._getIndexByKey(key);var result=index!==false?this.data.splice(index,1):false;this._debug('remove',key,result);return result;};dpCache.prototype.clear=function(){this._debug('clear',true);return this.data=[];};})(window,dp) ;(function(window,dp){"use strict";var DeferFunction=function(){this._queue=[];};DeferFunction.prototype.add=function(fn){this._queue.push(fn);};DeferFunction.prototype.run=function(callback){setTimeout((function(){var trace=new dp.Trace('dp.deferFunction');for(var i=0;ia1[0].order){aux++;} out.push(a1.shift());}else if(a2.length){out.push(a2.shift());aux++;}};return out;},_processHandlers:function($target,handlers,options,defer){switch(typeof handlers){case'object':for(var i=0;i'),$overlay:$('
'),$invisible:$('
')},timeouts:{load:1000,ajax:30000,global:50000,cache:1000},lifetime:100,stopWindowScroll:false,stopShowOverlay:false},depends:'',enabled:false,isOldBrowser:false,popstate:false,forceScripts:[],scriptUrl:'',__counter:0,__finishedDirectRequestsCounter:0,__jqXHR:{direct:undefined,cache:undefined},__prevUrl:{direct:undefined,cache:undefined,handled:undefined},__loaded:false,__locked:false,__loadTimeout:undefined,__cacheTimeout:undefined,__cacheRequestLocked:false,_oldHref:window.location.href,_requestUrlMap:{},init:function(){this.cache={content:dp.cache({lifetime:this.options.lifetime}),includes:dp.cache({lifetime:-1})};if(!history.pushState){this.isOldBrowser=true;} this.enabled=true;this._prepareScriptCache();this._addObserver();this._prepare();},_addObserver:function(){dp.observer.add('dpLoaderAjax','pagerSet',(function(){if(dp.config.pager&&dp.config.pager.cacheEnabled===true){this._updatePagerCache();}}).bind(this));dp.observer.add('dpLoaderAjax','popstate',(function(){var state=history.state;var href=window.location.href;if(state&&typeof(state)==='object'&&state.hasOwnProperty('from')){if(state.from==='ajaxLoader'){if(state.action&&state.action==='search'&&state.action!==dp.config.action){var url=dp.url(href);url.param('shortRequest',false);href=url.attr('source');} dp.loader.ajax.popstate=true;dp.loader.ajax.load(href);}}else{if(dp.loader.ajax._oldHref!==href&&href.search('#')===-1){this.bruteLoad(href);}}}).bind(this));},_prepareScriptCache:function(){if(this.cache.includes.data.length>0){return true;} var less=[];var css=[];var js=[];$(document).find('link, script').each((function(idx,element){switch(element.nodeName.toLowerCase()){case'link':if(element.rel&&element.rel==='stylesheet'&&element.href){css.push(this._prepareLink(element.href));} if(element.rel&&element.rel==='stylesheet/less'&&element.href){less.push(this._prepareLink(element.href));} break;case'script':if(element.src){js.push(this._prepareLink(element.src));} break;}}).bind(this));this.cache.includes.set('less',less);this.cache.includes.set('css',css);this.cache.includes.set('js',js);},_prepare:function($context){this.options.overlay.$invisible.appendTo('body');if(['search','view_item'].indexOf(dp.config.action)===-1){this.cache.content.options.lifetime=0;}else{this.cache.content.options.lifetime=this.options.lifetime;} this.targets=this._gather($context);this.handlers=this._handlers();dp.core.binder(this.targets,this.handlers,'dpLoaderAjax');},_gather:function($context){var $roles=$('[data-role]');var addContext=function($el,$set){if($el.length>0){$set=$set.add($el);} return $set;};if($context){$roles=addContext($('[data-role]',$context),$roles);$roles=addContext($context.filter('[data-role]'),$roles);} var $links=$('[data-ajax]',$context);return{main:{$roles:$roles,$links:$links},roles:{$content:$roles.filter('[data-role="content"]')},external:{$viewport:$('.d_w745')}}},_handlers:function(){return{main:{links:{handler:(function(e){var element=e.currentTarget;if(e&&(e.metaKey===true||e.shiftKey===true||e.ctrlKey===true||e.altKey===true||e.button!==0)){return;} var href=element.getAttribute('href');var target=element.getAttribute('target');if(href&&href.search('javascript:')===-1&&target!=='_blank'){e.preventDefault();var depends=element.getAttribute('data-depends');if(depends){this.setDepends(depends);} switch(element.getAttribute('data-ajax')){case'clearCache':this.cache.content.clear();break;default:break;} this.load(href);}}).bind(this),events:'click'}}}},setDepends:function(str){this.depends=this.depends.split(',');this.depends.push(str);this.depends=this.depends.filter(function(el){return el;}).unique().join(',');},resetDepends:function(){this.depends='';},bruteLoad:function(href){this._abortRequests(Object.keys(this.__jqXHR));if(this.isOldBrowser){href=dp.url(href);href.param('iOB',1);href=href.attr('source');} return window.location.href=href;},load:function(href,callback,forceLoad,isPartialReload){if(dp.experiment.isLocationUnderExperiment(href)){return this.bruteLoad(href);} var _this=this;if(this.__counter++>this.options.lifetime){this.enabled=false;} if((this.isOldBrowser||!this.enabled)&&!forceLoad){return this.bruteLoad(href);} if(!forceLoad){if(!href||this.__locked)return false;this._toggleOverlay(true);}else{clearTimeout(this.__loadTimeout);} dp.observer.fire('load');clearTimeout(this.__ajaxTimeout);this.__ajaxTimeout=setTimeout(function(){if(!_this.__loaded){_this._ajaxFailed(href,'Ajax timeout',forceLoad);}},_this.options.timeouts.global);if(!this.popstate&&history&&history.replaceState){var replaceParams={from:'ajaxLoader',action:dp.config.action};if(!this.options.stopWindowScroll){replaceParams.scroll=$(window).scrollTop();} history.replaceState(replaceParams,document.title,window.location.href);} var cached=this._getCached(href);if(cached!==false){this._abortRequests('direct');this._handle(cached,href,callback,forceLoad,isPartialReload);this._loadCompleteEvent(undefined,true);}else{this._abortRequests('cache');this._makeRequest('direct',{url:href,data:{depends:this.depends},type:'get',dataType:'html',timeout:_this.options.timeouts.ajax,success:function(data,$caller,params){_this.cache.content.set(_this._makeCacheId(href),data);_this._handle(data,href,callback,forceLoad,isPartialReload);},error:function(jqXHR,textStatus){if(textStatus!=='abort')_this._ajaxFailed(href,'Ajax error',forceLoad);},complete:this._loadCompleteEvent.bind(this,false)},forceLoad);} this.resetDepends();},_loadCompleteEvent:function(e,fireOnly){if(fireOnly!==true){this.__finishedDirectRequestsCounter++;} dp.observer.fire('loaderAjaxRequestComplete');},reload:function(){if(this.enabled!==true){window.location.reload();return false;} this.load(this._oldHref);},_handle:function(data,requestedHref,callback,forceLoad,isPartialReload){this.trace=new dp.Trace('dp.loader.ajax');var _this=this;if(!data)return this._ajaxFailed(requestedHref,'No data in _handle',forceLoad);this.__loaded=false;this.__locked=true;if(!forceLoad){this.__prevUrl.handled=requestedHref;} try{var parsed=this._parseData(data);if(!parsed.html){return this._ajaxFailed(requestedHref,'Bad parsed data',forceLoad);} var loadedLess=0;var loadedCss=0;var loadedJs=0;var img;var handle=function(){dp.loader.ajax.trace.push('handle start');var $html=$($.parseHTML(parsed.html,null,true));var $roles=$html.filter('[data-role]');var $scripts=$html.filter('script');var roleName;$roles.css('visibility','hidden').each(function(idx){roleName=this.getAttribute('data-role');dp.loader.ajax.trace.push('Role '+roleName);var $role=_this.targets.main.$roles.filter('[data-role="'+roleName+'"]');if($role.length>0){dp.loader.ajax.trace.push('Insert '+roleName);$(this).insertAfter($role);_this.options.overlay.$invisible.empty();if(idx===0){dp.observer.fire('destroy');} $role.detach();dp.defer.add(function(){if(idx===0){dp.observer.fire('destroy');} $role.remove();});dp.observer.clean(roleName);} dp.loader.ajax.trace.push('Role '+roleName+' end');});dp.loader.ajax.trace.push('Replace scripts');$('[data-from-ajax]').remove();$scripts.attr('data-from-ajax','true');$scripts.appendTo('body');var isStateChanged=!_this.popstate&&_this._oldHref!==parsed.url&&parsed.url;if(isStateChanged){if(history&&history.pushState){history.pushState({from:'ajaxLoader',action:dp.config.action},parsed.title||false,parsed.url);dp.observer.fire('pushstate',parsed.url);} _this._requestUrlMap[_this._makeCacheId(parsed.url)]=_this._makeCacheId(requestedHref);} if(parsed.title&&forceLoad!==true){document.title=parsed.title;} if(parsed.action&&forceLoad!==true){dp.config.action=parsed.action;} _this._oldHref=parsed.url;dp.loader.ajax.trace.push('Loader prepare');dp.loader.ajax._prepare($roles);dp.observer.fire('pageBeforePartReload');dp.loader.ajax.trace.push('Loader run');dp.loader.run($roles);dp.loader.ajax.trace.push('Observer fire queueLoaded');if(isStateChanged&&!isPartialReload){dp.observer.fire('queueLoaded');} _this.__loaded=true;_this.__locked=false;$roles.css('visibility','visible');if(!forceLoad){dp.loader.ajax.trace.push('Not forceLoad actions');if(!_this.popstate&&!_this.options.stopWindowScroll){window.scroll(0,0);} _this._toggleOverlay(false);dp.observer.fire('pagePartReload',[$roles]);} if(_this.popstate&&history&&history.state&&history.state.scroll&&history.state.scroll>0&&!_this.options.stopWindowScroll){window.scrollTo(0,history.state.scroll-10);window.scrollTo(0,history.state.scroll);} if(_this.options.stopWindowScroll){_this.options.stopWindowScroll=false;} _this.popstate=false;dp.loader.ajax.trace.push('Callback');if(typeof callback==='function'){callback($roles);} if(dp.config.pager&&dp.config.pager.cacheEnabled===true){_this._updatePagerCache();} if(window.less&&typeof window.less.refresh==='function'&&parsed.less&&parsed.less.length){window.less.refresh();} dp.loader.ajax.trace.push('handle end');dp.defer.run();};if(parsed.js&&parsed.js.length>0){var _check=function(){loadedJs++;if(loadedJs>=parsed.js.length&&loadedCss>=parsed.css.length){handle();}};for(var i=0;i0){for(var i=0;i=parsed.js.length&&loadedCss>=parsed.css.length&&loadedLess>=parsed.less.length){handle();}};img.src=parsed.css[i];}} if(parsed.less&&parsed.less.length>0){for(var i=0;i=parsed.js.length&&loadedCss>=parsed.css.length&&loadedLess>=parsed.less.length){handle();}};img.src=parsed.less[i];}} if(parsed.css.length===0&&parsed.js.length===0&&parsed.less.length===0){handle();}}catch(e){this._ajaxFailed(requestedHref,e,forceLoad);} this.trace.push('dp.loader.ajax._handle end');this.trace.end();},_parseData:function(data){var splited=data.split('%%%%');data=splited[4];var includesLess=[];var includesCss=[];var includesJs=[];var includesArray=splited[0].replace(/[\r\n]+/gmi,'').split('|');var title=splited[1];var url=splited[2];var action=splited[3];var less=[];var css=[];var js=[];var newCss;var newJs;var i;var newLess;var lessCache=this.cache.includes.get('less');var cssCache=this.cache.includes.get('css');var jsCache=this.cache.includes.get('js');for(i=0;i0){console.log('dp.loader.ajax.js: less to attach: '+includesLess);} if(includesCss.length>0){console.log('dp.loader.ajax.js: css to attach: '+includesCss);} if(includesJs.length>0&&this.forceScripts.indexOf(action)!==-1&&this.scriptUrl.length){includesJs.push(this.scriptUrl);} if(includesJs.length>0){console.log('dp.loader.ajax.js: js to attach: '+includesJs);} return{action:action,url:url,title:title,html:data,js:includesJs,css:includesCss,less:includesLess};},_isExistInCache:function(cache,filename){var cleanFilename=dp.url(filename).attr('path');for(var i=0;i0){var iconLeft=parseInt($viewport.offset().left+($viewport.width()/2)+(this.options.overlay.$icon.width()/2));this.options.overlay.$icon.css('left',iconLeft);}}).bind(this),this.options.timeouts.load);}else{this.targets.roles.$content.removeClass('d-ajax-loading');this.options.overlay.$overlay.detach();this.options.overlay.$icon.detach();}},_updatePagerCache:function(){if(!dp.config.pager||!this.enabled){return false;} var offset=dp.config.pager.offset;var newOffset=dp.config.pager.offset+dp.config.pager.itemsLimit;var prevOffset=0;var match=this._oldHref.match(/(?:-st([0-9]+))/);if(match&&match.length===2){prevOffset=parseInt(match[1]);} if(offset!==0&&prevOffset>offset){newOffset=dp.config.pager.offset-dp.config.pager.itemsLimit;} if(newOffset<0||newOffset>dp.config.pager.itemsCount){return false;} var st=newOffset!==0?'-st'+newOffset:'';this.makeCache(dp.config.pager.pages.current.replace(/(?:-st[0-9]+)?(\.html|php)/,st+'$1'));},_makeCache:function(url,timeout){clearTimeout(this.__cacheTimeout);this.__cacheTimeout=setTimeout((function(){this._makeRequest('cache',{url:url,data:{depends:this.depends},type:'get',dataType:'html',timeout:this.options.timeouts.ajax,success:(function(data){if(!this.__cacheRequestLocked){this.cache.content.set(this._makeCacheId(url),data);this.options.overlay.$invisible.empty().append($($.parseHTML(data)).find('img'));}else{this.__cacheRequestLocked=false;}}).bind(this)});this.resetDepends();}).bind(this),timeout||this.options.timeouts.cache);},_makeRequest:function(ns,data){if(ns!=='direct'&&data.url===this.__prevUrl[ns]){return;} if(data.data&&!data.data.depends){delete data.data.depends;} this._abortRequests(ns);this.__prevUrl[ns]=data.url;this.__jqXHR[ns]=dp.core.ajax(data);},_abortRequests:function(nsArr){if(!(nsArr instanceof Array)){nsArr=[nsArr];} for(var i=0;i/g,">");;},createAndAppendNode:function(nodeName,params,toBody){var node=document.createElement(nodeName);for(var i in params){node[i]=params[i];} if(toBody===true){document.body.appendChild(node);}else{document.getElementsByTagName('head')[0].appendChild(node);} return node;},loadStyle:function(href,async,params){return dp.tools.createAndAppendNode('link',$.extend({},{type:'text/css',rel:'stylesheet',async:async===undefined?false:async,href:href},params));},loadScript:function(src,async,params){return dp.tools.createAndAppendNode('script',$.extend({},{type:'text/javascript',async:async===undefined?false:async,src:src},params),true);},screenBounds:function(){return{width:window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,height:window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight};},xor:function(a,b){return(a||b)&&!(a&&b);},base_convert:function(number,frombase,tobase){return parseInt(number+'',frombase|0).toString(tobase|0);},mergeToArray:function(){var array=[];var processor=function(result,merge){if(typeof merge=='object'){if(merge instanceof Array){result=result.concat(merge);}else{for(var i in merge){result.push(merge[i]);}}}else{result.push(merge);} return result;};for(var i=0;imax?str.substring(0,max)+'...':str;},number:function(str){return str-0;},string:function(value){return value+'';},random:function(min,max){min=dp.tools.number(min)||0;max=dp.tools.number(max)||1;return Math.floor(Math.random()*(max-min+1))+min;},focusOnStraightBrowsersInput:function($input){var isVisible=function(){return $input.is(':visible')&&$input.offset().top+$input.height()>window.scrollY;};if($.support.placeholder&&!navigator.userAgent.match(/Trident\/[6,7]\./)&&$input.length&&isVisible()){$input.focus();if($input[0].setSelectionRange){var len=$input.val().length;$input[0].setSelectionRange(len,len);}else{$input.val($input.val());}}},extend:function(){var target=arguments[0]||{};var i=1;var length=arguments.length;var deep=false;if(typeof target==='boolean'){deep=target;target=arguments[1]||{};i=2;} if(typeof target!=='object'&&typeof target==='function'){target={};} for(;idata['height']?'horizontal':(data['width']>>0;if(typeof callback!=='function'){throw new TypeError(callback+' is not a function');} if(arguments.length>1){T=arguments[1];} k=0;while(k>>0;if(len===0){return false;} var n=fromIndex|0;var k=Math.max(n>=0?n:len-Math.abs(n),0);function sameValueZero(x,y){return x===y||(typeof x==='number'&&typeof y==='number'&&isNaN(x)&&isNaN(y));} while(k>>0;var from=Number(arguments[1])||0;from=(from<0)?Math.ceil(from):Math.floor(from);if(from<0)from+=len;for(;from>>0;if(typeof fun!='function')throw new TypeError();var res=[];var thisp=arguments[1];for(var i=0;i>>0;if(typeof callback!=='function')throw new TypeError(callback+' is not a function');if(thisArg)T=thisArg;A=new Array(len);k=0;while(k>>0;if(typeof fun!=='function') throw new TypeError();var thisArg=arguments.length>=2?arguments[1]:void 0;for(var i=0;i-1)})};try{Object.defineProperty(Array.prototype,'diff',{value:diffHandler});}catch(e){Array.prototype.diff=diffHandler}} if(!Array.prototype.unique){var uniqueHandler=function(){var a=this.concat();for(var i=0;i3){s[0]=s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g,sep);} if((s[1]||'').lengthwindow.innerWidth){if(timer){clearTimeout(timer);timer=0;} _this.stop();}else{if(!timer){_this.start();}}};dp.core.binder({$window:$(window)},{window:{handler:function(){checkStop();},events:'_resize',run:function(){timer=setTimeout(function(){_this.start();timer=0;},_this.loopDelay);checkStop();}}},'dpQueueEvents');};Queue.prototype.start=function(){var _this=this;for(var level in this.line){if(!this.line.hasOwnProperty(level)) continue;this.startLevel(level);} clearTimeout(this.watcher);this.watcher=setTimeout(function(){_this.start();},this.loopDelay);};Queue.prototype.startLevel=function(level){var _this=this;var queueDelay=(level-this.first)*this.delay;this.stop(level);this.timers[level]=setTimeout(function(){for(var item=0;item<_this.line[level].length;item++){_this.line[level][item].start(_this.line[level][item]);}},this.line[level][0].maxDelay+queueDelay);};Queue.prototype.stop=function(level){clearTimeout(this.watcher);if(level){clearTimeout(this.timers[level]);}else{for(var timer in this.timers){if(!this.timers.hasOwnProperty(timer))continue;clearTimeout(this.timers[timer]);}}};dp.observer.add('dpQueueInit','queueLoaded',function(){dp.observer.remove('dpQueueInit','queueLoaded');dp.queue=new Queue();});})(); ;(function(window,dp){dp.url=function(url,noDecode){return new UrlParser(url,noDecode||false);};var UrlParser=function(url,noDecode){this.data=this._parse(url||window.location.toString(),noDecode);};UrlParser.prototype.options={keys:['source','protocol','authority','userInfo','user','password','host','port','relative','path','directory','file','query','fragment'],parsers:{url:/^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,query:/(?:^|&|;)([^&=;]*)=?([^&;]*)/g,segment:/^\/+|\/+$/g}};UrlParser.prototype._parse=function(url,noDecode){var _parseComponent=function(str,regex){var result={};var parser=function(a,b,c){if(b)result[b]=c;};str.replace(regex,parser);return result;};var str='';if(noDecode){str=url;}else{try{str=decodeURI(url);}catch(e){str=url;}} var res=this.options.parsers.url.exec(str);var uri={attr:{},param:{},seg:{}};var i=this.options.keys.length;while(i--)uri.attr[this.options.keys[i]]=res[i]||'';uri.param['query']=_parseComponent(uri.attr['query'],this.options.parsers.query);uri.param['fragment']=_parseComponent(uri.attr['fragment'],this.options.parsers.query);uri.seg['path']=uri.attr.path.replace(this.options.parsers.segment,'').split('/');uri.seg['fragment']=uri.attr.fragment.replace(this.options.parsers.segment,'').split('/');uri.attr['base']=uri.attr.host?(uri.attr.protocol?uri.attr.protocol+'://'+uri.attr.host:uri.attr.host)+(uri.attr.port?':'+uri.attr.port:''):'';return uri;},UrlParser.prototype._rebuild=function(){var queryArray=[];var fragmentArray=[];for(var i in this.data.param.query){if(!this.data.param.query.hasOwnProperty(i))continue;queryArray.push(i+(this.data.param.query[i]!==''?'='+this.data.param.query[i]:''));} for(var i in this.data.param.fragment){if(!this.data.param.fragment.hasOwnProperty(i))continue;fragmentArray.push(i+(this.data.param.fragment[i]!==''?'='+this.data.param.fragment[i]:''));} this.data.attr.query=queryArray.join('&');this.data.attr.fragment=fragmentArray.join('&');var url=(this.data.attr.protocol?this.data.attr.protocol+':':'')+ (this.data.attr.host?'//'+this.data.attr.host:'')+ (this.data.attr.directory?this.data.attr.directory:'')+ (this.data.attr.file?this.data.attr.file:'')+ (this.data.attr.query?'?'+this.data.attr.query:'')+ (this.data.attr.fragment?'#'+this.data.attr.fragment:'');this.data=this._parse(url);},UrlParser.prototype.attr=function(attr,value){if(typeof attr!=='undefined'&&typeof value!=='undefined'){this.data.attr[attr]=value;this._rebuild();} return typeof attr!=='undefined'?this.data.attr[attr]:this.data.attr;},UrlParser.prototype.param=function(param,value){if(typeof param!=='undefined'&&typeof value!=='undefined'){if(value===null)delete this.data.param.query[param];else this.data.param.query[param]=value;this._rebuild();} return(typeof param!=='undefined'&&value!==null)?this.data.param.query[param]:this.data.param.query;},UrlParser.prototype.fparam=function(param,value){if(typeof param!=='undefined'&&typeof value!=='undefined'){if(value===null)delete this.data.param.fragment[param];else this.data.param.fragment[param]=value;this._rebuild();} return(typeof param!=='undefined'&&value!==null)?this.data.param.fragment[param]:this.data.param.fragment;},UrlParser.prototype.segment=function(seg){if(typeof seg==='undefined'){return this.data.seg.path;}else{seg=seg<0?this.data.seg.path.length+seg:seg-1;return this.data.seg.path[seg];}},UrlParser.prototype.fsegment=function(seg){if(typeof seg==='undefined'){return this.data.seg.fragment;}else{seg=seg<0?this.data.seg.fragment.length+seg:seg-1;return this.data.seg.fragment[seg];}}})(window,dp) ;(function(window,dp){var dpStorage=function(){this.busy=false;try{this._storage=this._getStorage();}catch(e){this._storage=null;}};dpStorage.prototype.set=function(key,value,clientOnly,ttl,forceToStorage){var _this=this;this.busy=true;var storage=this._storage;var setItem=function(key,value,storageName){try{storage.setItem(_this._getKey(key),value,storageName);}catch(e){if(e=='QUOTA_EXCEEDED_ERR'){_this.wipeStorage();return false;}}};if(typeof ttl==='undefined')ttl=365;if(!forceToStorage){if(!ttl&&ttl!=='session'&&storage){setItem(key,value,'sessionStorage');}else{$.cookie(this._getKey(key),value,{expires:ttl!=='session'?ttl:undefined,path:'/',secure:true,domain:dp.config.domain.local});}}else if(storage&&forceToStorage){setItem(key,value);}else{return false;} if(clientOnly||!dp.config.user.id){this.busy=false;return true;} dp.core.ajax({url:'/user_settings.php',data:{method:'setData',key:key,value:value},success:function(){_this.busy=false;dp.observer.fire('storageReady');dp.observer.remove('storageReady');return true;},error:function(jqXHR,textStatus,errorThrown){$.error('jquery.extend.js. ClientStorage set data ajax error.',jqXHR,textStatus,errorThrown);}});};dpStorage.prototype.get=function(key){var storage=this._storage;var portalKey=this._getKey(key);var result=$.cookie(portalKey);if((typeof result==='undefined')&&storage){result=storage.getItem(portalKey);} if(result===null||typeof result==='undefined'){result=$.cookie(key);} if((typeof result==='undefined')){result=null;} return result;};dpStorage.prototype.remove=function(key,fromDb){var _this=this;this.busy=true;var storage=this._storage;var item=this.get(key);if($.cookie(this._getKey(key))!==undefined){$.removeCookie(this._getKey(key),{path:'/',domain:dp.config.domain.local});}else if(storage){storage.removeItem(this._getKey(key));} if(fromDb){dp.core.ajax({url:'/user_settings.php',data:{method:'deleteData',key:key},success:function(data){dp.observer.fire('storageReady');dp.observer.remove('storageReady');_this.busy=false;return data;},error:function(jqXHR,textStatus,errorThrown){$.error('jquery.extend.js. ClientStorage delete data ajax error.',jqXHR,textStatus,errorThrown);}});}else{this.busy=false;} return item;};dpStorage.prototype.shiftByValueFromDb=function(key,value){dp.core.ajax({url:'/user_settings.php',data:{method:'shiftByValueData',key:key,value:value},success:function(data){return data;},error:function(jqXHR,textStatus,errorThrown){$.error('jquery.extend.js. ClientStorage delete data ajax error.',jqXHR,textStatus,errorThrown);}});};dpStorage.prototype.renew=function(settings){this.oldKeysCleanUp();if(!settings||typeof settings!='object')return;var key;for(var data in settings){if(!settings.hasOwnProperty(data))continue;key=settings[data]['key'].replace(/[0-9][0-9]_/,'');this.set(key,settings[data]['value'],true);}};dpStorage.prototype.oldKeysCleanUp=function(){var oldKeys=['recentHistory','recentHistoryData','slideshow_settings','search_settings','viCenterBnrHidden','viewItemTrialHidden','viRightBnrHidden','viRgImgBnrHidden','viRotationBnrHidden'];for(var i=0;i=0;i--){storageType=storageTypes[i];if(storageType in window&&window[storageType]!==null){var storage=window[storageType];if(testStorage(storage)){storageInstances[storageType]=storage;isStorageAtAll=true;}}} if(isStorageAtAll){return{_defaultStorageName:'localStorage',_storages:storageInstances,_exec:_exec,setItem:setItem,getItem:getItem,removeItem:removeItem,key:key,clear:clear}}else{return null;}};dp.storage=new dpStorage();})(window,dp); ;;(function(dp,undefined){dp.dumper={flume:{'search.result':function(attributes){var source_params="";if(dp.collection.recent&&dp.collection.recent.at(1)){source_params=dp.model.searchQuery.toQuery(dp.collection.recent.at(1).toJSON().params);} return{items:$(dp.config.widgets.depositSearch).depositSearch('getItemIDsList')||[],source_url:attributes.referrer,source_params:source_params,search_params:dp.dumper.flume.convert.searchParams(),search_filter:dp.model.searchQuery.toQuery(),sq:attributes.sq||dp.config.search.id||''};},'item.view':function(attributes){var search_params=dp.dumper.flume.convert.getSearchParams(attributes);var backPage=dp.history.states.old;var curPage=dp.history.states.cur;var searchVars=['search','stock-photos','vector-images','stock-footage'];var isFromSearch=false;searchVars.forEach(function(val){if(backPage&&backPage.indexOf(val)!==-1){isFromSearch=true;}});if(backPage==='undefined'||backPage===null||!isFromSearch||curPage.indexOf('folder')!==-1){search_params='';} return{items:[attributes.id],source_url:attributes.referrer,subtype:attributes.subtype,sq:attributes.sq||dp.config.search.id||'',search_params:search_params};},'item.view.inline':function(attributes){var search_params=dp.dumper.flume.convert.getSearchParams(attributes);var curPage=dp.history.states.cur;if(curPage.indexOf('folder')!==-1){search_params='';} return{items:[attributes.id],source_url:attributes.referrer,sq:attributes.sq||dp.config.search.id||'',search_params:search_params,subtype:attributes.subtype};},'item.download':function(attributes){var search_params=dp.dumper.flume.convert.getSearchParams(attributes);var backPage=dp.history.states.old;var curPage=dp.history.states.cur;var searchVars=['search','stock-photos','vector-images','stock-footage'];var isFromSearch=false;var isCurSearch=false;searchVars.forEach(function(val){if(backPage&&backPage.indexOf(val)!==-1){isFromSearch=true;} if(curPage.indexOf(val)!==-1){isCurSearch=true;}});if(!isFromSearch||curPage.indexOf('folder')!==-1||attributes.mode==='cart'){search_params='';} return{items:[attributes.id],source_url:attributes.referrer,sq:attributes.sq||dp.config.search.id||'',search_params:search_params,size:attributes.size.split('-')[0].toUpperCase(),cost_type:dp.dumper.flume.convert.getCostType(attributes.cost_type)};},'item.cart':function(attributes){var search_params=dp.dumper.flume.convert.getSearchParams(attributes);var backPage=dp.history.states.old;var curPage=dp.history.states.cur;var searchVars=['search','stock-photos','vector-images','stock-footage'];var isFromSearch=false;searchVars.forEach(function(val){if((backPage&&backPage.indexOf(val)!==-1)||(curPage&&curPage.indexOf('search')!==-1)){isFromSearch=true;}});if(attributes.isSimilar||!isFromSearch||curPage.indexOf('folder')!==-1){search_params='';} return{items:[attributes.id],source_url:attributes.referrer,sq:attributes.sq||dp.config.search.id||'',search_params:search_params};},convert:{'searchParams':function(params,itemId){var sort,query;if(dp.config.user.id){if(dp.config.pager!=='undefined'){query=dp.collection.recent.at(0).toJSON().params.query||"";sort=dp.collection.recent.at(0).toJSON().params.sorting||"";params=!!dp.collection.recent;}else{query="";sort="";params=false;}}else{var flumeParams=JSON.parse(dp.storage.get('search_params_flume'))?JSON.parse(dp.storage.get('search_params_flume')):'';if(flumeParams){query=flumeParams.query.replace(/\s/g,'+')||"";sort=flumeParams.sorting||"";}else{query="";sort="";} params=!!flumeParams;} var popupID=+store.local.get('popupCreatorId');var str='';itemId=dp.tools.number(itemId);if(params){if(!popupID||popupID===itemId){str='q='+query+'&sort='+sort+'';}} return str;},getSearchParams:function(attributes){var search_params;if(dp.config.user.id){if(dp.collection.recent&&dp.collection.recent.at(0)){search_params=dp.dumper.flume.convert.searchParams(dp.collection.recent.at(0).toJSON().params,attributes.id);}}else{search_params=dp.dumper.flume.convert.searchParams(dp.config.search.params,attributes.id);} return search_params;},getCostType:function(key){return{free:0,credits:1,subscription:2,imagepack:4,ondemand:8}[key];}},'correction':function(attrs,mode){var trackId=cookie.get('flumeTrackId');if(trackId===null){trackId=getUUID();cookie.set('flumeTrackId',trackId,{expires:365});} var data={user_id:dp.config.user.id,track_id:trackId};if(mode!=='download'){data.query=dp.model.searchQuery.get('query');} return $.extend(attrs,data);}},googleUniversal:{'removeItem':function(item){if(item){var params={id:dp.dumper.getTrackData.cart._getItemId(item),name:dp.dumper.getTrackData.cart._getItemName(item.find('.view-item')),brand:'Item',category:'cart',variant:dp.dumper.getTrackData.cart._getVariant(item),price:'',quantity:1,coupon:'',position:item.index(),dimension4:dp.dumper.getTrackData.cart._getUserType()};} return params||{};},'removeProduct':function($form,prodType,discount){var params={};if($('.refill-balance-form').length===0||$('.order-es-balance-form').length===0){params={id:dp.dumper.getTrackData.billing._getProductId($form,prodType),name:dp.dumper.getTrackData.billing._getProductName($form,prodType),brand:'Product',category:dp.dumper.getTrackData.billing._getCategory($form),variant:dp.dumper.getTrackData.billing._getVariant($form,prodType),price:dp.dumper.getTrackData.billing._getPrice($form),quantity:'',coupon:'',position:dp.dumper.getTrackData.billing._getCount($form)};} return params;},'productCheckout':function($form,prodType){var params={id:dp.dumper.getTrackData.billing._getProductId($form,prodType),name:dp.dumper.getTrackData.billing._getProductName($form,prodType),brand:'Product',category:dp.dumper.getTrackData.billing._getCategory($form),variant:dp.dumper.getTrackData.billing._getVariant($form,prodType),price:dp.dumper.getTrackData.billing._getPrice($form),quantity:'',coupon:'',position:dp.dumper.getTrackData.billing._getCount($form)};return params||{};},'plansImpression':function(form){var forms=$('form.choose-block');if(form.length){forms=form;} var plans=[];_.each(forms,function(form){var params={id:dp.dumper.getTrackData.plans._getId(form),name:dp.dumper.getTrackData.plans._getProductName(),list:dp.dumper.getTrackData.plans._getProductsList(form),brand:'Product',category:dp.dumper.getTrackData.plans._getImpressionCategory(form),variant:dp.dumper.getTrackData.plans._getImpressionVariant(),position:dp.dumper.getTrackData.plans._getPosition(),price:'',dimension4:dp.dumper.getTrackData.plans.getUserType()};plans.push(params);});return plans||[];},'productChange':function(e,name,discounts){discounts.ondemand=+$(e.currentTarget).closest('form').find('input[name="ondemand-discount"]').val();var form=$(e.currentTarget).closest('form');var params={attributes:{id:dp.dumper.getTrackData.plans._formProdId(null,e,name),name:dp.dumper.getTrackData.plans._getProductName(),brand:'Product',category:dp.dumper.getTrackData.plans._getProdCategory(form,name),variant:dp.dumper.getTrackData.plans._getProdVariant(e,name),price:dp.dumper.getTrackData.plans._getPrice(e,'clickProduct',name),quantity:1,coupon:dp.dumper.getTrackData.plans._getDisacountData(name,discounts),position:dp.dumper.getTrackData.plans._getPosition(e),dimension4:dp.dumper.getTrackData.plans.getUserType()},list:{products:dp.dumper.getTrackData.plans._getProductsList()}};return params||{};},'productBuy':function(e,name,discounts){var form=$(e.currentTarget).closest('form');var params={trackInfo:{step:1,option:'ProductCard'},data:{id:dp.dumper.getTrackData.plans._formProdId(form,e,name),name:dp.dumper.getTrackData.plans._getProductName(),brand:'Product',category:dp.dumper.getTrackData.plans._getVariant(name,'buyProduct',form),variant:dp.dumper.getTrackData.plans._getCategory(name,dp.dumper.getTrackData.plans._getProductName(),'buyProduct',e),price:dp.dumper.getTrackData.plans._getPrice(e,'buyProduct',name),quantity:1,coupon:dp.dumper.getTrackData.plans._getDisacountData(name,discounts),position:dp.dumper.getTrackData.plans._getProductsCount(e),dimension4:dp.dumper.getTrackData.plans.getUserType()}};return params||{};}},regular:{search:{category:function(){return dp.config.search.categoriesList[dp.config.search.params.category];}}},getTrackData:{cart:{_getItemId:function(item){return item.attr('data-item-id');},_getItemName:function(item){var name='';if(item.hasClass('image')){name='Photos';}else if(item.hasClass('vector')){name='Vectors';}else if(item.hasClass('video')){name='Video';}else if(item.hasClass('editorial')){name='Editorial';} return name;},_getVariant:function(item){return _.isUndefined(item.find('form .form-content input[name="size"][type="hidden"]'))?item.find('form .form-content input[name="size"][type="hidden"]').val():'';},_getUserType:function(){return(!_.isUndefined(dp.config.user)?dp.config.user.type:'quest');}},billing:{_getProductId:function($form,type){return(type==='ondemand'?'OD-':'S-')+$form.find('input[name="id"]').val();},_getProductName:function($form,prod){var name='';if(prod==='subscription'){name='Images';}else if(prod==='ondemand'){if(!_.contains(['standart','el'],$form.find('input[name="subproduct"]').val())){name='Videos';}else{name='Images';}} return name;},_getCategory:function($form){var category='';switch($form.find('input[name="product"]').val()){case'subscription':category=(dp.tools.capitalize($form.find('input[name=buy_period]').val())==='30'?'Monthly':'Daily')+' Subscription';break;case'ondemand':category='Ondemand';break;} return category;},_getVariant:function($form,type){var variant='';var period='';if(type==='ondemand'){variant=$form.find('input[name="subproduct"]').val();if(_.contains['standart','el'],variant){if(variant==='standart'){variant='sl';} variant=dp.tools.capitalize(variant);}}else{period=$form.find('input[name="period"]').val();switch(period/30){case 1:variant='month';break;case 12:variant='year';break;}} return variant;},_getPrice:function($form){var price='';if(!_.isUndefined($form.find('.order-wrapper .order-info .block-price input[name="order-price"]').val())){price=+$form.find('.order-wrapper .order-info .block-price input[name="order-price"]').val();} return price;},_getCount:function($form){return $form.find('input[name="count"]').val();}},plans:{_getId:function(form){var id=parseInt($(form).find('.images-list-wrapper').not('.hidden').find('label.active span.item-radio input').val());var prodType=dp.dumper.getTrackData.plans._getProductType(form);var label=dp.dumper.getTrackData.plans._getLabel(prodType);id=label+id;return id;},_formProdId:function($prod,e,name){if($prod){var prodId=null;var radioInput=$prod.find('.images-list-wrapper').not('.hidden').find('label.active span.item-radio input') switch(dp.dumper.getTrackData.plans._getProductName()){case'video':prodId=radioInput.val();break;case'image':prodId=$prod.find('input[name="product"]').val()==='ondemand'?radioInput.val():radioInput.attr('data-id');break;default:prodId=radioInput.val();break;} var name=$prod.find('input[type="hidden"][name="product"]').val();var label=dp.dumper.getTrackData.plans._getLabel(name);return label+prodId;}else{if(name==='OD'){name=name+'-'+$(e.currentTarget).parent().parent().find('.item-radio input[data-name="id"]').val();}else{name=name+'-'+$(e.currentTarget).parent().parent().find('.item-radio input[data-name="images"]').attr('data-id');} return name;}},_getDisacountData:function(name,discounts){var coupon=0,map={'S':'subscription','OD':'ondemand','CR':'credits'};_.each(discounts,function(discount,i){if(discount!==0&&map[name]===i){coupon=discount;}});return coupon;},getUserType:function(){return(!_.isUndefined(dp.config.user)?dp.config.user.type:'quest');},_getProdCategory:function(form,name){return(name==='OD'?'Ondemand':dp.tools.capitalize(form.find('input[name=type]').val())+' Subscription');},_getProductsCount:function(e){var count='';if($(e.currentTarget).closest('form').find('.images-list-wrapper').not('.hidden').find('label.active').hasClass('custom-downloads')){count=$(e.currentTarget).closest('form').find('.images-list-wrapper').not('.hidden').find('label.active .item-name input').val();}else{count=$(e.currentTarget).closest('form').find('.images-list-wrapper').not('.hidden').find('label.active .item-name span').html();} return count;},_getProductName:function(){var path=dp.url().data.attr.path;var name='image';if(path.indexOf('corporate')===-1){name=path.replace('/subscribe','').replace('.html','').replace('/','')||'image';}else{if(path.indexOf('video')!==-1){name='video';}else{name='image';}} return name;},_getPosition:function(e){if(e){return $(e.currentTarget).closest('label').index()+1;}else{return $('form.ahead .images-list-wrapper').not('.hidden').find('label.active').index()+1}},_getVariant:function(name,eventName,form){if(eventName==='buyProduct'){return dp.dumper.getTrackData.plans._getProdCategory(form,name);}else{return $('.currency-select-wrapper .selected-value-label').html().trim();}},_getProdVariant:function(e,name){var sub='';if(name==='OD'){sub=!_.isUndefined($(e.currentTarget).closest('form').find('.images-list-wrapper').not('.hidden').attr('data-subproduct'))?$(e.currentTarget).closest('form').find('.images-list-wrapper').not('.hidden').attr('data-subproduct'):'';} if(name==='S'){sub=!_.isUndefined($(e.currentTarget).closest('form').find('.images-list-wrapper').not('.hidden').attr('data-period'))?$(e.currentTarget).closest('form').find('.images-list-wrapper').not('.hidden').attr('data-period'):'';if(sub==='30'){sub='Month';}else{sub='Year';}} return sub;},_getCategory:function(name,subName,eventName,e){var category='';var product=$(e.currentTarget).closest('form').find('input[name="product"]').val();var sub=$(e.currentTarget).closest('form').find('.period-menu li.active').attr('data-value');if(product==='subscription'){category=sub==='30'?'month':'year';}else{category=sub;} return category;},_getProductsList:function(form){var list=$(form).find('.images-list-wrapper').not('.hidden').find('label').not('label.custom-downloads');var products=[];_.each(list,function(product){if($(product).hasClass('active'))return true;var id=$(product).find('.item-radio input').val();var prodType=dp.dumper.getTrackData.plans._getProductType(form);var label=dp.dumper.getTrackData.plans._getLabel(prodType);id=label+id;products.push(id);});products=products.join(',');return products;},_getProductType:function(form){return $(form).find('input[name="product"]').val();},_getLabel:function(name){return(name==='ondemand'?'OD':'S')+'-';},_getCurrency:function($tag){var currency='';if($tag.has('s').length>0){currency=$tag.find('s').attr('data-currency-code');}else{currency='USD';} return currency;},_getPrice:function(e,event){var price=0;if(event==='buyProduct'){if($(e.currentTarget).closest('form').find('.images-list-wrapper').not('.hidden').find('label.active').hasClass('custom-downloads')){price=$(e.currentTarget).closest('form').find('.images-list-wrapper').not('.hidden').find('label.active .item-radio input').attr('data-file-price');price=price*dp.dumper.getTrackData.plans._getProductsCount(e);}else{price=$(e.currentTarget).closest('form').find('.images-list-wrapper').not('.hidden').find('label.active .item-radio input').attr('data-price');}}else{price=$(e.currentTarget).closest('label').find('.item-radio input').attr('data-price');if(_.isUndefined(price)){price=$(e.currentTarget).closest('.images-list-wrapper').find('label.active span.item-radio input').attr('data-price');}} return parseInt(price);},_getImpressionCategory:function(form){var category='';var type=$(form).find('.period-menu li.active').attr('data-value');var product=$(form).find('input[name="type"]').val();if(product==='image'){if(type==='standart'){category='SL';}else{category='EL';}}else if(product==='daily'){if(type==='30'){category='month';}else{category='year';}}else if(product==='monthly'){if(type==='30'){category='month';}else{category='year';}}else{category=type;} return category;},_getImpressionVariant:function(){return $('.currency-select-wrapper .selected-value-label').html().trim();}}}};})(dp); ;dp.tips={options:{depositItem:{display:{effect:'fade',effectSpeed:100,show:'mouseenter',hide:'mouseleave',hideTimeout:200,showTimeout:400},pointer:{show:false},template:{linking:'parent',priority:[['r',-77],'wright','rm','rt','rb',['l',-77],'wleft','lm','lt','lb','bm','bl','br','tm','tl','tr'],offset:{top:0,left:7}}}},$player:undefined,player:undefined,cache:{},defer:{},data:{},instances:{},callbacks:{},locked:false,lockTimeout:undefined,isWebmAllowed:false,init:function(){dp.observer.add('dpTips','destroy',function(){dp.tips.hideAll();});},getAll:function(){var $tips;for(var i in dp.tips.instances){if(!dp.tips.instances.hasOwnProperty(i))continue;$tips=$tips?$tips.add(dp.tips.instances[i]):dp.tips.instances[i];} return $tips;},hideAll:function(){var $tips=this.getAll();if($tips instanceof jQuery){$tips.trigger('hide');}},lock:function(timeout){this.locked=true;clearTimeout(this.lockTimeout);this.lockTimeout=setTimeout(function(){dp.tips.locked=false;},timeout||600);},reposition:function(){var $tips=this.getAll();if($tips instanceof jQuery){$tips.trigger('position');}},setData:function(){if(arguments.length!==2){throw('dp.tips.setData: Invalid arguments given');} if(arguments[0]instanceof jQuery){dp.tips._setData(arguments[0],arguments[1]);}else{var $targets=arguments[1];var data=arguments[0];for(var i in data){if(!data.hasOwnProperty(i))continue;dp.tips._setData($targets.filter('[data-type][data-id="'+i+'"]'),data[i]);}}},_setData:function($items,data){var _this=this;var thumbBigHeight=450;var set=function(item){var uuid=item.getAttribute('data-tips-id');if(!uuid){uuid=getUUID();item.setAttribute('data-tips-id',uuid);} if(parseInt(data.dimensions.width)>parseInt(data.dimensions.height)){data.dimensions.swidth=thumbBigHeight;data.dimensions.sheight=parseInt(data.dimensions.swidth*data.dimensions.height/data.dimensions.width);}else{data.dimensions.sheight=thumbBigHeight;data.dimensions.swidth=parseInt(data.dimensions.sheight*data.dimensions.width/data.dimensions.height);} _this.data[uuid]={type:data.type==='video'?'video':'image',src:data.src,dimensions:{size:thumbBigHeight,width:data.dimensions.width,swidth:data.dimensions.swidth,height:data.dimensions.height,sheight:data.dimensions.sheight},is_editorial:data.is_editorial};};$items.each(function(){set(this);});},getVideoPlayer:function(){if(dp.tips.$player){return dp.tips.$player;} var $videoTemplate=$('
');var $player=$('