// Poster javascript for CS2010 Website
//<meta name="author" CONTENT="Stephen Hall - Crescent Services">
//<meta name="copyright" CONTENT="Crescent Services 2010">

//----------------------------------------------------------------

MonetarySymbol        	= '£ ';
MinimumOrder          	= 0.00;
UKPShip			= 1.60;
EUPShip			= 2.25;
ROWPShip		= 3.10;

OutputItemId          = 'item_number_';	//item number
OutputItemQuantity    = 'quantity_';	//itme quantity
OutputItemName        = 'item_name_';	//item name
OutputItemPrice       = 'amount_';	//item cost
OutputOptionName      = 'on0_';		//option name
OutputOptionCost      = 'os0_';		//option cost
OutputOrderShipping   = 'handling_cart';//postage cost (per order)
OutputOrderSubtotal   = 'subtot';
OutputOrderTotal      = 'tottot';
OutputCurrency		= 'currency_code';	// currency code
PPCartOption1		= 'cmd'
PPCartOption2		= 'upload'
PPCartOption3		= 'business'
PPCartOption4		= 'no_shipping'
PPCartOption5		= 'cpp_headerback_color'
PPCartOption6		= 'cpp_headerborder_color'
PPCartOption7		= 'cpp_payflow_color'
PPCartOption8		= 'return'
PPCartOption9		= 'cancel_return'

currency_code 	= "GBP";
cmd		= "_cart";
upload		= "1";
business	= "paypal@cambridgereprints.co.uk";
no_shipping	= "2";
cpp_headerback_color 	= "FFBD00";
cpp_headerborder_color	= "7B1008";
cpp_payflow_color	= "ffffff";
Return			= "http://www.vintage-auto-ads.com/PayPal_Payment-thankyou.html";
cancel_return		= "http://www.vintage-auto-ads.com/Cancel_Payment-thankyou.html";

   PostageNotSetPrompt  = 'Please select your delivery location.';
   NoOrderPrompt	= 'There is nothing in your shopping basket.';
   strSorry  = "I'm Sorry, your basket is full.\r\nIf you wish to order more than 12 items, please contact me.";
   strRemove = "Click 'Ok' to remove this product from your shopping basket.";
   strILabel = "Id";
   strDLabel = "Name/Description";
   strOLabel = "Option";
   strQLabel = "Qty";
   strPLabel = "Price";
   strSLabel = "Shipping";
   strRButton= "Remove";
   strSUB    = "SUBTOTAL";
   strSHIP   = "SHIPPING";
   strTOT    = "TOTAL";
   strErrQty = "Invalid Entry.";
   strNewQty = 'Please enter new quantity:';
   strShipad = "Select delivery location: ";

function disp_copy() {
var d=new Date()	
document.write('<hr width=\"60%\">Copyright &copy; '+d.getFullYear()+' Vintage-Auto-Ads.com. All Rights Reserved.<hr width=\"60%\">');
}

function disp_date() {
var d=new Date()
var weekday=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
var monthname=new Array("January","February","March","April","May","June","July","August","September","October","November","December");
document.write('' + weekday[d.getDay()] + ", ");
document.write('' + d.getDate() + " ");
document.write('' + monthname[d.getMonth()] + " ");
document.write('' + d.getFullYear());
}

function displayimage(image)
{
  var newwindow=window.open('','name','height=500,width=500,status=1');
  newwindow.document.write('<html><head><title>Image Window</title>');
  newwindow.document.write('</head><body>');
  newwindow.document.write('<center><p><img src='+image+' width="400" height="400" border="0"</p>');  
  newwindow.document.write('<p><a href="javascript:self.close()">Close this Window</a></p>');
  newwindow.document.write('</body></html>');
  newwindow.document.close();
  if (window.focus) {newwindow.focus()} 
}


function clearForms()
{
  var i;
  for (i = 0; (i < document.forms.length); i++) {
    document.forms[i].reset();
  }
}

//----------------------------------------------------------------
//     Make sure quantity is represented as a number 
//----------------------------------------------------------------

function CKquantity(checkString) {
   var strNewQuantity = "";

   for ( i = 0; i < checkString.length; i++ ) {
      ch = checkString.substring(i, i+1);
      if ( (ch >= "0" && ch <= "9") || (ch == '.') )
         strNewQuantity += ch;
   }

   if (( strNewQuantity.length < 1 ) || (strNewQuantity <= "0"))
      strNewQuantity = "1";

   return(strNewQuantity);
}

//----------------------------------------------------------------
//     Adds a product to the user's shopping cart   
//----------------------------------------------------------------

