コード例 #1
0
		private void dgPermissions_UpdateCommand(object source, DataGridCommandEventArgs e)
		{
			//Cell Index is the index of permissionID
			int permissionID = Convert.ToInt32( e.Item.Cells[0].Text);

			BPGroups bp = new BPGroups();
			DSGroups = bp.SelectGroupPermissionsByGroupID(GroupID);

			BEGroups.tbl_GroupPermissionsRow groupPermission = DSGroups.tbl_GroupPermissions.FindByGroupIDPermissionID(GroupID, permissionID);

			DropDownList lstPermValues = (DropDownList) e.Item.FindControl("lstPermValues");
			groupPermission.GroupPermissionValue = Convert.ToInt16(lstPermValues.SelectedValue);

			bp.UpdateGroupPermissions(DSGroups);

			DSGroups = bp.SelectGroupPermissionsByGroupID(GroupID);

			dgPermissions.EditItemIndex = -1;
			dgPermissions.SelectedIndex = -1;
			dgPermissions.DataBind();
		}
コード例 #2
0
		private void dgPermissions_ItemCommand(object source, DataGridCommandEventArgs e)
		{
			//if (this.OryxUser.RolePermission(Globals.PermissionLevels.ManageAdministratorGroups) > 1)
			//{
				BPGroups bp = new BPGroups();
				DSGroups = bp.SelectGroupPermissionsByGroupID(GroupID);
			
				if (e.Item.Cells[0].Text != string.Empty)
				{
					int permissionID = Convert.ToInt32( e.Item.Cells[0].Text);
					if (dgPermissions.EditItemIndex == e.Item.ItemIndex)
					{
						dgPermissions.EditItemIndex = -1;
					}
					else
					{
						dgPermissions.EditItemIndex = e.Item.ItemIndex;
						DSGroups.tbl_PermissionValues.DefaultView.RowFilter = string.Format("PermissionID = {0}", permissionID);
					}
				}

				dgPermissions.DataBind();
			//}
		}
コード例 #3
0
		private void dgPermissions_CancelCommand(object source, DataGridCommandEventArgs e)
		{
			BPGroups bp = new BPGroups();
			DSGroups = bp.SelectGroupPermissionsByGroupID(GroupID);

			dgPermissions.EditItemIndex = -1;
			dgPermissions.SelectedIndex = -1;
			dgPermissions.DataBind();
		}
コード例 #4
0
		private void btnDone_Click(object sender, EventArgs e)
		{
			if (_HasChangedUsers )
			{
				BPGroups bpGroups = new BPGroups();
			
				if (_HasChangedUsers )
				{
					DSGroups = bpGroups.SelectGroupPermissionsByGroupID(GroupID);
					ArrayList perms = new ArrayList(PermList);
					perms.Sort();

					//Remove Duplicates
					if (perms.Count > 1)
					{
						int iLast,iCurrent;
						iLast = (int) perms[0];
						for (int i=1; i<perms.Count; i++)
						{
							iCurrent = (int) perms[i];

							if (iCurrent == iLast)
							{
								perms.RemoveAt(i);
							}
							iLast = iCurrent;
						}
					}

					int SearchIndex;
					foreach (BEGroups.tbl_GroupPermissionsRow groupPerm in DSGroups.tbl_GroupPermissions)
					{
						SearchIndex = perms.BinarySearch(groupPerm.PermissionID);
						if (SearchIndex < 0)
							//if (Array.BinarySearch(groupPerm.PermissionID))
						{
							//Not Found
							groupPerm.Delete();
						}
						else
						{
							perms.RemoveAt(SearchIndex);
						}
					}

					foreach (int i in perms)
					{
						BEGroups.tbl_GroupPermissionsRow groupPerm;
						groupPerm = DSGroups.tbl_GroupPermissions.FindByGroupIDPermissionID(GroupID, i);
						if(groupPerm == null)
						{
							groupPerm = DSGroups.tbl_GroupPermissions.Newtbl_GroupPermissionsRow();
							groupPerm.GroupID = GroupID;
							groupPerm.PermissionID = i;
							groupPerm.GroupPermissionValue = 2;
							DSGroups.tbl_GroupPermissions.Addtbl_GroupPermissionsRow(groupPerm);
						}

						//The first value for a permission should always be 1.
						groupPerm.GroupPermissionValue = 2;
					}
				}

				bpGroups.UpdateGroupPermissions(DSGroups);
				DSGroups = bpGroups.SelectGroupPermissionsByGroupID(GroupID);
				dgPermissions.DataBind();
			}
			pnlAssign.Visible = false;
			pnlPermissions.Visible = true;

			tab1.Attributes["class"] = "";
			tab2.Attributes["class"] = "current";
		}
