//=====================================================================||
//               NOP Design JavaScript Shopping Cart                   ||
//                                                                     ||
// For more information on SmartSystems, or how NOPDesign can help you ||
// Please visit us on the WWW at http://www.nopdesign.com              ||
//                                                                     ||
// Javascript portions of this shopping cart software are available as ||
// freeware from NOP Design.  You must keep this comment unchanged in  ||
// your code.  For more information contact FreeCart@NopDesign.com.    ||
//                                                                     ||
// JavaScript Shop Module, V.4.2.2                                     ||
//=====================================================================||

//---------------------------------------------------------------------||
//                       Global Options                                ||
//                      ----------------                               ||
// Shopping Cart Options, you can modify these options to change the   ||
// the way the cart functions.                                         ||
//                                                                     ||
// Options For Everyone:                                               ||
// =====================                                               ||
// * DisplayNotice: true/false, controls whether the user is provided  ||
//   with a popup letting them know their product is added to the cart ||
// * DisplayShippingColumn: true/false, controls whether the managecart||
//   and checkout pages display shipping cost column.                  ||
// * DisplayShippingRow: true/false, controls whether the managecart   ||
//   and checkout pages display shipping cost total row.               ||
// * DisplayTaxRow: true/false, controls whether the managecart        ||
//   and checkout pages display tax cost total row.                    ||
// * TaxRate: number, your area's current tax rate, ie: if your tax    ||
//   rate was 7.5%, you would set TaxRate = 0.075                      ||
// * MonetarySymbol: string, the symbol which represents dollars/euro, ||
//   in your locale.                                                   ||
// * Language: string, the two digit language code to display user     ||
//   messages in.  Supported languages:                                ||
//    * English  (en)    * French   (fr)                               ||
//    * Dutch    (nl)    * Spanish  (sp)                               ||
//    * German   (ge)    * Finnish  (fi)                               ||
//    * Swedish  (se)    * Brazilian (br)                              ||
//    * Italian  (it)                                                  ||
//                                                                     ||
// Options For Programmers:                                            ||
// ========================                                            ||
// * OutputItem<..>: string, the name of the pair value passed at      ||
//   checkouttime.  Change these only if you are connecting to a CGI   ||
//   script and need other field names, or are using a secure service  ||
//   that requires specific field names.                               ||
// * AppendItemNumToOutput: true/false, if set to true, the number of  ||
//   each ordered item will be appended to the output string.  For     ||
//   example if OutputItemId is 'ID_' and this is set to true, the     ||
//   output field name will be 'ID_1', 'ID_2' ... for each item.       ||
//---------------------------------------------------------------------||
if(GetCookie('serenity') == null) 
{
location.href="pass.html"
}

function logout() 
{ 
	var exp = new Date();
	exp.setTime (exp.getTime() - 1000000000);  // This cookie is history
	var cval = GetCookie ('serenity');
	document.cookie ='serenity' + "=" + cval + "; expires=" + exp.toGMTString();    
}

gImageCapableBrowser = true;
DisplayNotice         = true;
DisplayShippingColumn = false;
DisplayShippingRow    = true;
DisplayTaxRow         = true;
TaxRate               = .0675;
MonetarySymbol        = '$';
Language              = 'en';


OutputItemId          = 'ID_';
OutputItemQuantity    = 'QUANTITY_';
OutputItemPrice       = 'PRICE_';
OutputItemWeight	  = 'WEIGHT_';
OutputItemName        = 'NAME_';
OutputItemShipping    = 'SHIPPING_';
OutputItemAddtlInfo   = 'ADDTLINFO_';
OutputItemManufacturer	  = 'MANUFACTURER_';
OutputItemFabric      = 'FABRIC_';
OutputOrderSubtotal   = 'SUBTOTAL';
OutputOrderShipping   = 'SHIPPING';
OutputOrderTax        = 'TAX';
OutputOrderTotal      = 'TOTAL';
OutputOrderWeight     = 'WEIGHT';
OutputOrderManufacturer     = 'MANUFACTURER';
AppendItemNumToOutput = true;
price_inc = 1.75;
//price_inc = 0;

//---------------------------------------------------------------------||
//                      Language Strings                               ||
//                     ------------------                              ||
// Strings displayed to end users, in language specific encoding.      ||
// only modify these strings if you wish to change language specific   ||
// wording for your site.  If you add a new language, please send it   ||
// back to NOP Design (FreeCart@NopDesign.com) so we can add it to the ||
// distribution.                                                       ||
//---------------------------------------------------------------------||
bLanguageDefined = false;
if ( Language == 'fr' ) {
   strSorry  = "D\351sol\351, votre Caddie est plein !!!";
   strAdded  = " a \351t\351 ajout\351 \340 votre Caddie";
   strRemove = "Cliquez sur 'Ok' pour retirer le produit de votre Caddie";
   strILabel = "Code";
   strDLabel = "D\351signation";
   strQLabel = "Quantit\351";
   strPLabel = "Prix unitaire";
   strSLabel = "Autres Frais";
   strRLabel = "Retirer du Caddie";
   strRButton= "Supprimer l'article !";
   strSUB    = "Sous Total";
   strSHIP   = "Frais de port";
   strTAX    = "Imposition";
   strTOT    = "TOTAL";
   strErrQty = "Quantit\351 Inadmissible";
   strNewQty = 'Veuillez \351crire la nouvelle quantit\351:';
   bLanguageDefined = true;
}
if ( Language == 'nl' ) {
   strSorry  = "Sorry, Uw winkelwagen is vol, gaat u aub naar de Kassa !!!";
   strAdded  = " aan uw winkelwagen toegevoegd.";
   strRemove = "Klik op 'Ok' om dit product uit uw winkelwagen te verwijderen.";
   strILabel = "Bestelcode";
   strQLabel = "Aantal";
   strDLabel = "Product Omschrijving";
   strPLabel = "Prijs";
   strSLabel = "Verzendkosten";
   strRLabel = "Verwijder";
   strRButton= "Verwijder";
   strSUB    = "SUBTOTAAL";
   strSHIP   = "VERZENDKOSTEN";
   strTAX    = "BTW";
   strTOT    = "TOTAAL";
   strErrQty = "Ongeldig Aantal.";
   strNewQty = 'Voer een nieuw aantal in aub:';
   bLanguageDefined = true;
} 
if ( Language == 'sp' ) {
   strSorry  = "Lo siento, el carro está lleno. Proceda con la compra";
   strAdded  = " añadido al carro de compra.";
   strRemove = "Pulse 'Aceptar' para eliminar este producto del carro de la compra.";
   strILabel = "Referencia";
   strDLabel = "Descripción";
   strQLabel = "Cantidad";
   strPLabel = "Precio Unit.";
   strSLabel = "Gastos Envío";
   strRLabel = "Eliminar";
   strRButton= "Eliminar";
   strSUB    = "SUBTOTAL";
   strSHIP   = "GASTOS DE ENVÍO";
   strTAX    = "IVA";
   strTOT    = "TOTAL";
   strErrQty = "Cantidad incorrecta";
   strNewQty = 'Por favor, introduzca una nueva cantidad:';
   bLanguageDefined = true;
}
if ( Language == 'ge' ) {
   strSorry  = "Entschuldigung, Ihre Bestellung ist vol, bitte zum Kasse gehen !!!";
   strAdded  = " an Ihre Bestellung hinzu gefügt.";
   strRemove = "Bitte Drücken sie 'Ok' um das Produkt zu entfernen.";
   strILabel = "Bestelnummer";
   strQLabel = "Anzahl";
   strDLabel = "Produkt Beschreibung";
   strPLabel = "Prijs";
   strSLabel = "Versandkosten";
   strRLabel = "Entfernen";
   strRButton= "Entfernen";
   strSUB    = "SUBTOTAAL";
   strSHIP   = "VERSANDKOSTEN";
   strTAX    = "MWSt";
   strTOT    = "TOTAAL";
   strErrQty = "Ungültiges Anzahl.";
   strNewQty = 'Bitte geben sie ein neues Anzahl ein:';
   bLanguageDefined = true;
}
if ( Language == 'fi' ) {
   strSorry  = "Ostoskorisi on täynnä,ole hyvä ja jatka kassalle.";
   strAdded  = " lisätty ostoskoriisi.";
   strRemove = "Paina 'Ok' poistaaksesi tämän tuotteen ostoskoristasi.";
   strILabel = "Tuote Koodi";
   strDLabel = "Tuotteen Nimi/Kuvaus";
   strQLabel = "Määrä";
   strPLabel = "Hinta";
   strSLabel = "Kuljetusmaksu";
   strRLabel = "Poista ostoskorista";
   strRButton= "Poista";
   strSUB    = "Yhteensä";
   strSHIP   = "Kuljetusmaksu";
   strTAX    = "ALV";
   strTOT    = "Yhteensä";
   strErrQty = "Kpl määrä ei sallituissa rajoissa.";
   strNewQty = 'Ole hyvä, anna uusi kpl määrä:';
   bLanguageDefined = true;
}
if ( Language == 'br' ) {
   strSorry = "Desculpe, seu carrinho está cheio, por favor vá até o caixa.";
   strAdded = " adicionado ao seu carrinho.";
   strRemove = "Clique 'Ok' para remover este produto de seu carrinho.";
   strILabel = " Id do Produto";
   strDLabel = "Nome do Produto/Descrição";
   strQLabel = "Quantidade";
   strPLabel = "Preço";
   strSLabel = "Envio";
   strRLabel = "Remover do Carrinho";
   strRButton= "Remover";
   strSUB = "SUBTOTAL";
   strSHIP = "Envio";
   strTAX = "IMPOSTO";
   strTOT = "TOTAL";
   strErrQty = "Quantidade inválida.";
   strNewQty = 'Por favor digite uma nova Quantidade:';
   bLanguageDefined = true;
}
if ( Language == 'se' ) {
   strSorry  = "Din vagn \344r fylld,var v\344nlig att s\344nd order.";
   strAdded  = " l\344ggs i din kundvagn.";
   strRemove = "Klicka 'Ok' f\366r att ta bort denna produkten fr\345n din kundvagn.";
   strILabel = "Produkt Id";
   strDLabel = "Produkt namn/Beskrivning";
   strQLabel = "Antal";
   strPLabel = "Pris";
   strSLabel = "Frakt";
   strRLabel = "Ta bort fr\345n din kundvagn";
   strRButton= "Ta bort";
   strSUB    = "SUMMA";
   strSHIP   = "FRAKT";
   strTAX    = "MOMS";
   strTOT    = "SLUT SUMMA TOTALT";
   strErrQty = "Felaktigt antal.";
   strNewQty = 'Var v\344nlig att skriva in ett nytt antal:';
   bLanguageDefined = true;
}
if ( Language == 'it' ) {
   strSorry  = "Il tuo Carrello \350 al massimo della capienza, procedi con l'Invio Ordine.";
   strAdded  = " nel tuo Carrello.";
   strRemove = "Clicca su 'OK' per rimuovere il Prodotto dal tuo Carrello.";
   strILabel = "ID Prodotto";
   strDLabel = "Descrizione Prodotto";
   strQLabel = "Quantit\340";
   strPLabel = "Prezzo";
   strSLabel = "Spese di Spedizione";
   strRLabel = "Rimuovi dal Carrello";
   strRButton= "Rimuovi";
   strSUB    = "SUBTOTALE";
   strSHIP   = "SPESE DI SPEDIZIONE";
   strTAX    = "I.V.A.";
   strTOT    = "TOTALE";
   strErrQty = "Quantit\340 Errata.";
   strNewQty = 'Per favore inserisci la nuova quantit\340:';
   bLanguageDefined = true;
}
if ( Language == 'en' || !bLanguageDefined ) {
   strSorry  = "I'm Sorry, your cart is full, please proceed to checkout.";
   strAdded  = " added to your shopping cart.";
   strRemove = "Click 'Ok' to remove this product from your shopping cart.";
   strILabel = "Product Id";
   strDLabel = "Product Name/Description";
   strQLabel = "Quantity";
   strPLabel = "Price";
   strSLabel = "Shipping";
   strRLabel = "Remove From Cart";
   strRButton= "Remove";
   strSUB    = "SUBTOTAL";
   strSHIP   = "SHIPPING";
   strTAX    = "TAX";
   strTOT    = "TOTAL";
   strErrQty = "Invalid Quantity.";
   strNewQty = 'Please enter new quantity:';
   bLanguageDefined = true;
}