function AddToCart(thisForm) {
   var iNumberOrdered = 0;
   var bAlreadyInCart = false;
   iNumberOrdered = GetCookie("NumberOrdered");

   if ( iNumberOrdered == null )
      iNumberOrdered = 0;

   if ( thisForm.ID_NUM == null )
      strID_NUM    = "";
   else
      strID_NUM    = thisForm.ID_NUM.value;

   if (( thisForm.QUANTITY == null )  || ( thisForm.QUANTITY.value == "0" ))
   {
	strQUANTITY  = "1";
   }else{
	strQUANTITY  = thisForm.QUANTITY.value;
      	      }

   if ( thisForm.PRICE == null )
      strPRICE     = "0.00";
   else
      strPRICE     = thisForm.PRICE.value;

   if ( thisForm.NAME == null )
      strNAME      = "";
   else
      strNAME      = thisForm.NAME.value;

   if ( thisForm.SHIPPING == null )
      strSHIPPING  = "0.00";
   else
      strSHIPPING  = thisForm.SHIPPING.value;

   if ( thisForm.OPTION.checked == 1) 
      { strOPTION = thisForm.OPTION.value;
        if ( !strOPTION ) strOPTION = "_0";	// protect against null option
   }else{
      strOPTION = "_0";
	}

	clearForms();				// clear checkboxes
            
   //Is this product already in the cart?  If so, increment quantity instead of adding another.
   
   for ( i = 1; i <= iNumberOrdered; i++ ) {
      NewOrder = "Order." + i;
      database = "";
      database = GetCookie(NewOrder);

      Token0 = database.indexOf("|", 0);
      Token1 = database.indexOf("|", Token0+1);
      Token2 = database.indexOf("|", Token1+1);
      Token3 = database.indexOf("|", Token2+1);
      Token4 = database.indexOf("|", Token3+1);

      fields = new Array;
      fields[0] = database.substring( 0, Token0 );
      fields[1] = database.substring( Token0+1, Token1 );
      fields[2] = database.substring( Token1+1, Token2 );
      fields[3] = database.substring( Token2+1, Token3 );
      fields[4] = database.substring( Token3+1, Token4 );
      fields[5] = database.substring( Token4+1, database.length );

      if ( fields[0] == strID_NUM   &&  fields[5] == strOPTION ) {	// is ID and Option the same?
         bAlreadyInCart = true;
         dbUpdatedOrder = strID_NUM    + "|" +
                          (parseInt(strQUANTITY)+parseInt(fields[1]))  + "|" +
                          strPRICE     + "|" +
                          strNAME      + "|" +
                          strSHIPPING  + "|" +
                          strOPTION;
         strNewOrder = "Order." + i;
         DeleteCookie(strNewOrder, "/");
         SetCookie(strNewOrder, dbUpdatedOrder, null, "/");
         break;
      }
   }

   if ( !bAlreadyInCart ) {
      iNumberOrdered++;

      if ( iNumberOrdered > 12 )
         alert( strSorry );
      else {
         dbUpdatedOrder = strID_NUM    + "|" + 
                          strQUANTITY  + "|" +
                          strPRICE     + "|" +
                          strNAME      + "|" +
                          strSHIPPING  + "|" +
                          strOPTION;

         strNewOrder = "Order." + iNumberOrdered;
         SetCookie(strNewOrder, dbUpdatedOrder, null, "/");
         SetCookie("NumberOrdered", iNumberOrdered, null, "/");
      }
   }
}

//---------------------------------------------------------------------||
//      Get a specific value from a cookie             	               ||
//---------------------------------------------------------------------||
function getCookieVal (offset) {
   var endstr = document.cookie.indexOf (";", offset);

   if ( endstr == -1 )
      endstr = document.cookie.length;
   return(unescape(document.cookie.substring(offset, endstr)));
}

//---------------------------------------------------------------------||
//      Fixes cookie date, stores back in date            	       ||
//---------------------------------------------------------------------||
function FixCookieDate (date) {
   var base = new Date(0);
   var skew = base.getTime();
   date.setTime (date.getTime() - skew);
}

//---------------------------------------------------------------------||
//      Retrieves cookie from users browser               	       ||
//---------------------------------------------------------------------||
function GetCookie (name) {
   var arg = name + "=";
   var alen = arg.length;
   var clen = document.cookie.length;
   var i = 0;

   while ( i < clen ) {
      var j = i + alen;
      if ( document.cookie.substring(i, j) == arg ) return(getCookieVal (j));
      i = document.cookie.indexOf(" ", i) + 1;
      if ( i == 0 ) break;
   }
   return(null);
}

//---------------------------------------------------------------------||
//      Stores a cookie in the users browser      	               ||
//---------------------------------------------------------------------||
function SetCookie (name,value,expires,path,domain,secure) {
   document.cookie = name + "=" + escape (value) +
                     ((expires) ? "; expires=" + expires.toGMTString() : "") +
                     ((path) ? "; path=" + path : "") +
                     ((domain) ? "; domain=" + domain : "") +
                     ((secure) ? "; secure" : "");
}

//---------------------------------------------------------------------||
//      Removes cookie from browser. 			               ||
//---------------------------------------------------------------------||
function ClearCookie(name,path,domain){
   document.cookie = name + "=" + escape (0) +
                        ((path) ? "; path=" + path : "") +
                        ((domain) ? "; domain=" + domain : "") +
                        "; expires=Thu, 01-Jan-70 00:00:01 GMT";

}
	
//---------------------------------------------------------------------||
//      Removes a cookie from users browser.		               ||
//---------------------------------------------------------------------||
function DeleteCookie (name,path,domain) {
   if ( GetCookie(name) ) {
      document.cookie = name + "=" +
                        ((path) ? "; path=" + path : "") +
                        ((domain) ? "; domain=" + domain : "") +
                        "; expires=Thu, 01-Jan-70 00:00:01 GMT";
   }
}

//---------------------------------------------------------------------||
//      Reformats Pound Amount to #.## format              	       ||
//---------------------------------------------------------------------||
function moneyFormat(input) {
   var pounds = Math.floor(input);
   var tmp = new String(input);

   for ( var decimalAt = 0; decimalAt < tmp.length; decimalAt++ ) {
      if ( tmp.charAt(decimalAt)=="." )
         break;
   }

   var pence  = "" + Math.round(input * 100);
   pence = pence.substring(pence.length-2, pence.length)
           pounds += ((tmp.charAt(decimalAt+2)=="9")&&(pence=="00"))? 1 : 0;

   if ( pence == "0" )
      pence = "00";

   return(pounds + "." + pence);
}

//---------------------------------------------------------------------||
//      Removes an item from a users shopping cart                     ||
//---------------------------------------------------------------------||
function RemoveFromCart(RemOrder) {
   if ( confirm( strRemove ) ) {
      NumberOrdered = GetCookie("NumberOrdered");
      for ( i=RemOrder; i < NumberOrdered; i++ ) {
         NewOrder1 = "Order." + (i+1);
         NewOrder2 = "Order." + (i);
         database = GetCookie(NewOrder1);
         SetCookie (NewOrder2, database, null, "/");
      }
      NewOrder = "Order." + NumberOrdered;
      SetCookie ("NumberOrdered", NumberOrdered-1, null, "/");
      DeleteCookie(NewOrder, "/");
      location.href=location.href;
   }
}

//---------------------------------------------------------------------||
//      Changes  of an item in the shopping cart   		       ||
//---------------------------------------------------------------------||

