Catalog.aspx.cs
上传用户:cha0314
上传日期:2014-03-02
资源大小:12522k
文件大小:8k
源码类别:

C#编程

开发平台:

C#

  1. using System;
  2. using System.Collections;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Data.SqlClient;
  6. using System.Drawing;
  7. using System.Web;
  8. using System.Web.SessionState;
  9. using System.Web.UI;
  10. using System.Web.UI.WebControls;
  11. using System.Web.UI.HtmlControls;
  12. using UDS.Components ;
  13. namespace UDS.SubModule.BBS
  14. {
  15. /// <summary>
  16. /// Catalog 的摘要说明。
  17. /// </summary>
  18. public class Catalog : System.Web.UI.Page
  19. {
  20. protected HttpCookie UserCookie;
  21. protected  bool Admin;
  22. protected bool Bulletin;
  23. protected  string classid;
  24. public string Username;
  25. public string m_ForumItemID;
  26. protected System.Web.UI.WebControls.Label LCatalog;
  27. protected System.Web.UI.WebControls.Label LForumItem;
  28. protected System.Web.UI.WebControls.Label LBoard;
  29. protected System.Web.UI.WebControls.Label LForumTimes;
  30. protected System.Web.UI.WebControls.Label LReplay;
  31. protected System.Web.UI.WebControls.Label LReplays;
  32. protected System.Web.UI.WebControls.Label LBoardDescription;
  33. protected System.Web.UI.WebControls.Label LBoardMaster;
  34. protected System.Web.UI.WebControls.Label LSender;
  35. protected System.Web.UI.WebControls.Label LSendTime;
  36. protected System.Web.UI.HtmlControls.HtmlAnchor A1;
  37. protected System.Web.UI.WebControls.Repeater rpt_catalog;
  38. protected System.Web.UI.WebControls.Panel adminop;
  39. protected System.Web.UI.WebControls.Repeater rpt_board;
  40. protected System.Web.UI.WebControls.LinkButton lbtnDelBoard;
  41. protected System.Web.UI.WebControls.LinkButton btndelcatalog;
  42. private void Page_Load(object sender, System.EventArgs e)
  43. {
  44. // 在此处放置用户代码以初始化页面
  45. UserCookie = Request.Cookies["Username"];
  46. Username   = UserCookie.Value.ToString(); 
  47. classid   = (Request.QueryString["classID"]!=null && Request.QueryString["classID"]!="")?Request.QueryString["classID"].ToString():"0";
  48. ViewState["classid"] = classid;
  49. A1.HRef = "ManageCatalog.aspx?classID="+classid+"&Action=AddCatalog";
  50. if(!Page.IsPostBack)
  51. {
  52. //显示数据
  53. PopulateData();
  54. }
  55. else
  56. {
  57. classid = ViewState["classid"].ToString();
  58. Admin = Boolean.Parse(ViewState["Admin"].ToString());
  59. Bulletin = Boolean.Parse(ViewState["Bulletin"].ToString());
  60. }
  61. }
  62. #region 删除分类
  63. protected void btndelcatalog_Click(object sender,System.EventArgs e)
  64. {
  65. BBSClass bbs = new BBSClass();
  66. HttpCookie UserCookie = Request.Cookies["Username"];
  67. String Username = UserCookie.Value.ToString();
  68. try
  69. {
  70. bbs.DelBBSCatalog(Int32.Parse(((LinkButton)sender).CommandArgument));
  71. bbs = null;
  72. Response.Redirect("Catalog.aspx?classID="+classid);
  73. //Response.Write("<script language=javascript>alert('删除成功!');parent.location.reload();</script>");
  74. }
  75. catch(Exception ex)
  76. {
  77. UDS.Components.Error.Log(ex.ToString());
  78. Server.Transfer("../../Error.aspx");
  79. }
  80. }
  81. #endregion
  82. #region 删除板块
  83. public void DeleteBoard(object sender,System.EventArgs e)
  84. {
  85. BBSClass bbs = new BBSClass();
  86. HttpCookie UserCookie = Request.Cookies["Username"];
  87. String Username = UserCookie.Value.ToString();
  88. try
  89. {
  90. bbs.DelBBSBoard(Int32.Parse(((LinkButton)sender).CommandArgument));
  91. bbs = null;
  92. Response.Redirect("Catalog.aspx?classID="+classid);
  93. }
  94. catch(Exception ex)
  95. {
  96. UDS.Components.Error.Log(ex.ToString());
  97. Server.Transfer("../../Error.aspx");
  98. }
  99. }
  100. #endregion
  101. #region 显示数据
  102. /// <summary>
  103. /// 显示数据
  104. /// </summary>
  105. private void PopulateData()
  106. {
  107. #region 初始化数据
  108. DataTable dataTable_catalog      = new DataTable();
  109. DataTable dataTable_board      = new DataTable();
  110. DataTable dataTable_boardmaster = new DataTable();
  111. DataSet ds = new DataSet();
  112. SqlDataReader dr_catalog = null;
  113. SqlDataReader dr_board = null;
  114. SqlDataReader dr_boardmaster = null;
  115. BBSClass bbsclass = new BBSClass();
  116. BBSCatalog catalog = new BBSCatalog();//分类
  117. BBSBoard board = new BBSBoard();//板块
  118. BBSForumItem item = new BBSForumItem();//贴子的信息
  119. BBSBoardmaster master = new BBSBoardmaster();//斑竹信息
  120. BBSReplay replay = new BBSReplay();//回复信息
  121. #endregion
  122. //try
  123. //判断权限
  124. Admin = bbsclass.AdminBBS(Username,Int32.Parse(classid));
  125. ViewState["Admin"] = Admin;
  126. Bulletin = bbsclass.AdminSysBulletin(Username,Int32.Parse(classid));
  127. ViewState["Bulletin"] = Bulletin;
  128. A1.Visible = Admin;
  129. //得到类别信息
  130. dr_catalog = bbsclass.GetBBSCatalog();
  131. if(Admin)
  132. {
  133. HttpCookie cookie = new HttpCookie("UDSBBSAdmin","1");
  134. Response.Cookies.Add(cookie);
  135. }
  136. else
  137. {
  138. HttpCookie cookie = new HttpCookie("UDSBBSAdmin","0");
  139. Response.Cookies.Add(cookie);
  140. }
  141. if(Bulletin)
  142. {
  143. HttpCookie cookie1 = new HttpCookie("UDSBBSBulletinAdmin","1");
  144. Response.Cookies.Add(cookie1);
  145. }
  146. else
  147. {
  148. HttpCookie cookie1 = new HttpCookie("UDSBBSBulletinAdmin","0");
  149. Response.Cookies.Add(cookie1);
  150. }
  151. dataTable_catalog = Tools.ConvertDataReaderToDataTable(dr_catalog);
  152. dataTable_catalog.TableName = "catalogTable";
  153. ds.Tables.Add(dataTable_catalog);
  154. //得到板块信息
  155. if(Admin)
  156. dr_board = bbsclass.GetAllBBSBoard();
  157. else
  158. dr_board = bbsclass.GetBBSBoard((string) Username);
  159. dataTable_board = Tools.ConvertDataReaderToDataTable(dr_board);
  160. dataTable_board.TableName = "boardTable";
  161. ds.Tables.Add(dataTable_board);
  162. //得到斑竹信息
  163. dr_boardmaster = bbsclass.GetBoardMaster();
  164. dataTable_boardmaster = Tools.ConvertDataReaderToDataTable(dr_boardmaster);
  165. dataTable_boardmaster.TableName = "boardmasterTable";
  166. ds.Tables.Add(dataTable_boardmaster);
  167. //对子表进行数据绑定
  168. ds.Relations.Add("catolog_board",ds.Tables["catalogTable"].Columns["catalog_id"],ds.Tables["boardTable"].Columns["catalog_id"],false);
  169. ds.Relations.Add("board_boardmaster",ds.Tables["boardTable"].Columns["board_id"],ds.Tables["boardmasterTable"].Columns["board_id"],false);
  170. rpt_catalog.DataSource = ds.Tables["catalogTable"].DefaultView;
  171. Page.DataBind();
  172. }
  173. // catch(Exception ex)
  174. // {
  175. // UDS.Components.Error.Log(ex.ToString());
  176. // Server.Transfer("../../Error.aspx");
  177. // }
  178. // finally
  179. // {
  180. // dr_catalog = null;
  181. // dr_board = null;
  182. // dr_boardmaster = null;
  183. // }
  184. #endregion
  185. private void rpt_catalog_ItemDataBound(object sender,RepeaterItemEventArgs e)
  186. {
  187. System.Web.UI.WebControls.WebControl  ctl =(System.Web.UI.WebControls.WebControl) e.Item.FindControl("btndelcatalog");
  188. if(ctl!=null)
  189. {
  190. ctl.Attributes["onclick"] = "return confirm('确定删除吗?')";
  191. }
  192. }
  193. protected void rpt_board_ItemDataBound(object sender,RepeaterItemEventArgs e)
  194. {
  195. System.Web.UI.WebControls.WebControl  ctl =(System.Web.UI.WebControls.WebControl) e.Item.FindControl("lbtnDelBoard");
  196. if(ctl!=null)
  197. {
  198. ctl.Attributes["onclick"] = "return confirm('确定删除吗?')";
  199. }
  200. }
  201. #region Web Form Designer generated code
  202. override protected void OnInit(EventArgs e)
  203. {
  204. //
  205. // CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
  206. //
  207. InitializeComponent();
  208. base.OnInit(e);
  209. }
  210. /// <summary>
  211. /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  212. /// 此方法的内容。
  213. /// </summary>
  214. private void InitializeComponent()
  215. {    
  216. this.Load += new EventHandler(this.Page_Load);
  217. this.rpt_catalog.ItemDataBound += new System.Web.UI.WebControls.RepeaterItemEventHandler(this.rpt_catalog_ItemDataBound);
  218. }
  219. #endregion
  220. }
  221. }