﻿/* --- minified js --- */
var osQueue=new Array();var osAjaxBackend=null;var osFocusBackend=null;var osCurrentBeforeChange=null;var osCurrentAfterChange=null;var osLastOrigin=null;function OsAjax(e,origin,eventTarget,ajaxEvent,bucketIds,notifyArgument){osjs(function(){try{clearTimeout(osAjaxDelayedTimeout);osQueue.push(origin);osQueue.push(eventTarget);osQueue.push(ajaxEvent);osQueue.push(bucketIds);osQueue.push(OsBuildAjaxEventContext(e,origin,notifyArgument));if(osQueue.length==5)
OsCallQueue();}catch(exp){if(window.OsHandleSystemException)window.OsHandleSystemException(exp,"OsAjax");}});}
var osAjaxDelayedTimeout;var os_t_e=[];var os_t_origin=[];var os_t_eventTarget=[];var os_t_ajaxEvent=[];var os_t_bucketIds=[];function OsAjaxDelayedTrigger(){try{clearTimeout(osAjaxDelayedTimeout);for(var i=0;i<os_t_origin.length;i++){var origin=os_t_origin[i];OsAjax(os_t_e[i],origin,os_t_eventTarget[i],os_t_ajaxEvent[i],os_t_bucketIds[i],'');}
os_t_e=[];os_t_origin=[];os_t_eventTarget=[];os_t_ajaxEvent=[];os_t_bucketIds=[];}catch(exp){if(window.OsHandleSystemException)window.OsHandleSystemException(exp,"OsAjaxDelayedTrigger");}}
var osOnChangeTimerDelay=800;var osOnChangeElement=null;var osOnChangeCheckInterval;function OsOnChangeCheck(){var previousValue=osOnChangeElement.data('currentValue');var domElement=osOnChangeElement.get(0);var currentValue=OsGetElementValue(domElement);if(!OsIsEqual(currentValue,previousValue)){eval(domElement.attributes["onoschange"].value);osOnChangeElement.data('currentValue',currentValue);}}
function OsStopOnChangeChecking(){clearInterval(osOnChangeCheckInterval);}
function OsStartOnChangeChecking(element){OsStopOnChangeChecking();if(element.attributes["onoschange"]!=null){osOnChangeElement=osjs(element);osOnChangeCheckInterval=setInterval(OsOnChangeCheck,50);}}
function OsInitializeOnChangeElement(element){var jQueryElement=osjs(element);if(jQueryElement.data('currentValue')==null){var value=OsGetElementValue(element);jQueryElement.data('currentValue',value);if(jQueryElement.data('ajaxSentValue')==null){jQueryElement.data('ajaxSentValue',value);}}}
function OsInitializeOnChange(refreshedElement){var domRefreshedElement=refreshedElement.getElementsByTagName?refreshedElement:refreshedElement.get(0);var inputs=domRefreshedElement.getElementsByTagName("input");var textareas=domRefreshedElement.getElementsByTagName("textarea");var selects=domRefreshedElement.getElementsByTagName("select");var isIE=OsIsIE();for(var i=0;i<inputs.length;i++){var input=inputs[i];if(input.attributes["onoschange"]!=null||input.attributes["onclick"]!=null)
OsInitializeOnChangeElement(input);if(isIE)
osFocusBackend.InitializeOnFocusHandler(input);}
for(var i=0;i<textareas.length;i++){var textarea=textareas[i];if(textarea.attributes["onoschange"]!=null)
OsInitializeOnChangeElement(textarea);if(isIE)
osFocusBackend.InitializeOnFocusHandler(textarea);}
for(var i=0;i<selects.length;i++){var select=selects[i];if(select.attributes["onoschange"]!=null)
OsInitializeOnChangeElement(select);if(isIE)
osFocusBackend.InitializeOnFocusHandler(select);}}
function OsGetElementValue(element){if(element.type=="checkbox"||element.type=="radio")
return element.checked;else if(element.type=="select-multiple")
return OsGetSelectedIndexes(element);else
return element.value;}
function OsSetElementValue(element,value){if(element.type=="checkbox"||element.type=="radio")
element.checked=value;else if(element.type=="select-multiple")
OsSetSelectedIndexes(element,value);else
element.value=value;}
function OsGetSelectedIndexes(selObj){var indexes=new Array();for(var i=0;i<selObj.options.length;i++){if(selObj.options[i].selected){indexes.push(selObj.options[i].value);}}
return indexes;}
function OsSetSelectedIndexes(selObj,indexes){for(var i=0;i<indexes.length;i++){selObj.options[indexes[i]].selected=true;}}
function OsArrayIndexOf(array,element){for(var i=0;i<array.length;i++){if(array[i]==element){return i;}}
return-1;};function OsArrayEquals(array1,array2){if(array1.length!=array2.length)
return false;for(var i=0;i<array1.length;i++){if(array1[i]!=array2[i]){return false;}}
return true;};function OsArrayRemoveIndex(array,index){var a=[];for(var i=0;i<array.length;i++){if(i!=index){a.push(array[i]);}}
return a;}
function OsIsEqual(val1,val2){if(val1.push&&val2.push)
return OsArrayEquals(val1,val2);else
return(val1==val2);}
function OsIsDescendant(decendant,ancestor){if(decendant!=null&&ancestor!=null){return decendant.parentNode==ancestor||(decendant.parentNode!=document&&OsIsDescendant(decendant.parentNode,ancestor));}else
return false;}
function OsIsIE()
{return/msie/i.test(navigator.userAgent)&&!/opera/i.test(navigator.userAgent);}
var OsFocusBaseBackend=function(){this.Save=function(){var currentFocusedElement=this.GetCurrentFocusedElement();if(currentFocusedElement==null)
return null;var selectionRange;if(this.CanHaveSelection(currentFocusedElement)){selectionRange=this.GetSelection(currentFocusedElement);}else{selectionRange={start:null,end:null};}
return{id:this.GetIdentifier(currentFocusedElement),value:OsGetElementValue(currentFocusedElement),ajaxSentValue:osjs(currentFocusedElement).data('ajaxSentValue'),start:selectionRange.start,end:selectionRange.end};};this.Restore=function(focus,restoreValue){if(focus==null)
return;var focusElement=this.GetElementById(focus.id);if(!focusElement)
return;if(restoreValue){var jQueryElem=osjs(focusElement);jQueryElem.data('ajaxSentValue',focus.ajaxSentValue);OsSetElementValue(focusElement,focus.value);}
try{focusElement.focus();if(focus.start!=null&&focus.end!=null){this.SetSelection(focusElement,focus.start,focus.end);}}catch(e){};};this.GetIdentifier=function(element){var id=element.id;if(!id)
id=element;return id;};this.GetElementById=function(id){if(typeof(id)=="string")
return document.getElementById(id);else
return id;};this.CanHaveFocus=function(element){return element&&element.tagName&&(element.tagName.toLowerCase()=="input"||element.tagName.toLowerCase()=="textarea"||element.tagName.toLowerCase()=="select");};this.CanHaveSelection=function(element){return(element.tagName.toLowerCase()=="input"&&(element.type=="text"||element.type=="password"||element.type=="file"))||(element.tagName.toLowerCase()=="textarea");};this.Initialize=function(){};};var OsFocusBackendIE=function(){OsFocusBaseBackend.call(this);this.base={Initialize:(function(thisObj,oldInitialize){return function(){return oldInitialize.call(thisObj);};})(this,this.Initialize)};this.CurrentFocusedElement=null;this.GetCurrentFocusedElement=function(){return this.CurrentFocusedElement;};this.ClearFocusedElement=function(){this.CurrentFocusedElement=null;}
this.GetSelection=function(element){var range=document.selection.createRange();var length=range.text.length;range.moveStart('textedit',-1);cursorPos=range.text.length;return{start:cursorPos-length,end:cursorPos};};this.SetSelection=function(element,start,end){var range=element.createTextRange();range.collapse(true);range.moveStart('character',start);range.moveEnd('character',end-start);range.select();};var OnFocusChanged=(function(thisObj){return function(e){(function(){this.OnFocusChanged(e);}).call(thisObj);};})(this);this.InitializeOnFocusHandler=function(elem){elem.attachEvent("onfocus",OnFocusChanged);};this.OnFocusChanged=function(e){if(this.CanHaveFocus(e.srcElement)){this.CurrentFocusedElement=e.srcElement;OsStartOnChangeChecking(this.CurrentFocusedElement);}
else{OsStopOnChangeChecking();this.CurrentFocusedElement=null;}};};var OsFocusBackendGecko=function(){OsFocusBaseBackend.call(this);this.base={Initialize:(function(thisObj,oldInitialize){return function(){return oldInitialize.call(thisObj);};})(this,this.Initialize)};this.GetSelection=function(element){return{start:element.selectionStart,end:element.selectionEnd};};this.SetSelection=function(element,start,end){element.setSelectionRange(start,end);};this.Initialize=function(){this.base.Initialize();var OnFocusChanged=(function(thisObj){return function(e){(function(){this.OnFocusChanged(e);}).call(thisObj);};})(this);var OnFocusLost=(function(thisObj){return function(){(function(){this.OnFocusLost();}).call(thisObj);};})(this);var OnDragDrop=(function(thisObj){return function(e){(function(){if(e.target.attributes["onosChange"]!=null)
e.target.focus();}).call(thisObj);};})(this);document.addEventListener('focus',OnFocusChanged,true);document.addEventListener('blur',OnFocusLost,true);document.addEventListener('dragdrop',OnDragDrop,true);};this.CurrentFocusedElement=null;this.GetCurrentFocusedElement=function(){return this.CurrentFocusedElement;};this.OnFocusChanged=function(e){if(this.CanHaveFocus(e.target)){this.CurrentFocusedElement=e.target;OsStartOnChangeChecking(e.target);}
else{OsStopOnChangeChecking();this.CurrentFocusedElement=null;}};this.OnFocusLost=function(){OsStopOnChangeChecking();this.CurrentFocusedElement=null;}};osjs(document).ready(function(){if(OsIsIE()){osAjaxBackend=new OsAjaxBackendIFrame();osFocusBackend=new OsFocusBackendIE();}else{osAjaxBackend=new OsAjaxBackendXHR();osFocusBackend=new OsFocusBackendGecko();}
OsInitializeOnChange(document);osFocusBackend.Initialize();});var osLoosingFocus=false;function OsAjaxDelayed(e,origin,eventTarget,ajaxEvent,bucketIds,delay){if(osLoosingFocus)
return;clearTimeout(osAjaxDelayedTimeout);var idx=OsArrayIndexOf(os_t_origin,origin);if(idx!=-1){os_t_e[idx]=e;os_t_origin[idx]=origin;os_t_eventTarget[idx]=eventTarget;os_t_ajaxEvent[idx]=ajaxEvent;os_t_bucketIds[idx]=bucketIds;}else{os_t_e.push(e);os_t_origin.push(origin);os_t_eventTarget.push(eventTarget);os_t_ajaxEvent.push(ajaxEvent);os_t_bucketIds.push(bucketIds);}
osAjaxDelayedTimeout=setTimeout(OsAjaxDelayedTrigger,delay);}
function OsNotifyWidget(widgetId,message){OsAjax(null,'',widgetId,'Notify','__OSVSTATE,',message);}
osjs.each(['Left','Top'],function(i,name){osjs.fn['scroll'+name]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(name=='Left'?val:osjs(window)['scrollLeft'](),name=='Top'?val:osjs(window)['scrollTop']()):this['scroll'+name]=val;}):this[0]==window||this[0]==document?self[(name=='Left'?'pageXOffset':'pageYOffset')]||osjs.boxModel&&document.documentElement['scroll'+name]||document.body['scroll'+name]:this[0]['scroll'+name];};});function OsBuildAjaxEventContext(e,origin,notifyArgument){var document=osjs(document);var documentWidth=document.width();var documentHeight=document.height();var elementId=origin;var elementOffsetTop=0;var elementOffsetLeft=0;if(origin!=''){var originObject=osjs("#"+origin);elementOffsetTop=originObject.offset().top;elementOffsetLeft=originObject.offset().left;}
var scrollOffsetTop=document.scrollTop();var scrollOffsetLeft=document.scrollLeft();var mouseX=0;var mouseY=0;try{if(e!=null){mouseX=e.PageX?e.PageX:e.clientX+scrollOffsetLeft;mouseY=e.PageY?e.PageY:e.clientY+scrollOffsetTop;}}catch(e){};if(isNaN(mouseX))
mouseX=0;if(isNaN(mouseY))
mouseY=0;var separator=",";return documentWidth+separator+
documentHeight+separator+
elementId+separator+
elementOffsetTop+separator+
elementOffsetLeft+separator+
scrollOffsetTop+separator+
scrollOffsetLeft+separator+
mouseX+separator+
mouseY+separator+
notifyArgument;}
function OsCallQueue(){var origin=osQueue[0];var eventTarget=osQueue[1];var ajaxEvent=osQueue[2];var bucketIds=osQueue[3];var context=osQueue[4];OsExecuteCallToServer(origin,eventTarget,ajaxEvent,bucketIds,context);}
function OsIeCleanProgressBar(){var iframe=document.createElement("iframe");iframe.style.border='0px';iframe.style.width='0px';iframe.style.height='0px';var parentElement=document.body;parentElement.appendChild(iframe);parentElement.removeChild(parentElement.lastChild);}
function OsEndRequest(){osAjaxBackend.EndRequest();var ajaxEvent=osQueue[2];if(ajaxEvent=="Change"){var origin=osQueue[0];var elem=document.getElementById(origin);var ajaxSentValue=osjs(elem).data('ajaxSentValue');var value=OsGetElementValue(elem);if(!OsIsEqual(value,ajaxSentValue)){if(elem.type=="checkbox"||elem.type=="radio"){elem.onclick();}
else if(elem.tagName.toLowerCase()=="select"){elem.onchange();}}}
setTimeout(OsExecuteNextInQueue,0);}
function OsExecuteNextInQueue(){if(osQueue.length>0){osQueue.shift();osQueue.shift();osQueue.shift();osQueue.shift();osQueue.shift();}
if(osQueue.length>0)
OsCallQueue()}
function OsInitializeSpanDisplay(ctrl){if(ctrl.get(0).nodeName=="SPAN"||ctrl.get(0).nodeName=="DIV"){var found=ctrl.find("div, h1, h2, h3, h4, h5, h6, p, ul, ol, dl, li, dt, dd, table, blockquote, pre, form");if(found.length>0)
ctrl.css("display","block");}}
var osRegisterEffectHighlightColor='#ffff00';var osRegisterEffectHighlightTime=1000;function OsRegisterEffectHighlight(){osCurrentAfterChange=(function(oldOsCurrentAfterChange){return function(ctrl){if(oldOsCurrentAfterChange!=null)oldOsCurrentAfterChange(ctrl);if(ctrl.data("display")!="none"){OsInitializeSpanDisplay(ctrl);ctrl.effect("highlight",{color:osRegisterEffectHighlightColor},osRegisterEffectHighlightTime);}};})(osCurrentAfterChange);}
var osRegisterEffectListRemoveHighlightTime=500;function OsRegisterEffectListRemoveHighlight(){osCurrentBeforeChange=(function(oldOsCurrentBeforeChange){return function(ctrl){if(oldOsCurrentBeforeChange!=null)oldOsCurrentBeforeChange(ctrl);if(ctrl.css("display")!="none"){OsInitializeSpanDisplay(ctrl);ctrl.effect("highlight",{color:osRegisterEffectHighlightColor},osRegisterEffectListRemoveHighlightTime);}};})(osCurrentAfterChange);}
(function($){$.fn.customFadeTo=function(speed,to,callback){$(this).fadeTo(speed,to,function(){if(osjs.browser.msie)
$(this).get(0).style.removeAttribute('filter');if(callback!=undefined)
callback();});};})(osjs);var osRegisterEffectFadeOutTime=250;var osRegisterEffectFadeInTime=250;function OsRegisterEffectFade(){osCurrentBeforeChange=(function(oldOsCurrentBeforeChange){return function(ctrl){if(oldOsCurrentBeforeChange!=null)oldOsCurrentBeforeChange(ctrl);if(ctrl.css("display")!="none"){OsInitializeSpanDisplay(ctrl);ctrl.customFadeTo(osRegisterEffectFadeOutTime,0.01);}};})(osCurrentAfterChange);osCurrentAfterChange=(function(oldOsCurrentAfterChange){return function(ctrl){if(ctrl.data("display")!="none"){OsInitializeSpanDisplay(ctrl);ctrl.css("opacity","0.01");ctrl.customFadeTo(osRegisterEffectFadeInTime,1.0);}
if(oldOsCurrentAfterChange!=null)oldOsCurrentAfterChange(ctrl);};})(osCurrentAfterChange);}
var osRegisterEffectVerticalSlideUpTime=250;var osRegisterEffectVerticalSlideDownTime=500;function OsRegisterEffectVerticalSlide(){osCurrentBeforeChange=(function(oldOsCurrentBeforeChange){return function(ctrl){if(oldOsCurrentBeforeChange!=null)oldOsCurrentBeforeChange(ctrl);if(ctrl.css("display")!="none"){OsInitializeSpanDisplay(ctrl);ctrl.slideUp(osRegisterEffectVerticalSlideUpTime);}};})(osCurrentAfterChange);osCurrentAfterChange=(function(oldOsCurrentAfterChange){return function(ctrl){if(ctrl.data("display")!="none"){OsInitializeSpanDisplay(ctrl);ctrl.css("display","none");ctrl.slideDown(osRegisterEffectVerticalSlideDownTime);}
if(oldOsCurrentAfterChange!=null)oldOsCurrentAfterChange(ctrl);};})(osCurrentAfterChange);}
function OsSetInnerHTML(elem,innerHTML){if(OsIsIE()){switch(elem.tagName.toLowerCase()){case"table":case"tbody":case"thead":case"tfoot":case"tr":var tempInnerHTML;if(elem.tagName.toLowerCase()=="table"){tempInnerHTML="<table>"+innerHTML+"</table>";}else if(elem.tagName.toLowerCase()=="tr"){tempInnerHTML="<table><tr>"+innerHTML+"</tr></table>";}
var tempDiv=elem.ownerDocument.createElement("div");tempDiv.innerHTML=tempInnerHTML;var tempNewElem;if(elem.tagName.toLowerCase()=="table"){tempNewElem=tempDiv.firstChild;}else if(/tbody|thead|tfoot/.test(elem.tagName.toLowerCase())){tempNewElem=tempDiv.firstChild.firstChild;}else if(elem.tagName.toLowerCase()=="tr"){tempNewElem=tempDiv.firstChild.firstChild.firstChild;}
while(elem.hasChildNodes())
elem.removeChild(elem.firstChild);while(tempNewElem.hasChildNodes())
elem.appendChild(tempNewElem.firstChild);break;case"span":var tempDiv=elem.ownerDocument.createElement("div");tempDiv.innerHTML=innerHTML;while(elem.hasChildNodes()){elem.removeChild(elem.childNodes[0]);}
while(tempDiv.hasChildNodes()){elem.appendChild(tempDiv.childNodes[0]);}
break;default:elem.innerHTML=innerHTML;break;}}else{elem.innerHTML=innerHTML;}}
function OsExtractScriptTags(html){var result=[];var lowerHtml=html.toLowerCase();var scriptTagBegin;var scriptTagEnd;var currentPosition=0;var cutPositions=[];for(;;){scriptTagBegin=lowerHtml.indexOf("<script",currentPosition);if(scriptTagBegin==-1)
break;currentPosition=lowerHtml.indexOf(">",scriptTagBegin)+1;var endScript=lowerHtml.indexOf("</script>",currentPosition);scriptTagEnd=endScript+9;cutPositions.push(scriptTagBegin);cutPositions.push(scriptTagEnd);var script=osjs.trim(html.substring(currentPosition,endScript));if(script.indexOf("<!--")==0){script=script.substring(4,script.length-3);}else if(script.indexOf("<![CDATA[")==0){script=script.substring(9,script.length-3);}
result.push(script);currentPosition=scriptTagEnd;}
for(var i=cutPositions.length-1;i>0;i-=2){scriptTagBegin=cutPositions[i-1];scriptTagEnd=cutPositions[i];html=html.slice(0,scriptTagBegin)+html.slice(scriptTagEnd);}
return{scripts:result,htmlWithoutScripts:html}}
function OsReplaceWith(elem,newElemInner,newElemAttributes){var domElem=elem.get(0);var keepDisplayData=(elem.data("keepDisplayData")=="true");var oldFocus;var ajaxLastSentValue;var lastValue=null;var lastAjaxSentValue;var originElem=document.getElementById(osLastOrigin);var focusedElement=osFocusBackend.GetCurrentFocusedElement();var selectedRadio=null;if((focusedElement&&OsIsDescendant(focusedElement,elem.get(0)))){oldFocus=osFocusBackend.Save();}else{if(OsIsDescendant(originElem,elem.get(0))){lastValue=OsGetElementValue(originElem);lastAjaxSentValue=osjs(originElem).data('ajaxSentValue');}}
if(originElem!=null){if(originElem.type=="radio"){var radios=document.getElementsByTagName("input");for(var i=0;i<radios.length;i++){var radio=radios[i];if(radio.type=="radio"&&radio.name==originElem.name){if(OsGetElementValue(radio)){selectedRadio=radio.id;break;}}}}}
osLoosingFocus=true;var scriptTags=OsExtractScriptTags(newElemInner);OsSetInnerHTML(domElem,scriptTags.htmlWithoutScripts);for(var i=0;i<scriptTags.scripts.length;i++){OsEvaluateUserJavaScript(scriptTags.scripts[i]);}
osLoosingFocus=false;var oldAttributes=[];var attributes=domElem.attributes;for(var i=0;i<attributes.length;i++){var attr=attributes[i];if(!attr.specified)
continue;var name=attr.name;if(name.substr(0,6)!="jQuery"){oldAttributes.push(name);}}
for(var i=0;i<oldAttributes.length;i++){var oldAttribute=oldAttributes[i];domElem.removeAttribute(OsIsIE()?osjs.props[oldAttribute]||oldAttribute:oldAttribute);}
var foundStyle=false;for(var name in newElemAttributes){var value=newElemAttributes[name];var isEventHandler=(name.substring(0,2)=="on");if(OsIsIE()&&name=="style"){domElem.style.cssText=value;}else if(!isEventHandler||(isEventHandler&&OsIsIE())){domElem.setAttribute(OsIsIE()?osjs.props[name]||name:name,value);}
if(isEventHandler){var eventName=name.substr(2);elem.unbind(eventName,null);elem.bind(eventName,new Function("event",value));}else if(name=="style"){foundStyle=true;if(!keepDisplayData)
elem.data("display",elem.css("display"));}}
if(!foundStyle&&!keepDisplayData)
elem.data("display",null);if(domElem.nodeName=="SPAN"&&!domElem.hasChildNodes()){elem.data("display","none");elem.css("display","none");}
if(oldFocus){osFocusBackend.Restore(oldFocus,true);}else if(lastValue!=null){var replacedOriginElem=document.getElementById(osLastOrigin);if(replacedOriginElem!=null){OsSetElementValue(replacedOriginElem,lastValue);osjs(replacedOriginElem).data("ajaxSentValue",lastAjaxSentValue);}}
if(selectedRadio!=null){elem=document.getElementById(selectedRadio);OsSetElementValue(elem,true);}}
var OsJSONUpdateQueue=[];function OsJSONUpdate(Json){try{OsJSONUpdateQueue.push(Json);if(OsJSONUpdateQueue.length==1)
OsExecuteJSONUpdate(Json);}catch(e){if(window.OsHandleSystemException)window.OsHandleSystemException(e,"OsJSONUpdate");}}
function OsRefreshElement(elem,newElemInner,newElemAttributes){if(elem.data("OsOnBeforeChange")==undefined){elem.data("OsOnBeforeChange",[]);elem.data("OsOnAfterChange",[]);}
if(null!=osCurrentBeforeChange){elem.data("OsOnBeforeChange").push(osCurrentBeforeChange);elem.queue(function(){var oldLen=elem.queue().length;elem.data("OsOnBeforeChange").shift()(elem,newElemInner,newElemAttributes);var newQueue=elem.queue().slice(0,1).concat(elem.queue().slice(oldLen)).concat(elem.queue().slice(1,oldLen));elem.queue(newQueue);elem.dequeue();});}
elem.queue(function(){OsReplaceWith(elem,newElemInner,newElemAttributes);OsInitializeOnChange(elem);elem.dequeue();});if(null!=osCurrentAfterChange){elem.data("OsOnAfterChange").push(osCurrentAfterChange);elem.queue(function(){var oldLen=elem.queue().length;elem.data("OsOnAfterChange").shift()(elem);var newQueue=elem.queue().slice(0,1).concat(elem.queue().slice(oldLen)).concat(elem.queue().slice(1,oldLen));elem.queue(newQueue);elem.dequeue();});}}
function OsGetAttributesObject(elem){var attrObj={};for(var i=0;i<elem.attributes.length;i++){var attr=elem.attributes[i];if(attr.specified&&attr.name.substr(0,6)!="jQuery"&&attr.name!="style"){attrObj[attr.name]=attr.value;}else if(attr.name=="style"){if(attr.value=="null"){attrObj[attr.name]=elem.style.cssText;}else{attrObj[attr.name]=attr.value;}}}
return attrObj;}
osjs(function($){$.osErrorCodes=$.osErrorCodes||{};$.osErrorCodes.UserJavascriptError=1;$.osErrorCodes.ConnectionError=2;$.osErrorCodes.SystemJavascriptError=500;});function OsEvaluateUserJavaScript(js){js="try {"+js+"} catch (e) { window.OsHandleException(e, window.osjs.osErrorCodes.UserJavascriptError, 'OsEvaluateUserJavascript'); }";osjs.globalEval(js);}
function OsHandleSystemException(exception,origin){OsHandleException(exception,osjs.osErrorCodes.SystemJavascriptError,origin);}
function OsAlertExceptionHandler(event,exception,errorCode,origin){alert("Error #"+errorCode+"\n"+origin+" Exception.\nName: "+exception.name+"\nMessage: "+exception.message);}
function OsRegisterExceptionHandler(fx){osjs(document).bind("osException",fx);}
function OsHandleException(exception,errorCode,origin){osjs(document).trigger("osException",[exception,errorCode,origin]);}
function OsLoadNextScript(Json){Json.blockJs.shift();if(Json.blockJs.length==0){Json.blockJs=null;}
OsExecuteJSONUpdate(Json);}
function OsExecuteJSONUpdate(Json){if(Json.blockJs){var loadedScripts=osjs(document).data('LoadedScripts');if(loadedScripts==null){loadedScripts=[];var tagsElements=document.getElementsByTagName("script");for(var i=0;i<tagsElements.length;i++){var src=osjs(tagsElements[i]).attr('src');if(src!=undefined&&src!="")
loadedScripts.push(src);}}
var scriptFilename=Json.blockJs[0];var JS_CACHE_INVALIDATION=1;if(OsArrayIndexOf(loadedScripts,scriptFilename)==-1){osjs.ajax({type:"GET",url:scriptFilename,dataType:"script",ignore_me:1,cache:false,ignore_me_too:1,success:function(){loadedScripts.push(scriptFilename);osjs(document).data('LoadedScripts',loadedScripts);OsLoadNextScript(Json);}});}else{OsLoadNextScript(Json);}
return;}
osCurrentBeforeChange=typeof(OsOnBeforeChange)=="function"?OsOnBeforeChange:null;osCurrentAfterChange=typeof(OsOnAfterChange)=="function"?OsOnAfterChange:null;for(var controlName in Json.hidden){osjs("#"+controlName).attr("value",Json.hidden[controlName]);}
if(Json.js){for(var i=0;i<Json.js.length;i++){OsEvaluateUserJavaScript(Json.js[i]);}}
if(Json["__RedirectToURL"]){OsRedirectToURL(Json["__RedirectToURL"]);}
var refreshedWidget=false;for(var controlId in Json.outers){if(document.getElementById(controlId)!=null){refreshedWidget=true;var elem=osjs("#"+controlId);var newElem=Json.outers[controlId];OsRefreshElement(elem,newElem.inner,newElem.attributes);elem.queue(function(){OsExecuteNextJSONUpdate();elem.dequeue();});}}
for(var controlId in Json.list){refreshedWidget=true;if(document.getElementById(controlId)==null)
continue;var elem=osjs("#"+controlId);var jsonList=Json.list[controlId];var html=jsonList[0];var operation=jsonList[1];var rowIndex=jsonList[2];var isTableRecord=jsonList[3];var showHeader;var oddLineStyle;var evenLineStyle;var useBullets;if(isTableRecord){showHeader=jsonList[4];oddLineStyle=jsonList[5];evenLineStyle=jsonList[6];}else{useBullets=jsonList[4];}
var jQueryHtml=osjs(html);if(isTableRecord==0){OsExecuteListRecordOperation(elem,controlId,operation,rowIndex,html,jQueryHtml,useBullets);}else if(isTableRecord==1){OsExecuteTableRecordOperation(elem,controlId,operation,rowIndex,html,jQueryHtml,showHeader,oddLineStyle,evenLineStyle);}}
if(!refreshedWidget){OsExecuteNextJSONUpdate();}}
function OsExecuteTableRecordOperation(elem,controlId,operation,rowIndex,html,jQueryHtml,showHeader,oddLineStyle,evenLineStyle){var tBody=osjs(elem.children()[0]);var rows=tBody.children();if(operation==1&&(rowIndex==rows.length-(showHeader?1:0))){operation=0;}
if(operation==0)
rowIndex=rows.length-1;else if(showHeader)
rowIndex++;var rowElem;var lastTd;if(operation==0||operation==1){var isEmpty=elem.hasClass("Empty");if(isEmpty){tBody.get(0).removeChild(rows[showHeader?1:0]);elem.removeClass("Empty");}
rowElem=osjs("<tr>"+jQueryHtml.html()+"</tr>");var cssClass=OsSetRowOddEvenStyle(rowIndex+(operation==0&&!isEmpty?1:0),rowElem,showHeader,oddLineStyle,evenLineStyle);var backgroundColor=OsGetStyleBackgroundColor("",cssClass);if(isEmpty){if(!showHeader){tBody.html(rowElem);}else{osjs(rows[0]).after(rowElem);}}else{if(operation==1){osjs(rows[rowIndex]).before(rowElem);}else{osjs(rows[rowIndex]).after(rowElem);}}
if(OsIsIE()){rowElem.html(rowElem.html());}
var rowElementColumns=rowElem.children();var newElementColumns=jQueryHtml.children();for(i=0;i<rowElementColumns.length;i++){var rowTd=osjs(rowElementColumns[i]);var newTd=osjs(newElementColumns[i]);rowTd.css("display","none");rowTd.data("backgroundColor",backgroundColor);OsRefreshElement(rowTd,newTd.get(0).innerHTML,OsGetAttributesObject(newTd.get(0)));lastTd=rowTd;}
OsSetTableRowOddEvenStyles(tBody,rowIndex,showHeader,oddLineStyle,evenLineStyle);lastTd.queue(function(){OsExecuteNextJSONUpdate();lastTd.dequeue();});}else if(operation==2){var removeRow;rowElem=osjs(rows[rowIndex]);if(html==""){removeRow=osjs("<tr>"+rowElem.html()+"</tr>");}else{removeRow=jQueryHtml;elem.addClass("Empty");}
var rowElementColumns=rowElem.children();var removeRowElementColumns=removeRow.children();var firstTd;for(i=0;i<rowElementColumns.length;i++){var rowTd=osjs(rowElementColumns[i]);if(i==0)
firstTd=rowTd;var removeRowTd;if(i<removeRowElementColumns.length)
removeRowTd=osjs(removeRowElementColumns[i]);else
removeRowTd=osjs("<td style=\"display:none\"/>");rowTd.data("display","none");rowTd.data("keepDisplayData","true");if(html==""){var lineStyle;if(showHeader)
lineStyle=(rowIndex%2==0)?evenLineStyle:oddLineStyle;else
lineStyle=(rowIndex%2==0)?oddLineStyle:evenLineStyle;rowTd.data("backgroundColor",OsGetStyleBackgroundColor("",lineStyle));}else{rowTd.data("backgroundColor",OsGetStyleBackgroundColor("",oddLineStyle));}
OsRefreshElement(rowTd,removeRowTd.get(0).innerHTML,OsGetAttributesObject(removeRowTd.get(0)));}
firstTd.queue(function(){rowElem.replaceWith(html);OsSetTableRowOddEvenStyles(tBody,rowIndex,showHeader,oddLineStyle,evenLineStyle);OsExecuteNextJSONUpdate();firstTd.dequeue();});}else if(operation==3){rowElem=osjs(rows[rowIndex]);var cssClass=OsSetRowOddEvenStyle(rowIndex,jQueryHtml,showHeader,oddLineStyle,evenLineStyle);var backgroundColor=OsGetStyleBackgroundColor("",cssClass);var rowElementColumns=rowElem.children();var newElementColumns=jQueryHtml.children();for(i=0;i<rowElementColumns.length;i++){var rowTd=osjs(rowElementColumns[i]);var newTd=osjs(newElementColumns[i]);rowTd.data("backgroundColor",backgroundColor);OsRefreshElement(rowTd,newTd.get(0).innerHTML,OsGetAttributesObject(newTd.get(0)));lastTd=rowTd;}
lastTd.queue(function(){OsExecuteNextJSONUpdate();lastTd.dequeue();});}}
function OsExecuteListRecordOperation(elem,controlId,operation,rowIndex,html,jQueryHtml,useBullets){var itemSpans;var emptyBullets;if(useBullets){itemSpans=osjs(elem.children()[0]).children();emptyBullets=(itemSpans.length==0);}
else
itemSpans=elem.children();var itemElem=osjs(itemSpans[rowIndex]);var itemTagName=useBullets?"li":"span";var openItemTag="<"+itemTagName+">";var closeItemTag="</"+itemTagName+">";if(operation==1&&rowIndex==itemSpans.length){operation=0;}
if(operation==0)
rowIndex=itemSpans.length-1;if(operation==0||operation==1){var removeEmptyMessage=false;var firstRow;if(emptyBullets)
firstRow=osjs(elem.get(0).lastChild);else
firstRow=osjs(itemSpans[0]);if(firstRow.attr("id")==controlId+"_EmptyMsg"){firstRow.css("display","none");removeEmptyMessage=true;}
var newItem=osjs(openItemTag+jQueryHtml.html()+closeItemTag);newItem.css("display","none");if(emptyBullets){osjs(elem.get(0).firstChild).html(newItem);}else{if(operation==1)
osjs(itemSpans[rowIndex]).before(newItem);else
osjs(itemSpans[rowIndex]).after(newItem);}
OsRefreshElement(newItem,jQueryHtml.get(0).innerHTML,OsGetAttributesObject(jQueryHtml.get(0)));if(removeEmptyMessage){osjs(firstRow).replaceWith("");}
newItem.queue(function(){OsExecuteNextJSONUpdate();newItem.dequeue();});}else if(operation==2){var removeItem;if(html==""||useBullets){removeItem=osjs(openItemTag+itemElem.html()+closeItemTag);removeItem.css("display","none");}else{removeItem=jQueryHtml;}
OsRefreshElement(itemElem,removeItem.get(0).innerHTML,OsGetAttributesObject(removeItem.get(0)));if(html!=""&&useBullets){itemElem.queue(function(){elem.html("<ul/>");var emptyMessageHtml=osjs(html);emptyMessageHtml.css("display","none");osjs(elem.get(0).firstChild).after(emptyMessageHtml);OsRefreshElement(emptyMessageHtml,jQueryHtml.get(0).innerHTML,OsGetAttributesObject(jQueryHtml.get(0)));OsExecuteNextJSONUpdate();itemElem.dequeue();});}
itemElem.queue(function(){if(html==""){itemElem.replaceWith("");}
OsExecuteNextJSONUpdate();itemElem.dequeue();});}else if(operation==3){OsRefreshElement(itemElem,jQueryHtml.get(0).innerHTML,OsGetAttributesObject(jQueryHtml.get(0)));itemElem.queue(function(){OsExecuteNextJSONUpdate();itemElem.dequeue();});}}
function OsExecuteNextJSONUpdate(){OsJSONUpdateQueue.shift();if(OsJSONUpdateQueue.length>0)
OsExecuteJSONUpdate(OsJSONUpdateQueue[0]);}
function OsGetStyleBackgroundColor(tag,selector){for(var i=0;i<document.styleSheets.length;i++){var rules=document.styleSheets[i].cssRules;if(typeof(rules)=="undefined"){rules=document.styleSheets[i].rules;tag=tag.toUpperCase();}else{tag=tag.toLowerCase();}
for(var j=0;j<rules.length;j++){if(rules[j].selectorText==tag+(selector==""?'':'.'+selector)){return rules[j].style.backgroundColor;}}}
return false;}
function OsSetTableRowOddEvenStyles(tBody,rowIndex,showHeader,oddLineStyle,evenLineStyle){rows=tBody.children();for(var i=rowIndex;i<rows.length;i++){OsSetRowOddEvenStyle(i,rows[i],showHeader,oddLineStyle,evenLineStyle);}}
function OsSetRowOddEvenStyle(rowIndex,row,showHeader,oddLineStyle,evenLineStyle){if(showHeader)
rowIndex++;var targetClass=(rowIndex%2==0)?oddLineStyle:evenLineStyle;var removeClass=(rowIndex%2==0)?evenLineStyle:oddLineStyle;var columns=osjs(row).children();if(!columns.hasClass(targetClass)){columns.addClass(targetClass);columns.removeClass(removeClass);}
return targetClass;}
function OsRedirectToURL(url){if(url.replace("://","").indexOf(":")==-1)
url=url.replace(this.location.hostname,this.location.hostname+(this.location.port!="80"?":"+this.location.port:""));this.location.assign(url);}
var OsEventHandler=function(events){this.EventHandlers={};this.BindEvent=function(name,fn){if(this.EventHandlers[name])
this.EventHandlers[name].push(fn);};this.UnbindEvent=function(name,fn){if(this.EventHandlers[name]){for(var i=0;i<this.EventHandlers[name].length;i++){if(this.EventHandlers[name][i]==fn){this.EventHandlers[name].splice(i,1);break;}}}};this.ClearEvent=function(name){if(this.EventHandlers[name])
this.EventHandlers[name]=[];};for(var i=0;i<events.length;i++){var eventName=events[i];this.EventHandlers[eventName]=[];this["Bind"+eventName]=(function(eventName){return function(fn){this.BindEvent(eventName,fn);};})(eventName);this["Unbind"+eventName]=(function(eventName){return function(fn){this.UnbindEvent(eventName,fn);};})(eventName);this["Clear"+eventName]=(function(eventName){return function(fn){this.ClearEvent(eventName,fn);};})(eventName);this["On"+eventName]=(function(eventName){return function(){for(var i=0;i<this.EventHandlers[eventName].length;i++)
this.EventHandlers[eventName][i].call(arguments);};})(eventName);}};var OsAjaxBaseBackend=function(){OsEventHandler.call(this,["BeforeSubmit","AfterSubmit","BeforeAjaxRequest","AfterAjaxRequest"]);this.CallToServer=function(form,eventTarget,ajaxEvent,bucketIds,context){this.SetUpHandlers();this.PrepareFormForSubmit(form,eventTarget,ajaxEvent,bucketIds,context);try{this.OnBeforeSubmit(form);}catch(exception){window.OsHandleException(exception,window.osjs.osErrorCodes.UserJavascriptError,'OsAjaxBaseBackend.OnBeforeSubmit');}
this.SubmitForm(form);try{this.OnAfterSubmit(form);}catch(exception){window.OsHandleException(exception,window.osjs.osErrorCodes.UserJavascriptError,'OsAjaxBaseBackend.OnAfterSubmit');}
this.TearDownFormAfterSubmit(form,eventTarget,ajaxEvent,bucketIds,context);};this.PrepareFormForSubmit=function(form,eventTarget,ajaxEvent,bucketIds,context){var eventTargetField=form.elements['__EVENTTARGET'];if(!eventTargetField){eventTargetField=form.ownerDocument.createElement('input');eventTargetField.type='hidden';eventTargetField.id='__EVENTTARGET';eventTargetField.name='__EVENTTARGET';form.appendChild(eventTargetField);}
eventTargetField.value=eventTarget;var ajaxField=form.ownerDocument.createElement('input');ajaxField.type='hidden';ajaxField.name='__AJAX';ajaxField.value=context;form.appendChild(ajaxField);if(ajaxEvent!=''){var ajaxEventField=form.ownerDocument.createElement('input');ajaxEventField.type='hidden';ajaxEventField.name='__AJAXEVENT';ajaxEventField.value=ajaxEvent;form.appendChild(ajaxEventField);if(ajaxEvent=='Change'){var originField=osjs("#"+osQueue[0]);if(originField.get(0).type=="radio"){var name=originField.get(0).name;var radios=document.getElementsByTagName("input");for(var i=0;i<radios.length;i++){var radio=radios[i];if(radio.type=="radio"&&radio.name==name){osjs(radio).data('ajaxSentValue',OsGetElementValue(radio));}}}else{originField.data('ajaxSentValue',OsGetElementValue(originField.get(0)));}}}};this.TearDownFormAfterSubmit=function(form,eventTarget,ajaxEvent,bucketIds,context){form.removeChild(form.lastChild);if(ajaxEvent!=''){form.removeChild(form.lastChild);}
form.elements['__EVENTTARGET'].value='';};this.ShowError=function(html){clearInterval(osOnChangeCheckInterval);var lowerHtml=html.toLowerCase();var head=html.substring(lowerHtml.indexOf("<head>")+6,lowerHtml.indexOf("</head>"));var body=html.substring(lowerHtml.indexOf("<body>")+6,lowerHtml.indexOf("</body>"));osjs(document.body.previousSibling).html(head);osjs(document.body).html(body);this.EndRequestAndCancelPendingRequests();};this.ConnectionError=function(req){var err=new Error("The connection to the server was reset"+((req&&req.statusText!=null)?". Server returned status "+req.statusText:""));OsHandleException(err,osjs.osErrorCodes.ConnectionError,"OsAjaxBackend.ConnectionError");this.EndRequestAndCancelPendingRequests();};this.EndRequest=function(){this.RemoveHandlers();if(OsIsIE()){OsIeCleanProgressBar();}};this.EndRequestAndCancelPendingRequests=function(){osQueue=new Array();this.EndRequest();};this.SetUpHandlers=function(){window.onkeypress=(function(thisObj){return function(e){(function(){this.OnKeyPress(e);}).call(thisObj);};})(this);document.onstop=(function(thisObj){return function(){(function(){this.OnStopHandler();}).call(thisObj);};})(this);};this.RemoveHandlers=function(){window.onkeypress=null;document.onstop=null;};this.OnKeyPress=function(e){var kC=(window.event)?event.keyCode:e.keyCode;var Esc=(window.event)?27:e.DOM_VK_ESCAPE
if(kC==Esc)
this.OnStopHandler();};this.OnStopHandler=function(){this.stopped=true;this.EndRequestAndCancelPendingRequests();};this.RequestHasFinished=function(text){return(this.stopped||text.indexOf("\"js\":[\"OsEndRequest()\"]")!=-1||text.indexOf("\"__RedirectToURL\":")!=-1);};};var OsAjaxBackendIFrame=function(){OsAjaxBaseBackend.call(this);this.base={PrepareFormForSubmit:(function(thisObj,oldPrepareFormForSubmit){return function(form,eventTarget,ajaxEvent,bucketIds,context){return oldPrepareFormForSubmit.call(thisObj,form,eventTarget,ajaxEvent,bucketIds,context);};})(this,this.PrepareFormForSubmit),TearDownFormAfterSubmit:(function(thisObj,oldTearDownFormAfterSubmit){return function(form,eventTarget,ajaxEvent,bucketIds,context){return oldTearDownFormAfterSubmit.call(thisObj,form,eventTarget,ajaxEvent,bucketIds,context);};})(this,this.TearDownFormAfterSubmit),EndRequest:(function(thisObj,oldEndRequest){return function(){return oldEndRequest.call(thisObj);};})(this,this.EndRequest),ConnectionError:(function(thisObj,oldConnectionError){return function(){return oldConnectionError.call(thisObj);};})(this,this.ConnectionError),RequestHasFinished:(function(thisObj,oldRequestHasFinished){return function(text){return oldRequestHasFinished.call(thisObj,text);};})(this,this.RequestHasFinished)};this.stopped=false;this.IFrame=null;this.PrepareFormForSubmit=function(form,eventTarget,ajaxEvent,bucketIds,context){this.base.PrepareFormForSubmit(form,eventTarget,ajaxEvent,bucketIds,context);this.IFrame=this.CreateIFrame();var CheckConnectionErrorFunction=(function(thisObj){return function(text){(function(){this.CheckConnectionError(text);}).call(thisObj);};})(this);var CheckHTMLResponseFunction=(function(thisObj){return function(){return(function(){return this.CheckForHTMLResponse();}).call(thisObj);};})(this);this.IFrame.onreadystatechange=function(){if(this.readyState=="complete"){var text="";try{if(CheckHTMLResponseFunction())
return;text=this.contentWindow.document.documentElement.innerHTML;}catch(e){}
CheckConnectionErrorFunction(text);try{this.parentNode.removeChild(this);}catch(e){}}};form.target=this.IFrame.name;};this.CheckConnectionError=function(text){if(!this.base.RequestHasFinished(text)){this.base.ConnectionError();}};this.SubmitForm=function(form){var disabledFileInputs=[];for(var i=0;i<form.elements.length;i++){var element=form.elements[i];if(element.type=="file"&&!element.disabled){element.disabled=true;disabledFileInputs.push(element);}}
this.OnBeforeAjaxRequest();form.submit();for(var i=0;i<disabledFileInputs.length;i++){disabledFileInputs[i].disabled=false;}
disabledFileInputs=null;var CheckHTMLResponseFunction=(function(thisObj){return function(){(function(){this.CheckForHTMLResponse();}).call(thisObj);};})(this);};this.TearDownFormAfterSubmit=function(form,eventTarget,ajaxEvent,bucketIds,context){form.target='';this.base.TearDownFormAfterSubmit(form,eventTarget,ajaxEvent,bucketIds,context);};this.EndRequest=function(){this.base.EndRequest();this.OnAfterAjaxRequest();};this.GenerateGuid=function()
{var result,i,j;result='';for(j=0;j<32;j++){if(j==8||j==12||j==16||j==20)
result=result+'-';i=Math.floor(Math.random()*16).toString(16).toUpperCase();result=result+i;}
return result};this.CreateIFrame=function(parentElement){if(!parentElement)
parentElement=document.body;if(parentElement.lastChild.id.indexOf('OSAJAXIFrame')==0)
parentElement.removeChild(parentElement.lastChild);var iframe=parentElement.ownerDocument.createElement("iframe");iframe.style.border='0px';iframe.style.width='0px';iframe.style.height='0px';parentElement.appendChild(iframe);iframe.doc=null;if(iframe.contentDocument)
iframe.doc=iframe.contentDocument;else if(iframe.contentWindow)
iframe.doc=iframe.contentWindow.document;else if(iframe.document)
iframe.doc=iframe.document;if(iframe.doc==null)
throw"Document not found, append the parent element to the DOM before creating the IFrame";iframe.doc.open();iframe.doc.close();var uid=this.GenerateGuid();var name='OSAJAXIFrame'+uid;iframe.setAttribute('id',name);iframe.setAttribute('name',name);if(iframe.contentWindow)
iframe.contentWindow.name=name;return iframe;};this.CheckForHTMLResponse=function(){if(this.IFrame==null)
return false;var html,body;if(this.IFrame.contentDocument&&this.IFrame.contentDocument.body){html="<html>"+this.IFrame.contentDocument.documentElement.innerHTML+"</html>";body=this.IFrame.contentDocument.body;}else if(this.IFrame.contentWindow.document&&this.IFrame.contentWindow.document.body){html="<html>"+this.IFrame.contentWindow.document.documentElement.innerHTML+"</html>";body=this.IFrame.contentWindow.document.body;}
if(html!=null&&html!=""&&body!=null&&body.hasChildNodes()){this.ShowError(html);return true;}
return false;};};var OsAjaxBackendXHR=function(){OsAjaxBaseBackend.call(this);this.base={EndRequest:(function(thisObj,oldEndRequest){return function(){return oldEndRequest.call(thisObj);};})(this,this.EndRequest),RequestHasFinished:(function(thisObj,oldRequestHasFinished){return function(text){return oldRequestHasFinished.call(thisObj,text);};})(this,this.RequestHasFinished)};this.OPEN="<script language='javascript'>",this.CLOSE="</script>",this.PADDING=/^(<!-- OSPADDING( [A-Z]*)? -->)?$/,this.XHR=null,this.PartialResponseInterval=null,this.HasDetectedErrorResponse=false,this.LastProcessedResponseLength=0,this.LastProcessedScriptCloseIndex=0,this.stopped=false;this.SubmitForm=function(form){var ProcessPartialResponseFunction=(function(thisObj){return function(){(function(){this.ProcessPartialResponse(this.XHR.responseText);}).call(thisObj);};})(this);var onLoading=(function(thisObj,ProcessPartialResponseFunction){return function(req){(function(){this.XHR=req.xmlHttpRequest;this.HasDetectedErrorResponse=false;this.LastProcessedResponseLength=0;this.LastProcessedScriptCloseIndex=0;req.xmlHttpRequest.overrideMimeType('text/xml; charset:'+document.characterSet);this.PartialResponseInterval=setInterval(ProcessPartialResponseFunction,50);this.OnBeforeAjaxRequest();}).call(thisObj);};})(this,ProcessPartialResponseFunction);var onSuccess=(function(thisObj){return function(req){(function(){clearInterval(this.PartialResponseInterval);this.ProcessFinalResponse(this.XHR.responseText);}).call(thisObj);};})(this);var onError=(function(thisObj){return function(req){(function(){clearInterval(this.PartialResponseInterval);if(!this.stopped)
this.ConnectionError(req);this.stopped=false;}).call(thisObj);};})(this);window.onbeforeunload=function(){osAjaxBackend.stopped=true;};OsAjaxBackendXHR.AjaxRequest.submit(form,{'onLoading':onLoading,'onSuccess':onSuccess,'onError':onError});};this.EndRequest=function(){this.base.EndRequest();this.OnAfterAjaxRequest();},this.ProcessPartialResponse=function(text){if(this.HasDetectedErrorResponse)
return;if(text.length>this.LastProcessedResponseLength){var lastScriptCloseIndex=text.lastIndexOf(this.CLOSE);if(lastScriptCloseIndex==-1||lastScriptCloseIndex+this.CLOSE.length<=this.LastProcessedScriptCloseIndex)
return;while(!this.HasDetectedErrorResponse&&this.LastProcessedScriptCloseIndex<lastScriptCloseIndex)
this.ProcessNextScriptBlock(text);this.LastProcessedResponseLength=text.length;}};this.ProcessNextScriptBlock=function(text){var firstScriptOpenIndex=text.indexOf(this.OPEN,this.LastProcessedScriptCloseIndex);if(firstScriptOpenIndex==-1){this.HasDetectedErrorResponse=true;return;}
if(!this.PADDING.test(text.substring(this.LastProcessedScriptCloseIndex,firstScriptOpenIndex))){this.HasDetectedErrorResponse=true;return;}
var firstScriptCloseIndex=text.indexOf(this.CLOSE,firstScriptOpenIndex+this.OPEN.length);var scriptContents=text.substring(firstScriptOpenIndex+this.OPEN.length,firstScriptCloseIndex);this.LastProcessedScriptCloseIndex=firstScriptCloseIndex+this.CLOSE.length;eval(scriptContents);};this.ProcessFinalResponse=function(text){this.ProcessPartialResponse(text);var hasFinalPadding=this.PADDING.test(text.substr(this.LastProcessedScriptCloseIndex));if((this.HasDetectedErrorResponse||!hasFinalPadding)&&!this.stopped){var htmlIndex=this.XHR.responseText.indexOf('<HTML>');if(htmlIndex==-1&&!this.RequestHasFinished(text))
this.ConnectionError();else
this.ShowError(this.XHR.responseText.substr(htmlIndex));}else if(!this.RequestHasFinished(text)){this.ConnectionError();}
this.stopped=false;};};function OsExecuteCallToServer(origin,eventTarget,ajaxEvent,bucketIds,context){if(origin!=''&&document.getElementById(origin)==null){OsExecuteNextInQueue();return;}
if(OsIsIE()&&origin!=''&&document.getElementById(origin).nodeName=="A"){osFocusBackend.ClearFocusedElement();}
if(ajaxEvent=="Change"){var element=osjs("#"+origin);var previousValue=element.data('ajaxSentValue');var currentValue=OsGetElementValue(element.get(0));if(previousValue!=null){if(OsIsEqual(currentValue,previousValue)){OsExecuteNextInQueue();return;}}}
osLastOrigin=origin;var form=document.forms[0];try{osAjaxBackend.CallToServer(form,eventTarget,ajaxEvent,bucketIds,context);}catch(exception){if(window.OsHandleSystemException)window.OsHandleSystemException(exception,"OsExecuteCallToServer");}}
OsAjaxBackendXHR.AjaxRequest=function(){var req=new Object();req.timeout=null;req.generateUniqueUrl=true;req.url=window.location.href;req.method="GET";req.async=true;req.username=null;req.password=null;req.parameters=new Object();req.requestIndex=OsAjaxBackendXHR.AjaxRequest.numAjaxRequests++;req.responseReceived=false;req.groupName=null;req.queryString="";req.responseText=null;req.responseXML=null;req.status=null;req.statusText=null;req.aborted=false;req.xmlHttpRequest=null;req.onTimeout=null;req.onLoading=null;req.onLoaded=null;req.onInteractive=null;req.onComplete=null;req.onSuccess=null;req.onError=null;req.onGroupBegin=null;req.onGroupEnd=null;req.xmlHttpRequest=OsAjaxBackendXHR.AjaxRequest.getXmlHttpRequest();if(req.xmlHttpRequest==null){return null;}
req.xmlHttpRequest.onreadystatechange=function(){if(req==null||req.xmlHttpRequest==null){return;}
if(req.xmlHttpRequest.readyState==1){req.onLoadingInternal(req);}
if(req.xmlHttpRequest.readyState==2){req.onLoadedInternal(req);}
if(req.xmlHttpRequest.readyState==3){req.onInteractiveInternal(req);}
if(req.xmlHttpRequest.readyState==4){req.onCompleteInternal(req);}};req.onLoadingInternalHandled=false;req.onLoadedInternalHandled=false;req.onInteractiveInternalHandled=false;req.onCompleteInternalHandled=false;req.onLoadingInternal=function(){if(req.onLoadingInternalHandled){return;}
OsAjaxBackendXHR.AjaxRequest.numActiveAjaxRequests++;if(OsAjaxBackendXHR.AjaxRequest.numActiveAjaxRequests==1&&typeof(window['AjaxRequestBegin'])=="function"){AjaxRequestBegin();}
if(req.groupName!=null){if(typeof(OsAjaxBackendXHR.AjaxRequest.numActiveAjaxGroupRequests[req.groupName])=="undefined"){OsAjaxBackendXHR.AjaxRequest.numActiveAjaxGroupRequests[req.groupName]=0;}
OsAjaxBackendXHR.AjaxRequest.numActiveAjaxGroupRequests[req.groupName]++;if(OsAjaxBackendXHR.AjaxRequest.numActiveAjaxGroupRequests[req.groupName]==1&&typeof(req.onGroupBegin)=="function"){req.onGroupBegin(req.groupName);}}
if(typeof(req.onLoading)=="function"){req.onLoading(req);}
req.onLoadingInternalHandled=true;};req.onLoadedInternal=function(){if(req.onLoadedInternalHandled){return;}
if(typeof(req.onLoaded)=="function"){req.onLoaded(req);}
req.onLoadedInternalHandled=true;};req.onInteractiveInternal=function(){if(req.onInteractiveInternalHandled){return;}
if(typeof(req.onInteractive)=="function"){req.onInteractive(req);}
req.onInteractiveInternalHandled=true;};req.onCompleteInternal=function(){if(req.onCompleteInternalHandled||req.aborted){return;}
req.onCompleteInternalHandled=true;OsAjaxBackendXHR.AjaxRequest.numActiveAjaxRequests--;if(OsAjaxBackendXHR.AjaxRequest.numActiveAjaxRequests==0&&typeof(window['AjaxRequestEnd'])=="function"){AjaxRequestEnd(req.groupName);}
if(req.groupName!=null){OsAjaxBackendXHR.AjaxRequest.numActiveAjaxGroupRequests[req.groupName]--;if(OsAjaxBackendXHR.AjaxRequest.numActiveAjaxGroupRequests[req.groupName]==0&&typeof(req.onGroupEnd)=="function"){req.onGroupEnd(req.groupName);}}
req.responseReceived=true;try{req.status=req.xmlHttpRequest.status;req.statusText=req.xmlHttpRequest.statusText;req.responseText=req.xmlHttpRequest.responseText;req.responseXML=req.xmlHttpRequest.responseXML;}catch(xhrException){}
if(typeof(req.onComplete)=="function"){req.onComplete(req);}
if(req.status==200&&typeof(req.onSuccess)=="function"){req.onSuccess(req);}
else if(typeof(req.onError)=="function"){req.onError(req);}
delete req.xmlHttpRequest['onreadystatechange'];req.xmlHttpRequest=null;};req.onTimeoutInternal=function(){if(req!=null&&req.xmlHttpRequest!=null&&!req.onCompleteInternalHandled){req.aborted=true;req.xmlHttpRequest.abort();OsAjaxBackendXHR.AjaxRequest.numActiveAjaxRequests--;if(OsAjaxBackendXHR.AjaxRequest.numActiveAjaxRequests==0&&typeof(window['AjaxRequestEnd'])=="function"){AjaxRequestEnd(req.groupName);}
if(req.groupName!=null){OsAjaxBackendXHR.AjaxRequest.numActiveAjaxGroupRequests[req.groupName]--;if(OsAjaxBackendXHR.AjaxRequest.numActiveAjaxGroupRequests[req.groupName]==0&&typeof(req.onGroupEnd)=="function"){req.onGroupEnd(req.groupName);}}
if(typeof(req.onTimeout)=="function"){req.onTimeout(req);}
delete req.xmlHttpRequest['onreadystatechange'];req.xmlHttpRequest=null;}};req.process=function(){if(req.xmlHttpRequest!=null){if(req.generateUniqueUrl&&req.method=="GET"){req.parameters["AjaxRequestUniqueId"]=new Date().getTime()+""+req.requestIndex;}
var content=null;for(var i in req.parameters){if(req.queryString.length>0){req.queryString+="&";}
req.queryString+=encodeURIComponent(i)+"="+encodeURIComponent(req.parameters[i]);}
if(req.method=="GET"){if(req.queryString.length>0){req.url+=((req.url.indexOf("?")>-1)?"&":"?")+req.queryString;}}
req.xmlHttpRequest.open(req.method,req.url,req.async,req.username,req.password);if(req.method=="POST"){if(typeof(req.xmlHttpRequest.setRequestHeader)!="undefined"){req.xmlHttpRequest.setRequestHeader('Content-type','application/x-www-form-urlencoded');}
content=req.queryString;}
if(req.timeout>0){setTimeout(req.onTimeoutInternal,req.timeout);}
req.xmlHttpRequest.send(content);}};req.handleArguments=function(args){for(var i in args){if(typeof(req[i])=="undefined"){req.parameters[i]=args[i];}
else{req[i]=args[i];}}};req.getAllResponseHeaders=function(){if(req.xmlHttpRequest!=null){if(req.responseReceived){return req.xmlHttpRequest.getAllResponseHeaders();}
if(window.OsHandleSystemException)window.OsHandleSystemException(new Error("Cannot getAllResponseHeaders because a response has not yet been received"),"OsAjaxBackendXHR.AjaxRequest.req.getAllReponseHeaders");}};req.getResponseHeader=function(headerName){if(req.xmlHttpRequest!=null){if(req.responseReceived){return req.xmlHttpRequest.getResponseHeader(headerName);}
if(window.OsHandleSystemException)window.OsHandleSystemException(new Error("Cannot getResponseHeader because a response has not yet been received"),"OsAjaxBackendXHR.AjaxRequest.req.getResponseHeader");}};return req;};OsAjaxBackendXHR.AjaxRequest.getXmlHttpRequest=function(){if(window.XMLHttpRequest){return new XMLHttpRequest();}
else if(window.ActiveXObject){}
else{return null;}};OsAjaxBackendXHR.AjaxRequest.isActive=function(){return(OsAjaxBackendXHR.AjaxRequest.numActiveAjaxRequests>0);};OsAjaxBackendXHR.AjaxRequest.get=function(args){OsAjaxBackendXHR.AjaxRequest.doRequest("GET",args);};OsAjaxBackendXHR.AjaxRequest.post=function(args){OsAjaxBackendXHR.AjaxRequest.doRequest("POST",args);};OsAjaxBackendXHR.AjaxRequest.doRequest=function(method,args){if(typeof(args)!="undefined"&&args!=null){var myRequest=new OsAjaxBackendXHR.AjaxRequest();myRequest.method=method;myRequest.handleArguments(args);myRequest.process();}};OsAjaxBackendXHR.AjaxRequest.submit=function(theform,args){var myRequest=new OsAjaxBackendXHR.AjaxRequest();if(myRequest==null){return false;}
var serializedForm=OsAjaxBackendXHR.AjaxRequest.serializeForm(theform);myRequest.method=theform.method.toUpperCase();myRequest.url=theform.action;myRequest.handleArguments(args);myRequest.queryString=serializedForm;myRequest.process();return true;};OsAjaxBackendXHR.AjaxRequest.serializeForm=function(theform){var els=theform.elements;var len=els.length;var queryString="";this.addField=function(name,value){if(queryString.length>0){queryString+="&";}
queryString+=encodeURIComponent(name)+"="+encodeURIComponent(value);};for(var i=0;i<len;i++){var el=els[i];if(!el.disabled){switch(el.type){case'text':case'password':case'hidden':this.addField(el.name,el.value);break;case'textarea':var value=el.value;value=value.replace(new RegExp("\n","g"),"\r\n");this.addField(el.name,value);break;case'select-one':if(el.selectedIndex>=0){this.addField(el.name,el.options[el.selectedIndex].value);}
break;case'select-multiple':for(var j=0;j<el.options.length;j++){if(el.options[j].selected){this.addField(el.name,el.options[j].value);}}
break;case'checkbox':case'radio':if(el.checked){this.addField(el.name,el.value);}
break;}}}
return queryString;};OsAjaxBackendXHR.AjaxRequest.numActiveAjaxRequests=0;OsAjaxBackendXHR.AjaxRequest.numActiveAjaxGroupRequests=new Object();OsAjaxBackendXHR.AjaxRequest.numAjaxRequests=0;