Beispiel #1
0
        private void btnSua_Click(object sender, EventArgs e)
        {
            if (Vssoft.Data.Common.MaBV == "12001")
            {
                if (!PermissionProvider.CheckQuyenFalse("us_dmDuoc")[1])
                {
                    MessageBox.Show("Bạn chưa được cấp quyền sửa thuốc, VTYT ! \nLiên hệ với admin để được cấp quyền");
                    return;
                }
            }
            int ot;
            int _int_MmaDV = 0;

            if (Int32.TryParse(txtMaDV.Text, out ot))
            {
                _int_MmaDV = Convert.ToInt32(txtMaDV.Text);
            }
            txtMaDV.Properties.ReadOnly     = true;
            txtMaDV.Properties.AllowFocused = false;
            if (_int_MmaDV > 0)
            {
                TTLuu = 2;
                EnableButton(false);
            }
            else
            {
                MessageBox.Show("không có dược để sửa");
            }
        }
Beispiel #2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="FolderPermissions"/> class.
        /// </summary>
        /// <param name="needDefinitions">A value indicating whether the permission definitions need to be loaded.</param>
        /// <param name="permissions">A colleciton of folder permissions.</param>
        public FolderPermissions(bool needDefinitions, FolderPermissionCollection permissions)
            : base(needDefinitions)
        {
            foreach (var role in PermissionProvider.Instance().ImplicitRolesForFolders(PortalSettings.Current.PortalId))
            {
                this.EnsureRole(role, true, true);
            }

            foreach (FolderPermissionInfo permission in permissions)
            {
                if (permission.UserID != Null.NullInteger)
                {
                    this.AddUserPermission(permission);
                }
                else
                {
                    this.AddRolePermission(permission);
                }

                this.RolePermissions =
                    this.RolePermissions.OrderByDescending(p => p.Locked)
                    .ThenByDescending(p => p.IsDefault)
                    .ThenBy(p => p.RoleName)
                    .ToList();
                this.UserPermissions = this.UserPermissions.OrderBy(p => p.DisplayName).ToList();
            }
        }
        private string SetPageViewRights(TabInfo oTab, string RoleName)
        {
            RoleController oRoleC = new RoleController();
            RoleInfo       oRole  = oRoleC.GetRoleByName(PortalSettings.PortalId, RoleName);

            if (oRole != null)
            {
                TabController      oTabC    = new TabController();
                TabPermissionInfo  infPerm  = new TabPermissionInfo();
                PermissionProvider permProv = new PermissionProvider();

                int RoleId = 0;

                infPerm.AllowAccess  = true;
                infPerm.RoleID       = oRole.RoleID;
                infPerm.RoleName     = RoleName;
                infPerm.TabID        = oTab.TabID;
                infPerm.PermissionID = 3; // View

                // Change its permissions
                TabPermissionCollection Perm = oTab.TabPermissions;

                Perm.Add(infPerm, true); // true if checkForDuplicates

                // Save the permissions
                permProv.SaveTabPermissions(oTab);


                return(string.Format("Page {0}: role {1} View Rights Set <br />", oTab.TabName, RoleName));
            }
            else
            {
                return(string.Format("Role {0} does not exist <br />", RoleName));
            }
        }
 public PagePermissions(bool needDefinitions) : base(needDefinitions)
 {
     foreach (var role in PermissionProvider.Instance().ImplicitRolesForPages(PortalSettings.Current.PortalId))
     {
         this.EnsureRole(role, true, true);
     }
 }
