예제 #1
0
        private void BindingGroupPermission(bool throwError)
        {
            try
            {
                Application.DoEvents();
                if (!throwError)
                {
                    Cursor = Cursors.WaitCursor;
                }

                btnSavePermission.Enabled = false;

                ds_Permission.SP_GetUserGroupPermission.Clear();
                ds_Permission.SP_GetUserGroupPermission.Merge(UserManager.GetGroupPermission(UserGroupID));

                BindingDefaultGroupPermission();


                foreach (DS_User.SP_GetUserGroupPermissionRow rowLogical in ds_Permission.SP_GetUserGroupPermission.Rows)
                {
                    foreach (DS_User.UserGroupPermissionRow rowGrid in ds_Permission.UserGroupPermission.Rows)
                    {
                        if (rowLogical.ObjectID == rowGrid.ObjectID)
                        {
                            rowGrid.Logical = rowLogical.Logical;

                            rowGrid.View         = BitwisePermissionHelper.IsPermitted(rowLogical.Logical, (int)DatabaseAction.View);
                            rowGrid.Add          = BitwisePermissionHelper.IsPermitted(rowLogical.Logical, (int)DatabaseAction.Add);
                            rowGrid.Del          = BitwisePermissionHelper.IsPermitted(rowLogical.Logical, (int)DatabaseAction.Delete);
                            rowGrid.Edit         = BitwisePermissionHelper.IsPermitted(rowLogical.Logical, (int)DatabaseAction.Edit);
                            rowGrid.Approve      = BitwisePermissionHelper.IsPermitted(rowLogical.Logical, (int)DatabaseAction.Approve);
                            rowGrid.Disapprove   = BitwisePermissionHelper.IsPermitted(rowLogical.Logical, (int)DatabaseAction.Disapprove);
                            rowGrid.Block        = BitwisePermissionHelper.IsPermitted(rowLogical.Logical, (int)DatabaseAction.Block);
                            rowGrid.Unblock      = BitwisePermissionHelper.IsPermitted(rowLogical.Logical, (int)DatabaseAction.Unblock);
                            rowGrid.Cancel       = BitwisePermissionHelper.IsPermitted(rowLogical.Logical, (int)DatabaseAction.Cancel);
                            rowGrid.Uncancel     = BitwisePermissionHelper.IsPermitted(rowLogical.Logical, (int)DatabaseAction.Uncancel);
                            rowGrid.Print        = BitwisePermissionHelper.IsPermitted(rowLogical.Logical, (int)DatabaseAction.Print);
                            rowGrid.Import       = BitwisePermissionHelper.IsPermitted(rowLogical.Logical, (int)DatabaseAction.Import);
                            rowGrid.Export       = BitwisePermissionHelper.IsPermitted(rowLogical.Logical, (int)DatabaseAction.Export);
                            rowGrid.HiddenColumn = BitwisePermissionHelper.IsPermitted(rowLogical.Logical, (int)DatabaseAction.HiddenColumn);

                            rowGrid.AcceptChanges();
                            break;
                        }
                    }
                }

                btnSavePermission.Enabled = IsPermitted(ObjectNames.UserGroupPermission, DatabaseAction.Manage);
            }
            catch (Exception ex)
            {
                if (throwError)
                {
                    throw;
                }
                else
                {
                    XtraMessageBox.Show(this, "შეცდომა უფლებების ინფორმაციის ამოღებისას.\n" + ex.Message, "შეცდომა", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            finally
            {
                if (!throwError)
                {
                    Cursor = Cursors.Default;
                }
            }
        }
예제 #2
0
 private static bool IsPermittedWithoutLicense(int permissionToCheck)
 {
     return(CryptoLicenseEx.IsValid || BitwisePermissionHelper.IsPermitted((int)DatabaseAction.IsPermittedWithoutLicense, permissionToCheck));
     //return (!TrialMakerHelper.IsExpired || BitwisePermissionHelper.IsPermitted((int)DatabaseAction.IsPermittedWithoutLicense, permissionToCheck));
 }
예제 #3
0
        public void InitLogical()
        {
            int logical;

            foreach (DS_User.UserGroupPermissionRow row in ds_Permission.UserGroupPermission.Rows)
            {
                logical = 0;

                if (row.View)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.View);
                }
                if (row.Validate)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.Validate);
                }
                if (row.Add)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.Add);
                }
                if (row.Del)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.Delete);
                }
                if (row.Edit)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.Edit);
                }
                if (row.Approve)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.Approve);
                }
                if (row.Disapprove)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.Disapprove);
                }
                if (row.Block)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.Block);
                }
                if (row.Unblock)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.Unblock);
                }
                if (row.Cancel)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.Cancel);
                }
                if (row.Uncancel)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.Uncancel);
                }
                if (row.Print)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.Print);
                }
                if (row.Import)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.Import);
                }
                if (row.Export)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.Export);
                }
                if (row.HiddenColumn)
                {
                    logical = BitwisePermissionHelper.AddPermission(logical, (int)DatabaseAction.HiddenColumn);
                }

                if (row.Logical != logical)
                {
                    row.Logical = logical;
                }
                else
                {
                    row.AcceptChanges();
                }
            }
        }
예제 #4
0
 public static bool IsPermitted(int permissions, int permissionToCheck)
 {
     return(BitwisePermissionHelper.IsPermitted(permissions, permissionToCheck) && IsPermittedWithoutLicense(permissionToCheck));
 }