Exemplo n.º 1
0
        public TransactionObject CreateNewTopic(NewTopicFormData ntfd)
        {
            TransactionObject response = new TransactionObject();

            try
            {
                Lesson selectedLesson = lessonManager.GetLesson(ntfd.LessonID);
                User   currentUser    = userManager.GetUser(ntfd.UserID);

                Topic newTopic = new Topic();
                newTopic.Name   = ntfd.TopicName;
                newTopic.Lesson = selectedLesson;
                selectedLesson.Topics.Add(newTopic);

                Post post = new Post();
                post.Topic = newTopic;
                newTopic.Posts.Add(post);

                post.Content  = ntfd.Content;
                post.PostDate = DateTime.Now;

                post.Lesson = selectedLesson;
                selectedLesson.Posts.Add(post);

                SentFeeds sf = currentUser.SentFeeds;

                if (sf == null)
                {
                    sf      = new SentFeeds();
                    sf.User = currentUser;
                    currentUser.SentFeeds = sf;
                }
                sf.SentTopics.Add(newTopic);
                newTopic.SentFeed = sf;

                sf.SentPosts.Add(post);
                post.SentFeed = sf;

                if (sf == null)
                {
                    sentFeedManager.AddSentFeed(sf);
                }


                topicManager.AddTopic(newTopic);
                postManager.AddPost(post);
                uow.Save();
                response.IsSuccess   = true;
                response.Explanation = newTopic.ID.ToString();
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.Explanation = base.GetExceptionMessage(ex);
            }
            return(response);
        }
Exemplo n.º 2
0
        public void AddPost_Performs_Expected_Work()
        {
            SetUp();
            Post post = new Post();

            var expected = sut.AddPost(post);

            Assert.That(expected, Contains.Item(post));
        }
Exemplo n.º 3
0
        public ActionResult CreatePost(PostVM model, HttpPostedFileBase upload)
        {
            var mgr        = new PostManager();
            var catManager = new CategoryManager();
            var post       = new Post();

            var filePath = "~/images/";

            filePath = Server.MapPath(filePath);
            upload.SaveAs(filePath + upload.FileName);

            post.PostImageFileName = (upload.FileName);
            post.PostTitle         = model.PostTitle;
            post.PostBody          = model.PostBody;
            post.PostCategory      = catManager.GetCategoryById(int.Parse(model.PostCategoryId)).Payload;
            post.PostTags          = new List <Tag>()
            {
                new Tag()
                {
                    TagName = "Test"
                }
            };

            var response = mgr.AddPost(post);

            if (response.Success == false)
            {
                throw new Exception();
            }

            model.ResetDropdown();
            return(View(model));
        }
Exemplo n.º 4
0
        public async Task <IHttpActionResult> Add(string token, Post post)
        {
            if (string.IsNullOrEmpty(token) || post == null)
            {
                return(BadRequest("Token or post missing."));
            }

            string userId = await Utils.VerifyAndDecrypt(token);

            if (string.IsNullOrEmpty(userId))
            {
                return(BadRequest("Token not valid."));
            }

            try
            {
                _postMng.AddPost(userId, post);
                return(Ok());
            }
            catch (IncorrectDetailsException e)
            {
                return(BadRequest(e.Message));
            }
            catch (Exception e)
            {
                return(Content(HttpStatusCode.InternalServerError, e.Message));
            }
        }