Beispiel #5
0
        private void btnXoa_Click(object sender, EventArgs e)
        {
            if (Vssoft.Data.Common.MaBV == "12001")
            {
                if (!PermissionProvider.CheckQuyenFalse("us_dmDuoc")[2])
                {
                    MessageBox.Show("Bạn chưa được cấp quyền xóa thuốc, VTYT ! \nLiên hệ với admin để được cấp quyền");
                    return;
                }
            }
            int ot;
            int madv = 0;

            if (Int32.TryParse(txtMaDV.Text, out ot))
            {
                madv = Convert.ToInt32(txtMaDV.Text);
            }
            var kt = _data.NhapDcts.Where(p => p.MaDV == madv).ToList();

            if (kt.Count > 0)
            {
                MessageBox.Show("thuốc đã được sử dụng, bạn không thể xóa");
            }
            else
            {
                DialogResult _result = MessageBox.Show("Bạn muốn xóa thuốc: " + txtTenDV.Text, "Hỏi xóa!", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (_result == DialogResult.Yes)
                {
                    var xoa = _data.DichVus.Single(p => p.MaDV == madv);
                    _data.DichVus.Remove(xoa);
                    _data.SaveChanges();
                    us_dmDuoc_Load(sender, e);
                }
            }
        }
Beispiel #6
0
        static SecurityContext()
        {
            var permissionProvider = new PermissionProvider();
            var azManager          = new AzManager(new RoleProvider(), permissionProvider);

            PermissionResolver = new PermissionResolver(azManager, permissionProvider);
        }
        private string RoleRightsReport(string roleName, TabInfo oTab)
        {
            // Return a string with the found role rights
            string sOut = string.Empty;


            RoleController oRoleC = new RoleController();
            RoleInfo       oRole  = oRoleC.GetRoleByName(PortalSettings.PortalId, roleName);

            PermissionProvider permProv = new PermissionProvider();

            if (oRole != null)
            {
                foreach (TabPermissionInfo oTabPermission in TabPermissionController.GetTabPermissions(oTab.TabID, PortalSettings.PortalId))
                {
                    // Correct role?
                    if (oTabPermission.RoleName == roleName)
                    {
                        string s = string.Empty;

                        if (oTabPermission.AllowAccess == false)
                        {
                            s = "Deny ";
                        }
                        s   += oTabPermission.PermissionName;
                        sOut = AddWithTrailingString(sOut, s, " / ");
                    }
                }
            }

            return(sOut);
        }
Beispiel #8
0
 private void simpleButton1_Click_1(object sender, EventArgs e)
 {
     if (PermissionProvider.CheckQuyenFalse(this.Name)[2])
     {
         byte a       = Convert.ToByte(txtid.Text);
         var  kiemtra = from k in data.BenhNhans.Where(p => p.IDDTBN == a) select k;
         if (kiemtra.Count() == 0)
         {
             var xoa = data.DTBNs.Single(p => p.IDDTBN == a);
             data.DTBNs.Remove(xoa);
             data.SaveChanges();
             MessageBox.Show("xóa thành công", "Thông báo");
             //  var dt = from h in data.DTBNs select new { h.IDDTBN, h.DTBN1, h.Status, h.MoTa };
             List <DTBN> _dt = new List <DTBN>();
             _dt = data.DTBNs.ToList();
             binS_DTBN.DataSource        = _dt;
             danhsachdoituong.DataSource = binS_DTBN.DataSource;
             gridView1_DataSourceChanged(sender, e);
         }
         else
         {
             MessageBox.Show("Đối tượng đã sửa dụng không được xóa", "Thông báo");
         }
     }
 }
Beispiel #9
0
        public PermissionProviderFixture()
        {
            InitializePredicates();

            SampleProvider = new PermissionProvider(
                Path.Combine(Directory.GetParent(Directory.GetCurrentDirectory())?.Parent?.Parent?.FullName, "Prolog", "Sample-Facts.pl"),
                Path.Combine(Directory.GetParent(Directory.GetCurrentDirectory())?.Parent?.Parent?.FullName, "Prolog", "Sample-Rules.pl"));
        }
Beispiel #10
0
        private void ClearFolderCacheInternal(int portalId, bool clearRuntime)
        {
            RemoveFormattedCacheKey(DataCache.FolderCacheKey, clearRuntime, portalId);

            // FolderUserCacheKey also includes permissions and userId but we don't have that information
            // here so we remove them using a prefix
            var folderUserCachePrefix = GetCacheKey(string.Format("Folders|{0}|", portalId));
            ClearCacheInternal(folderUserCachePrefix, clearRuntime);
            
            PermissionProvider.ResetCacheDependency(portalId, () => RemoveFormattedCacheKey(DataCache.FolderPermissionCacheKey, clearRuntime, portalId));
        }
            public void PrologStructCanBeSerializedAsString()
            {
                var goal     = PermissionProvider.BuildPredicate("authorisation", "argument1", "argument2", null);
                var expected = "authorisation(argument1, argument2, _).";

                Assert.Equal(expected, goal);

                goal     = PermissionProvider.BuildPredicate("authorisation", "\"argument1\"", "\"argument2\"", null);
                expected = "authorisation(\"argument1\", \"argument2\", _).";

                Assert.Equal(expected, goal);
            }
        private void SetUpGrid(DataGrid grid, string nameColumnDataField, string idColumnDataField, string permissionHeaderText)
        {
            grid.Columns.Clear();
            var nameColumn = new BoundColumn
            {
                HeaderText = permissionHeaderText,
                DataField  = nameColumnDataField
            };

            nameColumn.ItemStyle.CssClass   = "permissionHeader";
            nameColumn.HeaderStyle.CssClass = "permissionHeader";
            grid.Columns.Add(nameColumn);

            var idColumn = new BoundColumn
            {
                HeaderText = "",
                DataField  = idColumnDataField,
                Visible    = false
            };

            grid.Columns.Add(idColumn);

            foreach (PermissionInfo permission in _permissions)
            {
                var templateCol    = new TemplateColumn();
                var columnTemplate = new PermissionTriStateTemplate(permission)
                {
                    IsFullControl   = IsFullControl(permission),
                    IsView          = IsViewPermisison(permission),
                    SupportDenyMode = SupportsDenyPermissions(permission)
                };
                templateCol.ItemTemplate = columnTemplate;

                var locName = (permission.ModuleDefID <= 0) ? Localization.GetString(permission.PermissionName + ".Permission", PermissionProvider.Instance().LocalResourceFile)     //system permission
                                                            : (!String.IsNullOrEmpty(ResourceFile) ? Localization.GetString(permission.PermissionName + ".Permission", ResourceFile) //custom permission
                                                                                                    : "");
                templateCol.HeaderText       = !String.IsNullOrEmpty(locName) ? locName : permission.PermissionName;
                templateCol.HeaderStyle.Wrap = true;
                grid.Columns.Add(templateCol);
            }
            var actionsColumn = new ImageCommandColumn
            {
                CommandName = "Delete/" + nameColumnDataField,
                KeyField    = idColumnDataField,
                IconKey     = "Delete",
                IconSize    = "16x16",
                IconStyle   = "PermissionGrid",
                HeaderText  = Localization.GetString("PermissionActionsHeader.Text", PermissionProvider.Instance().LocalResourceFile)
            };

            grid.Columns.Add(actionsColumn);
            grid.ItemCommand += grid_ItemCommand;
        }
Beispiel #13
0
        public PermissionTests()
        {
            _databaseConfiguration = new DatabaseSecurityConfiguration
            {
                ConnectionString = "Server=[SERVER];Database=[DB];User Id=[USR];Password=[PWD];",
                TableName        = "Permissions2"
            };
            _permissionProvider = new PermissionProvider(_databaseConfiguration);

            // Clear the database
            ClearDb();
        }
Beispiel #14
0
 private void btnMoi_Click(object sender, EventArgs e)
 {
     if (Vssoft.Data.Common.MaBV == "12001")
     {
         if (!PermissionProvider.CheckQuyenFalse("us_dmDuoc")[0])
         {
             MessageBox.Show("Bạn chưa được cấp quyền thêm mới thuốc, VTYT ! \nLiên hệ với admin để được cấp quyền");
             return;
         }
     }
     TTLuu = 1;
     EnableButton(false);
     resetcontrol();
 }
Beispiel #15
0
        private void us_dmDuoc_Load(object sender, EventArgs e)
        {
            //    try
            //    {
            lupMaCC.Properties.DataSource = _data.NhaCCs.OrderBy(p => p.TenCC).ToList();
            if (PermissionProvider.CheckQuyenFalse("us_dmDuoc")[0])
            {
                EnableButton(true);
            }
            else
            {
                EnableButton(false);
            }
            List <string> _nhasx = _data.DonVis.Select(p => p.TenDonVi).ToList();

            cbo_NhaSX.Properties.Items.AddRange(_nhasx);
            _lKPsd = (from kp in _data.KPhongs.Where(p => p.PLoai == KhoaPhongPL.CanLamSang || p.PLoai == KhoaPhongPL.LamSang || p.PLoai == KhoaPhongPL.PhongKham || p.PLoai == KhoaPhongPL.KhoaDuoc)
                      select new usDichVu.KhoaPhong()
            {
                Check = false,
                MaKP = kp.MaKP,
                TenKP = kp.TenKP
            }).Distinct().OrderBy(p => p.TenKP).ToList();
            cklKP.DataSource = _lKPsd;
            _lNhom           = _data.NhomDVs.Where(p => p.Status == 1).ToList();
            _lddung          = _data.DuongDungs.OrderBy(p => p.DuongDung1).ToList();
            lup_MaDuongD.Properties.DataSource = _lddung;
            var _tnhom = (from nhom in _data.NhomDVs.Where(p => p.Status == 1)
                          join tn in _data.TieuNhomDVs on nhom.IDNhom equals tn.IDNhom
                          select new { nhom.TenNhom, tn.TenTN, tn.IdTieuNhom, nhom.IDNhom }).ToList();

            //List<string> _lsDM5084 = new List<string>();
            //_lsDM5084 = _data.C5084.Where(p => p.Bang != 5).OrderBy(p => p.TenDV).Select(p=>p.TenDV).ToList();
            lupNhom.Properties.DataSource     = _tnhom.ToList();
            lupPhanLoai.Properties.DataSource = _lNhom;
            lupIDNhom.DataSource   = _lNhom.ToList();
            luptieunhom.DataSource = _tnhom.ToList();
            _ldichvu             = _data.DichVus.Where(p => p.PLoai == 1).ToList();
            grcDichVu.DataSource = _ldichvu;
            //}
            chkDY.Checked         = false;
            panelControl3.Visible = false;



            //catch (Exception ex)
            //{
            //    MessageBox.Show("Lỗi load dữ liệu: " + ex.Message);
            //}
        }
Beispiel #16
0
 private void simpleButton3_Click(object sender, EventArgs e)
 {
     if (PermissionProvider.CheckQuyenFalse(this.Name)[1])
     {
         luusua.Enabled = true;
         luu            = false;
         lup_HTTT.Properties.ReadOnly    = false;
         txtid.Properties.ReadOnly       = true;
         txtdoituong.Properties.ReadOnly = false;
         txtmota.Properties.ReadOnly     = false;
         cbo_Status.Properties.ReadOnly  = false;
         them.Enabled             = false;
         danhsachdoituong.Enabled = false;
     }
 }
Beispiel #17
0
        public async Task <IActionResult> PermissionsSave(IFormCollection form, bool install)
        {
            if (!install)
            {
                var permissionRecords = await _permissionService.GetAllPermissions();

                var customerGroups = await _groupService.GetAllCustomerGroups(showHidden : true);

                foreach (var cr in customerGroups)
                {
                    string formKey = "allow_" + cr.Id;
                    var    permissionRecordSystemNamesToRestrict = form[formKey].ToString() != null ? form[formKey].ToString().Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries).ToList() : new List <string>();
                    foreach (var pr in permissionRecords)
                    {
                        bool allow = permissionRecordSystemNamesToRestrict.Contains(pr.SystemName);
                        if (allow)
                        {
                            if (pr.CustomerGroups.FirstOrDefault(x => x == cr.Id) == null)
                            {
                                pr.CustomerGroups.Add(cr.Id);
                                await _permissionService.UpdatePermission(pr);
                            }
                        }
                        else
                        {
                            if (pr.CustomerGroups.FirstOrDefault(x => x == cr.Id) != null)
                            {
                                pr.CustomerGroups.Remove(cr.Id);
                                await _permissionService.UpdatePermission(pr);
                            }
                        }
                    }
                }
                Success(_translationService.GetResource("Admin.Configuration.Permissions.Updated"));
            }
            else
            {
                IPermissionProvider provider = new PermissionProvider();
                await _mediator.Send(new InstallNewPermissionsCommand()
                {
                    PermissionProvider = provider
                });

                Success(_translationService.GetResource("Admin.Configuration.Permissions.Installed"));
            }
            return(RedirectToAction("Index"));
        }
