<%@ Language=VBScript %> <% option explicit Response.Buffer=True Const vDebug = 0 %> <% '@BEGINVERSIONINFO '@APPVERSION: 50.4014.0.2 '@FILENAME: savecart.asp '@DESCRIPTION: Displayes all products on sale '@STARTCOPYRIGHT 'The contents of this file is protected under the United States 'copyright laws and is confidential and proprietary to 'LaGarde, Incorporated. Its use or disclosure in whole or in part without the 'expressed written permission of LaGarde, Incorporated is expressly prohibited. ' '(c) Copyright 2000, 2001 by LaGarde, Incorporated. All rights reserved. '@ENDCOPYRIGHT '@ENDVERSIONINFO 'Modified 10/25/01 'Storefront Ref#'s: 177 'JF '------------------------------------------------------- ' Check if custID exists '------------------------------------------------------- Dim bCustIdExists, iCustID Dim CurrencyISO CurrencyISO = getCurrencyISO(Session.LCID ) iCustID = Request.Cookies("sfCustomer")("custID") If iCustID <> "" Then bCustIdExists = CheckCustomerExists(iCustID) If bCustIdExists = false Then Response.Cookies("sfCustomer")("CustID") = "" Response.Cookies("sfCustomer").Expires = NOW() Else Response.Cookies("sfCustomer")("CustID") = iCustID Response.Cookies("sfCustomer").Expires = Date() + 730 End If End If If Request.Cookies("sfOrder")("SessionID") = Session("SessionID") AND Request.Cookies("sfOrder")("SessionID") <> "" AND bCustIdExists Then bLoggedIn = true End If '------------------------------------------------------- ' If login button is depressed '------------------------------------------------------- Dim sCondition, sEmail, sPassword, iAuthenticate, bLoggedIn If Trim(Request.Form("btnLogin.x")) <> "" Then sEmail = Trim(Request.Form("Email")) sPassword = Trim(Request.Form("Password")) ' Authenticate iCustID = customerAuth(sEmail,sPassword,"loose") If iCustID > 0 AND iCustID <> "" Then ' If Request.Cookies("sfCustomer")("custID") <> "" AND TRIM(iCustID) <> TRIM(Request.Cookies("sfCustomer")("CustID")) Then ' ' Dim bSvdCartCust ' bSvdCartCust = CheckSavedCartCustomer(Request.Cookies("sfCustomer")("custID")) ' ' If vDebug = 1 Then Response.write "Saved Cart Cust?" & Request.Cookies("sfCustomer")("custID") & "False?" & bSvdCartCust ' If bSvdCartCust Then ' ' Delete SvdCartCustomer Row ' Call DeleteCustRow(Request.Cookies("sfCustomer")("custID")) ' ' See if saved cart has any remaining saved ' Call setUpdateSavedCartCustID(iCustID,Request.Cookies("sfCustomer")("custID")) ' End If ' End If Response.Cookies("sfOrder")("SessionID") = Session("SessionID") Response.Cookies("sfOrder").Expires = Date() + 1 Response.Cookies("sfCustomer")("custID") = iCustID Response.Cookies("sfCustomer").Expires = Date() + 730 Session("CustID") = iCustID bLoggedIn = true Else If customerAuth(sEmail,sPassword,"loosest") > 0 Then sCondition = "EmailMatch" Response.Cookies("sfCustomer").Expires = Now() Else sCondition = "WrongCombination" Response.Cookies("sfCustomer").Expires = Now() End If End If ElseIf Trim(Request.Form("SignUp.x")) <> "" Then sEmail = Trim(Request.Form("Email")) sPassword = Trim(Request.Form("Password")) ' Authenticate iCustID = customerAuth(sEmail,sPassword,"loose") If iCustID > 0 Then Response.Cookies("sfOrder")("SessionID") = Session("SessionID") Response.Cookies("sfOrder").Expires = Date() + 1 Response.Cookies("sfCustomer")("custID") = iCustID Response.Cookies("sfCustomer").Expires = Date() + 730 Session("custID") = iCustID bLoggedIn = true Else iCustID = getSvdCustomer(sEmail,sPassword) Response.Cookies("sfOrder")("SessionID") = Session("SessionID") Response.Cookies("sfOrder").Expires = Date() + 1 Response.Cookies("sfCustomer")("custID") = iCustID Response.Cookies("sfCustomer").Expires = Date() + 730 Session("custID") = iCustID bLoggedIn = true End If End If If iConverion = 1 Then Response.Write "" %> <%= C_STORENAME %>-SF Save Cart Page
<%If C_BNRBKGRND = "" Then%><%= C_STORENAME %><%Else%><%End If%>
Your <%=Application("CartName")%>
Please review your <%=Application("CartName")%> items as shown below. To modify the quantity of any item, simply input the desired quantity and select the Recalculate <%=Application("CartName")%> button. To delete an item click on DELETE. To ADD an item to your order for purchase, click on ADD. If you want to add new items, you can do so by pressing RETURN TO SHOP and click on <%=Application("CartSaveButton")%> for the appropriate product. You can access your <%=Application("CartName")%> at any time.
<% '@BEGINCODE '----------------------------------------------------------- ' BEGIN PRODUCT DETAIL OUTPUT ------------------------------ ' Note: will need code to alternate the colors between: ' C_ALTBGCOLOR1 and C_ALTBGCOLOR2 (and other items) '----------------------------------------------------------- Dim sSql, rsAllSvdOrders, sProdID, aProduct, aProdAttr, sProdName, sProdPrice, iProdAttrNum, iCounter Dim sAttrUnitPrice, sUnitPrice, iQuantity, iNewQuantity, sProductSubtotal, dProductSubtotal, dTotalPrice, iSvdOrderID, aProdAttrID, sTotalPrice, sProductPrice Dim iProductCounter, sBgColor, sFontFace, sFontColor, iFontSize Dim sPaymentList, bHasProducts, sBtnAction, sAddCart, sDelete, iTmpCartID,sRecalculate, iAddFind, iDeleteFind, sReferer Dim sErrorDescription, sSearchPath, aProdValues, iShip Dim bProd_Inactive ' Determine action and OrderID For iCounter = 1 to Request.Form("iProductCounter") sAddCart = Request.Form("AddToCart" & iCounter & ".x") If sAddCart <> "" Then iAddFind = iCounter sBtnAction = "AddToCart" Exit For End If sDelete = Request.Form("DeleteFromOrder" & iCounter & ".x") If sDelete <> "" Then iDeleteFind = iCounter sBtnAction = "DeleteFromCart" Exit For End If Next ' Determine if it is recalculate action sRecalculate = Request.Form("Recalculate.x") If sRecalculate <> "" Then sBtnAction = "Recalculate" End If ' Recalculate subtotal If sBtnAction = "Recalculate" Then Dim iTmpOrderID, iOldQuantity For iCounter = 1 To Request.Form("iProductCounter") iNewQuantity = Request.Form("FormQuantity" & iCounter) iOldQuantity = Request.Form("iQuantity" & iCounter) iSvdOrderID = Request.Form("iSvdOrderID" & iCounter) if not isnumeric(iNewQuantity) or trim(iNewQuantity) ="" then iNewQuantity = iOldQuantity end if If iNewQuantity <> "" Then If iNewQuantity = 0 Then ' Delete if 0 Call setDeleteOrder("odrdtsvd",iSvdOrderID) ElseIf iNewQuantity <> iOldQuantity Then ' Update Quantity For Product Call setReplaceQuantity("odrdtsvd",iNewQuantity,iSvdOrderID) End If Else ' Delete if Null Value Call setDeleteOrder("odrdtsvd",iSvdOrderID) End If Next ' Save to Cart ElseIf sBtnAction = "AddToCart" Then sProdID = Request.Form("sProdID" & iAddFind) iSvdOrderID = Request.Form("iSvdOrderID" & iAddFind) iQuantity = Request.Form("iQuantity" & iAddFind) iProdAttrNum = Request.Form("iProdAttrNum" & iAddFind) iCustID = Request.Cookies("sfCustomer")("custID") sReferer = Session("HttpReferer") iNewQuantity = Request.Form("FormQuantity" & iAddFind) aProdValues = getProdValues(sProdID,iQuantity) iShip = aProdValues(3) ' Check to see if custID exists in customer table If iCustID <> "" Then bCustIdExists = CheckCustomerExists(iCustID) If bCustIdExists = false Then Response.Cookies("sfCustomer")("custID") = "" Response.Cookies("sfCustomer").Expires = NOW() End If End If ' In the case that one types in a new quantity and hits add If iNewQuantity <> iQuantity And iNewQuantity <> "" Then iQuantity = iNewQuantity End If If iProdAttrNum <> "" AND iProdAttrNum > 0 Then Redim aProdAttr(iProdAttrNum) aProdAttr = getProdAttr("odrattrsvd",iSvdOrderID,iProdAttrNum) End If iTmpCartID = getOrderID("odrdttmp","odrattrtmp", sProdID,aProdAttr,cInt(iProdAttrNum)) If iTmpCartID <> "" Then ' New Row in SavedCartDetails If iTmpCartID < 0 Then ' Write as new row iTmpCartID = getTmpTable(aProdAttr,sProdID,iQuantity,sReferer, iShip) ' Existing cart Else ' Update Quantity Call setUpdateQuantity("odrdttmp",iQuantity,iTmpCartID) ' End existing saved cart If End If Else Response.Write "

