コード例 #1
0
        static void Main(string[] args)
        {
            var manager = new PostsManager(new MockPostsService());
            //var manager = new PostsManager(new PostsService());

            var filtered = manager.FilterPosts();
        }
コード例 #2
0
    protected void btnTipsSave_Click(object sender, EventArgs e)
    {
        Posts post = new Posts(Session["CurrentUser"].ToString(), txtTitle.Text, txtTips.Text, 0);

        PostsManager.addPost(post);
        Response.Redirect("FoodItemList.aspx");
    }
コード例 #3
0
ファイル: TestPosts.cs プロジェクト: dev-pasa/LAB12-.NET-GRAM
        public async void DeletePost()
        {
            DbContextOptions <PostsDbContext> options = new DbContextOptionsBuilder <PostsDbContext>().UseInMemoryDatabase("ChangePosts").Options;

            using (PostsDbContext context = new PostsDbContext(options))
            {
                PostsManager postService = new PostsManager(context);
                Posts        post        = new Posts();
                post.Author   = "Cat";
                post.ImageURL = "test.img";
                post.Title    = "Seattle";
                await postService.SaveAsync(post);

                Posts post2 = new Posts();
                post.Author   = "Cat";
                post.ImageURL = "test.img";
                post.Title    = "Tacoma";
                await postService.SaveAsync(post);


                await postService.Delete(post2.ID);

                var result = await context.Post.FirstOrDefaultAsync(p => p.ID == post2.ID);

                Assert.Null(result);
            }
        }
コード例 #4
0
ファイル: PostsController.cs プロジェクト: mmsatari/Roomdash
        // GET api/posts/f12
        public IEnumerable <Post> Get(string topic)
        {
            var pm = new PostsManager();

            pm.Initialize();
            return(pm.GetPosts(topic));
        }
コード例 #5
0
ファイル: TestPosts.cs プロジェクト: dev-pasa/LAB12-.NET-GRAM
        public async void GetAllPosts()
        {
            DbContextOptions <PostsDbContext> options = new DbContextOptionsBuilder <PostsDbContext>().UseInMemoryDatabase("GetAllPosts").Options;

            using (PostsDbContext context = new PostsDbContext(options))
            {
                PostsManager postService = new PostsManager(context);
                Posts        post        = new Posts();
                post.Author   = "Cat";
                post.ImageURL = "test.img";
                post.Title    = "Seattle";
                await postService.SaveAsync(post);

                Posts postTwo = new Posts();
                post.Author   = "Cats";
                post.ImageURL = "test.img";
                post.Title    = "Seattle2";
                await postService.SaveAsync(postTwo);

                Posts postThree = new Posts();
                post.Author   = "Cat3";
                post.ImageURL = "test.img";
                post.Title    = "Seattle3";
                await postService.SaveAsync(postThree);

                var result = await postService.GetPosts();

                int count = result.Count;

                Assert.Equal(3, count);
            }
        }
コード例 #6
0
        public ActionResult AddPost(PostSubmissionVM post, string Categories)
        {
            Post postSubmit = new Post();

            postSubmit.CategoryId = int.Parse(Categories);
            postSubmit.PostBody   = post.Body;
            postSubmit.PostTitle  = post.Title;
            PostsManager manager = new PostsManager();

            Post virtaPost = postSubmit;

            virtaPost.PostId = manager.GetAll().Posts.Count() + 1;
            var regex   = new Regex(@"(?<=#)\w+");
            var matches = regex.Matches(post.Body);

            foreach (Match m in matches)
            {
                postSubmit.Tags.Add(new Tag {
                    TagName = "#" + m.Value, Posts = new List <Post> {
                        virtaPost
                    }
                });
            }

            if (User.IsInRole("Admin"))
            {
                postSubmit.IsApproved = true;
            }
            else
            {
                postSubmit.IsApproved = false;
            }
            manager.Add(postSubmit);
            return(RedirectToAction("Index", "Home"));
        }