Beispiel #18
0
 private void simpleButton2_Click(object sender, EventArgs e)
 {
     if (PermissionProvider.CheckQuyenHan(this.Name)[0])
     {
         luu                             = true;
         luusua.Enabled                  = true;
         txtdoituong.Text                = "";
         txtmota.Text                    = "";
         cbo_Status.SelectedIndex        = -1;
         lup_HTTT.EditValue              = -1;
         txtid.Text                      = "";
         lup_HTTT.Properties.ReadOnly    = false;
         txtid.Properties.ReadOnly       = false;
         txtdoituong.Properties.ReadOnly = false;
         txtmota.Properties.ReadOnly     = false;
         cbo_Status.Properties.ReadOnly  = false;
         sua1111.Enabled                 = false;
         danhsachdoituong.Enabled        = false;
     }
 }
        //private bool RoleHasViewRights(string RoleName, TabInfo oTab)
        //{
        //    // Check if the passed role has view rights on the Passed tab

        //    int iViewId = System.Security.SecurityAccessLevel.View;

        //    RoleController oRoleC = new RoleController();
        //    RoleInfo oRole = oRoleC.GetRoleByName(PortalSettings.PortalId, RoleName);

        //    PermissionProvider permProv = new PermissionProvider();

        //    if (!oRole == null)
        //    {
        //        foreach (TabPermissionInfo oTP in TabPermissionController.GetTabPermissions(oTab.TabID, PortalId))
        //        {
        //            if (oTP.RoleName == RoleName & oTP.PermissionID == iViewId & oTP.AllowAccess == true)
        //            {
        //                return true;
        //                break;
        //            }
        //        }
        //    }

        //    return false;
        //}



        private TabPermissionInfo GetTabRolePermissions(string roleName, TabInfo oTab)
        {
            // Get tabpermissions for a Role on a Tab
            RoleController oRoleC = new RoleController();
            RoleInfo       oRole  = oRoleC.GetRoleByName(PortalSettings.PortalId, roleName);

            PermissionProvider permProv = new PermissionProvider();

            if (oRole != null)
            {
                foreach (TabPermissionInfo oTP in TabPermissionController.GetTabPermissions(oTab.TabID, PortalSettings.PortalId))
                {
                    if (oTP.RoleName == roleName)
                    {
                        return(oTP);
                    }
                }
            }

            return(null);
        }
        private string CopyPageRoleRights(TabInfo oTab, string fromRole, string toRole)
        {
            // Loop through the Permissions for this tab and when old role is found copy it to the new role
            string sOut = string.Empty;


            RoleController oRoleC = new RoleController();

            RoleInfo oFromRole = oRoleC.GetRoleByName(PortalSettings.PortalId, fromRole);
            RoleInfo oToRole   = oRoleC.GetRoleByName(PortalSettings.PortalId, toRole);

            PermissionProvider oPermProv = new PermissionProvider();

            if (oFromRole != null && oToRole != null)
            {
                // Get the permissions for the page and check if there are any
                TabPermissionCollection oTabPermCol = TabPermissionController.GetTabPermissions(oTab.TabID, PortalSettings.PortalId);

                sOut += "<p>";

                // Get current list (changes while running this code)
                foreach (TabPermissionInfo oTabPermission in oTabPermCol.ToList())
                {
                    if (oTabPermission.RoleName == fromRole)
                    {
                        sOut += CopyPageRoleRight(oFromRole, oToRole, oTabPermission);
                    }
                }

                sOut += "</p>";
            }
            else
            {
                sOut = $"Role {fromRole} not found";
            }


            return(sOut);
        }
        private string CopyPageRoleRight(RoleInfo roleInfoFrom, RoleInfo roleInfoTo, TabPermissionInfo tabPermInfo)
        {
            // Will copy a passed Tab Permission from one role to the other.


            string sOut = string.Empty;

            if (!(roleInfoFrom == null | roleInfoTo == null))
            {
                TabController oTabC = new TabController();

                // Get the page
                TabInfo oTab = oTabC.GetTab(tabPermInfo.TabID, PortalSettings.PortalId, true);

                // Create and set the new permissions Object
                var NewTabPerms = new TabPermissionInfo()
                {
                    TabID          = oTab.TabID,
                    PermissionID   = tabPermInfo.PermissionID,
                    PermissionName = tabPermInfo.PermissionName,
                    AllowAccess    = tabPermInfo.AllowAccess,
                    RoleID         = roleInfoTo.RoleID,
                    RoleName       = roleInfoTo.RoleName
                };


                // Change its permissions

                // sOut &= "Before Remove : " & oTab.TabID & " >> " & RoleRightsReport(RoleInfoTo.RoleName, oTab) & "<br>"

                // Look for already existing permissions and remove them
                foreach (var permissionInfoBase in oTab.TabPermissions.ToList())
                {
                    var oTabPerm = (TabPermissionInfo)permissionInfoBase;
                    if (oTabPerm.RoleID == NewTabPerms.RoleID & oTabPerm.PermissionID == NewTabPerms.PermissionID)
                    {
                        oTab.TabPermissions.Remove(oTabPerm);

                        // sOut &= "After Remove : " & oTab.TabID & " >> " & RoleRightsReport(RoleInfoTo.RoleName, oTab) & "<br>"

                        sOut += $"Page: \"{oTab.TabName}\" || role: \"{roleInfoTo.RoleName}\" || Rights Removed: \"{NewTabPerms.PermissionName}\" <br />";
                    }
                }

                var TabPermCol = oTab.TabPermissions;

                TabPermCol.Add(NewTabPerms, true); // true if checkForDuplicates


                // Save the permissions
                PermissionProvider oPermissionProv = new PermissionProvider();
                oPermissionProv.SaveTabPermissions(oTab);


                sOut += $"Page: \"{oTab.TabName}\" || role: \"{roleInfoTo.RoleName}\" || Rights Set: \"{NewTabPerms.PermissionName}\" <br />";

                DataCache.ClearTabsCache(PortalSettings.PortalId);
            }
            else
            {
                sOut += $"Role {roleInfoTo?.RoleName} does not exist <br />";
            }

            return(sOut);
        }
