Exemple #1
0
        private void SaveNodesData(Tabs tab, int roleId)
        {
            using (var rep = UnitOfWork.TabsRepository)
            {
                //Save
                using (var rtRep = UnitOfWork.RoleTabsRepository)
                {
                    var isExists = rtRep.Where(r => r.RoleID == roleId && r.TabID == tab.TabId).Any();
                    if (!isExists)
                    {
                        var roleTab = new RoleTabs
                        {
                            RoleID = roleId,
                            TabID  = tab.TabId,
                            ID     = 0
                        };
                        rtRep.Create(roleTab);
                    }
                }

                //Check for the Current tab's Parent Tab
                if (tab.ParentTabId > 0)
                {
                    var parentTab = rep.Where(rp => rp.TabId == tab.ParentTabId).FirstOrDefault();
                    if (parentTab != null)
                    {
                        SaveNodesData(parentTab, roleId);
                    }
                }
            }
        }
 /// <summary>
 /// Adds to role tab.
 /// </summary>
 /// <param name="tabId">The tab identifier.</param>
 /// <returns></returns>
 public int?AddToRoleTab(int tabId)
 {
     using (var rep = UnitOfWork.RoleTabsRepository)
     {
         var newRoleTab = new RoleTabs
         {
             RoleID = Convert.ToInt32(DefaultRoleIDs.SysAdminRole),
             TabID  = tabId
         };
         var newId = rep.Create(newRoleTab);
         return(newId);
     }
 }