コード例 #7
0
ファイル: Home.aspx.cs プロジェクト: SolaMuhammad/LinkedIn
        protected void btn_ViewPost_Click(object sender, EventArgs e)
        {
            Post post = PostsManager.GetByPostId(Convert
                                                 .ToInt32(txt_postId.Text));

            txt_postId.Text = post.Post_Content;
        }
コード例 #8
0
        public ActionResult DeletePost(string id)
        {
            PostsManager manager = new PostsManager();

            manager.Delete(int.Parse(id));
            return(RedirectToAction("Index", "Home"));
        }
コード例 #9
0
ファイル: HomeController.cs プロジェクト: Dinokin/WeebReader
 public HomeController(SignInManager <IdentityUser <Guid> > signInManager, PostsManager postsManager, EmailSender emailSender, ParametersManager parametersManager, ReCaptchaValidator reCaptchaValidator)
 {
     _signInManager      = signInManager;
     _postsManager       = postsManager;
     _emailSender        = emailSender;
     _parametersManager  = parametersManager;
     _reCaptchaValidator = reCaptchaValidator;
 }
コード例 #10
0
        public ActionResult ApprovePosts()
        {
            PostsManager manager  = new PostsManager();
            var          response = manager.GetByApproval(false);
            var          model    = response.Posts;

            return(View(model));
        }
コード例 #11
0
        public ActionResult Post(string id)
        {
            PostsManager manager  = new PostsManager();
            var          response = manager.GetById(int.Parse(id));
            var          model    = response.Posts.First();

            return(View(model));
        }
コード例 #12
0
    /// <summary>
    /// The AddVideoPost
    /// </summary>
    /// <param name="VId">The VId<see cref="string"/></param>
    protected void AddVideoPost(string VId)
    {
        //Add Video to posts
        Posts newPost = new Posts(Session["CurrentUser"].ToString(), "", VId, 1);

        PostsManager.addPost(newPost);
        DisplayHealthVideos();
    }
コード例 #13
0
    public BasePage()
    {
        connStr = ConfigurationManager.ConnectionStrings["savefood"].ConnectionString;

        _userManager    = new UserManager(connStr);
        _foodManager    = new FoodManager(connStr);
        _orderManager   = new OrderManager(connStr);
        _postsManager   = new PostsManager(connStr);
        _requestManager = new RequestManager(connStr);
    }
コード例 #14
0
        public ActionResult ApprovePost(string id)
        {
            PostsManager manager  = new PostsManager();
            var          response = manager.GetById(int.Parse(id));
            var          post     = response.Posts.First();

            post.IsApproved = true;
            manager.Edit(post);
            return(RedirectToAction("Panel", "Admin"));
        }
コード例 #15
0
        public ActionResult UpdatePost(string id, string title, string body)
        {
            PostsManager manager      = new PostsManager();
            var          response     = manager.GetById(int.Parse(id));
            var          postToUpdate = response.Posts.First();

            postToUpdate.PostTitle = title;
            postToUpdate.PostBody  = body;
            manager.Edit(postToUpdate);
            return(RedirectToAction("Index", "Home"));
        }
