<%@ language="javascript" %> Thankyou

<% //****************************************************************** //* Start of line array for storing the data from invoice.xls //****************************************************************** var objLineArray = new Array(); //****************************************************************** //* End of character array for storing the data from invoice.xls //****************************************************************** //****************************************************************** //* Start of file handling //****************************************************************** function ReadFile(FileName) { var ForReading = 1; var objFSO = new ActiveXObject("Scripting.FileSystemObject"); var txtfsoInFile = objFSO.OpenTextFile(Server.MapPath(FileName), ForReading, true); var Index = 0; while (!txtfsoInFile.AtEndOfStream) { objLineArray.push(String(txtfsoInFile.ReadLine())); Index++; } txtfsoInFile.Close(); } function WriteFile(strFileName) { var ForWriting = 2; var FSO = new ActiveXObject("Scripting.FileSystemObject"); var txtfsoOutFile = FSO.OpenTextFile(Server.MapPath(strFileName), ForWriting, true); var nIndex = 0; for (nIndex = 0; nIndex < objLineArray.length; nIndex++) { txtfsoOutFile.WriteLine(objLineArray[nIndex]); } txtfsoOutFile.Close(); } //****************************************************************** //* End of file handling //****************************************************************** //****************************************************************** //* Start of invoice data handling //****************************************************************** function FindMarker(strMarker) { var nIndex = -1; var nStrPos = -1; for (nIndex = 0; nIndex < objLineArray.length; nIndex++) { nStrPos = objLineArray[nIndex].indexOf(strMarker); if (nStrPos > -1) break; } if (nIndex >= objLineArray.length) { nStrPos = -1; nIndex = -1; } return String(nIndex) + "*" + String(nStrPos); } function GetLineNum(strResult) { var nLineNum = 0; var nStarStrPos = strResult.indexOf("*"); nLineNum = Number(strResult.substring(0, nStarStrPos)); return nLineNum; } function GetStrPos(strResult) { var nStrPos = 0; var nStarStrPos = strResult.indexOf("*"); nStrPos = Number(strResult.substring(nStarStrPos + 1, strResult.length)); return nStrPos; } function GetStrDate() { var objDate = new Date; var strDate = String(objDate.getDate()) + "/" + String(objDate.getMonth() + 1) + "/" + String(objDate.getFullYear()); return strDate; } function SetInvField(strMarker, strValue) { var strResult = FindMarker(strMarker); var nLineNum = GetLineNum(strResult); var nStrPos = GetStrPos(strResult); //Response.Write("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
"); //Response.Write("strMarker = " + strMarker + "
"); //Response.Write("strValue = " + strValue + "
"); //Response.Write("strResult = " + strResult + "
"); //Response.Write("nLineNum = " + nLineNum + "
"); //Response.Write("nStrPos = " + nStrPos + "
"); //Response.Write("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
"); if ((nLineNum > -1) && (nLineNum < objLineArray.length)) objLineArray[nLineNum] = objLineArray[nLineNum].replace(strMarker, strValue); } function OutputArray() { for (nIndex = 0; nIndex < objLineArray.length; nIndex++) { Response.Write(objLineArray[nIndex] + "
"); } } function IncInvNum(strFileName, strMarker) { //************************************************************** //* SAMPLE DATA //* //* "Epping, Victoria, 3076",,,,INVOICE #:,invoice_number308,,, //* //************************************************************** var strInvNum = 0; var strNewLine = ""; var nStrTildePos = 0; var nInvNum = 0; var strResult = FindMarker(strMarker); var nLineNum = GetLineNum(strResult); var nStrPos = GetStrPos(strResult); if (nLineNum > -1) { nStrTildePos = objLineArray[nLineNum].indexOf("~", nStrPos); if (nStrTildePos == -1) nStrTildePos = objLineArray[nLineNum].length strInvNum = objLineArray[nLineNum].substring(nStrPos + strMarker.length, nStrTildePos); nInvNum = Number(strInvNum) + 1; objLineArray[nLineNum] = objLineArray[nLineNum].replace(strInvNum, String(nInvNum)); WriteFile(strFileName); objLineArray[nLineNum] = objLineArray[nLineNum].replace(strMarker + String(nInvNum), String(nInvNum)); } } function ClearRemainingItemMarkers(nPos) { var nIndex = 0; for (nIndex = nPos; nIndex <= 30; nIndex++) { SetInvField("desc" + String(nIndex), ""); SetInvField("quant" + String(nIndex), ""); SetInvField("price" + String(nIndex), ""); SetInvField("cost" + String(nIndex), ""); } } //****************************************************************** //* End of invoice data handling //****************************************************************** var bInvalidPaypal = false; var bInvalidPaymate = false; var PaymentMethod = String(Session("payment")); function PadRight(Value, Width) { while (Value.length <= Width) Value = Value + " "; return Value; } function FormatMessage() { //****************************************************************************************************************** //* SAMPLE DATA FROM CalculatePostage.asp //* //* number_items: 7 CalculatePostage: ItemCode1: ST002 ItemName1: Acacia melanoxylon ItemSize1: Tube ItemPrice1: 3.50 //* ItemQuantity1: 10 ItemSubtotal1: 35.00 Postage: 14.00 GrandTotal: 49.00 given_names: Greg surname: Boyles //* email: gregplants@bigpond.com address1: 56 Derby Drive address2: city: Epping state: VIC postcode: 3076 //* phone: 94013696 mobile: 0414318470 delivery_given_names: Fred delivery_surname: Smith //* delivery_email: fred@bigpond.com delivery_address1: 22 Claremont Street delivery_address2: delivery_city: Fawkner //* delivery_state: VIC delivery_postcode: 2000 delivery_phone: 0393593656 delivery_mobile: 0414318470 comments: //* potcoce: 3076 fax: delivery_name: Fred Smith potcode: 3076 ASPSESSIONIDQABAQRCC: GFKJDMNCLBMFEMBIGHPIIGOH //* ASPSESSIONIDSACBSSAD: HMBDBMOCIHJCBFFPHJAGEFHH ASPSESSIONIDSAACQSBD: IHDJDBPCPCMEICKLJMJJHGKO ASPSESSIONIDQADDRTBC: //* FGADIFBDJAIMOBBBAIPDBOMM ASPSESSIONIDQADASTBC: EJJFEOBDDOCEHDCMDDHLOGNI //****************************************************************************************************************** //****************************************************************************************************************** //* SAMPLE DATA FROM PAYPAL //* //* mc_gross: 49.50 protection_eligibility: Ineligible address_status: unconfirmed item_number1: ST002 item_number2: //* payer_id: 2JE8VV4ZW3682 tax: 0.00 address_street: 22 Claremont Street payment_date: 07:33:34 Jun 13, 2010 PDT //* payment_status: Pending charset: windows-1252 address_zip: 3076 mc_shipping: 0.00 mc_handling: 0.00 //* first_name: Brendan address_country_code: AU address_name: Fred Smith notify_version: 3.0 custom: //* payer_status: verified business: gregaryb@bigpond.com address_country: Australia num_cart_items: 2 //* mc_handling1: 0.00 mc_handling2: 0.00 address_city: Fawkner //* //* payer_email: brendanb@bigpond.com //* verify_sign: ABTCZzEvXXSa-BNIdlUHHkZwlZBEAAra2RtacqioCyk-MyTt42z0wgfo mc_shipping1: 0.00 //* mc_shipping2: 0.00 tax1: 0.00 tax2: 0.00 payment_type: instant txn_id: 7XU60592FX2781258 //* last_name: Boyles //* //* receiver_email: gregaryb@bigpond.com item_name1: Acacia melanoxylon, Tube //* address_state: Victoria item_name2: Postage & Handling quantity1: 11 pending_reason: unilateral //* quantity2: 1 txn_type: cart mc_currency: AUD mc_gross_1: 38.50 mc_gross_2: 11.00 residence_country: AU //* test_ipn: 1 transaction_subject: Shopping Cart payment_gross: merchant_return_link: Return to Merchant //* //* given_names: Greg surname: Boyles email: gregplants@bigpond.com address1: 56 Derby Drive address2: //* city: Epping state: VIC potcoce: 3076 fax: //* //* delivery_name: Fred Smith phone: 94013696 //* delivery_address1: 22 Claremont Street delivery_address2: delivery_city: Fawkner delivery_state: VIC //* delivery_postcode: 3076 delivery_phone: 0393593656 mobile: 0414318470 delivery_mobile: 0414318470 potcode: 3076 //* postcode: 3076 delivery_given_names: Fred delivery_surname: Smith delivery_email: fred@bigpond.com //* ASPSESSIONIDQABARQCC: MPIDOIGCFAAGIJJOAMKDNFKK //* //****************************************************************************************************************** var EmailBody = ""; var Postage = 0; var MyPostage = 0; var nIndex = 0; var ItemCode = "ItemCode"; var ItemName = "ItemName"; var ItemSize = "ItemSize"; var ItemPrice = "ItemPrice"; var ItemQuantity = "ItemQuantity"; var Address = ""; var SubTotal = 0; var GrandTotal = 0; var Dollars = ""; var NumItems = Number(Session("number_items")); if (String(NumItems) == String(NaN)) NumItems = 0; // Payment method is bank deposit, cheque/money order or cash and there are items in the shopping cart, so this is an order. if (((PaymentMethod == DepositPaymentType) || (PaymentMethod == CashPaymentType) || (PaymentMethod == ChequePaymentType)) && (NumItems > 0)) { // Load invoice template: invoice.csv . ReadFile("ASPEditableFiles\\InvoiceTemplate.txt"); // Increment the invoice number in the array and rewrite invoice template: invoice.csv. IncInvNum("ASPEditableFiles\\InvoiceTemplate.txt", "invoice_number"); // Set the invoice date in the array. SetInvField("invoice_date", GetStrDate()); // Set the invoice payment method in the array. SetInvField("payment_method", PaymentMethod); Postage = String(Request("Postage")); Postage = Postage.substring(1, Postage.length); Postage = Number(Postage); MyPostage = String(Request("MyPostage")); MyPostage = MyPostage.substring(1, MyPostage.length); MyPostage = Number(MyPostage); EmailBody = "Name: " + String(Request("given_names")) + " " + String(Request("surname")) + "\n"; EmailBody += "Email: " + String(Request("email")) + "\n\n"; EmailBody += "Address\n--------\n"; EmailBody += String(Request("address1")); Address = String(Request("address2")); if (Address.length > 0) EmailBody += " " + Address; EmailBody += ", "; EmailBody += String(Request("city")) + ", " + String(Request("state")) + ", " + String(Request("postcode")) + "\n"; EmailBody += "Phone: " + String(Request("phone")) + "\n" + "Mobile: " + String(Request("mobile")) + "\n\n"; // Set the billing details in the array. SetInvField("billing_name", String(Request("given_names")) + " " + String(Request("surname"))); SetInvField("billing_address", String(Request("address1")) + String(Request("address2")) + ", " + String(Request("city")) + ", " + String(Request("state")) + ", " + String(Request("postcode"))); SetInvField("billing_email", String(Request("email"))); SetInvField("billing_phone", String(Request("phone"))); SetInvField("billing_mobile", String(Request("mobile"))); EmailBody += "Delivery Address\n-----------------\n"; EmailBody += "Name: " + String(Request("delivery_given_names")) + " " + String(Request("delivery_surname")) + "\n"; EmailBody += String(Request("delivery_email")); EmailBody += String(Request("delivery_address1")); Address = String(Request("delivery_address2")); if (Address.length > 0) EmailBody += " " + Address; EmailBody += ", "; EmailBody += String(Request("delivery_city")) + ", " + String(Request("delivery_state")) + ", " + String(Request("delivery_postcode")) + "\n"; EmailBody += "Phone: " + String(Request("delivery_phone")) + "\n\n"; // Set the delivery details in the array. SetInvField("delivery_name", String(Request("delivery_given_names")) + " " + String(Request("delivery_surname"))); SetInvField("delivery_address", String(Request("delivery_address1")) + String(Request("delivery_address2")) + ", " + String(Request("delivery_city")) + ", " + String(Request("delivery_state")) + ", " + String(Request("delivery_postcode"))); SetInvField("delivery_email", String(Request("delivery_email"))); SetInvField("delivery_phone", String(Request("delivery_phone"))); SetInvField("delivery_mobile", String(Request("delivery_mobile"))); EmailBody += "Paying via: " + String(Session("payment") + "\n\n"); EmailBody += "Additional instructions\n------------------------\n\n"; EmailBody += String(Request("comments")) + "\n\nItems\n------\n"; for (nIndex = 1; nIndex <= NumItems; nIndex++) { ItemCode = "ItemCode" + String(nIndex); ItemCode = String(Request(ItemCode)); ItemName = "ItemName" + String(nIndex); ItemName = String(Request(ItemName)); ItemSize = "ItemSize" + String(nIndex); ItemSize = String(Request(ItemSize)); ItemPrice = "ItemPrice" + String(nIndex); ItemPrice = String(Request(ItemPrice)); ItemPrice = ItemPrice.substring(1, ItemPrice.length); ItemQuantity = "ItemQuantity" + String(nIndex); ItemQuantity = String(Request(ItemQuantity)); // Set the item details in the array. SetInvField("desc" + String(nIndex), ItemCode + " - " + ItemName + "(" + ItemSize + ")"); SetInvField("quant" + String(nIndex), ItemQuantity); SetInvField("price" + String(nIndex), ItemPrice); SubTotal = Number(ItemQuantity) * Number(ItemPrice); GrandTotal += SubTotal; EmailBody += PadRight(PadRight(ItemCode, 8) + PadRight(ItemName, 30) + PadRight(ItemSize, 19) + PadRight(String("$") + ItemPrice, 8) + PadRight(ItemQuantity, 5)) + PadRight(String("$") + String(SubTotal.toFixed(2)), 8) + "\n"; //Response.Write("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
"); //Response.Write("NumItems = " + NumItems + "
"); //Response.Write("ItemCode = " + ItemCode + "
"); //Response.Write("ItemName = " + ItemName + "
"); //Response.Write("ItemSize = " + ItemSize + "
"); //Response.Write("ItemPrice = " + ItemPrice + "
"); //Response.Write("ItemQuantity = " + ItemQuantity + "
"); //Response.Write("EmailBody = " + EmailBody + "
"); //Response.Write("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
"); } SetInvField("desc" + String(nIndex), "Postage"); SetInvField("quant" + String(nIndex), "1"); SetInvField("price" + String(nIndex), Postage); SetInvField("cost" + String(nIndex), MyPostage); ClearRemainingItemMarkers(nIndex + 1); GrandTotal += Postage; EmailBody += PadRight("Postage:", 8) + PadRight("", 30) + PadRight("", 19) + PadRight("", 8) + PadRight("", 5) + PadRight(String("$") + String(Postage.toFixed(2)), 8) + "($" + String(MyPostage.toFixed(2)) + ")\n"; EmailBody += PadRight("", 8) + PadRight("", 30) + PadRight("", 19) + PadRight("", 8) + PadRight("", 5) + PadRight("--------", 8) + "\n"; EmailBody += PadRight("Grand Total:", 8) + PadRight("", 27) + PadRight("", 19) + PadRight("", 8) + PadRight("", 5) + PadRight(String("$") + String(GrandTotal.toFixed(2)), 8) + "\n"; } // Payment method is paypal or paymate and there are items in the shopping cart, so this is a purchase. else if (((PaymentMethod == PaypalPaymentType) || (PaymentMethod == PaymatePaymentType)) && (NumItems > 0)) { var strPaypal_mc_gross = String(Request("mc_gross")); var strPaymate_transactionID = String(Request("transactionID")); if ((PaymentMethod == PaypalPaymentType) && (strPaypal_mc_gross == String(undefined))) { bInvalidPaypal = true; } else if ((PaymentMethod == PaymatePaymentType) && (strPaymate_transactionID == String(undefined))) { bInvalidPaymate = true; } else { // Load invoice template: invoice.csv . ReadFile("ASPEditableFiles\\InvoiceTemplate.txt"); // Increment the invoice number in the array and rewrite invoice template: invoice.csv. IncInvNum("ASPEditableFiles\\InvoiceTemplate.txt", "invoice_number"); // Set the invoice date in the array. SetInvField("invoice_date", GetStrDate()); // Set the invoice payment method in the array. SetInvField("payment_method", PaymentMethod); Postage = String(Request("Postage")); Postage = Postage.substring(1, Postage.length); Postage = Number(Postage); MyPostage = String(Request("MyPostage")); MyPostage = MyPostage.substring(1, MyPostage.length); MyPostage = Number(MyPostage); EmailBody = "Name: " + String(Session("given_names")) + " " + String(Session("surname")) + "\n"; EmailBody += "Email: " + String(Session("email")) + "\n\n"; EmailBody += "Address\n--------\n"; EmailBody += String(Session("address1")); Address = String(Session("address2")); if (Address.length > 0) EmailBody += " " + Address; EmailBody += ", "; EmailBody += String(Session("city")) + ", " + String(Session("state")) + ", " + String(Session("postcode")) + " + \n"; EmailBody += "Phone: " + String(Session("phone")) + "\n" + "Mobile: " + String(Session("mobile")) + "\n\n"; // Set the billing details in the array. SetInvField("billing_name", String(Request("given_names")) + " " + String(Request("surname"))); SetInvField("billing_address", String(Request("address1")) + String(Request("address2")) + ", " + String(Request("city")) + ", " + String(Request("state")) + ", " + String(Request("postcode"))); SetInvField("billing_email", String(Request("email"))); SetInvField("billing_phone", String(Request("phone"))); SetInvField("billing_mobile", String(Request("mobile"))); EmailBody += "Delivery Address\n-----------------\n"; EmailBody += "Name: " + String(Session("delivery_given_names")) + " " + String(Session("delivery_surname")) + "\n"; EmailBody += String(Session("delivery_email")); EmailBody += String(Session("delivery_address1")); Address = String(Session("delivery_address2")); if (Address.length > 0) EmailBody += " " + Address; EmailBody += ", "; EmailBody += String(Session("delivery_city")) + ", " + String(Session("delivery_state")) + ", " + String(Session("delivery_postcode")) + "\n"; EmailBody += "Phone: " + String(Session("delivery_phone")) + "\n\n"; // Set the delivery details in the array. SetInvField("delivery_name", String(Request("delivery_given_names")) + " " + String(Request("delivery_surname"))); SetInvField("delivery_address", String(Request("delivery_address1")) + String(Request("delivery_address2")) + ", " + String(Request("delivery_city")) + ", " + String(Request("delivery_state")) + ", " + String(Request("delivery_postcode"))); SetInvField("delivery_email", String(Request("delivery_email"))); SetInvField("delivery_phone", String(Request("delivery_phone"))); SetInvField("delivery_mobile", String(Request("delivery_mobile"))); EmailBody += "Paying via: " + String(Session("payment") + "\n\n"); EmailBody += "Additional instructions\n------------------------\n"; EmailBody += String(Session("comments")) + "\n\nItems\n------\n\n"; for (nIndex = 1; nIndex <= Session.Contents.Count; nIndex++) { ItemDetails = String(Session.Contents(nIndex)); //Response.Write("**********************************************************
"); //Response.Write("ItemDetails = " + ItemDetails + "
"); //Response.Write("**********************************************************
"); //******************************************************************************************************************** //* Example data //* //* SmallTrees.asp&Acacia implexa&3.50&Tube&ST001&10 //* SmallTrees.asp&Acacia implexa&3.50&Tube&ST001 //******************************************************************************************************************** Index1 = 0; Index2 = ItemDetails.indexOf("&"); // Don't need the item URL here. //Response.Write("**********************************************************
"); //Response.Write("ItemDetails = " + ItemDetails + "
"); //Response.Write("Index1 = " + Index1 + "
"); //Response.Write("Index2 = " + Index2 + "
"); //Response.Write("URL = " + URL + "
"); //Response.Write("**********************************************************
"); Index1 = Index2 + 1; Index2 = ItemDetails.indexOf("&", Index1); ItemName = ItemDetails.substring(Index1, Index2); //Response.Write("**********************************************************
"); //Response.Write("ItemDetails = " + ItemDetails + "
"); //Response.Write("Index1 = " + Index1 + "
"); //Response.Write("Index2 = " + Index2 + "
"); //Response.Write("ItemName = " + ItemName + "
"); //Response.Write("**********************************************************
"); Index1 = Index2 + 1; Index2 = ItemDetails.indexOf("&", Index1); ItemPrice = ItemDetails.substring(Index1, Index2); //Response.Write("**********************************************************
"); //Response.Write("ItemDetails = " + ItemDetails + "
"); //Response.Write("Index1 = " + Index1 + "
"); //Response.Write("Index2 = " + Index2 + "
"); //Response.Write("ItemPrice = " + ItemPrice + "
"); //Response.Write("**********************************************************
"); Index1 = Index2 + 1; Index2 = ItemDetails.indexOf("&", Index1); ItemSize = ItemDetails.substring(Index1, Index2); //Response.Write("**********************************************************
"); //Response.Write("ItemDetails = " + ItemDetails + "
"); //Response.Write("Index1 = " + Index1 + "
"); //Response.Write("Index2 = " + Index2 + "
"); //Response.Write("ItemSize = " + ItemSize + "
"); //Response.Write("**********************************************************
"); //******************************************************************************************************************** //* Example data //* //* SmallTrees.asp&Acacia implexa&3.50&Tube&ST001&10 //* SmallTrees.asp&Acacia implexa&3.50&Tube&ST001 //******************************************************************************************************************** Index1 = Index2 + 1; Index2 = ItemDetails.indexOf("&", Index1); // If the item does not have an appended quantity then Index2 will be -1. if (Index2 > -1) { ItemCode = ItemDetails.substring(Index1, Index2); ItemQuantity = Number(ItemDetails.substring(Index2 + 1, ItemDetails.length)); } else { ItemCode = ItemDetails.substring(Index1, ItemDetails.length); ItemQuantity = 0; } //Response.Write("**********************************************************
"); //Response.Write("ItemDetails = " + ItemDetails + "
"); //Response.Write("Index1 = " + Index1 + "
"); //Response.Write("Index2 = " + Index2 + "
"); //Response.Write("ItemCode = " + ItemCode + "
"); //Response.Write("ItemQuantity = " + ItemQuantity + "
"); //Response.Write("**********************************************************
"); if (ItemQuantity > 0) { // Set the item details in the array. SetInvField("desc" + String(nIndex), ItemCode + " - " + ItemName + "(" + ItemSize + ")"); SetInvField("quant" + String(nIndex), ItemQuantity); SetInvField("price" + String(nIndex), ItemPrice); ItemPrice = GetPrice(ItemSize, ItemPrice); SubTotal = Number(ItemQuantity) * ItemPrice; GrandTotal += SubTotal; EmailBody += PadRight(ItemCode, 8) + PadRight(ItemName, 30) + PadRight(ItemSize, 19) + PadRight(String("$") + ItemPrice.toFixed(2), 8) + PadRight(String(ItemQuantity), 5) + PadRight(String("$") + String(SubTotal.toFixed(2)), 8) + "\n"; //Response.Write("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
"); //Response.Write("ItemCode = " + ItemCode + "
"); //Response.Write("ItemDetails = " + ItemDetails + "
"); //Response.Write("ItemName = " + ItemName + "
"); //Response.Write("ItemSize = " + ItemSize + "
"); //Response.Write("ItemPrice = " + ItemPrice + "
"); //Response.Write("ItemQuantity = *" + PadRight(ItemQuantity, 5) + "*
"); //Response.Write("SubTotal = " + SubTotal + "
"); //Response.Write("Postage = " + Postage + "
"); //Response.Write("GrandTotal = " + GrandTotal + "

