Beispiel #1
0
        public IActionResult GetPostsList(int departmentProfileId)
        {
            List <PostJson> postJson   = new List <PostJson>();
            var             posts      = _departmentProfileService.GetArticlesForDepartment(departmentProfileId);
            var             department = _departmentsService.GetDepartmentById(DepartmentId);

            foreach (var article in posts)
            {
                var post = new PostJson();
                post.Id         = article.DepartmentProfileArticleId;
                post.Title      = article.Title;
                post.Body       = article.Body;
                post.SmallImage = article.SmallImage;
                post.LargeImage = article.LargeImage;
                post.CreatedOn  = article.CreatedOn.FormatForDepartment(department, true);

                if (article.ExpiresOn.HasValue)
                {
                    post.ExpiresOn = article.ExpiresOn.Value.FormatForDepartment(department, true);
                }
                else
                {
                    post.ExpiresOn = "Never";
                }

                post.CreatedBy = UserHelper.GetFullNameForUser(article.CreatedByUserId);

                postJson.Add(post);
            }

            return(Json(postJson));
        }
        public void PostsSearchRoot_GetJson_SuccessWithoutExceptions()
        {
            // https://derpibooru.org/api/v1/json/search/posts?q=id:4236623
            var uri = _baseUri.AppendPathSegment("/search/posts").SetQueryParam("q", "id:4236623");
            PostSearchRootJson postsRoot = null;
            PostJson           post      = null;

            Func <Task> act = async() =>
            {
                var json = await uri.GetStringAsync();

                postsRoot = JsonSerializer.Deserialize <PostSearchRootJson>(json);
                post      = postsRoot.Posts.First();
            };

            act.Should().NotThrow();
            postsRoot.Should().NotBeNull();

            // Property validation
            post.Author.Should().Be("Havock");
            post.AvatarUri.Should().Be("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjUiIGhlaWdodD0iMTI1IiB2aWV3Qm94PSIwIDAgMTI1IDEyNSIgY2xhc3M9ImF2YXRhci1zdmciPjxyZWN0IHdpZHRoPSIxMjUiIGhlaWdodD0iMTI1IiBmaWxsPSIjYzZkZmYyIi8+PHBhdGggZD0iTTE1LjQ1NiAxMDkuMTVDMTIuMDIgOTcuODA1IDYuNDQgOTUuMDM2LS43OTQgOTguODl2MTkuMTAyYzUuMTMtMTAuMDkgMTAuMjYzLTguMjk0IDE1LjM5NS01LjciIGZpbGw9IiM1Q0E1QUYiLz48cGF0aCBkPSJNNzMuMDU0IDI0LjQ2YzI1Ljg4NiAwIDM5LjE0NCAyNi4zOSAyOC45MTYgNDQuOTUgMS4yNjMuMzggNC45MjQgMi4yNzQgMy40MSA0LjgtMS41MTYgMi41MjUtNy41NzcgMTYuMjg4LTI3Ljc4IDE0Ljc3My0xLjAxIDYuNDQtLjMzIDEyLjYxMyAxLjY0MiAyMi44NTQgMS4zOSA3LjIyNC0uNjMyIDE0LjY0OC0uNjMyIDE0LjY0OHMtNDcuNzg1LjIxNi03My43NC0uMTI3Yy0xLjg4My02LjM4NyA4Ljk2NC0yNS43NiAyMC44MzMtMjQuNzQ4IDE1LjY3NCAxLjMzNCAxOS4xOTMgMS42NCAyMS41OTItMi4wMiAyLjQtMy42NjIgMC0yMy4yMzQtMy41MzUtMzAuODEtMy41MzYtNy41NzctNy44My00MC43ODUgMjkuMjk0LTQ0LjMyeiIgZmlsbD0iIzdBQUY0QyIvPjxwYXRoIGQ9Ik01Mi4xMDMgMjMuNDNDNzAuMTIgMS42NjggOTcuMTI2IDIuODkgMTEwLjE0IDE2Ljk5OGMyNy45MyAzMC4yNy0xNS42NzYgNDMuNjYyLTE4Ljk1MiAyMS44NjgtMTIuOTM0LTQuNDUzLTIzLjIyLTMuOTU2LTM0LjEzLTIuNzQ3TDUxLjEyIDQ5LjI2Yy41NTcgMjMuMjQgMTcuNzg3IDI2Ljg3NiAyMi44ODcgNDEuMzE1IDQuMTI0IDExLjY3Ny01LjMyNSAxNC4wNzUtOS40MDQgMTIuNjU2IDQuNjIyIDE3LjY2OC0xMi4wMjIgMjQuMy0yMC4wMDMgNy40LTEuNzk3LTMuOC0yLjgxLTE0LjgxMyAzLjY3Mi0xNC41MS0zLjE4Mi0xNi43ODQtMTcuNDUtMzguMjg1LTIuNDMtNjMuNzV6IiBmaWxsPSIjNUNBNUFGIi8+PHBhdGggZD0iTTY0LjM0MiAzNS41N3MzLjI4My04LjA4LTcuMzI0LTE5LjMxOGMtMS43NjgtMS43NjgtMy4wMy0yLjI3My00LjY3Mi0uNzU4LTEuNjQgMS41MTUtMTcuMDQ2IDE2LjAzNi4yNTMgMzguMjYuNTA0LTIuNCAxLjEzNS05LjU5NyAxLjEzNS05LjU5N3oiIGZpbGw9IiM3QUFGNEMiLz48L3N2Zz4=");
            post.Body.Should().Contain("None can resist her cuteness.");
            post.CreatedAt.Should().Be(DateTime.Parse("2019-02-24T16:58:07"));
            post.EditReason.Should().BeNullOrEmpty();
            post.EditedAt.Should().BeNull();
            post.Id.Should().Be(4236623);
            post.UpdatedAt.Should().Be(DateTime.Parse("2019-02-24T16:58:07"));
            post.UserId.Should().Be(325550);
        }
Beispiel #3
0
 public static async Task <Item[]> Favor_Collect(string uid, string mid, string since, int size = 35)
 => PostJson.FromJson(await BcyJson.Favor_Collect(uid, mid, since, size)).Data.Items;
Beispiel #4
0
 public static async Task <Item[]> Post_Video(string mid, int page, string uid)
 => PostJson.FromJson(await BcyJson.Post_Article(mid, page, uid)).Data.Items;
 // Use this for initialization
 void Start()
 {
     share = camre.GetComponent <Share>();
     post  = camre.GetComponent <PostJson>();
 }
Beispiel #6
0
 void Start()
 {
     post      = camera.GetComponent <PostJson>();
     Limits[0] = ' ';
 }