function Bookmark()
{
if ((navigator.appName == "Microsoft Internet Explorer") && (parseInt(navigator.appVersion) >= 4)) {
var url="http://www.serenitylifefurniture.com/";
var title="Serenity Lifestyles";
document.write('<A HREF="javascript:window.ext');
document.write('ernal.AddFavorite(url,title);" ');
document.write('onMouseOver=" window.status=');
document.write("'Please Add Serenity Lifestyles To Your Favorites.'; return true ");
document.write('"onMouseOut=" window.status=');
document.write("' '; return true ");
document.write('"><FONT COLOR="#000000"><small><B>Bookmark Us!</B></small></FONT></a>');}
else {
var msg = "<b>Bookmark this page by pressing</b>";
if(navigator.appName == "Netscape") msg += " <b>(Ctrl-D) on your keyboard.</b>";
document.write(msg);}}

function canManipulateImages() {
	if (document.images)
		return true;
	else
		return false;
}
function loadPosterImage(imageURL) {
	if (gImageCapableBrowser) {
		document.imagePoster.src = imageURL;
		return false;
	}
	else {
		return true;
	}
}

function CaricaFoto(img){
  foto1= new Image();
  foto1.src=(img);
  Controlla(img);
}
function Controlla(img){
  if((foto1.width!=0)&&(foto1.height!=0)){
    viewFoto(img);
  }
  else{
    funzione="Controlla('"+img+"')";
    intervallo=setTimeout(funzione,20);
  }
}
function viewFoto(img){
  largh=foto1.width+20;
  altez=foto1.height+20;
  stringa="width="+largh+",height="+altez;
  finestra=window.open(img,"",stringa);
}
//=====================================================================||
//---------------------------------------------------------------------||
//    YOU DO NOT NEED TO MAKE ANY MODIFICATIONS BELOW THIS LINE        ||
//---------------------------------------------------------------------||
//=====================================================================||

//---------------------------------------------------------------------||
// FUNCTION:    CKquantity                                             ||
// PARAMETERS:  Quantity to                                            ||
// RETURNS:     Quantity as a number, and possible alert               ||
// PURPOSE:     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 = "1";

   return(strNewQuantity);
}


//---------------------------------------------------------------------||
// FUNCTION:    AddToCart                                              ||
// PARAMETERS:  Form Object                                            ||
// RETURNS:     Cookie to user's browser, with prompt                  ||
// PURPOSE:     Adds a product to the user's shopping cart             ||
//---------------------------------------------------------------------||
function AddToCart(thisForm) {
   var iNumberOrdered = 0;
   var bAlreadyInCart = false;
   var notice = "";
   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 )
      strQUANTITY  = "1";
   else
      strQUANTITY  = thisForm.QUANTITY.value;

   if ( thisForm.PRICE == null )
      strPRICE     = "0.00";
   else
      strPRICE     = thisForm.PRICE.value;
	  
	if ( thisForm.WEIGHT == null )
      strWEIGHT     = 0;
   else
      strWEIGHT     = thisForm.WEIGHT.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.ADDITIONALINFO == null )
      strADDTLINFO = "";
   else
      strADDTLINFO = thisForm.ADDITIONALINFO[thisForm.ADDITIONALINFO.selectedIndex].value;
	  if ( thisForm.MANUFACTURER == null )
      strMANUFACTURER     = 1;
   else
      strMANUFACTURER     = thisForm.MANUFACTURER.value;
   //if ( thisForm.FABRIC == null )
   // strFABRIC = "";
   //else
   //   strFABRIC = thisForm.FABRIC[thisForm.FABRIC.selectedIndex].value;
	 if ( thisForm.FABRIC == null ){
      strFABRIC = "";
      strOptionIds = "";
   }
   else {
      
      if( thisForm.GROUPID.length > 1 ) {
         var i;
         strFABRIC = "";
         strOptionIds = "";
         for( i=0; i<thisForm.FABRIC.length; i++){
            iOpIdSelected = thisForm.FABRIC[i][thisForm.FABRIC[i].selectedIndex].value;
            strFABRIC +=  thisForm.GROUPLABEL[i].value + ":  " + eval("thisForm.OV_"+iOpIdSelected+".value");
            //'<BR>' +
            if( strOptionIds != "" ) 
               strOptionIds += ":";

            strOptionIds += thisForm.GROUPID[i].value + "," + iOpIdSelected;

            strPRICE = parseFloat(strPRICE);
            strPRICE += parseFloat(eval("thisForm.OS_"+iOpIdSelected+".value"));
         }
      } else {
         strFABRIC = "";
         strOptionIds = "";
         iOpIdSelected = thisForm.FABRIC[thisForm.FABRIC.selectedIndex].value;
         strFABRIC += thisForm.GROUPLABEL.value + ":  " + eval("thisForm.OV_"+iOpIdSelected+".value");
         //'<BR>' 
         if( strOptionIds != "" ) 
            strOptionIds += ":";

         strOptionIds += thisForm.GROUPID.value + "," + iOpIdSelected;

         strPRICE = parseFloat(strPRICE);
         strPRICE += parseFloat(eval("thisForm.OS_"+iOpIdSelected+".value"));
      }

      //strFABRIC = "<!" + strOptionIds + ">" + strFABRIC;
   } 

   //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);
 	  Token5 = database.indexOf("|", Token4+1);
	  Token6 = database.indexOf("|", Token5+1);
	  Token7 = database.indexOf("|", Token6+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, Token5 );
	  fields[6] = database.substring( Token5+1, Token6 );
	  fields[7] = database.substring( Token6+1, Token7 );
      fields[8] = database.substring( Token7+1, database.length );
 
      if ( fields[0] == strID_NUM &&
           fields[2] == strPRICE  &&
           fields[3] == strNAME   &&
           fields[5] == strADDTLINFO &&
		   fields[6] == strFABRIC &&
		   fields[7] == strWEIGHT &&
		   fields[8] == strMANUFACTURER
         ) {
         bAlreadyInCart = true;
         dbUpdatedOrder = strID_NUM    + "|" +
                          (parseInt(strQUANTITY)+parseInt(fields[1]))  + "|" +
                          strPRICE     + "|" +
                          strNAME      + "|" +
                          strSHIPPING  + "|" +
                          strADDTLINFO + "|" +
                          strFABRIC		+ "|" +
						  strWEIGHT		+ "|" +
						  strMANUFACTURER;
         strNewOrder = "Order." + i;
         DeleteCookie(strNewOrder, "/");
         SetCookie(strNewOrder, dbUpdatedOrder, null, "/");
         notice = strQUANTITY + " " + strNAME + strAdded;
         break;
      }
   }


   if( !bAlreadyInCart ) {
      iNumberOrdered++;

      if ( iNumberOrdered > 12 )
         alert( strSorry );
      else {
         dbUpdatedOrder = strID_NUM    + "|" + 
                          strQUANTITY  + "|" +
                          strPRICE     + "|" +
                          strNAME      + "|" +
                          strSHIPPING  + "|" +
                          strADDTLINFO + "|" +
                          strFABRIC		+ "|" +
						  strWEIGHT		+ "|" +
						  strMANUFACTURER;

         strNewOrder = "Order." + iNumberOrdered;
         SetCookie(strNewOrder, dbUpdatedOrder, null, "/");
         SetCookie("NumberOrdered", iNumberOrdered, null, "/");
         notice = strQUANTITY + " " + strNAME + strAdded;
      }
   }

   if( DisplayNotice )
      alert(notice);
}


//---------------------------------------------------------------------||
// FUNCTION:    getCookieVal                                           ||
// PARAMETERS:  offset                                                 ||
// RETURNS:     URL unescaped Cookie Value                             ||
// PURPOSE:     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)));
}


//---------------------------------------------------------------------||
// FUNCTION:    FixCookieDate                                          ||
// PARAMETERS:  date                                                   ||
// RETURNS:     date                                                   ||
// PURPOSE:     Fixes cookie date, stores back in date                 ||
//---------------------------------------------------------------------||
function FixCookieDate (date) {
   var base = new Date(0);
   var skew = base.getTime();

   date.setTime (date.getTime() - skew);
}


//---------------------------------------------------------------------||
// FUNCTION:    GetCookie                                              ||
// PARAMETERS:  Name                                                   ||
// RETURNS:     Value in Cookie                                        ||
// PURPOSE:     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);
}


//---------------------------------------------------------------------||
// FUNCTION:    SetCookie                                              ||
// PARAMETERS:  name, value, expiration date, path, domain, security   ||
// RETURNS:     Null                                                   ||
// PURPOSE:     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" : "");
}


//---------------------------------------------------------------------||
// FUNCTION:    DeleteCookie                                           ||
// PARAMETERS:  Cookie name, path, domain                              ||
// RETURNS:     null                                                   ||
// PURPOSE:     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";
   }
}


//---------------------------------------------------------------------||
// FUNCTION:    MoneyFormat                                            ||
// PARAMETERS:  Number to be formatted                                 ||
// RETURNS:     Formatted Number                                       ||
// PURPOSE:     Reformats Dollar Amount to #.## format                 ||
//---------------------------------------------------------------------||
function moneyFormat(input) {
   var dollars = Math.floor(input);
   var tmp = new String(input);

   for ( var decimalAt = 0; decimalAt < tmp.length; decimalAt++ ) {
      if ( tmp.charAt(decimalAt)=="." )
         break;
   }

   var cents  = "" + Math.round(input * 100);
   cents = cents.substring(cents.length-2, cents.length)
           dollars += ((tmp.charAt(decimalAt+2)=="9")&&(cents=="00"))? 1 : 0;

   if ( cents == "0" )
      cents = "00";

   return(dollars + "." + cents);
}


//---------------------------------------------------------------------||
// FUNCTION:    RemoveFromCart                                         ||
// PARAMETERS:  Order Number to Remove                                 ||
// RETURNS:     Null                                                   ||
// PURPOSE:     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;
   }
}


//---------------------------------------------------------------------||
// FUNCTION:    ChangeQuantity                                         ||
// PARAMETERS:  Order Number to Change Quantity                        ||
// RETURNS:     Null                                                   ||
// PURPOSE:     Changes quantity of an item in the shopping cart       ||
//---------------------------------------------------------------------||
function ChangeQuantity(QtyOrder,CurrQty) {
   var newQty;

   newQty=prompt(strNewQty,CurrQty);
   if( isNaN(newQty) ) {
      alert( strErrQty );
   } else {
      NewOrder = "Order." + QtyOrder;
      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);
      Token5 = database.indexOf("|", Token4+1);
	  Token6 = database.indexOf("|", Token5+1);
	  Token7 = database.indexOf("|", Token6+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, Token5 );
	  fields[6] = database.substring( Token5+1, Token6 );
	  fields[7] = database.substring( Token6+1, Token7 );
	  fields[8] = database.substring( Token7+1, database.length );
 
      dbUpdatedOrder = fields[0] + "|" +
                       newQty    + "|" +
                       fields[2] + "|" +
                       fields[3] + "|" +
                       fields[4] + "|" +
                       fields[5] + "|" +
                       fields[6] + "|" +
					   fields[7] + "|" +
					   fields[8];
      strNewOrder = "Order." + QtyOrder;
      DeleteCookie(strNewOrder, "/");
      SetCookie(strNewOrder, dbUpdatedOrder, null, "/");

      return true;
   }

   return false;
}