function ChangeCEntry(OrderItem,NewQuantity,Newshipping) {

var reTrace = 0;
   if (( isNaN(NewQuantity)) ||  (isNaN(Newshipping))) {
      alert( strErrQty );
   } else {
      NewOrder = "Order." + OrderItem;
      database = "";
      database = GetCookie(NewOrder);
      if ( !database ) { return };
      
      Token0 = database.indexOf("|", 0);
      Token1 = database.indexOf("|", Token0+1);
      Token2 = database.indexOf("|", Token1+1);
      Token3 = database.indexOf("|", Token2+1);
      Token4 = database.indexOf("|", Token3+1);

      fields = new Array;
      fields[0] = database.substring( 0, Token0 );               	// Product ID
      fields[1] = database.substring( Token0+1, Token1 );          	// Quantity
      fields[2] = database.substring( Token1+1, Token2 );         	// Price
      fields[3] = database.substring( Token2+1, Token3 );          	// Name/Description
      fields[4] = database.substring( Token3+1, Token4 );          	// Shipping Cost
      fields[5] = database.substring( Token4+1, database.length ); 	// Option

   	if ( NewQuantity != "" ) { 
   		fone = NewQuantity;
   		reTrace = 1;
   		}else{
   		fone = fields[1];
   		}
   	if ( Newshipping != "" ) { 
   		ffour = Newshipping;
   		}else{ 
   		ffour = fields[4];
   		}
   	
      dbUpdatedOrder = fields[0] + "|" +
                       fone      + "|" +
                       fields[2] + "|" +
                       fields[3] + "|" +
                       ffour 	 + "|" +
                       fields[5];
      strNewOrder = "Order." + OrderItem;
      DeleteCookie(strNewOrder, "/");
      SetCookie(strNewOrder, dbUpdatedOrder, null, "/");
      if ( reTrace == 1 ) { location.href=location.href}; // refresh page if quantity changed
   }
}


//----------------------------------------------------------------
// get option price from text_x
//----------------------------------------------------------------

function getoptionprice(string)
{
start=(string.indexOf("_")+1);
stop=(string.length);
idP = (string.substr(start,stop));
if ( !idP ) idP = 0;	// protect against non numbers
return idP;
}

//----------------------------------------------------------------
// get option name from text_x
//----------------------------------------------------------------

function getoptiontext(string)
{
start=(0);
stop=(string.indexOf("_"));
idP = (string.substr(start,stop));
return idP;
}

//----------------------------------------------------------------
//  return name of OPTION if checkbox checked
//----------------------------------------------------------------

function CKOption(thisForm,OPTstr) {

   if ( thisForm.OPTION.checked == 1) 
{
	return(OPTstr);
}else{
	return("");
}
}

//---------------------------------------------------------------------||
//      Draws current cart product table on HTML page       	       ||
//---------------------------------------------------------------------||
function ManageCart( ) {

   var iNumberOrdered 	= 0;    //Number of products ordered
   var fTotal         	= 0;    //Total cost of order
   var fShipping      	= 0;    //Shipping amount
   var strTotal       	= "";   //Total cost formatted as money
   var strShipping    	= "";   //Total shipping formatted as money
   var strOutput      	= "";   //String to be written to page
   
   iNumberOrdered = GetCookie("NumberOrdered");
   if ( iNumberOrdered == null )
      iNumberOrdered = 0;

      strOutput = "<TABLE CLASS=\"nopcart\" cellpadding=3 style='table-layout:fixed' width=500><TR>" +
                  "<TD CLASS=\"nopheader\" nowrap width=30><B>"+strILabel+"</B></TD>" +
                  "<TD CLASS=\"nopheader\" nowrap width=185><B>"+strDLabel+"</B></TD>" +
                  "<TD CLASS=\"nopheader\" nowrap width=60><B>"+strOLabel+"</B></TD>" +
                  "<TD CLASS=\"nopheader\" nowrap width=35><B>"+strQLabel+"</B></TD>" +
                  "<TD CLASS=\"nopheader\" nowrap width=80><B>"+strPLabel+"</B></TD>" +
                  "<TD CLASS=\"nopheader\" nowrap width=95>&nbsp;</TD></TR>";

   if ( iNumberOrdered == 0 ) {
      strOutput += "<TR><TD COLSPAN=6 CLASS=\"nopentry\"><CENTER><B>Your basket is empty</B></CENTER></TD></TR>";
   }

   for ( i = 1; i <= iNumberOrdered; i++ ) {
      NewOrder = "Order." + i;
      database = "";
      database = GetCookie(NewOrder);

      Token0 = database.indexOf("|", 0);
      Token1 = database.indexOf("|", Token0+1);
      Token2 = database.indexOf("|", Token1+1);
      Token3 = database.indexOf("|", Token2+1);
      Token4 = database.indexOf("|", Token3+1);

      fields = new Array;
      fields[0] = database.substring( 0, Token0 );                 // Product ID
      fields[1] = database.substring( Token0+1, Token1 );          // Quantity
      if ( fields[1] == "" ) {fields[1] = 0};
      fields[2] = database.substring( Token1+1, Token2 );          // Price
      fields[3] = database.substring( Token2+1, Token3 );          // Name/Description
      fields[4] = database.substring( Token3+1, Token4 );          // Shipping Cost
      fields[5] = database.substring( Token4+1, database.length ); // Option

	OPText = getoptiontext( fields[5] );	// get option name

      	strShipping = moneyFormat(fShipping);	// initial shipping cost = 0 (until postal area set)
	
	OPTcost = getoptionprice( fields[5] );	// get option cost
	fields[2] = (parseFloat(fields[2])) + (parseFloat(OPTcost));

      fTotal     += (parseInt(fields[1]) * parseFloat(fields[2]) );;
      strTotal    = moneyFormat(fTotal);

         strOutput += "<TR><TD CLASS=\"nopentry\" align=center>"  + fields[0] + "</TD>";
         strOutput += "<TD CLASS=\"nopentry\">"  + fields[3] + "</TD>";
         strOutput += "<TD CLASS=\"nopentry\">"  + OPText + "</TD>";
         strOutput += "<TD CLASS=\"nopentry\"><INPUT TYPE=TEXT NAME=Q SIZE=1 VALUE=\"" + fields[1] + "\" onChange=\"ChangeCEntry("+i+",this.value,'')\"></TD>";
         strOutput += "<TD CLASS=\"nopentry\">"+ MonetarySymbol + moneyFormat(fields[2]) + "/ea</TD>";
         strOutput += "<TD CLASS=\"nopentry\"><input type=button value=\" "+strRButton+" \" onClick=\"RemoveFromCart("+i+")\" class=\"nopbutton\"></TD></TR>";
	}
	
      strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=5 align=right><B>"+strSUB+"</B></TD>";
      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=1><B>" + MonetarySymbol + strTotal + "</B></TD>";
      strOutput += "</TR>";
      strOutput += "<TR><TD CLASS=\"nopentry\" COLSPAN=3 align=center>";
      strOutput += "<select onchange=\"javascript:postchanged(this.value,"+fTotal+")\">";
      strOutput += "<option selected>Select delivery location</option>";
      strOutput += "<option value=\"ukfirst\">United Kingdom</option>";
      strOutput += "<option value=\"euairm\">Europe</option>";
      strOutput += "<option value=\"rowairm\">Rest of the World</option>";
      strOutput += "</TD>";
      strOutput += "<TD CLASS=\"noptotal\" align=right COLSPAN=2><B>"+strSHIP+"</B></TD>";
      strOutput += "<TD CLASS=\"noptotal\" ><B>" + MonetarySymbol + "<span id=shipPrice>" + strShipping + "</span></B></TD>";
      strOutput += "</TR>";
      strOutput += "<TR><TD CLASS=\"nopentry\" COLSPAN=5 align=right><b>" + strTOT + "<B>";
      strOutput += "</TD>";
      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=1><B>" + MonetarySymbol + "<span id=totalPrice>" + strShipping + "</span></B></TD>";
      strOutput += "</TR>";
      strOutput += "</TABLE>";

   document.write(strOutput);
   document.close();


}       	
        	

