/// <summary>
        /// 页头
        /// </summary>
        /// <returns></returns>
        public ActionResult _Header(string spaceKey)
        {
            if (UserContext.CurrentUser != null)
            {
                MessageService messageService = new MessageService();
                InvitationService invitationService = new InvitationService();
                NoticeService noticeService = new NoticeService();

                long userId = UserIdToUserNameDictionary.GetUserId(UserContext.CurrentUser.UserName);
                int count = 0;
                count = invitationService.GetUnhandledCount(userId);
                count += messageService.GetUnreadCount(userId);
                count += noticeService.GetUnhandledCount(userId);
                ViewData["PromptCount"] = count;
            }

            //获取当前是在哪个应用下搜索
            RouteValueDictionary routeValueDictionary = Request.RequestContext.RouteData.DataTokens;
            string areaName = routeValueDictionary.Get<string>("area", null) + "Search";
            ViewData["search"] = areaName;

            //查询用于快捷搜索的搜索器
            IEnumerable<ISearcher> searchersQuickSearch = SearcherFactory.GetQuickSearchers(4);
            ViewData["searchersQuickSearch"] = searchersQuickSearch;

            NavigationService service = new NavigationService();
            ViewData["Navigations"] = service.GetRootNavigations(PresentAreaKeysOfBuiltIn.Channel).Where(n => n.IsVisible(UserContext.CurrentUser) == true);

            return PartialView();
        }
        public ActionResult _Menu_Main(string spaceKey)
        {
            long groupId = GroupIdToGroupKeyDictionary.GetGroupId(spaceKey);
            GroupEntity group = groupService.Get(groupId);
            if (group == null)
                return Content(string.Empty);

            ManagementOperationService managementOperationService = new ManagementOperationService();
            ViewData["ApplicationManagementOperations"] = managementOperationService.GetShortcuts(PresentAreaKeysOfBuiltIn.GroupSpace, false);

            NavigationService navigationService = new NavigationService();
            return View(navigationService.GetRootNavigations(PresentAreaKeysOfBuiltIn.GroupSpace, group.GroupId));
        }
        /// <summary>
        /// 页头
        /// </summary>
        /// <returns></returns>
        public ActionResult _Header()
        {
            NavigationService service = new NavigationService();

            if (RouteData.Values != null && RouteData.Values.ContainsKey("CurrentNavigationId"))
            {
                int currentNavigationId = Convert.ToInt32(RouteData.Values["CurrentNavigationId"].ToString());
                IEnumerable<int> currentNavigationPath = service.GetCurrentNavigationPath(PresentAreaKeysOfBuiltIn.ControlPanel, 0, currentNavigationId);
                if (currentNavigationPath != null && currentNavigationPath.Count() > 0)
                    ViewData["CurrentNavigationId"] = currentNavigationPath.First();
            }

            ViewData["rootnavigations"] = service.GetRootNavigations(PresentAreaKeysOfBuiltIn.ControlPanel);

            return View();
        }
        /// <summary>
        /// 侧边菜单
        /// </summary>
        /// <returns></returns>
        public ActionResult _AsideMenu()
        {
            NavigationService service = new NavigationService();
            int currentNavigationId = RouteData.Values.Get<int>("CurrentNavigationId", 0);

            IEnumerable<Navigation> navigations = null;
            if (currentNavigationId > 0)
            {
                IEnumerable<int> currentNavigationPath = service.GetCurrentNavigationPath(PresentAreaKeysOfBuiltIn.ControlPanel, 0, currentNavigationId);
                IEnumerable<Navigation> rootNavigations = service.GetRootNavigations(PresentAreaKeysOfBuiltIn.ControlPanel);

                Navigation parentNavigation = null;
                int parentNavigationId = 0;
                if (currentNavigationPath.Count() > 1)
                {
                    parentNavigationId = currentNavigationPath.ElementAt(currentNavigationPath.Count() - 2);
                }
                else if (currentNavigationPath.Count() == 1)
                {
                    parentNavigationId = currentNavigationPath.First();
                }

                parentNavigation = service.GetNavigation(PresentAreaKeysOfBuiltIn.ControlPanel, parentNavigationId);
                if (parentNavigation != null)
                {
                    if (parentNavigation.Depth > 0)
                    {
                        Navigation navigation = service.GetNavigation(PresentAreaKeysOfBuiltIn.ControlPanel, parentNavigation.ParentNavigationId);
                        navigations = navigation.Children;
                    }
                    else
                    {
                        navigations = parentNavigation.Children;
                    }
                }
            }

            return View(navigations);
        }
        public ActionResult _TopicMenu(string spaceKey)
        {
            long topicId = TopicIdToTopicKeyDictionary.GetTopicId(spaceKey);
            TopicEntity topic = topicService.Get(topicId);
            if (topic == null)
                return Content(string.Empty);

            int currentNavigationId = RouteData.Values.Get<int>("CurrentNavigationId", 0);
            IEnumerable<Navigation> navigations = new List<Navigation>();

            NavigationService navigationService = new NavigationService();
            Navigation navigation = navigationService.GetNavigation(PresentAreaKeysOfExtension.TopicSpace, currentNavigationId, topic.TopicId);

            if (navigation != null && navigation.Children.Count() > 0)
            {
                navigations = navigation.Children;
            }
            else
            {
                navigations = navigationService.GetRootNavigations(PresentAreaKeysOfExtension.TopicSpace, topic.TopicId);
            }

            return View(navigations);
        }
        /// <summary>
        /// 专题空间主导航
        /// </summary>
        /// <param name="spaceKey">专题空间标识</param>
        /// <returns></returns>
        //[HttpGet]
        public ActionResult _Menu_Main(string spaceKey)
        {
            long topicId = TopicIdToTopicKeyDictionary.GetTopicId(spaceKey);
            TopicEntity topic = topicService.Get(topicId);
            if (topic == null)
                return Content(string.Empty);

            ManagementOperationService managementOperationService = new ManagementOperationService();
            ViewData["ApplicationManagementOperations"] = managementOperationService.GetShortcuts(PresentAreaKeysOfExtension.TopicSpace, false);

            NavigationService navigationService = new NavigationService();
            return View(navigationService.GetRootNavigations(PresentAreaKeysOfExtension.TopicSpace, topic.TopicId));
        }
示例#7
0
        public ActionResult _GroupMenu(string spaceKey)
        {
            long groupId = GroupIdToGroupKeyDictionary.GetGroupId(spaceKey);
            GroupEntity group = groupService.Get(groupId);
            if (group == null)
                return Content(string.Empty);

            int currentNavigationId = RouteData.Values.Get<int>("CurrentNavigationId", 0);
            IEnumerable<Navigation> navigations = new List<Navigation>();

            NavigationService navigationService = new NavigationService();
            Navigation navigation = navigationService.GetNavigation(PresentAreaKeysOfBuiltIn.GroupSpace, currentNavigationId, group.GroupId);

            if (navigation != null && navigation.Children.Count() > 0)
            {
                navigations = navigation.Children;
            }
            else
            {
                navigations = navigationService.GetRootNavigations(PresentAreaKeysOfBuiltIn.GroupSpace, group.GroupId);
            }

            return View(navigations);
        }