Number of attributes not equal to the product specs or database writing error" ' ++ Response.Redirect("error.asp") ' End iTmpCartID Null If End If SaveCart_WriteSvdtmpAERecord 'SFAE ' delete from sfSavedOrderDetails Call setDeleteOrder("odrdtsvd",iSvdOrderID) ElseIf sBtnAction = "DeleteFromCart" Then ' Remove from cart iSvdOrderID = Request.Form("iSvdOrderID" & iDeleteFind) Call setDeleteOrder("odrdtsvd",iSvdOrderID) End If iProductCounter = 0 dTotalPrice = 0 '----------------------------------------------------------------- ' Collect all orders associated with Session ::: Begin '----------------------------------------------------------------- ' Get a RecordSet of all orders ' Check cookies and other indicators of login If (Request.Cookies("sfCustomer")("custID") = "" OR Request.Cookies("sfOrder")("SessionID") = "" OR Request.Cookies("sfOrder")("SessionID") <> Session("SessionID")) Then Dim sSubmitAction sSubmitAction = "this.form=true;return sfCheck(this);" bLoggedIn = false %>

<% Else iCustID = Request.Cookies("sfCustomer")("custID") Call setCombineProducts(iCustID) sSql = "SELECT * FROM sfSavedOrderDetails WHERE odrdtsvdCustID=" & makeInputSafe(iCustID) If vDebug = 1 Then Response.Write "
" & sSql Set rsAllSvdOrders = cnn.execute(sSql) ' Check for no orders If rsAllSvdOrders.EOF Then bHasProducts = False %> <% Else bHasProducts = True Do While NOT rsAllSvdOrders.EOF bProd_Inactive = False ' Get the ProdIDs iSvdOrderID = rsAllSvdOrders.Fields("odrdtsvdID") sProdID = rsAllSvdOrders.Fields("odrdtsvdProductID") iQuantity = rsAllSvdOrders.Fields("odrdtsvdQuantity") ' Get an array of 3 values from getProduct() '++ On Error Resume Next ReDim aProduct(3) aProduct = getProduct(sProdID) If trim(aProduct(0)) ="" Then bProd_Inactive = True aProduct(0) = "No longer Available" aProduct(1) = "-" aProduct(2) = "-" End if sProdName = aProduct(0) sProdPrice = aProduct(1) iProdAttrNum = aProduct(2) ' ++ Call CheckForError() ' If not an array, then the product does not exist If NOT IsArray(aProduct) Then Response.Write "
Product Does Not Exist" ' ++ Needs to MoveNext to iterate through the rest of the order Else If NOT IsNumeric(iProdAttrNum)Then iProdAttrNum = 0 End If ' Get Associated Attribute IDs in an array If iProdAttrNum <> "" Then ReDim aProdAttrID(iProdAttrNum) aProdAttrID = getProdAttr("odrattrsvd",iSvdOrderID,iProdAttrNum) End If ' Response Write all Output If vDebug = 1 Then Response.Write "

