//привязка репитора к данным private void DataFillingRptr(int ID) { TopicDAL topicdal = new TopicDAL(); try { List <Entities.Topic> listTopic = topicdal.GetTopics(categoryid); RptrTopic.DataSource = listTopic; RptrTopic.DataBind(); } catch (Exception ex) { ErrorMessage.Text = ex.Message; pnlAddNewTopic.Visible = false;//Панель для создания новой темы } }
private int categoryid = 1; //раздел темы,( 1 заглушка пока разделы не созданы) #endregion Fields #region Methods //создает тему protected void Button1_Click(object sender, EventArgs e) { if ( SecurityManager.GetCurrentUser(Request) ) { string text = TextBox1.Text; TopicDAL topicdal = new TopicDAL(); try { int topicid = topicdal.AddNewTopic(SessionManager.UserID, text, categoryid); HttpContext.Current.Response.Redirect(String.Format("~/ForumMessage.aspx?topicid={0}", topicid)); } catch (Exception ex) { ErrorMessage.Text = ex.Message; } } else FormsAuthentication.RedirectToLoginPage(); }
//создает тему protected void Button1_Click(object sender, EventArgs e) { if (SecurityManager.GetCurrentUser(Request)) { string text = TextBox1.Text; TopicDAL topicdal = new TopicDAL(); try { int topicid = topicdal.AddNewTopic(SessionManager.UserID, text, categoryid); HttpContext.Current.Response.Redirect(String.Format("~/ForumMessage.aspx?topicid={0}", topicid)); } catch (Exception ex) { ErrorMessage.Text = ex.Message; } } else { FormsAuthentication.RedirectToLoginPage(); } }
protected void RptrTopic_ItemCommand(object source, RepeaterCommandEventArgs e) { #region вкл.отображ. панели для переименования темы if (e.CommandName == "Rename") { Panel pnl1 = e.Item.FindControl("pnlEdit") as Panel; if (pnl1 != null) pnl1.Visible = true; HyperLink hprlnk = e.Item.FindControl("hprlnkTopic") as HyperLink; if(hprlnk != null) hprlnk.Visible = false; } #endregion #region Удалить тему if (e.CommandName == "Delete") { TopicDAL topicdal = new TopicDAL(); if (e.CommandArgument != null) try { topicdal.DeleteTopic(Convert.ToInt32(e.CommandArgument)); HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.ToString()); } catch (Exception ex) { ErrorMessage.Text = ex.Message; } } #endregion #region переименов. названия темы if (e.CommandName == "SaveReName") { TextBox txtbx1 = e.Item.FindControl("txtbxTopicName") as TextBox; if(txtbx1 != null) { TopicDAL topicdal = new TopicDAL(); try { string topName = txtbx1.Text.ToString(); if (e.CommandArgument != null) topicdal.UpdateTopic(Convert.ToInt32(e.CommandArgument), topName); } catch (Exception ex) { ErrorMessage.Text = ex.Message; } } Panel pnl1 = e.Item.FindControl("pnlEdit") as Panel; if (pnl1 != null) pnl1.Visible = false; HyperLink hprlnk = e.Item.FindControl("hprlnkTopic") as HyperLink; if (hprlnk != null) hprlnk.Visible = true; HttpContext.Current.Response.Redirect( HttpContext.Current.Request.Url.ToString() ); } #endregion #region отмена переименов. названия темы if (e.CommandName == "СancelReName") { Panel pnl1 = e.Item.FindControl("pnlEdit") as Panel; if (pnl1 != null) pnl1.Visible = false; HyperLink hprlnk = e.Item.FindControl("hprlnkTopic") as HyperLink; if (hprlnk != null) hprlnk.Visible = true; } #endregion }
//привязка репитора к данным private void DataFillingRptr(int ID) { TopicDAL topicdal = new TopicDAL(); try { List<Entities.Topic> listTopic = topicdal.GetTopics(categoryid); RptrTopic.DataSource = listTopic; RptrTopic.DataBind(); } catch (Exception ex) { ErrorMessage.Text = ex.Message; pnlAddNewTopic.Visible = false;//Панель для создания новой темы } }
//Выбор из сессии периода отображ. сообщений, //Получ. данных из БД и привязка их к Repeater private void DataFillingRptr1(int topID) { MessageDAL fmess = new MessageDAL(); List<Entities.Message> listMessages = new List<Entities.Message>(); try { if ((Session["Period"] == null) || (Session["Period"] == "All")) { listMessages = fmess.GetMessagesByTopic(topID); } if (Session["Period"] == "LastMonth") { DateTime dt = new DateTime(); dt = DateTime.Now.AddDays(-31); listMessages = fmess.GetMessagesByTopic(topID, dt); DrplstPeriod.SelectedValue = "LastMonth"; } if (Session["Period"] == "LastWeek") { DateTime dt = new DateTime(); dt = DateTime.Now.AddDays(-7); listMessages = fmess.GetMessagesByTopic(topID, dt); DrplstPeriod.SelectedValue = "LastWeek"; } if (Session["Period"] == "LastMess") { listMessages = fmess.GetLastMessage(topID); DrplstPeriod.SelectedValue = "LastMess"; } //Название темы в заголовок «Тема:» //привязки данных к Repeater if (listMessages.Count != 0) { lblTopic.Text = " " + listMessages[0].TopicName;//Назв. темы берется из первого сообщ. RptrMessage.DataSource = listMessages; //привязки данных к Repeater RptrMessage.DataBind(); } else //сообщений нет, тогда Назв. темы берется из БД (по ИД из урл-строки параметр topid) { TopicDAL ftop = new TopicDAL(); string topName = ftop.GetTopicName(topid); if (topName != "") lblTopic.Text = topName; else lblTopic.Text = "Тема не найдена"; } } catch (Exception ex) { ErrorMessage.Text = ex.Message; pnlAddNewMess.Visible = false; } }
protected void RptrTopic_ItemCommand(object source, RepeaterCommandEventArgs e) { #region вкл.отображ. панели для переименования темы if (e.CommandName == "Rename") { Panel pnl1 = e.Item.FindControl("pnlEdit") as Panel; if (pnl1 != null) { pnl1.Visible = true; } HyperLink hprlnk = e.Item.FindControl("hprlnkTopic") as HyperLink; if (hprlnk != null) { hprlnk.Visible = false; } } #endregion #region Удалить тему if (e.CommandName == "Delete") { TopicDAL topicdal = new TopicDAL(); if (e.CommandArgument != null) { try { topicdal.DeleteTopic(Convert.ToInt32(e.CommandArgument)); HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.ToString()); } catch (Exception ex) { ErrorMessage.Text = ex.Message; } } } #endregion #region переименов. названия темы if (e.CommandName == "SaveReName") { TextBox txtbx1 = e.Item.FindControl("txtbxTopicName") as TextBox; if (txtbx1 != null) { TopicDAL topicdal = new TopicDAL(); try { string topName = txtbx1.Text.ToString(); if (e.CommandArgument != null) { topicdal.UpdateTopic(Convert.ToInt32(e.CommandArgument), topName); } } catch (Exception ex) { ErrorMessage.Text = ex.Message; } } Panel pnl1 = e.Item.FindControl("pnlEdit") as Panel; if (pnl1 != null) { pnl1.Visible = false; } HyperLink hprlnk = e.Item.FindControl("hprlnkTopic") as HyperLink; if (hprlnk != null) { hprlnk.Visible = true; } HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.ToString()); } #endregion #region отмена переименов. названия темы if (e.CommandName == "СancelReName") { Panel pnl1 = e.Item.FindControl("pnlEdit") as Panel; if (pnl1 != null) { pnl1.Visible = false; } HyperLink hprlnk = e.Item.FindControl("hprlnkTopic") as HyperLink; if (hprlnk != null) { hprlnk.Visible = true; } } #endregion }
//Выбор из сессии периода отображ. сообщений, //Получ. данных из БД и привязка их к Repeater private void DataFillingRptr1(int topID) { MessageDAL fmess = new MessageDAL(); List <Entities.Message> listMessages = new List <Entities.Message>(); try { if ((Session["Period"] == null) || (Session["Period"] == "All")) { listMessages = fmess.GetMessagesByTopic(topID); } if (Session["Period"] == "LastMonth") { DateTime dt = new DateTime(); dt = DateTime.Now.AddDays(-31); listMessages = fmess.GetMessagesByTopic(topID, dt); DrplstPeriod.SelectedValue = "LastMonth"; } if (Session["Period"] == "LastWeek") { DateTime dt = new DateTime(); dt = DateTime.Now.AddDays(-7); listMessages = fmess.GetMessagesByTopic(topID, dt); DrplstPeriod.SelectedValue = "LastWeek"; } if (Session["Period"] == "LastMess") { listMessages = fmess.GetLastMessage(topID); DrplstPeriod.SelectedValue = "LastMess"; } //Название темы в заголовок «Тема:» //привязки данных к Repeater if (listMessages.Count != 0) { lblTopic.Text = " " + listMessages[0].TopicName; //Назв. темы берется из первого сообщ. RptrMessage.DataSource = listMessages; //привязки данных к Repeater RptrMessage.DataBind(); } else //сообщений нет, тогда Назв. темы берется из БД (по ИД из урл-строки параметр topid) { TopicDAL ftop = new TopicDAL(); string topName = ftop.GetTopicName(topid); if (topName != "") { lblTopic.Text = topName; } else { lblTopic.Text = "Тема не найдена"; } } } catch (Exception ex) { ErrorMessage.Text = ex.Message; pnlAddNewMess.Visible = false; } }