//---------------------------------------------------------------------||
// FUNCTION:    GetFromCart                                            ||
// PARAMETERS:  Null                                                   ||
// RETURNS:     Product Table Written to Document                      ||
// PURPOSE:     Draws current cart product table on HTML page          ||
//---------------------------------------------------------------------||
function GetFromCart( fShipping ) {
   if( fShipping )
      WriteToForm( true, fShipping );
   else
      WriteToForm( true, 0 );
}


//---------------------------------------------------------------------||
// FUNCTION:    WriteToForm                                            ||
// PARAMETERS:  Null                                                   ||
// RETURNS:     Product hidden fields Written to Document              ||
// PURPOSE:     Draws current cart product hidden fields on HTML form  ||
//              if bDisplay == true, shows cart output as HTML table   ||
//---------------------------------------------------------------------||
function WriteToForm( bDisplay, fShipping ) {
   var iNumberOrdered = 0;
   var fTotal         = 0;
   var fTax           = 0;
   var fWeight		  = 0;
   var strTotal       = "";
   var strTax         = "";
   var strShipping    = "";
   var strOutput      = "";
   iNumberOrdered = GetCookie("NumberOrdered");

   if( iNumberOrdered == null )
    iNumberOrdered = 0;

  if ( bDisplay )
      strOutput = "<TABLE CLASS=\"nopcart\" width=80%><TR>" +
                  "<TD CLASS=\"nopheader\"><B>"+strQLabel+"&nbsp;"+"</B></TD>" + 
				  "<TD CLASS=\"nopheader\"><B>"+strILabel+"&nbsp;"+"</B></TD>" + 
                  "<TD CLASS=\"nopheader\" ><B>"+strDLabel+"&nbsp;"+"</B></TD>" + 
                  "<TD CLASS=\"nopheader\"><B>"+strPLabel+"&nbsp;"+"</B></TD>" + 
                  (DisplayShippingColumn?"<TD CLASS=\"nopheader\"><B>"+strSLabel+"</B></TD>":"") +
                  "<TD CLASS=\"nopheader\"><B>"+strRLabel+"</B></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);
	  Token5 = database.indexOf("|", Token4+1);
	  Token6 = database.indexOf("|", Token5+1);
	  Token7 = database.indexOf("|", Token6+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, Token5 );
	  fields[6] = database.substring( Token5+1, Token6 );
	  fields[7] = database.substring( Token6+1, Token7 );
	  fields[8] = database.substring( Token7+1, database.length );

      fTotal     += (parseInt(fields[1]) * parseFloat(fields[2]) );
      fShipping  += (parseInt(fields[1]) * parseFloat(fields[4]) );
	  fWeight    += (parseInt(fields[1]) * parseFloat(fields[7]) );
      fTax        = (fTotal * TaxRate);
//      strTotal    = moneyFormat(fTotal);
      strTotal    = (fTotal);
      strTax      = moneyFormat(fTax);
      strShipping = moneyFormat(fShipping);

      if ( bDisplay ) {
         strOutput += "<TR><TD CLASS=\"nopentry\">" + fields[1] + "</TD>" + "<TD CLASS=\"nopentry\">"  + fields[0] + "</TD>";

         if ( fields[5] == "" )
            strOutput += "<TD CLASS=\"nopentry\">"  + fields[3] + "</TD>";
         else
            strOutput += "<TD CLASS=\"nopentry\" >"  + fields[5] + " " +fields[6] + " "+ fields[3] + "</TD>";

         strOutput += "<TD CLASS=\"nopentry\">"+ MonetarySymbol + moneyFormat(fields[2]) + "/ea</TD>";

         if ( DisplayShippingColumn ) {
            if ( parseFloat(fields[4]) > 0 )
               strOutput += "<TD CLASS=\"nopentry\">"+ MonetarySymbol + moneyFormat(fields[4]) + "/ea</TD>";
            else
               strOutput += "<TD CLASS=\"nopentry\">N/A</TD>";
         }

         strOutput += "<TD CLASS=\"nopentry\" ALIGN=CENTER><input type=button value=\" "+strRButton+" \" onClick=\"RemoveFromCart("+i+")\" class=\"nopbutton\"></TD></TR>";
      }

      if( AppendItemNumToOutput ) {
         strFooter = i;
      } else {
         strFooter = "";
      }
      strOutput += "<input type=hidden name=\"" + OutputItemId        + strFooter + "\" value=\"" + fields[0] + "\">";
      strOutput += "<input type=hidden name=\"" + OutputItemQuantity  + strFooter + "\" value=\"" + fields[1] + "\">";
      strOutput += "<input type=hidden name=\"" + OutputItemPrice     + strFooter + "\" value=\"" + fields[2] + "\">";
      strOutput += "<input type=hidden name=\"" + OutputItemName      + strFooter + "\" value=\"" + fields[3] + "\">";
      strOutput += "<input type=hidden name=\"" + OutputItemShipping  + strFooter + "\" value=\"" + fields[4] + "\">";
      strOutput += "<input type=hidden name=\"" + OutputItemAddtlInfo + strFooter + "\" value=\"" + fields[5] + "\">";
	  strOutput += "<input type=hidden name=\"" + OutputItemFabric    + strFooter + "\" value=\"" + fields[6] + "\">";
	  strOutput += "<input type=hidden name=\"" + OutputItemWeight    + strFooter + "\" value=\"" + fields[7] + "\">";
	  strOutput += "<input type=hidden name=\"" + OutputItemManufacturer    + strFooter + "\" value=\"" + fields[8] + "\">";
   }

   if ( bDisplay ) {
      strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=4><B>"+strSUB+"</B></TD>";
      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>" + MonetarySymbol + strTotal + "</B></TD>";
      strOutput += "</TR>";

      if ( DisplayShippingRow ) {
         strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=4><B>"+strSHIP+"</B></TD>";
         strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>" + MonetarySymbol + strShipping + "</B></TD>";
         strOutput += "</TR>";
      }

      if ( DisplayTaxRow ) {
         strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=4><B>"+strTAX+"</B></TD>";
         strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>" + MonetarySymbol + strTax + "</B></TD>";
         strOutput += "</TR>";
      }

      strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=4><B>"+strTOT+"</B></TD>";
      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>" + MonetarySymbol + moneyFormat((fTotal + fShipping + fTax)) + "</B></TD>";
      strOutput += "</TR>";
      strOutput += "</TABLE>";

      strOutput += "<input type=hidden name=\""+OutputOrderSubtotal+"\" value=\""+ strTotal + "\">";
      strOutput += "<input type=hidden name=\""+OutputOrderShipping+"\" value=\""+ strShipping + "\">";
      strOutput += "<input type=hidden name=\""+OutputOrderTax+"\"      value=\""+ strTax + "\">";
      strOutput += "<input type=hidden name=\""+OutputOrderTotal+"\"    value=\""+ (fTotal + fShipping + fTax) + "\">";
      strOutput += "<input type=hidden name=\""+OutputOrderTotalWeight+"\"    value=\""+ fWeight + "\">";

//      strOutput += "<input type=hidden name=\""+OutputOrderSubtotal+"\" value=\""+ MonetarySymbol + strTotal + "\">";
//      strOutput += "<input type=hidden name=\""+OutputOrderShipping+"\" value=\""+ MonetarySymbol + strShipping + "\">";
//      strOutput += "<input type=hidden name=\""+OutputOrderTax+"\"      value=\""+ MonetarySymbol + strTax + "\">";
//      strOutput += "<input type=hidden name=\""+OutputOrderTotal+"\"    value=\""+ MonetarySymbol + moneyFormat((fTotal + fShipping + fTax)) + "\">";
//      strOutput += "<input type=hidden name=\""+OutputOrderTotalWeight+"\"    value=\""+ fWeight + "\">";

   }

   document.write(strOutput);
   document.close();
}
var aarray = new Array( "A3010",
"A3024",
"A3032",
"A3045",
"A3048",
"A3054",
"A3055",
"A3057",
"A3059",
"A3070",
"A3073",
"A3074",
"A3096",
"A3104",
"A3140",
"A3148",
"A3152",
"A3156",
"A3157",
"A3175",
"A3186",
"A3310",
"A3339",
"A3385",
"A3394",
"A3461",
"A3485",
"A3715",
"A3716",
"A3724",
"A4351",
"A4368",
"A5555",
"A6356",
"A6357",
"A6378",
"A6401",
"A6402",
"A6404",
"A6406",
"A6411",
"A6414",
"A6432",
"A6434",
"A6445",
"A6451",
"A6452",
"A6459",
"A6461",
"A6482",
"A6495");


								  
var barray = new Array ("B3033",
"B3060",
"B3062",
"B3063",
"B3064",
"B3067",
"B3069",
"B3071",
"B3078",
"B3108",
"B3109",
"B3145",
"B3170",
"B3670",
"B3722",
"B3840",
"B3841",
"B4011",
"B4047",
"B4057",
"B4282",
"B4307",
"B4329",
"B4370",
"B4374",
"B4375",
"B4386",
"B4388",
"B4397",
"B4398",
"B4530",
"B4824",
"B6320",
"B6323",
"B6329",
"B6336",
"B6363",
"B6368",
"B6370",
"B6372",
"B6373",
"B6375",
"B6376",
"B6377",
"B6379",
"B6381",
"B6382",
"B6384",
"B6385",
"B6387",
"B6388",
"B6390",
"B6393",
"B6395",
"B6396",
"B6398",
"B6410",
"B6412",
"B6413",
"B6415",
"B6420",
"B6421",
"B6423",
"B6425",
"B6430",
"B6433",
"B6435",
"B6437",
"B6438",
"B6443",
"B6446",
"B6448",
"B6449",
"B6450",
"B6454",
"B6455",
"B6457",
"B6458",
"B6460",
"B6462",
"B6463",
"B6465",
"B6480",
"B6481",
"B6483",
"B6484",
"B6490",
"B71007",
"B71012");


var carray = new Array ("C3021",
"C3146",
"C3172",
"C3190",
"C3191",
"C3192",
"C3193",
"C3194",
"C3229",
"C3970",
"C3971",
"C4013",
"C4029",
"C4117",
"C4146",
"C4167",
"C4190",
"C4191",
"C4245",
"C4256",
"C4259",
"C4322",
"C4336",
"C4342",
"C4408",
"C4650",
"C4770",
"C6359",
"C6369",
"C6371",
"C6374",
"C6380",
"C6383",
"C6389",
"C6392",
"C6436",
"C6456",
"C6499",
"C73009",
"C73010",
"C73011");


								  
var darray = new Array ("D4169",
"D4182",
"D4183",
"D4219",
"D4233",
"D4266",
"D4409",
"D4415",
"D4442",
"D4563",
"D4585",
"D4656",
"D4712",
"D4741",
"D4764",
"D4765",
"D4768",
"D4769",
"D4772",
"D4800",
"D4801",
"D4806",
"D4807",
"D4814",
"D4816",
"D4820",
"D4821",
"D4829",
"D4830",
"D4843",
"D4850",
"D4851",
"D4852",
"D4853",
"D4880",
"D5323",
"D5324",
"D5976",
"D6331",
"D6332",
"D6333",
"D6334",
"D6335",
"D6348",
"D6350",
"D6352",
"D6361",
"D6362",
"D6391",
"D6394",
"D6397",
"D6453",
"D70010",
"D72000",
"D72001",
"D72002",
"D72003",
"D72004",
"D72005",
"D72006",
"D72007",
"D72008",
"D72009",
"D72010",
"D72011",
"D72012",
"D72013",
"D72014",
"D72015",
"D73000");



var earray = new Array ("E4074",
"E4154",
"E4346",
"E4376",
"E4377",
"E4761",
"E4782",
"E4857",
"E5072",
"E70013");


								  
var farray = new Array ("F4654",
"F4657",
"F4882",
"F5023",
"F5082",
"F5328",
"F5411",
"F5412",
"F5722",
"F73001",
"F73002",
"F73003",
"F73006",
"F73007",
"F73008");


								  
								  