Beispiel #22
0
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);

            try
            {
                cancelHyperLink.NavigateUrl = ReturnURL;

                if (_moduleId != -1)
                {
                    ctlAudit.Entity = Module;
                }
                if (Page.IsPostBack == false)
                {
                    ctlIcon.FileFilter = Globals.glbImageFileTypes;

                    dgPermissions.TabId    = PortalSettings.ActiveTab.TabID;
                    dgPermissions.ModuleID = _moduleId;

                    var tabsByModule = TabController.Instance.GetTabsByModuleID(_moduleId);
                    tabsByModule.Remove(TabId);
                    dgOnTabs.DataSource = tabsByModule.Values;
                    dgOnTabs.DataBind();

                    cboTab.DataSource = TabController.GetPortalTabs(PortalId, -1, false, Null.NullString, true, false, true, false, true);
                    cboTab.DataBind();

                    //if tab is a  host tab, then add current tab
                    if (Globals.IsHostTab(PortalSettings.ActiveTab.TabID))
                    {
                        cboTab.InsertItem(0, PortalSettings.ActiveTab.LocalizedTabName, PortalSettings.ActiveTab.TabID.ToString());
                    }
                    if (Module != null)
                    {
                        if (cboTab.FindItemByValue(Module.TabID.ToString()) == null)
                        {
                            var objTab = TabController.Instance.GetTab(Module.TabID, Module.PortalID, false);
                            cboTab.AddItem(objTab.LocalizedTabName, objTab.TabID.ToString());
                        }
                    }

                    //only Portal Administrators can manage the visibility on all Tabs
                    var isAdmin = PermissionProvider.Instance().IsPortalEditor();
                    rowAllTabs.Visible    = isAdmin;
                    chkAllModules.Enabled = isAdmin;

                    if (HideCancelButton)
                    {
                        cancelHyperLink.Visible = false;
                    }

                    //tab administrators can only manage their own tab
                    if (!TabPermissionController.CanAdminPage())
                    {
                        chkNewTabs.Enabled    = false;
                        chkDefault.Enabled    = false;
                        chkAllowIndex.Enabled = false;
                        cboTab.Enabled        = false;
                    }

                    if (_moduleId != -1)
                    {
                        BindData();
                        cmdDelete.Visible = (ModulePermissionController.CanDeleteModule(Module) ||
                                             TabPermissionController.CanAddContentToPage()) && !HideDeleteButton;
                    }
                    else
                    {
                        isShareableCheckBox.Checked         = true;
                        isShareableViewOnlyCheckBox.Checked = true;
                        isShareableRow.Visible = true;

                        cboVisibility.SelectedIndex = 0; //maximized
                        chkAllTabs.Checked          = false;
                        cmdDelete.Visible           = false;
                    }
                    if (Module != null)
                    {
                        cmdUpdate.Visible      = ModulePermissionController.HasModulePermission(Module.ModulePermissions, "EDIT,MANAGE") || TabPermissionController.CanAddContentToPage();
                        permissionsRow.Visible = ModulePermissionController.CanAdminModule(Module) || TabPermissionController.CanAddContentToPage();
                    }

                    //Set visibility of Specific Settings
                    if (SettingsControl == null == false)
                    {
                        //Get the module settings from the PortalSettings and pass the
                        //two settings hashtables to the sub control to process
                        SettingsControl.LoadSettings();
                        specificSettingsTab.Visible = true;
                        fsSpecific.Visible          = true;
                    }
                    else
                    {
                        specificSettingsTab.Visible = false;
                        fsSpecific.Visible          = false;
                    }

                    if (Module != null)
                    {
                        termsSelector.PortalId = Module.PortalID;
                        termsSelector.Terms    = Module.Terms;
                    }
                    termsSelector.DataBind();
                }
                if (Module != null)
                {
                    cultureLanguageLabel.Language = Module.CultureCode;
                }
            }
            catch (Exception exc)
            {
                Exceptions.ProcessModuleLoadException(this, exc);
            }
        }
