%option explicit%>
<%
'***************************************************************
' Result from SSLShopcheckout.asp
' Version 4.50
' May 12, 2002 add change result+1
'************************************************************
Dim ForwardURL, BackURL
dim tasktype
Dim rstemp
Dim dbc
dim perror, poid
Perror="" ' no errors
Forwardurl="shopthanks.asp"
Backurl="sslshopcheckout.asp"
'
Tasktype=ucase(Request("Task")) ' task (CC,NoCC,Delete)
Poid=Request("oid") ' if not session, get from eway return
If GetSess("Oid")="" then
SetSess "oid",poid
end if
if poid="" or tasktype="" then
PError="Your credit card transaction failed
Either retry it
or select another payment method"
response.redirect BackURL
end if
Select Case Tasktype
Case "CC"
UpdateCreditCard ' add authorization to database
response.redirect ForwardURL ' go to shopthanks
Case "NOCC"
UpdateNOCC
response.redirect ForwardURL ' go to shopthanks
Case "CANCEL"
CancelOrder
response.redirect "shopend.asp"
end select
Sub UpdateCreditCard
'on error resume next
Dim sqltemp
dim temp
OpenOrderDB dbc ' release 2.40
sqltemp="select * from orders where orderid=" & poid
Set rstemp = Server.CreateObject("ADODB.Recordset")
rstemp.open sqltemp, dbc, 1, 3
updatefield "ocardtype"
UpdateFieldX "ocardno"
updatefield "ocardname"
updatefield "ocardexpires"
updatefield "ocardaddress"
updatefield "oauthorization"
rstemp.update
rstemp.close
set rstemp=nothing
ShopCloseDatabase dbc
end sub
Sub UpdateNOCC
'on error resume next
Dim sqltemp
dim temp
OpenOrderDB dbc ' release 2.40
sqltemp="select * from orders where orderid=" & poid
Set rstemp = Server.CreateObject("ADODB.Recordset")
rstemp.open sqltemp, dbc, 1, 3
updatefield "ocardtype"
updatefield "ocardname"
rstemp.update
rstemp.close
set rstemp=nothing
ShopCloseDatabase dbc
end sub
'
Sub UpdateField (fieldname)
dim fieldvalue
fieldvalue=Request(fieldname)
if fieldvalue="" then
exit sub
end if
if ucase(fieldvalue)="NULL" then
rstemp(Fieldname)=NULL
else
rstemp(Fieldname)=fieldvalue
end if
end sub
'
Sub UpdateFieldX (fieldname)
dim hashkey
dim fieldvalue, temp
fieldvalue=Request(fieldname)
dim pos, newfieldvalue, remaining, length
fieldvalue=Request(fieldname)
pos=instr(fieldvalue,"AAAA")
if pos>0 then
length=len(fieldvalue)
newfieldvalue=mid(fieldvalue,1, pos-1)
pos=pos+4
remaining=length-pos+1
newfieldvalue=newfieldvalue & chr(0) & mid(fieldvalue, pos, remaining)
fieldvalue=newfieldvalue
end if
If getconfig("xEncryptCreditCard")="Yes" then
rstemp(Fieldname)=fieldvalue
else
hashkey=getconfig("xEncryptKey")
temp=EnDecrypt(fieldvalue, hashkey)
fieldvalue=temp
rstemp(Fieldname)=fieldvalue
end if
end sub
'
Sub CancelOrder
OpenOrderDB dbc
CancelOrderRecord dbc, poid
shopCloseDatabase dbc
ShopCancelOrder
Response.Redirect "shoperror.asp?msg=" & Server.URLEncode (LangCheckoutCancelled)
end sub
%>