using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using WorkoPlus.BOL;
using WorkoPlus.PayPalIntegration;
public partial class bannersubscription : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Roles.IsUserInRole(ConfigurationManager.AppSettings["employerrolename"]))
{
Response.Redirect("~/customerrorpages/NotAuthorized.aspx");
}
if (Page.IsPostBack == false)
{
UserSubscription userSubscription = UserSubscription.GetByUserName(Profile.UserName, Convert.ToInt32(SubscriptionType.JobPosting));
DataTable dt = UserSubscription.GetStatus(Convert.ToInt32(SubscriptionType.BannerAdvertisment), Profile.UserName).Tables[0];
if (dt != null && dt.Rows.Count > 0)
{
lblSubscriptionDetails.Text = "Your subscription details are
";
lblSubscriptionDetails.Text += "
Subscription Date : " + Convert.ToDateTime (dt.Rows[0]["SubscriptionDate"]).ToString("MM-dd-yyyy");
lblSubscriptionDetails.Text += "
Expiration Date : " + dt.Rows[0]["StatusDetails"];
lblSubscriptionDetails.Text += "
Subscription Package: " + dt.Rows[0]["Description"] + " ( " + dt.Rows[0]["Duration"].ToString() + " " + dt.Rows[0]["DurationTypeDescription"].ToString() + " )";
lblSubscriptionDetails.Text += "
Subscription Package Details: " + dt.Rows[0]["DetailDescription"] ;
lblSubscriptionDetails.Text += "
Subscription Status: " + dt.Rows[0]["StatusDescription"];
if (userSubscription != null)
{
if (userSubscription.Status == Constant.Pending || userSubscription.Status == Constant.Processing)
{
lblSubscriptionDetails.Text += "
Thank you for subscribing at WorkSpecial.
Your subscription is not active yet.";
}
else if(userSubscription.Status == Constant.Expired)
{
lblSubscriptionDetails.Text += "
Your subscription has been expired.Please subscribe yourself to advertise and display company banner.";
tbSubscriptionForm.Style.Add("display", "''");
}
}
}
else
{
lblSubscriptionDetails.Text = "Our System detected that you have not subscribed to advertise or display company banner.";
}
}
}
protected void btnSubscribe_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(Request.Form["rdoSubscriptionType"]) == true)
{
lblSubscriptionDetails.Text = "Please select subscription type.";
lblSubscriptionDetails.Font.Bold = true;
lblSubscriptionDetails.ForeColor = System.Drawing.Color.Red;
return;
}
Int32 iSubscrptionTypeId = Convert.ToInt32(Request.Form["rdoSubscriptionType"]);
Subscription obj = Subscription.GetById(iSubscrptionTypeId);
UserSubscription userSubscription = new UserSubscription();
userSubscription.UserName = Profile.UserName;
userSubscription.SubscriptionDate = DateTime.Now;
userSubscription.ExpirationDate = DateTime.Now.AddMonths(1);
userSubscription.SubscriptionTypeId = iSubscrptionTypeId;// obj.ID;
userSubscription.Status = Constant.Processing;
int iItemId = userSubscription.Insert();
if (iItemId != -1)
{
DataTable dt = UserSubscription.GetById(iItemId).Tables[0];
if (dt != null && dt.Rows.Count > 0)
{
string mailMessage = "We are processing you subscription details.... \n";
mailMessage += "\nSubscription Date : " + Convert.ToDateTime(dt.Rows[0]["SubscriptionDate"]).ToString("MM-dd-yyyy");
mailMessage += "\nExpiration Date : " + dt.Rows[0]["StatusDetails"];
mailMessage += "\nSubscription Package: " + dt.Rows[0]["Description"] + " ( " + dt.Rows[0]["Duration"].ToString() + " " + dt.Rows[0]["DurationTypeDescription"].ToString() + " )";
mailMessage += "\nSubscription Package Details: " + dt.Rows[0]["DetailDescription"];
mailMessage += "\nSubscription Status: " + dt.Rows[0]["StatusDescription"];
Helper.Mail(dt.Rows[0]["EMail"].ToString(), "Workspecial.com", "postmaster@workspecial.com", mailMessage, "Subscription Details", "");
}
HandlePayPalRedirection(iItemId,iItemId,"Banner Subscription #" + iItemId.ToString (),obj.Charges);
}
}
private void HandlePayPalRedirection(int iItemId, int iInvoiceId, string sItem, decimal Amount)
{
// *** Set a flag so we know we redirected
Session["PayPal_Redirected"] = "True";
Session["ItemId"] = iItemId;
// *** Save any values you might need when you return here
Session["PayPal_OrderAmount"] = Amount; // already saved above
PayPalHelper PayPal = new PayPalHelper();
PayPal.Amount = Amount;
//PayPal.LogoUrl = "https://www.west-wind.com/images/wwtoollogo_text.gif";
PayPal.ItemName = sItem;
PayPal.InvoiceNo = iInvoiceId.ToString();
// *** Have paypal return back to this URL
PayPal.SuccessUrl = PayPal.ReturnURL + "?PayPal=Success";
PayPal.CancelUrl = PayPal.ReturnURL + "?PayPal=Cancel";
Response.Redirect(PayPal.GetSubmitUrl());
return;
}
}