using System;
using System.Web.UI.HtmlControls;
public partial class Affiliate : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
// Response.Write(UG.Utility.Password.RandomCode(3,3));
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
try
{
string refCode;
refCode = UG.Utility.Password.RandomCode(3, 3);
UG.Affiliate objAffiliate = new UG.Affiliate();
objAffiliate.ReferralCode = refCode;
objAffiliate.Email = "";
while (objAffiliate.IsAffiliateExist())
{
objAffiliate.ReferralCode = UG.Utility.Password.RandomCode(3, 3);
}
refCode = objAffiliate.ReferralCode;
objAffiliate.ReferralCode = "";
objAffiliate.Email = txtEmail.Text;
if (objAffiliate.IsAffiliateExist())
{
ErrLabel.Text = "Email address already exist. Please enter any other.";
return;
}
objAffiliate.FirstName = UG.Utility.Text.ProperCase(txtFirstName.Text.Trim());
objAffiliate.LastName = UG.Utility.Text.ProperCase(txtLastName.Text.Trim());
objAffiliate.Email = txtEmail.Text.Trim();
objAffiliate.ReferralCode = refCode;
objAffiliate.Phone = System.Text.RegularExpressions.Regex.Replace(txtPhone.Text.Trim(), @"\D", "");
objAffiliate.AddAffiliate();
if (!objAffiliate.OperationStatus)
{
if (SendEmail(objAffiliate.Email, objAffiliate.FirstName + " " + objAffiliate.LastName, objAffiliate.ReferralCode) == "success")
{
ErrLabel.Text = "Congratulations! Now you are an Affiliate. Check your mail to get your referral code.";
Response.AddHeader("refresh", "3;url=Affiliate.aspx");
}
}
else
{
ErrLabel.Text = objAffiliate.OperationResult;
}
}
catch (Exception ex)
{
ErrLabel.Text = ex.Message;
}
}
}
private string SendEmail(string strCustomerEmail, string strCustomerName, string strRefCode)
{
string filePath = Server.MapPath("~/Referral.htm");
if (System.IO.File.Exists(filePath))
{
string emailName = UG.Configuration.Instance().AdminName;
string fromEmail = UG.Configuration.Instance().AdminEmail;
System.IO.StreamReader sr = new System.IO.StreamReader(filePath);
System.Text.StringBuilder sbMailContent = new System.Text.StringBuilder(sr.ReadToEnd());
string strSite = System.Configuration.ConfigurationManager.AppSettings["Site"].ToString();
sbMailContent.Replace("_AffiliateName", strCustomerName);
sbMailContent.Replace("_SitePath", strSite);
sbMailContent.Replace("_RefCode", strRefCode);
string emailMsg = "";
string strEmailPassword = UG.Configuration.Instance().AdminEmailPassword.Trim();
emailMsg = UG.Utility.Mail.Send(emailName, fromEmail, strCustomerEmail, System.Configuration.ConfigurationManager.AppSettings["affiliatesubject"].ToString(), sbMailContent.ToString(), "", strEmailPassword);
sr.Close();
return emailMsg;
}
return "";
}
}