using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

namespace WebApplication2
{
	/// <summary>
	/// RequestList 的摘要说明。
	/// </summary>
	public partial class AdvList : System.Web.UI.Page
	{
		protected System.Web.UI.WebControls.ImageButton ImageButton3;
		protected System.Web.UI.WebControls.ImageButton ImageButton4;
		protected System.Web.UI.WebControls.ImageButton ImageButton5;
		protected System.Web.UI.WebControls.ImageButton ImageButton6;
		protected System.Web.UI.WebControls.ImageButton ImageButton7;
		protected System.Web.UI.WebControls.ImageButton ImageButton8;
	
	
	private static string cmdstr;
		public string cmd_str
		{
			get
			{
				return cmdstr.ToString();
			}
			set
			{
				cmdstr=value;
			}
		}
	private static string id;
		public static string getid
		{
			get
			{
				return id.ToString();
			}
			set
			{
				id=value;
			}
		}
		protected void Page_Load(object sender, System.EventArgs e)
		{
			if(!Page.IsPostBack)
			{
				if(this.Session["USERNAME"]==null||this.Session["Role"]==null||this.Session["USERNAME"].ToString()==""||this.Session["Role"].ToString()=="")
				{
					Response.Redirect("login.aspx");
				}
				else
				{
					string [] role=this.Session["Role"].ToString().Split('#');
					bool exists=false;
					for(int i=0;i<role.Length;i++)
					{
                        if (role[i].Equals("9") || role[i].Equals("0"))
						{
							exists=true;break;
						}
					}
					if(exists)
					{
					
						cmd_str=" where IsTemp='1'";
						Bind(1);
						pageeEnable();       
						this.Label3.Visible=false;
					
					}
					else
					{Response.Redirect("NoAuthor.aspx");}
				}
			}// 在此处放置用户代码以初始化页面
		}
		private void pageeEnable()
		{
			if(!(this.DataGrid1.Items.Count>0))
			{
				this.LinkButton1.Enabled=false;
				this.LinkButton2.Enabled=false;
				this.LinkButton3.Enabled=false;
				this.LinkButton4.Enabled=false;
			}
		}

		private void Bind(int record)
		{
			int maxrecord=20;
			int recordcount;
			int page;
			int startrecord=(record-1)*maxrecord;
			string connstr=System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"];
			SqlConnection conn=new SqlConnection (connstr);
			SqlDataAdapter da=new SqlDataAdapter("select * from AdvList"+cmd_str+" order by id desc",conn);
			DataSet dataset=new DataSet();
			da.Fill(dataset,startrecord,maxrecord,"websit");
			this.DataGrid1.DataSource=dataset;
			this.DataGrid1.DataBind();
			conn.Close();

			SqlCommand cmd=new SqlCommand("select count(*) from AdvList"+cmd_str,conn);
			conn.Open();
			recordcount=(int)cmd.ExecuteScalar();
			page=((recordcount%maxrecord)==0)?(recordcount/maxrecord):(recordcount/maxrecord+1);
			this.Label2.Text=page.ToString();
			if(this.DataGrid1.Items.Count>0)
			{
				this.Label1.Text=record.ToString();
				this.Label4.Text=recordcount.ToString();
				this.DropDownList3.Items.Clear();
				for(int i=1;i<=int.Parse(this.Label2.Text);i++)
				{
					this.DropDownList3.Items.Add(i.ToString());
				}
				this.DropDownList3.SelectedIndex=int.Parse(this.Label1.Text)-1;
				
			}
			else
			{
				this.Label1.Text="0";
				this.Label4.Text="0";
				this.DropDownList3.Items.Clear();
			}
			
			
			this.LinkButton1.Enabled=record<=1?false:true;
			this.LinkButton2.Enabled=record<=1?false:true;
			this.LinkButton3.Enabled=record<page?true:false;
			this.LinkButton4.Enabled=record<page?true:false;

					
		}

		protected void gopage(object sender, System.EventArgs e)
		{
			int prepage=Convert.ToInt32(this.Label1.Text.ToString());
		
			int nextpage=Convert.ToInt32(this.Label2.Text.ToString());
			string cmdname=((LinkButton)sender).CommandArgument.ToString();
			switch(cmdname)
			{
				case "pre":
					if(prepage>1)
						prepage--;break;
				case "next":
					if(prepage<nextpage)
						prepage++;break;
				case "frist":prepage=1;break;
				case "end":prepage=nextpage;break;
			}
			
			Bind(prepage);
		}

		#region Web 窗体设计器生成的代码
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{    
			this.DataGrid1.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_ItemCommand);
			this.DataGrid1.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.DataGrid1_ItemDataBound);

		}
		#endregion

		protected void Button1_Click(object sender, System.EventArgs e)
		{
			SB.ADOHelper help=new SB.ADOHelper();
			string newbelong=this.DropDownList1.SelectedValue;
			string checkstate=this.DropDownList2.SelectedValue;
			string advstate=this.DropDownList4.SelectedValue;
			string advtype=this.DropDownList5.SelectedValue;
			cmd_str=" where IsTemp='1' and Advcatalog "+newbelong+" and AcceptAppearance "+checkstate+" and AdvAppearance "+advstate+" and AdvType "+advtype;
			Bind(1);
			if(	this.DataGrid1.Items.Count>0)
			{
				this.Label3.Visible=false;
			}
			else
			{
				this.Label3.Visible=true;
			}
		
		}

		private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
		{getid=(this.DataGrid1.DataKeys[e.Item.ItemIndex]).ToString();
			if(e.CommandName.ToLower()=="delete")
			{
				SB.ADOHelper help=new SB.ADOHelper();
				if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
				{
				
					if (((DataBoundLiteralControl)e.Item.Cells[5].Controls[0]).Text.Trim()=="未结算"||((DataBoundLiteralControl)e.Item.Cells[5].Controls[0]).Text.Trim()=="投放完毕")
					{
						 help.execSql("delete from AdvList where id='"+getid+"'");
					 
						Bind(1);
						
					}
					else
					{
						Response.Write("<script>alert(\"只能删除为'未结算'和'投放完毕'的记录！！\")</script>");
		              
					}
				}
			
			}
			if(e.CommandName.ToLower()=="edit")
			{
				Response.Redirect("ModifAdvList.aspx?id="+getid);			
			}
		}



		private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
		{
			ImageButton Imgbtn=(ImageButton)e.Item.FindControl("ImageButton1");
			if(Imgbtn!=null)
				Imgbtn.Attributes.Add("onclick","return confirm('确认要删除!?');");
		}

		protected void DropDownList3_SelectedIndexChanged(object sender, System.EventArgs e)
		{
			Bind(int.Parse(this.DropDownList3.SelectedItem.Text));
		}
		
	}
}