var garray = new Array ("G4331",
"G5270");


								  
var harray = new Array("H4309",
"H4311",
"H4316",
"H4317",
"H4318",
"H4319",
"H4323",
"H4324",
"H4325",
"H4328",
"H4334",
"H4337",
"H4345",
"H4358",
"H4362",
"H4366",
"H4369",
"H4378",
"H4379",
"H4383",
"H4384",
"H4395",
"H4674",
"H5271",
"H5577",
"H6300",
"H6301",
"H6302",
"H6303",
"H6304",
"H6305",
"H6306",
"H6307",
"H6308",
"H6309",
"H6310",
"H6311",
"H6313",
"H6314",
"H6315",
"H6318",
"H6319",
"H6338",
"H6339",
"H6344",
"H6346",
"H6416",
"H6440",
"H6442",
"H6447",
"H6467",
"H6468",
"H70012",
"H73004",
"H73005");

var iarray = new Array("I4301",
"I4302",
"I4304");

var jarray = new Array("J4303");

var karray = new Array("K5022",
"K5972",
"K5975",
"K6441",
"K6444");



var marray = new Array("M4822",
"M5760",
"M5974");

function FabRequest(num)
{
	var strFabRequestOutput = "";
	strFabRequestOutput +="<select name=\"fabric"+ num +"\">" 
    strFabRequestOutput += "<option selected>"
	for (var i=0; i<aarray.length; i++)
	{
		strFabRequestOutput += "<option value=\""+aarray[i]+"\">"+aarray[i]+""
	}
	for (var i=0; i<barray.length; i++)
	{
		strFabRequestOutput += "<option value=\""+barray[i]+"\">"+barray[i]+""
	}
	for (var i=0; i<carray.length; i++)
	{
		strFabRequestOutput += "<option value=\""+carray[i]+"\">"+carray[i]+""
	}
	for (var i=0; i<darray.length; i++)
	{
		strFabRequestOutput += "<option value=\""+darray[i]+"\">"+darray[i]+""
	}
	for (var i=0; i<earray.length; i++)
	{
		strFabRequestOutput += "<option value=\""+earray[i]+"\">"+earray[i]+""
	}
	for (var i=0; i<farray.length; i++)
	{
		strFabRequestOutput += "<option value=\""+farray[i]+"\">"+farray[i]+""
	}
	for (var i=0; i<garray.length; i++)
	{
		strFabRequestOutput += "<option value=\""+garray[i]+"\">"+garray[i]+""
	}
	for (var i=0; i<harray.length; i++)
	{
		strFabRequestOutput += "<option value=\""+harray[i]+"\">"+harray[i]+""
	}
	for (var i=0; i<karray.length; i++)
	{
		strFabRequestOutput += "<option value=\""+karray[i]+"\">"+karray[i]+""
	}
	for (var i=0; i<marray.length; i++)
	{
		strFabRequestOutput += "<option value=\""+marray[i]+"\">"+marray[i]+""
	}
    strFabRequestOutput += "</select>"
	document.write(strFabRequestOutput);
	document.close();
}
function Fab(increment)
{
	strFabOutput = "";	
	strFabOutput += "<INPUT TYPE=HIDDEN NAME=GROUPLABEL VALUE=\"Fabric\">"
	strFabOutput += "<INPUT TYPE=HIDDEN NAME=GROUPID VALUE=\""+increment+"\">"
	strFabOutput +="Fabric:"
	strFabOutput +="<select name=FABRIC>" 
	strFabOutput += "<option selected value=\""+aarray[0]+"\">"+aarray[0]+""	
	for (var i=1; i<aarray.length; i++)
	{
		strFabOutput += "<option value=\""+aarray[i]+"\">"+aarray[i]+""		
	}                                
    for (var i=0; i<barray.length; i++)
	{
		strFabOutput += "<option value=\""+barray[i]+"\">"+barray[i]+" (Add $"+increment+")"
	}
	for (var i=0; i<carray.length; i++)
	{
		strFabOutput += "<option value=\""+carray[i]+"\">"+carray[i]+" (Add $"+increment*2+")"
	}
	for (var i=0; i<darray.length; i++)
	{
		strFabOutput += "<option value=\""+darray[i]+"\">"+darray[i]+" (Add $"+increment*3+")"
	}
	for (var i=0; i<earray.length; i++)
	{
		strFabOutput += "<option value=\""+earray[i]+"\">"+earray[i]+" (Add $"+increment*4+")"
	}
	for (var i=0; i<farray.length; i++)
	{
		strFabOutput += "<option value=\""+farray[i]+"\">"+farray[i]+" (Add $"+increment*5+")"
	}
	for (var i=0; i<garray.length; i++)
	{	
		strFabOutput += "<option value=\""+garray[i]+"\">"+garray[i]+" (Add $"+increment*6+")"
	}
	for (var i=0; i<harray.length; i++)
	{	
		strFabOutput += "<option value=\""+harray[i]+"\">"+harray[i]+" (Add $"+increment*7+")"
	}
	for (var i=0; i<karray.length; i++)
	{
		strFabOutput += "<option value=\""+karray[i]+"\">"+karray[i]+" (Add $"+increment*8+")"
	}    
	for (var i=0; i<marray.length; i++)
	{
		strFabOutput += "<option value=\""+marray[i]+"\">"+marray[i]+" (Add $"+increment*10+")"
	}          
	strFabOutput += "</select>"
	
	strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OV_"+aarray[0]+"\' VALUE=\'"+aarray[0]+"\'>"
	strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OS_"+aarray[0]+"\' VALUE=\'0\'>" 
	for (var i=1; i<aarray.length; i++)
	{
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OV_"+aarray[i]+"\' VALUE=\'"+aarray[i]+"\'>"
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OS_"+aarray[i]+"\' VALUE=\'0\'>"		
	}                                
    for (var i=0; i<barray.length; i++)
	{
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OV_"+barray[i]+"\' VALUE=\'"+barray[i]+"\'>"
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OS_"+barray[i]+"\' VALUE=\'"+increment+"\'>"
	}
	for (var i=0; i<carray.length; i++)
	{
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OV_"+carray[i]+"\' VALUE=\'"+carray[i]+"\'>"
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OS_"+carray[i]+"\' VALUE=\'"+increment*2+"\'>"
	}
	for (var i=0; i<darray.length; i++)
	{
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OV_"+darray[i]+"\' VALUE=\'"+darray[i]+"\'>"
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OS_"+darray[i]+"\' VALUE=\'"+increment*3+"\'>"
	}
	for (var i=0; i<earray.length; i++)
	{
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OV_"+earray[i]+"\' VALUE=\'"+earray[i]+"\'>"
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OS_"+earray[i]+"\' VALUE=\'"+increment*4+"\'>"
	}
	for (var i=0; i<farray.length; i++)
	{
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OV_"+farray[i]+"\' VALUE=\'"+farray[i]+"\'>"
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OS_"+farray[i]+"\' VALUE=\'"+increment*5+"\'>"
	}
	for (var i=0; i<garray.length; i++)
	{
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OV_"+garray[i]+"\' VALUE=\'"+garray[i]+"\'>"
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OS_"+garray[i]+"\' VALUE=\'"+increment*6+"\'>"
	}
	for (var i=0; i<harray.length; i++)
	{
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OV_"+harray[i]+"\' VALUE=\'"+harray[i]+"\'>"
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OS_"+harray[i]+"\' VALUE=\'"+increment*7+"\'>"
	}
	for (var i=0; i<karray.length; i++)
	{
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OV_"+karray[i]+"\' VALUE=\'"+karray[i]+"\'>"
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OS_"+karray[i]+"\' VALUE=\'"+increment*8+"\'>"
	}    
	for (var i=0; i<marray.length; i++)
	{
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OV_"+marray[i]+"\' VALUE=\'"+marray[i]+"\'>"
		strFabOutput += "<INPUT TYPE=HIDDEN NAME=\'OS_"+marray[i]+"\' VALUE=\'"+increment*10+"\'>"
	}          
	
	return strFabOutput
}	

