//=====================================================================||

//               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 under the GPL.  You must keep this comment ||

// unchanged in your code.  For more information contact               ||

// Scott@NopDesign.com                                                 ||

//                                                                     ||

// JavaScript Shop Module, V.4.1.0                                     ||

//=====================================================================||



//---------------------------------------------------------------------||

// 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) {

   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) {

   iNumberOrdered = 0;

   iNumberOrdered = GetCookie("NumberOrdered");

   iNumberOrdered++;



   if ( iNumberOrdered > 12 )

      alert("I'm Sorry, your cart is full, please proceed to checkout.");

   else {

      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.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;



      dbUpdatedOrder = strID_NUM    + "|" + 

                       strQUANTITY  + "|" +

                       strPRICE     + "|" +

                       strNAME      + "|" +

                       strSHIPPING  + "|" +

                       strADDTLINFO;



      strNewOrder = "Order." + iNumberOrdered;

      SetCookie(strNewOrder, dbUpdatedOrder, null, "/");

      SetCookie("NumberOrdered", iNumberOrdered, null, "/");

      notice = strQUANTITY + " " + strNAME + " added to your shopping cart.";

      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("Click 'Ok' to remove this product from your shopping cart.") ) {

      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:    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 ) {

   iNumberOrdered = 0;

   fTotal         = 0;

   strTotal       = "";

   strShipping    = "";

   strOutput      = "";

   iNumberOrdered = GetCookie("NumberOrdered");



   if ( bDisplay )

      strOutput = "<center><TABLE border=1 bordercolor=#000033 width=\"75%\" cellpadding=3 cellspacing=0><TR height=75>" +

                  "<TD  bgcolor=#000033 align=center><font face=arial color=white><B>Product Id</B></font></TH>" +

                  "<TD  bgcolor=#000033 align=center><font face=arial color=white><B>Product Name/Description</B></font></TH>" +

                  "<TD  bgcolor=#000033 align=center><font face=arial color=white><B>Quantity</B></font></TH>" +

                  "<TD  bgcolor=#000033 align=center><font face=arial color=white><B>Price</B></font></TH>" +

                  "<TD  bgcolor=#000033 align=center><font face=arial color=white><B>Shipping</B></font></TH>" +

                  "<TD  bgcolor=#000033 align=center><font face=arial color=white><B>Remove From Cart</B></font></TH></TR>";



   for ( i = 1; i <= iNumberOrdered; i++ ) {

      NewOrder = "Order." + i;

      database = "";

      database = GetCookie(NewOrder);



      Token0 = database.indexOf("|", 0);

      Token1 = database.indexOf("|", Token0+1);

      Token2 = database.indexOf("|", Token1+1);

      Token3 = database.indexOf("|", Token2+1);

      Token4 = database.indexOf("|", Token3+1);



      fields = new Array;

      fields[0] = database.substring( 0, Token0 );

      fields[1] = database.substring( Token0+1, Token1 );

      fields[2] = database.substring( Token1+1, Token2 );

      fields[3] = database.substring( Token2+1, Token3 );

      fields[4] = database.substring( Token3+1, Token4 );

      fields[5] = database.substring( Token4+1, database.length );



      fTotal     += (parseInt(fields[1]) * parseFloat(fields[2]) );

      fShipping  += (parseInt(fields[1]) * parseFloat(fields[4]) );

      strTotal    = moneyFormat(fTotal);

      strShipping = moneyFormat(fShipping);



      if ( bDisplay ) {

         strOutput += "<TR><TD CLASS=\"nopentry\">"  + fields[0] + "</TD>";



         if ( fields[5] == "" )

            strOutput += "<TD CLASS=\"nopentry\">"  + fields[3] + "</TD>";

         else

            strOutput += "<TD CLASS=\"nopentry\">"  + fields[3] + " - <I>"+ fields[5] + "</I></TD>";



         strOutput += "<TD CLASS=\"nopentry\">"  + fields[1] + "</TD>" +

                      "<TD CLASS=\"nopentry\">$" + moneyFormat(fields[2]) + "/ea</TD>";



         if ( parseFloat(fields[4]) > 0 )

            strOutput += "<TD CLASS=\"nopentry\">$" + moneyFormat(fields[4]) + "/ea</TD>";

         else

            strOutput += "<TD CLASS=\"nopentry\">N/A</TD>";



         strOutput += "<TD CLASS=\"nopentry\"><input type=button value=\"  Remove  \" onClick=\"RemoveFromCart("+i+")\" class=\"nopbutton\"></TD></TR>";

      }



      strOutput += "<input type=hidden name=\"ID_"       + i + "\" value=\"" + fields[0] + "\">";

      strOutput += "<input type=hidden name=\"QUANTITY_" + i + "\" value=\"" + fields[1] + "\">";

      strOutput += "<input type=hidden name=\"PRICE_"    + i + "\" value=\"" + fields[2] + "\">";

      strOutput += "<input type=hidden name=\"NAME_"     + i + "\" value=\"" + fields[3] + "\">";

      strOutput += "<input type=hidden name=\"SHIPPING_" + i + "\" value=\"" + fields[4] + "\">";

      strOutput += "<input type=hidden name=\"ADDTLINFO_"+ i + "\" value=\"" + fields[5] + "\">";

   }



   if ( bDisplay ) {

      strOutput += "<TR><TD bgcolor=#cccccc COLSPAN=4><B>SUBTOTAL</B></TD>";

      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>$" + strTotal + "</B></TD>";

      strOutput += "</TR>";

      strOutput += "<TR><TD bgcolor=#cccccc COLSPAN=4><B>SHIPPING</B></TD>";

      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>$" + strShipping + "</B></TD>";

      strOutput += "</TR>";

      strOutput += "<TR><TD bgcolor=#cccccc COLSPAN=4><B>TOTAL</B></TD>";

      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>$" + moneyFormat((fTotal + fShipping)) + "</B></TD>";

      strOutput += "</TR>";

      strOutput += "</TABLE>";



      strOutput += "<input type=hidden name=\"SUBTOTAL\" value=\"$" + strTotal + "\">";

      strOutput += "<input type=hidden name=\"SHIPPING\" value=\"$" + strShipping + "\">";

      strOutput += "<input type=hidden name=\"TOTAL\"    value=\"$" + moneyFormat((fTotal + fShipping)) + "\">";

	  strOutput += "<input type=hidden name=\"x_Amount\"    value=\"$" + moneyFormat((fTotal + fShipping)) + "\">";

   }



   document.write(strOutput);

   document.close();

}



//=====================================================================||

//               END NOP Design SmartPost Shopping Cart                ||

//                              V.4.0.0                                ||

//=====================================================================||



//=====================================================================||

//               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 under the GPL.  You must keep this comment ||

// unchanged in your code.  For more information contact               ||

// Scott@NopDesign.com                                                 ||

//                                                                     ||

// JavaScript Shop Module, V.4.1.0                                     ||

//=====================================================================||



//---------------------------------------------------------------------||

// 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) {

   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) {

   iNumberOrdered = 0;

   iNumberOrdered = GetCookie("NumberOrdered");

   iNumberOrdered++;



   if ( iNumberOrdered > 12 )

      alert("I'm Sorry, your cart is full, please proceed to checkout.");

   else {

      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.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;



      dbUpdatedOrder = strID_NUM    + "|" + 

                       strQUANTITY  + "|" +

                       strPRICE     + "|" +

                       strNAME      + "|" +

                       strSHIPPING  + "|" +

                       strADDTLINFO;



      strNewOrder = "Order." + iNumberOrdered;

      SetCookie(strNewOrder, dbUpdatedOrder, null, "/");

      SetCookie("NumberOrdered", iNumberOrdered, null, "/");

      notice = strQUANTITY + " " + strNAME + " added to your shopping cart.";

      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("Click 'Ok' to remove this product from your shopping cart.") ) {

      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:    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 ) {

   iNumberOrdered = 0;

   fTotal         = 0;

   strTotal       = "";

   strShipping    = "";

   strOutput      = "";

   iNumberOrdered = GetCookie("NumberOrdered");



   if ( bDisplay )

      strOutput = "<center><TABLE border=1 bordercolor=#000033 width=\"75%\" cellpadding=3 cellspacing=0><TR height=75>" +

                  "<TD  bgcolor=#000033 align=center><font face=arial color=white><B>Product Id</B></font></TH>" +

                  "<TD  bgcolor=#000033 align=center><font face=arial color=white><B>Product Name/Description</B></font></TH>" +

                  "<TD  bgcolor=#000033 align=center><font face=arial color=white><B>Quantity</B></font></TH>" +

                  "<TD  bgcolor=#000033 align=center><font face=arial color=white><B>Price</B></font></TH>" +

                  "<TD  bgcolor=#000033 align=center><font face=arial color=white><B>Shipping</B></font></TH>" +

                  "<TD  bgcolor=#000033 align=center><font face=arial color=white><B>Remove From Cart</B></font></TH></TR>";



   for ( i = 1; i <= iNumberOrdered; i++ ) {

      NewOrder = "Order." + i;

      database = "";

      database = GetCookie(NewOrder);



      Token0 = database.indexOf("|", 0);

      Token1 = database.indexOf("|", Token0+1);

      Token2 = database.indexOf("|", Token1+1);

      Token3 = database.indexOf("|", Token2+1);

      Token4 = database.indexOf("|", Token3+1);



      fields = new Array;

      fields[0] = database.substring( 0, Token0 );

      fields[1] = database.substring( Token0+1, Token1 );

      fields[2] = database.substring( Token1+1, Token2 );

      fields[3] = database.substring( Token2+1, Token3 );

      fields[4] = database.substring( Token3+1, Token4 );

      fields[5] = database.substring( Token4+1, database.length );



      fTotal     += (parseInt(fields[1]) * parseFloat(fields[2]) );

      fShipping  += (parseInt(fields[1]) * parseFloat(fields[4]) );

      strTotal    = moneyFormat(fTotal);

      strShipping = moneyFormat(fShipping);



      if ( bDisplay ) {

         strOutput += "<TR><TD CLASS=\"nopentry\">"  + fields[0] + "</TD>";



         if ( fields[5] == "" )

            strOutput += "<TD CLASS=\"nopentry\">"  + fields[3] + "</TD>";

         else

            strOutput += "<TD CLASS=\"nopentry\">"  + fields[3] + " - <I>"+ fields[5] + "</I></TD>";



         strOutput += "<TD CLASS=\"nopentry\">"  + fields[1] + "</TD>" +

                      "<TD CLASS=\"nopentry\">$" + moneyFormat(fields[2]) + "/ea</TD>";



         if ( parseFloat(fields[4]) > 0 )

            strOutput += "<TD CLASS=\"nopentry\">$" + moneyFormat(fields[4]) + "/ea</TD>";

         else

            strOutput += "<TD CLASS=\"nopentry\">N/A</TD>";



         strOutput += "<TD CLASS=\"nopentry\"><input type=button value=\"  Remove  \" onClick=\"RemoveFromCart("+i+")\" class=\"nopbutton\"></TD></TR>";

      }



      strOutput += "<input type=hidden name=\"ID_"       + i + "\" value=\"" + fields[0] + "\">";

      strOutput += "<input type=hidden name=\"QUANTITY_" + i + "\" value=\"" + fields[1] + "\">";

      strOutput += "<input type=hidden name=\"PRICE_"    + i + "\" value=\"" + fields[2] + "\">";

      strOutput += "<input type=hidden name=\"NAME_"     + i + "\" value=\"" + fields[3] + "\">";

      strOutput += "<input type=hidden name=\"SHIPPING_" + i + "\" value=\"" + fields[4] + "\">";

      strOutput += "<input type=hidden name=\"ADDTLINFO_"+ i + "\" value=\"" + fields[5] + "\">";

   }



   if ( bDisplay ) {

      strOutput += "<TR><TD bgcolor=#cccccc COLSPAN=4><B>SUBTOTAL</B></TD>";

      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>$" + strTotal + "</B></TD>";

      strOutput += "</TR>";

      strOutput += "<TR><TD bgcolor=#cccccc COLSPAN=4><B>SHIPPING</B></TD>";

      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>$" + strShipping + "</B></TD>";

      strOutput += "</TR>";

      strOutput += "<TR><TD bgcolor=#cccccc COLSPAN=4><B>TOTAL</B></TD>";

      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>$" + moneyFormat((fTotal + fShipping)) + "</B></TD>";

      strOutput += "</TR>";

      strOutput += "</TABLE>";



      strOutput += "<input type=hidden name=\"SUBTOTAL\" value=\"$" + strTotal + "\">";

      strOutput += "<input type=hidden name=\"SHIPPING\" value=\"$" + strShipping + "\">";

      strOutput += "<input type=hidden name=\"TOTAL\"    value=\"$" + moneyFormat((fTotal + fShipping)) + "\">";

	  strOutput += "<input type=hidden name=\"x_Amount\"    value=\"$" + moneyFormat((fTotal + fShipping)) + "\">";

   }



   document.write(strOutput);

   document.close();

}



//=====================================================================||

//               END NOP Design SmartPost Shopping Cart                ||

//                              V.4.0.0                                ||

//=====================================================================||




