Ejemplo n.º 1
0
        public ActionResult ClearDailyContent()
        {
            var context = GlobalHost.ConnectionManager.GetHubContext<ChatHub>();

            var repo = new PostElementRepository();
            repo.DeleteAllDailyPosts();

            context
                .Clients
                .All
                .clearDailyContent();

            return RedirectToAction("Index", "SecretGate");
        }
Ejemplo n.º 2
0
        public ActionResult PushImageToLeftBar(string imagePath)
        {
            var currentUser = User.Identity.Name;
            var postElement = PostElementFactory.Image(imagePath, currentUser);

            var repo = new PostElementRepository();
            repo.InsertDailyPost(postElement);

            var context = GlobalHost.ConnectionManager.GetHubContext<ChatHub>();
            context
                .Clients
                .All
                .pushImageToLeftBar(JsonConvert.SerializeObject(postElement));

            return RedirectToAction("Index", "SecretGate");
        }
Ejemplo n.º 3
0
        public ActionResult PushContentToRightBar(string content)
        {
            var currentUser = User.Identity.Name;
            var postElement = PostElementFactory.Content(content, currentUser);

            var repo = new PostElementRepository();
            repo.InsertTechnologyRadarPost(postElement);

            var context = GlobalHost.ConnectionManager.GetHubContext<ChatHub>();
            context
                .Clients
                .All
                .pushMessageToRightBar(JsonConvert.SerializeObject(postElement));

            return RedirectToAction("Index", "SecretGate");
        }
Ejemplo n.º 4
0
        public ActionResult ReloadContentColumns()
        {
            var context = GlobalHost.ConnectionManager.GetHubContext<ChatHub>();
            var repo = new PostElementRepository();
            var dailyPostElements = repo.GetAllDailyPostElements();

            foreach (var postElement in dailyPostElements)
            {
                switch (postElement.Type)
                {
                    case Constants.PostElementTypes.Content:
                        UserGroup(context).pushMessageToLeftBar(JsonConvert.SerializeObject(postElement));
                        break;

                    case Constants.PostElementTypes.Image:
                        UserGroup(context).pushImageToLeftBar(JsonConvert.SerializeObject(postElement));
                        break;

                    case Constants.PostElementTypes.Link:
                        UserGroup(context).pushLinkToLeftBar(JsonConvert.SerializeObject(postElement));
                        break;
                }
            }

            var technologyRadarElements = repo.GetAllTechnologyRadarPostElements();
            foreach (var postElement in technologyRadarElements)
            {
                switch (postElement.Type)
                {
                    case Constants.PostElementTypes.Content:
                        UserGroup(context).pushMessageToRightBar(JsonConvert.SerializeObject(postElement));
                        break;

                    case Constants.PostElementTypes.Image:
                        UserGroup(context).pushImageToRightBar(JsonConvert.SerializeObject(postElement));
                        break;

                    case Constants.PostElementTypes.Link:
                        UserGroup(context).pushLinkToRightBar(JsonConvert.SerializeObject(postElement));
                        break;
                }
            }

            return new EmptyResult();
        }