//=====================================================================||
//               END NOP Design SmartPost Shopping Cart                ||
//=====================================================================||
function AddItem(item_name, item_num, item_price, item_fabric, fabric_inc, finish_cat, weight, manufacturer)
{
	var strItemOutput="";   
	strItemOutput += "<td><div align=\"center\">$"+Math.round(item_price*price_inc)+"</div></td>";   
    strItemOutput += "<td><div align=\"center\"><font size=\"2\">";
	strItemOutput += "<FORM NAME=order"+item_num+">";
    strItemOutput += "Qty:";
    strItemOutput += "<input type=text size=1 maxlength=2 name=QUANTITY onChange=\'this.value=CKquantity(this.value)\' value=\"1\">";    
    strItemOutput += "<input type=hidden name=PRICE value=\""+Math.round(item_price*price_inc)+"\">";
    strItemOutput += "<input type=hidden name=NAME value=\""+item_name+"\">";
    strItemOutput += "<input type=hidden name=ID_NUM value=\""+item_num+"\">";
    strItemOutput += "<input type=hidden name=SHIPPING value=\"0\">";
	strItemOutput += "<input type=hidden name=WEIGHT value=\""+weight+"\">";
	if(manufacturer == null)
		strItemOutput += "<input type=hidden name=MANUFACTURER value=\"1\">";
	else
		
		strItemOutput += "<input type=hidden name=MANUFACTURER value=\""+manufacturer+"\">";

    if(finish_cat!=0)
	{	strItemOutput += "Finish: ";
    	strItemOutput += "<select name=ADDITIONALINFO>";
		if(finish_cat==1)
		{			
    		strItemOutput += "    <option  selected value=\"WW\">	Whitewash";
		}
		else if(finish_cat==2)
		{			
    		strItemOutput += "    <option  selected value=\"P\">	Pecan";
		}
		else if(finish_cat==3)
		{			
    		strItemOutput += "    <option  selected value=\"N\">	Natural";
		}
		else if(finish_cat==4)
		{			
    		strItemOutput += "    <option  selected value=\"WH\">	White";
		}
		else if(finish_cat==5)
		{			
    		strItemOutput += "    <option  selected value=\"SP\">	Spice";
		}
		else if(finish_cat==6)
		{			
    		strItemOutput += "    <option  selected value=\"Ant\">  Antique";
		}
		else if(finish_cat==7)
		{			
    		strItemOutput += "    <option  selected value=\"CA\">	Camel";
		}
		else if(finish_cat==8)
		{			
    		strItemOutput += "    <option  selected value=\"ANW\">  Antique White";
		}
		else if(finish_cat==9)
		{			
    		strItemOutput += "    <option  selected value=\"TEA\">  Teak";
		}
		else if(finish_cat==10)
		{			
    		strItemOutput += "    <option  selected value=\"ANT\">  Antique";
    		strItemOutput += "    <option value=\"N\">				Natural";
		}
		else if(finish_cat==11)
		{			
    		strItemOutput += "    <option  selected value=\"WAL\">	Walnut";
    		strItemOutput += "    <option value=\"WW\">				Whitewash";
		}
		else if(finish_cat==12)
		{			
    		strItemOutput += "    <option  selected value=\"WW\">	Whitewash";
    		strItemOutput += "    <option value=\"P\">				Pecan";
		}
		else if(finish_cat==13)
		{			
    		strItemOutput += "    <option  selected value=\"WW\">	Whitewash";
    		strItemOutput += "    <option value=\"WH\">				White";
		}
		else if(finish_cat==14)
		{			
    		strItemOutput += "    <option selected value=\"ANT\">	Antique";
    		strItemOutput += "    <option value=\"WW\">				Whitewash";
		}
		else if(finish_cat==15)
		{			
    		strItemOutput += "    <option selected value=\"CH\">	Cherry";
    		strItemOutput += "    <option value=\"WH\">				White";
		}
		else if(finish_cat==16)
		{			
    		strItemOutput += "    <option selected value=\"WW\">	Whitewash";
    		strItemOutput += "    <option value=\"N\">				Natural";
		}
		else if(finish_cat==17)
		{			
    		strItemOutput += "    <option selected value=\"WAL\">	Walnut";
    		strItemOutput += "    <option value=\"N\">				Natural";
		}
		else if(finish_cat==18)
		{			
    		strItemOutput += "    <option selected value=\"WW\">	Whitewash";
    		strItemOutput += "    <option value=\"WHEAT\">			Wheat";
		}
		else if(finish_cat==19)
		{			
    		strItemOutput += "    <option selected value=\"ANT\">	Antique";
    		strItemOutput += "    <option value=\"WH\">				White";
		}
		else if(finish_cat==20)
		{			
    		strItemOutput += "    <option selected value=\"WW\">	Whitewash";
    		strItemOutput += "    <option value=\"ANT\">			Antique";
		}
		else if(finish_cat==21)
		{			
    		strItemOutput += "    <option selected value=\"WW\">	Whitewash";
    		strItemOutput += "    <option value=\"ANT\">			Antique";
    		strItemOutput += "    <option value=\"N\">				Natural";
		}
		else if(finish_cat==22)
		{			
    		strItemOutput += "    <option selected value=\"WAL\">	Walnut";
	    	strItemOutput += "    <option value=\"ANT\">			Antique";
    		strItemOutput += "    <option value=\"WW\">				Whitewash";
		}
		else if(finish_cat==23)
		{			
    		strItemOutput += "    <option selected value=\"WW\">	Whitewash";
    		strItemOutput += "    <option value=\"P\">				Pecan";
    		strItemOutput += "    <option value=\"N\">				Natural";
		}
		else if(finish_cat==24)
		{			
    		strItemOutput += "    <option selected value=\"ANB\">	Antique Black";
		}
		else if(finish_cat==25)
		{			
    		strItemOutput += "    <option selected value=\"CIN\">	Cinnamon";
		}
		else if(finish_cat==26)
		{			
    		strItemOutput += "    <option selected value=\"HP\">	Hand Painted";
		}
		else if(finish_cat==27)
		{			
    		strItemOutput += "    <option selected value=\"ANW\">	Antique White";
			strItemOutput += "    <option value=\"SS\">				Sandstorm";
		}
		else if(finish_cat==28)
		{			
    		strItemOutput += "    <option selected value=\"ANW\">	Antique White";
			strItemOutput += "    <option value=\"BAH\">			Bahama";
		}
		else if(finish_cat==29)
		{			
    		strItemOutput += "    <option selected value=\"ASB\">	Ash Burl";
		}
		else if(finish_cat==30)
		{	
    		strItemOutput += "    <option selected value=\"NMG\">	Nutmeg";		
		}
		else if(finish_cat==31)
		{			
    		strItemOutput += "    <option selected value=\"SMR\">	Summer Rose";
		}
		else if(finish_cat==32)
		{			
    		strItemOutput += "    <option selected value=\"WAL\">	Walnut";
		}
		else if(finish_cat==33)
		{			
    		strItemOutput += "    <option selected value=\"WAL\">	Walnut";
			strItemOutput += "    <option value=\"ANT\">			Antique";
		}
		else if(finish_cat==34)
		{			
    		strItemOutput += "    <option selected value=\"WAL\">	Walnut";
			strItemOutput += "    <option value=\"ANT\">			Antique";
			strItemOutput += "    <option value=\"PAT\">			Patina";
		}
		else if(finish_cat==35)
		{			
    		strItemOutput += "    <option selected value=\"N\">		Natural";
			strItemOutput += "    <option value=\"P\">				Pecan";
		}
		else if(finish_cat==36)
		{			
    		strItemOutput += "    <option selected value=\"ANW\">	Antique White";
			strItemOutput += "    <option value=\"BAH\">			Bahama";
		}
		else if(finish_cat==37)
		{			
    		strItemOutput += "    <option selected value=\"WAL\">	Walnut";
			strItemOutput += "    <option value=\"WH\">				White";
		}		
		else if(finish_cat==38)
		{			
    		strItemOutput += "    <option selected value=\"CC\">	Cocoa";		
		}	
		else if(finish_cat==39)
		{			
    		strItemOutput += "    <option selected value=\"AGE\">	Aged Ebony";		
		}
		else if(finish_cat==40)
		{			
    		strItemOutput += "    <option selected value=\"DAU\">	Dark Auburn";		
		}
		else if(finish_cat==41)
		{			
    		strItemOutput += "    <option selected value=\"COB\">	Coffee Bean";		
		}
		else if(finish_cat==42)
		{			
    		strItemOutput += "    <option selected value=\"MAH\">	Mahogany";		
		}
		else if(finish_cat==43)
		{			
    		strItemOutput += "    <option selected value=\"COS\">	Coconut Shell";		
		}
		else if(finish_cat==44)
		{			
    		strItemOutput += "    <option selected value=\"GWH\">	Golden Wheat";		
		}
		else if(finish_cat==45)
		{
    		strItemOutput += "    <option selected value=\"BAH\">	Bahama";
			strItemOutput += "    <option value=\"SS\">				Sandstorm";
		}
		else if(finish_cat==46)
		{
    		strItemOutput += "    <option selected value=\"GLC\">	Glazed Coal";
		}
		else if(finish_cat==47)
		{
    		strItemOutput += "    <option selected value=\"CAP\">Cappiccino";
		}
		else if(finish_cat==48)
		{
    		strItemOutput += "    <option selected value=\"CHO\">	Chocolate";
		}
		else if(finish_cat==49)
		{
    		strItemOutput += "    <option selected value=\"KIN\">	Kingsley";
		}
		else if(finish_cat==50)
		{
    		strItemOutput += "    <option selected value=\"MIN\">	Mink";
		}
		else if(finish_cat==51)
		{
    		strItemOutput += "    <option selected value=\"SPI\">	Spice Island";
		}
	}    	strItemOutput += "</select>";
	
	if(item_fabric)
		strItemOutput+=Fab(fabric_inc);							  
    strItemOutput += "<input type=button value=\'Add to Cart\' onClick=\'AddToCart(this.form)\'>"+" ";
    strItemOutput +="</FORM>";
	strItemOutput +="</font></td>";
	document.write(strItemOutput);
	document.close;
}
	
function DIIFManageCart(theForm) 
{ 
   var iNumberOrdered = 0; 
   var fTotal         = 0; 
   var fTax           = 0; 
   var fWeight		  = 0;
   var strWeight	  = "";
   var strTotal       = ""; 
   var strTax         = ""; 
   var strShipping    = ""; 
   var strOutput      = ""; 
   var bDisplay       = true; 
   var fShipping      = 0; 
   var tShipping	  = 0;
   var strtShipping = "";
   
   iNumberOrdered = GetCookie("NumberOrdered"); 

   if( iNumberOrdered == null ) 
    iNumberOrdered = 0; 

   if ( bDisplay ) 
      strOutput = "<TABLE CLASS=\"nopcart\"><TR>" + 
                  "<TD CLASS=\"nopheader\"><B>"+strQLabel+"</B></TD>" + 
                  "<TD CLASS=\"nopheader\"><B>"+strILabel+"</B></TD>" + 
                  "<TD CLASS=\"nopheader\"><B>"+strDLabel+"</B></TD>" + 
                  "<TD CLASS=\"nopheader\"><B>"+strPLabel+"</B></TD>" + 
                  (DisplayShippingColumn?"<TD CLASS=\"nopheader\"><B>"+strSLabel+"</B></TD>":"") + 
                  "<TD CLASS=\"nopheader\"><B>"+strRLabel+"</B></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); 
	  Token5 = database.indexOf("|", Token4+1);
	  Token6 = database.indexOf("|", Token5+1);
	  Token7 = database.indexOf("|", Token6+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, Token5); 
	  fields[6] = database.substring( Token5+1, Token6);
	  fields[7] = database.substring( Token6+1, Token7); 
	  fields[8] = database.substring( Token7+1, database.length );
	  
      fTotal     += (parseInt(fields[1]) * parseFloat(fields[2]) ); 
      fShipping  += (parseInt(fields[1]) * parseFloat(fields[4]) );
	  fWeight    += (parseInt(fields[1]) * parseFloat(fields[7]) );
	  
	  	fShipping  = 84*1.07+30;		
		if((fWeight*1.6875)*1.07+30 > 174*1.07+30)
			tShipping  = (fWeight*1.6875)*1.07+30;
		else
			tShipping  = 174*1.07+30;
	  
      //if( fTotal <= 500.00 ) fShipping = 120.00; 
      //else if( fTotal <= 1000.00 ) fShipping = 150.00; 
      //else if( fTotal <= 1500.00 ) fShipping = 190.00; 
      //else if( fTotal <= 2000.00 ) fShipping = 225.00;  
      //else fShipping = .12*fTotal; 
      fTax        = ((fTotal) * TaxRate); 
//      strTotal    = moneyFormat(fTotal); 
      strTotal    = fTotal; 
      strTax      = moneyFormat(fTax); 
      strShipping = moneyFormat(fShipping);
	  strtShipping= moneyFormat(tShipping); 
	  strWeight= fWeight;

      if ( bDisplay ) { 
         strOutput += "<TR><TD CLASS=\"nopentry\">"  + fields[1]+ "</TD>" +"<TD CLASS=\"nopentry\">" + fields[0] + "</TD>"; 

         if ( fields[5] == "" ) 
            strOutput += "<TD CLASS=\"nopentry\">"  + fields[3] + " "+ fields[6] +"</TD>"; 
         else 
            strOutput += "<TD CLASS=\"nopentry\">"  + " "+fields[3] +  " "+fields[5] + " "+ fields[6]+ "</TD>"; 

         strOutput += "<TD CLASS=\"nopentry\">"+ MonetarySymbol + moneyFormat(fields[2]) + "/ea</TD>"; 

         if ( DisplayShippingColumn ) { 
            if ( parseFloat(fields[4]) > 0 ) 
               strOutput += "<TD CLASS=\"nopentry\">"+ MonetarySymbol + moneyFormat(fields[4]) + "/ea</TD>"; 
            else 
               strOutput += "<TD CLASS=\"nopentry\">N/A</TD>"; 
         } 

         strOutput += "<TD CLASS=\"nopentry\" ALIGN=CENTER><input type=button value=\" "+strRButton+" \" onClick=\"RemoveFromCart("+i+")\" class=\"nopbutton\"></TD></TR>"; 
      } 

      if( AppendItemNumToOutput ) { 
         strFooter = i; 
      } else { 
         strFooter = ""; 
      } 
      //We do not need these fields for the HTML based checkout page.  However, you can uncomment these fields if you 
      //move to a CGI based checkout in the future. 
      //strOutput += "<input type=hidden name=\"" + OutputItemId        + strFooter + "\" value=\"" + fields[0] + "\">";
      //strOutput += "<input type=hidden name=\"" + OutputItemQuantity  + strFooter + "\" value=\"" + fields[1] + "\">";
      //strOutput += "<input type=hidden name=\"" + OutputItemPrice     + strFooter + "\" value=\"" + fields[2] + "\">";
      //strOutput += "<input type=hidden name=\"" + OutputItemName      + strFooter + "\" value=\"" + fields[3] + "\">";
      //strOutput += "<input type=hidden name=\"" + OutputItemShipping  + strFooter + "\" value=\"" + fields[4] + "\">";
      //strOutput += "<input type=hidden name=\"" + OutputItemAddtlInfo + strFooter + "\" value=\"" + fields[5] + "\">";
	  //strOutput += "<input type=hidden name=\"" + OutputItemFabric    + strFooter + "\" value=\"" + fields[6] + "\">";

   } 

   if ( bDisplay ) { 
      strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+strSUB+"</B></TD>"; 
      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=1><B>" + MonetarySymbol + moneyFormat(strTotal) + "</B></TD>"; 
      strOutput += "<TD CLASS=\"noptotal\"COLSPAN=2>"+" "+"</TD>"+"</TR>"; 

	  //Certificate row
	  strOutput += "<TR><TD CLASS=\"noptotal\"COLSPAN=3><B>Certificate Code</B></TD><TD CLASS=\"noptotal\"COLSPAN=1><input type=text name=\"Certificate\" value=\"\" SIZE=40 MAXLENGTH= 20></TD></TR>"; 

      if ( DisplayShippingRow ) { 
		
         
         strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+"Shipping Cost Range - Depending on your shipping location"+"</B></TD>";
         strOutput += "<TD CLASS=\"noptotal\" COLSPAN=1><B>" + MonetarySymbol + strShipping +" - "+ MonetarySymbol+ strtShipping+"<BR>";
		 strOutput += "<TD CLASS=\"noptotal\"COLSPAN=2>"+" "+"</TD>"+"</TR>"; 

		 strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B><input type=radio name=\"ShipVia\"  value=\"InHome\" CHECKED>In Home<BR>";
		 strOutput +=	"<input type=radio name=\"ShipVia\" value=\"WhiteGlove\">White Glove<BR>";
		 strOutput +=	"<input type=radio name=\"ShipVia\" value=\"PickUp\">Pick Up (NC sales tax will be applied)<BR>";
    } 

      if ( DisplayTaxRow ) { 
         //Okay, DIIF charges a local tax to North Carolina Residents, at the strTax amount.  Non-NC'ers get a 'free ride'... 
         strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+strTAX+"</B></TD>"; 
         strOutput += "<TD CLASS=\"noptotal\" COLSPAN=1><B>"; 
		 strOutput += "North Carolina Residents: " + MonetarySymbol + strTax+"<BR>";          
         strOutput += "Other States: " + MonetarySymbol + "0.00"; 
         strOutput += "</B></TD>"; 
         strOutput += "<TD CLASS=\"noptotal\"COLSPAN=2>"+" "+"</TD>"+"</TR>"; 
      } 

      strOutput += "</TABLE>"; 

      strOutput += "<input type=hidden name=\""+OutputOrderSubtotal+"\" value=\""+ strTotal + "\">"; 
      strOutput += "<input type=hidden name=\""+OutputOrderShipping+"\" value=\""+ strShipping + "\">"; 
	  strOutput += "<input type=hidden name=\""+OutputOrderWeight+"\" value=\""+ strWeight + "\">";
   } 

   document.write(strOutput); 
   document.close(); 
} 