//----------------------------------------------------------------
// Change postal area
//----------------------------------------------------------------

function postchanged(post,fTotal) 
{

if(post == ""){fShipping = ""};
if(post == "ukfirst"){fShipping = UKPShip};
if(post == "euairm"){fShipping = EUPShip};
if(post == "rowairm"){fShipping = ROWPShip};
strShipping = moneyFormat(fShipping);
g_TotalCost = moneyFormat(parseFloat(fTotal) + parseFloat(fShipping));
  if ( isNaN(strShipping) ) {
  	return;
}else{
	writelayer('shipPrice',strShipping);	// price on cart
	writelayer('totalPrice',strShipping);
	ChangeCEntry(1,"",strShipping);
}
   if ( isNaN(g_TotalCost) ) {
  	return;
}else{
	writelayer('totalPrice',g_TotalCost);	// price on cart
} 

}

//---------------------------------------------------------------------||
//      Validates the managecart form                       	       ||
//---------------------------------------------------------------------||

var strShipping = 0;
function ValidateCart( theForm ) {
      NewOrder = "Order." + 1;
      database = "";
      database = GetCookie(NewOrder);
      if ( !database ) { 
        alert( NoOrderPrompt );
        return false;
      }
   if ( strShipping <= 0 ) {
        alert( PostageNotSetPrompt );
        return false;
      }
	return true;
}

//--------------------------------------------------------------------||
//      cart product table  for checkout to PayPal 		      ||
//--------------------------------------------------------------------||
function CheckoutCart() {
	
   var iNumberOrdered 	= 0;    //Number of products ordered
   var fTotal         	= 0;    //Total cost of order
   var fShipping      	= 0;    //Shipping amount
   var strTotal       	= "";   //Total cost formatted as money
   var strShipping    	= "";   //Total shipping formatted as money
   var strOutput      	= "";   //String to be written to page

   iNumberOrdered = GetCookie("NumberOrdered");

   if ( iNumberOrdered == null ) 
      iNumberOrdered = 0;
      
      if ( iNumberOrdered == 0 )
      return false;

   for ( i = 1; i <= iNumberOrdered; i++ ) {
      NewOrder = "Order." + i;
      database = "";
      database = GetCookie(NewOrder);

      Token0 = database.indexOf("|", 0);
      Token1 = database.indexOf("|", Token0+1);
      Token2 = database.indexOf("|", Token1+1);
      Token3 = database.indexOf("|", Token2+1);
      Token4 = database.indexOf("|", Token3+1);

      fields = new Array;
      fields[0] = database.substring( 0, Token0 );                 // Product ID
      fields[1] = database.substring( Token0+1, Token1 );          // Quantity
      fields[2] = database.substring( Token1+1, Token2 );          // Price
      fields[3] = database.substring( Token2+1, Token3 );          // Product Name/Description
      fields[4] = database.substring( Token3+1, Token4 );          // Shipping Cost
      fields[5] = database.substring( Token4+1, database.length ); // Option

	OPText = getoptiontext( fields[5] );		// get option name	
	OPTcost = getoptionprice( fields[5] );		// get option cost
	strOPTcost = MonetarySymbol + moneyFormat(OPTcost);
	fields[2] = (parseFloat(fields[2])) + (parseFloat(OPTcost));
      	if ( i == 1 ) { fShipping = fields[4] };	// shipping cost 
	fTotal     += (parseInt(fields[1]) * parseFloat(fields[2]) );;
	strTotal    = moneyFormat(fTotal);

	g_TotalCost = moneyFormat((parseFloat(fTotal) + parseFloat(fShipping)));

         strOutput += "<input type=hidden name=\"" + OutputItemId        + i + "\" value=\"" + fields[0] + "\">";
         strOutput += "<input type=hidden name=\"" + OutputItemQuantity  + i + "\" value=\"" + fields[1] + "\">";
         strOutput += "<input type=hidden name=\"" + OutputItemPrice     + i + "\" value=\"" + fields[2] + "\">";
         strOutput += "<input type=hidden name=\"" + OutputItemName      + i + "\" value=\"" + fields[3] + "\">";
         strOutput += "<input type=hidden name=\"" + OutputOptionName    + i + "\" value=\"" + OPText    + "\">";
         strOutput += "<input type=hidden name=\"" + OutputOptionCost 	 + i + "\" value=\"" + strOPTcost+ "\">";
	}

	 strShipping = moneyFormat(fShipping);

         strOutput += "<input type=hidden name=\"" + OutputOrderShipping	+ "\" value=\"" + strShipping + "\">";	//postage cost (per order)
         strOutput += "<input type=hidden name=\"" + OutputOrderSubtotal 	+ "\" value=\"" + strTotal  + "\">";
         strOutput += "<input type=hidden name=\"" + OutputOrderTotal 		+ "\" value=\"" + g_TotalCost + "\">";
         strOutput += "<input type=hidden name=\"" + OutputCurrency	 	+ "\" value=\"" + currency_code + "\">";		// currency code
         strOutput += "<input type=hidden name=\"" + PPCartOption1 		+ "\" value=\"" + cmd + "\">";
         strOutput += "<input type=hidden name=\"" + PPCartOption2 		+ "\" value=\"" + upload + "\">";
         strOutput += "<input type=hidden name=\"" + PPCartOption3 		+ "\" value=\"" + business + "\">";
         strOutput += "<input type=hidden name=\"" + PPCartOption4 		+ "\" value=\"" + no_shipping + "\">";
         strOutput += "<input type=hidden name=\"" + PPCartOption5 		+ "\" value=\"" + cpp_headerback_color + "\">";
         strOutput += "<input type=hidden name=\"" + PPCartOption6 		+ "\" value=\"" + cpp_headerborder_color + "\">";
         strOutput += "<input type=hidden name=\"" + PPCartOption7 		+ "\" value=\"" + cpp_payflow_color + "\">";
         strOutput += "<input type=hidden name=\"" + PPCartOption8 		+ "\" value=\"" + Return + "\">";
         strOutput += "<input type=hidden name=\"" + PPCartOption9 		+ "\" value=\"" + cancel_return + "\">";

   document.write(strOutput);
   document.close();
   return true;
}