Exemplo n.º 5
0
        public ActionResult CreateSubmission(SubmissionVM model)
        {
            var mgr        = new PostManager();
            var catManager = new CategoryManager();
            var sub        = new Post();

            sub.PostTitle         = model.SubmissionTitle;
            sub.PostBody          = model.SubmissionBody;
            sub.PostCategory      = catManager.GetCategoryById(int.Parse(model.SubmissionCategoryId)).Payload;
            sub.PostImageFileName = "placeholder.png";
            sub.PostTags          = new List <Tag>()
            {
                new Tag()
                {
                    TagName = "Test"
                }
            };
            sub.PostState = PostState.Pending;
            sub.Username  = User.Identity.Name;
            var response = mgr.AddPost(sub);

            if (response.Success == false)
            {
                throw new Exception();
            }

            model.ResetDropdown();
            return(View(model));
        }
 public async Task <IActionResult> Create([Bind("Id,Title,Content")] PostModel postModel)
 {
     if (ModelState.IsValid)
     {
         _postManager.AddPost(postModel);
         return(RedirectToAction(nameof(Index)));
     }
     return(View(postModel));
 }
Exemplo n.º 7
0
        // Adds a post to the database
        public int CreatePost(string userName, DateTime postDate, string title, string postText,
                              bool isMain, int?mainReferencePostID, bool ContainsImage)
        {
            PostManager Manager = new PostManager();
            int         PostID  = Manager.AddPost(userName, postDate, title, postText,
                                                  isMain, mainReferencePostID, ContainsImage);

            return(PostID);
        }
Exemplo n.º 8
0
        public ActionResult AddPost(Post aPost)
        {
            User aUser = (User)Session["User"];


            aPost.ImageName = Path.GetFileNameWithoutExtension(aPost.ImageFile.FileName);
            string extension = Path.GetExtension(aPost.ImageFile.FileName);

            aPost.ImageName = aPost.ImageName + DateTime.Now.ToString("yymmssfff") + extension;
            aPost.ImagePath = "~/Image/" + aPost.ImageName;
            aPost.ImageName = Path.Combine(Server.MapPath("~/Image/"), aPost.ImageName);
            aPost.ImageFile.SaveAs(aPost.ImageName);

            aPostManager.AddPost(aPost, aUser.Id);

            ViewBag.categories = aPostManager.GetAllCategory();
            ModelState.Clear();
            ViewBag.Result = "Post Added";
            return(View("AddedPost"));
        }