"); //Response.Write("EmailBody = " + EmailBody + "
"); //Response.Write("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n"); } } SetInvField("desc" + String(nIndex), "Postage"); SetInvField("quant" + String(nIndex), "1"); SetInvField("price" + String(nIndex), Postage); SetInvField("cost" + String(nIndex), MyPostage); ClearRemainingItemMarkers(nIndex + 1); EmailBody += PadRight("Postage:", 8) + PadRight("", 30) + PadRight("", 19) + PadRight("", 8) + PadRight("", 5) + PadRight(String("$") + String(Postage.toFixed(2)), 8) + "($" + String(MyPostage.toFixed(2)) + ")\n"; EmailBody += PadRight("", 8) + PadRight("", 30) + PadRight("", 19) + PadRight("", 8) + PadRight("", 5) + PadRight("--------", 8) + "\n"; EmailBody += PadRight("Grand Total:", 8) + PadRight("", 27) + PadRight("", 19) + PadRight("", 8) + PadRight("", 5) + PadRight(String("$") + String(GrandTotal.toFixed(2)), 8) + "\n"; } } return EmailBody; } function GetEmailSubject() { var Postage = String(Request("Postage")); var Subject = ""; if (Postage.length > 0) Subject = "Order from online nursery..."; else Subject = "Purchase from online nursery..."; return Subject; } function SendEmail(FromEmail, EmailSubject, EmailBody) { if (FromEmail.length > 0) { var myMail= Server.CreateObject("CDO.Message"); var nIndex = 0; myMail.Subject = EmailSubject; myMail.From = FromEmail; myMail.To = "greg@gregsindigenouslandscapes.com.au"; myMail.BCC = ""; myMail.CC = ""; EmailBody += "\n\n\n\nInvoice Details\n_______________\n"; for (nIndex = 0; nIndex < objLineArray.length; nIndex++) { EmailBody += objLineArray[nIndex] + "\n"; } myMail.TextBody = EmailBody; myMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2; myMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "localhost"; myMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25; myMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 10; myMail.Configuration.Fields.Update(); myMail.Send(); } } var EmailAddress = String(Request("email")); var EmailBody = FormatMessage(); var EmailSubject = GetEmailSubject(); var NumItems = Number(Session("number_items")); if ((((PaymentMethod == DepositPaymentType) || (PaymentMethod == CashPaymentType) || (PaymentMethod == ChequePaymentType) || (PaymentMethod == PaypalPaymentType) || (PaymentMethod == PaymatePaymentType)) && (NumItems > 0))) { SendEmail(EmailAddress, EmailSubject, EmailBody); } %>

