?? projectroles.ascx.cs
字號(hào):
namespace BugNET.Administration.Projects.UserControls
{
using System;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using BugNET.BusinessLogicLayer;
using BugNET.UserInterfaceLayer;
using System.Collections.Generic;
using System.Web.Security;
/// <summary>
/// Summary description for ProjectMemberRoles.
/// </summary>
public partial class ProjectRoles : System.Web.UI.UserControl, IEditProjectControl
{
private int _RoleId = -1;
/// <summary>
/// Handles the Load event of the Page control.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param>
protected void Page_Load(object sender, System.EventArgs e)
{
}
/// <summary>
/// Role Id
/// </summary>
int RoleId
{
get
{
if (ViewState["RoleId"] == null)
return 0;
else
return (int)ViewState["RoleId"];
}
set { ViewState["RoleId"] = value; }
}
#region IEditProjectControl Members
/// <summary>
/// Gets or sets the project id.
/// </summary>
/// <value>The project id.</value>
public int ProjectId
{
get { return ((BasePage)Page).ProjectId; }
set { ((BasePage)Page).ProjectId = value; }
}
/// <summary>
/// Inits this instance.
/// </summary>
public void Initialize()
{
SecurityRoles.SelectParameters.Clear();
SecurityRoles.SelectParameters.Add("projectId",ProjectId.ToString());
gvRoles.DataBind();
}
/// <summary>
/// Updates this instance.
/// </summary>
/// <returns></returns>
public bool Update()
{
return true;
}
#endregion
#region Private Methods
/// <summary>
/// Handles the Click event of the cmdAddUpdateRole control.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param>
protected void cmdAddUpdateRole_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
try
{
if (RoleId == 0)
{
string RoleName = txtRoleName.Text.Trim();
RoleId = Role.CreateRole(RoleName, ProjectId, txtDescription.Text, chkAutoAssign.Checked);
UpdatePermissions(RoleId);
}
else
{
Role r = Role.GetRoleById(RoleId);
r.Description = txtDescription.Text.Trim();
r.Name = txtRoleName.Text.Trim();
r.AutoAssign = chkAutoAssign.Checked;
r.Save();
UpdatePermissions(RoleId);
}
AddRole.Visible = !AddRole.Visible;
Roles.Visible = !Roles.Visible;
Initialize();
}
catch
{
lblError.Text = "An error has occured while creating the Role";
}
}
}
/// <summary>
/// Binds the role details.
/// </summary>
/// <param name="roleId">The role id.</param>
private void BindRoleDetails(int roleId)
{
if (roleId == -1)
{
cmdAddUpdateRole.Text = "Add Role";
cmdDelete.Visible = false;
cancel.Visible = false;
txtRoleName.Enabled = true;
txtRoleName.Text = string.Empty;
txtDescription.Text = string.Empty;
txtDescription.Enabled = true;
chkAutoAssign.Enabled = true;
chkAutoAssign.Checked = false;
chkAssignIssue.Enabled = true;
chkAssignIssue.Checked = false;
chkCloseIssue.Enabled = true;
chkCloseIssue.Checked = false;
chkAddAttachment.Enabled = true;
chkAddAttachment.Checked = false;
chkAddComment.Enabled = true;
chkAddComment.Checked = false;
chkAddIssue.Enabled = true;
chkAddIssue.Checked = false;
chkAddRelated.Enabled = true;
chkAddRelated.Checked = false;
chkAddTimeEntry.Enabled = true;
chkAddTimeEntry.Checked = false;
chkAssignIssue.Enabled = true;
chkAssignIssue.Checked = false;
chkDeleteAttachment.Enabled = true;
chkDeleteAttachment.Checked = false;
chkDeleteComment.Enabled = true;
chkDeleteComment.Checked = false;
chkDeleteIssue.Enabled = true;
chkDeleteIssue.Checked = false;
chkDeleteRelated.Enabled = true;
chkDeleteRelated.Checked = false;
chkDeleteTimeEntry.Enabled = true;
chkDeleteTimeEntry.Checked = false;
chkEditComment.Enabled = true;
chkEditComment.Checked = false;
chkEditIssue.Enabled = true;
chkEditIssue.Checked = false;
chkEditIssueDescription.Enabled = true;
chkEditIssueDescription.Checked = false;
chkEditIssueSummary.Enabled = true;
chkEditIssueSummary.Checked = false;
chkEditOwnComment.Enabled = true;
chkEditOwnComment.Checked = false;
chkReOpenIssue.Enabled = true;
chkReOpenIssue.Checked = false;
chkSubscribeIssue.Enabled = true;
chkSubscribeIssue.Checked = false;
chkDeleteQuery.Enabled = true;
chkDeleteQuery.Checked = false;
chkAddQuery.Enabled = true;
chkAddQuery.Checked = false;
}
else
{
RoleId = roleId;
Role r = Role.GetRoleById(roleId);
foreach (string s in Globals.DefaultRoles)
{
//if default role lock record
if (r.Name == s)
{
cmdDelete.Visible = false;
cancel.Visible = false;
txtRoleName.Enabled = false;
txtDescription.Enabled = false;
}
}
AddRole.Visible = !AddRole.Visible;
Roles.Visible = !Roles.Visible;
cmdAddUpdateRole.Text = "Update Role";
txtRoleName.Text = r.Name;
txtDescription.Text = r.Description;
chkAutoAssign.Checked = r.AutoAssign;
RoleNameTitle.Text = "Manage Role - " + r.Name;
ReBind();
}
}
#endregion
/// <summary>
/// Handles the Click event of the AddRole control.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="T:System.EventArgs"/> instance containing the event data.</param>
protected void AddRole_Click(object sender, EventArgs e)
{
AddRole.Visible = !AddRole.Visible;
Roles.Visible= !Roles.Visible;
txtRoleName.Visible = true;
txtRoleName.Text = string.Empty;
RoleNameTitle.Text = "Add New Role";
cmdDelete.Visible = false;
cancel.Visible = false;
BindRoleDetails(-1);
}
/// <summary>
/// Handles the RowCommand event of the gvUsers control.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="T:System.Web.UI.WebControls.GridViewCommandEventArgs"/> instance containing the event data.</param>
protected void gvRoles_RowCommand(object sender, GridViewCommandEventArgs e)
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -