Example #1
0
        public async Task <ActionResult> Results(string q)
        {
            Tuple <List <NoticeBoardViewModel>, List <NoticeViewModel> > results = new Tuple <List <NoticeBoardViewModel>, List <NoticeViewModel> >(
                new List <NoticeBoardViewModel>(),
                new List <NoticeViewModel>()
                );

            using (NoticeBoardManager m = new NoticeBoardManager())
            {
                var boards = await m.SearchAsync(q);

                foreach (var i in boards)
                {
                    results.Item1.Add(NoticeBoardMappings.To <NoticeBoardViewModel>(i));
                }
            }

            using (NoticeManager m = new NoticeManager())
            {
                var notices = await m.SearchAsync(q);

                foreach (var i in notices)
                {
                    results.Item2.Add(NoticeMappings.To <NoticeViewModel>(i));
                }
            }

            return(View(results));
        }
Example #2
0
        public async Task <IHttpActionResult> Unsubscribe(int id)
        {
            try
            {
                using (NoticeBoardManager db = new NoticeBoardManager())
                {
                    var board = await db.GetAsync(id);

                    RelationshipManager rm = new RelationshipManager();
                    int result             = await rm.DeleteAsync(
                        new UserNoticeBoardFollow
                    {
                        NoticeBoardId = id,
                        UserId        = (await User.Identity.GetApplicationUserAsync()).Id
                    }
                        );

                    if (result > 0)
                    {
                        return(Ok(JsonViewModel.Success));
                    }
                }
            }
            catch
            {
                return(InternalServerError());
            }
            return(NotFound());
        }
Example #3
0
        public async Task <IHttpActionResult> Get(int id)
        {
            NoticeBoardManager nm = new NoticeBoardManager();

            var nb = await nm.GetAsync(id);

            if (nb == null)
            {
                return(NotFound());
            }

            return(Ok(BoardViewModel.From(nb)));
        }
Example #4
0
        public async Task <IEnumerable <BoardViewModel> > Get()
        {
            NoticeBoardManager nbm = new NoticeBoardManager();
            var boards             = await nbm.GetAsync();

            List <BoardViewModel> vmlist = new List <BoardViewModel>();

            foreach (var nb in boards)
            {
                vmlist.Add(BoardViewModel.From(nb));
            }
            return(vmlist);
        }
Example #5
0
        // GET: /Boards/NotSubscribed
        public async Task <IEnumerable <BoardViewModel> > NotSubscribed()
        {
            NoticeBoardManager nbm = new NoticeBoardManager();
            var boards             = await nbm.GetAsync();

            List <BoardViewModel> vmlist = new List <BoardViewModel>();

            foreach (var nb in boards)
            {
                if (!await User.Identity.IsSubscribedToAsync(nb.NoticeBoardId))
                {
                    vmlist.Add(BoardViewModel.From(nb));
                }
            }
            return(vmlist);
        }
Example #6
0
        public async Task <JsonResult> Boards(string q)
        {
            using (NoticeBoardManager m = new NoticeBoardManager())
            {
                var boards = await m.SearchAsync(q);

                var result = new List <SearchItemJVM>();
                foreach (var i in boards)
                {
                    result.Add(new SearchItemJVM {
                        value = i.Title, tokens = i.Title.Split(' ', ',', '.')
                    });
                }

                return(Json(result, JsonRequestBehavior.AllowGet));
            }
        }
Example #7
0
        public async Task <IHttpActionResult> Subscribe(int id)
        {
            using (NoticeBoardManager db = new NoticeBoardManager())
            {
                var board = await db.GetAsync(id);

                RelationshipManager rm = new RelationshipManager();
                int result             = await rm.AddAsync(
                    new UserNoticeBoardFollow
                {
                    NoticeBoardId = id,
                    UserId        = (await User.Identity.GetApplicationUserAsync()).Id
                }
                    );

                if (result > 0)
                {
                    return(Ok(JsonViewModel.Success));
                }

                // shouldn't reach here unless a concurrency issue occurs
                return(InternalServerError());
            }
        }
Example #8
0
 static NoticeBoard()
 {
     NoticeBoardManager.RegisterNoticeBoard(handlers);
 }
Example #9
0
 public Note()
 {
     ID = NoticeBoardManager.NextNoteID();
 }