📄 managetasklist.aspx.cs
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
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 BronzeMonkey.GeneralTaskList;
namespace BronzeMonkey.GeneralTaskList
{
/// <summary>
/// Summary description for ManageTaskList.
/// </summary>
public partial class ManageTaskList : System.Web.UI.Page
{
private UserInformation CurrentUser = new UserInformation();
private BronzeMonkey.GeneralTaskList.TaskList tl = new BronzeMonkey.GeneralTaskList.TaskList();
protected void Page_Load(object sender, System.EventArgs e)
{
if (Session["CurrentUser"] == null)
Response.Redirect("login.aspx");
else
CurrentUser = (UserInformation)Session["CurrentUser"];
if (!Page.IsPostBack)
{
// Populate the task list drop down box
this.LoadTaskListDropDown();
// Now load the task list properties part of the page
this.lnkTaskListProperties_Click(lnkTaskListProperties, new EventArgs());
// Add a javascript confirm for the "Delete this Task List" link. We want to warn them first!
lnkTaskListPropertiesDeleteTaskList.Attributes.Add(
"onclick",
@"return confirm (""Are you sure you want to delete this Task List? All items will be archived."");"
);
}
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.btnCreateTaskList.Command += new System.Web.UI.WebControls.CommandEventHandler(this.btnCreateTaskList_Command);
}
#endregion
private void EnableTaskListDropDown(bool Enabled)
{
lblTaskList.Enabled = Enabled;
cboTaskList.Enabled = Enabled;
}
private void LoadTaskListDropDown()
{
SqlDataReader dr = tl.GetTaskListList(CurrentUser);
cboTaskList.Items.Clear();
while (dr.Read())
{
cboTaskList.Items.Add(new ListItem(dr["TaskListName"].ToString(), dr["TaskListID"].ToString()));
}
}
private void ShowUsersAssignedToTaskList(int TaskListID)
{
lstAssignedUsers.Items.Clear();
lstUnassignedUsers.Items.Clear();
SqlDataReader drUsers = tl.GetUserList(CurrentUser);
SqlDataReader dr = tl.GetUsersAssignedToTaskList(CurrentUser, TaskListID);
while (drUsers.Read())
{
lstUnassignedUsers.Items.Add(new ListItem(drUsers["Username"].ToString(), drUsers["UserID"].ToString()));
}
while (dr.Read())
{
lstAssignedUsers.Items.Add(new ListItem(dr["Username"].ToString(), dr["UserID"].ToString()));
lstUnassignedUsers.Items.Remove(dr["Username"].ToString());
}
}
private void ShowTaskListProperties(int TaskListID)
{
// First get the task list name
lblTaskListPropertiesName.Text = "Task List Properties - " + cboTaskList.SelectedItem.Text;
// Second get the assigned users for this task list.
SqlDataReader drUsers = tl.GetUsersAssignedToTaskList(CurrentUser, TaskListID);
string AssignedUsers = "";
while (drUsers.Read())
{
AssignedUsers += drUsers["Username"] + ",";
}
if (AssignedUsers.Length > 0) AssignedUsers = AssignedUsers.Substring(0, AssignedUsers.Length - 1);
lblTaskListPropertiesAssignedUsers.Text = AssignedUsers;
//Now get the rest of the data by calling a stored proc
SqlDataReader drProperties = tl.GetTaskListProperties(CurrentUser, TaskListID);
DateTime LastModified = DateTime.Now;
DateTime LastCreated = DateTime.Now;
lblTaskListPropertiesTotalTasks.Text = "0";
lblTaskListPropertiesLastTaskModified.Text = String.Empty;
lblTaskListPropertiesLastTaskCreated.Text = String.Empty;
while (drProperties.Read())
{
lblTaskListPropertiesTotalTasks.Text = drProperties["TaskListItems"].ToString();
if (drProperties["LastModified"] != System.DBNull.Value)
{
LastModified = (DateTime)drProperties["LastModified"];
lblTaskListPropertiesLastTaskModified.Text = LastModified.ToString("MM/dd/yy hh:mm");
}
if (drProperties["LastCreated"] != System.DBNull.Value)
{
LastCreated = (DateTime)drProperties["LastCreated"];
lblTaskListPropertiesLastTaskCreated.Text = LastCreated.ToString("MM/dd/yy hh:mm");
}
}
}
protected void cboTaskList_SelectedIndexChanged(object sender, System.EventArgs e)
{
if (pnlUserAssignments.Visible == true)
{
ShowUsersAssignedToTaskList(Convert.ToInt32(cboTaskList.SelectedItem.Value));
}
else if (pnlTaskListProperties.Visible == true)
{
ShowTaskListProperties(Convert.ToInt32(cboTaskList.SelectedItem.Value));
}
}
protected void btnAddUser_Click(object sender, System.EventArgs e)
{
if (lstUnassignedUsers.SelectedIndex == -1) return;
int TaskListID = Convert.ToInt32(cboTaskList.SelectedItem.Value);
tl.AddUserToTaskList(
CurrentUser,
new UserInformation(Convert.ToInt32(lstUnassignedUsers.SelectedItem.Value),"",""),
TaskListID
);
ShowUsersAssignedToTaskList(TaskListID);
}
protected void btnRemoveUser_Click(object sender, System.EventArgs e)
{
if (lstAssignedUsers.SelectedIndex == -1) return;
int TaskListID = Convert.ToInt32(cboTaskList.SelectedItem.Value);
tl.RemoveUserFromTaskList(
CurrentUser,
new UserInformation(Convert.ToInt32(lstAssignedUsers.SelectedItem.Value), "",""),
TaskListID
);
ShowUsersAssignedToTaskList(TaskListID);
}
#region Hide/Show Panel Routines
protected void lnkCreateTaskList_Click(object sender, System.EventArgs e)
{
EnableTaskListDropDown(false);
HideAllOtherPanels(pnlCreateTaskList);
}
protected void lnkRenameTaskList_Click(object sender, System.EventArgs e)
{
EnableTaskListDropDown(true);
HideAllOtherPanels(pnlRenameTaskList);
}
protected void lnkManageUserAssignments_Click(object sender, System.EventArgs e)
{
HideAllOtherPanels(pnlUserAssignments);
ShowUsersAssignedToTaskList(Convert.ToInt32(cboTaskList.SelectedItem.Value));
}
protected void lnkTaskListProperties_Click(object sender, System.EventArgs e)
{
if (cboTaskList.SelectedIndex == -1)
{
EnableTaskListDropDown(false);
HideAllOtherPanels(null);
return;
}
EnableTaskListDropDown(true);
HideAllOtherPanels(pnlTaskListProperties);
ShowTaskListProperties(Convert.ToInt32(cboTaskList.SelectedItem.Value));
}
private void HideAllOtherPanels(Panel VisiblePanel)
{
if (VisiblePanel != null) VisiblePanel.Visible = true;
if (pnlCreateTaskList != VisiblePanel) pnlCreateTaskList.Visible = false;
if (pnlUserAssignments != VisiblePanel) pnlUserAssignments.Visible = false;
if (pnlTaskListProperties != VisiblePanel) pnlTaskListProperties.Visible = false;
}
#endregion
protected void lnkLogOff_Click(object sender, System.EventArgs e)
{
Session.Abandon();
System.Web.Security.FormsAuthentication.SignOut();
Response.Redirect("login.aspx");
}
protected void lnkDeleteTaskList_Click(object sender, System.EventArgs e)
{
tl.DeleteTaskList(CurrentUser, Convert.ToInt32(cboTaskList.SelectedItem.Value));
LoadTaskListDropDown();
this.lnkTaskListProperties_Click(lnkTaskListProperties, new EventArgs());
}
private void btnCreateTaskList_Command(object sender, System.Web.UI.WebControls.CommandEventArgs e)
{
}
protected void btnRenameTaskList_Click(object sender, System.EventArgs e)
{
if (txtRenameTaskList.Text.Trim() != "")
{
tl.RenameTaskList(CurrentUser, Convert.ToInt32(cboTaskList.SelectedItem.Value), txtRenameTaskList.Text);
LoadTaskListDropDown();
cboTaskList.SelectedIndex = -1;
cboTaskList.Items.FindByText(txtRenameTaskList.Text).Selected = true;
lnkTaskListProperties_Click(lnkTaskListProperties, new EventArgs());
}
}
private void lnkCreateUser_Click(object sender, System.EventArgs e)
{
}
protected void btnCreateTaskList_Click(object sender, System.EventArgs e)
{
if (txtCreateTaskList.Text.Trim() != "")
{
tl.CreateTaskList(CurrentUser, txtCreateTaskList.Text);
LoadTaskListDropDown();
cboTaskList.Items.FindByText(txtCreateTaskList.Text).Selected = true;
lnkTaskListProperties_Click(lnkTaskListProperties, new EventArgs());
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -