public static string getClone(int postPublicID, string web)
        {
            var postWordpressList = PostCloneController.Get(postPublicID, web);

            if (postWordpressList != null)
            {
                return(JsonConvert.SerializeObject(postWordpressList));
            }

            return("null");
        }
        public static string createClone(string web, int postPublicID)
        {
            // Kiểm tra post clone tồn tại chưa
            var postClone = PostCloneController.Get(postPublicID, web);

            if (postClone != null)
            {
                return("existPostClone");
            }

            // Kiểm tra post public tồn tại không
            var postPublic = PostPublicController.GetByID(postPublicID);

            if (postClone != null)
            {
                return("notExistPostPublic");
            }

            string categoryName = "";

            // Lấy danh mục bài viết
            if (postPublic.CategoryID != 0)
            {
                var category = PostPublicCategoryController.GetByID(postPublic.CategoryID);
                categoryName = category.Name;
            }

            // Tạo post clone
            var newPostClone = new PostClone()
            {
                PostPublicID = postPublicID,
                Web          = web,
                PostWebID    = 0,
                CategoryID   = postPublic.CategoryID,
                CategoryName = categoryName,
                Title        = postPublic.Title,
                Content      = postPublic.Content,
                Summary      = postPublic.Summary,
                Thumbnail    = postPublic.Thumbnail,
                CreatedDate  = DateTime.Now,
                CreatedBy    = postPublic.CreatedBy,
                ModifiedBy   = postPublic.ModifiedBy
            };
            var createPostClone = PostCloneController.Insert(newPostClone);

            if (createPostClone != null)
            {
                return(JsonConvert.SerializeObject(createPostClone));
            }

            return("null");
        }
        public static string deletePost(int id)
        {
            var    post   = PostPublicController.GetByID(id);
            string result = "";

            if (post != null)
            {
                // Delete image gallery
                var postImage = PostPublicImageController.GetByPostID(post.ID);
                if (postImage.Count > 0)
                {
                    foreach (var img in postImage)
                    {
                        if (!string.IsNullOrEmpty(img.Image))
                        {
                            // Delete in database
                            string deletePostImage = PostPublicImageController.Delete(img.ID);
                        }
                    }
                }

                string deletePost = PostPublicController.Delete(id);

                if (!string.IsNullOrEmpty(deletePost))
                {
                    result = "success";
                }
                else
                {
                    result = "failed";
                }

                // Delete clone
                var postClone = PostCloneController.GetAll(id);
                if (postClone.Count > 0)
                {
                    foreach (var item in postClone)
                    {
                        PostCloneController.Delete(item.ID);
                    }
                }
            }
            else
            {
                result = "notfound";
            }

            return(result);
        }