function RadioChecked( radiobutton ) 
{ 
   var bChecked = false; 
   var rlen = radiobutton.length; 

   for( i=0; i < rlen; i++ ){ 
      if( radiobutton[i].checked ) 
         bChecked = true; 
   } 

   return bChecked; 
} 


	
function DIIFCheckTax( theForm ) 
{ 
	var whichtax = eval("theForm.ShipVia");
	if(whichtax[0].checked)
	{	  
		return true;
	}
	if(whichtax[1].checked)
	{
		return false;
	}
		  //return false;
		  //alert("not NC");
		  //strOutput += "<input type=hidden name=\""+OutputOrderTax+"\" value=\""+ strTax + "\">";
		  //else
		  //strOutput += "<input type=hidden name=\""+OutputOrderTax+"\" value=\"0.00\">";
   //if( !RadioChecked(eval("theForm."+OutputOrderTax)) ){ 
     // alert( "For tax purposes, please select if you are a North Carolina resident before continuing to checkout." ); 
      //return false; 
} 

function CheckForm( theForm ,emailStr)
{
	if(eval("theForm.b_first.value")=="")
	{
		alert("Please enter your first name");
		return false;
	}

	else if(eval("theForm.b_last.value")=="")
	{
		alert("Please enter your last name");
		return false;
	}
	else if(eval("theForm.b_email.value")=="")
	{
		alert("Please enter your email address");
		return false;
	}
	else if(eval("theForm.b_phone.value")=="")
	{
		alert("Please enter your phone number");
		return false;
	}
	else if(eval("theForm.b_addr.value")=="")
	{
		alert("Please enter your address");
		return false;
	}
	else if(eval("theForm.b_city.value")=="")
	{
		alert("Please enter your city");
		return false;
	}
	else if(eval("theForm.b_state.value")=="")
	{
		alert("Please enter your state");
		return false;
	}
	else if(eval("theForm.b_zip.value")=="")
	{
		alert("Please enter your zip code");
		return false;
	}
	else if(eval("theForm.s_first.value")=="")
	{
		alert("Please enter your first name");
		return false;
	}
	else if(eval("theForm.s_last.value")=="")
	{
		alert("Please enter your last name");
		return false;
	}
	else if(eval("theForm.s_email.value")=="")
	{
		alert("Please enter your email address");
		return false;
	}
	else if(eval("theForm.s_phone.value")=="")
	{
		alert("Please enter your phone number");
		return false;
	}
	else if(eval("theForm.s_addr.value")=="")
	{
		alert("Please enter your address");
		return false;
	}
	else if(eval("theForm.s_city.value")=="")
	{
		alert("Please enter your city");
		return false;
	}
	else if(eval("theForm.s_state.value")=="")
	{
		alert("Please enter your state");
		return false;
	}
	else if(eval("theForm.s_zip.value")=="")
	{
		alert("Please enter your zip code");
		return false;
	}
	<!-- This script and many more are available free online at -->
<!-- The JavaScript Source!! http://javascript.internet.com -->

<!-- V1.1.3: Sandeep V. Tamhankar (stamhankar@hotmail.com) -->
<!-- Original:  Sandeep V. Tamhankar (stamhankar@hotmail.com) -->
<!-- Changes:
/* 1.1.4: Fixed a bug where upper ASCII characters (i.e. accented letters
international characters) were allowed.

1.1.3: Added the restriction to only accept addresses ending in two
letters (interpreted to be a country code) or one of the known
TLDs (com, net, org, edu, int, mil, gov, arpa), including the
new ones (biz, aero, name, coop, info, pro, museum).  One can
easily update the list (if ICANN adds even more TLDs in the
future) by updating the knownDomsPat variable near the
top of the function.  Also, I added a variable at the top
of the function that determines whether or not TLDs should be
checked at all.  This is good if you are using this function
internally (i.e. intranet site) where hostnames don't have to 
conform to W3C standards and thus internal organization e-mail
addresses don't have to either.
Changed some of the logic so that the function will work properly
with Netscape 6.

1.1.2: Fixed a bug where trailing . in e-mail address was passing
(the bug is actually in the weak regexp engine of the browser; I
simplified the regexps to make it work).

1.1.1: Removed restriction that countries must be preceded by a domain,
so abc@host.uk is now legal.  However, there's still the 
restriction that an address must end in a two or three letter
word.

1.1: Rewrote most of the function to conform more closely to RFC 822.

1.0: Original  */
// -->

<!-- Begin


/* The following variable tells the rest of the function whether or not
to verify that the address ends in a two-letter country or well-known
TLD.  1 means check it, 0 means don't. */

var checkTLD=1;

/* The following is the list of known TLDs that an e-mail address must end with. */

var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;

/* The following pattern is used to check if the entered e-mail address
fits the user@domain format.  It also is used to separate the username
from the domain. */

var emailPat=/^(.+)@(.+)$/;

/* The following string represents the pattern for matching all special
characters.  We don't want to allow special characters in the address. 
These characters include ( ) < > @ , ; : \ " . [ ] */

var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";

/* The following string represents the range of characters allowed in a 
username or domainname.  It really states which chars aren't allowed.*/

var validChars="\[^\\s" + specialChars + "\]";

/* The following pattern applies if the "user" is a quoted string (in
which case, there are no rules about which characters are allowed
and which aren't; anything goes).  E.g. "jiminy cricket"@disney.com
is a legal e-mail address. */

var quotedUser="(\"[^\"]*\")";

/* The following pattern applies for domains that are IP addresses,
rather than symbolic names.  E.g. joe@[123.124.233.4] is a legal
e-mail address. NOTE: The square brackets are required. */

var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;

/* The following string represents an atom (basically a series of non-special characters.) */

var atom=validChars + '+';

/* The following string represents one word in the typical username.
For example, in john.doe@somewhere.com, john and doe are words.
Basically, a word is either an atom or quoted string. */

var word="(" + atom + "|" + quotedUser + ")";

// The following pattern describes the structure of the user

var userPat=new RegExp("^" + word + "(\\." + word + ")*$");

/* The following pattern describes the structure of a normal symbolic
domain, as opposed to ipDomainPat, shown above. */

var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");

/* Finally, let's start trying to figure out if the supplied address is valid. */

/* Begin with the coarse pattern to simply break up user@domain into
different pieces that are easy to analyze. */

var matchArray=emailStr.match(emailPat);

if (matchArray==null) {

/* Too many/few @'s or something; basically, this address doesn't
even fit the general mould of a valid e-mail address. */

alert("Email address seems incorrect (check @ and .'s)");
return false;
}
var user=matchArray[1];
var domain=matchArray[2];

// Start by checking that only basic ASCII characters are in the strings (0-127).

for (i=0; i<user.length; i++) {
if (user.charCodeAt(i)>127) {
alert("Ths username contains invalid characters.");
return false;
   }
}
for (i=0; i<domain.length; i++) {
if (domain.charCodeAt(i)>127) {
alert("Ths domain name contains invalid characters.");
return false;
   }
}

// See if "user" is valid 

if (user.match(userPat)==null) {

// user is not valid

alert("The username doesn't seem to be valid.");
return false;
}

/* if the e-mail address is at an IP address (as opposed to a symbolic
host name) make sure the IP address is valid. */

var IPArray=domain.match(ipDomainPat);
if (IPArray!=null) {

// this is an IP address

for (var i=1;i<=4;i++) {
if (IPArray[i]>255) {
alert("Destination IP address is invalid!");
return false;
   }
}
return true;
}

// Domain is symbolic name.  Check if it's valid.
 
var atomPat=new RegExp("^" + atom + "$");
var domArr=domain.split(".");
var len=domArr.length;
for (i=0;i<len;i++) {
if (domArr[i].search(atomPat)==-1) {
alert("The domain name does not seem to be valid.");
return false;
   }
}

/* domain name seems valid, but now make sure that it ends in a
known top-level domain (like com, edu, gov) or a two-letter word,
representing country (uk, nl), and that there's a hostname preceding 
the domain or country. */

if (checkTLD && domArr[domArr.length-1].length!=2 && 
domArr[domArr.length-1].search(knownDomsPat)==-1) {
alert("The address must end in a well-known domain or two letter " + "country.");
return false;
}

// Make sure there's a host name preceding the domain.

if (len<2) {
alert("This address is missing a hostname!");
return false;
}

// If we've gotten this far, everything's valid!
return true;


//  End -->
}

QueryString.keys = new Array(); 
QueryString.values = new Array(); 
function QueryString(key) 
{ 
   var value = null; 
   for (var i=0;i<QueryString.keys.length;i++) 
   { 
      if (QueryString.keys[i]==key) 
      { 
         value = QueryString.values[i]; 
         break; 
      } 
   } 
   return value; 
} 

function QueryString_Parse() 
{ 
   var query = window.location.search.substring(1); 
   var pairs = query.split("&"); 

   for (var i=0;i<pairs.length;i++) 
   { 
      var pos = pairs[i].indexOf('='); 
      if (pos >= 0) 
      { 
         var argname = pairs[i].substring(0,pos); 
         var value = pairs[i].substring(pos+1); 
         QueryString.keys[QueryString.keys.length] = argname; 
         QueryString.values[QueryString.values.length] = value; 
      } 
   } 

} 