Product = " & sProdID & "
ProdName = " & sProdName & "
ProdPrice = " & sProdPrice & "
ProdAttrNum = " & iProdAttrNum 'Call ShowRow("odrdtsvd","odrattrsvd",iSvdOrderID,sProdID) If IsArray(aProdAttrID) Then For iCounter = 0 To iProdAttrNum -1 Response.Write "
Attribute :" & aProdAttrID(iCounter) Next End If End If iProductCounter = iProductCounter + 1 dim fontclass ' Do alternating colors and fonts If (iProductCounter mod 2) = 1 Then fontclass="tdAltFont1" Else fontclass="tdAltFont2" End If %>

<% ' End IsArray If End If ' Move to next RecordSet rsAllSvdOrders.MoveNext ' loop through recordset Loop '@ENDCODE '----------------------------------------------------------- ' END PRODUCT DETAIL OUTPUT -------------------------------- '----------------------------------------------------------- %>
product unit price qty price action

<% If sCondition = "EmailMatch" Then %> <% ElseIf sCondition = "WrongCombination" Then %> <% End If %>
<%=Application("CartName")%> Login
Email Match
Please choose another email account
Wrong Combination of email/password
Please try again
E-Mail:
Password:
Forgot your password?

No Items in <%=Application("CartName")%>
Please press return to shop button to begin searching for items.