//--------------------------------------------------------------------||
//      Print cart order form			      		      ||
//--------------------------------------------------------------------||
function PrintoutCart() {
	
   var iNumberOrdered 	= 0;    //Number of products ordered
   var fTotal         	= 0;    //Total cost of order
   var fShipping      	= 0;    //Shipping amount
   var strTotal       	= "";   //Total cost formatted as money
   var strShipping    	= "";   //Total shipping formatted as money
   var strOutput      	= "<b>Your Order:</b><br>";   //String to be written to page

   iNumberOrdered = GetCookie("NumberOrdered");

   if ( iNumberOrdered == null ) 
      iNumberOrdered = 0;
      
      if ( iNumberOrdered == 0 )
      return false;

   for ( i = 1; i <= iNumberOrdered; i++ ) {
      NewOrder = "Order." + i;
      database = "";
      database = GetCookie(NewOrder);

      Token0 = database.indexOf("|", 0);
      Token1 = database.indexOf("|", Token0+1);
      Token2 = database.indexOf("|", Token1+1);
      Token3 = database.indexOf("|", Token2+1);
      Token4 = database.indexOf("|", Token3+1);

      fields = new Array;
      fields[0] = database.substring( 0, Token0 );                 // Product ID
      fields[1] = database.substring( Token0+1, Token1 );          // Quantity
      fields[2] = database.substring( Token1+1, Token2 );          // Price
      fields[3] = database.substring( Token2+1, Token3 );          // Product Name/Description
      fields[4] = database.substring( Token3+1, Token4 );          // Shipping Cost
      fields[5] = database.substring( Token4+1, database.length ); // Option

	OPText = getoptiontext( fields[5] );		// get option name
	OPTcost = getoptionprice( fields[5] );		// get option cost
	strOPTcost = MonetarySymbol + moneyFormat(OPTcost);
	fields[2] = (parseFloat(fields[2])) + (parseFloat(OPTcost));
      	if ( i == 1 ) { fShipping = fields[4] };	// shipping cost 
	fTotal     += (parseInt(fields[1]) * parseFloat(fields[2]) );;
	strTotal    = moneyFormat(fTotal);
	iTotal	= MonetarySymbol + moneyFormat(fields[2]);

	g_TotalCost = moneyFormat(parseFloat(fTotal) + parseFloat(fShipping));
	p_TotalCost = MonetarySymbol + moneyFormat(parseFloat(fTotal) + parseFloat(fShipping));

         strOutput += "<br>(" + fields[0] + ")" ;
         strOutput += " " + fields[1] + " X "  ;
         strOutput += " " + fields[3] + ""  ;
         strOutput += " " + OPText    + ""  ;
         strOutput += " " + iTotal + ""  ;

	}

	 strShipping = moneyFormat(fShipping);
	 p_strShipping = MonetarySymbol + moneyFormat(fShipping);

         strOutput += "<p><b>Shipping</b> "	+ p_strShipping + "" ;
         strOutput += "  <b>Total</b> " 	+ p_TotalCost + "" ;


   document.write(strOutput);
   document.close();
   return true;
}


//----------------------------------------------------------------||
// Set-up and display layer information				  ||
//----------------------------------------------------------------||

var ie4 = (document.all) ? true : false;
var ns4 = (document.layers) ? true : false;
var ns6 = (document.getElementById && !document.all) ? true : false;

function writelayer(lay,txt) {
if (ie4) {
document.all[lay].innerHTML = txt;
}
if (ns4) {
document[lay].document.write(txt);
document[lay].document.close();
}
if (ns6) {
over = document.getElementById([lay]);
range = document.createRange();
range.setStartBefore(over);
domfrag = range.createContextualFragment(txt);
while (over.hasChildNodes()) {
over.removeChild(over.lastChild);
}
over.appendChild(domfrag);
}
}

//----------------------------------------------------------------||
// Set-up and display float layer information			  ||
//----------------------------------------------------------------||

function hideIt(Lay) {
	(document.getElementById) ? dom = true : dom = false;
  if (dom) {document.getElementById(Lay).style.visibility='hidden';}
}

function showIt(Lay) {
	(document.getElementById) ? dom = true : dom = false;
  if (dom) {document.getElementById(Lay).style.visibility='visible';}
}

function placeIt() {
var y1 = 10;
(document.getElementById) ? dom = true : dom = false;
  if (dom && !document.all) {document.getElementById("layer1").style.top = window.pageYOffset + (window.innerHeight - (window.innerHeight-y1)) + "px";}
  if (document.all) {document.all["layer1"].style.top = document.documentElement.scrollTop + (document.documentElement.clientHeight - (document.documentElement.clientHeight-y1)) + "px";}
    window.setTimeout("placeIt()", 10);
}