Example #4
0
        public void LoadData()
        {
            int id = Request.QueryString["id"].ToInt(0);

            if (id > 0)
            {
                var p = PostPublicController.GetByID(id);
                if (p == null)
                {
                    PJUtils.ShowMessageBoxSwAlertError("Không tìm thấy bài viết " + id, "e", true, "/danh-sach-bai-viet-app", Page);
                }
                else
                {
                    this.Title = String.Format("{0} - Sửa bài viết App", p.Title.ToTitleCase());

                    ViewState["ID"]     = id;
                    ViewState["cateID"] = p.CategoryID;
                    hdfParentID.Value   = p.CategoryID.ToString();
                    ltrBack.Text        = "<a href='/xem-bai-viet-app?id=" + p.ID + "' class='btn primary-btn fw-btn not-fullwidth'><i class='fa fa-arrow-left' aria-hidden='true'></i> Trở về</a>";
                    ltrBack2.Text       = ltrBack.Text;
                    txtTitle.Text       = p.Title;
                    if (p.Action == "show_web")
                    {
                        txtLink.Text = p.ActionValue;
                    }
                    else if (p.Action == "view_more")
                    {
                        txtSlug.Text = p.ActionValue;
                    }
                    ddlCategory.SelectedValue = p.CategoryID.ToString();
                    ddlAction.SelectedValue   = p.Action.ToString();
                    hdfAction.Value           = p.Action.ToString();
                    ddlAtHome.SelectedValue   = p.AtHome.ToString();
                    ddlIsPolicy.SelectedValue = p.IsPolicy.ToString();
                    pSummary.Content          = p.Summary;
                    pContent.Content          = p.Content;
                    if (p.Thumbnail != null)
                    {
                        ListPostPublicThumbnail.Value = p.Thumbnail;
                        PostPublicThumbnail.ImageUrl  = p.Thumbnail;
                    }

                    var image = PostPublicImageController.GetByPostID(id);
                    imageGallery.Text = "<ul class='image-gallery'>";
                    if (image != null)
                    {
                        foreach (var img in image)
                        {
                            imageGallery.Text += "<li><img src='" + img.Image + "'><a href='javascript:;' data-image-id='" + img.ID + "' onclick='deleteImageGallery($(this))' class='btn-delete'><i class='fa fa-times' aria-hidden='true'></i> Xóa hình</a></li>";
                        }
                    }
                    imageGallery.Text += "</ul>";

                    string PostInfo = "<p><strong>Ngày tạo</strong>: " + p.CreatedDate + "</p>";
                    PostInfo        += "<p><strong>Người viết</strong>: " + p.CreatedBy + "</p>";
                    PostInfo        += "<p><strong>Ngày cập nhật</strong>: " + p.ModifiedDate + "</p>";
                    PostInfo        += "<p><strong>Người cập nhật</strong>: " + p.ModifiedBy + "</p>";
                    ltrPostInfo.Text = PostInfo;

                    hdfPostVariants.Value = PostCloneController.getFeesJSON(id);
                }
            }
        }
