using System;
using System.Web.UI.WebControls;
using SiberTek.Xenta.Enums;
using SiberTek.Xenta.Presentation;
using SiberTek.Xenta.Presentation.Utils;
using SiberTek.Xenta.Presentation.Resources;
using SiberTek.Xenta.Web.Pages;
using SiberTek.Xenta.Web.Utils;
namespace SiberTek.Xenta.Web.Admin.Pages
{
public partial class PublicationIndexPage : AdminPageBase
{
#region Properties
public override bool IsAccessAllowed
{
get
{
return base.IsAccessAllowed && UserContext.Current.HasPermission((int)ContentPermission.PublicationManagment);
}
}
#endregion
#region Methods
public override void ShowMessage(string s)
{
lstMessageList.Items.Add(new ListItem(s));
}
#endregion
#region Handlers
protected override void OnInit(EventArgs e)
{
if(!IsPostBack)
{
btnSave.CommandName = "Update";
btnDelete.CommandName = "Delete";
btnSearch.CommandName = "Search";
btnDelete.Attributes.Add("onClick", String.Format("return confirm(\'{0}\');", StringManager.GetString("Admin.Common.AreYouSure")));
lnkBack.NavigateUrl = UrlHelper.GetUrl("admin", "content.aspx");
lnkHome.NavigateUrl = UrlHelper.GetUrl("admin", "home.aspx");
lnkAdd.NavigateUrl = UrlHelper.GetUrl("admin", "content/publications/new.aspx");
lblContentTitle.Text = StringManager.GetString("Admin.PublicationIndexPage.lblContentTitle.Text");
lblBack.Text = StringManager.GetString("Admin.PublicationIndexPage.lblBack.Text");
lblHome.Text = StringManager.GetString("Admin.PublicationIndexPage.lblHome.Text");
lblAdd.Text = StringManager.GetString("Admin.PublicationIndexPage.lblAdd.Text");
lblSave.Text = StringManager.GetString("Admin.PublicationIndexPage.lblSave.Text");
lblDelete.Text = StringManager.GetString("Admin.PublicationIndexPage.lblDelete.Text");
lblSearch.Text = StringManager.GetString("Admin.PublicationIndexPage.lblSearch.Text");
lblSearchTerm.Text = StringManager.GetString("Admin.PublicationIndexPage.lblSearchTerm.Text");
lblCreatedOnStart.Text = StringManager.GetString("Admin.PublicationIndexPage.lblCreatedOnStart.Text");
lblCreatedOnEnd.Text = StringManager.GetString("Admin.PublicationIndexPage.lblCreatedOnEnd.Text");
lblPublishedOnStart.Text = StringManager.GetString("Admin.PublicationIndexPage.lblPublishedOnStart.Text");
lblPublishedOnEnd.Text = StringManager.GetString("Admin.PublicationIndexPage.lblPublishedOnEnd.Text");
lblAuthor.Text = StringManager.GetString("Admin.PublicationIndexPage.lblAuthor.Text");
lblType.Text = StringManager.GetString("Admin.PublicationIndexPage.lblType.Text");
lblLanguage.Text = StringManager.GetString("Admin.PublicationIndexPage.lblLanguage.Text");
lblShowHidden.Text = StringManager.GetString("Admin.PublicationIndexPage.lblShowHidden.Text");
lblLanguage.Text = StringManager.GetString("Admin.PublicationIndexPage.lblLanguage.Text");
btnSearch.Text = StringManager.GetString("Admin.PublicationIndexPage.btnSearch.Text");
lnkBack.ToolTip = StringManager.GetString("Admin.PublicationIndexPage.lnkBack.ToolTip");
lnkHome.ToolTip = StringManager.GetString("Admin.PublicationIndexPage.lnkHome.ToolTip");
lnkAdd.ToolTip = StringManager.GetString("Admin.PublicationIndexPage.lnkAdd.ToolTip");
btnSave.ToolTip = StringManager.GetString("Admin.PublicationIndexPage.btnSave.ToolTip");
btnDelete.ToolTip = StringManager.GetString("Admin.PublicationIndexPage.btnDelete.ToolTip");
}
btnSave.Command += grdPublicationGrid.OnCommand;
btnDelete.Command += grdPublicationGrid.OnCommand;
btnSave.Command += OnCommand;
btnDelete.Command += OnCommand;
btnSearch.Command += OnCommand;
base.OnInit(e);
}
protected override void OnLoad(EventArgs e)
{
if(!IsPostBack)
{
lstLanguageList.BindData();
lstPublicationTypeList.BindData();
}
base.OnLoad(e);
}
protected override void OnLoadComplete(EventArgs e)
{
if(!IsPostBack)
{
grdPublicationGrid.BindData();
}
base.OnLoadComplete(e);
}
protected override void OnPreRender(EventArgs e)
{
if(!IsPostBack)
{
Page.ClientScript.RegisterClientScriptBlock(GetType(), "txtCreatedOnStart", String.Format("$(\"#{0}\").datepicker(\"option\",\"dateFormat\",'{1}')\"", txtCreatedOnStart.ClientID, UserContext.Current.DateFormat.ToLowerInvariant().Replace("yy", "y")), true);
Page.ClientScript.RegisterClientScriptBlock(GetType(), "txtCreatedOnEnd", String.Format("$(\"#{0}\").datepicker(\"option\",\"dateFormat\",'{1}')\"", txtCreatedOnEnd.ClientID, UserContext.Current.DateFormat.ToLowerInvariant().Replace("yy", "y")), true);
Page.ClientScript.RegisterClientScriptBlock(GetType(), "txtPublishedOnStart", String.Format("$(\"#{0}\").datepicker(\"option\",\"dateFormat\",'{1}')\"", txtPublishedOnStart.ClientID, UserContext.Current.DateFormat.ToLowerInvariant().Replace("yy", "y")), true);
Page.ClientScript.RegisterClientScriptBlock(GetType(), "txtPublishedOnEnd", String.Format("$(\"#{0}\").datepicker(\"option\",\"dateFormat\",'{1}')\"", txtPublishedOnEnd.ClientID, UserContext.Current.DateFormat.ToLowerInvariant().Replace("yy", "y")), true);
}
lstMessageList.DataBind();
base.OnPreRender(e);
}
protected void OnCommand(object sender, CommandEventArgs e)
{
switch(e.CommandName)
{
case "Update":
case "Delete":
{
grdPublicationGrid.BindData();
}
break;
case "Search":
{
grdPublicationGrid.Type = lstPublicationTypeList.SelectedValue;
grdPublicationGrid.ShowHidden = cbShowHidden.Checked;
grdPublicationGrid.SearchTerm = txtSearchTerm.Text;
grdPublicationGrid.LanguageID = lstLanguageList.SelectedValue;
grdPublicationGrid.CreatedOnStart = String.IsNullOrEmpty(txtCreatedOnStart.Text) ? (DateTime?)null : UserContext.Current.DateTimeParse(txtCreatedOnStart.Text);
grdPublicationGrid.CreatedOnEnd = String.IsNullOrEmpty(txtPublishedOnEnd.Text) ? (DateTime?)null : UserContext.Current.DateTimeParse(txtCreatedOnEnd.Text);
grdPublicationGrid.PublishedOnStart = String.IsNullOrEmpty(txtPublishedOnStart.Text) ? (DateTime?)null : UserContext.Current.DateTimeParse(txtPublishedOnStart.Text);
grdPublicationGrid.PublishedOnEnd = String.IsNullOrEmpty(txtPublishedOnEnd.Text) ? (DateTime?)null : UserContext.Current.DateTimeParse(txtPublishedOnEnd.Text);
grdPublicationGrid.AuthorID = String.IsNullOrEmpty(txtAuthor.Text) ? (int?)null : MembershipHelper.GetUserIDByUsername(txtAuthor.Text);
grdPublicationGrid.BindData();
}
break;
}
}
#endregion
}
}