Exemplo n.º 9
0
        public void ProcessRequest(HttpContext context)
        {
            HttpRequest request = context.Request;
            //http://localhost:32030/SL/AjaxCallHandler.ashx?action= action is one of the below conditions in switch
            //e.g.http://localhost:32030/SL/AjaxCallHandler.ashx?action=getcategories

            string       action       = request.Params["action"];
            StreamReader sr           = new StreamReader(request.InputStream);
            string       jsonString   = sr.ReadToEnd();
            string       responseJson = "";
            IEnumerable <CategoryData> cd;

            switch (action.ToLower())
            {
            case "getcategories":
                #region getcategories

                /*
                 * post json
                 * {
                 *  "PageSize":"10",
                 *  "PageIndex":"0"
                 * }
                 */
                responseJson = JSONHelper.ToJsonString(_categoryManager.GetCategories(JSONHelper.ToObject <CategoryData>(jsonString)));
                break;

                #endregion
            case "getcategory":
                #region getcategory
                responseJson = JSONHelper.ToJsonString(_categoryManager.GetCategory(JSONHelper.ToObject <CategoryData>(jsonString)));
                #endregion
                break;

            case "addcategory":
                #region addcategory

                /*
                 * post json
                 * {
                 *  "categoryname":"xxxx",
                 *  "description":"aaaa"
                 * }
                 */
                #endregion
                responseJson = JSONHelper.ToJsonString(_categoryManager.AddCategory(JSONHelper.ToObject <CategoryData>(jsonString)));
                break;

            case "updatecategory":
                #region updatecategory
                responseJson = JSONHelper.ToJsonString(_categoryManager.UpdateCategory(JSONHelper.ToObject <CategoryData>(jsonString)));
                #endregion
                break;

            case "deletecategory":
                #region deletecategory
                responseJson = JSONHelper.ToJsonString(_categoryManager.DeleteCategory((int)JSONHelper.ToObject <CategoryData>(jsonString).id));
                #endregion
                break;

            case "getposts":
                #region getposts
                var postsTemp = _postManager.GetPosts(JSONHelper.ToObject <PostData>(jsonString));
                cd = _categoryManager.GetCategories(new CategoryData()).DataList as IEnumerable <CategoryData>;
                IEnumerable <PostData> posts = postsTemp.DataList as IEnumerable <PostData>;
                foreach (PostData p in posts)
                {
                    foreach (CategoryData c in cd)
                    {
                        if (p.categoryid == c.id)
                        {
                            p.categoryname = c.categoryname;
                        }
                    }
                }
                responseJson = JSONHelper.ToJsonString(postsTemp);
                #endregion
                break;

            case "getpost":
                #region getpost
                var post = _postManager.GetPost(JSONHelper.ToObject <PostData>(jsonString));
                cd = _categoryManager.GetCategories(new CategoryData()).DataList as IEnumerable <CategoryData>;
                foreach (CategoryData c in cd)
                {
                    if (c.id == post.categoryid)
                    {
                        post.categoryname = c.categoryname;
                    }
                }
                responseJson = JSONHelper.ToJsonString(post);
                #endregion
                break;

            case "deletepost":
                #region deletepost
                responseJson = JSONHelper.ToJsonString(_postManager.DeletePost((int)JSONHelper.ToObject <PostData>(jsonString).id));
                #endregion
                break;

            case "updatepost":
                #region updatepost
                responseJson = JSONHelper.ToJsonString(_postManager.UpdatePost(JSONHelper.ToObject <PostData>(jsonString)));
                #endregion
                break;

            case "addpost":
                #region addpost
                responseJson = JSONHelper.ToJsonString(_postManager.AddPost(JSONHelper.ToObject <PostData>(jsonString)));
                #endregion
                break;

            case "getpages":
                #region getpages
                responseJson = JSONHelper.ToJsonString(_pageManager.GetPages(JSONHelper.ToObject <PageData>(jsonString)));
                #endregion
                break;

            case "getpage":
                #region getpage
                responseJson = JSONHelper.ToJsonString(_pageManager.GetPage(JSONHelper.ToObject <PageData>(jsonString)));
                #endregion
                break;

            case "deletepage":
                #region deletepage
                responseJson = JSONHelper.ToJsonString(_pageManager.DeletePage((int)JSONHelper.ToObject <PageData>(jsonString).id));
                #endregion
                break;

            case "updatepage":
                #region updatepost
                responseJson = JSONHelper.ToJsonString(_pageManager.UpdatePage(JSONHelper.ToObject <PageData>(jsonString)));
                #endregion
                break;

            case "addpage":
                #region addpost
                responseJson = JSONHelper.ToJsonString(_pageManager.AddPage(JSONHelper.ToObject <PageData>(jsonString)));
                #endregion
                break;

            case "adduser":
                #region adduser
                responseJson = JSONHelper.ToJsonString(_userManager.AddUser(JSONHelper.ToObject <UserData>(jsonString)));
                #endregion
                break;

            case "updateuser":
                #region updateuser
                responseJson = JSONHelper.ToJsonString(_userManager.UpdateUser(JSONHelper.ToObject <UserData>(jsonString)));
                #endregion
                break;

            case "getuser":
                #region getuser
                responseJson = JSONHelper.ToJsonString(_userManager.GetUser(JSONHelper.ToObject <UserData>(jsonString)));
                #endregion
                break;

            case "getusers":
                #region getusers
                responseJson = JSONHelper.ToJsonString(_userManager.GetUsers(JSONHelper.ToObject <UserData>(jsonString)));
                #endregion
                break;

            case "deleteuser":
                #region deleteuser
                responseJson = JSONHelper.ToJsonString(_userManager.DeleteUser((int)JSONHelper.ToObject <UserData>(jsonString).id));
                #endregion
                break;
            }
            context.Response.Write(responseJson);
        }