Example #5
0
        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            string   username    = Request.Cookies["usernameLoginSystem"].Value;
            var      acc         = AccountController.GetByUsername(username);
            DateTime currentDate = DateTime.Now;

            int PostID = ViewState["ID"].ToString().ToInt(0);
            var post   = PostPublicController.GetByID(PostID);

            if (post != null)
            {
                int    CategoryID   = hdfParentID.Value.ToInt();
                var    category     = PostPublicCategoryController.GetByID(CategoryID);
                string CategorySlug = category.Slug;
                string Title        = txtTitle.Text.Trim();
                string Slugs        = Slug.ConvertToSlug(txtSlug.Text.Trim());
                string Link         = txtLink.Text.Trim();
                string Content      = pContent.Content.ToString();
                string Summary      = HttpUtility.HtmlDecode(pSummary.Content.ToString());
                string Action       = ddlAction.SelectedValue.ToString();
                string ActionValue  = "";
                if (Action == "view_more")
                {
                    ActionValue = Slugs;
                }
                else if (Action == "show_web")
                {
                    ActionValue = Link;
                }
                bool AtHome   = ddlAtHome.SelectedValue.ToBool();
                bool IsPolicy = ddlIsPolicy.SelectedValue.ToBool();

                //Phần thêm ảnh đại diện sản phẩm
                string path      = "/uploads/images/posts/";
                string Thumbnail = ListPostPublicThumbnail.Value;
                if (PostPublicThumbnailImage.UploadedFiles.Count > 0)
                {
                    foreach (UploadedFile f in PostPublicThumbnailImage.UploadedFiles)
                    {
                        var o = path + "post-app-" + PostID + '-' + Slug.ConvertToSlug(Path.GetFileName(f.FileName), isFile: true);
                        try
                        {
                            f.SaveAs(Server.MapPath(o));
                            Thumbnail = o;
                        }
                        catch { }
                    }
                }

                // Delete Image Gallery
                string deleteImageGallery = hdfDeleteImageGallery.Value;
                if (deleteImageGallery != "")
                {
                    string[] deletelist = deleteImageGallery.Split(',');

                    for (int i = 0; i < deletelist.Length - 1; i++)
                    {
                        var img = PostPublicImageController.GetByID(Convert.ToInt32(deletelist[i]));
                        if (img != null)
                        {
                            string delete = PostPublicImageController.Delete(img.ID);
                        }
                    }
                }

                // Update post
                var oldPostPublic = new PostPublic()
                {
                    ID           = PostID,
                    CategoryID   = CategoryID,
                    CategorySlug = CategorySlug,
                    Title        = Title,
                    Thumbnail    = Thumbnail,
                    Summary      = Summary,
                    Content      = Content,
                    Action       = Action,
                    ActionValue  = ActionValue,
                    AtHome       = AtHome,
                    IsPolicy     = IsPolicy,
                    CreatedDate  = post.CreatedDate,
                    CreatedBy    = acc.Username,
                    ModifiedDate = currentDate,
                    ModifiedBy   = acc.Username
                };

                var updatePost = PostPublicController.Update(oldPostPublic);

                if (updatePost != null)
                {
                    // Cập nhật thư viện ảnh cho bài viết
                    if (UploadImages.HasFiles)
                    {
                        foreach (HttpPostedFile uploadedFile in UploadImages.PostedFiles)
                        {
                            var o = path + "post-app-" + PostID + '-' + Slug.ConvertToSlug(Path.GetFileName(uploadedFile.FileName), isFile: true);
                            uploadedFile.SaveAs(Server.MapPath(o));
                            PostPublicImageController.Insert(PostID, o, username, DateTime.Now);
                        }
                    }

                    // tạo phiên bản cho wordpress
                    if (!String.IsNullOrEmpty(hdfPostVariants.Value))
                    {
                        JavaScriptSerializer serializer = new JavaScriptSerializer();
                        var variants = serializer.Deserialize <List <PostClone> >(hdfPostVariants.Value);
                        if (variants != null)
                        {
                            foreach (var item in variants)
                            {
                                var getpostClone = PostCloneController.Get(updatePost.ID, item.Web);
                                if (getpostClone == null)
                                {
                                    continue;
                                }

                                var oldPostClone = new PostClone()
                                {
                                    ID           = getpostClone.ID,
                                    PostPublicID = updatePost.ID,
                                    Web          = getpostClone.Web,
                                    PostWebID    = getpostClone.PostWebID,
                                    CategoryName = category.Name,
                                    CategoryID   = updatePost.CategoryID,
                                    Title        = !String.IsNullOrEmpty(item.Title) ? item.Title : updatePost.Title,
                                    Summary      = updatePost.Summary,
                                    Content      = updatePost.Content,
                                    Thumbnail    = updatePost.Thumbnail,
                                    CreatedBy    = getpostClone.CreatedBy,
                                    CreatedDate  = getpostClone.CreatedDate,
                                    ModifiedDate = currentDate,
                                    ModifiedBy   = acc.Username
                                };

                                PostCloneController.Update(oldPostClone);
                            }
                        }
                    }

                    PJUtils.ShowMessageBoxSwAlertCallFunction("Cập nhật bài viết thành công", "s", true, "redirectTo(" + updatePost.ID.ToString() + ")", Page);
                }
            }
        }
