using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Linq; using System.Web.Configuration; using System.Data.SqlClient; public partial class Default2 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Mlv.ActiveViewIndex = 1; string[] alphabet = "A;B;C;D;E;F;G;J;K;L;M;N;O;P;Q;R;S;T;U;V;W;X;Y;Z;All".Split(';'); Alphabetrepeater.DataSource = alphabet; Alphabetrepeater.DataBind(); } public void BindListView() { string ConnectionString = WebConfigurationManager.ConnectionStrings["ConnectionStringMovies"].ConnectionString; SqlConnection con = new SqlConnection(ConnectionString); if (DdlSearch.SelectedValue == "Category") { GetFilms("Search By Category Name", con, "@Category"); } else if (DdlSearch.SelectedValue == "Film") { GetFilms("Search By Title", con, "@Title"); } else if (DdlSearch.SelectedValue == "Actor") { GetFilms("Search By Actors", con, "@Actor"); } else if (DdlSearch.SelectedValue == "All") { GetAllFilms("GetFilms", con); } } protected void LstvCategory_SelectedIndexChanged(object sender, EventArgs e) { LstvCategory.DataBind(); Session["FilmID"] = LstvCategory.SelectedValue.ToString(); Response.Redirect("~/MoviesShopping.aspx"); } protected void GetAllFilms(string CommandName,SqlConnection con) { SqlCommand command = new SqlCommand(CommandName, con); command.CommandType = CommandType.StoredProcedure; SqlDataAdapter da = new SqlDataAdapter(command); DataSet ds = new DataSet(); try { con.Open(); da.Fill(ds, "Films"); Lsvsearch.DataSource = ds; Lsvsearch.DataBind(); } catch { message.Text = "Unable to Find the Film try again..."; } finally { con.Close(); } } protected void GetFilms(string CommandName, SqlConnection con, string Parameter) { SqlCommand command = new SqlCommand(CommandName, con); command.CommandType = CommandType.StoredProcedure; command.Parameters.Add(new SqlParameter(Parameter, SqlDbType.NVarChar, 50)); command.Parameters[Parameter].Value = Txtsearch.Text; SqlDataAdapter da = new SqlDataAdapter(command); DataSet ds = new DataSet(); try { con.Open(); da.Fill(ds, "Films"); Lsvsearch.DataSource = ds; Lsvsearch.DataBind(); } catch { message.Text = "Unable to Find the Film try again..."; } finally { con.Close(); } } protected void GetFilmsByLetter(string e) { string ConnectionString = WebConfigurationManager.ConnectionStrings["ConnectionStringMovies"].ConnectionString; SqlConnection con = new SqlConnection(ConnectionString); SqlCommand commandActor = new SqlCommand("Letter By Actor", con); commandActor.CommandType = CommandType.StoredProcedure; SqlCommand command = new SqlCommand("Letter By Film", con); command.CommandType = CommandType.StoredProcedure; command.Parameters.Add(new SqlParameter("@Letter", SqlDbType.Char, 10)); commandActor.Parameters.Add(new SqlParameter("@Letter", SqlDbType.Char, 10)); con.Open(); if (e.Length == 1) { command.Parameters["@Letter"].Value = e; commandActor.Parameters["@Letter"].Value = e; } else { command.Parameters["@Letter"].Value = ""; commandActor.Parameters["@Letter"].Value = ""; } if (DdlSearch.SelectedValue == "Film") { SqlDataAdapter da = new SqlDataAdapter(command); DataSet ds = new DataSet(); da.Fill(ds, "Films"); ListViewLetter.DataSource = ds; ListViewLetter.DataBind(); Mlv.ActiveViewIndex = 0; Lblletter.Text = "Movies Starting with '" + e + "'"; } else if (DdlSearch.SelectedValue == "Actor") { SqlDataAdapter da = new SqlDataAdapter(commandActor); DataSet ds = new DataSet(); da.Fill(ds, "Actors"); LsvActor.DataSource = ds; LsvActor.DataBind(); Mlv.ActiveViewIndex = 2; Lblletter.Text = "Actors Starting with '" + e + "'"; } con.Close(); } protected void Alphabetrepeater_ItemCommand(object source, RepeaterCommandEventArgs e) { GetFilmsByLetter(e.CommandArgument.ToString()); Session ["commandArg"] = e.CommandArgument.ToString(); } protected void Lsvsearch_SelectedIndexChanging(object sender, ListViewSelectEventArgs e) { Lsvsearch.SelectedIndex = e.NewSelectedIndex; Session["FilmID"] = (int)Lsvsearch.SelectedDataKey.Value; BindListView(); Response.Redirect("~/MoviesShopping.aspx"); Mlv.ActiveViewIndex = 3; } protected void Lsvsearch_PreRender(object sender, EventArgs e) { } protected void ListPager_PreRender(object sender, EventArgs e) { BindListView(); Mlv.ActiveViewIndex = 3; } protected void Lsvsearch_PagePropertiesChanging(object sender, PagePropertiesChangingEventArgs e) { BindListView(); Mlv.ActiveViewIndex = 3; } protected void LsvLettersearch_PagePropertiesChanging(object sender, PagePropertiesChangingEventArgs e) { GetFilmsByLetter(Session["commandArg"].ToString ()); Mlv.ActiveViewIndex = 0; } protected void LsvLettersearch_SelectedIndexChanging(object sender, ListViewSelectEventArgs e) { ListViewLetter.SelectedIndex = e.NewSelectedIndex; Session["FilmID"] = (int)ListViewLetter.SelectedDataKey.Value; Response.Redirect("~/MoviesShopping.aspx"); Mlv.ActiveViewIndex = 0; } protected void FilmListPager_PreRender(object sender, EventArgs e) { GetFilmsByLetter(Session["commandArg"].ToString()); Mlv.ActiveViewIndex = 0; } protected void DdlSearch_SelectedIndexChanged(object sender, EventArgs e) { if ((DdlSearch.SelectedValue == "Film") || (DdlSearch.SelectedValue == "Actor")) { Alphabetrepeater.Visible = true; } else { Alphabetrepeater.Visible = false; } } protected void BtnSearch_Click(object sender, ImageClickEventArgs e) { Mlv.ActiveViewIndex = 3; BindListView(); } }