//--------------------------------------------------------------------||
//      NavBar check and display 			      	      ||
//--------------------------------------------------------------------||
function NavBarcheck() 
{
    PorF = CheckoutCart();
    strOutput = "";
    if ( PorF ) 
	{
         	strOutput += '<tr><td background="image-files/left03.gif" height="26" align="left"><p class="title">';
         	strOutput += 'Trolley</td></tr><tr><td>';
         	strOutput += '<p class="b01"><img src="image-files/e02.gif" width="6" height="5" alt="trolley" title="trolley" border="0" valign="middle">';
         	strOutput += '<a href="managecart.html"> View Trolley</a></td></tr>';
         document.write(strOutput);
        }
}

//--------------------------------------------------------------------||
//      Compare file name with given name			      ||
//--------------------------------------------------------------------||

function LocN(LOCname,LOCtitle) 
{
var this_url = window.location.href;
this_file = (this_url.substring((this_url.lastIndexOf("/")+1),this_url.length));
   	if (this_file != LOCname) { midStrTxt = '<a href='+LOCname+'>'+LOCtitle+'</a>' }else{ midStrTxt = ''+LOCtitle+''};
   	return( midStrTxt );
}

//--------------------------------------------------------------------||
//      Write sales text to page 				      ||
//--------------------------------------------------------------------||

function WritePriceDetail(Id,Pname)
{
	InStock = AutoDb(Id);
	if ( InStock == 1 ) (document.write("<center><p class='body15'><a href='#' onclick='javascript:showIt(\"layer1\");return false;'>Click here to get your own copy of this Print<p class='body'></a></center>"));
 	Pname=Pname.replace(/ /g, "&nbsp;");	// replace spaces
	strOutput = "";
        strOutput += '<div id="layer1" style="position:absolute; width:520px; margin:0 auto; text-align:center; visibility:hidden">';
        strOutput += '<div padding:10px;">';
        strOutput += '<table border="2" bgcolor="#eeeeff" cellpadding="5" cellspacing="0" class="body" width="100%" style="table-layout:fixed">';
	strOutput += '<tr><td align="left" valign="top" width="100%" class="body" colspan="2">';
	strOutput += '<center><h1>Buy your own copy</h1></center>';
	strOutput += '<p class="body12">These vintage motoring advertising images are beautiful and important reminders of vehicles, products and events, as captured by artists long ago.<BR>Chosen for their historical interest, nostalgia or just plain beauty, these images, have been professionally restored to produce wonderful art prints of the highest quality.';
	strOutput += '<p class="body12">We can provide copies of this advert, professionally printed to give you a print similar to the original.<br>Printed on heavy weight paper, ready for framing, or mounted as they are, these restored vintage advertisements make the perfect gift for you, your family, friends and colleagues.';
	strOutput += '<p class="body12"><i>They can also be supplied laminated, giving you a durable, wipe clean poster for your garage, workshop, office or shop.</i><br><center><b>Note:</b> The copyright notice is only on the website image<br>and not on the print you receive</center></td></tr>';
        strOutput += '<tr><td valign="top" width="50%"><center><span class="bodyb">Postage<br></span>';
  	strOutput += '1st Class UK Mail = £1.60<br>Europe AirMail = £2.25<br>Rest Of World AirMail = £3.10<br>';
	strOutput += '<P><b><span class="bodyr">FREE</span> combined postage</b><br>(This postage is price per order,<br>not per item)';
	strOutput += '<P><span class="bodyb">Returns</span><br>Full 14 day, no quibble, money back <a href="http://www.vintage-auto-ads.com/guaranty.html" target="_blank">guaranty</a>.</center></td>';
  	strOutput += '<td class="body12" valign="top" width="50%"><FORM NAME=order ACTION="managecart.html" onSubmit="AddToCart(this);">';
      	strOutput += '<b>Price: </b>£3.50<input type=hidden name="PRICE" value="3.50">';
        strOutput += '<br><b>Name: </b>'+Pname+'<input type=hidden name="NAME" value='+Pname+'>';
      	strOutput += '<br><b>Size: </b>30cm x 21cm<br><b>Stock Number: </b>'+Id+'<input type=hidden name="ID_NUM" value='+Id+'>';
      	strOutput += '<br><b>Laminate: </b>(extra £0.50)<input type="checkbox" name=OPTION  value="" onclick="this.value=CKOption(this.form,\'laminate_0.50\')">';		
      	strOutput += '<br><b>Quantity: </b><input type=text size=1 maxlength=3 name=QUANTITY onChange="this.value=CKquantity(this.value)" value="1">';
      	strOutput += '<input type=hidden name=SHIPPING value="0"><p><center><input type="submit" value="Add this item to your trolley"></center>';
      	strOutput += '</FORM><br><center><a href="#" onclick="javascript:hideIt(\'layer1\');return false;">Close this Window</a></center></td></tr></table></div></div>';;
        document.write(strOutput);
}

//--------------------------------------------------------------------||
//      Image Slide Show 					      ||
//	insert OnLoad="MediaStart()" into Body tag 		      ||
//--------------------------------------------------------------------||

var xMediaContent  = new Array();
var xMediaImage    = new Image;
var iCurrentImage  = 0;
var iInternalCount = 5000;
var xTimerHandle   = null;
var bTimerRunning  = false;
var TimeInSecondsBetweenCycles = 5.0;
var LoadInNewWindow = false;
var WrapAtEnd       = true;

function MediaStop()
{
    if( bTimerRunning )
        clearTimeout( xTimerHandle );

    bTimerRunning = false;
}

function MediaInternalCycle()
{
    (iCurrentImage == (xMediaContent.length - 2)) ? iCurrentImage = 0 : iCurrentImage+=2;
    if( document.MEDIAIMAGE ) document.MEDIAIMAGE.src = xMediaContent[iCurrentImage];

    xTimerHandle   = setTimeout("MediaInternalCycle()", iInternalCount);
    bTimerRunning  = true;
}