コード例 #5
0
		private void lnkPermissions_Click(object sender, EventArgs e)
		{
			pnlAssign.Visible = false;
			pnlPermissions.Visible = true;

			tab1.Attributes["class"] = "";
			tab2.Attributes["class"] = "current";

			BPGroups bp = new BPGroups();
			DSGroups = bp.SelectByIDWithUserGroups(GroupID);
			DSGroups = bp.SelectGroupPermissionsByGroupID(GroupID);

			dgPermissions.DataBind();
		}
コード例 #6
0
		private void FillSelectedPerms()
		{
			lstSelectedPerms.Items.Clear();

			BPGroups bp = new BPGroups();
			BEGroups ds = bp.SelectGroupPermissionsByGroupID(GroupID);

			MyListViewItem listItem;

			foreach (BEGroups.tbl_GroupPermissionsRow groupPerm in ds.tbl_GroupPermissions)
			{
				listItem = lstSelectedPerms.Items.Add();
				listItem.CheckBox = true;
				listItem.ItemValue = groupPerm.PermissionID.ToString();
				listItem.Text = groupPerm.PermissionName;
			}
		}
コード例 #7
0
		private void FillAvailablePerms()
		{
			lstAvalPerms.Items.Clear();			
			BPGroups bp = new BPGroups();
			BEGroups ds = bp.SelectGroupPermissionsByGroupID(GroupID);

			MyListViewItem listItem;

			foreach (BEGroups.tbl_PermissionsRow groupPerm in ds.tbl_Permissions)
			{
				if ( ds.tbl_GroupPermissions.FindByGroupIDPermissionID(GroupID, groupPerm.PermissionID) == null)
				{
					listItem = lstAvalPerms.Items.Add();
					listItem.CheckBox = true;
					listItem.ItemValue = groupPerm.PermissionID.ToString();
					listItem.Text = groupPerm.PermissionName;
				}
			}
		}
コード例 #8
0
		private void Page_Load(object sender, EventArgs e)
		{
			this.AuthenticatePage(new string[] {PermissionLevels.EditPermissionGroups, PermissionLevels.AddPermissionGroups, PermissionLevels.ViewPermissionGroups});
			if (GroupID > 0)
			{
				if (this.OryxUser.RolePermission(PermissionLevels.EditPermissionGroups) != 2)
				{
					btnSubmit.Visible = false;
					btnDelete.Visible = false;
					lnkAssign.Enabled = false;
					lnkAddUsers.Enabled = false;
				}
			}
			else
			{
				if (this.OryxUser.RolePermission(PermissionLevels.AddPermissionGroups) != 2)
				{
					btnSubmit.Visible = false;
					btnDelete.Visible = false;
					lnkAssign.Enabled = false;
					lnkAddUsers.Enabled = false;
				}
			}

			if (IsNewSession)
			{
				AddToListIfAdmin();
				IsNewSession = false;
			}

			if (hdnPermissionUsers.Value == "hidden")
			{
				pnlPermissionUsers.CssClass = "panel-closed";
				cntPermissionUsers.Style.Add("display", "none");
				hdnPermissionUsers.Value = "hidden";
			}
			else 
			{
				pnlPermissionUsers.CssClass = "panel-open";
				cntPermissionUsers.Style.Add("display", "");
				hdnPermissionUsers.Value = "visible";
			}

			if (hdnUserPermissions.Value == "hidden")
			{
				pnlUserPermissions.CssClass = "panel-closed";
				cntUserPermissions.Style.Add("display", "none");
				hdnUserPermissions.Value = "hidden";
			}
			else 
			{
				pnlUserPermissions.CssClass = "panel-open";
				cntUserPermissions.Style.Add("display", "");
				hdnUserPermissions.Value = "visible";
			}
			
			if (!Page.IsPostBack)
			{
				BPGroups bp = new BPGroups();

				if (GroupID != 0)
				{
					//BEGroups.tbl_GroupsRow group;

					DSGroups = bp.SelectByIDWithUserGroups(GroupID);
					//group = DSGroups.tbl_Groups.FindByGroupID(GroupID);
					
					txtGroupName.DataBind();
					txtGroupDescription.DataBind();
					chkActive.DataBind();

					DSGroups = bp.SelectGroupPermissionsByGroupID(GroupID);

					dgPermissions.DataBind();

					ShowAssignPerms();

					ShowGroupUsers();
				}
				else
				{
					lblTitle.Text = "Add Administrator Group";
					btnDelete.Visible = false;
					btnSubmit.Text = "Next >";
					pnlUserPermissions.Visible = false;
					pnlPermissionUsers.Visible = false;
					pnlAreaTabs.Visible = false;
					pnlUserTabs.Visible = false;
				}
			}
		}