function DIIFCheckout() 
{ 
   var iNumberOrdered = 0; 
   var fTotal         = 0; 
   var fTax           = 0; 
   var strTotal       = ""; 
   var strTax         = ""; 
   var strShipping    = ""; 
   var strOutput      = ""; 
   var strCertificate = "";
   var bDisplay       = true; 
   var fShipping      = 0; 
   var fs_state	  = "";
   var fSubtotal	  = 0;
   var fWeight	= 0;
   var fShipVia	=	"";
   var fCertificate = 0;
   iNumberOrdered = GetCookie("NumberOrdered"); 

   if( iNumberOrdered == null ) 
    iNumberOrdered = 0; 

   //First fetch the inbound Shipping and Tax items... 
   QueryString_Parse(); 
   //fTax = parseFloat( QueryString( OutputOrderTax ) ); 
   fShipping = parseFloat( QueryString( OutputOrderShipping ) );
   fSubtotal = parseFloat( QueryString( OutputOrderSubtotal ) );  
   fWeight = parseFloat( QueryString( OutputOrderWeight ) ); 
   fs_state = QueryString("s_state");
   fShipVia = QueryString("ShipVia");
   strCertificate = QueryString("Certificate");

   // for passing certificate code
   var certificate_code = strCertificate;

   //..................................................
   //Certificate Validation Code
   var cert_num_array = strCertificate.split("z");
   var cert_type_array = strCertificate.split("s");

   if(cert_num_array[1]==undefined||cert_type_array[1]==undefined)
   {
	   fCertificate = 0;
   }
   else
   {
		var cert_num = parseFloat(cert_num_array[1]);
		if(cert_num > 0 && cert_num < 3001)
	    {
			var cert_type = parseFloat(cert_type_array[1]);
			if (cert_type==0)
			{
				fCertificate = 1000;
			}else if (cert_type==1)
			{
				fCertificate = 1500;
			}else if (cert_type==2)
			{
				fCertificate = 2000;
			}
	    }	
   }
   if(fSubtotal<fCertificate)
       fCertificate = fSubtotal;
   //...................................................

   if(fs_state=="AL")
   {
   		if( fWeight <= 150 ) fShipping=101.25*1.07+30;
      		else fShipping=(fWeight*.675)*1.07+30;
   }
    else if(fs_state=="AZ")
	{
   		if( fWeight <= 150 ) fShipping=150.75*1.07+30;
      		else fShipping=(fWeight*1.005)*1.07+30;
	}
	else if(fs_state=="AR")
	{
   		if( fWeight <= 150 ) fShipping=1.17*1.07+30;
      		else fShipping=(fWeight*.78)*1.07+30;
	}
	else if(fs_state=="CA")
	{
   		if( fWeight <= 150 ) fShipping=165*1.07+30;
      		else fShipping=(fWeight*1.1)*1.07+30;
	}
	else if(fs_state=="CO")
	{
   		if( fWeight <= 150 ) fShipping=144.76*1.07+30;
      		else fShipping=(fWeight*.965)*1.07+30;
	}
	else if(fs_state=="CT")
	{
   		if( fWeight <= 150 ) fShipping=105.75*1.07+30;
      		else fShipping=(fWeight*.705)*1.07+30;
	}
	else if(fs_state=="DE")
	{
   		if( fWeight <= 150 ) fShipping=95.25*1.07+30;
      		else fShipping=(fWeight*.635)*1.07+30;
	}
	else if(fs_state=="FL")
	{
   		if( fWeight <= 150 ) fShipping=102.75*1.07+30;
      		else fShipping=(fWeight*.685)*1.07+30;
	}
	else if(fs_state=="FLK")
	{
   		if( fWeight <= 150 ) fShipping=166.5*1.07+30;
      		else fShipping=(fWeight*1.111)*1.07+30;
	}
	else if(fs_state=="GA")
	{
   		if( fWeight <= 150 ) fShipping=93.75*1.07+30;
      		else fShipping=(fWeight*.6250)*1.07+30;
	}
	else if(fs_state=="ID")
	{
   		if( fWeight <= 150 ) fShipping=161.25*1.07+30;
      		else fShipping=(fWeight*1.075)*1.07+30;
	}
	else if(fs_state=="IL")
	{
   		if( fWeight <= 150 ) fShipping=110.25*1.07+30;
      		else fShipping=(fWeight*.735)*1.07+30;
	}
	else if(fs_state=="IN")
	{
   		if( fWeight <= 150 ) fShipping=102.75*1.07+30;
      		else fShipping=(fWeight*.685)*1.07+30;
	}
	else if(fs_state=="IA")
	{
   		if( fWeight <= 150 ) fShipping=132*1.07+30;
      		else fShipping=(fWeight*.88)*1.07+30;
	}
	else if(fs_state=="KS")
	{
   		if( fWeight <= 150 ) fShipping=140.25*1.07+30;
      		else fShipping=(fWeight*.935)*1.07+30;
	}
	else if(fs_state=="KY")
	{
   		if( fWeight <= 150 ) fShipping=99.75*1.07+30;
      		else fShipping=(fWeight*.665)*1.07+30;
	}
	else if(fs_state=="LA")
	{
   		if( fWeight <= 150 ) fShipping=114*1.07+30;
      		else fShipping=(fWeight*.76)*1.07+30;
	}
	else if(fs_state=="ME")
	{
   		if( fWeight <= 150 ) fShipping=124.5*1.07+30;
      		else fShipping=(fWeight*.83)*1.07+30;
	}
	else if(fs_state=="MD")
	{
   		if( fWeight <= 150 ) fShipping=92.25*1.07+30;
      		else fShipping=(fWeight*.6150)*1.07+30;
	}
	else if(fs_state=="MA")
	{
   		if( fWeight <= 150 ) fShipping=112.5*1.07+30;
      		else fShipping=(fWeight*.75)*1.07+30;
	}
	else if(fs_state=="MI")
	{
   		if( fWeight <= 150 ) fShipping=107.25*1.07+30;
      		else fShipping=(fWeight*.715)*1.07+30;
	}
	else if(fs_state=="MN")
	{
   		if( fWeight <= 150 ) fShipping=138.75*1.07+30;
      		else fShipping=(fWeight*.715)*1.07+30;
	}
	else if(fs_state=="MS")
	{
   		if( fWeight <= 150 ) fShipping=107.25*1.07+30;
      		else fShipping=(fWeight*.715)*1.07+30;
	}
	else if(fs_state=="MO")
	{
   		if( fWeight <= 150 ) fShipping=121.5*1.07+30;
      		else fShipping=(fWeight*.81)*1.07+30;
	}
	else if(fs_state=="MT")
	{
   		if( fWeight <= 150 ) fShipping=167.25*1.07+30;
      		else fShipping=(fWeight*1.315)*1.07+30;
	}
	else if(fs_state=="NE")
	{
   		if( fWeight <= 150 ) fShipping=146.25*1.07+30;
      		else fShipping=(fWeight*1.075)*1.07+30;
	}
	else if(fs_state=="NV")
	{
   		if( fWeight <= 150 ) fShipping=165*1.07+30;
      		else fShipping=(fWeight*1.1)*1.07+30;
	}
	else if(fs_state=="NH")
	{
   		if( fWeight <= 150 ) fShipping=124.5*1.07+30;
      		else fShipping=(fWeight*.83)*1.07+30;
	}
	else if(fs_state=="NJ")
	{
   		if( fWeight <= 150 ) fShipping=99.75*1.07+30;
      		else fShipping=(fWeight*.665)*1.07+30;
	}
	else if(fs_state=="NM")
	{
   		if( fWeight <= 150 ) fShipping=144.75*1.07+30;
      		else fShipping=(fWeight*.965)*1.07+30;
	}
	else if(fs_state=="NY")
	{
   		if( fWeight <= 150 ) fShipping=107.25*1.07+30;
      		else fShipping=(fWeight*.715)*1.07+30;
	}
	else if(fs_state=="NC")
	{
   		if( fWeight <= 150 ) fShipping=84*1.07+30;
      		else fShipping=(fWeight*.56)*1.07+30;
	}
	else if(fs_state=="ND")
	{
   		if( fWeight <= 150 ) fShipping=1.5675*1.07+30;
      		else fShipping=(fWeight*1.045)*1.07+30;
	}
	else if(fs_state=="OH")
	{
   		if( fWeight <= 150 ) fShipping=98.25*1.07+30;
      		else fShipping=(fWeight*.655)*1.07+30;
	}
	else if(fs_state=="OK")
	{
   		if( fWeight <= 150 ) fShipping=132*1.07+30;
      		else fShipping=(fWeight*.88)*1.07+30;
	}
	else if(fs_state=="OR")
	{
   		if( fWeight <= 150 ) fShipping=172.5*1.07+30;
      		else fShipping=(fWeight*1.15)*1.07+30;
	}
	else if(fs_state=="PA")
	{
   		if( fWeight <= 150 ) fShipping=100.5*1.07+30;
      		else fShipping=(fWeight*.67)*1.07+30;
	}
	else if(fs_state=="RI")
	{
   		if( fWeight <= 150 ) fShipping=110.25*1.07+30;
      		else fShipping=(fWeight*.735)*1.07+30;
	}
	else if(fs_state=="SC")
	{
   		if( fWeight <= 150 ) fShipping=87.75*1.07+30;
      		else fShipping=(fWeight*.585)*1.07+30;
	}
	else if(fs_state=="SD")
	{
   		if( fWeight <= 150 ) fShipping=152.25*1.07+30;
      		else fShipping=(fWeight*1.015)*1.07+30;
	}
	else if(fs_state=="TN")
	{
   		if( fWeight <= 150 ) fShipping=101.25*1.07+30;
      		else fShipping=(fWeight*.675)*1.07+30;
	}
	else if(fs_state=="TX")
	{
   		if( fWeight <= 150 ) fShipping=138.75*1.07+30;
      		else fShipping=(fWeight*.925)*1.07+30;
	}
	else if(fs_state=="UT")
	{
   		if( fWeight <= 150 ) fShipping=166.5*1.07+30;
      		else fShipping=(fWeight*1.11)*1.07+30;
	}
	else if(fs_state=="VT")
	{
   		if( fWeight <= 150 ) fShipping=124.5*1.07+30;
      		else fShipping=(fWeight*.83)*1.07+30;
	}
	else if(fs_state=="VA")
	{
   		if( fWeight <= 150 ) fShipping=87.5*1.07+30;
      		else fShipping=(fWeight*.5850)*1.07+30;
	}
	else if(fs_state=="WA")
	{
   		if( fWeight <= 150 ) fShipping=174*1.07+30;
      		else fShipping=(fWeight*1.16)*1.07+30;
	}
	else if(fs_state=="DC")
	{
   		if( fWeight <= 150 ) fShipping=92.5*1.07+30;
      		else fShipping=(fWeight*.615)*1.07+30;
	}
	else if(fs_state=="WV")
	{
   		if( fWeight <= 150 ) fShipping=93.75*1.07+30;
      		else fShipping=(fWeight*.625)*1.07+30;
	}
	else if(fs_state=="WI")
	{
   		if( fWeight <= 150 ) fShipping=123*1.07+30;
      		else fShipping=(fWeight*.82)*1.07+30;
	}
	else if(fs_state=="WY")
	{
   		if( fWeight <= 150 ) fShipping=162.75*1.07+30;
      		else fShipping=(fWeight*1.105)*1.07+30;
	}
	
	if(fs_state=="NC" || fShipVia=="PickUp")
		fTax=.065*fSubtotal;

    strSubtotal = moneyFormat(fSubtotal);
	strTax      = moneyFormat(fTax); 
    strShipping = moneyFormat(fShipping); 
    strCertificate = moneyFormat(fCertificate);

   //Now back to the normal cart functions... 

   if ( bDisplay ) 
      strOutput = "<TABLE CLASS=\"nopcart\"><TR>" + 
                  "<TD CLASS=\"nopheader\"><B>"+strQLabel+"</B></TD>" + 
                  "<TD CLASS=\"nopheader\"><B>"+strILabel+"</B></TD>" + 
                  "<TD CLASS=\"nopheader\"><B>"+strDLabel+"</B></TD>" + 
                  "<TD CLASS=\"nopheader\"><B>"+strPLabel+"</B></TD>" + 
                  (DisplayShippingColumn?"<TD CLASS=\"nopheader\"><B>"+strSLabel+"</B></TD>":"") + 
        "</TR>"; 
                  //"<TD CLASS=\"nopheader\"><B>"+strRLabel+"</B></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); 
	  Token5 = database.indexOf("|", Token4+1);
	  Token6 = database.indexOf("|", Token5+1);
	  Token7 = database.indexOf("|", Token6+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, Token5 );
	  fields[6] = database.substring( Token5+1, Token6 );
	  fields[7] = database.substring( Token6+1, Token7 );
	  fields[8] = database.substring( Token7+1, database.length ); 

      fTotal     += (parseInt(fields[1]) * parseFloat(fields[2]) ); 
//      strTotal    = moneyFormat(fTotal); 
      strTotal    = (fTotal); 
      if ( bDisplay ) { 
         strOutput += "<TR><TD CLASS=\"nopentry\">"  + fields[1]+ "</TD>" +"<TD CLASS=\"nopentry\">" + fields[0] + "</TD>"; 

         if ( fields[5] == "" ) 
            strOutput += "<TD CLASS=\"nopentry\">"  + fields[3] + " "+ fields[6] + " - " + fields[8] + "</TD>"; 
         else 
            strOutput += "<TD CLASS=\"nopentry\">"  + " "+ fields[3]+ " "+fields[5] + " " +fields[6]+ "</TD>"; 

         strOutput += "<TD CLASS=\"nopentry\">"+ MonetarySymbol + moneyFormat(fields[2]) + "/ea</TD>"; 

         if ( DisplayShippingColumn ) { 
            if ( parseFloat(fields[4]) > 0 ) 
               strOutput += "<TD CLASS=\"nopentry\">"+ MonetarySymbol + moneyFormat(fields[4]) + "/ea</TD>"; 
            else 
               strOutput += "<TD CLASS=\"nopentry\">N/A</TD>"; 
         } 

         //strOutput += "<TD CLASS=\"nopentry\" ALIGN=CENTER><input type=button value=\" "+strRButton+" \" onClick=\"RemoveFromCart("+i+")\" class=\"nopbutton\"></TD></TR>"; 
      } 

      if( AppendItemNumToOutput ) { 
         strFooter = i; 
      } else { 
         strFooter = ""; 
      } 
      strOutput += "<input type=hidden name=\"" + OutputItemId        + strFooter + "\" value=\"" + fields[0] + "\">"; 
      strOutput += "<input type=hidden name=\"" + OutputItemQuantity  + strFooter + "\" value=\"" + fields[1] + "\">"; 
      strOutput += "<input type=hidden name=\"" + OutputItemPrice     + strFooter + "\" value=\"" + fields[2] + "\">"; 
      strOutput += "<input type=hidden name=\"" + OutputItemName      + strFooter + "\" value=\"" + fields[3] + "\">"; 
      strOutput += "<input type=hidden name=\"" + OutputItemShipping  + strFooter + "\" value=\"" + fields[4] + "\">"; 
      strOutput += "<input type=hidden name=\"" + OutputItemAddtlInfo + strFooter + "\" value=\"" + fields[5] + "\">"; 
	  strOutput += "<input type=hidden name=\"" + OutputItemFabric    + strFooter + "\" value=\"" + fields[6] + "\">";
	  strOutput += "<input type=hidden name=\"" + OutputItemWeight    + strFooter + "\" value=\"" + fields[7] + "\">";
	  strOutput += "<input type=hidden name=\"" + OutputItemManufacturer    + strFooter + "\" value=\"" + fields[8] + "\">";
	//strOutput += "Fabric Test:"+OutputItemFabric    + strFooter + "\" value=\"" + fields[6] + "\">";
   } 

   if ( bDisplay ) { 
      strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+strSUB+"</B></TD>"; 
      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B><div align=\"right\">" + MonetarySymbol + moneyFormat(strTotal) + "</B></TD>"; 
      strOutput += "</TR>"; 

      if ( DisplayShippingRow && fShipVia=="InHome") { 
         strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+"Actual Shipping Costs to "+fs_state+"</B></TD>"; 
         strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B><div align=\"right\">" + MonetarySymbol + strShipping + "</B></TD>"; 
         strOutput += "</TR>"; 
	  }
	  else if(DisplayShippingRow &&fShipVia=="WhiteGlove")
	  {
	  	 strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+"Actual Shipping Costs to "+fs_state+"</B></TD>"; 
         strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>" + MonetarySymbol + strShipping + "</B></TD>"; 
         strOutput += "</TR>";
	  }
	  else if(DisplayShippingRow &&fShipVia=="CurbSide")
	  {
	  	 strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+"You will be notified of the shipping costs to "+fs_state+"</B></TD>"; 
         strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B></B></TD>"; 
         strOutput += "</TR>";
	  }
	  else if(DisplayShippingRow &&fShipVia=="PickUp")
	  {
	  	 strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+"Freight Charge"+"</B></TD>"; 
         strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B><div align=\"right\">" + MonetarySymbol + "0.00" + "</B></TD>"; 
         strOutput += "</TR>";
	  }
      

      if ( DisplayTaxRow ) { 
         strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+strTAX+"</B></TD>"; 
         strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B><div align=\"right\">" + MonetarySymbol + strTax + "</B></TD>"; 
         strOutput += "</TR>"; 
      } 

if(fCertificate>0)
strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>Certificate Credit</B></TD><TD CLASS=\"noptotal\" COLSPAN=1><B><div align=\"right\">-" + MonetarySymbol + strCertificate +"</B></TD></Tr>";	   

if (fShipVia=="InHome" || fShipVia=="WhiteGlove") 
	  {
	  strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+strTOT+"</B></TD>"; 
      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B><div align=\"right\">" + MonetarySymbol + moneyFormat((fTotal + fShipping + fTax- fCertificate)) + "</B></TD>"; 
      strOutput += "</TR>";  
      strOutput += "</TABLE>";
	  }
	  else //if (fShipVia=="CurbSide") { 
      {strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+strTOT+"</B></TD>"; 
      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B><div align=\"right\">" + MonetarySymbol + moneyFormat((fTotal + fTax- fCertificate)) + "</B></TD>"; 
      strOutput += "</TR>";  
      strOutput += "</TABLE>";
	  }	
//      strOutput += "<input type=hidden name=\""+OutputOrderSubtotal+"\" value=\""+ MonetarySymbol + strTotal + "\">"; 
      strOutput += "<input type=hidden name=\""+OutputOrderSubtotal+"\" value=\"" + strTotal + "\">"; 
	  if(fShipVia=="PickUp")
	  {
	  	strOutput += "<input type=hidden name=\""+OutputOrderShipping+"\" value=\""+ MonetarySymbol + "0.00" + "\">"; 

		}
		else
		{
		strOutput += "<input type=hidden name=\""+OutputOrderShipping+"\" value=\""+ MonetarySymbol + strShipping + "\">"; 
		}

strOutput += "<input type=hidden name=\""+OutputOrderTax+"\"value=\""+ MonetarySymbol + strTax + "\">"; 

// pass certificate code
strOutput += "<input type=hidden name=\"Certificate_Code\"value=\""+ certificate_code + "\">"; 

// pass certificate code
strOutput += "<input type=hidden name=\"Certificate_Amount\"value=\""+ fCertificate + "\">"; 


if (fShipVia=="InHome") 
{
	strOutput += "<input type=hidden name=\"shipvianame\" value=\"Wilson Prepaid\">";
}
else if(fShipVia=="WhiteGlove")
{
	strOutput += "<input type=hidden name=\"shipvianame\" value=\"Executive Prepaid\">";
}
else if(fShipVia=="PickUp")
{
	strOutput += "<input type=hidden name=\"shipvianame\" value=\"Customer Pickup\">";
}
	  
	  if (fShipVia=="InHome" || fShipVia=="WhiteGlove") {
	  strOutput += "<input type=hidden name=\""+OutputOrderTotal+"\"    value=\""+ MonetarySymbol + moneyFormat((fTotal + fShipping + fTax - fCertificate)) + "\">"; 
	  strOutput += "<input type=hidden name=\"Deposit\" value=\""+ MonetarySymbol + moneyFormat((fTotal+ fShipping+ fTax - fCertificate)*.3)+ "\">";
	  strOutput += "<input type=hidden name=\"Balance\" value=\""+ MonetarySymbol + moneyFormat((fTotal+ fShipping+ fTax - fCertificate)*.7)+ "\">";}
	  
	  else //if (fShipVia=="CurbSide") {
	  {strOutput += "<input type=hidden name=\""+OutputOrderTotal+"\"    value=\""+ MonetarySymbol + moneyFormat((fTotal + fTax - fCertificate)) + "\">"; 
	  strOutput += "<input type=hidden name=\"Deposit\" value=\""+ MonetarySymbol + moneyFormat((fTotal+ fTax - fCertificate)*.3)+ "\">";
	  strOutput += "<input type=hidden name=\"Balance\" value=\""+ MonetarySymbol + moneyFormat((fTotal+ fTax - fCertificate)*.7)+ "\">";}
	  
	  if (fShipVia=="InHome" || fShipVia=="WhiteGlove") {
      strOutput += "<TABLE>";
	  strOutput += "<TR><TD  COLSPAN=3><B>"+"30% DEPOSIT TO BE CHARGED IMMEDIATELY"+"</B></TD>"; 
      strOutput += "<TD COLSPAN=2><B>" + MonetarySymbol + moneyFormat((fTotal + fShipping + fTax - fCertificate)*.3) + "</B></TD>"; 
      strOutput += "</TR>";
	  strOutput += "<TR><TD COLSPAN=3><B>"+"BALANCE DUE PRIOR TO SHIPMENT"+"</B></TD>"; 
      strOutput += "<TD COLSPAN=2><B>" + MonetarySymbol + moneyFormat((fTotal + fShipping + fTax - fCertificate)*.7) + "</B></TD>"; 
      strOutput += "</TR>";  
	  strOutput += "</TABLE>";
	  }
	  else if (fShipVia=="CurbSide") { 
	  strOutput += "<TABLE>";
	  strOutput += "<TR><TD  COLSPAN=3><B>"+"30% DEPOSIT TO BE CHARGED IMMEDIATELY"+"</B></TD>"; 
      strOutput += "<TD COLSPAN=2><B>" + MonetarySymbol + moneyFormat((fTotal+ fTax - fCertificate)*.3) + "</B></TD>"; 
      strOutput += "</TR>";
	  strOutput += "<TR><TD COLSPAN=3><B>"+"BALANCE DUE PRIOR TO SHIPMENT"+"</B></TD>"; 
      strOutput += "<TD COLSPAN=2><B>" + MonetarySymbol + moneyFormat((fTotal+ fTax - fCertificate)*.7) + "</B></TD>"; 
      strOutput += "</TR>";  
	  strOutput += "<TR><TD COLSPAN=3><B>"+"ESTIMATED SHIPPING COSTS"+"</B></TD>"; 
      strOutput += "<TD COLSPAN=2><B>" + MonetarySymbol + moneyFormat(fShipping/1.1) + "</B></TD>"; 
      strOutput += "</TR>";
	  strOutput += "</TABLE>";
	  strOutput += "<BR><TABLE WIDTH=\"500\"><TR>Again you will be notified of your actual shipping costs via email shortly.  You will receive a telephone call at your Ship Phone number to arrange delivery and will need to have a <b>certified check or cash</b> ready for them when they arrive.</TR></TABLE>  ";
	  }
	  else if (fShipVia=="PickUp") { 
	  strOutput += "<TABLE>";
	  strOutput += "<TR><TD  COLSPAN=3><B>"+"30% DEPOSIT TO BE CHARGED IMMEDIATELY"+"</B></TD>"; 
      strOutput += "<TD COLSPAN=2><B>" + MonetarySymbol + moneyFormat((fTotal + fTax - fCertificate)*.3) + "</B></TD>"; 
      strOutput += "</TR>";
	  strOutput += "<TR><TD COLSPAN=3><B>"+"BALANCE DUE PRIOR TO SHIPMENT"+"</B></TD>"; 
      strOutput += "<TD COLSPAN=2><B>" + MonetarySymbol + moneyFormat((fTotal + fTax - fCertificate)*.7) + "</B></TD>"; 
      strOutput += "</TR>";  
	  strOutput += "</TABLE>";
	  }
   } 

   document.write(strOutput); 
   document.close(); 
} 
function DIIFCushions() 
{ 
   QueryString_Parse(); 
   
} 