function MediaStart()
{
    iInternalCount = TimeInSecondsBetweenCycles * 1000;
    MediaStop();
    MediaInternalCycle();
}

function MediaClick()
{
    if( LoadInNewWindow ) {
        URL = xMediaContent[iCurrentImage+1];
        win=window.open(URL,"NewWindow","");
        if (!win.opener)win.opener=self;
    } else
        document.location.href = xMediaContent[iCurrentImage+1];
}

//--------------------------------------------------------------------||
//      Image and tag list					      ||
//--------------------------------------------------------------------||

xMediaContent[0] = "image-files/002-lambretta-pirelli.gif";
xMediaContent[1] = "lambretta-pirelli-002.html";
xMediaContent[2] = "image-files/080-esso_tiger_in_your_tank-1962.gif";
xMediaContent[3] = "esso_tiger_in_your_tank_advert-1962-080.html";
xMediaContent[4] = "image-files/008-ford_prefect_on_the_prom.gif";
xMediaContent[5] = "ford_prefect_on_the_prom-advert-008.html";
xMediaContent[6] = "image-files/026-lambretta_airport-1964.gif";
xMediaContent[7] = "lambretta_gt200_airport-advert-1964-026.html";
xMediaContent[8] = "image-files/044-vespa_125-1958.gif";
xMediaContent[9] = "vespa_125-advert-1958-044.html";
xMediaContent[10] = "image-files/070-mini_magic-1963.gif";
xMediaContent[11] = "mini_magic-1963-070.html";
xMediaContent[12] = "image-files/074-norton_dominator-1952.gif";
xMediaContent[13] = "norton_dominator-1952-074.html";
xMediaContent[14] = "image-files/116-mg_1.5litre_4_door_saloon-1937.gif";
xMediaContent[15] = "mg_1.5litre_4_door_saloon-1937-116.html";
xMediaContent[16] = "image-files/144-triumph_cycles.gif";
xMediaContent[17] = "triumph_cycles-advert-144.html";
xMediaContent[18] = "image-files/150_lambretta_ld_mk2_le_nouveau_1954.gif";
xMediaContent[19] = "lambretta_ld_mk2_le_nouveau_1954-150.html";
xMediaContent[20] = "image-files/232-jaguar_special_kind_of_motoring_1960s.gif";
xMediaContent[21] = "jaguar_special_kind_of_motoring_1960s-232.html";