Example #6
0
        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            string   username    = Request.Cookies["usernameLoginSystem"].Value;
            var      acc         = AccountController.GetByUsername(username);
            DateTime currentDate = DateTime.Now;
            int      cateID      = hdfParentID.Value.ToInt();

            if (cateID > 0)
            {
                int    CategoryID   = ddlCategory.Value.ToInt();
                var    category     = PostPublicCategoryController.GetByID(CategoryID);
                string CategorySlug = category.Slug;
                string Title        = txtTitle.Text.Trim();
                string Slugs        = Slug.ConvertToSlug(txtSlug.Text.Trim());
                string Link         = txtLink.Text.Trim();
                string Content      = pContent.Content.ToString();
                string Summary      = HttpUtility.HtmlDecode(pSummary.Content.ToString());
                string Action       = ddlAction.SelectedValue.ToString();
                string ActionValue  = "";
                if (Action == "view_more")
                {
                    ActionValue = Slugs;
                }
                else if (Action == "show_web")
                {
                    ActionValue = Link;
                }
                bool AtHome   = ddlAtHome.SelectedValue.ToBool();
                bool IsPolicy = false;

                var newPostPublic = new PostPublic()
                {
                    CategoryID   = CategoryID,
                    CategorySlug = CategorySlug,
                    Title        = Title,
                    Thumbnail    = "",
                    Summary      = Summary,
                    Content      = Content,
                    Action       = Action,
                    ActionValue  = ActionValue,
                    AtHome       = AtHome,
                    IsPolicy     = IsPolicy,
                    CreatedDate  = currentDate,
                    CreatedBy    = acc.Username,
                    ModifiedDate = currentDate,
                    ModifiedBy   = acc.Username
                };

                var post = PostPublicController.Insert(newPostPublic);

                if (post != null)
                {
                    // Thêm ảnh đại diện
                    string path  = "/uploads/images/posts/";
                    string Image = "";
                    if (PostPublicThumbnailImage.UploadedFiles.Count > 0)
                    {
                        foreach (UploadedFile f in PostPublicThumbnailImage.UploadedFiles)
                        {
                            var o = path + "post-app-" + post.ID.ToString() + "-" + Slug.ConvertToSlug(Path.GetFileName(f.FileName), isFile: true);
                            try
                            {
                                f.SaveAs(Server.MapPath(o));
                                Image = o;
                            }
                            catch { }
                        }
                    }
                    string updateImage = PostPublicController.UpdateImage(post.ID, Image);

                    // Thêm thư viện ảnh
                    string IMG = "";
                    if (ImageGallery.UploadedFiles.Count > 0)
                    {
                        foreach (UploadedFile f in ImageGallery.UploadedFiles)
                        {
                            var o = path + "post-app-" + post.ID.ToString() + "-" + Slug.ConvertToSlug(Path.GetFileName(f.FileName), isFile: true);
                            try
                            {
                                f.SaveAs(Server.MapPath(o));
                                IMG = o;
                                PostPublicImageController.Insert(post.ID, IMG, username, currentDate);
                            }
                            catch { }
                        }
                    }

                    // Copy bài viết vào hệ thống gốc
                    if (ddlCopyToSystem.SelectedValue == "True" && post.Action == "view_more")
                    {
                        var categorySystem = PostCategoryController.GetByName(category.Name);
                        var postSystem     = new tbl_Post()
                        {
                            Title        = post.Title,
                            Content      = post.Content,
                            Image        = Image,
                            Featured     = 1,
                            CategoryID   = categorySystem != null ? categorySystem.ID : 0,
                            Status       = 1,
                            CreatedBy    = post.CreatedBy,
                            CreatedDate  = post.CreatedDate,
                            ModifiedBy   = post.ModifiedBy,
                            ModifiedDate = post.ModifiedDate,
                            WebPublish   = true,
                            WebUpdate    = post.CreatedDate,
                            Slug         = post.ActionValue
                        };

                        PostController.Insert(postSystem);

                        // Copy image
                        if (postSystem != null)
                        {
                            var imagePostPublic = PostPublicImageController.GetByPostID(post.ID);
                            if (imagePostPublic.Count > 0)
                            {
                                foreach (var item in imagePostPublic)
                                {
                                    PostImageController.Insert(postSystem.ID, item.Image, postSystem.CreatedBy, DateTime.Now);
                                }
                            }
                        }
                    }


                    // Tạo phiên bản cho wordpress
                    if (!String.IsNullOrEmpty(hdfPostVariants.Value))
                    {
                        JavaScriptSerializer serializer = new JavaScriptSerializer();
                        var variants = serializer.Deserialize <List <PostClone> >(hdfPostVariants.Value);
                        if (variants != null)
                        {
                            foreach (var item in variants)
                            {
                                var newPostClone = new PostClone()
                                {
                                    PostPublicID = post.ID,
                                    Web          = item.Web,
                                    PostWebID    = 0,
                                    CategoryID   = post.CategoryID,
                                    CategoryName = category.Name,
                                    Title        = !String.IsNullOrEmpty(item.Title) ? item.Title : post.Title,
                                    Summary      = post.Summary,
                                    Content      = post.Content,
                                    Thumbnail    = Image,
                                    CreatedDate  = post.CreatedDate,
                                    CreatedBy    = acc.Username,
                                    ModifiedDate = post.ModifiedDate,
                                    ModifiedBy   = acc.Username
                                };

                                PostCloneController.Insert(newPostClone);
                            }
                        }
                    }

                    PJUtils.ShowMessageBoxSwAlertCallFunction("Tạo bài viết thành công", "s", true, "redirectTo(" + post.ID.ToString() + ")", Page);
                }
            }
        }