/* This file came from Pixelsilk at http://www.fiberinstrumentsales.com/api2.min.js
 *  Version: 3.0.15.6575 | 6/4/2010 2:23:34 PM */
if(!window["pixelsilk2"]){window["pixelsilk2"]=(function(){var nextId=1;var token;var appId;var privateKey;var startHandler,endHandler,errorHandler;function start(){if(typeof(startHandler)==="function"){startHandler()}}function end(){if(typeof(endHandler)==="function"){endHandler()}}function error(e){if(typeof(errorHandler)==="function"){errorHandler(e)}else{if(e.error){alert(e.message)}}}function ajax(url,data,auth,callback){includeJson("JSON","/_System/Scripts/json2.min.js");start();if(typeof(callback)!=="function"&&typeof(auth)==="function"){callback=auth;auth=null}else{if(typeof(callback)!=="function"&&typeof(data)==="function"){callback=data;data=null}}var eventCallback=function(data){end();if(callback){callback(data)}};try{ajaxXhr(url,data,auth,eventCallback)}catch(e){error(e);ajaxScriptTag(url,data,eventCallback)}}function ajaxXhr(url,data,auth,callback){var request=window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");request.open("POST",url,true);request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");request.onreadystatechange=function(){if(request.readyState===4&&request.status===200&&(request.responseText||request.responseText==="")){var result=JSON.parse(request.responseText);if(result&&result.error===true){error(result)}else{if(callback!==null){callback(result)}}}else{if(request.readyState===4&&request.status!==200){try{var json=JSON.parse(request.responseText);error(json)}catch(e){error(request.responseText)}}}};var body=objectToQuery(data,auth);request.send(body)}function ajaxScriptTag(url,data,callback){var id=nextId++;var callbackName=setupCallback(id,callback);var query=objectToQuery(data);var script=makeScriptTag(url,query,callbackName,id);var head=document.getElementsByTagName("head")[0];head.appendChild(script)}function setupCallback(id,callback){var callbackName="callback"+id;window["pixelsilk2"][callbackName]=function(result){window["pixelsilk2"][callbackName]=null;var script=document.getElementById("pixelsilk2api"+id);if(script){script.parentNode.removeChild(script)}callback(result)};return"pixelsilk2."+callbackName}function objectToQuery(data,auth){var query="json=";if(typeof(data)!=="undefined"){var json=JSON.stringify(data);query+=encodeURIComponent(json)}if(token&&!auth){query+="&token="+encodeURIComponent(token)}if(appId){var signature=signRequest(json);query+="&appId="+encodeURIComponent(appId)+"&signature="+encodeURIComponent(signature)}if(auth){query+="&auth="+encodeURIComponent(auth.auth)+"&token="+encodeURIComponent(auth.token)}return query}function signRequest(json){if(typeof(json)==="undefined"){json=""}var toHash=json+privateKey;includeJson("SHA1","/_System/Scripts/webtoolkit.sha1.min.js");return SHA1(toHash)}function makeScriptTag(url,query,callback,id){var script=document.createElement("script");script.type="text/javascript";var src=url+"?"+query+"&callback="+callback;if(src.length>2000){throw"URL length is over 2000 characters, not creating script tag."}script.src=src;script.id="pixelsilk2api"+id;script.className="pixelsilk2api";return script}function createApiFunction(functionName){return function(data,auth,callback){var url=window["pixelsilk2"].urlBase+functionName;ajax(url,data,auth,callback)}}var api={init:function(t){token=t},setKey:function(id,key){appId=id;privateKey=key},start:function(handler){startHandler=handler},end:function(handler){endHandler=handler},error:function(handler){errorHandler=handler},domain:"www.fiberinstrumentsales.com",urlBase:"http://www.fiberinstrumentsales.com/api2/",appPath:""};function includeJson(name,path){if(!window[name]){var url="http://"+api.domain;if(api.appPath){url+="/"+api.appPath}url+=path;var script=document.createElement("script");script.type="text/javascript";script.src=url;var head=document.getElementsByTagName("head")[0];head.appendChild(script)}}
/*
        *
        *  Secure Hash Algorithm (SHA1)
        *  http://www.webtoolkit.info/
        *
        **/
function SHA1(msg){function rotate_left(n,s){var t4=(n<<s)|(n>>>(32-s));return t4}function lsb_hex(val){var str="";var i;var vh;var vl;for(i=0;i<=6;i+=2){vh=(val>>>(i*4+4))&15;vl=(val>>>(i*4))&15;str+=vh.toString(16)+vl.toString(16)}return str}function cvt_hex(val){var str="";var i;var v;for(i=7;i>=0;i--){v=(val>>>(i*4))&15;str+=v.toString(16)}return str}function Utf8Encode(string){string=string.replace(/\r\n/g,"\n");var utftext="";for(var n=0;n<string.length;n++){var c=string.charCodeAt(n);if(c<128){utftext+=String.fromCharCode(c)}else{if((c>127)&&(c<2048)){utftext+=String.fromCharCode((c>>6)|192);utftext+=String.fromCharCode((c&63)|128)}else{utftext+=String.fromCharCode((c>>12)|224);utftext+=String.fromCharCode(((c>>6)&63)|128);utftext+=String.fromCharCode((c&63)|128)}}}return utftext}var blockstart;var i,j;var W=new Array(80);var H0=1732584193;var H1=4023233417;var H2=2562383102;var H3=271733878;var H4=3285377520;var A,B,C,D,E;var temp;msg=Utf8Encode(msg);var msg_len=msg.length;var word_array=new Array();for(i=0;i<msg_len-3;i+=4){j=msg.charCodeAt(i)<<24|msg.charCodeAt(i+1)<<16|msg.charCodeAt(i+2)<<8|msg.charCodeAt(i+3);word_array.push(j)}switch(msg_len%4){case 0:i=2147483648;break;case 1:i=msg.charCodeAt(msg_len-1)<<24|8388608;break;case 2:i=msg.charCodeAt(msg_len-2)<<24|msg.charCodeAt(msg_len-1)<<16|32768;break;case 3:i=msg.charCodeAt(msg_len-3)<<24|msg.charCodeAt(msg_len-2)<<16|msg.charCodeAt(msg_len-1)<<8|128;break}word_array.push(i);while((word_array.length%16)!=14){word_array.push(0)}word_array.push(msg_len>>>29);word_array.push((msg_len<<3)&4294967295);for(blockstart=0;blockstart<word_array.length;blockstart+=16){for(i=0;i<16;i++){W[i]=word_array[blockstart+i]}for(i=16;i<=79;i++){W[i]=rotate_left(W[i-3]^W[i-8]^W[i-14]^W[i-16],1)}A=H0;B=H1;C=H2;D=H3;E=H4;for(i=0;i<=19;i++){temp=(rotate_left(A,5)+((B&C)|(~B&D))+E+W[i]+1518500249)&4294967295;E=D;D=C;C=rotate_left(B,30);B=A;A=temp}for(i=20;i<=39;i++){temp=(rotate_left(A,5)+(B^C^D)+E+W[i]+1859775393)&4294967295;E=D;D=C;C=rotate_left(B,30);B=A;A=temp}for(i=40;i<=59;i++){temp=(rotate_left(A,5)+((B&C)|(B&D)|(C&D))+E+W[i]+2400959708)&4294967295;E=D;D=C;C=rotate_left(B,30);B=A;A=temp}for(i=60;i<=79;i++){temp=(rotate_left(A,5)+(B^C^D)+E+W[i]+3395469782)&4294967295;E=D;D=C;C=rotate_left(B,30);B=A;A=temp}H0=(H0+A)&4294967295;H1=(H1+B)&4294967295;H2=(H2+C)&4294967295;H3=(H3+D)&4294967295;H4=(H4+E)&4294967295}var temp=cvt_hex(H0)+cvt_hex(H1)+cvt_hex(H2)+cvt_hex(H3)+cvt_hex(H4);return temp.toLowerCase()}var apiFunctions=["checkPermissions","renderSkin","getContent","setContent","setWebboxContent","getWebboxContent","deleteItem","getListItems","getAlbums","saveAlbum","deleteAlbum","getAlbumContents","getSystemImages","deleteFile","getSystemFilenames","getSystemFiles","getSystemFile","updateSystemFile","renameSystemFile","addNewSystemFile","deleteSystemFile","copySystemFile","promoteFile","getAllSections","getSections","getSection","newSection","moveSectionMakeChild","moveSectionInsertBefore","enableSectionById","showSectionInMenu","showSectionInSitemap","deleteSectionById","updateSection","getSectionsUrl","getPotentialUrl","addSection","getSkins","getTypeSkins","createNewSectionSkin","deleteSectionSkin","getSiteListSections","getThemes","addTheme","editTheme","deleteTheme","copyTheme","getLayoutSkins","updateSkins","promoteTheme","getPageTypeSkins","getPageTypes","addNewPageType","deletePageType","getPageTypeFields","checkValidNewPageTypeField","addPageTypeField","addPageTypeField","deletePageTypeField","updatePageTypeField","getPageTypeFieldValues","addPageTypeFieldValue","updatePageTypeFieldValue","movePageTypeFieldValueInsertBefore","movePageTypeFieldValueInsertBefore","deletePageTypeFieldValue","updatePageType","copyPageType","promotePageType","getControlSkins","copyControl","getControls","getControlSecurity","getControlTypes","getControlProperties","checkValidNewControl","createControl","updateControlProperties","deleteControl","promoteControl","getConfiguration","updateConfig","getPlugins","getPluginsWithJavaScript","enablePlugin","login","updateUser","updateUser","updateRole","addRole","addUser","deleteRole","deleteUser","getUsers","getRoles","getEveryone","tscGetTokens"];for(var i=0;i<apiFunctions.length;i++){var functionName=apiFunctions[i];api[functionName]=createApiFunction(functionName)}return api}())};