// <!-- JAN 2003 -->
// load_on_demand.js
//  ===============================================================
//  "Load on Demand" SCRIPT
//  for Shop@ssistant Version MC4_ by Rodney Myers
//  Copyright © 2000-2003,  Shop@ssistant eCommerce Solutions Ltd.
//
//  Last Revised January 2003
//  ===============================================================


// LOD vars
var INSASS=false;


var currencyCode="£";
var colPbar="|";var colPsemi=";";



//
var outsideSystemHandler=1;

// LOD Functions
function start_shop()  {
if(common_test() && !top.INSASS)
	{
	setLocation(); // cookie
	top.location.href =startup+"?lod";;
	}
} //


function setLocation(){
var saveLoc=(window.frames.length>0)?myFrame.location.href:window.location.href;
document.cookie = "LOADTHISPAGENOW" + "=" + escape(saveLoc)+"; path=/";
}

function pages_browser_test(){
/* Adapted from Ultimate client-side JavaScript client sniff. (C) Netscape Communications 1999.  Permission granted to reuse and distribute. */
var agt,is_major,is_nav,is_nav4up,is_ie4up;
 agt=navigator.userAgent.toLowerCase();
 is_major = parseInt(navigator.appVersion);
 is_nav  = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1) && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1) && (agt.indexOf('webtv')==-1));
 is_nav4up = (is_nav && (is_major >=4));
 is_ie4up  = ((agt.indexOf("msie") != -1) && (is_major >=4));
 ////// Allow OPERA 6 : July 2002
 var is_opera6up=(is_major >= 4) && ((agt.indexOf('opera 6')>-1) || (agt.indexOf('opera 7')>-1));
 return(is_nav4up||is_ie4up||is_opera6up);
 }// end pages_browser_test

function common_test(){
var ret=pages_browser_test();
if(!ret){alert("Sorry, your browser is not supported");}
return(ret);
}

function nosass(){ /* Used if system not loaded and functions in "For LOD" section are called */
if(confirm("Load shopping system,then\nreturn to this page to continue?"))
{ start_shop(); } else {return(' ');} }//


// For LOD operation
function ToLobby(){ nosass(); }
function reviewbasket() { nosass(); }
function terms(){ nosass(); }
function checkout(){ nosass(); }

// MC4 buttonbars and links (no action, no error)
function makeButtonBarH(){}
function makeButtonBarV(){}
function makeTextLinksH(){}
function makeTextLinksV(){}

// For display of prices
function MCP(V){
V=parseFloat(""+V);
V=Math.floor(V*100)/100;
if(V==Math.floor(V)){V+=".00";}else if(10*V==Math.floor(10*V)){V+="0";} return(currencyCode+V);}

function wMCP(V,Q,special){
if(typeof(special)=="string" && special=="p4q"){V=""+p4q(V,Q);}
document.write(MCP(V));
}

function wCMCP(V){wMCP(V);}
var MC=new MCF();
function MCF(){
this.MCPrice=MCP;
return(this);
}

function p4q(Pstring,Q){
var tmp=Pstring.split(colPbar);var min=tmp[0].split(colPsemi);
var prc=tmp[1].split(colPsemi);
for(var n=min.length-1;n>0;n--)
	{ if(Q>=1*min[n]){break;} }
return(""+prc[n]);
}




function newchoice(){ nosass(); }
function dpw(){ nosass(); }
function drpw(){ nosass(); }
function tempBuyConfirmation(option){ if(option){nosass();}}
function grabEntrance() { nosass(); }
function multiproduct_start() { nosass(); }
function multiproduct_end() { }


// For quantity/remove checkbox features in Review
function noremove(V){return(""+-1*parseFloat(V))+"!";}
function revQfix(a,i,n,x){i=(i==null)?1:i;n=(n==null)?1:n;x=(x==null)?999999:x;return (""+a+";"+i+";"+n+";"+x);}
function qlock(V){return(-1*parseFloat(V));}

// for Quantity inputs
function qty_fix(elem,Increment,qMin,qMax) {
var ev=elem.value;
var permitted="1234567890";
permitted += Increment<1 ? "." : "";
ev=clean(ev,permitted);
if(ev<qMin){ev=qMin;}
else if(ev>qMax){ev=qMax;}
else if( (ev-qMin)/Increment != Math.ceil((ev-qMin)/Increment)){ev=1*qMin+Math.ceil((ev-qMin)/Increment)*Increment;}
elem.value=ev;
}//

function clean(str,permitted){
str=""+str;
var nchar,n;var out="";
for(n=0;n<str.length;n++)
	{
	nchar=str.charAt(n);
	out+=permitted.indexOf(nchar)>-1?nchar:"";
	}
return(out);
}

// for SELECT boxes
function listvalue(List){return(List.options[List.selectedIndex].value);}
function listtext(List){return(List.options[List.selectedIndex].text);}

// for currency change
function ChangeCurrency()    { nosass(); }
function cChange()    { nosass(); } // v3.x


function inviteLoading(){
if(!top.INSASS){document.write('<p><b>Shopping system is not loaded.<br><a href="javascript:start_shop()">Load now?</a></b></p>');}
}