Beispiel #23
0
 public static void ClearFolderPermissionsCache(int PortalId)
 {
     PermissionProvider.ResetCacheDependency(PortalId,
                                             () => RemoveCache(String.Format(FolderPermissionCacheKey, PortalId)));
 }
 public static bool IsFullControl(PermissionInfo permissionInfo)
 {
     return((permissionInfo.PermissionKey == "EDIT") && PermissionProvider.Instance().SupportsFullControl());
 }
 private void SetUpUsersGrid()
 {
     if (userPermissionsGrid != null)
     {
         SetUpGrid(userPermissionsGrid, "DisplayName", "userid", Localization.GetString("PermissionUserHeader.Text", PermissionProvider.Instance().LocalResourceFile));
     }
 }
Beispiel #26
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="_data"></param>
 /// <param name="_macb">mã cán bộ trong dữ liệu</param>
 /// <param name="_macbxoa">mã cán bộ muốn thực hiện sửa-xóa</param>
 /// <returns></returns>
 public static bool _KiemTraCBSuaXoa(Hospital _data, string _macb, string _macbxoa)
 => PermissionProvider.isSuaXoa(_data, _macb, _macbxoa);
 protected override bool IsFullControl(PermissionInfo permissionInfo)
 {
     return((permissionInfo.PermissionKey == "EDIT") && PermissionProvider.Instance().SupportsFullControl());
 }
        /// <summary>
        /// Register all aspects into dependency resolver
        /// </summary>
        /// <returns></returns>
        public IServiceContainer Bootstrap(params Assembly[] scanAssemblies)
        {
            // Proc config validation
            ApplicationConfiguration config = null;

            try
            {
                config = ApplicationConfiguration.Instance;
            }
            catch { }
            finally
            {
                if (config.IsNull())
                {
                    throw new Exception("Signals.Core.Configuration.ApplicationConfiguration is not provided. Please use a configuration provider to provide configuration values!");
                }
            }

            if (DependencyResolver.IsNull() || DependencyResolver().IsNull())
            {
                throw new Exception("Dependency resolver not configured");
            }

            var resolver = DependencyResolver();

            if (!Logging.IsNull() && !Logging().IsNull())
            {
                resolver.Register(typeof(ILogger), Logging());
            }
            if (!Auditing.IsNull() && !Auditing().IsNull())
            {
                resolver.Register(typeof(IAuditProvider), Auditing());
            }
            if (!Cache.IsNull() && !Cache().IsNull())
            {
                resolver.Register(typeof(ICache), Cache());
            }
            if (!Localization.IsNull() && !Localization().IsNull())
            {
                resolver.Register(typeof(ILocalizationProvider), Localization());
            }
            if (!Storage.IsNull() && !Storage().IsNull())
            {
                resolver.Register(typeof(IStorageProvider), Storage());
            }
            if (!MessageChannel.IsNull() && !MessageChannel().IsNull())
            {
                resolver.Register(typeof(IMessageChannel), MessageChannel());
            }
            if (!AuthenticationManager.IsNull() && !AuthenticationManager().IsNull())
            {
                resolver.Register(typeof(IAuthenticationManager), AuthenticationManager());
            }
            if (!AuthorizationManager.IsNull() && !AuthorizationManager().IsNull())
            {
                resolver.Register(typeof(IAuthorizationManager), AuthorizationManager());
            }
            if (!TaskRegistry.IsNull() && !TaskRegistry().IsNull())
            {
                resolver.Register(typeof(ITaskRegistry), TaskRegistry());
            }
            if (!PermissionProvider.IsNull() && !PermissionProvider().IsNull())
            {
                resolver.Register(typeof(IPermissionProvider), PermissionProvider());
            }
            if (!Benchmarker.IsNull() && !Benchmarker().IsNull())
            {
                resolver.Register(typeof(IBenchmarker), Benchmarker());
            }
            if (!PermissionManager.IsNull() && !PermissionManager().IsNull())
            {
                resolver.Register(typeof(IPermissionManager), PermissionManager());
            }

            resolver.Register <CriticalErrorCallbackManager>();
            resolver.Register <IProcessFactory, ProcessFactory>();
            resolver.Register <IProcessExecutor, ProcessExecutor>();

            resolver.Register <IBusinessProcessContext, BusinessProcessContext>();
            resolver.Register <IApiProcessContext, ApiProcessContext>();
            resolver.Register <IDistributedProcessContext, DistributedProcessContext>();
            resolver.Register <IFileExportProcessContext, FileExportProcessContext>();
            resolver.Register <IFileImportProcessContext, FileImportProcessContext>();
            resolver.Register <IRecurringProcessContext, RecurringProcessContext>();

            resolver.Register <Mediator>();

            RegisterProcesses(config, resolver, scanAssemblies);
            RegisterErrorHendling(config, resolver);
            RegisterJsonSerializerSettings(config, resolver);
            RegisterSmtp(config, resolver);
            RegisterSyncLogProvider(config, resolver);

            var services = SystemBootstrapper.Init(resolver, scanAssemblies);

            return(services);
        }
 private void SetUpRolesGrid()
 {
     SetUpGrid(rolePermissionsGrid, "RoleName", "roleid", Localization.GetString("PermissionRoleHeader.Text", PermissionProvider.Instance().LocalResourceFile));
 }