Greg's Indigenous Plants & Landscapes

Environmentally friendly landscapes.

" The exotic vegetation that replaces indigenous plant communities in urbanising regions, disassociates us from the rhythms and diversity of the native landscape
and a sense of the place; and we are the poorer because of it."

Michael Hough, Professor of Landscape Architecture, York University, Canada

Thankyou

dot

 
In This Site
 

Home
About Me
Definitions
FAQ
Online Native Nursery
Online Native Nursery
Products
Services
Environmental Weeds
Gardening Tips & Tricks
Feature
Contact
Links

<% var PaymentMethod = String(Session("payment")); var strNumItems = String(Session("number_items")); var nNumItems = 0; if (strNumItems != String(undefined)) nNumItems = Number(strNumItems); // Postage field exists so post is from CalculatePostage and this is an order. if (((PaymentMethod == DepositPaymentType) || (PaymentMethod == CashPaymentType) || (PaymentMethod == ChequePaymentType)) && (strNumItems != String(undefined)) && (nNumItems > 0)) { Response.Write("

ORDER CONFIRMED



"); Response.Write("

Thankyou for your order...

"); Response.Write("

"); Response.Write("Within a few days I will email you an itemised invoice (to " + String(Request("email")) + ", confirming the details of your order "); Response.Write("and including the postage cost. If you would prefer to pick the plants up in person then please let me know and "); Response.Write("I will send you an adjusted invoice without the postage cost."); Response.Write("

"); } // Post is from paypal or paymate so this is a purchase. else if (((PaymentMethod == PaypalPaymentType) || (PaymentMethod == PaymatePaymentType)) && (strNumItems != String(undefined)) && (nNumItems > 0)) { Response.Write("

PURCHASE CONFIRMED



"); Response.Write("

Thankyou for your purchase...

"); Response.Write("

"); Response.Write("Your plants will be posted once the your payment has been received..."); Response.Write("

"); } else if (nNumItems == 0) { Response.Write("

EMPTY SHOPPING CART



"); Response.Write("

Please add some items to your shopping cart...

"); } %>

 
In This Section
 

Instructions
Search
Bush Tucker
Small Trees
Large Shrubs
Medium Shrubs
Small Shrubs
Ground Covers
Small Plants
Lilies & Irises
Ornamental Grasses
Grass Like Plants
Climbers
Aquatic Herbs
Ferns
Aquatic Reeds & Rushes
Nest Boxes
Miscellaneous Items
Buy Item
Shopping Cart
Calculate Postage
Thankyou

dot

dot

Footer information such as street addresses, email addresses, phone numbers, disclaimers, etc. goes here.