<%= sProdName %>
<% ' Begin with 0 sAttrUnitPrice = 0 ' Iterate Through Attributes If iProdAttrNum > 0 And IsArray(aProdAttrID) Then Dim sAttrSubtotal, aAttrDetails, sAttrName, sAttrPrice, iAttrType For iCounter = 0 To iProdAttrNum - 1 aAttrDetails = getAttrDetails(aProdAttrID(iCounter)) sAttrName = aAttrDetails(0) sAttrPrice = aAttrDetails(1) iAttrType = aAttrDetails(2) ' Calculate Subtotal sAttrUnitPrice = getAttrUnitPrice(sAttrUnitPrice,sAttrPrice,iAttrType) %>   <%=sAttrName%>
<% ' ProdAttr Loop Next ' Else the attributes don't exist in database. Best to delete it? Elseif iProdAttrNum > 0 And NOT IsArray(aProdAttrID) Then Response.Write "
Error: No Attributes found for " & iSvdOrderID Response.Write "
Deleting from" & Application("CartName") & ". Sorry for the inconvenience." Call setDeleteOrder("odrdtsvd",iSvdOrderID) If vDebug = 1 Then Response.Write "

" & iSvdOrderID & "" ' End Product Attribute If End If ' Set Unit Price for Product If bProd_Inactive = False Then 'djp If iConverion = 1 Then sUnitPrice = "" Else sUnitPrice = FormatCurrency(cDbl(sAttrUnitPrice) + cDbl(sProdPrice)) End If dProductSubtotal = iQuantity * (cDbl(sAttrUnitPrice) + cDbl(sProdPrice)) If iConverion = 1 Then sProductSubtotal = "" Else sProductSubtotal = FormatCurrency(dProductSubtotal) End If dTotalPrice = dTotalPrice + cDbl(dProductSubtotal) End if %>

<%= sUnitPrice %> <%= sProductSubtotal %>
<%If bProd_Inactive = False Then%> <%End if%>

Update <%=Application("CartName")%>


<% '----------------------------------------------------------- ' SUBTOTAL OUTPUT taken out 'SFUPDATE '----------------------------------------------------------- %> <% ' End rsAllSvdOrders If End If ' End Cookie If End If ' Determine search path If Request.Cookies("sfSearch")("SearchPath") <> "" Then sSearchPath = Request.Cookies("sfSearch")("SearchPath") If InStr(LCase(sSearchPath), LCase("login.asp")) <> 0 Then sSearchPath = "search.asp" End If Else sSearchPath = "search.asp" End If %>
View Cart Return to Shop <% If bLoggedIn = true Then %>
<% If bHasProducts Then SaveCart_ShowEmailWishListButton 'SFAE End If End If %> <%If bHasProducts Then %> Please Note: None of these items will be in checkout unless you explicitly add them to your order. <%End If %>
<% closeObj(rsAllSvdOrders) closeObj(cnn) %>