Beispiel #30
0
        private void AddUserProfilePage(int portalId, bool setAsPortalUserProfile)
        {
            var tabController    = new TabController();
            var moduleController = new ModuleController();

            // Get Azure AD B2C User profile module
            var moduleFriendlyName = "AzureAD.B2C.UserProfile";
            var moduleDef          = ModuleDefinitionController.GetModuleDefinitionByFriendlyName(moduleFriendlyName);

            //Add User Profile page under root
            var     parentId = TabController.GetTabByTabPath(PortalId, "//", Null.NullString);
            var     tabId    = TabController.GetTabByTabPath(PortalId, "//UserProfile", Null.NullString);
            int     moduleId;
            TabInfo tabInfo;


            if (tabId == Null.NullInteger)
            {
                tabInfo = new TabInfo()
                {
                    PortalID        = PortalId,
                    TabName         = "UserProfile",
                    Title           = "User Profile",
                    Description     = "Manage Azure AD B2C User profile",
                    KeyWords        = "profile",
                    IsDeleted       = false,
                    IsSuperTab      = false,
                    IsVisible       = false,
                    DisableLink     = false,
                    IconFile        = null,
                    SiteMapPriority = 0,
                    Url             = null,
                    ParentId        = parentId
                };
                tabInfo.TabSettings.Add("AllowIndex", "False");
                // Add User Profile page
                tabId = tabController.AddTab(tabInfo);


                // Allow access to "Registered Users" role
                var permissions = new TabPermissionInfo()
                {
                    AllowAccess  = true,
                    RoleID       = PortalSettings.RegisteredRoleId,
                    RoleName     = PortalSettings.RegisteredRoleName,
                    TabID        = tabId,
                    PermissionID = 3 // View
                };
                tabInfo.TabPermissions.Add(permissions, true);
                PermissionProvider.Instance().SaveTabPermissions(tabInfo);
            }
            else
            {
                tabInfo = tabController.GetTab(tabId, PortalId, false);

                foreach (var kvp in moduleController.GetTabModules(tabId))
                {
                    if (kvp.Value.DesktopModule.ModuleName == moduleFriendlyName)
                    {
                        // Preview module so hard delete
                        moduleController.DeleteTabModule(tabId, kvp.Value.ModuleID, false);
                        break;
                    }
                }
            }

            //Add module to page
            moduleId = Upgrade.AddModuleToPage(tabInfo, moduleDef.ModuleDefID, "User Profile", "", true);

            var moduleTab = moduleController.GetTabModules(tabInfo.TabID)
                            .FirstOrDefault(x => x.Value.ModuleID == moduleId);

            if (moduleTab.Value != null)
            {
                moduleController.UpdateTabModuleSetting(moduleTab.Value.TabModuleID, "hideadminborder", "True");
            }

            // Change User profile page on the Portal settings
            var portalInfo = PortalController.Instance.GetPortal(PortalId);

            portalInfo.UserTabId = setAsPortalUserProfile ? tabId : Null.NullInteger;
            PortalController.Instance.UpdatePortalInfo(portalInfo);
        }