using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using CMS.GlobalHelper;
using CMS.OnlineMarketing;
using CMS.SettingsProvider;
using CMS.UIControls;
public partial class CMSModules_Scoring_Controls_UI_Rule_List : CMSAdminListControl
{
#region "Properties"
///
/// Indicates if the control should perform the operations.
///
public override bool StopProcessing
{
get
{
return base.StopProcessing;
}
set
{
base.StopProcessing = value;
gridElem.StopProcessing = value;
}
}
///
/// Indicates if the control is used on the live site.
///
public override bool IsLiveSite
{
get
{
return base.IsLiveSite;
}
set
{
base.IsLiveSite = value;
gridElem.IsLiveSite = value;
}
}
#endregion
#region "Methods"
protected void Page_Load(object sender, EventArgs e)
{
int scoreId = QueryHelper.GetInteger("scoreid", 0);
gridElem.OnExternalDataBound += new OnExternalDataBoundEventHandler(gridElem_OnExternalDataBound);
gridElem.EditActionUrl = "Tab_Rules_Edit.aspx?scoreid=" + scoreId + "&ruleId={0}";
gridElem.WhereCondition = "RuleScoreID = " + scoreId;
}
private object gridElem_OnExternalDataBound(object sender, string sourceName, object parameter)
{
switch (sourceName.ToLowerCSafe())
{
case "validity":
DataRowView row = (DataRowView)parameter;
// Valid until specific date
DateTime validUntil = ValidationHelper.GetDateTime(row["RuleValidUntil"], DateTime.MinValue);
if (validUntil != DateTime.MinValue)
{
return validUntil.ToShortDateString();
}
// Valid for specified time period
if (!String.IsNullOrEmpty(ValidationHelper.GetString(row["RuleValidity"], null)))
{
string strValidity = ValidationHelper.GetString(row["RuleValidity"], null);
ValidityEnum validity = (ValidityEnum)Enum.Parse(typeof(ValidityEnum), strValidity);
if (validity != ValidityEnum.Until)
{
return ValidationHelper.GetString(row["RuleValidFor"], "1") + " " + Enum.GetName(typeof(ValidityEnum), validity);
}
}
break;
case "ruletype":
string name = "om.score.";
name += Enum.GetName(typeof(RuleTypeEnum), parameter);
return GetString(name);
}
return null;
}
#endregion
}