(function(window,undefined){var
rootjQuery,readyList,document=window.document,location=window.location,navigator=window.navigator,_jQuery=window.jQuery,_$=window.$,core_push=Array.prototype.push,core_slice=Array.prototype.slice,core_indexOf=Array.prototype.indexOf,core_toString=Object.prototype.toString,core_hasOwn=Object.prototype.hasOwnProperty,core_trim=String.prototype.trim,jQuery=function(selector,context){return new jQuery.fn.init(selector,context,rootjQuery);},core_pnum=/[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,core_rnotwhite=/\S/,core_rspace=/\s+/,rtrim=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,rquickExpr=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,rsingleTag=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,rvalidchars=/^[\],:{}\s]*$/,rvalidbraces=/(?:^|:|,)(?:\s*\[)+/g,rvalidescape=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,rvalidtokens=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,rmsPrefix=/^-ms-/,rdashAlpha=/-([\da-z])/gi,fcamelCase=function(all,letter){return(letter+"").toUpperCase();},DOMContentLoaded=function(){if(document.addEventListener){document.removeEventListener("DOMContentLoaded",DOMContentLoaded,false);jQuery.ready();}else if(document.readyState==="complete"){document.detachEvent("onreadystatechange",DOMContentLoaded);jQuery.ready();}},class2type={};jQuery.fn=jQuery.prototype={constructor:jQuery,init:function(selector,context,rootjQuery){var match,elem,ret,doc;if(!selector){return this;}if(selector.nodeType){this.context=this[0]=selector;this.length=1;return this;}if(typeof selector==="string"){if(selector.charAt(0)==="<"&&selector.charAt(selector.length-1)===">"&&selector.length>=3){match=[null,selector,null];}else{match=rquickExpr.exec(selector);}if(match&&(match[1]||!context)){if(match[1]){context=context instanceof jQuery?context[0]:context;doc=(context&&context.nodeType?context.ownerDocument||context:document);selector=jQuery.parseHTML(match[1],doc,true);if(rsingleTag.test(match[1])&&jQuery.isPlainObject(context)){this.attr.call(selector,context,true);}return jQuery.merge(this,selector);}else{elem=document.getElementById(match[2]);if(elem&&elem.parentNode){if(elem.id!==match[2]){return rootjQuery.find(selector);}this.length=1;this[0]=elem;}this.context=document;this.selector=selector;return this;}}else if(!context||context.jquery){return(context||rootjQuery).find(selector);}else{return this.constructor(context).find(selector);}}else if(jQuery.isFunction(selector)){return rootjQuery.ready(selector);}if(selector.selector!==undefined){this.selector=selector.selector;this.context=selector.context;}return jQuery.makeArray(selector,this);},selector:"",jquery:"1.8.3",length:0,size:function(){return this.length;},toArray:function(){return core_slice.call(this);},get:function(num){return num==null?this.toArray():(num<0?this[this.length+num]:this[num]);},pushStack:function(elems,name,selector){var ret=jQuery.merge(this.constructor(),elems);ret.prevObject=this;ret.context=this.context;if(name==="find"){ret.selector=this.selector+(this.selector?" ":"")+selector;}else if(name){ret.selector=this.selector+"."+name+"("+selector+")";}return ret;},each:function(callback,args){return jQuery.each(this,callback,args);},ready:function(fn){jQuery.ready.promise().done(fn);return this;},eq:function(i){i=+i;return i===-1?this.slice(i):this.slice(i,i+1);},first:function(){return this.eq(0);},last:function(){return this.eq(-1);},slice:function(){return this.pushStack(core_slice.apply(this,arguments),"slice",core_slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},end:function(){return this.prevObject||this.constructor(null);},push:core_push,sort:[].sort,splice:[].splice};jQuery.fn.init.prototype=jQuery.fn;jQuery.extend=jQuery.fn.extend=function(){var options,name,src,copy,copyIsArray,clone,target=arguments[0]||{},i=1,length=arguments.length,deep=false;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;}if(typeof target!=="object"&&!jQuery.isFunction(target)){target={};}if(length===i){target=this;--i;}for(;i<length;i++){if((options=arguments[i])!=null){for(name in options){src=target[name];copy=options[name];if(target===copy){continue;}if(deep&&copy&&(jQuery.isPlainObject(copy)||(copyIsArray=jQuery.isArray(copy)))){if(copyIsArray){copyIsArray=false;clone=src&&jQuery.isArray(src)?src:[];}else{clone=src&&jQuery.isPlainObject(src)?src:{};}target[name]=jQuery.extend(deep,clone,copy);}else if(copy!==undefined){target[name]=copy;}}}}return target;};jQuery.extend({noConflict:function(deep){if(window.$===jQuery){window.$=_$;}if(deep&&window.jQuery===jQuery){window.jQuery=_jQuery;}return jQuery;},isReady:false,readyWait:1,holdReady:function(hold){if(hold){jQuery.readyWait++;}else{jQuery.ready(true);}},ready:function(wait){if(wait===true?--jQuery.readyWait:jQuery.isReady){return;}if(!document.body){return setTimeout(jQuery.ready,1);}jQuery.isReady=true;if(wait!==true&&--jQuery.readyWait>0){return;}readyList.resolveWith(document,[jQuery]);if(jQuery.fn.trigger){jQuery(document).trigger("ready").off("ready");}},isFunction:function(obj){return jQuery.type(obj)==="function";},isArray:Array.isArray||function(obj){return jQuery.type(obj)==="array";},isWindow:function(obj){return obj!=null&&obj==obj.window;},isNumeric:function(obj){return!isNaN(parseFloat(obj))&&isFinite(obj);},type:function(obj){return obj==null?String(obj):class2type[core_toString.call(obj)]||"object";},isPlainObject:function(obj){if(!obj||jQuery.type(obj)!=="object"||obj.nodeType||jQuery.isWindow(obj)){return false;}try{if(obj.constructor&&!core_hasOwn.call(obj,"constructor")&&!core_hasOwn.call(obj.constructor.prototype,"isPrototypeOf")){return false;}}catch(e){return false;}var key;for(key in obj){}return key===undefined||core_hasOwn.call(obj,key);},isEmptyObject:function(obj){var name;for(name in obj){return false;}return true;},error:function(msg){throw new Error(msg);},parseHTML:function(data,context,scripts){var parsed;if(!data||typeof data!=="string"){return null;}if(typeof context==="boolean"){scripts=context;context=0;}context=context||document;if((parsed=rsingleTag.exec(data))){return[context.createElement(parsed[1])];}parsed=jQuery.buildFragment([data],context,scripts?null:[]);return jQuery.merge([],(parsed.cacheable?jQuery.clone(parsed.fragment):parsed.fragment).childNodes);},parseJSON:function(data){if(!data||typeof data!=="string"){return null;}data=jQuery.trim(data);if(window.JSON&&window.JSON.parse){return window.JSON.parse(data);}if(rvalidchars.test(data.replace(rvalidescape,"@").replace(rvalidtokens,"]").replace(rvalidbraces,""))){return(new Function("return "+data))();}jQuery.error("Invalid JSON: "+data);},parseXML:function(data){var xml,tmp;if(!data||typeof data!=="string"){return null;}try{if(window.DOMParser){tmp=new DOMParser();xml=tmp.parseFromString(data,"text/xml");}else{xml=new ActiveXObject("Microsoft.XMLDOM");xml.async="false";xml.loadXML(data);}}catch(e){xml=undefined;}if(!xml||!xml.documentElement||xml.getElementsByTagName("parsererror").length){jQuery.error("Invalid XML: "+data);}return xml;},noop:function(){},globalEval:function(data){if(data&&core_rnotwhite.test(data)){(window.execScript||function(data){window["eval"].call(window,data);})(data);}},camelCase:function(string){return string.replace(rmsPrefix,"ms-").replace(rdashAlpha,fcamelCase);},nodeName:function(elem,name){return elem.nodeName&&elem.nodeName.toLowerCase()===name.toLowerCase();},each:function(obj,callback,args){var name,i=0,length=obj.length,isObj=length===undefined||jQuery.isFunction(obj);if(args){if(isObj){for(name in obj){if(callback.apply(obj[name],args)===false){break;}}}else{for(;i<length;){if(callback.apply(obj[i++],args)===false){break;}}}}else{if(isObj){for(name in obj){if(callback.call(obj[name],name,obj[name])===false){break;}}}else{for(;i<length;){if(callback.call(obj[i],i,obj[i++])===false){break;}}}}return obj;},trim:core_trim&&!core_trim.call("\uFEFF\xA0")?function(text){return text==null?"":core_trim.call(text);}:function(text){return text==null?"":(text+"").replace(rtrim,"");},makeArray:function(arr,results){var type,ret=results||[];if(arr!=null){type=jQuery.type(arr);if(arr.length==null||type==="string"||type==="function"||type==="regexp"||jQuery.isWindow(arr)){core_push.call(ret,arr);}else{jQuery.merge(ret,arr);}}return ret;},inArray:function(elem,arr,i){var len;if(arr){if(core_indexOf){return core_indexOf.call(arr,elem,i);}len=arr.length;i=i?i<0?Math.max(0,len+i):i:0;for(;i<len;i++){if(i in arr&&arr[i]===elem){return i;}}}return-1;},merge:function(first,second){var l=second.length,i=first.length,j=0;if(typeof l==="number"){for(;j<l;j++){first[i++]=second[j];}}else{while(second[j]!==undefined){first[i++]=second[j++];}}first.length=i;return first;},grep:function(elems,callback,inv){var retVal,ret=[],i=0,length=elems.length;inv=!!inv;for(;i<length;i++){retVal=!!callback(elems[i],i);if(inv!==retVal){ret.push(elems[i]);}}return ret;},map:function(elems,callback,arg){var value,key,ret=[],i=0,length=elems.length,isArray=elems instanceof jQuery||length!==undefined&&typeof length==="number"&&((length>0&&elems[0]&&elems[length-1])||length===0||jQuery.isArray(elems));if(isArray){for(;i<length;i++){value=callback(elems[i],i,arg);if(value!=null){ret[ret.length]=value;}}}else{for(key in elems){value=callback(elems[key],key,arg);if(value!=null){ret[ret.length]=value;}}}return ret.concat.apply([],ret);},guid:1,proxy:function(fn,context){var tmp,args,proxy;if(typeof context==="string"){tmp=fn[context];context=fn;fn=tmp;}if(!jQuery.isFunction(fn)){return undefined;}args=core_slice.call(arguments,2);proxy=function(){return fn.apply(context,args.concat(core_slice.call(arguments)));};proxy.guid=fn.guid=fn.guid||jQuery.guid++;return proxy;},access:function(elems,fn,key,value,chainable,emptyGet,pass){var exec,bulk=key==null,i=0,length=elems.length;if(key&&typeof key==="object"){for(i in key){jQuery.access(elems,fn,i,key[i],1,emptyGet,value);}chainable=1;}else if(value!==undefined){exec=pass===undefined&&jQuery.isFunction(value);if(bulk){if(exec){exec=fn;fn=function(elem,key,value){return exec.call(jQuery(elem),value);};}else{fn.call(elems,value);fn=null;}}if(fn){for(;i<length;i++){fn(elems[i],key,exec?value.call(elems[i],i,fn(elems[i],key)):value,pass);}}chainable=1;}return chainable?elems:bulk?fn.call(elems):length?fn(elems[0],key):emptyGet;},now:function(){return(new Date()).getTime();}});jQuery.ready.promise=function(obj){if(!readyList){readyList=jQuery.Deferred();if(document.readyState==="complete"){setTimeout(jQuery.ready,1);}else if(document.addEventListener){document.addEventListener("DOMContentLoaded",DOMContentLoaded,false);window.addEventListener("load",jQuery.ready,false);}else{document.attachEvent("onreadystatechange",DOMContentLoaded);window.attachEvent("onload",jQuery.ready);var top=false;try{top=window.frameElement==null&&document.documentElement;}catch(e){}if(top&&top.doScroll){(function doScrollCheck(){if(!jQuery.isReady){try{top.doScroll("left");}catch(e){return setTimeout(doScrollCheck,50);}jQuery.ready();}})();}}}return readyList.promise(obj);};jQuery.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(i,name){class2type["[object "+name+"]"]=name.toLowerCase();});rootjQuery=jQuery(document);var optionsCache={};function createOptions(options){var object=optionsCache[options]={};jQuery.each(options.split(core_rspace),function(_,flag){object[flag]=true;});return object;}jQuery.Callbacks=function(options){options=typeof options==="string"?(optionsCache[options]||createOptions(options)):jQuery.extend({},options);var
memory,fired,firing,firingStart,firingLength,firingIndex,list=[],stack=!options.once&&[],fire=function(data){memory=options.memory&&data;fired=true;firingIndex=firingStart||0;firingStart=0;firingLength=list.length;firing=true;for(;list&&firingIndex<firingLength;firingIndex++){if(list[firingIndex].apply(data[0],data[1])===false&&options.stopOnFalse){memory=false;break;}}firing=false;if(list){if(stack){if(stack.length){fire(stack.shift());}}else if(memory){list=[];}else{self.disable();}}},self={add:function(){if(list){var start=list.length;(function add(args){jQuery.each(args,function(_,arg){var type=jQuery.type(arg);if(type==="function"){if(!options.unique||!self.has(arg)){list.push(arg);}}else if(arg&&arg.length&&type!=="string"){add(arg);}});})(arguments);if(firing){firingLength=list.length;}else if(memory){firingStart=start;fire(memory);}}return this;},remove:function(){if(list){jQuery.each(arguments,function(_,arg){var index;while((index=jQuery.inArray(arg,list,index))>-1){list.splice(index,1);if(firing){if(index<=firingLength){firingLength--;}if(index<=firingIndex){firingIndex--;}}}});}return this;},has:function(fn){return jQuery.inArray(fn,list)>-1;},empty:function(){list=[];return this;},disable:function(){list=stack=memory=undefined;return this;},disabled:function(){return!list;},lock:function(){stack=undefined;if(!memory){self.disable();}return this;},locked:function(){return!stack;},fireWith:function(context,args){args=args||[];args=[context,args.slice?args.slice():args];if(list&&(!fired||stack)){if(firing){stack.push(args);}else{fire(args);}}return this;},fire:function(){self.fireWith(this,arguments);return this;},fired:function(){return!!fired;}};return self;};jQuery.extend({Deferred:function(func){var tuples=[["resolve","done",jQuery.Callbacks("once memory"),"resolved"],["reject","fail",jQuery.Callbacks("once memory"),"rejected"],["notify","progress",jQuery.Callbacks("memory")]],state="pending",promise={state:function(){return state;},always:function(){deferred.done(arguments).fail(arguments);return this;},then:function(){var fns=arguments;return jQuery.Deferred(function(newDefer){jQuery.each(tuples,function(i,tuple){var action=tuple[0],fn=fns[i];deferred[tuple[1]](jQuery.isFunction(fn)?function(){var returned=fn.apply(this,arguments);if(returned&&jQuery.isFunction(returned.promise)){returned.promise().done(newDefer.resolve).fail(newDefer.reject).progress(newDefer.notify);}else{newDefer[action+"With"](this===deferred?newDefer:this,[returned]);}}:newDefer[action]);});fns=null;}).promise();},promise:function(obj){return obj!=null?jQuery.extend(obj,promise):promise;}},deferred={};promise.pipe=promise.then;jQuery.each(tuples,function(i,tuple){var list=tuple[2],stateString=tuple[3];promise[tuple[1]]=list.add;if(stateString){list.add(function(){state=stateString;},tuples[i^1][2].disable,tuples[2][2].lock);}deferred[tuple[0]]=list.fire;deferred[tuple[0]+"With"]=list.fireWith;});promise.promise(deferred);if(func){func.call(deferred,deferred);}return deferred;},when:function(subordinate){var i=0,resolveValues=core_slice.call(arguments),length=resolveValues.length,remaining=length!==1||(subordinate&&jQuery.isFunction(subordinate.promise))?length:0,deferred=remaining===1?subordinate:jQuery.Deferred(),updateFunc=function(i,contexts,values){return function(value){contexts[i]=this;values[i]=arguments.length>1?core_slice.call(arguments):value;if(values===progressValues){deferred.notifyWith(contexts,values);}else if(!(--remaining)){deferred.resolveWith(contexts,values);}};},progressValues,progressContexts,resolveContexts;if(length>1){progressValues=new Array(length);progressContexts=new Array(length);resolveContexts=new Array(length);for(;i<length;i++){if(resolveValues[i]&&jQuery.isFunction(resolveValues[i].promise)){resolveValues[i].promise().done(updateFunc(i,resolveContexts,resolveValues)).fail(deferred.reject).progress(updateFunc(i,progressContexts,progressValues));}else{--remaining;}}}if(!remaining){deferred.resolveWith(resolveContexts,resolveValues);}return deferred.promise();}});jQuery.support=(function(){var support,all,a,select,opt,input,fragment,eventName,i,isSupported,clickFn,div=document.createElement("div");div.setAttribute("className","t");div.innerHTML="  <link/><table></table><a href='/a'>a</a><input type='checkbox'/>";all=div.getElementsByTagName("*");a=div.getElementsByTagName("a")[0];if(!all||!a||!all.length){return{};}select=document.createElement("select");opt=select.appendChild(document.createElement("option"));input=div.getElementsByTagName("input")[0];a.style.cssText="top:1px;float:left;opacity:.5";support={leadingWhitespace:(div.firstChild.nodeType===3),tbody:!div.getElementsByTagName("tbody").length,htmlSerialize:!!div.getElementsByTagName("link").length,style:/top/.test(a.getAttribute("style")),hrefNormalized:(a.getAttribute("href")==="/a"),opacity:/^0.5/.test(a.style.opacity),cssFloat:!!a.style.cssFloat,checkOn:(input.value==="on"),optSelected:opt.selected,getSetAttribute:div.className!=="t",enctype:!!document.createElement("form").enctype,html5Clone:document.createElement("nav").cloneNode(true).outerHTML!=="<:nav></:nav>",boxModel:(document.compatMode==="CSS1Compat"),submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true,boxSizingReliable:true,pixelPosition:false};input.checked=true;support.noCloneChecked=input.cloneNode(true).checked;select.disabled=true;support.optDisabled=!opt.disabled;try{delete div.test;}catch(e){support.deleteExpando=false;}if(!div.addEventListener&&div.attachEvent&&div.fireEvent){div.attachEvent("onclick",clickFn=function(){support.noCloneEvent=false;});div.cloneNode(true).fireEvent("onclick");div.detachEvent("onclick",clickFn);}input=document.createElement("input");input.value="t";input.setAttribute("type","radio");support.radioValue=input.value==="t";input.setAttribute("checked","checked");input.setAttribute("name","t");div.appendChild(input);fragment=document.createDocumentFragment();fragment.appendChild(div.lastChild);support.checkClone=fragment.cloneNode(true).cloneNode(true).lastChild.checked;support.appendChecked=input.checked;fragment.removeChild(input);fragment.appendChild(div);if(div.attachEvent){for(i in{submit:true,change:true,focusin:true}){eventName="on"+i;isSupported=(eventName in div);if(!isSupported){div.setAttribute(eventName,"return;");isSupported=(typeof div[eventName]==="function");}support[i+"Bubbles"]=isSupported;}}jQuery(function(){var container,div,tds,marginDiv,divReset="padding:0;margin:0;border:0;display:block;overflow:hidden;",body=document.getElementsByTagName("body")[0];if(!body){return;}container=document.createElement("div");container.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px";body.insertBefore(container,body.firstChild);div=document.createElement("div");container.appendChild(div);div.innerHTML="<table><tr><td></td><td>t</td></tr></table>";tds=div.getElementsByTagName("td");tds[0].style.cssText="padding:0;margin:0;border:0;display:none";isSupported=(tds[0].offsetHeight===0);tds[0].style.display="";tds[1].style.display="none";support.reliableHiddenOffsets=isSupported&&(tds[0].offsetHeight===0);div.innerHTML="";div.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;";support.boxSizing=(div.offsetWidth===4);support.doesNotIncludeMarginInBodyOffset=(body.offsetTop!==1);if(window.getComputedStyle){support.pixelPosition=(window.getComputedStyle(div,null)||{}).top!=="1%";support.boxSizingReliable=(window.getComputedStyle(div,null)||{width:"4px"}).width==="4px";marginDiv=document.createElement("div");marginDiv.style.cssText=div.style.cssText=divReset;marginDiv.style.marginRight=marginDiv.style.width="0";div.style.width="1px";div.appendChild(marginDiv);support.reliableMarginRight=!parseFloat((window.getComputedStyle(marginDiv,null)||{}).marginRight);}if(typeof div.style.zoom!=="undefined"){div.innerHTML="";div.style.cssText=divReset+"width:1px;padding:1px;display:inline;zoom:1";support.inlineBlockNeedsLayout=(div.offsetWidth===3);div.style.display="block";div.style.overflow="visible";div.innerHTML="<div></div>";div.firstChild.style.width="5px";support.shrinkWrapBlocks=(div.offsetWidth!==3);container.style.zoom=1;}body.removeChild(container);container=div=tds=marginDiv=null;});fragment.removeChild(div);all=a=select=opt=input=fragment=div=null;return support;})();var rbrace=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,rmultiDash=/([A-Z])/g;jQuery.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(jQuery.fn.jquery+Math.random()).replace(/\D/g,""),noData:{"embed":true,"object":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000","applet":true},hasData:function(elem){elem=elem.nodeType?jQuery.cache[elem[jQuery.expando]]:elem[jQuery.expando];return!!elem&&!isEmptyDataObject(elem);},data:function(elem,name,data,pvt){if(!jQuery.acceptData(elem)){return;}var thisCache,ret,internalKey=jQuery.expando,getByName=typeof name==="string",isNode=elem.nodeType,cache=isNode?jQuery.cache:elem,id=isNode?elem[internalKey]:elem[internalKey]&&internalKey;if((!id||!cache[id]||(!pvt&&!cache[id].data))&&getByName&&data===undefined){return;}if(!id){if(isNode){elem[internalKey]=id=jQuery.deletedIds.pop()||jQuery.guid++;}else{id=internalKey;}}if(!cache[id]){cache[id]={};if(!isNode){cache[id].toJSON=jQuery.noop;}}if(typeof name==="object"||typeof name==="function"){if(pvt){cache[id]=jQuery.extend(cache[id],name);}else{cache[id].data=jQuery.extend(cache[id].data,name);}}thisCache=cache[id];if(!pvt){if(!thisCache.data){thisCache.data={};}thisCache=thisCache.data;}if(data!==undefined){thisCache[jQuery.camelCase(name)]=data;}if(getByName){ret=thisCache[name];if(ret==null){ret=thisCache[jQuery.camelCase(name)];}}else{ret=thisCache;}return ret;},removeData:function(elem,name,pvt){if(!jQuery.acceptData(elem)){return;}var thisCache,i,l,isNode=elem.nodeType,cache=isNode?jQuery.cache:elem,id=isNode?elem[jQuery.expando]:jQuery.expando;if(!cache[id]){return;}if(name){thisCache=pvt?cache[id]:cache[id].data;if(thisCache){if(!jQuery.isArray(name)){if(name in thisCache){name=[name];}else{name=jQuery.camelCase(name);if(name in thisCache){name=[name];}else{name=name.split(" ");}}}for(i=0,l=name.length;i<l;i++){delete thisCache[name[i]];}if(!(pvt?isEmptyDataObject:jQuery.isEmptyObject)(thisCache)){return;}}}if(!pvt){delete cache[id].data;if(!isEmptyDataObject(cache[id])){return;}}if(isNode){jQuery.cleanData([elem],true);}else if(jQuery.support.deleteExpando||cache!=cache.window){delete cache[id];}else{cache[id]=null;}},_data:function(elem,name,data){return jQuery.data(elem,name,data,true);},acceptData:function(elem){var noData=elem.nodeName&&jQuery.noData[elem.nodeName.toLowerCase()];return!noData||noData!==true&&elem.getAttribute("classid")===noData;}});jQuery.fn.extend({data:function(key,value){var parts,part,attr,name,l,elem=this[0],i=0,data=null;if(key===undefined){if(this.length){data=jQuery.data(elem);if(elem.nodeType===1&&!jQuery._data(elem,"parsedAttrs")){attr=elem.attributes;for(l=attr.length;i<l;i++){name=attr[i].name;if(!name.indexOf("data-")){name=jQuery.camelCase(name.substring(5));dataAttr(elem,name,data[name]);}}jQuery._data(elem,"parsedAttrs",true);}}return data;}if(typeof key==="object"){return this.each(function(){jQuery.data(this,key);});}parts=key.split(".",2);parts[1]=parts[1]?"."+parts[1]:"";part=parts[1]+"!";return jQuery.access(this,function(value){if(value===undefined){data=this.triggerHandler("getData"+part,[parts[0]]);if(data===undefined&&elem){data=jQuery.data(elem,key);data=dataAttr(elem,key,data);}return data===undefined&&parts[1]?this.data(parts[0]):data;}parts[1]=value;this.each(function(){var self=jQuery(this);self.triggerHandler("setData"+part,parts);jQuery.data(this,key,value);self.triggerHandler("changeData"+part,parts);});},null,value,arguments.length>1,null,false);},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});}});function dataAttr(elem,key,data){if(data===undefined&&elem.nodeType===1){var name="data-"+key.replace(rmultiDash,"-$1").toLowerCase();data=elem.getAttribute(name);if(typeof data==="string"){try{data=data==="true"?true:data==="false"?false:data==="null"?null:+data+""===data?+data:rbrace.test(data)?jQuery.parseJSON(data):data;}catch(e){}jQuery.data(elem,key,data);}else{data=undefined;}}return data;}function isEmptyDataObject(obj){var name;for(name in obj){if(name==="data"&&jQuery.isEmptyObject(obj[name])){continue;}if(name!=="toJSON"){return false;}}return true;}jQuery.extend({queue:function(elem,type,data){var queue;if(elem){type=(type||"fx")+"queue";queue=jQuery._data(elem,type);if(data){if(!queue||jQuery.isArray(data)){queue=jQuery._data(elem,type,jQuery.makeArray(data));}else{queue.push(data);}}return queue||[];}},dequeue:function(elem,type){type=type||"fx";var queue=jQuery.queue(elem,type),startLength=queue.length,fn=queue.shift(),hooks=jQuery._queueHooks(elem,type),next=function(){jQuery.dequeue(elem,type);};if(fn==="inprogress"){fn=queue.shift();startLength--;}if(fn){if(type==="fx"){queue.unshift("inprogress");}delete hooks.stop;fn.call(elem,next,hooks);}if(!startLength&&hooks){hooks.empty.fire();}},_queueHooks:function(elem,type){var key=type+"queueHooks";return jQuery._data(elem,key)||jQuery._data(elem,key,{empty:jQuery.Callbacks("once memory").add(function(){jQuery.removeData(elem,type+"queue",true);jQuery.removeData(elem,key,true);})});}});jQuery.fn.extend({queue:function(type,data){var setter=2;if(typeof type!=="string"){data=type;type="fx";setter--;}if(arguments.length<setter){return jQuery.queue(this[0],type);}return data===undefined?this:this.each(function(){var queue=jQuery.queue(this,type,data);jQuery._queueHooks(this,type);if(type==="fx"&&queue[0]!=="inprogress"){jQuery.dequeue(this,type);}});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});},delay:function(time,type){time=jQuery.fx?jQuery.fx.speeds[time]||time:time;type=type||"fx";return this.queue(type,function(next,hooks){var timeout=setTimeout(next,time);hooks.stop=function(){clearTimeout(timeout);};});},clearQueue:function(type){return this.queue(type||"fx",[]);},promise:function(type,obj){var tmp,count=1,defer=jQuery.Deferred(),elements=this,i=this.length,resolve=function(){if(!(--count)){defer.resolveWith(elements,[elements]);}};if(typeof type!=="string"){obj=type;type=undefined;}type=type||"fx";while(i--){tmp=jQuery._data(elements[i],type+"queueHooks");if(tmp&&tmp.empty){count++;tmp.empty.add(resolve);}}resolve();return defer.promise(obj);}});var nodeHook,boolHook,fixSpecified,rclass=/[\t\r\n]/g,rreturn=/\r/g,rtype=/^(?:button|input)$/i,rfocusable=/^(?:button|input|object|select|textarea)$/i,rclickable=/^a(?:rea|)$/i,rboolean=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,getSetAttribute=jQuery.support.getSetAttribute;jQuery.fn.extend({attr:function(name,value){return jQuery.access(this,jQuery.attr,name,value,arguments.length>1);},removeAttr:function(name){return this.each(function(){jQuery.removeAttr(this,name);});},prop:function(name,value){return jQuery.access(this,jQuery.prop,name,value,arguments.length>1);},removeProp:function(name){name=jQuery.propFix[name]||name;return this.each(function(){try{this[name]=undefined;delete this[name];}catch(e){}});},addClass:function(value){var classNames,i,l,elem,setClass,c,cl;if(jQuery.isFunction(value)){return this.each(function(j){jQuery(this).addClass(value.call(this,j,this.className));});}if(value&&typeof value==="string"){classNames=value.split(core_rspace);for(i=0,l=this.length;i<l;i++){elem=this[i];if(elem.nodeType===1){if(!elem.className&&classNames.length===1){elem.className=value;}else{setClass=" "+elem.className+" ";for(c=0,cl=classNames.length;c<cl;c++){if(setClass.indexOf(" "+classNames[c]+" ")<0){setClass+=classNames[c]+" ";}}elem.className=jQuery.trim(setClass);}}}}return this;},removeClass:function(value){var removes,className,elem,c,cl,i,l;if(jQuery.isFunction(value)){return this.each(function(j){jQuery(this).removeClass(value.call(this,j,this.className));});}if((value&&typeof value==="string")||value===undefined){removes=(value||"").split(core_rspace);for(i=0,l=this.length;i<l;i++){elem=this[i];if(elem.nodeType===1&&elem.className){className=(" "+elem.className+" ").replace(rclass," ");for(c=0,cl=removes.length;c<cl;c++){while(className.indexOf(" "+removes[c]+" ")>=0){className=className.replace(" "+removes[c]+" "," ");}}elem.className=value?jQuery.trim(className):"";}}}return this;},toggleClass:function(value,stateVal){var type=typeof value,isBool=typeof stateVal==="boolean";if(jQuery.isFunction(value)){return this.each(function(i){jQuery(this).toggleClass(value.call(this,i,this.className,stateVal),stateVal);});}return this.each(function(){if(type==="string"){var className,i=0,self=jQuery(this),state=stateVal,classNames=value.split(core_rspace);while((className=classNames[i++])){state=isBool?state:!self.hasClass(className);self[state?"addClass":"removeClass"](className);}}else if(type==="undefined"||type==="boolean"){if(this.className){jQuery._data(this,"__className__",this.className);}this.className=this.className||value===false?"":jQuery._data(this,"__className__")||"";}});},hasClass:function(selector){var className=" "+selector+" ",i=0,l=this.length;for(;i<l;i++){if(this[i].nodeType===1&&(" "+this[i].className+" ").replace(rclass," ").indexOf(className)>=0){return true;}}return false;},val:function(value){var hooks,ret,isFunction,elem=this[0];if(!arguments.length){if(elem){hooks=jQuery.valHooks[elem.type]||jQuery.valHooks[elem.nodeName.toLowerCase()];if(hooks&&"get"in hooks&&(ret=hooks.get(elem,"value"))!==undefined){return ret;}ret=elem.value;return typeof ret==="string"?ret.replace(rreturn,""):ret==null?"":ret;}return;}isFunction=jQuery.isFunction(value);return this.each(function(i){var val,self=jQuery(this);if(this.nodeType!==1){return;}if(isFunction){val=value.call(this,i,self.val());}else{val=value;}if(val==null){val="";}else if(typeof val==="number"){val+="";}else if(jQuery.isArray(val)){val=jQuery.map(val,function(value){return value==null?"":value+"";});}hooks=jQuery.valHooks[this.type]||jQuery.valHooks[this.nodeName.toLowerCase()];if(!hooks||!("set"in hooks)||hooks.set(this,val,"value")===undefined){this.value=val;}});}});jQuery.extend({valHooks:{option:{get:function(elem){var val=elem.attributes.value;return!val||val.specified?elem.value:elem.text;}},select:{get:function(elem){var value,option,options=elem.options,index=elem.selectedIndex,one=elem.type==="select-one"||index<0,values=one?null:[],max=one?index+1:options.length,i=index<0?max:one?index:0;for(;i<max;i++){option=options[i];if((option.selected||i===index)&&(jQuery.support.optDisabled?!option.disabled:option.getAttribute("disabled")===null)&&(!option.parentNode.disabled||!jQuery.nodeName(option.parentNode,"optgroup"))){value=jQuery(option).val();if(one){return value;}values.push(value);}}return values;},set:function(elem,value){var values=jQuery.makeArray(value);jQuery(elem).find("option").each(function(){this.selected=jQuery.inArray(jQuery(this).val(),values)>=0;});if(!values.length){elem.selectedIndex=-1;}return values;}}},attrFn:{},attr:function(elem,name,value,pass){var ret,hooks,notxml,nType=elem.nodeType;if(!elem||nType===3||nType===8||nType===2){return;}if(pass&&jQuery.isFunction(jQuery.fn[name])){return jQuery(elem)[name](value);}if(typeof elem.getAttribute==="undefined"){return jQuery.prop(elem,name,value);}notxml=nType!==1||!jQuery.isXMLDoc(elem);if(notxml){name=name.toLowerCase();hooks=jQuery.attrHooks[name]||(rboolean.test(name)?boolHook:nodeHook);}if(value!==undefined){if(value===null){jQuery.removeAttr(elem,name);return;}else if(hooks&&"set"in hooks&&notxml&&(ret=hooks.set(elem,value,name))!==undefined){return ret;}else{elem.setAttribute(name,value+"");return value;}}else if(hooks&&"get"in hooks&&notxml&&(ret=hooks.get(elem,name))!==null){return ret;}else{ret=elem.getAttribute(name);return ret===null?undefined:ret;}},removeAttr:function(elem,value){var propName,attrNames,name,isBool,i=0;if(value&&elem.nodeType===1){attrNames=value.split(core_rspace);for(;i<attrNames.length;i++){name=attrNames[i];if(name){propName=jQuery.propFix[name]||name;isBool=rboolean.test(name);if(!isBool){jQuery.attr(elem,name,"");}elem.removeAttribute(getSetAttribute?name:propName);if(isBool&&propName in elem){elem[propName]=false;}}}}},attrHooks:{type:{set:function(elem,value){if(rtype.test(elem.nodeName)&&elem.parentNode){jQuery.error("type property can't be changed");}else if(!jQuery.support.radioValue&&value==="radio"&&jQuery.nodeName(elem,"input")){var val=elem.value;elem.setAttribute("type",value);if(val){elem.value=val;}return value;}}},value:{get:function(elem,name){if(nodeHook&&jQuery.nodeName(elem,"button")){return nodeHook.get(elem,name);}return name in elem?elem.value:null;},set:function(elem,value,name){if(nodeHook&&jQuery.nodeName(elem,"button")){return nodeHook.set(elem,value,name);}elem.value=value;}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(elem,name,value){var ret,hooks,notxml,nType=elem.nodeType;if(!elem||nType===3||nType===8||nType===2){return;}notxml=nType!==1||!jQuery.isXMLDoc(elem);if(notxml){name=jQuery.propFix[name]||name;hooks=jQuery.propHooks[name];}if(value!==undefined){if(hooks&&"set"in hooks&&(ret=hooks.set(elem,value,name))!==undefined){return ret;}else{return(elem[name]=value);}}else{if(hooks&&"get"in hooks&&(ret=hooks.get(elem,name))!==null){return ret;}else{return elem[name];}}},propHooks:{tabIndex:{get:function(elem){var attributeNode=elem.getAttributeNode("tabindex");return attributeNode&&attributeNode.specified?parseInt(attributeNode.value,10):rfocusable.test(elem.nodeName)||rclickable.test(elem.nodeName)&&elem.href?0:undefined;}}}});boolHook={get:function(elem,name){var attrNode,property=jQuery.prop(elem,name);return property===true||typeof property!=="boolean"&&(attrNode=elem.getAttributeNode(name))&&attrNode.nodeValue!==false?name.toLowerCase():undefined;},set:function(elem,value,name){var propName;if(value===false){jQuery.removeAttr(elem,name);}else{propName=jQuery.propFix[name]||name;if(propName in elem){elem[propName]=true;}elem.setAttribute(name,name.toLowerCase());}return name;}};if(!getSetAttribute){fixSpecified={name:true,id:true,coords:true};nodeHook=jQuery.valHooks.button={get:function(elem,name){var ret;ret=elem.getAttributeNode(name);return ret&&(fixSpecified[name]?ret.value!=="":ret.specified)?ret.value:undefined;},set:function(elem,value,name){var ret=elem.getAttributeNode(name);if(!ret){ret=document.createAttribute(name);elem.setAttributeNode(ret);}return(ret.value=value+"");}};jQuery.each(["width","height"],function(i,name){jQuery.attrHooks[name]=jQuery.extend(jQuery.attrHooks[name],{set:function(elem,value){if(value===""){elem.setAttribute(name,"auto");return value;}}});});jQuery.attrHooks.contenteditable={get:nodeHook.get,set:function(elem,value,name){if(value===""){value="false";}nodeHook.set(elem,value,name);}};}if(!jQuery.support.hrefNormalized){jQuery.each(["href","src","width","height"],function(i,name){jQuery.attrHooks[name]=jQuery.extend(jQuery.attrHooks[name],{get:function(elem){var ret=elem.getAttribute(name,2);return ret===null?undefined:ret;}});});}if(!jQuery.support.style){jQuery.attrHooks.style={get:function(elem){return elem.style.cssText.toLowerCase()||undefined;},set:function(elem,value){return(elem.style.cssText=value+"");}};}if(!jQuery.support.optSelected){jQuery.propHooks.selected=jQuery.extend(jQuery.propHooks.selected,{get:function(elem){var parent=elem.parentNode;if(parent){parent.selectedIndex;if(parent.parentNode){parent.parentNode.selectedIndex;}}return null;}});}if(!jQuery.support.enctype){jQuery.propFix.enctype="encoding";}if(!jQuery.support.checkOn){jQuery.each(["radio","checkbox"],function(){jQuery.valHooks[this]={get:function(elem){return elem.getAttribute("value")===null?"on":elem.value;}};});}jQuery.each(["radio","checkbox"],function(){jQuery.valHooks[this]=jQuery.extend(jQuery.valHooks[this],{set:function(elem,value){if(jQuery.isArray(value)){return(elem.checked=jQuery.inArray(jQuery(elem).val(),value)>=0);}}});});var rformElems=/^(?:textarea|input|select)$/i,rtypenamespace=/^([^\.]*|)(?:\.(.+)|)$/,rhoverHack=/(?:^|\s)hover(\.\S+|)\b/,rkeyEvent=/^key/,rmouseEvent=/^(?:mouse|contextmenu)|click/,rfocusMorph=/^(?:focusinfocus|focusoutblur)$/,hoverHack=function(events){return jQuery.event.special.hover?events:events.replace(rhoverHack,"mouseenter$1 mouseleave$1");};jQuery.event={add:function(elem,types,handler,data,selector){var elemData,eventHandle,events,t,tns,type,namespaces,handleObj,handleObjIn,handlers,special;if(elem.nodeType===3||elem.nodeType===8||!types||!handler||!(elemData=jQuery._data(elem))){return;}if(handler.handler){handleObjIn=handler;handler=handleObjIn.handler;selector=handleObjIn.selector;}if(!handler.guid){handler.guid=jQuery.guid++;}events=elemData.events;if(!events){elemData.events=events={};}eventHandle=elemData.handle;if(!eventHandle){elemData.handle=eventHandle=function(e){return typeof jQuery!=="undefined"&&(!e||jQuery.event.triggered!==e.type)?jQuery.event.dispatch.apply(eventHandle.elem,arguments):undefined;};eventHandle.elem=elem;}types=jQuery.trim(hoverHack(types)).split(" ");for(t=0;t<types.length;t++){tns=rtypenamespace.exec(types[t])||[];type=tns[1];namespaces=(tns[2]||"").split(".").sort();special=jQuery.event.special[type]||{};type=(selector?special.delegateType:special.bindType)||type;special=jQuery.event.special[type]||{};handleObj=jQuery.extend({type:type,origType:tns[1],data:data,handler:handler,guid:handler.guid,selector:selector,needsContext:selector&&jQuery.expr.match.needsContext.test(selector),namespace:namespaces.join(".")},handleObjIn);handlers=events[type];if(!handlers){handlers=events[type]=[];handlers.delegateCount=0;if(!special.setup||special.setup.call(elem,data,namespaces,eventHandle)===false){if(elem.addEventListener){elem.addEventListener(type,eventHandle,false);}else if(elem.attachEvent){elem.attachEvent("on"+type,eventHandle);}}}if(special.add){special.add.call(elem,handleObj);if(!handleObj.handler.guid){handleObj.handler.guid=handler.guid;}}if(selector){handlers.splice(handlers.delegateCount++,0,handleObj);}else{handlers.push(handleObj);}jQuery.event.global[type]=true;}elem=null;},global:{},remove:function(elem,types,handler,selector,mappedTypes){var t,tns,type,origType,namespaces,origCount,j,events,special,eventType,handleObj,elemData=jQuery.hasData(elem)&&jQuery._data(elem);if(!elemData||!(events=elemData.events)){return;}types=jQuery.trim(hoverHack(types||"")).split(" ");for(t=0;t<types.length;t++){tns=rtypenamespace.exec(types[t])||[];type=origType=tns[1];namespaces=tns[2];if(!type){for(type in events){jQuery.event.remove(elem,type+types[t],handler,selector,true);}continue;}special=jQuery.event.special[type]||{};type=(selector?special.delegateType:special.bindType)||type;eventType=events[type]||[];origCount=eventType.length;namespaces=namespaces?new RegExp("(^|\\.)"+namespaces.split(".").sort().join("\\.(?:.*\\.|)")+"(\\.|$)"):null;for(j=0;j<eventType.length;j++){handleObj=eventType[j];if((mappedTypes||origType===handleObj.origType)&&(!handler||handler.guid===handleObj.guid)&&(!namespaces||namespaces.test(handleObj.namespace))&&(!selector||selector===handleObj.selector||selector==="**"&&handleObj.selector)){eventType.splice(j--,1);if(handleObj.selector){eventType.delegateCount--;}if(special.remove){special.remove.call(elem,handleObj);}}}if(eventType.length===0&&origCount!==eventType.length){if(!special.teardown||special.teardown.call(elem,namespaces,elemData.handle)===false){jQuery.removeEvent(elem,type,elemData.handle);}delete events[type];}}if(jQuery.isEmptyObject(events)){delete elemData.handle;jQuery.removeData(elem,"events",true);}},customEvent:{"getData":true,"setData":true,"changeData":true},trigger:function(event,data,elem,onlyHandlers){if(elem&&(elem.nodeType===3||elem.nodeType===8)){return;}var cache,exclusive,i,cur,old,ontype,special,handle,eventPath,bubbleType,type=event.type||event,namespaces=[];if(rfocusMorph.test(type+jQuery.event.triggered)){return;}if(type.indexOf("!")>=0){type=type.slice(0,-1);exclusive=true;}if(type.indexOf(".")>=0){namespaces=type.split(".");type=namespaces.shift();namespaces.sort();}if((!elem||jQuery.event.customEvent[type])&&!jQuery.event.global[type]){return;}event=typeof event==="object"?event[jQuery.expando]?event:new jQuery.Event(type,event):new jQuery.Event(type);event.type=type;event.isTrigger=true;event.exclusive=exclusive;event.namespace=namespaces.join(".");event.namespace_re=event.namespace?new RegExp("(^|\\.)"+namespaces.join("\\.(?:.*\\.|)")+"(\\.|$)"):null;ontype=type.indexOf(":")<0?"on"+type:"";if(!elem){cache=jQuery.cache;for(i in cache){if(cache[i].events&&cache[i].events[type]){jQuery.event.trigger(event,data,cache[i].handle.elem,true);}}return;}event.result=undefined;if(!event.target){event.target=elem;}data=data!=null?jQuery.makeArray(data):[];data.unshift(event);special=jQuery.event.special[type]||{};if(special.trigger&&special.trigger.apply(elem,data)===false){return;}eventPath=[[elem,special.bindType||type]];if(!onlyHandlers&&!special.noBubble&&!jQuery.isWindow(elem)){bubbleType=special.delegateType||type;cur=rfocusMorph.test(bubbleType+type)?elem:elem.parentNode;for(old=elem;cur;cur=cur.parentNode){eventPath.push([cur,bubbleType]);old=cur;}if(old===(elem.ownerDocument||document)){eventPath.push([old.defaultView||old.parentWindow||window,bubbleType]);}}for(i=0;i<eventPath.length&&!event.isPropagationStopped();i++){cur=eventPath[i][0];event.type=eventPath[i][1];handle=(jQuery._data(cur,"events")||{})[event.type]&&jQuery._data(cur,"handle");if(handle){handle.apply(cur,data);}handle=ontype&&cur[ontype];if(handle&&jQuery.acceptData(cur)&&handle.apply&&handle.apply(cur,data)===false){event.preventDefault();}}event.type=type;if(!onlyHandlers&&!event.isDefaultPrevented()){if((!special._default||special._default.apply(elem.ownerDocument,data)===false)&&!(type==="click"&&jQuery.nodeName(elem,"a"))&&jQuery.acceptData(elem)){if(ontype&&elem[type]&&((type!=="focus"&&type!=="blur")||event.target.offsetWidth!==0)&&!jQuery.isWindow(elem)){old=elem[ontype];if(old){elem[ontype]=null;}jQuery.event.triggered=type;elem[type]();jQuery.event.triggered=undefined;if(old){elem[ontype]=old;}}}}return event.result;},dispatch:function(event){event=jQuery.event.fix(event||window.event);var i,j,cur,ret,selMatch,matched,matches,handleObj,sel,related,handlers=((jQuery._data(this,"events")||{})[event.type]||[]),delegateCount=handlers.delegateCount,args=core_slice.call(arguments),run_all=!event.exclusive&&!event.namespace,special=jQuery.event.special[event.type]||{},handlerQueue=[];args[0]=event;event.delegateTarget=this;if(special.preDispatch&&special.preDispatch.call(this,event)===false){return;}if(delegateCount&&!(event.button&&event.type==="click")){for(cur=event.target;cur!=this;cur=cur.parentNode||this){if(cur.disabled!==true||event.type!=="click"){selMatch={};matches=[];for(i=0;i<delegateCount;i++){handleObj=handlers[i];sel=handleObj.selector;if(selMatch[sel]===undefined){selMatch[sel]=handleObj.needsContext?jQuery(sel,this).index(cur)>=0:jQuery.find(sel,this,null,[cur]).length;}if(selMatch[sel]){matches.push(handleObj);}}if(matches.length){handlerQueue.push({elem:cur,matches:matches});}}}}if(handlers.length>delegateCount){handlerQueue.push({elem:this,matches:handlers.slice(delegateCount)});}for(i=0;i<handlerQueue.length&&!event.isPropagationStopped();i++){matched=handlerQueue[i];event.currentTarget=matched.elem;for(j=0;j<matched.matches.length&&!event.isImmediatePropagationStopped();j++){handleObj=matched.matches[j];if(run_all||(!event.namespace&&!handleObj.namespace)||event.namespace_re&&event.namespace_re.test(handleObj.namespace)){event.data=handleObj.data;event.handleObj=handleObj;ret=((jQuery.event.special[handleObj.origType]||{}).handle||handleObj.handler).apply(matched.elem,args);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}}}}if(special.postDispatch){special.postDispatch.call(this,event);}return event.result;},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(event,original){if(event.which==null){event.which=original.charCode!=null?original.charCode:original.keyCode;}return event;}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(event,original){var eventDoc,doc,body,button=original.button,fromElement=original.fromElement;if(event.pageX==null&&original.clientX!=null){eventDoc=event.target.ownerDocument||document;doc=eventDoc.documentElement;body=eventDoc.body;event.pageX=original.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc&&doc.clientLeft||body&&body.clientLeft||0);event.pageY=original.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc&&doc.clientTop||body&&body.clientTop||0);}if(!event.relatedTarget&&fromElement){event.relatedTarget=fromElement===event.target?original.toElement:fromElement;}if(!event.which&&button!==undefined){event.which=(button&1?1:(button&2?3:(button&4?2:0)));}return event;}},fix:function(event){if(event[jQuery.expando]){return event;}var i,prop,originalEvent=event,fixHook=jQuery.event.fixHooks[event.type]||{},copy=fixHook.props?this.props.concat(fixHook.props):this.props;event=jQuery.Event(originalEvent);for(i=copy.length;i;){prop=copy[--i];event[prop]=originalEvent[prop];}if(!event.target){event.target=originalEvent.srcElement||document;}if(event.target.nodeType===3){event.target=event.target.parentNode;}event.metaKey=!!event.metaKey;return fixHook.filter?fixHook.filter(event,originalEvent):event;},special:{load:{noBubble:true},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(data,namespaces,eventHandle){if(jQuery.isWindow(this)){this.onbeforeunload=eventHandle;}},teardown:function(namespaces,eventHandle){if(this.onbeforeunload===eventHandle){this.onbeforeunload=null;}}}},simulate:function(type,elem,event,bubble){var e=jQuery.extend(new jQuery.Event(),event,{type:type,isSimulated:true,originalEvent:{}});if(bubble){jQuery.event.trigger(e,null,elem);}else{jQuery.event.dispatch.call(elem,e);}if(e.isDefaultPrevented()){event.preventDefault();}}};jQuery.event.handle=jQuery.event.dispatch;jQuery.removeEvent=document.removeEventListener?function(elem,type,handle){if(elem.removeEventListener){elem.removeEventListener(type,handle,false);}}:function(elem,type,handle){var name="on"+type;if(elem.detachEvent){if(typeof elem[name]==="undefined"){elem[name]=null;}elem.detachEvent(name,handle);}};jQuery.Event=function(src,props){if(!(this instanceof jQuery.Event)){return new jQuery.Event(src,props);}if(src&&src.type){this.originalEvent=src;this.type=src.type;this.isDefaultPrevented=(src.defaultPrevented||src.returnValue===false||src.getPreventDefault&&src.getPreventDefault())?returnTrue:returnFalse;}else{this.type=src;}if(props){jQuery.extend(this,props);}this.timeStamp=src&&src.timeStamp||jQuery.now();this[jQuery.expando]=true;};function returnFalse(){return false;}function returnTrue(){return true;}jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e){return;}if(e.preventDefault){e.preventDefault();}else{e.returnValue=false;}},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e){return;}if(e.stopPropagation){e.stopPropagation();}e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};jQuery.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(orig,fix){jQuery.event.special[orig]={delegateType:fix,bindType:fix,handle:function(event){var ret,target=this,related=event.relatedTarget,handleObj=event.handleObj,selector=handleObj.selector;if(!related||(related!==target&&!jQuery.contains(target,related))){event.type=handleObj.origType;ret=handleObj.handler.apply(this,arguments);event.type=fix;}return ret;}};});if(!jQuery.support.submitBubbles){jQuery.event.special.submit={setup:function(){if(jQuery.nodeName(this,"form")){return false;}jQuery.event.add(this,"click._submit keypress._submit",function(e){var elem=e.target,form=jQuery.nodeName(elem,"input")||jQuery.nodeName(elem,"button")?elem.form:undefined;if(form&&!jQuery._data(form,"_submit_attached")){jQuery.event.add(form,"submit._submit",function(event){event._submit_bubble=true;});jQuery._data(form,"_submit_attached",true);}});},postDispatch:function(event){if(event._submit_bubble){delete event._submit_bubble;if(this.parentNode&&!event.isTrigger){jQuery.event.simulate("submit",this.parentNode,event,true);}}},teardown:function(){if(jQuery.nodeName(this,"form")){return false;}jQuery.event.remove(this,"._submit");}};}if(!jQuery.support.changeBubbles){jQuery.event.special.change={setup:function(){if(rformElems.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio"){jQuery.event.add(this,"propertychange._change",function(event){if(event.originalEvent.propertyName==="checked"){this._just_changed=true;}});jQuery.event.add(this,"click._change",function(event){if(this._just_changed&&!event.isTrigger){this._just_changed=false;}jQuery.event.simulate("change",this,event,true);});}return false;}jQuery.event.add(this,"beforeactivate._change",function(e){var elem=e.target;if(rformElems.test(elem.nodeName)&&!jQuery._data(elem,"_change_attached")){jQuery.event.add(elem,"change._change",function(event){if(this.parentNode&&!event.isSimulated&&!event.isTrigger){jQuery.event.simulate("change",this.parentNode,event,true);}});jQuery._data(elem,"_change_attached",true);}});},handle:function(event){var elem=event.target;if(this!==elem||event.isSimulated||event.isTrigger||(elem.type!=="radio"&&elem.type!=="checkbox")){return event.handleObj.handler.apply(this,arguments);}},teardown:function(){jQuery.event.remove(this,"._change");return!rformElems.test(this.nodeName);}};}if(!jQuery.support.focusinBubbles){jQuery.each({focus:"focusin",blur:"focusout"},function(orig,fix){var attaches=0,handler=function(event){jQuery.event.simulate(fix,event.target,jQuery.event.fix(event),true);};jQuery.event.special[fix]={setup:function(){if(attaches++===0){document.addEventListener(orig,handler,true);}},teardown:function(){if(--attaches===0){document.removeEventListener(orig,handler,true);}}};});}jQuery.fn.extend({on:function(types,selector,data,fn,one){var origFn,type;if(typeof types==="object"){if(typeof selector!=="string"){data=data||selector;selector=undefined;}for(type in types){this.on(type,selector,data,types[type],one);}return this;}if(data==null&&fn==null){fn=selector;data=selector=undefined;}else if(fn==null){if(typeof selector==="string"){fn=data;data=undefined;}else{fn=data;data=selector;selector=undefined;}}if(fn===false){fn=returnFalse;}else if(!fn){return this;}if(one===1){origFn=fn;fn=function(event){jQuery().off(event);return origFn.apply(this,arguments);};fn.guid=origFn.guid||(origFn.guid=jQuery.guid++);}return this.each(function(){jQuery.event.add(this,types,fn,data,selector);});},one:function(types,selector,data,fn){return this.on(types,selector,data,fn,1);},off:function(types,selector,fn){var handleObj,type;if(types&&types.preventDefault&&types.handleObj){handleObj=types.handleObj;jQuery(types.delegateTarget).off(handleObj.namespace?handleObj.origType+"."+handleObj.namespace:handleObj.origType,handleObj.selector,handleObj.handler);return this;}if(typeof types==="object"){for(type in types){this.off(type,selector,types[type]);}return this;}if(selector===false||typeof selector==="function"){fn=selector;selector=undefined;}if(fn===false){fn=returnFalse;}return this.each(function(){jQuery.event.remove(this,types,fn,selector);});},bind:function(types,data,fn){return this.on(types,null,data,fn);},unbind:function(types,fn){return this.off(types,null,fn);},live:function(types,data,fn){jQuery(this.context).on(types,this.selector,data,fn);return this;},die:function(types,fn){jQuery(this.context).off(types,this.selector||"**",fn);return this;},delegate:function(selector,types,data,fn){return this.on(types,selector,data,fn);},undelegate:function(selector,types,fn){return arguments.length===1?this.off(selector,"**"):this.off(types,selector||"**",fn);},trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);});},triggerHandler:function(type,data){if(this[0]){return jQuery.event.trigger(type,data,this[0],true);}},toggle:function(fn){var args=arguments,guid=fn.guid||jQuery.guid++,i=0,toggler=function(event){var lastToggle=(jQuery._data(this,"lastToggle"+fn.guid)||0)%i;jQuery._data(this,"lastToggle"+fn.guid,lastToggle+1);event.preventDefault();return args[lastToggle].apply(this,arguments)||false;};toggler.guid=guid;while(i<args.length){args[i++].guid=guid;}return this.click(toggler);},hover:function(fnOver,fnOut){return this.mouseenter(fnOver).mouseleave(fnOut||fnOver);}});jQuery.each(("blur focus focusin focusout load resize scroll unload click dblclick "+"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave "+"change select submit keydown keypress keyup error contextmenu").split(" "),function(i,name){jQuery.fn[name]=function(data,fn){if(fn==null){fn=data;data=null;}return arguments.length>0?this.on(name,null,data,fn):this.trigger(name);};if(rkeyEvent.test(name)){jQuery.event.fixHooks[name]=jQuery.event.keyHooks;}if(rmouseEvent.test(name)){jQuery.event.fixHooks[name]=jQuery.event.mouseHooks;}});(function(window,undefined){var cachedruns,assertGetIdNotName,Expr,getText,isXML,contains,compile,sortOrder,hasDuplicate,outermostContext,baseHasDuplicate=true,strundefined="undefined",expando=("sizcache"+Math.random()).replace(".",""),Token=String,document=window.document,docElem=document.documentElement,dirruns=0,done=0,pop=[].pop,push=[].push,slice=[].slice,indexOf=[].indexOf||function(elem){var i=0,len=this.length;for(;i<len;i++){if(this[i]===elem){return i;}}return-1;},markFunction=function(fn,value){fn[expando]=value==null||value;return fn;},createCache=function(){var cache={},keys=[];return markFunction(function(key,value){if(keys.push(key)>Expr.cacheLength){delete cache[keys.shift()];}return(cache[key+" "]=value);},cache);},classCache=createCache(),tokenCache=createCache(),compilerCache=createCache(),whitespace="[\\x20\\t\\r\\n\\f]",characterEncoding="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",identifier=characterEncoding.replace("w","w#"),operators="([*^$|!~]?=)",attributes="\\["+whitespace+"*("+characterEncoding+")"+whitespace+"*(?:"+operators+whitespace+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+identifier+")|)|)"+whitespace+"*\\]",pseudos=":("+characterEncoding+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+attributes+")|[^:]|\\\\.)*|.*))\\)|)",pos=":(even|odd|eq|gt|lt|nth|first|last)(?:\\("+whitespace+"*((?:-\\d)?\\d*)"+whitespace+"*\\)|)(?=[^-]|$)",rtrim=new RegExp("^"+whitespace+"+|((?:^|[^\\\\])(?:\\\\.)*)"+whitespace+"+$","g"),rcomma=new RegExp("^"+whitespace+"*,"+whitespace+"*"),rcombinators=new RegExp("^"+whitespace+"*([\\x20\\t\\r\\n\\f>+~])"+whitespace+"*"),rpseudo=new RegExp(pseudos),rquickExpr=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,rnot=/^:not/,rsibling=/[\x20\t\r\n\f]*[+~]/,rendsWithNot=/:not\($/,rheader=/h\d/i,rinputs=/input|select|textarea|button/i,rbackslash=/\\(?!\\)/g,matchExpr={"ID":new RegExp("^#("+characterEncoding+")"),"CLASS":new RegExp("^\\.("+characterEncoding+")"),"NAME":new RegExp("^\\[name=['\"]?("+characterEncoding+")['\"]?\\]"),"TAG":new RegExp("^("+characterEncoding.replace("w","w*")+")"),"ATTR":new RegExp("^"+attributes),"PSEUDO":new RegExp("^"+pseudos),"POS":new RegExp(pos,"i"),"CHILD":new RegExp("^:(only|nth|first|last)-child(?:\\("+whitespace+"*(even|odd|(([+-]|)(\\d*)n|)"+whitespace+"*(?:([+-]|)"+whitespace+"*(\\d+)|))"+whitespace+"*\\)|)","i"),"needsContext":new RegExp("^"+whitespace+"*[>+~]|"+pos,"i")},assert=function(fn){var div=document.createElement("div");try{return fn(div);}catch(e){return false;}finally{div=null;}},assertTagNameNoComments=assert(function(div){div.appendChild(document.createComment(""));return!div.getElementsByTagName("*").length;}),assertHrefNotNormalized=assert(function(div){div.innerHTML="<a href='#'></a>";return div.firstChild&&typeof div.firstChild.getAttribute!==strundefined&&div.firstChild.getAttribute("href")==="#";}),assertAttributes=assert(function(div){div.innerHTML="<select></select>";var type=typeof div.lastChild.getAttribute("multiple");return type!=="boolean"&&type!=="string";}),assertUsableClassName=assert(function(div){div.innerHTML="<div class='hidden e'></div><div class='hidden'></div>";if(!div.getElementsByClassName||!div.getElementsByClassName("e").length){return false;}div.lastChild.className="e";return div.getElementsByClassName("e").length===2;}),assertUsableName=assert(function(div){div.id=expando+0;div.innerHTML="<a name='"+expando+"'></a><div name='"+expando+"'></div>";docElem.insertBefore(div,docElem.firstChild);var pass=document.getElementsByName&&document.getElementsByName(expando).length===2+document.getElementsByName(expando+0).length;assertGetIdNotName=!document.getElementById(expando);docElem.removeChild(div);return pass;});try{slice.call(docElem.childNodes,0)[0].nodeType;}catch(e){slice=function(i){var elem,results=[];for(;(elem=this[i]);i++){results.push(elem);}return results;};}function Sizzle(selector,context,results,seed){results=results||[];context=context||document;var match,elem,xml,m,nodeType=context.nodeType;if(!selector||typeof selector!=="string"){return results;}if(nodeType!==1&&nodeType!==9){return[];}xml=isXML(context);if(!xml&&!seed){if((match=rquickExpr.exec(selector))){if((m=match[1])){if(nodeType===9){elem=context.getElementById(m);if(elem&&elem.parentNode){if(elem.id===m){results.push(elem);return results;}}else{return results;}}else{if(context.ownerDocument&&(elem=context.ownerDocument.getElementById(m))&&contains(context,elem)&&elem.id===m){results.push(elem);return results;}}}else if(match[2]){push.apply(results,slice.call(context.getElementsByTagName(selector),0));return results;}else if((m=match[3])&&assertUsableClassName&&context.getElementsByClassName){push.apply(results,slice.call(context.getElementsByClassName(m),0));return results;}}}return select(selector.replace(rtrim,"$1"),context,results,seed,xml);}Sizzle.matches=function(expr,elements){return Sizzle(expr,null,null,elements);};Sizzle.matchesSelector=function(elem,expr){return Sizzle(expr,null,null,[elem]).length>0;};function createInputPseudo(type){return function(elem){var name=elem.nodeName.toLowerCase();return name==="input"&&elem.type===type;};}function createButtonPseudo(type){return function(elem){var name=elem.nodeName.toLowerCase();return(name==="input"||name==="button")&&elem.type===type;};}function createPositionalPseudo(fn){return markFunction(function(argument){argument=+argument;return markFunction(function(seed,matches){var j,matchIndexes=fn([],seed.length,argument),i=matchIndexes.length;while(i--){if(seed[(j=matchIndexes[i])]){seed[j]=!(matches[j]=seed[j]);}}});});}getText=Sizzle.getText=function(elem){var node,ret="",i=0,nodeType=elem.nodeType;if(nodeType){if(nodeType===1||nodeType===9||nodeType===11){if(typeof elem.textContent==="string"){return elem.textContent;}else{for(elem=elem.firstChild;elem;elem=elem.nextSibling){ret+=getText(elem);}}}else if(nodeType===3||nodeType===4){return elem.nodeValue;}}else{for(;(node=elem[i]);i++){ret+=getText(node);}}return ret;};isXML=Sizzle.isXML=function(elem){var documentElement=elem&&(elem.ownerDocument||elem).documentElement;return documentElement?documentElement.nodeName!=="HTML":false;};contains=Sizzle.contains=docElem.contains?function(a,b){var adown=a.nodeType===9?a.documentElement:a,bup=b&&b.parentNode;return a===bup||!!(bup&&bup.nodeType===1&&adown.contains&&adown.contains(bup));}:docElem.compareDocumentPosition?function(a,b){return b&&!!(a.compareDocumentPosition(b)&16);}:function(a,b){while((b=b.parentNode)){if(b===a){return true;}}return false;};Sizzle.attr=function(elem,name){var val,xml=isXML(elem);if(!xml){name=name.toLowerCase();}if((val=Expr.attrHandle[name])){return val(elem);}if(xml||assertAttributes){return elem.getAttribute(name);}val=elem.getAttributeNode(name);return val?typeof elem[name]==="boolean"?elem[name]?name:null:val.specified?val.value:null:null;};Expr=Sizzle.selectors={cacheLength:50,createPseudo:markFunction,match:matchExpr,attrHandle:assertHrefNotNormalized?{}:{"href":function(elem){return elem.getAttribute("href",2);},"type":function(elem){return elem.getAttribute("type");}},find:{"ID":assertGetIdNotName?function(id,context,xml){if(typeof context.getElementById!==strundefined&&!xml){var m=context.getElementById(id);return m&&m.parentNode?[m]:[];}}:function(id,context,xml){if(typeof context.getElementById!==strundefined&&!xml){var m=context.getElementById(id);return m?m.id===id||typeof m.getAttributeNode!==strundefined&&m.getAttributeNode("id").value===id?[m]:undefined:[];}},"TAG":assertTagNameNoComments?function(tag,context){if(typeof context.getElementsByTagName!==strundefined){return context.getElementsByTagName(tag);}}:function(tag,context){var results=context.getElementsByTagName(tag);if(tag==="*"){var elem,tmp=[],i=0;for(;(elem=results[i]);i++){if(elem.nodeType===1){tmp.push(elem);}}return tmp;}return results;},"NAME":assertUsableName&&function(tag,context){if(typeof context.getElementsByName!==strundefined){return context.getElementsByName(name);}},"CLASS":assertUsableClassName&&function(className,context,xml){if(typeof context.getElementsByClassName!==strundefined&&!xml){return context.getElementsByClassName(className);}}},relative:{">":{dir:"parentNode",first:true}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:true},"~":{dir:"previousSibling"}},preFilter:{"ATTR":function(match){match[1]=match[1].replace(rbackslash,"");match[3]=(match[4]||match[5]||"").replace(rbackslash,"");if(match[2]==="~="){match[3]=" "+match[3]+" ";}return match.slice(0,4);},"CHILD":function(match){match[1]=match[1].toLowerCase();if(match[1]==="nth"){if(!match[2]){Sizzle.error(match[0]);}match[3]=+(match[3]?match[4]+(match[5]||1):2*(match[2]==="even"||match[2]==="odd"));match[4]=+((match[6]+match[7])||match[2]==="odd");}else if(match[2]){Sizzle.error(match[0]);}return match;},"PSEUDO":function(match){var unquoted,excess;if(matchExpr["CHILD"].test(match[0])){return null;}if(match[3]){match[2]=match[3];}else if((unquoted=match[4])){if(rpseudo.test(unquoted)&&(excess=tokenize(unquoted,true))&&(excess=unquoted.indexOf(")",unquoted.length-excess)-unquoted.length)){unquoted=unquoted.slice(0,excess);match[0]=match[0].slice(0,excess);}match[2]=unquoted;}return match.slice(0,3);}},filter:{"ID":assertGetIdNotName?function(id){id=id.replace(rbackslash,"");return function(elem){return elem.getAttribute("id")===id;};}:function(id){id=id.replace(rbackslash,"");return function(elem){var node=typeof elem.getAttributeNode!==strundefined&&elem.getAttributeNode("id");return node&&node.value===id;};},"TAG":function(nodeName){if(nodeName==="*"){return function(){return true;};}nodeName=nodeName.replace(rbackslash,"").toLowerCase();return function(elem){return elem.nodeName&&elem.nodeName.toLowerCase()===nodeName;};},"CLASS":function(className){var pattern=classCache[expando][className+" "];return pattern||(pattern=new RegExp("(^|"+whitespace+")"+className+"("+whitespace+"|$)"))&&classCache(className,function(elem){return pattern.test(elem.className||(typeof elem.getAttribute!==strundefined&&elem.getAttribute("class"))||"");});},"ATTR":function(name,operator,check){return function(elem,context){var result=Sizzle.attr(elem,name);if(result==null){return operator==="!=";}if(!operator){return true;}result+="";return operator==="="?result===check:operator==="!="?result!==check:operator==="^="?check&&result.indexOf(check)===0:operator==="*="?check&&result.indexOf(check)>-1:operator==="$="?check&&result.substr(result.length-check.length)===check:operator==="~="?(" "+result+" ").indexOf(check)>-1:operator==="|="?result===check||result.substr(0,check.length+1)===check+"-":false;};},"CHILD":function(type,argument,first,last){if(type==="nth"){return function(elem){var node,diff,parent=elem.parentNode;if(first===1&&last===0){return true;}if(parent){diff=0;for(node=parent.firstChild;node;node=node.nextSibling){if(node.nodeType===1){diff++;if(elem===node){break;}}}}diff-=last;return diff===first||(diff%first===0&&diff/first>=0);};}return function(elem){var node=elem;switch(type){case"only":case"first":while((node=node.previousSibling)){if(node.nodeType===1){return false;}}if(type==="first"){return true;}node=elem;case"last":while((node=node.nextSibling)){if(node.nodeType===1){return false;}}return true;}};},"PSEUDO":function(pseudo,argument){var args,fn=Expr.pseudos[pseudo]||Expr.setFilters[pseudo.toLowerCase()]||Sizzle.error("unsupported pseudo: "+pseudo);if(fn[expando]){return fn(argument);}if(fn.length>1){args=[pseudo,pseudo,"",argument];return Expr.setFilters.hasOwnProperty(pseudo.toLowerCase())?markFunction(function(seed,matches){var idx,matched=fn(seed,argument),i=matched.length;while(i--){idx=indexOf.call(seed,matched[i]);seed[idx]=!(matches[idx]=matched[i]);}}):function(elem){return fn(elem,0,args);};}return fn;}},pseudos:{"not":markFunction(function(selector){var input=[],results=[],matcher=compile(selector.replace(rtrim,"$1"));return matcher[expando]?markFunction(function(seed,matches,context,xml){var elem,unmatched=matcher(seed,null,xml,[]),i=seed.length;while(i--){if((elem=unmatched[i])){seed[i]=!(matches[i]=elem);}}}):function(elem,context,xml){input[0]=elem;matcher(input,null,xml,results);return!results.pop();};}),"has":markFunction(function(selector){return function(elem){return Sizzle(selector,elem).length>0;};}),"contains":markFunction(function(text){return function(elem){return(elem.textContent||elem.innerText||getText(elem)).indexOf(text)>-1;};}),"enabled":function(elem){return elem.disabled===false;},"disabled":function(elem){return elem.disabled===true;},"checked":function(elem){var nodeName=elem.nodeName.toLowerCase();return(nodeName==="input"&&!!elem.checked)||(nodeName==="option"&&!!elem.selected);},"selected":function(elem){if(elem.parentNode){elem.parentNode.selectedIndex;}return elem.selected===true;},"parent":function(elem){return!Expr.pseudos["empty"](elem);},"empty":function(elem){var nodeType;elem=elem.firstChild;while(elem){if(elem.nodeName>"@"||(nodeType=elem.nodeType)===3||nodeType===4){return false;}elem=elem.nextSibling;}return true;},"header":function(elem){return rheader.test(elem.nodeName);},"text":function(elem){var type,attr;return elem.nodeName.toLowerCase()==="input"&&(type=elem.type)==="text"&&((attr=elem.getAttribute("type"))==null||attr.toLowerCase()===type);},"radio":createInputPseudo("radio"),"checkbox":createInputPseudo("checkbox"),"file":createInputPseudo("file"),"password":createInputPseudo("password"),"image":createInputPseudo("image"),"submit":createButtonPseudo("submit"),"reset":createButtonPseudo("reset"),"button":function(elem){var name=elem.nodeName.toLowerCase();return name==="input"&&elem.type==="button"||name==="button";},"input":function(elem){return rinputs.test(elem.nodeName);},"focus":function(elem){var doc=elem.ownerDocument;return elem===doc.activeElement&&(!doc.hasFocus||doc.hasFocus())&&!!(elem.type||elem.href||~elem.tabIndex);},"active":function(elem){return elem===elem.ownerDocument.activeElement;},"first":createPositionalPseudo(function(){return[0];}),"last":createPositionalPseudo(function(matchIndexes,length){return[length-1];}),"eq":createPositionalPseudo(function(matchIndexes,length,argument){return[argument<0?argument+length:argument];}),"even":createPositionalPseudo(function(matchIndexes,length){for(var i=0;i<length;i+=2){matchIndexes.push(i);}return matchIndexes;}),"odd":createPositionalPseudo(function(matchIndexes,length){for(var i=1;i<length;i+=2){matchIndexes.push(i);}return matchIndexes;}),"lt":createPositionalPseudo(function(matchIndexes,length,argument){for(var i=argument<0?argument+length:argument;--i>=0;){matchIndexes.push(i);}return matchIndexes;}),"gt":createPositionalPseudo(function(matchIndexes,length,argument){for(var i=argument<0?argument+length:argument;++i<length;){matchIndexes.push(i);}return matchIndexes;})}};function siblingCheck(a,b,ret){if(a===b){return ret;}var cur=a.nextSibling;while(cur){if(cur===b){return-1;}cur=cur.nextSibling;}return 1;}sortOrder=docElem.compareDocumentPosition?function(a,b){if(a===b){hasDuplicate=true;return 0;}return(!a.compareDocumentPosition||!b.compareDocumentPosition?a.compareDocumentPosition:a.compareDocumentPosition(b)&4)?-1:1;}:function(a,b){if(a===b){hasDuplicate=true;return 0;}else if(a.sourceIndex&&b.sourceIndex){return a.sourceIndex-b.sourceIndex;}var al,bl,ap=[],bp=[],aup=a.parentNode,bup=b.parentNode,cur=aup;if(aup===bup){return siblingCheck(a,b);}else if(!aup){return-1;}else if(!bup){return 1;}while(cur){ap.unshift(cur);cur=cur.parentNode;}cur=bup;while(cur){bp.unshift(cur);cur=cur.parentNode;}al=ap.length;bl=bp.length;for(var i=0;i<al&&i<bl;i++){if(ap[i]!==bp[i]){return siblingCheck(ap[i],bp[i]);}}return i===al?siblingCheck(a,bp[i],-1):siblingCheck(ap[i],b,1);};[0,0].sort(sortOrder);baseHasDuplicate=!hasDuplicate;Sizzle.uniqueSort=function(results){var elem,duplicates=[],i=1,j=0;hasDuplicate=baseHasDuplicate;results.sort(sortOrder);if(hasDuplicate){for(;(elem=results[i]);i++){if(elem===results[i-1]){j=duplicates.push(i);}}while(j--){results.splice(duplicates[j],1);}}return results;};Sizzle.error=function(msg){throw new Error("Syntax error, unrecognized expression: "+msg);};function tokenize(selector,parseOnly){var matched,match,tokens,type,soFar,groups,preFilters,cached=tokenCache[expando][selector+" "];if(cached){return parseOnly?0:cached.slice(0);}soFar=selector;groups=[];preFilters=Expr.preFilter;while(soFar){if(!matched||(match=rcomma.exec(soFar))){if(match){soFar=soFar.slice(match[0].length)||soFar;}groups.push(tokens=[]);}matched=false;if((match=rcombinators.exec(soFar))){tokens.push(matched=new Token(match.shift()));soFar=soFar.slice(matched.length);matched.type=match[0].replace(rtrim," ");}for(type in Expr.filter){if((match=matchExpr[type].exec(soFar))&&(!preFilters[type]||(match=preFilters[type](match)))){tokens.push(matched=new Token(match.shift()));soFar=soFar.slice(matched.length);matched.type=type;matched.matches=match;}}if(!matched){break;}}return parseOnly?soFar.length:soFar?Sizzle.error(selector):tokenCache(selector,groups).slice(0);}function addCombinator(matcher,combinator,base){var dir=combinator.dir,checkNonElements=base&&combinator.dir==="parentNode",doneName=done++;return combinator.first?function(elem,context,xml){while((elem=elem[dir])){if(checkNonElements||elem.nodeType===1){return matcher(elem,context,xml);}}}:function(elem,context,xml){if(!xml){var cache,dirkey=dirruns+" "+doneName+" ",cachedkey=dirkey+cachedruns;while((elem=elem[dir])){if(checkNonElements||elem.nodeType===1){if((cache=elem[expando])===cachedkey){return elem.sizset;}else if(typeof cache==="string"&&cache.indexOf(dirkey)===0){if(elem.sizset){return elem;}}else{elem[expando]=cachedkey;if(matcher(elem,context,xml)){elem.sizset=true;return elem;}elem.sizset=false;}}}}else{while((elem=elem[dir])){if(checkNonElements||elem.nodeType===1){if(matcher(elem,context,xml)){return elem;}}}}};}function elementMatcher(matchers){return matchers.length>1?function(elem,context,xml){var i=matchers.length;while(i--){if(!matchers[i](elem,context,xml)){return false;}}return true;}:matchers[0];}function condense(unmatched,map,filter,context,xml){var elem,newUnmatched=[],i=0,len=unmatched.length,mapped=map!=null;for(;i<len;i++){if((elem=unmatched[i])){if(!filter||filter(elem,context,xml)){newUnmatched.push(elem);if(mapped){map.push(i);}}}}return newUnmatched;}function setMatcher(preFilter,selector,matcher,postFilter,postFinder,postSelector){if(postFilter&&!postFilter[expando]){postFilter=setMatcher(postFilter);}if(postFinder&&!postFinder[expando]){postFinder=setMatcher(postFinder,postSelector);}return markFunction(function(seed,results,context,xml){var temp,i,elem,preMap=[],postMap=[],preexisting=results.length,elems=seed||multipleContexts(selector||"*",context.nodeType?[context]:context,[]),matcherIn=preFilter&&(seed||!selector)?condense(elems,preMap,preFilter,context,xml):elems,matcherOut=matcher?postFinder||(seed?preFilter:preexisting||postFilter)?[]:results:matcherIn;if(matcher){matcher(matcherIn,matcherOut,context,xml);}if(postFilter){temp=condense(matcherOut,postMap);postFilter(temp,[],context,xml);i=temp.length;while(i--){if((elem=temp[i])){matcherOut[postMap[i]]=!(matcherIn[postMap[i]]=elem);}}}if(seed){if(postFinder||preFilter){if(postFinder){temp=[];i=matcherOut.length;while(i--){if((elem=matcherOut[i])){temp.push((matcherIn[i]=elem));}}postFinder(null,(matcherOut=[]),temp,xml);}i=matcherOut.length;while(i--){if((elem=matcherOut[i])&&(temp=postFinder?indexOf.call(seed,elem):preMap[i])>-1){seed[temp]=!(results[temp]=elem);}}}}else{matcherOut=condense(matcherOut===results?matcherOut.splice(preexisting,matcherOut.length):matcherOut);if(postFinder){postFinder(null,results,matcherOut,xml);}else{push.apply(results,matcherOut);}}});}function matcherFromTokens(tokens){var checkContext,matcher,j,len=tokens.length,leadingRelative=Expr.relative[tokens[0].type],implicitRelative=leadingRelative||Expr.relative[" "],i=leadingRelative?1:0,matchContext=addCombinator(function(elem){return elem===checkContext;},implicitRelative,true),matchAnyContext=addCombinator(function(elem){return indexOf.call(checkContext,elem)>-1;},implicitRelative,true),matchers=[function(elem,context,xml){return(!leadingRelative&&(xml||context!==outermostContext))||((checkContext=context).nodeType?matchContext(elem,context,xml):matchAnyContext(elem,context,xml));}];for(;i<len;i++){if((matcher=Expr.relative[tokens[i].type])){matchers=[addCombinator(elementMatcher(matchers),matcher)];}else{matcher=Expr.filter[tokens[i].type].apply(null,tokens[i].matches);if(matcher[expando]){j=++i;for(;j<len;j++){if(Expr.relative[tokens[j].type]){break;}}return setMatcher(i>1&&elementMatcher(matchers),i>1&&tokens.slice(0,i-1).join("").replace(rtrim,"$1"),matcher,i<j&&matcherFromTokens(tokens.slice(i,j)),j<len&&matcherFromTokens((tokens=tokens.slice(j))),j<len&&tokens.join(""));}matchers.push(matcher);}}return elementMatcher(matchers);}function matcherFromGroupMatchers(elementMatchers,setMatchers){var bySet=setMatchers.length>0,byElement=elementMatchers.length>0,superMatcher=function(seed,context,xml,results,expandContext){var elem,j,matcher,setMatched=[],matchedCount=0,i="0",unmatched=seed&&[],outermost=expandContext!=null,contextBackup=outermostContext,elems=seed||byElement&&Expr.find["TAG"]("*",expandContext&&context.parentNode||context),dirrunsUnique=(dirruns+=contextBackup==null?1:Math.E);if(outermost){outermostContext=context!==document&&context;cachedruns=superMatcher.el;}for(;(elem=elems[i])!=null;i++){if(byElement&&elem){for(j=0;(matcher=elementMatchers[j]);j++){if(matcher(elem,context,xml)){results.push(elem);break;}}if(outermost){dirruns=dirrunsUnique;cachedruns=++superMatcher.el;}}if(bySet){if((elem=!matcher&&elem)){matchedCount--;}if(seed){unmatched.push(elem);}}}matchedCount+=i;if(bySet&&i!==matchedCount){for(j=0;(matcher=setMatchers[j]);j++){matcher(unmatched,setMatched,context,xml);}if(seed){if(matchedCount>0){while(i--){if(!(unmatched[i]||setMatched[i])){setMatched[i]=pop.call(results);}}}setMatched=condense(setMatched);}push.apply(results,setMatched);if(outermost&&!seed&&setMatched.length>0&&(matchedCount+setMatchers.length)>1){Sizzle.uniqueSort(results);}}if(outermost){dirruns=dirrunsUnique;outermostContext=contextBackup;}return unmatched;};superMatcher.el=0;return bySet?markFunction(superMatcher):superMatcher;}compile=Sizzle.compile=function(selector,group){var i,setMatchers=[],elementMatchers=[],cached=compilerCache[expando][selector+" "];if(!cached){if(!group){group=tokenize(selector);}i=group.length;while(i--){cached=matcherFromTokens(group[i]);if(cached[expando]){setMatchers.push(cached);}else{elementMatchers.push(cached);}}cached=compilerCache(selector,matcherFromGroupMatchers(elementMatchers,setMatchers));}return cached;};function multipleContexts(selector,contexts,results){var i=0,len=contexts.length;for(;i<len;i++){Sizzle(selector,contexts[i],results);}return results;}function select(selector,context,results,seed,xml){var i,tokens,token,type,find,match=tokenize(selector),j=match.length;if(!seed){if(match.length===1){tokens=match[0]=match[0].slice(0);if(tokens.length>2&&(token=tokens[0]).type==="ID"&&context.nodeType===9&&!xml&&Expr.relative[tokens[1].type]){context=Expr.find["ID"](token.matches[0].replace(rbackslash,""),context,xml)[0];if(!context){return results;}selector=selector.slice(tokens.shift().length);}for(i=matchExpr["POS"].test(selector)?-1:tokens.length-1;i>=0;i--){token=tokens[i];if(Expr.relative[(type=token.type)]){break;}if((find=Expr.find[type])){if((seed=find(token.matches[0].replace(rbackslash,""),rsibling.test(tokens[0].type)&&context.parentNode||context,xml))){tokens.splice(i,1);selector=seed.length&&tokens.join("");if(!selector){push.apply(results,slice.call(seed,0));return results;}break;}}}}}compile(selector,match)(seed,context,xml,results,rsibling.test(selector));return results;}if(document.querySelectorAll){(function(){var disconnectedMatch,oldSelect=select,rescape=/'|\\/g,rattributeQuotes=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,rbuggyQSA=[":focus"],rbuggyMatches=[":active"],matches=docElem.matchesSelector||docElem.mozMatchesSelector||docElem.webkitMatchesSelector||docElem.oMatchesSelector||docElem.msMatchesSelector;assert(function(div){div.innerHTML="<select><option selected=''></option></select>";if(!div.querySelectorAll("[selected]").length){rbuggyQSA.push("\\["+whitespace+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)");}if(!div.querySelectorAll(":checked").length){rbuggyQSA.push(":checked");}});assert(function(div){div.innerHTML="<p test=''></p>";if(div.querySelectorAll("[test^='']").length){rbuggyQSA.push("[*^$]="+whitespace+"*(?:\"\"|'')");}div.innerHTML="<input type='hidden'/>";if(!div.querySelectorAll(":enabled").length){rbuggyQSA.push(":enabled",":disabled");}});rbuggyQSA=new RegExp(rbuggyQSA.join("|"));select=function(selector,context,results,seed,xml){if(!seed&&!xml&&!rbuggyQSA.test(selector)){var groups,i,old=true,nid=expando,newContext=context,newSelector=context.nodeType===9&&selector;if(context.nodeType===1&&context.nodeName.toLowerCase()!=="object"){groups=tokenize(selector);if((old=context.getAttribute("id"))){nid=old.replace(rescape,"\\$&");}else{context.setAttribute("id",nid);}nid="[id='"+nid+"'] ";i=groups.length;while(i--){groups[i]=nid+groups[i].join("");}newContext=rsibling.test(selector)&&context.parentNode||context;newSelector=groups.join(",");}if(newSelector){try{push.apply(results,slice.call(newContext.querySelectorAll(newSelector),0));return results;}catch(qsaError){}finally{if(!old){context.removeAttribute("id");}}}}return oldSelect(selector,context,results,seed,xml);};if(matches){assert(function(div){disconnectedMatch=matches.call(div,"div");try{matches.call(div,"[test!='']:sizzle");rbuggyMatches.push("!=",pseudos);}catch(e){}});rbuggyMatches=new RegExp(rbuggyMatches.join("|"));Sizzle.matchesSelector=function(elem,expr){expr=expr.replace(rattributeQuotes,"='$1']");if(!isXML(elem)&&!rbuggyMatches.test(expr)&&!rbuggyQSA.test(expr)){try{var ret=matches.call(elem,expr);if(ret||disconnectedMatch||elem.document&&elem.document.nodeType!==11){return ret;}}catch(e){}}return Sizzle(expr,null,null,[elem]).length>0;};}})();}Expr.pseudos["nth"]=Expr.pseudos["eq"];function setFilters(){}Expr.filters=setFilters.prototype=Expr.pseudos;Expr.setFilters=new setFilters();Sizzle.attr=jQuery.attr;jQuery.find=Sizzle;jQuery.expr=Sizzle.selectors;jQuery.expr[":"]=jQuery.expr.pseudos;jQuery.unique=Sizzle.uniqueSort;jQuery.text=Sizzle.getText;jQuery.isXMLDoc=Sizzle.isXML;jQuery.contains=Sizzle.contains;})(window);var runtil=/Until$/,rparentsprev=/^(?:parents|prev(?:Until|All))/,isSimple=/^.[^:#\[\.,]*$/,rneedsContext=jQuery.expr.match.needsContext,guaranteedUnique={children:true,contents:true,next:true,prev:true};jQuery.fn.extend({find:function(selector){var i,l,length,n,r,ret,self=this;if(typeof selector!=="string"){return jQuery(selector).filter(function(){for(i=0,l=self.length;i<l;i++){if(jQuery.contains(self[i],this)){return true;}}});}ret=this.pushStack("","find",selector);for(i=0,l=this.length;i<l;i++){length=ret.length;jQuery.find(selector,this[i],ret);if(i>0){for(n=length;n<ret.length;n++){for(r=0;r<length;r++){if(ret[r]===ret[n]){ret.splice(n--,1);break;}}}}}return ret;},has:function(target){var i,targets=jQuery(target,this),len=targets.length;return this.filter(function(){for(i=0;i<len;i++){if(jQuery.contains(this,targets[i])){return true;}}});},not:function(selector){return this.pushStack(winnow(this,selector,false),"not",selector);},filter:function(selector){return this.pushStack(winnow(this,selector,true),"filter",selector);},is:function(selector){return!!selector&&(typeof selector==="string"?rneedsContext.test(selector)?jQuery(selector,this.context).index(this[0])>=0:jQuery.filter(selector,this).length>0:this.filter(selector).length>0);},closest:function(selectors,context){var cur,i=0,l=this.length,ret=[],pos=rneedsContext.test(selectors)||typeof selectors!=="string"?jQuery(selectors,context||this.context):0;for(;i<l;i++){cur=this[i];while(cur&&cur.ownerDocument&&cur!==context&&cur.nodeType!==11){if(pos?pos.index(cur)>-1:jQuery.find.matchesSelector(cur,selectors)){ret.push(cur);break;}cur=cur.parentNode;}}ret=ret.length>1?jQuery.unique(ret):ret;return this.pushStack(ret,"closest",selectors);},index:function(elem){if(!elem){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1;}if(typeof elem==="string"){return jQuery.inArray(this[0],jQuery(elem));}return jQuery.inArray(elem.jquery?elem[0]:elem,this);},add:function(selector,context){var set=typeof selector==="string"?jQuery(selector,context):jQuery.makeArray(selector&&selector.nodeType?[selector]:selector),all=jQuery.merge(this.get(),set);return this.pushStack(isDisconnected(set[0])||isDisconnected(all[0])?all:jQuery.unique(all));},addBack:function(selector){return this.add(selector==null?this.prevObject:this.prevObject.filter(selector));}});jQuery.fn.andSelf=jQuery.fn.addBack;function isDisconnected(node){return!node||!node.parentNode||node.parentNode.nodeType===11;}function sibling(cur,dir){do{cur=cur[dir];}while(cur&&cur.nodeType!==1);return cur;}jQuery.each({parent:function(elem){var parent=elem.parentNode;return parent&&parent.nodeType!==11?parent:null;},parents:function(elem){return jQuery.dir(elem,"parentNode");},parentsUntil:function(elem,i,until){return jQuery.dir(elem,"parentNode",until);},next:function(elem){return sibling(elem,"nextSibling");},prev:function(elem){return sibling(elem,"previousSibling");},nextAll:function(elem){return jQuery.dir(elem,"nextSibling");},prevAll:function(elem){return jQuery.dir(elem,"previousSibling");},nextUntil:function(elem,i,until){return jQuery.dir(elem,"nextSibling",until);},prevUntil:function(elem,i,until){return jQuery.dir(elem,"previousSibling",until);},siblings:function(elem){return jQuery.sibling((elem.parentNode||{}).firstChild,elem);},children:function(elem){return jQuery.sibling(elem.firstChild);},contents:function(elem){return jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.document:jQuery.merge([],elem.childNodes);}},function(name,fn){jQuery.fn[name]=function(until,selector){var ret=jQuery.map(this,fn,until);if(!runtil.test(name)){selector=until;}if(selector&&typeof selector==="string"){ret=jQuery.filter(selector,ret);}ret=this.length>1&&!guaranteedUnique[name]?jQuery.unique(ret):ret;if(this.length>1&&rparentsprev.test(name)){ret=ret.reverse();}return this.pushStack(ret,name,core_slice.call(arguments).join(","));};});jQuery.extend({filter:function(expr,elems,not){if(not){expr=":not("+expr+")";}return elems.length===1?jQuery.find.matchesSelector(elems[0],expr)?[elems[0]]:[]:jQuery.find.matches(expr,elems);},dir:function(elem,dir,until){var matched=[],cur=elem[dir];while(cur&&cur.nodeType!==9&&(until===undefined||cur.nodeType!==1||!jQuery(cur).is(until))){if(cur.nodeType===1){matched.push(cur);}cur=cur[dir];}return matched;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType===1&&n!==elem){r.push(n);}}return r;}});function winnow(elements,qualifier,keep){qualifier=qualifier||0;if(jQuery.isFunction(qualifier)){return jQuery.grep(elements,function(elem,i){var retVal=!!qualifier.call(elem,i,elem);return retVal===keep;});}else if(qualifier.nodeType){return jQuery.grep(elements,function(elem,i){return(elem===qualifier)===keep;});}else if(typeof qualifier==="string"){var filtered=jQuery.grep(elements,function(elem){return elem.nodeType===1;});if(isSimple.test(qualifier)){return jQuery.filter(qualifier,filtered,!keep);}else{qualifier=jQuery.filter(qualifier,filtered);}}return jQuery.grep(elements,function(elem,i){return(jQuery.inArray(elem,qualifier)>=0)===keep;});}function createSafeFragment(document){var list=nodeNames.split("|"),safeFrag=document.createDocumentFragment();if(safeFrag.createElement){while(list.length){safeFrag.createElement(list.pop());}}return safeFrag;}var nodeNames="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|"+"header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",rinlinejQuery=/ jQuery\d+="(?:null|\d+)"/g,rleadingWhitespace=/^\s+/,rxhtmlTag=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,rtagName=/<([\w:]+)/,rtbody=/<tbody/i,rhtml=/<|&#?\w+;/,rnoInnerhtml=/<(?:script|style|link)/i,rnocache=/<(?:script|object|embed|option|style)/i,rnoshimcache=new RegExp("<(?:"+nodeNames+")[\\s/>]","i"),rcheckableType=/^(?:checkbox|radio)$/,rchecked=/checked\s*(?:[^=]|=\s*.checked.)/i,rscriptType=/\/(java|ecma)script/i,rcleanScript=/^\s*<!(?:\[CDATA\[|\-\-)|[\]\-]{2}>\s*$/g,wrapMap={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},safeFragment=createSafeFragment(document),fragmentDiv=safeFragment.appendChild(document.createElement("div"));wrapMap.optgroup=wrapMap.option;wrapMap.tbody=wrapMap.tfoot=wrapMap.colgroup=wrapMap.caption=wrapMap.thead;wrapMap.th=wrapMap.td;if(!jQuery.support.htmlSerialize){wrapMap._default=[1,"X<div>","</div>"];}jQuery.fn.extend({text:function(value){return jQuery.access(this,function(value){return value===undefined?jQuery.text(this):this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(value));},null,value,arguments.length);},wrapAll:function(html){if(jQuery.isFunction(html)){return this.each(function(i){jQuery(this).wrapAll(html.call(this,i));});}if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){wrap.insertBefore(this[0]);}wrap.map(function(){var elem=this;while(elem.firstChild&&elem.firstChild.nodeType===1){elem=elem.firstChild;}return elem;}).append(this);}return this;},wrapInner:function(html){if(jQuery.isFunction(html)){return this.each(function(i){jQuery(this).wrapInner(html.call(this,i));});}return this.each(function(){var self=jQuery(this),contents=self.contents();if(contents.length){contents.wrapAll(html);}else{self.append(html);}});},wrap:function(html){var isFunction=jQuery.isFunction(html);return this.each(function(i){jQuery(this).wrapAll(isFunction?html.call(this,i):html);});},unwrap:function(){return this.parent().each(function(){if(!jQuery.nodeName(this,"body")){jQuery(this).replaceWith(this.childNodes);}}).end();},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType===1||this.nodeType===11){this.appendChild(elem);}});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType===1||this.nodeType===11){this.insertBefore(elem,this.firstChild);}});},before:function(){if(!isDisconnected(this[0])){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});}if(arguments.length){var set=jQuery.clean(arguments);return this.pushStack(jQuery.merge(set,this),"before",this.selector);}},after:function(){if(!isDisconnected(this[0])){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});}if(arguments.length){var set=jQuery.clean(arguments);return this.pushStack(jQuery.merge(this,set),"after",this.selector);}},remove:function(selector,keepData){var elem,i=0;for(;(elem=this[i])!=null;i++){if(!selector||jQuery.filter(selector,[elem]).length){if(!keepData&&elem.nodeType===1){jQuery.cleanData(elem.getElementsByTagName("*"));jQuery.cleanData([elem]);}if(elem.parentNode){elem.parentNode.removeChild(elem);}}}return this;},empty:function(){var elem,i=0;for(;(elem=this[i])!=null;i++){if(elem.nodeType===1){jQuery.cleanData(elem.getElementsByTagName("*"));}while(elem.firstChild){elem.removeChild(elem.firstChild);}}return this;},clone:function(dataAndEvents,deepDataAndEvents){dataAndEvents=dataAndEvents==null?false:dataAndEvents;deepDataAndEvents=deepDataAndEvents==null?dataAndEvents:deepDataAndEvents;return this.map(function(){return jQuery.clone(this,dataAndEvents,deepDataAndEvents);});},html:function(value){return jQuery.access(this,function(value){var elem=this[0]||{},i=0,l=this.length;if(value===undefined){return elem.nodeType===1?elem.innerHTML.replace(rinlinejQuery,""):undefined;}if(typeof value==="string"&&!rnoInnerhtml.test(value)&&(jQuery.support.htmlSerialize||!rnoshimcache.test(value))&&(jQuery.support.leadingWhitespace||!rleadingWhitespace.test(value))&&!wrapMap[(rtagName.exec(value)||["",""])[1].toLowerCase()]){value=value.replace(rxhtmlTag,"<$1></$2>");try{for(;i<l;i++){elem=this[i]||{};if(elem.nodeType===1){jQuery.cleanData(elem.getElementsByTagName("*"));elem.innerHTML=value;}}elem=0;}catch(e){}}if(elem){this.empty().append(value);}},null,value,arguments.length);},replaceWith:function(value){if(!isDisconnected(this[0])){if(jQuery.isFunction(value)){return this.each(function(i){var self=jQuery(this),old=self.html();self.replaceWith(value.call(this,i,old));});}if(typeof value!=="string"){value=jQuery(value).detach();}return this.each(function(){var next=this.nextSibling,parent=this.parentNode;jQuery(this).remove();if(next){jQuery(next).before(value);}else{jQuery(parent).append(value);}});}return this.length?this.pushStack(jQuery(jQuery.isFunction(value)?value():value),"replaceWith",value):this;},detach:function(selector){return this.remove(selector,true);},domManip:function(args,table,callback){args=[].concat.apply([],args);var results,first,fragment,iNoClone,i=0,value=args[0],scripts=[],l=this.length;if(!jQuery.support.checkClone&&l>1&&typeof value==="string"&&rchecked.test(value)){return this.each(function(){jQuery(this).domManip(args,table,callback);});}if(jQuery.isFunction(value)){return this.each(function(i){var self=jQuery(this);args[0]=value.call(this,i,table?self.html():undefined);self.domManip(args,table,callback);});}if(this[0]){results=jQuery.buildFragment(args,this,scripts);fragment=results.fragment;first=fragment.firstChild;if(fragment.childNodes.length===1){fragment=first;}if(first){table=table&&jQuery.nodeName(first,"tr");for(iNoClone=results.cacheable||l-1;i<l;i++){callback.call(table&&jQuery.nodeName(this[i],"table")?findOrAppend(this[i],"tbody"):this[i],i===iNoClone?fragment:jQuery.clone(fragment,true,true));}}fragment=first=null;if(scripts.length){jQuery.each(scripts,function(i,elem){if(elem.src){if(jQuery.ajax){jQuery.ajax({url:elem.src,type:"GET",dataType:"script",async:false,global:false,"throws":true});}else{jQuery.error("no ajax");}}else{jQuery.globalEval((elem.text||elem.textContent||elem.innerHTML||"").replace(rcleanScript,""));}if(elem.parentNode){elem.parentNode.removeChild(elem);}});}}return this;}});function findOrAppend(elem,tag){return elem.getElementsByTagName(tag)[0]||elem.appendChild(elem.ownerDocument.createElement(tag));}function cloneCopyEvent(src,dest){if(dest.nodeType!==1||!jQuery.hasData(src)){return;}var type,i,l,oldData=jQuery._data(src),curData=jQuery._data(dest,oldData),events=oldData.events;if(events){delete curData.handle;curData.events={};for(type in events){for(i=0,l=events[type].length;i<l;i++){jQuery.event.add(dest,type,events[type][i]);}}}if(curData.data){curData.data=jQuery.extend({},curData.data);}}function cloneFixAttributes(src,dest){var nodeName;if(dest.nodeType!==1){return;}if(dest.clearAttributes){dest.clearAttributes();}if(dest.mergeAttributes){dest.mergeAttributes(src);}nodeName=dest.nodeName.toLowerCase();if(nodeName==="object"){if(dest.parentNode){dest.outerHTML=src.outerHTML;}if(jQuery.support.html5Clone&&(src.innerHTML&&!jQuery.trim(dest.innerHTML))){dest.innerHTML=src.innerHTML;}}else if(nodeName==="input"&&rcheckableType.test(src.type)){dest.defaultChecked=dest.checked=src.checked;if(dest.value!==src.value){dest.value=src.value;}}else if(nodeName==="option"){dest.selected=src.defaultSelected;}else if(nodeName==="input"||nodeName==="textarea"){dest.defaultValue=src.defaultValue;}else if(nodeName==="script"&&dest.text!==src.text){dest.text=src.text;}dest.removeAttribute(jQuery.expando);}jQuery.buildFragment=function(args,context,scripts){var fragment,cacheable,cachehit,first=args[0];context=context||document;context=!context.nodeType&&context[0]||context;context=context.ownerDocument||context;if(args.length===1&&typeof first==="string"&&first.length<512&&context===document&&first.charAt(0)==="<"&&!rnocache.test(first)&&(jQuery.support.checkClone||!rchecked.test(first))&&(jQuery.support.html5Clone||!rnoshimcache.test(first))){cacheable=true;fragment=jQuery.fragments[first];cachehit=fragment!==undefined;}if(!fragment){fragment=context.createDocumentFragment();jQuery.clean(args,context,fragment,scripts);if(cacheable){jQuery.fragments[first]=cachehit&&fragment;}}return{fragment:fragment,cacheable:cacheable};};jQuery.fragments={};jQuery.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(name,original){jQuery.fn[name]=function(selector){var elems,i=0,ret=[],insert=jQuery(selector),l=insert.length,parent=this.length===1&&this[0].parentNode;if((parent==null||parent&&parent.nodeType===11&&parent.childNodes.length===1)&&l===1){insert[original](this[0]);return this;}else{for(;i<l;i++){elems=(i>0?this.clone(true):this).get();jQuery(insert[i])[original](elems);ret=ret.concat(elems);}return this.pushStack(ret,name,insert.selector);}};});function getAll(elem){if(typeof elem.getElementsByTagName!=="undefined"){return elem.getElementsByTagName("*");}else if(typeof elem.querySelectorAll!=="undefined"){return elem.querySelectorAll("*");}else{return[];}}function fixDefaultChecked(elem){if(rcheckableType.test(elem.type)){elem.defaultChecked=elem.checked;}}jQuery.extend({clone:function(elem,dataAndEvents,deepDataAndEvents){var srcElements,destElements,i,clone;if(jQuery.support.html5Clone||jQuery.isXMLDoc(elem)||!rnoshimcache.test("<"+elem.nodeName+">")){clone=elem.cloneNode(true);}else{fragmentDiv.innerHTML=elem.outerHTML;fragmentDiv.removeChild(clone=fragmentDiv.firstChild);}if((!jQuery.support.noCloneEvent||!jQuery.support.noCloneChecked)&&(elem.nodeType===1||elem.nodeType===11)&&!jQuery.isXMLDoc(elem)){cloneFixAttributes(elem,clone);srcElements=getAll(elem);destElements=getAll(clone);for(i=0;srcElements[i];++i){if(destElements[i]){cloneFixAttributes(srcElements[i],destElements[i]);}}}if(dataAndEvents){cloneCopyEvent(elem,clone);if(deepDataAndEvents){srcElements=getAll(elem);destElements=getAll(clone);for(i=0;srcElements[i];++i){cloneCopyEvent(srcElements[i],destElements[i]);}}}srcElements=destElements=null;return clone;},clean:function(elems,context,fragment,scripts){var i,j,elem,tag,wrap,depth,div,hasBody,tbody,len,handleScript,jsTags,safe=context===document&&safeFragment,ret=[];if(!context||typeof context.createDocumentFragment==="undefined"){context=document;}for(i=0;(elem=elems[i])!=null;i++){if(typeof elem==="number"){elem+="";}if(!elem){continue;}if(typeof elem==="string"){if(!rhtml.test(elem)){elem=context.createTextNode(elem);}else{safe=safe||createSafeFragment(context);div=context.createElement("div");safe.appendChild(div);elem=elem.replace(rxhtmlTag,"<$1></$2>");tag=(rtagName.exec(elem)||["",""])[1].toLowerCase();wrap=wrapMap[tag]||wrapMap._default;depth=wrap[0];div.innerHTML=wrap[1]+elem+wrap[2];while(depth--){div=div.lastChild;}if(!jQuery.support.tbody){hasBody=rtbody.test(elem);tbody=tag==="table"&&!hasBody?div.firstChild&&div.firstChild.childNodes:wrap[1]==="<table>"&&!hasBody?div.childNodes:[];for(j=tbody.length-1;j>=0;--j){if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length){tbody[j].parentNode.removeChild(tbody[j]);}}}if(!jQuery.support.leadingWhitespace&&rleadingWhitespace.test(elem)){div.insertBefore(context.createTextNode(rleadingWhitespace.exec(elem)[0]),div.firstChild);}elem=div.childNodes;div.parentNode.removeChild(div);}}if(elem.nodeType){ret.push(elem);}else{jQuery.merge(ret,elem);}}if(div){elem=div=safe=null;}if(!jQuery.support.appendChecked){for(i=0;(elem=ret[i])!=null;i++){if(jQuery.nodeName(elem,"input")){fixDefaultChecked(elem);}else if(typeof elem.getElementsByTagName!=="undefined"){jQuery.grep(elem.getElementsByTagName("input"),fixDefaultChecked);}}}if(fragment){handleScript=function(elem){if(!elem.type||rscriptType.test(elem.type)){return scripts?scripts.push(elem.parentNode?elem.parentNode.removeChild(elem):elem):fragment.appendChild(elem);}};for(i=0;(elem=ret[i])!=null;i++){if(!(jQuery.nodeName(elem,"script")&&handleScript(elem))){fragment.appendChild(elem);if(typeof elem.getElementsByTagName!=="undefined"){jsTags=jQuery.grep(jQuery.merge([],elem.getElementsByTagName("script")),handleScript);ret.splice.apply(ret,[i+1,0].concat(jsTags));i+=jsTags.length;}}}}return ret;},cleanData:function(elems,acceptData){var data,id,elem,type,i=0,internalKey=jQuery.expando,cache=jQuery.cache,deleteExpando=jQuery.support.deleteExpando,special=jQuery.event.special;for(;(elem=elems[i])!=null;i++){if(acceptData||jQuery.acceptData(elem)){id=elem[internalKey];data=id&&cache[id];if(data){if(data.events){for(type in data.events){if(special[type]){jQuery.event.remove(elem,type);}else{jQuery.removeEvent(elem,type,data.handle);}}}if(cache[id]){delete cache[id];if(deleteExpando){delete elem[internalKey];}else if(elem.removeAttribute){elem.removeAttribute(internalKey);}else{elem[internalKey]=null;}jQuery.deletedIds.push(id);}}}}}});(function(){var matched,browser;jQuery.uaMatch=function(ua){ua=ua.toLowerCase();var match=/(chrome)[ \/]([\w.]+)/.exec(ua)||/(webkit)[ \/]([\w.]+)/.exec(ua)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua)||/(msie) ([\w.]+)/.exec(ua)||ua.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua)||[];return{browser:match[1]||"",version:match[2]||"0"};};matched=jQuery.uaMatch(navigator.userAgent);browser={};if(matched.browser){browser[matched.browser]=true;browser.version=matched.version;}if(browser.chrome){browser.webkit=true;}else if(browser.webkit){browser.safari=true;}jQuery.browser=browser;jQuery.sub=function(){function jQuerySub(selector,context){return new jQuerySub.fn.init(selector,context);}jQuery.extend(true,jQuerySub,this);jQuerySub.superclass=this;jQuerySub.fn=jQuerySub.prototype=this();jQuerySub.fn.constructor=jQuerySub;jQuerySub.sub=this.sub;jQuerySub.fn.init=function init(selector,context){if(context&&context instanceof jQuery&&!(context instanceof jQuerySub)){context=jQuerySub(context);}return jQuery.fn.init.call(this,selector,context,rootjQuerySub);};jQuerySub.fn.init.prototype=jQuerySub.fn;var rootjQuerySub=jQuerySub(document);return jQuerySub;};})();var curCSS,iframe,iframeDoc,ralpha=/alpha\([^)]*\)/i,ropacity=/opacity=([^)]*)/,rposition=/^(top|right|bottom|left)$/,rdisplayswap=/^(none|table(?!-c[ea]).+)/,rmargin=/^margin/,rnumsplit=new RegExp("^("+core_pnum+")(.*)$","i"),rnumnonpx=new RegExp("^("+core_pnum+")(?!px)[a-z%]+$","i"),rrelNum=new RegExp("^([-+])=("+core_pnum+")","i"),elemdisplay={BODY:"block"},cssShow={position:"absolute",visibility:"hidden",display:"block"},cssNormalTransform={letterSpacing:0,fontWeight:400},cssExpand=["Top","Right","Bottom","Left"],cssPrefixes=["Webkit","O","Moz","ms"],eventsToggle=jQuery.fn.toggle;function vendorPropName(style,name){if(name in style){return name;}var capName=name.charAt(0).toUpperCase()+name.slice(1),origName=name,i=cssPrefixes.length;while(i--){name=cssPrefixes[i]+capName;if(name in style){return name;}}return origName;}function isHidden(elem,el){elem=el||elem;return jQuery.css(elem,"display")==="none"||!jQuery.contains(elem.ownerDocument,elem);}function showHide(elements,show){var elem,display,values=[],index=0,length=elements.length;for(;index<length;index++){elem=elements[index];if(!elem.style){continue;}values[index]=jQuery._data(elem,"olddisplay");if(show){if(!values[index]&&elem.style.display==="none"){elem.style.display="";}if(elem.style.display===""&&isHidden(elem)){values[index]=jQuery._data(elem,"olddisplay",css_defaultDisplay(elem.nodeName));}}else{display=curCSS(elem,"display");if(!values[index]&&display!=="none"){jQuery._data(elem,"olddisplay",display);}}}for(index=0;index<length;index++){elem=elements[index];if(!elem.style){continue;}if(!show||elem.style.display==="none"||elem.style.display===""){elem.style.display=show?values[index]||"":"none";}}return elements;}jQuery.fn.extend({css:function(name,value){return jQuery.access(this,function(elem,name,value){return value!==undefined?jQuery.style(elem,name,value):jQuery.css(elem,name);},name,value,arguments.length>1);},show:function(){return showHide(this,true);},hide:function(){return showHide(this);},toggle:function(state,fn2){var bool=typeof state==="boolean";if(jQuery.isFunction(state)&&jQuery.isFunction(fn2)){return eventsToggle.apply(this,arguments);}return this.each(function(){if(bool?state:isHidden(this)){jQuery(this).show();}else{jQuery(this).hide();}});}});jQuery.extend({cssHooks:{opacity:{get:function(elem,computed){if(computed){var ret=curCSS(elem,"opacity");return ret===""?"1":ret;}}}},cssNumber:{"fillOpacity":true,"fontWeight":true,"lineHeight":true,"opacity":true,"orphans":true,"widows":true,"zIndex":true,"zoom":true},cssProps:{"float":jQuery.support.cssFloat?"cssFloat":"styleFloat"},style:function(elem,name,value,extra){if(!elem||elem.nodeType===3||elem.nodeType===8||!elem.style){return;}var ret,type,hooks,origName=jQuery.camelCase(name),style=elem.style;name=jQuery.cssProps[origName]||(jQuery.cssProps[origName]=vendorPropName(style,origName));hooks=jQuery.cssHooks[name]||jQuery.cssHooks[origName];if(value!==undefined){type=typeof value;if(type==="string"&&(ret=rrelNum.exec(value))){value=(ret[1]+1)*ret[2]+parseFloat(jQuery.css(elem,name));type="number";}if(value==null||type==="number"&&isNaN(value)){return;}if(type==="number"&&!jQuery.cssNumber[origName]){value+="px";}if(!hooks||!("set"in hooks)||(value=hooks.set(elem,value,extra))!==undefined){try{style[name]=value;}catch(e){}}}else{if(hooks&&"get"in hooks&&(ret=hooks.get(elem,false,extra))!==undefined){return ret;}return style[name];}},css:function(elem,name,numeric,extra){var val,num,hooks,origName=jQuery.camelCase(name);name=jQuery.cssProps[origName]||(jQuery.cssProps[origName]=vendorPropName(elem.style,origName));hooks=jQuery.cssHooks[name]||jQuery.cssHooks[origName];if(hooks&&"get"in hooks){val=hooks.get(elem,true,extra);}if(val===undefined){val=curCSS(elem,name);}if(val==="normal"&&name in cssNormalTransform){val=cssNormalTransform[name];}if(numeric||extra!==undefined){num=parseFloat(val);return numeric||jQuery.isNumeric(num)?num||0:val;}return val;},swap:function(elem,options,callback){var ret,name,old={};for(name in options){old[name]=elem.style[name];elem.style[name]=options[name];}ret=callback.call(elem);for(name in options){elem.style[name]=old[name];}return ret;}});if(window.getComputedStyle){curCSS=function(elem,name){var ret,width,minWidth,maxWidth,computed=window.getComputedStyle(elem,null),style=elem.style;if(computed){ret=computed.getPropertyValue(name)||computed[name];if(ret===""&&!jQuery.contains(elem.ownerDocument,elem)){ret=jQuery.style(elem,name);}if(rnumnonpx.test(ret)&&rmargin.test(name)){width=style.width;minWidth=style.minWidth;maxWidth=style.maxWidth;style.minWidth=style.maxWidth=style.width=ret;ret=computed.width;style.width=width;style.minWidth=minWidth;style.maxWidth=maxWidth;}}return ret;};}else if(document.documentElement.currentStyle){curCSS=function(elem,name){var left,rsLeft,ret=elem.currentStyle&&elem.currentStyle[name],style=elem.style;if(ret==null&&style&&style[name]){ret=style[name];}if(rnumnonpx.test(ret)&&!rposition.test(name)){left=style.left;rsLeft=elem.runtimeStyle&&elem.runtimeStyle.left;if(rsLeft){elem.runtimeStyle.left=elem.currentStyle.left;}style.left=name==="fontSize"?"1em":ret;ret=style.pixelLeft+"px";style.left=left;if(rsLeft){elem.runtimeStyle.left=rsLeft;}}return ret===""?"auto":ret;};}function setPositiveNumber(elem,value,subtract){var matches=rnumsplit.exec(value);return matches?Math.max(0,matches[1]-(subtract||0))+(matches[2]||"px"):value;}function augmentWidthOrHeight(elem,name,extra,isBorderBox){var i=extra===(isBorderBox?"border":"content")?4:name==="width"?1:0,val=0;for(;i<4;i+=2){if(extra==="margin"){val+=jQuery.css(elem,extra+cssExpand[i],true);}if(isBorderBox){if(extra==="content"){val-=parseFloat(curCSS(elem,"padding"+cssExpand[i]))||0;}if(extra!=="margin"){val-=parseFloat(curCSS(elem,"border"+cssExpand[i]+"Width"))||0;}}else{val+=parseFloat(curCSS(elem,"padding"+cssExpand[i]))||0;if(extra!=="padding"){val+=parseFloat(curCSS(elem,"border"+cssExpand[i]+"Width"))||0;}}}return val;}function getWidthOrHeight(elem,name,extra){var val=name==="width"?elem.offsetWidth:elem.offsetHeight,valueIsBorderBox=true,isBorderBox=jQuery.support.boxSizing&&jQuery.css(elem,"boxSizing")==="border-box";if(val<=0||val==null){val=curCSS(elem,name);if(val<0||val==null){val=elem.style[name];}if(rnumnonpx.test(val)){return val;}valueIsBorderBox=isBorderBox&&(jQuery.support.boxSizingReliable||val===elem.style[name]);val=parseFloat(val)||0;}return(val+augmentWidthOrHeight(elem,name,extra||(isBorderBox?"border":"content"),valueIsBorderBox))+"px";}function css_defaultDisplay(nodeName){if(elemdisplay[nodeName]){return elemdisplay[nodeName];}var elem=jQuery("<"+nodeName+">").appendTo(document.body),display=elem.css("display");elem.remove();if(display==="none"||display===""){iframe=document.body.appendChild(iframe||jQuery.extend(document.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!iframeDoc||!iframe.createElement){iframeDoc=(iframe.contentWindow||iframe.contentDocument).document;iframeDoc.write("<!doctype html><html><body>");iframeDoc.close();}elem=iframeDoc.body.appendChild(iframeDoc.createElement(nodeName));display=curCSS(elem,"display");document.body.removeChild(iframe);}elemdisplay[nodeName]=display;return display;}jQuery.each(["height","width"],function(i,name){jQuery.cssHooks[name]={get:function(elem,computed,extra){if(computed){if(elem.offsetWidth===0&&rdisplayswap.test(curCSS(elem,"display"))){return jQuery.swap(elem,cssShow,function(){return getWidthOrHeight(elem,name,extra);});}else{return getWidthOrHeight(elem,name,extra);}}},set:function(elem,value,extra){return setPositiveNumber(elem,value,extra?augmentWidthOrHeight(elem,name,extra,jQuery.support.boxSizing&&jQuery.css(elem,"boxSizing")==="border-box"):0);}};});if(!jQuery.support.opacity){jQuery.cssHooks.opacity={get:function(elem,computed){return ropacity.test((computed&&elem.currentStyle?elem.currentStyle.filter:elem.style.filter)||"")?(0.01*parseFloat(RegExp.$1))+"":computed?"1":"";},set:function(elem,value){var style=elem.style,currentStyle=elem.currentStyle,opacity=jQuery.isNumeric(value)?"alpha(opacity="+value*100+")":"",filter=currentStyle&&currentStyle.filter||style.filter||"";style.zoom=1;if(value>=1&&jQuery.trim(filter.replace(ralpha,""))===""&&style.removeAttribute){style.removeAttribute("filter");if(currentStyle&&!currentStyle.filter){return;}}style.filter=ralpha.test(filter)?filter.replace(ralpha,opacity):filter+" "+opacity;}};}jQuery(function(){if(!jQuery.support.reliableMarginRight){jQuery.cssHooks.marginRight={get:function(elem,computed){return jQuery.swap(elem,{"display":"inline-block"},function(){if(computed){return curCSS(elem,"marginRight");}});}};}if(!jQuery.support.pixelPosition&&jQuery.fn.position){jQuery.each(["top","left"],function(i,prop){jQuery.cssHooks[prop]={get:function(elem,computed){if(computed){var ret=curCSS(elem,prop);return rnumnonpx.test(ret)?jQuery(elem).position()[prop]+"px":ret;}}};});}});if(jQuery.expr&&jQuery.expr.filters){jQuery.expr.filters.hidden=function(elem){return(elem.offsetWidth===0&&elem.offsetHeight===0)||(!jQuery.support.reliableHiddenOffsets&&((elem.style&&elem.style.display)||curCSS(elem,"display"))==="none");};jQuery.expr.filters.visible=function(elem){return!jQuery.expr.filters.hidden(elem);};}jQuery.each({margin:"",padding:"",border:"Width"},function(prefix,suffix){jQuery.cssHooks[prefix+suffix]={expand:function(value){var i,parts=typeof value==="string"?value.split(" "):[value],expanded={};for(i=0;i<4;i++){expanded[prefix+cssExpand[i]+suffix]=parts[i]||parts[i-2]||parts[0];}return expanded;}};if(!rmargin.test(prefix)){jQuery.cssHooks[prefix+suffix].set=setPositiveNumber;}});var r20=/%20/g,rbracket=/\[\]$/,rCRLF=/\r?\n/g,rinput=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,rselectTextarea=/^(?:select|textarea)/i;jQuery.fn.extend({serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||rselectTextarea.test(this.nodeName)||rinput.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:jQuery.isArray(val)?jQuery.map(val,function(val,i){return{name:elem.name,value:val.replace(rCRLF,"\r\n")};}):{name:elem.name,value:val.replace(rCRLF,"\r\n")};}).get();}});jQuery.param=function(a,traditional){var prefix,s=[],add=function(key,value){value=jQuery.isFunction(value)?value():(value==null?"":value);s[s.length]=encodeURIComponent(key)+"="+encodeURIComponent(value);};if(traditional===undefined){traditional=jQuery.ajaxSettings&&jQuery.ajaxSettings.traditional;}if(jQuery.isArray(a)||(a.jquery&&!jQuery.isPlainObject(a))){jQuery.each(a,function(){add(this.name,this.value);});}else{for(prefix in a){buildParams(prefix,a[prefix],traditional,add);}}return s.join("&").replace(r20,"+");};function buildParams(prefix,obj,traditional,add){var name;if(jQuery.isArray(obj)){jQuery.each(obj,function(i,v){if(traditional||rbracket.test(prefix)){add(prefix,v);}else{buildParams(prefix+"["+(typeof v==="object"?i:"")+"]",v,traditional,add);}});}else if(!traditional&&jQuery.type(obj)==="object"){for(name in obj){buildParams(prefix+"["+name+"]",obj[name],traditional,add);}}else{add(prefix,obj);}}var
ajaxLocParts,ajaxLocation,rhash=/#.*$/,rheaders=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,rlocalProtocol=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,rnoContent=/^(?:GET|HEAD)$/,rprotocol=/^\/\//,rquery=/\?/,rscript=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,rts=/([?&])_=[^&]*/,rurl=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,_load=jQuery.fn.load,prefilters={},transports={},allTypes=["*/"]+["*"];try{ajaxLocation=location.href;}catch(e){ajaxLocation=document.createElement("a");ajaxLocation.href="";ajaxLocation=ajaxLocation.href;}ajaxLocParts=rurl.exec(ajaxLocation.toLowerCase())||[];function addToPrefiltersOrTransports(structure){return function(dataTypeExpression,func){if(typeof dataTypeExpression!=="string"){func=dataTypeExpression;dataTypeExpression="*";}var dataType,list,placeBefore,dataTypes=dataTypeExpression.toLowerCase().split(core_rspace),i=0,length=dataTypes.length;if(jQuery.isFunction(func)){for(;i<length;i++){dataType=dataTypes[i];placeBefore=/^\+/.test(dataType);if(placeBefore){dataType=dataType.substr(1)||"*";}list=structure[dataType]=structure[dataType]||[];list[placeBefore?"unshift":"push"](func);}}};}function inspectPrefiltersOrTransports(structure,options,originalOptions,jqXHR,dataType,inspected){dataType=dataType||options.dataTypes[0];inspected=inspected||{};inspected[dataType]=true;var selection,list=structure[dataType],i=0,length=list?list.length:0,executeOnly=(structure===prefilters);for(;i<length&&(executeOnly||!selection);i++){selection=list[i](options,originalOptions,jqXHR);if(typeof selection==="string"){if(!executeOnly||inspected[selection]){selection=undefined;}else{options.dataTypes.unshift(selection);selection=inspectPrefiltersOrTransports(structure,options,originalOptions,jqXHR,selection,inspected);}}}if((executeOnly||!selection)&&!inspected["*"]){selection=inspectPrefiltersOrTransports(structure,options,originalOptions,jqXHR,"*",inspected);}return selection;}function ajaxExtend(target,src){var key,deep,flatOptions=jQuery.ajaxSettings.flatOptions||{};for(key in src){if(src[key]!==undefined){(flatOptions[key]?target:(deep||(deep={})))[key]=src[key];}}if(deep){jQuery.extend(true,target,deep);}}jQuery.fn.load=function(url,params,callback){if(typeof url!=="string"&&_load){return _load.apply(this,arguments);}if(!this.length){return this;}var selector,type,response,self=this,off=url.indexOf(" ");if(off>=0){selector=url.slice(off,url.length);url=url.slice(0,off);}if(jQuery.isFunction(params)){callback=params;params=undefined;}else if(params&&typeof params==="object"){type="POST";}jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(jqXHR,status){if(callback){self.each(callback,response||[jqXHR.responseText,status,jqXHR]);}}}).done(function(responseText){response=arguments;self.html(selector?jQuery("<div>").append(responseText.replace(rscript,"")).find(selector):responseText);});return this;};jQuery.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(i,o){jQuery.fn[o]=function(f){return this.on(o,f);};});jQuery.each(["get","post"],function(i,method){jQuery[method]=function(url,data,callback,type){if(jQuery.isFunction(data)){type=type||callback;callback=data;data=undefined;}return jQuery.ajax({type:method,url:url,data:data,success:callback,dataType:type});};});jQuery.extend({getScript:function(url,callback){return jQuery.get(url,undefined,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},ajaxSetup:function(target,settings){if(settings){ajaxExtend(target,jQuery.ajaxSettings);}else{settings=target;target=jQuery.ajaxSettings;}ajaxExtend(target,settings);return target;},ajaxSettings:{url:ajaxLocation,isLocal:rlocalProtocol.test(ajaxLocParts[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":allTypes},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":window.String,"text html":true,"text json":jQuery.parseJSON,"text xml":jQuery.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:addToPrefiltersOrTransports(prefilters),ajaxTransport:addToPrefiltersOrTransports(transports),ajax:function(url,options){if(typeof url==="object"){options=url;url=undefined;}options=options||{};var
ifModifiedKey,responseHeadersString,responseHeaders,transport,timeoutTimer,parts,fireGlobals,i,s=jQuery.ajaxSetup({},options),callbackContext=s.context||s,globalEventContext=callbackContext!==s&&(callbackContext.nodeType||callbackContext instanceof jQuery)?jQuery(callbackContext):jQuery.event,deferred=jQuery.Deferred(),completeDeferred=jQuery.Callbacks("once memory"),statusCode=s.statusCode||{},requestHeaders={},requestHeadersNames={},state=0,strAbort="canceled",jqXHR={readyState:0,setRequestHeader:function(name,value){if(!state){var lname=name.toLowerCase();name=requestHeadersNames[lname]=requestHeadersNames[lname]||name;requestHeaders[name]=value;}return this;},getAllResponseHeaders:function(){return state===2?responseHeadersString:null;},getResponseHeader:function(key){var match;if(state===2){if(!responseHeaders){responseHeaders={};while((match=rheaders.exec(responseHeadersString))){responseHeaders[match[1].toLowerCase()]=match[2];}}match=responseHeaders[key.toLowerCase()];}return match===undefined?null:match;},overrideMimeType:function(type){if(!state){s.mimeType=type;}return this;},abort:function(statusText){statusText=statusText||strAbort;if(transport){transport.abort(statusText);}done(0,statusText);return this;}};function done(status,nativeStatusText,responses,headers){var isSuccess,success,error,response,modified,statusText=nativeStatusText;if(state===2){return;}state=2;if(timeoutTimer){clearTimeout(timeoutTimer);}transport=undefined;responseHeadersString=headers||"";jqXHR.readyState=status>0?4:0;if(responses){response=ajaxHandleResponses(s,jqXHR,responses);}if(status>=200&&status<300||status===304){if(s.ifModified){modified=jqXHR.getResponseHeader("Last-Modified");if(modified){jQuery.lastModified[ifModifiedKey]=modified;}modified=jqXHR.getResponseHeader("Etag");if(modified){jQuery.etag[ifModifiedKey]=modified;}}if(status===304){statusText="notmodified";isSuccess=true;}else{isSuccess=ajaxConvert(s,response);statusText=isSuccess.state;success=isSuccess.data;error=isSuccess.error;isSuccess=!error;}}else{error=statusText;if(!statusText||status){statusText="error";if(status<0){status=0;}}}jqXHR.status=status;jqXHR.statusText=(nativeStatusText||statusText)+"";if(isSuccess){deferred.resolveWith(callbackContext,[success,statusText,jqXHR]);}else{deferred.rejectWith(callbackContext,[jqXHR,statusText,error]);}jqXHR.statusCode(statusCode);statusCode=undefined;if(fireGlobals){globalEventContext.trigger("ajax"+(isSuccess?"Success":"Error"),[jqXHR,s,isSuccess?success:error]);}completeDeferred.fireWith(callbackContext,[jqXHR,statusText]);if(fireGlobals){globalEventContext.trigger("ajaxComplete",[jqXHR,s]);if(!(--jQuery.active)){jQuery.event.trigger("ajaxStop");}}}deferred.promise(jqXHR);jqXHR.success=jqXHR.done;jqXHR.error=jqXHR.fail;jqXHR.complete=completeDeferred.add;jqXHR.statusCode=function(map){if(map){var tmp;if(state<2){for(tmp in map){statusCode[tmp]=[statusCode[tmp],map[tmp]];}}else{tmp=map[jqXHR.status];jqXHR.always(tmp);}}return this;};s.url=((url||s.url)+"").replace(rhash,"").replace(rprotocol,ajaxLocParts[1]+"//");s.dataTypes=jQuery.trim(s.dataType||"*").toLowerCase().split(core_rspace);if(s.crossDomain==null){parts=rurl.exec(s.url.toLowerCase());s.crossDomain=!!(parts&&(parts[1]!==ajaxLocParts[1]||parts[2]!==ajaxLocParts[2]||(parts[3]||(parts[1]==="http:"?80:443))!=(ajaxLocParts[3]||(ajaxLocParts[1]==="http:"?80:443))));}if(s.data&&s.processData&&typeof s.data!=="string"){s.data=jQuery.param(s.data,s.traditional);}inspectPrefiltersOrTransports(prefilters,s,options,jqXHR);if(state===2){return jqXHR;}fireGlobals=s.global;s.type=s.type.toUpperCase();s.hasContent=!rnoContent.test(s.type);if(fireGlobals&&jQuery.active++===0){jQuery.event.trigger("ajaxStart");}if(!s.hasContent){if(s.data){s.url+=(rquery.test(s.url)?"&":"?")+s.data;delete s.data;}ifModifiedKey=s.url;if(s.cache===false){var ts=jQuery.now(),ret=s.url.replace(rts,"$1_="+ts);s.url=ret+((ret===s.url)?(rquery.test(s.url)?"&":"?")+"_="+ts:"");}}if(s.data&&s.hasContent&&s.contentType!==false||options.contentType){jqXHR.setRequestHeader("Content-Type",s.contentType);}if(s.ifModified){ifModifiedKey=ifModifiedKey||s.url;if(jQuery.lastModified[ifModifiedKey]){jqXHR.setRequestHeader("If-Modified-Since",jQuery.lastModified[ifModifiedKey]);}if(jQuery.etag[ifModifiedKey]){jqXHR.setRequestHeader("If-None-Match",jQuery.etag[ifModifiedKey]);}}jqXHR.setRequestHeader("Accept",s.dataTypes[0]&&s.accepts[s.dataTypes[0]]?s.accepts[s.dataTypes[0]]+(s.dataTypes[0]!=="*"?", "+allTypes+"; q=0.01":""):s.accepts["*"]);for(i in s.headers){jqXHR.setRequestHeader(i,s.headers[i]);}if(s.beforeSend&&(s.beforeSend.call(callbackContext,jqXHR,s)===false||state===2)){return jqXHR.abort();}strAbort="abort";for(i in{success:1,error:1,complete:1}){jqXHR[i](s[i]);}transport=inspectPrefiltersOrTransports(transports,s,options,jqXHR);if(!transport){done(-1,"No Transport");}else{jqXHR.readyState=1;if(fireGlobals){globalEventContext.trigger("ajaxSend",[jqXHR,s]);}if(s.async&&s.timeout>0){timeoutTimer=setTimeout(function(){jqXHR.abort("timeout");},s.timeout);}try{state=1;transport.send(requestHeaders,done);}catch(e){if(state<2){done(-1,e);}else{throw e;}}}return jqXHR;},active:0,lastModified:{},etag:{}});function ajaxHandleResponses(s,jqXHR,responses){var ct,type,finalDataType,firstDataType,contents=s.contents,dataTypes=s.dataTypes,responseFields=s.responseFields;for(type in responseFields){if(type in responses){jqXHR[responseFields[type]]=responses[type];}}while(dataTypes[0]==="*"){dataTypes.shift();if(ct===undefined){ct=s.mimeType||jqXHR.getResponseHeader("content-type");}}if(ct){for(type in contents){if(contents[type]&&contents[type].test(ct)){dataTypes.unshift(type);break;}}}if(dataTypes[0]in responses){finalDataType=dataTypes[0];}else{for(type in responses){if(!dataTypes[0]||s.converters[type+" "+dataTypes[0]]){finalDataType=type;break;}if(!firstDataType){firstDataType=type;}}finalDataType=finalDataType||firstDataType;}if(finalDataType){if(finalDataType!==dataTypes[0]){dataTypes.unshift(finalDataType);}return responses[finalDataType];}}function ajaxConvert(s,response){var conv,conv2,current,tmp,dataTypes=s.dataTypes.slice(),prev=dataTypes[0],converters={},i=0;if(s.dataFilter){response=s.dataFilter(response,s.dataType);}if(dataTypes[1]){for(conv in s.converters){converters[conv.toLowerCase()]=s.converters[conv];}}for(;(current=dataTypes[++i]);){if(current!=="*"){if(prev!=="*"&&prev!==current){conv=converters[prev+" "+current]||converters["* "+current];if(!conv){for(conv2 in converters){tmp=conv2.split(" ");if(tmp[1]===current){conv=converters[prev+" "+tmp[0]]||converters["* "+tmp[0]];if(conv){if(conv===true){conv=converters[conv2];}else if(converters[conv2]!==true){current=tmp[0];dataTypes.splice(i--,0,current);}break;}}}}if(conv!==true){if(conv&&s["throws"]){response=conv(response);}else{try{response=conv(response);}catch(e){return{state:"parsererror",error:conv?e:"No conversion from "+prev+" to "+current};}}}}prev=current;}}return{state:"success",data:response};}var oldCallbacks=[],rquestion=/\?/,rjsonp=/(=)\?(?=&|$)|\?\?/,nonce=jQuery.now();jQuery.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var callback=oldCallbacks.pop()||(jQuery.expando+"_"+(nonce++));this[callback]=true;return callback;}});jQuery.ajaxPrefilter("json jsonp",function(s,originalSettings,jqXHR){var callbackName,overwritten,responseContainer,data=s.data,url=s.url,hasCallback=s.jsonp!==false,replaceInUrl=hasCallback&&rjsonp.test(url),replaceInData=hasCallback&&!replaceInUrl&&typeof data==="string"&&!(s.contentType||"").indexOf("application/x-www-form-urlencoded")&&rjsonp.test(data);if(s.dataTypes[0]==="jsonp"||replaceInUrl||replaceInData){callbackName=s.jsonpCallback=jQuery.isFunction(s.jsonpCallback)?s.jsonpCallback():s.jsonpCallback;overwritten=window[callbackName];if(replaceInUrl){s.url=url.replace(rjsonp,"$1"+callbackName);}else if(replaceInData){s.data=data.replace(rjsonp,"$1"+callbackName);}else if(hasCallback){s.url+=(rquestion.test(url)?"&":"?")+s.jsonp+"="+callbackName;}s.converters["script json"]=function(){if(!responseContainer){jQuery.error(callbackName+" was not called");}return responseContainer[0];};s.dataTypes[0]="json";window[callbackName]=function(){responseContainer=arguments;};jqXHR.always(function(){window[callbackName]=overwritten;if(s[callbackName]){s.jsonpCallback=originalSettings.jsonpCallback;oldCallbacks.push(callbackName);}if(responseContainer&&jQuery.isFunction(overwritten)){overwritten(responseContainer[0]);}responseContainer=overwritten=undefined;});return"script";}});jQuery.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(text){jQuery.globalEval(text);return text;}}});jQuery.ajaxPrefilter("script",function(s){if(s.cache===undefined){s.cache=false;}if(s.crossDomain){s.type="GET";s.global=false;}});jQuery.ajaxTransport("script",function(s){if(s.crossDomain){var script,head=document.head||document.getElementsByTagName("head")[0]||document.documentElement;return{send:function(_,callback){script=document.createElement("script");script.async="async";if(s.scriptCharset){script.charset=s.scriptCharset;}script.src=s.url;script.onload=script.onreadystatechange=function(_,isAbort){if(isAbort||!script.readyState||/loaded|complete/.test(script.readyState)){script.onload=script.onreadystatechange=null;if(head&&script.parentNode){head.removeChild(script);}script=undefined;if(!isAbort){callback(200,"success");}}};head.insertBefore(script,head.firstChild);},abort:function(){if(script){script.onload(0,1);}}};}});var xhrCallbacks,xhrOnUnloadAbort=window.ActiveXObject?function(){for(var key in xhrCallbacks){xhrCallbacks[key](0,1);}}:false,xhrId=0;function createStandardXHR(){try{return new window.XMLHttpRequest();}catch(e){}}function createActiveXHR(){try{return new window.ActiveXObject("Microsoft.XMLHTTP");}catch(e){}}jQuery.ajaxSettings.xhr=window.ActiveXObject?function(){return!this.isLocal&&createStandardXHR()||createActiveXHR();}:createStandardXHR;(function(xhr){jQuery.extend(jQuery.support,{ajax:!!xhr,cors:!!xhr&&("withCredentials"in xhr)});})(jQuery.ajaxSettings.xhr());if(jQuery.support.ajax){jQuery.ajaxTransport(function(s){if(!s.crossDomain||jQuery.support.cors){var callback;return{send:function(headers,complete){var handle,i,xhr=s.xhr();if(s.username){xhr.open(s.type,s.url,s.async,s.username,s.password);}else{xhr.open(s.type,s.url,s.async);}if(s.xhrFields){for(i in s.xhrFields){xhr[i]=s.xhrFields[i];}}if(s.mimeType&&xhr.overrideMimeType){xhr.overrideMimeType(s.mimeType);}if(!s.crossDomain&&!headers["X-Requested-With"]){headers["X-Requested-With"]="XMLHttpRequest";}try{for(i in headers){xhr.setRequestHeader(i,headers[i]);}}catch(_){}xhr.send((s.hasContent&&s.data)||null);callback=function(_,isAbort){var status,statusText,responseHeaders,responses,xml;try{if(callback&&(isAbort||xhr.readyState===4)){callback=undefined;if(handle){xhr.onreadystatechange=jQuery.noop;if(xhrOnUnloadAbort){delete xhrCallbacks[handle];}}if(isAbort){if(xhr.readyState!==4){xhr.abort();}}else{status=xhr.status;responseHeaders=xhr.getAllResponseHeaders();responses={};xml=xhr.responseXML;if(xml&&xml.documentElement){responses.xml=xml;}try{responses.text=xhr.responseText;}catch(e){}try{statusText=xhr.statusText;}catch(e){statusText="";}if(!status&&s.isLocal&&!s.crossDomain){status=responses.text?200:404;}else if(status===1223){status=204;}}}}catch(firefoxAccessException){if(!isAbort){complete(-1,firefoxAccessException);}}if(responses){complete(status,statusText,responses,responseHeaders);}};if(!s.async){callback();}else if(xhr.readyState===4){setTimeout(callback,0);}else{handle=++xhrId;if(xhrOnUnloadAbort){if(!xhrCallbacks){xhrCallbacks={};jQuery(window).unload(xhrOnUnloadAbort);}xhrCallbacks[handle]=callback;}xhr.onreadystatechange=callback;}},abort:function(){if(callback){callback(0,1);}}};}});}var fxNow,timerId,rfxtypes=/^(?:toggle|show|hide)$/,rfxnum=new RegExp("^(?:([-+])=|)("+core_pnum+")([a-z%]*)$","i"),rrun=/queueHooks$/,animationPrefilters=[defaultPrefilter],tweeners={"*":[function(prop,value){var end,unit,tween=this.createTween(prop,value),parts=rfxnum.exec(value),target=tween.cur(),start=+target||0,scale=1,maxIterations=20;if(parts){end=+parts[2];unit=parts[3]||(jQuery.cssNumber[prop]?"":"px");if(unit!=="px"&&start){start=jQuery.css(tween.elem,prop,true)||end||1;do{scale=scale||".5";start=start/scale;jQuery.style(tween.elem,prop,start+unit);}while(scale!==(scale=tween.cur()/target)&&scale!==1&&--maxIterations);}tween.unit=unit;tween.start=start;tween.end=parts[1]?start+(parts[1]+1)*end:end;}return tween;}]};function createFxNow(){setTimeout(function(){fxNow=undefined;},0);return(fxNow=jQuery.now());}function createTweens(animation,props){jQuery.each(props,function(prop,value){var collection=(tweeners[prop]||[]).concat(tweeners["*"]),index=0,length=collection.length;for(;index<length;index++){if(collection[index].call(animation,prop,value)){return;}}});}function Animation(elem,properties,options){var result,index=0,tweenerIndex=0,length=animationPrefilters.length,deferred=jQuery.Deferred().always(function(){delete tick.elem;}),tick=function(){var currentTime=fxNow||createFxNow(),remaining=Math.max(0,animation.startTime+animation.duration-currentTime),temp=remaining/animation.duration||0,percent=1-temp,index=0,length=animation.tweens.length;for(;index<length;index++){animation.tweens[index].run(percent);}deferred.notifyWith(elem,[animation,percent,remaining]);if(percent<1&&length){return remaining;}else{deferred.resolveWith(elem,[animation]);return false;}},animation=deferred.promise({elem:elem,props:jQuery.extend({},properties),opts:jQuery.extend(true,{specialEasing:{}},options),originalProperties:properties,originalOptions:options,startTime:fxNow||createFxNow(),duration:options.duration,tweens:[],createTween:function(prop,end,easing){var tween=jQuery.Tween(elem,animation.opts,prop,end,animation.opts.specialEasing[prop]||animation.opts.easing);animation.tweens.push(tween);return tween;},stop:function(gotoEnd){var index=0,length=gotoEnd?animation.tweens.length:0;for(;index<length;index++){animation.tweens[index].run(1);}if(gotoEnd){deferred.resolveWith(elem,[animation,gotoEnd]);}else{deferred.rejectWith(elem,[animation,gotoEnd]);}return this;}}),props=animation.props;propFilter(props,animation.opts.specialEasing);for(;index<length;index++){result=animationPrefilters[index].call(animation,elem,props,animation.opts);if(result){return result;}}createTweens(animation,props);if(jQuery.isFunction(animation.opts.start)){animation.opts.start.call(elem,animation);}jQuery.fx.timer(jQuery.extend(tick,{anim:animation,queue:animation.opts.queue,elem:elem}));return animation.progress(animation.opts.progress).done(animation.opts.done,animation.opts.complete).fail(animation.opts.fail).always(animation.opts.always);}function propFilter(props,specialEasing){var index,name,easing,value,hooks;for(index in props){name=jQuery.camelCase(index);easing=specialEasing[name];value=props[index];if(jQuery.isArray(value)){easing=value[1];value=props[index]=value[0];}if(index!==name){props[name]=value;delete props[index];}hooks=jQuery.cssHooks[name];if(hooks&&"expand"in hooks){value=hooks.expand(value);delete props[name];for(index in value){if(!(index in props)){props[index]=value[index];specialEasing[index]=easing;}}}else{specialEasing[name]=easing;}}}jQuery.Animation=jQuery.extend(Animation,{tweener:function(props,callback){if(jQuery.isFunction(props)){callback=props;props=["*"];}else{props=props.split(" ");}var prop,index=0,length=props.length;for(;index<length;index++){prop=props[index];tweeners[prop]=tweeners[prop]||[];tweeners[prop].unshift(callback);}},prefilter:function(callback,prepend){if(prepend){animationPrefilters.unshift(callback);}else{animationPrefilters.push(callback);}}});function defaultPrefilter(elem,props,opts){var index,prop,value,length,dataShow,toggle,tween,hooks,oldfire,anim=this,style=elem.style,orig={},handled=[],hidden=elem.nodeType&&isHidden(elem);if(!opts.queue){hooks=jQuery._queueHooks(elem,"fx");if(hooks.unqueued==null){hooks.unqueued=0;oldfire=hooks.empty.fire;hooks.empty.fire=function(){if(!hooks.unqueued){oldfire();}};}hooks.unqueued++;anim.always(function(){anim.always(function(){hooks.unqueued--;if(!jQuery.queue(elem,"fx").length){hooks.empty.fire();}});});}if(elem.nodeType===1&&("height"in props||"width"in props)){opts.overflow=[style.overflow,style.overflowX,style.overflowY];if(jQuery.css(elem,"display")==="inline"&&jQuery.css(elem,"float")==="none"){if(!jQuery.support.inlineBlockNeedsLayout||css_defaultDisplay(elem.nodeName)==="inline"){style.display="inline-block";}else{style.zoom=1;}}}if(opts.overflow){style.overflow="hidden";if(!jQuery.support.shrinkWrapBlocks){anim.done(function(){style.overflow=opts.overflow[0];style.overflowX=opts.overflow[1];style.overflowY=opts.overflow[2];});}}for(index in props){value=props[index];if(rfxtypes.exec(value)){delete props[index];toggle=toggle||value==="toggle";if(value===(hidden?"hide":"show")){continue;}handled.push(index);}}length=handled.length;if(length){dataShow=jQuery._data(elem,"fxshow")||jQuery._data(elem,"fxshow",{});if("hidden"in dataShow){hidden=dataShow.hidden;}if(toggle){dataShow.hidden=!hidden;}if(hidden){jQuery(elem).show();}else{anim.done(function(){jQuery(elem).hide();});}anim.done(function(){var prop;jQuery.removeData(elem,"fxshow",true);for(prop in orig){jQuery.style(elem,prop,orig[prop]);}});for(index=0;index<length;index++){prop=handled[index];tween=anim.createTween(prop,hidden?dataShow[prop]:0);orig[prop]=dataShow[prop]||jQuery.style(elem,prop);if(!(prop in dataShow)){dataShow[prop]=tween.start;if(hidden){tween.end=tween.start;tween.start=prop==="width"||prop==="height"?1:0;}}}}}function Tween(elem,options,prop,end,easing){return new Tween.prototype.init(elem,options,prop,end,easing);}jQuery.Tween=Tween;Tween.prototype={constructor:Tween,init:function(elem,options,prop,end,easing,unit){this.elem=elem;this.prop=prop;this.easing=easing||"swing";this.options=options;this.start=this.now=this.cur();this.end=end;this.unit=unit||(jQuery.cssNumber[prop]?"":"px");},cur:function(){var hooks=Tween.propHooks[this.prop];return hooks&&hooks.get?hooks.get(this):Tween.propHooks._default.get(this);},run:function(percent){var eased,hooks=Tween.propHooks[this.prop];if(this.options.duration){this.pos=eased=jQuery.easing[this.easing](percent,this.options.duration*percent,0,1,this.options.duration);}else{this.pos=eased=percent;}this.now=(this.end-this.start)*eased+this.start;if(this.options.step){this.options.step.call(this.elem,this.now,this);}if(hooks&&hooks.set){hooks.set(this);}else{Tween.propHooks._default.set(this);}return this;}};Tween.prototype.init.prototype=Tween.prototype;Tween.propHooks={_default:{get:function(tween){var result;if(tween.elem[tween.prop]!=null&&(!tween.elem.style||tween.elem.style[tween.prop]==null)){return tween.elem[tween.prop];}result=jQuery.css(tween.elem,tween.prop,false,"");return!result||result==="auto"?0:result;},set:function(tween){if(jQuery.fx.step[tween.prop]){jQuery.fx.step[tween.prop](tween);}else if(tween.elem.style&&(tween.elem.style[jQuery.cssProps[tween.prop]]!=null||jQuery.cssHooks[tween.prop])){jQuery.style(tween.elem,tween.prop,tween.now+tween.unit);}else{tween.elem[tween.prop]=tween.now;}}}};Tween.propHooks.scrollTop=Tween.propHooks.scrollLeft={set:function(tween){if(tween.elem.nodeType&&tween.elem.parentNode){tween.elem[tween.prop]=tween.now;}}};jQuery.each(["toggle","show","hide"],function(i,name){var cssFn=jQuery.fn[name];jQuery.fn[name]=function(speed,easing,callback){return speed==null||typeof speed==="boolean"||(!i&&jQuery.isFunction(speed)&&jQuery.isFunction(easing))?cssFn.apply(this,arguments):this.animate(genFx(name,true),speed,easing,callback);};});jQuery.fn.extend({fadeTo:function(speed,to,easing,callback){return this.filter(isHidden).css("opacity",0).show().end().animate({opacity:to},speed,easing,callback);},animate:function(prop,speed,easing,callback){var empty=jQuery.isEmptyObject(prop),optall=jQuery.speed(speed,easing,callback),doAnimation=function(){var anim=Animation(this,jQuery.extend({},prop),optall);if(empty){anim.stop(true);}};return empty||optall.queue===false?this.each(doAnimation):this.queue(optall.queue,doAnimation);},stop:function(type,clearQueue,gotoEnd){var stopQueue=function(hooks){var stop=hooks.stop;delete hooks.stop;stop(gotoEnd);};if(typeof type!=="string"){gotoEnd=clearQueue;clearQueue=type;type=undefined;}if(clearQueue&&type!==false){this.queue(type||"fx",[]);}return this.each(function(){var dequeue=true,index=type!=null&&type+"queueHooks",timers=jQuery.timers,data=jQuery._data(this);if(index){if(data[index]&&data[index].stop){stopQueue(data[index]);}}else{for(index in data){if(data[index]&&data[index].stop&&rrun.test(index)){stopQueue(data[index]);}}}for(index=timers.length;index--;){if(timers[index].elem===this&&(type==null||timers[index].queue===type)){timers[index].anim.stop(gotoEnd);dequeue=false;timers.splice(index,1);}}if(dequeue||!gotoEnd){jQuery.dequeue(this,type);}});}});function genFx(type,includeWidth){var which,attrs={height:type},i=0;includeWidth=includeWidth?1:0;for(;i<4;i+=2-includeWidth){which=cssExpand[i];attrs["margin"+which]=attrs["padding"+which]=type;}if(includeWidth){attrs.opacity=attrs.width=type;}return attrs;}jQuery.each({slideDown:genFx("show"),slideUp:genFx("hide"),slideToggle:genFx("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(name,props){jQuery.fn[name]=function(speed,easing,callback){return this.animate(props,speed,easing,callback);};});jQuery.speed=function(speed,easing,fn){var opt=speed&&typeof speed==="object"?jQuery.extend({},speed):{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing};opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:opt.duration in jQuery.fx.speeds?jQuery.fx.speeds[opt.duration]:jQuery.fx.speeds._default;if(opt.queue==null||opt.queue===true){opt.queue="fx";}opt.old=opt.complete;opt.complete=function(){if(jQuery.isFunction(opt.old)){opt.old.call(this);}if(opt.queue){jQuery.dequeue(this,opt.queue);}};return opt;};jQuery.easing={linear:function(p){return p;},swing:function(p){return 0.5-Math.cos(p*Math.PI)/2;}};jQuery.timers=[];jQuery.fx=Tween.prototype.init;jQuery.fx.tick=function(){var timer,timers=jQuery.timers,i=0;fxNow=jQuery.now();for(;i<timers.length;i++){timer=timers[i];if(!timer()&&timers[i]===timer){timers.splice(i--,1);}}if(!timers.length){jQuery.fx.stop();}fxNow=undefined;};jQuery.fx.timer=function(timer){if(timer()&&jQuery.timers.push(timer)&&!timerId){timerId=setInterval(jQuery.fx.tick,jQuery.fx.interval);}};jQuery.fx.interval=13;jQuery.fx.stop=function(){clearInterval(timerId);timerId=null;};jQuery.fx.speeds={slow:600,fast:200,_default:400};jQuery.fx.step={};if(jQuery.expr&&jQuery.expr.filters){jQuery.expr.filters.animated=function(elem){return jQuery.grep(jQuery.timers,function(fn){return elem===fn.elem;}).length;};}var rroot=/^(?:body|html)$/i;jQuery.fn.offset=function(options){if(arguments.length){return options===undefined?this:this.each(function(i){jQuery.offset.setOffset(this,options,i);});}var docElem,body,win,clientTop,clientLeft,scrollTop,scrollLeft,box={top:0,left:0},elem=this[0],doc=elem&&elem.ownerDocument;if(!doc){return;}if((body=doc.body)===elem){return jQuery.offset.bodyOffset(elem);}docElem=doc.documentElement;if(!jQuery.contains(docElem,elem)){return box;}if(typeof elem.getBoundingClientRect!=="undefined"){box=elem.getBoundingClientRect();}win=getWindow(doc);clientTop=docElem.clientTop||body.clientTop||0;clientLeft=docElem.clientLeft||body.clientLeft||0;scrollTop=win.pageYOffset||docElem.scrollTop;scrollLeft=win.pageXOffset||docElem.scrollLeft;return{top:box.top+scrollTop-clientTop,left:box.left+scrollLeft-clientLeft};};jQuery.offset={bodyOffset:function(body){var top=body.offsetTop,left=body.offsetLeft;if(jQuery.support.doesNotIncludeMarginInBodyOffset){top+=parseFloat(jQuery.css(body,"marginTop"))||0;left+=parseFloat(jQuery.css(body,"marginLeft"))||0;}return{top:top,left:left};},setOffset:function(elem,options,i){var position=jQuery.css(elem,"position");if(position==="static"){elem.style.position="relative";}var curElem=jQuery(elem),curOffset=curElem.offset(),curCSSTop=jQuery.css(elem,"top"),curCSSLeft=jQuery.css(elem,"left"),calculatePosition=(position==="absolute"||position==="fixed")&&jQuery.inArray("auto",[curCSSTop,curCSSLeft])>-1,props={},curPosition={},curTop,curLeft;if(calculatePosition){curPosition=curElem.position();curTop=curPosition.top;curLeft=curPosition.left;}else{curTop=parseFloat(curCSSTop)||0;curLeft=parseFloat(curCSSLeft)||0;}if(jQuery.isFunction(options)){options=options.call(elem,i,curOffset);}if(options.top!=null){props.top=(options.top-curOffset.top)+curTop;}if(options.left!=null){props.left=(options.left-curOffset.left)+curLeft;}if("using"in options){options.using.call(elem,props);}else{curElem.css(props);}}};jQuery.fn.extend({position:function(){if(!this[0]){return;}var elem=this[0],offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=rroot.test(offsetParent[0].nodeName)?{top:0,left:0}:offsetParent.offset();offset.top-=parseFloat(jQuery.css(elem,"marginTop"))||0;offset.left-=parseFloat(jQuery.css(elem,"marginLeft"))||0;parentOffset.top+=parseFloat(jQuery.css(offsetParent[0],"borderTopWidth"))||0;parentOffset.left+=parseFloat(jQuery.css(offsetParent[0],"borderLeftWidth"))||0;return{top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};},offsetParent:function(){return this.map(function(){var offsetParent=this.offsetParent||document.body;while(offsetParent&&(!rroot.test(offsetParent.nodeName)&&jQuery.css(offsetParent,"position")==="static")){offsetParent=offsetParent.offsetParent;}return offsetParent||document.body;});}});jQuery.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(method,prop){var top=/Y/.test(prop);jQuery.fn[method]=function(val){return jQuery.access(this,function(elem,method,val){var win=getWindow(elem);if(val===undefined){return win?(prop in win)?win[prop]:win.document.documentElement[method]:elem[method];}if(win){win.scrollTo(!top?val:jQuery(win).scrollLeft(),top?val:jQuery(win).scrollTop());}else{elem[method]=val;}},method,val,arguments.length,null);};});function getWindow(elem){return jQuery.isWindow(elem)?elem:elem.nodeType===9?elem.defaultView||elem.parentWindow:false;}jQuery.each({Height:"height",Width:"width"},function(name,type){jQuery.each({padding:"inner"+name,content:type,"":"outer"+name},function(defaultExtra,funcName){jQuery.fn[funcName]=function(margin,value){var chainable=arguments.length&&(defaultExtra||typeof margin!=="boolean"),extra=defaultExtra||(margin===true||value===true?"margin":"border");return jQuery.access(this,function(elem,type,value){var doc;if(jQuery.isWindow(elem)){return elem.document.documentElement["client"+name];}if(elem.nodeType===9){doc=elem.documentElement;return Math.max(elem.body["scroll"+name],doc["scroll"+name],elem.body["offset"+name],doc["offset"+name],doc["client"+name]);}return value===undefined?jQuery.css(elem,type,value,extra):jQuery.style(elem,type,value,extra);},type,chainable?margin:undefined,chainable,null);};});});window.jQuery=window.$=jQuery;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return jQuery;});}})(window);if(typeof HTMLElement!="undefined"&&!HTMLElement.prototype.insertAdjacentElement){HTMLElement.prototype.insertAdjacentElement=function(where,parsedNode){switch(where){case'beforeBegin':this.parentNode.insertBefore(parsedNode,this)
break;case'afterBegin':this.insertBefore(parsedNode,this.firstChild);break;case'beforeEnd':this.appendChild(parsedNode);break;case'afterEnd':if(this.nextSibling)this.parentNode.insertBefore(parsedNode,this.nextSibling);else
this.parentNode.appendChild(parsedNode);break;}}
HTMLElement.prototype.insertAdjacentHTML=function(where,htmlStr){var r=this.ownerDocument.createRange();r.setStartBefore(this);var parsedHTML=r.createContextualFragment(htmlStr);this.insertAdjacentElement(where,parsedHTML)}
HTMLElement.prototype.insertAdjacentText=function(where,txtStr){var parsedText=document.createTextNode(txtStr)
this.insertAdjacentElement(where,parsedText)}}var FarsiType={farsiKey:[32,33,34,35,36,37,1548,1711,41,40,215,43,1608,45,46,47,48,49,50,51,52,53,54,55,56,57,58,1705,44,61,46,1567,64,1616,1584,125,1609,1615,1609,1604,1570,247,1600,1548,47,8217,1583,215,1563,1614,1569,1613,1601,8216,123,1611,1618,1573,126,1580,1688,1670,94,95,1662,1588,1584,1586,1740,1579,1576,1604,1575,1607,1578,1606,1605,1574,1583,1582,1581,1590,1602,1587,1601,1593,1585,1589,1591,1594,1592,60,124,62,1617],Type:true,counter:0,ShowChangeLangButton:0,KeyBoardError:0,ChangeDir:0,UnSupportedAction:0}
FarsiType.enable_disable=function(Dis){var invis,obj;if(!Dis.checked){FarsiType.Type=true;disable=false;color='darkblue';}else{FarsiType.Type=false;disable=true;color='#ECE9D8';}if(FarsiType.ShowChangeLangButton==1){for(var i=1;i<=FarsiType.counter;i++){obj=document.getElementById('FarsiType_button_'+i);obj.disabled=disable;obj.style.backgroundColor=color;}}}
FarsiType.Disable=function(){FarsiType.Type=false;var Dis=document.getElementById('disableFarsiType')
if(Dis!=null){Dis.checked=true;}if(FarsiType.ShowChangeLangButton==1){for(var i=1;i<=FarsiType.counter;i++){obj=document.getElementById('FarsiType_button_'+i);obj.disabled=true;obj.style.backgroundColor='#ECE9D8';}}}
FarsiType.init=function(){var Inputs=document.getElementsByTagName('INPUT');for(var i=0;i<Inputs.length;i++){if(Inputs[i].type.toLowerCase()=='text'&&(Inputs[i].lang.toLowerCase()=='fa'||Inputs[i].lang.toLowerCase()=='fa-ir')){FarsiType.counter++;new FarsiType.KeyObject(Inputs[i],FarsiType.counter);}}var Areas=document.getElementsByTagName('TEXTAREA');for(var i=0;i<Areas.length;i++){if(Areas[i].lang.toLowerCase()=='fa'||Areas[i].lang.toLowerCase()=='fa-ir'){FarsiType.counter++;new FarsiType.KeyObject(Areas[i],FarsiType.counter);}}var Dis=document.getElementById('disableFarsiType')
if(Dis!=null){FarsiType.enable_disable(Dis);Dis.onclick=new Function("FarsiType.enable_disable (this);")}}
FarsiType.KeyObject=function(z,x){GenerateStr="";if(FarsiType.ShowChangeLangButton==1){GenerateStr=GenerateStr+"<input type='button' id=FarsiType_button_"+x+" style='border: none; background-color:darkblue; font-size:11; color:white; font-family:tahoma; padding: 1px; margin: 1px; width: auto; height: auto;' value='FA' />&nbsp;";}if(FarsiType.ChangeDir==2){GenerateStr=GenerateStr+"<input type='button' id=FarsiType_ChangeDir_"+x+" style='border: none; background-color:darkblue; font-size:11; color:white; font-family:tahoma; padding: 1px; margin: 1px; width: auto; height: auto;' value='RTL' />"}z.insertAdjacentHTML("afterEnd",GenerateStr);if(FarsiType.ShowChangeLangButton==1){z.bottelm=document.getElementById('FarsiType_button_'+x);z.bottelm.title='Change lang to english';}if(FarsiType.ChangeDir==2){z.Direlm=document.getElementById('FarsiType_ChangeDir_'+x);}z.farsi=true;z.dir="rtl";z.align="right";z.style.textAlign=z.align;z.style.direction=z.dir;setSelectionRange=function(input,selectionStart,selectionEnd){input.focus()
input.setSelectionRange(selectionStart,selectionEnd)}
ChangeDirection=function(){if(z.dir=="rtl"){z.dir="ltr";z.align="left";z.Direlm.value="LTR";z.Direlm.title="Change direction: Right to Left"}else{z.dir="rtl";z.align="right";z.Direlm.value="RTL";z.Direlm.title="Change direction: Left to Right"}z.style.textAlign=z.align;z.style.direction=z.dir;z.focus();}
ChangeLang=function(e,ze){if(ze)z=ze;if(FarsiType.Type){if(z.farsi){z.farsi=false;if(FarsiType.ShowChangeLangButton==1){z.bottelm.value="EN";z.bottelm.title='Change lang to persian';}if(FarsiType.ChangeDir==1){z.style.textAlign="left";z.style.direction="ltr";}}else{z.farsi=true;if(FarsiType.ShowChangeLangButton==1){z.bottelm.value="FA";z.bottelm.title='Change lang to english';}if(FarsiType.ChangeDir==1){z.style.textAlign="right";z.style.direction="rtl";}}z.focus();}if(e.preventDefault)e.preventDefault();e.returnValue=false;return false;}
Convert=function(e){if(e==null)e=window.event;var key=e.which||e.charCode||e.keyCode;var eElement=e.target||e.originalTarget||e.srcElement;if(e.ctrlKey&&key==32){ChangeLang(e,z);}if(FarsiType.Type){if((e.charCode!=null&&e.charCode!=key)||(e.which!=null&&e.which!=key)||(e.ctrlKey||e.altKey||e.metaKey)||(key==13||key==27||key==8))return true;if(key>128){if(FarsiType.KeyBoardError==0){FarsiType.Disable();}else{alert("Please change your windows language to English");return false;}}if(FarsiType.Type&&z.farsi){if((key>=65&&key<=90&&!e.shiftKey)||(key>=97&&key<=122)&&e.shiftKey){alert("Caps Lock is On. To prevent entering farsi incorrectly, you should press Caps Lock to turn it off.");return false;}if(key==32&&e.shiftKey)key=8204;else
key=FarsiType.farsiKey[key-32];key=typeof key=='string'?key:String.fromCharCode(key);try{var docSelection=document.selection;var selectionStart=eElement.selectionStart;var selectionEnd=eElement.selectionEnd;if(typeof selectionStart=='number'){var nScrollTop=eElement.scrollTop;var nScrollLeft=eElement.scrollLeft;var nScrollWidth=eElement.scrollWidth;eElement.value=eElement.value.substring(0,selectionStart)+key+eElement.value.substring(selectionEnd);setSelectionRange(eElement,selectionStart+key.length,selectionStart+key.length);var nW=eElement.scrollWidth-nScrollWidth;if(eElement.scrollTop==0){eElement.scrollTop=nScrollTop}}else if(docSelection){var nRange=docSelection.createRange();nRange.text=key;nRange.setEndPoint('StartToEnd',nRange);nRange.select();}}catch(error){try{e.keyCode=key}catch(error){try{e.initKeyEvent("keypress",true,true,document.defaultView,false,false,true,false,0,key,eElement);}catch(error){if(FarsiType.UnSupportedAction==0){alert('Sorry! no FarsiType support')
FarsiType.Disable();var Dis=document.getElementById('disableFarsiType')
if(Dis!=null){Dis.disabled=true;}return false;}else{eElement.value+=key;}}}}if(e.preventDefault)e.preventDefault();e.returnValue=false;}}return true;}
if(FarsiType.ShowChangeLangButton==1){z.bottelm.onmouseup=ChangeLang;}if(FarsiType.ChangeDir==2){z.Direlm.onmouseup=ChangeDirection;}z.onkeypress=Convert;}
if(window.attachEvent){window.attachEvent('onload',FarsiType.init)}else if(window.addEventListener){window.addEventListener('load',FarsiType.init,false)}function JsonAdd_OnSuccess(data){$('#DetailsGrid').html(data.Url);var MaxPage=parseInt(document.getElementById("EndPageHdn").value);var StartPage=1;var EndPage=data.PageCount;var CurrentPage=data.CurrentPage;if(EndPage<=1){document.getElementById("PagingMenu").style.display='none';return;}else
document.getElementById("PagingMenu").style.display='inherit';if(CurrentPage>EndPage){CurrentPage=1;}else if(CurrentPage>4){StartPage=CurrentPage-4;}if(CurrentPage+4<EndPage){EndPage=CurrentPage+4;}document.getElementById("CurrentPageHdn").value=CurrentPage;document.getElementById("EndPageHdn").value=data.PageCount;if(CurrentPage>StartPage){document.getElementById("FirstBtn").style.display='inherit';document.getElementById("PreviousBtn").style.display='inherit';}else{document.getElementById("FirstBtn").style.display='none';document.getElementById("PreviousBtn").style.display='none';}if(CurrentPage<EndPage){document.getElementById("NextBtn").style.display='inherit';document.getElementById("LastBtn").style.display='inherit';}else{document.getElementById("NextBtn").style.display='none';document.getElementById("LastBtn").style.display='none';}var i=1;for(i=1;i<=MaxPage;i++){if((StartPage<=i)&&(i<=EndPage)){if(i==CurrentPage){document.getElementById("Paging_"+i).innerHTML="<span class='btn'>"+i+"</span>";}else{document.getElementById("Paging_"+i).innerHTML="<input  type='submit' name='PagingSubmit' value='"+i+"' class='btn'  />"}document.getElementById("Paging_"+i).style.display='inherit';}else{document.getElementById("Paging_"+i).style.display='none';}}}function SearchBtnClick(){if(document.getElementById("rounded-corner").style.display==''||document.getElementById("rounded-corner").style.display=='table'){$("#rounded-corner").fadeOut("1000");document.getElementById("SearchShowSpan").innerHTML='نمایش نوارابزار جستجو';}else{$("#rounded-corner").fadeIn("1000");document.getElementById("SearchShowSpan").innerHTML='مخفی نمودن نوارابزار جستجو';}}(function(root,factory){if(typeof exports==='object'){factory(exports);}else if(typeof define==='function'&&define.amd){define(['exports'],factory);}else{factory(root);}}(this,function(exports){var VERSION='0.3.0';function IntroJs(obj){this._targetElement=obj;this._options={nextLabel:'&rarr; بعدی ',prevLabel:' قبلی &larr; ',skipLabel:'انصراف',tooltipPosition:'bottom'};}function _introForElement(targetElm){var allIntroSteps=targetElm.querySelectorAll('*[data-intro]'),introItems=[],self=this;if(allIntroSteps.length<1){return false;}for(var i=0,elmsLength=allIntroSteps.length;i<elmsLength;i++){var currentElement=allIntroSteps[i];introItems.push({element:currentElement,intro:currentElement.getAttribute('data-intro'),step:parseInt(currentElement.getAttribute('data-step'),10),position:currentElement.getAttribute('data-position')||this._options.tooltipPosition});}introItems.sort(function(a,b){return a.step-b.step;});self._introItems=introItems;if(_addOverlayLayer.call(self,targetElm)){_nextStep.call(self);var skipButton=targetElm.querySelector('.introjs-skipbutton'),nextStepButton=targetElm.querySelector('.introjs-nextbutton');self._onKeyDown=function(e){if(e.keyCode===27){_exitIntro.call(self,targetElm);}else if(e.keyCode===37){_previousStep.call(self);}else if(e.keyCode===39||e.keyCode===13){_nextStep.call(self);}};if(window.addEventListener){window.addEventListener('keydown',self._onKeyDown,true);}else if(document.attachEvent){document.attachEvent('onkeydown',self._onKeyDown);}}return false;}function _goToStep(step){this._currentStep=step-2;if(typeof(this._introItems)!=='undefined'){_nextStep.call(this);}}function _nextStep(){if(typeof(this._currentStep)==='undefined'){this._currentStep=0;}else{++this._currentStep;}if((this._introItems.length)<=this._currentStep){if(typeof(this._introCompleteCallback)==='function'){this._introCompleteCallback.call(this);}_exitIntro.call(this,this._targetElement);return;}_showElement.call(this,this._introItems[this._currentStep].element);}function _previousStep(){if(this._currentStep===0){return false;}_showElement.call(this,this._introItems[--this._currentStep].element);}function _exitIntro(targetElement){var overlayLayer=targetElement.querySelector('.introjs-overlay');overlayLayer.style.opacity=0;setTimeout(function(){if(overlayLayer.parentNode){overlayLayer.parentNode.removeChild(overlayLayer);}},500);var helperLayer=targetElement.querySelector('.introjs-helperLayer');if(helperLayer){helperLayer.parentNode.removeChild(helperLayer);}var showElement=document.querySelector('.introjs-showElement');if(showElement){showElement.className=showElement.className.replace(/introjs-[a-zA-Z]+/g,'').replace(/^\s+|\s+$/g,'');}if(window.removeEventListener){window.removeEventListener('keydown',this._onKeyDown,true);}else if(document.detachEvent){document.detachEvent('onkeydown',this._onKeyDown);}this._currentStep=undefined;if(this._introExitCallback!=undefined){this._introExitCallback.call(this);}}function _placeTooltip(targetElement,tooltipLayer,arrowLayer){var tooltipLayerPosition=_getOffset(tooltipLayer);tooltipLayer.style.top=null;tooltipLayer.style.right=null;tooltipLayer.style.bottom=null;tooltipLayer.style.left=null;if(!this._introItems[this._currentStep])return;var currentTooltipPosition=this._introItems[this._currentStep].position;switch(currentTooltipPosition){case'top':tooltipLayer.style.left='15px';tooltipLayer.style.top='-'+(tooltipLayerPosition.height+10)+'px';arrowLayer.className='introjs-arrow bottom';break;case'right':tooltipLayer.style.right='-'+(tooltipLayerPosition.width+10)+'px';arrowLayer.className='introjs-arrow left';break;case'left':tooltipLayer.style.top='15px';tooltipLayer.style.left='-'+(tooltipLayerPosition.width+10)+'px';arrowLayer.className='introjs-arrow right';break;case'bottom':default:tooltipLayer.style.bottom='-'+(tooltipLayerPosition.height+10)+'px';arrowLayer.className='introjs-arrow top';break;}}function _showElement(targetElement){if(typeof(this._introChangeCallback)!=='undefined'){this._introChangeCallback.call(this,targetElement);}var self=this,oldHelperLayer=document.querySelector('.introjs-helperLayer'),elementPosition=_getOffset(targetElement);if(oldHelperLayer!=null){var oldHelperNumberLayer=oldHelperLayer.querySelector('.introjs-helperNumberLayer'),oldtooltipLayer=oldHelperLayer.querySelector('.introjs-tooltiptext'),oldArrowLayer=oldHelperLayer.querySelector('.introjs-arrow'),oldtooltipContainer=oldHelperLayer.querySelector('.introjs-tooltip');oldtooltipContainer.style.opacity=0;oldHelperLayer.setAttribute('style','width: '+(elementPosition.width+10)+'px; '+'height:'+(elementPosition.height+10)+'px; '+'top:'+(elementPosition.top-5)+'px;'+'left: '+(elementPosition.left-5)+'px;');var oldShowElement=document.querySelector('.introjs-showElement');oldShowElement.className=oldShowElement.className.replace(/introjs-[a-zA-Z]+/g,'').replace(/^\s+|\s+$/g,'');if(self._lastShowElementTimer){clearTimeout(self._lastShowElementTimer);}self._lastShowElementTimer=setTimeout(function(){oldHelperNumberLayer.innerHTML=targetElement.getAttribute('data-step');oldtooltipLayer.innerHTML=targetElement.getAttribute('data-intro');_placeTooltip.call(self,targetElement,oldtooltipContainer,oldArrowLayer);oldtooltipContainer.style.opacity=1;},350);}else{var helperLayer=document.createElement('div'),helperNumberLayer=document.createElement('span'),arrowLayer=document.createElement('div'),tooltipLayer=document.createElement('div');helperLayer.className='introjs-helperLayer';helperLayer.setAttribute('style','width: '+(elementPosition.width+10)+'px; '+'height:'+(elementPosition.height+10)+'px; '+'top:'+(elementPosition.top-5)+'px;'+'left: '+(elementPosition.left-5)+'px;');this._targetElement.appendChild(helperLayer);helperNumberLayer.className='introjs-helperNumberLayer';arrowLayer.className='introjs-arrow';tooltipLayer.className='introjs-tooltip';helperNumberLayer.innerHTML=targetElement.getAttribute('data-step');tooltipLayer.innerHTML='<div class="introjs-tooltiptext">'+targetElement.getAttribute('data-intro')+'</div><div class="introjs-tooltipbuttons"></div>';helperLayer.appendChild(helperNumberLayer);tooltipLayer.appendChild(arrowLayer);helperLayer.appendChild(tooltipLayer);var nextTooltipButton=document.createElement('a');nextTooltipButton.onclick=function(){_nextStep.call(self);};nextTooltipButton.className='introjs-button introjs-nextbutton';nextTooltipButton.href='javascript:void(0);';nextTooltipButton.innerHTML=this._options.nextLabel;var prevTooltipButton=document.createElement('a');prevTooltipButton.onclick=function(){_previousStep.call(self);};prevTooltipButton.className='introjs-button introjs-prevbutton';prevTooltipButton.href='javascript:void(0);';prevTooltipButton.innerHTML=this._options.prevLabel;var skipTooltipButton=document.createElement('a');skipTooltipButton.className='introjs-button introjs-skipbutton';skipTooltipButton.href='javascript:void(0);';skipTooltipButton.innerHTML=this._options.skipLabel;skipTooltipButton.onclick=function(){_exitIntro.call(self,self._targetElement);};var tooltipButtonsLayer=tooltipLayer.querySelector('.introjs-tooltipbuttons');tooltipButtonsLayer.appendChild(skipTooltipButton);tooltipButtonsLayer.appendChild(prevTooltipButton);tooltipButtonsLayer.appendChild(nextTooltipButton);_placeTooltip.call(self,targetElement,tooltipLayer,arrowLayer);}targetElement.className+=' introjs-showElement';var currentElementPosition='';if(targetElement.currentStyle){currentElementPosition=targetElement.currentStyle['position'];}else if(document.defaultView&&document.defaultView.getComputedStyle){currentElementPosition=document.defaultView.getComputedStyle(targetElement,null).getPropertyValue('position');}currentElementPosition=currentElementPosition.toLowerCase();if(currentElementPosition!=='absolute'&&currentElementPosition!=='relative'){targetElement.className+=' introjs-relativePosition';}if(!_elementInViewport(targetElement)){var rect=targetElement.getBoundingClientRect(),top=rect.bottom-(rect.bottom-rect.top),bottom=rect.bottom-_getWinSize().height;if(top<0){window.scrollBy(0,top-30);}else{window.scrollBy(0,bottom+100);}}}function _getWinSize(){if(window.innerWidth!=undefined){return{width:window.innerWidth,height:window.innerHeight};}else{var D=document.documentElement;return{width:D.clientWidth,height:D.clientHeight};}}function _elementInViewport(el){var rect=el.getBoundingClientRect();return(rect.top>=0&&rect.left>=0&&(rect.bottom+80)<=window.innerHeight&&rect.right<=window.innerWidth);}function _addOverlayLayer(targetElm){var overlayLayer=document.createElement('div'),styleText='',self=this;overlayLayer.className='introjs-overlay';if(targetElm.tagName.toLowerCase()==='body'){styleText+='top: 0;bottom: 0; left: 0;right: 0;position: fixed;';overlayLayer.setAttribute('style',styleText);}else{var elementPosition=_getOffset(targetElm);if(elementPosition){styleText+='width: '+elementPosition.width+'px; height:'+elementPosition.height+'px; top:'+elementPosition.top+'px;left: '+elementPosition.left+'px;';overlayLayer.setAttribute('style',styleText);}}targetElm.appendChild(overlayLayer);overlayLayer.onclick=function(){_exitIntro.call(self,targetElm);};setTimeout(function(){styleText+='opacity: .5;';overlayLayer.setAttribute('style',styleText);},10);return true;}function _getOffset(element){var elementPosition={};elementPosition.width=element.offsetWidth;elementPosition.height=element.offsetHeight;var _x=0;var _y=0;while(element&&!isNaN(element.offsetLeft)&&!isNaN(element.offsetTop)){_x+=element.offsetLeft;_y+=element.offsetTop;element=element.offsetParent;}elementPosition.top=_y;elementPosition.left=_x;return elementPosition;}function _mergeOptions(obj1,obj2){var obj3={};for(var attrname in obj1){obj3[attrname]=obj1[attrname];}for(var attrname in obj2){obj3[attrname]=obj2[attrname];}return obj3;}var introJs=function(targetElm){if(typeof(targetElm)==='object'){return new IntroJs(targetElm);}else if(typeof(targetElm)==='string'){var targetElement=document.querySelector(targetElm);if(targetElement){return new IntroJs(targetElement);}else{throw new Error('There is no element with given selector.');}}else{return new IntroJs(document.body);}};introJs.version=VERSION;introJs.fn=IntroJs.prototype={clone:function(){return new IntroJs(this);},setOption:function(option,value){this._options[option]=value;return this;},setOptions:function(options){this._options=_mergeOptions(this._options,options);return this;},start:function(){_introForElement.call(this,this._targetElement);return this;},goToStep:function(step){_goToStep.call(this,step);return this;},exit:function(){_exitIntro.call(this,this._targetElement);},onchange:function(providedCallback){if(typeof(providedCallback)==='function'){this._introChangeCallback=providedCallback;}else{throw new Error('Provided callback for onchange was not a function.');}return this;},oncomplete:function(providedCallback){if(typeof(providedCallback)==='function'){this._introCompleteCallback=providedCallback;}else{throw new Error('Provided callback for oncomplete was not a function.');}return this;},onexit:function(providedCallback){if(typeof(providedCallback)==='function'){this._introExitCallback=providedCallback;}else{throw new Error('Provided callback for onexit was not a function.');}return this;}};exports.introJs=introJs;return introJs;}));(function($){$.extend($.fn,{validate:function(options){if(!this.length){options&&options.debug&&window.console&&console.warn("nothing selected, can't validate, returning nothing");return;}var validator=$.data(this[0],'validator');if(validator){return validator;}validator=new $.validator(options,this[0]);$.data(this[0],'validator',validator);if(validator.settings.onsubmit){this.find("input, button").filter(".cancel").click(function(){validator.cancelSubmit=true;});if(validator.settings.submitHandler){this.find("input, button").filter(":submit").click(function(){validator.submitButton=this;});}this.submit(function(event){if(validator.settings.debug)event.preventDefault();function handle(){if(validator.settings.submitHandler){if(validator.submitButton){var hidden=$("<input type='hidden'/>").attr("name",validator.submitButton.name).val(validator.submitButton.value).appendTo(validator.currentForm);}validator.settings.submitHandler.call(validator,validator.currentForm);if(validator.submitButton){hidden.remove();}return false;}return true;}if(validator.cancelSubmit){validator.cancelSubmit=false;return handle();}if(validator.form()){if(validator.pendingRequest){validator.formSubmitted=true;return false;}return handle();}else{validator.focusInvalid();return false;}});}return validator;},valid:function(){if($(this[0]).is('form')){return this.validate().form();}else{var valid=true;var validator=$(this[0].form).validate();this.each(function(){valid&=validator.element(this);});return valid;}},removeAttrs:function(attributes){var result={},$element=this;$.each(attributes.split(/\s/),function(index,value){result[value]=$element.attr(value);$element.removeAttr(value);});return result;},rules:function(command,argument){var element=this[0];if(command){var settings=$.data(element.form,'validator').settings;var staticRules=settings.rules;var existingRules=$.validator.staticRules(element);switch(command){case"add":$.extend(existingRules,$.validator.normalizeRule(argument));staticRules[element.name]=existingRules;if(argument.messages)settings.messages[element.name]=$.extend(settings.messages[element.name],argument.messages);break;case"remove":if(!argument){delete staticRules[element.name];return existingRules;}var filtered={};$.each(argument.split(/\s/),function(index,method){filtered[method]=existingRules[method];delete existingRules[method];});return filtered;}}var data=$.validator.normalizeRules($.extend({},$.validator.metadataRules(element),$.validator.classRules(element),$.validator.attributeRules(element),$.validator.staticRules(element)),element);if(data.required){var param=data.required;delete data.required;data=$.extend({required:param},data);}return data;}});$.extend($.expr[":"],{blank:function(a){return!$.trim(""+a.value);},filled:function(a){return!!$.trim(""+a.value);},unchecked:function(a){return!a.checked;}});$.validator=function(options,form){this.settings=$.extend(true,{},$.validator.defaults,options);this.currentForm=form;this.init();};$.validator.format=function(source,params){if(arguments.length==1)return function(){var args=$.makeArray(arguments);args.unshift(source);return $.validator.format.apply(this,args);};if(arguments.length>2&&params.constructor!=Array){params=$.makeArray(arguments).slice(1);}if(params.constructor!=Array){params=[params];}$.each(params,function(i,n){source=source.replace(new RegExp("\\{"+i+"\\}","g"),n);});return source;};$.extend($.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",validClass:"valid",errorElement:"label",focusInvalid:true,errorContainer:$([]),errorLabelContainer:$([]),onsubmit:true,ignore:[],ignoreTitle:false,onfocusin:function(element){this.lastActive=element;if(this.settings.focusCleanup&&!this.blockFocusCleanup){this.settings.unhighlight&&this.settings.unhighlight.call(this,element,this.settings.errorClass,this.settings.validClass);this.addWrapper(this.errorsFor(element)).hide();}},onfocusout:function(element){if(!this.checkable(element)&&(element.name in this.submitted||!this.optional(element))){this.element(element);}},onkeyup:function(element){if(element.name in this.submitted||element==this.lastElement){this.element(element);}},onclick:function(element){if(element.name in this.submitted)this.element(element);else if(element.parentNode.name in this.submitted)this.element(element.parentNode);},highlight:function(element,errorClass,validClass){if(element.type==='radio'){this.findByName(element.name).addClass(errorClass).removeClass(validClass);}else{$(element).addClass(errorClass).removeClass(validClass);}},unhighlight:function(element,errorClass,validClass){if(element.type==='radio'){this.findByName(element.name).removeClass(errorClass).addClass(validClass);}else{$(element).removeClass(errorClass).addClass(validClass);}}},setDefaults:function(settings){$.extend($.validator.defaults,settings);},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date (ISO).",number:"Please enter a valid number.",digits:"Please enter only digits.",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",accept:"Please enter a value with a valid extension.",maxlength:$.validator.format("Please enter no more than {0} characters."),minlength:$.validator.format("Please enter at least {0} characters."),rangelength:$.validator.format("Please enter a value between {0} and {1} characters long."),range:$.validator.format("Please enter a value between {0} and {1}."),max:$.validator.format("Please enter a value less than or equal to {0}."),min:$.validator.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:false,prototype:{init:function(){this.labelContainer=$(this.settings.errorLabelContainer);this.errorContext=this.labelContainer.length&&this.labelContainer||$(this.currentForm);this.containers=$(this.settings.errorContainer).add(this.settings.errorLabelContainer);this.submitted={};this.valueCache={};this.pendingRequest=0;this.pending={};this.invalid={};this.reset();var groups=(this.groups={});$.each(this.settings.groups,function(key,value){$.each(value.split(/\s/),function(index,name){groups[name]=key;});});var rules=this.settings.rules;$.each(rules,function(key,value){rules[key]=$.validator.normalizeRule(value);});function delegate(event){var validator=$.data(this[0].form,"validator"),eventType="on"+event.type.replace(/^validate/,"");validator.settings[eventType]&&validator.settings[eventType].call(validator,this[0]);}$(this.currentForm).validateDelegate(":text, :password, :file, select, textarea","focusin focusout keyup",delegate).validateDelegate(":radio, :checkbox, select, option","click",delegate);if(this.settings.invalidHandler)$(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler);},form:function(){this.checkForm();$.extend(this.submitted,this.errorMap);this.invalid=$.extend({},this.errorMap);if(!this.valid())$(this.currentForm).triggerHandler("invalid-form",[this]);this.showErrors();return this.valid();},checkForm:function(){this.prepareForm();for(var i=0,elements=(this.currentElements=this.elements());elements[i];i++){this.check(elements[i]);}return this.valid();},element:function(element){element=this.clean(element);this.lastElement=element;this.prepareElement(element);this.currentElements=$(element);var result=this.check(element);if(result){delete this.invalid[element.name];}else{this.invalid[element.name]=true;}if(!this.numberOfInvalids()){this.toHide=this.toHide.add(this.containers);}this.showErrors();return result;},showErrors:function(errors){if(errors){$.extend(this.errorMap,errors);this.errorList=[];for(var name in errors){this.errorList.push({message:errors[name],element:this.findByName(name)[0]});}this.successList=$.grep(this.successList,function(element){return!(element.name in errors);});}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors();},resetForm:function(){if($.fn.resetForm)$(this.currentForm).resetForm();this.submitted={};this.prepareForm();this.hideErrors();this.elements().removeClass(this.settings.errorClass);},numberOfInvalids:function(){return this.objectLength(this.invalid);},objectLength:function(obj){var count=0;for(var i in obj)count++;return count;},hideErrors:function(){this.addWrapper(this.toHide).hide();},valid:function(){return this.size()==0;},size:function(){return this.errorList.length;},focusInvalid:function(){if(this.settings.focusInvalid){try{$(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin");}catch(e){}}},findLastActive:function(){var lastActive=this.lastActive;return lastActive&&$.grep(this.errorList,function(n){return n.element.name==lastActive.name;}).length==1&&lastActive;},elements:function(){var validator=this,rulesCache={};return $(this.currentForm).find("input, select, textarea").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){!this.name&&validator.settings.debug&&window.console&&console.error("%o has no name assigned",this);if(this.name in rulesCache||!validator.objectLength($(this).rules()))return false;rulesCache[this.name]=true;return true;});},clean:function(selector){return $(selector)[0];},errors:function(){return $(this.settings.errorElement+"."+this.settings.errorClass,this.errorContext);},reset:function(){this.successList=[];this.errorList=[];this.errorMap={};this.toShow=$([]);this.toHide=$([]);this.currentElements=$([]);},prepareForm:function(){this.reset();this.toHide=this.errors().add(this.containers);},prepareElement:function(element){this.reset();this.toHide=this.errorsFor(element);},check:function(element){element=this.clean(element);if(this.checkable(element)){element=this.findByName(element.name).not(this.settings.ignore)[0];}var rules=$(element).rules();var dependencyMismatch=false;for(var method in rules){var rule={method:method,parameters:rules[method]};try{var result=$.validator.methods[method].call(this,element.value.replace(/\r/g,""),element,rule.parameters);if(result=="dependency-mismatch"){dependencyMismatch=true;continue;}dependencyMismatch=false;if(result=="pending"){this.toHide=this.toHide.not(this.errorsFor(element));return;}if(!result){this.formatAndAdd(element,rule);return false;}}catch(e){this.settings.debug&&window.console&&console.log("exception occured when checking element "+element.id+", check the '"+rule.method+"' method",e);throw e;}}if(dependencyMismatch)return;if(this.objectLength(rules))this.successList.push(element);return true;},customMetaMessage:function(element,method){if(!$.metadata)return;var meta=this.settings.meta?$(element).metadata()[this.settings.meta]:$(element).metadata();return meta&&meta.messages&&meta.messages[method];},customMessage:function(name,method){var m=this.settings.messages[name];return m&&(m.constructor==String?m:m[method]);},findDefined:function(){for(var i=0;i<arguments.length;i++){if(arguments[i]!==undefined)return arguments[i];}return undefined;},defaultMessage:function(element,method){return this.findDefined(this.customMessage(element.name,method),this.customMetaMessage(element,method),!this.settings.ignoreTitle&&element.title||undefined,$.validator.messages[method],"<strong>Warning: No message defined for "+element.name+"</strong>");},formatAndAdd:function(element,rule){var message=this.defaultMessage(element,rule.method),theregex=/\$?\{(\d+)\}/g;if(typeof message=="function"){message=message.call(this,rule.parameters,element);}else if(theregex.test(message)){message=jQuery.format(message.replace(theregex,'{$1}'),rule.parameters);}this.errorList.push({message:message,element:element});this.errorMap[element.name]=message;this.submitted[element.name]=message;},addWrapper:function(toToggle){if(this.settings.wrapper)toToggle=toToggle.add(toToggle.parent(this.settings.wrapper));return toToggle;},defaultShowErrors:function(){for(var i=0;this.errorList[i];i++){var error=this.errorList[i];this.settings.highlight&&this.settings.highlight.call(this,error.element,this.settings.errorClass,this.settings.validClass);this.showLabel(error.element,error.message);}if(this.errorList.length){this.toShow=this.toShow.add(this.containers);}if(this.settings.success){for(var i=0;this.successList[i];i++){this.showLabel(this.successList[i]);}}if(this.settings.unhighlight){for(var i=0,elements=this.validElements();elements[i];i++){this.settings.unhighlight.call(this,elements[i],this.settings.errorClass,this.settings.validClass);}}this.toHide=this.toHide.not(this.toShow);this.hideErrors();this.addWrapper(this.toShow).show();},validElements:function(){return this.currentElements.not(this.invalidElements());},invalidElements:function(){return $(this.errorList).map(function(){return this.element;});},showLabel:function(element,message){var label=this.errorsFor(element);if(label.length){label.removeClass().addClass(this.settings.errorClass);label.attr("generated")&&label.html(message);}else{label=$("<"+this.settings.errorElement+"/>").attr({"for":this.idOrName(element),generated:true}).addClass(this.settings.errorClass).html(message||"");if(this.settings.wrapper){label=label.hide().show().wrap("<"+this.settings.wrapper+"/>").parent();}if(!this.labelContainer.append(label).length)this.settings.errorPlacement?this.settings.errorPlacement(label,$(element)):label.insertAfter(element);}if(!message&&this.settings.success){label.text("");typeof this.settings.success=="string"?label.addClass(this.settings.success):this.settings.success(label);}this.toShow=this.toShow.add(label);},errorsFor:function(element){var name=this.idOrName(element);return this.errors().filter(function(){return $(this).attr('for')==name;});},idOrName:function(element){return this.groups[element.name]||(this.checkable(element)?element.name:element.id||element.name);},checkable:function(element){return/radio|checkbox/i.test(element.type);},findByName:function(name){var form=this.currentForm;return $(document.getElementsByName(name)).map(function(index,element){return element.form==form&&element.name==name&&element||null;});},getLength:function(value,element){switch(element.nodeName.toLowerCase()){case'select':return $("option:selected",element).length;case'input':if(this.checkable(element))return this.findByName(element.name).filter(':checked').length;}return value.length;},depend:function(param,element){return this.dependTypes[typeof param]?this.dependTypes[typeof param](param,element):true;},dependTypes:{"boolean":function(param,element){return param;},"string":function(param,element){return!!$(param,element.form).length;},"function":function(param,element){return param(element);}},optional:function(element){return!$.validator.methods.required.call(this,$.trim(element.value),element)&&"dependency-mismatch";},startRequest:function(element){if(!this.pending[element.name]){this.pendingRequest++;this.pending[element.name]=true;}},stopRequest:function(element,valid){this.pendingRequest--;if(this.pendingRequest<0)this.pendingRequest=0;delete this.pending[element.name];if(valid&&this.pendingRequest==0&&this.formSubmitted&&this.form()){$(this.currentForm).submit();this.formSubmitted=false;}else if(!valid&&this.pendingRequest==0&&this.formSubmitted){$(this.currentForm).triggerHandler("invalid-form",[this]);this.formSubmitted=false;}},previousValue:function(element){return $.data(element,"previousValue")||$.data(element,"previousValue",{old:null,valid:true,message:this.defaultMessage(element,"remote")});}},classRuleSettings:{required:{required:true},email:{email:true},url:{url:true},date:{date:true},dateISO:{dateISO:true},dateDE:{dateDE:true},number:{number:true},numberDE:{numberDE:true},digits:{digits:true},creditcard:{creditcard:true}},addClassRules:function(className,rules){className.constructor==String?this.classRuleSettings[className]=rules:$.extend(this.classRuleSettings,className);},classRules:function(element){var rules={};var classes=$(element).attr('class');classes&&$.each(classes.split(' '),function(){if(this in $.validator.classRuleSettings){$.extend(rules,$.validator.classRuleSettings[this]);}});return rules;},attributeRules:function(element){var rules={};var $element=$(element);for(var method in $.validator.methods){var value=$element.attr(method);if(value){rules[method]=value;}}if(rules.maxlength&&/-1|2147483647|524288/.test(rules.maxlength)){delete rules.maxlength;}return rules;},metadataRules:function(element){if(!$.metadata)return{};var meta=$.data(element.form,'validator').settings.meta;return meta?$(element).metadata()[meta]:$(element).metadata();},staticRules:function(element){var rules={};var validator=$.data(element.form,'validator');if(validator.settings.rules){rules=$.validator.normalizeRule(validator.settings.rules[element.name])||{};}return rules;},normalizeRules:function(rules,element){$.each(rules,function(prop,val){if(val===false){delete rules[prop];return;}if(val.param||val.depends){var keepRule=true;switch(typeof val.depends){case"string":keepRule=!!$(val.depends,element.form).length;break;case"function":keepRule=val.depends.call(element,element);break;}if(keepRule){rules[prop]=val.param!==undefined?val.param:true;}else{delete rules[prop];}}});$.each(rules,function(rule,parameter){rules[rule]=$.isFunction(parameter)?parameter(element):parameter;});$.each(['minlength','maxlength','min','max'],function(){if(rules[this]){rules[this]=Number(rules[this]);}});$.each(['rangelength','range'],function(){if(rules[this]){rules[this]=[Number(rules[this][0]),Number(rules[this][1])];}});if($.validator.autoCreateRanges){if(rules.min&&rules.max){rules.range=[rules.min,rules.max];delete rules.min;delete rules.max;}if(rules.minlength&&rules.maxlength){rules.rangelength=[rules.minlength,rules.maxlength];delete rules.minlength;delete rules.maxlength;}}if(rules.messages){delete rules.messages;}return rules;},normalizeRule:function(data){if(typeof data=="string"){var transformed={};$.each(data.split(/\s/),function(){transformed[this]=true;});data=transformed;}return data;},addMethod:function(name,method,message){$.validator.methods[name]=method;$.validator.messages[name]=message!=undefined?message:$.validator.messages[name];if(method.length<3){$.validator.addClassRules(name,$.validator.normalizeRule(name));}},methods:{required:function(value,element,param){if(!this.depend(param,element))return"dependency-mismatch";switch(element.nodeName.toLowerCase()){case'select':var val=$(element).val();return val&&val.length>0;case'input':if(this.checkable(element))return this.getLength(value,element)>0;default:return $.trim(value).length>0;}},remote:function(value,element,param){if(this.optional(element))return"dependency-mismatch";var previous=this.previousValue(element);if(!this.settings.messages[element.name])this.settings.messages[element.name]={};previous.originalMessage=this.settings.messages[element.name].remote;this.settings.messages[element.name].remote=previous.message;param=typeof param=="string"&&{url:param}||param;if(this.pending[element.name]){return"pending";}if(previous.old===value){return previous.valid;}previous.old=value;var validator=this;this.startRequest(element);var data={};data[element.name]=value;$.ajax($.extend(true,{url:param,mode:"abort",port:"validate"+element.name,dataType:"json",data:data,success:function(response){validator.settings.messages[element.name].remote=previous.originalMessage;var valid=response===true;if(valid){var submitted=validator.formSubmitted;validator.prepareElement(element);validator.formSubmitted=submitted;validator.successList.push(element);validator.showErrors();}else{var errors={};var message=response||validator.defaultMessage(element,"remote");errors[element.name]=previous.message=$.isFunction(message)?message(value):message;validator.showErrors(errors);}previous.valid=valid;validator.stopRequest(element,valid);}},param));return"pending";},minlength:function(value,element,param){return this.optional(element)||this.getLength($.trim(value),element)>=param;},maxlength:function(value,element,param){return this.optional(element)||this.getLength($.trim(value),element)<=param;},rangelength:function(value,element,param){var length=this.getLength($.trim(value),element);return this.optional(element)||(length>=param[0]&&length<=param[1]);},min:function(value,element,param){return this.optional(element)||value>=param;},max:function(value,element,param){return this.optional(element)||value<=param;},range:function(value,element,param){return this.optional(element)||(value>=param[0]&&value<=param[1]);},email:function(value,element){return this.optional(element)||/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(value);},url:function(value,element){return this.optional(element)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value);},date:function(value,element){return this.optional(element)||!/Invalid|NaN/.test(new Date(value));},dateISO:function(value,element){return this.optional(element)||/^\d{4}[\/-]\d{1,2}[\/-]\d{1,2}$/.test(value);},number:function(value,element){return this.optional(element)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test(value);},digits:function(value,element){return this.optional(element)||/^\d+$/.test(value);},creditcard:function(value,element){if(this.optional(element))return"dependency-mismatch";if(/[^0-9-]+/.test(value))return false;var nCheck=0,nDigit=0,bEven=false;value=value.replace(/\D/g,"");for(var n=value.length-1;n>=0;n--){var cDigit=value.charAt(n);var nDigit=parseInt(cDigit,10);if(bEven){if((nDigit*=2)>9)nDigit-=9;}nCheck+=nDigit;bEven=!bEven;}return(nCheck%10)==0;},accept:function(value,element,param){param=typeof param=="string"?param.replace(/,/g,'|'):"png|jpe?g|gif";return this.optional(element)||value.match(new RegExp(".("+param+")$","i"));},equalTo:function(value,element,param){var target=$(param).unbind(".validate-equalTo").bind("blur.validate-equalTo",function(){$(element).valid();});return value==target.val();}}});$.format=$.validator.format;})(jQuery);;(function($){var pendingRequests={};if($.ajaxPrefilter){$.ajaxPrefilter(function(settings,_,xhr){var port=settings.port;if(settings.mode=="abort"){if(pendingRequests[port]){pendingRequests[port].abort();}pendingRequests[port]=xhr;}});}else{var ajax=$.ajax;$.ajax=function(settings){var mode=("mode"in settings?settings:$.ajaxSettings).mode,port=("port"in settings?settings:$.ajaxSettings).port;if(mode=="abort"){if(pendingRequests[port]){pendingRequests[port].abort();}return(pendingRequests[port]=ajax.apply(this,arguments));}return ajax.apply(this,arguments);};}})(jQuery);;(function($){if(!jQuery.event.special.focusin&&!jQuery.event.special.focusout&&document.addEventListener){$.each({focus:'focusin',blur:'focusout'},function(original,fix){$.event.special[fix]={setup:function(){this.addEventListener(original,handler,true);},teardown:function(){this.removeEventListener(original,handler,true);},handler:function(e){arguments[0]=$.event.fix(e);arguments[0].type=fix;return $.event.handle.apply(this,arguments);}};function handler(e){e=$.event.fix(e);e.type=fix;return $.event.handle.call(this,e);}});};$.extend($.fn,{validateDelegate:function(delegate,type,handler){return this.bind(type,function(event){var target=$(event.target);if(target.is(delegate)){return handler.apply(target,arguments);}});}});})(jQuery);(function($){var data_click="unobtrusiveAjaxClick",data_validation="unobtrusiveValidation";function getFunction(code,argNames){var fn=window,parts=(code||"").split(".");while(fn&&parts.length){fn=fn[parts.shift()];}if(typeof(fn)==="function"){return fn;}argNames.push(code);return Function.constructor.apply(null,argNames);}function isMethodProxySafe(method){return method==="GET"||method==="POST";}function asyncOnBeforeSend(xhr,method){if(!isMethodProxySafe(method)){xhr.setRequestHeader("X-HTTP-Method-Override",method);}}function asyncOnSuccess(element,data,contentType){var mode;if(contentType.indexOf("application/x-javascript")!==-1){return;}mode=(element.getAttribute("data-ajax-mode")||"").toUpperCase();$(element.getAttribute("data-ajax-update")).each(function(i,update){var top;switch(mode){case"BEFORE":top=update.firstChild;$("<div />").html(data).contents().each(function(){update.insertBefore(this,top);});break;case"AFTER":$("<div />").html(data).contents().each(function(){update.appendChild(this);});break;default:$(update).html(data);break;}});}function asyncRequest(element,options){var confirm,loading,method,duration;confirm=element.getAttribute("data-ajax-confirm");if(confirm&&!window.confirm(confirm)){return;}loading=$(element.getAttribute("data-ajax-loading"));duration=element.getAttribute("data-ajax-loading-duration")||0;$.extend(options,{type:element.getAttribute("data-ajax-method")||undefined,url:element.getAttribute("data-ajax-url")||undefined,beforeSend:function(xhr){var result;asyncOnBeforeSend(xhr,method);result=getFunction(element.getAttribute("data-ajax-begin"),["xhr"]).apply(this,arguments);if(result!==false){loading.show(duration);}return result;},complete:function(){loading.hide(duration);getFunction(element.getAttribute("data-ajax-complete"),["xhr","status"]).apply(this,arguments);},success:function(data,status,xhr){asyncOnSuccess(element,data,xhr.getResponseHeader("Content-Type")||"text/html");getFunction(element.getAttribute("data-ajax-success"),["data","status","xhr"]).apply(this,arguments);},error:getFunction(element.getAttribute("data-ajax-failure"),["xhr","status","error"])});options.data.push({name:"X-Requested-With",value:"XMLHttpRequest"});method=options.type.toUpperCase();if(!isMethodProxySafe(method)){options.type="POST";options.data.push({name:"X-HTTP-Method-Override",value:method});}$.ajax(options);}function validate(form){var validationInfo=$(form).data(data_validation);return!validationInfo||!validationInfo.validate||validationInfo.validate();}$("a[data-ajax=true]").live("click",function(evt){evt.preventDefault();asyncRequest(this,{url:this.href,type:"GET",data:[]});});$("form[data-ajax=true] input[type=image]").live("click",function(evt){var name=evt.target.name,$target=$(evt.target),form=$target.parents("form")[0],offset=$target.offset();$(form).data(data_click,[{name:name+".x",value:Math.round(evt.pageX-offset.left)},{name:name+".y",value:Math.round(evt.pageY-offset.top)}]);setTimeout(function(){$(form).removeData(data_click);},0);});$("form[data-ajax=true] :submit").live("click",function(evt){var name=evt.target.name,form=$(evt.target).parents("form")[0];$(form).data(data_click,name?[{name:name,value:evt.target.value}]:[]);setTimeout(function(){$(form).removeData(data_click);},0);});$("form[data-ajax=true]").live("submit",function(evt){var clickInfo=$(this).data(data_click)||[];evt.preventDefault();if(!validate(this)){return;}asyncRequest(this,{url:this.action,type:this.method||"GET",data:clickInfo.concat($(this).serializeArray())});});}(jQuery));;(function($,undefined){var kendo=window.kendo=window.kendo||{},extend=$.extend,each=$.each,proxy=$.proxy,isArray=$.isArray,noop=$.noop,isFunction=$.isFunction,math=Math,Template,JSON=window.JSON||{},support={},percentRegExp=/%/,formatRegExp=/\{(\d+)(:[^\}]+)?\}/g,boxShadowRegExp=/(\d+?)px\s*(\d+?)px\s*(\d+?)px\s*(\d+?)?/i,FUNCTION="function",STRING="string",NUMBER="number",OBJECT="object",NULL="null",BOOLEAN="boolean",UNDEFINED="undefined",getterCache={},setterCache={},slice=[].slice,globalize=window.Globalize;function Class(){}Class.extend=function(proto){var base=function(){},member,that=this,subclass=proto&&proto.init?proto.init:function(){that.apply(this,arguments);},fn;base.prototype=that.prototype;fn=subclass.fn=subclass.prototype=new base();for(member in proto){if(typeof proto[member]===OBJECT&&!(proto[member]instanceof Array)&&proto[member]!==null){fn[member]=extend(true,{},base.prototype[member],proto[member]);}else{fn[member]=proto[member];}}fn.constructor=subclass;subclass.extend=that.extend;return subclass;};var Observable=Class.extend({init:function(){this._events={};},bind:function(eventName,handlers,one){var that=this,idx,eventNames=typeof eventName===STRING?[eventName]:eventName,length,original,handler,handlersIsFunction=typeof handlers===FUNCTION,events;for(idx=0,length=eventNames.length;idx<length;idx++){eventName=eventNames[idx];handler=handlersIsFunction?handlers:handlers[eventName];if(handler){if(one){original=handler;handler=function(){that.unbind(eventName,handler);original.apply(that,arguments);};}events=that._events[eventName]=that._events[eventName]||[];events.push(handler);}}return that;},one:function(eventNames,handlers){return this.bind(eventNames,handlers,true);},first:function(eventName,handlers){var that=this,idx,eventNames=typeof eventName===STRING?[eventName]:eventName,length,handler,handlersIsFunction=typeof handlers===FUNCTION,events;for(idx=0,length=eventNames.length;idx<length;idx++){eventName=eventNames[idx];handler=handlersIsFunction?handlers:handlers[eventName];if(handler){events=that._events[eventName]=that._events[eventName]||[];events.unshift(handler);}}return that;},trigger:function(eventName,e){var that=this,events=that._events[eventName],idx,length,isDefaultPrevented=false;if(events){e=e||{};e.sender=that;e.preventDefault=function(){isDefaultPrevented=true;};e.isDefaultPrevented=function(){return isDefaultPrevented;};events=events.slice();for(idx=0,length=events.length;idx<length;idx++){events[idx].call(that,e);}}return isDefaultPrevented;},unbind:function(eventName,handler){var that=this,events=that._events[eventName],idx,length;if(eventName===undefined){that._events={};}else if(events){if(handler){for(idx=0,length=events.length;idx<length;idx++){if(events[idx]===handler){events.splice(idx,1);}}}else{that._events[eventName]=[];}}return that;}});function compilePart(part,stringPart){if(stringPart){return"'"+part.split("'").join("\\'").split('\\"').join('\\\\\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t")+"'";}else{var first=part.charAt(0),rest=part.substring(1);if(first==="="){return"+("+rest+")+";}else if(first===":"){return"+e("+rest+")+";}else{return";"+part+";o+=";}}}var argumentNameRegExp=/^\w+/,encodeRegExp=/\$\{([^}]*)\}/g,escapedCurlyRegExp=/\\\}/g,curlyRegExp=/__CURLY__/g,escapedSharpRegExp=/\\#/g,sharpRegExp=/__SHARP__/g,zeros=["","0","00","000","0000"];Template={paramName:"data",useWithBlock:true,render:function(template,data){var idx,length,html="";for(idx=0,length=data.length;idx<length;idx++){html+=template(data[idx]);}return html;},compile:function(template,options){var settings=extend({},this,options),paramName=settings.paramName,argumentName=paramName.match(argumentNameRegExp)[0],useWithBlock=settings.useWithBlock,functionBody="var o,e=kendo.htmlEncode;",parts,idx;if(isFunction(template)){if(template.length===2){return function(d){return template($,{data:d}).join("");};}return template;}functionBody+=useWithBlock?"with("+paramName+"){":"";functionBody+="o=";parts=template.replace(escapedCurlyRegExp,"__CURLY__").replace(encodeRegExp,"#=e($1)#").replace(curlyRegExp,"}").replace(escapedSharpRegExp,"__SHARP__").split("#");for(idx=0;idx<parts.length;idx++){functionBody+=compilePart(parts[idx],idx%2===0);}functionBody+=useWithBlock?";}":";";functionBody+="return o;";functionBody=functionBody.replace(sharpRegExp,"#");try{return new Function(argumentName,functionBody);}catch(e){throw new Error(kendo.format("Invalid template:'{0}' Generated code:'{1}'",template,functionBody));}}};function pad(number,digits,end){number=number+"";digits=digits||2;end=digits-number.length;if(end){return zeros[digits].substring(0,end)+number;}return number;}(function(){var 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":"\\t","\n":"\\n","\f":"\\f","\r":"\\r","\"":'\\"',"\\":"\\\\"},rep,toString={}.toString;if(typeof Date.prototype.toJSON!==FUNCTION){Date.prototype.toJSON=function(key){var that=this;return isFinite(that.valueOf())?pad(that.getUTCFullYear(),4)+"-"+pad(that.getUTCMonth()+1)+"-"+pad(that.getUTCDate())+"T"+pad(that.getUTCHours())+":"+pad(that.getUTCMinutes())+":"+pad(that.getUTCSeconds())+"Z":null;};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};}function quote(string){escapable.lastIndex=0;return escapable.test(string)?"\""+string.replace(escapable,function(a){var c=meta[a];return typeof c===STRING?c:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4);})+"\"":"\""+string+"\"";}function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key],type;if(value&&typeof value===OBJECT&&typeof value.toJSON===FUNCTION){value=value.toJSON(key);}if(typeof rep===FUNCTION){value=rep.call(holder,key,value);}type=typeof value;if(type===STRING){return quote(value);}else if(type===NUMBER){return isFinite(value)?String(value):NULL;}else if(type===BOOLEAN||type===NULL){return String(value);}else if(type===OBJECT){if(!value){return NULL;}gap+=indent;partial=[];if(toString.apply(value)==="[object Array]"){length=value.length;for(i=0;i<length;i++){partial[i]=str(i,value)||NULL;}v=partial.length===0?"[]":gap?"[\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"]":"["+partial.join(",")+"]";gap=mind;return v;}if(rep&&typeof rep===OBJECT){length=rep.length;for(i=0;i<length;i++){if(typeof rep[i]===STRING){k=rep[i];v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v);}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v);}}}}v=partial.length===0?"{}":gap?"{\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"}":"{"+partial.join(",")+"}";gap=mind;return v;}}if(typeof JSON.stringify!==FUNCTION){JSON.stringify=function(value,replacer,space){var i;gap="";indent="";if(typeof space===NUMBER){for(i=0;i<space;i+=1){indent+=" ";}}else if(typeof space===STRING){indent=space;}rep=replacer;if(replacer&&typeof replacer!==FUNCTION&&(typeof replacer!==OBJECT||typeof replacer.length!==NUMBER)){throw new Error("JSON.stringify");}return str("",{"":value});};}})();(function(){var dateFormatRegExp=/dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|HH|H|hh|h|mm|m|fff|ff|f|tt|ss|s|"[^"]*"|'[^']*'/g,standardFormatRegExp=/^(n|c|p|e)(\d*)$/i,literalRegExp=/["'].*?["']/g,commaRegExp=/\,/g,EMPTY="",POINT=".",COMMA=",",SHARP="#",ZERO="0",PLACEHOLDER="??",EN="en-US";kendo.cultures={"en-US":{name:EN,numberFormat:{pattern:["-n"],decimals:2,",":",",".":".",groupSize:[3],percent:{pattern:["-n %","n %"],decimals:2,",":",",".":".",groupSize:[3],symbol:"%"},currency:{pattern:["($n)","$n"],decimals:2,",":",",".":".",groupSize:[3],symbol:"$"}},calendars:{standard:{days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December"],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]},AM:["AM","am","AM"],PM:["PM","pm","PM"],patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",F:"dddd, MMMM dd, yyyy h:mm:ss tt",g:"M/d/yyyy h:mm tt",G:"M/d/yyyy h:mm:ss tt",m:"MMMM dd",M:"MMMM dd",s:"yyyy'-'MM'-'ddTHH':'mm':'ss",t:"h:mm tt",T:"h:mm:ss tt",u:"yyyy'-'MM'-'dd HH':'mm':'ss'Z'",y:"MMMM, yyyy",Y:"MMMM, yyyy"},"/":"/",":":":",firstDay:0}}}};function findCulture(culture){if(culture){if(culture.numberFormat){return culture;}if(typeof culture===STRING){var cultures=kendo.cultures;return cultures[culture]||cultures[culture.split("-")[0]]||null;}return null;}return null;}function getCulture(culture){if(culture){culture=findCulture(culture);}return culture||kendo.cultures.current;}kendo.culture=function(cultureName){var cultures=kendo.cultures,culture;if(cultureName!==undefined){culture=findCulture(cultureName)||cultures[EN];culture.calendar=culture.calendars.standard;cultures.current=culture;}else{return cultures.current;}};kendo.findCulture=findCulture;kendo.getCulture=getCulture;kendo.culture(EN);function formatDate(date,format,culture){culture=getCulture(culture);var calendar=culture.calendars.standard,days=calendar.days,months=calendar.months;format=calendar.patterns[format]||format;return format.replace(dateFormatRegExp,function(match){var result;if(match==="d"){result=date.getDate();}else if(match==="dd"){result=pad(date.getDate());}else if(match==="ddd"){result=days.namesAbbr[date.getDay()];}else if(match==="dddd"){result=days.names[date.getDay()];}else if(match==="M"){result=date.getMonth()+1;}else if(match==="MM"){result=pad(date.getMonth()+1);}else if(match==="MMM"){result=months.namesAbbr[date.getMonth()];}else if(match==="MMMM"){result=months.names[date.getMonth()];}else if(match==="yy"){result=pad(date.getFullYear()%100);}else if(match==="yyyy"){result=pad(date.getFullYear(),4);}else if(match==="h"){result=date.getHours()%12||12;}else if(match==="hh"){result=pad(date.getHours()%12||12);}else if(match==="H"){result=date.getHours();}else if(match==="HH"){result=pad(date.getHours());}else if(match==="m"){result=date.getMinutes();}else if(match==="mm"){result=pad(date.getMinutes());}else if(match==="s"){result=date.getSeconds();}else if(match==="ss"){result=pad(date.getSeconds());}else if(match==="f"){result=math.floor(date.getMilliseconds()/100);}else if(match==="ff"){result=math.floor(date.getMilliseconds()/10);}else if(match==="fff"){result=date.getMilliseconds();}else if(match==="tt"){result=date.getHours()<12?calendar.AM[0]:calendar.PM[0];}return result!==undefined?result:match.slice(1,match.length-1);});}function formatNumber(number,format,culture){culture=getCulture(culture);var numberFormat=culture.numberFormat,groupSize=numberFormat.groupSize[0],groupSeparator=numberFormat[COMMA],decimal=numberFormat[POINT],precision=numberFormat.decimals,pattern=numberFormat.pattern[0],literals=[],symbol,isCurrency,isPercent,customPrecision,formatAndPrecision,negative=number<0,integer,fraction,integerLength,fractionLength,replacement=EMPTY,value=EMPTY,idx,length,ch,hasGroup,hasNegativeFormat,decimalIndex,sharpIndex,zeroIndex,percentIndex,startZeroIndex,start=-1,end;if(number===undefined){return EMPTY;}if(!isFinite(number)){return number;}if(!format){return culture.name.length?number.toLocaleString():number.toString();}formatAndPrecision=standardFormatRegExp.exec(format);if(formatAndPrecision){format=formatAndPrecision[1].toLowerCase();isCurrency=format==="c";isPercent=format==="p";if(isCurrency||isPercent){numberFormat=isCurrency?numberFormat.currency:numberFormat.percent;groupSize=numberFormat.groupSize[0];groupSeparator=numberFormat[COMMA];decimal=numberFormat[POINT];precision=numberFormat.decimals;symbol=numberFormat.symbol;pattern=numberFormat.pattern[negative?0:1];}customPrecision=formatAndPrecision[2];if(customPrecision){precision=+customPrecision;}if(format==="e"){return customPrecision?number.toExponential(precision):number.toExponential();}if(isPercent){number*=100;}number=number.toFixed(precision);number=number.split(POINT);integer=number[0];fraction=number[1];if(negative){integer=integer.substring(1);}value=integer;integerLength=integer.length;if(integerLength>=groupSize){value=EMPTY;for(idx=0;idx<integerLength;idx++){if(idx>0&&(integerLength-idx)%groupSize===0){value+=groupSeparator;}value+=integer.charAt(idx);}}if(fraction){value+=decimal+fraction;}if(format==="n"&&!negative){return value;}number=EMPTY;for(idx=0,length=pattern.length;idx<length;idx++){ch=pattern.charAt(idx);if(ch==="n"){number+=value;}else if(ch==="$"||ch==="%"){number+=symbol;}else{number+=ch;}}return number;}if(negative){number=-number;}format=format.split(";");if(negative&&format[1]){format=format[1];hasNegativeFormat=true;}else if(number===0){format=format[2]||format[0];if(format.indexOf(SHARP)==-1&&format.indexOf(ZERO)==-1){return format;}}else{format=format[0];}if(format.indexOf("'")>-1||format.indexOf("\"")>-1){format=format.replace(literalRegExp,function(match){literals.push(match);return PLACEHOLDER;});}percentIndex=format.indexOf("%");isPercent=percentIndex!=-1;isCurrency=format.indexOf("$")!=-1;if(isPercent){if(format[percentIndex-1]!=="\\"){number*=100;}else{format=format.split("\\").join("");}}if(isCurrency||isPercent){numberFormat=isCurrency?numberFormat.currency:numberFormat.percent;groupSize=numberFormat.groupSize[0];groupSeparator=numberFormat[COMMA];decimal=numberFormat[POINT];precision=numberFormat.decimals;symbol=numberFormat.symbol;}hasGroup=format.indexOf(COMMA)>-1;if(hasGroup){format=format.replace(commaRegExp,EMPTY);}decimalIndex=format.indexOf(POINT);length=format.length;if(decimalIndex!=-1){zeroIndex=format.lastIndexOf(ZERO);sharpIndex=format.lastIndexOf(SHARP);fraction=number.toString().split(POINT)[1]||EMPTY;if(sharpIndex>zeroIndex&&fraction.length>(sharpIndex-zeroIndex)){idx=sharpIndex;}else if(zeroIndex!=-1&&zeroIndex>=decimalIndex){idx=zeroIndex;}if(idx){number=number.toFixed(idx-decimalIndex);}}else{number=number.toFixed(0);}sharpIndex=format.indexOf(SHARP);startZeroIndex=zeroIndex=format.indexOf(ZERO);if(sharpIndex==-1&&zeroIndex!=-1){start=zeroIndex;}else if(sharpIndex!=-1&&zeroIndex==-1){start=sharpIndex;}else{start=sharpIndex>zeroIndex?zeroIndex:sharpIndex;}sharpIndex=format.lastIndexOf(SHARP);zeroIndex=format.lastIndexOf(ZERO);if(sharpIndex==-1&&zeroIndex!=-1){end=zeroIndex;}else if(sharpIndex!=-1&&zeroIndex==-1){end=sharpIndex;}else{end=sharpIndex>zeroIndex?sharpIndex:zeroIndex;}if(start==length){end=start;}if(start!=-1){value=number.toString().split(POINT);integer=value[0];fraction=value[1]||EMPTY;integerLength=integer.length;fractionLength=fraction.length;if(hasGroup){if(integerLength===groupSize&&integerLength<decimalIndex-startZeroIndex){integer=groupSeparator+integer;}else if(integerLength>groupSize){value=EMPTY;for(idx=0;idx<integerLength;idx++){if(idx>0&&(integerLength-idx)%groupSize===0){value+=groupSeparator;}value+=integer.charAt(idx);}integer=value;}}number=format.substring(0,start);if(negative&&!hasNegativeFormat){number+="-";}for(idx=start;idx<length;idx++){ch=format.charAt(idx);if(decimalIndex==-1){if(end-idx<integerLength){number+=integer;break;}}else{if(zeroIndex!=-1&&zeroIndex<idx){replacement=EMPTY;}if((decimalIndex-idx)<=integerLength&&decimalIndex-idx>-1){number+=integer;idx=decimalIndex;}if(decimalIndex===idx){number+=(fraction?decimal:EMPTY)+fraction;idx+=end-decimalIndex+1;continue;}}if(ch===ZERO){number+=ch;replacement=ch;}else if(ch===SHARP){number+=replacement;}}if(end>=start){number+=format.substring(end+1);}if(isCurrency||isPercent){value=EMPTY;for(idx=0,length=number.length;idx<length;idx++){ch=number.charAt(idx);value+=(ch==="$"||ch==="%")?symbol:ch;}number=value;}if(literals[0]){length=literals.length;for(idx=0;idx<length;idx++){number=number.replace(PLACEHOLDER,literals[idx]);}}}return number;}var toString=function(value,fmt,culture){if(fmt){if(value instanceof Date){return formatDate(value,fmt,culture);}else if(typeof value===NUMBER){return formatNumber(value,fmt,culture);}}return value!==undefined?value:"";};if(globalize){toString=proxy(globalize.format,globalize);}kendo.format=function(fmt){var values=arguments;return fmt.replace(formatRegExp,function(match,index,placeholderFormat){var value=values[parseInt(index,10)+1];return toString(value,placeholderFormat?placeholderFormat.substring(1):"");});};kendo._extractFormat=function(format){if(format.slice(0,3)==="{0:"){format=format.slice(3,format.length-1);}return format;};kendo.toString=toString;})();(function(){var nonBreakingSpaceRegExp=/\u00A0/g,exponentRegExp=/[eE][\-+]?[0-9]+/,shortTimeZoneRegExp=/[+|\-]\d{1,2}/,longTimeZoneRegExp=/[+|\-]\d{1,2}:\d{2}/,dateRegExp=/^\/Date\((.*?)\)\/$/,formatsSequence=["G","g","d","F","D","y","m","T","t"],numberRegExp={2:/^\d{1,2}/,4:/^\d{4}/};function outOfRange(value,start,end){return!(value>=start&&value<=end);}function designatorPredicate(designator){return designator.charAt(0);}function mapDesignators(designators){return $.map(designators,designatorPredicate);}function adjustDate(date,hours){if(!hours&&date.getHours()===23){date.setHours(date.getHours()+2);}}function parseExact(value,format,culture){if(!value){return null;}var lookAhead=function(match){var i=0;while(format[idx]===match){i++;idx++;}if(i>0){idx-=1;}return i;},getNumber=function(size){var rg=numberRegExp[size]||new RegExp('^\\d{1,'+size+'}'),match=value.substr(valueIdx,size).match(rg);if(match){match=match[0];valueIdx+=match.length;return parseInt(match,10);}return null;},getIndexByName=function(names){var i=0,length=names.length,name,nameLength;for(;i<length;i++){name=names[i];nameLength=name.length;if(value.substr(valueIdx,nameLength)==name){valueIdx+=nameLength;return i+1;}}return null;},checkLiteral=function(){var result=false;if(value.charAt(valueIdx)===format[idx]){valueIdx++;result=true;}return result;},calendar=culture.calendars.standard,year=null,month=null,day=null,hours=null,minutes=null,seconds=null,milliseconds=null,idx=0,valueIdx=0,literal=false,date=new Date(),shortYearCutOff=30,defaultYear=date.getFullYear(),ch,count,length,pattern,pmHour,UTC,ISO8601,matches,amDesignators,pmDesignators,hoursOffset,minutesOffset,century;if(!format){format="d";}pattern=calendar.patterns[format];if(pattern){format=pattern;}format=format.split("");length=format.length;for(;idx<length;idx++){ch=format[idx];if(literal){if(ch==="'"){literal=false;}else{checkLiteral();}}else{if(ch==="d"){count=lookAhead("d");day=count<3?getNumber(2):getIndexByName(calendar.days[count==3?"namesAbbr":"names"]);if(day===null||outOfRange(day,1,31)){return null;}}else if(ch==="M"){count=lookAhead("M");month=count<3?getNumber(2):getIndexByName(calendar.months[count==3?'namesAbbr':'names']);if(month===null||outOfRange(month,1,12)){return null;}month-=1;}else if(ch==="y"){count=lookAhead("y");year=getNumber(count);if(year===null){return null;}if(count==2){century=defaultYear-defaultYear%100;if(shortYearCutOff<year){century-=100;}year=century+year;}}else if(ch==="h"){lookAhead("h");hours=getNumber(2);if(hours==12){hours=0;}if(hours===null||outOfRange(hours,0,11)){return null;}}else if(ch==="H"){lookAhead("H");hours=getNumber(2);if(hours===null||outOfRange(hours,0,23)){return null;}}else if(ch==="m"){lookAhead("m");minutes=getNumber(2);if(minutes===null||outOfRange(minutes,0,59)){return null;}}else if(ch==="s"){lookAhead("s");seconds=getNumber(2);if(seconds===null||outOfRange(seconds,0,59)){return null;}}else if(ch==="f"){count=lookAhead("f");milliseconds=getNumber(count);if(milliseconds!==null&&count>3){milliseconds=parseInt(milliseconds.toString().substring(0,3),10);}if(milliseconds===null||outOfRange(milliseconds,0,999)){return null;}}else if(ch==="t"){count=lookAhead("t");amDesignators=calendar.AM;pmDesignators=calendar.PM;if(count===1){amDesignators=mapDesignators(amDesignators);pmDesignators=mapDesignators(pmDesignators);}pmHour=getIndexByName(pmDesignators);if(!pmHour&&!getIndexByName(amDesignators)){return null;}}else if(ch==="z"){UTC=true;count=lookAhead("z");if(value.substr(valueIdx,1)==="Z"){if(!ISO8601){return null;}checkLiteral();continue;}matches=value.substr(valueIdx,6).match(count>2?longTimeZoneRegExp:shortTimeZoneRegExp);if(!matches){return null;}matches=matches[0];valueIdx=matches.length;matches=matches.split(":");hoursOffset=parseInt(matches[0],10);if(outOfRange(hoursOffset,-12,13)){return null;}if(count>2){minutesOffset=parseInt(matches[1],10);if(isNaN(minutesOffset)||outOfRange(minutesOffset,0,59)){return null;}}}else if(ch==="T"){ISO8601=checkLiteral();}else if(ch==="'"){literal=true;checkLiteral();}else if(!checkLiteral()){return null;}}}if(year===null){year=defaultYear;}if(pmHour&&hours<12){hours+=12;}if(day===null){day=1;}if(UTC){if(hoursOffset){hours+=-hoursOffset;}if(minutesOffset){minutes+=-minutesOffset;}value=new Date(Date.UTC(year,month,day,hours,minutes,seconds,milliseconds));}else{value=new Date(year,month,day,hours,minutes,seconds,milliseconds);adjustDate(value,hours);}if(year<100){value.setFullYear(year);}return value;}kendo._adjustDate=adjustDate;kendo.parseDate=function(value,formats,culture){if(value instanceof Date){return value;}var idx=0,date=null,length,patterns;if(value&&value.indexOf("/D")===0){date=dateRegExp.exec(value);if(date){return new Date(parseInt(date[1],10));}}culture=kendo.getCulture(culture);if(!formats){formats=[];patterns=culture.calendar.patterns;length=formatsSequence.length;for(;idx<length;idx++){formats[idx]=patterns[formatsSequence[idx]];}formats[idx]="ddd MMM dd yyyy HH:mm:ss";formats[++idx]="yyyy-MM-ddTHH:mm:ss.fffffffzzz";formats[++idx]="yyyy-MM-ddTHH:mm:ss.fffzzz";formats[++idx]="yyyy-MM-ddTHH:mm:sszzz";formats[++idx]="yyyy-MM-ddTHH:mmzzz";formats[++idx]="yyyy-MM-ddTHH:mmzz";formats[++idx]="yyyy-MM-dd";idx=0;}formats=isArray(formats)?formats:[formats];length=formats.length;for(;idx<length;idx++){date=parseExact(value,formats[idx],culture);if(date){return date;}}return date;};kendo.parseInt=function(value,culture){var result=kendo.parseFloat(value,culture);if(result){result=result|0;}return result;};kendo.parseFloat=function(value,culture,format){if(!value&&value!==0){return null;}if(typeof value===NUMBER){return value;}value=value.toString();culture=kendo.getCulture(culture);var number=culture.numberFormat,percent=number.percent,currency=number.currency,symbol=currency.symbol,percentSymbol=percent.symbol,negative=value.indexOf("-")>-1,parts,isPercent;if(exponentRegExp.test(value)){value=parseFloat(value);if(isNaN(value)){value=null;}return value;}if(value.indexOf(symbol)>-1||(format&&format.toLowerCase().indexOf("c")>-1)){number=currency;parts=number.pattern[0].replace("$",symbol).split("n");if(value.indexOf(parts[0])>-1&&value.indexOf(parts[1])>-1){value=value.replace(parts[0],"").replace(parts[1],"");negative=true;}}else if(value.indexOf(percentSymbol)>-1){isPercent=true;number=percent;symbol=percentSymbol;}value=value.replace("-","").replace(symbol,"").replace(nonBreakingSpaceRegExp," ").split(number[","].replace(nonBreakingSpaceRegExp," ")).join("").replace(number["."],".");value=parseFloat(value);if(isNaN(value)){value=null;}else if(negative){value*=-1;}if(value&&isPercent){value/=100;}return value;};if(globalize){kendo.parseDate=function(value,format,culture){if(value instanceof Date){return value;}return globalize.parseDate(value,format,culture);};kendo.parseFloat=function(value,culture,format){if(typeof value===NUMBER){return value;}return globalize.parseFloat(value,culture);};}})();function wrap(element){var browser=support.browser,percentage,isRtl=element.css("direction")=="rtl";if(!element.parent().hasClass("k-animation-container")){var shadow=element.css(kendo.support.transitions.css+"box-shadow")||element.css("box-shadow"),radius=shadow?shadow.match(boxShadowRegExp)||[0,0,0,0,0]:[0,0,0,0,0],blur=math.max((+radius[3]),+(radius[4]||0)),left=(-radius[1])+blur,right=(+radius[1])+blur,bottom=(+radius[2])+blur,width=element[0].style.width,height=element[0].style.height,percentWidth=percentRegExp.test(width),percentHeight=percentRegExp.test(height);if(browser.opera){left=right=bottom=5;}percentage=percentWidth||percentHeight;if(!percentWidth){width=element.outerWidth();}if(!percentHeight){height=element.outerHeight();}element.wrap($("<div/>").addClass("k-animation-container").css({width:width,height:height,marginLeft:left*(isRtl?1:-1),paddingLeft:left,paddingRight:right,paddingBottom:bottom}));if(percentage){element.css({width:"100%",height:"100%",boxSizing:"border-box",mozBoxSizing:"border-box",webkitBoxSizing:"border-box"});}}else{var wrapper=element.parent(".k-animation-container"),wrapperStyle=wrapper[0].style;if(wrapper.is(":hidden")){wrapper.show();}percentage=percentRegExp.test(wrapperStyle.width)||percentRegExp.test(wrapperStyle.height);if(!percentage){wrapper.css({width:element.outerWidth(),height:element.outerHeight()});}}if(browser.msie&&math.floor(browser.version)<=7){element.css({zoom:1});}return element.parent();}function deepExtend(destination){var i=1,length=arguments.length;for(i=1;i<length;i++){deepExtendOne(destination,arguments[i]);}return destination;}function deepExtendOne(destination,source){var ObservableArray=kendo.data.ObservableArray,property,propValue,propType,destProp;for(property in source){propValue=source[property];propType=typeof propValue;if(propType===OBJECT&&propValue!==null&&propValue.constructor!==Array&&propValue.constructor!==ObservableArray){if(propValue instanceof Date){destination[property]=new Date(propValue.getTime());}else{destProp=destination[property];if(typeof(destProp)===OBJECT){destination[property]=destProp||{};}else{destination[property]={};}deepExtendOne(destination[property],propValue);}}else if(propType!==UNDEFINED){destination[property]=propValue;}}return destination;}function testRx(agent,rxs,dflt){for(var rx in rxs){if(rxs.hasOwnProperty(rx)&&rxs[rx].test(agent)){return rx;}}return dflt!==undefined?dflt:agent;}function getComputedStyles(element,properties){var styles={},computedStyle;if(document.defaultView&&document.defaultView.getComputedStyle){computedStyle=document.defaultView.getComputedStyle(element,"");if(properties){$.each(properties,function(idx,value){styles[value]=computedStyle.getPropertyValue(value);});}}else{computedStyle=element.currentStyle;if(properties){$.each(properties,function(idx,value){styles[value]=computedStyle[value.replace(/\-(\w)/g,function(strMatch,g1){return g1.toUpperCase();})];});}}if(!kendo.size(styles)){styles=computedStyle;}return styles;}(function(){support.scrollbar=function(){var div=document.createElement("div"),result;div.style.cssText="overflow:scroll;overflow-x:hidden;zoom:1;clear:both";div.innerHTML="&nbsp;";document.body.appendChild(div);result=div.offsetWidth-div.scrollWidth;document.body.removeChild(div);return result;};support.isRtl=function(element){return $(element).closest(".k-rtl").length>0;};var table=document.createElement("table");try{table.innerHTML="<tr><td></td></tr>";support.tbodyInnerHtml=true;}catch(e){support.tbodyInnerHtml=false;}support.touch="ontouchstart"in window;support.pointers=navigator.msPointerEnabled;var transitions=support.transitions=false,transforms=support.transforms=false,elementProto="HTMLElement"in window?HTMLElement.prototype:[];support.hasHW3D=("WebKitCSSMatrix"in window&&"m11"in new window.WebKitCSSMatrix())||"MozPerspective"in document.documentElement.style||"msPerspective"in document.documentElement.style;support.hasNativeScrolling=typeof document.documentElement.style.webkitOverflowScrolling=="string";each(["Moz","webkit","O","ms"],function(){var prefix=this.toString(),hasTransitions=typeof table.style[prefix+"Transition"]===STRING;if(hasTransitions||typeof table.style[prefix+"Transform"]===STRING){var lowPrefix=prefix.toLowerCase();transforms={css:"-"+lowPrefix+"-",prefix:prefix,event:(lowPrefix==="o"||lowPrefix==="webkit")?lowPrefix:lowPrefix==="ms"?"MS":""};if(hasTransitions){transitions=transforms;transitions.event=transitions.event?transitions.event+"TransitionEnd":"transitionend";}return false;}});support.transforms=transforms;support.transitions=transitions;support.devicePixelRatio=window.devicePixelRatio===undefined?1:window.devicePixelRatio;support.detectOS=function(ua){var os=false,minorVersion,match=[],agentRxs={fire:/(Silk)\/(\d+)\.(\d+(\.\d+)?)/,android:/(Android|Android.*(?:Opera|Firefox).*?\/)\s*(\d+)\.(\d+(\.\d+)?)/,iphone:/(iPhone|iPod).*OS\s+(\d+)[\._]([\d\._]+)/,ipad:/(iPad).*OS\s+(\d+)[\._]([\d_]+)/,meego:/(MeeGo).+NokiaBrowser\/(\d+)\.([\d\._]+)/,webos:/(webOS)\/(\d+)\.(\d+(\.\d+)?)/,blackberry:/(BlackBerry|BB10).*?Version\/(\d+)\.(\d+(\.\d+)?)/,playbook:/(PlayBook).*?Tablet\s*OS\s*(\d+)\.(\d+(\.\d+)?)/,winphone:/(IEMobile)\/(\d+)\.(\d+(\.\d+)?)/,windows:/(MSIE)\s+(\d+)\.(\d+(\.\d+)?)/},osRxs={ios:/^i(phone|pad|pod)$/i,android:/^android|fire$/i,blackberry:/^blackberry|playbook/i,windows:/windows|winphone/},formFactorRxs={tablet:/playbook|ipad|fire/i},browserRxs={omini:/Opera\sMini/i,omobile:/Opera\sMobi/i,firefox:/Firefox|Fennec/i,mobilesafari:/version\/.*safari/i,chrome:/chrome/i,webkit:/webkit/i,ie:/MSIE|Windows\sPhone/i};for(var agent in agentRxs){if(agentRxs.hasOwnProperty(agent)){match=ua.match(agentRxs[agent]);if(match){if(agent=="windows"&&"plugins"in navigator){return false;}os={};os.device=agent;os.tablet=testRx(agent,formFactorRxs,false);os.browser=testRx(ua,browserRxs,"default");os.name=testRx(agent,osRxs);os[os.name]=true;os.majorVersion=match[2];os.minorVersion=match[3].replace("_",".");minorVersion=os.minorVersion.replace(".","").substr(0,2);os.flatVersion=os.majorVersion+minorVersion+(new Array(3-(minorVersion.length<3?minorVersion.length:2)).join("0"));os.appMode=window.navigator.standalone||(/file|local/).test(window.location.protocol)||typeof window.PhoneGap!==UNDEFINED||typeof window.cordova!==UNDEFINED;if(os.android&&support.devicePixelRatio<1.5&&(window.outerWidth>800||window.outerHeight>800||(window.screen&&(window.screen.availWidth>800||window.screen.availHeight>800)))){os.tablet=agent;}break;}}}return os;};support.mobileOS=support.detectOS(navigator.userAgent);support.kineticScrollNeeded=support.mobileOS&&support.touch;function detectBrowser(ua){var browser=false,match=[],browserRxs={webkit:/(chrome)[ \/]([\w.]+)/i,safari:/(webkit)[ \/]([\w.]+)/i,opera:/(opera)(?:.*version|)[ \/]([\w.]+)/i,msie:/(msie) ([\w.]+)/i,mozilla:/(mozilla)(?:.*? rv:([\w.]+)|)/i};for(var agent in browserRxs){if(browserRxs.hasOwnProperty(agent)){match=ua.match(browserRxs[agent]);if(match){browser={};browser[agent]=true;browser[match[1].toLowerCase()]=true;browser.version=match[2];break;}}}return browser;}support.browser=detectBrowser(navigator.userAgent);support.zoomLevel=function(){return support.touch?(document.documentElement.clientWidth/window.innerWidth):1;};support.eventCapture=document.documentElement.addEventListener;support.placeholder="placeholder"in document.createElement("input");support.stableSort=(function(){var sorted=[0,1,2,3,4,5,6,7,8,9,10,11,12].sort(function(){return 0;});return sorted[0]===0&&sorted[1]===1&&sorted[2]===2&&sorted[3]===3&&sorted[4]===4&&sorted[5]===5&&sorted[6]===6&&sorted[7]===7&&sorted[8]===8&&sorted[9]===9&&sorted[10]===10&&sorted[11]===11&&sorted[12]===12;})();support.matchesSelector=elementProto.webkitMatchesSelector||elementProto.mozMatchesSelector||elementProto.msMatchesSelector||elementProto.oMatchesSelector||elementProto.matchesSelector||function(selector){var nodeList=document.querySelectorAll?(this.parentNode||document).querySelectorAll(selector)||[]:$(selector),i=nodeList.length;while(i--){if(nodeList[i]==this){return true;}}return false;};})();function size(obj){var result=0,key;for(key in obj){if(obj.hasOwnProperty(key)&&key!="toJSON"){result++;}}return result;}function isNodeEmpty(element){return $.trim($(element).contents().filter(function(){return this.nodeType!=8;}).html())==="";}function getOffset(element,type){if(!type){type="offset";}var result=element[type](),mobileOS=support.mobileOS;if(support.touch&&mobileOS.ios&&mobileOS.flatVersion<410){var offset=type=="offset"?result:element.offset(),positioned=(result.left==offset.left&&result.top==offset.top);if(positioned){return{top:result.top-window.scrollY,left:result.left-window.scrollX};}}return result;}var directions={left:{reverse:"right"},right:{reverse:"left"},down:{reverse:"up"},up:{reverse:"down"},top:{reverse:"bottom"},bottom:{reverse:"top"},"in":{reverse:"out"},out:{reverse:"in"}};function parseEffects(input){var effects={};each((typeof input==="string"?input.split(" "):input),function(idx){effects[idx]=this;});return effects;}function fx(element){return new kendo.fx.Element(element);}$.extend(fx,{Element:function(element){this.element=$(element);},promise:function(element,options){if(!element.is(":visible")){element.css({display:element.data("olddisplay")||"block"}).css("display");}if(options.hide){element.data("olddisplay",element.css("display")).hide();}if(options.init){options.init();}if(options.completeCallback){options.completeCallback(element);}element.dequeue();},transitionPromise:function(element,destination,options){var container=kendo.wrap(element);container.append(destination);element.hide();destination.show();if(options.completeCallback){options.completeCallback(element);}return element;}});function prepareAnimationOptions(options,duration,reverse,complete){if(typeof options===STRING){if(isFunction(duration)){complete=duration;duration=400;reverse=false;}if(isFunction(reverse)){complete=reverse;reverse=false;}if(typeof duration===BOOLEAN){reverse=duration;duration=400;}options={effects:options,duration:duration,reverse:reverse,complete:complete};}return extend({effects:{},duration:400,reverse:false,init:noop,teardown:noop,hide:false},options,{completeCallback:options.complete,complete:noop});}function animate(element,options,duration,reverse,complete){var idx=0,length=element.length,instance;for(;idx<length;idx++){instance=$(element[idx]);instance.queue(function(){fx.promise(instance,prepareAnimationOptions(options,duration,reverse,complete));});}return element;}function animateTo(element,destination,options,duration,reverse,complete){return fx.transitionPromise(element,destination,prepareAnimationOptions(options,duration,reverse,complete));}function toggleClass(element,classes,options,add){if(classes){classes=classes.split(" ");each(classes,function(idx,value){element.toggleClass(value,add);});}return element;}if(!("kendoAnimate"in $.fn)){extend($.fn,{kendoStop:function(clearQueue,gotoEnd){return this.stop(clearQueue,gotoEnd);},kendoAnimate:function(options,duration,reverse,complete){return animate(this,options,duration,reverse,complete);},kendoAnimateTo:function(destination,options,duration,reverse,complete){return animateTo(this,destination,options,duration,reverse,complete);},kendoAddClass:function(classes,options){return kendo.toggleClass(this,classes,options,true);},kendoRemoveClass:function(classes,options){return kendo.toggleClass(this,classes,options,false);},kendoToggleClass:function(classes,options,toggle){return kendo.toggleClass(this,classes,options,toggle);}});}var ampRegExp=/&/g,ltRegExp=/</g,gtRegExp=/>/g;function htmlEncode(value){return(""+value).replace(ampRegExp,"&amp;").replace(ltRegExp,"&lt;").replace(gtRegExp,"&gt;");}var touchLocation=function(e){var originalEvent=typeof e.pageX==UNDEFINED?e.originalEvent:e;return{idx:support.pointers?originalEvent.pointerId:0,x:originalEvent.pageX,y:originalEvent.pageY};};var eventTarget=function(e){return e.target;};if(support.touch){var mobileChrome=(support.mobileOS.browser=="chrome"&&!support.mobileOS.ios);touchLocation=function(e,id){var changedTouches=e.changedTouches||e.originalEvent.changedTouches;if(id){var output=null;each(changedTouches,function(idx,value){if(id==value.identifier){output={idx:value.identifier,x:value.pageX,y:value.pageY};}});return output;}else{return{idx:changedTouches[0].identifier,x:changedTouches[0].pageX,y:changedTouches[0].pageY};}};eventTarget=function(e){var touches="originalEvent"in e?e.originalEvent.changedTouches:"changedTouches"in e?e.changedTouches:null,property=mobileChrome?"screen":"client";return touches?document.elementFromPoint(touches[0][property+"X"],touches[0][property+"Y"]):e.target;};each(["swipe","swipeLeft","swipeRight","swipeUp","swipeDown","doubleTap","tap"],function(m,value){$.fn[value]=function(callback){return this.bind(value,callback);};});}if(support.touch){if(!support.mobileOS){support.mousedown="mousedown touchstart";support.mouseup="mouseup touchend";support.mousemove="mousemove touchmove";support.mousecancel="mouseleave touchcancel";support.click="click touchend";support.resize="resize";}else{support.mousedown="touchstart";support.mouseup="touchend";support.mousemove="touchmove";support.mousecancel="touchcancel";support.click="touchend";support.resize="orientationchange";}}else if(support.pointers){support.mousemove="MSPointerMove";support.mousedown="MSPointerDown";support.mouseup="MSPointerUp";support.mousecancel="MSPointerCancel";support.click="MSPointerUp";support.resize="orientationchange resize";}else{support.mousemove="mousemove";support.mousedown="mousedown";support.mouseup="mouseup";support.mousecancel="mouseleave";support.click="click";support.resize="resize";}var wrapExpression=function(members){var result="d",index,idx,length,member,count=1;for(idx=0,length=members.length;idx<length;idx++){member=members[idx];if(member!==""){index=member.indexOf("[");if(index!==0){if(index==-1){member="."+member;}else{count++;member="."+member.substring(0,index)+" || {})"+member.substring(index);}}count++;result+=member+((idx<length-1)?" || {})":")");}}return new Array(count).join("(")+result;},localUrlRe=/^([a-z]+:)?\/\//i;extend(kendo,{ui:kendo.ui||{},fx:kendo.fx||fx,mobile:kendo.mobile||{},data:kendo.data||{},dataviz:kendo.dataviz||{ui:{roles:{}}},keys:{INSERT:45,DELETE:46,BACKSPACE:8,TAB:9,ENTER:13,ESC:27,LEFT:37,UP:38,RIGHT:39,DOWN:40,END:35,HOME:36,SPACEBAR:32,PAGEUP:33,PAGEDOWN:34,F2:113,F10:121,F12:123},support:kendo.support||support,animate:kendo.animate||animate,ns:"",attr:function(value){return"data-"+kendo.ns+value;},wrap:wrap,deepExtend:deepExtend,getComputedStyles:getComputedStyles,size:size,isNodeEmpty:isNodeEmpty,getOffset:kendo.getOffset||getOffset,parseEffects:kendo.parseEffects||parseEffects,toggleClass:kendo.toggleClass||toggleClass,directions:kendo.directions||directions,Observable:Observable,Class:Class,Template:Template,template:proxy(Template.compile,Template),render:proxy(Template.render,Template),stringify:proxy(JSON.stringify,JSON),touchLocation:touchLocation,eventTarget:eventTarget,htmlEncode:htmlEncode,isLocalUrl:function(url){return url&&!localUrlRe.test(url);},expr:function(expression,safe){expression=expression||"";if(expression&&expression.charAt(0)!=="["){expression="."+expression;}if(safe){expression=wrapExpression(expression.split("."));}else{expression="d"+expression;}return expression;},getter:function(expression,safe){return getterCache[expression]=getterCache[expression]||new Function("d","return "+kendo.expr(expression,safe));},setter:function(expression){return setterCache[expression]=setterCache[expression]||new Function("d,value","d."+expression+"=value");},accessor:function(expression){return{get:kendo.getter(expression),set:kendo.setter(expression)};},guid:function(){var id="",i,random;for(i=0;i<32;i++){random=math.random()*16|0;if(i==8||i==12||i==16||i==20){id+="-";}id+=(i==12?4:(i==16?(random&3|8):random)).toString(16);}return id;},roleSelector:function(role){return role.replace(/(\S+)/g,"["+kendo.attr("role")+"=$1],").slice(0,-1);},logToConsole:function(message){var console=window.console;if(typeof(console)!="undefined"&&console.log){console.log(message);}}});var Widget=Observable.extend({init:function(element,options){var that=this;that.element=kendo.jQuery(element).handler(that);Observable.fn.init.call(that);options=that.options=extend(true,{},that.options,options);if(!that.element.attr(kendo.attr("role"))){that.element.attr(kendo.attr("role"),(options.name||"").toLowerCase());}that.element.data("kendo"+options.prefix+options.name,that);that.bind(that.events,options);},events:[],options:{prefix:""},_tabindex:function(target){target=target||this.wrapper;var element=this.element,TABINDEX="tabindex",tabindex=target.attr(TABINDEX)||element.attr(TABINDEX);element.removeAttr(TABINDEX);target.attr(TABINDEX,!isNaN(tabindex)?tabindex:0);},setOptions:function(options){var that=this,idx=0,length=that.events.length,e;for(;idx<length;idx++){e=that.events[idx];if(that.options[e]&&options[e]){that.unbind(e,that.options[e]);}}$.extend(that.options,options);that.bind(that.events,options);},destroy:function(){var that=this;that.element.removeData("kendo"+that.options.prefix+that.options.name);that.unbind();}});kendo.notify=noop;var templateRegExp=/template$/i,jsonRegExp=/^\s*(?:\{(?:.|\n)*\}|\[(?:.|\n)*\])\s*$/,jsonFormatRegExp=/^\{(\d+)(:[^\}]+)?\}/,dashRegExp=/([A-Z])/g;function parseOption(element,option){var value;if(option.indexOf("data")===0){option=option.substring(4);option=option.charAt(0).toLowerCase()+option.substring(1);}option=option.replace(dashRegExp,"-$1");value=element.getAttribute("data-"+kendo.ns+option);if(value===null){value=undefined;}else if(value==="null"){value=null;}else if(value==="true"){value=true;}else if(value==="false"){value=false;}else if(!isNaN(parseFloat(value))){value=parseFloat(value);}else if(jsonRegExp.test(value)&&!jsonFormatRegExp.test(value)){value=eval("("+value+")");}return value;}function parseOptions(element,options){var result={},option,value;for(option in options){value=parseOption(element,option);if(value!==undefined){if(templateRegExp.test(option)){value=kendo.template($("#"+value).html());}result[option]=value;}}return result;}kendo.initWidget=function(element,options,roles){var result,option,widget,idx,length,role,value,dataSource;if(!roles){roles=kendo.ui.roles;}else if(roles.roles){roles=roles.roles;}element=element.nodeType?element:element[0];role=element.getAttribute("data-"+kendo.ns+"role");if(!role){return;}if(role.indexOf(".")===-1){widget=roles[role];}else{widget=kendo.getter(role)(window);}if(!widget){return;}dataSource=parseOption(element,"dataSource");options=$.extend({},parseOptions(element,widget.fn.options),options);if(dataSource){if(typeof dataSource===STRING){options.dataSource=kendo.getter(dataSource)(window);}else{options.dataSource=dataSource;}}for(idx=0,length=widget.fn.events.length;idx<length;idx++){option=widget.fn.events[idx];value=parseOption(element,option);if(value!==undefined){options[option]=kendo.getter(value)(window);}}result=$(element).data("kendo"+widget.fn.options.prefix+widget.fn.options.name);if(!result){result=new widget(element,options);}else{result.setOptions(options);}return result;};kendo.rolesFromNamespaces=function(namespaces){var roles;if(!namespaces[0]){namespaces=[kendo.ui,kendo.dataviz.ui];}roles=$.map(namespaces,function(namespace){return namespace.roles;}).reverse();return extend.apply(null,[{}].concat(roles));};kendo.init=function(element){var roles=kendo.rolesFromNamespaces(slice.call(arguments,1));$(element).find("[data-"+kendo.ns+"role]").andSelf().each(function(){kendo.initWidget(this,{},roles);});};kendo.destroy=function(element){$(element).find("[data-"+kendo.ns+"role]").andSelf().each(function(){var element=$(this),widget=kendo.widgetInstance(element,kendo.ui)||kendo.widgetInstance(element,kendo.mobile.ui)||kendo.widgetInstance(element,kendo.dataviz.ui);if(widget){widget.destroy();}});};kendo.parseOptions=parseOptions;extend(kendo.ui,{Widget:Widget,roles:{},progress:function(container,toggle){var mask=container.find(".k-loading-mask");if(toggle){if(!mask.length){mask=$("<div class='k-loading-mask'><span class='k-loading-text'>Loading...</span><div class='k-loading-image'/><div class='k-loading-color'/></div>").width("100%").height("100%").prependTo(container).css({top:container.scrollTop(),left:container.scrollLeft()});}}else if(mask){mask.remove();}},plugin:function(widget,register,prefix){var name=widget.fn.options.name,getter;register=register||kendo.ui;prefix=prefix||"";register[name]=widget;register.roles[name.toLowerCase()]=widget;getter="getKendo"+prefix+name;name="kendo"+prefix+name;$.fn[name]=function(options){var value=this,args;if(typeof options===STRING){args=slice.call(arguments,1);this.each(function(){var widget=$.data(this,name),method,result;if(!widget){throw new Error(kendo.format("Cannot call method '{0}' of {1} before it is initialized",options,name));}method=widget[options];if(typeof method!==FUNCTION){throw new Error(kendo.format("Cannot find method '{0}' of {1}",options,name));}result=method.apply(widget,args);if(result!==undefined){value=result;return false;}});}else{this.each(function(){new widget(this,options);});}return value;};$.fn[getter]=function(){return this.data(name);};}});var MobileWidget=Widget.extend({init:function(element,options){Widget.fn.init.call(this,element,options);this.element.autoApplyNS();this.wrapper=this.element;},destroy:function(){Widget.fn.destroy.call(this);this.element.kendoDestroy();},options:{prefix:"Mobile"},events:[],viewShow:$.noop,view:function(){var viewElement=this.element.closest(kendo.roleSelector("view")+","+kendo.roleSelector("splitview"));return viewElement.data("kendoMobileView")||viewElement.data("kendoMobileSplitView");}});extend(kendo.mobile,{init:function(element){kendo.init(element,kendo.mobile.ui,kendo.ui,kendo.dataviz.ui);},ui:{Widget:MobileWidget,roles:{},plugin:function(widget){kendo.ui.plugin(widget,kendo.mobile.ui,"Mobile");}}});kendo.touchScroller=function(elements,options){return $(elements).map(function(idx,element){element=$(element);if(support.kineticScrollNeeded&&kendo.mobile.ui.Scroller&&!element.data("kendoMobileScroller")){element.kendoMobileScroller(options);return element.data("kendoMobileScroller");}else{return false;}})[0];};kendo.preventDefault=function(e){e.preventDefault();};kendo.widgetInstance=function(element,suite){var widget=suite.roles[element.data(kendo.ns+"role")];if(widget){return element.data("kendo"+widget.fn.options.prefix+widget.fn.options.name);}};kendo.onResize=function(callback){var handler=callback;if(support.mobileOS.android){handler=function(){setTimeout(callback,200);};}$(window).on(support.resize,handler);};kendo.attrValue=function(element,key){return element.data(kendo.ns+key);};kendo.days={Sunday:0,Monday:1,Tuesday:2,Wednesday:3,Thursday:4,Friday:5,Saturday:6};function focusable(element,isTabIndexNotNaN){var nodeName=element.nodeName.toLowerCase();return(/input|select|textarea|button|object/.test(nodeName)?!element.disabled:"a"===nodeName?element.href||isTabIndexNotNaN:isTabIndexNotNaN)&&visible(element);}function visible(element){return!$(element).parents().andSelf().filter(function(){return $.css(this,"visibility")==="hidden"||$.expr.filters.hidden(this);}).length;}$.extend($.expr[":"],{focusable:function(element){var idx=$.attr(element,"tabindex");return focusable(element,!isNaN(idx)&&idx>-1);}});var MOUSE_EVENTS=["mousedown","mousemove","mouseenter","mouseleave","mouseover","mouseout","mouseup","click"];$.extend(kendo,{setupMouseMute:function(){var idx=0,length=MOUSE_EVENTS.length,element=document.documentElement;if(kendo.mouseTrap||!support.eventCapture){return;}kendo.mouseTrap=true;kendo.captureMouseEvents=false;var handler=function(e){if(kendo.captureMouse){e.stopPropagation();if(e.type==="click"){e.preventDefault();}}};for(;idx<length;idx++){element.addEventListener(MOUSE_EVENTS[idx],handler,true);}},muteMouse:function(){kendo.captureMouse=true;clearTimeout(kendo.mouseTrapTimeoutID);},unMuteMouse:function(){kendo.mouseTrapTimeoutID=setTimeout(function(){kendo.captureMouse=false;},400);}});var eventMap={down:"touchstart mousedown",move:"mousemove touchmove",up:"mouseup touchend touchcancel",cancel:"mouseleave touchcancel"};if(support.pointers){eventMap={down:"MSPointerDown",move:"MSPointerMove",up:"MSPointerUp",cancel:"MSPointerCancel"};}function applyEventMap(e){return(eventMap[e]||e);}var on=$.fn.on;var kendoJQuery=$.sub();extend(kendoJQuery.fn,{handler:function(handler){this.data("handler",handler);return this;},autoApplyNS:function(){this.data("kendoNS","."+kendo.guid());return this;},on:function(){var that=this,ns=that.data("kendoNS");if(arguments.length===1){return on.call(that,arguments[0]);}var context=that,args=slice.call(arguments);if(typeof args[args.length-1]===UNDEFINED){args.pop();}var callback=args[args.length-1],events=args[0].replace(/([^ ]+)/g,applyEventMap);if(ns){events=events.replace(/( |$)/g,ns+" ");}if(support.touch&&events.indexOf("mouse")>-1&&this[0]!==document.documentElement){kendo.setupMouseMute();on.call(this,{touchstart:kendo.muteMouse,touchend:kendo.unMuteMouse});}if(typeof callback===STRING){context=that.data("handler");callback=context[callback];args[args.length-1]=function(e){callback.call(context,e);};}args[0]=events;on.apply(that,args);return that;},kendoDestroy:function(){var ns=this.data("kendoNS");if(ns){this.off(ns);}return this;}});kendo.jQuery=kendoJQuery;kendo.eventMap=eventMap;})(jQuery);(function($,undefined){var kendo=window.kendo,fx=kendo.fx,each=$.each,extend=$.extend,proxy=$.proxy,support=kendo.support,browser=support.browser,transforms=support.transforms,transitions=support.transitions,scaleProperties={scale:0,scalex:0,scaley:0,scale3d:0},translateProperties={translate:0,translatex:0,translatey:0,translate3d:0},hasZoom=(typeof document.documentElement.style.zoom!=="undefined")&&!transforms,matrix3dRegExp=/matrix3?d?\s*\(.*,\s*([\d\.\-]+)\w*?,\s*([\d\.\-]+)\w*?,\s*([\d\.\-]+)\w*?,\s*([\d\.\-]+)\w*?/i,cssParamsRegExp=/^(-?[\d\.\-]+)?[\w\s]*,?\s*(-?[\d\.\-]+)?[\w\s]*/i,translateXRegExp=/translatex?$/i,oldEffectsRegExp=/(zoom|fade|expand)(\w+)/,singleEffectRegExp=/(zoom|fade|expand)/,unitRegExp=/[xy]$/i,transformProps=["perspective","rotate","rotatex","rotatey","rotatez","rotate3d","scale","scalex","scaley","scalez","scale3d","skew","skewx","skewy","translate","translatex","translatey","translatez","translate3d","matrix","matrix3d"],transform2d=["rotate","scale","scalex","scaley","skew","skewx","skewy","translate","translatex","translatey","matrix"],transform2units={"rotate":"deg",scale:"",skew:"px",translate:"px"},cssPrefix=transforms.css,Effects={},round=Math.round,BLANK="",PX="px",NONE="none",AUTO="auto",WIDTH="width",HEIGHT="height",HIDDEN="hidden",ORIGIN="origin",ABORT_ID="abortId",OVERFLOW="overflow",TRANSLATE="translate",TRANSITION=cssPrefix+"transition",TRANSFORM=cssPrefix+"transform",PERSPECTIVE=cssPrefix+"perspective",BACKFACE=cssPrefix+"backface-visibility",directions={left:{reverse:"right",property:"left",transition:"translatex",vertical:false,modifier:-1},right:{reverse:"left",property:"left",transition:"translatex",vertical:false,modifier:1},down:{reverse:"up",property:"top",transition:"translatey",vertical:true,modifier:1},up:{reverse:"down",property:"top",transition:"translatey",vertical:true,modifier:-1},top:{reverse:"bottom"},bottom:{reverse:"top"},"in":{reverse:"out",modifier:-1},out:{reverse:"in",modifier:1},vertical:{reverse:"vertical"},horizontal:{reverse:"horizontal"}};kendo.directions=directions;extend($.fn,{kendoStop:function(clearQueue,gotoEnd){if(transitions){return kendo.fx.stopQueue(this,clearQueue||false,gotoEnd||false);}else{return this.stop(clearQueue,gotoEnd);}}});if(transforms&&!transitions){each(transform2d,function(idx,value){$.fn[value]=function(val){if(typeof val=="undefined"){return animationProperty(this,value);}else{var that=$(this)[0],transformValue=value+"("+val+transform2units[value.replace(unitRegExp,"")]+")";if(that.style.cssText.indexOf(TRANSFORM)==-1){$(this).css(TRANSFORM,transformValue);}else{that.style.cssText=that.style.cssText.replace(new RegExp(value+"\\(.*?\\)","i"),transformValue);}}return this;};$.fx.step[value]=function(fx){$(fx.elem)[value](fx.now);};});var curProxy=$.fx.prototype.cur;$.fx.prototype.cur=function(){if(transform2d.indexOf(this.prop)!=-1){return parseFloat($(this.elem)[this.prop]());}return curProxy.apply(this,arguments);};}kendo.toggleClass=function(element,classes,options,add){if(classes){classes=classes.split(" ");if(transitions){options=extend({exclusive:"all",duration:400,ease:"ease-out"},options);element.css(TRANSITION,options.exclusive+" "+options.duration+"ms "+options.ease);setTimeout(function(){element.css(TRANSITION,"").css(HEIGHT);},options.duration);}each(classes,function(idx,value){element.toggleClass(value,add);});}return element;};kendo.parseEffects=function(input,mirror){var effects={};if(typeof input==="string"){each(input.split(" "),function(idx,value){var redirectedEffect=!singleEffectRegExp.test(value),resolved=value.replace(oldEffectsRegExp,function(match,$1,$2){return $1+":"+$2.toLowerCase();}),effect=resolved.split(":"),direction=effect[1],effectBody={};if(effect.length>1){effectBody.direction=(mirror&&redirectedEffect?directions[direction].reverse:direction);}effects[effect[0]]=effectBody;});}else{each(input,function(idx){var direction=this.direction;if(direction&&mirror&&!singleEffectRegExp.test(idx)){this.direction=directions[direction].reverse;}effects[idx]=this;});}return effects;};function parseInteger(value){return parseInt(value,10);}function parseCSS(element,property){return parseInteger(element.css(property));}function parseTransitionEffects(options){var effects=options.effects;if(effects==="zoom"){effects="zoom:in fade:in";}if(effects==="fade"){effects="fade:in";}if(effects==="slide"){effects="tile:left";}if(/^slide:(.+)$/.test(effects)){effects="tile:"+RegExp.$1;}if(effects==="overlay"){effects="slideIn:left";}if(/^overlay:(.+)$/.test(effects)){effects="slideIn:"+RegExp.$1;}options.effects=kendo.parseEffects(effects);return options;}function keys(obj){var acc=[];for(var propertyName in obj){acc.push(propertyName);}return acc;}function strip3DTransforms(properties){for(var key in properties){if(transformProps.indexOf(key)!=-1&&transform2d.indexOf(key)==-1){delete properties[key];}}return properties;}function normalizeCSS(element,properties){var transformation=[],cssValues={},lowerKey,key,value,isTransformed;for(key in properties){lowerKey=key.toLowerCase();isTransformed=transforms&&transformProps.indexOf(lowerKey)!=-1;if(!support.hasHW3D&&isTransformed&&transform2d.indexOf(lowerKey)==-1){delete properties[key];}else{value=properties[key];if(isTransformed){transformation.push(key+"("+value+")");}else{cssValues[key]=value;}}}if(transformation.length){cssValues[TRANSFORM]=transformation.join(" ");}return cssValues;}if(transitions){extend(kendo.fx,{transition:function(element,properties,options){var css,delay=0,oldKeys=element.data("keys")||[],timeoutID;options=extend({duration:200,ease:"ease-out",complete:null,exclusive:"all"},options);var stopTransition=function(){if(timeoutID){clearTimeout(timeoutID);timeoutID=null;element.removeData(ABORT_ID).dequeue().css(TRANSITION,"").css(TRANSITION);options.complete.call(element);}};options.duration=$.fx?$.fx.speeds[options.duration]||options.duration:options.duration;css=normalizeCSS(element,properties);$.merge(oldKeys,keys(css));element.data("keys",$.unique(oldKeys)).height();element.css(TRANSITION,options.exclusive+" "+options.duration+"ms "+options.ease).css(TRANSITION);element.css(css).css(TRANSFORM);if(browser.mozilla){element.one(transitions.event,stopTransition);delay=50;}timeoutID=setTimeout(stopTransition,options.duration+delay);element.data(ABORT_ID,timeoutID);},stopQueue:function(element,clearQueue,gotoEnd){if(element.data(ABORT_ID)){clearTimeout(element.data(ABORT_ID));element.removeData(ABORT_ID);}var that=this,cssValues,taskKeys=element.data("keys"),retainPosition=(gotoEnd===false&&taskKeys);if(retainPosition){cssValues=kendo.getComputedStyles(element[0],taskKeys);}element.css(TRANSITION,"").css(TRANSITION);if(retainPosition){element.css(cssValues);}element.removeData("keys");if(that.complete){that.complete.call(element);}element.stop(clearQueue);return element;}});}function animationProperty(element,property){if(transforms){var transform=element.css(TRANSFORM);if(transform==NONE){return property=="scale"?1:0;}var match=transform.match(new RegExp(property+"\\s*\\(([\\d\\w\\.]+)")),computed=0;if(match){computed=parseInteger(match[1]);}else{match=transform.match(matrix3dRegExp)||[0,0,0,0,0];property=property.toLowerCase();if(translateXRegExp.test(property)){computed=parseFloat(match[3]/match[2]);}else if(property=="translatey"){computed=parseFloat(match[4]/match[2]);}else if(property=="scale"){computed=parseFloat(match[2]);}else if(property=="rotate"){computed=parseFloat(Math.atan2(match[2],match[1]));}}return computed;}else{return parseFloat(element.css(property));}}var EffectSet=kendo.Class.extend({init:function(element,options){var that=this;that.element=element;that.effects=[];that.options=options;that.restore=[];},run:function(effects){var that=this,effect,idx,jdx,length=effects.length,element=that.element,options=that.options,deferred=$.Deferred(),start={},end={},target,children,childrenLength;that.effects=effects;deferred.then($.proxy(that,"complete"));element.data("animating",true);for(idx=0;idx<length;idx++){effect=effects[idx];effect.setReverse(options.reverse);effect.setOptions(options);that.addRestoreProperties(effect.restore);effect.prepare(start,end);children=effect.children();for(jdx=0,childrenLength=children.length;jdx<childrenLength;jdx++){children[jdx].duration(options.duration).run();}}for(var effectName in options.effects){extend(end,options.effects[effectName].properties);}if(!element.is(":visible")){extend(start,{display:element.data("olddisplay")||"block"});}if(transforms&&!options.reset){target=element.data("targetTransform");if(target){start=extend(target,start);}}start=normalizeCSS(element,start);if(transforms&&!transitions){start=strip3DTransforms(start);}element.css(start).css(TRANSFORM);for(idx=0;idx<length;idx++){effects[idx].setup();}if(options.init){options.init();}element.data("targetTransform",end);kendo.fx.animate(element,end,extend({},options,{complete:deferred.resolve}));return deferred.promise();},stop:function(){$(this.element).kendoStop();},addRestoreProperties:function(restore){var element=this.element,value,i=0,length=restore.length;for(;i<length;i++){value=restore[i];this.restore.push(value);if(!element.data(value)){element.data(value,element.css(value));}}},restoreCallback:function(){var element=this.element;for(var i=0,length=this.restore.length;i<length;i++){var value=this.restore[i];element.css(value,element.data(value));}},complete:function(){var that=this,idx=0,element=that.element,options=that.options,effects=that.effects,length=effects.length;element.removeData("animating").dequeue();if(options.hide){element.data("olddisplay",element.css("display")).hide();}this.restoreCallback();if(hasZoom&&!transforms){setTimeout($.proxy(this,"restoreCallback"),0);}for(;idx<length;idx++){effects[idx].teardown();}if(options.completeCallback){options.completeCallback(element);}}});kendo.fx.promise=function(element,options){var effects=[],effectClass,effectSet=new EffectSet(element,options),parsedEffects=kendo.parseEffects(options.effects),effect;options.effects=parsedEffects;for(var effectName in parsedEffects){effectClass=Effects[effectName];if(effectClass){effect=new effectClass(element,parsedEffects[effectName].direction);effects.push(effect);}}if(effects[0]){effectSet.run(effects);}else{if(!element.is(":visible")){element.css({display:element.data("olddisplay")||"block"}).css("display");}if(options.init){options.init();}element.dequeue();effectSet.complete();}};kendo.fx.transitionPromise=function(element,destination,options){kendo.fx.animateTo(element,destination,options);return element;};extend(kendo.fx,{animate:function(elements,properties,options){var useTransition=options.transition!==false;delete options.transition;if(transitions&&"transition"in fx&&useTransition){fx.transition(elements,properties,options);}else{if(transforms){elements.animate(strip3DTransforms(properties),{queue:false,show:false,hide:false,duration:options.duration,complete:options.complete});}else{elements.each(function(){var element=$(this),multiple={};each(transformProps,function(idx,value){var params,currentValue=properties?properties[value]+" ":null;if(currentValue){var single=properties;if(value in scaleProperties&&properties[value]!==undefined){params=currentValue.match(cssParamsRegExp);if(transforms){extend(single,{scale:+params[0]});}}else{if(value in translateProperties&&properties[value]!==undefined){var position=element.css("position"),isFixed=(position=="absolute"||position=="fixed");if(!element.data(TRANSLATE)){if(isFixed){element.data(TRANSLATE,{top:parseCSS(element,"top")||0,left:parseCSS(element,"left")||0,bottom:parseCSS(element,"bottom"),right:parseCSS(element,"right")});}else{element.data(TRANSLATE,{top:parseCSS(element,"marginTop")||0,left:parseCSS(element,"marginLeft")||0});}}var originalPosition=element.data(TRANSLATE);params=currentValue.match(cssParamsRegExp);if(params){var dX=value==TRANSLATE+"y"?+null:+params[1],dY=value==TRANSLATE+"y"?+params[1]:+params[2];if(isFixed){if(!isNaN(originalPosition.right)){if(!isNaN(dX)){extend(single,{right:originalPosition.right-dX});}}else{if(!isNaN(dX)){extend(single,{left:originalPosition.left+dX});}}if(!isNaN(originalPosition.bottom)){if(!isNaN(dY)){extend(single,{bottom:originalPosition.bottom-dY});}}else{if(!isNaN(dY)){extend(single,{top:originalPosition.top+dY});}}}else{if(!isNaN(dX)){extend(single,{marginLeft:originalPosition.left+dX});}if(!isNaN(dY)){extend(single,{marginTop:originalPosition.top+dY});}}}}}if(!transforms&&value!="scale"&&value in single){delete single[value];}if(single){extend(multiple,single);}}});if(browser.msie){delete multiple.scale;}element.animate(multiple,{queue:false,show:false,hide:false,duration:options.duration,complete:options.complete});});}}},animateTo:function(element,destination,options){var direction,commonParent=element.parents().filter(destination.parents()).first(),originalOverflow;options=parseTransitionEffects(options);if(!support.mobileOS.android){originalOverflow=commonParent.css(OVERFLOW);commonParent.css(OVERFLOW,"hidden");}$.each(options.effects,function(name,definition){direction=direction||definition.direction;});function complete(animatedElement){destination[0].style.cssText="";element[0].style.cssText="";if(!support.mobileOS.android){commonParent.css(OVERFLOW,originalOverflow);}if(options.completeCallback){options.completeCallback.call(element,animatedElement);}}options.complete=browser.msie?function(){setTimeout(complete,0);}:complete;options.previous=(options.reverse?destination:element);options.reset=true;(options.reverse?element:destination).each(function(){$(this).kendoAnimate(extend(true,{},options));options.complete=null;options.previous=null;});}});var Effect=kendo.Class.extend({init:function(element,direction){var that=this;that.element=element;that._direction=direction;that.options={};that._additionalEffects=[];if(!that.restore){that.restore=[];}},reverse:function(){this._reverse=true;return this.run();},play:function(){this._reverse=false;return this.run();},add:function(additional){this._additionalEffects.push(additional);return this;},direction:function(value){this._direction=value;return this;},duration:function(duration){this._duration=duration;return this;},compositeRun:function(){var that=this,effectSet=new EffectSet(that.element,{reverse:that._reverse,duration:that._duration}),effects=that._additionalEffects.concat([that]);return effectSet.run(effects);},run:function(){if(this._additionalEffects&&this._additionalEffects[0]){return this.compositeRun();}var that=this,element=that.element,idx=0,restore=that.restore,length=restore.length,value,deferred=$.Deferred(),start={},end={},target,children=that.children(),childrenLength=children.length;deferred.then($.proxy(that,"_complete"));element.data("animating",true);for(idx=0;idx<length;idx++){value=restore[idx];if(!element.data(value)){element.data(value,element.css(value));}}for(idx=0;idx<childrenLength;idx++){children[idx].duration(that._duration).run();}that.prepare(start,end);if(!element.is(":visible")){extend(start,{display:element.data("olddisplay")||"block"});}if(transforms){target=element.data("targetTransform");if(target){start=extend(target,start);}}start=normalizeCSS(element,start);if(transforms&&!transitions){start=strip3DTransforms(start);}element.css(start).css(TRANSFORM);that.setup();element.data("targetTransform",end);kendo.fx.animate(element,end,{duration:that._duration,complete:deferred.resolve});return deferred.promise();},stop:function(){var idx=0,children=this.children(),childrenLength=children.length;for(idx=0;idx<childrenLength;idx++){children[idx].stop();}$(this.element).kendoStop();return this;},restoreCallback:function(){var element=this.element;for(var i=0,length=this.restore.length;i<length;i++){var value=this.restore[i];element.css(value,element.data(value));}},_complete:function(){var that=this,element=that.element;element.removeData("animating").dequeue();that.restoreCallback();if(that.shouldHide()){element.data("olddisplay",element.css("display")).hide();}if(hasZoom&&!transforms){setTimeout($.proxy(that,"restoreCallback"),0);}that.teardown();},setOptions:function(options){extend(true,this.options,options);},children:function(){return[];},shouldHide:$.noop,setup:$.noop,prepare:$.noop,teardown:$.noop,directions:[],setReverse:function(reverse){this._reverse=reverse;return this;}});function toUpperCase(letter){return letter.toUpperCase();}function capitalize(word){return word.replace(/^./,toUpperCase);}function createEffect(name,definition){var effectClass=Effect.extend(definition),directions=effectClass.prototype.directions;Effects[name]=effectClass;fx.Element.prototype[name]=function(direction,opt1,opt2,opt3){return new effectClass(this.element,direction,opt1,opt2,opt3);};each(directions,function(idx,theDirection){fx.Element.prototype[name+capitalize(theDirection)]=function(opt1,opt2,opt3){return new effectClass(this.element,theDirection,opt1,opt2,opt3);};});}var FOUR_DIRECTIONS=["left","right","up","down"],IN_OUT=["in","out"];createEffect("slideIn",{directions:FOUR_DIRECTIONS,prepare:function(start,end){var that=this,tmp,element=that.element,direction=directions[that._direction],offset=-direction.modifier*(direction.vertical?element.outerHeight():element.outerWidth()),startValue=offset/(that.options&&that.options.divisor||1)+PX,endValue="0px";if(that._reverse){tmp=start;start=end;end=tmp;}if(transforms){start[direction.transition]=startValue;end[direction.transition]=endValue;}else{start[direction.property]=startValue;end[direction.property]=endValue;}}});createEffect("tile",{directions:FOUR_DIRECTIONS,init:function(element,direction,previous){Effect.prototype.init.call(this,element,direction);this.options={previous:previous};},children:function(){var that=this,reverse=that._reverse,previous=that.options.previous,dir=that._direction;var children=[fx(that.element).slideIn(dir).setReverse(reverse)];if(previous){children.push(fx(previous).slideIn(directions[dir].reverse).setReverse(!reverse));}return children;}});function createToggleEffect(name,property,endValue){createEffect(name,{directions:IN_OUT,restore:[property],startValue:function(value){this._startValue=value;return this;},endValue:function(value){this._endValue=value;return this;},shouldHide:function(){return(this._direction==="out"&&this._end()===endValue)?!this._reverse:this._reverse;},_end:function(){return this._endValue||endValue;},_start:function(){return this._startValue||1;},prepare:function(start,end){var that=this,opacity=that.element.data(property),out=that.shouldHide(),value=isNaN(opacity)?that._start():opacity;start[property]=end[property]=that._end();if(out){start[property]=value;}else{end[property]=value;}}});}createToggleEffect("fade","opacity",0);createToggleEffect("zoom","scale",0.01);createEffect("slideMargin",{prepare:function(start,end){var that=this,element=that.element,options=that.options,origin=element.data(ORIGIN),offset=options.offset,margin,reverse=that._reverse;if(!reverse&&origin===null){element.data(ORIGIN,parseFloat(element.css("margin-"+options.axis)));}margin=(element.data(ORIGIN)||0);end["margin-"+options.axis]=!reverse?margin+offset:margin;}});createEffect("slideTo",{prepare:function(start,end){var that=this,element=that.element,options=that.options,offset=options.offset.split(","),reverse=that._reverse;if(transforms){end.translatex=!reverse?offset[0]:0;end.translatey=!reverse?offset[1]:0;}else{end.left=!reverse?offset[0]:0;end.top=!reverse?offset[1]:0;}element.css("left");}});createEffect("expand",{directions:["horizontal","vertical"],restore:[OVERFLOW],prepare:function(start,end){var that=this,element=that.element,options=that.options,reverse=that._reverse,property=that._direction==="vertical"?HEIGHT:WIDTH,setLength=element[0].style[property],oldLength=element.data(property),length=parseFloat(oldLength||setLength),realLength=round(element.css(property,AUTO)[property]());start.overflow=HIDDEN;length=(options&&options.reset)?realLength||length:length||realLength;end[property]=(reverse?0:length)+PX;start[property]=(reverse?length:0)+PX;if(oldLength===undefined){element.data(property,setLength);}},shouldHide:function(){return this._reverse;},teardown:function(){var that=this,element=that.element,property=that._direction==="vertical"?HEIGHT:WIDTH,length=element.data(property);if(length==AUTO||length===BLANK){setTimeout(function(){element.css(property,AUTO).css(property);},0);}}});var TRANSFER_START_STATE={position:"absolute",marginLeft:0,marginTop:0,scale:1};createEffect("transfer",{init:function(element,target){this.element=element;this.options={target:target};this.restore=[];},setup:function(){this.element.appendTo(document.body);},prepare:function(start,end){var that=this,element=that.element,options=that.options,reverse=that._reverse,target=options.target,offset,currentScale=animationProperty(element,"scale"),targetOffset=target.offset(),scale=target.outerHeight()/element.outerHeight();extend(start,TRANSFER_START_STATE);end.scale=1;element.css(TRANSFORM,"scale(1)").css(TRANSFORM);offset=element.offset();element.css(TRANSFORM,"scale("+currentScale+")");var x1=0,y1=0,x2=targetOffset.left-offset.left,y2=targetOffset.top-offset.top,x3=x1+element.outerWidth(),y3=y1,x4=x2+target.outerWidth(),y4=y2,Z1=(y2-y1)/(x2-x1),Z2=(y4-y3)/(x4-x3),X=(y1-y3-Z1*x1+Z2*x3)/(Z2-Z1),Y=y1+Z1*(X-x1);start.top=offset.top;start.left=offset.left;start.transformOrigin=X+PX+" "+Y+PX;if(reverse){start.scale=scale;}else{end.scale=scale;}}});var CLIPS={top:"rect(auto auto $size auto)",bottom:"rect($size auto auto auto)",left:"rect(auto $size auto auto)",right:"rect(auto auto auto $size)"};var ROTATIONS={top:{start:"rotatex(0deg)",end:"rotatex(180deg)"},bottom:{start:"rotatex(-180deg)",end:"rotatex(0deg)"},left:{start:"rotatey(0deg)",end:"rotatey(-180deg)"},right:{start:"rotatey(180deg)",end:"rotatey(0deg)"}};function clipInHalf(container,direction){var vertical=kendo.directions[direction].vertical,size=(container[vertical?HEIGHT:WIDTH]()/2)+"px";return CLIPS[direction].replace("$size",size);}createEffect("turningPage",{directions:FOUR_DIRECTIONS,init:function(element,direction,container){Effect.prototype.init.call(this,element,direction);this._container=container;},prepare:function(start,end){var that=this,reverse=that._reverse,direction=reverse?directions[that._direction].reverse:that._direction,rotation=ROTATIONS[direction];start.zIndex=1;if(that._clipInHalf){start.clip=clipInHalf(that._container,kendo.directions[direction].reverse);}start[BACKFACE]=HIDDEN;end[TRANSFORM]=reverse?rotation.start:rotation.end;start[TRANSFORM]=reverse?rotation.end:rotation.start;},setup:function(){this._container.append(this.element);},face:function(value){this._face=value;return this;},shouldHide:function(){var that=this,reverse=that._reverse,face=that._face;return(reverse&&!face)||(!reverse&&face);},clipInHalf:function(value){this._clipInHalf=value;return this;},temporary:function(value){this._temporary=value;return this;},teardown:function(){if(this._temporary){this.element.remove();}}});createEffect("staticPage",{directions:FOUR_DIRECTIONS,init:function(element,direction,container){Effect.prototype.init.call(this,element,direction);this._container=container;},restore:["clip"],prepare:function(start,end){var that=this,direction=that._reverse?directions[that._direction].reverse:that._direction;start.clip=clipInHalf(that._container,direction);},shouldHide:function(){var that=this,reverse=that._reverse,face=that._face;return(reverse&&!face)||(!reverse&&face);},face:function(value){this._face=value;return this;}});createEffect("pageturn",{directions:["horizontal","vertical"],init:function(element,direction,face,back){Effect.prototype.init.call(this,element,direction);this.options={};this.options.face=face;this.options.back=back;},children:function(){var that=this,options=that.options,direction=that._direction==="horizontal"?"left":"top",reverseDirection=kendo.directions[direction].reverse,reverse=that._reverse,temp,faceClone=options.face.clone(true).removeAttr("id"),backClone=options.back.clone(true).removeAttr("id"),element=that.element;if(reverse){temp=direction;direction=reverseDirection;reverseDirection=temp;}return[fx(options.face).staticPage(direction,element).face(true).setReverse(reverse),fx(options.back).staticPage(reverseDirection,element).setReverse(reverse),fx(faceClone).turningPage(direction,element).face(true).clipInHalf(true).temporary(true).setReverse(reverse),fx(backClone).turningPage(reverseDirection,element).clipInHalf(true).temporary(true).setReverse(reverse)];},prepare:function(start,end){start[PERSPECTIVE]=1000;start.transformStyle="preserve-3d";},teardown:function(){this.element.find(".temp-pages").remove();}});createEffect("flip",{directions:["horizontal","vertical"],init:function(element,direction,face,back){Effect.prototype.init.call(this,element,direction);this.options={};this.options.face=face;this.options.back=back;},children:function(){var that=this,options=that.options,direction=that._direction==="horizontal"?"left":"top",reverseDirection=kendo.directions[direction].reverse,reverse=that._reverse,temp,element=that.element;if(reverse){temp=direction;direction=reverseDirection;reverseDirection=temp;}return[fx(options.face).turningPage(direction,element).face(true).setReverse(reverse),fx(options.back).turningPage(reverseDirection,element).setReverse(reverse)];},prepare:function(start,end){start[PERSPECTIVE]=1000;start.transformStyle="preserve-3d";}});var animationFrame=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(callback){setTimeout(callback,1000/60);};var Animation=kendo.Class.extend({init:function(){var that=this;that._tickProxy=proxy(that._tick,that);that._started=false;},tick:$.noop,done:$.noop,onEnd:$.noop,onCancel:$.noop,start:function(){if(!this.done()){this._started=true;animationFrame(this._tickProxy);}},cancel:function(){this._started=false;this.onCancel();},_tick:function(){var that=this;if(!that._started){return;}that.tick();if(!that.done()){animationFrame(that._tickProxy);}else{that._started=false;that.onEnd();}}});var Transition=Animation.extend({init:function(options){var that=this;extend(that,options);Animation.fn.init.call(that);},done:function(){return this.timePassed()>=this.duration;},timePassed:function(){return Math.min(this.duration,(+new Date())-this.startDate);},moveTo:function(options){var that=this,movable=that.movable;that.initial=movable[that.axis];that.delta=options.location-that.initial;that.duration=options.duration||300;that.tick=that._easeProxy(options.ease);that.startDate=+new Date();that.start();},_easeProxy:function(ease){var that=this;return function(){that.movable.moveAxis(that.axis,ease(that.timePassed(),that.initial,that.delta,that.duration));};}});extend(Transition,{easeOutExpo:function(t,b,c,d){return(t==d)?b+c:c*(-Math.pow(2,-10*t/d)+1)+b;},easeOutBack:function(t,b,c,d,s){s=1.70158;return c*((t=t/d-1)*t*((s+1)*t+s)+1)+b;}});fx.Animation=Animation;fx.Transition=Transition;fx.createEffect=createEffect;fx.Effects=Effects;})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,extend=$.extend,odataFilters={eq:"eq",neq:"ne",gt:"gt",gte:"ge",lt:"lt",lte:"le",contains:"substringof",endswith:"endswith",startswith:"startswith"},mappers={pageSize:$.noop,page:$.noop,filter:function(params,filter){if(filter){params.$filter=toOdataFilter(filter);}},sort:function(params,orderby){var expr=$.map(orderby,function(value){var order=value.field.replace(/\./g,"/");if(value.dir==="desc"){order+=" desc";}return order;}).join(",");if(expr){params.$orderby=expr;}},skip:function(params,skip){if(skip){params.$skip=skip;}},take:function(params,take){if(take){params.$top=take;}}},defaultDataType={read:{dataType:"jsonp"}};function toOdataFilter(filter){var result=[],logic=filter.logic||"and",idx,length,field,type,format,operator,value,ignoreCase,filters=filter.filters;for(idx=0,length=filters.length;idx<length;idx++){filter=filters[idx];field=filter.field;value=filter.value;operator=filter.operator;if(filter.filters){filter=toOdataFilter(filter);}else{ignoreCase=filter.ignoreCase;field=field.replace(/\./g,"/");filter=odataFilters[operator];if(filter&&value!==undefined){type=$.type(value);if(type==="string"){format="'{1}'";value=value.replace(/'/g,"''");if(ignoreCase===true){field="tolower("+field+")";}}else if(type==="date"){format="datetime'{1:yyyy-MM-ddTHH:mm:ss}'";}else{format="{1}";}if(filter.length>3){if(filter!=="substringof"){format="{0}({2},"+format+")";}else{format="{0}("+format+",{2})";}}else{format="{2} {0} "+format;}filter=kendo.format(format,filter,value,field);}}result.push(filter);}filter=result.join(" "+logic+" ");if(result.length>1){filter="("+filter+")";}return filter;}extend(true,kendo.data,{schemas:{odata:{type:"json",data:function(data){return data.d.results||[data.d];},total:"d.__count"}},transports:{odata:{read:{cache:true,dataType:"jsonp",jsonp:"$callback"},update:{cache:true,dataType:"json",contentType:"application/json",type:"PUT"},create:{cache:true,dataType:"json",contentType:"application/json",type:"POST"},destroy:{cache:true,dataType:"json",type:"DELETE"},parameterMap:function(options,type){var params,value,option,dataType;options=options||{};type=type||"read";dataType=(this.options||defaultDataType)[type];dataType=dataType?dataType.dataType:"json";if(type==="read"){params={$inlinecount:"allpages"};if(dataType!="json"){params.$format="json";}for(option in options){if(mappers[option]){mappers[option](params,options[option]);}else{params[option]=options[option];}}}else{if(dataType!=="json"){throw new Error("Only json dataType can be used for "+type+" operation.");}if(type!=="destroy"){for(option in options){value=options[option];if(typeof value==="number"){options[option]=value+"";}}params=kendo.stringify(options);}}return params;}}}});})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,isArray=$.isArray,isPlainObject=$.isPlainObject,map=$.map,each=$.each,extend=$.extend,getter=kendo.getter,Class=kendo.Class;var XmlDataReader=Class.extend({init:function(options){var that=this,total=options.total,model=options.model,data=options.data;if(model){if(isPlainObject(model)){if(model.fields){each(model.fields,function(field,value){if(isPlainObject(value)&&value.field){value=extend(value,{field:that.getter(value.field)});}else{value={field:that.getter(value)};}model.fields[field]=value;});}var id=model.id;if(id){var idField={};idField[that.xpathToMember(id,true)]={field:that.getter(id)};model.fields=extend(idField,model.fields);model.id=that.xpathToMember(id);}model=kendo.data.Model.define(model);}that.model=model;}if(total){total=that.getter(total);that.total=function(data){return parseInt(total(data),10);};}if(data){data=that.xpathToMember(data);that.data=function(value){var result=that.evaluate(value,data),modelInstance;result=isArray(result)?result:[result];if(that.model&&model.fields){modelInstance=new that.model();return map(result,function(value){if(value){var record={},field;for(field in model.fields){record[field]=modelInstance._parse(field,model.fields[field].field(value));}return record;}});}return result;};}},total:function(result){return this.data(result).length;},errors:function(data){return data?data.errors:null;},parseDOM:function(element){var result={},parsedNode,node,nodeType,nodeName,member,attribute,attributes=element.attributes,attributeCount=attributes.length,idx;for(idx=0;idx<attributeCount;idx++){attribute=attributes[idx];result["@"+attribute.nodeName]=attribute.nodeValue;}for(node=element.firstChild;node;node=node.nextSibling){nodeType=node.nodeType;if(nodeType===3||nodeType===4){result["#text"]=node.nodeValue;}else if(nodeType===1){parsedNode=this.parseDOM(node);nodeName=node.nodeName;member=result[nodeName];if(isArray(member)){member.push(parsedNode);}else if(member!==undefined){member=[member,parsedNode];}else{member=parsedNode;}result[nodeName]=member;}}return result;},evaluate:function(value,expression){var members=expression.split("."),member,result,length,intermediateResult,idx;while(member=members.shift()){value=value[member];if(isArray(value)){result=[];expression=members.join(".");for(idx=0,length=value.length;idx<length;idx++){intermediateResult=this.evaluate(value[idx],expression);intermediateResult=isArray(intermediateResult)?intermediateResult:[intermediateResult];result.push.apply(result,intermediateResult);}return result;}}return value;},parse:function(xml){var documentElement,tree,result={};documentElement=xml.documentElement||$.parseXML(xml).documentElement;tree=this.parseDOM(documentElement);result[documentElement.nodeName]=tree;return result;},xpathToMember:function(member,raw){if(!member){return"";}member=member.replace(/^\//,"").replace(/\//g,".");if(member.indexOf("@")>=0){return member.replace(/\.?(@.*)/,raw?'$1':'["$1"]');}if(member.indexOf("text()")>=0){return member.replace(/(\.?text\(\))/,raw?'#text':'["#text"]');}return member;},getter:function(member){return getter(this.xpathToMember(member),true);}});$.extend(true,kendo.data,{XmlDataReader:XmlDataReader,readers:{xml:XmlDataReader}});})(window.kendo.jQuery);(function($,undefined){var extend=$.extend,proxy=$.proxy,isFunction=$.isFunction,isPlainObject=$.isPlainObject,isEmptyObject=$.isEmptyObject,isArray=$.isArray,grep=$.grep,ajax=$.ajax,map,each=$.each,noop=$.noop,kendo=window.kendo,Observable=kendo.Observable,Class=kendo.Class,STRING="string",FUNCTION="function",CREATE="create",READ="read",UPDATE="update",DESTROY="destroy",CHANGE="change",SYNC="sync",GET="get",ERROR="error",REQUESTSTART="requestStart",REQUESTEND="requestEnd",crud=[CREATE,READ,UPDATE,DESTROY],identity=function(o){return o;},getter=kendo.getter,stringify=kendo.stringify,math=Math,push=[].push,join=[].join,pop=[].pop,splice=[].splice,shift=[].shift,slice=[].slice,unshift=[].unshift,toString={}.toString,stableSort=kendo.support.stableSort,dateRegExp=/^\/Date\((.*?)\)\/$/,quoteRegExp=/(?=['\\])/g;var ObservableArray=Observable.extend({init:function(array,type){var that=this;that.type=type||ObservableObject;Observable.fn.init.call(that);that.length=array.length;that.wrapAll(array,that);},toJSON:function(){var idx,length=this.length,value,json=new Array(length);for(idx=0;idx<length;idx++){value=this[idx];if(value instanceof ObservableObject){value=value.toJSON();}json[idx]=value;}return json;},parent:noop,wrapAll:function(source,target){var that=this,idx,length,parent=function(){return that;};target=target||[];for(idx=0,length=source.length;idx<length;idx++){target[idx]=that.wrap(source[idx],parent);}return target;},wrap:function(object,parent){var that=this,observable;if(object!==null&&toString.call(object)==="[object Object]"){observable=object instanceof that.type||object instanceof Model;if(!observable){object=object instanceof ObservableObject?object.toJSON():object;object=new that.type(object);}object.parent=parent;object.bind(CHANGE,function(e){that.trigger(CHANGE,{field:e.field,node:e.node,index:e.index,items:e.items||[this],action:e.node?(e.action||"itemchange"):"itemchange"});});}return object;},push:function(){var index=this.length,items=this.wrapAll(arguments),result;result=push.apply(this,items);this.trigger(CHANGE,{action:"add",index:index,items:items});return result;},slice:slice,join:join,pop:function(){var length=this.length,result=pop.apply(this);if(length){this.trigger(CHANGE,{action:"remove",index:length-1,items:[result]});}return result;},splice:function(index,howMany,item){var items=this.wrapAll(slice.call(arguments,2)),result,i,len;result=splice.apply(this,[index,howMany].concat(items));if(result.length){this.trigger(CHANGE,{action:"remove",index:index,items:result});for(i=0,len=result.length;i<len;i++){if(result[i].children){result[i].unbind(CHANGE);}}}if(item){this.trigger(CHANGE,{action:"add",index:index,items:items});}return result;},shift:function(){var length=this.length,result=shift.apply(this);if(length){this.trigger(CHANGE,{action:"remove",index:0,items:[result]});}return result;},unshift:function(){var items=this.wrapAll(arguments),result;result=unshift.apply(this,items);this.trigger(CHANGE,{action:"add",index:0,items:items});return result;},indexOf:function(item){var that=this,idx,length;for(idx=0,length=that.length;idx<length;idx++){if(that[idx]===item){return idx;}}return-1;}});var ObservableObject=Observable.extend({init:function(value){var that=this,member,field,parent=function(){return that;},type;Observable.fn.init.call(this);for(field in value){member=value[field];if(field.charAt(0)!="_"){type=toString.call(member);member=that.wrap(member,field,parent);}that[field]=member;}that.uid=kendo.guid();},shouldSerialize:function(field){return this.hasOwnProperty(field)&&field!=="_events"&&typeof this[field]!==FUNCTION&&field!=="uid";},toJSON:function(){var result={},value,field;for(field in this){if(this.shouldSerialize(field)){value=this[field];if(value instanceof ObservableObject||value instanceof ObservableArray){value=value.toJSON();}result[field]=value;}}return result;},get:function(field){var that=this,result;that.trigger(GET,{field:field});if(field==="this"){result=that;}else{result=kendo.getter(field,true)(that);}return result;},_set:function(field,value){var that=this;if(field.indexOf(".")){var paths=field.split("."),path="";while(paths.length>1){path+=paths.shift();var obj=kendo.getter(path,true)(that);if(obj instanceof ObservableObject){obj.set(paths.join("."),value);return;}path+=".";}}kendo.setter(field)(that,value);},set:function(field,value){var that=this,current=kendo.getter(field,true)(that),parent=function(){return that;};if(current!==value){if(!that.trigger("set",{field:field,value:value})){that._set(field,that.wrap(value,field,parent));that.trigger(CHANGE,{field:field});}}},parent:noop,wrap:function(object,field,parent){var that=this,type=toString.call(object),isObservableArray=object instanceof ObservableArray;if(object!==null&&object!==undefined&&type==="[object Object]"&&!(object instanceof DataSource)&&!isObservableArray){if(!(object instanceof ObservableObject)){object=new ObservableObject(object);}object.parent=parent;(function(field){object.bind(GET,function(e){e.field=field+"."+e.field;that.trigger(GET,e);});object.bind(CHANGE,function(e){e.field=field+"."+e.field;that.trigger(CHANGE,e);});})(field);}else if(object!==null&&(type==="[object Array]"||isObservableArray)){if(!isObservableArray){object=new ObservableArray(object);}object.parent=parent;(function(field){object.bind(CHANGE,function(e){that.trigger(CHANGE,{field:field,index:e.index,items:e.items,action:e.action});});})(field);}else if(object!==null&&object instanceof DataSource){object._parent=parent;}return object;}});function equal(x,y){if(x===y){return true;}var xtype=$.type(x),ytype=$.type(y),field;if(xtype!==ytype){return false;}if(xtype==="date"){return x.getTime()===y.getTime();}if(xtype!=="object"&&xtype!=="array"){return false;}for(field in x){if(!equal(x[field],y[field])){return false;}}return true;}var parsers={"number":function(value){return kendo.parseFloat(value);},"date":function(value){return kendo.parseDate(value);},"boolean":function(value){if(typeof value===STRING){return value.toLowerCase()==="true";}return value!=null?!!value:value;},"string":function(value){return value!=null?(value+""):value;},"default":function(value){return value;}};var defaultValues={"string":"","number":0,"date":new Date(),"boolean":false,"default":""};function getFieldByName(obj,name){var field,fieldName;for(fieldName in obj){field=obj[fieldName];if(isPlainObject(field)&&field.field&&field.field===name){return field;}else if(field===name){return field;}}return null;}var Model=ObservableObject.extend({init:function(data){var that=this;if(!data||$.isEmptyObject(data)){data=$.extend({},that.defaults,data);}ObservableObject.fn.init.call(that,data);that.dirty=false;if(that.idField){that.id=that.get(that.idField);if(that.id===undefined){that.id=that._defaultId;}}},shouldSerialize:function(field){return ObservableObject.fn.shouldSerialize.call(this,field)&&field!=="uid"&&!(this.idField!=="id"&&field==="id")&&field!=="dirty"&&field!=="_accessors";},_parse:function(field,value){var that=this,fieldName=field,fields=(that.fields||{}),parse;field=fields[field];if(!field){field=getFieldByName(fields,fieldName);}if(field){parse=field.parse;if(!parse&&field.type){parse=parsers[field.type.toLowerCase()];}}return parse?parse(value):value;},editable:function(field){field=(this.fields||{})[field];return field?field.editable!==false:true;},set:function(field,value,initiator){var that=this;if(that.editable(field)){value=that._parse(field,value);if(!equal(value,that.get(field))){that.dirty=true;ObservableObject.fn.set.call(that,field,value,initiator);}}},accept:function(data){var that=this,parent=function(){return that;},field;for(field in data){that._set(field,that.wrap(data[field],field,parent));}if(that.idField){that.id=that.get(that.idField);}that.dirty=false;},isNew:function(){return this.id===this._defaultId;}});Model.define=function(base,options){if(options===undefined){options=base;base=Model;}var model,proto=extend({defaults:{}},options),name,field,type,value,id=proto.id;if(id){proto.idField=id;}if(proto.id){delete proto.id;}if(id){proto.defaults[id]=proto._defaultId="";}for(name in proto.fields){field=proto.fields[name];type=field.type||"default";value=null;name=typeof(field.field)===STRING?field.field:name;if(!field.nullable){value=proto.defaults[name]=field.defaultValue!==undefined?field.defaultValue:defaultValues[type.toLowerCase()];}if(options.id===name){proto._defaultId=value;}proto.defaults[name]=value;field.parse=field.parse||parsers[type];}model=base.extend(proto);model.define=function(options){return Model.define(model,options);};if(proto.fields){model.fields=proto.fields;model.idField=proto.idField;}return model;};var Comparer={selector:function(field){return isFunction(field)?field:getter(field);},asc:function(field){var selector=this.selector(field);return function(a,b){a=selector(a);b=selector(b);if(a==null&&b==null){return 0;}if((a&&!b)||b==null){return 1;}if(b&&!a){return-1;}return a>b?1:(a<b?-1:0);};},desc:function(field){var selector=this.selector(field);return function(a,b){a=selector(a);b=selector(b);if(a==null&&b==null){return 0;}if((a&&!b)||b==null){return-1;}if((b&&!a)||a==null){return 1;}return a<b?1:(a>b?-1:0);};},create:function(descriptor){return this[descriptor.dir.toLowerCase()](descriptor.field);},combine:function(comparers){return function(a,b){var result=comparers[0](a,b),idx,length;for(idx=1,length=comparers.length;idx<length;idx++){result=result||comparers[idx](a,b);}return result;};}};var PositionComparer=extend({},Comparer,{asc:function(field){var selector=this.selector(field);return function(a,b){var valueA=selector(a);var valueB=selector(b);if(valueA&&valueA.getTime&&valueB&&valueB.getTime){valueA=valueA.getTime();valueB=valueB.getTime();}if(valueA===valueB){return a.__position-b.__position;}if(valueB==null){return 1;}return valueA>valueB?1:(valueA<valueB?-1:0);};},desc:function(field){var selector=this.selector(field);return function(a,b){var valueA=selector(a);var valueB=selector(b);if(valueA&&valueA.getTime&&valueB&&valueB.getTime){valueA=valueA.getTime();valueB=valueB.getTime();}if(valueA===valueB){return a.__position-b.__position;}return valueA<valueB?1:(valueA>valueB?-1:0);};}});map=function(array,callback){var idx,length=array.length,result=new Array(length);for(idx=0;idx<length;idx++){result[idx]=callback(array[idx],idx,array);}return result;};var operators=(function(){function quote(value){return value.replace(quoteRegExp,"\\");}function operator(op,a,b,ignore){var date;if(b!=null){if(typeof b===STRING){b=quote(b);date=dateRegExp.exec(b);if(date){b=new Date(+date[1]);}else if(ignore){b="'"+b.toLowerCase()+"'";a="("+a+" || '').toLowerCase()";}else{b="'"+b+"'";}}if(b.getTime){a="("+a+"?"+a+".getTime():"+a+")";b=b.getTime();}}return a+" "+op+" "+b;}return{eq:function(a,b,ignore){return operator("==",a,b,ignore);},neq:function(a,b,ignore){return operator("!=",a,b,ignore);},gt:function(a,b,ignore){return operator(">",a,b,ignore);},gte:function(a,b,ignore){return operator(">=",a,b,ignore);},lt:function(a,b,ignore){return operator("<",a,b,ignore);},lte:function(a,b,ignore){return operator("<=",a,b,ignore);},startswith:function(a,b,ignore){if(ignore){a=a+".toLowerCase()";if(b){b=b.toLowerCase();}}if(b){b=quote(b);}return a+".lastIndexOf('"+b+"', 0) == 0";},endswith:function(a,b,ignore){if(ignore){a=a+".toLowerCase()";if(b){b=b.toLowerCase();}}if(b){b=quote(b);}return a+".indexOf('"+b+"', "+a+".length - "+(b||"").length+") >= 0";},contains:function(a,b,ignore){if(ignore){a="("+a+" || '').toLowerCase()";if(b){b=b.toLowerCase();}}if(b){b=quote(b);}return a+".indexOf('"+b+"') >= 0";},doesnotcontain:function(a,b,ignore){if(ignore){a="("+a+" || '').toLowerCase()";if(b){b=b.toLowerCase();}}if(b){b=quote(b);}return a+".indexOf('"+b+"') == -1";}};})();function Query(data){this.data=data||[];}Query.filterExpr=function(expression){var expressions=[],logic={and:" && ",or:" || "},idx,length,filter,expr,fieldFunctions=[],operatorFunctions=[],field,operator,filters=expression.filters;for(idx=0,length=filters.length;idx<length;idx++){filter=filters[idx];field=filter.field;operator=filter.operator;if(filter.filters){expr=Query.filterExpr(filter);filter=expr.expression.replace(/__o\[(\d+)\]/g,function(match,index){index=+index;return"__o["+(operatorFunctions.length+index)+"]";}).replace(/__f\[(\d+)\]/g,function(match,index){index=+index;return"__f["+(fieldFunctions.length+index)+"]";});operatorFunctions.push.apply(operatorFunctions,expr.operators);fieldFunctions.push.apply(fieldFunctions,expr.fields);}else{if(typeof field===FUNCTION){expr="__f["+fieldFunctions.length+"](d)";fieldFunctions.push(field);}else{expr=kendo.expr(field);}if(typeof operator===FUNCTION){filter="__o["+operatorFunctions.length+"]("+expr+", "+filter.value+")";operatorFunctions.push(operator);}else{filter=operators[(operator||"eq").toLowerCase()](expr,filter.value,filter.ignoreCase!==undefined?filter.ignoreCase:true);}}expressions.push(filter);}return{expression:"("+expressions.join(logic[expression.logic])+")",fields:fieldFunctions,operators:operatorFunctions};};function normalizeSort(field,dir){if(field){var descriptor=typeof field===STRING?{field:field,dir:dir}:field,descriptors=isArray(descriptor)?descriptor:(descriptor!==undefined?[descriptor]:[]);return grep(descriptors,function(d){return!!d.dir;});}}var operatorMap={"==":"eq",equals:"eq",isequalto:"eq",equalto:"eq",equal:"eq","!=":"neq",ne:"neq",notequals:"neq",isnotequalto:"neq",notequalto:"neq",notequal:"neq","<":"lt",islessthan:"lt",lessthan:"lt",less:"lt","<=":"lte",le:"lte",islessthanorequalto:"lte",lessthanequal:"lte",">":"gt",isgreaterthan:"gt",greaterthan:"gt",greater:"gt",">=":"gte",isgreaterthanorequalto:"gte",greaterthanequal:"gte",ge:"gte",notsubstringof:"doesnotcontain"};function normalizeOperator(expression){var idx,length,filter,operator,filters=expression.filters;if(filters){for(idx=0,length=filters.length;idx<length;idx++){filter=filters[idx];operator=filter.operator;if(operator&&typeof operator===STRING){filter.operator=operatorMap[operator.toLowerCase()]||operator;}normalizeOperator(filter);}}}function normalizeFilter(expression){if(expression&&!isEmptyObject(expression)){if(isArray(expression)||!expression.filters){expression={logic:"and",filters:isArray(expression)?expression:[expression]};}normalizeOperator(expression);return expression;}}Query.normalizeFilter=normalizeFilter;function normalizeAggregate(expressions){return isArray(expressions)?expressions:[expressions];}function normalizeGroup(field,dir){var descriptor=typeof field===STRING?{field:field,dir:dir}:field,descriptors=isArray(descriptor)?descriptor:(descriptor!==undefined?[descriptor]:[]);return map(descriptors,function(d){return{field:d.field,dir:d.dir||"asc",aggregates:d.aggregates};});}Query.prototype={toArray:function(){return this.data;},range:function(index,count){return new Query(this.data.slice(index,index+count));},skip:function(count){return new Query(this.data.slice(count));},take:function(count){return new Query(this.data.slice(0,count));},select:function(selector){return new Query(map(this.data,selector));},orderBy:function(selector){var result=this.data.slice(0),comparer=isFunction(selector)||!selector?Comparer.asc(selector):selector.compare;return new Query(result.sort(comparer));},orderByDescending:function(selector){return new Query(this.data.slice(0).sort(Comparer.desc(selector)));},sort:function(field,dir,comparer){var idx,length,descriptors=normalizeSort(field,dir),comparers=[];comparer=comparer||Comparer;if(descriptors.length){for(idx=0,length=descriptors.length;idx<length;idx++){comparers.push(comparer.create(descriptors[idx]));}return this.orderBy({compare:comparer.combine(comparers)});}return this;},filter:function(expressions){var idx,current,length,compiled,predicate,data=this.data,fields,operators,result=[],filter;expressions=normalizeFilter(expressions);if(!expressions||expressions.filters.length===0){return this;}compiled=Query.filterExpr(expressions);fields=compiled.fields;operators=compiled.operators;predicate=filter=new Function("d, __f, __o","return "+compiled.expression);if(fields.length||operators.length){filter=function(d){return predicate(d,fields,operators);};}for(idx=0,length=data.length;idx<length;idx++){current=data[idx];if(filter(current)){result.push(current);}}return new Query(result);},group:function(descriptors,allData){descriptors=normalizeGroup(descriptors||[]);allData=allData||this.data;var that=this,result=new Query(that.data),descriptor;if(descriptors.length>0){descriptor=descriptors[0];result=result.groupBy(descriptor).select(function(group){var data=new Query(allData).filter([{field:group.field,operator:"eq",value:group.value}]);return{field:group.field,value:group.value,items:descriptors.length>1?new Query(group.items).group(descriptors.slice(1),data.toArray()).toArray():group.items,hasSubgroups:descriptors.length>1,aggregates:data.aggregate(descriptor.aggregates)};});}return result;},groupBy:function(descriptor){if(isEmptyObject(descriptor)||!this.data.length){return new Query([]);}var field=descriptor.field,sorted=this._sortForGrouping(field,descriptor.dir||"asc"),accessor=kendo.accessor(field),item,groupValue=accessor.get(sorted[0],field),group={field:field,value:groupValue,items:[]},currentValue,idx,len,result=[group];for(idx=0,len=sorted.length;idx<len;idx++){item=sorted[idx];currentValue=accessor.get(item,field);if(!groupValueComparer(groupValue,currentValue)){groupValue=currentValue;group={field:field,value:groupValue,items:[]};result.push(group);}group.items.push(item);}return new Query(result);},_sortForGrouping:function(field,dir){var idx,length,data=this.data;if(!stableSort){for(idx=0,length=data.length;idx<length;idx++){data[idx].__position=idx;}data=new Query(data).sort(field,dir,PositionComparer).toArray();for(idx=0,length=data.length;idx<length;idx++){delete data[idx].__position;}return data;}return this.sort(field,dir).toArray();},aggregate:function(aggregates){var idx,len,result={};if(aggregates&&aggregates.length){for(idx=0,len=this.data.length;idx<len;idx++){calculateAggregate(result,aggregates,this.data[idx],idx,len);}}return result;}};function groupValueComparer(a,b){if(a&&a.getTime&&b&&b.getTime){return a.getTime()===b.getTime();}return a===b;}function calculateAggregate(accumulator,aggregates,item,index,length){aggregates=aggregates||[];var idx,aggr,functionName,len=aggregates.length;for(idx=0;idx<len;idx++){aggr=aggregates[idx];functionName=aggr.aggregate;var field=aggr.field;accumulator[field]=accumulator[field]||{};accumulator[field][functionName]=functions[functionName.toLowerCase()](accumulator[field][functionName],item,kendo.accessor(field),index,length);}}var functions={sum:function(accumulator,item,accessor){return(accumulator||0)+accessor.get(item);},count:function(accumulator,item,accessor){return(accumulator||0)+1;},average:function(accumulator,item,accessor,index,length){accumulator=(accumulator||0)+accessor.get(item);if(index==length-1){accumulator=accumulator/length;}return accumulator;},max:function(accumulator,item,accessor){var value=accessor.get(item);accumulator=accumulator||0;if(accumulator<value){accumulator=value;}return accumulator;},min:function(accumulator,item,accessor){var value=accessor.get(item);accumulator=(accumulator||value);if(accumulator>value){accumulator=value;}return accumulator;}};function toJSON(array){var idx,length=array.length,result=new Array(length);for(idx=0;idx<length;idx++){result[idx]=array[idx].toJSON();}return result;}function process(data,options){options=options||{};var query=new Query(data),group=options.group,sort=normalizeGroup(group||[]).concat(normalizeSort(options.sort||[])),total,filter=options.filter,skip=options.skip,take=options.take;if(filter){query=query.filter(filter);total=query.toArray().length;}if(sort){query=query.sort(sort);if(group){data=query.toArray();}}if(skip!==undefined&&take!==undefined){query=query.range(skip,take);}if(group){query=query.group(group,data);}return{total:total,data:query.toArray()};}function calculateAggregates(data,options){options=options||{};var query=new Query(data),aggregates=options.aggregate,filter=options.filter;if(filter){query=query.filter(filter);}return query.aggregate(aggregates);}var LocalTransport=Class.extend({init:function(options){this.data=options.data;},read:function(options){options.success(this.data);},update:function(options){options.success(options.data);},create:function(options){options.success(options.data);},destroy:function(options){options.success(options.data);}});var RemoteTransport=Class.extend({init:function(options){var that=this,parameterMap;options=that.options=extend({},that.options,options);each(crud,function(index,type){if(typeof options[type]===STRING){options[type]={url:options[type]};}});that.cache=options.cache?Cache.create(options.cache):{find:noop,add:noop};parameterMap=options.parameterMap;that.parameterMap=isFunction(parameterMap)?parameterMap:function(options){var result={};each(options,function(option,value){if(option in parameterMap){option=parameterMap[option];if(isPlainObject(option)){value=option.value(value);option=option.key;}}result[option]=value;});return result;};},options:{parameterMap:identity},create:function(options){return ajax(this.setup(options,CREATE));},read:function(options){var that=this,success,error,result,cache=that.cache;options=that.setup(options,READ);success=options.success||noop;error=options.error||noop;result=cache.find(options.data);if(result!==undefined){success(result);}else{options.success=function(result){cache.add(options.data,result);success(result);};$.ajax(options);}},update:function(options){return ajax(this.setup(options,UPDATE));},destroy:function(options){return ajax(this.setup(options,DESTROY));},setup:function(options,type){options=options||{};var that=this,parameters,operation=that.options[type],data=isFunction(operation.data)?operation.data(options.data):operation.data;options=extend(true,{},operation,options);parameters=extend(true,{},data,options.data);options.data=that.parameterMap(parameters,type);if(isFunction(options.url)){options.url=options.url(parameters);}return options;}});var Cache=Class.extend({init:function(){this._store={};},add:function(key,data){if(key!==undefined){this._store[stringify(key)]=data;}},find:function(key){return this._store[stringify(key)];},clear:function(){this._store={};},remove:function(key){delete this._store[stringify(key)];}});Cache.create=function(options){var store={"inmemory":function(){return new Cache();}};if(isPlainObject(options)&&isFunction(options.find)){return options;}if(options===true){return new Cache();}return store[options]();};function convertRecords(data,getters,modelInstance){var record,getter,idx,length;for(idx=0,length=data.length;idx<length;idx++){record=data[idx];for(getter in getters){record[getter]=modelInstance._parse(getter,getters[getter](record));}}}function convertGroup(data,getters,modelInstance){var record,idx,length;for(idx=0,length=data.length;idx<length;idx++){record=data[idx];record.value=modelInstance._parse(record.field,record.value);if(record.hasSubgroups){convertGroup(record.items,getters,modelInstance);}else{convertRecords(record.items,getters,modelInstance);}}}function wrapDataAccess(originalFunction,model,converter,getters){return function(data){data=originalFunction(data);if(data&&!isEmptyObject(getters)){if(toString.call(data)!=="[object Array]"&&!(data instanceof ObservableArray)){data=[data];}converter(data,getters,new model());}return data||[];};}var DataReader=Class.extend({init:function(schema){var that=this,member,get,model,base;schema=schema||{};for(member in schema){get=schema[member];that[member]=typeof get===STRING?getter(get):get;}base=schema.modelBase||Model;if(isPlainObject(that.model)){that.model=model=base.define(that.model);}if(that.model){var dataFunction=proxy(that.data,that),groupsFunction=proxy(that.groups,that),getters={};model=that.model;if(model.fields){each(model.fields,function(field,value){if(isPlainObject(value)&&value.field){getters[value.field]=getter(value.field);}else{getters[field]=getter(field);}});}that.data=wrapDataAccess(dataFunction,model,convertRecords,getters);that.groups=wrapDataAccess(groupsFunction,model,convertGroup,getters);}},errors:function(data){return data?data.errors:null;},parse:identity,data:identity,total:function(data){return data.length;},groups:identity,status:function(data){return data.status;},aggregates:function(){return{};}});function flattenGroups(data){var idx,length,result=[];for(idx=0,length=data.length;idx<length;idx++){if(data[idx].hasSubgroups){result=result.concat(flattenGroups(data[idx].items));}else{result=result.concat(data[idx].items.slice());}}return result;}function wrapGroupItems(data,model){var idx,length,group,items;if(model){for(idx=0,length=data.length;idx<length;idx++){group=data[idx];items=group.items;if(group.hasSubgroups){wrapGroupItems(items,model);}else if(items.length&&!(items[0]instanceof model)){items.type=model;items.wrapAll(items,items);}}}}function eachGroupItems(data,func){var idx,length;for(idx=0,length=data.length;idx<length;idx++){if(data[idx].hasSubgroups){if(eachGroupItems(data[idx].items,func)){return true;}}else{if(func(data[idx].items,data[idx])){return true;}}}}function removeModel(data,model){var idx,length;for(idx=0,length=data.length;idx<length;idx++){if(data[idx].uid==model.uid){model=data[idx];data.splice(idx,1);return model;}}}function wrapInEmptyGroup(groups,model){var parent,group,idx,length;for(idx=groups.length-1,length=0;idx>=length;idx--){group=groups[idx];parent={value:model.get(group.field),field:group.field,items:parent?[parent]:[model],hasSubgroups:!!parent,aggregates:{}};}return parent;}function indexOfPristineModel(data,model){if(model){return indexOf(data,function(item){return item[model.idField]===model.id;});}return-1;}function indexOfModel(data,model){if(model){return indexOf(data,function(item){return item.uid==model.uid;});}return-1;}function indexOf(data,comparer){var idx,length;for(idx=0,length=data.length;idx<length;idx++){if(comparer(data[idx])){return idx;}}return-1;}var DataSource=Observable.extend({init:function(options){var that=this,model,transport,data;if(options){data=options.data;}options=that.options=extend({},that.options,options);extend(that,{_map:{},_prefetch:{},_data:[],_ranges:[],_view:[],_pristine:[],_destroyed:[],_pageSize:options.pageSize,_page:options.page||(options.pageSize?1:undefined),_sort:normalizeSort(options.sort),_filter:normalizeFilter(options.filter),_group:normalizeGroup(options.group),_aggregate:options.aggregate,_total:options.total});Observable.fn.init.call(that);transport=options.transport;if(transport){transport.read=typeof transport.read===STRING?{url:transport.read}:transport.read;if(options.type){if(kendo.data.transports[options.type]&&!isPlainObject(kendo.data.transports[options.type])){that.transport=new kendo.data.transports[options.type](extend(transport,{data:data}));}else{transport=extend(true,{},kendo.data.transports[options.type],transport);}options.schema=extend(true,{},kendo.data.schemas[options.type],options.schema);}if(!that.transport){that.transport=isFunction(transport.read)?transport:new RemoteTransport(transport);}}else{that.transport=new LocalTransport({data:options.data});}that.reader=new kendo.data.readers[options.schema.type||"json"](options.schema);model=that.reader.model||{};that._data=that._observe(that._data);that.bind([ERROR,CHANGE,REQUESTSTART,SYNC,REQUESTEND],options);},options:{data:[],schema:{modelBase:Model},serverSorting:false,serverPaging:false,serverFiltering:false,serverGrouping:false,serverAggregates:false,sendAllFields:true,batch:false},_flatData:function(data){if(this.options.serverGrouping&&this.group().length){return flattenGroups(data);}return data;},get:function(id){var idx,length,data=this._flatData(this._data);for(idx=0,length=data.length;idx<length;idx++){if(data[idx].id==id){return data[idx];}}},getByUid:function(id){var idx,length,data=this._flatData(this._data);if(!data){return;}for(idx=0,length=data.length;idx<length;idx++){if(data[idx].uid==id){return data[idx];}}},sync:function(){var that=this,idx,length,created=[],updated=[],destroyed=that._destroyed,data=that._flatData(that._data);if(!that.reader.model){return;}for(idx=0,length=data.length;idx<length;idx++){if(data[idx].isNew()){created.push(data[idx]);}else if(data[idx].dirty){updated.push(data[idx]);}}var promises=that._send("create",created);promises.push.apply(promises,that._send("update",updated));promises.push.apply(promises,that._send("destroy",destroyed));$.when.apply(null,promises).then(function(){var idx,length;for(idx=0,length=arguments.length;idx<length;idx++){that._accept(arguments[idx]);}that._change({action:"sync"});that.trigger(SYNC);});},_accept:function(result){var that=this,models=result.models,response=result.response,idx=0,serverGroup=that.options.serverGrouping&&that.group()&&that.group().length,pristine=that.reader.data(that._pristine),type=result.type,length;that.trigger(REQUESTEND,{response:response,type:type});if(response){response=that.reader.parse(response);if(that._handleCustomErrors(response)){return;}response=that.reader.data(response);if(!$.isArray(response)){response=[response];}}else{response=$.map(models,function(model){return model.toJSON();});}if(type==="destroy"){that._destroyed=[];}for(idx=0,length=models.length;idx<length;idx++){if(type!=="destroy"){models[idx].accept(response[idx]);if(type==="create"){pristine.push(serverGroup?wrapInEmptyGroup(that.group(),models[idx]):response[idx]);}else if(type==="update"){if(serverGroup){that._updatePristineGroupModel(models[idx],response[idx]);}else{extend(pristine[that._pristineIndex(models[idx])],response[idx]);}}}else{if(serverGroup){that._removePristineGroupModel(models[idx]);}else{pristine.splice(that._pristineIndex(models[idx]),1);}}}},_pristineIndex:function(model){var that=this,idx,length,pristine=that.reader.data(that._pristine);for(idx=0,length=pristine.length;idx<length;idx++){if(pristine[idx][model.idField]===model.id){return idx;}}return-1;},_updatePristineGroupModel:function(model,values){var pristineData=this.reader.groups(this._pristine),index;eachGroupItems(pristineData,function(items,group){index=indexOfPristineModel(items,model);if(index>-1){extend(true,items[index],values);return true;}});},_removePristineGroupModel:function(model){var pristineData=this.reader.groups(this._pristine),index;eachGroupItems(pristineData,function(items,group){index=indexOfPristineModel(items,model);if(index>-1){items.splice(index,1);return true;}});},_promise:function(data,models,type){var that=this,transport=that.transport;return $.Deferred(function(deferred){transport[type].call(transport,extend({success:function(response){deferred.resolve({response:response,models:models,type:type});},error:function(response,status,error){deferred.reject(response);that.error(response,status,error);}},data));}).promise();},_send:function(method,data){var that=this,idx,length,promises=[];if(that.options.batch){if(data.length){promises.push(that._promise({data:{models:toJSON(data)}},data,method));}}else{for(idx=0,length=data.length;idx<length;idx++){promises.push(that._promise({data:data[idx].toJSON()},[data[idx]],method));}}return promises;},add:function(model){return this.insert(this._data.length,model);},insert:function(index,model){if(!model){model=index;index=0;}if(!(model instanceof Model)){if(this.reader.model){model=new this.reader.model(model);}else{model=new ObservableObject(model);}}if(this.options.serverGrouping&&this.group()&&this.group().length){this._data.splice(index,0,wrapInEmptyGroup(this.group(),model));}else{this._data.splice(index,0,model);}return model;},cancelChanges:function(model){var that=this,pristineIndex,serverGroup=that.options.serverGrouping&&that.group()&&that.group().length,read=!serverGroup?that.reader.data:that.reader.groups,pristine=read(that._pristine),index;if(model instanceof kendo.data.Model){if(serverGroup){that._cancelGroupModel(model);}else{index=that.indexOf(model);pristineIndex=that._pristineIndex(model);if(index!=-1){if(pristineIndex!=-1&&!model.isNew()){that._data[index].accept(pristine[pristineIndex]);}else{that._data.splice(index,1);}}}}else{that._destroyed=[];that._data=that._observe(pristine);that._change();}},read:function(data){var that=this,params=that._params(data);that._queueRequest(params,function(){that.trigger(REQUESTSTART);that._ranges=[];that.transport.read({data:params,success:proxy(that.success,that),error:proxy(that.error,that)});});},_cancelGroupModel:function(model){var pristineData=this.reader.groups(this._pristine),pristine,idx;eachGroupItems(pristineData,function(items,group){idx=indexOfPristineModel(items,model);if(idx>-1){pristine=items[idx];return true;}});if(idx>-1){eachGroupItems(this._data,function(items,group){idx=indexOfModel(items,model);if(idx>-1){if(!model.isNew()){extend(true,items[idx],pristine);}else{items.splice(idx,1);}}});}},indexOf:function(model){return indexOfModel(this._data,model);},_params:function(data){var that=this,options=extend({take:that.take(),skip:that.skip(),page:that.page(),pageSize:that.pageSize(),sort:that._sort,filter:that._filter,group:that._group,aggregate:that._aggregate},data);if(!that.options.serverPaging){delete options.take;delete options.skip;delete options.page;delete options.pageSize;}if(!that.options.serverGrouping){delete options.group;}if(!that.options.serverFiltering){delete options.filter;}if(!that.options.serverSorting){delete options.sort;}if(!that.options.serverAggregates){delete options.aggregate;}return options;},_queueRequest:function(options,callback){var that=this;if(!that._requestInProgress){that._requestInProgress=true;that._pending=undefined;callback();}else{that._pending={callback:proxy(callback,that),options:options};}},_dequeueRequest:function(){var that=this;that._requestInProgress=false;if(that._pending){that._queueRequest(that._pending.options,that._pending.callback);}},remove:function(model){var data=this._data;if(this.options.serverGrouping&&this.group()&&this.group().length){return this._removeGroupItem(data,model);}return removeModel(data,model);},_removeGroupItem:function(data,model){var result,that=this;eachGroupItems(data,function(items,group){result=removeModel(items,model);if(result){if(!result.isNew||!result.isNew()){that._destroyed.push(result);}return true;}});return model;},error:function(xhr,status,errorThrown){this._dequeueRequest();this.trigger(REQUESTEND,{});this.trigger(ERROR,{xhr:xhr,status:status,errorThrown:errorThrown});},_handleCustomErrors:function(response){if(this.reader.errors){var errors=this.reader.errors(response);if(errors){this.trigger(ERROR,{xhr:null,status:"customerror",errorThrown:"custom error",errors:errors});return true;}}return false;},_parent:noop,success:function(data){var that=this,options=that.options,hasGroups=options.serverGrouping===true&&that._group&&that._group.length>0;that.trigger(REQUESTEND,{response:data,type:"read"});data=that.reader.parse(data);if(that._handleCustomErrors(data)){that._dequeueRequest();return;}that._pristine=isPlainObject(data)?$.extend(true,{},data):data.slice?data.slice(0):data;that._total=that.reader.total(data);if(that._aggregate&&options.serverAggregates){that._aggregateResult=that.reader.aggregates(data);}if(hasGroups){data=that.reader.groups(data);}else{data=that.reader.data(data);}that._data=that._observe(data);var start=that._skip||0,end=start+that._data.length;that._ranges.push({start:start,end:end,data:that._data});that._ranges.sort(function(x,y){return x.start-y.start;});that._dequeueRequest();that._process(that._data);},_observe:function(data){var that=this,model=that.reader.model,wrap=false;if(model&&data.length){wrap=!(data[0]instanceof model);}if(data instanceof ObservableArray){if(wrap){data.type=that.reader.model;data.wrapAll(data,data);}}else{data=new ObservableArray(data,that.reader.model);data.parent=function(){return that._parent();};}if(that.group()&&that.group().length&&that.options.serverGrouping){wrapGroupItems(data,model);}return data.bind(CHANGE,proxy(that._change,that));},_change:function(e){var that=this,idx,length,action=e?e.action:"";if(action==="remove"){for(idx=0,length=e.items.length;idx<length;idx++){if(!e.items[idx].isNew||!e.items[idx].isNew()){that._destroyed.push(e.items[idx]);}}}if(that.options.autoSync&&(action==="add"||action==="remove"||action==="itemchange")){that.sync();}else{var total=that._total||that.reader.total(that._pristine);if(action==="add"){total++;}else if(action==="remove"){total--;}else if(action!=="itemchange"&&!that.options.serverPaging){total=that.reader.total(that._pristine);}that._total=total;that._process(that._data,e);}},_process:function(data,e){var that=this,options={},result;if(that.options.serverPaging!==true){options.skip=that._skip;options.take=that._take||that._pageSize;if(options.skip===undefined&&that._page!==undefined&&that._pageSize!==undefined){options.skip=(that._page-1)*that._pageSize;}}if(that.options.serverSorting!==true){options.sort=that._sort;}if(that.options.serverFiltering!==true){options.filter=that._filter;}if(that.options.serverGrouping!==true){options.group=that._group;}if(that.options.serverAggregates!==true){options.aggregate=that._aggregate;that._aggregateResult=calculateAggregates(data,options);}result=process(data,options);that._view=result.data;if(result.total!==undefined&&!that.options.serverFiltering){that._total=result.total;}e=e||{};e.items=e.items||that._view;that.trigger(CHANGE,e);},at:function(index){return this._data[index];},data:function(value){var that=this;if(value!==undefined){that._data=this._observe(value);that._total=that._data.length;that._process(that._data);}else{return that._data;}},view:function(){return this._view;},query:function(options){var that=this,result,remote=that.options.serverSorting||that.options.serverPaging||that.options.serverFiltering||that.options.serverGrouping||that.options.serverAggregates;if(options!==undefined){that._pageSize=options.pageSize;that._page=options.page;that._sort=options.sort;that._filter=options.filter;that._group=options.group;that._aggregate=options.aggregate;that._skip=options.skip;that._take=options.take;if(that._skip===undefined){that._skip=that.skip();options.skip=that.skip();}if(that._take===undefined&&that._pageSize!==undefined){that._take=that._pageSize;options.take=that._take;}if(options.sort){that._sort=options.sort=normalizeSort(options.sort);}if(options.filter){that._filter=options.filter=normalizeFilter(options.filter);}if(options.group){that._group=options.group=normalizeGroup(options.group);}if(options.aggregate){that._aggregate=options.aggregate=normalizeAggregate(options.aggregate);}}if(remote||(that._data===undefined||that._data.length===0)){that.read(options);}else{that.trigger(REQUESTSTART);result=process(that._data,options);if(!that.options.serverFiltering){if(result.total!==undefined){that._total=result.total;}else{that._total=that._data.length;}}that._view=result.data;that._aggregateResult=calculateAggregates(that._data,options);that.trigger(CHANGE,{items:result.data});}},fetch:function(callback){var that=this;if(callback&&isFunction(callback)){that.one(CHANGE,callback);}that._query();},_query:function(options){var that=this;that.query(extend({},{page:that.page(),pageSize:that.pageSize(),sort:that.sort(),filter:that.filter(),group:that.group(),aggregate:that.aggregate()},options));},next:function(options){var that=this,page=that.page(),total=that.total();options=options||{};if(!page||(total&&page+1>that.totalPages())){return;}that._skip=page*that.take();page+=1;options.page=page;that._query(options);return page;},prev:function(options){var that=this,page=that.page();options=options||{};if(!page||page===1){return;}that._skip=that._skip-that.take();page-=1;options.page=page;that._query(options);return page;},page:function(val){var that=this,skip;if(val!==undefined){val=math.max(math.min(math.max(val,1),that.totalPages()),1);that._query({page:val});return;}skip=that.skip();return skip!==undefined?math.round((skip||0)/(that.take()||1))+1:undefined;},pageSize:function(val){var that=this;if(val!==undefined){that._query({pageSize:val,page:1});return;}return that.take();},sort:function(val){var that=this;if(val!==undefined){that._query({sort:val});return;}return that._sort;},filter:function(val){var that=this;if(val===undefined){return that._filter;}that._query({filter:val,page:1});},group:function(val){var that=this;if(val!==undefined){that._query({group:val});return;}return that._group;},total:function(){return this._total||0;},aggregate:function(val){var that=this;if(val!==undefined){that._query({aggregate:val});return;}return that._aggregate;},aggregates:function(){return this._aggregateResult;},totalPages:function(){var that=this,pageSize=that.pageSize()||that.total();return math.ceil((that.total()||0)/pageSize);},inRange:function(skip,take){var that=this,end=math.min(skip+take,that.total());if(!that.options.serverPaging&&that.data.length>0){return true;}return that._findRange(skip,end).length>0;},range:function(skip,take){skip=math.min(skip||0,this.total());var that=this,pageSkip=math.max(math.floor(skip/take),0)*take,size=math.min(pageSkip+take,that.total()),data;data=that._findRange(skip,math.min(skip+take,that.total()));if(data.length){that._skip=skip>that.skip()?math.min(size,(that.totalPages()-1)*that.take()):pageSkip;that._take=take;var paging=that.options.serverPaging;var sorting=that.options.serverSorting;var filtering=that.options.serverFiltering;try{that.options.serverPaging=true;that.options.serverSorting=true;that.options.serverFiltering=true;if(paging){that._data=data=that._observe(data);}that._process(data);}finally{that.options.serverPaging=paging;that.options.serverSorting=sorting;that.options.serverFiltering=filtering;}return;}if(take!==undefined){if(!that._rangeExists(pageSkip,size)){that.prefetch(pageSkip,take,function(){if(skip>pageSkip&&size<that.total()&&!that._rangeExists(size,math.min(size+take,that.total()))){that.prefetch(size,take,function(){that.range(skip,take);});}else{that.range(skip,take);}});}else if(pageSkip<skip){that.prefetch(size,take,function(){that.range(skip,take);});}}},_findRange:function(start,end){var that=this,ranges=that._ranges,range,data=[],skipIdx,takeIdx,startIndex,endIndex,rangeData,rangeEnd,processed,options=that.options,remote=options.serverSorting||options.serverPaging||options.serverFiltering||options.serverGrouping||options.serverAggregates,length;for(skipIdx=0,length=ranges.length;skipIdx<length;skipIdx++){range=ranges[skipIdx];if(start>=range.start&&start<=range.end){var count=0;for(takeIdx=skipIdx;takeIdx<length;takeIdx++){range=ranges[takeIdx];if(range.data.length&&start+count>=range.start){rangeData=range.data;rangeEnd=range.end;if(!remote){processed=process(range.data,{sort:that.sort(),filter:that.filter()});rangeData=processed.data;if(processed.total!==undefined){rangeEnd=processed.total;}}startIndex=0;if(start+count>range.start){startIndex=(start+count)-range.start;}endIndex=rangeData.length;if(rangeEnd>end){endIndex=endIndex-(rangeEnd-end);}count+=endIndex-startIndex;data=data.concat(rangeData.slice(startIndex,endIndex));if(end<=range.end&&count==end-start){return data;}}}break;}}return[];},skip:function(){var that=this;if(that._skip===undefined){return(that._page!==undefined?(that._page-1)*(that.take()||1):undefined);}return that._skip;},take:function(){var that=this;return that._take||that._pageSize;},prefetch:function(skip,take,callback){var that=this,size=math.min(skip+take,that.total()),range={start:skip,end:size,data:[]},options={take:take,skip:skip,page:skip/take+1,pageSize:take,sort:that._sort,filter:that._filter,group:that._group,aggregate:that._aggregate};if(!that._rangeExists(skip,size)){clearTimeout(that._timeout);that._timeout=setTimeout(function(){that._queueRequest(options,function(){that.transport.read({data:options,success:function(data){that._dequeueRequest();var found=false;for(var i=0,len=that._ranges.length;i<len;i++){if(that._ranges[i].start===skip){found=true;range=that._ranges[i];break;}}if(!found){that._ranges.push(range);}data=that.reader.parse(data);range.data=that._observe(that.reader.data(data));range.end=range.start+range.data.length;that._ranges.sort(function(x,y){return x.start-y.start;});that._total=that.reader.total(data);if(callback){callback();}}});});},100);}else if(callback){callback();}},_rangeExists:function(start,end){var that=this,ranges=that._ranges,idx,length;for(idx=0,length=ranges.length;idx<length;idx++){if(ranges[idx].start<=start&&ranges[idx].end>=end){return true;}}return false;}});DataSource.create=function(options){options=options&&options.push?{data:options}:options;var dataSource=options||{},data=dataSource.data,fields=dataSource.fields,table=dataSource.table,select=dataSource.select,idx,length,model={},field;if(!data&&fields&&!dataSource.transport){if(table){data=inferTable(table,fields);}else if(select){data=inferSelect(select,fields);}}if(kendo.data.Model&&fields&&(!dataSource.schema||!dataSource.schema.model)){for(idx=0,length=fields.length;idx<length;idx++){field=fields[idx];if(field.type){model[field.field]=field;}}if(!isEmptyObject(model)){dataSource.schema=extend(true,dataSource.schema,{model:{fields:model}});}}dataSource.data=data;return dataSource instanceof DataSource?dataSource:new DataSource(dataSource);};function inferSelect(select,fields){var options=$(select)[0].children,idx,length,data=[],record,firstField=fields[0],secondField=fields[1],value,option;for(idx=0,length=options.length;idx<length;idx++){record={};option=options[idx];record[firstField.field]=option.text;value=option.attributes.value;if(value&&value.specified){value=option.value;}else{value=option.text;}record[secondField.field]=value;data.push(record);}return data;}function inferTable(table,fields){var tbody=$(table)[0].tBodies[0],rows=tbody?tbody.rows:[],idx,length,fieldIndex,fieldCount=fields.length,data=[],cells,record,cell,empty;for(idx=0,length=rows.length;idx<length;idx++){record={};empty=true;cells=rows[idx].cells;for(fieldIndex=0;fieldIndex<fieldCount;fieldIndex++){cell=cells[fieldIndex];if(cell.nodeName.toLowerCase()!=="th"){empty=false;record[fields[fieldIndex].field]=cell.innerHTML;}}if(!empty){data.push(record);}}return data;}var Node=Model.define({init:function(value){var that=this,hasChildren=that.hasChildren||value&&value.hasChildren,childrenField="items",childrenOptions={};kendo.data.Model.fn.init.call(that,value);if(typeof that.children===STRING){childrenField=that.children;}childrenOptions={schema:{data:childrenField,model:{hasChildren:hasChildren,id:that.idField}}};if(typeof that.children!==STRING){extend(childrenOptions,that.children);}childrenOptions.data=value;if(!hasChildren){hasChildren=childrenOptions.schema.data;}if(typeof hasChildren===STRING){hasChildren=kendo.getter(hasChildren);}if(isFunction(hasChildren)){that.hasChildren=!!hasChildren.call(that,that);}that._childrenOptions=childrenOptions;if(that.hasChildren){that._initChildren();}that._loaded=!!(value&&value[childrenField]);},_initChildren:function(){var that=this,childrenField=that._childrenOptions.schema.data;if(!(that.children instanceof HierarchicalDataSource)){that.children=new HierarchicalDataSource(that._childrenOptions);that.children._parent=function(){return that;};that.children.bind(CHANGE,function(e){e.node=e.node||that;that.trigger(CHANGE,e);});if(childrenField){that[childrenField]=that.children.data();}}},append:function(model){this._initChildren();this.loaded(true);this.children.add(model);},hasChildren:false,level:function(){var parentNode=this.parentNode(),level=0;while(parentNode&&parentNode.parentNode){level++;parentNode=parentNode.parentNode?parentNode.parentNode():null;}return level;},load:function(){var that=this,options={};that._initChildren();if(!that._loaded||that.hasChildren){options[that.idField||"id"]=that.id;if(!that._loaded){that.children._data=undefined;}that.children.one(CHANGE,function(){that._loaded=true;})._query(options);}},parentNode:function(){var array=this.parent();return array.parent();},loaded:function(value){if(value!==undefined){this._loaded=value;}else{return this._loaded;}},shouldSerialize:function(field){return Model.fn.shouldSerialize.call(this,field)&&field!=="children"&&field!=="_loaded"&&field!=="hasChildren"&&field!=="_childrenOptions";}});var HierarchicalDataSource=DataSource.extend({init:function(options){var node=Node.define({children:options});DataSource.fn.init.call(this,extend(true,{},{schema:{modelBase:node,model:node}},options));},remove:function(node){var parentNode=node.parentNode(),dataSource=this,result;if(parentNode){dataSource=parentNode.children;}result=DataSource.fn.remove.call(dataSource,node);if(parentNode&&!dataSource.data().length){parentNode.hasChildren=false;}return result;},insert:function(index,model){var parentNode=this._parent();if(parentNode){parentNode.hasChildren=true;parentNode._initChildren();}return DataSource.fn.insert.call(this,index,model);},_find:function(method,value){var idx,length,node,data,children;node=DataSource.fn[method].call(this,value);if(node){return node;}data=this._flatData(this.data());if(!data){return;}for(idx=0,length=data.length;idx<length;idx++){children=data[idx].children;if(!(children instanceof HierarchicalDataSource)){continue;}node=children[method](value);if(node){return node;}}},get:function(id){return this._find("get",id);},getByUid:function(uid){return this._find("getByUid",uid);}});function inferList(list,fields){var items=$(list).children(),idx,length,data=[],record,textField=fields[0].field,urlField=fields[1]&&fields[1].field,spriteCssClassField=fields[2]&&fields[2].field,imageUrlField=fields[3]&&fields[3].field,item,id,textChild,className,children;for(idx=0,length=items.length;idx<length;idx++){record={};item=items.eq(idx);textChild=item[0].firstChild;children=item.children();list=children.filter("ul");children=children.filter(":not(ul)");id=item.attr("data-id");if(id){record.id=id;}if(textChild){record[textField]=textChild.nodeType==3?textChild.nodeValue:children.text();}if(urlField){record[urlField]=children.find("a").attr("href");}if(imageUrlField){record[imageUrlField]=children.find("img").attr("src");}if(spriteCssClassField){className=children.find(".k-sprite").prop("className");record[spriteCssClassField]=className&&$.trim(className.replace("k-sprite",""));}if(list.length){record.items=inferList(list.eq(0),fields);}if(item.attr("data-hasChildren")=="true"){record.hasChildren=true;}data.push(record);}return data;}HierarchicalDataSource.create=function(options){options=options&&options.push?{data:options}:options;var dataSource=options||{},data=dataSource.data,fields=dataSource.fields,list=dataSource.list;if(data&&data._dataSource){return data._dataSource;}if(!data&&fields&&!dataSource.transport){if(list){data=inferList(list,fields);}}dataSource.data=data;return dataSource instanceof HierarchicalDataSource?dataSource:new HierarchicalDataSource(dataSource);};extend(true,kendo.data,{readers:{json:DataReader},Query:Query,DataSource:DataSource,HierarchicalDataSource:HierarchicalDataSource,Node:Node,ObservableObject:ObservableObject,ObservableArray:ObservableArray,LocalTransport:LocalTransport,RemoteTransport:RemoteTransport,Cache:Cache,DataReader:DataReader,Model:Model});})(window.kendo.jQuery);(function($,unefined){var kendo=window.kendo,Observable=kendo.Observable,ObservableObject=kendo.data.ObservableObject,ObservableArray=kendo.data.ObservableArray,toString={}.toString,binders={},Class=kendo.Class,innerText,proxy=$.proxy,VALUE="value",SOURCE="source",EVENTS="events",CHECKED="checked",CHANGE="change";(function(){var a=document.createElement("a");if(a.innerText!==undefined){innerText="innerText";}else if(a.textContent!==undefined){innerText="textContent";}})();var Binding=Observable.extend({init:function(source,path){var that=this;Observable.fn.init.call(that);that.source=source;that.path=path;that.dependencies={};that.dependencies[path]=true;that.observable=that.source instanceof Observable;that._access=function(e){that.dependencies[e.field]=true;};if(that.observable){that._change=function(e){that.change(e);};that.source.bind(CHANGE,that._change);}},change:function(e){var dependency,idx,ch,that=this;if(that.path==="this"){that.trigger(CHANGE,e);}else{for(dependency in that.dependencies){idx=dependency.indexOf(e.field);if(idx===0){ch=dependency.charAt(e.field.length);if(!ch||ch==="."||ch==="["){that.trigger(CHANGE,e);break;}}}}},start:function(){if(this.observable){this.source.bind("get",this._access);}},stop:function(){if(this.observable){this.source.unbind("get",this._access);}},get:function(){var that=this,source=that.source,index,path=that.path,result=source;that.start();if(that.observable){result=source.get(path);while(result===undefined&&source){source=source.parent();if(source instanceof ObservableObject){result=source.get(path);}}if(typeof result==="function"){index=path.lastIndexOf(".");if(index>0){source=source.get(path.substring(0,index));}result=proxy(result,source);result=result(that.source);}if(source&&source!==that.source){that.currentSource=source;source.unbind(CHANGE,that._change).bind(CHANGE,that._change);}}that.stop();return result;},set:function(value){var that=this,source=that.currentSource||that.source;source.set(that.path,value);},destroy:function(){if(this.observable){this.source.unbind(CHANGE,this._change);}}});var EventBinding=Binding.extend({get:function(){var source=this.source,path=this.path,handler;handler=source.get(path);while(!handler&&source){source=source.parent();if(source instanceof ObservableObject){handler=source.get(path);}}return proxy(handler,source);}});var TemplateBinding=Binding.extend({init:function(source,path,template){var that=this;Binding.fn.init.call(that,source,path);that.template=template;},render:function(value){var html;this.start();html=kendo.render(this.template,value);this.stop();return html;}});var Binder=Class.extend({init:function(element,bindings,options){this.element=element;this.bindings=bindings;this.options=options;},bind:function(binding,attribute){var that=this;binding=attribute?binding[attribute]:binding;binding.bind(CHANGE,function(e){that.refresh(attribute||e);});that.refresh(attribute);},destroy:function(){}});binders.attr=Binder.extend({refresh:function(key){this.element.setAttribute(key,this.bindings.attr[key].get());}});binders.style=Binder.extend({refresh:function(key){this.element.style[key]=this.bindings.style[key].get();}});binders.enabled=Binder.extend({refresh:function(){if(this.bindings.enabled.get()){this.element.removeAttribute("disabled");}else{this.element.setAttribute("disabled","disabled");}}});binders.readonly=Binder.extend({refresh:function(){if(this.bindings.readonly.get()){this.element.setAttribute("readonly","readonly");}else{this.element.removeAttribute("readonly");}}});binders.disabled=Binder.extend({refresh:function(){if(this.bindings.disabled.get()){this.element.setAttribute("disabled","disabled");}else{this.element.removeAttribute("disabled");}}});binders.events=Binder.extend({init:function(element,bindings,options){Binder.fn.init.call(this,element,bindings,options);this.handlers={};},refresh:function(key){var element=$(this.element),binding=this.bindings.events[key],handler=this.handlers[key];if(handler){element.off(key,handler);}handler=this.handlers[key]=binding.get();element.on(key,binding.source,handler);},destroy:function(){var element=$(this.element),handler;for(handler in this.handlers){element.off(handler,this.handlers[handler]);}}});binders.text=Binder.extend({refresh:function(){var text=this.bindings.text.get();if(text==null){text="";}this.element[innerText]=text;}});binders.visible=Binder.extend({refresh:function(){if(this.bindings.visible.get()){this.element.style.display="";}else{this.element.style.display="none";}}});binders.invisible=Binder.extend({refresh:function(){if(!this.bindings.invisible.get()){this.element.style.display="";}else{this.element.style.display="none";}}});binders.html=Binder.extend({refresh:function(){this.element.innerHTML=this.bindings.html.get();}});binders.value=Binder.extend({init:function(element,bindings,options){Binder.fn.init.call(this,element,bindings,options);this._change=proxy(this.change,this);this.eventName=options.valueUpdate||CHANGE;$(this.element).on(this.eventName,this._change);this._initChange=false;},change:function(){this._initChange=this.eventName!=CHANGE;this.bindings[VALUE].set(this.element.value);this._initChange=false;},refresh:function(){if(!this._initChange){var value=this.bindings[VALUE].get();if(value==null){value="";}this.element.value=value;}this._initChange=false;},destroy:function(){$(this.element).off(this.eventName,this._change);}});binders.source=Binder.extend({init:function(element,bindings,options){Binder.fn.init.call(this,element,bindings,options);},refresh:function(e){var that=this,source=that.bindings.source.get();if(source instanceof ObservableArray){e=e||{};if(e.action=="add"){that.add(e.index,e.items);}else if(e.action=="remove"){that.remove(e.index,e.items);}else if(e.action!="itemchange"){that.render();}}else{that.render();}},container:function(){var element=this.element;if(element.nodeName.toLowerCase()=="table"){if(!element.tBodies[0]){element.appendChild(document.createElement("tbody"));}element=element.tBodies[0];}return element;},template:function(){var options=this.options,template=options.template,nodeName=this.container().nodeName.toLowerCase();if(!template){if(nodeName=="select"){if(options.valueField||options.textField){template=kendo.format('<option value="#:{0}#">#:{1}#</option>',options.valueField||options.textField,options.textField||options.valueField);}else{template="<option>#:data#</option>";}}else if(nodeName=="tbody"){template="<tr><td>#:data#</td></tr>";}else if(nodeName=="ul"||nodeName=="ol"){template="<li>#:data#</li>";}else{template="#:data#";}template=kendo.template(template);}return template;},destroy:function(){var source=this.bindings.source.get();source.unbind(CHANGE,this._change);},add:function(index,items){var element=this.container(),idx,length,child,clone=element.cloneNode(false),reference=element.children[index];$(clone).html(kendo.render(this.template(),items));if(clone.children.length){for(idx=0,length=items.length;idx<length;idx++){child=clone.children[0];element.insertBefore(child,reference||null);bindElement(child,items[idx],this.options.roles);}}},remove:function(index,items){var idx,element=this.container();for(idx=0;idx<items.length;idx++){element.removeChild(element.children[index]);}},render:function(){var source=this.bindings.source.get(),idx,length,element=this.container(),template=this.template(),parent;if(!(source instanceof ObservableArray)&&toString.call(source)!=="[object Array]"){if(source.parent){parent=source.parent;}source=new ObservableArray([source]);if(source.parent){source.parent=parent;}}if(this.bindings.template){$(element).html(this.bindings.template.render(source));if(element.children.length){for(idx=0,length=source.length;idx<length;idx++){bindElement(element.children[idx],source[idx],this.options.roles);}}}else{$(element).html(kendo.render(template,source));}}});binders.input={checked:Binder.extend({init:function(element,bindings,options){Binder.fn.init.call(this,element,bindings,options);this._change=proxy(this.change,this);$(this.element).change(this._change);},change:function(){var element=this.element;var value=this.value();if(element.type=="radio"){this.bindings[CHECKED].set(value);}else if(element.type=="checkbox"){var source=this.bindings[CHECKED].get();var index;if(source instanceof ObservableArray){value=this.element.value;if(value!=="on"&&value!=="off"){index=source.indexOf(value);if(index>-1){source.splice(index,1);}else{source.push(value);}}}else{this.bindings[CHECKED].set(value);}}},refresh:function(){var value=this.bindings[CHECKED].get(),source=value,element=this.element;if(element.type=="checkbox"){if(source instanceof ObservableArray){value=this.element.value;if(source.indexOf(value)>=0){value=true;}}element.checked=value===true;}else if(element.type=="radio"&&value!=null){if(element.value===value.toString()){element.checked=true;}}},value:function(){var element=this.element,value=element.value;if(element.type=="checkbox"){value=element.checked;}return value;},destroy:function(){$(this.element).off(CHANGE,this._change);}})};binders.select={value:Binder.extend({init:function(target,bindings,options){Binder.fn.init.call(this,target,bindings,options);this._change=proxy(this.change,this);$(this.element).change(this._change);},change:function(){var values=[],element=this.element,source,field=this.options.valueField||this.options.textField,option,valueIndex,value,idx,length;for(idx=0,length=element.options.length;idx<length;idx++){option=element.options[idx];if(option.selected){value=option.attributes.value;if(value&&value.specified){value=option.value;}else{value=option.text;}values.push(value);}}if(field){source=this.bindings.source.get();for(valueIndex=0;valueIndex<values.length;valueIndex++){for(idx=0,length=source.length;idx<length;idx++){if(source[idx].get(field)==values[valueIndex]){values[valueIndex]=source[idx];break;}}}}value=this.bindings[VALUE].get();if(value instanceof ObservableArray){value.splice.apply(value,[0,value.length].concat(values));}else if(value instanceof ObservableObject||!field){this.bindings[VALUE].set(values[0]);}else{this.bindings[VALUE].set(values[0].get(field));}},refresh:function(){var optionIndex,element=this.element,options=element.options,value=this.bindings[VALUE].get(),values=value,field=this.options.valueField||this.options.textField,optionValue;if(!(values instanceof ObservableArray)){values=new ObservableArray([value]);}for(var valueIndex=0;valueIndex<values.length;valueIndex++){value=values[valueIndex];if(field&&value instanceof ObservableObject){value=value.get(field);}for(optionIndex=0;optionIndex<options.length;optionIndex++){optionValue=options[optionIndex].value;if(optionValue===""&&value!==""){optionValue=options[optionIndex].text;}if(optionValue==value){options[optionIndex].selected=true;}}}},destroy:function(){$(this.element).off(CHANGE,this._change);}})};binders.widget={events:Binder.extend({init:function(widget,bindings,options){Binder.fn.init.call(this,widget.element[0],bindings,options);this.widget=widget;this.handlers={};},refresh:function(key){var binding=this.bindings.events[key],handler=this.handlers[key];if(handler){this.widget.unbind(key,handler);}handler=binding.get();this.handlers[key]=function(e){e.data=binding.source;handler(e);if(e.data===binding.source){delete e.data;}};this.widget.bind(key,this.handlers[key]);},destroy:function(){var handler;for(handler in this.handlers){this.widget.unbind(handler,this.handlers[handler]);}}}),checked:Binder.extend({init:function(widget,bindings,options){Binder.fn.init.call(this,widget.element[0],bindings,options);this.widget=widget;this._change=proxy(this.change,this);this.widget.bind(CHANGE,this._change);},change:function(){this.bindings[CHECKED].set(this.value());},refresh:function(){this.widget.check(this.bindings[CHECKED].get()===true);},value:function(){var element=this.element,value=element.value;if(value=="on"||value=="off"){value=element.checked;}return value;},destroy:function(){this.widget.unbind(CHANGE,this._change);}}),visible:Binder.extend({init:function(widget,bindings,options){Binder.fn.init.call(this,widget.element[0],bindings,options);this.widget=widget;},refresh:function(){var visible=this.bindings.visible.get();this.widget.wrapper[0].style.display=visible?"":"none";}}),invisible:Binder.extend({init:function(widget,bindings,options){Binder.fn.init.call(this,widget.element[0],bindings,options);this.widget=widget;},refresh:function(){var invisible=this.bindings.invisible.get();this.widget.wrapper[0].style.display=invisible?"none":"";}}),enabled:Binder.extend({init:function(widget,bindings,options){Binder.fn.init.call(this,widget.element[0],bindings,options);this.widget=widget;},refresh:function(){if(this.widget.enable){this.widget.enable(this.bindings.enabled.get());}}}),disabled:Binder.extend({init:function(widget,bindings,options){Binder.fn.init.call(this,widget.element[0],bindings,options);this.widget=widget;},refresh:function(){if(this.widget.enable){this.widget.enable(!this.bindings.disabled.get());}}}),source:Binder.extend({init:function(widget,bindings,options){var that=this;Binder.fn.init.call(that,widget.element[0],bindings,options);that.widget=widget;that._dataBinding=proxy(that.dataBinding,that);that._dataBound=proxy(that.dataBound,that);that._itemChange=proxy(that.itemChange,that);},itemChange:function(e){bindElement(e.item[0],e.data,(e.ns||kendo.ui).roles);},dataBinding:function(){var idx,length,widget=this.widget,items=widget.items();for(idx=0,length=items.length;idx<length;idx++){unbindElementTree(items[idx]);}},dataBound:function(e){var idx,length,widget=this.widget,items=widget.items(),dataSource=widget.dataSource,view=dataSource.view(),ns=e.ns||kendo.ui,groups=dataSource.group()||[];if(items.length){if(groups.length){view=flattenGroups(view);}for(idx=0,length=view.length;idx<length;idx++){bindElement(items[idx],view[idx],ns.roles);}}},refresh:function(e){var that=this,source,widget=that.widget;e=e||{};if(!e.action){that.destroy();widget.bind("dataBinding",that._dataBinding);widget.bind("dataBound",that._dataBound);widget.bind("itemChange",that._itemChange);if(widget.dataSource instanceof kendo.data.DataSource){source=that.bindings.source.get();if(source instanceof kendo.data.DataSource){widget.setDataSource(source);}else if(source&&source._dataSource){widget.setDataSource(source._dataSource);}else{widget.dataSource.data(source);}}}},destroy:function(){var widget=this.widget;widget.unbind("dataBinding",this._dataBinding);widget.unbind("dataBound",this._dataBound);widget.unbind("itemChange",this._itemChange);}}),value:Binder.extend({init:function(widget,bindings,options){Binder.fn.init.call(this,widget.element[0],bindings,options);this.widget=widget;this._change=$.proxy(this.change,this);this.widget.first(CHANGE,this._change);var value=this.bindings.value.get();this._valueIsObservableObject=value==null||value instanceof ObservableObject;},change:function(){var value=this.widget.value();var idx,length;var field=this.options.dataValueField||this.options.dataTextField;if(field){var source,isObservableObject=this._valueIsObservableObject;if(this.bindings.source){source=this.bindings.source.get();}if(value===""&&isObservableObject){value=null;}else{if(!source||source instanceof kendo.data.DataSource){source=this.widget.dataSource.view();}for(idx=0,length=source.length;idx<length;idx++){if(source[idx].get(field)==value){if(isObservableObject){value=source[idx];}else{value=source[idx].get(field);}break;}}}}this.bindings.value.set(value);},refresh:function(){var field=this.options.dataValueField||this.options.dataTextField;var value=this.bindings.value.get();if(field&&value instanceof ObservableObject){value=value.get(field);}this.widget.value(value);},destroy:function(){this.widget.unbind(CHANGE,this._change);}})};var BindingTarget=Class.extend({init:function(target,options){this.target=target;this.options=options;this.toDestroy=[];},bind:function(bindings){var nodeName=this.target.nodeName.toLowerCase(),key,hasValue,hasSource,hasEvents,specificBinders=binders[nodeName]||{};for(key in bindings){if(key==VALUE){hasValue=true;}else if(key==SOURCE){hasSource=true;}else if(key==EVENTS){hasEvents=true;}else{this.applyBinding(key,bindings,specificBinders);}}if(hasSource){this.applyBinding(SOURCE,bindings,specificBinders);}if(hasValue){this.applyBinding(VALUE,bindings,specificBinders);}if(hasEvents){this.applyBinding(EVENTS,bindings,specificBinders);}},applyBinding:function(name,bindings,specificBinders){var binder=specificBinders[name]||binders[name],toDestroy=this.toDestroy,attribute,binding=bindings[name];if(binder){binder=new binder(this.target,bindings,this.options);toDestroy.push(binder);if(binding instanceof Binding){binder.bind(binding);toDestroy.push(binding);}else{for(attribute in binding){binder.bind(binding,attribute);toDestroy.push(binding[attribute]);}}}else if(name!=="template"){throw new Error("The "+name+" binding is not supported by the "+this.target.nodeName.toLowerCase()+" element");}},destroy:function(){var idx,length,toDestroy=this.toDestroy;for(idx=0,length=toDestroy.length;idx<length;idx++){toDestroy[idx].destroy();}}});var WidgetBindingTarget=BindingTarget.extend({bind:function(bindings){var that=this,binding,hasValue=false,hasSource=false;for(binding in bindings){if(binding==VALUE){hasValue=true;}else if(binding==SOURCE){hasSource=true;}else{that.applyBinding(binding,bindings);}}if(hasSource){that.applyBinding(SOURCE,bindings);}if(hasValue){that.applyBinding(VALUE,bindings);}},applyBinding:function(name,bindings){var binder=binders.widget[name],toDestroy=this.toDestroy,attribute,binding=bindings[name];if(binder){binder=new binder(this.target,bindings,this.target.options);toDestroy.push(binder);if(binding instanceof Binding){binder.bind(binding);toDestroy.push(binding);}else{for(attribute in binding){binder.bind(binding,attribute);toDestroy.push(binding[attribute]);}}}else{throw new Error("The "+name+" binding is not supported by the "+this.target.options.name+" widget");}}});function flattenGroups(data){var idx,length,result=[];for(idx=0,length=data.length;idx<length;idx++){if(data[idx].hasSubgroups){result=result.concat(flattenGroups(data[idx].items));}else{result=result.concat(data[idx].items);}}return result;}function bindingTargetForRole(role,element,roles){var type=roles[role];if(type){return new WidgetBindingTarget(kendo.initWidget(element,type.options,roles));}}var keyValueRegExp=/[A-Za-z0-9_\-]+:(\{([^}]*)\}|[^,}]+)/g,whiteSpaceRegExp=/\s/g;function parseBindings(bind){var result={},idx,length,token,colonIndex,key,value,tokens;tokens=bind.match(keyValueRegExp);for(idx=0,length=tokens.length;idx<length;idx++){token=tokens[idx];colonIndex=token.indexOf(":");key=token.substring(0,colonIndex);value=token.substring(colonIndex+1);if(value.charAt(0)=="{"){value=parseBindings(value);}result[key]=value;}return result;}function createBindings(bindings,source,type){var binding,result={};for(binding in bindings){result[binding]=new type(source,bindings[binding]);}return result;}function bindElement(element,source,roles){var role=element.getAttribute("data-"+kendo.ns+"role"),idx,bind=element.getAttribute("data-"+kendo.ns+"bind"),children=element.children,deep=true,bindings,options={},target;if(role||bind){unbindElement(element);}if(role){target=bindingTargetForRole(role,element,roles);}if(bind){bind=parseBindings(bind.replace(whiteSpaceRegExp,""));if(!target){options=kendo.parseOptions(element,{textField:"",valueField:"",template:"",valueUpdate:CHANGE});options.roles=roles;target=new BindingTarget(element,options);}target.source=source;bindings=createBindings(bind,source,Binding);if(options.template){bindings.template=new TemplateBinding(source,"",options.template);}if(bindings.click){bind.events=bind.events||{};bind.events.click=bind.click;delete bindings.click;}if(bindings.source){deep=false;}if(bind.attr){bindings.attr=createBindings(bind.attr,source,Binding);}if(bind.style){bindings.style=createBindings(bind.style,source,Binding);}if(bind.events){bindings.events=createBindings(bind.events,source,EventBinding);}target.bind(bindings);}if(target){element.kendoBindingTarget=target;}if(deep&&children){for(idx=0;idx<children.length;idx++){bindElement(children[idx],source,roles);}}}function bind(dom,object){var idx,length,roles=kendo.rolesFromNamespaces([].slice.call(arguments,2));object=kendo.observable(object);dom=$(dom);for(idx=0,length=dom.length;idx<length;idx++){bindElement(dom[idx],object,roles);}}function unbindElement(element){var bindingTarget=element.kendoBindingTarget;if(bindingTarget){bindingTarget.destroy();if($.support.deleteExpando){delete element.kendoBindingTarget;}else if(element.removeAttribute){element.removeAttribute("kendoBindingTarget");}else{element.kendoBindingTarget=null;}}}function unbindElementTree(element){var idx,length,children=element.children;unbindElement(element);if(children){for(idx=0,length=children.length;idx<length;idx++){unbindElementTree(children[idx]);}}}function unbind(dom){var idx,length;dom=$(dom);for(idx=0,length=dom.length;idx<length;idx++){unbindElementTree(dom[idx]);}}function notify(widget,namespace){var element=widget.element,bindingTarget=element[0].kendoBindingTarget;if(bindingTarget){bind(element,bindingTarget.source,namespace);}}kendo.unbind=unbind;kendo.bind=bind;kendo.data.binders=binders;kendo.data.Binder=Binder;kendo.notify=notify;kendo.observable=function(object){if(!(object instanceof ObservableObject)){object=new ObservableObject(object);}return object;};kendo.observableHierarchy=function(array){var dataSource=kendo.data.HierarchicalDataSource.create(array);function recursiveRead(data){var i,children;for(i=0;i<data.length;i++){data[i]._initChildren();children=data[i].children;children.fetch();data[i].items=children.data();recursiveRead(data[i].items);}}dataSource.fetch();recursiveRead(dataSource.data());dataSource._data._dataSource=dataSource;return dataSource._data;};})(window.kendo.jQuery);;(function($,undefined){var kendo=window.kendo,Widget=kendo.ui.Widget,NS=".kendoValidator",INVALIDMSG="k-invalid-msg",INVALIDINPUT="k-invalid",emailRegExp=/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i,urlRegExp=/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i,INPUTSELECTOR=":input:not(:button,[type=submit],[type=reset],[disabled],[readonly])",NUMBERINPUTSELECTOR="[type=number],[type=range]",BLUR="blur",NAME="name",FORM="form",NOVALIDATE="novalidate",proxy=$.proxy,patternMatcher=function(value,pattern){if(typeof pattern==="string"){pattern=new RegExp('^(?:'+pattern+')$');}return pattern.test(value);},matcher=function(input,selector,pattern){var value=input.val();if(input.filter(selector).length&&value!==""){return patternMatcher(value,pattern);}return true;},hasAttribute=function(input,name){if(input.length){return input[0].attributes[name]!==undefined;}return false;},nameSpecialCharRegExp=/(\[|\]|\$|\.|\:|\+)/g;if(!kendo.ui.validator){kendo.ui.validator={rules:{},messages:{}};}function resolveRules(element){var resolvers=kendo.ui.validator.ruleResolvers||{},rules={},name;for(name in resolvers){$.extend(true,rules,resolvers[name].resolve(element));}return rules;}function decode(value){return value.replace(/&amp/g,'&amp;').replace(/&quot;/g,'"').replace(/&#39;/g,"'").replace(/&lt;/g,'<').replace(/&gt;/g,'>');}function numberOfDecimalDigits(value){value=(value+"").split('.');if(value.length>1){return value[1].length;}return 0;}var Validator=Widget.extend({init:function(element,options){var that=this,resolved=resolveRules(element);options=options||{};options.rules=$.extend({},kendo.ui.validator.rules,resolved.rules,options.rules);options.messages=$.extend({},kendo.ui.validator.messages,resolved.messages,options.messages);Widget.fn.init.call(that,element,options);that._errorTemplate=kendo.template(that.options.errorTemplate);if(that.element.is(FORM)){that.element.attr(NOVALIDATE,NOVALIDATE);}that._errors={};that._attachEvents();},options:{name:"Validator",errorTemplate:'<span class="k-widget k-tooltip k-tooltip-validation">'+'<span class="k-icon k-warning"> </span> #=message#</span>',messages:{required:"{0} is required",pattern:"{0} is not valid",min:"{0} should be greater than or equal to {1}",max:"{0} should be smaller than or equal to {1}",step:"{0} is not valid",email:"{0} is not valid email",url:"{0} is not valid URL",date:"{0} is not valid date"},rules:{required:function(input){var checkbox=input.filter("[type=checkbox]").length&&input.attr("checked")!=="checked",value=input.val();return!(hasAttribute(input,"required")&&(value===""||!value||checkbox));},pattern:function(input){if(input.filter("[type=text],[type=email],[type=url],[type=tel],[type=search],[type=password]").filter("[pattern]").length&&input.val()!==""){return patternMatcher(input.val(),input.attr("pattern"));}return true;},min:function(input){if(input.filter(NUMBERINPUTSELECTOR+",["+kendo.attr("type")+"=number]").filter("[min]").length&&input.val()!==""){var min=parseFloat(input.attr("min"))||0,val=parseFloat(input.val());return min<=val;}return true;},max:function(input){if(input.filter(NUMBERINPUTSELECTOR+",["+kendo.attr("type")+"=number]").filter("[max]").length&&input.val()!==""){var max=parseFloat(input.attr("max"))||0,val=parseFloat(input.val());return max>=val;}return true;},step:function(input){if(input.filter(NUMBERINPUTSELECTOR+",["+kendo.attr("type")+"=number]").filter("[step]").length&&input.val()!==""){var min=parseFloat(input.attr("min"))||0,step=parseFloat(input.attr("step"))||1,val=parseFloat(input.val()),decimals=numberOfDecimalDigits(step),raise;if(decimals){raise=Math.pow(10,decimals);return(((val-min)*raise)%(step*raise))/Math.pow(100,decimals)===0;}return((val-min)%step)===0;}return true;},email:function(input){return matcher(input,"[type=email],["+kendo.attr("type")+"=email]",emailRegExp);},url:function(input){return matcher(input,"[type=url],["+kendo.attr("type")+"=url]",urlRegExp);},date:function(input){if(input.filter("[type^=date],["+kendo.attr("type")+"=date]").length&&input.val()!==""){return kendo.parseDate(input.val(),input.attr(kendo.attr("format")))!==null;}return true;}},validateOnBlur:true},destroy:function(){Widget.fn.destroy.call(this);this.element.off(NS);},_submit:function(e){if(!this.validate()){e.stopPropagation();e.stopImmediatePropagation();e.preventDefault();return false;}return true;},_attachEvents:function(){var that=this;if(that.element.is(FORM)){that.element.on("submit"+NS,proxy(that._submit,that));}if(that.options.validateOnBlur){if(!that.element.is(INPUTSELECTOR)){that.element.on(BLUR+NS,INPUTSELECTOR,function(){that.validateInput($(this));});}else{that.element.on(BLUR+NS,function(){that.validateInput(that.element);});}}},validate:function(){var that=this,inputs,idx,invalid=false,length;that._errors={};if(!that.element.is(INPUTSELECTOR)){inputs=that.element.find(INPUTSELECTOR);for(idx=0,length=inputs.length;idx<length;idx++){if(!that.validateInput(inputs.eq(idx))){invalid=true;}}return!invalid;}return that.validateInput(that.element);},validateInput:function(input){input=$(input);var that=this,template=that._errorTemplate,result=that._checkValidity(input),valid=result.valid,className="."+INVALIDMSG,fieldName=(input.attr(NAME)||""),lbl=that._findMessageContainer(fieldName).add(input.next(className)).hide(),messageText;input.removeAttr("aria-invalid");if(!valid){messageText=that._extractMessage(input,result.key);that._errors[fieldName]=messageText;var messageLabel=$(template({message:decode(messageText)}));that._decorateMessageContainer(messageLabel,fieldName);if(!lbl.replaceWith(messageLabel).length){messageLabel.insertAfter(input);}messageLabel.show();input.attr("aria-invalid",true);}input.toggleClass(INVALIDINPUT,!valid);return valid;},_findMessageContainer:function(fieldName){var locators=kendo.ui.validator.messageLocators,name,containers=this.element.find("."+INVALIDMSG+"["+kendo.attr("for")+"="+fieldName.replace(nameSpecialCharRegExp,"\\$1")+"]");for(name in locators){containers=containers.add(locators[name].locate(this.element,fieldName));}return containers;},_decorateMessageContainer:function(container,fieldName){var locators=kendo.ui.validator.messageLocators,name;container.addClass(INVALIDMSG).attr(kendo.attr("for"),fieldName||"");for(name in locators){locators[name].decorate(container,fieldName);}container.attr("role","alert");},_extractMessage:function(input,ruleKey){var that=this,customMessage=that.options.messages[ruleKey],fieldName=input.attr(NAME);customMessage=$.isFunction(customMessage)?customMessage(input):customMessage;return kendo.format(input.attr(kendo.attr(ruleKey+"-msg"))||input.attr("validationMessage")||input.attr("title")||customMessage||"",fieldName,input.attr(ruleKey));},_checkValidity:function(input){var rules=this.options.rules,rule;for(rule in rules){if(!rules[rule](input)){return{valid:false,key:rule};}}return{valid:true};},errors:function(){var results=[],errors=this._errors,error;for(error in errors){results.push(errors[error]);}return results;}});kendo.ui.plugin(Validator);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,support=kendo.support,pointers=support.pointers,document=window.document,SURFACE=$(document.documentElement),Class=kendo.Class,Observable=kendo.Observable,now=$.now,extend=$.extend,OS=support.mobileOS,invalidZeroEvents=OS&&OS.android,PRESS="press",START="start",MOVE="move",END="end",CANCEL="cancel",TAP="tap",GESTURESTART="gesturestart",GESTURECHANGE="gesturechange",GESTUREEND="gestureend",GESTURETAP="gesturetap";function preventTrigger(e){e.preventDefault();var target=$(e.currentTarget),parent=target.closest(".k-widget").parent();if(!parent[0]){parent=target.parent();}parent.trigger($.Event(e.type,{target:target}));}function touchDelta(touch1,touch2){var x1=touch1.x.location,y1=touch1.y.location,x2=touch2.x.location,y2=touch2.y.location,dx=x1-x2,dy=y1-y2;return{center:{x:(x1+x2)/2,y:(y1+y2)/2},distance:Math.sqrt(dx*dx+dy*dy)};}function getTouches(e){var touches=[],originalEvent=e.originalEvent,idx=0,length,changedTouches,touch;if(e.api){touches.push({id:2,event:e,target:e.target,location:e});}else if(e.type.match(/touch/)){changedTouches=originalEvent?originalEvent.changedTouches:[];for(length=changedTouches.length;idx<length;idx++){touch=changedTouches[idx];touches.push({location:touch,event:e,target:touch.target,id:touch.identifier});}}else if(support.pointers){touches.push({location:originalEvent,event:e,target:e.target,id:originalEvent.pointerId});}else{touches.push({id:1,event:e,target:e.target,location:e});}return touches;}var TouchAxis=Class.extend({init:function(axis,location){var that=this;that.axis=axis;that._updateLocationData(location);that.startLocation=that.location;that.velocity=that.delta=0;that.timeStamp=now();},move:function(location){var that=this,offset=location["page"+that.axis],timeStamp=now(),timeDelta=(timeStamp-that.timeStamp)||1;if(!offset&&invalidZeroEvents){return;}that.delta=offset-that.location;that._updateLocationData(location);that.initialDelta=offset-that.startLocation;that.velocity=that.delta/timeDelta;that.timeStamp=timeStamp;},_updateLocationData:function(location){var that=this,axis=that.axis;that.location=location["page"+axis];that.client=location["client"+axis];that.screen=location["screen"+axis];}});var Touch=Class.extend({init:function(userEvents,target,touchInfo){var that=this;extend(that,{x:new TouchAxis("X",touchInfo.location),y:new TouchAxis("Y",touchInfo.location),userEvents:userEvents,target:target,currentTarget:touchInfo.currentTarget,id:touchInfo.id,_moved:false,_finished:false});that._trigger(PRESS,touchInfo);},move:function(touchInfo){var that=this;if(that._finished){return;}that.x.move(touchInfo.location);that.y.move(touchInfo.location);if(!that._moved){if(that._withinIgnoreThreshold()){return;}if(!UserEvents.current||UserEvents.current===that.userEvents){that._start(touchInfo);}else{return that.dispose();}}if(!that._finished){that._trigger(MOVE,touchInfo);}},end:function(touchInfo){var that=this;that.endTime=now();if(that._finished){return;}if(that._moved){that._trigger(END,touchInfo);}else{that._trigger(TAP,touchInfo);}that.dispose();},dispose:function(){var that=this,userEvents=that.userEvents,activeTouches=userEvents.touches;that._finished=true;activeTouches.splice($.inArray(that,activeTouches),1);},skip:function(){this.dispose();},cancel:function(){this.dispose();},isMoved:function(){return this._moved;},_start:function(touchInfo){this.startTime=now();this._moved=true;this._trigger(START,touchInfo);},_trigger:function(name,touchInfo){var that=this,jQueryEvent=touchInfo.event,data={touch:that,x:that.x,y:that.y,target:that.target,event:jQueryEvent};if(that.userEvents.notify(name,data)){jQueryEvent.preventDefault();}},_withinIgnoreThreshold:function(){var xDelta=this.x.initialDelta,yDelta=this.y.initialDelta;return Math.sqrt(xDelta*xDelta+yDelta*yDelta)<=this.userEvents.threshold;}});var UserEvents=Observable.extend({init:function(element,options){var that=this,filter;options=options||{};filter=that.filter=options.filter;that.threshold=options.threshold||0;that.touches=[];that._maxTouches=options.multiTouch?2:1;element=$(element).handler(that);Observable.fn.init.call(that);extend(that,{element:element,surface:options.global?SURFACE:options.surface||element,stopPropagation:options.stopPropagation,pressed:false});that.surface.handler(that).on("move","_move").on("up cancel","_end");element.on("down",filter,"_start");if(pointers){element.css("-ms-touch-action","pinch-zoom double-tap-zoom");}if(options.preventDragEvent){element.on("dragstart",kendo.preventDefault);}if(!options.allowSelection){element.on("mousedown selectstart",filter,preventTrigger);}if(support.eventCapture){var downEvents=kendo.eventMap.up.split(" "),idx=0,length=downEvents.length,surfaceElement=that.surface[0],preventIfMoving=function(e){if(that._isMoved()){e.preventDefault();}};for(;idx<length;idx++){surfaceElement.addEventListener(downEvents[idx],preventIfMoving,true);}}that.bind([PRESS,TAP,START,MOVE,END,CANCEL,GESTURESTART,GESTURECHANGE,GESTUREEND,GESTURETAP],options);},destroy:function(){this.element.kendoDestroy();this.surface.kendoDestroy();this._disposeAll();},capture:function(){UserEvents.current=this;},cancel:function(){this._disposeAll();this.trigger(CANCEL);},notify:function(eventName,data){var that=this,touches=that.touches;if(this._isMultiTouch()){switch(eventName){case MOVE:eventName=GESTURECHANGE;break;case END:eventName=GESTUREEND;break;case TAP:eventName=GESTURETAP;break;}$.extend(data,{touches:touches},touchDelta(touches[0],touches[1]));}return this.trigger(eventName,data);},press:function(x,y,target){this._apiCall("_start",x,y,target);},move:function(x,y){this._apiCall("_move",x,y);},end:function(x,y){this._apiCall("_end",x,y);},_isMultiTouch:function(){return this.touches.length>1;},_maxTouchesReached:function(){return this.touches.length>=this._maxTouches;},_disposeAll:function(){$.each(this.touches,function(){this.dispose();});},_isMoved:function(){return $.grep(this.touches,function(touch){return touch.isMoved();}).length;},_isPressed:function(){return this.touches.length;},_start:function(e){var that=this,idx=0,filter=that.filter,target,touches=getTouches(e),length=touches.length,touch;if(that._maxTouchesReached()){return;}UserEvents.current=null;that.currentTarget=e.currentTarget;if(that.stopPropagation){e.stopPropagation();}for(;idx<length;idx++){if(that._maxTouchesReached()){break;}touch=touches[idx];target=$(touch.target);if(filter){target=target.is(filter)?target:target.closest(filter);}else{target=that.element;}if(!target.length){continue;}that.touches.push(new Touch(that,target,touch));if(that._isMultiTouch()){that.notify("gesturestart",{});}}},_move:function(e){this._eachTouch("move",e);},_end:function(e){this._eachTouch("end",e);},_eachTouch:function(methodName,e){var that=this,dict={},touches=getTouches(e),activeTouches=that.touches,idx,touch,touchInfo,matchingTouch;for(idx=0;idx<activeTouches.length;idx++){touch=activeTouches[idx];dict[touch.id]=touch;}for(idx=0;idx<touches.length;idx++){touchInfo=touches[idx];matchingTouch=dict[touchInfo.id];if(matchingTouch){matchingTouch[methodName](touchInfo);}}},_apiCall:function(type,x,y,target){this[type]({api:true,pageX:x,pageY:y,target:target||this.element,stopPropagation:$.noop,preventDefault:$.noop});}});kendo.getTouches=getTouches;kendo.touchDelta=touchDelta;kendo.UserEvents=UserEvents;})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,support=kendo.support,document=window.document,Class=kendo.Class,Widget=kendo.ui.Widget,Observable=kendo.Observable,UserEvents=kendo.UserEvents,proxy=$.proxy,extend=$.extend,getOffset=kendo.getOffset,draggables={},dropTargets={},dropAreas={},lastDropTarget,OS=support.mobileOS,invalidZeroEvents=OS&&OS.android,mobileChrome=(invalidZeroEvents&&OS.browser=="chrome"),KEYUP="keyup",CHANGE="change",DRAGSTART="dragstart",DRAG="drag",DRAGEND="dragend",DRAGCANCEL="dragcancel",DRAGENTER="dragenter",DRAGLEAVE="dragleave",DROP="drop";function contains(parent,child){try{return $.contains(parent,child)||parent==child;}catch(e){return false;}}function elementUnderCursor(e){if(mobileChrome){return document.elementFromPoint(e.x.screen,e.y.screen);}else{return document.elementFromPoint(e.x.client,e.y.client);}}function numericCssPropery(element,property){return parseInt(element.css(property),10)||0;}function within(value,range){return Math.min(Math.max(value,range.min),range.max);}function containerBoundaries(container,element){var offset=container.offset(),minX=offset.left+numericCssPropery(container,"borderLeftWidth")+numericCssPropery(container,"paddingLeft"),minY=offset.top+numericCssPropery(container,"borderTopWidth")+numericCssPropery(container,"paddingTop"),maxX=minX+container.width()-element.outerWidth(true),maxY=minY+container.height()-element.outerHeight(true);return{x:{min:minX,max:maxX},y:{min:minY,max:maxY}};}function checkTarget(target,targets,areas){var theTarget,theFilter,i=0,targetLen=targets&&targets.length,areaLen=areas&&areas.length;while(target&&target.parentNode){for(i=0;i<targetLen;i++){theTarget=targets[i];if(theTarget.element[0]===target){return{target:theTarget,targetElement:target};}}for(i=0;i<areaLen;i++){theFilter=areas[i];if(support.matchesSelector.call(target,theFilter.options.filter)){return{target:theFilter,targetElement:target};}}target=target.parentNode;}return undefined;}var TapCapture=Observable.extend({init:function(element,options){var that=this,domElement=element[0];that.capture=false;$.each(kendo.eventMap.down.split(" "),function(){domElement.addEventListener(this,proxy(that._press,that),true);});$.each(kendo.eventMap.up.split(" "),function(){domElement.addEventListener(this,proxy(that._release,that),true);});Observable.fn.init.call(that);that.bind(["press","release"],options||{});},captureNext:function(){this.capture=true;},cancelCapture:function(){this.capture=false;},_press:function(e){var that=this;that.trigger("press");if(that.capture){e.preventDefault();}},_release:function(e){var that=this;that.trigger("release");if(that.capture){e.preventDefault();that.cancelCapture();}}});var PaneDimension=Observable.extend({init:function(options){var that=this;Observable.fn.init.call(that);that.forcedEnabled=false;$.extend(that,options);that.scale=1;that.max=0;if(that.horizontal){that.measure="width";that.scrollSize="scrollWidth";that.axis="x";}else{that.measure="height";that.scrollSize="scrollHeight";that.axis="y";}},outOfBounds:function(offset){return offset>this.max||offset<this.min;},forceEnabled:function(){this.forcedEnabled=true;},getSize:function(){return this.container[this.measure]();},getTotal:function(){return this.element[0][this.scrollSize];},rescale:function(scale){this.scale=scale;},update:function(silent){var that=this,total=that.getTotal(),scaledTotal=total*that.scale,size=that.getSize();that.size=size;that.total=scaledTotal;that.min=Math.min(that.max,that.size-scaledTotal);that.minScale=that.size/total;that.enabled=that.forcedEnabled||(scaledTotal>size);if(!silent){that.trigger(CHANGE,that);}}});var PaneDimensions=Observable.extend({init:function(options){var that=this,refresh=proxy(that.refresh,that);Observable.fn.init.call(that);that.x=new PaneDimension(extend({horizontal:true},options));that.y=new PaneDimension(extend({horizontal:false},options));that.forcedMinScale=options.minScale;that.bind(CHANGE,options);kendo.onResize(refresh);},rescale:function(newScale){this.x.rescale(newScale);this.y.rescale(newScale);this.refresh();},refresh:function(){var that=this;that.x.update();that.y.update();that.enabled=that.x.enabled||that.y.enabled;that.minScale=that.forcedMinScale||Math.max(that.x.minScale,that.y.minScale);that.trigger(CHANGE);}});var PaneAxis=Observable.extend({init:function(options){var that=this;extend(that,options);Observable.fn.init.call(that);},dragMove:function(delta){var that=this,dimension=that.dimension,axis=that.axis,movable=that.movable,position=movable[axis]+delta;if(!dimension.enabled){return;}if((position<dimension.min&&delta<0)||(position>dimension.max&&delta>0)){delta*=that.resistance;}movable.translateAxis(axis,delta);that.trigger(CHANGE,that);}});var Pane=Class.extend({init:function(options){var that=this,x,y,resistance,movable;extend(that,{elastic:true},options);resistance=that.elastic?0.5:0;movable=that.movable;that.x=x=new PaneAxis({axis:"x",dimension:that.dimensions.x,resistance:resistance,movable:movable});that.y=y=new PaneAxis({axis:"y",dimension:that.dimensions.y,resistance:resistance,movable:movable});that.userEvents.bind(["move","end","gesturestart","gesturechange"],{gesturestart:function(e){that.gesture=e;},gesturechange:function(e){var previousGesture=that.gesture,previousCenter=previousGesture.center,center=e.center,scaleDelta=e.distance/previousGesture.distance,minScale=that.dimensions.minScale,coordinates;if(movable.scale<=minScale&&scaleDelta<1){scaleDelta+=(1-scaleDelta)*0.8;}coordinates={x:(movable.x-previousCenter.x)*scaleDelta+center.x-movable.x,y:(movable.y-previousCenter.y)*scaleDelta+center.y-movable.y};movable.scaleWith(scaleDelta);x.dragMove(coordinates.x);y.dragMove(coordinates.y);that.dimensions.rescale(movable.scale);that.gesture=e;},move:function(e){if(x.dimension.enabled||y.dimension.enabled){x.dragMove(e.x.delta);y.dragMove(e.y.delta);e.preventDefault();}else{e.touch.skip();}},end:function(e){e.preventDefault();}});}});var TRANSFORM_STYLE=support.transitions.prefix+"Transform",round=Math.round,translate;if(support.hasHW3D){translate=function(x,y,scale){return"translate3d("+round(x)+"px,"+round(y)+"px,0) scale("+scale+")";};}else{translate=function(x,y,scale){return"translate("+round(x)+"px,"+round(y)+"px) scale("+scale+")";};}var Movable=Observable.extend({init:function(element){var that=this;Observable.fn.init.call(that);that.element=$(element);that.element[0].style.webkitTransformOrigin="left top";that.x=0;that.y=0;that.scale=1;that._saveCoordinates(translate(that.x,that.y,that.scale));},translateAxis:function(axis,by){this[axis]+=by;this.refresh();},scaleTo:function(scale){this.scale=scale;this.refresh();},scaleWith:function(scaleDelta){this.scale*=scaleDelta;this.refresh();},translate:function(coordinates){this.x+=coordinates.x;this.y+=coordinates.y;this.refresh();},moveAxis:function(axis,value){this[axis]=value;this.refresh();},moveTo:function(coordinates){extend(this,coordinates);this.refresh();},refresh:function(){var that=this,newCoordinates=translate(that.x,that.y,that.scale);if(newCoordinates!=that.coordinates){that.element[0].style[TRANSFORM_STYLE]=newCoordinates;that._saveCoordinates(newCoordinates);that.trigger(CHANGE);}},_saveCoordinates:function(coordinates){this.coordinates=coordinates;}});var DropTarget=Widget.extend({init:function(element,options){var that=this;Widget.fn.init.call(that,element,options);var group=that.options.group;if(!(group in dropTargets)){dropTargets[group]=[that];}else{dropTargets[group].push(that);}},events:[DRAGENTER,DRAGLEAVE,DROP],options:{name:"DropTarget",group:"default"},destroy:function(){var groupName=this.options.group,group=dropTargets[groupName],i;if(group.length>1){Widget.fn.destroy.call(this);for(i=0;i<group.length;i++){if(group[i]==this){group.splice(i,1);break;}}}else{DropTarget.destroyGroup(groupName);}},_trigger:function(eventName,e){var that=this,draggable=draggables[that.options.group];if(draggable){return that.trigger(eventName,extend({},e.event,{draggable:draggable,dropTarget:e.dropTarget}));}},_over:function(e){this._trigger(DRAGENTER,e);},_out:function(e){this._trigger(DRAGLEAVE,e);},_drop:function(e){var that=this,draggable=draggables[that.options.group];if(draggable){draggable.dropped=!that._trigger(DROP,e);}}});DropTarget.destroyGroup=function(groupName){var group=dropTargets[groupName],i;if(group){for(i=0;i<group.length;i++){Widget.fn.destroy.call(group[i]);}group.length=0;delete dropTargets[groupName];}};DropTarget._cache=dropTargets;var DropTargetArea=DropTarget.extend({init:function(element,options){var that=this;Widget.fn.init.call(that,element,options);var group=that.options.group;if(!(group in dropAreas)){dropAreas[group]=[that];}else{dropAreas[group].push(that);}},options:{name:"DropTargetArea",group:"default",filter:null}});var Draggable=Widget.extend({init:function(element,options){var that=this;Widget.fn.init.call(that,element,options);that.userEvents=new UserEvents(that.element,{global:true,stopPropagation:true,filter:that.options.filter,threshold:that.options.distance,start:proxy(that._start,that),move:proxy(that._drag,that),end:proxy(that._end,that),cancel:proxy(that._cancel,that)});that._afterEndHandler=proxy(that._afterEnd,that);that.captureEscape=function(e){if(e.keyCode===kendo.keys.ESC){that._trigger(DRAGCANCEL,{event:e});that.userEvents.cancel();}};},events:[DRAGSTART,DRAG,DRAGEND,DRAGCANCEL],options:{name:"Draggable",distance:5,group:"default",cursorOffset:null,axis:null,container:null,dropped:false},_updateHint:function(e){var that=this,coordinates,options=that.options,boundaries=that.boundaries,axis=options.axis,cursorOffset=that.options.cursorOffset;if(cursorOffset){coordinates={left:e.x.location+cursorOffset.left,top:e.y.location+cursorOffset.top};}else{that.hintOffset.left+=e.x.delta;that.hintOffset.top+=e.y.delta;coordinates=$.extend({},that.hintOffset);}if(boundaries){coordinates.top=within(coordinates.top,boundaries.y);coordinates.left=within(coordinates.left,boundaries.x);}if(axis==="x"){delete coordinates.top;}else if(axis==="y"){delete coordinates.left;}that.hint.css(coordinates);},_start:function(e){var that=this,options=that.options,container=options.container,hint=options.hint;that.currentTarget=e.target;that.currentTargetOffset=getOffset(that.currentTarget);if(hint){that.hint=$.isFunction(hint)?$(hint(that.currentTarget)):hint;var offset=getOffset(that.currentTarget);that.hintOffset=offset;that.hint.css({position:"absolute",zIndex:20000,left:offset.left,top:offset.top}).appendTo(document.body);}draggables[options.group]=that;that.dropped=false;if(container){that.boundaries=containerBoundaries(container,that.hint);}if(that._trigger(DRAGSTART,e)){that.userEvents.cancel();that._afterEnd();}$(document).on(KEYUP,that.captureEscape);},_drag:function(e){var that=this;e.preventDefault();that._withDropTarget(e,function(target,targetElement){if(!target){if(lastDropTarget){lastDropTarget._trigger(DRAGLEAVE,extend(e,{dropTarget:$(lastDropTarget.targetElement)}));lastDropTarget=null;}return;}if(lastDropTarget){if(targetElement===lastDropTarget.targetElement){return;}lastDropTarget._trigger(DRAGLEAVE,extend(e,{dropTarget:$(lastDropTarget.targetElement)}));}target._trigger(DRAGENTER,extend(e,{dropTarget:$(targetElement)}));lastDropTarget=extend(target,{targetElement:targetElement});});that._trigger(DRAG,e);if(that.hint){that._updateHint(e);}},_end:function(e){var that=this;that._withDropTarget(e,function(target,targetElement){if(target){target._drop(extend({},e,{dropTarget:$(targetElement)}));lastDropTarget=null;}});that._trigger(DRAGEND,e);that._cancel(e.event);},_cancel:function(e){var that=this;if(that.hint&&!that.dropped){that.hint.animate(that.currentTargetOffset,"fast",that._afterEndHandler);}else{that._afterEnd();}},_trigger:function(eventName,e){var that=this;return that.trigger(eventName,extend({},e.event,{x:e.x,y:e.y,currentTarget:that.currentTarget,dropTarget:e.dropTarget}));},_withDropTarget:function(e,callback){var that=this,target,result,options=that.options,targets=dropTargets[options.group],areas=dropAreas[options.group];if(targets&&targets.length||areas&&areas.length){target=elementUnderCursor(e);if(that.hint&&contains(that.hint[0],target)){that.hint.hide();target=elementUnderCursor(e);if(!target){target=elementUnderCursor(e);}that.hint.show();}result=checkTarget(target,targets,areas);if(result){callback(result.target,result.targetElement);}else{callback();}}},destroy:function(){var that=this;Widget.fn.destroy.call(that);that._afterEnd();that.userEvents.destroy();},_afterEnd:function(){var that=this;if(that.hint){that.hint.remove();}delete draggables[that.options.group];that.trigger("destroy");$(document).off(KEYUP,that.captureEscape);}});kendo.ui.plugin(DropTarget);kendo.ui.plugin(DropTargetArea);kendo.ui.plugin(Draggable);kendo.TapCapture=TapCapture;kendo.containerBoundaries=containerBoundaries;extend(kendo.ui,{Pane:Pane,PaneDimensions:PaneDimensions,Movable:Movable});})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,mobile=kendo.mobile,fx=kendo.fx,ui=mobile.ui,proxy=$.proxy,extend=$.extend,Widget=ui.Widget,Class=kendo.Class,Movable=kendo.ui.Movable,Pane=kendo.ui.Pane,PaneDimensions=kendo.ui.PaneDimensions,Transition=fx.Transition,Animation=fx.Animation,abs=Math.abs,SNAPBACK_DURATION=500,SCROLLBAR_OPACITY=0.7,FRICTION=0.93,OUT_OF_BOUNDS_FRICTION=0.5,RELEASECLASS="km-scroller-release",REFRESHCLASS="km-scroller-refresh",PULL="pull",CHANGE="change",RESIZE="resize",SCROLL="scroll";var ZoomSnapBack=Animation.extend({init:function(options){var that=this;Animation.fn.init.call(that);extend(that,options);that.userEvents.bind("gestureend",proxy(that.start,that));that.tapCapture.bind("press",proxy(that.cancel,that));},done:function(){return this.dimensions.minScale-this.movable.scale<0.01;},tick:function(){var movable=this.movable;movable.scaleWith(1.1);this.dimensions.rescale(movable.scale);},onEnd:function(){var movable=this.movable;movable.scaleTo(this.dimensions.minScale);this.dimensions.rescale(movable.scale);}});var DragInertia=Animation.extend({init:function(options){var that=this;Animation.fn.init.call(that);extend(that,options,{transition:new Transition({axis:options.axis,movable:options.movable,onEnd:function(){that._end();}})});that.tapCapture.bind("press",function(){that.cancel();});that.userEvents.bind("end",proxy(that.start,that));that.userEvents.bind("gestureend",proxy(that.start,that));that.userEvents.bind("tap",proxy(that.onEnd,that));},onCancel:function(){this.transition.cancel();},freeze:function(location){var that=this;that.cancel();that._moveTo(location);},onEnd:function(){var that=this;if(that._outOfBounds()){that._snapBack();}else{that._end();}},done:function(){return abs(this.velocity)<1;},start:function(e){var that=this;if(!that.dimension.enabled){return;}if(that._outOfBounds()){that._snapBack();}else{that.velocity=e.touch[that.axis].velocity*16;if(that.velocity){that.tapCapture.captureNext();Animation.fn.start.call(that);}}},tick:function(){var that=this,dimension=that.dimension,friction=that._outOfBounds()?OUT_OF_BOUNDS_FRICTION:FRICTION,delta=(that.velocity*=friction),location=that.movable[that.axis]+delta;if(!that.elastic&&dimension.outOfBounds(location)){location=Math.max(Math.min(location,dimension.max),dimension.min);that.velocity=0;}that.movable.moveAxis(that.axis,location);},_end:function(){this.tapCapture.cancelCapture();this.end();},_outOfBounds:function(){return this.dimension.outOfBounds(this.movable[this.axis]);},_snapBack:function(){var that=this,dimension=that.dimension,snapBack=that.movable[that.axis]>dimension.max?dimension.max:dimension.min;that._moveTo(snapBack);},_moveTo:function(location){this.transition.moveTo({location:location,duration:SNAPBACK_DURATION,ease:Transition.easeOutExpo});}});var ScrollBar=Class.extend({init:function(options){var that=this,horizontal=options.axis==="x",element=$('<div class="km-touch-scrollbar km-'+(horizontal?"horizontal":"vertical")+'-scrollbar" />');extend(that,options,{element:element,elementSize:0,movable:new Movable(element),scrollMovable:options.movable,size:horizontal?"width":"height"});that.scrollMovable.bind(CHANGE,proxy(that._move,that));that.container.append(element);},_move:function(){var that=this,axis=that.axis,dimension=that.dimension,paneSize=dimension.size,scrollMovable=that.scrollMovable,sizeRatio=paneSize/dimension.total,position=Math.round(-scrollMovable[axis]*sizeRatio),size=Math.round(paneSize*sizeRatio);if(position+size>paneSize){size=paneSize-position;}else if(position<0){size+=position;position=0;}if(that.elementSize!=size){that.element.css(that.size,size+"px");that.elementSize=size;}that.movable.moveAxis(axis,position);},show:function(){this.element.css({opacity:SCROLLBAR_OPACITY,visibility:"visible"});},hide:function(){this.element.css({opacity:0});}});var Scroller=Widget.extend({init:function(element,options){var that=this;Widget.fn.init.call(that,element,options);element=that.element;element.css("overflow","hidden").addClass("km-scroll-wrapper").wrapInner('<div class="km-scroll-container"/>').prepend('<div class="km-scroll-header"/>');var inner=element.children().eq(1),tapCapture=new kendo.TapCapture(element),movable=new Movable(inner),dimensions=new PaneDimensions({element:inner,container:element,forcedEnabled:that.options.zoom,change:function(){that.trigger(RESIZE);}}),userEvents=new kendo.UserEvents(element,{allowSelection:true,preventDragEvent:true,multiTouch:that.options.zoom,start:function(e){dimensions.refresh();var velocityX=abs(e.x.velocity),velocityY=abs(e.y.velocity);if(dimensions.x.enabled&&velocityX*2>=velocityY||dimensions.y.enabled&&velocityY*2>=velocityX){userEvents.capture();}else{userEvents.cancel();}}}),pane=new Pane({movable:movable,dimensions:dimensions,userEvents:userEvents,elastic:that.options.elastic}),zoomSnapBack=new ZoomSnapBack({movable:movable,dimensions:dimensions,userEvents:userEvents,tapCapture:tapCapture});movable.bind(CHANGE,function(){that.scrollTop=-movable.y;that.scrollLeft=-movable.x;that.trigger(SCROLL,{scrollTop:that.scrollTop,scrollLeft:that.scrollLeft});});extend(that,{movable:movable,dimensions:dimensions,zoomSnapBack:zoomSnapBack,userEvents:userEvents,pane:pane,tapCapture:tapCapture,pulled:false,scrollElement:inner,fixedContainer:element.children().first()});that._initAxis("x");that._initAxis("y");dimensions.refresh();if(that.options.pullToRefresh){that._initPullToRefresh();}kendo.onResize($.proxy(that.reset,that));},scrollHeight:function(){return this.scrollElement[0].scrollHeight;},scrollWidth:function(){return this.scrollElement[0].scrollWidth;},options:{name:"Scroller",zoom:false,pullOffset:140,elastic:true,pullTemplate:"Pull to refresh",releaseTemplate:"Release to refresh",refreshTemplate:"Refreshing"},events:[PULL,SCROLL,RESIZE],setOptions:function(options){var that=this;Widget.fn.setOptions.call(that,options);if(options.pullToRefresh){that._initPullToRefresh();}},reset:function(){this.movable.moveTo({x:0,y:0});},scrollTo:function(x,y){this.movable.moveTo({x:x,y:y});},pullHandled:function(){var that=this;that.refreshHint.removeClass(REFRESHCLASS);that.hintContainer.html(that.pullTemplate({}));that.yinertia.onEnd();that.xinertia.onEnd();},destroy:function(){Widget.fn.destroy.call(this);this.userEvents.destroy();},_initPullToRefresh:function(){var that=this;that.dimensions.y.forceEnabled();that.pullTemplate=kendo.template(that.options.pullTemplate);that.releaseTemplate=kendo.template(that.options.releaseTemplate);that.refreshTemplate=kendo.template(that.options.refreshTemplate);that.scrollElement.prepend('<span class="km-scroller-pull"><span class="km-icon"></span><span class="km-template">'+that.pullTemplate({})+'</span></span>');that.refreshHint=that.scrollElement.children().first();that.hintContainer=that.refreshHint.children(".km-template");that.pane.y.bind("change",proxy(that._paneChange,that));that.userEvents.bind("end",proxy(that._dragEnd,that));},_dragEnd:function(){var that=this;if(!that.pulled){return;}that.pulled=false;that.refreshHint.removeClass(RELEASECLASS).addClass(REFRESHCLASS);that.hintContainer.html(that.refreshTemplate({}));that.trigger("pull");that.yinertia.freeze(that.options.pullOffset/2);},_paneChange:function(){var that=this;if(that.movable.y/OUT_OF_BOUNDS_FRICTION>that.options.pullOffset){if(!that.pulled){that.pulled=true;that.refreshHint.removeClass(REFRESHCLASS).addClass(RELEASECLASS);that.hintContainer.html(that.releaseTemplate({}));}}else if(that.pulled){that.pulled=false;that.refreshHint.removeClass(RELEASECLASS);that.hintContainer.html(that.pullTemplate({}));}},_initAxis:function(axis){var that=this,movable=that.movable,dimension=that.dimensions[axis],tapCapture=that.tapCapture,scrollBar=new ScrollBar({axis:axis,movable:movable,dimension:dimension,container:that.element}),inertia=new DragInertia({axis:axis,movable:movable,tapCapture:tapCapture,userEvents:that.userEvents,dimension:dimension,elastic:that.options.elastic,end:function(){scrollBar.hide();}});that[axis+"inertia"]=inertia;that.pane[axis].bind(CHANGE,function(){scrollBar.show();});}});ui.plugin(Scroller);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,Widget=kendo.ui.Widget,proxy=$.proxy,NS=".kendoGroupable",indicatorTmpl=kendo.template('<div class="k-group-indicator" data-#=data.ns#field="${data.field}" data-#=data.ns#title="${data.title || ""}" data-#=data.ns#dir="${data.dir || "asc"}">'+'<a href="\\#" class="k-link">'+'<span class="k-icon k-si-arrow-${(data.dir || "asc") == "asc" ? "n" : "s"}">(sorted ${(data.dir || "asc") == "asc" ? "ascending": "descending"})</span>'+'${data.title ? data.title: data.field}'+'</a>'+'<a class="k-button k-button-icon k-button-bare">'+'<span class="k-icon k-group-delete"></span>'+'</a>'+'</div>',{useWithBlock:false}),hint=function(target){return $('<div class="k-header k-drag-clue" />').css({width:target.width(),paddingLeft:target.css("paddingLeft"),paddingRight:target.css("paddingRight"),lineHeight:target.height()+"px",paddingTop:target.css("paddingTop"),paddingBottom:target.css("paddingBottom")}).html(target.attr(kendo.attr("title"))||target.attr(kendo.attr("field"))).prepend('<span class="k-icon k-drag-status k-denied" />');},dropCue=$('<div class="k-grouping-dropclue"/>'),nameSpecialCharRegExp=/(\[|\]|\$|\.|\:|\+)/g;function dropCueOffsetTop(element){return element.position().top+3;}var Groupable=Widget.extend({init:function(element,options){var that=this,groupContainer,group=kendo.guid(),intializePositions=proxy(that._intializePositions,that),draggable,dropCuePositions=that._dropCuePositions=[];Widget.fn.init.call(that,element,options);draggable=that.options.draggable||new kendo.ui.Draggable(that.element,{filter:that.options.filter,hint:hint,group:group});groupContainer=that.groupContainer=$(that.options.groupContainer,that.element).kendoDropTarget({group:draggable.options.group,dragenter:function(e){if(that._canDrag(e.draggable.currentTarget)){e.draggable.hint.find(".k-drag-status").removeClass("k-denied").addClass("k-add");dropCue.css({top:dropCueOffsetTop(groupContainer),left:0}).appendTo(groupContainer);}},dragleave:function(e){e.draggable.hint.find(".k-drag-status").removeClass("k-add").addClass("k-denied");dropCue.remove();},drop:function(e){var targetElement=e.draggable.currentTarget,field=targetElement.attr(kendo.attr("field")),title=targetElement.attr(kendo.attr("title")),sourceIndicator=that.indicator(field),dropCuePositions=that._dropCuePositions,lastCuePosition=dropCuePositions[dropCuePositions.length-1],position;if(!targetElement.hasClass("k-group-indicator")&&!that._canDrag(targetElement)){return;}if(lastCuePosition){position=that._dropCuePosition(dropCue.offset().left+parseInt(lastCuePosition.element.css("marginLeft"),10)+parseInt(lastCuePosition.element.css("marginRight"),10));if(position&&that._canDrop($(sourceIndicator),position.element,position.left)){if(position.before){position.element.before(sourceIndicator||that.buildIndicator(field,title));}else{position.element.after(sourceIndicator||that.buildIndicator(field,title));}that._change();}}else{that.groupContainer.append(that.buildIndicator(field,title));that._change();}}}).kendoDraggable({filter:"div.k-group-indicator",hint:hint,group:draggable.options.group,dragcancel:proxy(that._dragCancel,that),dragstart:function(e){var element=e.currentTarget,marginLeft=parseInt(element.css("marginLeft"),10),left=element.position().left-marginLeft;intializePositions();dropCue.css({top:dropCueOffsetTop(groupContainer),left:left}).appendTo(groupContainer);this.hint.find(".k-drag-status").removeClass("k-denied").addClass("k-add");},dragend:function(){that._dragEnd(this);},drag:proxy(that._drag,that)}).on("click"+NS,".k-button",function(e){e.preventDefault();that._removeIndicator($(this).parent());}).on("click"+NS,".k-link",function(e){var current=$(this).parent(),newIndicator=that.buildIndicator(current.attr(kendo.attr("field")),current.attr(kendo.attr("title")),current.attr(kendo.attr("dir"))=="asc"?"desc":"asc");current.before(newIndicator).remove();that._change();e.preventDefault();});draggable.bind(["dragend","dragcancel","dragstart","drag"],{dragend:function(){that._dragEnd(this);},dragcancel:proxy(that._dragCancel,that),dragstart:function(e){var element,marginRight,left;if(!that.options.allowDrag&&!that._canDrag(e.currentTarget)){e.preventDefault();return;}intializePositions();if(dropCuePositions.length){element=dropCuePositions[dropCuePositions.length-1].element;marginRight=parseInt(element.css("marginRight"),10);left=element.position().left+element.outerWidth()+marginRight;}else{left=0;}},drag:proxy(that._drag,that)});that.dataSource=that.options.dataSource;if(that.dataSource){that._refreshHandler=proxy(that.refresh,that);that.dataSource.bind("change",that._refreshHandler);}},refresh:function(){var that=this,dataSource=that.dataSource;that.groupContainer.empty().append($.map(dataSource.group()||[],function(item){var fieldName=item.field.replace(nameSpecialCharRegExp,"\\$1");var element=that.element.find(that.options.filter).filter("["+kendo.attr("field")+"="+fieldName+"]");return that.buildIndicator(item.field,element.attr(kendo.attr("title")),item.dir);}).join(""));that._invalidateGroupContainer();},destroy:function(){var that=this;Widget.fn.destroy.call(that);that.groupContainer.off(NS).kendoDraggable("destroy");if(that.dataSource&&that._refreshHandler){that.dataSource.unbind("change",that._refreshHandler);}},options:{name:"Groupable",filter:"th",messages:{empty:"برای گروه بندی ستون، ستون را انتخاب و به اینجا بکشید. "}},indicator:function(field){var indicators=$(".k-group-indicator",this.groupContainer);return $.grep(indicators,function(item){return $(item).attr(kendo.attr("field"))===field;})[0];},buildIndicator:function(field,title,dir){return indicatorTmpl({field:field,dir:dir,title:title,ns:kendo.ns});},descriptors:function(){var that=this,indicators=$(".k-group-indicator",that.groupContainer),aggregates,names,field,idx,length;aggregates=that.element.find(that.options.filter).map(function(){var cell=$(this),aggregate=cell.attr(kendo.attr("aggregates")),member=cell.attr(kendo.attr("field"));if(aggregate&&aggregate!==""){names=aggregate.split(",");aggregate=[];for(idx=0,length=names.length;idx<length;idx++){aggregate.push({field:member,aggregate:names[idx]});}}return aggregate;}).toArray();return $.map(indicators,function(item){item=$(item);field=item.attr(kendo.attr("field"));return{field:field,dir:item.attr(kendo.attr("dir")),aggregates:aggregates||[]};});},_removeIndicator:function(indicator){var that=this;indicator.remove();that._invalidateGroupContainer();that._change();},_change:function(){var that=this;if(that.dataSource){that.dataSource.group(that.descriptors());}},_dropCuePosition:function(position){var dropCuePositions=this._dropCuePositions;if(!dropCue.is(":visible")||dropCuePositions.length===0){return;}position=Math.ceil(position);var lastCuePosition=dropCuePositions[dropCuePositions.length-1],right=lastCuePosition.right,marginLeft=parseInt(lastCuePosition.element.css("marginLeft"),10),marginRight=parseInt(lastCuePosition.element.css("marginRight"),10);if(position>=right){position={left:lastCuePosition.element.position().left+lastCuePosition.element.outerWidth()+marginRight,element:lastCuePosition.element,before:false};}else{position=$.grep(dropCuePositions,function(item){return item.left<=position&&position<=item.right;})[0];if(position){position={left:position.element.position().left-marginLeft,element:position.element,before:true};}}return position;},_drag:function(event){var location=kendo.touchLocation(event),position=this._dropCuePosition(location.x);if(position){dropCue.css({left:position.left});}},_canDrag:function(element){var field=element.attr(kendo.attr("field"));return element.attr(kendo.attr("groupable"))!="false"&&field&&(element.hasClass("k-group-indicator")||!this.indicator(field));},_canDrop:function(source,target,position){var next=source.next();return source[0]!==target[0]&&(!next[0]||target[0]!==next[0]||position>next.position().left);},_dragEnd:function(draggable){var that=this,field=draggable.currentTarget.attr(kendo.attr("field")),sourceIndicator=that.indicator(field);if(draggable!==that.options.draggable&&!draggable.dropped&&sourceIndicator){that._removeIndicator($(sourceIndicator));}that._dragCancel();},_dragCancel:function(){dropCue.remove();this._dropCuePositions=[];},_intializePositions:function(){var that=this,indicators=$(".k-group-indicator",that.groupContainer),left;that._dropCuePositions=$.map(indicators,function(item){item=$(item);left=item.offset().left;return{left:parseInt(left,10),right:parseInt(left+item.outerWidth(),10),element:item};});},_invalidateGroupContainer:function(){var groupContainer=this.groupContainer;if(groupContainer.is(":empty")){groupContainer.html(this.options.messages.empty);}}});kendo.ui.plugin(Groupable);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,Widget=kendo.ui.Widget,CHANGE="change",KREORDERABLE="k-reorderable";function toggleHintClass(hint,denied){hint=$(hint);if(denied){hint.find(".k-drag-status").removeClass("k-add").addClass("k-denied");}else{hint.find(".k-drag-status").removeClass("k-denied").addClass("k-add");}}var Reorderable=Widget.extend({init:function(element,options){var that=this,draggable,group=kendo.guid()+"-reorderable";Widget.fn.init.call(that,element,options);element=that.element.addClass(KREORDERABLE);options=that.options;that.draggable=draggable=options.draggable||new kendo.ui.Draggable(element,{group:group,filter:options.filter,hint:options.hint});that.reorderDropCue=$('<div class="k-reorder-cue"><div class="k-icon k-i-arrow-s"></div><div class="k-icon k-i-arrow-n"></div></div>');element.find(draggable.options.filter).kendoDropTarget({group:draggable.options.group,dragenter:function(e){if(!that._draggable){return;}var dropTarget=this.element,same=dropTarget[0]===that._draggable[0];toggleHintClass(e.draggable.hint,same);if(!same){that.reorderDropCue.css({height:dropTarget.outerHeight(),top:element.offset().top,left:dropTarget.offset().left+(dropTarget.index()>that._draggable.index()?dropTarget.outerWidth():0)}).appendTo(document.body);}},dragleave:function(e){toggleHintClass(e.draggable.hint,true);that.reorderDropCue.remove();},drop:function(){if(!that._draggable){return;}var draggableElement=that._draggable[0],dropTarget=this.element[0],container;if(draggableElement!==dropTarget){container=element.find(draggable.options.filter);that.trigger(CHANGE,{element:that._draggable,oldIndex:container.index(draggableElement),newIndex:container.index(dropTarget)});}}});draggable.bind(["dragcancel","dragend","dragstart"],{dragcancel:function(){that.reorderDropCue.remove();that._draggable=null;},dragend:function(){that.reorderDropCue.remove();that._draggable=null;},dragstart:function(e){that._draggable=e.currentTarget;}});},options:{name:"Reorderable",filter:"*"},events:[CHANGE],destroy:function(){var that=this;Widget.fn.destroy.call(that);if(that.draggable){that.draggable.destroy();}kendo.destroy(that.element);}});kendo.ui.plugin(Reorderable);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,Widget=ui.Widget,proxy=$.proxy,isFunction=$.isFunction,extend=$.extend,HORIZONTAL="horizontal",VERTICAL="vertical",START="start",RESIZE="resize",RESIZEEND="resizeend";var Resizable=Widget.extend({init:function(element,options){var that=this;Widget.fn.init.call(that,element,options);that.orientation=that.options.orientation.toLowerCase()!=VERTICAL?HORIZONTAL:VERTICAL;that._positionMouse=that.orientation==HORIZONTAL?"x":"y";that._position=that.orientation==HORIZONTAL?"left":"top";that._sizingDom=that.orientation==HORIZONTAL?"outerWidth":"outerHeight";that.draggable=new ui.Draggable(element,{distance:0,filter:options.handle,drag:proxy(that._resize,that),dragcancel:proxy(that._cancel,that),dragstart:proxy(that._start,that),dragend:proxy(that._stop,that)});that.userEvents=that.draggable.userEvents;},events:[RESIZE,RESIZEEND,START],options:{name:"Resizable",orientation:HORIZONTAL},_max:function(e){var that=this,hintSize=that.hint?that.hint[that._sizingDom]():0,size=that.options.max;return isFunction(size)?size(e):size!==undefined?(that._initialElementPosition+size)-hintSize:size;},_min:function(e){var that=this,size=that.options.min;return isFunction(size)?size(e):size!==undefined?that._initialElementPosition+size:size;},_start:function(e){var that=this,hint=that.options.hint,el=$(e.currentTarget);that._initialElementPosition=el.position()[that._position];that._initialMousePosition=e[that._positionMouse].startLocation;if(hint){that.hint=isFunction(hint)?$(hint(el)):hint;that.hint.css({position:"absolute"}).css(that._position,that._initialElementPosition).appendTo(that.element);}that.trigger(START,e);that._maxPosition=that._max(e);that._minPosition=that._min(e);$(document.body).css("cursor",el.css("cursor"));},_resize:function(e){var that=this,handle=$(e.currentTarget),maxPosition=that._maxPosition,minPosition=that._minPosition,currentPosition=that._initialElementPosition+(e[that._positionMouse].location-that._initialMousePosition),position;position=minPosition!==undefined?Math.max(minPosition,currentPosition):currentPosition;that.position=position=maxPosition!==undefined?Math.min(maxPosition,position):position;if(that.hint){that.hint.toggleClass(that.options.invalidClass||"",position==maxPosition||position==minPosition).css(that._position,position);}that.resizing=true;that.trigger(RESIZE,extend(e,{position:position}));},_stop:function(e){var that=this;if(that.hint){that.hint.remove();}that.resizing=false;that.trigger(RESIZEEND,extend(e,{position:that.position}));$(document.body).css("cursor","");},_cancel:function(e){var that=this;if(that.hint){that.position=undefined;that.hint.css(that._position,that._initialElementPosition);that._stop(e);}},destroy:function(){var that=this;Widget.fn.destroy.call(that);if(that.draggable){that.draggable.destroy();}},press:function(target){if(!target){return;}var position=target.position(),that=this;that.userEvents.press(position.left,position.top,target[0]);that.targetPosition=position;that.target=target;},move:function(delta){var that=this,orientation=that._position,position=that.targetPosition,current=that.position;if(current===undefined){current=position[orientation];}position[orientation]=current+delta;that.userEvents.move(position.left,position.top);},end:function(){this.userEvents.end();this.target=this.position=undefined;}});kendo.ui.plugin(Resizable);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,proxy=$.proxy,DIR="data-dir",ASC="asc",SINGLE="single",FIELD="data-field",DESC="desc",NS=".kendoSortable",TLINK=".k-link",ARIASORT="aria-sort",Widget=kendo.ui.Widget;var Sortable=Widget.extend({init:function(element,options){var that=this,link;Widget.fn.init.call(that,element,options);that._refreshHandler=proxy(that.refresh,that);that.dataSource=that.options.dataSource.bind("change",that._refreshHandler);link=that.element.find(TLINK);if(!link[0]){link=that.element.wrapInner('<a class="k-link" href="#"/>').find(TLINK);}that.link=link;that.element.on("click"+NS,proxy(that._click,that));},options:{name:"Sortable",mode:SINGLE,allowUnsort:true},destroy:function(){var that=this;Widget.fn.destroy.call(that);that.element.off(NS);that.dataSource.unbind("change",that._refreshHandler);},refresh:function(){var that=this,sort=that.dataSource.sort()||[],idx,length,descriptor,dir,element=that.element,field=element.attr(FIELD);element.removeAttr(DIR);element.removeAttr(ARIASORT);for(idx=0,length=sort.length;idx<length;idx++){descriptor=sort[idx];if(field==descriptor.field){element.attr(DIR,descriptor.dir);}}dir=element.attr(DIR);element.find(".k-i-arrow-n,.k-i-arrow-s").remove();if(dir===ASC){$('<span class="k-icon k-i-arrow-n" />').appendTo(that.link);element.attr(ARIASORT,"ascending");}else if(dir===DESC){$('<span class="k-icon k-i-arrow-s" />').appendTo(that.link);element.attr(ARIASORT,"descending");}},_click:function(e){var that=this,element=that.element,field=element.attr(FIELD),dir=element.attr(DIR),options=that.options,sort=that.dataSource.sort()||[],idx,length;if(dir===ASC){dir=DESC;}else if(dir===DESC&&options.allowUnsort){dir=undefined;}else{dir=ASC;}if(options.mode===SINGLE){sort=[{field:field,dir:dir}];}else if(options.mode==="multiple"){for(idx=0,length=sort.length;idx<length;idx++){if(sort[idx].field===field){sort.splice(idx,1);break;}}sort.push({field:field,dir:dir});}e.preventDefault();that.dataSource.sort(sort);}});kendo.ui.plugin(Sortable);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,touch=kendo.support.touch,Widget=kendo.ui.Widget,proxy=$.proxy,MOUSEUP=touch?"touchend":"mouseup",MOUSEDOWN=touch?"touchstart":"mousedown",MOUSEMOVE=touch?"touchmove":"mousemove",SELECTED="k-state-selected",ACTIVE="k-state-selecting",SELECTABLE="k-selectable",SELECTSTART="selectstart",DOCUMENT=$(document),CHANGE="change",NS=".kendoSelectable",UNSELECTING="k-state-unselecting",supportEventDelegation=false;(function($){(function(){$('<div class="parent"><span /></div>').on("click",">*",function(){supportEventDelegation=true;}).find("span").click();})();})($);var Selectable=Widget.extend({init:function(element,options){var that=this;Widget.fn.init.call(that,element,options);that._marquee=$("<div class='k-marquee'></div>");that._lastActive=null;that._moveDelegate=proxy(that._move,that);that._upDelegate=proxy(that._up,that);that.element.addClass(SELECTABLE);that.element.on(MOUSEDOWN+NS,(!supportEventDelegation?"."+SELECTABLE+" ":"")+that.options.filter,proxy(that._down,that));},events:[CHANGE],options:{name:"Selectable",filter:">*",multiple:false},_collide:function(element,marqueePos){var pos=element.offset(),selectee={left:pos.left,top:pos.top,right:pos.left+element.outerWidth(),bottom:pos.top+element.outerHeight()};return(!(selectee.left>marqueePos.right||selectee.right<marqueePos.left||selectee.top>marqueePos.bottom||selectee.bottom<marqueePos.top));},_position:function(event){var pos=this._originalPosition,left=pos.x,top=pos.y,right=event.pageX,bottom=event.pageY,tmp;if(left>right){tmp=right;right=left;left=tmp;}if(top>bottom){tmp=bottom;bottom=top;top=tmp;}return{top:top,right:right,left:left,bottom:bottom};},_down:function(event){var that=this,selected,ctrlKey=event.ctrlKey,shiftKey=event.shiftKey,single=!that.options.multiple;that._downTarget=$(event.currentTarget);that._shiftPressed=shiftKey;if(that._downTarget.closest("."+SELECTABLE)[0]!==that.element[0]){return;}DOCUMENT.unbind(MOUSEUP,that._upDelegate).bind(MOUSEUP,that._upDelegate);that._originalPosition={x:event.pageX,y:event.pageY};if(!single&&$(event.target).is(":not(:input, a)")){DOCUMENT.unbind(MOUSEMOVE,that._moveDelegate).bind(MOUSEMOVE,that._moveDelegate).unbind(SELECTSTART,false).bind(SELECTSTART,false);if(!kendo.support.touch){event.preventDefault();}}if(!single){$("body").append(that._marquee);that._marquee.css({left:event.clientX+1,top:event.clientY+1,width:0,height:0});}selected=that._downTarget.hasClass(SELECTED);if(single||!(ctrlKey||shiftKey)){that.element.find(that.options.filter+"."+SELECTED).not(that._downTarget).removeClass(SELECTED);}if(ctrlKey){that._lastActive=that._downTarget;}if(selected&&(ctrlKey||shiftKey)){that._downTarget.addClass(SELECTED);if(!shiftKey){that._downTarget.addClass(UNSELECTING);}}else{if(!(kendo.support.touch&&single)){that._downTarget.addClass(ACTIVE);if(single&&that._downTarget.hasClass(SELECTED)){that._downTarget.removeClass(ACTIVE);}}}},_move:function(event){var that=this,pos=that._position(event),ctrlKey=event.ctrlKey,selectee,collide;that._marquee.css({left:pos.left,top:pos.top,width:pos.right-pos.left,height:pos.bottom-pos.top});that.element.find(that.options.filter).each(function(){selectee=$(this);collide=that._collide(selectee,pos);if(collide){if(selectee.hasClass(SELECTED)){if(that._downTarget[0]!==selectee[0]&&ctrlKey){selectee.removeClass(SELECTED).addClass(UNSELECTING);}}else if(!selectee.hasClass(ACTIVE)&&!selectee.hasClass(UNSELECTING)){selectee.addClass(ACTIVE);}}else{if(selectee.hasClass(ACTIVE)){selectee.removeClass(ACTIVE);}else if(ctrlKey&&selectee.hasClass(UNSELECTING)){selectee.removeClass(UNSELECTING).addClass(SELECTED);}}});},_up:function(event){var that=this,options=that.options,single=!options.multiple;DOCUMENT.unbind(SELECTSTART,false).unbind(MOUSEMOVE,that._moveDelegate).unbind(MOUSEUP,that._upDelegate);if(!single){that._marquee.remove();}if(kendo.support.touch&&single){that._downTarget.addClass(ACTIVE);}if(!single&&that._shiftPressed===true){that.selectRange(that._firstSelectee(),that._downTarget);}else{that.element.find(options.filter+"."+UNSELECTING).removeClass(UNSELECTING).removeClass(SELECTED);that.value(that.element.find(options.filter+"."+ACTIVE));}if(!that._shiftPressed){that._lastActive=that._downTarget;}that._downTarget=null;that._shiftPressed=false;},value:function(val){var that=this,selectElement=proxy(that._selectElement,that);if(val){val.each(function(){selectElement(this);});that.trigger(CHANGE,{});return;}return that.element.find(that.options.filter+"."+SELECTED);},_firstSelectee:function(){var that=this,selected;if(that._lastActive!==null){return that._lastActive;}selected=that.value();return selected.length>0?selected[0]:that.element.find(that.options.filter);},_selectElement:function(el){var selectee=$(el),isPrevented=this.trigger("select",{element:el});selectee.removeClass(ACTIVE);if(!isPrevented){selectee.addClass(SELECTED);if(this.options.aria){selectee.attr("aria-selected",true);}}},clear:function(){var that=this;that.element.find(that.options.filter+"."+SELECTED).removeClass(SELECTED);if(that.options.aria){that.element.children("[aria-selected=true]").attr("aria-selected",false);}},selectRange:function(start,end){var that=this,found=false,selectElement=proxy(that._selectElement,that),selectee;start=$(start)[0];end=$(end)[0];that.element.find(that.options.filter).each(function(){selectee=$(this);if(found){selectElement(this);found=this!==end;}else if(this===start){found=start!==end;selectElement(this);}else if(this===end){var tmp=start;start=end;end=tmp;found=true;selectElement(this);}else{selectee.removeClass(SELECTED);}});that.trigger(CHANGE,{});},destroy:function(){var that=this;Widget.fn.destroy.call(that);that.element.off(NS);}});kendo.ui.plugin(Selectable);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,Widget=ui.Widget,proxy=$.proxy,FIRST=".k-i-seek-w",LAST=".k-i-seek-e",PREV=".k-i-arrow-w",NEXT=".k-i-arrow-e",CHANGE="change",NS=".kendoPager",CLICK="click",KEYDOWN="keydown",DISABLED="disabled",iconTemplate=kendo.template('<a href="\\#" title="#=text#" class="k-link"><span class="k-icon #= className #">#=text#</span></a>');function button(template,idx,text,numeric){return template({idx:idx,text:text,ns:kendo.ns,numeric:numeric});}function icon(className,text){return iconTemplate({className:className.substring(1),text:text});}function update(element,selector,page,disabled){element.find(selector).parent().attr(kendo.attr("page"),page).attr("tabindex",-1).toggleClass("k-state-disabled",disabled);}function first(element,page,totalPages){update(element,FIRST,1,page<=1);}function prev(element,page,totalPages){update(element,PREV,Math.max(1,page-1),page<=1);}function next(element,page,totalPages){update(element,NEXT,Math.min(totalPages,page+1),page>=totalPages);}function last(element,page,totalPages){update(element,LAST,totalPages,page>=totalPages);}var Pager=Widget.extend({init:function(element,options){var that=this,page,totalPages;Widget.fn.init.call(that,element,options);options=that.options;that.dataSource=kendo.data.DataSource.create(options.dataSource);that.linkTemplate=kendo.template(that.options.linkTemplate);that.selectTemplate=kendo.template(that.options.selectTemplate);page=that.page();totalPages=that.totalPages();that._refreshHandler=proxy(that.refresh,that);that.dataSource.bind(CHANGE,that._refreshHandler);if(options.previousNext){if(!that.element.find(FIRST).length){that.element.append(icon(FIRST,options.messages.first));first(that.element,page,totalPages);}if(!that.element.find(PREV).length){that.element.append(icon(PREV,options.messages.previous));prev(that.element,page,totalPages);}}if(options.numeric){that.list=that.element.find(".k-pager-numbers");if(!that.list.length){that.list=$('<ul class="k-pager-numbers k-reset" />').appendTo(that.element);}}if(options.input){if(!that.element.find(".k-pager-input").length){that.element.append('<span class="k-pager-input k-label">'+options.messages.page+'<input class="k-textbox">'+kendo.format(options.messages.of,totalPages)+'</span>');}that.element.on(KEYDOWN+NS,".k-pager-input input",proxy(that._keydown,that));}if(options.previousNext){if(!that.element.find(NEXT).length){that.element.append(icon(NEXT,options.messages.next));next(that.element,page,totalPages);}if(!that.element.find(LAST).length){that.element.append(icon(LAST,options.messages.last));last(that.element,page,totalPages);}}if(options.pageSizes){if(!that.element.find(".k-pager-sizes").length){$('<span class="k-pager-sizes k-label"><select/>'+options.messages.itemsPerPage+"</span>").appendTo(that.element).find("select").html($.map($.isArray(options.pageSizes)?options.pageSizes:[5,10,20],function(page){return"<option>"+page+"</option>";}).join("")).end().appendTo(that.element);}that.element.find(".k-pager-sizes select").val(that.pageSize());if(kendo.ui.DropDownList){that.element.find(".k-pager-sizes select").show().kendoDropDownList();}that.element.on(CHANGE+NS,".k-pager-sizes select",proxy(that._change,that));}if(options.refresh){if(!that.element.find(".k-pager-refresh").length){that.element.append('<a href="#" class="k-pager-refresh k-link"  title="'+options.messages.refresh+'"><span class="k-icon k-i-refresh">'+options.messages.refresh+"</span></a>");}that.element.on("touchend"+NS+" "+CLICK+NS,".k-pager-refresh",proxy(that._refreshClick,that));}if(options.info){if(!that.element.find(".k-pager-info").length){that.element.append('<span class="k-pager-info k-label" />');}}that.element.on("touchend"+NS+" "+CLICK+NS,"a",proxy(that._click,that)).addClass("k-pager-wrap k-widget");if(options.autoBind){that.refresh();}kendo.notify(that);},destroy:function(){var that=this;Widget.fn.destroy.call(that);that.element.off(NS);that.dataSource.unbind(CHANGE,that._refreshHandler);},events:[CHANGE],options:{name:"Pager",selectTemplate:'<li><span class="k-state-selected">#=text#</span></li>',linkTemplate:'<li><a tabindex="-1" href="\\#" class="k-link" data-#=ns#page="#=idx#">#=text#</a></li>',buttonCount:10,autoBind:true,numeric:true,info:true,input:false,previousNext:true,pageSizes:false,refresh:false,messages:{display:"تعداد {0} - {1} از {2}",empty:"موردی برای نمایش وجود ندارد",page:"صفحه",of:"از {0}",itemsPerPage:"تعداد در صفحه",first:"رفتن به صفحه اول",previous:"رفتن به صفحه قبل",next:"رفتن به صفحه بعد",last:"رفتن به صفحه آخر",refresh:"بروزرسانی"}},setDataSource:function(dataSource){var that=this;that.dataSource.unbind(CHANGE,that._refreshHandler);that.dataSource=that.options.dataSource=dataSource;dataSource.bind(CHANGE,that._refreshHandler);if(that.options.autoBind){dataSource.fetch();}},refresh:function(){var that=this,idx,end,start=1,html="",reminder,page=that.page(),options=that.options,pageSize=that.pageSize(),total=that.dataSource.total(),totalPages=that.totalPages(),linkTemplate=that.linkTemplate,buttonCount=options.buttonCount;if(options.numeric){if(page>buttonCount){reminder=(page%buttonCount);start=(reminder===0)?(page-buttonCount)+1:(page-reminder)+1;}end=Math.min((start+buttonCount)-1,totalPages);if(start>1){html+=button(linkTemplate,start-1,"...",false);}for(idx=start;idx<=end;idx++){html+=button(idx==page?that.selectTemplate:linkTemplate,idx,idx,true);}if(end<totalPages){html+=button(linkTemplate,idx,"...",false);}if(html===""){html=that.selectTemplate({text:0});}that.list.html(html);}if(options.info){if(total>0){html=kendo.format(options.messages.display,(page-1)*pageSize+1,Math.min(page*pageSize,total),total);}else{html=options.messages.empty;}that.element.find(".k-pager-info").html(html);}if(options.input){that.element.find(".k-pager-input").html(that.options.messages.page+'<input class="k-textbox">'+kendo.format(options.messages.of,totalPages)).find("input").val(page).attr(DISABLED,total<1).toggleClass("k-state-disabled",total<1);}if(options.previousNext){first(that.element,page,totalPages);prev(that.element,page,totalPages);next(that.element,page,totalPages);last(that.element,page,totalPages);}if(options.pageSizes){that.element.find(".k-pager-sizes select").val(pageSize);}},_keydown:function(e){if(e.keyCode===kendo.keys.ENTER){var input=this.element.find(".k-pager-input").find("input"),page=parseInt(input.val(),10);if(isNaN(page)||page<1||page>this.totalPages()){page=this.page();}input.val(page);this.page(page);}},_refreshClick:function(e){e.preventDefault();this.dataSource.read();},_change:function(e){var pageSize=parseInt(e.currentTarget.value,10);if(!isNaN(pageSize)){this.dataSource.pageSize(pageSize);}},_click:function(e){var target=$(e.currentTarget);e.preventDefault();if(!target.is(".k-state-disabled")){this.page(target.attr(kendo.attr("page")));}},totalPages:function(){return Math.ceil((this.dataSource.total()||0)/this.pageSize());},pageSize:function(){return this.dataSource.pageSize()||this.dataSource.total();},page:function(page){if(page!==undefined){this.dataSource.page(page);this.trigger(CHANGE,{index:page});}else{if(this.dataSource.total()>0){return this.dataSource.page();}else{return 0;}}}});ui.plugin(Pager);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,Widget=ui.Widget,support=kendo.support,getOffset=kendo.getOffset,browser=kendo.support.browser,appendingToBodyTriggersResize=browser.msie&&browser.version<9,OPEN="open",CLOSE="close",DEACTIVATE="deactivate",ACTIVATE="activate",CENTER="center",LEFT="left",RIGHT="right",TOP="top",BOTTOM="bottom",ABSOLUTE="absolute",HIDDEN="hidden",BODY="body",LOCATION="location",POSITION="position",VISIBLE="visible",FITTED="fitted",EFFECTS="effects",ACTIVE="k-state-active",ACTIVEBORDER="k-state-border",ACTIVECHILDREN=".k-picker-wrap, .k-dropdown-wrap, .k-link",MOUSEDOWN="down",DOCUMENT=$(document),WINDOW=$(window),DOCUMENT_ELEMENT=$(document.documentElement),RESIZE_SCROLL="resize scroll",cssPrefix=support.transitions.css,TRANSFORM=cssPrefix+"transform",extend=$.extend,NS=".kendoPopup",styles=["font-family","font-size","font-stretch","font-style","font-weight","line-height"];function contains(container,target){return container===target||$.contains(container,target);}var Popup=Widget.extend({init:function(element,options){var that=this,parentPopup;options=options||{};if(options.isRtl){options.origin=options.origin||BOTTOM+" "+RIGHT;options.position=options.position||TOP+" "+RIGHT;}Widget.fn.init.call(that,element,options);element=that.element;options=that.options;that.collisions=options.collision?options.collision.split(" "):[];if(that.collisions.length===1){that.collisions.push(that.collisions[0]);}parentPopup=$(that.options.anchor).closest(".k-popup,.k-group");options.appendTo=$($(options.appendTo)[0]||parentPopup[0]||BODY);that.element.hide().addClass("k-popup k-group k-reset").toggleClass("k-rtl",!!options.isRtl).css({position:ABSOLUTE}).appendTo(options.appendTo).on("mouseenter"+NS,function(){that._hovered=true;}).on("mouseleave"+NS,function(){that._hovered=false;});that.wrapper=$();if(options.animation===false){options.animation={open:{effects:{}},close:{hide:true,effects:{}}};}extend(options.animation.open,{complete:function(){that.wrapper.css({overflow:VISIBLE});that.trigger(ACTIVATE);}});extend(options.animation.close,{complete:function(){that.wrapper.hide();var location=that.wrapper.data(LOCATION),anchor=$(options.anchor),direction,dirClass;if(location){that.wrapper.css(location);}if(options.anchor!=BODY){direction=anchor.hasClass(ACTIVEBORDER+"-down")?"down":"up";dirClass=ACTIVEBORDER+"-"+direction;anchor.removeClass(dirClass).children(ACTIVECHILDREN).removeClass(ACTIVE).removeClass(dirClass);element.removeClass(ACTIVEBORDER+"-"+kendo.directions[direction].reverse);}that._closing=false;that.trigger(DEACTIVATE);}});that._mousedownProxy=function(e){that._mousedown(e);};that._currentWidth=DOCUMENT.width();that._resizeProxy=function(e){that._resize(e);};if(options.toggleTarget){$(options.toggleTarget).on(options.toggleEvent+NS,$.proxy(that.toggle,that));}},events:[OPEN,ACTIVATE,CLOSE,DEACTIVATE],options:{name:"Popup",toggleEvent:"click",origin:BOTTOM+" "+LEFT,position:TOP+" "+LEFT,anchor:BODY,collision:"flip fit",viewport:window,animation:{open:{effects:"slideIn:down",transition:true,duration:200},close:{duration:100,hide:true}}},destroy:function(){var that=this,options=that.options,element=that.element.off(NS),parent;Widget.fn.destroy.call(that);if(options.toggleTarget){$(options.toggleTarget).off(NS);}DOCUMENT_ELEMENT.unbind(MOUSEDOWN,that._mousedownProxy);WINDOW.unbind(RESIZE_SCROLL,that._resizeProxy);if(options.appendTo[0]===document.body){parent=element.parent(".k-animation-container");if(parent[0]){parent.remove();}else{element.remove();}}kendo.destroy(that.element.children());},open:function(x,y){var that=this,fixed={isFixed:!isNaN(parseInt(y,10)),x:x,y:y},element=that.element,options=that.options,direction="down",animation,wrapper,anchor=$(options.anchor);if(!that.visible()){element.css(kendo.getComputedStyles(anchor[0],styles));if(element.data("animating")||that.trigger(OPEN)){return;}DOCUMENT_ELEMENT.unbind(MOUSEDOWN,that._mousedownProxy).bind(MOUSEDOWN,that._mousedownProxy);if(!support.mobileOS.ios){WINDOW.unbind(RESIZE_SCROLL,that._resizeProxy).bind(RESIZE_SCROLL,that._resizeProxy);}that.wrapper=wrapper=kendo.wrap(element).css({overflow:HIDDEN,display:"block",position:ABSOLUTE});if(support.mobileOS.android){wrapper.add(anchor).css(TRANSFORM,"translatez(0)");}wrapper.css(POSITION);if($(options.appendTo)[0]==document.body){wrapper.css(TOP,"-10000px");}animation=extend(true,{},options.animation.open);that.flipped=that._position(fixed);animation.effects=kendo.parseEffects(animation.effects,that.flipped);direction=animation.effects.slideIn?animation.effects.slideIn.direction:direction;if(options.anchor!=BODY){var dirClass=ACTIVEBORDER+"-"+direction;element.addClass(ACTIVEBORDER+"-"+kendo.directions[direction].reverse);anchor.addClass(dirClass).children(ACTIVECHILDREN).addClass(ACTIVE).addClass(dirClass);}element.data(EFFECTS,animation.effects).kendoStop(true).kendoAnimate(animation);}},toggle:function(){var that=this;that[that.visible()?CLOSE:OPEN]();},visible:function(){return this.element.is(":"+VISIBLE);},close:function(){var that=this,options=that.options,animation,openEffects,closeEffects;if(that.visible()){if(that._closing||that.trigger(CLOSE)){return;}that.element.find(".k-popup").each(function(){var that=$(this),popup=that.data("kendoPopup");if(popup){popup.close();}});DOCUMENT_ELEMENT.unbind(MOUSEDOWN,that._mousedownProxy);WINDOW.unbind(RESIZE_SCROLL,that._resizeProxy);animation=extend(true,{},options.animation.close);openEffects=that.element.data(EFFECTS);closeEffects=animation.effects;that.wrapper=kendo.wrap(that.element).css({overflow:HIDDEN});if(!closeEffects&&!kendo.size(closeEffects)&&openEffects&&kendo.size(openEffects)){animation.effects=openEffects;animation.reverse=true;}that._closing=true;that.element.kendoStop(true).kendoAnimate(animation);}},_resize:function(e){var that=this;if(appendingToBodyTriggersResize){var width=DOCUMENT.width();if(width==that._currentWidth){return;}that._currentWidth=width;}if(!that._hovered){that.close();}},_mousedown:function(e){var that=this,container=that.element[0],options=that.options,anchor=$(options.anchor)[0],toggleTarget=options.toggleTarget,target=kendo.eventTarget(e),popup=$(target).closest(".k-popup")[0];if(popup&&popup!==that.element[0]){return;}if(!contains(container,target)&&!contains(anchor,target)&&!(toggleTarget&&contains($(toggleTarget)[0],target))){that.close();}},_fit:function(position,size,viewPortSize){var output=0;if(position+size>viewPortSize){output=viewPortSize-(position+size);}if(position<0){output=-position;}return output;},_flip:function(offset,size,anchorSize,viewPortSize,origin,position,boxSize){var output=0;boxSize=boxSize||size;if(position!==origin&&position!==CENTER&&origin!==CENTER){if(offset+boxSize>viewPortSize){output+=-(anchorSize+size);}if(offset+output<0){output+=anchorSize+size;}}return output;},_position:function(fixed){var that=this,element=that.element.css(POSITION,""),wrapper=that.wrapper,options=that.options,viewport=$(options.viewport),viewportOffset=$(viewport).offset(),anchor=$(options.anchor),origins=options.origin.toLowerCase().split(" "),positions=options.position.toLowerCase().split(" "),collisions=that.collisions,zoomLevel=support.zoomLevel(),zIndex=10002;var siblingContainer=anchor.parents().filter(wrapper.siblings());if(siblingContainer[0]){var parentZIndex=Number($(siblingContainer).css("zIndex"));if(parentZIndex){zIndex=parentZIndex+1;}}wrapper.css("zIndex",zIndex);if(fixed&&fixed.isFixed){wrapper.css({left:fixed.x,top:fixed.y});}else{wrapper.css(that._align(origins,positions));}var pos=getOffset(wrapper,POSITION),offset=getOffset(wrapper),anchorParent=anchor.offsetParent().parent(".k-animation-container");if(anchorParent.length&&anchorParent.data(FITTED)){pos=getOffset(wrapper,POSITION);offset=getOffset(wrapper);}if(viewport[0]===window){offset.top-=(window.pageYOffset||document.documentElement.scrollTop||0);offset.left-=(window.pageXOffset||document.documentElement.scrollLeft||0);}else{offset.top-=viewportOffset.top;offset.left-=viewportOffset.left;}if(!that.wrapper.data(LOCATION)){wrapper.data(LOCATION,extend({},pos));}var offsets=extend({},offset),location=extend({},pos);if(collisions[0]==="fit"){location.top+=that._fit(offsets.top,wrapper.outerHeight(),viewport.height()/zoomLevel);}if(collisions[1]==="fit"){location.left+=that._fit(offsets.left,wrapper.outerWidth(),viewport.width()/zoomLevel);}if(location.left!=pos.left||location.top!=pos.top){wrapper.data(FITTED,true);}else{wrapper.removeData(FITTED);}var flipPos=extend({},location);if(collisions[0]==="flip"){location.top+=that._flip(offsets.top,element.outerHeight(),anchor.outerHeight(),viewport.height()/zoomLevel,origins[0],positions[0],wrapper.outerHeight());}if(collisions[1]==="flip"){location.left+=that._flip(offsets.left,element.outerWidth(),anchor.outerWidth(),viewport.width()/zoomLevel,origins[1],positions[1],wrapper.outerWidth());}element.css(POSITION,ABSOLUTE);wrapper.css(location);return(location.left!=flipPos.left||location.top!=flipPos.top);},_align:function(origin,position){var that=this,element=that.wrapper,anchor=$(that.options.anchor),verticalOrigin=origin[0],horizontalOrigin=origin[1],verticalPosition=position[0],horizontalPosition=position[1],anchorOffset=getOffset(anchor),appendTo=$(that.options.appendTo),appendToOffset,width=element.outerWidth(),height=element.outerHeight(),anchorWidth=anchor.outerWidth(),anchorHeight=anchor.outerHeight(),top=anchorOffset.top,left=anchorOffset.left,round=Math.round;if(appendTo[0]!=document.body){appendToOffset=getOffset(appendTo);top-=appendToOffset.top;left-=appendToOffset.left;}if(verticalOrigin===BOTTOM){top+=anchorHeight;}if(verticalOrigin===CENTER){top+=round(anchorHeight/2);}if(verticalPosition===BOTTOM){top-=height;}if(verticalPosition===CENTER){top-=round(height/2);}if(horizontalOrigin===RIGHT){left+=anchorWidth;}if(horizontalOrigin===CENTER){left+=round(anchorWidth/2);}if(horizontalPosition===RIGHT){left-=width;}if(horizontalPosition===CENTER){left-=round(width/2);}return{top:top,left:left};}});ui.plugin(Popup);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,Widget=ui.Widget,keys=kendo.keys,htmlEncode=kendo.htmlEncode,ID="id",LI="li",CHANGE="change",CHARACTER="character",FOCUSED="k-state-focused",HOVER="k-state-hover",LOADING="k-loading",OPEN="open",CLOSE="close",SELECT="select",SELECTED="selected",REQUESTSTART="requestStart",REQUESTEND="requestEnd",WIDTH="width",extend=$.extend,proxy=$.proxy,browser=kendo.support.browser,isIE8=browser.msie&&parseInt(browser.version,10)<9,quotRegExp=/"/g;var List=Widget.extend({init:function(element,options){var that=this,ns=that.ns,id;Widget.fn.init.call(that,element,options);element=that.element;that._template();that.ul=$('<ul unselectable="on" class="k-list k-reset"/>').css({overflow:kendo.support.kineticScrollNeeded?"":"auto"}).on("mouseenter"+ns,LI,function(){$(this).addClass(HOVER);}).on("mouseleave"+ns,LI,function(){$(this).removeClass(HOVER);}).on("touchend"+ns+" click"+ns,LI,proxy(that._click,that)).attr({tabIndex:-1,role:"listbox","aria-hidden":true});that.list=$("<div class='k-list-container'/>").append(that.ul).on("mousedown"+ns,function(e){e.preventDefault();});id=element.attr(ID);if(id){that.list.attr(ID,id+"-list");that.ul.attr(ID,id+"_listbox");that._optionID=id+"_option_selected";}},items:function(){return this.ul[0].children;},current:function(candidate){var that=this,id=that._optionID;if(candidate!==undefined){if(that._current){that._current.removeClass(FOCUSED).removeAttr("aria-selected").removeAttr(ID);that._focused.removeAttr("aria-activedescendant");}if(candidate){candidate.addClass(FOCUSED);that._scroll(candidate);if(id){candidate.attr("id",id);that._focused.attr("aria-activedescendant",id);}}that._current=candidate;}else{return that._current;}},destroy:function(){var that=this,ns=that.ns;Widget.fn.destroy.call(that);that._unbindDataSource();that.ul.off(ns);that.list.off(ns);that.popup.destroy();if(that._form){that._form.off("reset",that._resetHandler);}},dataItem:function(index){var that=this;if(index===undefined){index=that.selectedIndex;}return that._data()[index];},_accessors:function(){var that=this,element=that.element,options=that.options,getter=kendo.getter,textField=element.attr(kendo.attr("text-field")),valueField=element.attr(kendo.attr("value-field"));if(textField){options.dataTextField=textField;}if(valueField){options.dataValueField=valueField;}that._text=getter(options.dataTextField);that._value=getter(options.dataValueField);},_aria:function(){var that=this,options=that.options,element=that._focused;if(options.suggest!==undefined){element.attr("aria-autocomplete",options.suggest?"both":"list");}if(that.element[0].id){element.attr("aria-owns",that.ul[0].id);}that.ul.attr("aria-live",!options.filter||options.filter==="none"?"off":"polite");},_blur:function(){var that=this;that._change();that.close();},_change:function(){var that=this,index=that.selectedIndex,value=that.value(),trigger;if(value!==that._old){trigger=true;}else if(index!==undefined&&index!==that._oldIndex){trigger=true;}if(trigger){that._old=value;that._oldIndex=index;that.trigger(CHANGE);that.element.trigger(CHANGE);}},_click:function(e){if(!e.isDefaultPrevented()){this._accept($(e.currentTarget));if(e.type==="touchend"){e.preventDefault();}}},_data:function(){return this.dataSource.view();},_enable:function(){var that=this,options=that.options;if(that.element.prop("disabled")){options.enable=false;}that.enable(options.enable);},_focus:function(li){var that=this;if(that.popup.visible()&&li&&that.trigger(SELECT,{item:li})){that.close();return;}that._select(li);that._blur();},_height:function(length){if(length){var that=this,list=that.list,visible=that.popup.visible(),height=that.options.height;list=list.add(list.parent(".k-animation-container")).show().height(that.ul[0].scrollHeight>height?height:"auto");if(!visible){list.hide();}}},_adjustListWidth:function(){var list=this.list,width=list[0].style.width,wrapper=this.wrapper,computedStyle,computedWidth;if(!list.data(WIDTH)&&width){return;}computedStyle=window.getComputedStyle?window.getComputedStyle(wrapper[0],null):0;computedWidth=computedStyle?parseFloat(computedStyle.width):wrapper.outerWidth();if(computedStyle&&(browser.mozilla||browser.msie)){computedWidth+=parseFloat(computedStyle.paddingLeft)+parseFloat(computedStyle.paddingRight)+parseFloat(computedStyle.borderLeftWidth)+parseFloat(computedStyle.borderRightWidth);}width=computedWidth-(list.outerWidth()-list.width());list.css({fontFamily:wrapper.css("font-family"),width:width}).data(WIDTH,width);return true;},_popup:function(){var that=this,list=that.list,focused=that._focused,options=that.options,wrapper=that.wrapper;that.popup=new ui.Popup(list,extend({},options.popup,{anchor:wrapper,open:function(e){that._adjustListWidth();if(that.trigger(OPEN)){e.preventDefault();}else{focused.attr("aria-expanded",true);that.ul.attr("aria-hidden",false);}},close:function(e){if(that.trigger(CLOSE)){e.preventDefault();}else{focused.attr("aria-expanded",false);that.ul.attr("aria-hidden",true);}},animation:options.animation,isRtl:kendo.support.isRtl(wrapper)}));that._touchScroller=kendo.touchScroller(that.popup.element);},_makeUnselectable:function(element){if(isIE8){this.list.find("*").attr("unselectable","on");}},_toggleHover:function(e){$(e.currentTarget).toggleClass(HOVER,e.type==="mouseenter");},_toggle:function(open){var that=this;open=open!==undefined?open:!that.popup.visible();if(!kendo.support.mobileOS&&that._focused[0]!==document.activeElement){that._focused.focus();}that[open?OPEN:CLOSE]();},_scroll:function(item){if(!item){return;}if(item[0]){item=item[0];}var ul=this.ul[0],itemOffsetTop=item.offsetTop,itemOffsetHeight=item.offsetHeight,ulScrollTop=ul.scrollTop,ulOffsetHeight=ul.clientHeight,bottomDistance=itemOffsetTop+itemOffsetHeight;ul.scrollTop=ulScrollTop>itemOffsetTop?itemOffsetTop:bottomDistance>(ulScrollTop+ulOffsetHeight)?bottomDistance-ulOffsetHeight:ulScrollTop;},_template:function(){var that=this,options=that.options,template=options.template,hasDataSource=options.dataSource;if(that.element.is(SELECT)&&that.element[0].length){if(!hasDataSource){options.dataTextField=options.dataTextField||"text";options.dataValueField=options.dataValueField||"value";}}if(!template){that.template=kendo.template('<li tabindex="-1" role="option" unselectable="on" class="k-item">${data'+(options.dataTextField?".":"")+options.dataTextField+"}</li>",{useWithBlock:false});}else{template=kendo.template(template);that.template=function(data){return'<li tabindex="-1" role="option" unselectable="on" class="k-item">'+template(data)+"</li>";};}},_unbindDataSource:function(){var that=this;that.dataSource.unbind(CHANGE,that._refreshHandler).unbind(REQUESTSTART,that._requestStartHandler).unbind(REQUESTEND,that._requestEndHandler);}});extend(List,{caret:function(element){var caret,selection=element.ownerDocument.selection;if(selection){caret=Math.abs(selection.createRange().moveStart(CHARACTER,-element.value.length));}else{caret=element.selectionStart;}return caret;},selectText:function(element,selectionStart,selectionEnd){try{if(element.createTextRange){element.focus();var textRange=element.createTextRange();textRange.collapse(true);textRange.moveStart(CHARACTER,selectionStart);textRange.moveEnd(CHARACTER,selectionEnd-selectionStart);textRange.select();}else{element.setSelectionRange(selectionStart,selectionEnd);}}catch(e){}},inArray:function(node,parentNode){var idx,length,siblings=parentNode.children;if(!node||node.parentNode!==parentNode){return-1;}for(idx=0,length=siblings.length;idx<length;idx++){if(node===siblings[idx]){return idx;}}return-1;}});kendo.ui.List=List;ui.Select=List.extend({init:function(element,options){List.fn.init.call(this,element,options);},setDataSource:function(dataSource){this.options.dataSource=dataSource;this._dataSource();if(this.options.autoBind){this.dataSource.fetch();}},close:function(){this.popup.close();},_accessor:function(value,idx){var element=this.element,isSelect=element.is(SELECT),option,selectedIndex;element=element[0];if(value===undefined){if(isSelect){selectedIndex=element.selectedIndex;if(selectedIndex>-1){option=element.options[selectedIndex];if(option){value=option.value;}}}else{value=element.value;}return value;}else{if(isSelect){element.selectedIndex=idx;}else{element.value=value;}}},_hideBusy:function(){var that=this;clearTimeout(that._busy);that._arrow.removeClass(LOADING);that._focused.attr("aria-busy",false);that._busy=null;},_showBusy:function(){var that=this;that._request=true;if(that._busy){return;}that._busy=setTimeout(function(){that._focused.attr("aria-busy",true);that._arrow.addClass(LOADING);},100);},_requestEnd:function(){this._request=false;},_dataSource:function(){var that=this,element=that.element,options=that.options,dataSource=options.dataSource||{},idx;dataSource=$.isArray(dataSource)?{data:dataSource}:dataSource;if(element.is(SELECT)){idx=element[0].selectedIndex;if(idx>-1){options.index=idx;}dataSource.select=element;dataSource.fields=[{field:options.dataTextField},{field:options.dataValueField}];}if(that.dataSource&&that._refreshHandler){that._unbindDataSource();}else{that._refreshHandler=proxy(that.refresh,that);that._requestStartHandler=proxy(that._showBusy,that);that._requestEndHandler=proxy(that._requestEnd,that);}that.dataSource=kendo.data.DataSource.create(dataSource).bind(CHANGE,that._refreshHandler).bind(REQUESTSTART,that._requestStartHandler).bind(REQUESTEND,that._requestEndHandler);},_index:function(value){var that=this,idx,length,data=that._data(),valueFromData;for(idx=0,length=data.length;idx<length;idx++){valueFromData=that._value(data[idx]);if(valueFromData===undefined){valueFromData=that._text(data[idx]);}if(valueFromData==value){return idx;}}return-1;},_get:function(li){var that=this,data=that._data(),idx,length;if(typeof li==="function"){for(idx=0,length=data.length;idx<length;idx++){if(li(data[idx])){li=idx;break;}}}if(typeof li==="number"){if(li<0){return $();}li=$(that.ul[0].children[li]);}if(li&&li.nodeType){li=$(li);}return li;},_move:function(e){var that=this,key=e.keyCode,ul=that.ul[0],current=that._current,down=key===keys.DOWN,pressed;if(key===keys.UP||down){if(e.altKey){that.toggle(down);}else if(down){if(!current||(that.selectedIndex===-1&&!that.value())){current=ul.firstChild;}else{current=current[0].nextSibling;}that._select(current);}else{that._select(current?current[0].previousSibling:ul.lastChild);}e.preventDefault();pressed=true;}else if(key===keys.ENTER||key===keys.TAB){if(that.popup.visible()){e.preventDefault();}that._accept(current);pressed=true;}else if(key===keys.ESC){if(that.popup.visible()){e.preventDefault();}that.close();pressed=true;}return pressed;},_selectItem:function(value){var that=this,options=that.options;value=value||options.value||that.value();if(value){that.value(value);}else{that.select(options.index);}that.trigger(SELECTED);},_valueOnFetch:function(value){var that=this;if(!that.ul[0].firstChild&&!that._fetch){that.dataSource.one(CHANGE,function(){that._fetch=true;that.value(value);that.trigger(SELECTED);});if(!that._request){that.dataSource.fetch();}return true;}that._fetch=false;},_options:function(data,optionLabel){var that=this,element=that.element,selectedIndex=element[0].selectedIndex,length=data.length,options="",option,dataItem,dataText,dataValue,idx=0;if(optionLabel){options=optionLabel;idx=1;}for(;idx<length;idx++){option="<option";dataItem=data[idx];dataText=that._text(dataItem);dataValue=that._value(dataItem);if(dataValue!==undefined){dataValue+="";if(dataValue.indexOf('"')!==-1){dataValue=dataValue.replace(quotRegExp,"&quot;");}option+=' value="'+dataValue+'"';}option+=">";if(dataText!==undefined){option+=htmlEncode(dataText);}option+="</option>";options+=option;}element.html(options);element[0].selectedIndex=selectedIndex;},_reset:function(){var that=this,element=that.element,form=element.closest("form");if(form[0]){that._resetHandler=function(){setTimeout(function(){that.value(element[0].value);});};that._form=form.on("reset",that._resetHandler);}},_cascade:function(){var that=this,options=that.options,cascade=options.cascadeFrom,parent,select,valueField,deactivate,change;if(cascade){parent=$("#"+cascade).data("kendo"+options.name);if(!parent){return;}valueField=parent.options.dataValueField;deactivate=function(){that.value("");that.enable(false);};change=function(){var value=that.value();if(value){if(that.dataSource.view()[0]){that.value(value);if(that.selectedIndex==-1){that.value("");}}else{that.value("");if(that.value()){that.element.val("");that.text("");}}}else{that.select(options.index);}that.trigger(SELECTED);that.enable();};select=function(){var dataItem=parent.dataItem(),filterValue=dataItem?parent._value(dataItem):null,expressions,filters;if(filterValue){expressions=that.dataSource.filter()||{};removeFiltersForField(expressions,valueField);filters=expressions.filters||[];filters.push({field:valueField,operator:"eq",value:filterValue});that.dataSource.one(CHANGE,change).filter(filters);}else{deactivate();}};parent.bind("cascade",deactivate).bind(CHANGE,function(){select();that.trigger("cascade");}).bind(SELECTED,function(){select();});if(parent._valueCalled!==undefined){select();}else if(!parent.value()){that.enable(false);}}}});function removeFiltersForField(expression,field){if(expression.filters){expression.filters=$.grep(expression.filters,function(filter){removeFiltersForField(filter,field);if(filter.filters){return filter.filters.length;}else{return filter.field!=field;}});}}ui.Select.removeFiltersForField=removeFiltersForField;})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,Widget=ui.Widget,parse=kendo.parseDate,adjustDate=kendo._adjustDate,keys=kendo.keys,extractFormat=kendo._extractFormat,template=kendo.template,getCulture=kendo.getCulture,transitions=kendo.support.transitions,transitionOrigin=transitions?transitions.css+"transform-origin":"",cellTemplate=template('<td#=data.cssClass# role="gridcell"><a tabindex="-1" class="k-link" href="\\#" data-#=data.ns#value="#=data.dateString#">#=data.value#</a></td>',{useWithBlock:false}),emptyCellTemplate=template('<td role="gridcell">&nbsp;</td>',{useWithBlock:false}),browser=kendo.support.browser,isIE8=browser.msie&&(parseInt(browser.version,10)<9||(document.documentMode&&document.documentMode<9)),ns=".kendoCalendar",CLICK="touchend"+ns+" click"+ns,KEYDOWN_NS="keydown"+ns,ID="id",MIN="min",LEFT="left",SLIDE="slideIn",MONTH="month",CENTURY="century",CHANGE="change",NAVIGATE="navigate",VALUE="value",HOVER="k-state-hover",DISABLED="k-state-disabled",FOCUSED="k-state-focused",OTHERMONTH="k-other-month",OTHERMONTHCLASS=' class="'+OTHERMONTH+'"',TODAY="k-nav-today",CELLSELECTOR="td:has(.k-link)",BLUR="blur"+ns,FOCUS="focus",FOCUS_WITH_NS=FOCUS+ns,MOUSEENTER="touchstart mouseenter",MOUSEENTER_WITH_NS="touchstart"+ns+" mouseenter"+ns,MOUSELEAVE="touchend"+ns+" mouseleave"+ns,MS_PER_MINUTE=60000,MS_PER_DAY=86400000,PREVARROW="_prevArrow",NEXTARROW="_nextArrow",ARIA_DISABLED="aria-disabled",ARIA_SELECTED="aria-selected",proxy=$.proxy,extend=$.extend,DATE=Date,views={month:0,year:1,decade:2,century:3};var Calendar=Widget.extend({init:function(element,options){var that=this,value,id;Widget.fn.init.call(that,element,options);element=that.wrapper=that.element;options=that.options;options.url=window.unescape(options.url);that._templates();that._header();that._footer(that.footer);id=element.addClass("k-widget k-calendar").on(MOUSEENTER_WITH_NS+" "+MOUSELEAVE,CELLSELECTOR,mousetoggle).on(KEYDOWN_NS,"table.k-content",proxy(that._move,that)).on(CLICK,CELLSELECTOR,function(e){var link=e.currentTarget.firstChild;if(link.href.indexOf("#")!=-1){e.preventDefault();}that._click($(link));}).attr(ID);if(id){that._cellID=id+"_cell_selected";}value=options.value;normalize(options);that._index=views[options.start];that._current=new DATE(+restrictValue(value,options.min,options.max));that._addClassProxy=function(){that._cell.addClass(FOCUSED);};that._removeClassProxy=function(){that._cell.removeClass(FOCUSED);};that.value(value);kendo.notify(that);},options:{name:"Calendar",value:null,min:new DATE(1900,0,1),max:new DATE(2099,11,31),dates:[],url:"",culture:"",footer:"",format:"",month:{},start:MONTH,depth:MONTH,animation:{horizontal:{effects:SLIDE,reverse:true,duration:500,divisor:2},vertical:{effects:"zoomIn",duration:400}}},events:[CHANGE,NAVIGATE],setOptions:function(options){normalize(options);Widget.fn.setOptions.call(this,options);},destroy:function(){var that=this,today=that._today.off(ns);that.element.off(ns);that._title.off(ns);that[PREVARROW].off(ns);that[NEXTARROW].off(ns);kendo.destroy(today);kendo.destroy(that._view);Widget.fn.destroy.call(that);},focus:function(table){table=table||this._table;if(this.options.focusOnNav!==false){table.focus();this._bindTable(table);}},min:function(value){return this._option(MIN,value);},max:function(value){return this._option("max",value);},navigateToPast:function(){this._navigate(PREVARROW,-1);},navigateToFuture:function(){this._navigate(NEXTARROW,1);},navigateUp:function(){var that=this,index=that._index;if(that._title.hasClass(DISABLED)){return;}that.navigate(that._current,++index);},navigateDown:function(value){var that=this,index=that._index,depth=that.options.depth;if(!value){return;}if(index===views[depth]){if(+that._value!=+value){that.value(value);that.trigger(CHANGE);}return;}that.navigate(value,--index);},navigate:function(value,view){view=isNaN(view)?views[view]:view;var that=this,options=that.options,culture=options.culture,min=options.min,max=options.max,title=that._title,from=that._table,selectedValue=that._value,currentValue=that._current,future=value&&+value>+currentValue,vertical=view!==undefined&&view!==that._index,to,currentView,compare,disabled;if(!value){value=currentValue;}else{that._current=value=new DATE(+restrictValue(value,min,max));}if(view===undefined){view=that._index;}else{that._index=view;}that._view=currentView=calendar.views[view];compare=currentView.compare;disabled=view===views[CENTURY];title.toggleClass(DISABLED,disabled).attr(ARIA_DISABLED,disabled);disabled=compare(value,min)<1;that[PREVARROW].toggleClass(DISABLED,disabled).attr(ARIA_DISABLED,disabled);disabled=compare(value,max)>-1;that[NEXTARROW].toggleClass(DISABLED,disabled).attr(ARIA_DISABLED,disabled);if(!from||that._changeView){title.html(currentView.title(value,culture));that._table=to=$(currentView.content(extend({min:min,max:max,date:value,url:options.url,dates:options.dates,format:options.format,culture:culture},that[currentView.name])));makeUnselectable(to);that._animate({from:from,to:to,vertical:vertical,future:future});that._focus(value);that.trigger(NAVIGATE);}if(view===views[options.depth]&&selectedValue){that._class("k-state-selected",currentView.toDateString(selectedValue));}that._class(FOCUSED,currentView.toDateString(value));if(!from&&that._cell){that._cell.removeClass(FOCUSED);}that._changeView=true;},value:function(value){var that=this,view=that._view,options=that.options,min=options.min,max=options.max;if(value===undefined){return that._value;}value=parse(value,options.format,options.culture);if(value!==null){value=new DATE(+value);if(!isInRange(value,min,max)){value=null;}}that._value=value;that._changeView=!value||view&&view.compare(value,that._current)!==0;that.navigate(value);},_move:function(e){var that=this,options=that.options,key=e.keyCode,view=that._view,index=that._index,currentValue=new DATE(+that._current),value,prevent,method;if(e.ctrlKey){if(key==keys.RIGHT){that.navigateToFuture();prevent=true;}else if(key==keys.LEFT){that.navigateToPast();prevent=true;}else if(key==keys.UP){that.navigateUp();prevent=true;}else if(key==keys.DOWN){that._click($(that._cell[0].firstChild));prevent=true;}}else{if(key==keys.RIGHT){value=1;prevent=true;}else if(key==keys.LEFT){value=-1;prevent=true;}else if(key==keys.UP){value=index===0?-7:-4;prevent=true;}else if(key==keys.DOWN){value=index===0?7:4;prevent=true;}else if(key==keys.ENTER){that._click($(that._cell[0].firstChild));prevent=true;}else if(key==keys.HOME||key==keys.END){method=key==keys.HOME?"first":"last";currentValue=view[method](currentValue);prevent=true;}else if(key==keys.PAGEUP){prevent=true;that.navigateToPast();}else if(key==keys.PAGEDOWN){prevent=true;that.navigateToFuture();}if(value||method){if(!method){view.setDate(currentValue,value);}that._focus(restrictValue(currentValue,options.min,options.max));}}if(prevent){e.preventDefault();}return that._current;},_animate:function(options){var that=this,from=options.from,to=options.to;if(!from){to.insertAfter(that.element[0].firstChild);that._bindTable(to);}else if(from.parent().data("animating")){from.parent().kendoStop(true,true).remove();from.remove();to.insertAfter(that.element[0].firstChild);that.focus();}else if(!from.is(":visible")||that.options.animation===false){to.insertAfter(from);that.focus();from.remove();}else{that[options.vertical?"_vertical":"_horizontal"](from,to,options.future);}},_horizontal:function(from,to,future){var that=this,horizontal=that.options.animation.horizontal,effects=horizontal.effects,viewWidth=from.outerWidth();if(effects&&effects.indexOf(SLIDE)!=-1){from.add(to).css({width:viewWidth});from.wrap("<div/>");that.focus(from);from.parent().css({position:"relative",width:viewWidth*2,"float":LEFT,left:future?0:-viewWidth});to[future?"insertAfter":"insertBefore"](from);extend(horizontal,{effects:SLIDE+":"+(future?"right":LEFT),complete:function(){from.remove();to.unwrap();that.focus();}});from.parent().kendoStop(true,true).kendoAnimate(horizontal);}},_vertical:function(from,to){var that=this,vertical=that.options.animation.vertical,effects=vertical.effects,cell,position;if(effects&&effects.indexOf("zoom")!=-1){to.css({position:"absolute",top:from.prev().outerHeight(),left:0}).insertBefore(from);if(transitionOrigin){cell=that._cellByDate(that._view.toDateString(that._current));position=cell.position();position=(position.left+parseInt(cell.width()/2,10))+"px"+" "+(position.top+parseInt(cell.height()/2,10)+"px");to.css(transitionOrigin,position);}from.kendoStop(true,true).kendoAnimate({effects:"fadeOut",duration:600,complete:function(){from.remove();to.css({position:"static",top:0,left:0});that.focus();}});to.kendoStop(true,true).kendoAnimate(vertical);}},_cellByDate:function(value){return this._table.find("td:not(."+OTHERMONTH+")").filter(function(){return $(this.firstChild).attr(kendo.attr(VALUE))===value;});},_class:function(className,value){var that=this,id=that._cellID,cell=that._cell;if(cell){cell.removeAttr(ARIA_SELECTED).removeAttr(ID);}cell=that._table.find("td:not(."+OTHERMONTH+")").removeClass(className).filter(function(){return $(this.firstChild).attr(kendo.attr(VALUE))===value;}).addClass(className).attr(ARIA_SELECTED,true);if(cell[0]){that._cell=cell;}if(id){cell.attr(ID,id);that._table.removeAttr("aria-activedescendant").attr("aria-activedescendant",id);}},_bindTable:function(table){table.on(FOCUS_WITH_NS,this._addClassProxy).on(BLUR,this._removeClassProxy);},_click:function(link){var that=this,options=that.options,currentValue=that._current,value=link.attr(kendo.attr(VALUE)).split("/");value=new DATE(value[0],value[1],value[2]);adjustDate(value);if(link.parent().hasClass(OTHERMONTH)){currentValue=value;}else{that._view.setDate(currentValue,value);}that.navigateDown(restrictValue(currentValue,options.min,options.max));},_focus:function(value){var that=this,view=that._view;if(view.compare(value,that._current)!==0){that.navigate(value);}else{that._current=value;that._class(FOCUSED,view.toDateString(value));}},_footer:function(template){var that=this,element=that.element,today=new DATE(),footer=element.find(".k-footer");if(!template){that._toggle(false);footer.hide();return;}if(!footer[0]){footer=$('<div class="k-footer"><a href="#" class="k-link k-nav-today"></a></div>').appendTo(element);}that._today=footer.show().find(".k-link").html(template(today)).attr("title",kendo.toString(today,"D",that.options.culture));that._toggle();},_header:function(){var that=this,element=that.element,links;if(!element.find(".k-header")[0]){element.html('<div class="k-header">'+'<a href="#" role="button" class="k-link k-nav-prev"><span class="k-icon k-i-arrow-w"></span></a>'+'<a href="#" role="button" aria-live="assertive" aria-atomic="true" class="k-link k-nav-fast"></a>'+'<a href="#" role="button" class="k-link k-nav-next"><span class="k-icon k-i-arrow-e"></span></a>'+'</div>');}links=element.find(".k-link").on(MOUSEENTER_WITH_NS+" "+MOUSELEAVE+" "+FOCUS_WITH_NS+" "+BLUR,mousetoggle).click(false);that._title=links.eq(1).on(CLICK,proxy(that.navigateUp,that));that[PREVARROW]=links.eq(0).on(CLICK,proxy(that.navigateToPast,that));that[NEXTARROW]=links.eq(2).on(CLICK,proxy(that.navigateToFuture,that));},_navigate:function(arrow,modifier){var that=this,index=that._index+1,currentValue=new DATE(+that._current);arrow=that[arrow];if(!arrow.hasClass(DISABLED)){if(index>3){currentValue.setFullYear(currentValue.getFullYear()+100*modifier);}else{calendar.views[index].setDate(currentValue,modifier);}that.navigate(currentValue);}},_option:function(option,value){var that=this,options=that.options,selectedValue=+that._value,bigger,navigate;if(value===undefined){return options[option];}value=parse(value,options.format,options.culture);if(!value){return;}options[option]=new DATE(+value);navigate=that._view.compare(value,that._current);if(option===MIN){bigger=+value>selectedValue;navigate=navigate>-1;}else{bigger=selectedValue>+value;navigate=navigate<1;}if(bigger){that.value(null);}else if(navigate){that.navigate();}that._toggle();},_toggle:function(toggle){var that=this,options=that.options,link=that._today;if(toggle===undefined){toggle=isInRange(new DATE(),options.min,options.max);}if(link){link.off(CLICK);if(toggle){link.addClass(TODAY).removeClass(DISABLED).on(CLICK,proxy(that._todayClick,that));}else{link.removeClass(TODAY).addClass(DISABLED).on(CLICK,prevent);}}},_todayClick:function(e){var that=this,depth=views[that.options.depth],today=new DATE();e.preventDefault();if(that._view.compare(that._current,today)===0&&that._index==depth){that._changeView=false;}that._value=today;that.navigate(today,depth);that.trigger(CHANGE);},_templates:function(){var that=this,options=that.options,footer=options.footer,month=options.month,content=month.content,empty=month.empty;that.month={content:template('<td#=data.cssClass# role="gridcell"><a tabindex="-1" class="k-link#=data.linkClass#" href="#=data.url#" '+kendo.attr("value")+'="#=data.dateString#" title="#=data.title#">'+(content||"#=data.value#")+'</a></td>',{useWithBlock:!!content}),empty:template('<td role="gridcell">'+(empty||"&nbsp;")+"</td>",{useWithBlock:!!empty})};if(footer!==false){that.footer=template(footer||'#= kendo.toString(data,"D","'+options.culture+'") #',{useWithBlock:false});}}});ui.plugin(Calendar);var calendar={firstDayOfMonth:function(date){return new DATE(date.getFullYear(),date.getMonth(),1);},firstVisibleDay:function(date,calendarInfo){calendarInfo=calendarInfo||kendo.culture().calendar;var firstDay=calendarInfo.firstDay,firstVisibleDay=new DATE(date.getFullYear(),date.getMonth(),0,date.getHours(),date.getMinutes(),date.getSeconds(),date.getMilliseconds());while(firstVisibleDay.getDay()!=firstDay){calendar.setTime(firstVisibleDay,-1*MS_PER_DAY);}return firstVisibleDay;},setTime:function(date,time){var tzOffsetBefore=date.getTimezoneOffset(),resultDATE=new DATE(date.getTime()+time),tzOffsetDiff=resultDATE.getTimezoneOffset()-tzOffsetBefore;date.setTime(resultDATE.getTime()+tzOffsetDiff*MS_PER_MINUTE);},views:[{name:MONTH,title:function(date,culture){return getCalendarInfo(culture).months.names[date.getMonth()]+" "+date.getFullYear();},content:function(options){var that=this,idx=0,min=options.min,max=options.max,date=options.date,dates=options.dates,format=options.format,culture=options.culture,navigateUrl=options.url,hasUrl=navigateUrl&&dates[0],currentCalendar=getCalendarInfo(culture),firstDayIdx=currentCalendar.firstDay,days=currentCalendar.days,names=shiftArray(days.names,firstDayIdx),short=shiftArray(days.namesShort,firstDayIdx),start=calendar.firstVisibleDay(date,currentCalendar),firstDayOfMonth=that.first(date),lastDayOfMonth=that.last(date),toDateString=that.toDateString,today=new DATE(),html='<table tabindex="0" role="grid" class="k-content" cellspacing="0"><thead><tr role="row">';for(;idx<7;idx++){html+='<th scope="col" title="'+names[idx]+'">'+short[idx]+'</th>';}today=new DATE(today.getFullYear(),today.getMonth(),today.getDate());adjustDate(today);today=+today;return view({cells:42,perRow:7,html:html+='</tr></thead><tbody><tr role="row">',start:new DATE(start.getFullYear(),start.getMonth(),start.getDate()),min:new DATE(min.getFullYear(),min.getMonth(),min.getDate()),max:new DATE(max.getFullYear(),max.getMonth(),max.getDate()),content:options.content,empty:options.empty,setter:that.setDate,build:function(date,idx){var cssClass=[],day=date.getDay(),linkClass="",url="#";if(date<firstDayOfMonth||date>lastDayOfMonth){cssClass.push(OTHERMONTH);}if(+date===today){cssClass.push("k-today");}if(day===0||day===6){cssClass.push("k-weekend");}if(hasUrl&&inArray(+date,dates)){url=navigateUrl.replace("{0}",kendo.toString(date,format,culture));linkClass=" k-action-link";}return{date:date,dates:dates,ns:kendo.ns,title:kendo.toString(date,"D",culture),value:date.getDate(),dateString:toDateString(date),cssClass:cssClass[0]?' class="'+cssClass.join(" ")+'"':"",linkClass:linkClass,url:url};}});},first:function(date){return calendar.firstDayOfMonth(date);},last:function(date){var last=new DATE(date.getFullYear(),date.getMonth()+1,0),first=calendar.firstDayOfMonth(date),timeOffset=Math.abs(last.getTimezoneOffset()-first.getTimezoneOffset());if(timeOffset){last.setHours(first.getHours()+(timeOffset/60));}return last;},compare:function(date1,date2){var result,month1=date1.getMonth(),year1=date1.getFullYear(),month2=date2.getMonth(),year2=date2.getFullYear();if(year1>year2){result=1;}else if(year1<year2){result=-1;}else{result=month1==month2?0:month1>month2?1:-1;}return result;},setDate:function(date,value){var hours=date.getHours();if(value instanceof DATE){date.setFullYear(value.getFullYear(),value.getMonth(),value.getDate());}else{calendar.setTime(date,value*MS_PER_DAY);}adjustDate(date,hours);},toDateString:function(date){return date.getFullYear()+"/"+date.getMonth()+"/"+date.getDate();}},{name:"year",title:function(date){return date.getFullYear();},content:function(options){var namesAbbr=getCalendarInfo(options.culture).months.namesAbbr,toDateString=this.toDateString,min=options.min,max=options.max;return view({min:new DATE(min.getFullYear(),min.getMonth(),1),max:new DATE(max.getFullYear(),max.getMonth(),1),start:new DATE(options.date.getFullYear(),0,1),setter:this.setDate,build:function(date){return{value:namesAbbr[date.getMonth()],ns:kendo.ns,dateString:toDateString(date),cssClass:""};}});},first:function(date){return new DATE(date.getFullYear(),0,date.getDate());},last:function(date){return new DATE(date.getFullYear(),11,date.getDate());},compare:function(date1,date2){return compare(date1,date2);},setDate:function(date,value){var month,hours=date.getHours();if(value instanceof DATE){month=value.getMonth();date.setFullYear(value.getFullYear(),month,date.getDate());if(month!==date.getMonth()){date.setDate(0);}}else{month=date.getMonth()+value;date.setMonth(month);if(month>11){month-=12;}if(month>0&&date.getMonth()!=month){date.setDate(0);}}adjustDate(date,hours);},toDateString:function(date){return date.getFullYear()+"/"+date.getMonth()+"/1";}},{name:"decade",title:function(date){var start=date.getFullYear();start=start-start%10;return start+"-"+(start+9);},content:function(options){var year=options.date.getFullYear(),toDateString=this.toDateString;return view({start:new DATE(year-year%10-1,0,1),min:new DATE(options.min.getFullYear(),0,1),max:new DATE(options.max.getFullYear(),0,1),setter:this.setDate,build:function(date,idx){return{value:date.getFullYear(),ns:kendo.ns,dateString:toDateString(date),cssClass:idx===0||idx==11?OTHERMONTHCLASS:""};}});},first:function(date){var year=date.getFullYear();return new DATE(year-year%10,date.getMonth(),date.getDate());},last:function(date){var year=date.getFullYear();return new DATE(year-year%10+9,date.getMonth(),date.getDate());},compare:function(date1,date2){return compare(date1,date2,10);},setDate:function(date,value){setDate(date,value,1);},toDateString:function(date){return date.getFullYear()+"/0/1";}},{name:CENTURY,title:function(date){var start=date.getFullYear();start=start-start%100;return start+"-"+(start+99);},content:function(options){var year=options.date.getFullYear(),minYear=options.min.getFullYear(),maxYear=options.max.getFullYear(),toDateString=this.toDateString;minYear=minYear-minYear%10;maxYear=maxYear-maxYear%10;if(maxYear-minYear<10){maxYear=minYear+9;}return view({start:new DATE(year-year%100-10,0,1),min:new DATE(minYear,0,1),max:new DATE(maxYear,0,1),setter:this.setDate,build:function(date,idx){var year=date.getFullYear();return{value:year+" - "+(year+9),ns:kendo.ns,dateString:toDateString(date),cssClass:idx===0||idx==11?OTHERMONTHCLASS:""};}});},first:function(date){var year=date.getFullYear();return new DATE(year-year%100,date.getMonth(),date.getDate());},last:function(date){var year=date.getFullYear();return new DATE(year-year%100+99,date.getMonth(),date.getDate());},compare:function(date1,date2){return compare(date1,date2,100);},setDate:function(date,value){setDate(date,value,10);},toDateString:function(date){var year=date.getFullYear();return(year-year%10)+"/0/1";}}]};function view(options){var idx=0,data,min=options.min,max=options.max,start=options.start,setter=options.setter,build=options.build,length=options.cells||12,cellsPerRow=options.perRow||4,content=options.content||cellTemplate,empty=options.empty||emptyCellTemplate,html=options.html||'<table tabindex="0" role="grid" class="k-content k-meta-view" cellspacing="0"><tbody><tr role="row">';for(;idx<length;idx++){if(idx>0&&idx%cellsPerRow===0){html+='</tr><tr role="row">';}data=build(start,idx);html+=isInRange(start,min,max)?content(data):empty(data);setter(start,1);}return html+"</tr></tbody></table>";}function compare(date1,date2,modifier){var year1=date1.getFullYear(),start=date2.getFullYear(),end=start,result=0;if(modifier){start=start-start%modifier;end=start-start%modifier+modifier-1;}if(year1>end){result=1;}else if(year1<start){result=-1;}return result;}function restrictValue(value,min,max){var today=new DATE();today=new DATE(today.getFullYear(),today.getMonth(),today.getDate());if(value){today=new DATE(+value);}if(min>today){today=new DATE(+min);}else if(max<today){today=new DATE(+max);}return today;}function isInRange(date,min,max){return+date>=+min&&+date<=+max;}function shiftArray(array,idx){return array.slice(idx).concat(array.slice(0,idx));}function setDate(date,value,multiplier){value=value instanceof DATE?value.getFullYear():date.getFullYear()+multiplier*value;date.setFullYear(value);}function mousetoggle(e){if(e.type.indexOf("touch")===-1){e.stopImmediatePropagation();}$(this).toggleClass(HOVER,MOUSEENTER.indexOf(e.type)>-1||e.type==FOCUS);}function prevent(e){e.preventDefault();}function getCalendarInfo(culture){return getCulture(culture).calendars.standard;}function normalize(options){var start=views[options.start],depth=views[options.depth],culture=getCulture(options.culture);options.format=extractFormat(options.format||culture.calendars.standard.patterns.d);if(isNaN(start)){start=0;options.start=MONTH;}if(depth===undefined||depth>start){options.depth=MONTH;}if(!options.dates){options.dates=[];}}function makeUnselectable(element){if(isIE8){element.find("*").attr("unselectable","on");}}function inArray(date,dates){for(var i=0,length=dates.length;i<length;i++){if(date===+dates[i]){return true;}}return false;}function isEqualDatePart(value1,value2){if(value1){return value1.getFullYear()===value2.getFullYear()&&value1.getMonth()===value2.getMonth()&&value1.getDate()===value2.getDate();}return false;}calendar.isEqualDatePart=isEqualDatePart;calendar.makeUnselectable=makeUnselectable;calendar.restrictValue=restrictValue;calendar.isInRange=isInRange;calendar.normalize=normalize;calendar.viewsEnum=views;kendo.calendar=calendar;})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,Widget=ui.Widget,parse=kendo.parseDate,keys=kendo.keys,template=kendo.template,DIV="<div />",SPAN="<span />",ns=".kendoDatePicker",CLICK="touchend"+ns+" click"+ns,OPEN="open",CLOSE="close",CHANGE="change",DATEVIEW="dateView",DISABLED="disabled",DEFAULT="k-state-default",FOCUSED="k-state-focused",SELECTED="k-state-selected",STATEDISABLED="k-state-disabled",HOVER="k-state-hover",KEYDOWN="keydown"+ns,HOVEREVENTS="mouseenter"+ns+" mouseleave"+ns,MOUSEDOWN="touchstart"+ns+" mousedown"+ns,ID="id",MIN="min",MAX="max",MONTH="month",ARIA_DISABLED="aria-disabled",ARIA_EXPANDED="aria-expanded",ARIA_HIDDEN="aria-hidden",calendar=kendo.calendar,isInRange=calendar.isInRange,restrictValue=calendar.restrictValue,isEqualDatePart=calendar.isEqualDatePart,extend=$.extend,proxy=$.proxy,DATE=Date;function normalize(options){var parseFormats=options.parseFormats;calendar.normalize(options);parseFormats=$.isArray(parseFormats)?parseFormats:[parseFormats];parseFormats.splice(0,0,options.format);options.parseFormats=parseFormats;}function preventDefault(e){e.preventDefault();}var DateView=function(options){var that=this,id,body=document.body,sharedCalendar=DatePicker.sharedCalendar,div=$(DIV).attr(ARIA_HIDDEN,"true").addClass("k-calendar-container").appendTo(body);if(!sharedCalendar){sharedCalendar=DatePicker.sharedCalendar=new ui.Calendar($(DIV).attr(ID,kendo.guid()).hide().appendTo(body),{focusOnNav:false});calendar.makeUnselectable(sharedCalendar.element);}that.calendar=sharedCalendar;that.options=options=options||{};id=options.id;if(id){id+="_dateview";div.attr(ID,id);that._dateViewID=id;}that.popup=new ui.Popup(div,extend(options.popup,options,{name:"Popup",isRtl:kendo.support.isRtl(options.anchor)}));that.div=div;that._templates();that.value(options.value);};DateView.prototype={_calendar:function(){var that=this,popup=that.popup,options=that.options,calendar=that.calendar,element=calendar.element;if(element.data(DATEVIEW)!==that){element.appendTo(popup.element).data(DATEVIEW,that).off(CLICK+" "+KEYDOWN).on(CLICK,"td:has(.k-link)",proxy(that._click,that)).on(MOUSEDOWN,preventDefault).show();calendar.unbind(CHANGE).bind(CHANGE,options);calendar.month=that.month;calendar.options.dates=options.dates;calendar.options.depth=options.depth;calendar.options.culture=options.culture;calendar._footer(that.footer);calendar.min(options.min);calendar.max(options.max);calendar.navigate(that._value,options.start);that.value(that._value);}},destroy:function(){var that=this,calendar=that.calendar,element=calendar.element,popups;if(element.data(DATEVIEW)===that){popups=$(".k-calendar-container");if(popups.length>1){element.hide().appendTo(document.body);}else{element.off(ns);calendar.destroy();DatePicker.sharedCalendar=null;}}that.popup.destroy();},open:function(){var that=this;that._calendar();that.popup.open();},close:function(){this.popup.close();},min:function(value){this._option(MIN,value);},max:function(value){this._option(MAX,value);},toggle:function(){var that=this;that[that.popup.visible()?CLOSE:OPEN]();},move:function(e){var that=this,key=e.keyCode,calendar=that.calendar,selectIsClicked=e.ctrlKey&&key==keys.DOWN||key==keys.ENTER;if(key==keys.ESC){that.close();return;}if(e.altKey){if(key==keys.DOWN){that.open();e.preventDefault();}else if(key==keys.UP){that.close();e.preventDefault();}return;}if(!that.popup.visible()){return;}if(selectIsClicked&&calendar._cell.hasClass(SELECTED)){that.close();e.preventDefault();return;}that._current=calendar._move(e);},value:function(value){var that=this,calendar=that.calendar,options=that.options;that._value=value;that._current=new DATE(+restrictValue(value,options.min,options.max));if(calendar.element.data(DATEVIEW)===that){calendar.value(value);}},_click:function(e){if(e.currentTarget.className.indexOf(SELECTED)!==-1){this.close();}},_option:function(option,value){var that=this,options=that.options,calendar=that.calendar;options[option]=value;if(calendar.element.data(DATEVIEW)===that){calendar[option](value);}},_templates:function(){var that=this,options=that.options,footer=options.footer,month=options.month||{},content=month.content,empty=month.empty;that.month={content:template('<td#=data.cssClass#><a tabindex="-1" class="k-link" href="\\#" '+kendo.attr("value")+'="#=data.dateString#" title="#=data.title#">'+(content||"#=data.value#")+'</a></td>',{useWithBlock:!!content}),empty:template("<td>"+(empty||"&nbsp;")+"</td>",{useWithBlock:!!empty})};if(footer!==false){that.footer=template(footer||'#= kendo.toString(data,"D","'+options.culture+'") #',{useWithBlock:false});}}};DateView.normalize=normalize;kendo.DateView=DateView;var DatePicker=Widget.extend({init:function(element,options){var that=this,div;Widget.fn.init.call(that,element,options);element=that.element;options=that.options;normalize(options);that._wrapper();that.dateView=new DateView(extend({},options,{id:element.attr(ID),anchor:that.wrapper,change:function(){that._change(this.value());that.close();},close:function(e){if(that.trigger(CLOSE)){e.preventDefault();}else{element.attr(ARIA_EXPANDED,false);div.attr(ARIA_HIDDEN,true);}},open:function(e){var options=that.options,date;if(that.trigger(OPEN)){e.preventDefault();}else{date=parse(element.val(),options.parseFormats,options.culture);if(!date){that.dateView.value(date);}else{that.dateView._current=date;that.dateView.calendar._focus(date);}element.attr(ARIA_EXPANDED,true);div.attr(ARIA_HIDDEN,false);}}}));div=that.dateView.div;that._icon();element[0].type="text";element.addClass("k-input").on("keydown"+ns,proxy(that._keydown,that)).on("blur"+ns,proxy(that._blur,that)).on("focus"+ns,function(e){that._inputWrapper.addClass(FOCUSED);}).attr({role:"textbox","aria-haspopup":true,"aria-expanded":false,"aria-owns":that.dateView._dateViewID});that._reset();that._template();that.enable(!element.is('[disabled]'));that.value(options.value||that.element.val());kendo.notify(that);},events:[OPEN,CLOSE,CHANGE],options:{name:"DatePicker",value:null,footer:"",format:"",culture:"",parseFormats:[],min:new Date(1900,0,1),max:new Date(2099,11,31),start:MONTH,depth:MONTH,animation:{},month:{},dates:[],ARIATemplate:'Current focused date is #=kendo.toString(data.current, "D")#'},setOptions:function(options){var that=this,dateView=that.dateView,dateViewOptions=dateView.options;Widget.fn.setOptions.call(that,options);normalize(that.options);dateView.options=extend(dateViewOptions,that.options,{change:dateViewOptions.change,close:dateViewOptions.close,open:dateViewOptions.open});},enable:function(enable){var that=this,icon=that._dateIcon.off(ns),wrapper=that._inputWrapper.off(ns),element=that.element;if(enable===false){wrapper.removeClass(DEFAULT).addClass(STATEDISABLED);element.attr(DISABLED,DISABLED).attr(ARIA_DISABLED,true);}else{wrapper.addClass(DEFAULT).removeClass(STATEDISABLED).on(HOVEREVENTS,that._toggleHover);element.removeAttr(DISABLED).attr(ARIA_DISABLED,false);icon.on(CLICK,proxy(that._click,that)).on(MOUSEDOWN,preventDefault);}},destroy:function(){var that=this;Widget.fn.destroy.call(that);that.dateView.destroy();that.element.off(ns);that._dateIcon.off(ns);that._inputWrapper.off(ns);if(that._form){that._form.off("reset",that._resetHandler);}},open:function(){this.dateView.open();},close:function(){this.dateView.close();},min:function(value){return this._option(MIN,value);},max:function(value){return this._option(MAX,value);},value:function(value){var that=this;if(value===undefined){return that._value;}that._old=that._update(value);},_toggleHover:function(e){$(e.currentTarget).toggleClass(HOVER,e.type==="mouseenter");},_blur:function(){var that=this;that.close();that._change(that.element.val());that._inputWrapper.removeClass(FOCUSED);},_click:function(e){var that=this,element=that.element;that.dateView.toggle();if(e.type==="click"&&element[0]!==document.activeElement){element.focus();}},_change:function(value){var that=this;value=that._update(value);if(+that._old!=+value){that._old=value;that.trigger(CHANGE);that.element.trigger(CHANGE);}},_keydown:function(e){var that=this,dateView=that.dateView;if(!dateView.popup.visible()&&e.keyCode==keys.ENTER){that._change(that.element.val());}else{dateView.move(e);that._updateARIA(dateView._current);}},_icon:function(){var that=this,element=that.element,icon;icon=element.next("span.k-select");if(!icon[0]){icon=$('<span unselectable="on" class="k-select"><span unselectable="on" class="k-icon k-i-calendar">select</span></span>').insertAfter(element);}that._dateIcon=icon.attr({"role":"button","aria-controls":that.dateView._dateViewID});},_option:function(option,value){var that=this,options=that.options;if(value===undefined){return options[option];}value=parse(value,options.parseFormats,options.culture);if(!value){return;}options[option]=new DATE(+value);that.dateView[option](value);},_update:function(value){var that=this,options=that.options,min=options.min,max=options.max,date=parse(value,options.parseFormats,options.culture),formattedValue;if(+date===+that._value){formattedValue=kendo.toString(date,options.format,options.culture);if(formattedValue!==value){that.element.val(date===null?value:formattedValue);}return date;}if(date!==null&&isEqualDatePart(date,min)){date=restrictValue(date,min,max);}else if(!isInRange(date,min,max)){date=null;}that._value=date;that.dateView.value(date);that.element.val(date?kendo.toString(date,options.format,options.culture):value);that._updateARIA(date);return date;},_wrapper:function(){var that=this,element=that.element,wrapper;wrapper=element.parents(".k-datepicker");if(!wrapper[0]){wrapper=element.wrap(SPAN).parent().addClass("k-picker-wrap k-state-default");wrapper=wrapper.wrap(SPAN).parent();}wrapper[0].style.cssText=element[0].style.cssText;element.css({width:"100%",height:element[0].style.height});that.wrapper=wrapper.addClass("k-widget k-datepicker k-header").addClass(element[0].className);that._inputWrapper=$(wrapper[0].firstChild);},_reset:function(){var that=this,element=that.element,form=element.closest("form");if(form[0]){that._resetHandler=function(){that.value(element[0].defaultValue);};that._form=form.on("reset",that._resetHandler);}},_template:function(){this._ariaTemplate=template(this.options.ARIATemplate);},_updateARIA:function(date){this.element.attr("aria-label",this._ariaTemplate({current:date}));}});ui.plugin(DatePicker);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,support=kendo.support,placeholderSupported=support.placeholder,ui=kendo.ui,keys=kendo.keys,DataSource=kendo.data.DataSource,List=ui.List,ARIA_DISABLED="aria-disabled",DEFAULT="k-state-default",DISABLED="disabled",FOCUSED="k-state-focused",SELECTED="k-state-selected",STATEDISABLED="k-state-disabled",HOVER="k-state-hover",ns=".kendoAutoComplete",HOVEREVENTS="mouseenter"+ns+" mouseleave"+ns,caretPosition=List.caret,selectText=List.selectText,proxy=$.proxy;function indexOfWordAtCaret(caret,text,separator){return separator?text.substring(0,caret).split(separator).length-1:0;}function wordAtCaret(caret,text,separator){return text.split(separator)[indexOfWordAtCaret(caret,text,separator)];}function replaceWordAtCaret(caret,text,word,separator){var words=text.split(separator);words.splice(indexOfWordAtCaret(caret,text,separator),1,word);if(separator&&words[words.length-1]!==""){words.push("");}return words.join(separator);}function moveCaretAtEnd(element){var length=element.value.length;selectText(element,length,length);}var AutoComplete=List.extend({init:function(element,options){var that=this,wrapper;that.ns=ns;options=$.isArray(options)?{dataSource:options}:options;List.fn.init.call(that,element,options);element=that.element;options=that.options;options.placeholder=options.placeholder||element.attr("placeholder");if(placeholderSupported){element.attr("placeholder",options.placeholder);}that._wrapper();that._accessors();that._dataSource();element[0].type="text";wrapper=that.wrapper;that._popup();element.addClass("k-input").on("keydown"+ns,proxy(that._keydown,that)).on("paste"+ns,proxy(that._search,that)).on("focus"+ns,function(){that._prev=that._accessor();that._placeholder(false);wrapper.addClass(FOCUSED);}).on("blur"+ns,function(){that._change();that._placeholder();wrapper.removeClass(FOCUSED);}).attr({autocomplete:"off",role:"textbox","aria-haspopup":true});that._enable();that._popup();that._old=that._accessor();if(element[0].id){element.attr("aria-owns",that.ul[0].id);}that._aria();that._placeholder();kendo.notify(that);},options:{name:"AutoComplete",enable:true,suggest:false,template:"",dataTextField:"",minLength:1,delay:200,height:200,filter:"startswith",ignoreCase:true,highlightFirst:false,separator:null,placeholder:"",animation:{}},_dataSource:function(){var that=this;if(that.dataSource&&that._refreshHandler){that._unbindDataSource();}else{that._refreshHandler=proxy(that.refresh,that);}that.dataSource=DataSource.create(that.options.dataSource).bind("change",that._refreshHandler);},setDataSource:function(dataSource){this.options.dataSource=dataSource;this._dataSource();},events:["open","close","change","select","dataBinding","dataBound"],setOptions:function(options){List.fn.setOptions.call(this,options);this._template();this._accessors();this._aria();},enable:function(enable){var that=this,element=that.element,wrapper=that.wrapper.off(HOVEREVENTS);if(enable===false){wrapper.removeClass(DEFAULT).addClass(STATEDISABLED);element.attr(DISABLED,DISABLED).attr(ARIA_DISABLED,true);}else{wrapper.removeClass(STATEDISABLED).addClass(DEFAULT).on(HOVEREVENTS,that._toggleHover);element.removeAttr(DISABLED).attr(ARIA_DISABLED,false);}},close:function(){var that=this;that.current(null);that.popup.close();},destroy:function(){var that=this;that.element.off(ns);that.wrapper.off(ns);List.fn.destroy.call(that);},refresh:function(){var that=this,ul=that.ul[0],popup=that.popup,options=that.options,data=that._data(),length=data.length,action;that.trigger("dataBinding");ul.innerHTML=kendo.render(that.template,data);that._height(length);if(popup.visible()){popup._position();}if(length){if(options.highlightFirst){that.current($(ul.firstChild));}if(options.suggest){that.suggest($(ul.firstChild));}}if(that._open){that._open=false;action=length?"open":"close";if(that._typing&&that.element[0]!==document.activeElement){action="close";}popup[action]();that._typing=undefined;}if(that._touchScroller){that._touchScroller.reset();}that._makeUnselectable();that.trigger("dataBound");},select:function(li){this._select(li);},search:function(word){var that=this,options=that.options,ignoreCase=options.ignoreCase,separator=options.separator,length;word=word||that._accessor();that._current=null;clearTimeout(that._typing);if(separator){word=wordAtCaret(caretPosition(that.element[0]),word,separator);}length=word.length;if(!length){that.popup.close();}else if(length>=that.options.minLength){that._open=true;that.dataSource.filter({value:ignoreCase?word.toLowerCase():word,operator:options.filter,field:options.dataTextField,ignoreCase:ignoreCase});}},suggest:function(word){var that=this,key=that._last,value=that._accessor(),element=that.element[0],caret=caretPosition(element),separator=that.options.separator,words=value.split(separator),wordIndex=indexOfWordAtCaret(caret,value,separator),selectionEnd=caret,idx;if(key==keys.BACKSPACE||key==keys.DELETE){that._last=undefined;return;}word=word||"";if(typeof word!=="string"){idx=List.inArray(word[0],that.ul[0]);if(idx>-1){word=that._text(that._data()[idx]);}else{word="";}}if(caret<=0){caret=value.toLowerCase().indexOf(word.toLowerCase())+1;}idx=value.substring(0,caret).lastIndexOf(separator);idx=idx>-1?caret-(idx+separator.length):caret;value=words[wordIndex].substring(0,idx);if(word){idx=word.toLowerCase().indexOf(value.toLowerCase());if(idx>-1){word=word.substring(idx+value.length);selectionEnd=caret+word.length;value+=word;}if(separator&&words[words.length-1]!==""){words.push("");}}words[wordIndex]=value;that._accessor(words.join(separator||""));selectText(element,caret,selectionEnd);},value:function(value){if(value!==undefined){this._accessor(value);this._old=value;}else{return this._accessor();}},_accessor:function(value){var that=this,element=that.element[0];if(value!==undefined){element.value=value;that._placeholder();}else{value=element.value;if(element.className.indexOf("k-readonly")>-1){if(value===that.options.placeholder){return"";}else{return value;}}return value;}},_accept:function(li){var that=this;that._focus(li);moveCaretAtEnd(that.element[0]);},_keydown:function(e){var that=this,ul=that.ul[0],key=e.keyCode,current=that._current,visible=that.popup.visible();that._last=key;if(key===keys.DOWN){if(visible){that._move(current?current.next():$(ul.firstChild));}e.preventDefault();}else if(key===keys.UP){if(visible){that._move(current?current.prev():$(ul.lastChild));}e.preventDefault();}else if(key===keys.ENTER||key===keys.TAB){if(key===keys.ENTER&&that.popup.visible()){e.preventDefault();}that._accept(current);}else if(key===keys.ESC){if(that.popup.visible()){e.preventDefault();}that.close();}else{that._search();}},_move:function(li){var that=this;li=li[0]?li:null;that.current(li);if(that.options.suggest){that.suggest(li);}},_placeholder:function(show){if(placeholderSupported){return;}var that=this,element=that.element,placeholder=that.options.placeholder,value;if(placeholder){value=element.val();if(show===undefined){show=!value;}if(!show){if(value!==placeholder){placeholder=value;}else{placeholder="";}}if(value===that._old&&!show){return;}element.toggleClass("k-readonly",show).val(placeholder);}},_search:function(){var that=this;clearTimeout(that._typing);that._typing=setTimeout(function(){if(that._prev!==that._accessor()){that._prev=that._accessor();that.search();}},that.options.delay);},_select:function(li){var that=this,separator=that.options.separator,data=that._data(),text,idx;li=$(li);if(li[0]&&!li.hasClass(SELECTED)){idx=List.inArray(li[0],that.ul[0]);if(idx>-1){data=data[idx];text=that._text(data);if(separator){text=replaceWordAtCaret(caretPosition(that.element[0]),that._accessor(),text,separator);}that._accessor(text);that.current(li.addClass(SELECTED));}}},_toggleHover:function(e){$(e.currentTarget).toggleClass(HOVER,e.type==="mouseenter");},_wrapper:function(){var that=this,element=that.element,DOMelement=element[0],wrapper;wrapper=element.parent();if(!wrapper.is("span.k-widget")){wrapper=element.wrap("<span />").parent();}wrapper.attr("tabindex",-1);wrapper.attr("role","presentation");wrapper[0].style.cssText=DOMelement.style.cssText;element.css({width:"100%",height:DOMelement.style.height});that._focused=that.element;that.wrapper=wrapper.addClass("k-widget k-autocomplete k-header").addClass(DOMelement.className);}});ui.plugin(AutoComplete);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,Select=ui.Select,os=kendo.support.mobileOS,ns=".kendoDropDownList",ATTRIBUTE="disabled",CHANGE="change",SELECT="select",FOCUSED="k-state-focused",DEFAULT="k-state-default",DISABLED="k-state-disabled",SELECTED="k-state-selected",HOVEREVENTS="mouseenter"+ns+" mouseleave"+ns,proxy=$.proxy;var DropDownList=Select.extend({init:function(element,options){var that=this,index=options&&options.index,optionLabel,useOptionLabel,text;that.ns=ns;options=$.isArray(options)?{dataSource:options}:options;Select.fn.init.call(that,element,options);that._focusHandler=function(){that.wrapper.focus();};options=that.options;element=that.element.on("focus"+ns,that._focusHandler);that._reset();that._word="";that._wrapper();that._tabindex();that._aria();that._span();that._popup();that._mobile();that._accessors();that._dataSource();that._enable();that._cascade();that.selectedIndex=-1;if(index!==undefined){options.index=index;}if(options.autoBind){that.dataSource.fetch();}else{text=options.text;if(!text){optionLabel=that._optionLabelText(options.optionLabel),useOptionLabel=optionLabel&&options.index===0;if(element.is(SELECT)){if(useOptionLabel){text=optionLabel;}else{text=element.children(":selected").text();}}else if(!element[0].value&&useOptionLabel){text=optionLabel;}}that.text(text);}kendo.notify(that);},options:{name:"DropDownList",enable:true,index:0,autoBind:true,text:"",template:"",delay:500,height:200,dataTextField:"",dataValueField:"",optionLabel:"",cascadeFrom:"",ignoreCase:true,animation:{}},events:["open","close",CHANGE,"select","dataBinding","dataBound"],setOptions:function(options){Select.fn.setOptions.call(this,options);this._template();this._accessors();this._aria();},destroy:function(){var that=this;that.wrapper.off(ns);that.element.off(ns);that._inputWrapper.off(ns);Select.fn.destroy.call(that);},enable:function(enable){var that=this,element=that.element,wrapper=that.wrapper.off(ns),dropDownWrapper=that._inputWrapper.off(HOVEREVENTS);if(enable===false){element.attr(ATTRIBUTE,ATTRIBUTE);dropDownWrapper.removeClass(DEFAULT).addClass(DISABLED);}else{element.removeAttr(ATTRIBUTE,ATTRIBUTE);dropDownWrapper.addClass(DEFAULT).removeClass(DISABLED).on(HOVEREVENTS,that._toggleHover);wrapper.on("touchend"+ns+" click"+ns,function(e){that._blured=false;e.preventDefault();that.toggle();}).on("keydown"+ns,proxy(that._keydown,that)).on("keypress"+ns,proxy(that._keypress,that)).on("focusin"+ns,function(){dropDownWrapper.addClass(FOCUSED);that._blured=false;}).on("focusout"+ns,function(){if(!that._blured){that._blur();dropDownWrapper.removeClass(FOCUSED);that._blured=true;element.blur();}});}},open:function(){var that=this;if(!that.ul[0].firstChild){that._open=true;if(!that._request){that.dataSource.fetch();}}else{that.popup.open();that._scroll(that._current);}},toggle:function(toggle){this._toggle(toggle);},refresh:function(){var that=this,data=that._data(),length=data.length,optionLabel=that.options.optionLabel;that.trigger("dataBinding");if(that._current){that.current(null);}that.ul[0].innerHTML=kendo.render(that.template,data);that._height(length);if(that.popup.visible()){that.popup._position();}if(that.element.is(SELECT)){if(optionLabel&&length){optionLabel=that._optionLabelText(optionLabel);optionLabel='<option value="">'+optionLabel+"</option>";}that._options(data,optionLabel);}if(that._open){that._open=false;that.toggle(!!length);}that._hideBusy();that._makeUnselectable();if(!that._valueCalled&&data[0]){that._selectItem();}that._valueCalled=false;that.trigger("dataBound");},search:function(word){if(word){var that=this,ignoreCase=that.options.ignoreCase;if(ignoreCase){word=word.toLowerCase();}that._select(function(dataItem){var text=that._text(dataItem);if(text!==undefined){text=(text+"");if(ignoreCase){text=text.toLowerCase();}return text.indexOf(word)===0;}});}},select:function(li){var that=this;if(li===undefined){return that.selectedIndex;}else{that._select(li);that._old=that._accessor();that._oldIndex=that.selectedIndex;}},text:function(text){var span=this.span;if(text!==undefined){span.text(text);}else{return span.text();}},value:function(value){var that=this,idx;if(value!==undefined){if(value!==null){value=value.toString();}that._valueCalled=true;if(value&&that._valueOnFetch(value)){return;}idx=that._index(value);that.select(idx>-1?idx:0);}else{return that._accessor();}},_accept:function(li){this._focus(li);},_optionLabelText:function(){var options=this.options,dataTextField=options.dataTextField,optionLabel=options.optionLabel;if(optionLabel&&dataTextField&&typeof optionLabel==="object"){return this._text(optionLabel);}return optionLabel;},_data:function(){var that=this,options=that.options,optionLabel=options.optionLabel,textField=options.dataTextField,valueField=options.dataValueField,data=that.dataSource.view(),length=data.length,first=optionLabel,idx=0;if(optionLabel&&length){if(typeof optionLabel==="object"){first=optionLabel;}else if(textField){first={};textField=textField.split(".");valueField=valueField.split(".");assign(first,valueField,"");assign(first,textField,optionLabel);}first=new kendo.data.ObservableArray([first]);for(;idx<length;idx++){first.push(data[idx]);}data=first;}return data;},_keydown:function(e){var that=this,key=e.keyCode,keys=kendo.keys,ul=that.ul[0];if(key===keys.LEFT){key=keys.UP;}else if(key===keys.RIGHT){key=keys.DOWN;}e.keyCode=key;that._move(e);if(key===keys.HOME){e.preventDefault();that._select(ul.firstChild);}else if(key===keys.END){e.preventDefault();that._select(ul.lastChild);}},_keypress:function(e){var that=this;setTimeout(function(){that._word+=String.fromCharCode(e.keyCode||e.charCode);that._search();});},_popup:function(){Select.fn._popup.call(this);this.popup.one("open",function(){this.wrapper=kendo.wrap(this.element).addClass("km-popup");});},_search:function(){var that=this;clearTimeout(that._typing);that._typing=setTimeout(function(){that._word="";},that.options.delay);that.search(that._word);},_select:function(li){var that=this,current=that._current,data=that._data(),value,text,idx;li=that._get(li);if(li&&li[0]&&!li.hasClass(SELECTED)){if(current){current.removeClass(SELECTED);}idx=ui.List.inArray(li[0],that.ul[0]);if(idx>-1){data=data[idx];text=that._text(data);value=that._value(data);that.selectedIndex=idx;that.text(text);that._accessor(value!==undefined?value:text,idx);that.current(li.addClass(SELECTED));if(that._optionID){that._current.attr("aria-selected",true);}}}},_mobile:function(){var that=this,popup=that.popup,root=popup.element.parents(".km-root").eq(0);if(root.length&&os){popup.options.animation.open.effects=(os.android||os.meego)?"fadeIn":os.ios?"slideIn:up":popup.options.animation.open.effects;}},_span:function(){var that=this,wrapper=that.wrapper,SELECTOR="span.k-input",span;span=wrapper.find(SELECTOR);if(!span[0]){wrapper.append('<span unselectable="on" class="k-dropdown-wrap k-state-default"><span unselectable="on" class="k-input">&nbsp;</span><span unselectable="on" class="k-select"><span unselectable="on" class="k-icon k-i-arrow-s">select</span></span></span>').append(that.element);span=wrapper.find(SELECTOR);}that.span=span;that._inputWrapper=$(wrapper[0].firstChild);that._arrow=wrapper.find(".k-icon").mousedown(function(e){e.preventDefault();});},_wrapper:function(){var that=this,element=that.element,DOMelement=element[0],wrapper;wrapper=element.parent();if(!wrapper.is("span.k-widget")){wrapper=element.wrap("<span />").parent();wrapper[0].style.cssText=DOMelement.style.cssText;}element.hide();that._focused=that.wrapper=wrapper.addClass("k-widget k-dropdown k-header").addClass(DOMelement.className).css("display","").attr({unselectable:"on",role:"listbox","aria-haspopup":true,"aria-expanded":false});}});function assign(instance,fields,value){var idx=0,lastIndex=fields.length-1,field;for(;idx<lastIndex;++idx){field=fields[idx];if(!(field in instance)){instance[field]={};}instance=instance[field];}instance[fields[lastIndex]]=value;}ui.plugin(DropDownList);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,List=ui.List,Select=ui.Select,support=kendo.support,placeholderSupported=support.placeholder,removeFiltersForField=Select.removeFiltersForField,keys=kendo.keys,ns=".kendoComboBox",CLICK="touchend"+ns+" click"+ns,ATTRIBUTE="disabled",CHANGE="change",DEFAULT="k-state-default",DISABLED="k-state-disabled",FOCUSED="k-state-focused",MOUSEDOWN="mousedown"+ns+" touchstart"+ns,SELECT="select",ARIA_DISABLED="aria-disabled",STATE_SELECTED="k-state-selected",STATE_FILTER="filter",STATE_ACCEPT="accept",STATE_REBIND="rebind",HOVEREVENTS="mouseenter"+ns+" mouseleave"+ns,NULL=null,proxy=$.proxy;var ComboBox=Select.extend({init:function(element,options){var that=this,wrapper,text;that.ns=ns;options=$.isArray(options)?{dataSource:options}:options;Select.fn.init.call(that,element,options);that._focusHandler=function(){that.input.focus();};options=that.options;element=that.element.on("focus"+ns,that._focusHandler);options.placeholder=options.placeholder||element.attr("placeholder");that._reset();that._wrapper();that._input();that._popup();that._accessors();that._dataSource();that._enable();that._cascade();wrapper=that._inputWrapper;that.input.on("keydown"+ns,proxy(that._keydown,that)).on("focus"+ns,function(){wrapper.addClass(FOCUSED);that._placeholder(false);}).on("blur"+ns,function(){wrapper.removeClass(FOCUSED);clearTimeout(that._typing);if(that.options.text!==that.input.val()){that.text(that.text());}that._placeholder();that._blur();element.blur();}).attr({"role":"combobox","aria-expanded":false});that._aria();that._oldIndex=that.selectedIndex=-1;that._old=that.value();if(options.autoBind){that._filterSource();}else{text=options.text;if(!text&&element.is(SELECT)){text=element.children(":selected").text();}if(text){that.input.val(text);}}if(!text){that._placeholder();}kendo.notify(that);},options:{name:"ComboBox",enable:true,index:-1,autoBind:true,delay:200,dataTextField:"",dataValueField:"",minLength:0,height:200,highlightFirst:true,template:"",filter:"none",placeholder:"",suggest:false,ignoreCase:true,animation:{}},events:["open","close",CHANGE,"select","dataBinding","dataBound"],setOptions:function(options){Select.fn.setOptions.call(this,options);this._template();this._accessors();this._aria();},current:function(li){var that=this,current=that._current;if(li===undefined){return current;}if(current){current.removeClass(STATE_SELECTED);}Select.fn.current.call(that,li);},destroy:function(){var that=this;that.input.off(ns);that.element.off(ns);that._inputWrapper.off(ns);Select.fn.destroy.call(that);},enable:function(enable){var that=this,input=that.input.add(that.element),wrapper=that._inputWrapper.off(HOVEREVENTS),arrow=that._arrow.parent().off(CLICK+" "+MOUSEDOWN);if(enable===false){wrapper.removeClass(DEFAULT).addClass(DISABLED);input.attr(ATTRIBUTE,ATTRIBUTE).attr(ARIA_DISABLED,true);}else{wrapper.removeClass(DISABLED).addClass(DEFAULT).on(HOVEREVENTS,that._toggleHover);input.removeAttr(ATTRIBUTE).attr(ARIA_DISABLED,false);arrow.on(CLICK,function(){that.toggle();}).on(MOUSEDOWN,function(e){e.preventDefault();});}},open:function(){var that=this,serverFiltering=that.dataSource.options.serverFiltering;if(that.popup.visible()){return;}if(!that.ul[0].firstChild||(that._state===STATE_ACCEPT&&!serverFiltering)){that._open=true;that._state=STATE_REBIND;that._filterSource();}else{that.popup.open();that._scroll(that._current);}},refresh:function(){var that=this,ul=that.ul[0],options=that.options,state=that._state,data=that._data(),length=data.length,value,open,custom;that.trigger("dataBinding");ul.innerHTML=kendo.render(that.template,data);that._height(length);if(that.popup.visible()){that.popup._position();}if(that.element.is(SELECT)){if(state===STATE_REBIND){value=that.value();that._state="";}custom=that._option;that._option=undefined;that._options(data);if(custom&&custom[0].selected){that._custom(custom.val());}}if(length){if(options.highlightFirst){that.current($(ul.firstChild));}if(options.suggest&&that.input.val()&&that._valueCalled!==undefined){that.suggest($(ul.firstChild));}}if(that._open){that._open=false;open=!!length;if(that._typing&&that.input[0]!==document.activeElement){open=false;}that.toggle(open);that._typing=undefined;}if(that._touchScroller){that._touchScroller.reset();}that._makeUnselectable();if((!that._valueCalled&&state!==STATE_FILTER)||state===STATE_REBIND){that._selectItem(value);}that._valueCalled=false;that._hideBusy();that.trigger("dataBound");},select:function(li){var that=this;if(li===undefined){return that.selectedIndex;}else{that._select(li);that._old=that._accessor();that._oldIndex=that.selectedIndex;}},search:function(word){word=typeof word==="string"?word:this.text();var that=this,length=word.length,options=that.options,ignoreCase=options.ignoreCase,filter=options.filter,field=options.dataTextField;clearTimeout(that._typing);if(length>=options.minLength){that._state=STATE_FILTER;if(filter==="none"){that._filter(word);}else{that._open=true;that._filterSource({value:ignoreCase?word.toLowerCase():word,field:field,operator:filter,ignoreCase:ignoreCase});}}},suggest:function(word){var that=this,element=that.input[0],value=that.text(),caret=List.caret(element),key=that._last,idx;if(key==keys.BACKSPACE||key==keys.DELETE){that._last=undefined;return;}word=word||"";if(typeof word!=="string"){idx=List.inArray(word[0],that.ul[0]);if(idx>-1){word=that._text(that.dataSource.view()[idx]);}else{word="";}}if(caret<=0){caret=value.toLowerCase().indexOf(word.toLowerCase())+1;}if(word){idx=word.toLowerCase().indexOf(value.toLowerCase());if(idx>-1){value+=word.substring(idx+value.length);}}else{value=value.substring(0,caret);}if(value.length!==caret||!word){element.value=value;List.selectText(element,caret,value.length);}},text:function(text){text=text===null?"":text;var that=this,textAccessor=that._text,input=that.input[0],ignoreCase=that.options.ignoreCase,loweredText=text,dataItem;if(text!==undefined){dataItem=that.dataItem();if(dataItem&&textAccessor(dataItem)===text){return;}if(ignoreCase){loweredText=loweredText.toLowerCase();}that._select(function(data){data=textAccessor(data);if(ignoreCase){data=(data+"").toLowerCase();}return data===loweredText;});if(that.selectedIndex<0){that._custom(text);input.value=text;}}else{return input.value;}},toggle:function(toggle){var that=this;that._toggle(toggle);},value:function(value){var that=this,idx;if(value!==undefined){if(value!==null){value=value.toString();}that._valueCalled=true;if(value&&that._valueOnFetch(value)){return;}idx=that._index(value);if(idx>-1){that.select(idx);}else{that.current(NULL);that._custom(value);that.text(value);that._placeholder();}that._old=that._accessor();that._oldIndex=that.selectedIndex;}else{return that._accessor();}},_accept:function(li){var that=this;if(li&&that.popup.visible()){that._focus(li);}else{that.text(that.text());that._change();}},_custom:function(value){var that=this,element=that.element,custom=that._option;if(that._state===STATE_FILTER){that._state=STATE_ACCEPT;}if(element.is(SELECT)){if(!custom){custom=that._option=$("<option/>");element.append(custom);}custom.text(value);custom[0].selected=true;}else{element.val(value);}},_filter:function(word){var that=this,options=that.options,dataSource=that.dataSource,ignoreCase=options.ignoreCase,predicate=function(dataItem){var text=that._text(dataItem);if(text!==undefined){text=text+"";if(text!==""&&word===""){return false;}if(ignoreCase){text=text.toLowerCase();}return text.indexOf(word)===0;}};if(ignoreCase){word=word.toLowerCase();}if(!that.ul[0].firstChild){dataSource.one(CHANGE,function(){if(dataSource.data()[0]){that.search(word);}}).fetch();return;}if(that._highlight(predicate)!==-1){if(options.suggest&&that._current){that.suggest(that._current);}that.open();}that._hideBusy();},_highlight:function(li){var that=this,idx;if(li===undefined||li===null){return-1;}li=that._get(li);idx=List.inArray(li[0],that.ul[0]);if(idx==-1){if(that.options.highlightFirst&&!that.text()){li=$(that.ul[0].firstChild);}else{li=NULL;}}that.current(li);return idx;},_input:function(){var that=this,element=that.element.removeClass("k-input")[0],tabIndex=element.tabIndex,accessKey=element.accessKey,wrapper=that.wrapper,SELECTOR="input.k-input",input,DOMInput,name=element.name||"";if(name){name='name="'+name+'_input" ';}input=wrapper.find(SELECTOR);if(!input[0]){wrapper.append('<span tabindex="-1" unselectable="on" class="k-dropdown-wrap k-state-default"><input '+name+'class="k-input" type="text" autocomplete="off"/><span tabindex="-1" unselectable="on" class="k-select"><span unselectable="on" class="k-icon k-i-arrow-s">select</span></span></span>').append(that.element);input=wrapper.find(SELECTOR);}DOMInput=input[0];DOMInput.tabIndex=tabIndex;DOMInput.style.cssText=element.style.cssText;if(element.maxLength>-1){DOMInput.maxLength=element.maxLength;}input.addClass(element.className).val(element.value).css({width:"100%",height:element.style.height}).show();if(placeholderSupported){input.attr("placeholder",that.options.placeholder);}if(accessKey){element.accessKey="";input[0].accessKey=accessKey;}that._focused=that.input=input;that._inputWrapper=$(wrapper[0].firstChild);that._arrow=wrapper.find(".k-icon").attr({"role":"button","tabIndex":-1});if(element.id){that._arrow.attr("aria-controls",that.ul[0].id);}},_keydown:function(e){var that=this,key=e.keyCode;that._last=key;clearTimeout(that._typing);if(key!=keys.TAB&&!that._move(e)){that._search();}},_placeholder:function(show){if(placeholderSupported){return;}var that=this,input=that.input,placeholder=that.options.placeholder,value;if(placeholder){value=that.value();if(show===undefined){show=!value;}input.toggleClass("k-readonly",show);if(!show){if(!value){placeholder="";}else{return;}}input.val(placeholder);}},_search:function(){var that=this;that._typing=setTimeout(function(){var value=that.text();if(that._prev!==value){that._prev=value;that.search(value);}},that.options.delay);},_select:function(li){var that=this,text,value,data=that._data(),idx=that._highlight(li);that.selectedIndex=idx;if(idx!==-1){if(that._state===STATE_FILTER){that._state=STATE_ACCEPT;}that._current.addClass(STATE_SELECTED);data=data[idx];text=that._text(data);value=that._value(data);that._prev=that.input[0].value=text;that._accessor(value!==undefined?value:text,idx);that._placeholder();if(that._optionID){that._current.attr("aria-selected",true);}}},_filterSource:function(filter){var that=this,options=that.options,dataSource=that.dataSource,expression=dataSource.filter()||{};removeFiltersForField(expression,options.dataTextField);if(filter){expression=expression.filters||[];expression.push(filter);}dataSource.filter(expression);},_wrapper:function(){var that=this,element=that.element,wrapper=element.parent();if(!wrapper.is("span.k-widget")){wrapper=element.hide().wrap("<span />").parent();wrapper[0].style.cssText=element[0].style.cssText;}that.wrapper=wrapper.addClass("k-widget k-combobox k-header").addClass(element[0].className).css("display","");}});ui.plugin(ComboBox);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,proxy=$.proxy,extend=$.extend,grep=$.grep,map=$.map,inArray=$.inArray,ACTIVE="k-state-selected",ASC="asc",DESC="desc",CHANGE="change",POPUP="kendoPopup",FILTERMENU="kendoFilterMenu",MENU="kendoMenu",NS=".kendoColumnMenu",nameSpecialCharRegExp=/(\[|\]|\$|\.|\:|\+)/g,Widget=ui.Widget;function trim(text){return $.trim(text).replace(/&nbsp;/gi,"");}var ColumnMenu=Widget.extend({init:function(element,options){var that=this,link;Widget.fn.init.call(that,element,options);element=that.element;options=that.options;that.owner=options.owner;that.dataSource=options.dataSource;that.field=element.attr(kendo.attr("field"));link=element.find(".k-header-column-menu");if(!link[0]){link=element.prepend('<a class="k-header-column-menu" href="#"><span class="k-icon k-i-arrowhead-s"/></a>').find(".k-header-column-menu");}that.link=link.attr("tabindex",-1).on("click"+NS,proxy(that._click,that));that.wrapper=$('<div class="k-column-menu"/>');that.wrapper.html(kendo.template(template)({ns:kendo.ns,messages:options.messages,sortable:options.sortable,filterable:options.filterable,columns:that._ownerColumns(),showColumns:options.columns}));that.popup=that.wrapper[POPUP]({anchor:link,open:proxy(that._open,that),activate:proxy(that._activate,that),close:that.options.closeCallback}).data(POPUP);that._menu();that._sort();that._columns();that._filter();},options:{name:"ColumnMenu",messages:{sortAscending:"مرتب سازی افزایشی",sortDescending:"مرتب سازی کاهشی",filter:"فیلتر",columns:"ستون ها"},columns:true,sortable:true,filterable:true},destroy:function(){var that=this;Widget.fn.destroy.call(that);if(that.filterMenu){that.filterMenu.destroy();}that.dataSource.unbind("refresh",that._refreshHandler);if(that.options.columns){that.owner.unbind("columnShow",that._updateColumnsMenuHandler);that.owner.unbind("columnHide",that._updateColumnsMenuHandler);}that.menu.element.off(NS);that.menu.destroy();that.wrapper.off(NS);that.popup.destroy();that.link.off(NS);},close:function(){this.menu.close();this.popup.close();this.popup.element.off("keydown"+NS);},_click:function(e){e.preventDefault();e.stopPropagation();this.popup.toggle();},_open:function(){var that=this;$(".k-column-menu").not(that.wrapper).each(function(){$(this).data(POPUP).close();});that.popup.element.on("keydown"+NS,function(e){if(e.keyCode==kendo.keys.ESC){that.close();}});},_activate:function(){this.menu.element.focus();},_ownerColumns:function(){var columns=this.owner.columns,menuColumns=grep(columns,function(col){var result=true,title=trim(col.title||"");if(col.menu===false||(!col.field&&!title.length)){result=false;}return result;});return map(menuColumns,function(col){return{field:col.field||col.title,title:col.title||col.field,hidden:col.hidden,index:inArray(col,columns)};});},_menu:function(){this.menu=this.wrapper.children()[MENU]({orientation:"vertical",closeOnClick:false}).data(MENU);},_sort:function(){var that=this;if(that.options.sortable){that.refresh();that._refreshHandler=proxy(that.refresh,that);that.dataSource.bind(CHANGE,that._refreshHandler);that.menu.element.on("click"+NS,".k-sort-asc, .k-sort-desc",function(){var item=$(this),dir=item.hasClass("k-sort-asc")?ASC:DESC;item.parent().find(".k-sort-"+(dir==ASC?DESC:ASC)).removeClass(ACTIVE);that._sortDataSource(item,dir);that.close();});}},_sortDataSource:function(item,dir){var that=this,sortable=that.options.sortable,dataSource=that.dataSource,idx,length,sort=dataSource.sort()||[];if(item.hasClass(ACTIVE)&&sortable&&sortable.allowUnsort!==false){item.removeClass(ACTIVE);dir=undefined;}else{item.addClass(ACTIVE);}if(sortable===true||sortable.mode==="single"){sort=[{field:that.field,dir:dir}];}else{for(idx=0,length=sort.length;idx<length;idx++){if(sort[idx].field===that.field){sort.splice(idx,1);break;}}sort.push({field:that.field,dir:dir});}dataSource.sort(sort);},_columns:function(){var that=this;if(that.options.columns){that._updateColumnsMenu();that._updateColumnsMenuHandler=proxy(that._updateColumnsMenu,that);that.owner.bind(["columnHide","columnShow"],that._updateColumnsMenuHandler);that.menu.bind("select",function(e){var item=$(e.item),input,index,column,columns=that.owner.columns,field;if(!item.parent().closest("li.k-columns-item")[0]){return;}input=item.find(":checkbox");if(input.attr("disabled")){return;}field=input.attr(kendo.attr("field"));column=grep(columns,function(column){return column.field==field||column.title==field;})[0];index=inArray(column,columns);if(column.hidden===true){that.owner.showColumn(index);}else{that.owner.hideColumn(index);}});}},_updateColumnsMenu:function(){var attr="["+kendo.attr("field")+"=",columns=this._ownerColumns(),allselector=map(columns,function(col){return attr+col.field.replace(nameSpecialCharRegExp,"\\$1")+"]";}).join(","),visible=grep(columns,function(field){return!field.hidden;}),selector=map(visible,function(col){return attr+col.field.replace(nameSpecialCharRegExp,"\\$1")+"]";}).join(",");this.wrapper.find(allselector).attr("checked",false);this.wrapper.find(selector).attr("checked",true).attr("disabled",visible.length==1);},_filter:function(){var that=this,options=that.options;if(options.filterable!==false){that.filterMenu=that.wrapper.find(".k-filterable")[FILTERMENU](extend(true,{},{appendToElement:true,dataSource:options.dataSource,values:options.values,field:that.field},options.filterable)).data(FILTERMENU);}},refresh:function(){var that=this,sort=that.options.dataSource.sort()||[],descriptor,field=that.field,idx,length;that.wrapper.find(".k-sort-asc, .k-sort-desc").removeClass(ACTIVE);for(idx=0,length=sort.length;idx<length;idx++){descriptor=sort[idx];if(field==descriptor.field){that.wrapper.find(".k-sort-"+descriptor.dir).addClass(ACTIVE);}}}});var template='<ul>'+'#if(sortable){#'+'<li class="k-item k-sort-asc"><span class="k-link"><span class="k-sprite k-i-sort-asc"></span>${messages.sortAscending}</span></li>'+'<li class="k-item k-sort-desc"><span class="k-link"><span class="k-sprite k-i-sort-desc"></span>${messages.sortDescending}</span></li>'+'#if(showColumns || filterable){#'+'<li class="k-separator"></li>'+'#}#'+'#}#'+'#if(showColumns){#'+'<li class="k-item k-columns-item"><span class="k-link"><span class="k-sprite k-i-columns"></span>${messages.columns}</span><ul>'+'#for (var col in columns) {#'+'<li><input type="checkbox" data-#=ns#field="#=columns[col].field#" data-#=ns#index="#=columns[col].index#"/>#=columns[col].title#</li>'+'#}#'+'</ul></li>'+'#if(filterable){#'+'<li class="k-separator"></li>'+'#}#'+'#}#'+'#if(filterable){#'+'<li class="k-item k-filter-item"><span class="k-link"><span class="k-sprite k-filter"></span>${messages.filter}</span><ul>'+'<li><div class="k-filterable"></div></li>'+'</ul></li>'+'#}#'+'</ul>';ui.plugin(ColumnMenu);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,DataSource=kendo.data.DataSource,Groupable=ui.Groupable,tbodySupportsInnerHtml=kendo.support.tbodyInnerHtml,Widget=ui.Widget,keys=kendo.keys,isPlainObject=$.isPlainObject,extend=$.extend,map=$.map,grep=$.grep,isArray=$.isArray,inArray=$.inArray,proxy=$.proxy,isFunction=$.isFunction,isEmptyObject=$.isEmptyObject,math=Math,REQUESTSTART="requestStart",ERROR="error",DATA_CELL=":not(.k-group-cell):not(.k-hierarchy-cell):visible",SELECTION_CELL_SELECTOR="tbody>tr:not(.k-grouping-row):not(.k-detail-row):not(.k-group-footer) > td:not(.k-group-cell):not(.k-hierarchy-cell)",NAVROW="tr:not(.k-footer-template):visible",NAVCELL=":not(.k-group-cell):not(.k-hierarchy-cell):visible",FIRSTNAVITEM=NAVROW+":first>"+NAVCELL+":first",NS=".kendoGrid",EDIT="edit",SAVE="save",REMOVE="remove",DETAILINIT="detailInit",CHANGE="change",COLUMNHIDE="columnHide",COLUMNSHOW="columnShow",SAVECHANGES="saveChanges",DATABOUND="dataBound",DETAILEXPAND="detailExpand",DETAILCOLLAPSE="detailCollapse",FOCUSED="k-state-focused",SELECTED="k-state-selected",COLUMNRESIZE="columnResize",COLUMNREORDER="columnReorder",CLICK="click",HEIGHT="height",TABINDEX="tabIndex",FUNCTION="function",STRING="string",DELETECONFIRM="Are you sure you want to delete this record?",formatRegExp=/(\}|\#)/ig,indicatorWidth=3,templateHashRegExp=/#/ig,COMMANDBUTTONTMPL='<a class="k-button k-button-icontext #=className#" #=attr# href="\\#"><span class="#=iconClass# #=imageClass#"></span>#=text#</a>',isRtl=false;var VirtualScrollable=Widget.extend({init:function(element,options){var that=this;Widget.fn.init.call(that,element,options);that._refreshHandler=proxy(that.refresh,that);that.setDataSource(options.dataSource);that.wrap();},setDataSource:function(dataSource){var that=this;if(that.dataSource){that.dataSource.unbind(CHANGE,that._refreshHandler);}that.dataSource=dataSource;that.dataSource.bind(CHANGE,that._refreshHandler);},options:{name:"VirtualScrollable",itemHeight:$.noop},destroy:function(){var that=this;Widget.fn.destroy.call(that);that.dataSource.unbind(CHANGE,that._refreshHandler);that.wrapper.add(that.verticalScrollbar).off(NS);if(that.drag){that.drag.destroy();}},wrap:function(){var that=this,scrollbar=kendo.support.scrollbar()+1,element=that.element,wrapper;element.css({width:"auto",overflow:"hidden"}).css((isRtl?"padding-left":"padding-right"),scrollbar);that.content=element.children().first();wrapper=that.wrapper=that.content.wrap('<div class="k-virtual-scrollable-wrap"/>').parent().bind("DOMMouseScroll"+NS+" mousewheel"+NS,proxy(that._wheelScroll,that));if(kendo.support.kineticScrollNeeded){that.drag=new kendo.UserEvents(that.wrapper,{global:true,move:function(e){that.verticalScrollbar.scrollTop(that.verticalScrollbar.scrollTop()-e.y.delta);wrapper.scrollLeft(wrapper.scrollLeft()-e.x.delta);e.preventDefault();}});}that.verticalScrollbar=$('<div class="k-scrollbar k-scrollbar-vertical" />').css({width:scrollbar}).appendTo(element).bind("scroll"+NS,proxy(that._scroll,that));},_wheelScroll:function(e){var that=this,scrollTop=that.verticalScrollbar.scrollTop(),originalEvent=e.originalEvent,deltaY=originalEvent.wheelDeltaY,delta;if(originalEvent.wheelDelta){if(deltaY===undefined||deltaY){delta=originalEvent.wheelDelta;}}else if(originalEvent.detail&&originalEvent.axis===originalEvent.VERTICAL_AXIS){delta=(-originalEvent.detail)*10;}if(delta){e.preventDefault();that.verticalScrollbar.scrollTop(scrollTop+(-delta));}},_scroll:function(e){var that=this,scrollTop=e.currentTarget.scrollTop,dataSource=that.dataSource,rowHeight=that.itemHeight,skip=dataSource.skip()||0,start=that._rangeStart||skip,height=that.element.innerHeight(),isScrollingUp=!!(that._scrollbarTop&&that._scrollbarTop>scrollTop),firstItemIndex=math.max(math.floor(scrollTop/rowHeight),0),lastItemIndex=math.max(firstItemIndex+math.floor(height/rowHeight),0);that._scrollTop=scrollTop-(start*rowHeight);that._scrollbarTop=scrollTop;if(!that._fetch(firstItemIndex,lastItemIndex,isScrollingUp)){that.wrapper[0].scrollTop=that._scrollTop;}},_fetch:function(firstItemIndex,lastItemIndex,scrollingUp){var that=this,dataSource=that.dataSource,itemHeight=that.itemHeight,take=dataSource.take(),rangeStart=that._rangeStart||dataSource.skip()||0,currentSkip=math.floor(firstItemIndex/take)*take,fetching=false,prefetchAt=0.33;if(firstItemIndex<rangeStart){fetching=true;rangeStart=math.max(0,lastItemIndex-take);that._scrollTop=(firstItemIndex-rangeStart)*itemHeight;that._page(rangeStart,take);}else if(lastItemIndex>=rangeStart+take&&!scrollingUp){fetching=true;rangeStart=firstItemIndex;that._scrollTop=itemHeight;that._page(rangeStart,take);}else if(!that._fetching){if(firstItemIndex<(currentSkip+take)-take*prefetchAt&&firstItemIndex>take){dataSource.prefetch(currentSkip-take,take);}if(lastItemIndex>currentSkip+take*prefetchAt){dataSource.prefetch(currentSkip+take,take);}}return fetching;},_page:function(skip,take){var that=this,dataSource=that.dataSource;clearTimeout(that._timeout);that._fetching=true;that._rangeStart=skip;if(dataSource.inRange(skip,take)){dataSource.range(skip,take);}else{kendo.ui.progress(that.wrapper.parent(),true);that._timeout=setTimeout(function(){dataSource.range(skip,take);},100);}},refresh:function(){var that=this,html="",maxHeight=250000,dataSource=that.dataSource,rangeStart=that._rangeStart,scrollbar=!kendo.support.kineticScrollNeeded?kendo.support.scrollbar():0,wrapperElement=that.wrapper[0],totalHeight,idx,itemHeight;kendo.ui.progress(that.wrapper.parent(),false);clearTimeout(that._timeout);itemHeight=that.itemHeight=that.options.itemHeight()||0;var addScrollBarHeight=(wrapperElement.scrollWidth>wrapperElement.offsetWidth)?scrollbar:0;totalHeight=dataSource.total()*itemHeight+addScrollBarHeight;for(idx=0;idx<math.floor(totalHeight/maxHeight);idx++){html+='<div style="width:1px;height:'+maxHeight+'px"></div>';}if(totalHeight%maxHeight){html+='<div style="width:1px;height:'+(totalHeight%maxHeight)+'px"></div>';}that.verticalScrollbar.html(html);wrapperElement.scrollTop=that._scrollTop;if(that.drag){that.drag.cancel();}if(rangeStart&&!that._fetching){that._rangeStart=dataSource.skip();}that._fetching=false;}});function groupCells(count){return new Array(count+1).join('<td class="k-group-cell">&nbsp;</td>');}function stringifyAttributes(attributes){var attr,result=" ";if(attributes){if(typeof attributes===STRING){return attributes;}for(attr in attributes){result+=attr+'="'+attributes[attr]+'"';}}return result;}var defaultCommands={create:{text:"Add new record",imageClass:"k-add",className:"k-grid-add",iconClass:"k-icon"},cancel:{text:"Cancel changes",imageClass:"k-cancel",className:"k-grid-cancel-changes",iconClass:"k-icon"},save:{text:"Save changes",imageClass:"k-update",className:"k-grid-save-changes",iconClass:"k-icon"},destroy:{text:"Delete",imageClass:"k-delete",className:"k-grid-delete",iconClass:"k-icon"},edit:{text:"Edit",imageClass:"k-edit",className:"k-grid-edit",iconClass:"k-icon"},update:{text:"Update",imageClass:"k-update",className:"k-grid-update",iconClass:"k-icon"},canceledit:{text:"Cancel",imageClass:"k-cancel",className:"k-grid-cancel",iconClass:"k-icon"}};function heightAboveHeader(context){var top=0;$('> .k-grouping-header, > .k-grid-toolbar',context).each(function(){top+=this.offsetHeight;});return top;}function cursor(context,value){$('th, th .k-grid-filter, th .k-link',context).add(document.body).css('cursor',value);}function buildEmptyAggregatesObject(aggregates){var idx,length,aggregate={},fieldsMap={};if(!isEmptyObject(aggregates)){if(!isArray(aggregates)){aggregates=[aggregates];}for(idx=0,length=aggregates.length;idx<length;idx++){aggregate[aggregates[idx].aggregate]=0;fieldsMap[aggregates[idx].field]=aggregate;}}return fieldsMap;}function reorder(selector,sourceIndex,destIndex){var source=selector.eq(sourceIndex),dest=selector.eq(destIndex);source[sourceIndex>destIndex?"insertBefore":"insertAfter"](dest);}function attachCustomCommandEvent(context,container,commands){var idx,length,command,commandName;commands=!isArray(commands)?[commands]:commands;for(idx=0,length=commands.length;idx<length;idx++){command=commands[idx];if(isPlainObject(command)&&command.click){commandName=command.name||command.text;container.on("touchend "+CLICK,"a.k-grid-"+(commandName||"").replace(/\s/g,""),{commandName:commandName},proxy(command.click,context));}}}function visibleColumns(columns){return grep(columns,function(column){return!column.hidden;});}function addHiddenStyle(attr){attr=attr||{};var style=attr.style;if(!style){style="display:none";}else{style=style.replace(/((.*)?display)(.*)?:([^;]*)/i,"$1:none");if(style===attr.style){style=style.replace(/(.*)?/i,"display:none;$1");}}return extend({},attr,{style:style});}function removeHiddenStyle(attr){attr=attr||{};var style=attr.style;if(style){attr.style=style.replace(/(display\s*:\s*none\s*;?)*/ig,"");}return attr;}function normalizeCols(table,visibleColumns,hasDetails,groups){var colgroup=table.find(">colgroup"),width,cols=map(visibleColumns,function(column){width=column.width;if(width&&parseInt(width,10)!==0){return kendo.format('<col style="width:{0}"/>',typeof width===STRING?width:width+"px");}return"<col />";});if(hasDetails||colgroup.find(".k-hierarchy-col").length){cols.splice(0,0,'<col class="k-hierarchy-col" />');}if(colgroup.length){colgroup.remove();}colgroup=$("<colgroup/>").append($(new Array(groups+1).join('<col class="k-group-col">')+cols.join("")));table.prepend(colgroup);}var Grid=Widget.extend({init:function(element,options){var that=this;options=isArray(options)?{dataSource:options}:options;Widget.fn.init.call(that,element,options);isRtl=kendo.support.isRtl(element);that._element();that._aria();that._columns(that.options.columns);that._dataSource();that._tbody();that._pageable();that._thead();that._groupable();that._toolbar();that._setContentHeight();that._templates();that._navigatable();that._selectable();that._details();that._editable();that._attachCustomCommandsEvent();if(that.options.autoBind){that.dataSource.fetch();}else{that._footer();}kendo.notify(that);},events:[CHANGE,"dataBinding",DATABOUND,DETAILEXPAND,DETAILCOLLAPSE,DETAILINIT,EDIT,SAVE,REMOVE,SAVECHANGES,COLUMNRESIZE,COLUMNREORDER,COLUMNSHOW,COLUMNHIDE],setDataSource:function(dataSource){var that=this;that.options.dataSource=dataSource;that._dataSource();that._pageable();if(that.options.groupable){that._groupable();}that._thead();if(that.virtualScrollable){that.virtualScrollable.setDataSource(that.options.dataSource);}if(that.options.autoBind){dataSource.fetch();}},options:{name:"Grid",columns:[],toolbar:null,autoBind:true,filterable:false,scrollable:true,sortable:false,selectable:false,navigatable:false,pageable:false,editable:false,groupable:false,rowTemplate:"",altRowTemplate:"",dataSource:{},height:null,resizable:false,reorderable:false,columnMenu:false,detailTemplate:null},destroy:function(){var that=this;Widget.fn.destroy.call(that);if(that.pager){that.pager.destroy();}if(that.groupable){that.groupable.destroy();}if(that.virtualScrollable){that.virtualScrollable.destroy();}that.thead.find("th").each(function(){var th=$(this),filterMenu=th.data("kendoFilterMenu"),sortable=th.data("kendoSortable"),columnMenu=th.data("kendoColumnMenu");if(filterMenu){filterMenu.destroy();}if(sortable){sortable.destroy();}if(columnMenu){columnMenu.destroy();}});that._destroyEditable();that.dataSource.unbind(CHANGE,that._refreshHandler).unbind(REQUESTSTART,that._requestStartHandler).unbind(ERROR,that._errorHandler);that.element.add(that.wrapper).add(that.table).add(that.thead).add(that.wrapper.find(">.k-grid-toolbar"));if(that.content){that.element.add(that.content).add(that.content.find(">.k-virtual-scrollable-wrap"));}that.element.off(NS);kendo.destroy(that.wrapper);},setOptions:function(options){var that=this;Widget.fn.setOptions.call(this,options);that._templates();},items:function(){return this.tbody.children(':not(.k-grouping-row,.k-detail-row,.k-group-footer)');},_attachCustomCommandsEvent:function(){var that=this,columns=that.columns||[],command,idx,length;for(idx=0,length=columns.length;idx<length;idx++){command=columns[idx].command;if(command){attachCustomCommandEvent(that,that.wrapper,command);}}},_aria:function(){var id=this.element.attr("id")||"aria";if(id){this._cellId=id+"_active_cell";}},_element:function(){var that=this,table=that.element;if(!table.is("table")){if(that.options.scrollable){table=that.element.find("> .k-grid-content > table");}else{table=that.element.children("table");}if(!table.length){table=$("<table />").appendTo(that.element);}}that.table=table.attr("cellspacing",0).attr("role",that._hasDetails()?"treegrid":"grid");that._wrapper();},_positionColumnResizeHandle:function(container){var that=this,scrollable=that.options.scrollable,resizeHandle=that.resizeHandle,left;that.thead.on("mousemove"+NS,"th:not(.k-group-cell,.k-hierarchy-cell)",function(e){var th=$(this),clientX=e.clientX,winScrollLeft=$(window).scrollLeft(),position=th.offset().left+(!isRtl?this.offsetWidth:0);if(clientX+winScrollLeft>position-indicatorWidth&&clientX+winScrollLeft<position+indicatorWidth){if(!resizeHandle){resizeHandle=that.resizeHandle=$('<div class="k-resize-handle"/>');container.append(resizeHandle);}if(!isRtl){left=this.offsetWidth;th.prevAll(":visible").each(function(){left+=this.offsetWidth;});}else{var headerWrap=th.closest(".k-grid-header-wrap")
if(headerWrap){if(headerWrap.length>0){var ieCorrection=$.browser.msie?headerWrap.scrollLeft():0,webkitCorrection=$.browser.webkit?(headerWrap[0].scrollWidth-headerWrap[0].offsetWidth-headerWrap.scrollLeft()):0,firefoxCorrection=$.browser.mozilla?(headerWrap[0].scrollWidth-headerWrap[0].offsetWidth-(headerWrap[0].scrollWidth-headerWrap[0].offsetWidth-headerWrap.scrollLeft())):0;left=th.position().left-webkitCorrection+firefoxCorrection-ieCorrection;}else{left=th.position().left;}}else{left=th.position().left;}}resizeHandle.css({top:scrollable?0:heightAboveHeader(that.wrapper),left:left-indicatorWidth,height:th.outerHeight(),width:indicatorWidth*3}).data("th",th).show();}else{if(resizeHandle){resizeHandle.hide();}else{cursor(that.wrapper,"");}}});},_resizable:function(){var that=this,options=that.options,container,columnStart,columnWidth,gridWidth,col;if(options.resizable){container=options.scrollable?that.wrapper.find(".k-grid-header-wrap:first"):that.wrapper;that._positionColumnResizeHandle(container);container.kendoResizable({handle:".k-resize-handle",hint:function(handle){return $('<div class="k-grid-resize-indicator" />').css({height:handle.data("th").outerHeight()+that.tbody.attr("clientHeight")});},start:function(e){var th=$(e.currentTarget).data("th"),index=$.inArray(th[0],th.parent().children(":visible")),contentTable=that.tbody.parent(),footer=that.footer||$();cursor(that.wrapper,'col-resize');if(options.scrollable){col=that.thead.parent().find("col:eq("+index+")").add(contentTable.children("colgroup").find("col:eq("+index+")")).add(footer.find("colgroup").find("col:eq("+index+")"));}else{col=contentTable.children("colgroup").find("col:eq("+index+")");}columnStart=e.x.location;columnWidth=th.outerWidth();gridWidth=that.tbody.outerWidth();},resize:function(e){var rtlMultiplier=isRtl?-1:1,width=columnWidth+(e.x.location*rtlMultiplier)-(columnStart*rtlMultiplier),footer=that.footer||$();if(width>10){col.css('width',width);if(options.scrollable){that._footerWidth=gridWidth+(e.x.location*rtlMultiplier)-(columnStart*rtlMultiplier);that.tbody.parent().add(that.thead.parent()).add(footer.find("table")).css('width',that._footerWidth);}}},resizeend:function(e){var th=$(e.currentTarget).data("th"),newWidth=th.outerWidth(),column;cursor(that.wrapper,"");if(columnWidth!=newWidth){column=that.columns[th.parent().find("th:not(.k-group-cell,.k-hierarchy-cell)").index(th)];column.width=newWidth;that.trigger(COLUMNRESIZE,{column:column,oldWidth:columnWidth,newWidth:newWidth});}that.resizeHandle.hide();}});}},_draggable:function(){var that=this;if(that.options.reorderable){that._draggableInstance=that.wrapper.kendoDraggable({group:kendo.guid(),filter:".k-header:not(.k-group-cell,.k-hierarchy-cell)",hint:function(target){return $('<div class="k-header k-drag-clue" />').css({width:target.width(),paddingLeft:target.css("paddingLeft"),paddingRight:target.css("paddingRight"),lineHeight:target.height()+"px",paddingTop:target.css("paddingTop"),paddingBottom:target.css("paddingBottom")}).html(target.attr(kendo.attr("title"))||target.attr(kendo.attr("field"))||target.text()).prepend('<span class="k-icon k-drag-status k-denied" />');}}).data("kendoDraggable");}},_reorderable:function(){var that=this;if(that.options.reorderable){that.thead.kendoReorderable({draggable:that._draggableInstance,change:function(e){var newIndex=inArray(that.columns[e.newIndex],that.columns),column=that.columns[e.oldIndex];that.trigger(COLUMNREORDER,{newIndex:newIndex,oldIndex:inArray(column,that.columns),column:column});that.reorderColumn(newIndex,column);}});}},reorderColumn:function(destIndex,column){var that=this,sourceIndex=inArray(column,that.columns),colSourceIndex=inArray(column,visibleColumns(that.columns)),rows,idx,length,footer=that.footer||that.wrapper.find(".k-grid-footer");if(sourceIndex===destIndex){return;}that.columns.splice(sourceIndex,1);that.columns.splice(destIndex,0,column);that._templates();reorder(that.thead.prev().find("col:not(.k-group-col,.k-hierarchy-col)"),colSourceIndex,destIndex);if(that.options.scrollable){reorder(that.tbody.prev().find("col:not(.k-group-col,.k-hierarchy-col)"),colSourceIndex,destIndex);}reorder(that.thead.find(".k-header:not(.k-group-cell,.k-hierarchy-cell)"),sourceIndex,destIndex);if(footer&&footer.length){reorder(footer.find(".k-grid-footer-wrap>table>colgroup>col:not(.k-group-col,.k-hierarchy-col)"),colSourceIndex,destIndex);reorder(footer.find(".k-footer-template>td:not(.k-group-cell,.k-hierarchy-cell)"),sourceIndex,destIndex);}rows=that.tbody.children(":not(.k-grouping-row,.k-detail-row)");for(idx=0,length=rows.length;idx<length;idx+=1){reorder(rows.eq(idx).find(">td:not(.k-group-cell,.k-hierarchy-cell)"),sourceIndex,destIndex);}},cellIndex:function(td){return $(td).parent().children('td:not(.k-group-cell,.k-hierarchy-cell)').index(td);},_modelForContainer:function(container){container=$(container);if(!container.is("tr")&&this._editMode()!=="popup"){container=container.closest("tr");}var id=container.attr(kendo.attr("uid"));return this.dataSource.getByUid(id);},_editable:function(){var that=this,editable=that.options.editable,handler=function(){var target=document.activeElement,cell=that._editContainer;if(cell&&!$.contains(cell[0],target)&&cell[0]!==target&&!$(target).closest(".k-animation-container").length){if(that.editable.end()){that.closeCell();}}};if(editable){var mode=that._editMode();if(mode==="incell"){if(editable.update!==false){that.wrapper.on("touchend"+NS+" "+CLICK+NS,"tr:not(.k-grouping-row) > td",function(e){var td=$(this);if(td.hasClass("k-hierarchy-cell")||td.hasClass("k-detail-cell")||td.hasClass("k-group-cell")||td.hasClass("k-edit-cell")||td.has("a.k-grid-delete").length||td.has("button.k-grid-delete").length||td.closest("tbody")[0]!==that.tbody[0]||$(e.target).is(":input")){return;}if(that.editable){if(that.editable.end()){that.closeCell();that.editCell(td);}}else{that.editCell(td);}}).on("focusin"+NS,function(e){clearTimeout(that.timer);that.timer=null;}).on("focusout"+NS,function(e){that.timer=setTimeout(handler,1);});}}else{if(editable.update!==false){that.wrapper.on("touchend"+NS+" "+CLICK+NS,"tbody>tr:not(.k-detail-row,.k-grouping-row):visible a.k-grid-edit",function(e){e.preventDefault();that.editRow($(this).closest("tr"));});}}if(editable.destroy!==false){that.wrapper.on("touchend"+NS+" "+CLICK+NS,"tbody>tr:not(.k-detail-row,.k-grouping-row):visible .k-grid-delete",function(e){e.preventDefault();e.stopPropagation();that.removeRow($(this).closest("tr"));});}else{that.wrapper.on("touchend"+NS+" "+CLICK+NS,"tbody>tr:not(.k-detail-row,.k-grouping-row):visible button.k-grid-delete",function(e){if(!that._confirmation()){e.preventDefault();}});}}},editCell:function(cell){var that=this,column=that.columns[that.cellIndex(cell)],model=that._modelForContainer(cell);if(model&&(!model.editable||model.editable(column.field))&&!column.command&&column.field){that._attachModelChange(model);that._editContainer=cell;that.editable=cell.addClass("k-edit-cell").kendoEditable({fields:{field:column.field,format:column.format,editor:column.editor,values:column.values},model:model,change:function(e){if(that.trigger(SAVE,{values:e.values,container:cell,model:model})){e.preventDefault();}}}).data("kendoEditable");cell.parent().addClass("k-grid-edit-row");that.trigger(EDIT,{container:cell,model:model});}},_destroyEditable:function(){var that=this;var destroy=function(){if(that.editable){that._detachModelChange();that.editable.destroy();that.editable=null;that._editContainer=null;}};if(that.editable){if(that._editMode()==="popup"){that._editContainer.data("kendoWindow").bind("deactivate",destroy).close();}else{destroy();}}},_attachModelChange:function(model){var that=this;that._modelChangeHandler=function(e){that._modelChange({field:e.field,model:this});};model.bind("change",that._modelChangeHandler);},_detachModelChange:function(){var that=this,container=that._editContainer,model=that._modelForContainer(container);if(model){model.unbind(CHANGE,that._modelChangeHandler);}},closeCell:function(){var that=this,cell=that._editContainer.removeClass("k-edit-cell"),id=cell.closest("tr").attr(kendo.attr("uid")),column=that.columns[that.cellIndex(cell)],model=that.dataSource.getByUid(id);cell.parent().removeClass("k-grid-edit-row");that._destroyEditable();that._displayCell(cell,column,model);if(cell.hasClass("k-dirty-cell")){$('<span class="k-dirty"/>').prependTo(cell);}},_displayCell:function(cell,column,dataItem){var that=this,state={storage:{},count:0},settings=extend({},kendo.Template,that.options.templateSettings),tmpl=kendo.template(that._cellTmpl(column,state),settings);if(state.count>0){tmpl=proxy(tmpl,state.storage);}cell.empty().html(tmpl(dataItem));},removeRow:function(row){var that=this,model,mode;if(!that._confirmation()){return;}row=$(row).hide();model=that._modelForContainer(row);if(model&&!that.trigger(REMOVE,{row:row,model:model})){that.dataSource.remove(model);mode=that._editMode();if(mode==="inline"||mode==="popup"){that.dataSource.sync();}}},_editMode:function(){var mode="incell",editable=this.options.editable;if(editable!==true){if(typeof editable=="string"){mode=editable;}else{mode=editable.mode||mode;}}return mode;},editRow:function(row){var that=this,model=that._modelForContainer(row),mode=that._editMode(),navigatable=that.options.navigatable,container;that.cancelRow();if(model){that._attachModelChange(model);if(mode==="popup"){that._createPopupEditor(model);}else if(mode==="inline"){that._createInlineEditor(row,model);}else if(mode==="incell"){$(row).children(DATA_CELL).each(function(){var cell=$(this);var column=that.columns[cell.index()];model=that._modelForContainer(cell);if(model&&(!model.editable||model.editable(column.field))&&column.field){that.editCell(cell);return false;}});}container=that._editContainer;container.on("touchend"+NS+" "+CLICK+NS,"a.k-grid-cancel",function(e){e.preventDefault();e.stopPropagation();var currentIndex=that.items().index($(that.current()).parent());that.cancelRow();if(navigatable){that.current(that.items().eq(currentIndex).children().filter(NAVCELL).first());that.table.focus();}});container.on("touchend"+NS+" "+CLICK+NS,"a.k-grid-update",function(e){e.preventDefault();e.stopPropagation();that.saveRow();});}},_createPopupEditor:function(model){var that=this,html='<div '+kendo.attr("uid")+'="'+model.uid+'"><div class="k-edit-form-container">',column,command,fields=[],idx,length,tmpl,updateText,cancelText,attr,editable=that.options.editable,template=editable.template,options=isPlainObject(editable)?editable.window:{},settings=extend({},kendo.Template,that.options.templateSettings);if(template){if(typeof template===STRING){template=window.unescape(template);}html+=(kendo.template(template,settings))(model);for(idx=0,length=that.columns.length;idx<length;idx++){column=that.columns[idx];if(column.command){command=getCommand(column.command,"edit");}}}else{for(idx=0,length=that.columns.length;idx<length;idx++){column=that.columns[idx];if(!column.command){html+='<div class="k-edit-label"><label for="'+column.field+'">'+(column.title||column.field||"")+'</label></div>';if((!model.editable||model.editable(column.field))&&column.field){fields.push({field:column.field,format:column.format,editor:column.editor,values:column.values});html+='<div '+kendo.attr("container-for")+'="'+column.field+'" class="k-edit-field"></div>';}else{var state={storage:{},count:0};tmpl=kendo.template(that._cellTmpl(column,state),settings);if(state.count>0){tmpl=proxy(tmpl,state.storage);}html+='<div class="k-edit-field">'+tmpl(model)+'</div>';}}else if(column.command){command=getCommand(column.command,"edit");}}}if(command){if(isPlainObject(command)){if(command.text&&isPlainObject(command.text)){updateText=command.text.update;cancelText=command.text.cancel;}if(command.attr){attr=command.attr;}}}html+=that._createButton({name:"update",text:updateText,attr:attr})+that._createButton({name:"canceledit",text:cancelText,attr:attr});html+='</div></div>';var container=that._editContainer=$(html).appendTo(that.wrapper).eq(0).kendoWindow(extend({modal:true,resizable:false,draggable:true,title:"Edit",visible:false,close:function(e){if(e.userTriggered){that.cancelRow();}}},options));that.editable=that._editContainer.kendoEditable({fields:fields,model:model,clearContainer:false}).data("kendoEditable");container.data("kendoWindow").center().open();that.trigger(EDIT,{container:container,model:model});},_createInlineEditor:function(row,model){var that=this,column,cell,command,fields=[];row.children(":not(.k-group-cell,.k-hierarchy-cell)").each(function(){cell=$(this);column=that.columns[that.cellIndex(cell)];if(!column.command&&column.field&&(!model.editable||model.editable(column.field))){fields.push({field:column.field,format:column.format,editor:column.editor,values:column.values});cell.attr("data-container-for",column.field);cell.empty();}else if(column.command){command=getCommand(column.command,"edit");if(command){cell.empty();var updateText,cancelText,attr;if(isPlainObject(command)){if(command.text&&isPlainObject(command.text)){updateText=command.text.update;cancelText=command.text.cancel;}if(command.attr){attr=command.attr;}}$(that._createButton({name:"update",text:updateText,attr:attr})+that._createButton({name:"canceledit",text:cancelText,attr:attr})).appendTo(cell);}}});that._editContainer=row;that.editable=row.addClass("k-grid-edit-row").kendoEditable({fields:fields,model:model,clearContainer:false}).data("kendoEditable");that.trigger(EDIT,{container:row,model:model});},cancelRow:function(){var that=this,container=that._editContainer,model;if(container){model=that._modelForContainer(container);that.dataSource.cancelChanges(model);if(that._editMode()!=="popup"){that._displayRow(container);}else{that._displayRow(that.items().filter("["+kendo.attr("uid")+"="+model.uid+"]"));}that._destroyEditable();}},saveRow:function(){var that=this,container=that._editContainer,model=that._modelForContainer(container),editable=that.editable;if(container&&editable&&editable.end()&&!that.trigger(SAVE,{container:container,model:model})){that.dataSource.sync();}},_displayRow:function(row){var that=this,model=that._modelForContainer(row);if(model){row.replaceWith($((row.hasClass("k-alt")?that.altRowTemplate:that.rowTemplate)(model)));}},_showMessage:function(text){return window.confirm(text);},_confirmation:function(){var that=this,editable=that.options.editable,confirmation=editable===true||typeof editable===STRING?DELETECONFIRM:editable.confirmation;return confirmation!==false&&confirmation!=null?that._showMessage(confirmation):true;},cancelChanges:function(){this.dataSource.cancelChanges();},saveChanges:function(){var that=this;if(((that.editable&&that.editable.end())||!that.editable)&&!that.trigger(SAVECHANGES)){that.dataSource.sync();}},addRow:function(){var that=this,index,dataSource=that.dataSource,mode=that._editMode(),createAt=that.options.editable.createAt||"",pageSize=dataSource.pageSize(),view=dataSource.view()||[];if((that.editable&&that.editable.end())||!that.editable){if(mode!="incell"){that.cancelRow();}index=dataSource.indexOf(view[0]);if(createAt.toLowerCase()=="bottom"){index+=view.length;if(pageSize&&!dataSource.options.serverPaging&&pageSize<=view.length){index-=1;}}if(index<0){index=0;}var model=dataSource.insert(index,{}),id=model.uid,row=that.table.find("tr["+kendo.attr("uid")+"="+id+"]"),cell=row.children("td:not(.k-group-cell,.k-hierarchy-cell)").first();if((mode==="inline"||mode==="popup")&&row.length){that.editRow(row);}else if(cell.length){that.editCell(cell);}}},_toolbar:function(){var that=this,wrapper=that.wrapper,toolbar=that.options.toolbar,editable=that.options.editable,container,template;if(toolbar){container=that.wrapper.find(".k-grid-toolbar");if(!container.length){toolbar=isFunction(toolbar)?toolbar({}):(typeof toolbar===STRING?toolbar:that._toolbarTmpl(toolbar).replace(templateHashRegExp,"\\#"));template=proxy(kendo.template(toolbar),that);container=$('<div class="k-toolbar k-grid-toolbar" />').html(template({})).prependTo(wrapper);}if(editable&&editable.create!==false){container.on("touchend"+NS+" "+CLICK+NS,".k-grid-add",function(e){e.preventDefault();that.addRow();}).on("touchend"+NS+" "+CLICK+NS,".k-grid-cancel-changes",function(e){e.preventDefault();that.cancelChanges();}).on("touchend"+NS+" "+CLICK+NS,".k-grid-save-changes",function(e){e.preventDefault();that.saveChanges();});}}},_toolbarTmpl:function(commands){var that=this,idx,length,html="";if(isArray(commands)){for(idx=0,length=commands.length;idx<length;idx++){html+=that._createButton(commands[idx]);}}return html;},_createButton:function(command){var template=command.template||COMMANDBUTTONTMPL,commandName=typeof command===STRING?command:command.name||command.text,options={className:"k-grid-"+(commandName||"").replace(/\s/g,""),text:commandName,imageClass:"",attr:"",iconClass:""};if(!commandName&&!(isPlainObject(command)&&command.template)){throw new Error("Custom commands should have name specified");}if(isPlainObject(command)){if(command.className){command.className+=" "+options.className;}if(commandName==="edit"&&isPlainObject(command.text)){command=extend(true,{},command);command.text=command.text.edit;}if(command.attr&&isPlainObject(command.attr)){command.attr=stringifyAttributes(command.attr);}options=extend(true,options,defaultCommands[commandName],command);}else{options=extend(true,options,defaultCommands[commandName]);}return kendo.template(template)(options);},_groupable:function(){var that=this;that.table.on("touchend"+NS+" "+CLICK+NS,".k-grouping-row .k-i-collapse, .k-grouping-row .k-i-expand",function(e){var element=$(this),group=element.closest("tr");if(element.hasClass('k-i-collapse')){that.collapseGroup(group);}else{that.expandGroup(group);}e.preventDefault();e.stopPropagation();});that._attachGroupable();},_attachGroupable:function(){var that=this,wrapper=that.wrapper,groupable=that.options.groupable;if(groupable){if(!wrapper.has("div.k-grouping-header")[0]){$("<div />").addClass("k-grouping-header").prependTo(wrapper);}if(that.groupable){that.groupable.destroy();}that.groupable=new Groupable(wrapper,extend({},groupable,{draggable:that._draggableInstance,groupContainer:">div.k-grouping-header",dataSource:that.dataSource,filter:".k-header:not(.k-group-cell,.k-hierarchy-cell):visible["+kendo.attr("field")+"]",allowDrag:that.options.reorderable}));}},_selectable:function(){var that=this,multi,cell,selectable=that.options.selectable;if(selectable){multi=typeof selectable===STRING&&selectable.toLowerCase().indexOf("multiple")>-1;cell=typeof selectable===STRING&&selectable.toLowerCase().indexOf("cell")>-1;that.selectable=new kendo.ui.Selectable(that.table,{filter:">"+(cell?SELECTION_CELL_SELECTOR:"tbody>tr:not(.k-grouping-row,.k-detail-row,.k-group-footer)"),aria:true,multiple:multi,change:function(){that.trigger(CHANGE);}});if(that.options.navigatable){that.table.on("keydown"+NS,function(e){var current=that.current();if(e.keyCode===keys.SPACEBAR&&e.target==that.table[0]&&!current.is(".k-edit-cell,.k-header")&&current.parent().is(":not(.k-grouping-row,.k-detail-row,.k-group-footer)")){e.preventDefault();e.stopPropagation();current=cell?current:current.parent();if(multi){if(!e.ctrlKey){that.selectable.clear();}else{if(current.hasClass(SELECTED)){current.removeClass(SELECTED);current=null;}}}else{that.selectable.clear();}that.selectable.value(current);}});}}},clearSelection:function(){var that=this;that.selectable.clear();that.trigger(CHANGE);},select:function(items){var that=this,selectable=that.selectable;items=$(items);if(items.length){if(!selectable.options.multiple){selectable.clear();items=items.first();}selectable.value(items);return;}return selectable.value();},current:function(element){var that=this,scrollable=that.options.scrollable,current=that._current,table=that.table.add(that.thead.parent());if(element!==undefined&&element.length){if(!current||current[0]!==element[0]){if(current){current.removeClass(FOCUSED).removeAttr("id");table.removeAttr("aria-activedescendant");}element.attr("id",that._cellId);that._current=element.addClass(FOCUSED);table.attr("aria-activedescendant",that._cellId);if(element.length&&scrollable){that._scrollTo(element.parent()[0],that.content[0]);if(scrollable.virtual){that._scrollTo(element[0],that.content.find(">.k-virtual-scrollable-wrap")[0]);}else{that._scrollTo(element[0],that.content[0]);}}}}return that._current;},_removeCurrent:function(){if(this._current){this._current.removeClass(FOCUSED);this._current=null;}},_scrollTo:function(element,container){var isHorizontal=element.tagName.toLowerCase()==="td",elementOffset=element[isHorizontal?"offsetLeft":"offsetTop"],elementOffsetDir=element[isHorizontal?"offsetWidth":"offsetHeight"],containerScroll=container[isHorizontal?"scrollLeft":"scrollTop"],containerOffsetDir=container[isHorizontal?"clientWidth":"clientHeight"],bottomDistance=elementOffset+elementOffsetDir;container[isHorizontal?"scrollLeft":"scrollTop"]=containerScroll>elementOffset?elementOffset:(bottomDistance>(containerScroll+containerOffsetDir)?(bottomDistance-containerOffsetDir):containerScroll);},_navigatable:function(){var that=this,currentProxy=proxy(that.current,that),table=that.table,headerTable=that.thead.parent(),dataTable=table;if(!that.options.navigatable){return;}if(that.options.scrollable){dataTable=table.add(headerTable);headerTable.attr(TABINDEX,-1);}headerTable.on("keydown"+NS,function(e){if(e.altKey&&e.keyCode==keys.DOWN){currentProxy().find(".k-grid-filter, .k-header-column-menu").click();e.stopImmediatePropagation();}}).find("a.k-link").attr("tabIndex",-1);table.attr(TABINDEX,math.max(table.attr(TABINDEX)||0,0)).on("mousedown"+NS+" keydown"+NS,".k-detail-cell",function(e){if(e.target!==e.currentTarget){e.stopImmediatePropagation();}});dataTable.on("mousedown"+NS,NAVROW+">"+NAVCELL,proxy(tableClick,that)).on("focus"+NS,function(e){var current=currentProxy();if(current&&current.is(":visible")){current.addClass(FOCUSED);}else{currentProxy($(this).find(FIRSTNAVITEM));}if(this==table[0]){headerTable.attr(TABINDEX,-1);table.attr(TABINDEX,0);}else{table.attr(TABINDEX,-1);headerTable.attr(TABINDEX,0);}}).on("focusout"+NS,function(e){var current=currentProxy();if(current){current.removeClass(FOCUSED);}}).on("keydown"+NS,function(e){var key=e.keyCode,handled=false,canHandle=!e.isDefaultPrevented()&&!$(e.target).is(":button,a,:input,a>.k-icon"),pageable=that.options.pageable,dataSource=that.dataSource,isInCell=that._editMode()=="incell",currentIndex,row,index,shiftKey=e.shiftKey,browser=kendo.support.browser,current=currentProxy();if(current&&current.is("th")){canHandle=true;}if(canHandle&&key==keys.UP){if(current){row=current.parent().prevAll(NAVROW).first();if(!row[0]){row=that.thead.parent().focus().find(NAVROW).first();}index=current.index();current=row.children().eq(index);if(!current[0]||!current.is(NAVCELL)){current=row.children(NAVCELL).first();}}else{current=table.find(FIRSTNAVITEM);}handled=true;currentProxy(current);}else if(canHandle&&key==keys.DOWN){if(current){row=current.parent().nextAll(NAVROW).first();if(!row[0]&&current.is("th")){row=that.tbody.parent().focus().end().find(NAVROW).first();}index=current.index();current=row.children().eq(index);if(!current[0]||!current.is(NAVCELL)){current=row.children(NAVCELL).first();}}else{current=table.find(FIRSTNAVITEM);}handled=true;currentProxy(current);}else if(canHandle&&key==keys.LEFT){currentProxy(current?current.prevAll(DATA_CELL+":first"):table.find(FIRSTNAVITEM));handled=true;}else if(canHandle&&key==keys.RIGHT){if(current){if(current.next()[0]){current=current.nextAll(DATA_CELL+":first");}}else{current=table.find(FIRSTNAVITEM);}handled=true;currentProxy(current);}else if(canHandle&&pageable&&keys.PAGEDOWN==key){dataSource.page(dataSource.page()+1);handled=true;}else if(canHandle&&pageable&&keys.PAGEUP==key){dataSource.page(dataSource.page()-1);handled=true;}else if(key==keys.ENTER||keys.F2==key){current=current?current:table.find(FIRSTNAVITEM);if(current.is("th")){current.find(".k-link").click();handled=true;}else if(current.parent().is(".k-master-row,.k-grouping-row")){current.parent().find(".k-icon:first").click();handled=true;}else{var focusable=current.find(":focusable:first");if(!current.hasClass("k-edit-cell")&&focusable[0]&&current.hasClass("k-state-focused")){focusable.focus();handled=true;}else if(that.options.editable&&!$(e.target).is(":button,.k-button")){that._handleEditing(current);handled=true;}}}else if(keys.ESC==key){if(current&&$.contains(current[0],document.activeElement)&&!current.hasClass("k-edit-cell")&&!current.parent().hasClass("k-grid-edit-row")){that.table[0].focus();handled=true;}else if(that._editContainer&&(!current||that._editContainer.has(current[0])||current[0]===that._editContainer[0])){if(isInCell){that.closeCell();}else{currentIndex=that.items().index($(current).parent());document.activeElement.blur();that.cancelRow();if(currentIndex>=0){that.current(that.items().eq(currentIndex).children().filter(NAVCELL).first());}}if(browser.msie&&parseInt(browser.version,10)<9){document.body.focus();}table.focus();handled=true;}}else if(keys.TAB==key){var cell;current=$(current);if(that.options.editable&&isInCell){cell=$(document.activeElement).closest(".k-edit-cell");if(cell[0]&&cell[0]!==current[0]){current=cell;}}cell=shiftKey?current.prevAll(DATA_CELL+":first"):current.nextAll(":visible:first");if(!cell.length){cell=current.parent()[shiftKey?"prevAll":"nextAll"]("tr:not(.k-grouping-row):not(.k-detail-row):visible:first").children(DATA_CELL+(shiftKey?":last":":first"));}if(!current.is("th")&&cell.length&&that.options.editable&&isInCell){that._handleEditing(current,cell);handled=true;}}if(handled){e.preventDefault();e.stopPropagation();}});},_handleEditing:function(current,next){var that=this,activeElement=$(document.activeElement),mode=that._editMode(),editContainer=that._editContainer,focusable,isEdited;if(mode=="incell"){isEdited=current.hasClass("k-edit-cell");}else{isEdited=current.parent().hasClass("k-grid-edit-row");}if(that.editable){if($.contains(editContainer[0],activeElement[0])){activeElement.blur();if(kendo.support.browser.opera){activeElement.change();}}if(!that.editable){that.table.focus();return;}if(that.editable.end()){if(mode=="incell"){that.closeCell();}else{that.saveRow();isEdited=true;}}else{if(mode=="incell"){that.current(editContainer);}else{that.current(editContainer.children().filter(DATA_CELL).first());}focusable=editContainer.find(":focusable:first")[0];if(focusable){focusable.focus();}return;}}if(next){that.current(next);}that.table.focus();if((!isEdited&&!next)||next){if(mode=="incell"){that.editCell(that.current());}else{that.editRow(that.current().parent());}}},_wrapper:function(){var that=this,table=that.table,height=that.options.height,wrapper=that.element;if(!wrapper.is("div")){wrapper=wrapper.wrap("<div/>").parent();}that.wrapper=wrapper.addClass("k-grid k-widget");if(height){that.wrapper.css(HEIGHT,height);table.css(HEIGHT,"auto");}},_tbody:function(){var that=this,table=that.table,tbody;tbody=table.find(">tbody");if(!tbody.length){tbody=$("<tbody/>").appendTo(table);}that.tbody=tbody;},_scrollable:function(){var that=this,header,table,options=that.options,scrollable=options.scrollable,hasVirtualScroll=scrollable!==true&&scrollable.virtual&&!that.virtualScrollable,scrollbar=!kendo.support.kineticScrollNeeded||hasVirtualScroll?kendo.support.scrollbar():0;if(scrollable){header=that.wrapper.children(".k-grid-header");if(!header[0]){header=$('<div class="k-grid-header" />').insertBefore(that.table);}header.css((isRtl?"padding-left":"padding-right"),scrollable.virtual?scrollbar+1:scrollbar);table=$('<table role="grid" cellspacing="0" />');table.append(that.thead);header.empty().append($('<div class="k-grid-header-wrap" />').append(table));that.content=that.table.parent();if(that.content.is(".k-virtual-scrollable-wrap")){that.content=that.content.parent();}if(!that.content.is(".k-grid-content, .k-virtual-scrollable-wrap")){that.content=that.table.wrap('<div class="k-grid-content" />').parent();}if(hasVirtualScroll){that.virtualScrollable=new VirtualScrollable(that.content,{dataSource:that.dataSource,itemHeight:proxy(that._averageRowHeight,that)});}that.scrollables=header.children(".k-grid-header-wrap");var footer=that.wrapper.find(".k-grid-footer"),webKitRtlCorrection=(isRtl&&$.browser.webkit)?scrollbar:0;if(footer.length){that.scrollables=that.scrollables.add(footer.children(".k-grid-footer-wrap"));}if(scrollable.virtual){that.content.find(">.k-virtual-scrollable-wrap").bind("scroll"+NS,function(){that.scrollables.scrollLeft(this.scrollLeft+webKitRtlCorrection);});}else{that.content.bind("scroll"+NS,function(){that.scrollables.scrollLeft(this.scrollLeft+webKitRtlCorrection);});var touchScroller=kendo.touchScroller(that.content);if(touchScroller&&touchScroller.movable){touchScroller.movable.bind("change",function(e){that.scrollables.scrollLeft(-e.sender.x);});}}}},_setContentHeight:function(){var that=this,options=that.options,height=that.wrapper.innerHeight(),header=that.wrapper.children(".k-grid-header"),scrollbar=kendo.support.scrollbar();if(options.scrollable){height-=header.outerHeight();if(that.pager){height-=that.pager.element.outerHeight();}if(options.groupable){height-=that.wrapper.children(".k-grouping-header").outerHeight();}if(options.toolbar){height-=that.wrapper.children(".k-grid-toolbar").outerHeight();}if(that.footerTemplate){height-=that.wrapper.children(".k-grid-footer").outerHeight();}var isGridHeightSet=function(el){var initialHeight,newHeight;if(el[0].style.height){return true;}else{initialHeight=el.height();}el.height("auto");newHeight=el.height();if(initialHeight!=newHeight){el.height("");return true;}el.height("");return false;};if(isGridHeightSet(that.wrapper)){if(height>scrollbar*2){that.content.height(height);}else{that.content.height(scrollbar*2+1);}}}},_averageRowHeight:function(){var rowHeight=this._rowHeight;this._rowHeight=rowHeight=this.table.outerHeight()/this.table[0].rows.length;return rowHeight;},_dataSource:function(){var that=this,options=that.options,pageable,dataSource=options.dataSource;dataSource=isArray(dataSource)?{data:dataSource}:dataSource;if(isPlainObject(dataSource)){extend(dataSource,{table:that.table,fields:that.columns});pageable=options.pageable;if(isPlainObject(pageable)&&pageable.pageSize!==undefined){dataSource.pageSize=pageable.pageSize;}}if(that.dataSource&&that._refreshHandler){that.dataSource.unbind(CHANGE,that._refreshHandler).unbind(REQUESTSTART,that._requestStartHandler).unbind(ERROR,that._errorHandler);}else{that._refreshHandler=proxy(that.refresh,that);that._requestStartHandler=proxy(that._requestStart,that);that._errorHandler=proxy(that._error,that);}that.dataSource=DataSource.create(dataSource).bind(CHANGE,that._refreshHandler).bind(REQUESTSTART,that._requestStartHandler).bind(ERROR,that._errorHandler);},_error:function(){this._progress(false);},_requestStart:function(){this._progress(true);},_modelChange:function(e){var that=this,model=e.model,row=that.tbody.find("tr["+kendo.attr("uid")+"="+model.uid+"]"),cell,column,isAlt=row.hasClass("k-alt"),tmp,idx,length;if(row.children(".k-edit-cell").length&&!that.options.rowTemplate){row.children(":not(.k-group-cell,.k-hierarchy-cell)").each(function(){cell=$(this);column=that.columns[that.cellIndex(cell)];if(column.field===e.field){if(!cell.hasClass("k-edit-cell")){that._displayCell(cell,column,model);$('<span class="k-dirty"/>').prependTo(cell);}else{cell.addClass("k-dirty-cell");}}});}else if(!row.hasClass("k-grid-edit-row")){tmp=$((isAlt?that.altRowTemplate:that.rowTemplate)(model));row.replaceWith(tmp);for(idx=0,length=that.columns.length;idx<length;idx++){column=that.columns[idx];if(column.field===e.field){cell=tmp.children(":not(.k-group-cell,.k-hierarchy-cell)").eq(idx);$('<span class="k-dirty"/>').prependTo(cell);}}that.trigger("itemChange",{item:tmp,data:model,ns:ui});}},_pageable:function(){var that=this,wrapper,pageable=that.options.pageable;if(pageable){wrapper=that.wrapper.children("div.k-grid-pager");if(!wrapper.length){wrapper=$('<div class="k-pager-wrap k-grid-pager"/>').appendTo(that.wrapper);}if(that.pager){that.pager.destroy();}if(typeof pageable==="object"&&pageable instanceof kendo.ui.Pager){that.pager=pageable;}else{that.pager=new kendo.ui.Pager(wrapper,extend({},pageable,{dataSource:that.dataSource}));}}},_footer:function(){var that=this,aggregates=that.dataSource.aggregates(),html="",footerTemplate=that.footerTemplate,options=that.options,footer=that.footer||that.wrapper.find(".k-grid-footer");if(footerTemplate){aggregates=!isEmptyObject(aggregates)?aggregates:buildEmptyAggregatesObject(that.dataSource.aggregate());html=$(that._wrapFooter(footerTemplate(aggregates)));if(footer.length){var tmp=html;footer.replaceWith(tmp);footer=that.footer=tmp;}else{if(options.scrollable){footer=that.footer=options.pageable?html.insertBefore(that.wrapper.children("div.k-grid-pager")):html.appendTo(that.wrapper);}else{footer=that.footer=html.insertBefore(that.tbody);}}}else if(footer&&!that.footer){that.footer=footer;}if(footer.length){if(options.scrollable){that.scrollables=that.scrollables.not(".k-grid-footer-wrap").add(that.footer.attr("tabindex",-1).children(".k-grid-footer-wrap"));}if(options.resizable&&that._footerWidth){footer.find("table").css('width',that._footerWidth);}}},_wrapFooter:function(footerRow){var that=this,html="",scrollbar=!kendo.support.mobileOS?kendo.support.scrollbar():0;if(that.options.scrollable){html=$('<div class="k-grid-footer"><div class="k-grid-footer-wrap"><table cellspacing="0"><tbody>'+footerRow+'</tbody></table></div></div>');that._appendCols(html.find("table"));html.css((isRtl?"padding-left":"padding-right"),scrollbar);return html;}return'<tfoot class="k-grid-footer">'+footerRow+'</tfoot>';},_columnMenu:function(){var that=this,menu,columns=that.columns,column,options=that.options,columnMenu=options.columnMenu,menuOptions,sortable,filterable,closeCallback=function(){that.thead.parent().focus();},cell;if(columnMenu){if(typeof columnMenu=="boolean"){columnMenu={};}that.thead.find("th:not(.k-hierarchy-cell,.k-group-cell)").each(function(index){column=columns[index];cell=$(this);if(!column.command&&(column.field||cell.attr("data-"+kendo.ns+"field"))){menu=cell.data("kendoColumnMenu");if(menu){menu.destroy();}sortable=column.sortable!==false&&columnMenu.sortable!==false?options.sortable:false;filterable=options.filterable&&column.filterable!==false&&columnMenu.filterable!==false?extend({},column.filterable,options.filterable):false;menuOptions={dataSource:that.dataSource,values:column.values,columns:columnMenu.columns,sortable:sortable,filterable:filterable,messages:columnMenu.messages,owner:that,closeCallback:closeCallback};cell.kendoColumnMenu(menuOptions);}});}},_filterable:function(){var that=this,columns=that.columns,cell,filterMenu,closeCallback=function(){that.thead.parent().focus();},filterable=that.options.filterable;if(filterable&&!that.options.columnMenu){that.thead.find("th:not(.k-hierarchy-cell,.k-group-cell)").each(function(index){cell=$(this);if(columns[index].filterable!==false&&!columns[index].command&&(columns[index].field||cell.attr("data-"+kendo.ns+"field"))){filterMenu=cell.data("kendoFilterMenu");if(filterMenu){filterMenu.destroy();}cell.kendoFilterMenu(extend(true,{},filterable,columns[index].filterable,{dataSource:that.dataSource,values:columns[index].values,closeCallback:closeCallback}));}});}},_sortable:function(){var that=this,columns=that.columns,column,sortable=that.options.sortable;if(sortable){that.thead.find("th:not(.k-hierarchy-cell,.k-group-cell)").each(function(index){column=columns[index];if(column.sortable!==false&&!column.command&&column.field){$(this).attr("data-"+kendo.ns+"field",column.field).kendoSortable(extend({},sortable,{dataSource:that.dataSource,aria:true}));}});}},_columns:function(columns){var that=this,table=that.table,encoded,cols=table.find("col"),dataSource=that.options.dataSource;columns=columns.length?columns:map(table.find("th"),function(th,idx){th=$(th);var sortable=th.attr(kendo.attr("sortable")),filterable=th.attr(kendo.attr("filterable")),type=th.attr(kendo.attr("type")),groupable=th.attr(kendo.attr("groupable")),field=th.attr(kendo.attr("field")),menu=th.attr(kendo.attr("menu"));if(!field){field=th.text().replace(/\s|[^A-z0-9]/g,"");}return{field:field,type:type,sortable:sortable!=="false",filterable:filterable!=="false",groupable:groupable!=="false",menu:menu,template:th.attr(kendo.attr("template")),width:cols.eq(idx).css("width")};});encoded=!(that.table.find("tbody tr").length>0&&(!dataSource||!dataSource.transport));that.columns=map(columns,function(column){column=typeof column===STRING?{field:column}:column;if(column.hidden){column.attributes=addHiddenStyle(column.attributes);column.footerAttributes=addHiddenStyle(column.footerAttributes);column.headerAttributes=addHiddenStyle(column.headerAttributes);}return extend({encoded:encoded},column);});},_groups:function(){var group=this.dataSource.group();return group?group.length:0;},_tmpl:function(rowTemplate,alt){var that=this,settings=extend({},kendo.Template,that.options.templateSettings),idx,length=that.columns.length,template,state={storage:{},count:0},column,type,hasDetails=that._hasDetails(),className=[],groups=that._groups();if(!rowTemplate){rowTemplate="<tr";if(alt){className.push("k-alt");}if(hasDetails){className.push("k-master-row");}if(className.length){rowTemplate+=' class="'+className.join(" ")+'"';}if(length){rowTemplate+=' '+kendo.attr("uid")+'="#='+settings.paramName+'.uid#"';}rowTemplate+=" role='row'>";if(groups>0){rowTemplate+=groupCells(groups);}if(hasDetails){rowTemplate+='<td class="k-hierarchy-cell"><a class="k-icon k-plus" href="\\#" tabindex="-1"></a></td>';}for(idx=0;idx<length;idx++){column=that.columns[idx];template=column.template;type=typeof template;rowTemplate+="<td"+stringifyAttributes(column.attributes)+" role='gridcell'>";rowTemplate+=that._cellTmpl(column,state);rowTemplate+="</td>";}rowTemplate+="</tr>";}rowTemplate=kendo.template(rowTemplate,settings);if(state.count>0){return proxy(rowTemplate,state.storage);}return rowTemplate;},_headerCellText:function(column){var that=this,settings=extend({},kendo.Template,that.options.templateSettings),template=column.headerTemplate,type=typeof(template),text=column.title||column.field||"";if(type===FUNCTION){text=kendo.template(template,settings)({});}else if(type===STRING){text=template;}return text;},_cellTmpl:function(column,state){var that=this,settings=extend({},kendo.Template,that.options.templateSettings),template=column.template,paramName=settings.paramName,field=column.field,html="",idx,length,format=column.format,type=typeof template,columnValues=column.values;if(column.command){if(isArray(column.command)){for(idx=0,length=column.command.length;idx<length;idx++){html+=that._createButton(column.command[idx]);}return html.replace(templateHashRegExp,"\\#");}return that._createButton(column.command).replace(templateHashRegExp,"\\#");}if(type===FUNCTION){state.storage["tmpl"+state.count]=template;html+="#=this.tmpl"+state.count+"("+paramName+")#";state.count++;}else if(type===STRING){html+=template;}else if(columnValues&&columnValues.length&&isPlainObject(columnValues[0])&&"value"in columnValues[0]){html+="#var v ="+kendo.stringify(columnValues)+"#";html+="#for (var idx=0,length=v.length;idx<length;idx++) {#";html+="#if (v[idx].value == ";if(!settings.useWithBlock){html+=paramName+".";}html+=field;html+=") { #";html+="${v[idx].text}";html+="#break;#";html+="#}#";html+="#}#";}else{html+=column.encoded?"${":"#=";if(format){html+='kendo.format(\"'+format.replace(formatRegExp,"\\$1")+'\",';}if(field){field=paramName+"."+field;html+=field+"==null?'':"+field;}else{html+="''";}if(format){html+=")";}html+=column.encoded?"}":"#";}return html;},_templates:function(){var that=this,options=that.options,dataSource=that.dataSource,groups=dataSource.group(),footer=that.footer||that.wrapper.find(".k-grid-footer"),aggregates=dataSource.aggregate();that.rowTemplate=that._tmpl(options.rowTemplate);that.altRowTemplate=that._tmpl(options.altRowTemplate||options.rowTemplate,true);if(that._hasDetails()){that.detailTemplate=that._detailTmpl(options.detailTemplate||"");}if((!isEmptyObject(aggregates)&&!footer.length)||grep(that.columns,function(column){return column.footerTemplate;}).length){that.footerTemplate=that._footerTmpl(aggregates,"footerTemplate","k-footer-template");}if(groups&&grep(that.columns,function(column){return column.groupFooterTemplate;}).length){aggregates=$.map(groups,function(g){return g.aggregates;});that.groupFooterTemplate=that._footerTmpl(aggregates,"groupFooterTemplate","k-group-footer");}},_footerTmpl:function(aggregates,templateName,rowClass){var that=this,settings=extend({},kendo.Template,that.options.templateSettings),paramName=settings.paramName,html="",idx,length,columns=that.columns,template,type,storage={},count=0,scope={},groups=that._groups(),fieldsMap=buildEmptyAggregatesObject(aggregates),column;html+='<tr class="'+rowClass+'">';if(groups>0){html+=groupCells(groups);}if(that._hasDetails()){html+='<td class="k-hierarchy-cell">&nbsp;</td>';}for(idx=0,length=that.columns.length;idx<length;idx++){column=columns[idx];template=column[templateName];type=typeof template;html+="<td"+stringifyAttributes(column.footerAttributes)+">";if(template){if(type!==FUNCTION){scope=fieldsMap[column.field]?extend({},settings,{paramName:paramName+"."+column.field}):{};template=kendo.template(template,scope);}storage["tmpl"+count]=template;html+="#=this.tmpl"+count+"("+paramName+")#";count++;}else{html+="&nbsp;";}html+="</td>";}html+='</tr>';html=kendo.template(html,settings);if(count>0){return proxy(html,storage);}return html;},_detailTmpl:function(template){var that=this,html="",settings=extend({},kendo.Template,that.options.templateSettings),paramName=settings.paramName,templateFunctionStorage={},templateFunctionCount=0,groups=that._groups(),colspan=visibleColumns(that.columns).length,type=typeof template;html+='<tr class="k-detail-row">';if(groups>0){html+=groupCells(groups);}html+='<td class="k-hierarchy-cell"></td><td class="k-detail-cell"'+(colspan?' colspan="'+colspan+'"':'')+">";if(type===FUNCTION){templateFunctionStorage["tmpl"+templateFunctionCount]=template;html+="#=this.tmpl"+templateFunctionCount+"("+paramName+")#";templateFunctionCount++;}else{html+=template;}html+="</td></tr>";html=kendo.template(html,settings);if(templateFunctionCount>0){return proxy(html,templateFunctionStorage);}return html;},_hasDetails:function(){var that=this;return that.options.detailTemplate!==null||(that._events[DETAILINIT]||[]).length;},_details:function(){var that=this;that.table.on("touchend"+NS+" "+CLICK+NS,".k-hierarchy-cell .k-plus, .k-hierarchy-cell .k-minus",function(e){var button=$(this),expanding=button.hasClass("k-plus"),masterRow=button.closest("tr.k-master-row"),detailRow,detailTemplate=that.detailTemplate,data,hasDetails=that._hasDetails();button.toggleClass("k-plus",!expanding).toggleClass("k-minus",expanding);if(hasDetails&&!masterRow.next().hasClass("k-detail-row")){data=that.dataItem(masterRow);$(detailTemplate(data)).addClass(masterRow.hasClass("k-alt")?"k-alt":"").insertAfter(masterRow);that.trigger(DETAILINIT,{masterRow:masterRow,detailRow:masterRow.next(),data:data,detailCell:masterRow.next().find(".k-detail-cell")});}detailRow=masterRow.next();that.trigger(expanding?DETAILEXPAND:DETAILCOLLAPSE,{masterRow:masterRow,detailRow:detailRow});detailRow.toggle(expanding);if(that._current){that._current.attr("aria-expanded",expanding);}e.preventDefault();return false;});},dataItem:function(tr){return this._data[this.tbody.find('> tr:not(.k-grouping-row,.k-detail-row,.k-group-footer)').index($(tr))];},expandRow:function(tr){$(tr).find('> td .k-plus, > td .k-i-expand').click();},collapseRow:function(tr){$(tr).find('> td .k-minus, > td .k-i-collapse').click();},_thead:function(){var that=this,columns=that.columns,hasDetails=that._hasDetails()&&columns.length,idx,length,html="",thead=that.table.find(">thead"),tr,text,th;if(!thead.length){thead=$("<thead/>").insertBefore(that.tbody);}tr=that.element.find("tr:has(th):first");if(!tr.length){tr=thead.children().first();if(!tr.length){tr=$("<tr/>");}}if(!tr.children().length){if(hasDetails){html+='<th class="k-hierarchy-cell">&nbsp;</th>';}for(idx=0,length=columns.length;idx<length;idx++){th=columns[idx];text=that._headerCellText(th);if(!th.command){html+="<th role='columnheader' "+kendo.attr("field")+"='"+(th.field||"")+"' ";if(th.title){html+=kendo.attr("title")+'="'+th.title.replace(/'/g,"\'")+'" ';}if(th.groupable!==undefined){html+=kendo.attr("groupable")+"='"+th.groupable+"' ";}if(th.aggregates){html+=kendo.attr("aggregates")+"='"+th.aggregates+"'";}html+=stringifyAttributes(th.headerAttributes);html+=">"+text+"</th>";}else{html+="<th"+stringifyAttributes(th.headerAttributes)+">"+text+"</th>";}}tr.html(html);}else if(hasDetails&&!tr.find(".k-hierarchy-cell")[0]){tr.prepend('<th class="k-hierarchy-cell">&nbsp;</th>');}tr.find("th").addClass("k-header");if(!that.options.scrollable){thead.addClass("k-grid-header");}tr.find("script").remove().end().appendTo(thead);that.thead=thead;that._sortable();that._filterable();that._scrollable();that._updateCols();that._resizable();that._draggable();that._reorderable();if(that.groupable){that._attachGroupable();}that._columnMenu();},_updateCols:function(){var that=this;that._appendCols(that.thead.parent().add(that.table));},_appendCols:function(table){var that=this;normalizeCols(table,visibleColumns(that.columns),that._hasDetails(),that._groups());},_autoColumns:function(schema){if(schema&&schema.toJSON){var that=this,field;schema=schema.toJSON();for(field in schema){that.columns.push({field:field});}that._thead();that._templates();}},_rowsHtml:function(data){var that=this,html="",idx,length,rowTemplate=that.rowTemplate,altRowTemplate=that.altRowTemplate;for(idx=0,length=data.length;idx<length;idx++){if(idx%2){html+=altRowTemplate(data[idx]);}else{html+=rowTemplate(data[idx]);}that._data.push(data[idx]);}return html;},_groupRowHtml:function(group,colspan,level){var that=this,html="",idx,length,field=group.field,column=grep(that.columns,function(column){return column.field==field;})[0]||{},value=column.format?kendo.format(column.format,group.value):group.value,template=column.groupHeaderTemplate,text=(column.title||field)+': '+value,data=extend({},{field:group.field,value:group.value},group.aggregates[group.field]),footerDefaults=that._groupAggregatesDefaultObject||{},groupItems=group.items;if(template){text=typeof template===FUNCTION?template(data):kendo.template(template)(data);}html+='<tr class="k-grouping-row">'+groupCells(level)+'<td colspan="'+colspan+'" aria-expanded="true">'+'<p class="k-reset">'+'<a class="k-icon k-i-collapse" href="#" tabindex="-1"></a>'+text+'</p></td></tr>';if(group.hasSubgroups){for(idx=0,length=groupItems.length;idx<length;idx++){html+=that._groupRowHtml(groupItems[idx],colspan-1,level+1);}}else{html+=that._rowsHtml(groupItems);}if(that.groupFooterTemplate){html+=that.groupFooterTemplate(extend(footerDefaults,group.aggregates));}return html;},collapseGroup:function(group){group=$(group).find(".k-icon").addClass("k-i-expand").removeClass("k-i-collapse").end();var level=group.find(".k-group-cell").length,footerCount=1,offset,tr;group.find("td:first").attr("aria-expanded",false);group.nextAll("tr").each(function(){tr=$(this);offset=tr.find(".k-group-cell").length;if(tr.hasClass("k-grouping-row")){footerCount++;}else if(tr.hasClass("k-group-footer")){footerCount--;}if(offset<=level||(tr.hasClass("k-group-footer")&&footerCount<0)){return false;}tr.hide();});},expandGroup:function(group){group=$(group).find(".k-icon").addClass("k-i-collapse").removeClass("k-i-expand").end();var that=this,level=group.find(".k-group-cell").length,tr,offset,groupsCount=1;group.find("td:first").attr("aria-expanded",true);group.nextAll("tr").each(function(){tr=$(this);offset=tr.find(".k-group-cell").length;if(offset<=level){return false;}if(offset==level+1&&!tr.hasClass("k-detail-row")){tr.show();if(tr.hasClass("k-grouping-row")&&tr.find(".k-icon").hasClass("k-i-collapse")){that.expandGroup(tr);}if(tr.hasClass("k-master-row")&&tr.find(".k-icon").hasClass("k-minus")){tr.next().show();}}if(tr.hasClass("k-grouping-row")){groupsCount++;}if(tr.hasClass("k-group-footer")){if(groupsCount==1){tr.show();}else{groupsCount--;}}});},_updateHeader:function(groups){var that=this,cells=that.thead.find("th.k-group-cell"),length=cells.length;if(groups>length){$(new Array(groups-length+1).join('<th class="k-group-cell k-header">&nbsp;</th>')).prependTo(that.thead.find("tr"));}else if(groups<length){length=length-groups;$(grep(cells,function(item,index){return length>index;})).remove();}},_firstDataItem:function(data,grouped){if(data&&grouped){if(data.hasSubgroups){data=this._firstDataItem(data.items[0],grouped);}else{data=data.items[0];}}return data;},hideColumn:function(column){var that=this,rows,row,cell,tables,idx,cols,colWidth,width=0,length,footer=that.footer||that.wrapper.find(".k-grid-footer"),columns=that.columns,columnIndex;if(typeof column=="number"){column=columns[column];}else{column=grep(columns,function(item){return item.field===column;})[0];}if(!column||column.hidden){return;}columnIndex=inArray(column,visibleColumns(columns));column.hidden=true;column.attributes=addHiddenStyle(column.attributes);column.footerAttributes=addHiddenStyle(column.footerAttributes);column.headerAttributes=addHiddenStyle(column.headerAttributes);that._templates();that._updateCols();that.thead.find(">tr>th:not(.k-hierarchy-cell,.k-group-cell):visible").eq(columnIndex).hide();if(footer){that._appendCols(footer.find("table:first"));footer.find(".k-footer-template>td:not(.k-hierarchy-cell,.k-group-cell):visible").eq(columnIndex).hide();}rows=that.tbody.children();for(idx=0,length=rows.length;idx<length;idx+=1){row=rows.eq(idx);if(row.is(".k-grouping-row,.k-detail-row")){cell=row.children(":not(.k-group-cell):first,.k-detail-cell").last();cell.attr("colspan",parseInt(cell.attr("colspan"),10)-1);}else{if(row.hasClass("k-grid-edit-row")&&(cell=row.children(".k-edit-container")[0])){cell=$(cell);cell.attr("colspan",parseInt(cell.attr("colspan"),10)-1);cell.find("col").eq(columnIndex).remove();row=cell.find("tr:first");}row.children(":not(.k-group-cell,.k-hierarchy-cell):visible").eq(columnIndex).hide();}}cols=that.thead.prev().find("col");for(idx=0,length=cols.length;idx<length;idx+=1){colWidth=cols[idx].style.width;if(colWidth&&colWidth.indexOf("%")==-1){width+=parseInt(colWidth,10);}else{width=0;break;}}tables=$(">.k-grid-header table:first,>.k-grid-footer table:first",that.wrapper).add(that.table);if(width){tables.width(width);}if($.browser.msie&&parseInt($.browser.version,10)==8){tables.css("display","inline-table");setTimeout(function(){tables.css("display","table");},1);}that.trigger(COLUMNHIDE,{column:column});},showColumn:function(column){var that=this,rows,idx,length,row,cell,tables,width,colWidth,cols,columns=that.columns,footer=that.footer||that.wrapper.find(".k-grid-footer"),columnIndex;if(typeof column=="number"){column=columns[column];}else{column=grep(columns,function(item){return item.field===column;})[0];}if(!column||!column.hidden){return;}columnIndex=inArray(column,columns);column.hidden=false;column.attributes=removeHiddenStyle(column.attributes);column.footerAttributes=removeHiddenStyle(column.footerAttributes);column.headerAttributes=removeHiddenStyle(column.headerAttributes);that._templates();that._updateCols();that.thead.find(">tr>th:not(.k-hierarchy-cell,.k-group-cell)").eq(columnIndex).show();if(footer){that._appendCols(footer.find("table:first"));footer.find(".k-footer-template>td:not(.k-hierarchy-cell,.k-group-cell)").eq(columnIndex).show();}rows=that.tbody.children();for(idx=0,length=rows.length;idx<length;idx+=1){row=rows.eq(idx);if(row.is(".k-grouping-row,.k-detail-row")){cell=row.children(":not(.k-group-cell):first,.k-detail-cell").last();cell.attr("colspan",parseInt(cell.attr("colspan"),10)+1);}else{if(row.hasClass("k-grid-edit-row")&&(cell=row.children(".k-edit-container")[0])){cell=$(cell);cell.attr("colspan",parseInt(cell.attr("colspan"),10)+1);normalizeCols(cell.find(">form>table"),visibleColumns(columns),false,0);row=cell.find("tr:first");}row.children(":not(.k-group-cell,.k-hierarchy-cell)").eq(columnIndex).show();}}tables=$(">.k-grid-header table:first,>.k-grid-footer table:first",that.wrapper).add(that.table);if(!column.width){tables.width("");}else{width=0;cols=that.thead.prev().find("col");for(idx=0,length=cols.length;idx<length;idx+=1){colWidth=cols[idx].style.width;if(colWidth.indexOf("%")>-1){width=0;break;}width+=parseInt(colWidth,10);}if(width){tables.width(width);}}that.trigger(COLUMNSHOW,{column:column});},_progress:function(toggle){var that=this,element=that.element.is("table")?that.element.parent():(that.content&&that.content.length?that.content:that.element);kendo.ui.progress(element,toggle);},refresh:function(e){var that=this,length,idx,html="",data=that.dataSource.view(),navigatable=that.options.navigatable,tbody,placeholder,currentIndex,current=$(that.current()),isCurrentInHeader=false,groups=(that.dataSource.group()||[]).length,colspan=groups+visibleColumns(that.columns).length;if(e&&e.action==="itemchange"&&that.editable){return;}e=e||{};if(that.trigger("dataBinding",{action:e.action||"rebind",index:e.index,items:e.items})){return;}if(navigatable&&(that.table[0]===document.activeElement||$.contains(that.table[0],document.activeElement))){isCurrentInHeader=current.is("th");currentIndex=0;if(isCurrentInHeader){currentIndex=that.thead.find("th:not(.k-group-cell)").index(current);}}that._destroyEditable();that._progress(false);that._data=[];if(!that.columns.length){that._autoColumns(that._firstDataItem(data[0],groups));colspan=groups+that.columns.length;}that._group=groups>0||that._group;if(that._group){that._templates();that._updateCols();that._updateHeader(groups);that._group=groups>0;}if(groups>0){if(that.detailTemplate){colspan++;}if(that.groupFooterTemplate){that._groupAggregatesDefaultObject=buildEmptyAggregatesObject(that.dataSource.aggregate());}for(idx=0,length=data.length;idx<length;idx++){html+=that._groupRowHtml(data[idx],colspan,0);}}else{html+=that._rowsHtml(data);}if(tbodySupportsInnerHtml){that.tbody[0].innerHTML=html;}else{placeholder=document.createElement("div");placeholder.innerHTML="<table><tbody>"+html+"</tbody></table>";tbody=placeholder.firstChild.firstChild;that.table[0].replaceChild(tbody,that.tbody[0]);that.tbody=$(tbody);}that._footer();that._setContentHeight();if(currentIndex>=0){that._removeCurrent();if(!isCurrentInHeader){that.current(that.items().eq(currentIndex).children().filter(DATA_CELL).first());}else{that.current(that.thead.find("th:not(.k-group-cell)").eq(currentIndex));}that._current.closest("table")[0].focus();}that.trigger(DATABOUND);}});function getCommand(commands,name){var idx,length,command;if(typeof commands===STRING&&commands===name){return commands;}if(isPlainObject(commands)&&commands.name===name){return commands;}if(isArray(commands)){for(idx=0,length=commands.length;idx<length;idx++){command=commands[idx];if((typeof command===STRING&&command===name)||(command.name===name)){return command;}}}return null;}function tableClick(e){var currentTarget=$(e.currentTarget),currentTable=currentTarget.closest("table")[0];if(currentTable!==this.table[0]&&currentTable!==this.thead.parent()[0]){return;}this.current(currentTarget);if(currentTarget.is("th")||!$(e.target).is(":button,a,:input,a>.k-icon,textarea,span.k-icon,.k-input")){setTimeout(function(){currentTable.focus();});}if(currentTarget.is("th")){e.preventDefault();}}ui.plugin(Grid);ui.plugin(VirtualScrollable);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,CHANGE="change",DATABOUND="dataBound",DATABINDING="dataBinding",Widget=kendo.ui.Widget,keys=kendo.keys,FOCUSSELECTOR=">*",REQUESTSTART="requestStart",ERROR="error",FOCUSED="k-state-focused",SELECTED="k-state-selected",KEDITITEM="k-edit-item",STRING="string",EDIT="edit",REMOVE="remove",SAVE="save",CLICK="click",NS=".kendoListView",proxy=$.proxy,progress=kendo.ui.progress,DataSource=kendo.data.DataSource;var ListView=Widget.extend({init:function(element,options){var that=this;options=$.isArray(options)?{dataSource:options}:options;Widget.fn.init.call(that,element,options);options=that.options;that.wrapper=element=that.element;if(element[0].id){that._itemId=element[0].id+"_lv_active";}that._element();that._dataSource();that.template=kendo.template(options.template||"");that.altTemplate=kendo.template(options.altTemplate||options.template);that.editTemplate=kendo.template(options.editTemplate||"");that._navigatable();that._selectable();that._pageable();that._crudHandlers();if(that.options.autoBind){that.dataSource.fetch();}kendo.notify(that);},events:[CHANGE,DATABINDING,DATABOUND,EDIT,REMOVE,SAVE],options:{name:"ListView",autoBind:true,selectable:false,navigatable:false,template:"",altTemplate:"",editTemplate:""},_item:function(action){return this.element.children()[action]();},items:function(){return this.element.children();},setDataSource:function(dataSource){this.options.dataSource=dataSource;this._dataSource();if(this.options.autoBind){dataSource.fetch();}},_unbindDataSource:function(){var that=this;that.dataSource.unbind(CHANGE,that._refreshHandler).unbind(REQUESTSTART,that._requestStartHandler).unbind(ERROR,that._errorHandler);},_dataSource:function(){var that=this;if(that.dataSource&&that._refreshHandler){that._unbindDataSource();}else{that._refreshHandler=proxy(that.refresh,that);that._requestStartHandler=proxy(that._requestStart,that);that._errorHandler=proxy(that._error,that);}that.dataSource=DataSource.create(that.options.dataSource).bind(CHANGE,that._refreshHandler).bind(REQUESTSTART,that._requestStartHandler).bind(ERROR,that._errorHandler);},_requestStart:function(){progress(this.element,true);},_error:function(){progress(this.element,false);},_element:function(){this.element.addClass("k-widget k-listview").attr("role","listbox");},refresh:function(e){var that=this,view=that.dataSource.view(),data,items,item,html="",idx,length,template=that.template,altTemplate=that.altTemplate;if(e&&e.action==="itemchange"){if(!that.editable){data=e.items[0];idx=$.inArray(data,view);if(idx>=0){item=$(template(data)).attr(kendo.attr("uid"),data.uid);that.items().eq(idx).replaceWith(item);that.trigger("itemChange",{item:item,data:data});}}return;}e=e||{};if(that.trigger(DATABINDING,{action:e.action||"rebind",items:e.items,index:e.index})){return;}that._destroyEditable();for(idx=0,length=view.length;idx<length;idx++){if(idx%2){html+=altTemplate(view[idx]);}else{html+=template(view[idx]);}}that.element.html(html);items=that.items();for(idx=0,length=view.length;idx<length;idx++){items.eq(idx).attr(kendo.attr("uid"),view[idx].uid).attr("role","option").attr("aria-selected","false");}if(that.element[0]===document.activeElement&&that.options.navigatable){that.current(items.eq(0));}that.trigger(DATABOUND);},_pageable:function(){var that=this,pageable=that.options.pageable,settings,pagerId;if($.isPlainObject(pageable)){pagerId=pageable.pagerId;settings=$.extend({},pageable,{dataSource:that.dataSource,pagerId:null});that.pager=new kendo.ui.Pager($("#"+pagerId),settings);}},_selectable:function(){var that=this,multi,current,selectable=that.options.selectable,navigatable=that.options.navigatable;if(selectable){multi=typeof selectable===STRING&&selectable.toLowerCase().indexOf("multiple")>-1;if(multi){that.element.attr("aria-multiselectable",true);}that.selectable=new kendo.ui.Selectable(that.element,{aria:true,multiple:multi,filter:FOCUSSELECTOR,change:function(){that.trigger(CHANGE);}});if(navigatable){that.element.on("keydown"+NS,function(e){if(e.keyCode===keys.SPACEBAR){current=that.current();if(e.target==e.currentTarget){e.preventDefault();}if(multi){if(!e.ctrlKey){that.selectable.clear();}else{if(current&&current.hasClass(SELECTED)){current.removeClass(SELECTED);return;}}}else{that.selectable.clear();}that.selectable.value(current);}});}}},current:function(candidate){var that=this,element=that.element,current=that._current;if(candidate===undefined){return current;}if(current){current.removeClass(FOCUSED).removeAttr("id");element.removeAttr("aria-activedescendant");}if(candidate&&candidate[0]){that._scrollTo(candidate[0]);element.attr("aria-activedescendant",that._itemId);candidate.addClass(FOCUSED).attr("id",that._itemId);}that._current=candidate;},_scrollTo:function(element){var that=this,container,UseJQueryoffset=false,SCROLL="scroll";if(that.wrapper.css("overflow")=="auto"||that.wrapper.css("overflow")==SCROLL){container=that.wrapper[0];}else{container=window;UseJQueryoffset=true;}var scrollDirectionFunc=function(direction,dimension){var elementOffset=UseJQueryoffset?$(element).offset()[direction.toLowerCase()]:element["offset"+direction],elementDimension=element["client"+dimension],containerScrollAmount=$(container)[SCROLL+direction](),containerDimension=$(container)[dimension.toLowerCase()]();if(elementOffset+elementDimension>containerScrollAmount+containerDimension){$(container)[SCROLL+direction](elementOffset+elementDimension-containerDimension);}else if(elementOffset<containerScrollAmount){$(container)[SCROLL+direction](elementOffset);}};scrollDirectionFunc("Top","Height");scrollDirectionFunc("Left","Width");},_navigatable:function(){var that=this,navigatable=that.options.navigatable,element=that.element,clickCallback=function(e){that.current($(e.currentTarget));if(!$(e.target).is(":button,a,:input,a>.k-icon,textarea")){element.focus();}};if(navigatable){that._tabindex();element.on("focus"+NS,function(){var current=that._current;if(!current||!current.is(":visible")){current=that._item("first");}that.current(current);}).on("focusout"+NS,function(){if(that._current){that._current.removeClass(FOCUSED);}}).on("keydown"+NS,function(e){var key=e.keyCode,current=that.current(),target=$(e.target),canHandle=!target.is(":button,textarea,a,a>.t-icon,input"),isTextBox=target.is(":text"),preventDefault=kendo.preventDefault,editItem=element.find("."+KEDITITEM),idx;if((!canHandle&&!isTextBox&&keys.ESC!=key)||(isTextBox&&keys.ESC!=key&&keys.ENTER!=key)){return;}if(keys.UP===key||keys.LEFT===key){if(current){current=current.prev();}that.current(!current||!current[0]?that._item("last"):current);preventDefault(e);}else if(keys.DOWN===key||keys.RIGHT===key){if(current){current=current.next();}that.current(!current||!current[0]?that._item("first"):current);preventDefault(e);}else if(keys.PAGEUP===key){that.current(null);that.dataSource.page(that.dataSource.page()-1);preventDefault(e);}else if(keys.PAGEDOWN===key){that.current(null);that.dataSource.page(that.dataSource.page()+1);preventDefault(e);}else if(keys.HOME===key){that.current(that._item("first"));preventDefault(e);}else if(keys.END===key){that.current(that._item("last"));preventDefault(e);}else if(keys.ENTER===key){if(editItem.length!==0&&(canHandle||isTextBox)){idx=that.items().index(editItem);document.activeElement.blur();that.save();var focusAgain=function(){that.element.trigger("focus");that.current(that.items().eq(idx));};that.one("dataBound",focusAgain);}else if(that.options.editTemplate!==""){that.edit(current);}}else if(keys.ESC===key){editItem=element.find("."+KEDITITEM);if(editItem.length===0){return;}idx=that.items().index(editItem);that.cancel();that.element.trigger("focus");that.current(that.items().eq(idx));}});element.on("mousedown"+NS+" touchstart"+NS,FOCUSSELECTOR,proxy(clickCallback,that));}},clearSelection:function(){var that=this;that.selectable.clear();that.trigger(CHANGE);},select:function(items){var that=this,selectable=that.selectable;items=$(items);if(items.length){if(!selectable.options.multiple){selectable.clear();items=items.first();}selectable.value(items);return;}return selectable.value();},_destroyEditable:function(){var that=this;if(that.editable){that.editable.destroy();delete that.editable;}},_modelFromElement:function(element){var uid=element.attr(kendo.attr("uid"));return this.dataSource.getByUid(uid);},_closeEditable:function(validate){var that=this,editable=that.editable,data,container,valid=true;if(editable){if(validate){valid=editable.end();}if(valid){data=that._modelFromElement(editable.element);container=$(that.template(data)).attr(kendo.attr("uid"),data.uid);that._destroyEditable();editable.element.replaceWith(container);}}return valid;},edit:function(item){var that=this,data=that._modelFromElement(item),container=$(that.editTemplate(data)).addClass(KEDITITEM);that.cancel();container.attr(kendo.attr("uid"),data.uid);item.replaceWith(container);that.editable=container.kendoEditable({model:data,clearContainer:false,errorTemplate:false}).data("kendoEditable");that.trigger(EDIT,{model:data,item:container});},save:function(){var that=this,editable=that.editable.element,model=that._modelFromElement(editable);if(!that.trigger(SAVE,{model:model,item:editable})&&that._closeEditable(true)){that.dataSource.sync();}},remove:function(item){var that=this,dataSource=that.dataSource,data=that._modelFromElement(item);if(!that.trigger(REMOVE,{model:data,item:item})){item.hide();dataSource.remove(data);dataSource.sync();}},add:function(){var that=this,dataSource=that.dataSource,index=dataSource.indexOf((dataSource.view()||[])[0]);if(index<0){index=0;}that.cancel();dataSource.insert(index,{});that.edit(that.element.children().first());},cancel:function(){var that=this,dataSource=that.dataSource;if(that.editable){dataSource.cancelChanges(that._modelFromElement(that.editable.element));that._closeEditable(false);}},_crudHandlers:function(){var that=this,clickNS="touchend"+NS+" "+CLICK+NS;that.element.on(clickNS,".k-edit-button",function(e){var item=$(this).closest("["+kendo.attr("uid")+"]");that.edit(item);e.preventDefault();});that.element.on(clickNS,".k-delete-button",function(e){var item=$(this).closest("["+kendo.attr("uid")+"]");that.remove(item);e.preventDefault();});that.element.on(clickNS,".k-update-button",function(e){that.save();e.preventDefault();});that.element.on(clickNS,".k-cancel-button",function(e){that.cancel();e.preventDefault();});},destroy:function(){var that=this;Widget.fn.destroy.call(that);that._unbindDataSource();that._destroyEditable();that.element.off(NS);if(that.pager){that.pager.destroy();}if(that.selectable){that.selectable.destroy();}kendo.destroy(that.element);}});kendo.ui.plugin(ListView);})(window.kendo.jQuery);;(function($,undefined){var kendo=window.kendo,Widget=kendo.ui.Widget,isPlainObject=$.isPlainObject,proxy=$.proxy,extend=$.extend,placeholderSupported=kendo.support.placeholder,isFunction=$.isFunction,trimSlashesRegExp=/(^\/|\/$)/g,CHANGE="change",APPLY="apply",ERROR="error",CLICK="click",NS=".kendoImageBrowser",BREADCRUBMSNS=".kendoBreadcrumbs",SEARCHBOXNS=".kendoSearchBox",NAMEFIELD="name",SIZEFIELD="size",TYPEFIELD="type",DEFAULTSORTORDER={field:TYPEFIELD,dir:"asc"},ARRANGEBYTMPL=kendo.template('<li data-#=ns#value="#=value#" class="k-item">${text}</li>'),EMPTYTILE=kendo.template('<li class="k-tile-empty"><strong>${text}</strong></li>'),TOOLBARTMPL='<div class="k-widget k-toolbar k-floatwrap">'+'<div class="k-toolbar-wrap">'+'#if(showUpload) { # '+'<div class="k-widget k-upload"><div class="k-button k-button-icontext k-button-bare k-upload-button">'+'<span class="k-icon k-add"></span>#=messages.uploadFile#<input type="file" name="file" /></div></div>'+'#}#'+'#if(showCreate) {#'+'<button type="button" class="k-button k-button-icon k-button-bare"><span class="k-icon k-addfolder"></span></button>'+'#}#'+'#if(showDelete) {#'+'<button type="button" class="k-button k-button-icon k-button-bare k-state-disabled"><span class="k-icon k-delete"></span></button>&nbsp;'+'#}#'+'</div>'+'<div class="k-tiles-arrange">#=messages.orderBy#: <a href="\\#" class="k-link"><span>#=messages.orderByName#</span><span class="k-icon k-i-arrow-s"></span></a>'+'</div>'+'</div>';extend(true,kendo.data,{schemas:{"imagebrowser":{data:function(data){return data.items||data||[];},model:{id:"name",fields:{name:"name",size:"size",type:"type"}}}}});extend(true,kendo.data,{transports:{"imagebrowser":kendo.data.RemoteTransport.extend({init:function(options){kendo.data.RemoteTransport.fn.init.call(this,$.extend(true,{},this.options,options));},_call:function(type,options){options.data=$.extend({},options.data,{path:this.options.path()});if(isFunction(this.options[type])){this.options[type].call(this,options);}else{kendo.data.RemoteTransport.fn[type].call(this,options);}},read:function(options){this._call("read",options);},create:function(options){this._call("create",options);},destroy:function(options){this._call("destroy",options);},update:function(){},options:{read:{type:"POST"},update:{type:"POST"},create:{type:"POST"},destroy:{type:"POST"}}})}});function bindDragEventWrappers(element,onDragEnter,onDragLeave){var hideInterval,lastDrag;element.on("dragenter"+NS,function(e){onDragEnter();lastDrag=new Date();if(!hideInterval){hideInterval=setInterval(function(){var sinceLastDrag=new Date()-lastDrag;if(sinceLastDrag>100){onDragLeave();clearInterval(hideInterval);hideInterval=null;}},100);}}).on("dragover"+NS,function(e){lastDrag=new Date();});}var offsetTop;if($.browser.msie&&parseFloat($.browser.version)<8){offsetTop=function(element){return element.offsetTop;};}else{offsetTop=function(element){return element.offsetTop-$(element).height();};}function fieldName(fields,name){var descriptor=fields[name];if(isPlainObject(descriptor)){return descriptor.field||name;}return descriptor;}function concatPaths(path,name){if(path===undefined||!path.match(/\/$/)){path=(path||"")+"/";}return path+name;}function sizeFormatter(value){if(!value){return"";}var suffix=" bytes";if(value>=1073741824){suffix=" GB";value/=1073741824;}else if(value>=1048576){suffix=" MB";value/=1048576;}else if(value>=1024){suffix=" KB";value/=1024;}return Math.round(value*100)/100+suffix;}var ImageBrowser=Widget.extend({init:function(element,options){var that=this;options=options||{};Widget.fn.init.call(that,element,options);that.element.addClass("k-imagebrowser");that.element.on(CLICK+NS,".k-toolbar button:not(.k-state-disabled):has(.k-delete)",proxy(that._deleteClick,that)).on(CLICK+NS,".k-toolbar button:not(.k-state-disabled):has(.k-addfolder)",proxy(that._addClick,that)).on("keydown"+NS,"li.k-state-selected input",proxy(that._directoryKeyDown,that)).on("blur"+NS,"li.k-state-selected input",proxy(that._directoryBlur,that));that._dataSource();that.refresh();that.path(that.options.path);},options:{name:"ImageBrowser",messages:{uploadFile:"Upload",orderBy:"Arrange by",orderByName:"Name",orderBySize:"Size",directoryNotFound:"A directory with this name was not found.",emptyFolder:"Empty Folder",deleteFile:'Are you sure you want to delete "{0}"?',invalidFileType:"The selected file \"{0}\" is not valid. Supported file types are {1}.",overwriteFile:"A file with name \"{0}\" already exists in the current directory. Do you want to overwrite it?",dropFilesHere:"drop files here to upload"},transport:{},path:"/",fileTypes:"*.png,*.gif,*.jpg,*.jpeg"},events:[ERROR,CHANGE,APPLY],destroy:function(){var that=this;Widget.fn.destroy.call(that);that.dataSource.unbind(ERROR,that._errorHandler);that.element.add(that.list).add(that.toolbar).off(NS);if(that.arrangeByPopup){that.arrangeByPopup.destroy();}kendo.destroy(that.element);},value:function(){var that=this,selected=that._selectedItem(),path,imageUrl=that.options.transport.imageUrl;if(selected&&selected.get(that._getFieldName(TYPEFIELD))==="f"){path=concatPaths(that.path(),selected.get(that._getFieldName(NAMEFIELD))).replace(trimSlashesRegExp,"");if(imageUrl){path=isFunction(imageUrl)?imageUrl(path):kendo.format(imageUrl,path);}return path;}},_selectedItem:function(){var listView=this.listView,selected=listView.select();if(selected.length){return this.dataSource.getByUid(selected.attr(kendo.attr("uid")));}},_toolbar:function(){var that=this,template=kendo.template(TOOLBARTMPL),messages=that.options.messages,link,popup,arrangeBy=[{text:messages.orderByName,value:"name",ns:kendo.ns},{text:messages.orderBySize,value:"size",ns:kendo.ns}];that.toolbar=$(template({messages:messages,showUpload:that.options.transport.uploadUrl,showCreate:that.options.transport.create,showDelete:that.options.transport.destroy})).appendTo(that.element).find(".k-upload input").kendoUpload({multiple:false,localization:{dropFilesHere:messages.dropFilesHere},async:{saveUrl:that.options.transport.uploadUrl,autoUpload:true},upload:proxy(that._fileUpload,that)}).end();that.upload=that.toolbar.find(".k-upload input").data("kendoUpload");link=that.toolbar.find(".k-tiles-arrange a");that.arrangeByPopup=popup=$("<ul>"+kendo.render(ARRANGEBYTMPL,arrangeBy)+"</ul>").kendoPopup({anchor:link}).on(CLICK+NS,"li",function(){var item=$(this),field=item.attr(kendo.attr("value"));that.toolbar.find(".k-tiles-arrange a span:first").html(item.text());popup.close();that.orderBy(field);}).data("kendoPopup");link.on(CLICK+NS,function(e){e.preventDefault();popup.toggle();});that._attachDropzoneEvents();},_attachDropzoneEvents:function(){var that=this;if(that.options.transport.uploadUrl){bindDragEventWrappers($(document.documentElement),$.proxy(that._dropEnter,that),$.proxy(that._dropLeave,that));that._scrollHandler=proxy(that._positionDropzone,that);}},_dropEnter:function(){this._positionDropzone();$(document).on("scroll"+NS,this._scrollHandler);},_dropLeave:function(){this._removeDropzone();$(document).off("scroll"+NS,this._scrollHandler);},_positionDropzone:function(){var that=this,element=that.element,offset=element.offset();that.toolbar.find(".k-dropzone").addClass("k-imagebrowser-dropzone").offset(offset).css({width:element[0].clientWidth,height:element[0].clientHeight,lineHeight:element[0].clientHeight+"px"});},_removeDropzone:function(){this.toolbar.find(".k-dropzone").removeClass("k-imagebrowser-dropzone").css({width:"",height:"",lineHeight:"",top:"",left:""});},_deleteClick:function(){var that=this,item=that.listView.select(),message=kendo.format(that.options.messages.deleteFile,item.find("strong").text());if(item.length&&that._showMessage(message,"confirm")){that.listView.remove(item);}},_addClick:function(){this.createDirectory();},_fileUpload:function(e){var that=this,options=that.options,fileTypes=options.fileTypes,filterRegExp=new RegExp(("("+fileTypes.split(",").join(")|(")+")").replace(/\*\./g,".*."),"i"),fileName=e.files[0].name,fileNameField=that._getFieldName(NAMEFIELD),sizeField=that._getFieldName(SIZEFIELD),model;if(filterRegExp.test(fileName)){e.data={path:that.path()};model=that._createFile(fileName);if(!model){e.preventDefault();}else{that.upload.one("success",function(e){model.set(fileNameField,e.response[fileNameField]);model.set(sizeField,e.response[sizeField]);that._tiles=that.listView.items().filter("["+kendo.attr("type")+"=f]");});}}else{e.preventDefault();that._showMessage(kendo.format(options.messages.invalidFileType,fileName,fileTypes));}},_findFile:function(name){var data=this.dataSource.data(),idx,result,typeField=this._getFieldName(TYPEFIELD),nameField=this._getFieldName(NAMEFIELD),length;name=name.toLowerCase();for(idx=0,length=data.length;idx<length;idx++){if(data[idx].get(typeField)==="f"&&data[idx].get(nameField).toLowerCase()===name){result=data[idx];break;}}return result;},_createFile:function(fileName){var that=this,idx,length,index=0,model={},typeField=that._getFieldName(TYPEFIELD),view=that.dataSource.view(),file=that._findFile(fileName);if(file&&!that._showMessage(kendo.format(that.options.messages.overwriteFile,fileName),"confirm")){return null;}if(file){return file;}for(idx=0,length=view.length;idx<length;idx++){if(view[idx].get(typeField)==="f"){index=idx;break;}}model[typeField]="f";model[that._getFieldName(NAMEFIELD)]=fileName;model[that._getFieldName(SIZEFIELD)]=0;return that.dataSource.insert(++index,model);},createDirectory:function(){var that=this,idx,length,lastDirectoryIdx=0,typeField=that._getFieldName(TYPEFIELD),nameField=that._getFieldName(NAMEFIELD),view=that.dataSource.data(),name=that._nameDirectory(),model=new that.dataSource.reader.model();for(idx=0,length=view.length;idx<length;idx++){if(view[idx].get(typeField)==="d"){lastDirectoryIdx=idx;}}model.set(typeField,"d");model.set(nameField,name);that.listView.one("dataBound",function(){var selected=that.listView.items().filter("["+kendo.attr("uid")+"="+model.uid+"]"),input=selected.find("input");if(selected.length){this.edit(selected);}this.element.scrollTop(selected.attr("offsetTop")-this.element[0].offsetHeight);setTimeout(function(){input.select();});}).one("save",function(e){var value=e.model.get(nameField);if(!value){e.model.set(nameField,name);}else{e.model.set(nameField,that._nameExists(value,model.uid)?that._nameDirectory():value);}});that.dataSource.insert(++lastDirectoryIdx,model);},_directoryKeyDown:function(e){if(e.keyCode==13){e.currentTarget.blur();}},_directoryBlur:function(e){this.listView.save();},_nameExists:function(name,uid){var data=this.dataSource.data(),typeField=this._getFieldName(TYPEFIELD),nameField=this._getFieldName(NAMEFIELD),idx,length;for(idx=0,length=data.length;idx<length;idx++){if(data[idx].get(typeField)==="d"&&data[idx].get(nameField).toLowerCase()===name.toLowerCase()&&data[idx].uid!==uid){return true;}}return false;},_nameDirectory:function(){var name="New folder",data=this.dataSource.data(),directoryNames=[],typeField=this._getFieldName(TYPEFIELD),nameField=this._getFieldName(NAMEFIELD),candidate,idx,length;for(idx=0,length=data.length;idx<length;idx++){if(data[idx].get(typeField)==="d"&&data[idx].get(nameField).toLowerCase().indexOf(name.toLowerCase())>-1){directoryNames.push(data[idx].get(nameField));}}if($.inArray(name,directoryNames)>-1){idx=2;do{candidate=name+" ("+idx+")";idx++;}while($.inArray(candidate,directoryNames)>-1);name=candidate;}return name;},orderBy:function(field){this.dataSource.sort([{field:this._getFieldName(TYPEFIELD),dir:"asc"},{field:this._getFieldName(field),dir:"asc"}]);},search:function(name){this.dataSource.filter({field:this._getFieldName(NAMEFIELD),operator:"contains",value:name});},_content:function(){var that=this;that.list=$('<ul class="k-reset k-floats k-tiles" />').appendTo(that.element).on("scroll"+NS,proxy(that._scroll,that)).on("dblclick"+NS,"li",proxy(that._dblClick,that));that.listView=new kendo.ui.ListView(that.list,{dataSource:that.dataSource,template:that._itemTmpl(),editTemplate:that._editTmpl(),selectable:true,autoBind:false,dataBinding:function(e){that.toolbar.find(".k-delete").parent().addClass("k-state-disabled");if(e.action==="remove"||e.action==="sync"){e.preventDefault();}},dataBound:function(){if(that.dataSource.view().length){that._tiles=this.items().filter("["+kendo.attr("type")+"=f]");that._scroll();}else{this.wrapper.append(EMPTYTILE({text:that.options.messages.emptyFolder}));}},change:proxy(that._listViewChange,that)});},_dblClick:function(e){var that=this,li=$(e.currentTarget);if(li.filter("["+kendo.attr("type")+"=d]").length){var folder=that.dataSource.getByUid(li.attr(kendo.attr("uid")));if(folder){that.path(concatPaths(that.path(),folder.get(that._getFieldName(NAMEFIELD))));that.breadcrumbs.value(that.path());}}else if(li.filter("["+kendo.attr("type")+"=f]").length){that.trigger(APPLY);}},_listViewChange:function(){var selected=this._selectedItem();this.toolbar.find(".k-delete").parent().removeClass("k-state-disabled");if(selected&&selected.get(this._getFieldName(TYPEFIELD))==="f"){this.trigger(CHANGE);}},_dataSource:function(){var that=this,options=that.options,transport=options.transport,typeSortOrder=extend({},DEFAULTSORTORDER),nameSortOrder={field:NAMEFIELD,dir:"asc"},schema,dataSource={type:transport.type||"imagebrowser",sort:[typeSortOrder,nameSortOrder]};if(isPlainObject(transport)){transport.path=proxy(that.path,that);dataSource.transport=transport;}if(isPlainObject(options.schema)){dataSource.schema=options.schema;if(isPlainObject(options.schema.model)&&options.schema.model.fields){typeSortOrder.field=fieldName(options.schema.model.fields,TYPEFIELD);nameSortOrder.field=fieldName(options.schema.model.fields,NAMEFIELD);}}else if(transport.type&&isPlainObject(kendo.data.schemas[transport.type])){schema=kendo.data.schemas[transport.type];if(isPlainObject(schema.model)&&schema.model.fields){typeSortOrder.field=fieldName(schema.model.fields,TYPEFIELD);nameSortOrder.field=fieldName(schema.model.fields,NAMEFIELD);}}if(that.dataSource&&that._errorHandler){that.dataSource.unbind(ERROR,that._errorHandler);}else{that._errorHandler=proxy(that._error,that);}that.dataSource=kendo.data.DataSource.create(dataSource).bind(ERROR,that._errorHandler);},_navigation:function(){var that=this,navigation=$('<div class="k-floatwrap"><input/><input/></div>').appendTo(this.element);that.breadcrumbs=navigation.find("input:first").kendoBreadcrumbs({value:that.options.path,change:function(){that.path(this.value());}}).data("kendoBreadcrumbs");that.searchBox=navigation.parent().find("input:last").kendoSearchBox({change:function(){that.search(this.value());}}).data("kendoSearchBox");},_error:function(e){var that=this,status;if(!that.trigger(ERROR,e)){status=e.xhr.status;if(e.status=='error'){if(status=='404'){that._showMessage(that.options.messages.directoryNotFound);}else if(status!='0'){that._showMessage('Error! The requested URL returned '+status+' - '+e.xhr.statusText);}}else if(status=='timeout'){that._showMessage('Error! Server timeout.');}}},_showMessage:function(message,type){return window[type||"alert"](message);},refresh:function(){var that=this;that._navigation();that._toolbar();that._content();},_loadImage:function(li){var that=this,element=$(li),dataItem=that.dataSource.getByUid(element.attr(kendo.attr("uid"))),name=dataItem.get(that._getFieldName(NAMEFIELD)),img=$("<img />",{alt:name}).hide().on("load"+NS,function(){$(this).prev().remove().end().addClass("k-image").fadeIn();});element.find(".k-loading").after(img);img.attr("src",that.options.transport.thumbnailUrl+"?path="+that.path()+encodeURIComponent(name));li.loaded=true;},_scroll:function(e){var that=this;if(that.options.transport&&that.options.transport.thumbnailUrl){clearTimeout(that._timeout);that._timeout=setTimeout(function(){var height=that.list.outerHeight(),viewTop=that.list.scrollTop(),viewBottom=viewTop+height;that._tiles.each(function(){var top=offsetTop(this),bottom=top+this.offsetHeight;if((top>=viewTop&&top<viewBottom)||(bottom>=viewTop&&bottom<viewBottom)){that._loadImage(this);}if(top>viewBottom){return false;}});that._tiles=that._tiles.filter(function(){return!this.loaded;});},250);}},_editTmpl:function(){var that=this,html='<li class="k-tile k-state-selected" '+kendo.attr("uid")+'="#=uid#" ';html+=kendo.attr("type")+'="${'+that._getFieldName(TYPEFIELD)+'}">';html+='#if('+that._getFieldName(TYPEFIELD)+' == "d") { #';html+='<div class="k-thumb"><span class="k-icon k-folder"></span></div>';html+="#}else{#";html+='<div class="k-thumb"><span class="k-icon k-loading"></span></div>';html+="#}#";html+='#if('+that._getFieldName(TYPEFIELD)+' == "d") { #';html+='<input class="k-input" '+kendo.attr("bind")+'="value:'+that._getFieldName(NAMEFIELD)+'"/>';html+="#}#";html+='</li>';return proxy(kendo.template(html),{sizeFormatter:sizeFormatter});},_itemTmpl:function(){var that=this,html='<li class="k-tile" '+kendo.attr("uid")+'="#=uid#" ';html+=kendo.attr("type")+'="${'+that._getFieldName(TYPEFIELD)+'}">';html+='#if('+that._getFieldName(TYPEFIELD)+' == "d") { #';html+='<div class="k-thumb"><span class="k-icon k-folder"></span></div>';html+="#}else{#";if(that.options.transport&&that.options.transport.thumbnailUrl){html+='<div class="k-thumb"><span class="k-icon k-loading"></span></div>';}else{html+='<div class="k-thumb"><span class="k-icon k-file"></span></div>';}html+="#}#";html+='<strong>${'+that._getFieldName(NAMEFIELD)+'}</strong>';html+='#if('+that._getFieldName(TYPEFIELD)+' == "f") { # <span class="k-filesize">${this.sizeFormatter('+that._getFieldName(SIZEFIELD)+')}</span> #}#';html+='</li>';return proxy(kendo.template(html),{sizeFormatter:sizeFormatter});},_getFieldName:function(name){return fieldName(this.dataSource.reader.model.fields,name);},path:function(value){var that=this,path=that._path||"";if(value!==undefined){that._path=value.replace(trimSlashesRegExp,"")+"/";that.dataSource.read({path:that._path});return;}if(path){path=path.replace(trimSlashesRegExp,"");}return path==="/"||path===""?"":(path+"/");}});var SearchBox=Widget.extend({init:function(element,options){var that=this;options=options||{};Widget.fn.init.call(that,element,options);if(placeholderSupported){that.element.attr("placeholder",that.options.label);}that._wrapper();that.element.on("keydown"+SEARCHBOXNS,proxy(that._keydown,that)).on("change"+SEARCHBOXNS,proxy(that._updateValue,that));that.wrapper.on(CLICK+SEARCHBOXNS,"a",proxy(that._click,that));if(!placeholderSupported){that.element.on("focus"+SEARCHBOXNS,proxy(that._focus,that)).on("blur"+SEARCHBOXNS,proxy(that._blur,that));}},options:{name:"SearchBox",label:"Search",value:""},events:[CHANGE],destroy:function(){var that=this;that.wrapper.add(that.element).add(that.label).off(SEARCHBOXNS);Widget.fn.destroy.call(that);},_keydown:function(e){if(e.keyCode===13){this._updateValue();}},_click:function(e){e.preventDefault();this._updateValue();},_updateValue:function(){var that=this,value=that.element.val();if(value!==that.value()){that.value(value);that.trigger(CHANGE);}},_blur:function(){this._updateValue();this._toggleLabel();},_toggleLabel:function(){if(!placeholderSupported){this.label.toggle(!this.element.val());}},_focus:function(){this.label.hide();},_wrapper:function(){var element=this.element,wrapper=element.parents(".k-search-wrap");element[0].style.width="";element.addClass("k-input k-textbox");if(!wrapper.length){wrapper=element.wrap($('<div class="k-widget k-search-wrap k-textbox"/>')).parent();if(!placeholderSupported){$('<label style="display:block">'+this.options.label+'</label>').insertBefore(element);}$('<a href="#" class="k-icon k-i-search k-search"/>').appendTo(wrapper);}this.wrapper=wrapper;this.label=wrapper.find(">label");},value:function(value){var that=this;if(value!==undefined){that.options.value=value;that.element.val(value);that._toggleLabel();return;}return that.options.value;}});var Breadcrumbs=Widget.extend({init:function(element,options){var that=this;options=options||{};Widget.fn.init.call(that,element,options);that._wrapper();that.wrapper.on("focus"+BREADCRUBMSNS,"input",proxy(that._focus,that)).on("blur"+BREADCRUBMSNS,"input",proxy(that._blur,that)).on("keydown"+BREADCRUBMSNS,"input",proxy(that._keydown,that)).on(CLICK+BREADCRUBMSNS,"a.k-i-arrow-n:first",proxy(that._rootClick,that)).on(CLICK+BREADCRUBMSNS,"a:not(.k-i-arrow-n)",proxy(that._click,that));that.value(that.options.value);},options:{name:"Breadcrumbs",gap:50},events:[CHANGE],destroy:function(){var that=this;Widget.fn.destroy.call(that);that.wrapper.add(that.wrapper.find("input")).add(that.wrapper.find("a")).off(BREADCRUBMSNS);},_update:function(val){val=(val||"").charAt(0)==="/"?val:("/"+(val||""));if(val!==this.value()){this.value(val);this.trigger(CHANGE);}},_click:function(e){e.preventDefault();this._update(this._path($(e.target).prevAll("a:not(.k-i-arrow-n)").andSelf()));},_rootClick:function(e){e.preventDefault();this._update("");},_focus:function(){var that=this,element=that.element;that.overlay.hide();that.element.val(that.value());setTimeout(function(){element.select();});},_blur:function(){if(this.overlay.is(":visible")){return;}var that=this,element=that.element,val=element.val().replace(/\/{2,}/g,"/");that.overlay.show();element.val("");that._update(val);},_keydown:function(e){var that=this;if(e.keyCode===13){that._blur();setTimeout(function(){that.overlay.find("a:first").focus();});}},_wrapper:function(){var element=this.element,wrapper=element.parents(".k-breadcrumbs"),overlay;element[0].style.width="";element.addClass("k-input");if(!wrapper.length){wrapper=element.wrap($('<div class="k-widget k-breadcrumbs k-header k-state-default"/>')).parent();}overlay=wrapper.find(".k-breadcrumbs-wrap");if(!overlay.length){overlay=$('<div class="k-breadcrumbs-wrap"/>').appendTo(wrapper);}this.wrapper=wrapper;this.overlay=overlay;},refresh:function(){var html="",value=this.value(),segments,segment,idx,length;if(value===undefined||!value.match(/^\//)){value="/"+(value||"");}segments=value.split("/");for(idx=0,length=segments.length;idx<length;idx++){segment=segments[idx];if(segment){if(!html){html+='<a href="#" class="k-icon k-i-arrow-n">root</a>';}html+='<a class="k-link" href="#">'+segments[idx]+'</a>';html+='<span class="k-icon k-i-arrow-e">&gt;</span>';}}this.overlay.empty().append($(html));this._adjustSectionWidth();},_adjustSectionWidth:function(){var that=this,wrapper=that.wrapper,width=wrapper.width()-that.options.gap,links=that.overlay.find("a"),a;links.each(function(index){a=$(this);if(a.parent().width()>width){if(index==links.length-1){a.width(width);}else{a.prev().andSelf().hide();}}});},value:function(val){if(val!==undefined){this._value=val.replace(/\/{2,}/g,"/");this.refresh();return;}return this._value;},_path:function(trail){return"/"+$.map(trail,function(b){return $(b).text();}).join("/");}});kendo.ui.plugin(ImageBrowser);kendo.ui.plugin(Breadcrumbs);kendo.ui.plugin(SearchBox);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,Class=kendo.Class,Widget=kendo.ui.Widget,os=kendo.support.mobileOS,browser=kendo.support.browser,extend=$.extend,deepExtend=kendo.deepExtend,NS=".kendoEditor",keys=kendo.keys;var ToolTemplate=Class.extend({init:function(options){var that=this;that.options=options;},getHtml:function(){var options=this.options;return kendo.template(options.template)({cssClass:options.cssClass,tooltip:options.title,initialValue:options.initialValue});}});var EditorUtils={select:function(editor){editor.trigger("select",{});},editorWrapperTemplate:'<table cellspacing="4" cellpadding="0" class="k-widget k-editor k-header" role="presentation"><tbody>'+'<tr role="presentation"><td class="k-editor-toolbar-wrap" role="presentation"><ul class="k-editor-toolbar" role="toolbar"></ul></td></tr>'+'<tr><td class="k-editable-area"></td></tr>'+'</tbody></table>',buttonTemplate:'<li class="k-editor-button" role="presentation">'+'<a href="" role="button" class="k-tool-icon #= cssClass #" unselectable="on" title="#= tooltip #">#= tooltip #</a>'+'</li>',colorPickerTemplate:'<li class="k-editor-colorpicker" role="presentation">'+'<div class="k-widget k-colorpicker k-header #= cssClass #" role="combobox" title="#=tooltip#">'+'<span class="k-tool-icon"><span class="k-selected-color"></span></span><span class="k-icon k-i-arrow-s"></span>'+'</div></li>',comboBoxTemplate:'<li class="k-editor-combobox">'+'<select title="#= tooltip #" class="#= cssClass #"></select>'+'</li>',dropDownListTemplate:'<li class="k-editor-selectbox">'+'<select title="#= tooltip #" class="#= cssClass #"></select>'+'</li>',separatorTemplate:'<li class="k-separator"></li>',focusable:".k-colorpicker,a.k-tool-icon:not(.k-state-disabled),.k-selectbox, .k-combobox .k-input",wrapTextarea:function(textarea){var w=textarea.width(),h=textarea.height(),template=EditorUtils.editorWrapperTemplate,editorWrap=$(template).insertBefore(textarea).width(w).height(h),editArea=editorWrap.find(".k-editable-area");textarea.appendTo(editArea).addClass("k-content k-raw-content").hide();return textarea.closest(".k-editor");},renderTools:function(editor,tools){var editorTools={},currentTool,tool,i,nativeTools=editor._nativeTools,template,options,toolsArea=$(editor.element).closest(".k-editor").find(".k-editor-toolbar");if(tools){for(i=0;i<tools.length;i++){currentTool=tools[i];options=null;if($.isPlainObject(currentTool)){if(currentTool.name&&editor.tools[currentTool.name]){$.extend(editor.tools[currentTool.name].options,currentTool);editorTools[currentTool.name]=editor.tools[currentTool.name];options=editorTools[currentTool.name].options;}else{options=extend({cssClass:"k-i-custom",type:"button",tooltip:""},currentTool);if(options.name){options.cssClass="k-"+(options.name=="custom"?"i-custom":options.name);}if(!options.template){if(options.type=="button"){options.template=EditorUtils.buttonTemplate;}}}}else if(editor.tools[currentTool]){editorTools[currentTool]=editor.tools[currentTool];options=editorTools[currentTool].options;}if(!options){continue;}template=options.template;if(template){if(template.getHtml){template=template.getHtml();}else{if(!$.isFunction(template)){template=kendo.template(template);}template=template(options);}if(template.indexOf('<li')!==0){template="<li class='k-editor-template'>"+template+"</li>";}tool=$(template).appendTo(toolsArea);if(options.type=="button"&&options.exec){tool.find(".k-tool-icon").click($.proxy(options.exec,editor.element[0]));}}}}for(i=0;i<nativeTools.length;i++){if(!editorTools[nativeTools[i]]){editorTools[nativeTools[i]]=editor.tools[nativeTools[i]];}}editor.options.tools=editorTools;},decorateStyleToolItems:function(textarea){var selectBox=textarea.data.closest(".k-editor").find(".k-style").data("kendoSelectBox");if(!selectBox){return;}var classes=selectBox.dataSource.view();selectBox.list.find(".k-item").each(function(idx,element){var item=$(element),text=item.text(),style=kendo.ui.editor.Dom.inlineStyle(textarea.data.data("kendoEditor").document,"span",{className:classes[idx].value});item.html('<span unselectable="on" style="display:block;'+style+'">'+text+'</span>');});},createContentElement:function(textarea,stylesheets){var iframe,wnd,doc,rtlStyle=kendo.support.isRtl(textarea)?"direction:rtl;":"";textarea.hide();iframe=$("<iframe />",{src:'javascript:""',frameBorder:"0"}).css("display","").addClass("k-content").insertBefore(textarea)[0];wnd=iframe.contentWindow||iframe;if(stylesheets.length>0){$(iframe).one("load",textarea,EditorUtils.decorateStyleToolItems);}doc=wnd.document||iframe.contentDocument;doc.open();doc.write("<!DOCTYPE html><html><head>"+"<meta charset='utf-8' />"+"<style>"+"html,body{padding:0;margin:0;font-family:Verdana,Geneva,sans-serif;background:#fff;height:100%;min-height:100%;}"+"html{font-size:100%}body{font-size:.75em;line-height:1.5;padding-top:1px;margin-top:-1px;"+"word-wrap: break-word;-webkit-nbsp-mode: space;-webkit-line-break: after-white-space;"+rtlStyle+"}"+"h1{font-size:2em;margin:.67em 0}h2{font-size:1.5em}h3{font-size:1.16em}h4{font-size:1em}h5{font-size:.83em}h6{font-size:.7em}"+"p{margin:0 0 1em;padding:0 .2em}.k-marker{display:none;}.k-paste-container{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}"+"ul,ol{padding-left:2.5em}"+"a{color:#00a}"+"code{font-size:1.23em}"+"</style>"+$.map(stylesheets,function(href){return"<link rel='stylesheet' href='"+href+"'>";}).join("")+"</head><body contenteditable='true'></body></html>");doc.close();return wnd;},initializeContentElement:function(editor){var isFirstKeyDown=true;editor.window=EditorUtils.createContentElement($(editor.textarea),editor.options.stylesheets);editor.document=editor.window.contentDocument||editor.window.document;editor.body=editor.document.body;$(editor.document).on("keydown"+NS,function(e){if(e.keyCode===keys.F10){setTimeout(function(){var TABINDEX="tabIndex",element=editor.wrapper,tabIndex=element.attr(TABINDEX);element.attr(TABINDEX,tabIndex||0).focus().find("li:has("+focusable+")").first().focus();if(!tabIndex&&tabIndex!==0){element.removeAttr(TABINDEX);}},100);e.preventDefault();return;}var toolName=editor.keyboard.toolFromShortcut(editor.options.tools,e);if(toolName){e.preventDefault();if(!/undo|redo/.test(toolName)){editor.keyboard.endTyping(true);}editor.exec(toolName);return false;}if(editor.keyboard.isTypingKey(e)&&editor.pendingFormats.hasPending()){if(isFirstKeyDown){isFirstKeyDown=false;}else{var range=editor.getRange();editor.pendingFormats.apply(range);editor.selectRange(range);}}editor.keyboard.clearTimeout();editor.keyboard.keydown(e);}).on("keyup"+NS,function(e){var selectionCodes=[8,9,33,34,35,36,37,38,39,40,40,45,46];if($.inArray(e.keyCode,selectionCodes)>-1||(e.keyCode==65&&e.ctrlKey&&!e.altKey&&!e.shiftKey)){editor.pendingFormats.clear();select(editor);}if(editor.keyboard.isTypingKey(e)){if(editor.pendingFormats.hasPending()){var range=editor.getRange();editor.pendingFormats.apply(range);editor.selectRange(range);}}else{isFirstKeyDown=true;}editor.keyboard.keyup(e);}).on("mousedown"+NS,function(e){editor.pendingFormats.clear();var target=$(e.target);if(!browser.gecko&&e.which==2&&target.is("a[href]")){window.open(target.attr("href"),"_new");}}).on("mouseup"+NS,function(){select(editor);});$(editor.window).on("blur"+NS,function(){var old=editor.textarea.value,value=editor.encodedValue();editor.update();if(value!=old){editor.trigger("change");}});$(editor.body).on("cut"+NS+" paste"+NS,function(e){editor.clipboard["on"+e.type](e);});},formatByName:function(name,format){for(var i=0;i<format.length;i++){if($.inArray(name,format[i].tags)>=0){return format[i];}}},registerTool:function(toolName,tool){var tools=Editor.fn._tools;tools[toolName]=tool;if(tools[toolName].options&&tools[toolName].options.template){tools[toolName].options.template.options.cssClass="k-"+toolName;}},registerFormat:function(formatName,format){kendo.ui.Editor.fn.options.formats[formatName]=format;},createDialog:function(windowContent,editor,initOptions){var isRtl=kendo.support.isRtl(editor.wrapper),win=$(windowContent).appendTo(document.body).kendoWindow(initOptions);if(isRtl){win.closest(".k-window").addClass("k-rtl");}return win;}};var select=EditorUtils.select,focusable=EditorUtils.focusable,wrapTextarea=EditorUtils.wrapTextarea,renderTools=EditorUtils.renderTools,initializeContentElement=EditorUtils.initializeContentElement;var messages={bold:"Bold",italic:"Italic",underline:"Underline",strikethrough:"Strikethrough",superscript:"Superscript",subscript:"Subscript",justifyCenter:"Center text",justifyLeft:"Align text left",justifyRight:"Align text right",justifyFull:"Justify",insertUnorderedList:"Insert unordered list",insertOrderedList:"Insert ordered list",indent:"Indent",outdent:"Outdent",createLink:"Insert hyperlink",unlink:"Remove hyperlink",insertImage:"Insert image",insertHtml:"Insert HTML",fontName:"Select font family",fontNameInherit:"(inherited font)",fontSize:"Select font size",fontSizeInherit:"(inherited size)",formatBlock:"Format",foreColor:"Color",backColor:"Background color",style:"Styles",emptyFolder:"Empty Folder",uploadFile:"Upload",orderBy:"Arrange by:",orderBySize:"Size",orderByName:"Name",invalidFileType:"The selected file \"{0}\" is not valid. Supported file types are {1}.",deleteFile:'Are you sure you want to delete "{0}"?',overwriteFile:'A file with name "{0}" already exists in the current directory. Do you want to overwrite it?',directoryNotFound:"A directory with this name was not found.",imageWebAddress:"Web address",imageAltText:"Alternate text",dialogInsert:"Insert",dialogButtonSeparator:"or",dialogCancel:"Cancel"};var supportedBrowser=!os||(os.ios&&os.flatVersion>=500)||(!os.ios&&typeof(document.documentElement.contentEditable)!='undefined');var Editor=Widget.extend({init:function(element,options){if(!supportedBrowser){return;}var that=this,wrapper,value,editorNS=kendo.ui.editor;Widget.fn.init.call(that,element,options);that.tools=deepExtend({},kendo.ui.Editor.fn._tools);that.options=deepExtend({},that.options,options);element=$(element);element.closest("form").on("submit"+NS,function(){that.update();});for(var id in that.tools){that.tools[id].name=id.toLowerCase();}that.textarea=element.attr("autocomplete","off")[0];wrapper=that.wrapper=wrapTextarea(element);if(that.textarea.id){wrapper.find(".k-editor-toolbar").attr("aria-controls",that.textarea.id);}renderTools(that,that.options.tools);initializeContentElement(that);that.keyboard=new editorNS.Keyboard([new editorNS.TypingHandler(that),new editorNS.SystemHandler(that)]);that.clipboard=new editorNS.Clipboard(this);that.pendingFormats=new editorNS.PendingFormats(this);that.undoRedoStack=new editorNS.UndoRedoStack();if(options&&options.value){value=options.value;}else{value=element.val().replace(/[\r\n\v\f\t ]+/ig," ");}that.value(value);function toolFromClassName(element){var tool=$.grep(element.className.split(" "),function(x){return!/^k-(widget|tool-icon|state-hover|header|combobox|dropdown|selectbox|colorpicker)$/i.test(x);});return tool[0]?tool[0].substring(tool[0].lastIndexOf("-")+1):"custom";}function appendShortcutSequence(localizedText,tool){if(!tool.key){return localizedText;}var res=localizedText+" (";if(tool.ctrl){res+="Ctrl + ";}if(tool.shift){res+="Shift + ";}if(tool.alt){res+="Alt + ";}res+=tool.key+")";return res;}var toolbarItems=".k-editor-toolbar > li > *, .k-editor-toolbar > li select",buttons=".k-editor-button .k-tool-icon",enabledButtons=buttons+":not(.k-state-disabled)",disabledButtons=buttons+".k-state-disabled";wrapper.find(".k-combobox .k-input").keydown(function(e){var combobox=$(this).closest(".k-combobox").data("kendoComboBox"),key=e.keyCode;if(key==keys.RIGHT||key==keys.LEFT){combobox.close();}else if(key==keys.DOWN){if(!combobox.dropDown.isOpened()){e.stopImmediatePropagation();combobox.open();}}});wrapper.on("mouseenter"+NS,enabledButtons,function(){$(this).addClass("k-state-hover");}).on("mouseleave"+NS,enabledButtons,function(){$(this).removeClass("k-state-hover");}).on("mousedown"+NS,buttons,false).on("keydown"+NS,focusable,function(e){var closestLi=$(this).closest("li"),focusableTool="li:has("+focusable+")",focusElement,keyCode=e.keyCode;if(keyCode==keys.RIGHT){focusElement=closestLi.nextAll(focusableTool).first().find(focusable);}else if(keyCode==keys.LEFT){focusElement=closestLi.prevAll(focusableTool).first().find(focusable);}else if(keyCode==keys.ESC){focusElement=that;}else if(keyCode==keys.TAB&&!(e.ctrlKey||e.altKey)){if(e.shiftKey){focusElement=closestLi.prevAll(focusableTool).first().find(focusable);if(focusElement.length){e.preventDefault();}else{return;}}else{e.preventDefault();focusElement=closestLi.nextAll(focusableTool).first().find(focusable);if(!focusElement.length){focusElement=that;}}}if(focusElement){focusElement.focus();}}).on("click"+NS,enabledButtons,function(e){e.preventDefault();e.stopPropagation();that.exec(toolFromClassName(this));}).on("click"+NS,disabledButtons,function(e){e.preventDefault();}).find(toolbarItems).each(function(){var toolName=toolFromClassName(this),options=that.options,tool=options.tools[toolName],description=options.messages[toolName],$this=$(this);if(!tool){return;}if(toolName=="fontSize"||toolName=="fontName"){var inheritText=options.messages[toolName+"Inherit"]||messages[toolName+"Inherit"];$this.find("input").val(inheritText).end().find("span.k-input").text(inheritText).end();}tool.initialize($this,{title:appendShortcutSequence(description,tool),editor:that});});that.bind("select",function(){var range=that.getRange();var nodes=editorNS.RangeUtils.textNodes(range);if(!nodes.length){nodes=[range.startContainer];}wrapper.find(toolbarItems).each(function(){var tool=that.options.tools[toolFromClassName(this)];if(tool){tool.update($(this),nodes,that.pendingFormats);}});});that._DOMNodeInsertedHandler=function(e){that._DOMNodeInserted(e);};that._endTypingHandler=function(){that._endTyping();};$(document).on("DOMNodeInserted",that._DOMNodeInsertedHandler).on("mousedown",that._endTypingHandler);kendo.notify(that);},_endTyping:function(){var that=this;try{if(that.keyboard.isTypingInProgress()){that.keyboard.endTyping(true);}if(!that.selectionRestorePoint){that.selectionRestorePoint=new kendo.ui.editor.RestorePoint(that.getRange());}}catch(e){}},_DOMNodeInserted:function(e){var that=this,wrapper=that.wrapper;if($.contains(e.target,wrapper[0])||wrapper[0]==e.target){that.textarea.value=that.value();wrapper.find("iframe").remove();initializeContentElement(that);that.value(that.textarea.value);}},events:["select","change","execute","error","paste","keydown","keyup"],options:{name:"Editor",messages:messages,formats:{},encoded:true,stylesheets:[],dialogOptions:{modal:true,resizable:false,draggable:true,animation:false},fontName:[{text:"Arial",value:"Arial,Helvetica,sans-serif"},{text:"Courier New",value:"'Courier New',Courier,monospace"},{text:"Georgia",value:"Georgia,serif"},{text:"Impact",value:"Impact,Charcoal,sans-serif"},{text:"Lucida Console",value:"'Lucida Console',Monaco,monospace"},{text:"Tahoma",value:"Tahoma,Geneva,sans-serif"},{text:"Times New Roman",value:"'Times New Roman',Times,serif"},{text:"Trebuchet MS",value:"'Trebuchet MS',Helvetica,sans-serif"},{text:"Verdana",value:"Verdana,Geneva,sans-serif"}],fontSize:[{text:"1 (8pt)",value:"xx-small"},{text:"2 (10pt)",value:"x-small"},{text:"3 (12pt)",value:"small"},{text:"4 (14pt)",value:"medium"},{text:"5 (18pt)",value:"large"},{text:"6 (24pt)",value:"x-large"},{text:"7 (36pt)",value:"xx-large"}],formatBlock:[{text:"Paragraph",value:"p"},{text:"Quotation",value:"blockquote"},{text:"Heading 1",value:"h1"},{text:"Heading 2",value:"h2"},{text:"Heading 3",value:"h3"},{text:"Heading 4",value:"h4"},{text:"Heading 5",value:"h5"},{text:"Heading 6",value:"h6"}],tools:["bold","italic","underline","strikethrough","fontName","fontSize","foreColor","backColor","justifyLeft","justifyCenter","justifyRight","justifyFull","insertUnorderedList","insertOrderedList","indent","outdent","formatBlock","createLink","unlink","insertImage"]},destroy:function(){var that=this;Widget.fn.destroy.call(that);$(that.window).add(that.document).add(that.wrapper).add(that.element.closest("form")).off(NS);$(document).off("DOMNodeInserted",that._DOMNodeInsertedHandler).off("mousedown",that._endTypingHandler);kendo.destroy(that.wrapper);},_nativeTools:["insertLineBreak","insertParagraph","redo","undo","insertHtml"],_tools:{undo:{options:{key:"Z",ctrl:true}},redo:{options:{key:"Y",ctrl:true}}},tools:{},value:function(html){var body=this.body,dom=kendo.ui.editor.Dom,currentHtml=kendo.ui.editor.Serializer.domToXhtml(body);if(html===undefined){return currentHtml;}if(html==currentHtml){return;}this.pendingFormats.clear();html=(html||"").replace(/<!\[CDATA\[(.*)?\]\]>/g,"<!--[CDATA[$1]]-->").replace(/<script([^>]*)>(.*)?<\/script>/ig,"<telerik:script $1>$2<\/telerik:script>").replace(/(<\/?img[^>]*>)[\r\n\v\f\t ]+/ig,"$1");if(!browser.msie){html=html.replace(/<p([^>]*)>(\s*)?<\/p>/ig,'<p $1><br _moz_dirty="" /><\/p>');}if(browser.msie&&parseInt(browser.version,10)<9){html="<br/>"+html;var originalSrc="originalsrc",originalHref="originalhref";html=html.replace(/href\s*=\s*(?:'|")?([^'">\s]*)(?:'|")?/,originalHref+'="$1"');html=html.replace(/src\s*=\s*(?:'|")?([^'">\s]*)(?:'|")?/,originalSrc+'="$1"');body.innerHTML=html;dom.remove(body.firstChild);$(body).find("telerik\\:script,script,link,img,a").each(function(){var node=this;if(node[originalHref]){node.setAttribute("href",node[originalHref]);node.removeAttribute(originalHref);}if(node[originalSrc]){node.setAttribute("src",node[originalSrc]);node.removeAttribute(originalSrc);}});}else{body.innerHTML=html;if(browser.msie){dom.normalize(body);setTimeout(function(){var ols=body.getElementsByTagName("ol"),i,ol,originalStart;for(i=0;i<ols.length;i++){ol=ols[i];originalStart=ol.getAttribute("start");ol.setAttribute("start",1);if(originalStart){ol.setAttribute("start",originalStart);}else{ol.removeAttribute(originalStart);}}},1);}}this.selectionRestorePoint=null;this.update();},focus:function(){this.window.focus();},update:function(value){this.textarea.value=value||this.options.encoded?this.encodedValue():this.value();},encodedValue:function(){return kendo.ui.editor.Dom.encode(this.value());},createRange:function(document){return kendo.ui.editor.RangeUtils.createRange(document||this.document);},getSelection:function(){return kendo.ui.editor.SelectionUtils.selectionFromDocument(this.document);},selectRange:function(range){this.focus();var selection=this.getSelection();selection.removeAllRanges();selection.addRange(range);},getRange:function(){var selection=this.getSelection(),range=selection.rangeCount>0?selection.getRangeAt(0):this.createRange(),doc=this.document;if(range.startContainer==doc&&range.endContainer==doc&&!range.startOffset&&!range.endOffset){range.setStart(this.body,0);range.collapse(true);}return range;},selectedHtml:function(){return kendo.ui.editor.Serializer.domToXhtml(this.getRange().cloneContents());},paste:function(html){this.clipboard.paste(html);},exec:function(name,params){var that=this,range,body,id,tool="",pendingTool;name=name.toLowerCase();if(!that.keyboard.isTypingInProgress()){that.focus();range=that.getRange();body=that.document.body;}for(id in that.options.tools){if(id.toLowerCase()==name){tool=that.options.tools[id];break;}}if(tool){range=that.getRange();if(!/undo|redo/i.test(name)&&tool.willDelayExecution(range)){pendingTool=$.extend({},tool);$.extend(pendingTool.options,{params:params});that.pendingFormats.toggle(pendingTool);select(that);return;}var command=tool.command?tool.command(extend({range:range},params)):null;that.trigger("execute",{name:name,command:command});if(/undo|redo/i.test(name)){that.undoRedoStack[name]();}else if(command){if(!command.managesUndoRedo){that.undoRedoStack.push(command);}command.editor=that;command.exec();if(command.async){command.change=$.proxy(function(){select(that);},that);return;}}select(that);}}});kendo.ui.plugin(Editor);var Tool=Class.extend({init:function(options){this.options=options;},initialize:function($ui,options){$ui.attr({unselectable:"on",title:options.title});},command:function(commandArguments){return new this.options.command(commandArguments);},update:function(){},willDelayExecution:function(){return false;}});Tool.exec=function(editor,name,value){editor.exec(name,{value:value});};var FormatTool=Tool.extend({init:function(options){Tool.fn.init.call(this,options);},command:function(commandArguments){var that=this;return new kendo.ui.editor.FormatCommand(extend(commandArguments,{formatter:that.options.formatter}));},update:function($ui,nodes,pendingFormats){var isPending=pendingFormats.isPending(this.name),isFormatted=this.options.finder.isFormatted(nodes),isActive=isPending?!isFormatted:isFormatted;$ui.toggleClass("k-state-active",isActive);$ui.attr("aria-pressed",isActive);}});EditorUtils.registerTool("separator",new Tool({template:new ToolTemplate({template:EditorUtils.separatorTemplate})}));extend(kendo.ui,{editor:{ToolTemplate:ToolTemplate,EditorUtils:EditorUtils,Tool:Tool,FormatTool:FormatTool}});})(window.kendo.jQuery);(function($){var kendo=window.kendo,map=$.map,extend=$.extend,browser=kendo.support.browser,STYLE="style",FLOAT="float",CSSFLOAT="cssFloat",STYLEFLOAT="styleFloat",CLASS="class",KMARKER="k-marker";function makeMap(items){var obj={},i,len;for(i=0,len=items.length;i<len;i++){obj[items[i]]=true;}return obj;}var empty=makeMap("area,base,basefont,br,col,frame,hr,img,input,isindex,link,meta,param,embed".split(",")),blockElements="div,p,h1,h2,h3,h4,h5,h6,address,applet,blockquote,button,center,dd,dir,dl,dt,fieldset,form,frameset,hr,iframe,isindex,li,map,menu,noframes,noscript,object,ol,pre,script,table,tbody,td,tfoot,th,thead,tr,ul".split(","),block=makeMap(blockElements),inlineElements="span,em,a,abbr,acronym,applet,b,basefont,bdo,big,br,button,cite,code,del,dfn,font,i,iframe,img,input,ins,kbd,label,map,object,q,s,samp,script,select,small,strike,strong,sub,sup,textarea,tt,u,var".split(","),inline=makeMap(inlineElements),fillAttrs=makeMap("checked,compact,declare,defer,disabled,ismap,multiple,nohref,noresize,noshade,nowrap,readonly,selected".split(","));var normalize=function(node){if(node.nodeType==1){node.normalize();}};if(browser.msie&&parseInt(browser.version,10)>=8){normalize=function(parent){if(parent.nodeType==1&&parent.firstChild){var prev=parent.firstChild,node=prev;while(true){node=node.nextSibling;if(!node){break;}if(node.nodeType==3&&prev.nodeType==3){node.nodeValue=prev.nodeValue+node.nodeValue;Dom.remove(prev);}prev=node;}}};}var whitespace=/^\s+$/,rgb=/rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/i,amp=/&/g,openTag=/</g,closeTag=/>/g,nbsp=/\u00a0/g,bom=/\ufeff/g;var cssAttributes=("color,padding-left,padding-right,padding-top,padding-bottom,"+"background-color,background-attachment,background-image,background-position,background-repeat,"+"border-top-style,border-top-width,border-top-color,"+"border-bottom-style,border-bottom-width,border-bottom-color,"+"border-left-style,border-left-width,border-left-color,"+"border-right-style,border-right-width,border-right-color,"+"font-family,font-size,font-style,font-variant,font-weight,line-height").split(",");var Dom={findNodeIndex:function(node){var i=0;while(true){node=node.previousSibling;if(!node){break;}i++;}return i;},isDataNode:function(node){return node&&node.nodeValue!==null&&node.data!==null;},isAncestorOf:function(parent,node){try{return!Dom.isDataNode(parent)&&($.contains(parent,Dom.isDataNode(node)?node.parentNode:node)||node.parentNode==parent);}catch(e){return false;}},isAncestorOrSelf:function(root,node){return Dom.isAncestorOf(root,node)||root==node;},findClosestAncestor:function(root,node){if(Dom.isAncestorOf(root,node)){while(node&&node.parentNode!=root){node=node.parentNode;}}return node;},getNodeLength:function(node){return Dom.isDataNode(node)?node.length:node.childNodes.length;},splitDataNode:function(node,offset){var newNode=node.cloneNode(false),denormalizedText="",iterator=node;while(iterator.nextSibling&&iterator.nextSibling.nodeType==3&&iterator.nextSibling.nodeValue){denormalizedText+=iterator.nextSibling.nodeValue;iterator=iterator.nextSibling;}node.deleteData(offset,node.length);newNode.deleteData(0,offset);newNode.nodeValue+=denormalizedText;Dom.insertAfter(newNode,node);},attrEquals:function(node,attributes){for(var key in attributes){var value=node[key];if(key==FLOAT){value=node[$.support.cssFloat?CSSFLOAT:STYLEFLOAT];}if(typeof value=="object"){if(!Dom.attrEquals(value,attributes[key])){return false;}}else if(value!=attributes[key]){return false;}}return true;},blockParentOrBody:function(node){return Dom.parentOfType(node,blockElements)||node.ownerDocument.body;},blockParents:function(nodes){var blocks=[],i,len;for(i=0,len=nodes.length;i<len;i++){var block=Dom.parentOfType(nodes[i],Dom.blockElements);if(block&&$.inArray(block,blocks)<0){blocks.push(block);}}return blocks;},windowFromDocument:function(document){return document.defaultView||document.parentWindow;},normalize:normalize,blockElements:blockElements,inlineElements:inlineElements,empty:empty,fillAttrs:fillAttrs,toHex:function(color){var matches=rgb.exec(color);if(!matches){return color;}return"#"+map(matches.slice(1),function(x){x=parseInt(x,10).toString(16);return x.length>1?x:"0"+x;}).join("");},encode:function(value){return value.replace(amp,"&amp;").replace(openTag,"&lt;").replace(closeTag,"&gt;").replace(nbsp,"&nbsp;");},name:function(node){return node.nodeName.toLowerCase();},significantChildNodes:function(node){return $.grep(node.childNodes,function(child){return child.nodeType!=3||!Dom.isWhitespace(child);});},lastTextNode:function(node){var result=null;if(node.nodeType==3){return node;}for(var child=node.lastChild;child;child=child.previousSibling){result=Dom.lastTextNode(child);if(result){return result;}}return result;},is:function(node,nodeName){return Dom.name(node)==nodeName;},isMarker:function(node){return node.className==KMARKER;},isWhitespace:function(node){return whitespace.test(node.nodeValue);},isBlock:function(node){return block[Dom.name(node)];},isEmpty:function(node){return empty[Dom.name(node)];},isInline:function(node){return inline[Dom.name(node)];},scrollTo:function(node){var body=node.ownerDocument.body,element=$(Dom.isDataNode(node)?node.parentNode:node),windowHeight=Dom.windowFromDocument(node.ownerDocument).innerHeight,elementTop,elementHeight;if(Dom.name(element[0])=="br"){element=element.parent();}elementTop=element.offset().top;elementHeight=element[0].offsetHeight;if(elementHeight+elementTop>body.scrollTop+windowHeight){body.scrollTop=elementHeight+elementTop-windowHeight;}},insertAt:function(parent,newElement,position){parent.insertBefore(newElement,parent.childNodes[position]||null);},insertBefore:function(newElement,referenceElement){if(referenceElement.parentNode){return referenceElement.parentNode.insertBefore(newElement,referenceElement);}else{return referenceElement;}},insertAfter:function(newElement,referenceElement){return referenceElement.parentNode.insertBefore(newElement,referenceElement.nextSibling);},remove:function(node){node.parentNode.removeChild(node);},trim:function(parent){for(var i=parent.childNodes.length-1;i>=0;i--){var node=parent.childNodes[i];if(Dom.isDataNode(node)){if(!node.nodeValue.replace(bom,"").length){Dom.remove(node);}if(Dom.isWhitespace(node)){Dom.insertBefore(node,parent);}}else if(node.className!=KMARKER){Dom.trim(node);if(!node.childNodes.length&&!Dom.isEmpty(node)){Dom.remove(node);}}}return parent;},parentOfType:function(node,tags){do{node=node.parentNode;}while(node&&!(Dom.ofType(node,tags)));return node;},ofType:function(node,tags){return $.inArray(Dom.name(node),tags)>=0;},changeTag:function(referenceElement,tagName){var newElement=Dom.create(referenceElement.ownerDocument,tagName),attributes=referenceElement.attributes,i,len,name,value,attribute;for(i=0,len=attributes.length;i<len;i++){attribute=attributes[i];if(attribute.specified){name=attribute.nodeName;value=attribute.nodeValue;if(name==CLASS){newElement.className=value;}else if(name==STYLE){newElement.style.cssText=referenceElement.style.cssText;}else{newElement.setAttribute(name,value);}}}while(referenceElement.firstChild){newElement.appendChild(referenceElement.firstChild);}Dom.insertBefore(newElement,referenceElement);Dom.remove(referenceElement);return newElement;},wrap:function(node,wrapper){Dom.insertBefore(wrapper,node);wrapper.appendChild(node);return wrapper;},unwrap:function(node){var parent=node.parentNode;while(node.firstChild){parent.insertBefore(node.firstChild,node);}parent.removeChild(node);},create:function(document,tagName,attributes){return Dom.attr(document.createElement(tagName),attributes);},attr:function(element,attributes){attributes=extend({},attributes);if(attributes&&STYLE in attributes){Dom.style(element,attributes.style);delete attributes.style;}return extend(element,attributes);},style:function(node,value){$(node).css(value||{});},unstyle:function(node,value){for(var key in value){if(key==FLOAT){key=$.support.cssFloat?CSSFLOAT:STYLEFLOAT;}node.style[key]="";}if(node.style.cssText===""){node.removeAttribute(STYLE);}},inlineStyle:function(document,name,attributes){var span=$(Dom.create(document,name,attributes)),style;document.body.appendChild(span[0]);style=map(cssAttributes,function(value){if(browser.msie&&value=="line-height"&&span.css(value)=="1px"){return"line-height:1.5";}else{return value+":"+span.css(value);}}).join(";");span.remove();return style;},removeClass:function(node,classNames){var className=" "+node.className+" ",classes=classNames.split(" "),i,len;for(i=0,len=classes.length;i<len;i++){className=className.replace(" "+classes[i]+" "," ");}className=$.trim(className);if(className.length){node.className=className;}else{node.removeAttribute(CLASS);}},commonAncestor:function(){var count=arguments.length,paths=[],minPathLength=Infinity,output=null,i,ancestors,node,first,j;if(!count){return null;}if(count==1){return arguments[0];}for(i=0;i<count;i++){ancestors=[];node=arguments[i];while(node){ancestors.push(node);node=node.parentNode;}paths.push(ancestors.reverse());minPathLength=Math.min(minPathLength,ancestors.length);}if(count==1){return paths[0][0];}for(i=0;i<minPathLength;i++){first=paths[0][i];for(j=1;j<count;j++){if(first!=paths[j][i]){return output;}}output=first;}return output;}};kendo.ui.editor.Dom=Dom;})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,Editor=kendo.ui.editor,dom=Editor.Dom,extend=$.extend;var fontSizeMappings='xx-small,x-small,small,medium,large,x-large,xx-large'.split(','),quoteRe=/"/g,brRe=/<br[^>]*>/i,emptyPRe=/<p><\/p>/i,cssDeclaration=/([\w|\-]+)\s*:\s*([^;]+);?/i;var Serializer={domToXhtml:function(root){var result=[];var tagMap={'telerik:script':{start:function(node){result.push('<script');attr(node);result.push('>');},end:function(){result.push('</script>');}},b:{start:function(){result.push('<strong>');},end:function(){result.push('</strong>');}},i:{start:function(){result.push('<em>');},end:function(){result.push('</em>');}},u:{start:function(){result.push('<span style="text-decoration:underline;">');},end:function(){result.push('</span>');}},iframe:{start:function(node){result.push('<iframe');attr(node);result.push('>');},end:function(){result.push('</iframe>');}},font:{start:function(node){result.push('<span style="');var color=node.getAttribute('color');var size=fontSizeMappings[node.getAttribute('size')];var face=node.getAttribute('face');if(color){result.push('color:');result.push(dom.toHex(color));result.push(';');}if(face){result.push('font-face:');result.push(face);result.push(';');}if(size){result.push('font-size:');result.push(size);result.push(';');}result.push('">');},end:function(node){result.push('</span>');}}};function attr(node){var specifiedAttributes=[],attributes=node.attributes,attribute,i,l,trim=$.trim;if(dom.is(node,'img')){var width=node.style.width,height=node.style.height,$node=$(node);if(width){$node.attr('width',parseInt(width,10));dom.unstyle(node,{width:undefined});}if(height){$node.attr('height',parseInt(height,10));dom.unstyle(node,{height:undefined});}}for(i=0,l=attributes.length;i<l;i++){attribute=attributes[i];var name=attribute.nodeName;if(attribute.specified||(name=='value'&&!node.value)||(name=='type'&&attribute.nodeValue=='text')){if(name.indexOf('_moz')<0&&name!='complete'&&name!='altHtml'){specifiedAttributes.push(attribute);}}}if(!specifiedAttributes.length){return;}specifiedAttributes.sort(function(a,b){return a.nodeName>b.nodeName?1:a.nodeName<b.nodeName?-1:0;});for(i=0,l=specifiedAttributes.length;i<l;i++){attribute=specifiedAttributes[i];var attributeName=attribute.nodeName;var attributeValue=attribute.nodeValue;result.push(' ');result.push(attributeName);result.push('="');if(attributeName=='style'){var css=trim(attributeValue||node.style.cssText).split(';');for(var cssIndex=0,len=css.length;cssIndex<len;cssIndex++){var pair=css[cssIndex];if(pair.length){var match=cssDeclaration.exec(pair);var property=trim(match[1].toLowerCase()),value=trim(match[2]);if(property=="font-size-adjust"||property=="font-stretch"){continue;}if(property.indexOf('color')>=0){value=dom.toHex(value);}if(property.indexOf('font')>=0){value=value.replace(quoteRe,"'");}result.push(property);result.push(':');result.push(value);result.push(';');}}}else if(attributeName=='src'||attributeName=='href'){result.push(node.getAttribute(attributeName,2));}else{result.push(dom.fillAttrs[attributeName]?attributeName:attributeValue);}result.push('"');}}function children(node,skip){for(var childNode=node.firstChild;childNode;childNode=childNode.nextSibling){child(childNode,skip);}}function child(node,skip){var nodeType=node.nodeType,tagName,mapper,parent,value,previous;if(nodeType==1){tagName=dom.name(node);if(!tagName||((node.attributes._moz_dirty||node.attributes._moz_editor_bogus_node)&&dom.is(node,'br'))||node.className=="k-marker"){return;}mapper=tagMap[tagName];if(mapper){mapper.start(node);children(node);mapper.end(node);return;}result.push('<');result.push(tagName);attr(node);if(dom.empty[tagName]){result.push(' />');}else{result.push('>');children(node,skip||dom.is(node,'pre'));result.push('</');result.push(tagName);result.push('>');}}else if(nodeType==3){value=node.nodeValue;if(!skip&&$.support.leadingWhitespace){parent=node.parentNode;previous=node.previousSibling;if(!previous){previous=(dom.isInline(parent)?parent:node).previousSibling;}if(!previous||previous.innerHTML===""||dom.isBlock(previous)){value=value.replace(/^[\r\n\v\f\t ]+/,'');}value=value.replace(/ +/,' ');}result.push(dom.encode(value));}else if(nodeType==4){result.push('<![CDATA[');result.push(node.data);result.push(']]>');}else if(nodeType==8){if(node.data.indexOf('[CDATA[')<0){result.push('<!--');result.push(node.data);result.push('-->');}else{result.push('<!');result.push(node.data);result.push('>');}}}children(root);result=result.join('');if(result.replace(brRe,"").replace(emptyPRe,"")===""){return"";}return result;}};extend(Editor,{Serializer:Serializer});})(window.kendo.jQuery);(function($){var kendo=window.kendo,Class=kendo.Class,extend=$.extend,Editor=kendo.ui.editor,browser=kendo.support.browser,dom=Editor.Dom,findNodeIndex=dom.findNodeIndex,isDataNode=dom.isDataNode,findClosestAncestor=dom.findClosestAncestor,getNodeLength=dom.getNodeLength,normalize=dom.normalize;var SelectionUtils={selectionFromWindow:function(window){if(browser.msie&&browser.version<9){return new W3CSelection(window.document);}return window.getSelection();},selectionFromRange:function(range){var rangeDocument=RangeUtils.documentFromRange(range);return SelectionUtils.selectionFromDocument(rangeDocument);},selectionFromDocument:function(document){return SelectionUtils.selectionFromWindow(dom.windowFromDocument(document));}};var W3CRange=Class.extend({init:function(doc){$.extend(this,{ownerDocument:doc,startContainer:doc,endContainer:doc,commonAncestorContainer:doc,startOffset:0,endOffset:0,collapsed:true});},setStart:function(node,offset){this.startContainer=node;this.startOffset=offset;updateRangeProperties(this);fixIvalidRange(this,true);},setEnd:function(node,offset){this.endContainer=node;this.endOffset=offset;updateRangeProperties(this);fixIvalidRange(this,false);},setStartBefore:function(node){this.setStart(node.parentNode,findNodeIndex(node));},setStartAfter:function(node){this.setStart(node.parentNode,findNodeIndex(node)+1);},setEndBefore:function(node){this.setEnd(node.parentNode,findNodeIndex(node));},setEndAfter:function(node){this.setEnd(node.parentNode,findNodeIndex(node)+1);},selectNode:function(node){this.setStartBefore(node);this.setEndAfter(node);},selectNodeContents:function(node){this.setStart(node,0);this.setEnd(node,node[node.nodeType===1?'childNodes':'nodeValue'].length);},collapse:function(toStart){var that=this;if(toStart){that.setEnd(that.startContainer,that.startOffset);}else{that.setStart(that.endContainer,that.endOffset);}},deleteContents:function(){var that=this,range=that.cloneRange();if(that.startContainer!=that.commonAncestorContainer){that.setStartAfter(findClosestAncestor(that.commonAncestorContainer,that.startContainer));}that.collapse(true);(function deleteSubtree(iterator){while(iterator.next()){if(iterator.hasPartialSubtree()){deleteSubtree(iterator.getSubtreeIterator());}else{iterator.remove();}}})(new RangeIterator(range));},cloneContents:function(){var document=RangeUtils.documentFromRange(this);return(function cloneSubtree(iterator){var node,frag=document.createDocumentFragment();while(node=iterator.next()){node=node.cloneNode(!iterator.hasPartialSubtree());if(iterator.hasPartialSubtree()){node.appendChild(cloneSubtree(iterator.getSubtreeIterator()));}frag.appendChild(node);}return frag;})(new RangeIterator(this));},extractContents:function(){var that=this,range=that.cloneRange();if(that.startContainer!=that.commonAncestorContainer){that.setStartAfter(findClosestAncestor(that.commonAncestorContainer,that.startContainer));}that.collapse(true);var document=RangeUtils.documentFromRange(that);return(function extractSubtree(iterator){var node,frag=document.createDocumentFragment();while(node=iterator.next()){if(iterator.hasPartialSubtree()){node=node.cloneNode(false);node.appendChild(extractSubtree(iterator.getSubtreeIterator()));}else{iterator.remove(that.originalRange);}frag.appendChild(node);}return frag;})(new RangeIterator(range));},insertNode:function(node){var that=this;if(isDataNode(that.startContainer)){if(that.startOffset!=that.startContainer.nodeValue.length){dom.splitDataNode(that.startContainer,that.startOffset);}dom.insertAfter(node,that.startContainer);}else{dom.insertAt(that.startContainer,node,that.startOffset);}that.setStart(that.startContainer,that.startOffset);},cloneRange:function(){return $.extend(new W3CRange(this.ownerDocument),{startContainer:this.startContainer,endContainer:this.endContainer,commonAncestorContainer:this.commonAncestorContainer,startOffset:this.startOffset,endOffset:this.endOffset,collapsed:this.collapsed,originalRange:this});},toString:function(){var startNodeName=this.startContainer.nodeName,endNodeName=this.endContainer.nodeName;return[startNodeName=="#text"?this.startContainer.nodeValue:startNodeName,'(',this.startOffset,') : ',endNodeName=="#text"?this.endContainer.nodeValue:endNodeName,'(',this.endOffset,')'].join('');}});function compareBoundaries(start,end,startOffset,endOffset){if(start==end){return endOffset-startOffset;}var container=end;while(container&&container.parentNode!=start){container=container.parentNode;}if(container){return findNodeIndex(container)-startOffset;}container=start;while(container&&container.parentNode!=end){container=container.parentNode;}if(container){return endOffset-findNodeIndex(container)-1;}var root=dom.commonAncestor(start,end);var startAncestor=start;while(startAncestor&&startAncestor.parentNode!=root){startAncestor=startAncestor.parentNode;}if(!startAncestor){startAncestor=root;}var endAncestor=end;while(endAncestor&&endAncestor.parentNode!=root){endAncestor=endAncestor.parentNode;}if(!endAncestor){endAncestor=root;}if(startAncestor==endAncestor){return 0;}return findNodeIndex(endAncestor)-findNodeIndex(startAncestor);}function fixIvalidRange(range,toStart){function isInvalidRange(range){try{return compareBoundaries(range.startContainer,range.endContainer,range.startOffset,range.endOffset)<0;}catch(ex){return true;}}if(isInvalidRange(range)){if(toStart){range.commonAncestorContainer=range.endContainer=range.startContainer;range.endOffset=range.startOffset;}else{range.commonAncestorContainer=range.startContainer=range.endContainer;range.startOffset=range.endOffset;}range.collapsed=true;}}function updateRangeProperties(range){range.collapsed=range.startContainer==range.endContainer&&range.startOffset==range.endOffset;var node=range.startContainer;while(node&&node!=range.endContainer&&!dom.isAncestorOf(node,range.endContainer)){node=node.parentNode;}range.commonAncestorContainer=node;}var RangeIterator=Class.extend({init:function(range){$.extend(this,{range:range,_current:null,_next:null,_end:null});if(range.collapsed){return;}var root=range.commonAncestorContainer;this._next=range.startContainer==root&&!isDataNode(range.startContainer)?range.startContainer.childNodes[range.startOffset]:findClosestAncestor(root,range.startContainer);this._end=range.endContainer==root&&!isDataNode(range.endContainer)?range.endContainer.childNodes[range.endOffset]:findClosestAncestor(root,range.endContainer).nextSibling;},hasNext:function(){return!!this._next;},next:function(){var that=this,current=that._current=that._next;that._next=that._current&&that._current.nextSibling!=that._end?that._current.nextSibling:null;if(isDataNode(that._current)){if(that.range.endContainer==that._current){current=current.cloneNode(true);current.deleteData(that.range.endOffset,current.length-that.range.endOffset);}if(that.range.startContainer==that._current){current=current.cloneNode(true);current.deleteData(0,that.range.startOffset);}}return current;},traverse:function(callback){var that=this,current;function next(){that._current=that._next;that._next=that._current&&that._current.nextSibling!=that._end?that._current.nextSibling:null;return that._current;}while(current=next()){if(that.hasPartialSubtree()){that.getSubtreeIterator().traverse(callback);}else{callback(current);}}return current;},remove:function(originalRange){var that=this,inStartContainer=that.range.startContainer==that._current,inEndContainer=that.range.endContainer==that._current,start,end,delta;if(isDataNode(that._current)&&(inStartContainer||inEndContainer)){start=inStartContainer?that.range.startOffset:0;end=inEndContainer?that.range.endOffset:that._current.length;delta=end-start;if(originalRange&&(inStartContainer||inEndContainer)){if(that._current==originalRange.startContainer&&start<=originalRange.startOffset){originalRange.startOffset-=delta;}if(that._current==originalRange.endContainer&&end<=originalRange.endOffset){originalRange.endOffset-=delta;}}that._current.deleteData(start,delta);}else{var parent=that._current.parentNode;if(originalRange&&(that.range.startContainer==parent||that.range.endContainer==parent)){var nodeIndex=findNodeIndex(that._current);if(parent==originalRange.startContainer&&nodeIndex<=originalRange.startOffset){originalRange.startOffset-=1;}if(parent==originalRange.endContainer&&nodeIndex<originalRange.endOffset){originalRange.endOffset-=1;}}dom.remove(that._current);}},hasPartialSubtree:function(){return!isDataNode(this._current)&&(dom.isAncestorOrSelf(this._current,this.range.startContainer)||dom.isAncestorOrSelf(this._current,this.range.endContainer));},getSubtreeIterator:function(){var that=this,subRange=that.range.cloneRange();subRange.selectNodeContents(that._current);if(dom.isAncestorOrSelf(that._current,that.range.startContainer)){subRange.setStart(that.range.startContainer,that.range.startOffset);}if(dom.isAncestorOrSelf(that._current,that.range.endContainer)){subRange.setEnd(that.range.endContainer,that.range.endOffset);}return new RangeIterator(subRange);}});var W3CSelection=Class.extend({init:function(doc){this.ownerDocument=doc;this.rangeCount=1;},addRange:function(range){var textRange=this.ownerDocument.body.createTextRange();adoptContainer(textRange,range,false);adoptContainer(textRange,range,true);textRange.select();},removeAllRanges:function(){this.ownerDocument.selection.empty();},getRangeAt:function(){var textRange,range=new W3CRange(this.ownerDocument),selection=this.ownerDocument.selection,element;try{textRange=selection.createRange();element=textRange.item?textRange.item(0):textRange.parentElement();if(element.ownerDocument!=this.ownerDocument){return range;}}catch(ex){return range;}if(selection.type=='Control'){range.selectNode(textRange.item(0));}else{adoptEndPoint(textRange,range,true);adoptEndPoint(textRange,range,false);if(range.startContainer.nodeType==9){range.setStart(range.endContainer,range.startOffset);}if(range.endContainer.nodeType==9){range.setEnd(range.startContainer,range.endOffset);}if(textRange.compareEndPoints('StartToEnd',textRange)===0){range.collapse(false);}var startContainer=range.startContainer,endContainer=range.endContainer,body=this.ownerDocument.body;if(!range.collapsed&&range.startOffset===0&&range.endOffset==getNodeLength(range.endContainer)&&!(startContainer==endContainer&&isDataNode(startContainer)&&startContainer.parentNode==body)){var movedStart=false,movedEnd=false;while(findNodeIndex(startContainer)===0&&startContainer==startContainer.parentNode.firstChild&&startContainer!=body){startContainer=startContainer.parentNode;movedStart=true;}while(findNodeIndex(endContainer)==getNodeLength(endContainer.parentNode)-1&&endContainer==endContainer.parentNode.lastChild&&endContainer!=body){endContainer=endContainer.parentNode;movedEnd=true;}if(startContainer==body&&endContainer==body&&movedStart&&movedEnd){range.setStart(startContainer,0);range.setEnd(endContainer,getNodeLength(body));}}}return range;}});function adoptContainer(textRange,range,start){var container=range[start?'startContainer':'endContainer'];var offset=range[start?'startOffset':'endOffset'],textOffset=0;var anchorNode=isDataNode(container)?container:container.childNodes[offset]||null;var anchorParent=isDataNode(container)?container.parentNode:container;if(container.nodeType==3||container.nodeType==4){textOffset=offset;}var cursorNode=anchorParent.insertBefore(dom.create(range.ownerDocument,'a'),anchorNode);var cursor=range.ownerDocument.body.createTextRange();cursor.moveToElementText(cursorNode);dom.remove(cursorNode);cursor[start?'moveStart':'moveEnd']('character',textOffset);cursor.collapse(false);textRange.setEndPoint(start?'StartToStart':'EndToStart',cursor);}function adoptEndPoint(textRange,range,start){var cursorNode=dom.create(range.ownerDocument,'a'),cursor=textRange.duplicate();cursor.collapse(start);var parent=cursor.parentElement();do{parent.insertBefore(cursorNode,cursorNode.previousSibling);cursor.moveToElementText(cursorNode);}while(cursor.compareEndPoints(start?'StartToStart':'StartToEnd',textRange)>0&&cursorNode.previousSibling);cursor.setEndPoint(start?'EndToStart':'EndToEnd',textRange);var target=cursorNode.nextSibling;if(!target){target=cursorNode.previousSibling;if(target&&isDataNode(target)){range.setEnd(target,target.nodeValue.length);dom.remove(cursorNode);}else{range.selectNodeContents(parent);dom.remove(cursorNode);range.endOffset-=1;}return;}dom.remove(cursorNode);if(isDataNode(target)){range[start?'setStart':'setEnd'](target,cursor.text.length);}else{range[start?'setStartBefore':'setEndBefore'](target);}}var RangeEnumerator=Class.extend({init:function(range){this.enumerate=function(){var nodes=[];function visit(node){if(dom.is(node,'img')||(node.nodeType==3&&!dom.isWhitespace(node))){nodes.push(node);}else{node=node.firstChild;while(node){visit(node);node=node.nextSibling;}}}new RangeIterator(range).traverse(visit);return nodes;};}});var RestorePoint=Class.extend({init:function(range){var that=this;that.range=range;that.rootNode=RangeUtils.documentFromRange(range);that.body=that.rootNode.body;that.html=that.body.innerHTML;that.startContainer=that.nodeToPath(range.startContainer);that.endContainer=that.nodeToPath(range.endContainer);that.startOffset=that.offset(range.startContainer,range.startOffset);that.endOffset=that.offset(range.endContainer,range.endOffset);},index:function(node){var result=0,lastType=node.nodeType;while(node=node.previousSibling){var nodeType=node.nodeType;if(nodeType!=3||lastType!=nodeType){result++;}lastType=nodeType;}return result;},offset:function(node,value){if(node.nodeType==3){while((node=node.previousSibling)&&node.nodeType==3){value+=node.nodeValue.length;}}return value;},nodeToPath:function(node){var path=[];while(node!=this.rootNode){path.push(this.index(node));node=node.parentNode;}return path;},toRangePoint:function(range,start,path,denormalizedOffset){var node=this.rootNode,length=path.length,offset=denormalizedOffset;while(length--){node=node.childNodes[path[length]];}while(node.nodeType==3&&node.nodeValue.length<offset){offset-=node.nodeValue.length;node=node.nextSibling;}range[start?'setStart':'setEnd'](node,offset);},toRange:function(){var that=this,result=that.range.cloneRange();that.toRangePoint(result,true,that.startContainer,that.startOffset);that.toRangePoint(result,false,that.endContainer,that.endOffset);return result;}});var Marker=Class.extend({init:function(){this.caret=null;},addCaret:function(range){var that=this;that.caret=dom.create(RangeUtils.documentFromRange(range),'span',{className:'k-marker'});range.insertNode(that.caret);range.selectNode(that.caret);return that.caret;},removeCaret:function(range){var that=this,previous=that.caret.previousSibling,startOffset=0;if(previous){startOffset=isDataNode(previous)?previous.nodeValue.length:findNodeIndex(previous);}var container=that.caret.parentNode;var containerIndex=previous?findNodeIndex(previous):0;dom.remove(that.caret);normalize(container);var node=container.childNodes[containerIndex];if(isDataNode(node)){range.setStart(node,startOffset);}else if(node){var textNode=dom.lastTextNode(node);if(textNode){range.setStart(textNode,textNode.nodeValue.length);}else{range[previous?'setStartAfter':'setStartBefore'](node);}}else{if(!browser.msie&&!container.innerHTML){container.innerHTML='<br _moz_dirty="" />';}range.selectNodeContents(container);}range.collapse(true);},add:function(range,expand){var that=this;if(expand&&range.collapsed){that.addCaret(range);range=RangeUtils.expand(range);}var rangeBoundary=range.cloneRange();rangeBoundary.collapse(false);that.end=dom.create(RangeUtils.documentFromRange(range),'span',{className:'k-marker'});rangeBoundary.insertNode(that.end);rangeBoundary=range.cloneRange();rangeBoundary.collapse(true);that.start=that.end.cloneNode(true);rangeBoundary.insertNode(that.start);range.setStartBefore(that.start);range.setEndAfter(that.end);normalize(range.commonAncestorContainer);return range;},remove:function(range){var that=this,start=that.start,end=that.end,shouldNormalizeStart,shouldNormalizeEnd,shouldNormalize;normalize(range.commonAncestorContainer);while(!start.nextSibling&&start.parentNode){start=start.parentNode;}while(!end.previousSibling&&end.parentNode){end=end.parentNode;}shouldNormalizeStart=(start.previousSibling&&start.previousSibling.nodeType==3)&&(start.nextSibling&&start.nextSibling.nodeType==3);shouldNormalizeEnd=(end.previousSibling&&end.previousSibling.nodeType==3)&&(end.nextSibling&&end.nextSibling.nodeType==3);shouldNormalize=shouldNormalizeStart&&shouldNormalizeEnd;start=start.nextSibling;end=end.previousSibling;var collapsed=false;var collapsedToStart=false;if(start==that.end){collapsedToStart=!!that.start.previousSibling;start=end=that.start.previousSibling||that.end.nextSibling;collapsed=true;}dom.remove(that.start);dom.remove(that.end);if(!start||!end){range.selectNodeContents(range.commonAncestorContainer);range.collapse(true);return;}var startOffset=collapsed?isDataNode(start)?start.nodeValue.length:start.childNodes.length:0;var endOffset=isDataNode(end)?end.nodeValue.length:end.childNodes.length;if(start.nodeType==3){while(start.previousSibling&&start.previousSibling.nodeType==3){start=start.previousSibling;startOffset+=start.nodeValue.length;}}if(end.nodeType==3){while(end.previousSibling&&end.previousSibling.nodeType==3){end=end.previousSibling;endOffset+=end.nodeValue.length;}}var startIndex=findNodeIndex(start),startParent=start.parentNode;var endIndex=findNodeIndex(end),endParent=end.parentNode;for(var startPointer=start;startPointer.previousSibling;startPointer=startPointer.previousSibling){if(startPointer.nodeType==3&&startPointer.previousSibling.nodeType==3){startIndex--;}}for(var endPointer=end;endPointer.previousSibling;endPointer=endPointer.previousSibling){if(endPointer.nodeType==3&&endPointer.previousSibling.nodeType==3){endIndex--;}}normalize(startParent);if(start.nodeType==3){start=startParent.childNodes[startIndex];}normalize(endParent);if(end.nodeType==3){end=endParent.childNodes[endIndex];}if(collapsed){if(start.nodeType==3){range.setStart(start,startOffset);}else{range[collapsedToStart?'setStartAfter':'setStartBefore'](start);}range.collapse(true);}else{if(start.nodeType==3){range.setStart(start,startOffset);}else{range.setStartBefore(start);}if(end.nodeType==3){range.setEnd(end,endOffset);}else{range.setEndAfter(end);}}if(that.caret){that.removeCaret(range);}}});var boundary=/[\u0009-\u000d]|\u0020|\u00a0|\ufeff|\.|,|;|:|!|\(|\)|\?/;var RangeUtils={nodes:function(range){var nodes=RangeUtils.textNodes(range);if(!nodes.length){range.selectNodeContents(range.commonAncestorContainer);nodes=RangeUtils.textNodes(range);if(!nodes.length){nodes=dom.significantChildNodes(range.commonAncestorContainer);}}return nodes;},textNodes:function(range){return new RangeEnumerator(range).enumerate();},documentFromRange:function(range){var startContainer=range.startContainer;return startContainer.nodeType==9?startContainer:startContainer.ownerDocument;},createRange:function(document){if(browser.msie&&browser.version<9){return new W3CRange(document);}return document.createRange();},selectRange:function(range){var image=RangeUtils.image(range);if(image){range.setStartAfter(image);range.setEndAfter(image);}var selection=SelectionUtils.selectionFromRange(range);selection.removeAllRanges();selection.addRange(range);},split:function(range,node,trim){function partition(start){var partitionRange=range.cloneRange();partitionRange.collapse(start);partitionRange[start?'setStartBefore':'setEndAfter'](node);var contents=partitionRange.extractContents();if(trim){contents=dom.trim(contents);}dom[start?'insertBefore':'insertAfter'](contents,node);}partition(true);partition(false);},getMarkers:function(range){var markers=[];new RangeIterator(range).traverse(function(node){if(node.className=='k-marker'){markers.push(node);}});return markers;},image:function(range){var nodes=[];new RangeIterator(range).traverse(function(node){if(dom.is(node,'img')){nodes.push(node);}});if(nodes.length==1){return nodes[0];}},expand:function(range){var result=range.cloneRange();var startContainer=result.startContainer.childNodes[result.startOffset===0?0:result.startOffset-1];var endContainer=result.endContainer.childNodes[result.endOffset];if(!isDataNode(startContainer)||!isDataNode(endContainer)){return result;}var beforeCaret=startContainer.nodeValue;var afterCaret=endContainer.nodeValue;if(!beforeCaret||!afterCaret){return result;}var startOffset=beforeCaret.split('').reverse().join('').search(boundary);var endOffset=afterCaret.search(boundary);if(!startOffset||!endOffset){return result;}endOffset=endOffset==-1?afterCaret.length:endOffset;startOffset=startOffset==-1?0:beforeCaret.length-startOffset;result.setStart(startContainer,startOffset);result.setEnd(endContainer,endOffset);return result;},isExpandable:function(range){var node=range.startContainer;var rangeDocument=RangeUtils.documentFromRange(range);if(node==rangeDocument||node==rangeDocument.body){return false;}var result=range.cloneRange();var value=node.nodeValue;if(!value){return false;}var beforeCaret=value.substring(0,result.startOffset);var afterCaret=value.substring(result.startOffset);var startOffset=0,endOffset=0;if(beforeCaret){startOffset=beforeCaret.split('').reverse().join('').search(boundary);}if(afterCaret){endOffset=afterCaret.search(boundary);}return startOffset&&endOffset;}};extend(Editor,{SelectionUtils:SelectionUtils,W3CRange:W3CRange,RangeIterator:RangeIterator,W3CSelection:W3CSelection,RangeEnumerator:RangeEnumerator,RestorePoint:RestorePoint,Marker:Marker,RangeUtils:RangeUtils});})(window.kendo.jQuery);(function($){var kendo=window.kendo,Class=kendo.Class,Editor=kendo.ui.editor,EditorUtils=Editor.EditorUtils,registerTool=EditorUtils.registerTool,dom=Editor.Dom,RangeUtils=Editor.RangeUtils,selectRange=RangeUtils.selectRange,Tool=Editor.Tool,ToolTemplate=Editor.ToolTemplate,RestorePoint=Editor.RestorePoint,Marker=Editor.Marker,extend=$.extend;var Command=Class.extend({init:function(options){var that=this;that.options=options;that.restorePoint=new RestorePoint(options.range);that.marker=new Marker();that.formatter=options.formatter;},getRange:function(){return this.restorePoint.toRange();},lockRange:function(expand){return this.marker.add(this.getRange(),expand);},releaseRange:function(range){this.marker.remove(range);selectRange(range);},undo:function(){var point=this.restorePoint;point.body.innerHTML=point.html;selectRange(point.toRange());},redo:function(){this.exec();},exec:function(){var that=this,range=that.lockRange(true);that.formatter.editor=that.editor;that.formatter.toggle(range);that.releaseRange(range);}});var GenericCommand=Class.extend({init:function(startRestorePoint,endRestorePoint){this.body=startRestorePoint.body;this.startRestorePoint=startRestorePoint;this.endRestorePoint=endRestorePoint;},redo:function(){this.body.innerHTML=this.endRestorePoint.html;selectRange(this.endRestorePoint.toRange());},undo:function(){this.body.innerHTML=this.startRestorePoint.html;selectRange(this.startRestorePoint.toRange());}});var InsertHtmlCommand=Command.extend({init:function(options){Command.fn.init.call(this,options);this.managesUndoRedo=true;},exec:function(){var editor=this.editor;var range=editor.getRange();var startRestorePoint=new RestorePoint(range);editor.clipboard.paste(this.options.value||'');editor.undoRedoStack.push(new GenericCommand(startRestorePoint,new RestorePoint(editor.getRange())));editor.focus();}});var InsertHtmlTool=Tool.extend({initialize:function(ui,initOptions){var editor=initOptions.editor;new Editor.SelectBox(ui,{dataSource:editor.options.insertHtml||[],dataTextField:"text",dataValueField:"value",change:function(e){Tool.exec(editor,'insertHtml',this.value());},title:editor.options.messages.insertHtml,highlightFirst:false});},command:function(commandArguments){return new InsertHtmlCommand(commandArguments);},update:function(ui,nodes){var selectbox=ui.data("kendoSelectBox")||ui.find("select").data("kendoSelectBox");selectbox.close();selectbox.value(selectbox.options.title);}});var UndoRedoStack=Class.extend({init:function(){this.stack=[];this.currentCommandIndex=-1;},push:function(command){var that=this;that.stack=that.stack.slice(0,that.currentCommandIndex+1);that.currentCommandIndex=that.stack.push(command)-1;},undo:function(){if(this.canUndo()){this.stack[this.currentCommandIndex--].undo();}},redo:function(){if(this.canRedo()){this.stack[++this.currentCommandIndex].redo();}},canUndo:function(){return this.currentCommandIndex>=0;},canRedo:function(){return this.currentCommandIndex!=this.stack.length-1;}});var TypingHandler=Class.extend({init:function(editor){this.editor=editor;},keydown:function(e){var that=this,editor=that.editor,keyboard=editor.keyboard,isTypingKey=keyboard.isTypingKey(e),evt=extend($.Event(),e);that.editor.trigger("keydown",evt);if(evt.isDefaultPrevented()){e.preventDefault();}if(!evt.isDefaultPrevented()&&isTypingKey&&!keyboard.isTypingInProgress()){var range=editor.getRange();that.startRestorePoint=new RestorePoint(range);keyboard.startTyping(function(){editor.selectionRestorePoint=that.endRestorePoint=new RestorePoint(editor.getRange());editor.undoRedoStack.push(new GenericCommand(that.startRestorePoint,that.endRestorePoint));});return true;}return false;},keyup:function(e){var keyboard=this.editor.keyboard;this.editor.trigger("keyup",e);if(keyboard.isTypingInProgress()){keyboard.endTyping();return true;}return false;}});var SystemHandler=Class.extend({init:function(editor){this.editor=editor;this.systemCommandIsInProgress=false;},createUndoCommand:function(){var that=this;that.endRestorePoint=new RestorePoint(that.editor.getRange());that.editor.undoRedoStack.push(new GenericCommand(that.startRestorePoint,that.endRestorePoint));that.startRestorePoint=that.endRestorePoint;},changed:function(){if(this.startRestorePoint){return this.startRestorePoint.html!=this.editor.body.innerHTML;}return false;},keydown:function(e){var that=this,editor=that.editor,keyboard=editor.keyboard;if(keyboard.isModifierKey(e)){if(keyboard.isTypingInProgress()){keyboard.endTyping(true);}that.startRestorePoint=new RestorePoint(editor.getRange());return true;}if(keyboard.isSystem(e)){that.systemCommandIsInProgress=true;if(that.changed()){that.systemCommandIsInProgress=false;that.createUndoCommand();}return true;}return false;},keyup:function(e){var that=this;if(that.systemCommandIsInProgress&&that.changed()){that.systemCommandIsInProgress=false;that.createUndoCommand(e);return true;}return false;}});var Keyboard=Class.extend({init:function(handlers){this.handlers=handlers;this.typingInProgress=false;},isCharacter:function(keyCode){return(keyCode>=48&&keyCode<=90)||(keyCode>=96&&keyCode<=111)||(keyCode>=186&&keyCode<=192)||(keyCode>=219&&keyCode<=222);},toolFromShortcut:function(tools,e){var key=String.fromCharCode(e.keyCode),toolName,toolOptions;for(toolName in tools){toolOptions=$.extend({ctrl:false,alt:false,shift:false},tools[toolName].options);if((toolOptions.key==key||toolOptions.key==e.keyCode)&&toolOptions.ctrl==e.ctrlKey&&toolOptions.alt==e.altKey&&toolOptions.shift==e.shiftKey){return toolName;}}},isTypingKey:function(e){var keyCode=e.keyCode;return(this.isCharacter(keyCode)&&!e.ctrlKey&&!e.altKey)||keyCode==32||keyCode==13||keyCode==8||(keyCode==46&&!e.shiftKey&&!e.ctrlKey&&!e.altKey);},isModifierKey:function(e){var keyCode=e.keyCode;return(keyCode==17&&!e.shiftKey&&!e.altKey)||(keyCode==16&&!e.ctrlKey&&!e.altKey)||(keyCode==18&&!e.ctrlKey&&!e.shiftKey);},isSystem:function(e){return e.keyCode==46&&e.ctrlKey&&!e.altKey&&!e.shiftKey;},startTyping:function(callback){this.onEndTyping=callback;this.typingInProgress=true;},stopTyping:function(){this.typingInProgress=false;if(this.onEndTyping){this.onEndTyping();}},endTyping:function(force){var that=this;that.clearTimeout();if(force){that.stopTyping();}else{that.timeout=window.setTimeout($.proxy(that.stopTyping,that),1000);}},isTypingInProgress:function(){return this.typingInProgress;},clearTimeout:function(){window.clearTimeout(this.timeout);},notify:function(e,what){var i,handlers=this.handlers;for(i=0;i<handlers.length;i++){if(handlers[i][what](e)){break;}}},keydown:function(e){this.notify(e,'keydown');},keyup:function(e){this.notify(e,'keyup');}});var Clipboard=Class.extend({init:function(editor){this.editor=editor;this.cleaners=[new MSWordFormatCleaner()];},htmlToFragment:function(html){var editor=this.editor,doc=editor.document,container=dom.create(doc,'div'),fragment=doc.createDocumentFragment();container.innerHTML=html;while(container.firstChild){fragment.appendChild(container.firstChild);}return fragment;},isBlock:function(html){return(/<(div|p|ul|ol|table|h[1-6])/i).test(html);},oncut:function(e){var editor=this.editor,startRestorePoint=new RestorePoint(editor.getRange());setTimeout(function(){editor.undoRedoStack.push(new GenericCommand(startRestorePoint,new RestorePoint(editor.getRange())));});},onpaste:function(e){var editor=this.editor,range=editor.getRange(),bom="\ufeff",startRestorePoint=new RestorePoint(range),clipboardNode=dom.create(editor.document,'div',{className:'k-paste-container',innerHTML:bom});editor.body.appendChild(clipboardNode);if(editor.body.createTextRange){e.preventDefault();var r=editor.createRange();r.selectNodeContents(clipboardNode);editor.selectRange(r);var textRange=editor.body.createTextRange();textRange.moveToElementText(clipboardNode);$(editor.body).unbind('paste');textRange.execCommand('Paste');$(editor.body).bind('paste',$.proxy(arguments.callee,this));}else{var clipboardRange=editor.createRange();clipboardRange.selectNodeContents(clipboardNode);selectRange(clipboardRange);}setTimeout(function(){var html,args={html:""};selectRange(range);dom.remove(clipboardNode);if(clipboardNode.lastChild&&dom.is(clipboardNode.lastChild,'br')){dom.remove(clipboardNode.lastChild);}html=clipboardNode.innerHTML;if(html!=bom){args.html=html;}editor.trigger("paste",args);editor.clipboard.paste(args.html,true);editor.undoRedoStack.push(new GenericCommand(startRestorePoint,new RestorePoint(editor.getRange())));Editor.EditorUtils.select(editor);});},splittableParent:function(block,node){var parentNode,body;if(block){return dom.parentOfType(node,['p','ul','ol'])||node.parentNode;}parentNode=node.parentNode;body=node.ownerDocument.body;if(dom.isInline(parentNode)){while(parentNode.parentNode!=body&&!dom.isBlock(parentNode.parentNode)){parentNode=parentNode.parentNode;}}return parentNode;},paste:function(html,clean){var editor=this.editor,i,l;for(i=0,l=this.cleaners.length;i<l;i++){if(this.cleaners[i].applicable(html)){html=this.cleaners[i].clean(html);}}if(clean){html=html.replace(/(<br>(\s|&nbsp;)*)+(<\/?(div|p|li|col|t))/ig,"$3");html=html.replace(/<(a|span)[^>]*><\/\1>/ig,"");}html=html.replace(/^<li/i,'<ul><li').replace(/li>$/g,'li></ul>');var block=this.isBlock(html);var range=editor.getRange();range.deleteContents();if(range.startContainer==editor.document){range.selectNodeContents(editor.body);}var marker=new Marker();var caret=marker.addCaret(range);var parent=this.splittableParent(block,caret);var unwrap=false;if(!/body|td/.test(dom.name(parent))&&(block||dom.isInline(parent))){range.selectNode(caret);RangeUtils.split(range,parent,true);unwrap=true;}var fragment=this.htmlToFragment(html);if(fragment.firstChild&&fragment.firstChild.className==="k-paste-container"){var fragmentsHtml=[];for(i=0,l=fragment.childNodes.length;i<l;i++){fragmentsHtml.push(fragment.childNodes[i].innerHTML);}fragment=this.htmlToFragment(fragmentsHtml.join('<br />'));}range.insertNode(fragment);parent=this.splittableParent(block,caret);if(unwrap){while(caret.parentNode!=parent){dom.unwrap(caret.parentNode);}dom.unwrap(caret.parentNode);}dom.normalize(range.commonAncestorContainer);caret.style.display='inline';dom.scrollTo(caret);marker.removeCaret(range);selectRange(range);}});var MSWordFormatCleaner=Class.extend({init:function(){this.replacements=[/<\?xml[^>]*>/gi,'',/<!--(.|\n)*?-->/g,'',/&quot;/g,"'",/(?:<br>&nbsp;[\s\r\n]+|<br>)*(<\/?(h[1-6]|hr|p|div|table|tbody|thead|tfoot|th|tr|td|li|ol|ul|caption|address|pre|form|blockquote|dl|dt|dd|dir|fieldset)[^>]*>)(?:<br>&nbsp;[\s\r\n]+|<br>)*/g,'$1',/<br><br>/g,'<BR><BR>',/<br>/g,' ',/<table([^>]*)>(\s|&nbsp;)+<t/gi,'<table$1><t',/<tr[^>]*>(\s|&nbsp;)*<\/tr>/gi,'',/<tbody[^>]*>(\s|&nbsp;)*<\/tbody>/gi,'',/<table[^>]*>(\s|&nbsp;)*<\/table>/gi,'',/<BR><BR>/g,'<br>',/^\s*(&nbsp;)+/gi,'',/(&nbsp;|<br[^>]*>)+\s*$/gi,'',/mso-[^;"]*;?/ig,'',/<(\/?)b(\s[^>]*)?>/ig,'<$1strong$2>',/<(\/?)i(\s[^>]*)?>/ig,'<$1em$2>',/<\/?(meta|link|style|o:|v:|x:)[^>]*>((?:.|\n)*?<\/(meta|link|style|o:|v:|x:)[^>]*>)?/ig,'',/style=(["|'])\s*\1/g,''];},applicable:function(html){return(/class="?Mso|style="[^"]*mso-/i).test(html);},listType:function(html){if(/^[\u2022\u00b7\u00a7\u00d8o]\u00a0+/.test(html)){return'ul';}if(/^\s*\w+[\.\)]\u00a0{2,}/.test(html)){return'ol';}},lists:function(html){var placeholder=dom.create(document,'div',{innerHTML:html});var blockChildren=$(dom.blockElements.join(','),placeholder);var lastMargin=-1,lastType,levels={'ul':{},'ol':{}},li=placeholder;for(var i=0;i<blockChildren.length;i++){var p=blockChildren[i];html=p.innerHTML.replace(/<\/?\w+[^>]*>/g,'').replace(/&nbsp;/g,'\u00a0');var type=this.listType(html);if(!type||dom.name(p)!='p'){if(!p.innerHTML){dom.remove(p);}else{levels={'ul':{},'ol':{}};li=placeholder;lastMargin=-1;}continue;}var margin=parseFloat(p.style.marginLeft||0);var list=levels[type][margin];if(margin>lastMargin||!list){list=dom.create(document,type);if(li==placeholder){dom.insertBefore(list,p);}else{li.appendChild(list);}levels[type][margin]=list;}if(lastType!=type){for(var key in levels){for(var child in levels[key]){if($.contains(list,levels[key][child])){delete levels[key][child];}}}}dom.remove(p.firstChild);li=dom.create(document,'li',{innerHTML:p.innerHTML});list.appendChild(li);dom.remove(p);lastMargin=margin;lastType=type;}return placeholder.innerHTML;},stripEmptyAnchors:function(html){return html.replace(/<a([^>]*)>\s*<\/a>/ig,function(a,attributes){if(!attributes||attributes.indexOf("href")<0){return"";}return a;});},clean:function(html){var that=this,replacements=that.replacements,i,l;for(i=0,l=replacements.length;i<l;i+=2){html=html.replace(replacements[i],replacements[i+1]);}html=that.stripEmptyAnchors(html);html=that.lists(html);html=html.replace(/\s+class="?[^"\s>]*"?/ig,'');return html;}});extend(Editor,{Command:Command,GenericCommand:GenericCommand,InsertHtmlCommand:InsertHtmlCommand,InsertHtmlTool:InsertHtmlTool,UndoRedoStack:UndoRedoStack,TypingHandler:TypingHandler,SystemHandler:SystemHandler,Keyboard:Keyboard,Clipboard:Clipboard,MSWordFormatCleaner:MSWordFormatCleaner});registerTool("insertHtml",new InsertHtmlTool({template:new ToolTemplate({template:EditorUtils.dropDownListTemplate,title:"Insert HTML",initialValue:"Insert HTML"})}));})(window.kendo.jQuery);(function($){var kendo=window.kendo,Class=kendo.Class,Editor=kendo.ui.editor,formats=kendo.ui.Editor.fn.options.formats,EditorUtils=Editor.EditorUtils,Tool=Editor.Tool,ToolTemplate=Editor.ToolTemplate,FormatTool=Editor.FormatTool,dom=Editor.Dom,RangeUtils=Editor.RangeUtils,extend=$.extend,registerTool=Editor.EditorUtils.registerTool,registerFormat=Editor.EditorUtils.registerFormat,KMARKER="k-marker";var InlineFormatFinder=Class.extend({init:function(format){this.format=format;},numberOfSiblings:function(referenceNode){var textNodesCount=0,elementNodesCount=0,markerCount=0,parentNode=referenceNode.parentNode,node;for(node=parentNode.firstChild;node;node=node.nextSibling){if(node!=referenceNode){if(node.className==KMARKER){markerCount++;}else if(node.nodeType==3){textNodesCount++;}else{elementNodesCount++;}}}if(markerCount>1&&parentNode.firstChild.className==KMARKER&&parentNode.lastChild.className==KMARKER){return 0;}else{return elementNodesCount+textNodesCount;}},findSuitable:function(sourceNode,skip){if(!skip&&this.numberOfSiblings(sourceNode)>0){return null;}return dom.parentOfType(sourceNode,this.format[0].tags);},findFormat:function(sourceNode){var format=this.format,attrEquals=dom.attrEquals,i,len,node,tags,attributes;for(i=0,len=format.length;i<len;i++){node=sourceNode;tags=format[i].tags;attributes=format[i].attr;if(node&&dom.ofType(node,tags)&&attrEquals(node,attributes)){return node;}while(node){node=dom.parentOfType(node,tags);if(node&&attrEquals(node,attributes)){return node;}}}return null;},isFormatted:function(nodes){var i,len;for(i=0,len=nodes.length;i<len;i++){if(this.findFormat(nodes[i])){return true;}}return false;}});var InlineFormatter=Class.extend({init:function(format,values){var that=this;that.finder=new InlineFormatFinder(format);that.attributes=extend({},format[0].attr,values);that.tag=format[0].tags[0];},wrap:function(node){return dom.wrap(node,dom.create(node.ownerDocument,this.tag,this.attributes));},activate:function(range,nodes){var that=this;if(that.finder.isFormatted(nodes)){that.split(range);that.remove(nodes);}else{that.apply(nodes);}},toggle:function(range){var nodes=RangeUtils.textNodes(range);if(nodes.length>0){this.activate(range,nodes);}},apply:function(nodes){var that=this,formatNodes=[],i,l,node,formatNode;for(i=0,l=nodes.length;i<l;i++){node=nodes[i];formatNode=that.finder.findSuitable(node);if(formatNode){dom.attr(formatNode,that.attributes);}else{formatNode=that.wrap(node);}formatNodes.push(formatNode);}that.consolidate(formatNodes);},remove:function(nodes){var that=this,i,l,formatNode;for(i=0,l=nodes.length;i<l;i++){formatNode=that.finder.findFormat(nodes[i]);if(formatNode){if(that.attributes&&that.attributes.style){dom.unstyle(formatNode,that.attributes.style);if(!formatNode.style.cssText){dom.unwrap(formatNode);}}else{dom.unwrap(formatNode);}}}},split:function(range){var nodes=RangeUtils.textNodes(range),l=nodes.length,i,formatNode;if(l>0){for(i=0;i<l;i++){formatNode=this.finder.findFormat(nodes[i]);if(formatNode){RangeUtils.split(range,formatNode,true);}}}},consolidate:function(nodes){var node,last;while(nodes.length>1){node=nodes.pop();last=nodes[nodes.length-1];if(node.previousSibling&&node.previousSibling.className==KMARKER){last.appendChild(node.previousSibling);}if(node.tagName==last.tagName&&node.previousSibling==last&&node.style.cssText==last.style.cssText){while(node.firstChild){last.appendChild(node.firstChild);}dom.remove(node);}}}});var GreedyInlineFormatFinder=InlineFormatFinder.extend({init:function(format,greedyProperty){var that=this;that.format=format;that.greedyProperty=greedyProperty;InlineFormatFinder.fn.init.call(that,format);},getInlineCssValue:function(node){var attributes=node.attributes,trim=$.trim,i,l,attribute,name,attributeValue,css,pair,cssIndex,len,propertyAndValue,property,value;if(!attributes){return;}for(i=0,l=attributes.length;i<l;i++){attribute=attributes[i];name=attribute.nodeName;attributeValue=attribute.nodeValue;if(attribute.specified&&name=="style"){css=trim(attributeValue||node.style.cssText).split(";");for(cssIndex=0,len=css.length;cssIndex<len;cssIndex++){pair=css[cssIndex];if(pair.length){propertyAndValue=pair.split(":");property=trim(propertyAndValue[0].toLowerCase());value=trim(propertyAndValue[1]);if(property!=this.greedyProperty){continue;}return property.indexOf("color")>=0?dom.toHex(value):value;}}}}},getFormatInner:function(node){var $node=$(dom.isDataNode(node)?node.parentNode:node),parents=$node.parents().andSelf(),i,len,value;for(i=0,len=parents.length;i<len;i++){value=this.greedyProperty=="className"?parents[i].className:this.getInlineCssValue(parents[i]);if(value){return value;}}return"inherit";},getFormat:function(nodes){var result=this.getFormatInner(nodes[0]),i,len;for(i=1,len=nodes.length;i<len;i++){if(result!=this.getFormatInner(nodes[i])){return"";}}return result;},isFormatted:function(nodes){return this.getFormat(nodes)!=="";}});var GreedyInlineFormatter=InlineFormatter.extend({init:function(format,values,greedyProperty){var that=this;InlineFormatter.fn.init.call(that,format,values);that.greedyProperty=greedyProperty;that.values=values;that.finder=new GreedyInlineFormatFinder(format,greedyProperty);},activate:function(range,nodes){var that=this,camelCase,greedyProperty=that.greedyProperty,action="apply";that.split(range);if(greedyProperty){camelCase=greedyProperty.replace(/-([a-z])/,function(all,letter){return letter.toUpperCase();});if(that.values.style[camelCase]=="inherit"){action="remove";}}that[action](nodes);}});function inlineFormatWillDelayExecution(range){return range.collapsed&&!RangeUtils.isExpandable(range);}var InlineFormatTool=FormatTool.extend({init:function(options){FormatTool.fn.init.call(this,extend(options,{finder:new InlineFormatFinder(options.format),formatter:function(){return new InlineFormatter(options.format);}}));this.willDelayExecution=inlineFormatWillDelayExecution;}});var FontTool=Tool.extend({init:function(options){var that=this;Tool.fn.init.call(that,options);that.type=(kendo.support.browser.msie||kendo.support.touch)?"kendoDropDownList":"kendoComboBox";that.format=[{tags:["span"]}];that.finder=new GreedyInlineFormatFinder(that.format,options.cssAttr);},command:function(commandArguments){var options=this.options,format=this.format,style={};return new Editor.FormatCommand(extend(commandArguments,{formatter:function(){style[options.domAttr]=commandArguments.value;return new GreedyInlineFormatter(format,{style:style},options.cssAttr);}}));},willDelayExecution:inlineFormatWillDelayExecution,update:function(ui,nodes,pendingFormats){var that=this,list=ui.data(that.type),pendingFormat=pendingFormats.getPending(that.name),format=(pendingFormat&&pendingFormat.params)?pendingFormat.params.value:that.finder.getFormat(nodes);list.close();list.value(format);},initialize:function(ui,initOptions){var editor=initOptions.editor,options=this.options,toolName=options.name,dataSource,defaultValue=[];if(options.defaultValue){defaultValue=[{text:editor.options.messages[options.defaultValue[0].text],value:options.defaultValue[0].value}];}dataSource=defaultValue.concat(options.items?options.items:editor.options[toolName]);ui[this.type]({dataTextField:"text",dataValueField:"value",dataSource:dataSource,change:function(){Tool.exec(editor,toolName,this.value());},highlightFirst:false});ui.closest(".k-widget").removeClass("k-"+toolName).find("*").andSelf().attr("unselectable","on");ui.data(this.type).value("inherit");}});var ColorTool=Tool.extend({init:function(options){Tool.fn.init.call(this,options);this.options=options;this.format=[{tags:["span"]}];},update:function(ui){ui.data("kendoColorPicker").close();},command:function(commandArguments){var options=this.options,format=this.format,style={};return new Editor.FormatCommand(extend(commandArguments,{formatter:function(){style[options.domAttr]=commandArguments.value;return new GreedyInlineFormatter(format,{style:style},options.cssAttr);}}));},willDelayExecution:inlineFormatWillDelayExecution,initialize:function(ui,initOptions){var editor=initOptions.editor,toolName=this.name;ui.attr("title",initOptions.title);new Editor.ColorPicker(ui,{value:"#000000",ariaId:editor.element[0].id?kendo.format("{0}_{1}_cp",editor.element[0].id,toolName):"",change:function(e){Tool.exec(editor,toolName,e.value);}});}});var StyleTool=Tool.extend({init:function(options){var that=this;Tool.fn.init.call(that,options);that.format=[{tags:["span"]}];that.finder=new GreedyInlineFormatFinder(that.format,"className");},command:function(commandArguments){var format=this.format;return new Editor.FormatCommand(extend(commandArguments,{formatter:function(){return new GreedyInlineFormatter(format,{className:commandArguments.value});}}));},update:function(ui,nodes){var list=ui.data("kendoSelectBox");list.close();list.value(this.finder.getFormat(nodes));},initialize:function(ui,initOptions){var editor=initOptions.editor;new Editor.SelectBox(ui,{dataTextField:"text",dataValueField:"value",dataSource:editor.options.style,title:editor.options.messages.style,change:function(){Tool.exec(editor,"style",this.value());},highlightFirst:false});ui.closest(".k-widget").removeClass("k-"+this.name).find("*").andSelf().attr("unselectable","on");}});extend(Editor,{InlineFormatFinder:InlineFormatFinder,InlineFormatter:InlineFormatter,GreedyInlineFormatFinder:GreedyInlineFormatFinder,GreedyInlineFormatter:GreedyInlineFormatter,InlineFormatTool:InlineFormatTool,FontTool:FontTool,ColorTool:ColorTool,StyleTool:StyleTool});registerTool("style",new Editor.StyleTool({template:new ToolTemplate({template:EditorUtils.dropDownListTemplate,title:"Styles"})}));registerFormat("bold",[{tags:["strong"]},{tags:["span"],attr:{style:{fontWeight:"bold"}}}]);registerTool("bold",new InlineFormatTool({key:"B",ctrl:true,format:formats.bold,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Bold"})}));registerFormat("italic",[{tags:["em"]},{tags:["span"],attr:{style:{fontStyle:"italic"}}}]);registerTool("italic",new InlineFormatTool({key:"I",ctrl:true,format:formats.italic,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Italic"})}));registerFormat("underline",[{tags:["span"],attr:{style:{textDecoration:"underline"}}}]);registerTool("underline",new InlineFormatTool({key:"U",ctrl:true,format:formats.underline,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Underline"})}));registerFormat("strikethrough",[{tags:["del"]},{tags:["span"],attr:{style:{textDecoration:"line-through"}}}]);registerTool("strikethrough",new InlineFormatTool({format:formats.strikethrough,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Strikethrough"})}));registerFormat("superscript",[{tags:["sup"]}]);registerTool("superscript",new InlineFormatTool({format:formats.superscript,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Superscript"})}));registerFormat("subscript",[{tags:["sub"]}]);registerTool("subscript",new InlineFormatTool({format:formats.subscript,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Subscript"})}));registerTool("foreColor",new ColorTool({cssAttr:"color",domAttr:"color",name:"foreColor",template:new ToolTemplate({template:EditorUtils.colorPickerTemplate,title:"Color"})}));registerTool("backColor",new ColorTool({cssAttr:"background-color",domAttr:"backgroundColor",name:"backColor",template:new ToolTemplate({template:EditorUtils.colorPickerTemplate,title:"Background Color"})}));registerTool("fontName",new FontTool({cssAttr:"font-family",domAttr:"fontFamily",name:"fontName",defaultValue:[{text:"fontNameInherit",value:"inherit"}],template:new ToolTemplate({template:EditorUtils.comboBoxTemplate,title:"Font Name"})}));registerTool("fontSize",new FontTool({cssAttr:"font-size",domAttr:"fontSize",name:"fontSize",defaultValue:[{text:"fontSizeInherit",value:"inherit"}],template:new ToolTemplate({template:EditorUtils.comboBoxTemplate,title:"Font Size"})}));})(window.kendo.jQuery);(function($){var kendo=window.kendo,Class=kendo.Class,extend=$.extend,Editor=kendo.ui.editor,formats=kendo.ui.Editor.fn.options.formats,dom=Editor.Dom,Command=Editor.Command,Tool=Editor.Tool,ToolTemplate=Editor.ToolTemplate,FormatTool=Editor.FormatTool,EditorUtils=Editor.EditorUtils,registerTool=EditorUtils.registerTool,registerFormat=EditorUtils.registerFormat,RangeUtils=Editor.RangeUtils;var BlockFormatFinder=Class.extend({init:function(format){this.format=format;},contains:function(node,children){var i,len,child;for(i=0,len=children.length;i<len;i++){child=children[i];if(!child||!dom.isAncestorOrSelf(node,child)){return false;}}return true;},findSuitable:function(nodes){var format=this.format,suitable=[],i,len,candidate;for(i=0,len=nodes.length;i<len;i++){candidate=dom.ofType(nodes[i],format[0].tags)?nodes[i]:dom.parentOfType(nodes[i],format[0].tags);if(!candidate){return[];}if($.inArray(candidate,suitable)<0){suitable.push(candidate);}}for(i=0,len=suitable.length;i<len;i++){if(this.contains(suitable[i],suitable)){return[suitable[i]];}}return suitable;},findFormat:function(sourceNode){var format=this.format,i,len,node,tags,attributes;for(i=0,len=format.length;i<len;i++){node=sourceNode;tags=format[i].tags;attributes=format[i].attr;while(node){if(dom.ofType(node,tags)&&dom.attrEquals(node,attributes)){return node;}node=node.parentNode;}}return null;},getFormat:function(nodes){var that=this,findFormat=function(node){return that.findFormat(dom.isDataNode(node)?node.parentNode:node);},result=findFormat(nodes[0]),i,len;if(!result){return"";}for(i=1,len=nodes.length;i<len;i++){if(result!=findFormat(nodes[i])){return"";}}return result.nodeName.toLowerCase();},isFormatted:function(nodes){for(var i=0,len=nodes.length;i<len;i++){if(!this.findFormat(nodes[i])){return false;}}return true;}});var BlockFormatter=Class.extend({init:function(format,values){this.format=format;this.values=values;this.finder=new BlockFormatFinder(format);},wrap:function(tag,attributes,nodes){var commonAncestor=nodes.length==1?dom.blockParentOrBody(nodes[0]):dom.commonAncestor.apply(null,nodes);if(dom.isInline(commonAncestor)){commonAncestor=dom.blockParentOrBody(commonAncestor);}var ancestors=dom.significantChildNodes(commonAncestor),position=dom.findNodeIndex(ancestors[0]),wrapper=dom.create(commonAncestor.ownerDocument,tag,attributes),i,ancestor;for(i=0;i<ancestors.length;i++){ancestor=ancestors[i];if(dom.isBlock(ancestor)){dom.attr(ancestor,attributes);if(wrapper.childNodes.length){dom.insertBefore(wrapper,ancestor);wrapper=wrapper.cloneNode(false);}position=dom.findNodeIndex(ancestor)+1;continue;}wrapper.appendChild(ancestor);}if(wrapper.firstChild){dom.insertAt(commonAncestor,wrapper,position);}},apply:function(nodes){var that=this,formatNodes=dom.is(nodes[0],"img")?[nodes[0]]:that.finder.findSuitable(nodes),formatToApply=formatNodes.length?EditorUtils.formatByName(dom.name(formatNodes[0]),that.format):that.format[0],tag=formatToApply.tags[0],attributes=extend({},formatToApply.attr,that.values),i,len;if(formatNodes.length){for(i=0,len=formatNodes.length;i<len;i++){dom.attr(formatNodes[i],attributes);}}else{that.wrap(tag,attributes,nodes);}},remove:function(nodes){var i,l,formatNode,namedFormat;for(i=0,l=nodes.length;i<l;i++){formatNode=this.finder.findFormat(nodes[i]);if(formatNode){if(dom.ofType(formatNode,["p","img","li"])){namedFormat=EditorUtils.formatByName(dom.name(formatNode),this.format);if(namedFormat.attr.style){dom.unstyle(formatNode,namedFormat.attr.style);}if(namedFormat.attr.className){dom.removeClass(formatNode,namedFormat.attr.className);}}else{dom.unwrap(formatNode);}}}},toggle:function(range){var that=this,nodes=RangeUtils.nodes(range);if(that.finder.isFormatted(nodes)){that.remove(nodes);}else{that.apply(nodes);}}});var GreedyBlockFormatter=Class.extend({init:function(format,values){var that=this;that.format=format;that.values=values;that.finder=new BlockFormatFinder(format);},apply:function(nodes){var format=this.format,blocks=dom.blockParents(nodes),formatTag=format[0].tags[0],i,len,list,formatter,range;if(blocks.length){for(i=0,len=blocks.length;i<len;i++){if(dom.is(blocks[i],"li")){list=blocks[i].parentNode;formatter=new Editor.ListFormatter(list.nodeName.toLowerCase(),formatTag);range=this.editor.createRange();range.selectNode(blocks[i]);formatter.toggle(range);}else{dom.changeTag(blocks[i],formatTag);}}}else{new BlockFormatter(format,this.values).apply(nodes);}},toggle:function(range){var nodes=RangeUtils.textNodes(range);if(!nodes.length){range.selectNodeContents(range.commonAncestorContainer);nodes=RangeUtils.textNodes(range);if(!nodes.length){nodes=dom.significantChildNodes(range.commonAncestorContainer);}}this.apply(nodes);}});var FormatCommand=Command.extend({init:function(options){options.formatter=options.formatter();Command.fn.init.call(this,options);}});var BlockFormatTool=FormatTool.extend({init:function(options){FormatTool.fn.init.call(this,extend(options,{finder:new BlockFormatFinder(options.format),formatter:function(){return new BlockFormatter(options.format);}}));}});var FormatBlockTool=Tool.extend({init:function(options){Tool.fn.init.call(this,options);this.finder=new BlockFormatFinder([{tags:dom.blockElements}]);},command:function(commandArguments){return new FormatCommand(extend(commandArguments,{formatter:function(){return new GreedyBlockFormatter([{tags:[commandArguments.value]}],{});}}));},update:function(ui,nodes){var list;if(ui.is("select")){list=ui.data("kendoSelectBox");}else{list=ui.find("select").data("kendoSelectBox");}list.close();list.value(this.finder.getFormat(nodes));},initialize:function(ui,initOptions){var editor=initOptions.editor,toolName="formatBlock";new Editor.SelectBox(ui,{dataTextField:"text",dataValueField:"value",dataSource:this.options.items?this.options.items:editor.options.formatBlock,title:editor.options.messages.formatBlock,change:function(e){Tool.exec(editor,toolName,this.value());},highlightFirst:false});ui.closest(".k-widget").removeClass("k-"+toolName).find("*").andSelf().attr("unselectable","on");}});extend(Editor,{BlockFormatFinder:BlockFormatFinder,BlockFormatter:BlockFormatter,GreedyBlockFormatter:GreedyBlockFormatter,FormatCommand:FormatCommand,BlockFormatTool:BlockFormatTool,FormatBlockTool:FormatBlockTool});registerTool("formatBlock",new FormatBlockTool({template:new ToolTemplate({template:EditorUtils.dropDownListTemplate})}));registerFormat("justifyLeft",[{tags:dom.blockElements,attr:{style:{textAlign:"left"}}},{tags:["img"],attr:{style:{"float":"left"}}}]);registerTool("justifyLeft",new BlockFormatTool({format:formats.justifyLeft,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Justify Left"})}));registerFormat("justifyCenter",[{tags:dom.blockElements,attr:{style:{textAlign:"center"}}},{tags:["img"],attr:{style:{display:"block",marginLeft:"auto",marginRight:"auto"}}}]);registerTool("justifyCenter",new BlockFormatTool({format:formats.justifyCenter,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Justify Center"})}));registerFormat("justifyRight",[{tags:dom.blockElements,attr:{style:{textAlign:"right"}}},{tags:["img"],attr:{style:{"float":"right"}}}]);registerTool("justifyRight",new BlockFormatTool({format:formats.justifyRight,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Justify Right"})}));registerFormat("justifyFull",[{tags:dom.blockElements,attr:{style:{textAlign:"justify"}}}]);registerTool("justifyFull",new BlockFormatTool({format:formats.justifyFull,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Justify Full"})}));})(window.kendo.jQuery);(function($){var kendo=window.kendo,extend=$.extend,Editor=kendo.ui.editor,dom=Editor.Dom,Command=Editor.Command,Tool=Editor.Tool,BlockFormatter=Editor.BlockFormatter,normalize=dom.normalize,RangeUtils=Editor.RangeUtils,registerTool=Editor.EditorUtils.registerTool;var ParagraphCommand=Command.extend({init:function(options){this.options=options;Command.fn.init.call(this,options);},exec:function(){var range=this.getRange(),doc=RangeUtils.documentFromRange(range),parent,previous,next,container,emptyParagraphContent=kendo.support.browser.msie?'':'<br _moz_dirty="" />',paragraph,marker,li,heading,rng,blocks='p,h1,h2,h3,h4,h5,h6'.split(','),startInBlock=dom.parentOfType(range.startContainer,blocks),endInBlock=dom.parentOfType(range.endContainer,blocks),shouldTrim=(startInBlock&&!endInBlock)||(!startInBlock&&endInBlock);function clean(node){if(node.firstChild&&dom.is(node.firstChild,'br')){dom.remove(node.firstChild);}if(dom.isDataNode(node)&&!node.nodeValue){node=node.parentNode;}if(node&&!dom.is(node,'img')){while(node.firstChild&&node.firstChild.nodeType==1){node=node.firstChild;}if(node.innerHTML===""){node.innerHTML=emptyParagraphContent;}}}range.deleteContents();marker=dom.create(doc,'a');range.insertNode(marker);if(!marker.parentNode){container=range.commonAncestorContainer;container.innerHTML="";container.appendChild(marker);}normalize(marker.parentNode);li=dom.parentOfType(marker,['li']);heading=dom.parentOfType(marker,'h1,h2,h3,h4,h5,h6'.split(','));if(li){rng=range.cloneRange();rng.selectNode(li);if(!RangeUtils.textNodes(rng).length){paragraph=dom.create(doc,'p');if(li.nextSibling){RangeUtils.split(rng,li.parentNode);}dom.insertAfter(paragraph,li.parentNode);dom.remove(li.parentNode.childNodes.length==1?li.parentNode:li);paragraph.innerHTML=emptyParagraphContent;next=paragraph;}}else if(heading&&!marker.nextSibling){paragraph=dom.create(doc,'p');dom.insertAfter(paragraph,heading);paragraph.innerHTML=emptyParagraphContent;dom.remove(marker);next=paragraph;}if(!next){if(!(li||heading)){new BlockFormatter([{tags:['p']}]).apply([marker]);}range.selectNode(marker);parent=dom.parentOfType(marker,[li?'li':heading?dom.name(heading):'p']);RangeUtils.split(range,parent,shouldTrim);previous=parent.previousSibling;if(dom.is(previous,'li')&&previous.firstChild&&!dom.is(previous.firstChild,'br')){previous=previous.firstChild;}next=parent.nextSibling;if(dom.is(next,'li')&&next.firstChild&&!dom.is(next.firstChild,'br')){next=next.firstChild;}dom.remove(parent);clean(previous);clean(next);normalize(previous);}normalize(next);if(dom.is(next,'img')){range.setStartBefore(next);}else{range.selectNodeContents(next);var textNode=RangeUtils.textNodes(range)[0];if(textNode){range.selectNodeContents(textNode);}}range.collapse(true);dom.scrollTo(next);RangeUtils.selectRange(range);}});var NewLineCommand=Command.extend({init:function(options){this.options=options;Command.fn.init.call(this,options);},exec:function(){var range=this.getRange();range.deleteContents();var br=dom.create(RangeUtils.documentFromRange(range),'br');range.insertNode(br);normalize(br.parentNode);if(!kendo.support.browser.msie&&(!br.nextSibling||dom.isWhitespace(br.nextSibling))){var filler=br.cloneNode(true);filler.setAttribute('_moz_dirty','');dom.insertAfter(filler,br);}range.setStartAfter(br);range.collapse(true);dom.scrollTo(br.nextSibling);RangeUtils.selectRange(range);}});extend(Editor,{ParagraphCommand:ParagraphCommand,NewLineCommand:NewLineCommand});registerTool("insertLineBreak",new Tool({key:13,shift:true,command:NewLineCommand}));registerTool("insertParagraph",new Tool({key:13,command:ParagraphCommand}));})(window.kendo.jQuery);(function($){var kendo=window.kendo,Class=kendo.Class,extend=$.extend,Editor=kendo.ui.editor,dom=Editor.Dom,RangeUtils=Editor.RangeUtils,EditorUtils=Editor.EditorUtils,Command=Editor.Command,ToolTemplate=Editor.ToolTemplate,FormatTool=Editor.FormatTool,BlockFormatFinder=Editor.BlockFormatFinder,textNodes=RangeUtils.textNodes,registerTool=Editor.EditorUtils.registerTool;var ListFormatFinder=BlockFormatFinder.extend({init:function(tag){this.tag=tag;var tags=this.tags=[tag=='ul'?'ol':'ul',tag];BlockFormatFinder.fn.init.call(this,[{tags:tags}]);},isFormatted:function(nodes){var formatNodes=[],formatNode;for(var i=0;i<nodes.length;i++){if((formatNode=this.findFormat(nodes[i]))&&dom.name(formatNode)==this.tag){formatNodes.push(formatNode);}}if(formatNodes.length<1){return false;}if(formatNodes.length!=nodes.length){return false;}for(i=0;i<formatNodes.length;i++){if(formatNodes[i].parentNode!=formatNode.parentNode){break;}if(formatNodes[i]!=formatNode){return false;}}return true;},findSuitable:function(nodes){var candidate=dom.parentOfType(nodes[0],this.tags);if(candidate&&dom.name(candidate)==this.tag){return candidate;}return null;}});var ListFormatter=Class.extend({init:function(tag,unwrapTag){var that=this;that.finder=new ListFormatFinder(tag);that.tag=tag;that.unwrapTag=unwrapTag;},wrap:function(list,nodes){var li=dom.create(list.ownerDocument,"li"),i,node;for(i=0;i<nodes.length;i++){node=nodes[i];if(dom.is(node,'li')){list.appendChild(node);continue;}if(dom.is(node,'ul')||dom.is(node,'ol')){while(node.firstChild){list.appendChild(node.firstChild);}continue;}if(dom.is(node,"td")){while(node.firstChild){li.appendChild(node.firstChild);}list.appendChild(li);node.appendChild(list);list=list.cloneNode(false);li=li.cloneNode(false);continue;}li.appendChild(node);if(dom.isBlock(node)){list.appendChild(li);dom.unwrap(node);li=li.cloneNode(false);}}if(li.firstChild){list.appendChild(li);}},containsAny:function(parent,nodes){for(var i=0;i<nodes.length;i++){if(dom.isAncestorOrSelf(parent,nodes[i])){return true;}}return false;},suitable:function(candidate,nodes){if(candidate.className=="k-marker"){var sibling=candidate.nextSibling;if(sibling&&dom.isBlock(sibling)){return false;}sibling=candidate.previousSibling;if(sibling&&dom.isBlock(sibling)){return false;}}return this.containsAny(candidate,nodes)||dom.isInline(candidate)||candidate.nodeType==3;},split:function(range){var nodes=textNodes(range),start,end;if(nodes.length){start=dom.parentOfType(nodes[0],['li']);end=dom.parentOfType(nodes[nodes.length-1],['li']);range.setStartBefore(start);range.setEndAfter(end);for(var i=0,l=nodes.length;i<l;i++){var formatNode=this.finder.findFormat(nodes[i]);if(formatNode){var parents=$(formatNode).parents("ul,ol");if(parents[0]){RangeUtils.split(range,parents.last()[0],true);}else{RangeUtils.split(range,formatNode,true);}}}}},merge:function(tag,formatNode){var prev=formatNode.previousSibling,next;while(prev&&(prev.className=="k-marker"||(prev.nodeType==3&&dom.isWhitespace(prev)))){prev=prev.previousSibling;}if(prev&&dom.name(prev)==tag){while(formatNode.firstChild){prev.appendChild(formatNode.firstChild);}dom.remove(formatNode);formatNode=prev;}next=formatNode.nextSibling;while(next&&(next.className=="k-marker"||(next.nodeType==3&&dom.isWhitespace(next)))){next=next.nextSibling;}if(next&&dom.name(next)==tag){while(formatNode.lastChild){next.insertBefore(formatNode.lastChild,next.firstChild);}dom.remove(formatNode);}},applyOnSection:function(section,nodes){var tag=this.tag,commonAncestor;if(nodes.length==1){commonAncestor=dom.parentOfType(nodes[0],["ul","ol"]);}else{commonAncestor=dom.commonAncestor.apply(null,nodes);}if(!commonAncestor){commonAncestor=dom.parentOfType(nodes[0],["td"])||nodes[0].ownerDocument.body;}if(dom.isInline(commonAncestor)){commonAncestor=dom.blockParentOrBody(commonAncestor);}var ancestors=[];var formatNode=this.finder.findSuitable(nodes);if(!formatNode){formatNode=new ListFormatFinder(tag=="ul"?"ol":"ul").findSuitable(nodes);}var childNodes=dom.significantChildNodes(commonAncestor);if(!childNodes.length){childNodes=nodes;}if(/table|tbody/.test(dom.name(commonAncestor))){childNodes=$.map(nodes,function(node){return dom.parentOfType(node,["td"]);});}function pushAncestor(){ancestors.push(this);}for(var i=0;i<childNodes.length;i++){var child=childNodes[i];var nodeName=dom.name(child);if(this.suitable(child,nodes)&&(!formatNode||!dom.isAncestorOrSelf(formatNode,child))){if(formatNode&&(nodeName=="ul"||nodeName=="ol")){$.each(child.childNodes,pushAncestor);dom.remove(child);}else{ancestors.push(child);}}}if(ancestors.length==childNodes.length&&commonAncestor!=nodes[0].ownerDocument.body&&!/table|tbody|tr|td/.test(dom.name(commonAncestor))){ancestors=[commonAncestor];}if(!formatNode){formatNode=dom.create(commonAncestor.ownerDocument,tag);dom.insertBefore(formatNode,ancestors[0]);}this.wrap(formatNode,ancestors);if(!dom.is(formatNode,tag)){dom.changeTag(formatNode,tag);}this.merge(tag,formatNode);},apply:function(nodes){var i=0,sections=[],lastSection,lastNodes,section;do{section=dom.parentOfType(nodes[i],["td","body"]);if(!lastSection||section!=lastSection){if(lastSection){sections.push({section:lastSection,nodes:lastNodes});}lastNodes=[nodes[i]];lastSection=section;}else{lastNodes.push(nodes[i]);}i++;}while(i<nodes.length);sections.push({section:lastSection,nodes:lastNodes});for(i=0;i<sections.length;i++){this.applyOnSection(sections[i].section,sections[i].nodes);}},unwrap:function(ul){var fragment=ul.ownerDocument.createDocumentFragment(),unwrapTag=this.unwrapTag,parents,li,p,child;for(li=ul.firstChild;li;li=li.nextSibling){p=dom.create(ul.ownerDocument,unwrapTag||'p');while(li.firstChild){child=li.firstChild;if(dom.isBlock(child)){if(p.firstChild){fragment.appendChild(p);p=dom.create(ul.ownerDocument,unwrapTag||'p');}fragment.appendChild(child);}else{p.appendChild(child);}}if(p.firstChild){fragment.appendChild(p);}}parents=$(ul).parents('ul,ol');if(parents[0]){dom.insertAfter(fragment,parents.last()[0]);parents.last().remove();}else{dom.insertAfter(fragment,ul);}dom.remove(ul);},remove:function(nodes){var formatNode;for(var i=0,l=nodes.length;i<l;i++){formatNode=this.finder.findFormat(nodes[i]);if(formatNode){this.unwrap(formatNode);}}},toggle:function(range){var that=this,nodes=textNodes(range),ancestor=range.commonAncestorContainer;if(!nodes.length){range.selectNodeContents(ancestor);nodes=textNodes(range);if(!nodes.length){var text=ancestor.ownerDocument.createTextNode("");range.startContainer.appendChild(text);nodes=[text];range.selectNode(text.parentNode);}}if(that.finder.isFormatted(nodes)){that.split(range);that.remove(nodes);}else{that.apply(nodes);}}});var ListCommand=Command.extend({init:function(options){options.formatter=new ListFormatter(options.tag);Command.fn.init.call(this,options);}});var ListTool=FormatTool.extend({init:function(options){this.options=options;FormatTool.fn.init.call(this,extend(options,{finder:new ListFormatFinder(options.tag)}));},command:function(commandArguments){return new ListCommand(extend(commandArguments,{tag:this.options.tag}));}});extend(Editor,{ListFormatFinder:ListFormatFinder,ListFormatter:ListFormatter,ListCommand:ListCommand,ListTool:ListTool});registerTool("insertUnorderedList",new ListTool({tag:'ul',template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Remove Link"})}));registerTool("insertOrderedList",new ListTool({tag:'ol',template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Remove Link"})}));})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,Class=kendo.Class,extend=$.extend,Editor=kendo.ui.editor,dom=Editor.Dom,RangeUtils=Editor.RangeUtils,EditorUtils=Editor.EditorUtils,Command=Editor.Command,Tool=Editor.Tool,ToolTemplate=Editor.ToolTemplate,InlineFormatter=Editor.InlineFormatter,InlineFormatFinder=Editor.InlineFormatFinder,textNodes=RangeUtils.textNodes,registerTool=Editor.EditorUtils.registerTool;var LinkFormatFinder=Class.extend({findSuitable:function(sourceNode){return dom.parentOfType(sourceNode,["a"]);}});var LinkFormatter=Class.extend({init:function(){this.finder=new LinkFormatFinder();},apply:function(range,attributes){var nodes=textNodes(range),markers,doc,formatter,a;if(attributes.innerHTML){markers=RangeUtils.getMarkers(range);doc=RangeUtils.documentFromRange(range);range.deleteContents();a=dom.create(doc,"a",attributes);range.insertNode(a);if(markers.length>1){dom.insertAfter(markers[markers.length-1],a);dom.insertAfter(markers[1],a);dom[nodes.length>0?"insertBefore":"insertAfter"](markers[0],a);}}else{formatter=new InlineFormatter([{tags:["a"]}],attributes);formatter.finder=this.finder;formatter.apply(nodes);}}});var UnlinkCommand=Command.extend({init:function(options){options.formatter={toggle:function(range){new InlineFormatter([{tags:["a"]}]).remove(textNodes(range));}};this.options=options;Command.fn.init.call(this,options);}});var LinkCommand=Command.extend({init:function(options){var cmd=this;cmd.options=options;Command.fn.init.call(cmd,options);cmd.attributes=null;cmd.async=true;cmd.formatter=new LinkFormatter();},exec:function(){var that=this,range=that.getRange(),collapsed=range.collapsed,nodes,initialText=null;range=that.lockRange(true);nodes=textNodes(range);function apply(e){var href=$("#k-editor-link-url",dialog.element).val(),title,text,target;if(href&&href!="http://"){that.attributes={href:href};title=$("#k-editor-link-title",dialog.element).val();if(title){that.attributes.title=title;}text=$("#k-editor-link-text",dialog.element).val();if(text!==initialText){that.attributes.innerHTML=text||href;}target=$("#k-editor-link-target",dialog.element).is(":checked");if(target){that.attributes.target="_blank";}that.formatter.apply(range,that.attributes);}close(e);if(that.change){that.change();}}function close(e){e.preventDefault();dialog.destroy();dom.windowFromDocument(RangeUtils.documentFromRange(range)).focus();that.releaseRange(range);}var a=nodes.length?that.formatter.finder.findSuitable(nodes[0]):null;var shouldShowText=nodes.length<=1||(nodes.length==2&&collapsed);var windowContent="<div class='k-editor-dialog'>"+"<ol>"+"<li class='k-form-text-row'><label for='k-editor-link-url'>Web address</label><input type='text' class='k-input' id='k-editor-link-url'></li>"+(shouldShowText?"<li class='k-form-text-row'><label for='k-editor-link-text'>Text</label><input type='text' class='k-input' id='k-editor-link-text'></li>":"")+"<li class='k-form-text-row'><label for='k-editor-link-title'>Tooltip</label><input type='text' class='k-input' id='k-editor-link-title'></li>"+"<li class='k-form-checkbox-row'><input type='checkbox' id='k-editor-link-target'><label for='k-editor-link-target'>Open link in new window</label></li>"+"</ol>"+"<div class='k-button-wrapper'>"+"<button class='k-dialog-insert k-button'>Insert</button>"+"&nbsp;or&nbsp;"+"<a href='#' class='k-dialog-close k-link'>Close</a>"+"</div>"+"</div>";var dialog=EditorUtils.createDialog(windowContent,that.editor,$.extend({},that.editor.options.dialogOptions,{title:"Insert link",close:close})).hide().find(".k-dialog-insert").click(apply).end().find(".k-dialog-close").click(close).end().find(".k-form-text-row input").keydown(function(e){var keys=kendo.keys;if(e.keyCode==keys.ENTER){apply(e);}else if(e.keyCode==keys.ESC){close(e);}}).end().find("#k-editor-link-url").val(a?a.getAttribute("href",2):"http://").end().find("#k-editor-link-text").val(nodes.length>0?(nodes.length==1?nodes[0].nodeValue:nodes[0].nodeValue+nodes[1].nodeValue):"").end().find("#k-editor-link-title").val(a?a.title:"").end().find("#k-editor-link-target").attr("checked",a?a.target=="_blank":false).end().show().data("kendoWindow").center();if(shouldShowText&&nodes.length>0){initialText=$("#k-editor-link-text",dialog.element).val();}$("#k-editor-link-url",dialog.element).focus().select();},redo:function(){var that=this,range=that.lockRange(true);that.formatter.apply(range,that.attributes);that.releaseRange(range);}});var UnlinkTool=Tool.extend({init:function(options){this.options=options;this.finder=new InlineFormatFinder([{tags:["a"]}]);Tool.fn.init.call(this,$.extend(options,{command:UnlinkCommand}));},initialize:function(ui){ui.attr("unselectable","on").addClass("k-state-disabled");},update:function(ui,nodes){ui.toggleClass("k-state-disabled",!this.finder.isFormatted(nodes)).removeClass("k-state-hover");}});extend(kendo.ui.editor,{LinkFormatFinder:LinkFormatFinder,LinkFormatter:LinkFormatter,UnlinkCommand:UnlinkCommand,LinkCommand:LinkCommand,UnlinkTool:UnlinkTool});registerTool("createLink",new Tool({key:"K",ctrl:true,command:LinkCommand,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Create Link"})}));registerTool("unlink",new UnlinkTool({key:"K",ctrl:true,shift:true,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Remove Link"})}));})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,extend=$.extend,Editor=kendo.ui.editor,EditorUtils=Editor.EditorUtils,dom=Editor.Dom,registerTool=EditorUtils.registerTool,ToolTemplate=Editor.ToolTemplate,RangeUtils=Editor.RangeUtils,Command=Editor.Command,keys=kendo.keys,INSERTIMAGE="Insert Image",KEDITORIMAGEURL="#k-editor-image-url",KEDITORIMAGETITLE="#k-editor-image-title";var ImageCommand=Command.extend({init:function(options){var that=this;Command.fn.init.call(that,options);that.async=true;that.attributes={};},insertImage:function(img,range){var attributes=this.attributes;if(attributes.src&&attributes.src!="http://"){if(!img){img=dom.create(RangeUtils.documentFromRange(range),"img",attributes);img.onload=img.onerror=function(){img.removeAttribute("complete");img.removeAttribute("width");img.removeAttribute("height");};range.deleteContents();range.insertNode(img);range.setStartAfter(img);range.setEndAfter(img);RangeUtils.selectRange(range);return true;}else{dom.attr(img,attributes);}}return false;},_dialogTemplate:function(showBrowser){return kendo.template('<div class="k-editor-dialog">'+'# if (showBrowser) { #'+'<div class="k-imagebrowser"></div>'+'# } #'+'<ol>'+'<li class="k-form-text-row">'+'<label for="k-editor-image-url">#: messages.imageWebAddress #</label>'+'<input type="text" class="k-input" id="k-editor-image-url">'+'</li>'+'<li class="k-form-text-row">'+'<label for="k-editor-image-title">#: messages.imageAltText #</label>'+'<input type="text" class="k-input" id="k-editor-image-title">'+'</li>'+'</ol>'+'<div class="k-button-wrapper">'+'<button class="k-dialog-insert k-button">#: messages.dialogInsert #</button>'+'&nbsp;#: messages.dialogButtonSeparator #&nbsp;'+'<a href="\\#" class="k-dialog-close k-link">#: messages.dialogCancel #</a>'+'</div>'+'</div>')({messages:this.editor.options.messages,showBrowser:showBrowser});},redo:function(){var that=this,range=that.lockRange();if(!that.insertImage(RangeUtils.image(range),range)){that.releaseRange(range);}},exec:function(){var that=this,range=that.lockRange(),applied=false,img=RangeUtils.image(range),dialog,dialogWidth,options=that.editor.options;function apply(e){that.attributes={src:$(KEDITORIMAGEURL,dialog.element).val(),alt:$(KEDITORIMAGETITLE,dialog.element).val()};applied=that.insertImage(img,range);close(e);if(that.change){that.change();}}function close(e){e.preventDefault();dialog.destroy();dom.windowFromDocument(RangeUtils.documentFromRange(range)).focus();if(!applied){that.releaseRange(range);}}function keyDown(e){if(e.keyCode==keys.ENTER){apply(e);}else if(e.keyCode==keys.ESC){close(e);}}var imageBrowser=options.imageBrowser;var showBrowser=!!(kendo.ui.ImageBrowser&&imageBrowser&&imageBrowser.transport&&imageBrowser.transport.read!==undefined);dialogWidth=showBrowser?{width:"960px"}:{};dialog=EditorUtils.createDialog(that._dialogTemplate(showBrowser),that.editor,extend(dialogWidth,options.dialogOptions,{title:INSERTIMAGE,close:close,resizable:showBrowser,activate:function(){if(showBrowser){var that=this;new kendo.ui.ImageBrowser(that.element.find(".k-imagebrowser"),extend({},imageBrowser,{change:function(){that.element.find(KEDITORIMAGEURL).val(this.value());},apply:apply}));}}})).hide().find(".k-dialog-insert").click(apply).end().find(".k-dialog-close").click(close).end().find(".k-form-text-row input").keydown(keyDown).end().find(KEDITORIMAGEURL).val(img?img.getAttribute("src",2):"http://").end().find(KEDITORIMAGETITLE).val(img?img.alt:"").end().show().data("kendoWindow").center();$(KEDITORIMAGEURL,dialog.element).focus().select();}});kendo.ui.editor.ImageCommand=ImageCommand;registerTool("insertImage",new Editor.Tool({command:ImageCommand,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:INSERTIMAGE})}));})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,Widget=kendo.ui.Widget,DropDownList=kendo.ui.DropDownList,Editor=kendo.ui.editor,dom=Editor.Dom,CHANGE="change",KSTATESELECTED="k-state-selected",SELECTEDCLASS="."+KSTATESELECTED,SELECTEDCOLORCLASS=".k-selected-color",UNSELECTABLE="unselectable",BACKGROUNDCOLOR="background-color",ARIASELECTED="aria-selected",ARIALABELLEDBY="aria-labelledby",keys=kendo.keys,template=kendo.template('<div class="k-colorpicker-popup">'+'<ul class="k-reset">'+'# for(var i = 0; i < colors.length; i++) { #'+'<li #=(id && i === 0) ? "id=\\""+id+"\\" aria-selected=\\"true\\"" : "" # class="k-item #= colors[i] == value ? "k-state-selected" : "" #" aria-label="\\##= colors[i]#">'+'<div style="background-color:\\##= colors[i] #"></div>'+'</li>'+'# } #'+'</ul>'+'</div>');var ColorPicker=Widget.extend({init:function(element,options){var that=this,ariaId;Widget.fn.init.call(that,element,options);element=that.element;options=that.options;that._value=options.value;that._ariaId=ariaId=options.ariaId;if(ariaId){element.attr(ARIALABELLEDBY,ariaId);}that.popup=$(template({colors:options.colors,value:options.value.substring(1),id:ariaId})).kendoPopup({anchor:element,toggleTarget:element.find(".k-icon")}).delegate(".k-item","click",function(e){that.select($(e.currentTarget).find("div").css(BACKGROUNDCOLOR));}).find("*").attr(UNSELECTABLE,"on").end().data("kendoPopup");element.attr("tabIndex",0).keydown(function(e){that.keydown(e);}).focus(function(){element.css("outline","1px dotted #000");}).blur(function(){element.css("outline","");}).delegate(".k-tool-icon","click",function(){that.select();}).find("*").attr(UNSELECTABLE,"on");if(that._value){element.find(SELECTEDCOLORCLASS).css(BACKGROUNDCOLOR,that._value);}},options:{name:"ColorPicker",colors:"000000,7f7f7f,880015,ed1c24,ff7f27,fff200,22b14c,00a2e8,3f48cc,a349a4,ffffff,c3c3c3,b97a57,ffaec9,ffc90e,efe4b0,b5e61d,99d9ea,7092be,c8bfe7".split(","),value:null},events:[CHANGE],select:function(color){var that=this;if(color){color=dom.toHex(color);if(!that.trigger(CHANGE,{value:color})){that.value(color);that.close();}}else{that.trigger(CHANGE,{value:that._value});}},open:function(){this.popup.open();},close:function(){this.popup.close();},toggle:function(){this.popup.toggle();},_applyAriaAttributes:function(prev,next){var that=this;that.element.removeAttr(ARIALABELLEDBY);that.element.attr(ARIALABELLEDBY,that._ariaId);prev.removeAttr("id");prev.attr(ARIASELECTED,false);next.attr({id:that._ariaId,"aria-selected":true});},keydown:function(e){var that=this,popup=that.popup.element,visible=that.popup.visible(),selected,next,prev,preventDefault=false,keyCode=e.keyCode;if(keyCode==keys.DOWN){if(!visible){that.open();}else{selected=popup.find(SELECTEDCLASS);if(selected[0]){next=selected.next();}else{next=popup.find("li:first");}if(next[0]){selected.removeClass(KSTATESELECTED);next.addClass(KSTATESELECTED);that._applyAriaAttributes(selected,next);}}preventDefault=true;}else if(keyCode==keys.UP){if(visible){selected=popup.find(SELECTEDCLASS);prev=selected.prev();if(prev[0]){selected.removeClass(KSTATESELECTED);prev.addClass(KSTATESELECTED);that._applyAriaAttributes(selected,prev);}}preventDefault=true;}else if(keyCode==keys.TAB||keyCode==keys.RIGHT||keyCode==keys.LEFT){that.close();}else if(keyCode==keys.ENTER){popup.find(SELECTEDCLASS).click();preventDefault=true;}if(preventDefault){e.preventDefault();}},value:function(value){var that=this;if(value===undefined){return that._value;}else{value=dom.toHex(value);that._value=value;that.element.find(SELECTEDCOLORCLASS).css(BACKGROUNDCOLOR,value);}}});var SelectBox=DropDownList.extend({init:function(element,options){var that=this;DropDownList.fn.init.call(that,element,options);that.value(that.options.title);},options:{name:"SelectBox"},value:function(value){var that=this,result=DropDownList.fn.value.call(that,value);if(value===undefined){return result;}if(value!==DropDownList.fn.value.call(that)){that.text(that.options.title);that._current.removeClass("k-state-selected");that.current(null);that._oldIndex=that.selectedIndex=-1;}}});kendo.ui.editor.ColorPicker=ColorPicker;kendo.ui.editor.SelectBox=SelectBox;})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,Class=kendo.Class,extend=$.extend,Editor=kendo.ui.editor,dom=Editor.Dom,EditorUtils=Editor.EditorUtils,registerTool=EditorUtils.registerTool,Command=Editor.Command,Tool=Editor.Tool,ToolTemplate=Editor.ToolTemplate,RangeUtils=Editor.RangeUtils,blockElements=dom.blockElements,BlockFormatFinder=Editor.BlockFormatFinder,BlockFormatter=Editor.BlockFormatter;function indent(node,value){var isRtl=$(node).css("direction")=="rtl",indentDirection=isRtl?"Right":"Left",property=dom.name(node)!="td"?"margin"+indentDirection:"padding"+indentDirection;if(value===undefined){return node.style[property]||0;}else{if(value>0){node.style[property]=value+"px";}else{node.style[property]="";if(!node.style.cssText){node.removeAttribute("style");}}}}var IndentFormatter=Class.extend({init:function(){this.finder=new BlockFormatFinder([{tags:dom.blockElements}]);},apply:function(nodes){var formatNodes=this.finder.findSuitable(nodes),targets=[],i,len,formatNode,parentList,sibling;if(formatNodes.length){for(i=0,len=formatNodes.length;i<len;i++){if(dom.is(formatNodes[i],"li")){if(!$(formatNodes[i]).index()){targets.push(formatNodes[i].parentNode);}else if($.inArray(formatNodes[i].parentNode,targets)<0){targets.push(formatNodes[i]);}}else{targets.push(formatNodes[i]);}}while(targets.length){formatNode=targets.shift();if(dom.is(formatNode,"li")){parentList=formatNode.parentNode;sibling=$(formatNode).prev("li");var siblingList=sibling.find("ul,ol").last();var nestedList=$(formatNode).children("ul,ol")[0];if(nestedList&&sibling[0]){if(siblingList[0]){siblingList.append(formatNode);siblingList.append($(nestedList).children());dom.remove(nestedList);}else{sibling.append(nestedList);nestedList.insertBefore(formatNode,nestedList.firstChild);}}else{nestedList=sibling.children("ul,ol")[0];if(!nestedList){nestedList=dom.create(formatNode.ownerDocument,dom.name(parentList));sibling.append(nestedList);}while(formatNode&&formatNode.parentNode==parentList){nestedList.appendChild(formatNode);formatNode=targets.shift();}}}else{var marginLeft=parseInt(indent(formatNode),10)+30;indent(formatNode,marginLeft);for(var targetIndex=0;targetIndex<targets.length;targetIndex++){if($.contains(formatNode,targets[targetIndex])){targets.splice(targetIndex,1);}}}}}else{var formatter=new BlockFormatter([{tags:"p"}],{style:{marginLeft:30}});formatter.apply(nodes);}},remove:function(nodes){var formatNodes=this.finder.findSuitable(nodes),targetNode,i,len,list,listParent,siblings,formatNode,marginLeft;for(i=0,len=formatNodes.length;i<len;i++){formatNode=$(formatNodes[i]);if(formatNode.is("li")){list=formatNode.parent();listParent=list.parent();if(listParent.is("li,ul,ol")&&!indent(list[0])){if(targetNode&&$.contains(targetNode,listParent[0])){continue;}siblings=formatNode.nextAll("li");if(siblings.length){$(list[0].cloneNode(false)).appendTo(formatNode).append(siblings);}if(listParent.is("li")){formatNode.insertAfter(listParent);}else{formatNode.appendTo(listParent);}if(!list.children("li").length){list.remove();}continue;}else{if(targetNode==list[0]){continue;}targetNode=list[0];}}else{targetNode=formatNodes[i];}marginLeft=parseInt(indent(targetNode),10)-30;indent(targetNode,marginLeft);}}});var IndentCommand=Command.extend({init:function(options){options.formatter={toggle:function(range){new IndentFormatter().apply(RangeUtils.nodes(range));}};Command.fn.init.call(this,options);}});var OutdentCommand=Command.extend({init:function(options){options.formatter={toggle:function(range){new IndentFormatter().remove(RangeUtils.nodes(range));}};Command.fn.init.call(this,options);}});var OutdentTool=Tool.extend({init:function(options){Tool.fn.init.call(this,extend(options,{command:OutdentCommand}));this.finder=new BlockFormatFinder([{tags:blockElements}]);},initialize:function(ui){ui.attr("unselectable","on").addClass("k-state-disabled");},update:function(ui,nodes){var suitable=this.finder.findSuitable(nodes),isOutdentable,listParentsCount,i,len;for(i=0,len=suitable.length;i<len;i++){isOutdentable=indent(suitable[i]);if(!isOutdentable){listParentsCount=$(suitable[i]).parents("ul,ol").length;isOutdentable=(dom.is(suitable[i],"li")&&(listParentsCount>1||indent(suitable[i].parentNode)))||(dom.ofType(suitable[i],["ul","ol"])&&listParentsCount>0);}if(isOutdentable){ui.removeClass("k-state-disabled");return;}}ui.addClass("k-state-disabled").removeClass("k-state-hover");}});extend(Editor,{IndentFormatter:IndentFormatter,IndentCommand:IndentCommand,OutdentCommand:OutdentCommand,OutdentTool:OutdentTool});registerTool("indent",new Tool({command:IndentCommand,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Indent"})}));registerTool("outdent",new OutdentTool({template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"Outdent"})}));})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,extend=$.extend,Editor=kendo.ui.editor,dom=Editor.Dom,RangeUtils=Editor.RangeUtils,EditorUtils=Editor.EditorUtils,Command=Editor.Command,Tool=Editor.Tool,ToolTemplate=Editor.ToolTemplate;var ViewHtmlCommand=Command.extend({init:function(options){var cmd=this;cmd.options=options;Command.fn.init.call(cmd,options);cmd.attributes=null;cmd.async=true;},exec:function(){var that=this,editor=that.editor,range=editor.getRange(),dialog=$(ViewHtmlCommand.template).appendTo(document.body),content=ViewHtmlCommand.indent(editor.value()),textarea=".k-editor-textarea";function apply(e){editor.value(dialog.find(textarea).val());close(e);if(that.change){that.change();}editor.trigger("change");}function close(e){e.preventDefault();dialog.data("kendoWindow").destroy();dom.windowFromDocument(RangeUtils.documentFromRange(range)).focus();}dialog.kendoWindow(extend({},editor.options.dialogOptions,{title:"View HTML",close:close})).hide().find(textarea).val(content).end().find(".k-dialog-update").click(apply).end().find(".k-dialog-close").click(close).end().show().data("kendoWindow").center();dialog.find(textarea).focus();}});extend(ViewHtmlCommand,{template:"<div class='k-editor-dialog'>"+"<textarea class='k-editor-textarea k-input'></textarea>"+"<div class='k-button-wrapper'>"+"<button class='k-dialog-update k-button'>Update</button>"+"&nbsp;or&nbsp;"+"<a href='#' class='k-dialog-close k-link'>Close</a>"+"</div>"+"</div>",indent:function(content){return content.replace(/<\/(p|li|ul|ol|h[1-6]|table|tr|td|th)>/ig,"</$1>\n").replace(/<(ul|ol)([^>]*)><li/ig,"<$1$2>\n<li").replace(/<br \/>/ig,"<br />\n").replace(/\n$/,"");}});kendo.ui.editor.ViewHtmlCommand=ViewHtmlCommand;Editor.EditorUtils.registerTool("viewHtml",new Tool({command:ViewHtmlCommand,template:new ToolTemplate({template:EditorUtils.buttonTemplate,title:"View HTML"})}));})(window.kendo.jQuery);(function($){var kendo=window.kendo,Class=kendo.Class,extend=$.extend,Editor=kendo.ui.editor,RangeUtils=Editor.RangeUtils,Marker=Editor.Marker;var PendingFormats=Class.extend({init:function(editor){this.editor=editor;this.formats=[];},apply:function(range){if(!this.hasPending()){return;}var marker=new Marker();marker.addCaret(range);var caret=range.startContainer.childNodes[range.startOffset];var target=caret.previousSibling;if(!target.nodeValue){target=target.previousSibling;}range.setStart(target,target.nodeValue.length-1);marker.add(range);if(!RangeUtils.textNodes(range).length){marker.remove(range);range.collapse(true);this.editor.selectRange(range);return;}var textNode=marker.end.previousSibling.previousSibling;var pendingFormat,formats=this.formats;for(var i=0;i<formats.length;i++){pendingFormat=formats[i];var command=pendingFormat.command(extend({range:range},pendingFormat.options.params));command.editor=this.editor;command.exec();range.selectNode(textNode);}marker.remove(range);if(textNode.parentNode){range.setStart(textNode,1);range.collapse(true);}this.clear();this.editor.selectRange(range);},hasPending:function(){return this.formats.length>0;},isPending:function(format){return!!this.getPending(format);},getPending:function(format){var formats=this.formats;for(var i=0;i<formats.length;i++){if(formats[i].name==format){return formats[i];}}return;},toggle:function(format){var formats=this.formats;for(var i=0;i<formats.length;i++){if(formats[i].name==format.name){if(formats[i].params&&formats[i].params.value!=format.params.value){formats[i].params.value=format.params.value;}else{formats.splice(i,1);}return;}}formats.push(format);},clear:function(){this.formats=[];}});extend(Editor,{PendingFormats:PendingFormats});})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,keys=kendo.keys,ui=kendo.ui,Widget=ui.Widget,extractFormat=kendo._extractFormat,parse=kendo.parseFloat,placeholderSupported=kendo.support.placeholder,getCulture=kendo.getCulture,CHANGE="change",DISABLED="disabled",INPUT="k-input",SPIN="spin",ns=".kendoNumericTextBox",TOUCHEND="touchend",MOUSELEAVE="mouseleave"+ns,MOUSEDOWN="touchstart"+ns+" mousedown"+ns,MOUSEUP="touchcancel"+ns+" "+"touchend"+ns+" mouseup"+ns+" "+MOUSELEAVE,HOVEREVENTS="mouseenter"+ns+" "+MOUSELEAVE,DEFAULT="k-state-default",FOCUSED="k-state-focused",HOVER="k-state-hover",POINT=".",SELECTED="k-state-selected",STATEDISABLED="k-state-disabled",NULL=null,proxy=$.proxy,decimals={190:".",188:","};var NumericTextBox=Widget.extend({init:function(element,options){var that=this,isStep=options&&options.step!==undefined,min,max,step,value;Widget.fn.init.call(that,element,options);options=that.options;element=that.element.addClass(INPUT).on("keydown"+ns,proxy(that._keydown,that)).on("paste"+ns,proxy(that._paste,that)).on("blur"+ns,proxy(that._focusout,that)).attr("role","spinbutton");options.placeholder=options.placeholder||element.attr("placeholder");that._reset();that._wrapper();that._arrows();that._input();that._text.on(TOUCHEND+ns,function(){that._toggleText(false);});if(!kendo.support.mobileOS){that._text.on("focus"+ns,proxy(that._click,that));}min=that.min(element.attr("min"));max=that.max(element.attr("max"));step=that._parse(element.attr("step"));if(options.min===NULL&&min!==NULL){options.min=min;}if(options.max===NULL&&max!==NULL){options.max=max;}if(!isStep&&step!==NULL){options.step=step;}element.attr("aria-valuemin",options.min).attr("aria-valuemax",options.max);options.format=extractFormat(options.format);value=options.value;that.value(value!==NULL?value:element.val());that.enable(!element.is('[disabled]'));kendo.notify(that);},options:{name:"NumericTextBox",decimals:NULL,min:NULL,max:NULL,value:NULL,step:1,culture:"",format:"n",spinners:true,placeholder:"",upArrowText:"Increase value",downArrowText:"Decrease value"},events:[CHANGE,SPIN],enable:function(enable){var that=this,text=that._text.add(that.element),wrapper=that._inputWrapper.off(HOVEREVENTS),upArrow=that._upArrow.off(MOUSEDOWN),downArrow=that._downArrow.off(MOUSEDOWN);that._toggleText(true);if(enable===false){wrapper.removeClass(DEFAULT).addClass(STATEDISABLED);text.attr(DISABLED,DISABLED);}else{wrapper.addClass(DEFAULT).removeClass(STATEDISABLED).on(HOVEREVENTS,that._toggleHover);text.removeAttr(DISABLED);upArrow.on(MOUSEDOWN,function(e){e.preventDefault();that._spin(1);that._upArrow.addClass(SELECTED);});downArrow.on(MOUSEDOWN,function(e){e.preventDefault();that._spin(-1);that._downArrow.addClass(SELECTED);});}},destroy:function(){var that=this;that.element.add(that._text).add(that._upArrow).add(that._downArrow).add(that._inputWrapper).off(ns);if(that._form){that._form.off("reset",that._resetHandler);}Widget.fn.destroy.call(that);},min:function(value){return this._option("min",value);},max:function(value){return this._option("max",value);},step:function(value){return this._option("step",value);},value:function(value){var that=this,adjusted;if(value===undefined){return that._value;}value=that._parse(value);adjusted=that._adjust(value);if(value!==adjusted){return;}that._update(value);that._old=that._value;},focus:function(){this._focusin();},_adjust:function(value){var that=this,options=that.options,min=options.min,max=options.max;if(value===NULL){return value;}if(min!==NULL&&value<min){value=min;}else if(max!==NULL&&value>max){value=max;}return value;},_arrows:function(){var that=this,arrows,options=that.options,spinners=options.spinners,element=that.element;arrows=element.siblings(".k-icon");if(!arrows[0]){arrows=$(buttonHtml("n",options.upArrowText)+buttonHtml("s",options.downArrowText)).insertAfter(element);arrows.wrapAll('<span class="k-select"/>');}arrows.on(MOUSEUP,function(e){clearTimeout(that._spinning);arrows.removeClass(SELECTED);});if(!spinners){arrows.toggle(spinners);that._inputWrapper.addClass("k-expand-padding");}that._upArrow=arrows.eq(0);that._downArrow=arrows.eq(1);},_blur:function(){var that=this;that._toggleText(true);that._change(that.element.val());},_click:function(e){var that=this;clearTimeout(that._focusing);that._focusing=setTimeout(function(){var input=e.target,idx=caret(input),value=input.value.substring(0,idx),format=that._format(that.options.format),group=format[","],groupRegExp=new RegExp("\\"+group,"g"),extractRegExp=new RegExp("([\\d\\"+group+"]+)(\\"+format[POINT]+")?(\\d+)?"),result=extractRegExp.exec(value),caretPosition=0;if(result){caretPosition=result[0].replace(groupRegExp,"").length;if(value.indexOf("(")!=-1&&that._value<0){caretPosition++;}}that._focusin();caret(that.element[0],caretPosition);});},_change:function(value){var that=this;that._update(value);value=that._value;if(that._old!=value){that._old=value;that.trigger(CHANGE);that.element.trigger(CHANGE);}},_culture:function(culture){return culture||getCulture(this.options.culture);},_focusin:function(){var that=this;that._inputWrapper.addClass(FOCUSED);that._toggleText(false);that.element[0].focus();},_focusout:function(){var that=this;clearTimeout(that._focusing);that._inputWrapper.removeClass(FOCUSED);that._blur();},_format:function(format,culture){var numberFormat=this._culture(culture).numberFormat;format=format.toLowerCase();if(format.indexOf("c")>-1){numberFormat=numberFormat.currency;}else if(format.indexOf("p")>-1){numberFormat=numberFormat.percent;}return numberFormat;},_input:function(){var that=this,CLASSNAME="k-formatted-value",element=that.element.show()[0],accessKey=element.accessKey,wrapper=that.wrapper,DOMInput,text;text=wrapper.find(POINT+CLASSNAME);if(!text[0]){text=$("<input />").insertBefore(element).addClass(CLASSNAME);}DOMInput=text[0];DOMInput.type="text";DOMInput.style.cssText=element.style.cssText;DOMInput.tabIndex=element.tabIndex;element.tabIndex=0;element.type="text";text.attr("placeholder",that.options.placeholder);if(accessKey){text.attr("accesskey",accessKey);element.accessKey="";}that._text=text.attr("readonly",true).addClass(element.className);},_keydown:function(e){var that=this,key=e.keyCode;if(key==keys.DOWN){that._step(-1);}else if(key==keys.UP){that._step(1);}else if(key==keys.ENTER){that._change(that.element.val());}if(that._prevent(key,e.shiftKey)&&!e.ctrlKey){e.preventDefault();}},_paste:function(e){var that=this,element=e.target,value=element.value;setTimeout(function(){if(that._parse(element.value)===NULL){that._update(value);}});},_prevent:function(key,shiftKey){var that=this,element=that.element[0],value=element.value,options=that.options,min=options.min,numberFormat=that._format(options.format),separator=numberFormat[POINT],precision=options.decimals,idx=caret(element),prevent=true,number;if(precision===NULL){precision=numberFormat.decimals;}if((key>16&&key<21)||(key>32&&key<37)||(key>47&&key<58)||(key>95&&key<106)||key==keys.INSERT||key==keys.DELETE||key==keys.LEFT||key==keys.RIGHT||key==keys.TAB||key==keys.BACKSPACE||key==keys.ENTER){prevent=false;if(shiftKey){number=parseInt(String.fromCharCode(key),10);if(!isNaN(number)){element.value=value.substring(0,idx)+number+value.substring(idx);prevent=true;}}}else if(decimals[key]===separator&&precision>0&&value.indexOf(separator)==-1){prevent=false;}else if((min===NULL||min<0)&&value.indexOf("-")==-1&&(key==189||key==109)&&idx===0){prevent=false;}else if(key==110&&precision>0&&value.indexOf(separator)==-1){element.value=value.substring(0,idx)+separator+value.substring(idx);}return prevent;},_option:function(option,value){var that=this,options=that.options;if(value===undefined){return options[option];}value=that._parse(value);if(!value&&option==="step"){return;}options[option]=that._parse(value);that.element.attr("aria-value"+option,options[option]);},_spin:function(step,timeout){var that=this;timeout=timeout||500;clearTimeout(that._spinning);that._spinning=setTimeout(function(){that._spin(step,50);},timeout);that._step(step);},_step:function(step){var that=this,element=that.element,value=that._parse(element.val())||0;if(document.activeElement!=element[0]){that._focusin();}value+=that.options.step*step;that._update(that._adjust(value));that.trigger(SPIN);},_toggleHover:function(e){$(e.currentTarget).toggleClass(HOVER,e.type==="mouseenter");},_toggleText:function(toggle){var that=this;that._text.toggle(toggle);that.element.toggle(!toggle);},_parse:function(value,culture){return parse(value,this._culture(culture),this.options.format);},_update:function(value){var that=this,options=that.options,format=options.format,decimals=options.decimals,culture=that._culture(),numberFormat=that._format(format,culture),isNotNull;if(decimals===NULL){decimals=numberFormat.decimals;}value=that._parse(value,culture);isNotNull=value!==NULL;if(isNotNull){value=parseFloat(value.toFixed(decimals));}that._value=value=that._adjust(value);that._placeholder(kendo.toString(value,format,culture));that.element.val(isNotNull?value.toString().replace(POINT,numberFormat[POINT]):"").attr("aria-valuenow",value);},_placeholder:function(value){this._text.val(value);if(!placeholderSupported&&!value){this._text.val(this.options.placeholder);}},_wrapper:function(){var that=this,element=that.element,DOMElement=element[0],wrapper;wrapper=element.parents(".k-numerictextbox");if(!wrapper.is("span.k-numerictextbox")){wrapper=element.hide().wrap('<span class="k-numeric-wrap k-state-default" />').parent();wrapper=wrapper.wrap("<span/>").parent();}wrapper[0].style.cssText=DOMElement.style.cssText;DOMElement.style.width="";that.wrapper=wrapper.addClass("k-widget k-numerictextbox").addClass(DOMElement.className).css("display","");that._inputWrapper=$(wrapper[0].firstChild);},_reset:function(){var that=this,element=that.element,form=element.closest("form");if(form[0]){that._resetHandler=function(){setTimeout(function(){that.value(element[0].value);});};that._form=form.on("reset",that._resetHandler);}}});function buttonHtml(className,text){return'<span unselectable="on" class="k-link"><span unselectable="on" class="k-icon k-i-arrow-'+className+'" title="'+text+'">'+text+'</span></span>';}function caret(element,position){var range,isPosition=position!==undefined;if(document.selection){if($(element).is(":visible")){element.focus();}range=document.selection.createRange();if(isPosition){range.move("character",position);range.select();}else{var rangeElement=element.createTextRange(),rangeDuplicated=rangeElement.duplicate();rangeElement.moveToBookmark(range.getBookmark());rangeDuplicated.setEndPoint('EndToStart',rangeElement);position=rangeDuplicated.text.length;}}else if(element.selectionStart!==undefined){if(isPosition){element.focus();element.setSelectionRange(position,position);}else{position=element.selectionStart;}}return position;}ui.plugin(NumericTextBox);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,touch=(kendo.support.touch&&kendo.support.mobileOS)||kendo.support.pointers,MOUSEDOWN=kendo.support.mousedown,CLICK=kendo.support.click,extend=$.extend,proxy=$.proxy,each=$.each,template=kendo.template,keys=kendo.keys,Widget=ui.Widget,excludedNodesRegExp=/^(ul|a|div)$/i,NS=".kendoMenu",IMG="img",OPEN="open",MENU="k-menu",LINK="k-link",LAST="k-last",CLOSE="close",TIMER="timer",FIRST="k-first",IMAGE="k-image",SELECT="select",ZINDEX="zIndex",MOUSEENTER="mouseenter",MOUSELEAVE="mouseleave",KENDOPOPUP="kendoPopup",DEFAULTSTATE="k-state-default",HOVERSTATE="k-state-hover",FOCUSEDSTATE="k-state-focused",DISABLEDSTATE="k-state-disabled",groupSelector=".k-group",ACTIVESTATE="k-state-active",allItemsSelector=":not(.k-list) > .k-item",disabledSelector=".k-item.k-state-disabled",itemSelector=".k-item:not(.k-state-disabled)",linkSelector=".k-item:not(.k-state-disabled) > .k-link",templateSelector="div:not(.k-animation-container,.k-list-container)",templates={content:template("<div class='k-content k-group'>#= content(item) #</div>"),group:template("<ul class='#= groupCssClass(group) #'#= groupAttributes(group) # role='menu' aria-hidden='true'>"+"#= renderItems(data) #"+"</ul>"),itemWrapper:template("<#= tag(item) # class='#= textClass(item) #'#= textAttributes(item) #>"+"#= image(item) ##= sprite(item) ##= text(item) #"+"#= arrow(data) #"+"</#= tag(item) #>"),item:template("<li class='#= wrapperCssClass(group, item) #' role='menuitem' #=item.items ? \"aria-haspopup='true'\": \"\"#"+"#=item.enabled === false ? \"aria-disabled='true'\" : ''#>"+"#= itemWrapper(data) #"+"# if (item.items) { #"+"#= subGroup({ items: item.items, menu: menu, group: { expanded: item.expanded } }) #"+"# } #"+"</li>"),image:template("<img class='k-image' alt='' src='#= imageUrl #' />"),arrow:template("<span class='#= arrowClass(item, group) #'></span>"),sprite:template("<span class='k-sprite #= spriteCssClass #'></span>"),empty:template("")},rendering={wrapperCssClass:function(group,item){var result="k-item",index=item.index;if(item.enabled===false){result+=" k-state-disabled";}else{result+=" k-state-default";}if(group.firstLevel&&index===0){result+=" k-first";}if(index==group.length-1){result+=" k-last";}return result;},textClass:function(item){return LINK;},textAttributes:function(item){return item.url?" href='"+item.url+"'":"";},arrowClass:function(item,group){var result="k-icon";if(group.horizontal){result+=" k-i-arrow-s";}else{result+=" k-i-arrow-e";}return result;},text:function(item){return item.encoded===false?item.text:kendo.htmlEncode(item.text);},tag:function(item){return item.url?"a":"span";},groupAttributes:function(group){return group.expanded!==true?" style='display:none'":"";},groupCssClass:function(group){return"k-group";},content:function(item){return item.content?item.content:"&nbsp;";}};function getEffectDirection(direction,root){direction=direction.split(" ")[!root+0]||direction;return direction.replace("top","up").replace("bottom","down");}function parseDirection(direction,root,isRtl){direction=direction.split(" ")[!root+0]||direction;var output={origin:["bottom",(isRtl?"right":"left")],position:["top",(isRtl?"right":"left")]},horizontal=/left|right/.test(direction);if(horizontal){output.origin=["top",direction];output.position[1]=kendo.directions[direction].reverse;}else{output.origin[0]=direction;output.position[0]=kendo.directions[direction].reverse;}output.origin=output.origin.join(" ");output.position=output.position.join(" ");return output;}function contains(parent,child){try{return $.contains(parent,child);}catch(e){return false;}}function updateItemClasses(item){item=$(item);item.addClass("k-item").children(IMG).addClass(IMAGE);item.children("a").addClass(LINK).children(IMG).addClass(IMAGE);item.filter(":not([disabled])").addClass(DEFAULTSTATE);item.filter(".k-separator:empty").append("&nbsp;");item.filter("li[disabled]").addClass(DISABLEDSTATE).removeAttr("disabled").attr("aria-disabled",true);item.children("a").filter(":focus").parent().addClass(ACTIVESTATE);if(!item.filter("[role]").length){item.attr("role","menuitem");}if(!item.children("."+LINK).length){item.contents().filter(function(){return(!this.nodeName.match(excludedNodesRegExp)&&!(this.nodeType==3&&!$.trim(this.nodeValue)));}).wrapAll("<span class='"+LINK+"'/>");}updateArrow(item);updateFirstLast(item);}function updateArrow(item){item=$(item);item.find(".k-icon").remove();item.filter(":has(.k-group)").children(".k-link:not(:has([class*=k-i-arrow]))").each(function(){var item=$(this),parent=item.parent().parent();item.append("<span class='k-icon "+(parent.hasClass(MENU+"-horizontal")?"k-i-arrow-s":"k-i-arrow-e")+"'/>");});}function updateFirstLast(item){item=$(item);item.filter(".k-first:not(:first-child)").removeClass(FIRST);item.filter(".k-last:not(:last-child)").removeClass(LAST);item.filter(":first-child").addClass(FIRST);item.filter(":last-child").addClass(LAST);}var Menu=Widget.extend({init:function(element,options){var that=this;Widget.fn.init.call(that,element,options);element=that.wrapper=that.element;options=that.options;if(options.dataSource){that.element.empty();that.append(options.dataSource,element);}that._updateClasses();if(options.animation===false){options.animation={open:{effects:{}},close:{hide:true,effects:{}}};}that.nextItemZIndex=100;that._tabindex();element.on("touchstart",function(e){that.element[0].blur();that.element[0].focus();setTimeout(function(){that._moveHover([],$(kendo.eventTarget(e)).closest(allItemsSelector));},200);}).on("MSPointerDown",function(e){that._oldHoverItem=$(e.target).closest(allItemsSelector);}).on(CLICK+NS,disabledSelector,false).on(CLICK+NS,itemSelector,proxy(that._click,that)).on("keydown"+NS,proxy(that._keydown,that)).on("focus"+NS,proxy(that._focus,that)).on("blur"+NS,proxy(that._removeHoverItem,that)).on(MOUSEENTER+NS,itemSelector,proxy(that._mouseenter,that)).on(MOUSELEAVE+NS,itemSelector,proxy(that._mouseleave,that)).on(MOUSEENTER+NS+" "+MOUSELEAVE+NS+" "+MOUSEDOWN+NS+" "+CLICK+NS,linkSelector,proxy(that._toggleHover,that));if(options.openOnClick){that.clicked=false;that._documentClickHandler=proxy(that._documentClick,that);$(document).click(that._documentClickHandler);}element.attr("role","menubar");if(element[0].id){that._ariaId=kendo.format("{0}_mn_active",element[0].id);}kendo.notify(that);},events:[OPEN,CLOSE,SELECT],options:{name:"Menu",animation:{open:{duration:200},close:{duration:100}},orientation:"horizontal",direction:"default",openOnClick:false,closeOnClick:true,hoverDelay:100},destroy:function(){var that=this;Widget.fn.destroy.call(that);that.element.off(NS);if(that._documentClickHandler){$(document).unbind(that._documentClickHandler);}},enable:function(element,enable){this._toggleDisabled(element,enable!==false);return this;},disable:function(element){this._toggleDisabled(element,false);return this;},append:function(item,referenceItem){referenceItem=this.element.find(referenceItem);var inserted=this._insert(item,referenceItem,referenceItem.length?referenceItem.find("> .k-group, .k-animation-container > .k-group"):null);each(inserted.items,function(idx){inserted.group.append(this);var contents=inserted.contents[idx];if(contents){$(this).append(contents);}updateArrow(this);});updateArrow(referenceItem);updateFirstLast(inserted.group.find(".k-first, .k-last").add(inserted.items));return this;},insertBefore:function(item,referenceItem){referenceItem=this.element.find(referenceItem);var inserted=this._insert(item,referenceItem,referenceItem.parent());each(inserted.items,function(idx){referenceItem.before(this);var contents=inserted.contents[idx];if(contents){$(this).append(contents);}updateArrow(this);updateFirstLast(this);});updateFirstLast(referenceItem);return this;},insertAfter:function(item,referenceItem){referenceItem=this.element.find(referenceItem);var inserted=this._insert(item,referenceItem,referenceItem.parent());each(inserted.items,function(idx){referenceItem.after(this);var contents=inserted.contents[idx];if(contents){$(this).append(contents);}updateArrow(this);updateFirstLast(this);});updateFirstLast(referenceItem);return this;},_insert:function(item,referenceItem,parent){var that=this,items,groups,contents=[];if(!referenceItem||!referenceItem.length){parent=that.element;}var plain=$.isPlainObject(item),groupData={firstLevel:parent.hasClass(MENU),horizontal:parent.hasClass(MENU+"-horizontal"),expanded:true,length:parent.children().length};if(referenceItem&&!parent.length){parent=$(Menu.renderGroup({group:groupData})).appendTo(referenceItem);}if(plain||$.isArray(item)){items=$.map(plain?[item]:item,function(value,idx){if(typeof value==="string"){return $(value);}else{return $(Menu.renderItem({group:groupData,item:extend(value,{index:idx})}));}});contents=$.map(plain?[item]:item,function(value,idx){if(value.content||value.contentUrl){return $(Menu.renderContent({item:extend(value,{index:idx})}));}else{return false;}});}else{items=$(item);groups=items.find("> ul").addClass("k-group").attr("role","menu");items=items.filter("li");items.add(groups.find("> li")).each(function(){updateItemClasses(this);});}return{items:items,group:parent,contents:contents};},remove:function(element){element=this.element.find(element);var that=this,parent=element.parentsUntil(that.element,allItemsSelector),group=element.parent("ul");element.remove();if(group&&!group.children(allItemsSelector).length){var container=group.parent(".k-animation-container");if(container.length){container.remove();}else{group.remove();}}if(parent.length){parent=parent.eq(0);updateArrow(parent);updateFirstLast(parent);}return that;},open:function(element){var that=this,options=that.options,horizontal=options.orientation=="horizontal",direction=options.direction,isRtl=kendo.support.isRtl(that.wrapper);element=that.element.find(element);if(/^(top|bottom|default)$/.test(direction)){if(isRtl){direction=horizontal?(direction+" left").replace("default","bottom"):"left";}else{direction=horizontal?(direction+" right").replace("default","bottom"):"right";}}element.siblings().find(">.k-popup:visible,>.k-animation-container>.k-popup:visible").each(function(){var popup=$(this).data("kendoPopup");if(popup){popup.close();}});element.each(function(){var li=$(this);clearTimeout(li.data(TIMER));li.data(TIMER,setTimeout(function(){var ul=li.find(".k-group:first:hidden"),popup;if(ul[0]&&that.trigger(OPEN,{item:li[0]})===false){li.data(ZINDEX,li.css(ZINDEX));li.css(ZINDEX,that.nextItemZIndex++);popup=ul.data(KENDOPOPUP);var root=li.parent().hasClass(MENU),parentHorizontal=root&&horizontal,directions=parseDirection(direction,root,isRtl),effects=options.animation.open.effects,openEffects=effects!==undefined?effects:"slideIn:"+getEffectDirection(direction,root);if(!popup){popup=ul.kendoPopup({origin:directions.origin,position:directions.position,collision:options.popupCollision!==undefined?options.popupCollision:(parentHorizontal?"fit":"fit flip"),anchor:li,appendTo:li,animation:{open:extend(true,{effects:openEffects},options.animation.open),close:options.animation.close},close:function(e){var li=e.sender.wrapper.parent();if(!that.trigger(CLOSE,{item:li[0]})){li.css(ZINDEX,li.data(ZINDEX));li.removeData(ZINDEX);}else{e.preventDefault();}}}).data(KENDOPOPUP);}else{popup=ul.data(KENDOPOPUP);popup.options.origin=directions.origin;popup.options.position=directions.position;popup.options.animation.open.effects=openEffects;}ul.removeAttr("aria-hidden");popup.open();}},that.options.hoverDelay));});return that;},close:function(items){var that=this,element=that.element;items=element.find(items);if(!items.length){items=element.find(">.k-item");}items.each(function(){var li=$(this);clearTimeout(li.data(TIMER));li.data(TIMER,setTimeout(function(){var popup=li.find(".k-group:first:visible").data(KENDOPOPUP);if(popup){popup.close();popup.element.attr("aria-hidden",true);}},that.options.hoverDelay));});return that;},_toggleDisabled:function(items,enable){this.element.find(items).each(function(){$(this).toggleClass(DEFAULTSTATE,enable).toggleClass(DISABLEDSTATE,!enable).attr("aria-disabled",!enable);});},_toggleHover:function(e){var target=$(kendo.eventTarget(e)||e.target).closest(allItemsSelector),isEnter=e.type==MOUSEENTER||MOUSEDOWN.indexOf(e.type)!==-1;if(!target.parents("li."+DISABLEDSTATE).length){target.toggleClass(HOVERSTATE,isEnter);}this._removeHoverItem();},_removeHoverItem:function(){var oldHoverItem=this._oldHoverItem;if(oldHoverItem&&oldHoverItem.hasClass(FOCUSEDSTATE)){oldHoverItem.removeClass(FOCUSEDSTATE);this._oldHoverItem=null;}},_updateClasses:function(){var element=this.element,items;element.addClass("k-widget k-reset k-header "+MENU).addClass(MENU+"-"+this.options.orientation);element.find("li > ul").addClass("k-group").attr("role","menu").attr("aria-hidden",element.is(":visible"));items=element.find("> li,.k-group > li");items.each(function(){updateItemClasses(this);});},_mouseenter:function(e){var that=this,element=$(e.currentTarget),hasChildren=(element.children(".k-animation-container").length||element.children(groupSelector).length);if(e.delegateTarget!=element.parents(".k-menu")[0]){return;}if(!that.options.openOnClick||that.clicked){if(!contains(e.currentTarget,e.relatedTarget)&&hasChildren){that.open(element);}}if(that.options.openOnClick&&that.clicked||touch){element.siblings().each(proxy(function(_,sibling){that.close(sibling);},that));}},_mouseleave:function(e){var that=this,element=$(e.currentTarget),hasChildren=(element.children(".k-animation-container").length||element.children(groupSelector).length);if(element.parentsUntil(".k-animation-container",".k-list-container,.k-calendar-container")[0]){e.stopImmediatePropagation();return;}if(!that.options.openOnClick&&!touch&&!contains(e.currentTarget,e.relatedTarget)&&hasChildren){that.close(element);}},_click:function(e){var that=this,openHandle,options=that.options,target=$(kendo.eventTarget(e)),nodeName=target[0]?target[0].nodeName.toUpperCase():"",formNode=(nodeName=="INPUT"||nodeName=="SELECT"||nodeName=="BUTTON"),link=target.closest("."+LINK),element=target.closest(allItemsSelector),href=link.attr("href"),childGroup,childGroupVisible,isLink=(!!href&&href.charAt(href.length-1)!="#");if(element.children(templateSelector)[0]){return;}if(element.hasClass(DISABLEDSTATE)){e.preventDefault();return;}if(!e.handled&&that.trigger(SELECT,{item:element[0]})&&!formNode){e.preventDefault();}e.handled=true;childGroup=element.children(groupSelector+",.k-animation-container");childGroupVisible=childGroup.is(":visible");if(options.closeOnClick&&!isLink&&(!childGroup.length||(options.openOnClick&&childGroupVisible))){element.removeClass(HOVERSTATE).css("height");that._oldHoverItem=that._findRootParent(element);that.close(link.parentsUntil(that.element,allItemsSelector));that.clicked=false;if("touchend MSPointerUp".indexOf(e.type)!=-1){e.preventDefault();}return;}if((!element.parent().hasClass(MENU)||!options.openOnClick)&&!kendo.support.touch){return;}if(!isLink&&!formNode){e.preventDefault();}that.clicked=true;openHandle=childGroup.is(":visible")?CLOSE:OPEN;that[openHandle](element);},_documentClick:function(e){if(contains(this.element[0],e.target)){return;}this.clicked=false;},_focus:function(e){var that=this,target=e.target,hoverItem=that._hoverItem();if(target==that.wrapper[0]&&hoverItem.length){that._moveHover([],hoverItem);}else if(target==that.wrapper[0]&&!that._oldHoverItem){that._moveHover([],that.wrapper.children().first());}},_keydown:function(e){var that=this,key=e.keyCode,hoverItem=that._oldHoverItem,target,belongsToVertical,hasChildren,isRtl=kendo.support.isRtl(that.wrapper);if(e.target!=e.currentTarget&&key!=keys.ESC){return;}if(!hoverItem){hoverItem=that._oldHoverItem=that._hoverItem();}belongsToVertical=that._itemBelongsToVertival(hoverItem);hasChildren=that._itemHasChildren(hoverItem);if(key==keys.RIGHT){target=that[isRtl?"_itemLeft":"_itemRight"](hoverItem,belongsToVertical,hasChildren);}else if(key==keys.LEFT){target=that[isRtl?"_itemRight":"_itemLeft"](hoverItem,belongsToVertical,hasChildren);}else if(key==keys.DOWN){target=that._itemDown(hoverItem,belongsToVertical,hasChildren);}else if(key==keys.UP){target=that._itemUp(hoverItem,belongsToVertical,hasChildren);}else if(key==keys.ESC){target=that._itemEsc(hoverItem,belongsToVertical);}else if(key==keys.ENTER||key==keys.SPACEBAR){target=hoverItem.children(".k-link");if(target.length>0){that._click({target:target[0],preventDefault:function(){}});that._moveHover(hoverItem,that._findRootParent(hoverItem));}}else if(key==keys.TAB){target=that._findRootParent(hoverItem);that.close(target);that._moveHover(hoverItem,target);return;}if(target&&target[0]){e.preventDefault();e.stopPropagation();}},_hoverItem:function(){return this.wrapper.find("li.k-item.k-state-hover").filter(":visible");},_itemBelongsToVertival:function(item){var menuIsVertical=this.wrapper.hasClass("k-menu-vertical");if(!item.length){return menuIsVertical;}return item.parent().hasClass("k-group")||menuIsVertical;},_itemHasChildren:function(item){if(!item.length){return false;}return item.children("ul.k-group, div.k-animation-container").length>0;},_moveHover:function(item,nextItem){var that=this,id=that._ariaId;if(item.length&&nextItem.length){item.removeClass(FOCUSEDSTATE);if(item[0].id===id){item.removeAttr("id");}}if(nextItem.length){if(nextItem[0].id){id=nextItem[0].id;}nextItem.addClass(FOCUSEDSTATE);that._oldHoverItem=nextItem;if(id){that.element.removeAttr("aria-activedescendant");nextItem.attr("id",id);that.element.attr("aria-activedescendant",id);}}},_findRootParent:function(item){if(item.parent().hasClass("k-menu")){return item;}else{return item.parentsUntil(".k-menu","li.k-item").last();}},_isRootItem:function(item){return item.parent().hasClass("k-menu");},_itemRight:function(item,belongsToVertical,hasChildren){var that=this,nextItem,parentItem;if(!belongsToVertical){nextItem=item.next();if(nextItem.is(".k-separator")){nextItem=nextItem.next();}if(!nextItem.length){nextItem=item.parent().children().first();}}else if(hasChildren){that.open(item);nextItem=item.find(".k-group").children().first();}else if(that.options.orientation=="horizontal"){parentItem=that._findRootParent(item);that.close(parentItem);nextItem=parentItem.next();if(nextItem.is(".k-separator")){nextItem=nextItem.next();}}if(nextItem&&!nextItem.length){nextItem=that.wrapper.children(".k-item").first();}else if(!nextItem){nextItem=[];}that._moveHover(item,nextItem);return nextItem;},_itemLeft:function(item,belongsToVertical,hasChildren){var that=this,nextItem;if(!belongsToVertical){nextItem=item.prev();if(nextItem.is(".k-separator")){nextItem=nextItem.prev();}if(!nextItem.length){nextItem=item.parent().children().last();}}else{nextItem=item.parent().closest(".k-item");that.close(nextItem);if(that._isRootItem(nextItem)&&that.options.orientation=="horizontal"){nextItem=nextItem.prev();if(nextItem.is(".k-separator")){nextItem=nextItem.prev();}}}if(!nextItem.length){nextItem=that.wrapper.children(".k-item").last();}that._moveHover(item,nextItem);return nextItem;},_itemDown:function(item,belongsToVertical,hasChildren){var that=this,nextItem;if(!belongsToVertical){if(!hasChildren||item.hasClass(DISABLEDSTATE)){return;}else{that.open(item);nextItem=item.find(".k-group").children().first();}}else{nextItem=item.next();if(nextItem.is(".k-separator")){nextItem=nextItem.next();}}if(!nextItem.length&&item.length){nextItem=item.parent().children().first();}else if(!item.length){nextItem=that.wrapper.children(".k-item").first();}that._moveHover(item,nextItem);return nextItem;},_itemUp:function(item,belongsToVertical,hasChildren){var that=this,nextItem;if(!belongsToVertical){return;}else{nextItem=item.prev();if(nextItem.is(".k-separator")){nextItem=nextItem.prev();}}if(!nextItem.length&&item.length){nextItem=item.parent().children().last();}else if(!item.length){nextItem=that.wrapper.children(".k-item").last();}that._moveHover(item,nextItem);return nextItem;},_itemEsc:function(item,belongsToVertical){var that=this,nextItem;if(!belongsToVertical){return item;}else{nextItem=item.parent().closest(".k-item");that.close(nextItem);that._moveHover(item,nextItem);}return nextItem;}});extend(Menu,{renderItem:function(options){options=extend({menu:{},group:{}},options);var empty=templates.empty,item=options.item;return templates.item(extend(options,{image:item.imageUrl?templates.image:empty,sprite:item.spriteCssClass?templates.sprite:empty,itemWrapper:templates.itemWrapper,arrow:item.items||item.content?templates.arrow:empty,subGroup:Menu.renderGroup},rendering));},renderGroup:function(options){return templates.group(extend({renderItems:function(options){var html="",i=0,items=options.items,len=items?items.length:0,group=extend({length:len},options.group);for(;i<len;i++){html+=Menu.renderItem(extend(options,{group:group,item:extend({index:i},items[i])}));}return html;}},options,rendering));},renderContent:function(options){return templates.content(extend(options,rendering));}});kendo.ui.plugin(Menu);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,Widget=ui.Widget,extend=$.extend,isFunction=$.isFunction,isPlainObject=$.isPlainObject,inArray=$.inArray,nameSpecialCharRegExp=/(\[|\]|\$|\.|\:|\+)/g,ERRORTEMPLATE='<div class="k-widget k-tooltip k-tooltip-validation" style="margin:0.5em"><span class="k-icon k-warning"> </span>'+'#=message#<div class="k-callout k-callout-n"></div></div>',CHANGE="change";var specialRules=["url","email","number","date","boolean"];function fieldType(field){field=field!=null?field:"";return field.type||$.type(field)||"string";}function convertToValueBinding(container){container.find(":input:not(:button, ["+kendo.attr("role")+"=upload], ["+kendo.attr("skip")+"]), select").each(function(){var bindAttr=kendo.attr("bind"),binding=this.getAttribute(bindAttr)||"",bindingName=this.type==="checkbox"||this.type==="radio"?"checked:":"value:",fieldName=this.name;if(binding.indexOf(bindingName)===-1&&fieldName){binding+=(binding.length?",":"")+bindingName+fieldName;$(this).attr(bindAttr,binding);}});}function createAttributes(options){var field=(options.model.fields||options.model)[options.field],type=fieldType(field),validation=field?field.validation:{},ruleName,DATATYPE=kendo.attr("type"),BINDING=kendo.attr("bind"),rule,attr={name:options.field};for(ruleName in validation){rule=validation[ruleName];if(inArray(ruleName,specialRules)>=0){attr[DATATYPE]=ruleName;}else if(!isFunction(rule)){attr[ruleName]=isPlainObject(rule)?rule.value||ruleName:rule;}attr[kendo.attr(ruleName+"-msg")]=rule.message;}if(inArray(type,specialRules)>=0){attr[DATATYPE]=type;}attr[BINDING]=(type==="boolean"?"checked:":"value:")+options.field;return attr;}function convertItems(items){var idx,length,item,value,text,result;if(items&&items.length){result=[];for(idx=0,length=items.length;idx<length;idx++){item=items[idx];text=item.text||item.value||item;value=item.value==null?(item.text||item):item.value;result[idx]={text:text,value:value};}}return result;}var editors={"number":function(container,options){var attr=createAttributes(options);$('<input type="text"/>').attr(attr).appendTo(container).kendoNumericTextBox({format:options.format});$('<span '+kendo.attr("for")+'="'+options.field+'" class="k-invalid-msg"/>').hide().appendTo(container);},"date":function(container,options){var attr=createAttributes(options),format=options.format;if(format){format=kendo._extractFormat(format);}attr[kendo.attr("format")]=format;$('<input type="text"/>').attr(attr).appendTo(container).kendoDatePicker({format:options.format});$('<span '+kendo.attr("for")+'="'+options.field+'" class="k-invalid-msg"/>').hide().appendTo(container);},"string":function(container,options){var attr=createAttributes(options);$('<input type="text" class="k-input k-textbox"/>').attr(attr).appendTo(container);},"boolean":function(container,options){var attr=createAttributes(options);$('<input type="checkbox" />').attr(attr).appendTo(container);},"values":function(container,options){var attr=createAttributes(options);$('<select '+kendo.attr("text-field")+'="text"'+kendo.attr("value-field")+'="value"'+kendo.attr("source")+"=\'"+kendo.stringify(convertItems(options.values)).replace(/\'/g,"&apos;")+"\'"+kendo.attr("role")+'="dropdownlist"/>').attr(attr).appendTo(container);$('<span '+kendo.attr("for")+'="'+options.field+'" class="k-invalid-msg"/>').hide().appendTo(container);}};function addValidationRules(modelField,rules){var validation=modelField?(modelField.validation||{}):{},rule;for(rule in validation){if(isFunction(validation[rule])){rules[rule]=validation[rule];}}}var Editable=Widget.extend({init:function(element,options){var that=this;Widget.fn.init.call(that,element,options);that._validateProxy=$.proxy(that._validate,that);that.refresh();},events:[CHANGE],options:{name:"Editable",editors:editors,clearContainer:true,errorTemplate:ERRORTEMPLATE},editor:function(field,modelField){var that=this,editors=that.options.editors,isObject=isPlainObject(field),fieldName=isObject?field.field:field,model=that.options.model||{},isValuesEditor=isObject&&field.values,type=isValuesEditor?"values":fieldType(modelField),isCustomEditor=isObject&&field.editor,editor=isCustomEditor?field.editor:editors[type],container=that.element.find("[data-container-for="+fieldName.replace(nameSpecialCharRegExp,"\\$1")+"]");editor=editor?editor:editors["string"];if(isCustomEditor&&typeof field.editor==="string"){editor=function(container){container.append(field.editor);};}container=container.length?container:that.element;editor(container,extend(true,{},isObject?field:{field:fieldName},{model:model}));},_validate:function(e){var that=this,isBoolean=typeof e.value==="boolean",input,preventChangeTrigger=that._validationEventInProgress,values={};values[e.field]=e.value;input=$(':input['+kendo.attr("bind")+'="'+(isBoolean?'checked:':'value:')+e.field+'"]',that.element);try{that._validationEventInProgress=true;if(!that.validatable.validateInput(input)||(!preventChangeTrigger&&that.trigger(CHANGE,{values:values}))){e.preventDefault();}}finally{that._validationEventInProgress=false;}},end:function(){return this.validatable.validate();},destroy:function(){var that=this;Widget.fn.destroy.call(that);that.options.model.unbind("set",that._validateProxy);kendo.unbind(that.element);kendo.destroy(that.element);that.element.removeData("kendoValidator");},refresh:function(){var that=this,idx,length,fields=that.options.fields||[],container=that.options.clearContainer?that.element.empty():that.element,model=that.options.model||{},rules={},field,isObject,fieldName,modelField,modelFields;if(!$.isArray(fields)){fields=[fields];}for(idx=0,length=fields.length;idx<length;idx++){field=fields[idx];isObject=isPlainObject(field);fieldName=isObject?field.field:field;modelField=(model.fields||model)[fieldName];addValidationRules(modelField,rules);that.editor(field,modelField);}if(!length){modelFields=model.fields||model;for(fieldName in modelFields){addValidationRules(modelFields[fieldName],rules);}}convertToValueBinding(container);kendo.bind(container,that.options.model);that.options.model.bind("set",that._validateProxy);that.validatable=container.kendoValidator({validateOnBlur:false,errorTemplate:that.options.errorTemplate||undefined,rules:rules}).data("kendoValidator");container.find(":focusable:first").focus();}});ui.plugin(Editable);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,NUMERICTEXTBOX="kendoNumericTextBox",DATEPICKER="kendoDatePicker",proxy=$.proxy,POPUP="kendoPopup",NS=".kendoFilterMenu",EQ="برابر با",NEQ="برابر نباشد",Widget=ui.Widget;var booleanTemplate='<div>'+'<div class="k-filter-help-text">#=messages.info#</div>'+'<label>'+'<input type="radio" data-#=ns#bind="checked: filters[0].value" value="true" name="filters[0].value"/>'+'#=messages.isTrue#'+'</label>'+'<label>'+'<input type="radio" data-#=ns#bind="checked: filters[0].value" value="false" name="filters[0].value"/>'+'#=messages.isFalse#'+'</label>'+'<button type="submit" class="k-button">#=messages.filter#</button>'+'<button type="reset" class="k-button">#=messages.clear#</button>'+'</div>';var defaultTemplate='<div>'+'<div class="k-filter-help-text">#=messages.info#</div>'+'<select data-#=ns#bind="value: filters[0].operator" data-#=ns#role="dropdownlist">'+'#for(var op in operators){#'+'<option value="#=op#">#=operators[op]#</option>'+'#}#'+'</select>'+'#if(values){#'+'<select data-#=ns#bind="value:filters[0].value" data-#=ns#text-field="text" data-#=ns#value-field="value" data-#=ns#source=\'#=kendo.stringify(values).replace(/\'/g,"&\\#39;")#\' data-#=ns#role="dropdownlist" data-#=ns#option-label="#=messages.selectValue#">'+'</select>'+'#}else{#'+'<input data-#=ns#bind="value:filters[0].value" class="k-textbox" type="text" data-#=ns#type="#=type#"/>'+'#}#'+'#if(extra){#'+'<select class="k-filter-and" data-#=ns#bind="value: logic" data-#=ns#role="dropdownlist">'+'<option value="and">#=messages.and#</option>'+'<option value="or">#=messages.or#</option>'+'</select>'+'<select data-#=ns#bind="value: filters[1].operator" data-#=ns#role="dropdownlist">'+'#for(var op in operators){#'+'<option value="#=op#">#=operators[op]#</option>'+'#}#'+'</select>'+'#if(values){#'+'<select data-#=ns#bind="value:filters[1].value" data-#=ns#text-field="text" data-#=ns#value-field="value" data-#=ns#source=\'#=kendo.stringify(values).replace(/\'/g,"&\\#39;")#\' data-#=ns#role="dropdownlist" data-#=ns#option-label="#=messages.selectValue#">'+'</select>'+'#}else{#'+'<input data-#=ns#bind="value: filters[1].value" class="k-textbox" type="text" data-#=ns#type="#=type#"/>'+'#}#'+'#}#'+'<button type="submit" class="k-button">#=messages.filter#</button>'+'<button type="reset" class="k-button">#=messages.clear#</button>'+'</div>';function removeFiltersForField(expression,field){if(expression.filters){expression.filters=$.grep(expression.filters,function(filter){removeFiltersForField(filter,field);if(filter.filters){return filter.filters.length;}else{return filter.field!=field;}});}}function convertItems(items){var idx,length,item,value,text,result;if(items&&items.length){result=[];for(idx=0,length=items.length;idx<length;idx++){item=items[idx];text=item.text||item.value||item;value=item.value==null?(item.text||item):item.value;result[idx]={text:text,value:value};}}return result;}var FilterMenu=Widget.extend({init:function(element,options){var that=this,type="string",link,field,operators;Widget.fn.init.call(that,element,options);operators=options.operators||{};element=that.element;options=that.options;if(!options.appendToElement){link=element.addClass("k-filterable").find(".k-grid-filter");if(!link[0]){link=element.prepend('<a class="k-grid-filter" href="#"><span class="k-icon k-filter"/></a>').find(".k-grid-filter");}link.attr("tabindex",-1).on("click"+NS,proxy(that._click,that));}else{that.link=$();}that._refreshHandler=proxy(that.refresh,that);that.dataSource=options.dataSource.bind("change",that._refreshHandler);that.field=options.field||element.attr(kendo.attr("field"));that.model=that.dataSource.reader.model;that._parse=function(value){return value+"";};if(that.model&&that.model.fields){field=that.model.fields[that.field];if(field){type=field.type||"string";that._parse=proxy(field.parse,field);}}if(options.values){type="enums";}operators=operators[type]||options.operators[type];that.form=$('<form class="k-filter-menu"/>').html(kendo.template(type==="boolean"?booleanTemplate:defaultTemplate)({field:that.field,ns:kendo.ns,messages:options.messages,extra:options.extra,operators:operators,type:type,values:convertItems(options.values)})).on("keydown"+NS,proxy(that._keydown,that)).on("submit"+NS,proxy(that._submit,that)).on("reset"+NS,proxy(that._reset,that));if(!options.appendToElement){that.popup=that.form[POPUP]({anchor:link,open:proxy(that._open,that),activate:proxy(that._activate,that),close:that.options.closeCallback}).data(POPUP);that.link=link;}else{element.append(that.form);that.popup=that.element.closest(".k-popup").data(POPUP);}that.form.find("["+kendo.attr("type")+"=number]").removeClass("k-textbox")
[NUMERICTEXTBOX]().end().find("["+kendo.attr("type")+"=date]").removeClass("k-textbox")
[DATEPICKER]();that.refresh();},refresh:function(){var that=this,expression=that.dataSource.filter()||{filters:[],logic:"and"};that.filterModel=kendo.observable({logic:"and",filters:[{field:that.field,operator:"eq",value:""},{field:that.field,operator:"eq",value:""}]});kendo.bind(that.form.children().first(),that.filterModel);if(that._bind(expression)){that.link.addClass("k-state-active");}else{that.link.removeClass("k-state-active");}},destroy:function(){var that=this;Widget.fn.destroy.call(that);kendo.unbind(that.form);kendo.destroy(that.form);that.form.unbind(NS);that.popup.destroy();that.link.unbind(NS);that.dataSource.unbind("change",that._refreshHandler);},_bind:function(expression){var that=this,filters=expression.filters,idx,length,found=false,current=0,filterModel=that.filterModel,currentFilter,filter;for(idx=0,length=filters.length;idx<length;idx++){filter=filters[idx];if(filter.field==that.field){filterModel.set("logic",expression.logic);currentFilter=filterModel.filters[current];if(!currentFilter){filterModel.filters.push({field:that.field});currentFilter=filterModel.filters[current];}currentFilter.set("value",that._parse(filter.value));currentFilter.set("operator",filter.operator);current++;found=true;}else if(filter.filters){found=found||that._bind(filter);}}return found;},_merge:function(expression){var that=this,logic=expression.logic||"and",filters=expression.filters,filter,result=that.dataSource.filter()||{filters:[],logic:"and"},idx,length;removeFiltersForField(result,that.field);filters=$.grep(filters,function(filter){return filter.value!=="";});for(idx=0,length=filters.length;idx<length;idx++){filter=filters[idx];filter.value=that._parse(filter.value);}if(filters.length){if(result.filters.length){expression.filters=filters;if(result.logic!=="and"){result.filters=[{logic:result.logic,filters:result.filters}];result.logic="and";}if(filters.length>1){result.filters.push(expression);}else{result.filters.push(filters[0]);}}else{result.filters=filters;result.logic=logic;}}return result;},filter:function(expression){expression=this._merge(expression);if(expression.filters.length){this.dataSource.filter(expression);}},clear:function(){var that=this,expression=that.dataSource.filter()||{filters:[]};expression.filters=$.grep(expression.filters,function(filter){if(filter.filters){filter.filters=$.grep(filter.filters,function(expr){return expr.field!=that.field;});return filter.filters.length;}return filter.field!=that.field;});if(!expression.filters.length){expression=null;}that.dataSource.filter(expression);},_submit:function(e){var that=this;e.preventDefault();that.filter(that.filterModel.toJSON());that.popup.close();},_reset:function(e){this.clear();this.popup.close();},_click:function(e){e.preventDefault();e.stopPropagation();this.popup.toggle();},_open:function(){var popup;$(".k-filter-menu").not(this.form).each(function(){popup=$(this).data(POPUP);if(popup){popup.close();}});},_activate:function(){this.form.find(":focusable:first").focus();},_keydown:function(e){if(e.keyCode==kendo.keys.ESC){this.popup.close();}},options:{name:"FilterMenu",extra:true,appendToElement:false,type:"string",operators:{string:{eq:EQ,neq:NEQ,startswith:"شروع با",contains:"شامل",doesnotcontain:"شامل نباشد",endswith:"پایان با"},number:{eq:EQ,neq:NEQ,gte:"بزرگتر یا مساوی",gt:"بزرگتر از",lte:"کوچکتر یا مساوی",lt:"کوچکتر از"},date:{eq:EQ,neq:NEQ,gte:"بعد از یا مساوی با",gt:"بعد از",lte:"قبل از یا مساوی با",lt:"قبل از "},enums:{eq:EQ,neq:NEQ}},messages:{info:"مواردی را نمایش بده که مقدارشان:",isTrue:"درست باشد",isFalse:"غلط باشد",filter:"فیلتر",clear:"پاک",and:"و",or:"یا",selectValue:"-Select value-"}}});ui.plugin(FilterMenu);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,keys=kendo.keys,extend=$.extend,each=$.each,template=kendo.template,Widget=ui.Widget,excludedNodesRegExp=/^(ul|a|div)$/i,NS=".kendoPanelBar",IMG="img",HREF="href",LAST="k-last",LINK="k-link",LINKSELECTOR="."+LINK,ERROR="error",ITEM=".k-item",GROUP=".k-group",VISIBLEGROUP=GROUP+":visible",IMAGE="k-image",FIRST="k-first",EXPAND="expand",SELECT="select",CONTENT="k-content",ACTIVATE="activate",COLLAPSE="collapse",CONTENTURL="contentUrl",MOUSEENTER="mouseenter",MOUSELEAVE="mouseleave",CONTENTLOAD="contentLoad",ACTIVECLASS="k-state-active",GROUPS="> .k-panel",CONTENTS="> .k-content",FOCUSEDCLASS="k-state-focused",DISABLEDCLASS="k-state-disabled",SELECTEDCLASS="k-state-selected",SELECTEDSELECTOR="."+SELECTEDCLASS,HIGHLIGHTEDCLASS="k-state-highlighted",ACTIVEITEMSELECTOR=ITEM+":not(.k-state-disabled)",clickableItems=ACTIVEITEMSELECTOR+" > .k-link",disabledItems=ITEM+".k-state-disabled > .k-link",selectableItems="> li > "+SELECTEDSELECTOR+", .k-panel > li > "+SELECTEDSELECTOR,defaultState="k-state-default",ARIA_DISABLED="aria-disabled",ARIA_EXPANDED="aria-expanded",ARIA_HIDDEN="aria-hidden",ARIA_SELECTED="aria-selected",VISIBLE=":visible",EMPTY=":empty",SINGLE="single",templates={content:template("<div role='region' class='k-content'#= contentAttributes(data) #>#= content(item) #</div>"),group:template("<ul role='group' aria-hidden='true' class='#= groupCssClass(group) #'#= groupAttributes(group) #>"+"#= renderItems(data) #"+"</ul>"),itemWrapper:template("<#= tag(item) # class='#= textClass(item, group) #' #= contentUrl(item) ##= textAttributes(item) #>"+"#= image(item) ##= sprite(item) ##= text(item) #"+"#= arrow(data) #"+"</#= tag(item) #>"),item:template("<li role='menuitem' #=aria(item)#class='#= wrapperCssClass(group, item) #'>"+"#= itemWrapper(data) #"+"# if (item.items) { #"+"#= subGroup({ items: item.items, panelBar: panelBar, group: { expanded: item.expanded } }) #"+"# } #"+"</li>"),image:template("<img class='k-image' alt='' src='#= imageUrl #' />"),arrow:template("<span class='#= arrowClass(item) #'></span>"),sprite:template("<span class='k-sprite #= spriteCssClass #'></span>"),empty:template("")},rendering={aria:function(item){var attr="";if(item.items||item.content||item.contentUrl){attr+=ARIA_EXPANDED+"='"+(item.expanded?"true":"false")+"' ";}if(item.enabled===false){attr+=ARIA_DISABLED+"='true'";}return attr;},wrapperCssClass:function(group,item){var result="k-item",index=item.index;if(item.enabled===false){result+=" "+DISABLEDCLASS;}else if(item.expanded===true){result+=" "+ACTIVECLASS;}else{result+=" k-state-default";}if(index===0){result+=" k-first";}if(index==group.length-1){result+=" k-last";}return result;},textClass:function(item,group){var result=LINK;if(group.firstLevel){result+=" k-header";}return result;},textAttributes:function(item){return item.url?" href='"+item.url+"'":"";},arrowClass:function(item){var result="k-icon";result+=item.expanded?" k-i-arrow-n k-panelbar-collapse":" k-i-arrow-s k-panelbar-expand";return result;},text:function(item){return item.encoded===false?item.text:kendo.htmlEncode(item.text);},tag:function(item){return item.url?"a":"span";},groupAttributes:function(group){return group.expanded!==true?" style='display:none'":"";},groupCssClass:function(group){return"k-group k-panel";},contentAttributes:function(content){return content.item.expanded!==true?" style='display:none'":"";},content:function(item){return item.content?item.content:item.contentUrl?"":"&nbsp;";},contentUrl:function(item){return item.contentUrl?kendo.attr("content-url")+'="'+item.contentUrl+'"':"";}};function updateArrow(items){items=$(items);items.children(LINKSELECTOR).children(".k-icon").remove();items.filter(":has(.k-panel),:has(.k-content)").children(".k-link:not(:has([class*=k-i-arrow]))").each(function(){var item=$(this),parent=item.parent();item.append("<span class='k-icon "+(parent.hasClass(ACTIVECLASS)?"k-i-arrow-n k-panelbar-collapse":"k-i-arrow-s k-panelbar-expand")+"'/>");});}function updateFirstLast(items){items=$(items);items.filter(".k-first:not(:first-child)").removeClass(FIRST);items.filter(".k-last:not(:last-child)").removeClass(LAST);items.filter(":first-child").addClass(FIRST);items.filter(":last-child").addClass(LAST);}var PanelBar=Widget.extend({init:function(element,options){var that=this,content;Widget.fn.init.call(that,element,options);element=that.wrapper=that.element.addClass("k-widget k-reset k-header k-panelbar");options=that.options;if(options.dataSource){that.element.empty();that.append(options.dataSource,element);}if(element[0].id){that._itemId=element[0].id+"_pb_active";}that._tabindex();that._updateClasses();if(options.animation===false){options.animation={expand:{effects:{}},collapse:{hide:true,effects:{}}};}element.on("touchend"+NS+" click"+NS,clickableItems,function(e){if(that._click($(e.currentTarget))){e.preventDefault();}}).on(MOUSEENTER+NS+" "+MOUSELEAVE+NS,clickableItems,that._toggleHover).on("touchend"+NS+" click"+NS,disabledItems,false).on("keydown"+NS,$.proxy(that._keydown,that)).on("focus"+NS,function(){var item=that.select();that._current(item[0]?item:that._first());}).on("blur"+NS,function(){that._current(null);}).attr("role","menu");if(options.contentUrls){element.find("> .k-item").each(function(index,item){$(item).find(LINKSELECTOR).data(CONTENTURL,options.contentUrls[index]);});}content=element.find("li."+ACTIVECLASS+" > ."+CONTENT);if(content[0]){that.expand(content.parent(),false);}kendo.notify(that);},events:[EXPAND,COLLAPSE,SELECT,ACTIVATE,ERROR,CONTENTLOAD],options:{name:"PanelBar",animation:{expand:{effects:"expand:vertical",duration:200},collapse:{duration:200}},expandMode:"multiple"},destroy:function(){Widget.fn.destroy.call(this);this.element.off(NS);kendo.destroy(this.element);},expand:function(element,useAnimation){var that=this,animBackup={};useAnimation=useAnimation!==false;element=this.element.find(element);element.each(function(index,item){item=$(item);var groups=item.find(GROUPS).add(item.find(CONTENTS));if(!item.hasClass(DISABLEDCLASS)&&groups.length>0){if(that.options.expandMode==SINGLE&&that._collapseAllExpanded(item)){return that;}element.find("."+HIGHLIGHTEDCLASS).removeClass(HIGHLIGHTEDCLASS);item.addClass(HIGHLIGHTEDCLASS);if(!useAnimation){animBackup=that.options.animation;that.options.animation={expand:{effects:{}},collapse:{hide:true,effects:{}}};}if(!that._triggerEvent(EXPAND,item)){that._toggleItem(item,false);}if(!useAnimation){that.options.animation=animBackup;}}});return that;},collapse:function(element,useAnimation){var that=this,animBackup={};useAnimation=useAnimation!==false;element=that.element.find(element);element.each(function(index,item){item=$(item);var groups=item.find(GROUPS).add(item.find(CONTENTS));if(!item.hasClass(DISABLEDCLASS)&&groups.is(VISIBLE)){item.removeClass(HIGHLIGHTEDCLASS);if(!useAnimation){animBackup=that.options.animation;that.options.animation={expand:{effects:{}},collapse:{hide:true,effects:{}}};}if(!that._triggerEvent(COLLAPSE,item)){that._toggleItem(item,true);}if(!useAnimation){that.options.animation=animBackup;}}});return that;},_toggleDisabled:function(element,enable){element=this.element.find(element);element.toggleClass(defaultState,enable).toggleClass(DISABLEDCLASS,!enable).attr(ARIA_DISABLED,!enable);},select:function(element){var that=this;if(element===undefined){return that.element.find(selectableItems).parent();}that.element.find(element).each(function(index){var item=$(this),link=item.children(LINKSELECTOR);if(item.hasClass(DISABLEDCLASS)){return that;}that._updateSelected(link);});return that;},enable:function(element,state){this._toggleDisabled(element,state!==false);return this;},disable:function(element){this._toggleDisabled(element,false);return this;},append:function(item,referenceItem){referenceItem=this.element.find(referenceItem);var inserted=this._insert(item,referenceItem,referenceItem.length?referenceItem.find(GROUPS):null);each(inserted.items,function(idx){inserted.group.append(this);var contents=inserted.contents[idx];if(contents){$(this).append(contents);}updateFirstLast(this);});updateArrow(referenceItem);updateFirstLast(inserted.group.find(".k-first, .k-last"));inserted.group.height("auto");return this;},insertBefore:function(item,referenceItem){referenceItem=this.element.find(referenceItem);var inserted=this._insert(item,referenceItem,referenceItem.parent());each(inserted.items,function(idx){referenceItem.before(this);var contents=inserted.contents[idx];if(contents){$(this).append(contents);}updateFirstLast(this);});updateFirstLast(referenceItem);inserted.group.height("auto");return this;},insertAfter:function(item,referenceItem){referenceItem=this.element.find(referenceItem);var inserted=this._insert(item,referenceItem,referenceItem.parent());each(inserted.items,function(idx){referenceItem.after(this);var contents=inserted.contents[idx];if(contents){$(this).append(contents);}updateFirstLast(this);});updateFirstLast(referenceItem);inserted.group.height("auto");return this;},remove:function(element){element=this.element.find(element);var that=this,parent=element.parentsUntil(that.element,ITEM),group=element.parent("ul");element.remove();if(group&&!group.hasClass("k-panelbar")&&!group.children(ITEM).length){group.remove();}if(parent.length){parent=parent.eq(0);updateArrow(parent);updateFirstLast(parent);}return that;},reload:function(element){var that=this;element=that.element.find(element);element.each(function(){var item=$(this);that._ajaxRequest(item,item.children("."+CONTENT),!item.is(VISIBLE));});},_first:function(){return this.element.children(ACTIVEITEMSELECTOR).first();},_last:function(){var item=this.element.children(ACTIVEITEMSELECTOR).last(),group=item.children(VISIBLEGROUP);if(group[0]){return group.children(ACTIVEITEMSELECTOR).last();}return item;},_current:function(candidate){var that=this,focused=that._focused;if(candidate===undefined){return focused;}that.element.removeAttr("aria-activedescendant");if(focused){focused.removeAttr("id").children(LINKSELECTOR).removeClass(FOCUSEDCLASS);}if(candidate){candidate.attr("id",that._itemId).children(LINKSELECTOR).addClass(FOCUSEDCLASS);that.element.attr("aria-activedescendant",that._itemId);}that._focused=candidate;},_keydown:function(e){var that=this,key=e.keyCode,current=that._current();if(e.target!=e.currentTarget){return;}if(key==keys.DOWN||key==keys.RIGHT){that._current(that._nextItem(current));e.preventDefault();}else if(key==keys.UP||key==keys.LEFT){that._current(that._prevItem(current));e.preventDefault();}else if(key==keys.ENTER||key==keys.SPACEBAR){that._click(current.children(LINKSELECTOR));e.preventDefault();}else if(key==keys.HOME){that._current(that._first());e.preventDefault();}else if(key==keys.END){that._current(that._last());e.preventDefault();}},_nextItem:function(item){if(!item){return this._first();}var group=item.children(VISIBLEGROUP),next=item.next();if(group[0]){next=group.children("."+FIRST);}if(!next[0]){next=item.parent(VISIBLEGROUP).parent(ITEM).next();}if(!next[0]||!next.is(":visible")){next=this._first();}if(next.hasClass(DISABLEDCLASS)){next=this._nextItem(next);}return next;},_prevItem:function(item){if(!item){return this._last();}var prev=item.prev(),result;if(!prev[0]){prev=item.parent(VISIBLEGROUP).parent(ITEM);if(!prev[0]){prev=this._last();}}else{result=prev;while(result[0]){result=result.children(VISIBLEGROUP).children("."+LAST);if(result[0]){prev=result;}}}if(prev.hasClass(DISABLEDCLASS)){prev=this._prevItem(prev);}return prev;},_insert:function(item,referenceItem,parent){var that=this,items,contents=[],plain=$.isPlainObject(item),isReferenceItem=referenceItem&&referenceItem[0],groupData;if(!isReferenceItem){parent=that.element;}groupData={firstLevel:parent.hasClass("k-panelbar"),expanded:parent.parent().hasClass(ACTIVECLASS),length:parent.children().length};if(isReferenceItem&&!parent.length){parent=$(PanelBar.renderGroup({group:groupData})).appendTo(referenceItem);}if(plain||$.isArray(item)){items=$.map(plain?[item]:item,function(value,idx){if(typeof value==="string"){return $(value);}else{return $(PanelBar.renderItem({group:groupData,item:extend(value,{index:idx})}));}});contents=$.map(plain?[item]:item,function(value,idx){if(value.content||value.contentUrl){return $(PanelBar.renderContent({item:extend(value,{index:idx})}));}else{return false;}});if(isReferenceItem){referenceItem.attr(ARIA_EXPANDED,false);}}else{items=$(item);that._updateItemsClasses(items);}return{items:items,group:parent,contents:contents};},_toggleHover:function(e){var target=$(e.currentTarget);if(!target.parents("li."+DISABLEDCLASS).length){target.toggleClass("k-state-hover",e.type==MOUSEENTER);}},_updateClasses:function(){var that=this,panels,items;panels=that.element.find("li > ul").not(function(){return $(this).parentsUntil(".k-panelbar","div").length;}).addClass("k-group k-panel").attr("role","group");panels.parent().attr(ARIA_EXPANDED,false).not("."+ACTIVECLASS).children("ul").attr(ARIA_HIDDEN,true).hide();items=that.element.add(panels).children();that._updateItemsClasses(items);updateArrow(items);updateFirstLast(items);},_updateItemsClasses:function(items){var length=items.length,idx=0;for(;idx<length;idx++){this._updateItemClasses(items[idx]);}},_updateItemClasses:function(item){var selected=this._selected,link;item=$(item).addClass("k-item").attr("role","menuitem");item.children(IMG).addClass(IMAGE);item.children("a").addClass(LINK).children(IMG).addClass(IMAGE);item.filter(":not([disabled]):not([class*=k-state])").addClass("k-state-default");item.filter("li[disabled]").addClass("k-state-disabled").attr(ARIA_DISABLED,true).removeAttr("disabled");item.children("div").addClass(CONTENT).attr("role","region").attr(ARIA_HIDDEN,true).hide().parent().attr(ARIA_EXPANDED,false);link=item.children(SELECTEDSELECTOR);if(link[0]){if(selected){selected.removeAttr(ARIA_SELECTED).children(SELECTEDSELECTOR).removeClass(SELECTEDCLASS);}link.addClass(SELECTEDCLASS);this._selected=item.attr(ARIA_SELECTED,true);}if(!item.children(LINKSELECTOR)[0]){item.contents().filter(function(){return(!this.nodeName.match(excludedNodesRegExp)&&!(this.nodeType==3&&!$.trim(this.nodeValue)));}).wrapAll("<span class='"+LINK+"'/>");}if(item.parent(".k-panelbar")[0]){item.children(LINKSELECTOR).addClass("k-header");}},_click:function(target){var that=this,element=that.element,prevent;if(target.parents("li."+DISABLEDCLASS).length){return;}if(target.closest(".k-widget")[0]!=element[0]){return;}var link=target.closest(LINKSELECTOR),item=link.closest(ITEM);that._updateSelected(link);var contents=item.find(GROUPS).add(item.find(CONTENTS)),href=link.attr(HREF),isAnchor=link.data(CONTENTURL)||(href&&(href.charAt(href.length-1)=="#"||href.indexOf("#"+that.element[0].id+"-")!=-1));if(contents.data("animating")){return;}if(that._triggerEvent(SELECT,item)){prevent=true;}if(isAnchor||contents.length){prevent=true;}else{return;}if(that.options.expandMode==SINGLE){if(that._collapseAllExpanded(item)){return;}}if(contents.length){var visibility=contents.is(VISIBLE);if(!that._triggerEvent(!visibility?EXPAND:COLLAPSE,item)){prevent=that._toggleItem(item,visibility);}}return prevent;},_toggleItem:function(element,isVisible){var that=this,childGroup=element.find(GROUPS),prevent,content;if(childGroup.length){this._toggleGroup(childGroup,isVisible);prevent=true;}else{content=element.children("."+CONTENT);if(content.length){prevent=true;if(!content.is(EMPTY)){that._toggleGroup(content,isVisible);}else{that._ajaxRequest(element,content,isVisible);}}}return prevent;},_toggleGroup:function(element,visibility){var that=this,animationSettings=that.options.animation,animation=animationSettings.expand,collapse=extend({},animationSettings.collapse),hasCollapseAnimation=collapse&&"effects"in collapse;if(element.is(VISIBLE)!=visibility){return;}element.parent().attr(ARIA_EXPANDED,!visibility).attr(ARIA_HIDDEN,visibility).toggleClass(defaultState,visibility).toggleClass(ACTIVECLASS,!visibility).find("> .k-link > .k-icon").toggleClass("k-i-arrow-n",!visibility).toggleClass("k-panelbar-collapse",!visibility).toggleClass("k-i-arrow-s",visibility).toggleClass("k-panelbar-expand",visibility);if(visibility){animation=extend(hasCollapseAnimation?collapse:extend({reverse:true},animation),{hide:true});}else{animation=extend({complete:function(element){that._triggerEvent(ACTIVATE,element.closest(ITEM));}},animation);}element.kendoStop(true,true).kendoAnimate(animation);},_collapseAllExpanded:function(item){var that=this,children,stopExpand=false;if(item.children(LINKSELECTOR).hasClass("k-header")){var groups=item.find(GROUPS).add(item.find(CONTENTS));if(groups.is(VISIBLE)){stopExpand=true;}if(!(groups.is(VISIBLE)||groups.length===0)){children=$(that.element).children();children.find(GROUPS).add(children.find(CONTENTS)).filter(function(){return $(this).is(VISIBLE);}).each(function(index,content){content=$(content);stopExpand=that._triggerEvent(COLLAPSE,content.closest(ITEM));if(!stopExpand){that._toggleGroup(content,true);}});}return stopExpand;}},_ajaxRequest:function(element,contentElement,isVisible){var that=this,statusIcon=element.find(".k-panelbar-collapse, .k-panelbar-expand"),link=element.find(LINKSELECTOR),loadingIconTimeout=setTimeout(function(){statusIcon.addClass("k-loading");},100),data={};$.ajax({type:"GET",cache:false,url:link.data(CONTENTURL)||link.attr(HREF),dataType:"html",data:data,error:function(xhr,status){statusIcon.removeClass("k-loading");if(that.trigger(ERROR,{xhr:xhr,status:status})){this.complete();}},complete:function(){clearTimeout(loadingIconTimeout);statusIcon.removeClass("k-loading");},success:function(data,textStatus){contentElement.html(data);that._toggleGroup(contentElement,isVisible);that.trigger(CONTENTLOAD,{item:element[0],contentElement:contentElement[0]});}});},_triggerEvent:function(eventName,element){var that=this;return that.trigger(eventName,{item:element[0]});},_updateSelected:function(link){var that=this,element=that.element,item=link.parent(ITEM),selected=that._selected;if(selected){selected.removeAttr(ARIA_SELECTED);}that._selected=item.attr(ARIA_SELECTED,true);element.find(selectableItems).removeClass(SELECTEDCLASS);element.find("> .k-state-highlighted, .k-panel > .k-state-highlighted").removeClass(HIGHLIGHTEDCLASS);link.addClass(SELECTEDCLASS);link.parentsUntil(element,ITEM).filter(":has(.k-header)").addClass(HIGHLIGHTEDCLASS);that._current(item);}});extend(PanelBar,{renderItem:function(options){options=extend({panelBar:{},group:{}},options);var empty=templates.empty,item=options.item;return templates.item(extend(options,{image:item.imageUrl?templates.image:empty,sprite:item.spriteCssClass?templates.sprite:empty,itemWrapper:templates.itemWrapper,arrow:item.items||item.content||item.contentUrl?templates.arrow:empty,subGroup:PanelBar.renderGroup},rendering));},renderGroup:function(options){return templates.group(extend({renderItems:function(options){var html="",i=0,items=options.items,len=items?items.length:0,group=extend({length:len},options.group);for(;i<len;i++){html+=PanelBar.renderItem(extend(options,{group:group,item:extend({index:i},items[i])}));}return html;}},options,rendering));},renderContent:function(options){return templates.content(extend(options,rendering));}});kendo.ui.plugin(PanelBar);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,keys=kendo.keys,map=$.map,each=$.each,trim=$.trim,extend=$.extend,template=kendo.template,Widget=ui.Widget,excludedNodesRegExp=/^(a|div)$/i,NS=".kendoTabStrip",IMG="img",HREF="href",PREV="prev",LINK="k-link",LAST="k-last",CLICK="click",ERROR="error",EMPTY=":empty",IMAGE="k-image",FIRST="k-first",SELECT="select",ACTIVATE="activate",CONTENT="k-content",CONTENTURL="contentUrl",MOUSEENTER="mouseenter",MOUSELEAVE="mouseleave",CONTENTLOAD="contentLoad",DISABLEDSTATE="k-state-disabled",DEFAULTSTATE="k-state-default",ACTIVESTATE="k-state-active",FOCUSEDSTATE="k-state-focused",HOVERSTATE="k-state-hover",TABONTOP="k-tab-on-top",NAVIGATABLEITEMS=".k-item:not(."+DISABLEDSTATE+")",CLICKABLEITEMS=".k-tabstrip-items > "+NAVIGATABLEITEMS,HOVERABLEITEMS=".k-tabstrip-items > "+NAVIGATABLEITEMS+":not(."+ACTIVESTATE+")",DISABLEDLINKS=".k-tabstrip-items > .k-state-disabled .k-link",templates={content:template("<div class='k-content'#= contentAttributes(data) # role='tabpanel'>#= content(item) #</div>"),itemWrapper:template("<#= tag(item) # class='k-link'#= contentUrl(item) ##= textAttributes(item) #>"+"#= image(item) ##= sprite(item) ##= text(item) #"+"</#= tag(item) #>"),item:template("<li class='#= wrapperCssClass(group, item) #' role='tab' #=item.active ? \"aria-selected='true'\" : ''#>"+"#= itemWrapper(data) #"+"</li>"),image:template("<img class='k-image' alt='' src='#= imageUrl #' />"),sprite:template("<span class='k-sprite #= spriteCssClass #'></span>"),empty:template("")},rendering={wrapperCssClass:function(group,item){var result="k-item",index=item.index;if(item.enabled===false){result+=" k-state-disabled";}else{result+=" k-state-default";}if(index===0){result+=" k-first";}if(index==group.length-1){result+=" k-last";}return result;},textAttributes:function(item){return item.url?" href='"+item.url+"'":"";},text:function(item){return item.encoded===false?item.text:kendo.htmlEncode(item.text);},tag:function(item){return item.url?"a":"span";},contentAttributes:function(content){return content.active!==true?" style='display:none' aria-hidden='true' aria-expanded='false'":"";},content:function(item){return item.content?item.content:item.contentUrl?"":"&nbsp;";},contentUrl:function(item){return item.contentUrl?kendo.attr("content-url")+'="'+item.contentUrl+'"':"";}};function updateTabClasses(tabs){tabs.children(IMG).addClass(IMAGE);tabs.children("a").addClass(LINK).children(IMG).addClass(IMAGE);tabs.filter(":not([disabled]):not([class*=k-state-disabled])").addClass(DEFAULTSTATE);tabs.filter("li[disabled]").addClass(DISABLEDSTATE).removeAttr("disabled");tabs.filter(":not([class*=k-state])").children("a").filter(":focus").parent().addClass(ACTIVESTATE+" "+TABONTOP);tabs.attr("role","tab");tabs.filter("."+ACTIVESTATE).attr("aria-selected",true);tabs.each(function(){var item=$(this);if(!item.children("."+LINK).length){item.contents().filter(function(){return(!this.nodeName.match(excludedNodesRegExp)&&!(this.nodeType==3&&!trim(this.nodeValue)));}).wrapAll("<a class='"+LINK+"'/>");}});}function updateFirstLast(tabGroup){var tabs=tabGroup.children(".k-item");tabs.filter(".k-first:not(:first-child)").removeClass(FIRST);tabs.filter(".k-last:not(:last-child)").removeClass(LAST);tabs.filter(":first-child").addClass(FIRST);tabs.filter(":last-child").addClass(LAST);}var TabStrip=Widget.extend({init:function(element,options){var that=this;Widget.fn.init.call(that,element,options);that._animations(that.options);if(that.element.is("ul")){that.wrapper=that.element.wrapAll("<div />").parent();}else{that.wrapper=that.element;}options=that.options;that.wrapper.on(CLICK+NS,DISABLEDLINKS,false).on("touchend"+NS+" click"+NS,CLICKABLEITEMS,function(e){if(that._click($(e.currentTarget))){e.preventDefault();}}).on(MOUSEENTER+NS+" "+MOUSELEAVE+NS,HOVERABLEITEMS,that._toggleHover).on("keydown"+NS,$.proxy(that._keydown,that)).on("focus"+NS,$.proxy(that._active,that)).on("blur"+NS,function(){that._current(null);});that._isRtl=kendo.support.isRtl(that.wrapper);that._tabindex();that._updateClasses();that._dataSource();if(options.dataSource){that.dataSource.fetch();}if(that.options.contentUrls){that.wrapper.find(".k-tabstrip-items > .k-item").each(function(index,item){$(item).find(">."+LINK).data(CONTENTURL,that.options.contentUrls[index]);});}var selectedItems=that.wrapper.find("li."+ACTIVESTATE),content=$(that.contentElement(selectedItems.parent().children().index(selectedItems)));if(content.length>0&&content[0].childNodes.length===0){that.activateTab(selectedItems.eq(0));}that.element.attr("role","tablist");if(that.element[0].id){that._ariaId=that.element[0].id+"_ts_active";}kendo.notify(that);},_active:function(){var item=this.tabGroup.children().filter("."+ACTIVESTATE);this._current(item[0]?item:this._endItem("first"));},_endItem:function(action){return this.tabGroup.children(NAVIGATABLEITEMS)[action]();},_item:function(item,action){var endItem;if(action===PREV){endItem="last";}else{endItem="first";}if(!item){return this._endItem(endItem);}item=item[action]();if(!item[0]){item=this._endItem(endItem);}if(item.hasClass(DISABLEDSTATE)){item=this._item(item,action);}return item;},_current:function(candidate){var that=this,focused=that._focused,id=that._ariaId;if(candidate===undefined){return focused;}if(focused){focused.removeClass(FOCUSEDSTATE);focused.removeAttr("id");}if(candidate){if(!candidate.hasClass(ACTIVESTATE)){candidate.addClass(FOCUSEDSTATE);}that.element.removeAttr("aria-activedescendant");if(id){candidate.attr("id",id);that.element.attr("aria-activedescendant",id);}}that._focused=candidate;},_keydown:function(e){var that=this,key=e.keyCode,current=that._current(),rtl=that._isRtl,action;if(e.target!=e.currentTarget){return;}if(key==keys.DOWN||key==keys.RIGHT){action=rtl?PREV:"next";}else if(key==keys.UP||key==keys.LEFT){action=rtl?"next":PREV;}else if(key==keys.ENTER||key==keys.SPACEBAR){that._click(current);e.preventDefault();}else if(key==keys.HOME){that._click(that._endItem("first"));e.preventDefault();return;}else if(key==keys.END){that._click(that._endItem("last"));e.preventDefault();return;}if(action){that._click(that._item(current,action));e.preventDefault();}},_dataSource:function(){var that=this;if(that.dataSource&&that._refreshHandler){that.dataSource.unbind("change",that._refreshHandler);}else{that._refreshHandler=$.proxy(that.refresh,that);}that.dataSource=kendo.data.DataSource.create(that.options.dataSource).bind("change",that._refreshHandler);},setDataSource:function(dataSource){this.options.dataSource=dataSource;this._dataSource();dataSource.fetch();},_animations:function(options){if(options&&("animation"in options)&&!options.animation){options.animation={open:{effects:{}},close:{effects:{}}};}},refresh:function(e){var that=this,options=that.options,text=kendo.getter(options.dataTextField),content=kendo.getter(options.dataContentField),contentUrl=kendo.getter(options.dataContentUrlField),image=kendo.getter(options.dataImageUrlField),url=kendo.getter(options.dataUrlField),sprite=kendo.getter(options.dataSpriteCssClass),idx,tabs=[],tab,action,view=that.dataSource.view(),length;e=e||{};action=e.action;if(action){view=e.items;}for(idx=0,length=view.length;idx<length;idx++){tab={text:text(view[idx])};if(options.dataContentField){tab.content=content(view[idx]);}if(options.dataContentUrlField){tab.contentUrl=contentUrl(view[idx]);}if(options.dataUrlField){tab.url=url(view[idx]);}if(options.dataImageUrlField){tab.imageUrl=image(view[idx]);}if(options.dataSpriteCssClass){tab.spriteCssClass=sprite(view[idx]);}tabs[idx]=tab;}if(e.action=="add"){if(e.index<that.tabGroup.children().length){that.insertBefore(tabs,that.tabGroup.children().eq(e.index));}else{that.append(tabs);}}else if(e.action=="remove"){for(idx=0;idx<view.length;idx++){that.remove(e.index);}}else if(e.action=="itemchange"){idx=that.dataSource.view().indexOf(view[0]);if(e.field===options.dataTextField){that.tabGroup.children().eq(idx).find(".k-link").text(view[0].get(e.field));}}else{that.trigger("dataBinding");that.remove("li");that.append(tabs);that.trigger("dataBound");}},value:function(value){var that=this;if(value!==undefined){if(value!=that.value()){that.tabGroup.children().each(function(){if($.trim($(this).text())==value){that.select(this);}});}}else{return that.select().text();}},items:function(){return this.tabGroup[0].children;},setOptions:function(options){var animation=this.options.animation;this._animations(options);options.animation=extend(true,animation,options.animation);Widget.fn.setOptions.call(this,options);},events:[SELECT,ACTIVATE,ERROR,CONTENTLOAD,"change","dataBinding","dataBound"],options:{name:"TabStrip",dataTextField:"",dataContentField:"",dataImageUrlField:"",dataUrlField:"",dataSpriteCssClass:"",dataContentUrlField:"",animation:{open:{effects:"expand:vertical fadeIn",duration:200},close:{duration:200}},collapsible:false},destroy:function(){var that=this;Widget.fn.destroy.call(that);if(that._refreshHandler){that.dataSource.unbind("change",that._refreshHandler);}that.wrapper.off(NS);kendo.destroy(that.wrapper);},select:function(element){var that=this;if(arguments.length===0){return that.tabGroup.find("li."+ACTIVESTATE);}if(!isNaN(element)){element=that.tabGroup.children().get(element);}element=that.tabGroup.find(element);$(element).each(function(index,item){item=$(item);if(!item.hasClass(ACTIVESTATE)&&!that.trigger(SELECT,{item:item[0],contentElement:that.contentElement(item.index())})){that.activateTab(item);}});return that;},enable:function(element,state){this._toggleDisabled(element,state!==false);return this;},disable:function(element){this._toggleDisabled(element,false);return this;},reload:function(element){element=this.tabGroup.find(element);var that=this;element.each(function(){var item=$(this),contentUrl=item.find("."+LINK).data(CONTENTURL),content=$(that.contentElement(item.index()));if(contentUrl){that.ajaxRequest(item,content,null,contentUrl);}});return that;},append:function(tab){var that=this,inserted=that._create(tab);each(inserted.tabs,function(idx){that.tabGroup.append(this);that.wrapper.append(inserted.contents[idx]);});updateFirstLast(that.tabGroup);that._updateContentElements();return that;},insertBefore:function(tab,referenceTab){var that=this,inserted=that._create(tab),referenceContent=$(that.contentElement(referenceTab.index()));each(inserted.tabs,function(idx){referenceTab.before(this);referenceContent.before(inserted.contents[idx]);});updateFirstLast(that.tabGroup);that._updateContentElements();return that;},insertAfter:function(tab,referenceTab){var that=this,inserted=that._create(tab),referenceContent=$(that.contentElement(referenceTab.index()));each(inserted.tabs,function(idx){referenceTab.after(this);referenceContent.after(inserted.contents[idx]);});updateFirstLast(that.tabGroup);that._updateContentElements();return that;},remove:function(elements){var that=this,type=typeof elements,contents=$();if(type==="string"){elements=that.tabGroup.find(elements);}else if(type==="number"){elements=that.tabGroup.children().eq(elements);}elements.each(function(){contents.push(that.contentElement($(this).index()));});elements.remove();contents.remove();that._updateContentElements();return that;},_create:function(tab){var plain=$.isPlainObject(tab),that=this,tabs,contents;if(plain||$.isArray(tab)){tab=$.isArray(tab)?tab:[tab];tabs=map(tab,function(value,idx){return $(TabStrip.renderItem({group:that.tabGroup,item:extend(value,{index:idx})}));});contents=map(tab,function(value,idx){if(value.content||value.contentUrl){return $(TabStrip.renderContent({item:extend(value,{index:idx})}));}});}else{tabs=$(tab);contents=$("<div class='"+CONTENT+"'/>");updateTabClasses(tabs);}return{tabs:tabs,contents:contents};},_toggleDisabled:function(element,enable){element=this.tabGroup.find(element);element.each(function(){$(this).toggleClass(DEFAULTSTATE,enable).toggleClass(DISABLEDSTATE,!enable);});},_updateClasses:function(){var that=this,tabs,activeItem,activeTab;that.wrapper.addClass("k-widget k-header k-tabstrip");that.tabGroup=that.wrapper.children("ul").addClass("k-tabstrip-items k-reset");if(!that.tabGroup[0]){that.tabGroup=$("<ul class='k-tabstrip-items k-reset'/>").appendTo(that.wrapper);}tabs=that.tabGroup.find("li").addClass("k-item");if(tabs.length){activeItem=tabs.filter("."+ACTIVESTATE).index();activeTab=activeItem>=0?activeItem:undefined;that.tabGroup.contents().filter(function(){return(this.nodeType==3&&!trim(this.nodeValue));}).remove();}tabs.eq(activeItem).addClass(TABONTOP);that.contentElements=that.wrapper.children("div");that.contentElements.addClass(CONTENT).eq(activeTab).addClass(ACTIVESTATE).css({display:"block"});if(tabs.length){updateTabClasses(tabs);updateFirstLast(that.tabGroup);that._updateContentElements();}},_updateContentElements:function(){var that=this,contentUrls=that.options.contentUrls||[],tabStripID=that.element.attr("id"),contentElements=that.wrapper.children("div");that.tabGroup.find(".k-item").each(function(idx){var currentContent=contentElements.eq(idx),id=tabStripID+"-"+(idx+1);this.setAttribute("aria-controls",id);if(!currentContent.length&&contentUrls[idx]){$("<div id='"+id+"' class='"+CONTENT+"'/>").appendTo(that.wrapper);}else{currentContent.attr("id",id);}currentContent.attr("role","tabpanel");currentContent.filter(":not(."+ACTIVESTATE+")").attr("aria-hidden",true).attr("aria-expanded",false);currentContent.filter("."+ACTIVESTATE).attr("aria-expanded",true);});that.contentElements=that.contentAnimators=that.wrapper.children("div");if(kendo.kineticScrollNeeded&&kendo.mobile.ui.Scroller){kendo.touchScroller(that.contentElements);that.contentElements=that.contentElements.children(".km-scroll-container");}},_toggleHover:function(e){$(e.currentTarget).toggleClass(HOVERSTATE,e.type==MOUSEENTER);},_click:function(item){var that=this,link=item.find("."+LINK),href=link.attr(HREF),collapse=that.options.collapsible,content=$(that.contentElement(item.index())),prevent,isAnchor;if(item.closest(".k-widget")[0]!=that.wrapper[0]){return;}if(item.is("."+DISABLEDSTATE+(!collapse?",."+ACTIVESTATE:""))){return true;}if(that.tabGroup.children("[data-animating], [data-in-request]").length){return;}if(that.trigger(SELECT,{item:item[0],contentElement:content[0]})){return true;}isAnchor=link.data(CONTENTURL)||(href&&(href.charAt(href.length-1)=="#"||href.indexOf("#"+that.element[0].id+"-")!=-1));if(!href||isAnchor){prevent=true;}else{return;}if(collapse&&item.is("."+ACTIVESTATE)){that.deactivateTab(item);return true;}if(that.activateTab(item)){prevent=true;}return prevent;},deactivateTab:function(item){var that=this,animationSettings=that.options.animation,animation=animationSettings.open,close=extend({},animationSettings.close),hasCloseAnimation=close&&"effects"in close;item=that.tabGroup.find(item);close=extend(hasCloseAnimation?close:extend({reverse:true},animation),{hide:true});if(kendo.size(animation.effects)){item.kendoAddClass(DEFAULTSTATE,{duration:animation.duration});item.kendoRemoveClass(ACTIVESTATE,{duration:animation.duration});}else{item.addClass(DEFAULTSTATE);item.removeClass(ACTIVESTATE);}item.removeAttr("aria-selected");that.contentAnimators.filter("."+ACTIVESTATE).kendoStop(true,true).kendoAnimate(close).removeClass(ACTIVESTATE).attr("aria-hidden",true);},activateTab:function(item){item=this.tabGroup.find(item);var that=this,animationSettings=that.options.animation,animation=animationSettings.open,close=extend({},animationSettings.close),hasCloseAnimation=close&&"effects"in close,neighbours=item.parent().children(),oldTab=neighbours.filter("."+ACTIVESTATE),itemIndex=neighbours.index(item);close=extend(hasCloseAnimation?close:extend({reverse:true},animation),{hide:true});if(kendo.size(animation.effects)){oldTab.kendoRemoveClass(ACTIVESTATE,{duration:close.duration});item.kendoRemoveClass(HOVERSTATE,{duration:close.duration});}else{oldTab.removeClass(ACTIVESTATE);item.removeClass(HOVERSTATE);}var contentAnimators=that.contentAnimators;if(contentAnimators.length===0){oldTab.removeClass(TABONTOP);item.addClass(TABONTOP).css("z-index");item.addClass(ACTIVESTATE);that._current(item);that.trigger("change");return false;}var visibleContents=contentAnimators.filter("."+ACTIVESTATE),content=$(that.contentElement(itemIndex));if(content.length===0){visibleContents.removeClass(ACTIVESTATE).attr("aria-hidden",true).kendoStop(true,true).kendoAnimate(close);return false;}item.attr("data-animating",true);var isAjaxContent=(item.children("."+LINK).data(CONTENTURL)||false)&&content.is(EMPTY),showContentElement=function(){oldTab.removeClass(TABONTOP);item.addClass(TABONTOP).css("z-index");if(kendo.size(animation.effects)){oldTab.kendoAddClass(DEFAULTSTATE,{duration:animation.duration});item.kendoAddClass(ACTIVESTATE,{duration:animation.duration});}else{oldTab.addClass(DEFAULTSTATE);item.addClass(ACTIVESTATE);}oldTab.removeAttr("aria-selected");item.attr("aria-selected",true);that._current(item);content.closest(".k-content").addClass(ACTIVESTATE).removeAttr("aria-hidden").kendoStop(true,true).attr("aria-expanded",true).kendoAnimate(extend({init:function(){that.trigger(ACTIVATE,{item:item[0],contentElement:content[0]});}},animation,{complete:function(){item.removeAttr("data-animating");}}));},showContent=function(){if(!isAjaxContent){showContentElement();that.trigger("change");}else{that.ajaxRequest(item,content,function(){showContentElement();that.trigger("change");});}};visibleContents.removeClass(ACTIVESTATE);visibleContents.attr("aria-hidden",true);visibleContents.attr("aria-expanded",false);if(visibleContents.length){visibleContents.kendoStop(true,true).kendoAnimate(extend({complete:showContent},close));}else{showContent();}return true;},contentElement:function(itemIndex){if(isNaN(itemIndex-0)){return undefined;}var contentElements=this.contentElements&&this.contentElements[0]&&!kendo.kineticScrollNeeded?this.contentElements:this.contentAnimators,idTest=new RegExp("-"+(itemIndex+1)+"$");if(contentElements){for(var i=0,len=contentElements.length;i<len;i++){if(idTest.test(contentElements.closest(".k-content")[i].id)){return contentElements[i];}}}return undefined;},ajaxRequest:function(element,content,complete,url){element=this.tabGroup.find(element);if(element.find(".k-loading").length){return;}var that=this,link=element.find("."+LINK),data={},statusIcon=null,loadingIconTimeout=setTimeout(function(){statusIcon=$("<span class='k-icon k-loading'/>").prependTo(link);},100);element.attr("data-in-request",true);$.ajax({type:"GET",cache:false,url:url||link.data(CONTENTURL)||link.attr(HREF),dataType:"html",data:data,error:function(xhr,status){element.removeAttr("data-animating");if(that.trigger("error",{xhr:xhr,status:status})){this.complete();}},complete:function(){element.removeAttr("data-in-request");clearTimeout(loadingIconTimeout);if(statusIcon!==null){statusIcon.remove();}},success:function(data,textStatus){content.html(data);if(complete){complete.call(that,content);}that.trigger(CONTENTLOAD,{item:element[0],contentElement:content[0]});}});}});extend(TabStrip,{renderItem:function(options){options=extend({tabStrip:{},group:{}},options);var empty=templates.empty,item=options.item;return templates.item(extend(options,{image:item.imageUrl?templates.image:empty,sprite:item.spriteCssClass?templates.sprite:empty,itemWrapper:templates.itemWrapper},rendering));},renderContent:function(options){return templates.content(extend(options,rendering));}});kendo.ui.plugin(TabStrip);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,keys=kendo.keys,extractFormat=kendo._extractFormat,ui=kendo.ui,Widget=ui.Widget,OPEN="open",CLOSE="close",CHANGE="change",ns=".kendoTimePicker",CLICK="touchend"+ns+" click"+ns,DEFAULT="k-state-default",DISABLED="disabled",LI="li",SPAN="<span/>",FOCUSED="k-state-focused",HOVER="k-state-hover",HOVEREVENTS="mouseenter"+ns+" mouseleave"+ns,MOUSEDOWN="mousedown"+ns,MS_PER_MINUTE=60000,MS_PER_DAY=86400000,SELECTED="k-state-selected",STATEDISABLED="k-state-disabled",ARIA_SELECTED="aria-selected",ARIA_EXPANDED="aria-expanded",ARIA_HIDDEN="aria-hidden",ARIA_ACTIVEDESCENDANT="aria-activedescendant",ID="id",isArray=$.isArray,extend=$.extend,proxy=$.proxy,DATE=Date,TODAY=new DATE();TODAY=new DATE(TODAY.getFullYear(),TODAY.getMonth(),TODAY.getDate(),0,0,0);var TimeView=function(options){var that=this,id=options.id;that.options=options;that.ul=$('<ul tabindex="-1" role="listbox" aria-hidden="true" unselectable="on" class="k-list k-reset"/>').css({overflow:kendo.support.kineticScrollNeeded?"":"auto"}).on(CLICK,LI,proxy(that._click,that)).on("mouseenter"+ns,LI,function(){$(this).addClass(HOVER);}).on("mouseleave"+ns,LI,function(){$(this).removeClass(HOVER);});that.list=$("<div class='k-list-container'/>").append(that.ul).on(MOUSEDOWN,preventDefault);if(id){that._timeViewID=id+"_timeview";that._optionID=id+"_option_selected";that.ul.attr(ID,that._timeViewID);}that._popup();that.template=kendo.template('<li tabindex="-1" role="option" class="k-item" unselectable="on">#=data#</li>',{useWithBlock:false});};TimeView.prototype={current:function(candidate){var that=this,active=that.options.active;if(candidate!==undefined){if(that._current){that._current.removeClass(SELECTED).removeAttr(ARIA_SELECTED).removeAttr(ID);}if(candidate){candidate=$(candidate).addClass(SELECTED).attr(ID,that._optionID).attr(ARIA_SELECTED,true);that.scroll(candidate[0]);}that._current=candidate;if(active){active(candidate);}}else{return that._current;}},close:function(){this.popup.close();},destroy:function(){var that=this;that.ul.off(ns);that.list.off(ns);that.popup.destroy();},open:function(){var that=this;if(!that.ul[0].firstChild){that.bind();}that.popup.open();if(that._current){that.scroll(that._current[0]);}},dataBind:function(dates){var that=this,options=that.options,format=options.format,toString=kendo.toString,template=that.template,length=dates.length,idx=0,date,html="";for(;idx<length;idx++){date=dates[idx];if(isInRange(date,options.min,options.max)){html+=template(toString(date,format,options.culture));}}that._html(html,length);},refresh:function(){var that=this,options=that.options,format=options.format,offset=dst(),ignoreDST=offset<0,min=options.min,max=options.max,msMin=getMilliseconds(min),msMax=getMilliseconds(max),msInterval=options.interval*MS_PER_MINUTE,toString=kendo.toString,template=that.template,start=new DATE(+min),idx=0,length,html="";if(ignoreDST){length=(MS_PER_DAY+(offset*MS_PER_MINUTE))/msInterval;}else{length=MS_PER_DAY/msInterval;}if(msMin!=msMax){if(msMin>msMax){msMax+=MS_PER_DAY;}length=(msMax-msMin)/msInterval+1;}for(;idx<length;idx++){if(idx){setTime(start,msInterval,ignoreDST);}if(msMax&&getMilliseconds(start)>msMax){start=new DATE(+max);}html+=template(toString(start,format,options.culture));}that._html(html,length);},bind:function(){var that=this,dates=that.options.dates;if(dates&&dates[0]){that.dataBind(dates);}else{that.refresh();}},_html:function(html,length){var that=this;that.ul[0].innerHTML=html;that._height(length);that.current(null);that.select(that._value);},scroll:function(item){if(!item){return;}var ul=this.ul[0],itemOffsetTop=item.offsetTop,itemOffsetHeight=item.offsetHeight,ulScrollTop=ul.scrollTop,ulOffsetHeight=ul.clientHeight,bottomDistance=itemOffsetTop+itemOffsetHeight;ul.scrollTop=ulScrollTop>itemOffsetTop?itemOffsetTop:bottomDistance>(ulScrollTop+ulOffsetHeight)?bottomDistance-ulOffsetHeight:ulScrollTop;},select:function(li){var that=this,options=that.options,current=that._current;if(li instanceof Date){li=kendo.toString(li,options.format,options.culture);}if(typeof li==="string"){if(!current||current.text()!==li){li=$.grep(that.ul[0].childNodes,function(node){return(node.textContent||node.innerText)==li;});li=li[0]?li:null;}else{li=current;}}that.current(li);},toggle:function(){var that=this;if(that.popup.visible()){that.close();}else{that.open();}},value:function(value){var that=this;that._value=value;if(that.ul[0].firstChild){that.select(value);}},_click:function(e){var that=this,li=$(e.currentTarget);if(!e.isDefaultPrevented()){that.select(li);that.options.change(li.text(),true);that.close();}},_height:function(length){if(length){var that=this,list=that.list,parent=list.parent(".k-animation-container"),height=that.options.height;list.add(parent).show().height(that.ul[0].scrollHeight>height?height:"auto").hide();}},_parse:function(value){var that=this,options=that.options,current=that._value||TODAY;if(value instanceof DATE){return value;}value=kendo.parseDate(value,options.parseFormats,options.culture);if(value){value=new DATE(current.getFullYear(),current.getMonth(),current.getDate(),value.getHours(),value.getMinutes(),value.getSeconds(),value.getMilliseconds());}return value;},_popup:function(){var that=this,list=that.list,options=that.options,anchor=options.anchor,width;that.popup=new ui.Popup(list,extend(options.popup,{anchor:anchor,open:options.open,close:options.close,animation:options.animation,isRtl:kendo.support.isRtl(options.anchor)}));width=anchor.outerWidth()-(list.outerWidth()-list.width());list.css({fontFamily:anchor.css("font-family"),width:width});kendo.touchScroller(that.popup.element);},move:function(e){var that=this,key=e.keyCode,ul=that.ul[0],current=that._current,down=key===keys.DOWN;if(key===keys.UP||down){if(e.altKey){that.toggle(down);return;}else if(down){current=current?current[0].nextSibling:ul.firstChild;}else{current=current?current[0].previousSibling:ul.lastChild;}if(current){that.select(current);}that.options.change(that._current.text());e.preventDefault();}else if(key===keys.ENTER||key===keys.TAB||key===keys.ESC){e.preventDefault();if(current){that.options.change(current.text(),true);}that.close();}}};function setTime(date,time,ignoreDST){var offset=date.getTimezoneOffset(),offsetDiff;date.setTime(date.getTime()+time);if(!ignoreDST){offsetDiff=date.getTimezoneOffset()-offset;date.setTime(date.getTime()+offsetDiff*MS_PER_MINUTE);}}function dst(){var today=new DATE(),midnight=new DATE(today.getFullYear(),today.getMonth(),today.getDate(),0,0,0),noon=new DATE(today.getFullYear(),today.getMonth(),today.getDate(),12,0,0);return-1*(midnight.getTimezoneOffset()-noon.getTimezoneOffset());}function getMilliseconds(date){return date.getHours()*60*MS_PER_MINUTE+date.getMinutes()*MS_PER_MINUTE+date.getSeconds()*1000+date.getMilliseconds();}function isInRange(value,min,max){var msMin=getMilliseconds(min),msMax=getMilliseconds(max),msValue;if(!value||msMin==msMax){return true;}msValue=getMilliseconds(value);if(msMin>msValue){msValue+=MS_PER_DAY;}if(msMax<msMin){msMax+=MS_PER_DAY;}return msValue>=msMin&&msValue<=msMax;}TimeView.getMilliseconds=getMilliseconds;kendo.TimeView=TimeView;var TimePicker=Widget.extend({init:function(element,options){var that=this,ul,timeView;Widget.fn.init.call(that,element,options);element=that.element;options=that.options;normalize(options);that._wrapper();that.timeView=timeView=new TimeView(extend({},options,{id:element.attr(ID),anchor:that.wrapper,format:options.format,change:function(value,trigger){if(trigger){that._change(value);}else{element.val(value);}},open:function(e){if(that.trigger(OPEN)){e.preventDefault();}else{element.attr(ARIA_EXPANDED,true);ul.attr(ARIA_HIDDEN,false);}},close:function(e){if(that.trigger(CLOSE)){e.preventDefault();}else{element.attr(ARIA_EXPANDED,false);ul.attr(ARIA_HIDDEN,true);}},active:function(current){element.removeAttr(ARIA_ACTIVEDESCENDANT);if(current){element.attr(ARIA_ACTIVEDESCENDANT,timeView._optionID);}}}));ul=timeView.ul;that._icon();that._reset();element[0].type="text";element.addClass("k-input").on("keydown"+ns,proxy(that._keydown,that)).on("blur"+ns,proxy(that._blur,that)).on("focus"+ns,function(){that._inputWrapper.addClass(FOCUSED);}).attr({"role":"textbox","aria-haspopup":true,"aria-expanded":false,"aria-owns":timeView._timeViewID});that.enable(!element.is('[disabled]'));that.value(options.value||element.val());kendo.notify(that);},options:{name:"TimePicker",min:TODAY,max:TODAY,format:"",dates:[],parseFormats:[],value:null,interval:30,height:200,animation:{}},events:[OPEN,CLOSE,CHANGE],setOptions:function(options){var that=this,timeView=that.timeView,timeViewOptions=timeView.options;Widget.fn.setOptions.call(that,options);normalize(that.options);timeView.options=extend(timeViewOptions,that.options,{active:timeViewOptions.active,change:timeViewOptions.change,close:timeViewOptions.close,open:timeViewOptions.open});timeView.ul[0].innerHTML="";},dataBind:function(dates){if(isArray(dates)){this.timeView.dataBind(dates);}},enable:function(enable){var that=this,element=that.element,arrow=that._arrow.off(ns),wrapper=that._inputWrapper.off(HOVEREVENTS);if(enable===false){wrapper.removeClass(DEFAULT).addClass(STATEDISABLED);element.attr(DISABLED,DISABLED);}else{wrapper.removeClass(STATEDISABLED).addClass(DEFAULT).on(HOVEREVENTS,that._toggleHover);element.removeAttr(DISABLED);arrow.on(CLICK,proxy(that._click,that)).on(MOUSEDOWN,preventDefault);}},destroy:function(){var that=this;Widget.fn.destroy.call(that);that.timeView.destroy();that.element.off(ns);that._arrow.off(ns);that._inputWrapper.off(ns);if(that._form){that._form.off("reset",that._resetHandler);}},close:function(){this.timeView.close();},open:function(){this.timeView.open();},min:function(value){return this._option("min",value);},max:function(value){return this._option("max",value);},value:function(value){var that=this;if(value===undefined){return that._value;}that._old=that._update(value);},_blur:function(){var that=this;that.close();that._change(that.element.val());that._inputWrapper.removeClass(FOCUSED);},_click:function(e){var that=this,element=that.element;that.timeView.toggle();if(e.type==="click"&&element[0]!==document.activeElement){element.focus();}},_change:function(value){var that=this;value=that._update(value);if(+that._old!=+value){that._old=value;that.trigger(CHANGE);that.element.trigger(CHANGE);}},_icon:function(){var that=this,element=that.element,arrow;arrow=element.next("span.k-select");if(!arrow[0]){arrow=$('<span unselectable="on" class="k-select"><span unselectable="on" class="k-icon k-i-clock">select</span></span>').insertAfter(element);}that._arrow=arrow.attr({"role":"button","aria-controls":that.timeView._timeViewID});},_keydown:function(e){var that=this,key=e.keyCode,timeView=that.timeView;if(timeView.popup.visible()||e.altKey){timeView.move(e);}else if(key===keys.ENTER){that._change(that.element.val());}},_option:function(option,value){var that=this,options=that.options;if(value===undefined){return options[option];}value=that.timeView._parse(value);if(!value){return;}value=new DATE(+value);options[option]=value;that.timeView.options[option]=value;that.timeView.bind();},_toggleHover:function(e){$(e.currentTarget).toggleClass(HOVER,e.type==="mouseenter");},_update:function(value){var that=this,options=that.options,timeView=that.timeView,date=timeView._parse(value);if(!isInRange(date,options.min,options.max)){date=null;}that._value=date;that.element.val(date?kendo.toString(date,options.format,options.culture):value);timeView.value(date);return date;},_wrapper:function(){var that=this,element=that.element,wrapper;wrapper=element.parents(".k-timepicker");if(!wrapper[0]){wrapper=element.wrap(SPAN).parent().addClass("k-picker-wrap k-state-default");wrapper=wrapper.wrap(SPAN).parent();}wrapper[0].style.cssText=element[0].style.cssText;element.css({width:"100%",height:element[0].style.height});that.wrapper=wrapper.addClass("k-widget k-timepicker k-header").addClass(element[0].className);that._inputWrapper=$(wrapper[0].firstChild);},_reset:function(){var that=this,element=that.element,form=element.closest("form");if(form[0]){that._resetHandler=function(){that.value(element[0].defaultValue);};that._form=form.on("reset",that._resetHandler);}}});function normalize(options){var parseFormats=options.parseFormats;options.format=extractFormat(options.format||kendo.getCulture(options.culture).calendars.standard.patterns.t);parseFormats=isArray(parseFormats)?parseFormats:[parseFormats];parseFormats.splice(0,0,options.format);options.parseFormats=parseFormats;}function preventDefault(e){e.preventDefault();}ui.plugin(TimePicker);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,TimeView=kendo.TimeView,parse=kendo.parseDate,extractFormat=kendo._extractFormat,calendar=kendo.calendar,isInRange=calendar.isInRange,restrictValue=calendar.restrictValue,isEqualDatePart=calendar.isEqualDatePart,getMilliseconds=TimeView.getMilliseconds,ui=kendo.ui,Widget=ui.Widget,OPEN="open",CLOSE="close",CHANGE="change",ns=".kendoDateTimePicker",CLICK="touchend"+ns+" click"+ns,DISABLED="disabled",DEFAULT="k-state-default",FOCUSED="k-state-focused",HOVER="k-state-hover",STATEDISABLED="k-state-disabled",HOVEREVENTS="mouseenter"+ns+" mouseleave"+ns,MOUSEDOWN="touchstart"+ns+" mousedown"+ns,MONTH="month",SPAN="<span/>",ARIA_ACTIVEDESCENDANT="aria-activedescendant",ARIA_EXPANDED="aria-expanded",ARIA_HIDDEN="aria-hidden",ARIA_OWNS="aria-owns",DATE=Date,MIN=new DATE(1900,0,1),MAX=new DATE(2099,11,31),dateViewParams={view:"date"},timeViewParams={view:"time"},extend=$.extend;var DateTimePicker=Widget.extend({init:function(element,options){var that=this;Widget.fn.init.call(that,element,options);element=that.element;options=that.options;normalize(options);that._wrapper();that._views();that._icons();that._reset();that._template();element[0].type="text";element.addClass("k-input").on("keydown"+ns,$.proxy(that._keydown,that)).on("focus"+ns,function(){that._inputWrapper.addClass(FOCUSED);}).on("blur"+ns,function(){that._inputWrapper.removeClass(FOCUSED);that._change(element.val());that.close("date");that.close("time");}).attr({"role":"textbox","aria-haspopup":true,"aria-expanded":false});that._midnight=getMilliseconds(options.min)+getMilliseconds(options.max)===0;that.enable(!element.is('[disabled]'));that.value(options.value||element.val());kendo.notify(that);},options:{name:"DateTimePicker",value:null,format:"",timeFormat:"",culture:"",parseFormats:[],dates:[],min:new DATE(MIN),max:new DATE(MAX),interval:30,height:200,footer:"",start:MONTH,depth:MONTH,animation:{},month:{},ARIATemplate:'Current focused date is #=kendo.toString(data.current, "G")#'},events:[OPEN,CLOSE,CHANGE],setOptions:function(options){var that=this,dateViewOptions=that.dateView.options,timeViewOptions=that.timeView.options;Widget.fn.setOptions.call(that,options);normalize(that.options);options=that.options;extend(dateViewOptions,options,{change:dateViewOptions.change,close:dateViewOptions.close,open:dateViewOptions.open});extend(timeViewOptions,options,{format:options.timeFormat,active:timeViewOptions.active,change:timeViewOptions.change,close:timeViewOptions.close,open:timeViewOptions.open});that.timeView.ul[0].innerHTML="";},enable:function(enable){var that=this,element=that.element,dateIcon=that._dateIcon.off(ns),timeIcon=that._timeIcon.off(ns),wrapper=that._inputWrapper.off(HOVEREVENTS);if(enable===false){wrapper.removeClass(DEFAULT).addClass(STATEDISABLED);element.attr(DISABLED,DISABLED);}else{wrapper.addClass(DEFAULT).removeClass(STATEDISABLED).on(HOVEREVENTS,that._toggleHover);element.removeAttr(DISABLED);dateIcon.on(MOUSEDOWN,preventDefault).on(CLICK,function(e){that.toggle("date");if(e.type==="click"&&element[0]!==document.activeElement){element.focus();}});timeIcon.on(MOUSEDOWN,preventDefault).on(CLICK,function(e){that.toggle("time");if(e.type==="click"&&element[0]!==document.activeElement){element.focus();}});}},destroy:function(){var that=this;Widget.fn.destroy.call(that);that.dateView.destroy();that.timeView.destroy();that.element.off(ns);that._dateIcon.off(ns);that._timeIcon.off(ns);that._inputWrapper.off(ns);if(that._form){that._form.off("reset",that._resetHandler);}},close:function(view){if(view!=="time"){view="date";}this[view+"View"].close();},open:function(view){if(view!=="time"){view="date";}this[view+"View"].open();},min:function(value){return this._option("min",value);},max:function(value){return this._option("max",value);},toggle:function(view){var secondView="timeView";if(view!=="time"){view="date";}else{secondView="dateView";}this[view+"View"].toggle();this[secondView].close();},value:function(value){var that=this;if(value===undefined){return that._value;}that._old=that._update(value);},_change:function(value){var that=this;value=that._update(value);if(+that._old!=+value){that._old=value;that.trigger(CHANGE);that.element.trigger(CHANGE);}},_option:function(option,value){var that=this,options=that.options,timeView=that.timeView,timeViewOptions=timeView.options,current=that._value||that._old;if(value===undefined){return options[option];}value=parse(value,options.parseFormats,options.culture);if(!value){return;}options[option]=new DATE(+value);that.dateView[option](value);that._midnight=getMilliseconds(options.min)+getMilliseconds(options.max)===0;if(current&&isEqualDatePart(value,current)){if(that._midnight&&option=="max"){timeViewOptions[option]=MAX;timeView.dataBind([MAX]);return;}timeViewOptions[option]=value;}else{timeViewOptions.max=MAX;timeViewOptions.min=MIN;}timeView.bind();},_toggleHover:function(e){$(e.currentTarget).toggleClass(HOVER,e.type==="mouseenter");},_update:function(value){var that=this,options=that.options,min=options.min,max=options.max,dates=options.dates,timeView=that.timeView,date=parse(value,options.parseFormats,options.culture),rebind,timeViewOptions,old,skip,formattedValue;if(+date===+that._value){formattedValue=kendo.toString(date,options.format,options.culture);if(formattedValue!==value){that.element.val(date===null?value:formattedValue);}return date;}if(date!==null&&isEqualDatePart(date,min)){date=restrictValue(date,min,max);}else if(!isInRange(date,min,max)){date=null;}that._value=date;timeView.value(date);that.dateView.value(date);if(date){old=that._old;timeViewOptions=timeView.options;if(dates[0]){dates=$.grep(dates,function(d){return isEqualDatePart(date,d);});if(dates[0]){timeView.dataBind(dates);skip=true;}}if(!skip){if(isEqualDatePart(date,min)){timeViewOptions.min=min;timeViewOptions.max=MAX;rebind=true;}if(isEqualDatePart(date,max)){if(that._midnight){timeView.dataBind([MAX]);skip=true;}else{timeViewOptions.max=max;if(!rebind){timeViewOptions.min=MIN;}rebind=true;}}}if(!skip&&((!old&&rebind)||(old&&!isEqualDatePart(old,date)))){if(!rebind){timeViewOptions.max=MAX;timeViewOptions.min=MIN;}timeView.bind();}}that.element.val(date?kendo.toString(date,options.format,options.culture):value);that._updateARIA(date);return date;},_keydown:function(e){var that=this,dateView=that.dateView,timeView=that.timeView,isDateViewVisible=dateView.popup.visible();if(e.altKey&&e.keyCode===kendo.keys.DOWN){that.toggle(isDateViewVisible?"time":"date");}else if(isDateViewVisible){dateView.move(e);that._updateARIA(dateView._current);}else if(timeView.popup.visible()){timeView.move(e);}else if(e.keyCode===kendo.keys.ENTER){that._change(that.element.val());}},_views:function(){var that=this,element=that.element,options=that.options,id=element.attr("id"),dateView,timeView,div,ul,date;that.dateView=dateView=new kendo.DateView(extend({},options,{id:id,anchor:that.wrapper,change:function(){var value=dateView.calendar.value(),msValue=+value,msMin=+options.min,msMax=+options.max,current;if(msValue===msMin||msValue===msMax){current=new DATE(+that._value);current.setFullYear(value.getFullYear());current.setMonth(value.getMonth());current.setDate(value.getDate());if(isInRange(current,msMin,msMax)){value=current;}}that._change(value);that.close("date");},close:function(e){if(that.trigger(CLOSE,dateViewParams)){e.preventDefault();}else{element.attr(ARIA_EXPANDED,false);div.attr(ARIA_HIDDEN,true);if(!timeView.popup.visible()){element.removeAttr(ARIA_OWNS);}}},open:function(e){if(that.trigger(OPEN,dateViewParams)){e.preventDefault();}else{date=parse(element.val(),options.parseFormats,options.culture);if(!date){that.dateView.value(date);}else{that.dateView._current=date;that.dateView.calendar._focus(date);}div.attr(ARIA_HIDDEN,false);element.attr(ARIA_EXPANDED,true).attr(ARIA_OWNS,dateView._dateViewID);}}}));div=dateView.div;that.timeView=timeView=new TimeView({id:id,value:options.value,anchor:that.wrapper,animation:options.animation,format:options.timeFormat,culture:options.culture,height:options.height,interval:options.interval,min:new DATE(MIN),max:new DATE(MAX),parseFormats:options.parseFormats,change:function(value,trigger){value=timeView._parse(value);if(value<options.min){value=new DATE(+options.min);timeView.options.min=value;}else if(value>options.max){value=new DATE(+options.max);timeView.options.max=value;}if(trigger){that._timeSelected=true;that._change(value);}else{element.val(kendo.toString(value,options.format,options.culture));dateView.value(value);that._updateARIA(value);}},close:function(e){if(that.trigger(CLOSE,timeViewParams)){e.preventDefault();}else{ul.attr(ARIA_HIDDEN,true);element.attr(ARIA_EXPANDED,false);if(!dateView.popup.visible()){element.removeAttr(ARIA_OWNS);}}},open:function(e){if(that.trigger(OPEN,timeViewParams)){e.preventDefault();}else{ul.attr(ARIA_HIDDEN,false);element.attr(ARIA_EXPANDED,true).attr(ARIA_OWNS,timeView._timeViewID);}},active:function(current){element.removeAttr(ARIA_ACTIVEDESCENDANT);if(current){element.attr(ARIA_ACTIVEDESCENDANT,timeView._optionID);}}});ul=timeView.ul;},_icons:function(){var that=this,element=that.element,icons;icons=element.next("span.k-select");if(!icons[0]){icons=$('<span unselectable="on" class="k-select"><span unselectable="on" class="k-icon k-i-calendar">select</span><span unselectable="on" class="k-icon k-i-clock">select</span></span>').insertAfter(element);}icons=icons.children();that._dateIcon=icons.eq(0).attr({"role":"button","aria-controls":that.dateView._dateViewID});that._timeIcon=icons.eq(1).attr({"role":"button","aria-controls":that.timeView._timeViewID});},_wrapper:function(){var that=this,element=that.element,wrapper;wrapper=element.parents(".k-datetimepicker");if(!wrapper[0]){wrapper=element.wrap(SPAN).parent().addClass("k-picker-wrap k-state-default");wrapper=wrapper.wrap(SPAN).parent();}wrapper[0].style.cssText=element[0].style.cssText;element.css({width:"100%",height:element[0].style.height});that.wrapper=wrapper.addClass("k-widget k-datetimepicker k-header").addClass(element[0].className);that._inputWrapper=$(wrapper[0].firstChild);},_reset:function(){var that=this,element=that.element,form=element.closest("form");if(form[0]){that._resetHandler=function(){that.value(element[0].defaultValue);};that._form=form.on("reset",that._resetHandler);}},_template:function(){this._ariaTemplate=kendo.template(this.options.ARIATemplate);},_updateARIA:function(date){this.element.attr("aria-label",this._ariaTemplate({current:date}));}});function preventDefault(e){e.preventDefault();}function normalize(options){var patterns=kendo.getCulture(options.culture).calendars.standard.patterns;options.format=extractFormat(options.format||patterns.g);options.timeFormat=extractFormat(options.timeFormat||patterns.t);kendo.DateView.normalize(options);options.parseFormats.splice(1,0,options.timeFormat);}ui.plugin(DateTimePicker);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,data=kendo.data,extend=$.extend,template=kendo.template,isArray=$.isArray,Widget=ui.Widget,HierarchicalDataSource=data.HierarchicalDataSource,proxy=$.proxy,keys=kendo.keys,NS=".kendoTreeView",SELECT="select",NAVIGATE="navigate",EXPAND="expand",CHANGE="change",CHECKED="checked",COLLAPSE="collapse",DRAGSTART="dragstart",DRAG="drag",DROP="drop",DRAGEND="dragend",DATABOUND="dataBound",CLICK="click",VISIBILITY="visibility",UNDEFINED="undefined",KSTATEHOVER="k-state-hover",KTREEVIEW="k-treeview",VISIBLE=":visible",NODE=".k-item",ARIASELECTED="aria-selected",ARIADISABLED="aria-disabled",TreeView,subGroup,nodeContents,nodeIcon,bindings={text:"dataTextField",url:"dataUrlField",spriteCssClass:"dataSpriteCssClassField",imageUrl:"dataImageUrlField"},isDomElement=function(o){return(typeof HTMLElement==="object"?o instanceof HTMLElement:o&&typeof o==="object"&&o.nodeType===1&&typeof o.nodeName==="string");};function contentChild(filter){return function(node){var result=node.children(".k-animation-container");if(!result.length){result=node;}return result.children(filter);};}subGroup=contentChild(".k-group");nodeContents=contentChild(".k-group,.k-content");nodeIcon=function(node){return node.children("div").children(".k-icon");};function checkboxes(node){return node.children("div").find(":checkbox:first");}function updateNodeHtml(node){var wrapper=node.children("div"),group=node.children("ul"),toggleButton=wrapper.children(".k-icon"),checkbox=node.children(":checkbox"),innerWrapper=wrapper.children(".k-in"),currentNode,tmp;if(node.hasClass("k-treeview")){return;}if(!wrapper.length){wrapper=$("<div />").prependTo(node);}if(!toggleButton.length&&group.length){toggleButton=$("<span class='k-iconk-icon' />").prependTo(wrapper);}else if(!group.length||!group.children().length){toggleButton.remove();group.remove();}if(checkbox.length){$("<span class='k-checkbox' />").appendTo(wrapper).append(checkbox);}if(!innerWrapper.length){innerWrapper=$("<span class='k-in' />").appendTo(wrapper)[0];currentNode=wrapper[0].nextSibling;innerWrapper=wrapper.find(".k-in")[0];while(currentNode&&currentNode.nodeName.toLowerCase()!="ul"){tmp=currentNode;currentNode=currentNode.nextSibling;if(tmp.nodeType==3){tmp.nodeValue=$.trim(tmp.nodeValue);}innerWrapper.appendChild(tmp);}}}TreeView=Widget.extend({init:function(element,options){var that=this,dataInit,inferred=false;if(isArray(options)){dataInit=true;options={dataSource:options};}if(options&&typeof options.loadOnDemand==UNDEFINED&&isArray(options.dataSource)){options.loadOnDemand=false;}Widget.prototype.init.call(that,element,options);element=that.element;options=that.options;inferred=element.is("ul")||element.hasClass(KTREEVIEW);if(inferred){options.dataSource.list=element.is("ul")?element:element.children("ul");}that._animation();that._accessors();that._templates();if(!element.hasClass(KTREEVIEW)){that._wrapper();if(inferred){that.root=element;that._group(that.wrapper);}}else{that.wrapper=element;that.root=element.children("ul").eq(0);}that._tabindex();if(!that.wrapper.filter("[role=tree]").length){that.wrapper.attr("role","tree");}that._dataSource(inferred);that._attachEvents();if(options.dragAndDrop){that.dragging=new TreeViewDragAndDrop(that);}if(!inferred){if(options.autoBind){that._progress(true);that.dataSource.fetch();}}else{that._attachUids();}if(options.checkboxes&&options.checkboxes.checkChildren){that.wrapper.find(":checkbox").closest(NODE).each(function(e){that._updateIndeterminate($(this));});}if(that.element[0].id){that._ariaId=kendo.format("{0}_tv_active",that.element[0].id);}},_attachEvents:function(){var that=this,clickableItems=".k-in:not(.k-state-selected,.k-state-disabled)",MOUSEENTER="mouseenter";that.wrapper.on(MOUSEENTER+NS,".k-in.k-state-selected",function(e){e.preventDefault();}).on(MOUSEENTER+NS,clickableItems,function(){$(this).addClass(KSTATEHOVER);}).on("mouseleave"+NS,clickableItems,function(){$(this).removeClass(KSTATEHOVER);}).on(CLICK+NS,clickableItems,proxy(that._click,that)).on("dblclick"+NS,".k-in:not(.k-state-disabled)",proxy(that._toggleButtonClick,that)).on(CLICK+NS,".k-plus,.k-minus",proxy(that._toggleButtonClick,that)).on("keydown"+NS,proxy(that._keydown,that)).on("focus"+NS,proxy(that._focus,that)).on("blur"+NS,proxy(that._blur,that)).on("mousedown"+NS,".k-in,.k-checkbox :checkbox",proxy(that._mousedown,that)).on("change"+NS,".k-checkbox :checkbox",proxy(that._checkboxChange,that)).on("click"+NS,".k-checkbox :checkbox",proxy(that._checkboxClick,that)).on("click"+NS,function(){that.focus();});},_checkboxClick:function(e){var checkbox=$(e.target);if(checkbox.data("indeterminate")){checkbox.data("indeterminate",false).prop("indeterminate",false).prop(CHECKED,true);this._checkboxChange(e);}},_attachUids:function(root,dataSource){var that=this,data,uidAttr=kendo.attr("uid");root=root||that.root;dataSource=dataSource||that.dataSource;data=dataSource.view();root.children("li").each(function(index,item){item=$(item).attr(uidAttr,data[index].uid);item.attr("role","treeitem");that._attachUids(item.children("ul"),data[index].children);});},_animation:function(){var options=this.options,animationOptions=options.animation;if(animationOptions===false){animationOptions={expand:{effects:{}},collapse:{hide:true,effects:{}}};}else if(!animationOptions.collapse||!("effects"in animationOptions.collapse)){animationOptions.collapse=extend({reverse:true},animationOptions.expand);}extend(animationOptions.collapse,{hide:true});options.animation=animationOptions;},_templates:function(){var that=this,options=that.options,fieldAccessor=proxy(that._fieldAccessor,that);if(options.template&&typeof options.template=="string"){options.template=template(options.template);}else if(!options.template){options.template=template("# var text = "+fieldAccessor("text")+"(item); #"+"# if (typeof item.encoded != 'undefined' && item.encoded === false) {#"+"#= text #"+"# } else { #"+"#: text #"+"# } #");}that._checkboxes();that.templates={wrapperCssClass:function(group,item){var result="k-item",index=item.index;if(group.firstLevel&&index===0){result+=" k-first";}if(index==group.length-1){result+=" k-last";}return result;},cssClass:function(group,item){var result="",index=item.index,groupLength=group.length-1;if(group.firstLevel&&index===0){result+="k-top ";}if(index===0&&index!=groupLength){result+="k-top";}else if(index==groupLength){result+="k-bot";}else{result+="k-mid";}return result;},textClass:function(item){var result="k-in";if(item.enabled===false){result+=" k-state-disabled";}if(item.selected===true){result+=" k-state-selected";}return result;},toggleButtonClass:function(item){var result="k-icon";if(item.expanded!==true){result+=" k-plus";}else{result+=" k-minus";}if(item.enabled===false){result+="-disabled";}return result;},groupAttributes:function(group){return group.expanded!==true?" style='display:none'":"";},groupCssClass:function(group){var cssClass="k-group";if(group.firstLevel){cssClass+=" k-treeview-lines";}return cssClass;},dragClue:template("<div class='k-header k-drag-clue'><span class='k-icon k-drag-status'></span>#= text #</div>"),group:template("<ul class='#= r.groupCssClass(group) #'#= r.groupAttributes(group) # role='group'>"+"#= renderItems(data) #"+"</ul>"),itemContent:template("# var imageUrl = "+fieldAccessor("imageUrl")+"(item); #"+"# var spriteCssClass = "+fieldAccessor("spriteCssClass")+"(item); #"+"# if (imageUrl) { #"+"<img class='k-image' alt='' src='#= imageUrl #'>"+"# } #"+"# if (spriteCssClass) { #"+"<span class='k-sprite #= spriteCssClass #'></span>"+"# } #"+"#= treeview.template(data) #"),itemElement:template("# var url = "+fieldAccessor("url")+"(item); #"+"<div class='#= r.cssClass(group, item) #'>"+"# if (item.hasChildren) { #"+"<span class='#= r.toggleButtonClass(item) #' role='presentation'></span>"+"# } #"+"# if (treeview.checkboxes) { #"+"<span class='k-checkbox' role='presentation'>"+"#= treeview.checkboxes.template(data) #"+"</span>"+"# } #"+"# var tag = url ? 'a' : 'span'; #"+"# var textAttr = url ? ' href=\\'' + url + '\\'' : ''; #"+"<#=tag#  class='#= r.textClass(item) #'#= textAttr #>"+"#= r.itemContent(data) #"+"</#=tag#>"+"</div>"),item:template("<li role='treeitem' class='#= r.wrapperCssClass(group, item) #'"+" "+kendo.attr("uid")+"='#= item.uid #'"+"#=item.selected ? \"aria-selected='true'\" : ''#"+"#=item.enabled === false ? \"aria-disabled='true'\" : ''#"+">"+"#= r.itemElement(data) #"+"</li>"),loading:template("<div class='k-icon k-loading' /> Loading...")};},items:function(){return this.element.find(".k-item");},setDataSource:function(dataSource){this.options.dataSource=dataSource;this._dataSource();this.dataSource.fetch();},_dataSource:function(silentRead){var that=this,options=that.options,dataSource=options.dataSource;function recursiveRead(data){for(var i=0;i<data.length;i++){data[i]._initChildren();data[i].children.fetch();recursiveRead(data[i].children.view());}}dataSource=isArray(dataSource)?{data:dataSource}:dataSource;if(that.dataSource&&that._refreshHandler){that.dataSource.unbind(CHANGE,that._refreshHandler);}else{that._refreshHandler=proxy(that.refresh,that);}if(!dataSource.fields){dataSource.fields=[{field:"text"},{field:"url"},{field:"spriteCssClass"},{field:"imageUrl"}];}that.dataSource=HierarchicalDataSource.create(dataSource);if(silentRead){that.dataSource.fetch();recursiveRead(that.dataSource.view());}that.dataSource.bind(CHANGE,that._refreshHandler);},events:[DRAGSTART,DRAG,DROP,DRAGEND,DATABOUND,EXPAND,COLLAPSE,SELECT,NAVIGATE],options:{name:"TreeView",dataSource:{},animation:{expand:{effects:"expand:vertical",duration:200},collapse:{duration:100}},dragAndDrop:false,checkboxes:false,autoBind:true,loadOnDemand:true,template:""},_accessors:function(){var that=this,options=that.options,i,field,textField,element=that.element;for(i in bindings){field=options[bindings[i]];textField=element.attr(kendo.attr(i+"-field"));if(textField){field=textField;}if(!field){field=i;}if(!isArray(field)){field=[field];}options[bindings[i]]=field;}},_fieldAccessor:function(fieldName){var fieldBindings=this.options[bindings[fieldName]],count=fieldBindings.length,result="(function(item) {";if(count===0){result+="return item['"+fieldName+"'];";}else{result+="var level = item.level();"+"var levels = ["+$.map(fieldBindings,function(x){return"function(d){ return "+kendo.expr(x)+"}";}).join(",")+"];";result+="return levels[Math.min(level, "+count+"-1)](item)";}result+="})";return result;},setOptions:function(options){var that=this;if(("dragAndDrop"in options)&&options.dragAndDrop&&!that.options.dragAndDrop){that.dragging=new TreeViewDragAndDrop(that);}Widget.fn.setOptions.call(that,options);that._animation();that._templates();},_trigger:function(eventName,node){return this.trigger(eventName,{node:node.closest(NODE)[0]});},_updateIndeterminate:function(node){var parentNode=node.parent().closest(NODE),siblingCheckboxes,i,all=true;if(parentNode.length){siblingCheckboxes=checkboxes(node.siblings().andSelf());for(i=1;i<siblingCheckboxes.length;i++){if(siblingCheckboxes[i].checked!=siblingCheckboxes[i-1].checked||siblingCheckboxes[i].indeterminate||siblingCheckboxes[i-1].indeterminate){all=false;break;}}checkboxes(parentNode).data("indeterminate",!all).prop("indeterminate",!all).prop(CHECKED,all&&siblingCheckboxes[0].checked);this._updateIndeterminate(parentNode);}},_checkboxChange:function(e){var checkbox=$(e.target),isChecked=checkbox.prop(CHECKED),node=checkbox.closest(NODE),that=this;if(that.options.checkboxes.checkChildren){node.find(":checkbox").each(function(){that.dataItem(this).set(CHECKED,isChecked);});that._updateIndeterminate(node);}else{that.dataItem(node).set(CHECKED,isChecked);}},_toggleButtonClick:function(e){this.toggle($(e.target).closest(NODE));},_mousedown:function(e){this._clickTarget=$(e.currentTarget).closest(NODE);},_focusable:function(node){return node&&node.length&&node.is(":visible")&&!node.find(".k-in:first").hasClass("k-state-disabled");},_focus:function(e){var current=this.select();if(!this._focusable(current)){current=this._clickTarget;}if(!this._focusable(current)){current=this.current();}if(!this._focusable(current)){current=this._nextVisible($());}this.current(current);},focus:function(){this.wrapper.focus();},_blur:function(e){this.current().find(".k-in:first").removeClass("k-state-focused");},_enabled:function(node){return!node.children("div").children(".k-in").hasClass("k-state-disabled");},parent:function(node){return $(node).parent().closest(NODE);},_nextVisible:function(node){var that=this,expanded=that._expanded(node),result;if(!node.length||!node.is(":visible")){result=that.root.children().eq(0);}else if(expanded){result=subGroup(node).children().first();}else{while(node.length&&!node.next().length){node=that.parent(node);}if(node.next().length){result=node.next();}else{result=node;}}if(!that._enabled(result)){result=that._nextVisible(result);}return result;},_previousVisible:function(node){var that=this,result;if(!node.length||node.prev().length){if(node.length){result=node.prev();}else{result=that.root.children().last();}while(that._expanded(result)){result=subGroup(result).children().last();}}else{result=that.parent(node)||node;}if(!that._enabled(result)){result=that._previousVisible(result);}return result;},_keydown:function(e){var that=this,key=e.keyCode,target,focused=that.current(),expanded=that._expanded(focused),checkbox=focused.find(":checkbox:first"),rtl=kendo.support.isRtl(that.element);if(e.target!=e.currentTarget){return;}if((!rtl&&key==keys.RIGHT)||(rtl&&key==keys.LEFT)){if(expanded){target=that._nextVisible(focused);}else{that.expand(focused);}}else if((!rtl&&key==keys.LEFT)||(rtl&&key==keys.RIGHT)){if(expanded){that.collapse(focused);}else{target=that.parent(focused);if(!that._enabled(target)){target=undefined;}}}else if(key==keys.DOWN){target=that._nextVisible(focused);}else if(key==keys.UP){target=that._previousVisible(focused);}else if(key==keys.HOME){target=that._nextVisible($());}else if(key==keys.END){target=that._previousVisible($());}else if(key==keys.ENTER){if(!focused.find(".k-in:first").hasClass("k-state-selected")){if(!that._trigger(SELECT,focused)){that.select(focused);}}}else if(key==keys.SPACEBAR&&checkbox.length){checkbox.prop(CHECKED,!checkbox.prop(CHECKED)).data("indeterminate",false).prop("indeterminate",false);that._checkboxChange({target:checkbox});target=focused;}if(target){e.preventDefault();if(focused[0]!=target[0]){that._trigger(NAVIGATE,target);that.current(target);}}},_click:function(e){var that=this,node=$(e.target),contents=nodeContents(node.closest(NODE)),href=node.attr("href"),shouldNavigate;if(href){shouldNavigate=href=="#"||href.indexOf("#"+this.element.id+"-")>=0;}else{shouldNavigate=contents.length&&!contents.children().length;}if(shouldNavigate){e.preventDefault();}if(!node.hasClass(".k-state-selected")&&!that._trigger(SELECT,node)){that.select(node);}},_wrapper:function(){var that=this,element=that.element,wrapper,root,wrapperClasses="k-widget k-treeview";if(element.is("div")){wrapper=element;root=wrapper.children("ul").eq(0);}else{wrapper=element.wrap('<div />').parent();root=element;}that.wrapper=wrapper.addClass(wrapperClasses);that.root=root;},_group:function(item){var that=this,firstLevel=item.hasClass(KTREEVIEW),group={firstLevel:firstLevel,expanded:firstLevel||that._expanded(item)},groupElement=item.children("ul");groupElement.addClass(that.templates.groupCssClass(group)).css("display",group.expanded?"":"none");that._nodes(groupElement,group);},_nodes:function(groupElement,groupData){var that=this,nodes=groupElement.children("li"),nodeData;groupData=extend({length:nodes.length},groupData);nodes.each(function(i,node){node=$(node);nodeData={index:i,expanded:that._expanded(node)};updateNodeHtml(node);that._updateNodeClasses(node,groupData,nodeData);that._group(node);});},_checkboxes:function(){var options=this.options,checkboxOptions=options.checkboxes,checkboxTemplate;if(checkboxOptions||options.checkboxTemplate){if(options.checkboxTemplate){checkboxTemplate=options.checkboxTemplate;}else{checkboxTemplate="<input type='checkbox' #= item.checked ? 'checked' : '' #";if(checkboxOptions.name){checkboxTemplate+=" name='"+checkboxOptions.name+"'";}checkboxTemplate+=" />";}checkboxOptions=extend({template:checkboxTemplate},options.checkboxes);if(typeof checkboxOptions.template=="string"){checkboxOptions.template=template(checkboxOptions.template);}options.checkboxes=checkboxOptions;}},_updateNodeClasses:function(node,groupData,nodeData){var wrapper=node.children("div"),group=node.children("ul"),templates=this.templates;if(node.hasClass("k-treeview")){return;}nodeData=nodeData||{};nodeData.expanded=typeof nodeData.expanded!=UNDEFINED?nodeData.expanded:this._expanded(node);nodeData.index=typeof nodeData.index!=UNDEFINED?nodeData.index:node.index();nodeData.enabled=typeof nodeData.enabled!=UNDEFINED?nodeData.enabled:!wrapper.children(".k-in").hasClass("k-state-disabled");groupData=groupData||{};groupData.firstLevel=typeof groupData.firstLevel!=UNDEFINED?groupData.firstLevel:node.parent().parent().hasClass(KTREEVIEW);groupData.length=typeof groupData.length!=UNDEFINED?groupData.length:node.parent().children().length;node.removeClass("k-first k-last").addClass(templates.wrapperCssClass(groupData,nodeData));wrapper.removeClass("k-top k-mid k-bot").addClass(templates.cssClass(groupData,nodeData));wrapper.children(".k-in").removeClass("k-in k-state-default k-state-disabled").addClass(templates.textClass(nodeData));if(group.length||node.attr("data-hasChildren")=="true"){wrapper.children(".k-icon").removeClass("k-plus k-minus k-plus-disabled k-minus-disabled").addClass(templates.toggleButtonClass(nodeData));group.addClass("k-group");}},_processNodes:function(nodes,callback){var that=this;that.element.find(nodes).each(function(index,item){callback.call(that,index,$(item).closest(NODE));});},dataItem:function(node){var uid=$(node).closest(NODE).attr(kendo.attr("uid")),dataSource=this.dataSource;return dataSource&&dataSource.getByUid(uid);},_insertNode:function(nodeData,index,parentNode,insertCallback,collapsed){var that=this,group=subGroup(parentNode),updatedGroupLength=group.children().length+1,childrenData,groupData={firstLevel:parentNode.hasClass(KTREEVIEW),expanded:!collapsed,length:updatedGroupLength},node,i,item,nodeHtml="",append=function(item,group){item.appendTo(group);};for(i=0;i<nodeData.length;i++){item=nodeData[i];item.index=index+i;nodeHtml+=that._renderItem({group:groupData,item:item});}node=$(nodeHtml);if(!node.length){return;}if(!group.length){group=$(that._renderGroup({group:groupData})).appendTo(parentNode);}insertCallback(node,group);if(parentNode.hasClass("k-item")){updateNodeHtml(parentNode);that._updateNodeClasses(parentNode);}that._updateNodeClasses(node.prev().first());that._updateNodeClasses(node.next().last());for(i=0;i<nodeData.length;i++){item=nodeData[i];if(item.hasChildren){childrenData=item.children.data();if(childrenData.length){that._insertNode(childrenData,item.index,node.eq(i),append,!that._expanded(node.eq(i)));}}}return node;},_updateNode:function(field,items){var that=this,i,node,item,context={treeview:that.options,item:item};if(field=="selected"){item=items[0];node=that.findByUid(item.uid).find(".k-in:first").removeClass("k-state-hover").toggleClass("k-state-selected",item[field]).end();if(item[field]){that.current(node);node.attr(ARIASELECTED,true);}else{node.attr(ARIASELECTED,false);}}else{for(i=0;i<items.length;i++){context.item=item=items[i];if(field=="spriteCssClass"||field=="imageUrl"||$.inArray(field,that.options.dataTextField)>=0){that.findByUid(item.uid).find(">div>.k-in").html(that.templates.itemContent(context));}else if(field==CHECKED){node=that.findByUid(item.uid);node.children("div").find(":checkbox").prop(CHECKED,item[field]).data("indeterminate",false).prop("indeterminate",false);}else if(field=="expanded"){that._toggle(that.findByUid(item.uid),item,item[field]);}}}},refresh:function(e){var that=this,parentNode=that.wrapper,node=e.node,action=e.action,items=e.items,index=e.index,loadOnDemand=that.options.loadOnDemand,i;function append(items,parentNode){var group=subGroup(parentNode),children=group.children(),collapsed=!that._expanded(parentNode);if(typeof index==UNDEFINED){index=children.length;}that._insertNode(items,index,parentNode,function(item,group){if(index==children.length){item.appendTo(group);}else{item.insertBefore(children.eq(index));}},collapsed);if(that._expanded(parentNode)){that._updateNodeClasses(parentNode);subGroup(parentNode).css("display","block");}}if(e.field){return that._updateNode(e.field,items);}if(node){parentNode=that.findByUid(node.uid);that._progress(parentNode,false);}if(action=="add"){append(items,parentNode);}else if(action=="remove"){that._remove(that.findByUid(items[0].uid),false);}else{if(node){subGroup(parentNode).empty();append(items,parentNode);}else{that.root=that.wrapper.html(that._renderGroup({items:items,group:{firstLevel:true,expanded:true}})).children("ul");}}for(i=0;i<items.length;i++){if(!loadOnDemand||items[i].expanded){items[i].load();}}that.trigger(DATABOUND,{node:node?parentNode:undefined});},expand:function(nodes){this._processNodes(nodes,function(index,item){this.toggle(item,true);});},collapse:function(nodes){this._processNodes(nodes,function(index,item){this.toggle(item,false);});},enable:function(nodes,enable){enable=arguments.length==2?!!enable:true;this._processNodes(nodes,function(index,item){var isCollapsed=!nodeContents(item).is(VISIBLE);item.removeAttr(ARIADISABLED);if(!enable){this.collapse(item);isCollapsed=true;item.find(".k-in:first").removeClass("k-state-selected");item.removeAttr(ARIASELECTED);item.attr(ARIADISABLED,true);}this._updateNodeClasses(item,{},{enabled:enable,expanded:!isCollapsed});});},current:function(node){var that=this,current=that._current,element=that.element,id=that._ariaId;if(arguments.length>0&&node&&node.length){if(current){current.removeAttr("id").find(".k-in:first").removeClass("k-state-focused");}current=that._current=$(node,element).closest(NODE);current.find(".k-in:first").addClass("k-state-focused");if(id){that.wrapper.removeAttr("aria-activedescendant");current.attr("id",id);that.wrapper.attr("aria-activedescendant",id);}return;}if(!current){current=that._nextVisible($());}return current;},select:function(node){var that=this,element=that.element;if(!arguments.length){return element.find(".k-state-selected").closest(NODE);}node=$(node,element).closest(NODE);if(node.length){element.find(".k-state-selected").each(function(){var dataItem=that.dataItem(this);dataItem.set("selected",false);delete dataItem.selected;});that.dataItem(node).set("selected",true);}},_toggle:function(node,dataItem,expand){var that=this,options=that.options,contents=nodeContents(node),direction=expand?"expand":"collapse",animation=options.animation[direction],loaded;if(contents.data("animating")){return;}if(!that._trigger(direction,node)){that._expanded(node,expand);loaded=dataItem&&dataItem.loaded();if(loaded&&contents.children().length>0){that._updateNodeClasses(node,{},{expanded:expand});if(contents.is(":visible")==expand){return;}if(!expand){contents.css("height",contents.height()).css("height");}contents.kendoStop(true,true).kendoAnimate(extend({reset:true},animation,{complete:function(){if(expand){contents.css("height","");}}}));}else if(dataItem){if(options.loadOnDemand){that._progress(node,true);}contents.remove();dataItem.load();}}},toggle:function(node,expand){node=$(node);if(!nodeIcon(node).is(".k-minus,.k-plus,.k-minus-disabled,.k-plus-disabled")){return;}if(arguments.length==1){expand=!this._expanded(node);}this._expanded(node,expand);},destroy:function(){var that=this;Widget.fn.destroy.call(that);that.element.off(NS);if(that.dragging){that.dragging.destroy();}kendo.destroy(that.element);},_expanded:function(node,value){var expandedAttr=kendo.attr("expanded"),dataItem=this.dataItem(node);if(arguments.length==1){return node.attr(expandedAttr)==="true"||(dataItem&&dataItem.expanded);}if(nodeContents(node).data("animating")){return;}if(dataItem){dataItem.set("expanded",value);}if(value){node.attr(expandedAttr,"true");node.attr("aria-expanded","true");}else{node.removeAttr(expandedAttr);node.attr("aria-expanded","false");}},_progress:function(node,showProgress){var element=this.element;if(arguments.length==1){showProgress=node;if(showProgress){element.html(this.templates.loading);}else{element.empty();}}else{nodeIcon(node).toggleClass("k-loading",showProgress);}},text:function(node,text){var dataItem=this.dataItem(node),fieldBindings=this.options[bindings.text],level=dataItem.level(),length=fieldBindings.length,field=fieldBindings[Math.min(level,length-1)];if(text){dataItem.set(field,text);}else{return dataItem[field];}},_objectOrSelf:function(node){return $(node).closest("[data-role=treeview]").data("kendoTreeView")||this;},_dataSourceMove:function(nodeData,group,parentNode,callback){var that=this,srcTreeView=that._objectOrSelf(nodeData),srcDataSource,dataItem,referenceDataItem,i,destTreeview=that._objectOrSelf(parentNode||group),destDataSource=destTreeview.dataSource;if(parentNode){referenceDataItem=destTreeview.dataItem(parentNode);if(!referenceDataItem.loaded()){destTreeview._progress(parentNode,true);referenceDataItem.load();}if(parentNode!=that.root){destDataSource=referenceDataItem.children;}}if(nodeData instanceof window.jQuery||isDomElement(nodeData)){nodeData=$(nodeData);srcDataSource=srcTreeView.dataSource;dataItem=srcDataSource.getByUid(nodeData.attr(kendo.attr("uid")));if(dataItem){dataItem=srcDataSource.remove(dataItem);}dataItem=callback(destDataSource,dataItem);}else if(isArray(nodeData)||nodeData instanceof data.ObservableArray){for(i=0;i<nodeData.length;i++){dataItem=callback(destDataSource,nodeData[i]);}}else{dataItem=callback(destDataSource,nodeData);}return dataItem&&that.findByUid(dataItem.uid);},insertAfter:function(nodeData,referenceNode){var group=referenceNode.parent(),parentNode;if(group.parent().is("li")){parentNode=group.parent();}return this._dataSourceMove(nodeData,group,parentNode,function(dataSource,model){return dataSource.insert(referenceNode.index()+1,model);});},insertBefore:function(nodeData,referenceNode){var group=referenceNode.parent(),parentNode;if(group.parent().is("li")){parentNode=group.parent();}return this._dataSourceMove(nodeData,group,parentNode,function(dataSource,model){return dataSource.insert(referenceNode.index(),model);});},append:function(nodeData,parentNode){var that=this,group=that.root;if(parentNode){group=subGroup(parentNode);}return that._dataSourceMove(nodeData,group,parentNode,function(dataSource,model){function add(){if(parentNode){that._expanded(parentNode,true);}return dataSource.add(model);}if(!dataSource.data()){dataSource.one(CHANGE,add);return null;}else{return add();}});},_remove:function(node,keepData){var that=this,parentNode,prevSibling,nextSibling;node=$(node,that.element);parentNode=node.parent().parent();prevSibling=node.prev();nextSibling=node.next();node[keepData?"detach":"remove"]();if(parentNode.hasClass("k-item")){updateNodeHtml(parentNode);that._updateNodeClasses(parentNode);}that._updateNodeClasses(prevSibling);that._updateNodeClasses(nextSibling);return node;},remove:function(node){var dataItem=this.dataItem(node);if(dataItem){this.dataSource.remove(dataItem);}},detach:function(node){return this._remove(node,true);},findByText:function(text){return $(this.element).find(".k-in").filter(function(i,element){return $(element).text()==text;}).closest(NODE);},findByUid:function(uid){return this.element.find(".k-item["+kendo.attr("uid")+"="+uid+"]");},_renderItem:function(options){if(!options.group){options.group={};}options.treeview=this.options;options.r=this.templates;return this.templates.item(options);},_renderGroup:function(options){var that=this;options.renderItems=function(options){var html="",i=0,items=options.items,len=items?items.length:0,group=options.group;group.length=len;for(;i<len;i++){options.group=group;options.item=items[i];options.item.index=i;html+=that._renderItem(options);}return html;};options.r=that.templates;return that.templates.group(options);}});function TreeViewDragAndDrop(treeview){var that=this;that.treeview=treeview;that.hovered=treeview.element;that._draggable=new ui.Draggable(treeview.element,{filter:"div:not(.k-state-disabled) .k-in",hint:function(node){return treeview.templates.dragClue({text:node.text()});},cursorOffset:{left:10,top:kendo.support.touch?-40/kendo.support.zoomLevel():10},dragstart:proxy(that.dragstart,that),dragcancel:proxy(that.dragcancel,that),drag:proxy(that.drag,that),dragend:proxy(that.dragend,that)});}TreeViewDragAndDrop.prototype={_removeTouchHover:function(){var that=this;if(kendo.support.touch&&that.hovered){that.hovered.find("."+KSTATEHOVER).removeClass(KSTATEHOVER);that.hovered=false;}},_hintStatus:function(newStatus){var statusElement=this._draggable.hint.find(".k-drag-status")[0];if(newStatus){statusElement.className="k-icon k-drag-status "+newStatus;}else{return $.trim(statusElement.className.replace(/k-(icon|drag-status)/g,""));}},dragstart:function(e){var that=this,treeview=that.treeview,sourceNode=that.sourceNode=e.currentTarget.closest(NODE);if(treeview.trigger(DRAGSTART,{sourceNode:sourceNode[0]})){e.preventDefault();}that.dropHint=$("<div class='k-drop-hint' />").css(VISIBILITY,"hidden").appendTo(treeview.element);},drag:function(e){var that=this,treeview=that.treeview,sourceNode=that.sourceNode,dropTarget=that.dropTarget=$(kendo.eventTarget(e)),statusClass,closestTree=dropTarget.closest(".k-treeview"),hoveredItem,hoveredItemPos,itemHeight,itemTop,itemContent,delta,insertOnTop,insertOnBottom,addChild;if(!closestTree.length){statusClass="k-denied";that._removeTouchHover();}else if($.contains(sourceNode[0],dropTarget[0])){statusClass="k-denied";}else{statusClass="k-insert-middle";hoveredItem=dropTarget.closest(".k-top,.k-mid,.k-bot");if(hoveredItem.length){itemHeight=hoveredItem.outerHeight();itemTop=hoveredItem.offset().top;itemContent=dropTarget.closest(".k-in");delta=itemHeight/(itemContent.length>0?4:2);insertOnTop=e.y.location<(itemTop+delta);insertOnBottom=(itemTop+itemHeight-delta)<e.y.location;that._removeTouchHover();addChild=itemContent.length&&!insertOnTop&&!insertOnBottom;that.hovered=addChild?closestTree:false;that.dropHint.css(VISIBILITY,addChild?"hidden":"visible");itemContent.toggleClass(KSTATEHOVER,addChild);if(addChild){statusClass="k-add";}else{hoveredItemPos=hoveredItem.position();hoveredItemPos.top+=insertOnTop?0:itemHeight;that.dropHint.css(hoveredItemPos)
[insertOnTop?"prependTo":"appendTo"](dropTarget.closest(NODE).children("div:first"));if(insertOnTop&&hoveredItem.hasClass("k-top")){statusClass="k-insert-top";}if(insertOnBottom&&hoveredItem.hasClass("k-bot")){statusClass="k-insert-bottom";}}}else if(dropTarget[0]!=that.dropHint[0]){statusClass="k-denied";}}treeview.trigger(DRAG,{sourceNode:sourceNode[0],dropTarget:dropTarget[0],pageY:e.y.location,pageX:e.x.location,statusClass:statusClass.substring(2),setStatusClass:function(value){statusClass=value;}});if(statusClass.indexOf("k-insert")!==0){that.dropHint.css(VISIBILITY,"hidden");}that._hintStatus(statusClass);},dragcancel:function(e){this.dropHint.remove();},dragend:function(e){var that=this,treeview=that.treeview,dropPosition="over",sourceNode=that.sourceNode,destinationNode,dropHint=that.dropHint,valid,dropPrevented;if(dropHint.css(VISIBILITY)=="visible"){dropPosition=dropHint.prevAll(".k-in").length>0?"after":"before";destinationNode=dropHint.closest(NODE);}else if(that.dropTarget){destinationNode=that.dropTarget.closest(NODE);}valid=that._hintStatus()!="k-denied";dropPrevented=treeview.trigger(DROP,{sourceNode:sourceNode[0],destinationNode:destinationNode[0],valid:valid,setValid:function(newValid){valid=newValid;},dropTarget:that.dropTarget[0],dropPosition:dropPosition});dropHint.remove();that._removeTouchHover();if(!valid||dropPrevented){that._draggable.dropped=valid;return;}that._draggable.dropped=true;if(dropPosition=="over"){sourceNode=treeview.append(sourceNode,destinationNode);}else if(dropPosition=="before"){sourceNode=treeview.insertBefore(sourceNode,destinationNode);}else if(dropPosition=="after"){sourceNode=treeview.insertAfter(sourceNode,destinationNode);}treeview.trigger(DRAGEND,{sourceNode:sourceNode&&sourceNode[0],destinationNode:destinationNode[0],dropPosition:dropPosition});},destroy:function(){this._draggable.destroy();}};ui.plugin(TreeView);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,Widget=kendo.ui.Widget,Draggable=kendo.ui.Draggable,extend=$.extend,format=kendo.format,parse=kendo.parseFloat,proxy=$.proxy,isArray=$.isArray,math=Math,support=kendo.support,pointers=support.pointers,CHANGE="change",SLIDE="slide",NS=".slider",MOUSE_DOWN="touchstart"+NS+" mousedown"+NS,TRACK_MOUSE_DOWN=pointers?"MSPointerDown"+NS:"mousedown"+NS+" touchstart"+NS,MOUSE_UP="touchend"+NS+" mouseup"+NS,MOVE_SELECTION="moveSelection",KEY_DOWN="keydown"+NS,CLICK="click"+NS,MOUSE_OVER="mouseover"+NS,FOCUS="focus"+NS,BLUR="blur"+NS,DRAG_HANDLE=".k-draghandle",TRACK_SELECTOR=".k-slider-track",TICK_SELECTOR=".k-tick",STATE_SELECTED="k-state-selected",STATE_DEFAULT="k-state-default",STATE_DISABLED="k-state-disabled",PRECISION=3,DISABLED="disabled",UNDEFINED="undefined";var SliderBase=Widget.extend({init:function(element,options){var that=this;Widget.fn.init.call(that,element,options);options=that.options;that._distance=options.max-options.min;that._isHorizontal=options.orientation=="horizontal";that._isRtl=that._isHorizontal&&kendo.support.isRtl(element);that._position=that._isHorizontal?"left":"bottom";that._size=that._isHorizontal?"width":"height";that._outerSize=that._isHorizontal?"outerWidth":"outerHeight";options.tooltip.format=options.tooltip.enabled?options.tooltip.format||"{0}":"{0}";that._createHtml();that.wrapper=that.element.closest(".k-slider");that._trackDiv=that.wrapper.find(TRACK_SELECTOR);that._setTrackDivWidth();that._maxSelection=that._trackDiv[that._size]();var sizeBetweenTicks=that._maxSelection/((options.max-options.min)/options.smallStep);var pixelWidths=that._calculateItemsWidth(math.floor(that._distance/options.smallStep));if(options.tickPlacement!="none"&&sizeBetweenTicks>=2){that._trackDiv.before(createSliderItems(options,that._distance));that._setItemsWidth(pixelWidths);that._setItemsTitle();that._setItemsLargeTick();}that._calculateSteps(pixelWidths);that._tabindex(that.wrapper.find(DRAG_HANDLE));that[options.enabled?"enable":"disable"]();var rtlDirectionSign=kendo.support.isRtl(that.wrapper)?-1:1;that._keyMap={37:step(-1*rtlDirectionSign*options.smallStep),40:step(-options.smallStep),39:step(+1*rtlDirectionSign*options.smallStep),38:step(+options.smallStep),35:setValue(options.max),36:setValue(options.min),33:step(+options.largeStep),34:step(-options.largeStep)};kendo.notify(that);},events:[CHANGE,SLIDE],options:{enabled:true,min:0,max:10,smallStep:1,largeStep:5,orientation:"horizontal",tickPlacement:"both",tooltip:{enabled:true,format:"{0}"}},_setTrackDivWidth:function(){var that=this,trackDivPosition=parseFloat(that._trackDiv.css(that._isRtl?"right":that._position),10)*2;that._trackDiv[that._size]((that.wrapper[that._size]()-2)-trackDivPosition);},_setItemsWidth:function(pixelWidths){var that=this,options=that.options,first=0,last=pixelWidths.length-1,items=that.wrapper.find(TICK_SELECTOR),i,paddingTop=0,bordersWidth=2,count=items.length,selection=0;for(i=0;i<count-2;i++){$(items[i+1])[that._size](pixelWidths[i]);}if(that._isHorizontal){$(items[first]).addClass("k-first")[that._size](pixelWidths[last-1]);$(items[last]).addClass("k-last")[that._size](pixelWidths[last]);}else{$(items[last]).addClass("k-first")[that._size](pixelWidths[last]);$(items[first]).addClass("k-last")[that._size](pixelWidths[last-1]);}if(that._distance%options.smallStep!==0&&!that._isHorizontal){for(i=0;i<pixelWidths.length;i++){selection+=pixelWidths[i];}paddingTop=that._maxSelection-selection;paddingTop+=parseFloat(that._trackDiv.css(that._position),10)+bordersWidth;that.wrapper.find(".k-slider-items").css("padding-top",paddingTop);}},_setItemsTitle:function(){var that=this,options=that.options,items=that.wrapper.find(TICK_SELECTOR),titleNumber=options.min,count=items.length,i=that._isHorizontal&&!that._isRtl?0:count-1,limit=that._isHorizontal&&!that._isRtl?count:-1,increment=that._isHorizontal&&!that._isRtl?1:-1;for(;i-limit!==0;i+=increment){$(items[i]).attr("title",format(options.tooltip.format,round(titleNumber)));titleNumber+=options.smallStep;}},_setItemsLargeTick:function(){var that=this,options=that.options,i,items=that.wrapper.find(TICK_SELECTOR),item={},step=round(options.largeStep/options.smallStep);if((1000*options.largeStep)%(1000*options.smallStep)===0){if(that._isHorizontal&&!that._isRtl){for(i=0;i<items.length;i=round(i+step)){item=$(items[i]);item.addClass("k-tick-large").html("<span class='k-label'>"+item.attr("title")+"</span>");}}else{for(i=items.length-1;i>=0;i=round(i-step)){item=$(items[i]);item.addClass("k-tick-large").html("<span class='k-label'>"+item.attr("title")+"</span>");if(!that._isRtl){if(i!==0&&i!==items.length-1){item.css("line-height",item[that._size]()+"px");}}}}}},_calculateItemsWidth:function(itemsCount){var that=this,options=that.options,trackDivSize=parseFloat(that._trackDiv.css(that._size))+1,pixelStep=trackDivSize/that._distance,itemWidth,pixelWidths,i;if((that._distance/options.smallStep)-math.floor(that._distance/options.smallStep)>0){trackDivSize-=((that._distance%options.smallStep)*pixelStep);}itemWidth=trackDivSize/itemsCount;pixelWidths=[];for(i=0;i<itemsCount-1;i++){pixelWidths[i]=itemWidth;}pixelWidths[itemsCount-1]=pixelWidths[itemsCount]=itemWidth/2;return that._roundWidths(pixelWidths);},_roundWidths:function(pixelWidthsArray){var balance=0,count=pixelWidthsArray.length,i;for(i=0;i<count;i++){balance+=(pixelWidthsArray[i]-math.floor(pixelWidthsArray[i]));pixelWidthsArray[i]=math.floor(pixelWidthsArray[i]);}balance=math.round(balance);return this._addAdditionalSize(balance,pixelWidthsArray);},_addAdditionalSize:function(additionalSize,pixelWidthsArray){if(additionalSize===0){return pixelWidthsArray;}var step=parseFloat(pixelWidthsArray.length-1)/parseFloat(additionalSize==1?additionalSize:additionalSize-1),i;for(i=0;i<additionalSize;i++){pixelWidthsArray[parseInt(math.round(step*i),10)]+=1;}return pixelWidthsArray;},_calculateSteps:function(pixelWidths){var that=this,options=that.options,val=options.min,selection=0,itemsCount=math.ceil(that._distance/options.smallStep),i=1,lastItem;itemsCount+=(that._distance/options.smallStep)%1===0?1:0;pixelWidths.splice(0,0,pixelWidths[itemsCount-2]*2);pixelWidths.splice(itemsCount-1,1,pixelWidths.pop()*2);that._pixelSteps=[selection];that._values=[val];if(itemsCount===0){return;}while(i<itemsCount){selection+=(pixelWidths[i-1]+pixelWidths[i])/2;that._pixelSteps[i]=selection;that._values[i]=val+=options.smallStep;i++;}lastItem=that._distance%options.smallStep===0?itemsCount-1:itemsCount;that._pixelSteps[lastItem]=that._maxSelection;that._values[lastItem]=options.max;if(that._isRtl){that._pixelSteps.reverse();that._values.reverse();}},_getValueFromPosition:function(mousePosition,dragableArea){var that=this,options=that.options,step=math.max(options.smallStep*(that._maxSelection/that._distance),0),position=0,halfStep=(step/2),i;if(that._isHorizontal){position=mousePosition-dragableArea.startPoint;if(that._isRtl){position=that._maxSelection-position;}}else{position=dragableArea.startPoint-mousePosition;}if(that._maxSelection-((parseInt(that._maxSelection%step,10)-3)/2)<position){return options.max;}for(i=0;i<that._pixelSteps.length;i++){if(math.abs(that._pixelSteps[i]-position)-1<=halfStep){return round(that._values[i]);}}},_getFormattedValue:function(val,drag){var that=this,html="",tooltip=that.options.tooltip,tooltipTemplate,selectionStart,selectionEnd;if(isArray(val)){selectionStart=val[0];selectionEnd=val[1];}else if(drag&&drag.type){selectionStart=drag.selectionStart;selectionEnd=drag.selectionEnd;}if(drag){tooltipTemplate=drag.tooltipTemplate;}if(!tooltipTemplate&&tooltip.template){tooltipTemplate=kendo.template(tooltip.template);}if(isArray(val)||(drag&&drag.type)){if(tooltipTemplate){html=tooltipTemplate({selectionStart:selectionStart,selectionEnd:selectionEnd});}else{selectionStart=format(tooltip.format,selectionStart);selectionEnd=format(tooltip.format,selectionEnd);html=selectionStart+" - "+selectionEnd;}}else{if(drag){drag.val=val;}if(tooltipTemplate){html=tooltipTemplate({value:val});}else{html=format(tooltip.format,val);}}return html;},_getDragableArea:function(){var that=this,offsetLeft=that._trackDiv.offset().left,offsetTop=that._trackDiv.offset().top;return{startPoint:that._isHorizontal?offsetLeft:offsetTop+that._maxSelection,endPoint:that._isHorizontal?offsetLeft+that._maxSelection:offsetTop};},_createHtml:function(){var that=this,element=that.element,options=that.options,inputs=element.find("input");if(inputs.length==2){inputs.eq(0).val(options.selectionStart);inputs.eq(1).val(options.selectionEnd);}else{element.val(options.value);}element.wrap(createWrapper(options,element,that._isHorizontal)).hide();if(options.showButtons){element.before(createButton(options,"increase",that._isHorizontal)).before(createButton(options,"decrease",that._isHorizontal));}element.before(createTrack(options,element));},_focus:function(e){var that=this,target=e.target,val=that.value(),drag=that._drag;if(!drag){if(target==that.wrapper.find(DRAG_HANDLE).eq(0)[0]){drag=that._firstHandleDrag;that._activeHandle=0;}else{drag=that._lastHandleDrag;that._activeHandle=1;}val=val[that._activeHandle];}$(target).addClass(STATE_SELECTED);if(drag){that._activeHandleDrag=drag;drag.selectionStart=that.options.selectionStart;drag.selectionEnd=that.options.selectionEnd;drag._updateTooltip(val);}},_focusWithMouse:function(e){var that=this,target=$(e.target),idx=target.is(DRAG_HANDLE)?target.index():0;window.setTimeout(function(){that.wrapper.find(DRAG_HANDLE)[idx==2?1:0].focus();},1);that._setTooltipTimeout();},_blur:function(e){var that=this,drag=that._activeHandleDrag;$(e.target).removeClass(STATE_SELECTED);if(drag){drag._removeTooltip();delete that._activeHandleDrag;delete that._activeHandle;}},_setTooltipTimeout:function(){var that=this;that._tooltipTimeout=window.setTimeout(function(){var drag=that._drag||that._activeHandleDrag;if(drag){drag._removeTooltip();}},300);},_clearTooltipTimeout:function(){var that=this;window.clearTimeout(this._tooltipTimeout);var drag=that._drag||that._activeHandleDrag;if(drag&&drag.tooltipDiv){drag.tooltipDiv.stop(true,false).css("opacity",1);}}});function createWrapper(options,element,isHorizontal){var orientationCssClass=isHorizontal?" k-slider-horizontal":" k-slider-vertical",style=options.style?options.style:element.attr("style"),cssClasses=element.attr("class")?(" "+element.attr("class")):"",tickPlacementCssClass="";if(options.tickPlacement=="bottomRight"){tickPlacementCssClass=" k-slider-bottomright";}else if(options.tickPlacement=="topLeft"){tickPlacementCssClass=" k-slider-topleft";}style=style?" style='"+style+"'":"";return"<div class='k-widget k-slider"+orientationCssClass+cssClasses+"'"+style+">"+"<div class='k-slider-wrap"+(options.showButtons?" k-slider-buttons":"")+tickPlacementCssClass+"'></div></div>";}function createButton(options,type,isHorizontal){var buttonCssClass="";if(type=="increase"){buttonCssClass=isHorizontal?"k-i-arrow-e":"k-i-arrow-n";}else{buttonCssClass=isHorizontal?"k-i-arrow-w":"k-i-arrow-s";}return"<a class='k-button k-button-"+type+"'><span class='k-icon "+buttonCssClass+"' title='"+options[type+"ButtonTitle"]+"'>"+options[type+"ButtonTitle"]+"</span></a>";}function createSliderItems(options,distance){var result="<ul class='k-reset k-slider-items'>",count=math.floor(round(distance/options.smallStep))+1,i;for(i=0;i<count;i++){result+="<li class='k-tick' role='presentation'>&nbsp;</li>";}result+="</ul>";return result;}function createTrack(options,element){var dragHandleCount=element.is("input")?1:2,firstDragHandleTitle=dragHandleCount==2?options.leftDragHandleTitle:options.dragHandleTitle;return"<div class='k-slider-track'><div class='k-slider-selection'><!-- --></div>"+"<a href='#' class='k-draghandle' title='"+firstDragHandleTitle+"' role='slider' aria-valuemin='"+options.min+"' aria-valuemax='"+options.max+"' aria-valuenow='"+(dragHandleCount>1?(options.selectionStart||options.min):options.value||options.min)+"'>Drag</a>"+(dragHandleCount>1?"<a href='#' class='k-draghandle' title='"+options.rightDragHandleTitle+"'role='slider' aria-valuemin='"+options.min+"' aria-valuemax='"+options.max+"' aria-valuenow='"+(options.selectionEnd||options.max)+"'>Drag</a>":"")+"</div>";}function step(stepValue){return function(value){return value+stepValue;};}function setValue(value){return function(){return value;};}function formatValue(value){return(value+"").replace(".",kendo.cultures.current.numberFormat["."]);}function round(value){value=parseFloat(value,10);var power=math.pow(10,PRECISION||0);return math.round(value*power)/power;}function parseAttr(element,name){var value=parse(element.getAttribute(name));if(value===null){value=undefined;}return value;}var touchLocation=function(e){return{idx:0,x:e.pageX,y:e.pageY};};if(support.pointers){touchLocation=function(e){return{idx:0,x:e.originalEvent.clientX,y:e.originalEvent.clientY};};}if(support.touch){touchLocation=function(e,id){var changedTouches=e.changedTouches||e.originalEvent.changedTouches;if(id){var output=null;$.each(changedTouches,function(idx,value){if(id==value.identifier){output={idx:value.identifier,x:value.pageX,y:value.pageY};}});return output;}else{return{idx:changedTouches[0].identifier,x:changedTouches[0].pageX,y:changedTouches[0].pageY};}};}function defined(value){return typeof value!==UNDEFINED;}var Slider=SliderBase.extend({init:function(element,options){var that=this,dragHandle;element.type="text";options=extend({},{value:parseAttr(element,"value"),min:parseAttr(element,"min"),max:parseAttr(element,"max"),smallStep:parseAttr(element,"step")},options);element=$(element);if(options&&options.enabled===undefined){options.enabled=!element.is("[disabled]");}SliderBase.fn.init.call(that,element,options);options=that.options;if(!defined(options.value)){options.value=options.min;element.val(options.min);}dragHandle=that.wrapper.find(DRAG_HANDLE);new Slider.Selection(dragHandle,that,options);that._drag=new Slider.Drag(dragHandle,"",that,options);},options:{name:"Slider",showButtons:true,increaseButtonTitle:"Increase",decreaseButtonTitle:"Decrease",dragHandleTitle:"drag",tooltip:{format:"{0}"}},enable:function(enable){var that=this,options=that.options,clickHandler,move;that.disable();if(enable===false){return;}that.wrapper.removeClass(STATE_DISABLED).addClass(STATE_DEFAULT);that.wrapper.find("input").removeAttr(DISABLED);clickHandler=function(e){var location=touchLocation(e),mousePosition=that._isHorizontal?location.x:location.y,dragableArea=that._getDragableArea(),target=$(e.target);if(target.hasClass("k-draghandle")){target.addClass(STATE_SELECTED);return;}that._update(that._getValueFromPosition(mousePosition,dragableArea));that._focusWithMouse(e);that._drag.dragstart(e);};that.wrapper.find(TICK_SELECTOR+", "+TRACK_SELECTOR).on(TRACK_MOUSE_DOWN,clickHandler).end().on(TRACK_MOUSE_DOWN,function(){$(document.documentElement).one("selectstart",kendo.preventDefault);});that.wrapper.find(DRAG_HANDLE).on(MOUSE_UP,function(e){that._setTooltipTimeout();}).on(CLICK,function(e){that._focusWithMouse(e);e.preventDefault();}).on(FOCUS,proxy(that._focus,that)).on(BLUR,proxy(that._blur,that));move=proxy(function(sign){var newVal=that._nextValueByIndex(that._valueIndex+(sign*1));that._setValueInRange(newVal);that._drag._updateTooltip(newVal);},that);if(options.showButtons){var mouseDownHandler=proxy(function(e,sign){this._clearTooltipTimeout();if(e.which===1||(support.touch&&e.which===0)){move(sign);this.timeout=setTimeout(proxy(function(){this.timer=setInterval(function(){move(sign);},60);},this),200);}},that);that.wrapper.find(".k-button").on(MOUSE_UP,proxy(function(e){this._clearTimer();that._focusWithMouse(e);},that)).on(MOUSE_OVER,function(e){$(e.currentTarget).addClass("k-state-hover");}).on("mouseout"+NS,proxy(function(e){$(e.currentTarget).removeClass("k-state-hover");this._clearTimer();},that)).eq(0).on(MOUSE_DOWN,proxy(function(e){mouseDownHandler(e,1);},that)).click(false).end().eq(1).on(MOUSE_DOWN,proxy(function(e){mouseDownHandler(e,-1);},that)).click(kendo.preventDefault);}that.wrapper.find(DRAG_HANDLE).off(KEY_DOWN,false).on(KEY_DOWN,proxy(this._keydown,that));options.enabled=true;},disable:function(){var that=this;that.wrapper.removeClass(STATE_DEFAULT).addClass(STATE_DISABLED);$(that.element).attr(DISABLED,DISABLED);that.wrapper.find(".k-button").off(MOUSE_DOWN).on(MOUSE_DOWN,kendo.preventDefault).off(MOUSE_UP).on(MOUSE_UP,kendo.preventDefault).off("mouseleave"+NS).on("mouseleave"+NS,kendo.preventDefault).off(MOUSE_OVER).on(MOUSE_OVER,kendo.preventDefault);that.wrapper.find(TICK_SELECTOR+", "+TRACK_SELECTOR).off(TRACK_MOUSE_DOWN);that.wrapper.find(DRAG_HANDLE).off(MOUSE_UP).off(KEY_DOWN).off(CLICK).off(FOCUS).off(BLUR);that.options.enabled=false;},_update:function(val){var that=this,change=that.value()!=val;that.value(val);if(change){that.trigger(CHANGE,{value:that.options.value});}},value:function(value){var that=this,options=that.options;value=round(value);if(isNaN(value)){return options.value;}if(value>=options.min&&value<=options.max){if(options.value!=value){that.element.attr("value",formatValue(value));options.value=value;that._refreshAriaAttr(value);that._refresh();}}},_refresh:function(){this.trigger(MOVE_SELECTION,{value:this.options.value});},_refreshAriaAttr:function(value){var that=this,drag=that._drag,formattedValue;if(drag&&drag._tooltipDiv){formattedValue=drag._tooltipDiv.text();}else{formattedValue=that._getFormattedValue(value,null);}this.wrapper.find(DRAG_HANDLE).attr("aria-valuenow",value).attr("aria-valuetext",formattedValue);},_clearTimer:function(e){clearTimeout(this.timeout);clearInterval(this.timer);},_keydown:function(e){var that=this;if(e.keyCode in that._keyMap){that._clearTooltipTimeout();that._setValueInRange(that._keyMap[e.keyCode](that.options.value));that._drag._updateTooltip(that.value());e.preventDefault();}},_setValueInRange:function(val){var that=this,options=that.options;val=round(val);if(isNaN(val)){that._update(options.min);return;}val=math.max(math.min(val,options.max),options.min);that._update(val);},_nextValueByIndex:function(index){var count=this._values.length;if(this._isRtl){index=count-1-index;}return this._values[math.max(0,math.min(index,count-1))];},destroy:function(){var that=this;Widget.fn.destroy.call(that);that.wrapper.off(NS).find(".k-button").off(NS).end().find(DRAG_HANDLE).off(NS).end().find(TICK_SELECTOR+", "+TRACK_SELECTOR).off(NS).end();that._drag.draggable.destroy();}});Slider.Selection=function(dragHandle,that,options){function moveSelection(val){var selectionValue=val-options.min,index=that._valueIndex=math.ceil(round(selectionValue/options.smallStep)),selection=parseInt(that._pixelSteps[index],10),selectionDiv=that._trackDiv.find(".k-slider-selection"),halfDragHanndle=parseInt(dragHandle[that._outerSize]()/2,10),rtlCorrection=that._isRtl?2:0;selectionDiv[that._size](that._isRtl?that._maxSelection-selection:selection);dragHandle.css(that._position,selection-halfDragHanndle-rtlCorrection);}moveSelection(options.value);that.bind([CHANGE,SLIDE,MOVE_SELECTION],function(e){moveSelection(parseFloat(e.value,10));});};Slider.Drag=function(dragHandle,type,owner,options){var that=this;that.owner=owner;that.options=options;that.dragHandle=dragHandle;that.dragHandleSize=dragHandle[owner._outerSize]();that.type=type;that.draggable=new Draggable(dragHandle,{threshold:0,dragstart:proxy(that._dragstart,that),drag:proxy(that.drag,that),dragend:proxy(that.dragend,that),dragcancel:proxy(that.dragcancel,that)});dragHandle.click(false);};Slider.Drag.prototype={dragstart:function(e){this.draggable.userEvents._start(e);},_dragstart:function(e){var that=this,owner=that.owner,options=that.options;if(!options.enabled){e.preventDefault();return;}owner.element.off(MOUSE_OVER);that.dragHandle.addClass(STATE_SELECTED);that.dragableArea=owner._getDragableArea();that.step=math.max(options.smallStep*(owner._maxSelection/owner._distance),0);if(that.type){that.selectionStart=options.selectionStart;that.selectionEnd=options.selectionEnd;owner._setZIndex(that.type);}else{that.oldVal=that.val=options.value;}that._removeTooltip(true);that._createTooltip();},_createTooltip:function(){var that=this,owner=that.owner,tooltip=that.options.tooltip,html='',tooltipTemplate;if(!tooltip.enabled){return;}if(tooltip.template){tooltipTemplate=that.tooltipTemplate=kendo.template(tooltip.template);}$(".k-slider-tooltip").remove();that.tooltipDiv=$("<div class='k-widget k-tooltip k-slider-tooltip'><!-- --></div>").appendTo(document.body);html=owner._getFormattedValue(that.val||owner.value(),that);if(!that.type){that.tooltipInnerDiv="<div class='k-callout k-callout-"+(owner._isHorizontal?'s':'e')+"'><!-- --></div>";html+=that.tooltipInnerDiv;}that.tooltipDiv.html(html);that.moveTooltip();},drag:function(e){var that=this,owner=that.owner,x=e.x.location,y=e.y.location,startPoint=that.dragableArea.startPoint,endPoint=that.dragableArea.endPoint,slideParams;e.preventDefault();if(owner._isHorizontal){if(owner._isRtl){that.val=that.constrainValue(x,startPoint,endPoint,x<endPoint);}else{that.val=that.constrainValue(x,startPoint,endPoint,x>=endPoint);}}else{that.val=that.constrainValue(y,endPoint,startPoint,y<=endPoint);}if(that.oldVal!=that.val){that.oldVal=that.val;if(that.type){if(that.type=="firstHandle"){if(that.val<that.selectionEnd){that.selectionStart=that.val;}else{that.selectionStart=that.selectionEnd=that.val;}}else{if(that.val>that.selectionStart){that.selectionEnd=that.val;}else{that.selectionStart=that.selectionEnd=that.val;}}slideParams={values:[that.selectionStart,that.selectionEnd],value:[that.selectionStart,that.selectionEnd]};}else{slideParams={value:that.val};}owner.trigger(SLIDE,slideParams);}that._updateTooltip(that.val);},_updateTooltip:function(val){var that=this,options=that.options,tooltip=options.tooltip,html="";if(!tooltip.enabled){return;}if(!that.tooltipDiv){that._createTooltip();}html=that.owner._getFormattedValue(val,that);if(!that.type){html+=that.tooltipInnerDiv;}that.tooltipDiv.html(html);that.moveTooltip();},dragcancel:function(e){this.owner._refresh();return this._end();},dragend:function(e){var that=this,owner=that.owner;if(that.type){owner._update(that.selectionStart,that.selectionEnd);}else{owner._update(that.val);}return that._end();},_end:function(){var that=this,owner=that.owner;owner._focusWithMouse({"target":that.dragHandle[0]});owner.element.on(MOUSE_OVER);return false;},_removeTooltip:function(noAnimation){var that=this,owner=that.owner;if(that.tooltipDiv&&owner.options.tooltip.enabled&&owner.options.enabled){if(noAnimation){that.tooltipDiv.remove();that.tooltipDiv=null;}else{that.tooltipDiv.fadeOut("slow",function(){$(this).remove();that.tooltipDiv=null;});}}},moveTooltip:function(){var that=this,owner=that.owner,positionTop=0,positionLeft=0,dragHandleOffset=that.dragHandle.offset(),margin=4,callout=that.tooltipDiv.find(".k-callout"),dragHandles,firstDragHandleOffset,secondDragHandleOffset;if(that.type){dragHandles=owner.wrapper.find(DRAG_HANDLE);firstDragHandleOffset=dragHandles.eq(0).offset();secondDragHandleOffset=dragHandles.eq(1).offset();if(owner._isHorizontal){positionTop=secondDragHandleOffset.top;positionLeft=firstDragHandleOffset.left+((secondDragHandleOffset.left-firstDragHandleOffset.left)/2);}else{positionTop=firstDragHandleOffset.top+((secondDragHandleOffset.top-firstDragHandleOffset.top)/2);positionLeft=secondDragHandleOffset.left;}}else{positionTop=dragHandleOffset.top;positionLeft=dragHandleOffset.left;}if(owner._isHorizontal){positionLeft-=parseInt((that.tooltipDiv.outerWidth()-that.dragHandle[owner._outerSize]())/2,10);positionTop-=that.tooltipDiv.outerHeight()+(callout.height()||0)+margin;}else{positionTop-=parseInt((that.tooltipDiv.outerHeight()-that.dragHandle[owner._outerSize]())/2,10);positionLeft-=that.tooltipDiv.outerWidth()+(callout.width()||0)+margin;}that.tooltipDiv.css({top:positionTop,left:positionLeft});},constrainValue:function(position,min,max,maxOverflow){var that=this,val=0;if(min<position&&position<max){val=that.owner._getValueFromPosition(position,that.dragableArea);}else{if(maxOverflow){val=that.options.max;}else{val=that.options.min;}}return val;}};kendo.ui.plugin(Slider);var RangeSlider=SliderBase.extend({init:function(element,options){var that=this,inputs=$(element).find("input"),firstInput=inputs.eq(0)[0],secondInput=inputs.eq(1)[0];firstInput.type="text";secondInput.type="text";options=extend({},{selectionStart:parseAttr(firstInput,"value"),min:parseAttr(firstInput,"min"),max:parseAttr(firstInput,"max"),smallStep:parseAttr(firstInput,"step")},{selectionEnd:parseAttr(secondInput,"value"),min:parseAttr(secondInput,"min"),max:parseAttr(secondInput,"max"),smallStep:parseAttr(secondInput,"step")},options);if(options&&options.enabled===undefined){options.enabled=!inputs.is("[disabled]");}SliderBase.fn.init.call(that,element,options);options=that.options;if(!defined(options.selectionStart)){options.selectionStart=options.min;inputs.eq(0).val(options.min);}if(!defined(options.selectionEnd)){options.selectionEnd=options.max;inputs.eq(1).val(options.max);}var dragHandles=that.wrapper.find(DRAG_HANDLE);new RangeSlider.Selection(dragHandles,that,options);that._firstHandleDrag=new Slider.Drag(dragHandles.eq(0),"firstHandle",that,options);that._lastHandleDrag=new Slider.Drag(dragHandles.eq(1),"lastHandle",that,options);},options:{name:"RangeSlider",leftDragHandleTitle:"drag",rightDragHandleTitle:"drag",tooltip:{format:"{0}"}},enable:function(enable){var that=this,options=that.options,clickHandler;that.disable();if(enable===false){return;}that.wrapper.removeClass(STATE_DISABLED).addClass(STATE_DEFAULT);that.wrapper.find("input").removeAttr(DISABLED);clickHandler=function(e){var location=touchLocation(e),mousePosition=that._isHorizontal?location.x:location.y,dragableArea=that._getDragableArea(),val=that._getValueFromPosition(mousePosition,dragableArea),target=$(e.target),idx;if(target.hasClass("k-draghandle")){target.addClass(STATE_SELECTED);return;}if(val<options.selectionStart){that._setValueInRange(val,options.selectionEnd);that._firstHandleDrag.dragstart(e);idx=0;}else if(val>that.selectionEnd){that._setValueInRange(options.selectionStart,val);that._lastHandleDrag.dragstart(e);idx=1;}else{if(val-options.selectionStart<=options.selectionEnd-val){that._setValueInRange(val,options.selectionEnd);that._firstHandleDrag.dragstart(e);idx=0;}else{that._setValueInRange(options.selectionStart,val);that._lastHandleDrag.dragstart(e);idx=1;}}that._focusWithMouse({"target":that.wrapper.find(DRAG_HANDLE)[idx]});};that.wrapper.find(TICK_SELECTOR+", "+TRACK_SELECTOR).on(TRACK_MOUSE_DOWN,clickHandler).end().on(TRACK_MOUSE_DOWN,function(){$(document.documentElement).one("selectstart",kendo.preventDefault);});that.wrapper.find(DRAG_HANDLE).on(MOUSE_UP,function(e){that._setTooltipTimeout();}).on(CLICK,function(e){that._focusWithMouse(e);e.preventDefault();}).on(FOCUS,proxy(that._focus,that)).on(BLUR,proxy(that._blur,that));that.wrapper.find(DRAG_HANDLE).off(KEY_DOWN,kendo.preventDefault).eq(0).on(KEY_DOWN,proxy(function(e){this._keydown(e,"firstHandle");},that)).end().eq(1).on(KEY_DOWN,proxy(function(e){this._keydown(e,"lastHandle");},that));that.options.enabled=true;},disable:function(){var that=this;that.wrapper.removeClass(STATE_DEFAULT).addClass(STATE_DISABLED);that.wrapper.find("input").attr(DISABLED,DISABLED);that.wrapper.find(TICK_SELECTOR+", "+TRACK_SELECTOR).off(TRACK_MOUSE_DOWN);that.wrapper.find(DRAG_HANDLE).off(MOUSE_UP).off(KEY_DOWN).off(CLICK).off(FOCUS).off(BLUR);that.options.enabled=false;},_keydown:function(e,handle){var that=this,selectionStartValue=that.options.selectionStart,selectionEndValue=that.options.selectionEnd,dragSelectionStart,dragSelectionEnd,activeHandleDrag;if(e.keyCode in that._keyMap){that._clearTooltipTimeout();if(handle=="firstHandle"){activeHandleDrag=that._activeHandleDrag=that._firstHandleDrag;selectionStartValue=that._keyMap[e.keyCode](selectionStartValue);if(selectionStartValue>selectionEndValue){selectionEndValue=selectionStartValue;}}else{activeHandleDrag=that._activeHandleDrag=that._lastHandleDrag;selectionEndValue=that._keyMap[e.keyCode](selectionEndValue);if(selectionStartValue>selectionEndValue){selectionStartValue=selectionEndValue;}}that._setValueInRange(selectionStartValue,selectionEndValue);dragSelectionStart=Math.max(selectionStartValue,that.options.selectionStart);dragSelectionEnd=Math.min(selectionEndValue,that.options.selectionEnd);activeHandleDrag.selectionEnd=Math.max(dragSelectionEnd,that.options.selectionStart);activeHandleDrag.selectionStart=Math.min(dragSelectionStart,that.options.selectionEnd);activeHandleDrag._updateTooltip(that.value()[that._activeHandle]);e.preventDefault();}},_update:function(selectionStart,selectionEnd){var that=this,values=that.value();var change=values[0]!=selectionStart||values[1]!=selectionEnd;that.value([selectionStart,selectionEnd]);if(change){that.trigger(CHANGE,{values:[selectionStart,selectionEnd],value:[selectionStart,selectionEnd]});}},value:function(value){if(value&&value.length){return this._value(value[0],value[1]);}else{return this._value();}},_value:function(start,end){var that=this,options=that.options,selectionStart=options.selectionStart,selectionEnd=options.selectionEnd;if(isNaN(start)&&isNaN(end)){return[selectionStart,selectionEnd];}else{start=round(start);end=round(end);}if(start>=options.min&&start<=options.max&&end>=options.min&&end<=options.max&&start<=end){if(selectionStart!=start||selectionEnd!=end){that.element.find("input").eq(0).attr("value",formatValue(start)).end().eq(1).attr("value",formatValue(end));options.selectionStart=start;options.selectionEnd=end;that._refresh();that._refreshAriaAttr(start,end);}}},values:function(start,end){if(isArray(start)){return this._value(start[0],start[1]);}else{return this._value(start,end);}},_refresh:function(){var that=this,options=that.options;that.trigger(MOVE_SELECTION,{values:[options.selectionStart,options.selectionEnd],value:[options.selectionStart,options.selectionEnd]});if(options.selectionStart==options.max&&options.selectionEnd==options.max){that._setZIndex("firstHandle");}},_refreshAriaAttr:function(start,end){var that=this,dragHandles=that.wrapper.find(DRAG_HANDLE),drag=that._activeHandleDrag,formattedValue;formattedValue=that._getFormattedValue([start,end],drag);dragHandles.eq(0).attr("aria-valuenow",start);dragHandles.eq(1).attr("aria-valuenow",end);dragHandles.attr("aria-valuetext",formattedValue);},_setValueInRange:function(selectionStart,selectionEnd){var options=this.options;selectionStart=math.max(math.min(selectionStart,options.max),options.min);selectionEnd=math.max(math.min(selectionEnd,options.max),options.min);if(selectionStart==options.max&&selectionEnd==options.max){this._setZIndex("firstHandle");}this._update(math.min(selectionStart,selectionEnd),math.max(selectionStart,selectionEnd));},_setZIndex:function(type){this.wrapper.find(DRAG_HANDLE).each(function(index){$(this).css("z-index",type=="firstHandle"?1-index:index);});},destroy:function(){var that=this;Widget.fn.destroy.call(that);that.wrapper.off(NS).find(TICK_SELECTOR+", "+TRACK_SELECTOR).off(NS).end().find(DRAG_HANDLE).off(NS);that._firstHandleDrag.draggable.destroy();that._lastHandleDrag.draggable.destroy();}});RangeSlider.Selection=function(dragHandles,that,options){function moveSelection(value){value=value||[];var selectionStartValue=value[0]-options.min,selectionEndValue=value[1]-options.min,selectionStartIndex=math.ceil(round(selectionStartValue/options.smallStep)),selectionEndIndex=math.ceil(round(selectionEndValue/options.smallStep)),selectionStart=that._pixelSteps[selectionStartIndex],selectionEnd=that._pixelSteps[selectionEndIndex],halfHandle=parseInt(dragHandles.eq(0)[that._outerSize]()/2,10),rtlCorrection=that._isRtl?2:0;dragHandles.eq(0).css(that._position,selectionStart-halfHandle-rtlCorrection).end().eq(1).css(that._position,selectionEnd-halfHandle-rtlCorrection);makeSelection(selectionStart,selectionEnd);}function makeSelection(selectionStart,selectionEnd){var selection,selectionPosition,selectionDiv=that._trackDiv.find(".k-slider-selection");selection=math.abs(selectionStart-selectionEnd);selectionDiv[that._size](selection);if(that._isRtl){selectionPosition=math.max(selectionStart,selectionEnd);selectionDiv.css("right",that._maxSelection-selectionPosition-1);}else{selectionPosition=math.min(selectionStart,selectionEnd);selectionDiv.css(that._position,selectionPosition-1);}}moveSelection(that.value());that.bind([CHANGE,SLIDE,MOVE_SELECTION],function(e){moveSelection(e.values);});};kendo.ui.plugin(RangeSlider);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,keys=kendo.keys,extend=$.extend,proxy=$.proxy,Widget=ui.Widget,pxUnitsRegex=/^\d+(\.\d+)?px$/i,percentageUnitsRegex=/^\d+(\.\d+)?%$/i,NS=".kendoSplitter",EXPAND="expand",COLLAPSE="collapse",CONTENTLOAD="contentLoad",RESIZE="resize",LAYOUTCHANGE="layoutChange",HORIZONTAL="horizontal",VERTICAL="vertical",MOUSEENTER="mouseenter",CLICK="click",PANE="pane",MOUSELEAVE="mouseleave",FOCUSED="k-state-focused",KPANE="k-"+PANE,PANECLASS="."+KPANE;function isPercentageSize(size){return percentageUnitsRegex.test(size);}function isPixelSize(size){return pxUnitsRegex.test(size);}function isFluid(size){return!isPercentageSize(size)&&!isPixelSize(size);}function panePropertyAccessor(propertyName,triggersResize){return function(pane,value){var paneConfig=$(pane).data(PANE);if(arguments.length==1){return paneConfig[propertyName];}paneConfig[propertyName]=value;if(triggersResize){var splitter=this.element.data("kendoSplitter");splitter.trigger(RESIZE);}};}var Splitter=Widget.extend({init:function(element,options){var that=this,isHorizontal;Widget.fn.init.call(that,element,options);that.wrapper=that.element;isHorizontal=that.options.orientation.toLowerCase()!=VERTICAL;that.orientation=isHorizontal?HORIZONTAL:VERTICAL;that._dimension=isHorizontal?"width":"height";that._keys={decrease:isHorizontal?keys.LEFT:keys.UP,increase:isHorizontal?keys.RIGHT:keys.DOWN};that._resizeStep=10;that.bind(RESIZE,proxy(that._resize,that));that._marker=kendo.guid().substring(0,8);that._initPanes();that._resizeHandler=function(){that.trigger(RESIZE);};that._attachEvents();$(window).on("resize",that._resizeHandler);that.resizing=new PaneResizing(that);that.element.triggerHandler("init.kendoSplitter");},events:[EXPAND,COLLAPSE,CONTENTLOAD,RESIZE,LAYOUTCHANGE],_attachEvents:function(){var that=this,orientation=that.options.orientation,splitbarSelector=".k-splitbar-"+orientation,splitbarDraggableSelector=".k-splitbar-draggable-"+orientation,expandCollapseSelector=".k-splitbar .k-icon:not(.k-resize-handle)";that.element.on("keydown"+NS,splitbarSelector,"_keydown").on("mousedown"+NS,splitbarSelector,function(e){e.currentTarget.focus();}).on("focus"+NS,splitbarSelector,function(e){$(e.currentTarget).addClass(FOCUSED);}).on("blur"+NS,splitbarSelector,function(e){$(e.currentTarget).removeClass(FOCUSED);that.resizing.end();}).on(MOUSEENTER+NS,splitbarDraggableSelector,function(){$(this).addClass("k-splitbar-"+that.orientation+"-hover");}).on(MOUSELEAVE+NS,splitbarDraggableSelector,function(){$(this).removeClass("k-splitbar-"+that.orientation+"-hover");}).on("mousedown"+NS,splitbarDraggableSelector,function(){that.resizing.end();that._panes().append("<div class='k-splitter-overlay k-overlay' />");}).on("mouseup"+NS,splitbarDraggableSelector,function(){that._panes().children(".k-splitter-overlay").remove();}).on(MOUSEENTER+NS,expandCollapseSelector,function(){$(this).addClass("k-state-hover");}).on(MOUSELEAVE+NS,expandCollapseSelector,function(){$(this).removeClass('k-state-hover');}).on(CLICK+NS,".k-splitbar .k-collapse-next, .k-splitbar .k-collapse-prev",that._arrowClick(COLLAPSE)).on(CLICK+NS,".k-splitbar .k-expand-next, .k-splitbar .k-expand-prev",that._arrowClick(EXPAND)).on("dblclick"+NS,".k-splitbar",proxy(that._togglePane,that)).parent().closest(".k-splitter").each(function(){var parentSplitter=$(this),splitter=parentSplitter.data("kendoSplitter");if(splitter){splitter.bind(RESIZE,that._resizeHandler);}else{parentSplitter.one("init"+NS,function(){$(this).data("kendoSplitter").bind(RESIZE,that._resizeHandler);that._resizeHandler();});}});},options:{name:"Splitter",orientation:HORIZONTAL},destroy:function(){var that=this;Widget.fn.destroy.call(that);that.element.off(NS);that.resizing.destroy();$(window).off("resize",that._resizeHandler);kendo.destroy(that.element);},_keydown:function(e){var that=this,key=e.keyCode,resizing=that.resizing,target=$(e.currentTarget),navigationKeys=that._keys,increase=key===navigationKeys.increase,decrease=key===navigationKeys.decrease,pane;if(increase||decrease){if(e.ctrlKey){pane=target[decrease?"next":"prev"]();if(resizing.isResizing()){resizing.end();}if(!pane[that._dimension]()){that._triggerAction(EXPAND,pane);}else{that._triggerAction(COLLAPSE,target[decrease?"prev":"next"]());}}else{resizing.move((decrease?-1:1)*that._resizeStep,target);}e.preventDefault();}else if(key===keys.ENTER){resizing.end();e.preventDefault();}},_initPanes:function(){var that=this,panesConfig=that.options.panes||[];that.element.addClass("k-widget").addClass("k-splitter").children().each(function(index,pane){var config=panesConfig&&panesConfig[index];pane=$(pane).attr("role","group").addClass(KPANE);pane.data(PANE,config?config:{}).toggleClass("k-scrollable",config?config.scrollable!==false:true);that.ajaxRequest(pane);}).end();that.trigger(RESIZE);},ajaxRequest:function(pane,url,data){pane=$(pane);var that=this,paneConfig=pane.data(PANE);url=url||paneConfig.contentUrl;if(url){pane.append("<span class='k-icon k-loading k-pane-loading' />");if(kendo.isLocalUrl(url)){jQuery.ajax({url:url,data:data||{},type:"GET",dataType:"html",success:function(data){pane.html(data);that.trigger(CONTENTLOAD,{pane:pane[0]});}});}else{pane.removeClass("k-scrollable").html("<iframe src='"+url+"' frameborder='0' class='k-content-frame'>"+"This page requires frames in order to show content"+"</iframe>");}}},_triggerAction:function(type,pane){if(!this.trigger(type,{pane:pane[0]})){this[type](pane[0]);}},_togglePane:function(e){var that=this,target=$(e.target),arrow;if(target.closest(".k-splitter")[0]!=that.element[0]){return;}arrow=target.children(".k-icon:not(.k-resize-handle)");if(arrow.length!==1){return;}if(arrow.is(".k-collapse-prev")){that._triggerAction(COLLAPSE,target.prev());}else if(arrow.is(".k-collapse-next")){that._triggerAction(COLLAPSE,target.next());}else if(arrow.is(".k-expand-prev")){that._triggerAction(EXPAND,target.prev());}else if(arrow.is(".k-expand-next")){that._triggerAction(EXPAND,target.next());}},_arrowClick:function(arrowType){var that=this;return function(e){var target=$(e.target),pane;if(target.closest(".k-splitter")[0]!=that.element[0]){return;}if(target.is(".k-"+arrowType+"-prev")){pane=target.parent().prev();}else{pane=target.parent().next();}that._triggerAction(arrowType,pane);};},_updateSplitBar:function(splitbar,previousPane,nextPane){var catIconIf=function(iconType,condition){return condition?"<div class='k-icon "+iconType+"' />":"";},orientation=this.orientation,draggable=(previousPane.resizable!==false)&&(nextPane.resizable!==false),prevCollapsible=previousPane.collapsible,prevCollapsed=previousPane.collapsed,nextCollapsible=nextPane.collapsible,nextCollapsed=nextPane.collapsed;splitbar.addClass("k-splitbar k-state-default k-splitbar-"+orientation).attr("role","separator").attr("aria-expanded",!(prevCollapsed||nextCollapsed)).removeClass("k-splitbar-"+orientation+"-hover").toggleClass("k-splitbar-draggable-"+orientation,draggable&&!prevCollapsed&&!nextCollapsed).toggleClass("k-splitbar-static-"+orientation,!draggable&&!prevCollapsible&&!nextCollapsible).html(catIconIf("k-collapse-prev",prevCollapsible&&!prevCollapsed&&!nextCollapsed)+catIconIf("k-expand-prev",prevCollapsible&&prevCollapsed&&!nextCollapsed)+catIconIf("k-resize-handle",draggable)+catIconIf("k-collapse-next",nextCollapsible&&!nextCollapsed&&!prevCollapsed)+catIconIf("k-expand-next",nextCollapsible&&nextCollapsed&&!prevCollapsed));},_updateSplitBars:function(){var that=this;this.element.children(".k-splitbar").each(function(){var splitbar=$(this),previousPane=splitbar.prev(PANECLASS).data(PANE),nextPane=splitbar.next(PANECLASS).data(PANE);if(!nextPane){return;}that._updateSplitBar(splitbar,previousPane,nextPane);});},_panes:function(){return this.element.children(PANECLASS);},_resize:function(){var that=this,element=that.element,panes=element.children(":not(.k-splitbar)"),isHorizontal=that.orientation==HORIZONTAL,splitBars=element.children(".k-splitbar"),splitBarsCount=splitBars.length,sizingProperty=isHorizontal?"width":"height",totalSize=element[sizingProperty]();if(splitBarsCount===0){splitBarsCount=panes.length-1;panes.slice(0,splitBarsCount).after("<div tabindex='0' class='k-splitbar' data-marker='"+that._marker+"' />");that._updateSplitBars();splitBars=element.children(".k-splitbar");}else{that._updateSplitBars();}splitBars.each(function(){totalSize-=this[isHorizontal?"offsetWidth":"offsetHeight"];});var sizedPanesWidth=0,sizedPanesCount=0,freeSizedPanes=$();panes.css({position:"absolute",top:0})
[sizingProperty](function(){var config=$(this).data(PANE)||{},size;if(config.collapsed){size=0;$(this).css("overflow","hidden");}else if(isFluid(config.size)){freeSizedPanes=freeSizedPanes.add(this);return;}else{size=parseInt(config.size,10);if(isPercentageSize(config.size)){size=Math.floor(size*totalSize/100);}}sizedPanesCount++;sizedPanesWidth+=size;return size;});totalSize-=sizedPanesWidth;var freeSizePanesCount=freeSizedPanes.length,freeSizePaneWidth=Math.floor(totalSize/freeSizePanesCount);freeSizedPanes.slice(0,freeSizePanesCount-1).css(sizingProperty,freeSizePaneWidth).end().eq(freeSizePanesCount-1).css(sizingProperty,totalSize-(freeSizePanesCount-1)*freeSizePaneWidth);var sum=0,alternateSizingProperty=isHorizontal?"height":"width",positioningProperty=isHorizontal?"left":"top",sizingDomProperty=isHorizontal?"offsetWidth":"offsetHeight";if(freeSizePanesCount===0){var lastNonCollapsedPane=panes.filter(function(){return!(($(this).data(PANE)||{}).collapsed);}).last();lastNonCollapsedPane[sizingProperty](totalSize+lastNonCollapsedPane[0][sizingDomProperty]);}element.children().css(alternateSizingProperty,element[alternateSizingProperty]()).each(function(i,child){child.style[positioningProperty]=Math.floor(sum)+"px";sum+=child[sizingDomProperty];});that.trigger(LAYOUTCHANGE);},toggle:function(pane,expand){var paneConfig;pane=$(pane);paneConfig=pane.data(PANE);if(!expand&&!paneConfig.collapsible){return;}if(arguments.length==1){expand=paneConfig.collapsed===undefined?false:paneConfig.collapsed;}paneConfig.collapsed=!expand;if(paneConfig.collapsed){pane.css("overflow","hidden");}else{pane.css("overflow","");}this.trigger(RESIZE);this.resizing.destroy();this.resizing=new PaneResizing(this);},collapse:function(pane){this.toggle(pane,false);},expand:function(pane){this.toggle(pane,true);},size:panePropertyAccessor("size",true),min:panePropertyAccessor("min"),max:panePropertyAccessor("max")});ui.plugin(Splitter);var verticalDefaults={sizingProperty:"height",sizingDomProperty:"offsetHeight",alternateSizingProperty:"width",positioningProperty:"top",mousePositioningProperty:"pageY"};var horizontalDefaults={sizingProperty:"width",sizingDomProperty:"offsetWidth",alternateSizingProperty:"height",positioningProperty:"left",mousePositioningProperty:"pageX"};function PaneResizing(splitter){var that=this,orientation=splitter.orientation;that.owner=splitter;that._element=splitter.element;that.orientation=orientation;extend(that,orientation===HORIZONTAL?horizontalDefaults:verticalDefaults);that._resizable=new kendo.ui.Resizable(splitter.element,{orientation:orientation,handle:".k-splitbar-draggable-"+orientation+"[data-marker="+splitter._marker+"]",hint:proxy(that._createHint,that),start:proxy(that._start,that),max:proxy(that._max,that),min:proxy(that._min,that),invalidClass:"k-restricted-size-"+orientation,resizeend:proxy(that._stop,that)});}PaneResizing.prototype={press:function(target){this._resizable.press(target);},move:function(delta,target){if(!this._resizable.target){this._resizable.press(target);}this._resizable.move(delta);},end:function(){this._resizable.end();},destroy:function(){this._resizable.destroy();},isResizing:function(){return this._resizable.resizing;},_createHint:function(handle){var that=this;return $("<div class='k-ghost-splitbar k-ghost-splitbar-"+that.orientation+" k-state-default' />").css(that.alternateSizingProperty,handle[that.alternateSizingProperty]());},_start:function(e){var that=this,splitbar=$(e.currentTarget),previousPane=splitbar.prev(),nextPane=splitbar.next(),previousPaneConfig=previousPane.data(PANE),nextPaneConfig=nextPane.data(PANE),prevBoundary=parseInt(previousPane[0].style[that.positioningProperty],10),nextBoundary=parseInt(nextPane[0].style[that.positioningProperty],10)+nextPane[0][that.sizingDomProperty]-splitbar[0][that.sizingDomProperty],totalSize=that._element.css(that.sizingProperty),toPx=function(value){var val=parseInt(value,10);return(isPixelSize(value)?val:(totalSize*val)/100)||0;},prevMinSize=toPx(previousPaneConfig.min),prevMaxSize=toPx(previousPaneConfig.max)||nextBoundary-prevBoundary,nextMinSize=toPx(nextPaneConfig.min),nextMaxSize=toPx(nextPaneConfig.max)||nextBoundary-prevBoundary;that.previousPane=previousPane;that.nextPane=nextPane;that._maxPosition=Math.min(nextBoundary-nextMinSize,prevBoundary+prevMaxSize);that._minPosition=Math.max(prevBoundary+prevMinSize,nextBoundary-nextMaxSize);},_max:function(e){return this._maxPosition;},_min:function(e){return this._minPosition;},_stop:function(e){var that=this,splitbar=$(e.currentTarget),owner=that.owner;owner._panes().children(".k-splitter-overlay").remove();if(e.keyCode!==kendo.keys.ESC){var ghostPosition=e.position,previousPane=splitbar.prev(),nextPane=splitbar.next(),previousPaneConfig=previousPane.data(PANE),nextPaneConfig=nextPane.data(PANE),previousPaneNewSize=ghostPosition-parseInt(previousPane[0].style[that.positioningProperty],10),nextPaneNewSize=parseInt(nextPane[0].style[that.positioningProperty],10)+nextPane[0][that.sizingDomProperty]-ghostPosition-splitbar[0][that.sizingDomProperty],fluidPanesCount=that._element.children(PANECLASS).filter(function(){return isFluid($(this).data(PANE).size);}).length;if(!isFluid(previousPaneConfig.size)||fluidPanesCount>1){if(isFluid(previousPaneConfig.size)){fluidPanesCount--;}previousPaneConfig.size=previousPaneNewSize+"px";}if(!isFluid(nextPaneConfig.size)||fluidPanesCount>1){nextPaneConfig.size=nextPaneNewSize+"px";}owner.trigger(RESIZE);}setTimeout(function(){that.press(splitbar);});return false;}};})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,Widget=kendo.ui.Widget,logToConsole=kendo.logToConsole,rFileExtension=/\.([^\.]+)$/,NS=".kendoUpload",SELECT="select",UPLOAD="upload",SUCCESS="success",ERROR="error",COMPLETE="complete",CANCEL="cancel",PROGRESS="progress",REMOVE="remove";var Upload=Widget.extend({init:function(element,options){var that=this;Widget.fn.init.call(that,element,options);that.name=element.name;that.multiple=that.options.multiple;that.localization=that.options.localization;var activeInput=that.element;that.wrapper=activeInput.closest(".k-upload");if(that.wrapper.length===0){that.wrapper=that._wrapInput(activeInput);}that._activeInput(activeInput);that.toggle(that.options.enabled);var ns=that._ns=NS+"-"+kendo.guid();activeInput.closest("form").on("submit"+ns,$.proxy(that._onParentFormSubmit,that)).on("reset"+ns,$.proxy(that._onParentFormReset,that));if(that.options.async.saveUrl){that._module=that._supportsFormData()?new formDataUploadModule(that):new iframeUploadModule(that);that._async=true;}else{that._module=new syncUploadModule(that);}if(that._supportsDrop()){that._setupDropZone();}that.wrapper.delegate(".k-upload-action","click",$.proxy(that._onFileAction,that)).delegate(".k-upload-selected","click",$.proxy(that._onUploadSelected,that)).delegate(".k-file","t:progress",$.proxy(that._onFileProgress,that)).delegate(".k-file","t:upload-success",$.proxy(that._onUploadSuccess,that)).delegate(".k-file","t:upload-error",$.proxy(that._onUploadError,that));},events:[SELECT,UPLOAD,SUCCESS,ERROR,COMPLETE,CANCEL,PROGRESS,REMOVE],options:{name:"Upload",enabled:true,multiple:true,showFileList:true,async:{removeVerb:"POST",autoUpload:true},localization:{"select":"Select...","cancel":"Cancel","retry":"Retry","remove":"Remove","uploadSelectedFiles":"Upload files","dropFilesHere":"drop files here to upload","statusUploading":"uploading","statusUploaded":"uploaded","statusFailed":"failed"}},setOptions:function(options){var that=this,activeInput=that.element;Widget.fn.setOptions.call(that,options);that.multiple=that.options.multiple;activeInput.attr("multiple",that._supportsMultiple()?that.multiple:false);that.toggle(that.options.enabled);},enable:function(enable){enable=typeof(enable)==="undefined"?true:enable;this.toggle(enable);},disable:function(){this.toggle(false);},toggle:function(enable){enable=typeof(enable)==="undefined"?enable:!enable;this.wrapper.toggleClass("k-state-disabled",enable);},destroy:function(){var that=this;$(document).add($(".k-dropzone",that.wrapper)).add(that.wrapper.closest("form")).off(that._ns);Widget.fn.destroy.call(that);},_addInput:function(input){var that=this;input.insertAfter(that.element).data("kendoUpload",that);$(that.element).hide().removeAttr("id");that._activeInput(input);},_activeInput:function(input){var that=this,wrapper=that.wrapper;that.element=input;input.attr("multiple",that._supportsMultiple()?that.multiple:false).attr("autocomplete","off").click(function(e){if(wrapper.hasClass("k-state-disabled")){e.preventDefault();}}).change($.proxy(that._onInputChange,that));},_onInputChange:function(e){var upload=this,input=$(e.target),prevented=upload.trigger(SELECT,{files:inputFiles(input)});if(prevented){upload._addInput(input.clone().val(""));input.remove();}else{input.trigger("t:select");}},_onDrop:function(e){var dt=e.originalEvent.dataTransfer,that=this,droppedFiles=dt.files;stopEvent(e);if(droppedFiles.length>0){var prevented=that.trigger(SELECT,{files:getAllFileInfo(droppedFiles)});if(!prevented){$(".k-dropzone",that.wrapper).trigger("t:select",[droppedFiles]);}}},_enqueueFile:function(name,data){var that=this,existingFileEntries,fileEntry,fileList=$(".k-upload-files",that.wrapper);if(fileList.length===0){fileList=$("<ul class='k-upload-files k-reset'></ul>").appendTo(that.wrapper);if(!that.options.showFileList){fileList.hide();}}existingFileEntries=$(".k-file",fileList);fileEntry=$("<li class='k-file'><span class='k-filename' title='"+name+"'>"+name+"</span></li>").appendTo(fileList).data(data);if(that._async){fileEntry.prepend("<span class='k-icon'></span>");}if(!that.multiple){existingFileEntries.trigger("t:remove");}return fileEntry;},_removeFileEntry:function(fileEntry){var fileList=fileEntry.closest(".k-upload-files"),allFiles;fileEntry.remove();allFiles=$(".k-file",fileList);if(allFiles.find("> .k-fail").length===allFiles.length){this._hideUploadButton();}if(allFiles.length===0){fileList.remove();}},_fileAction:function(fileElement,actionKey){var classDictionary={remove:"k-delete",cancel:"k-cancel",retry:"k-retry"};if(!classDictionary.hasOwnProperty(actionKey)){return;}this._clearFileAction(fileElement);fileElement.append(this._renderAction(classDictionary[actionKey],this.localization[actionKey]).addClass("k-upload-action"));},_fileState:function(fileEntry,stateKey){var localization=this.localization,states={uploading:{cssClass:"k-loading",text:localization.statusUploading},uploaded:{cssClass:"k-success",text:localization.statusUploaded},failed:{cssClass:"k-fail",text:localization.statusFailed}},currentState=states[stateKey];if(currentState){var icon=fileEntry.children(".k-icon").text(currentState.text);icon[0].className="k-icon "+currentState.cssClass;}},_renderAction:function(actionClass,actionText){if(actionClass!==""){return $("<button type='button' class='k-button k-button-icontext'>"+"<span class='k-icon "+actionClass+"'></span>"+actionText+"</button>");}else{return $("<button type='button' class='k-button'>"+actionText+"</button>");}},_clearFileAction:function(fileElement){fileElement.find(".k-upload-action").remove();},_onFileAction:function(e){var that=this;if(!that.wrapper.hasClass("k-state-disabled")){var button=$(e.target).closest(".k-upload-action"),icon=button.find(".k-icon"),fileEntry=button.closest(".k-file"),eventArgs={files:fileEntry.data("fileNames")};if(icon.hasClass("k-delete")){if(!that.trigger(REMOVE,eventArgs)){fileEntry.trigger("t:remove",eventArgs.data);}}else if(icon.hasClass("k-cancel")){that.trigger(CANCEL,eventArgs);fileEntry.trigger("t:cancel");this._checkAllComplete();}else if(icon.hasClass("k-retry")){fileEntry.trigger("t:retry");}}return false;},_onUploadSelected:function(){this.wrapper.trigger("t:saveSelected");return false;},_onFileProgress:function(e,percentComplete){var progressBar=$(".k-progress-status",e.target);if(progressBar.length===0){progressBar=$("<span class='k-progress'><span class='k-state-selected k-progress-status' style='width: 0;'></span></span>").appendTo($(".k-filename",e.target)).find(".k-progress-status");}progressBar.width(percentComplete+"%");this.trigger(PROGRESS,{files:getFileEntry(e).data("fileNames"),percentComplete:percentComplete});},_onUploadSuccess:function(e,response,xhr){var fileEntry=getFileEntry(e);this._fileState(fileEntry,"uploaded");this.trigger(SUCCESS,{files:fileEntry.data("fileNames"),response:response,operation:"upload",XMLHttpRequest:xhr});if(this._supportsRemove()){this._fileAction(fileEntry,REMOVE);}else{this._clearFileAction(fileEntry);}this._checkAllComplete();},_onUploadError:function(e,xhr){var fileEntry=getFileEntry(e);this._fileState(fileEntry,"failed");this._fileAction(fileEntry,"retry");this.trigger(ERROR,{operation:"upload",files:fileEntry.data("fileNames"),XMLHttpRequest:xhr});logToConsole("Server response: "+xhr.responseText);this._checkAllComplete();},_showUploadButton:function(){var uploadButton=$(".k-upload-selected",this.wrapper);if(uploadButton.length===0){uploadButton=this._renderAction("",this.localization.uploadSelectedFiles).addClass("k-upload-selected");}this.wrapper.append(uploadButton);},_hideUploadButton:function(){$(".k-upload-selected",this.wrapper).remove();},_onParentFormSubmit:function(){var upload=this,element=upload.element;element.trigger("t:abort");if(!element.value){var input=$(element);input.attr("disabled","disabled");window.setTimeout(function(){input.removeAttr("disabled");},0);}},_onParentFormReset:function(){$(".k-upload-files",this.wrapper).remove();},_supportsFormData:function(){return typeof(FormData)!="undefined";},_supportsMultiple:function(){var windows=this._userAgent().indexOf("Windows")>-1;return!kendo.support.browser.opera&&!(kendo.support.browser.safari&&windows);},_supportsDrop:function(){var userAgent=this._userAgent().toLowerCase(),isChrome=/chrome/.test(userAgent),isSafari=!isChrome&&/safari/.test(userAgent),isWindowsSafari=isSafari&&/windows/.test(userAgent);return!isWindowsSafari&&this._supportsFormData()&&(this.options.async.saveUrl);},_userAgent:function(){return navigator.userAgent;},_setupDropZone:function(){var that=this;$(".k-upload-button",this.wrapper).wrap("<div class='k-dropzone'></div>");var ns=that._ns;var dropZone=$(".k-dropzone",that.wrapper).append($("<em>"+that.localization.dropFilesHere+"</em>")).on("dragenter"+ns,stopEvent).on("dragover"+ns,function(e){e.preventDefault();}).on("drop"+ns,$.proxy(this._onDrop,this));bindDragEventWrappers(dropZone,ns,function(){dropZone.addClass("k-dropzone-hovered");},function(){dropZone.removeClass("k-dropzone-hovered");});bindDragEventWrappers($(document),ns,function(){dropZone.addClass("k-dropzone-active");},function(){dropZone.removeClass("k-dropzone-active");});},_supportsRemove:function(){return!!this.options.async.removeUrl;},_submitRemove:function(fileNames,data,onSuccess,onError){var upload=this,removeField=upload.options.async.removeField||"fileNames",params=$.extend(data,getAntiForgeryTokens());params[removeField]=fileNames;jQuery.ajax({type:this.options.async.removeVerb,dataType:"json",url:this.options.async.removeUrl,traditional:true,data:params,success:onSuccess,error:onError});},_wrapInput:function(input){input.wrap("<div class='k-widget k-upload'><div class='k-button k-upload-button'></div></div>");input.closest(".k-button").append("<span>"+this.localization.select+"</span>");return input.closest(".k-upload");},_checkAllComplete:function(){if($(".k-file .k-icon.k-loading",this.wrapper).length===0){this.trigger(COMPLETE);}}});var syncUploadModule=function(upload){this.name="syncUploadModule";this.element=upload.wrapper;this.upload=upload;this.element.bind("t:select",$.proxy(this.onSelect,this)).bind("t:remove",$.proxy(this.onRemove,this)).closest("form").attr("enctype","multipart/form-data").attr("encoding","multipart/form-data");};syncUploadModule.prototype={onSelect:function(e){var upload=this.upload;var sourceInput=$(e.target);upload._addInput(sourceInput.clone().val(""));var file=upload._enqueueFile(getFileName(sourceInput),{"relatedInput":sourceInput,"fileNames":inputFiles(sourceInput)});upload._fileAction(file,REMOVE);},onRemove:function(e){var fileEntry=getFileEntry(e);fileEntry.data("relatedInput").remove();this.upload._removeFileEntry(fileEntry);}};var iframeUploadModule=function(upload){this.name="iframeUploadModule";this.element=upload.wrapper;this.upload=upload;this.iframes=[];this.element.bind("t:select",$.proxy(this.onSelect,this)).bind("t:cancel",$.proxy(this.onCancel,this)).bind("t:retry",$.proxy(this.onRetry,this)).bind("t:remove",$.proxy(this.onRemove,this)).bind("t:saveSelected",$.proxy(this.onSaveSelected,this)).bind("t:abort",$.proxy(this.onAbort,this));};Upload._frameId=0;iframeUploadModule.prototype={onSelect:function(e){var upload=this.upload,sourceInput=$(e.target);var fileEntry=this.prepareUpload(sourceInput);if(upload.options.async.autoUpload){this.performUpload(fileEntry);}else{if(upload._supportsRemove()){this.upload._fileAction(fileEntry,REMOVE);}upload._showUploadButton();}},prepareUpload:function(sourceInput){var upload=this.upload;var activeInput=$(upload.element);var name=upload.options.async.saveField||sourceInput.attr("name");upload._addInput(sourceInput.clone().val(""));sourceInput.attr("name",name);var iframe=this.createFrame(upload.name+"_"+Upload._frameId++);this.registerFrame(iframe);var form=this.createForm(upload.options.async.saveUrl,iframe.attr("name")).append(activeInput);var fileEntry=upload._enqueueFile(getFileName(sourceInput),{"frame":iframe,"relatedInput":activeInput,"fileNames":inputFiles(sourceInput)});iframe.data({"form":form,"file":fileEntry});return fileEntry;},performUpload:function(fileEntry){var e={files:fileEntry.data("fileNames")},iframe=fileEntry.data("frame"),upload=this.upload;if(!upload.trigger(UPLOAD,e)){upload._hideUploadButton();iframe.appendTo(document.body);var form=iframe.data("form").appendTo(document.body);e.data=$.extend({},e.data,getAntiForgeryTokens());for(var key in e.data){var dataInput=form.find("input[name='"+key+"']");if(dataInput.length===0){dataInput=$("<input>",{type:"hidden",name:key}).appendTo(form);}dataInput.val(e.data[key]);}upload._fileAction(fileEntry,CANCEL);upload._fileState(fileEntry,"uploading");iframe.one("load",$.proxy(this.onIframeLoad,this));form[0].submit();}else{upload._removeFileEntry(iframe.data("file"));this.cleanupFrame(iframe);this.unregisterFrame(iframe);}},onSaveSelected:function(e){var module=this;$(".k-file",this.element).each(function(){var fileEntry=$(this),started=isFileUploadStarted(fileEntry);if(!started){module.performUpload(fileEntry);}});},onIframeLoad:function(e){var iframe=$(e.target),responseText;try{responseText=iframe.contents().text();}catch(e){responseText="Error trying to get server response: "+e;}this.processResponse(iframe,responseText);},processResponse:function(iframe,responseText){var fileEntry=iframe.data("file"),module=this,fakeXHR={responseText:responseText};tryParseJSON(responseText,function(jsonResult){$.extend(fakeXHR,{statusText:"OK",status:"200"});fileEntry.trigger("t:progress",[100]);fileEntry.trigger("t:upload-success",[jsonResult,fakeXHR]);module.cleanupFrame(iframe);module.unregisterFrame(iframe);},function(){$.extend(fakeXHR,{statusText:"error",status:"500"});fileEntry.trigger("t:upload-error",[fakeXHR]);});},onCancel:function(e){var iframe=$(e.target).data("frame");this.stopFrameSubmit(iframe);this.cleanupFrame(iframe);this.unregisterFrame(iframe);this.upload._removeFileEntry(iframe.data("file"));},onRetry:function(e){var fileEntry=getFileEntry(e);this.performUpload(fileEntry);},onRemove:function(e,data){var fileEntry=getFileEntry(e);var iframe=fileEntry.data("frame");if(iframe){this.unregisterFrame(iframe);this.upload._removeFileEntry(fileEntry);this.cleanupFrame(iframe);}else{removeUploadedFile(fileEntry,this.upload,data);}},onAbort:function(){var element=this.element,module=this;$.each(this.iframes,function(){$("input",this.data("form")).appendTo(element);module.stopFrameSubmit(this[0]);this.data("form").remove();this.remove();});this.iframes=[];},createFrame:function(id){return $("<iframe"+" name='"+id+"'"+" id='"+id+"'"+" style='display:none;' />");},createForm:function(action,target){return $("<form enctype='multipart/form-data' method='POST'"+" action='"+action+"'"+" target='"+target+"'"+"/>");},stopFrameSubmit:function(frame){if(typeof(frame.stop)!="undefined"){frame.stop();}else if(frame.document){frame.document.execCommand("Stop");frame.contentWindow.location.href=frame.contentWindow.location.href;}},registerFrame:function(frame){this.iframes.push(frame);},unregisterFrame:function(frame){this.iframes=$.grep(this.iframes,function(value){return value.attr("name")!=frame.attr("name");});},cleanupFrame:function(frame){var form=frame.data("form");frame.data("file").data("frame",null);setTimeout(function(){form.remove();frame.remove();},1);}};var formDataUploadModule=function(upload){this.name="formDataUploadModule";this.element=upload.wrapper;this.upload=upload;this.element.bind("t:select",$.proxy(this.onSelect,this)).bind("t:cancel",$.proxy(this.onCancel,this)).bind("t:remove",$.proxy(this.onRemove,this)).bind("t:retry",$.proxy(this.onRetry,this)).bind("t:saveSelected",$.proxy(this.onSaveSelected,this)).bind("t:abort",$.proxy(this.onAbort,this));};formDataUploadModule.prototype={onSelect:function(e,rawFiles){var upload=this.upload,module=this,sourceElement=$(e.target),files=rawFiles?getAllFileInfo(rawFiles):this.inputFiles(sourceElement),fileEntries=this.prepareUpload(sourceElement,files);$.each(fileEntries,function(){if(upload.options.async.autoUpload){module.performUpload(this);}else{if(upload._supportsRemove()){upload._fileAction(this,REMOVE);}upload._showUploadButton();}});},prepareUpload:function(sourceElement,files){var fileEntries=this.enqueueFiles(files);if(sourceElement.is("input")){$.each(fileEntries,function(){$(this).data("relatedInput",sourceElement);});sourceElement.data("relatedFileEntries",fileEntries);this.upload._addInput(sourceElement.clone().val(""));}return fileEntries;},enqueueFiles:function(files){var upload=this.upload,name,i,filesLength=files.length,currentFile,fileEntry,fileEntries=[];if(upload.options.async.batch===true){name=$.map(files,function(file){return file.name;}).join(", ");fileEntry=upload._enqueueFile(name,{fileNames:files});fileEntry.data("files",files);fileEntries.push(fileEntry);}else{for(i=0;i<filesLength;i++){currentFile=files[i];name=currentFile.name;fileEntry=upload._enqueueFile(name,{fileNames:[currentFile]});fileEntry.data("files",[currentFile]);fileEntries.push(fileEntry);}}return fileEntries;},inputFiles:function(sourceInput){return inputFiles(sourceInput);},performUpload:function(fileEntry){var upload=this.upload,formData=this.createFormData(fileEntry.data("files")),e={files:fileEntry.data("fileNames")};if(!upload.trigger(UPLOAD,e)){upload._fileAction(fileEntry,CANCEL);upload._hideUploadButton();e.data=$.extend({},e.data,getAntiForgeryTokens());for(var key in e.data){formData.append(key,e.data[key]);}upload._fileState(fileEntry,"uploading");this.postFormData(this.upload.options.async.saveUrl,formData,fileEntry);}else{this.removeFileEntry(fileEntry);}},onSaveSelected:function(e){var module=this;$(".k-file",this.element).each(function(){var fileEntry=$(this),started=isFileUploadStarted(fileEntry);if(!started){module.performUpload(fileEntry);}});},onCancel:function(e){var fileEntry=getFileEntry(e);this.stopUploadRequest(fileEntry);this.removeFileEntry(fileEntry);},onRetry:function(e){var fileEntry=getFileEntry(e);this.performUpload(fileEntry);},onRemove:function(e,data){var fileEntry=getFileEntry(e);if(fileEntry.children(".k-icon").is(".k-success")){removeUploadedFile(fileEntry,this.upload,data);}else{this.removeFileEntry(fileEntry);}},postFormData:function(url,data,fileEntry){var xhr=new XMLHttpRequest(),module=this;fileEntry.data("request",xhr);xhr.addEventListener("load",function(e){module.onRequestSuccess.call(module,e,fileEntry);},false);xhr.addEventListener(ERROR,function(e){module.onRequestError.call(module,e,fileEntry);},false);xhr.upload.addEventListener("progress",function(e){module.onRequestProgress.call(module,e,fileEntry);},false);xhr.open("POST",url);xhr.withCredentials="true";xhr.send(data);},createFormData:function(files){var formData=new FormData(),upload=this.upload,i,length=files.length;for(i=0;i<length;i++){formData.append(upload.options.async.saveField||upload.name,files[i].rawFile);}return formData;},onRequestSuccess:function(e,fileEntry){var xhr=e.target,module=this;function raiseError(){fileEntry.trigger("t:upload-error",[xhr]);}if(xhr.status>=200&&xhr.status<=299){tryParseJSON(xhr.responseText,function(jsonResult){fileEntry.trigger("t:progress",[100]);fileEntry.trigger("t:upload-success",[jsonResult,xhr]);module.cleanupFileEntry(fileEntry);},raiseError);}else{raiseError();}},onRequestError:function(e,fileEntry){var xhr=e.target;fileEntry.trigger("t:upload-error",[xhr]);},cleanupFileEntry:function(fileEntry){var relatedInput=fileEntry.data("relatedInput"),uploadComplete=true;if(relatedInput){$.each(relatedInput.data("relatedFileEntries")||[],function(){if(this.parent().length>0&&this[0]!=fileEntry[0]){uploadComplete=uploadComplete&&this.children(".k-icon").is(".k-success");}});if(uploadComplete){relatedInput.remove();}}},removeFileEntry:function(fileEntry){this.cleanupFileEntry(fileEntry);this.upload._removeFileEntry(fileEntry);},onRequestProgress:function(e,fileEntry){var percentComplete=Math.round(e.loaded*100/e.total);fileEntry.trigger("t:progress",[percentComplete]);},stopUploadRequest:function(fileEntry){fileEntry.data("request").abort();}};function getFileName(input){return $.map(inputFiles(input),function(file){return file.name;}).join(", ");}function inputFiles($input){var input=$input[0];if(input.files){return getAllFileInfo(input.files);}else{return[{name:stripPath(input.value),extension:getFileExtension(input.value),size:null}];}}function getAllFileInfo(rawFiles){return $.map(rawFiles,function(file){return getFileInfo(file);});}function getFileInfo(rawFile){var fileName=rawFile.name||rawFile.fileName;return{name:fileName,extension:getFileExtension(fileName),size:rawFile.size||rawFile.fileSize,rawFile:rawFile};}function getFileExtension(fileName){var matches=fileName.match(rFileExtension);return matches?matches[0]:"";}function stripPath(name){var slashIndex=name.lastIndexOf("\\");return(slashIndex!=-1)?name.substr(slashIndex+1):name;}function removeUploadedFile(fileEntry,upload,data){if(!upload._supportsRemove()){return;}var files=fileEntry.data("fileNames");var fileNames=$.map(files,function(file){return file.name;});upload._submitRemove(fileNames,data,function onSuccess(data,textStatus,xhr){upload._removeFileEntry(fileEntry);upload.trigger(SUCCESS,{operation:"remove",files:files,response:data,XMLHttpRequest:xhr});},function onError(xhr,textStatus){upload.trigger(ERROR,{operation:"remove",files:files,XMLHttpRequest:xhr});logToConsole("Server response: "+xhr.responseText);});}function tryParseJSON(input,onSuccess,onError){var success=false,json="";try{json=$.parseJSON(input);success=true;}catch(e){onError();}if(success){onSuccess(json);}}function stopEvent(e){e.stopPropagation();e.preventDefault();}function bindDragEventWrappers(element,namespace,onDragEnter,onDragLeave){var hideInterval,lastDrag;element.on("dragenter"+namespace,function(e){onDragEnter();lastDrag=new Date();if(!hideInterval){hideInterval=setInterval(function(){var sinceLastDrag=new Date()-lastDrag;if(sinceLastDrag>100){onDragLeave();clearInterval(hideInterval);hideInterval=null;}},100);}}).on("dragover"+namespace,function(e){lastDrag=new Date();});}function isFileUploadStarted(fileEntry){return fileEntry.children(".k-icon").is(".k-loading, .k-success, .k-fail");}function getFileEntry(e){return $(e.target).closest(".k-file");}function getAntiForgeryTokens(){var tokens={},csrf_token=$("meta[name=csrf-token]").attr("content"),csrf_param=$("meta[name=csrf-param]").attr("content");$("input[name^='__RequestVerificationToken']").each(function(){tokens[this.name]=this.value;});if(csrf_param!==undefined&&csrf_token!==undefined){tokens[csrf_param]=csrf_token;}return tokens;}kendo.ui.plugin(Upload);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,Widget=kendo.ui.Widget,Draggable=kendo.ui.Draggable,isPlainObject=$.isPlainObject,proxy=$.proxy,extend=$.extend,each=$.each,template=kendo.template,BODY="body",templates,NS=".kendoWindow",KWINDOW=".k-window",KWINDOWTITLE=".k-window-title",KWINDOWTITLEBAR=KWINDOWTITLE+"bar",KWINDOWCONTENT=".k-window-content",KWINDOWRESIZEHANDLES=".k-resize-handle",KOVERLAY=".k-overlay",KCONTENTFRAME="k-content-frame",LOADING="k-loading",KHOVERSTATE="k-state-hover",KFOCUSEDSTATE="k-state-focused",VISIBLE=":visible",HIDDEN="hidden",CURSOR="cursor",OPEN="open",ACTIVATE="activate",DEACTIVATE="deactivate",CLOSE="close",REFRESH="refresh",RESIZE="resize",DRAGSTART="dragstart",DRAGEND="dragend",ERROR="error",OVERFLOW="overflow",ZINDEX="zIndex",MINIMIZE_MAXIMIZE=".k-window-actions .k-i-minimize,.k-window-actions .k-i-maximize",TITLEBAR_BUTTONS=".k-window-titlebar .k-window-action",isLocalUrl=kendo.isLocalUrl;function defined(x){return(typeof x!="undefined");}function constrain(value,low,high){return Math.max(Math.min(value,high),low);}function windowObject(element,name){var contentElement=element.children(KWINDOWCONTENT);return contentElement.data("kendoWindow")||contentElement.data("kendo"+name);}function openedModalWindows(name){return $(KWINDOW).filter(function(){var wnd=$(this);return wnd.is(VISIBLE)&&windowObject(wnd,name).options.modal;}).sort(function(a,b){return+$(a).css("zIndex")-+$(b).css("zIndex");});}function sizingAction(actionId,callback){return function(){var that=this,wrapper=that.wrapper,style=wrapper[0].style,options=that.options;if(options.isMaximized||options.isMinimized){return;}that.restoreOptions={width:style.width,height:style.height};wrapper.find(KWINDOWRESIZEHANDLES).hide().end().find(MINIMIZE_MAXIMIZE).parent().hide().eq(0).before(templates.action({name:"Restore"}));callback.call(that);return that;};}var Window=Widget.extend({init:function(element,options){var that=this,wrapper,offset,visibility,display,isVisible=false,content,windowContent,id;Widget.fn.init.call(that,element,options);options=that.options;element=that.element;content=options.content;that.appendTo=$(options.appendTo||document.body);that._animations();if(content&&!isPlainObject(content)){content=options.content={url:content};}if(!element.parent().is(that.appendTo)){if(element.is(VISIBLE)){offset=element.offset();isVisible=true;}else{visibility=element.css("visibility");display=element.css("display");element.css({visibility:HIDDEN,display:""});offset=element.offset();element.css({visibility:visibility,display:display});}}if(!defined(options.visible)){options.visible=element.is(VISIBLE);}wrapper=that.wrapper=element.closest(KWINDOW);if(!element.is(".k-content")||!wrapper[0]){element.addClass("k-window-content k-content");that._createWindow(element,options);wrapper=that.wrapper=element.closest(KWINDOW);that._dimensions();}if(offset){wrapper.css({top:offset.top,left:offset.left});}if(content){that.refresh(content);}that.toFront();windowContent=wrapper.children(KWINDOWCONTENT);that._tabindex(windowContent);if(options.visible&&options.modal){that._overlay(wrapper.is(VISIBLE)).css({opacity:0.5});}wrapper.on("mouseenter"+NS,TITLEBAR_BUTTONS,function(){$(this).addClass(KHOVERSTATE);}).on("mouseleave"+NS,TITLEBAR_BUTTONS,function(){$(this).removeClass(KHOVERSTATE);}).on("touchend"+NS+" click"+NS,TITLEBAR_BUTTONS,proxy(that._windowActionHandler,that));windowContent.on("keydown"+NS,proxy(that._keydown,that)).on("focus"+NS,function(){wrapper.addClass(KFOCUSEDSTATE);}).on("blur"+NS,function(){wrapper.removeClass(KFOCUSEDSTATE);});if(options.resizable){wrapper.on("dblclick"+NS,KWINDOWTITLEBAR,proxy(that.toggleMaximization,that));each("n e s w se sw ne nw".split(" "),function(index,handler){wrapper.append(templates.resizeHandle(handler));});that.resizing=new WindowResizing(that);}if(options.draggable){that.dragging=new WindowDragging(that);}id=element.attr("id");if(id){id=id+"_wnd_title";wrapper.find(KWINDOWTITLEBAR).children(KWINDOWTITLE).attr("id",id);windowContent.attr({"role":"dialog","aria-labelledby":id});}wrapper.add(wrapper.find(".k-resize-handle,.k-window-titlebar")).on("mousedown"+NS,proxy(that.toFront,that));that.touchScroller=kendo.touchScroller(element);that._resizeHandler=function(e){return that._onDocumentResize(e);};$(window).on("resize",that._resizeHandler);if(options.visible){that.trigger(OPEN);that.trigger(ACTIVATE);}kendo.notify(that);},_dimensions:function(){var that=this,wrapper=that.wrapper,element=that.element,options=that.options;that.title(options.title);if(options.width){wrapper.width(options.width);}if(options.height){wrapper.height(options.height);}each(["minWidth","minHeight","maxWidth","maxHeight"],function(_,prop){var value=options[prop];if(value&&value!=Infinity){element.css(prop,value);}});if(!options.visible){wrapper.hide();}},_animations:function(){var options=this.options;if(options.animation===false){options.animation={open:{effects:{}},close:{hide:true,effects:{}}};}},setOptions:function(options){Widget.fn.setOptions.call(this,options);this._animations();this._dimensions();},events:[OPEN,ACTIVATE,DEACTIVATE,CLOSE,REFRESH,RESIZE,DRAGSTART,DRAGEND,ERROR],options:{name:"Window",animation:{open:{effects:{zoom:{direction:"in"},fade:{direction:"in"}},duration:350},close:{effects:{zoom:{direction:"out",properties:{scale:0.7}},fade:{direction:"out"}},duration:350,hide:true}},title:"",actions:["Close"],modal:false,resizable:true,draggable:true,minWidth:90,minHeight:50,maxWidth:Infinity,maxHeight:Infinity},_keydown:function(e){var that=this,options=that.options,keys=kendo.keys,keyCode=e.keyCode,wrapper=that.wrapper,offset,handled,distance=10,newWidth,newHeight;if(e.target!=e.currentTarget){return;}if(keyCode==keys.ESC){that._close(true);}if(options.draggable&&!e.ctrlKey){offset=wrapper.offset();if(keyCode==keys.UP){handled=wrapper.css("top",offset.top-distance);}else if(keyCode==keys.DOWN){handled=wrapper.css("top",offset.top+distance);}else if(keyCode==keys.LEFT){handled=wrapper.css("left",offset.left-distance);}else if(keyCode==keys.RIGHT){handled=wrapper.css("left",offset.left+distance);}}if(options.resizable&&e.ctrlKey){if(keyCode==keys.UP){handled=true;newHeight=wrapper.height()-distance;}else if(keyCode==keys.DOWN){handled=true;newHeight=wrapper.height()+distance;}if(keyCode==keys.LEFT){handled=true;newWidth=wrapper.width()-distance;}else if(keyCode==keys.RIGHT){handled=true;newWidth=wrapper.width()+distance;}if(handled){wrapper.css({width:constrain(newWidth,options.minWidth,options.maxWidth),height:constrain(newHeight,options.minHeight,options.maxHeight)});}}if(handled){e.preventDefault();}},_overlay:function(visible){var overlay=this.appendTo.children(".k-overlay"),wrapper=this.wrapper;if(!overlay.length){overlay=$("<div class='k-overlay' />");}overlay.insertBefore(wrapper[0]).toggle(visible).css(ZINDEX,parseInt(wrapper.css(ZINDEX),10)-1);return overlay;},_windowActionHandler:function(e){var target=$(e.target).closest(".k-window-action").find(".k-icon"),that=this;each({"k-i-close":function(){that._close(true);},"k-i-maximize":that.maximize,"k-i-minimize":that.minimize,"k-i-restore":that.restore,"k-i-refresh":that.refresh},function(commandName,handler){if(target.hasClass(commandName)){e.preventDefault();handler.call(that);return false;}});},center:function(){var wrapper=this.wrapper,documentWindow=$(window);wrapper.css({left:documentWindow.scrollLeft()+Math.max(0,(documentWindow.width()-wrapper.width())/2),top:documentWindow.scrollTop()+Math.max(0,(documentWindow.height()-wrapper.height())/2)});return this;},title:function(text){var that=this,wrapper=that.wrapper,options=that.options,titleBar=wrapper.find(KWINDOWTITLEBAR),title=titleBar.children(KWINDOWTITLE),titleBarHeight=titleBar.outerHeight();if(!arguments.length){return title.text();}if(text===false){wrapper.addClass("k-window-titleless");titleBar.remove();}else{if(!titleBar.length){wrapper.prepend(templates.titlebar(extend(templates,options)));}wrapper.css("padding-top",titleBarHeight);titleBar.css("margin-top",-titleBarHeight);}title.text(text);return that;},content:function(html){var content=this.wrapper.children(KWINDOWCONTENT);if(!html){return content.html();}content.html(html);return this;},open:function(){var that=this,wrapper=that.wrapper,options=that.options,showOptions=options.animation.open,contentElement=wrapper.children(KWINDOWCONTENT),initialOverflow=contentElement.css(OVERFLOW),overlay;if(!that.trigger(OPEN)){that.toFront();options.visible=true;if(options.modal){overlay=that._overlay(false);if(showOptions.duration){overlay.kendoStop().kendoAnimate({effects:"fade:in",duration:showOptions.duration});}else{overlay.css("opacity",0.5).show();}}if(!wrapper.is(VISIBLE)){contentElement.css(OVERFLOW,HIDDEN);wrapper.show().kendoStop().kendoAnimate({effects:showOptions.effects,duration:showOptions.duration,complete:function(){that.element.focus();that.trigger(ACTIVATE);contentElement.css(OVERFLOW,initialOverflow);}});}}if(options.isMaximized){that._documentScrollTop=$(document).scrollTop();$("html, body").css(OVERFLOW,HIDDEN);}return that;},_close:function(userTriggered){var that=this,wrapper=that.wrapper,options=that.options,showOptions=options.animation.open,hideOptions=options.animation.close,modalWindows,shouldHideOverlay,overlay;if(wrapper.is(VISIBLE)&&!that.trigger(CLOSE,{userTriggered:!!userTriggered})){options.visible=false;modalWindows=openedModalWindows(options.name);shouldHideOverlay=options.modal&&modalWindows.length==1&&modalWindows[0]==that.wrapper[0];overlay=options.modal?that._overlay(true):$(undefined);if(shouldHideOverlay){if(hideOptions.duration){overlay.kendoStop().kendoAnimate({effects:"fade:out",duration:hideOptions.duration,hide:true});}else{overlay.hide();}}else if(modalWindows.length){windowObject(modalWindows.eq(modalWindows.length-2),options.name)._overlay(true);}wrapper.kendoStop().kendoAnimate({effects:hideOptions.effects||showOptions.effects,reverse:hideOptions.reverse===true,duration:hideOptions.duration,complete:function(){wrapper.hide();that.trigger(DEACTIVATE);}});}if(that.options.isMaximized){$("html, body").css(OVERFLOW,"");if(that._documentScrollTop&&that._documentScrollTop>0){$(document).scrollTop(that._documentScrollTop);}}},close:function(){this._close(false);return this;},toFront:function(){var that=this,wrapper=that.wrapper,currentWindow=wrapper[0],zIndex=+wrapper.css(ZINDEX),originalZIndex=zIndex;$(KWINDOW).each(function(i,element){var windowObject=$(element),zIndexNew=windowObject.css(ZINDEX),contentElement=windowObject.find(KWINDOWCONTENT);if(!isNaN(zIndexNew)){zIndex=Math.max(+zIndexNew,zIndex);}if(element!=currentWindow&&contentElement.find("> ."+KCONTENTFRAME).length>0){contentElement.append(templates.overlay);}});if(zIndex==10001||originalZIndex<zIndex){wrapper.css(ZINDEX,zIndex+2);that.element.find("> .k-overlay").remove();}that.element.focus();return that;},toggleMaximization:function(){return this[this.options.isMaximized?"restore":"maximize"]();},restore:function(){var that=this,options=that.options,restoreOptions=that.restoreOptions;if(!options.isMaximized&&!options.isMinimized){return;}that.wrapper.css({position:"absolute",left:restoreOptions.left,top:restoreOptions.top,width:restoreOptions.width,height:restoreOptions.height}).find(".k-window-content,.k-resize-handle").show().end().find(".k-window-titlebar .k-i-restore").parent().remove().end().end().find(MINIMIZE_MAXIMIZE).parent().show();$("html, body").css(OVERFLOW,"");if(this._documentScrollTop&&this._documentScrollTop>0){$(document).scrollTop(this._documentScrollTop);}options.isMaximized=options.isMinimized=false;that.trigger(RESIZE);return that;},maximize:sizingAction("maximize",function(){var that=this,wrapper=that.wrapper,position=wrapper.position();extend(that.restoreOptions,{left:position.left,top:position.top});wrapper.css({left:0,top:0,position:"fixed"});this._documentScrollTop=$(document).scrollTop();$("html, body").css(OVERFLOW,HIDDEN);that.options.isMaximized=true;that._onDocumentResize();}),minimize:sizingAction("minimize",function(){var that=this;that.wrapper.css("height","");that.element.hide();that.options.isMinimized=true;}),_onDocumentResize:function(){var that=this,wrapper=that.wrapper,wnd=$(window);if(!that.options.isMaximized){return;}wrapper.css({width:wnd.width(),height:wnd.height()-parseInt(wrapper.css("padding-top"),10)});that.trigger(RESIZE);},refresh:function(options){var that=this,initOptions=that.options,element=$(that.element),iframe,showIframe,url;if(!isPlainObject(options)){options={url:options};}options=extend({},initOptions.content,options);showIframe=defined(initOptions.iframe)?initOptions.iframe:options.iframe;url=options.url;if(url){if(!defined(showIframe)){showIframe=!isLocalUrl(url);}if(!showIframe){that._ajaxRequest(options);}else{iframe=element.find("."+KCONTENTFRAME)[0];if(iframe){iframe.src=url||iframe.src;}else{element.html(templates.contentFrame(extend({},initOptions,{content:options})));}element.find("."+KCONTENTFRAME).unbind("load"+NS).on("load"+NS,function(){that.trigger(REFRESH);});}}else{if(options.template){that.content(template(options.template)({}));}that.trigger(REFRESH);}return that;},_ajaxRequest:function(options){var that=this,contentTemplate=options.template,refreshIcon=that.wrapper.find(".k-window-titlebar .k-i-refresh"),loadingIconTimeout=setTimeout(function(){refreshIcon.addClass(LOADING);},100);jQuery.ajax(extend({type:"GET",dataType:"html",cache:false,error:proxy(function(xhr,status){that.trigger(ERROR,{status:status,xhr:xhr});},that),complete:function(){clearTimeout(loadingIconTimeout);refreshIcon.removeClass(LOADING);},success:proxy(function(data,textStatus){if(contentTemplate){data=template(contentTemplate)(data||{});}that.element.html(data);that.trigger(REFRESH);},that)},options));},destroy:function(){var that=this,modalWindows,shouldHideOverlay;Widget.fn.destroy.call(that);kendo.destroy(that.wrapper);if(that.resizing){that.resizing.destroy();}if(that.dragging){that.dragging.destroy();}that.wrapper.remove().add(that.wrapper.find(".k-resize-handle,.k-window-titlebar")).off(NS);$(window).off("resize",that._resizeHandler);modalWindows=openedModalWindows();shouldHideOverlay=that.options.modal&&!modalWindows.length;if(shouldHideOverlay){that._overlay(false).remove();}else if(modalWindows.length>0){windowObject(modalWindows.eq(modalWindows.length-2),that.options.name)._overlay(true);}},_createWindow:function(){var that=this,contentHtml=that.element,options=that.options,iframeSrcAttributes,wrapper,isRtl=kendo.support.isRtl(contentHtml);if(options.scrollable===false){contentHtml.attr("style","overflow:hidden;");}if(options.iframe&&options.content){contentHtml.html(templates.contentFrame(options));}wrapper=$(templates.wrapper(options));if(options.title!==false){wrapper.append(templates.titlebar(extend(templates,options)));}iframeSrcAttributes=contentHtml.find("iframe:not(.k-content)").map(function(iframe){var src=this.getAttribute("src");this.src="";return src;});wrapper.toggleClass("k-rtl",isRtl).appendTo(that.appendTo).append(contentHtml).find("iframe:not(.k-content)").each(function(index){this.src=iframeSrcAttributes[index];});wrapper.find(".k-window-title").css(isRtl?"left":"right",wrapper.find(".k-window-actions").outerWidth()+10);contentHtml.show();}});templates={wrapper:template("<div class='k-widget k-window' />"),action:template("<a role='button' href='\\#' class='k-window-action k-link'>"+"<span role='presentation' class='k-icon k-i-#= name.toLowerCase() #'>#= name #</span>"+"</a>"),titlebar:template("<div class='k-window-titlebar k-header'>&nbsp;"+"<span class='k-window-title'>#= title #</span>"+"<div class='k-window-actions'>"+"# for (var i = 0; i < actions.length; i++) { #"+"#= action({ name: actions[i] }) #"+"# } #"+"</div>"+"</div>"),overlay:"<div class='k-overlay' />",contentFrame:template("<iframe frameborder='0' title='#= title #' class='"+KCONTENTFRAME+"' "+"src='#= content.url #'>"+"This page requires frames in order to show content"+"</iframe>"),resizeHandle:template("<div class='k-resize-handle k-resize-#= data #'></div>")};function WindowResizing(wnd){var that=this;that.owner=wnd;that._draggable=new Draggable(wnd.wrapper,{filter:KWINDOWRESIZEHANDLES,group:wnd.wrapper.id+"-resizing",dragstart:proxy(that.dragstart,that),drag:proxy(that.drag,that),dragend:proxy(that.dragend,that)});}WindowResizing.prototype={dragstart:function(e){var that=this,wnd=that.owner,wrapper=wnd.wrapper;that.elementPadding=parseInt(wnd.wrapper.css("padding-top"),10);that.initialCursorPosition=wrapper.offset();that.resizeDirection=e.currentTarget.prop("className").replace("k-resize-handle k-resize-","");that.initialSize={width:wrapper.width(),height:wrapper.height()};that.containerOffset=wnd.appendTo.offset(),wrapper.append(templates.overlay).find(KWINDOWRESIZEHANDLES).not(e.currentTarget).hide();$(BODY).css(CURSOR,e.currentTarget.css(CURSOR));},drag:function(e){var that=this,wnd=that.owner,wrapper=wnd.wrapper,options=wnd.options,direction=that.resizeDirection,containerOffset=that.containerOffset,initialPosition=that.initialCursorPosition,initialSize=that.initialSize,newWidth,newHeight,windowBottom,windowRight,x=e.x.location,y=e.y.location;if(direction.indexOf("e")>=0){newWidth=x-initialPosition.left;wrapper.width(constrain(newWidth,options.minWidth,options.maxWidth));}else if(direction.indexOf("w")>=0){windowRight=initialPosition.left+initialSize.width;newWidth=constrain(windowRight-x,options.minWidth,options.maxWidth);wrapper.css({left:windowRight-newWidth-containerOffset.left,width:newWidth});}if(direction.indexOf("s")>=0){newHeight=y-initialPosition.top-that.elementPadding;wrapper.height(constrain(newHeight,options.minHeight,options.maxHeight));}else if(direction.indexOf("n")>=0){windowBottom=initialPosition.top+initialSize.height;newHeight=constrain(windowBottom-y,options.minHeight,options.maxHeight);wrapper.css({top:windowBottom-newHeight-containerOffset.top,height:newHeight});}wnd.trigger(RESIZE);},dragend:function(e){var that=this,wnd=that.owner,wrapper=wnd.wrapper;wrapper.find(KOVERLAY).remove().end().find(KWINDOWRESIZEHANDLES).not(e.currentTarget).show();$(BODY).css(CURSOR,"");if(wnd.touchScroller){wnd.touchScroller.reset();}if(e.keyCode==27){wrapper.css(that.initialCursorPosition).css(that.initialSize);}return false;},destroy:function(){this._draggable.destroy();}};function WindowDragging(wnd){var that=this;that.owner=wnd;that._draggable=new Draggable(wnd.wrapper,{filter:KWINDOWTITLEBAR,group:wnd.wrapper.id+"-moving",dragstart:proxy(that.dragstart,that),drag:proxy(that.drag,that),dragend:proxy(that.dragend,that),dragcancel:proxy(that.dragcancel,that)});}WindowDragging.prototype={dragstart:function(e){var wnd=this.owner,element=wnd.element,actions=element.find(".k-window-actions"),containerOffset=wnd.appendTo.offset();wnd.trigger(DRAGSTART);wnd.initialWindowPosition=wnd.wrapper.position();wnd.startPosition={left:e.x.client-wnd.initialWindowPosition.left,top:e.y.client-wnd.initialWindowPosition.top};if(actions.length>0){wnd.minLeftPosition=actions.outerWidth()+parseInt(actions.css("right"),10)-element.outerWidth();}else{wnd.minLeftPosition=20-element.outerWidth();}wnd.minLeftPosition-=containerOffset.left;wnd.minTopPosition=-containerOffset.top;wnd.wrapper.append(templates.overlay).find(KWINDOWRESIZEHANDLES).hide();$(BODY).css(CURSOR,e.currentTarget.css(CURSOR));},drag:function(e){var wnd=this.owner,coordinates={left:Math.max(e.x.client-wnd.startPosition.left,wnd.minLeftPosition),top:Math.max(e.y.client-wnd.startPosition.top,wnd.minTopPosition)};$(wnd.wrapper).css(coordinates);},_finishDrag:function(){var wnd=this.owner;wnd.wrapper.find(KWINDOWRESIZEHANDLES).toggle(!wnd.options.isMinimized).end().find(KOVERLAY).remove();$(BODY).css(CURSOR,"");},dragcancel:function(e){this._finishDrag();e.currentTarget.closest(KWINDOW).css(this.owner.initialWindowPosition);},dragend:function(e){this._finishDrag();this.owner.trigger(DRAGEND);return false;},destroy:function(){this._draggable.destroy();}};kendo.ui.plugin(Window);})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,escapeQuoteRegExp=/'/ig,extend=$.extend;function parameterMap(options,operation){var result={};if(options.sort){result[this.options.prefix+"sort"]=$.map(options.sort,function(sort){return sort.field+"-"+sort.dir;}).join("~");delete options.sort;}else{result[this.options.prefix+"sort"]="";}if(options.page){result[this.options.prefix+"page"]=options.page;delete options.page;}if(options.pageSize){result[this.options.prefix+"pageSize"]=options.pageSize;delete options.pageSize;}if(options.group){result[this.options.prefix+"group"]=$.map(options.group,function(group){return group.field+"-"+group.dir;}).join("~");delete options.group;}else{result[this.options.prefix+"group"]="";}if(options.aggregate){result[this.options.prefix+"aggregate"]=$.map(options.aggregate,function(aggregate){return aggregate.field+"-"+aggregate.aggregate;}).join("~");delete options.aggregate;}if(options.filter){result[this.options.prefix+"filter"]=serializeFilter(options.filter);delete options.filter;}else{result[this.options.prefix+"filter"]="";delete options.filter;}if(operation!="read"){if(options.models){var prefix="models",models=options.models;for(var i=0;i<models.length;i++){serializeItem(result,models[i],prefix+"["+i+"].");}}else if(options){serializeItem(result,options,"");}delete options.models;}delete options.take;delete options.skip;return extend(result,options);}function serializeItem(result,item,prefix){var value,key;item=convert(item);for(var member in item){key=prefix+member;value=item[member];if($.isPlainObject(value)){flatten(result,value,key);}else{result[key]=value;}}}function convert(values){for(var key in values){var value=values[key];if(value instanceof Date){values[key]=kendo.format("{0:G}",value);}if(typeof value==="number"){value=value.toString();}if(value==null){delete values[key];}if($.isPlainObject(value)){convert(value);}}return values;}function flatten(result,value,prefix){for(var key in value){if($.isPlainObject(value[key])){flatten(result,value[key],prefix?prefix+"."+key:key);}else{result[prefix?prefix+"."+key:key]=value[key];}}}function serializeFilter(filter){if(filter.filters){return $.map(filter.filters,function(f){var hasChildren=f.filters&&f.filters.length>1,result=hasChildren?"(":"";result+=serializeFilter(f);return result+(hasChildren?")":"");}).join("~"+filter.logic+"~");}return filter.field+"~"+filter.operator+"~"+encodeFilterValue(filter.value);}function encodeFilterValue(value){if(typeof value==="string"){if(value.indexOf('Date(')>-1){value=new Date(parseInt(value.replace(/^\/Date\((.*?)\)\/$/,'$1'),10));}else{return"'"+value.replace(escapeQuoteRegExp,"''")+"'";}}if(value&&value.getTime){return"datetime'"+kendo.format("{0:yyyy-MM-ddTHH-mm-ss}",value)+"'";}return value;}function translateGroup(group){return{value:typeof group.Key!=="undefined"?group.Key:group.value,field:group.Member||group.field,hasSubgroups:group.HasSubgroups||group.hasSubgroups,aggregates:translateAggregate(group.Aggregates||group.aggregates),items:group.HasSubgroups?$.map(group.Items||group.items,translateGroup):(group.Items||group.items)};}function translateAggregateResults(aggregate){var obj={};obj[aggregate.AggregateMethodName.toLowerCase()]=aggregate.Value;return obj;}function translateAggregate(aggregates){var functionResult={},key,functionName,aggregate;for(key in aggregates){functionResult={};aggregate=aggregates[key];for(functionName in aggregate){functionResult[functionName.toLowerCase()]=aggregate[functionName];}aggregates[key]=functionResult;}return aggregates;}extend(true,kendo.data,{schemas:{"aspnetmvc-ajax":{groups:function(data){return $.map(this.data(data),translateGroup);},aggregates:function(data){data=data.d||data;var result={},aggregates=data.AggregateResults||[],aggregate,idx,length;for(idx=0,length=aggregates.length;idx<length;idx++){aggregate=aggregates[idx];result[aggregate.Member]=extend(true,result[aggregate.Member],translateAggregateResults(aggregate));}return result;}}}});extend(true,kendo.data,{transports:{"aspnetmvc-ajax":kendo.data.RemoteTransport.extend({init:function(options){kendo.data.RemoteTransport.fn.init.call(this,$.extend(true,{},this.options,options));},read:function(options){var data=this.options.data,url=this.options.read.url;if(url=='EmptUrl')return null;if(data){if(url){this.options.data=null;}if(!data.Data.length&&url){kendo.data.RemoteTransport.fn.read.call(this,options);}else{options.success(data);}}else{kendo.data.RemoteTransport.fn.read.call(this,options);}},options:{read:{type:"POST"},update:{type:"POST"},create:{type:"POST"},destroy:{type:"POST"},parameterMap:parameterMap,prefix:""}})}});extend(true,kendo.data,{transports:{"aspnetmvc-server":kendo.data.RemoteTransport.extend({init:function(options){kendo.data.RemoteTransport.fn.init.call(this,extend(options,{parameterMap:$.proxy(parameterMap,this)}));},read:function(options){var url,regExp=new RegExp(this.options.prefix+"[^&]*&?","g"),query;query=location.search.replace(regExp,"").replace("?","");if(query.length&&!(/&$/.test(query))){query+="&";}options=this.setup(options,"read");url=options.url;if(url.indexOf("?")>=0){url+="&"+query;}else{url+="?"+query;}url+=$.map(options.data,function(value,key){return key+"="+value;}).join("&");location.href=url;}})}});})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui;if(ui&&ui.ComboBox){ui.ComboBox.requestData=function(selector){var combobox=$(selector).data("kendoComboBox"),filters=combobox.dataSource.filter(),value=combobox.input.val();if(!filters){value="";}return{text:value};};}})(window.kendo.jQuery);(function($,undefined){var kendo=window.kendo,ui=kendo.ui,extend=$.extend,isFunction=$.isFunction;extend(true,kendo.data,{schemas:{"imagebrowser-aspnetmvc":{data:function(data){return data||[];},model:{id:"Name",fields:{name:{field:"Name"},size:{field:"Size"},type:{field:"EntryType",parse:function(value){return value==0?"f":"d"}}}}}}});extend(true,kendo.data,{transports:{"imagebrowser-aspnetmvc":kendo.data.RemoteTransport.extend({init:function(options){kendo.data.RemoteTransport.fn.init.call(this,$.extend(true,{},this.options,options));},_call:function(type,options){options.data=$.extend({},options.data,{path:this.options.path()});if(isFunction(this.options[type])){this.options[type].call(this,options);}else{kendo.data.RemoteTransport.fn[type].call(this,options);}},read:function(options){this._call("read",options);},create:function(options){this._call("create",options);},destroy:function(options){this._call("destroy",options);},update:function(){},options:{read:{type:"POST"},update:{type:"POST"},create:{type:"POST"},destroy:{type:"POST"},parameterMap:function(options,type){if(type!="read"){options.EntryType=options.EntryType==="f"?0:1;}return options;}}})}});})(window.kendo.jQuery);(function($,undefined){var nameSpecialCharRegExp=/(\[|\]|\$|\.|\:|\+)/g;function generateMessages(){var name,messages={};for(name in validationRules){messages["mvc"+name]=createMessage(name);}return messages;}function generateRules(){var name,rules={};for(name in validationRules){rules["mvc"+name]=createRule(name);}return rules;}function extractParams(input,ruleName){var params={},index,data=input.data(),length=ruleName.length,rule,key;for(key in data){rule=key.toLowerCase();index=rule.indexOf(ruleName);if(index>-1){rule=rule.substring(index+length,key.length);if(rule){params[rule]=data[key];}}}return params;}function rulesFromData(metadata){var idx,length,fields=metadata.Fields||[],rules={};for(idx=0,length=fields.length;idx<length;idx++){$.extend(true,rules,rulesForField(fields[idx]));}return rules;}function rulesForField(field){var rules={},messages={},fieldName=field.FieldName,fieldRules=field.ValidationRules,validationType,validationParams,idx,length;for(idx=0,length=fieldRules.length;idx<length;idx++){validationType=fieldRules[idx].ValidationType;validationParams=fieldRules[idx].ValidationParameters;rules[fieldName+validationType]=createMetaRule(fieldName,validationType,validationParams);messages[fieldName+validationType]=createMetaMessage(fieldRules[idx].ErrorMessage);}return{rules:rules,messages:messages};}function createMessage(rule){return function(input){return input.attr("data-val-"+rule);};}function createRule(ruleName){return function(input){if(input.filter("[data-val-"+ruleName+"]").length){return validationRules[ruleName](input,extractParams(input,ruleName));}return true;};}function createMetaMessage(message){return function(){return message;};}function createMetaRule(fieldName,type,params){return function(input){if(input.filter("[name="+fieldName+"]").length){return validationRules[type](input,params);}return true;};}function patternMatcher(value,pattern){if(typeof pattern==="string"){pattern=new RegExp('^(?:'+pattern+')$');}return pattern.test(value);}var validationRules={required:function(input){var value=input.val(),checkbox=input.filter("[type=checkbox]");if(checkbox.length){var hidden=checkbox.next("input:hidden[name="+checkbox[0].name+"]");if(hidden.length){value=hidden.val();}else{value=input.attr("checked")==="checked";}}return!(value===""||!value);},number:function(input){return input.val()===""||kendo.parseFloat(input.val())!==null;},regex:function(input,params){return patternMatcher(input.val(),params.pattern);},range:function(input,params){if(input.val()!==""){return this.min(input,params)&&this.max(input,params);}return true;},min:function(input,params){var min=parseFloat(params.min)||0,val=parseFloat(input.val());return min<=val;},max:function(input,params){var max=parseFloat(params.max)||0,val=parseFloat(input.val());return val<=max;},date:function(input){return input.val()===""||kendo.parseDate(input.val())!==null;},length:function(input,params){var len=$.trim(input.val()).length;return(!params.min||len>=(params.min||0))&&(!params.max||len<=(params.max||0));}};$.extend(true,kendo.ui.validator,{rules:generateRules(),messages:generateMessages(),messageLocators:{mvcLocator:{locate:function(element,fieldName){fieldName=fieldName.replace(nameSpecialCharRegExp,"\\$1");return element.find(".field-validation-valid[data-valmsg-for="+fieldName+"], .field-validation-error[data-valmsg-for="+fieldName+"]");},decorate:function(message,fieldName){message.addClass("field-validation-error").attr("data-val-msg-for",fieldName||"");}},mvcMetadataLocator:{locate:function(element,fieldName){fieldName=fieldName.replace(nameSpecialCharRegExp,"\\$1");return element.find("#"+fieldName+"_validationMessage.field-validation-valid");},decorate:function(message,fieldName){message.addClass("field-validation-error").attr("id",fieldName+"_validationMessage");}}},ruleResolvers:{mvcMetaDataResolver:{resolve:function(element){var metadata=window.mvcClientValidationMetadata||[];if(metadata.length){element=$(element);for(var idx=0;idx<metadata.length;idx++){if(metadata[idx].FormId==element.attr("id")){return rulesFromData(metadata[idx]);}}}return{};}}}});})(window.kendo.jQuery);(function(window,undefined){kendo.cultures["fa-IR"]={name:"fa-IR",numberFormat:{pattern:["n-"],decimals:2,",":",",".":".",groupSize:[3],percent:{pattern:["-n %","n %"],decimals:2,",":",",".":".",groupSize:[3],symbol:"%"},currency:{pattern:["$n-","$ n"],decimals:2,",":",",".":"/",groupSize:[3],symbol:"ریال"}},calendars:{standard:{days:{names:["الأحد","الإثنین","الثلاثاء","الأربعاء","الخمیس","الجمعة","السبت"],namesAbbr:["الأحد","الإثنین","الثلاثاء","الأربعاء","الخمیس","الجمعة","السبت"],namesShort:["ح","ن","ث","ر","خ","ج","س"]},months:{names:["جانفییه","فیفرییه","مارس","أفریل","می","جوان","جوییه","أوت","سبتمبر","اکتوبر","نوفمبر","دیسمبر",""],namesAbbr:["جانفییه","فیفرییه","مارس","أفریل","می","جوان","جوییه","أوت","سبتمبر","اکتوبر","نوفمبر","دیسمبر",""]},AM:["ق.ظ","ق.ظ","ق.ظ"],PM:["ب.ظ","ب.ظ","ب.ظ"],patterns:{d:"MM/dd/yyyy",D:"dddd, MMMM dd, yyyy",F:"dddd, MMMM dd, yyyy hh:mm:ss tt",g:"MM/dd/yyyy hh:mm tt",G:"MM/dd/yyyy hh:mm:ss tt",m:"MMMM dd",M:"MMMM dd",s:"yyyy'-'MM'-'dd'T'HH':'mm':'ss",t:"hh:mm tt",T:"hh:mm:ss tt",u:"yyyy'-'MM'-'dd HH':'mm':'ss'Z'",y:"MMMM, yyyy",Y:"MMMM, yyyy"},"/":"/",":":":",firstDay:6}}}})(this);JalaliDate={g_days_in_month:[31,28,31,30,31,30,31,31,30,31,30,31],j_days_in_month:[31,31,31,31,31,31,30,30,30,30,30,29]};JalaliDate.jalaliToGregorian=function(j_y,j_m,j_d){j_y=parseInt(j_y);j_m=parseInt(j_m);j_d=parseInt(j_d);var jy=j_y-979;var jm=j_m-1;var jd=j_d-1;var j_day_no=365*jy+parseInt(jy/33)*8+parseInt((jy%33+3)/4);for(var i=0;i<jm;++i)j_day_no+=JalaliDate.j_days_in_month[i];j_day_no+=jd;var g_day_no=j_day_no+79;var gy=1600+400*parseInt(g_day_no/146097);g_day_no=g_day_no%146097;var leap=true;if(g_day_no>=36525){g_day_no--;gy+=100*parseInt(g_day_no/36524);g_day_no=g_day_no%36524;if(g_day_no>=365)g_day_no++;else
leap=false;}gy+=4*parseInt(g_day_no/1461);g_day_no%=1461;if(g_day_no>=366){leap=false;g_day_no--;gy+=parseInt(g_day_no/365);g_day_no=g_day_no%365;}for(var i=0;g_day_no>=JalaliDate.g_days_in_month[i]+(i==1&&leap);i++)g_day_no-=JalaliDate.g_days_in_month[i]+(i==1&&leap);var gm=i+1;var gd=g_day_no+1;return[gy,gm,gd];}
JalaliDate.checkDate=function(j_y,j_m,j_d){return!(j_y<0||j_y>32767||j_m<1||j_m>12||j_d<1||j_d>(JalaliDate.j_days_in_month[j_m-1]+(j_m==12&&!((j_y-979)%33%4))));}
JalaliDate.getMonthName=function(month){switch(month){case 1:return"فروردین";case 2:return"اردیبهشت";case 3:return"خرداد";case 4:return"تیر";case 5:return"مرداد";case 6:return"شهریور";case 7:return"مهر";case 8:return"آبان";case 9:return"آذر";case 10:return"دی";case 11:return"بهمن";case 12:return"اسفند";default:}}
JalaliDate.gregorianToJalali=function(g_y,g_m,g_d){g_y=parseInt(g_y);g_m=parseInt(g_m);g_d=parseInt(g_d);var gy=g_y-1600;var gm=g_m-1;var gd=g_d-1;var g_day_no=365*gy+parseInt((gy+3)/4)-parseInt((gy+99)/100)+parseInt((gy+399)/400);for(var i=0;i<gm;++i)g_day_no+=JalaliDate.g_days_in_month[i];if(gm>1&&((gy%4==0&&gy%100!=0)||(gy%400==0)))++g_day_no;g_day_no+=gd;var j_day_no=g_day_no-79;var j_np=parseInt(j_day_no/12053);j_day_no%=12053;var jy=979+33*j_np+4*parseInt(j_day_no/1461);j_day_no%=1461;if(j_day_no>=366){jy+=parseInt((j_day_no-1)/365);j_day_no=(j_day_no-1)%365;}for(var i=0;i<11&&j_day_no>=JalaliDate.j_days_in_month[i];++i){j_day_no-=JalaliDate.j_days_in_month[i];}var jm=i+1;var jd=j_day_no+1;return[jy,jm,jd];}
Date.prototype.setJalaliFullYear=function(y,m,d){var gd=this.getDate();var gm=this.getMonth();var gy=this.getFullYear();var j=JalaliDate.gregorianToJalali(gy,gm+1,gd);if(y<100)y+=1300;j[0]=y;if(m!=undefined){if(m>11){j[0]+=Math.floor(m/12);m=m%12;}j[1]=m+1;}if(d!=undefined)j[2]=d;var g=JalaliDate.jalaliToGregorian(j[0],j[1],j[2]);return this.setFullYear(g[0],g[1]-1,g[2]);}
Date.prototype.setJalaliMonth=function(m,d){var gd=this.getDate();var gm=this.getMonth();var gy=this.getFullYear();var j=JalaliDate.gregorianToJalali(gy,gm+1,gd);if(m>11){j[0]+=math.floor(m/12);m=m%12;}j[1]=m+1;if(d!=undefined)j[2]=d;var g=JalaliDate.jalaliToGregorian(j[0],j[1],j[2]);return this.setFullYear(g[0],g[1]-1,g[2]);}
Date.prototype.setJalaliDate=function(d){var gd=this.getDate();var gm=this.getMonth();var gy=this.getFullYear();var j=JalaliDate.gregorianToJalali(gy,gm+1,gd);j[2]=d;var g=JalaliDate.jalaliToGregorian(j[0],j[1],j[2]);return this.setFullYear(g[0],g[1]-1,g[2]);}
Date.prototype.getJalaliFullYear=function(){var gd=this.getDate();var gm=this.getMonth();var gy=this.getFullYear();var j=JalaliDate.gregorianToJalali(gy,gm+1,gd);return j[0];}
Date.prototype.getJalaliMonth=function(){var gd=this.getDate();var gm=this.getMonth();var gy=this.getFullYear();var j=JalaliDate.gregorianToJalali(gy,gm+1,gd);return j[1]-1;}
Date.prototype.getJalaliDate=function(){var gd=this.getDate();var gm=this.getMonth();var gy=this.getFullYear();var j=JalaliDate.gregorianToJalali(gy,gm+1,gd);return j[2];}
Date.prototype.getJalaliDay=function(){var day=this.getDay();day=(day+1)%7;return day;}
Date.prototype.setJalaliUTCFullYear=function(y,m,d){var gd=this.getUTCDate();var gm=this.getUTCMonth();var gy=this.getUTCFullYear();var j=JalaliDate.gregorianToJalali(gy,gm+1,gd);if(y<100)y+=1300;j[0]=y;if(m!=undefined){if(m>11){j[0]+=Math.floor(m/12);m=m%12;}j[1]=m+1;}if(d!=undefined)j[2]=d;var g=JalaliDate.jalaliToGregorian(j[0],j[1],j[2]);return this.setUTCFullYear(g[0],g[1]-1,g[2]);}
Date.prototype.setJalaliUTCMonth=function(m,d){var gd=this.getUTCDate();var gm=this.getUTCMonth();var gy=this.getUTCFullYear();var j=JalaliDate.gregorianToJalali(gy,gm+1,gd);if(m>11){j[0]+=math.floor(m/12);m=m%12;}j[1]=m+1;if(d!=undefined)j[2]=d;var g=JalaliDate.jalaliToGregorian(j[0],j[1],j[2]);return this.setUTCFullYear(g[0],g[1]-1,g[2]);}
Date.prototype.setJalaliUTCDate=function(d){var gd=this.getUTCDate();var gm=this.getUTCMonth();var gy=this.getUTCFullYear();var j=JalaliDate.gregorianToJalali(gy,gm+1,gd);j[2]=d;var g=JalaliDate.jalaliToGregorian(j[0],j[1],j[2]);return this.setUTCFullYear(g[0],g[1]-1,g[2]);}
Date.prototype.getJalaliUTCFullYear=function(){var gd=this.getUTCDate();var gm=this.getUTCMonth();var gy=this.getUTCFullYear();var j=JalaliDate.gregorianToJalali(gy,gm+1,gd);return j[0];}
Date.prototype.getJalaliUTCMonth=function(){var gd=this.getUTCDate();var gm=this.getUTCMonth();var gy=this.getUTCFullYear();var j=JalaliDate.gregorianToJalali(gy,gm+1,gd);return j[1]-1;}
Date.prototype.getJalaliUTCDate=function(){var gd=this.getUTCDate();var gm=this.getUTCMonth();var gy=this.getUTCFullYear();var j=JalaliDate.gregorianToJalali(gy,gm+1,gd);return j[2];}
Date.prototype.getJalaliUTCDay=function(){var day=this.getUTCDay();day=(day+1)%7;return day;}
$(function(){if($('.k-pager-sizes').length){if($(".k-pager-sizes").html().indexOf("items per page")>0){var gridPagerHtml=$(".k-pager-sizes").html();$(".k-pager-sizes").html(gridPagerHtml.replace('items per page','مورد در صفحه'));}}})