コード例 #16
0
ファイル: ReviewServices.cs プロジェクト: Stefoajc/RealEstate
        public async Task <ForumReviews> Create(ForumReviewCreateViewModel model, ReviewType reviewType, string reviewingUserId)
        {
            if (!await userManager.Users.AnyAsync(u => u.Id == reviewingUserId))
            {
                throw new ArgumentException("Не е намерен потребителят с който сте логнати!");
            }

            ForumReviews reviewToBeCreated;
            //review created by this user for this item which has to be deleted
            ForumReviews reviewAlreadyCreatedByThisUser;

            switch (reviewType)
            {
            case ReviewType.Post:
                if (!await PostsManager.Exists(model.ReviewedItemId))
                {
                    throw new ArgumentException("Постът, на който искате да направите ревю не съществува!");
                }

                reviewAlreadyCreatedByThisUser = await unitOfWork.ForumReviewsRepository.GetAll()
                                                 .OfType <PostReviews>()
                                                 .Where(r => r.UserId == reviewingUserId && r.PostId == model.ReviewedItemId)
                                                 .FirstOrDefaultAsync();

                reviewToBeCreated = Mapper.Map <PostReviews>(model, opts => opts.Items.Add("UserId", reviewingUserId));
                break;

            case ReviewType.Comment:
                if (!await CommentsManager.Exists(model.ReviewedItemId))
                {
                    throw new ArgumentException("Коментарът, на който искате да направите ревю не съществува!");
                }
                reviewAlreadyCreatedByThisUser = await unitOfWork.ForumReviewsRepository.GetAll()
                                                 .OfType <PostReviews>()
                                                 .Where(r => r.UserId == reviewingUserId && r.PostId == model.ReviewedItemId)
                                                 .FirstOrDefaultAsync();

                reviewToBeCreated = Mapper.Map <CommentReviews>(model, opts => opts.Items.Add("UserId", reviewingUserId));
                break;

            default:
                throw new ArgumentException("Не се поддържат Ревюта от избраният от вас тип!");
            }

            if (reviewAlreadyCreatedByThisUser != null)
            {
                unitOfWork.ForumReviewsRepository.Delete(reviewAlreadyCreatedByThisUser);
            }
            unitOfWork.ForumReviewsRepository.Add(reviewToBeCreated);
            await unitOfWork.SaveAsync();

            return(reviewToBeCreated);
        }
コード例 #17
0
        async Task OnDirectoryChanged()
        {
            CurrentPostIndex = 0;
            _posts           = await PostsManager.GetPostsAsync(Directory);

            OnPropertyChanged(nameof(PostsCount));
            if (_posts.Count > 0)
            {
                CurrentPostIndex = 1;
            }

            OnPropertyChanged(nameof(CurrentPost));
        }
コード例 #18
0
        public ActionResult EditPost(string id)
        {
            PostsManager manager  = new PostsManager();
            var          response = manager.GetById(int.Parse(id));

            if (response.Success)
            {
                var model = response.Posts.First();
                return(View(model));
            }
            else
            {
                return(RedirectToAction("Index", "Home"));
            }
        }
コード例 #19
0
ファイル: TestPosts.cs プロジェクト: dev-pasa/LAB12-.NET-GRAM
        public async void CreateEmptyPost()
        {
            DbContextOptions <PostsDbContext> options = new DbContextOptionsBuilder <PostsDbContext>().UseInMemoryDatabase("CreateEmptyPost").Options;

            using (PostsDbContext context = new PostsDbContext(options))
            {
                Posts post = new Posts();

                PostsManager postService = new PostsManager(context);
                await postService.SaveAsync(post);

                Posts result = await context.Post.FirstOrDefaultAsync(h => h.ID == post.ID);

                Assert.Null(result.Author);
            }
        }
コード例 #20
0
ファイル: TestPosts.cs プロジェクト: dev-pasa/LAB12-.NET-GRAM
        public async void ReadSinglePost()
        {
            DbContextOptions <PostsDbContext> options = new DbContextOptionsBuilder <PostsDbContext>().UseInMemoryDatabase("ReadPost").Options;

            using (PostsDbContext context = new PostsDbContext(options))
            {
                PostsManager postService = new PostsManager(context);
                Posts        post        = new Posts();
                post.Author   = "Cat";
                post.ImageURL = "test.img";
                post.Title    = "Seattle";
                await postService.SaveAsync(post);

                Posts result = await postService.GetSinglePost(post.ID);

                Assert.Equal(post, result);
            }
        }