//--------------------------------------------------------------------||
//      Stock list						      ||
//	0 = out of stock					      ||
//	1 = in stock						      ||
//--------------------------------------------------------------------||
function AutoDb(id)
{							
var StockDb       = new Array();
StockDb[1]	= 1;
StockDb[2]	= 1;
StockDb[3]	= 0;
StockDb[4]	= 0;
StockDb[5]	= 0;
StockDb[6]	= 0;
StockDb[7]	= 0;
StockDb[8]	= 0;
StockDb[9]	= 0;
StockDb[10]	= 0;
StockDb[11]	= 0;
StockDb[12]	= 0;
StockDb[13]	= 0;
StockDb[14]	= 0;
StockDb[15]	= 0;
StockDb[16]	= 0;
StockDb[17]	= 0;
StockDb[18]	= 0;
StockDb[19]	= 0;
StockDb[20]	= 0;
StockDb[21]	= 0;
StockDb[22]	= 0;
StockDb[23]	= 0;
StockDb[24]	= 0;
StockDb[25]	= 0;
StockDb[26]	= 0;
StockDb[27]	= 0;
StockDb[28]	= 0;
StockDb[29]	= 0;
StockDb[30]	= 0;
StockDb[31]	= 0;
StockDb[32]	= 0;
StockDb[33]	= 0;
StockDb[34]	= 0;
StockDb[35]	= 0;
StockDb[36]	= 0;
StockDb[37]	= 0;
StockDb[38]	= 0;
StockDb[39]	= 0;
StockDb[40]	= 0;
StockDb[41]	= 0;
StockDb[42]	= 0;
StockDb[43]	= 0;
StockDb[44]	= 0;
StockDb[45]	= 0;
StockDb[46]	= 0;
StockDb[47]	= 0;
StockDb[48]	= 0;
StockDb[49]	= 0;
StockDb[50]	= 0;
StockDb[51]	= 0;
StockDb[52]	= 0;
StockDb[53]	= 0;
StockDb[54]	= 0;
StockDb[55]	= 0;
StockDb[56]	= 0;
StockDb[57]	= 0;
StockDb[58]	= 0;
StockDb[59]	= 0;
StockDb[60]	= 0;
StockDb[61]	= 0;
StockDb[62]	= 0;
StockDb[63]	= 0;
StockDb[64]	= 0;
StockDb[65]	= 0;
StockDb[66]	= 0;
StockDb[67]	= 0;
StockDb[68]	= 0;
StockDb[69]	= 0;
StockDb[70]	= 0;
StockDb[71]	= 0;
StockDb[72]	= 0;
StockDb[73]	= 0;
StockDb[74]	= 0;
StockDb[75]	= 0;
StockDb[76]	= 0;
StockDb[77]	= 0;
StockDb[78]	= 0;
StockDb[79]	= 0;
StockDb[80]	= 0;
StockDb[81]	= 0;
StockDb[82]	= 0;
StockDb[83]	= 0;
StockDb[84]	= 0;
StockDb[85]	= 0;
StockDb[86]	= 0;
StockDb[87]	= 0;
StockDb[88]	= 0;
StockDb[89]	= 0;
StockDb[90]	= 0;
StockDb[91]	= 0;
StockDb[92]	= 0;
StockDb[93]	= 0;
StockDb[94]	= 0;
StockDb[95]	= 0;
StockDb[96]	= 0;
StockDb[97]	= 0;
StockDb[98]	= 0;
StockDb[99]	= 0;
StockDb[100]	= 0;
StockDb[101]	= 0;
StockDb[102]	= 0;
StockDb[103]	= 0;
StockDb[104]	= 0;
StockDb[105]	= 0;
StockDb[106]	= 0;
StockDb[107]	= 0;
StockDb[108]	= 0;
StockDb[109]	= 0;
StockDb[110]	= 0;
StockDb[111]	= 0;
StockDb[112]	= 0;
StockDb[113]	= 0;
StockDb[114]	= 0;
StockDb[115]	= 0;
StockDb[116]	= 0;
StockDb[117]	= 0;
StockDb[118]	= 0;
StockDb[119]	= 0;
StockDb[120]	= 0;
StockDb[121]	= 0;
StockDb[122]	= 0;
StockDb[123]	= 0;
StockDb[124]	= 0;
StockDb[125]	= 0;
StockDb[126]	= 0;
StockDb[127]	= 0;
StockDb[128]	= 0;
StockDb[129]	= 0;
StockDb[130]	= 0;
StockDb[131]	= 0;
StockDb[132]	= 0;
StockDb[133]	= 0;
StockDb[134]	= 0;
StockDb[135]	= 0;
StockDb[136]	= 0;
StockDb[137]	= 0;
StockDb[138]	= 0;
StockDb[139]	= 0;
StockDb[140]	= 0;
StockDb[141]	= 0;
StockDb[142]	= 0;
StockDb[143]	= 0;
StockDb[144]	= 0;
StockDb[145]	= 0;
StockDb[146]	= 0;
StockDb[147]	= 0;
StockDb[148]	= 0;
StockDb[149]	= 0;
StockDb[150]	= 0;
StockDb[151]	= 0;
StockDb[152]	= 0;
StockDb[153]	= 0;
StockDb[154]	= 0;
StockDb[155]	= 0;
StockDb[156]	= 0;
StockDb[157]	= 0;
StockDb[158]	= 0;
StockDb[159]	= 0;
StockDb[160]	= 0;
StockDb[161]	= 0;
StockDb[162]	= 0;
StockDb[163]	= 0;
StockDb[164]	= 0;
StockDb[165]	= 0;
StockDb[166]	= 0;
StockDb[167]	= 0;
StockDb[168]	= 0;
StockDb[169]	= 0;
StockDb[170]	= 0;
StockDb[171]	= 0;
StockDb[172]	= 0;
StockDb[173]	= 0;
StockDb[174]	= 0;
StockDb[175]	= 0;
StockDb[176]	= 0;
StockDb[177]	= 0;
StockDb[178]	= 0;
StockDb[179]	= 0;
StockDb[180]	= 0;
StockDb[181]	= 0;
StockDb[182]	= 0;
StockDb[183]	= 0;
StockDb[184]	= 0;
StockDb[185]	= 0;
StockDb[186]	= 0;
StockDb[187]	= 0;
StockDb[188]	= 0;
StockDb[189]	= 0;
StockDb[190]	= 0;
StockDb[191]	= 0;
StockDb[192]	= 0;
StockDb[193]	= 0;
StockDb[194]	= 0;
StockDb[195]	= 0;
StockDb[196]	= 0;
StockDb[197]	= 0;
StockDb[198]	= 0;
StockDb[199]	= 0;
StockDb[200]	= 0;
StockDb[201]	= 0;
StockDb[202]	= 0;
StockDb[203]	= 0;
StockDb[204]	= 0;
StockDb[205]	= 0;
StockDb[206]	= 0;
StockDb[207]	= 0;
StockDb[208]	= 0;
StockDb[209]	= 0;
StockDb[210]	= 0;
StockDb[211]	= 0;
StockDb[212]	= 0;
StockDb[213]	= 0;
StockDb[214]	= 0;
StockDb[215]	= 0;
StockDb[216]	= 0;
StockDb[217]	= 0;
StockDb[218]	= 0;
StockDb[219]	= 0;
StockDb[220]	= 0;
StockDb[221]	= 0;
StockDb[222]	= 0;
StockDb[223]	= 0;
StockDb[224]	= 0;
StockDb[225]	= 0;
StockDb[226]	= 0;
StockDb[227]	= 0;
StockDb[228]	= 0;
StockDb[229]	= 0;
StockDb[230]	= 0;
StockDb[231]	= 0;
StockDb[232]	= 0;
StockDb[233]	= 0;
StockDb[234]	= 0;
StockDb[235]	= 0;
StockDb[236]	= 0;
StockDb[237]	= 0;
StockDb[238]	= 0;
StockDb[239]	= 0;
StockDb[240]	= 0;
StockDb[241]	= 0;
StockDb[242]	= 0;
StockDb[243]	= 0;
StockDb[244]	= 0;
StockDb[245]	= 0;
StockDb[246]	= 0;
StockDb[247]	= 0;
StockDb[248]	= 0;
StockDb[249]	= 0;
StockDb[250]	= 0;
StockDb[251]	= 0;
StockDb[252]	= 0;
StockDb[253]	= 0;
StockDb[254]	= 0;
StockDb[255]	= 0;
StockDb[256]	= 0;
StockDb[257]	= 0;
StockDb[258]	= 0;
StockDb[259]	= 0;
StockDb[260]	= 0;
StockDb[261]	= 0;
StockDb[262]	= 0;
StockDb[263]	= 0;
StockDb[264]	= 0;
StockDb[265]	= 0;
StockDb[266]	= 0;
StockDb[267]	= 0;
StockDb[268]	= 0;
StockDb[269]	= 0;
StockDb[270]	= 0;
StockDb[271]	= 0;
StockDb[272]	= 0;
StockDb[273]	= 0;
StockDb[274]	= 0;
StockDb[275]	= 0;
StockDb[276]	= 0;
StockDb[277]	= 0;
StockDb[278]	= 0;
StockDb[279]	= 0;
StockDb[280]	= 0;
StockDb[281]	= 0;
StockDb[282]	= 0;
StockDb[283]	= 0;
StockDb[284]	= 0;
StockDb[285]	= 0;
StockDb[286]	= 0;
StockDb[287]	= 0;
StockDb[288]	= 0;
StockDb[289]	= 0;
StockDb[290]	= 0;
StockDb[281]	= 0;
StockDb[292]	= 0;
StockDb[293]	= 0;
StockDb[294]	= 0;
StockDb[295]	= 0;
StockDb[296]	= 0;
StockDb[297]	= 0;
StockDb[298]	= 0;
StockDb[299]	= 0;
StockDb[300]	= 0;

return StockDb[id];


}
