var json_url,json_nosessionurl,Session_ID;function AJAX_New(){var e=null;return window.XMLHttpRequest?e=new XMLHttpRequest:window.ActiveXObject&&(e=new ActiveXObject("Microsoft.XMLHTTP")),e}function AJAX_Initialize(){var e,n;"string"==typeof json_nosessionurl&&"string"==typeof Session_ID||(-1==(e=json_url.toLowerCase().indexOf("session_id="))?(json_nosessionurl=json_url,n=""):(-1==(session_end=json_url.indexOf("&",e+11))&&(session_end=json_url.length),n=json_url.substring(e+11,session_end),json_nosessionurl=json_url.slice(0,e)+json_url.slice(session_end+1)),void 0===Session_ID&&(Session_ID=n))}function AJAX_Invalid_Session(e,n,t){n.location.reload()}function AJAX_Append_SessionParameters(e,n){var t;return t="Session_Type="+encodeURIComponent(n),"admin"==n&&void 0!==Session_ID&&(t+="&Session_ID="+encodeURIComponent(Session_ID)),"string"!=typeof e||0==e.length?t:e+"&"+t}function AJAX_Append_SessionParameters_JSON(e,n){return"admin"==((e=e||new Object).Session_Type=n)&&void 0!==Session_ID&&(e.Session_ID=Session_ID),e}function AJAX_Call_Module(e,n,t,o,r,i){return i?i.AJAX_Call_Module(e,n,t,o,r):(AJAX_Initialize(),AJAX_Call_LowLevel(null,e,"application/x-www-form-urlencoded",AJAX_Append_SessionParameters(r,n),"Store_Code="+AJAX_CharsetEncodeAttribute(Store_Code)+"&Function=Module&Module_Code="+AJAX_CharsetEncodeAttribute(t)+"&Module_Function="+AJAX_CharsetEncodeAttribute(o),function(e){var n;return(n=new Object).success=0,n.error_code="MER-AJX-00002",n.error_message="Miva Merchant returned an invalid response.\nModule: "+t+"\nFunction: "+o+"\nResponse: "+e.responseText,n}))}function AJAX_Call_Module_JSON(e,n,t,o,r,i){return i?i.AJAX_Call_Module_JSON(e,n,t,o,r):(AJAX_Initialize(),AJAX_Call_LowLevel(null,e,"application/json",JSON.stringify(AJAX_Append_SessionParameters_JSON(r,n)),"Store_Code="+AJAX_CharsetEncodeAttribute(Store_Code)+"&Function=Module&Module_Code="+AJAX_CharsetEncodeAttribute(t)+"&Module_Function="+AJAX_CharsetEncodeAttribute(o),function(e){var n;return(n=new Object).success=0,n.error_code="MER-AJX-00013",n.error_message="Miva Merchant returned an invalid response.\nFunction: "+o+"\nResponse: "+e.responseText,n}))}function AJAX_Call_Module_FieldList(e,n,t,o,r,i,u){var a;for(a=0;a<i.length;a++)r+=(r.length?"&":"")+encodeURIComponent(i[a].name)+"="+(i[a].hasOwnProperty("encoded_value")?i[a].encoded_value:encodeURIComponent(i[a].value));return AJAX_Call_Module(e,n,t,o,r,u)}function AJAX_Call_Module_JSON_FieldList(e,n,t,o,r,i,u){var a,s;for(r=r||new Object,a=0,s=i.length;a<s;a++)r[i[a].name]=i[a].value;return AJAX_Call_Module_JSON(e,n,t,o,r,u)}function AJAX_Call_Module_WithFile(e,n,t,o,r,i,u,a,s){var l;return s?s.AJAX_Call_Module_WithFile(e,n,t,o,r,i,u,a):(AJAX_Initialize(),a&&window.FormData?AJAX_Call_Module_WithFile_FormData(e,n,t,o,r,i,a):((l=new Object).success=0,l.error_code="MER-AJX-00009",l.error_message="This browser does not support file upload with the provided parameters",e.Complete(l),void(window.Modal_Resize&&Modal_Resize())))}function AJAX_Call_Module_WithFile_FormData(n,e,t,o,r,i,u){var a,s,l;for(s in a=new FormData,r)a.append(s,r[s]);return a.append("Session_Type",e),"admin"===e&&void 0!==Session_ID&&a.append("Session_ID",Session_ID),a.append(i,u),null==(l=AJAX_New())?null:(n.Initialize(l,!0),l.upload.addEventListener("progress",function(e){n.Progress((e.loaded/e.total*100).toFixed(0))},!1),l.upload.addEventListener("load",function(e){n.Progress(100)},!1),AJAX_Call_LowLevel(l,function(e){n.Complete(e)},null,a,"Store_Code="+AJAX_CharsetEncodeAttribute(Store_Code)+"&Function=Module&Module_Code="+AJAX_CharsetEncodeAttribute(t)+"&Module_Function="+AJAX_CharsetEncodeAttribute(o),function(e){var n;return(n=new Object).success=0,n.error_code="MER-AJX-00010",n.error_message="Miva Merchant returned an invalid response.\nFunction: "+o+"\nResponse: "+e.responseText,n}))}function AJAX_Call_Domain(e,n,t,o,r){return r?r.AJAX_Call_Domain(e,n,t,o):(AJAX_Initialize(),AJAX_Call_LowLevel(null,e,"application/x-www-form-urlencoded",AJAX_Append_SessionParameters(o,n),"Function="+AJAX_CharsetEncodeAttribute(t),function(e){var n;return(n=new Object).success=0,n.error_code="MER-AJX-00008",n.error_message="Miva Merchant returned an invalid response.\nFunction: "+t+"\nResponse: "+e.responseText,n}))}function AJAX_Call_Domain_JSON(e,n,t,o,r){return r?r.AJAX_Call_Domain_JSON(e,n,t,o):(AJAX_Initialize(),AJAX_Call_LowLevel(null,e,"application/json",JSON.stringify(AJAX_Append_SessionParameters_JSON(o,n)),"Function="+AJAX_CharsetEncodeAttribute(t),function(e){var n;return(n=new Object).success=0,n.error_code="MER-AJX-00014",n.error_message="Miva Merchant returned an invalid response.\nFunction: "+t+"\nResponse: "+e.responseText,n}))}function AJAX_Call_Domain_FieldList(e,n,t,o,r,i){var u;for(u=0;u<r.length;u++)o+=(o.length?"&":"")+encodeURIComponent(r[u].name)+"="+(r[u].hasOwnProperty("encoded_value")?r[u].encoded_value:encodeURIComponent(r[u].value));return AJAX_Call_Domain(e,n,t,o,i)}function AJAX_Call(e,n,t,o,r){return r?r.AJAX_Call(e,n,t,o):AJAX_Call_WithStoreCode(e,n,Store_Code,t,o,r)}function AJAX_Call_WithStoreCode(e,n,t,o,r,i){return i?i.AJAX_Call_WithStoreCode(e,n,t,o,r):(AJAX_Initialize(),AJAX_Call_LowLevel(null,e,"application/x-www-form-urlencoded",AJAX_Append_SessionParameters(r,n),"Store_Code="+AJAX_CharsetEncodeAttribute(t)+"&Function="+AJAX_CharsetEncodeAttribute(o),function(e){var n;return(n=new Object).success=0,n.error_code="MER-AJX-00012",n.error_message="Miva Merchant returned an invalid response.\nFunction: "+o+"\nResponse: "+e.responseText,n}))}function AJAX_Call_JSON(e,n,t,o,r){return r?r.AJAX_Call_JSON(e,n,t,o):(AJAX_Initialize(),AJAX_Call_LowLevel(null,e,"application/json",JSON.stringify(AJAX_Append_SessionParameters_JSON(o,n)),"Store_Code="+AJAX_CharsetEncodeAttribute(Store_Code)+"&Function="+AJAX_CharsetEncodeAttribute(t),function(e){var n;return(n=new Object).success=0,n.error_code="MER-AJX-00015",n.error_message="Miva Merchant returned an invalid response.\nFunction: "+t+"\nResponse: "+e.responseText,n}))}function AJAX_Call_FieldList(e,n,t,o,r,i){var u;for(u=0;u<r.length;u++)o+=(o.length?"&":"")+encodeURIComponent(r[u].name)+"="+(r[u].hasOwnProperty("encoded_value")?r[u].encoded_value:encodeURIComponent(r[u].value));return AJAX_Call(e,n,t,o,i)}function AJAX_Call_JSON_FieldList(e,n,t,o,r,i){var u,a;for(o=o||new Object,u=0,a=r.length;u<a;u++)o[r[u].name]=r[u].value;return AJAX_Call_JSON(e,n,t,o,i)}function AJAX_Call_WithFile(e,n,t,o,r,i,u,a){var s;return a?a.AJAX_Call_WithFile(e,n,t,o,r,i,u):(AJAX_Initialize(),u&&window.FormData?AJAX_Call_WithFile_FormData(e,n,t,o,r,u):((s=new Object).success=0,s.error_code="MER-AJX-00006",s.error_message="This browser does not support file upload with the provided parameters",e.Complete(s),void(window.Modal_Resize&&Modal_Resize())))}function AJAX_Call_WithFile_FormData(n,e,t,o,r,i){var u,a,s;for(a in u=new FormData,o)"boolean"==typeof o[a]?u.append(a,o[a]?"1":"0"):Array.isArray(o[a])?u.append(a,PackArray(o[a])):u.append(a,o[a]);return u.append("Session_Type",e),"admin"===e&&void 0!==Session_ID&&u.append("Session_ID",Session_ID),u.append(r,i),null==(s=AJAX_New())?null:(n.Initialize(s,!0),s.upload.addEventListener("progress",function(e){n.Progress((e.loaded/e.total*100).toFixed(0))},!1),s.upload.addEventListener("load",function(e){n.Progress(100)},!1),AJAX_Call_LowLevel(s,function(e){n.Complete(e)},null,u,"Store_Code="+AJAX_CharsetEncodeAttribute(Store_Code)+"&Function="+AJAX_CharsetEncodeAttribute(t),function(e){var n;return(n=new Object).success=0,n.error_code="MER-AJX-00003",n.error_message="Miva Merchant returned an invalid response.\nFunction: "+t+"\nResponse: "+e.responseText,n}))}function AJAX_Call_WithFileList_FormData(n,e,t,o,r){var i,u,a,s,l;for(s in a=new FormData,o)a.append(s,o[s]);for(a.append("Session_Type",e),"admin"===e&&void 0!==Session_ID&&a.append("Session_ID",Session_ID),i=0,u=r.length;i<u;i++)a.append(r[i].name,r[i].file);return null==(l=AJAX_New())?null:(n.Initialize(l,!0),l.upload.addEventListener("progress",function(e){n.Progress((e.loaded/e.total*100).toFixed(0))},!1),l.upload.addEventListener("load",function(e){n.Progress(100)},!1),AJAX_Call_LowLevel(l,function(e){n.Complete(e)},null,a,"Store_Code="+AJAX_CharsetEncodeAttribute(Store_Code)+"&Function="+AJAX_CharsetEncodeAttribute(t),function(e){var n;return(n=new Object).success=0,n.error_code="MER-AJX-00003",n.error_message="Miva Merchant returned an invalid response.\nFunction: "+t+"\nResponse: "+e.responseText,n}))}function AJAX_Call_LowLevel(e,n,t,o,r,i){return null==e&&null==(e=AJAX_New())?null:(AJAX_Call_Initialize(e,n,t,r,i),e.send(o),e)}function AJAX_Call_Initialize(http_request,callback,content_type,uri,error_response){http_request.open("POST",json_nosessionurl+uri,!0),http_request.setRequestHeader("If-Modified-Since","Sat, 1 Jan 2000 00:00:00 GMT"),content_type&&http_request.setRequestHeader("Content-Type",content_type),http_request.onreadystatechange=function(){var response=null,content_length=null,content_encoding=null;if(4==http_request.readyState){if(200==http_request.status){if(void 0!==http_request.getResponseHeader&&(content_length=http_request.getResponseHeader("Content-Length"),content_encoding=http_request.getResponseHeader("Content-Encoding")),content_length&&content_length!=http_request.responseText.length&&(null==content_encoding||"identity"==content_encoding))return;try{response="undefined"!=typeof JSON&&void 0!==JSON.parse?JSON.parse(http_request.responseText):eval("("+http_request.responseText+")")}catch(e){response=error_response(http_request)}if("session_timeout"==response.error_code||"too_many_sessions"==response.error_code)return void AJAX_Invalid_Session(response,window,callback);callback(response),window.Modal_Resize&&Modal_Resize()}http_request=null}}}function AJAX_AutoComplete_Initialize(e,n,t,o,r){AJAX_Initialize(),AJAX_Call_Initialize(e,n,"application/x-www-form-urlencoded","Store_Code="+AJAX_CharsetEncodeAttribute(Store_Code)+"&Function="+AJAX_CharsetEncodeAttribute(o),function(e){var n;return(n=new Object).success=0,n.error_code="MER-AJX-00007",n.error_message="Miva Merchant returned an invalid response.\nFunction: "+o+"\nResponse: "+e.responseText,n}),e.autocomplete_content=AJAX_Append_SessionParameters(r,t)}function AJAX_AutoComplete_Execute(e){e.send(e.autocomplete_content)}function PackArray(e){var n,t="";if(null==e||0==e.length)return"";for(n=0;n<e.length-1;n++)t+=encodeURIComponent(e[n])+"|";return t+=encodeURIComponent(e[n])}function EncodeArray(e){return encodeURIComponent(PackArray(e))}function PackTwoDimensionalArray(e){var n,t,o="";if(null==e||0==e.length)return"";for(n=0;n<e.length;n++){for(t=0;t<e[n].length;t++)o+=encodeURIComponent(e[n][t]),t<e[n].length-1&&(o+="%7C");n<e.length-1&&(o+="|")}return o}function EncodeTwoDimensionalArray(e){return encodeURIComponent(PackTwoDimensionalArray(e))}function Base64ToArrayBuffer(e){var n,t,o,r;for(t=(o=atob(e)).length,r=new Uint8Array(t),n=0;n<t;n++)r[n]=o.charCodeAt(n);return r.buffer}function ArrayBufferToBase64(e){var n,t,o,r;for(o=new Array,n=0,t=(r=new Uint8Array(e)).byteLength;n<t;n++)o[n]=String.fromCharCode(r[n]);return btoa(o.join(""))}function AddEvent(n,t,o){try{return n.addEventListener(t,o,!1),!0}catch(e){try{return n.attachEvent("on"+t,o)}catch(e){return!1}}}function RemoveEvent(n,t,o){try{return n.removeEventListener(t,o,!1),!0}catch(e){try{return n.detachEvent("on"+t,o)}catch(e){return!1}}}function FireEvent(e,n){var t;try{t=new Event(n,{bubbles:!0,cancelable:!0}),e.dispatchEvent(t)}catch(t){(t=document.createEvent("HTMLEvents")).initEvent(n,!0,!0),t.eventName=n,window.dispatchEvent(t)}}function AJAX_CharsetEncodeAttribute(e){return AJAX_isUnicode()?encodeURIComponent(e):"function"==typeof escape?escape(e).replace("+","%2B").replace("/","%2F").replace("@","%40"):e}function AJAX_isUnicode(){return 0==(document.characterSet||document.charset||"").search("UTF")}function AJAX_ThreadPool(e){this.threads=e,this.active_count=0,this.running=!1,this.queue=new Array,this.running_queue=new Array}AJAX_ThreadPool.prototype.AJAX_Call_Module=function(t,e,n,o,r){var i,u,a=this;u=function(e){var n;t(e),a.ThreadComplete(),-1!=(n=arrayIndexOf(a.running_queue,i))&&a.running_queue.splice(n,1)},i=function(){a.running_queue.push(i),i.http_request=AJAX_Call_Module(u,e,n,o,r)},this.queue.push(i)},AJAX_ThreadPool.prototype.AJAX_Call_Module_JSON=function(t,e,n,o,r){var i,u,a=this;u=function(e){var n;t(e),a.ThreadComplete(),-1!=(n=arrayIndexOf(a.running_queue,i))&&a.running_queue.splice(n,1)},i=function(){a.running_queue.push(i),i.http_request=AJAX_Call_Module_JSON(u,e,n,o,r)},this.queue.push(i)},AJAX_ThreadPool.prototype.AJAX_Call_Module_WithFile=function(t,e,n,o,r,i,u,a){var s,l=this;t.AJAX_ThreadPool_OriginalComplete=t.Complete,t.Complete=function(e){var n;t.AJAX_ThreadPool_OriginalComplete(e),l.ThreadComplete(),-1!=(n=arrayIndexOf(l.running_queue,s))&&l.running_queue.splice(n,1),t.Complete=t.AJAX_ThreadPool_OriginalComplete,t.AJAX_ThreadPool_OriginalComplete=null},s=function(){l.running_queue.push(s),s.http_request=AJAX_Call_Module_WithFile(t,e,n,o,r,i,u,a)},this.queue.push(s)},AJAX_ThreadPool.prototype.AJAX_Call_Domain=function(t,e,n,o){var r,i,u=this;i=function(e){var n;t(e),u.ThreadComplete(),-1!=(n=arrayIndexOf(u.running_queue,r))&&u.running_queue.splice(n,1)},r=function(){u.running_queue.push(r),r.http_request=AJAX_Call_Domain(i,e,n,o)},this.queue.push(r)},AJAX_ThreadPool.prototype.AJAX_Call_Domain_JSON=function(t,e,n,o){var r,i,u=this;i=function(e){var n;t(e),u.ThreadComplete(),-1!=(n=arrayIndexOf(u.running_queue,r))&&u.running_queue.splice(n,1)},r=function(){u.running_queue.push(r),r.http_request=AJAX_Call_Domain_JSON(i,e,n,o)},this.queue.push(r)},AJAX_ThreadPool.prototype.AJAX_Call=function(t,e,n,o){var r,i,u=this;i=function(e){var n;t(e),u.ThreadComplete(),-1!=(n=arrayIndexOf(u.running_queue,r))&&u.running_queue.splice(n,1)},r=function(){u.running_queue.push(r),r.http_request=AJAX_Call(i,e,n,o)},this.queue.push(r)},AJAX_ThreadPool.prototype.AJAX_Call_WithStoreCode=function(t,e,n,o,r){var i,u,a=this;u=function(e){var n;t(e),a.ThreadComplete(),-1!=(n=arrayIndexOf(a.running_queue,i))&&a.running_queue.splice(n,1)},i=function(){a.running_queue.push(i),i.http_request=AJAX_Call_WithStoreCode(u,e,n,o,r)},this.queue.push(i)},AJAX_ThreadPool.prototype.AJAX_Call_JSON=function(t,e,n,o){var r,i,u=this;i=function(e){var n;t(e),u.ThreadComplete(),-1!=(n=arrayIndexOf(u.running_queue,r))&&u.running_queue.splice(n,1)},r=function(){u.running_queue.push(r),r.http_request=AJAX_Call_JSON(i,e,n,o)},this.queue.push(r)},AJAX_ThreadPool.prototype.AJAX_Call_WithFile=function(t,e,n,o,r,i,u){var a,s=this;t.AJAX_ThreadPool_OriginalComplete=t.Complete,t.Complete=function(e){var n;t.AJAX_ThreadPool_OriginalComplete(e),s.ThreadComplete(),-1!=(n=arrayIndexOf(s.running_queue,a))&&s.running_queue.splice(n,1),t.Complete=t.AJAX_ThreadPool_OriginalComplete,t.AJAX_ThreadPool_OriginalComplete=null},a=function(){s.running_queue.push(a),a.http_request=AJAX_Call_WithFile(t,e,n,o,r,i,u)},this.queue.push(a)},AJAX_ThreadPool.prototype.AJAX_Call_Custom=function(t,e){var o,n,r=this;n=function(e){var n;t(e),r.ThreadComplete(),-1!=(n=arrayIndexOf(r.running_queue,o))&&r.running_queue.splice(n,1)},o=function(){r.running_queue.push(o),setTimeout(function(){e(n,o)},0)},this.queue.push(o)},AJAX_ThreadPool.prototype.Run=function(){var e,n;if(this.running){if(this.active_count<this.threads)for(e=this.active_count;e<=this.threads;e++)this.ThreadStart()}else{if(this.onStart(),this.running=!0,0==this.queue.length)return this.Finished();for(e=0,n=this.threads;e<n&&0<this.queue.length;e++)this.ThreadStart()}},AJAX_ThreadPool.prototype.Cancel=function(){var e,n;for(e=this.running_queue,this.active_count=0,this.running=!1,this.queue=new Array,this.running_queue=new Array;e.length;)(n=e.pop())&&n.http_request&&(n.http_request.onreadystatechange=function(){},n.http_request.abort());this.onComplete()},AJAX_ThreadPool.prototype.Queue_Count=function(){return this.queue.length},AJAX_ThreadPool.prototype.Thread_Limit=function(){return this.threads},AJAX_ThreadPool.prototype.DequeueFromStart=function(e){for(e=e||1;this.queue.length&&e--;)this.queue.splice(0,1)},AJAX_ThreadPool.prototype.LimitQueueToCount=function(e){if(e)for(;this.queue.length>e;)this.queue.splice(0,1)},AJAX_ThreadPool.prototype.SetThreadCount=function(e){this.threads=e},AJAX_ThreadPool.prototype.ThreadStart=function(){0!=this.queue.length?(this.active_count++,this.queue.splice(0,1)[0]()):0==this.active_count&&this.Finished()},AJAX_ThreadPool.prototype.ThreadComplete=function(){this.active_count--,this.ThreadStart()},AJAX_ThreadPool.prototype.Finished=function(){0==this.active_count&&(this.running=!1,this.onComplete())},AJAX_ThreadPool.prototype.Running=function(){return!!this.running},AJAX_ThreadPool.prototype.onStart=function(){},AJAX_ThreadPool.prototype.onComplete=function(){};