コード例 #21
0
        public async Task <ActionResult> Upload(UploadPostViewModel model)
        {
            if (!(await Authorized()))
            {
                return(RedirectToAction("Login", "Account"));
            }
            if (!ModelState.IsValid)
            {
                return(View(model));
            }


            string uploadedImageUrl = null;

            if (model.ImageFile != null)
            {
                if (model.ImageFile.ContentLength > 1024 * 1024 * 4)
                {
                    ViewBag.UploadPostFormVisible = true;
                    AddError("Image file size must not exceed 4MB");

                    return(View(model));
                }
                else
                {
                    AmazonBucketClient client = new AmazonBucketClient();
                    uploadedImageUrl = client.UploadFile(model.ImageFile.InputStream, RandomString());
                }
            }

            var mentionedUserIds = System.Web.Helpers.Json.Decode <string[]>(model.JsonMentions);

            var result = await PostsManager.UploadPost(UserToken, new PostModel { Content = model.PostContent, ImageUrl = uploadedImageUrl, Mentions = mentionedUserIds, Permission = model.PostPermission });

            if (result)
            {
                return(RedirectToAction("Index", "Home"));
            }
            else
            {
                return(ErrorView("Post was not uploaded"));
            }
        }
コード例 #22
0
        public async Task <ActionResult> UploadComment(string postId)
        {
            if (!(await Authorized()))
            {
                return(AccountLogin());
            }

            var getMentionsResult = await AccountManager.GetUserIdsAndNames();

            if (getMentionsResult.Success)
            {
                ViewBag.Mentions = getMentionsResult.UserIdsAndNames ?? new List <UserIdAndName>();
            }
            else
            {
                ViewBag.Mentions = new List <UserIdAndName>();
            }

            ViewBag.Post = PostsManager.GetPostById(UserToken, postId);
            return(View());
        }
コード例 #23
0
        public async Task <ActionResult> Index()
        {
            if (!(await Authorized()))
            {
                return(AccountLogin());
            }

            var userDetails = await AccountManager.GetUserInfoAsync(UserToken);

            var postsResult = await PostsManager.GetUserFeed(UserToken);

            var profileVisitableUsers = await SocialManager.GetProfileVisitableUsers(UserToken);

            if (postsResult.Success && profileVisitableUsers.Success && userDetails != null)
            {
                await RefreshToken();

                return(View(new IndexViewModel(postsResult.Feed, profileVisitableUsers.Users, userDetails)));
            }
            else
            {
                return(ErrorView(postsResult.UserErrorMessage));
            }
        }
コード例 #24
0
        // GET api/posts/f12
        public IEnumerable <Post> Get(string topic)
        {
            var pm = new PostsManager(_projectList);

            return(pm.GetPosts(topic));
        }
コード例 #25
0
        public async Task <ActionResult> LikeComment(string commentId)
        {
            var likeResult = await PostsManager.LikeComment(UserToken, commentId);

            return(Json(likeResult));
        }
コード例 #26
0
 public void Setup()
 {
     postsManager = new PostsManager(connStr);
 }
コード例 #27
0
ファイル: RedditPostsAdmin.cs プロジェクト: kirch-47/wsb
 public RedditPostsAdmin(PostsManager postsManager, ILogger <RedditPostsAdmin> logger)
 {
     _postsManager = postsManager;
     _logger       = logger;
 }
コード例 #28
0
    protected void Page_Load(object sender, EventArgs e)
    {
        _postsManager = new PostsManager(connStr);

        txtTips.Attributes.Add("maxlength", txtTips.MaxLength.ToString());
    }
コード例 #29
0
 public PostsController()
 {
     _postsManager = new PostsManager();
 }
コード例 #30
0
ファイル: SDK.cs プロジェクト: SudaSource/Tamargy
 public SDK()
 {
     Worker       = new Worker(context: DataCtx.Create());
     UsersManager = new UsersManager(Worker);
     PostsManager = new PostsManager(Worker);
 }