using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using CMS.GlobalHelper;
using CMS.SettingsProvider;
using CMS.SiteProvider;
using CMS.UIControls;
public partial class CMSModules_Membership_Controls_MyMemberships : CMSAdminControl
{
#region "Properties"
///
/// Gets or sets the user ID.
///
public int UserID
{
get;
set;
}
///
/// Gets or sets the URL of 'buy membership' page.
///
public string BuyMembershipURL
{
get
{
return btnBuyMembership.PostBackUrl;
}
set
{
btnBuyMembership.PostBackUrl = URLHelper.ResolveUrl(value);
}
}
#endregion
#region "Page methods"
protected void Page_Load(object sender, EventArgs e)
{
membershipsGrid.StopProcessing = StopProcessing;
// Set where condition
membershipsGrid.WhereCondition = String.Format("UserID = {0}", UserID);
// Set pager links text on live site
if (IsLiveSite)
{
membershipsGrid.Pager.FirstPageText = "<<";
membershipsGrid.Pager.LastPageText = ">>";
membershipsGrid.Pager.PreviousPageText = "<";
membershipsGrid.Pager.NextPageText = ">";
membershipsGrid.Pager.PreviousGroupText = "...";
membershipsGrid.Pager.NextGroupText = "...";
}
}
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
// Show buy membership button if it has URL
btnBuyMembership.Visible = !String.IsNullOrEmpty(btnBuyMembership.PostBackUrl);
}
#endregion
#region "Methods"
public override void SetValue(string propertyName, object value)
{
base.SetValue(propertyName, value);
switch (propertyName.ToLowerCSafe())
{
case "userid":
UserID = ValidationHelper.GetInteger(value, 0);
break;
case "buymembershipurl":
BuyMembershipURL = ValidationHelper.GetString(value, null);
break;
}
}
protected object membershipsUniGridElem_OnExternalDataBound(object sender, string sourceName, object parameter)
{
switch (sourceName.ToLowerCSafe())
{
case "validto":
DateTime validTo = ValidationHelper.GetDateTime(parameter, DateTimeHelper.ZERO_TIME);
// Format unlimited membership
if (validTo.CompareTo(DateTimeHelper.ZERO_TIME) == 0)
{
return "-";
}
break;
}
return parameter;
}
#endregion
}