Пример #1
0
        public string AddPostToBlog(int moduleId, string username, Post post, bool publish)
        {
            Module   module = new Module(moduleId);
            SiteUser user   = new SiteUser(_siteSettings, username);
            ITransmorgifier <Post, Blog> postToBlog = new CreateBlog(_siteSettings, module, user);

            Blog blog = postToBlog.Transmorgify(post);

            blog.UserGuid             = user.UserGuid;
            blog.LastModUserGuid      = user.UserGuid;
            blog.ModuleId             = moduleId;
            blog.ModuleGuid           = module.ModuleGuid;
            blog.IncludeInFeed        = true;
            blog.AllowCommentsForDays = 90; // TODO [TO080506@2125] Doesn't look like there is a default value for this.

            //added 2009-08-30 by Joe Audette
            if ((post.dateCreated != null) && (post.dateCreated > DateTime.MinValue) && (post.dateCreated < DateTime.MaxValue))
            {
                if (!WebConfigSettings.DisableUseOfPassedInDateForMetaWeblogApi)
                {
                    blog.StartDate = post.dateCreated;
                }
            }


            // [TO080506@2135] Maybe this should be wrapped up in a transaction?

            // need to get the page id to use for real url mapping
            DataTable modulePages = Module.GetPageModulesTable(moduleId);
            int       pageId      = GetPageIdForModule(moduleId);

            string newUrl = FriendlyUrl.SuggestFriendlyUrl(blog.Title, _siteSettings);

            blog.ItemUrl         = "~/" + newUrl;
            blog.ContentChanged += new ContentChangedEventHandler(blog_ContentChanged);

            blog.Save();

            FriendlyUrl newFriendlyUrl = new FriendlyUrl();

            newFriendlyUrl.SiteId   = _siteSettings.SiteId;
            newFriendlyUrl.SiteGuid = _siteSettings.SiteGuid;
            newFriendlyUrl.PageGuid = blog.BlogGuid;
            newFriendlyUrl.Url      = newUrl;
            newFriendlyUrl.RealUrl  = "~/Blog/ViewPost.aspx?pageid="
                                      + pageId.ToString(CultureInfo.InvariantCulture)
                                      + "&mid=" + blog.ModuleId.ToString(CultureInfo.InvariantCulture)
                                      + "&ItemID=" + blog.ItemId.ToString(CultureInfo.InvariantCulture);

            if (pageId > -1)
            {
                newFriendlyUrl.Save();
            }

            AddCategoriesToBlog(blog, post.categories);

            SiteUtils.QueueIndexing();

            return(blog.ItemId.ToString());
        }
Пример #2
0
        public void TPBlogvalidationActivityStream(string BlogTitle)
        {
            Thread.Sleep(7000);
            myManager.ActiveBrowser.WaitUntilReady();
            myManager.ActiveBrowser.RefreshDomTree();

            CreateBlog objNewblog = new CreateBlog(myManager);

            //Identify the whole activity feed
            HtmlDiv FirstBlog = objNewblog.TPActivityStream.As <HtmlDiv>();

            System.Collections.ObjectModel.ReadOnlyCollection <HtmlAnchor> links = FirstBlog.Find.AllByTagName <HtmlAnchor>("a");
            HtmlAnchor blogURL = FirstBlog.Find.AllByTagName <HtmlAnchor>("a")[1];

            blogURL.Click();

            Thread.Sleep(6000);
            myManager.ActiveBrowser.WaitUntilReady();
            myManager.ActiveBrowser.RefreshDomTree();

            //Identify the blog title
            Element ValidateName = objNewblog.TPBlogTitleArchive;

            Assert.AreEqual(ValidateName.InnerText, BlogTitle, "BLOG VALIDATION FAILED");
        }
Пример #3
0
        public void selectArea(string Subsidiary)
        {
            CreateBlog objNewblog = new CreateBlog(myManager);

            switch (Subsidiary.ToUpper())
            {
            case "ALL":
                myManager.ActiveBrowser.Actions.Check(objNewblog.areaAll, true);
                break;

            case "CONSULTANCY AND SUPPORT":
                myManager.ActiveBrowser.Actions.Check(objNewblog.areaConsultancy, true);
                break;

            case "DEVELOPMENT":
                myManager.ActiveBrowser.Actions.Check(objNewblog.areaDevelopment, true);
                break;

            case "FINANCEANDADMINISTRATION":
                myManager.ActiveBrowser.Actions.Check(objNewblog.areaFinance, true);
                break;

            case "MARKETING":
                myManager.ActiveBrowser.Actions.Check(objNewblog.areaMarketing, true);
                break;

            case "SALES":
                myManager.ActiveBrowser.Actions.Check(objNewblog.areaSales, true);
                break;
            }
        }
Пример #4
0
 public IActionResult AddBlog([Bind(nameof(CreateBlog.Title),
                                    nameof(CreateBlog.Text),
                                    nameof(CreateBlog.datetime),
                                    nameof(CreateBlog.imageFile),
                                    nameof(CreateBlog.CategoryId)
                                    )]
                              CreateBlog model)
 {
     if (ModelState.IsValid)
     {
         try
         {
             model.Create();
             model.Response = new ResponseModel("Insert Successfull", ResponseType.Success);
             return(RedirectToAction("index"));
         }
         catch (DuplicationException message)
         {
             model.Response = new ResponseModel(message.Message, ResponseType.Failure);
         }
         catch (Exception ex)
         {
             model.Response = new ResponseModel("Insert Failed.", ResponseType.Failure);
             //logger.Error(ex, "Something bad happened");
             // error logger code
         }
     }
     return(View(model));
 }
Пример #5
0
        public async Task <IActionResult> Post([FromBody] CreateBlog command)
        {
            command.AggregateRootId = Guid.NewGuid();
            await _mediator.SendAndPublishAsync <CreateBlog, Domain.Blogs.Blog>(command);

            return(new NoContentResult());
        }
Пример #6
0
        public static void ValidateBlog(Manager M, string BlogName)
        {
            CreateBlog objNewblog   = new CreateBlog(M);
            Element    ValidateName = objNewblog.validateBlogName;

            Assert.AreEqual(ValidateName.InnerText, BlogName, "BLOG VALIDATION FAILED");
        }
Пример #7
0
        public void selectSubsidiary(string Subsidiary)
        {
            CreateBlog objNewblog = new CreateBlog(myManager);

            switch (Subsidiary.ToUpper())
            {
            case "SUPERLAND":
                myManager.ActiveBrowser.Actions.Check(objNewblog.subsidiarySuperland, true);
                break;

            case "AS":
                myManager.ActiveBrowser.Actions.Check(objNewblog.subsidiaryAS, true);
                break;

            case "BENELUX":
                myManager.ActiveBrowser.Actions.Check(objNewblog.subsidiaryBenelux, true);
                break;

            case "CAESAR":
                myManager.ActiveBrowser.Actions.Check(objNewblog.subsidiaryCaesar, true);
                break;

            case "CLOUD":
                myManager.ActiveBrowser.Actions.Check(objNewblog.subsidiaryCloud, true);
                break;

            case "DENMARK":
                myManager.ActiveBrowser.Actions.Check(objNewblog.subsidiaryDenmark, true);
                break;

            case "GERMANY":
                myManager.ActiveBrowser.Actions.Check(objNewblog.subsidiaryGermany, true);
                break;

            case "LITHUANIA":
                myManager.ActiveBrowser.Actions.Check(objNewblog.subsidiaryLithuania, true);
                break;

            case "NORWAY":
                myManager.ActiveBrowser.Actions.Check(objNewblog.subsidiaryNorway, true);
                break;

            case "SRILANKA":
                myManager.ActiveBrowser.Actions.Check(objNewblog.subsidiarySL, true);
                break;

            case "SWEDEN":
                myManager.ActiveBrowser.Actions.Check(objNewblog.subsidiarySweden, true);
                break;

            case "SWITZERLAND":
                myManager.ActiveBrowser.Actions.Check(objNewblog.subsidiarySwitzerland, true);
                break;

            case "UNITEDKINGDOM":
                myManager.ActiveBrowser.Actions.Check(objNewblog.subsidiaryUK, true);
                break;
            }
        }
Пример #8
0
 public void Setup()
 {
     _command       = BlogFactories.CreateBlogCommand();
     _validatorMock = new Mock <IValidator <CreateBlog> >();
     _validatorMock.Setup(x => x.Validate(_command)).Returns(new ValidationResult());
     _blog  = new Domain.Blogs.Blog(_command, _validatorMock.Object);
     _event = _command.ToEvent();
 }
Пример #9
0
 public static BlogCreated ToEvent(this CreateBlog command)
 {
     return(new BlogCreated
     {
         AggregateRootId = command.AggregateRootId,
         Title = command.Title,
         Theme = command.Theme
     });
 }
Пример #10
0
        public void addcomment(Browser Br, Manager M, string Comment)
        {
            CreateBlog objNewblog = new CreateBlog(M);

            Thread.Sleep(5000);
            M.ActiveBrowser.WaitUntilReady();
            M.ActiveBrowser.RefreshDomTree();

            M.ActiveBrowser.Actions.SetText(objNewblog.TPBlogComment, Comment);
            M.ActiveBrowser.Actions.Click(objNewblog.SendComment);
        }
Пример #11
0
        public void TPBlogvalidationCarasoel(string BlogTitle)
        {
            string firstblogTile;

            myManager.ActiveBrowser.NavigateTo(_Url + "/The-Parliament/");
            Thread.Sleep(6000);
            myManager.ActiveBrowser.WaitUntilReady();
            myManager.ActiveBrowser.RefreshDomTree();

            CreateBlog objNewblog = new CreateBlog(myManager);

            firstblogTile = objNewblog.TPinfocaroselFirstpost.InnerText;
            Assert.AreEqual(firstblogTile, BlogTitle, "BLOG VALIDATION FAILED");
        }
Пример #12
0
        public ActionResult CreateBlog(CreateBlog model)
        {
            string createdTime = DateTime.Now.ToString("dd.MM.yyyy HH:mm");

            PersonBlog blog = new PersonBlog {
                BlogText    = model.BlogText,
                User        = User.Identity.Name,
                BlogCreated = createdTime
            };


            //_context.UserBlogs.Add(blog);
            _context.SaveChanges();

            return(RedirectToAction("Index", "Blog"));  //Добавление прошло успешно
        }
Пример #13
0
        public async Task Setup()
        {
            _command = BlogFactories.CreateBlogCommand();

            _validatorMock = new Mock <IValidator <CreateBlog> >();
            _validatorMock.Setup(x => x.Validate(_command)).Returns(new ValidationResult());

            _blogRepositoryMock = new Mock <IBlogRepository>();
            _blogRepositoryMock
            .Setup(x => x.CreateAsync(It.IsAny <Domain.Blogs.Blog>()))
            .Callback <Domain.Blogs.Blog>(b => _blog = b)
            .Returns(Task.CompletedTask);

            _commandHandler = new CreateBlogHandler(_blogRepositoryMock.Object, _validatorMock.Object);
            _result         = await _commandHandler.HandleAsync(_command);

            _event = _blog.Events.OfType <BlogCreated>().Single();
        }
Пример #14
0
        public void BlogValidation(Manager M, Browser Br, string Url, string BlogName, string blogCategory)
        {
            switch (blogCategory.ToUpper())
            {
            case "CUSTOMER":
                Br.NavigateTo(Url + "/en/Customer/", true);
                break;

            case "DEVELOPER":
                Br.NavigateTo(Url + "/en/Developer/", true);
                break;

            case "TECHNICAL":
                Br.NavigateTo(Url + "/en/Technical/", true);
                break;
            }

            Thread.Sleep(5000);
            Br.WaitUntilReady();
            Br.RefreshDomTree();

            CreateBlog objNewblog = new CreateBlog(M);


            //Identify the whole activity feed and selecting the first entry div Class= "activity-text-wrapper"
            HtmlDiv FirstBlog = objNewblog.validateActivityFeed.As <HtmlDiv>();

            System.Collections.ObjectModel.ReadOnlyCollection <HtmlAnchor> links = FirstBlog.Find.AllByTagName <HtmlAnchor>("a");
            HtmlAnchor blogURL = FirstBlog.Find.AllByTagName <HtmlAnchor>("a")[1];

            blogURL.Click();



            Thread.Sleep(3000);
            Br.WaitUntilReady();
            Br.RefreshDomTree();

            //Identify the blog title
            Element ValidateName = objNewblog.validateBlogName;

            Assert.AreEqual(ValidateName.InnerText, BlogName, "BLOG VALIDATION FAILED");
        }
Пример #15
0
        public void TPBlogArchiveValidation(string BlogTitle)
        {
            string Blogname;

            myManager.ActiveBrowser.NavigateTo(_Url + "/The-Parliament/");
            Thread.Sleep(5000);
            myManager.ActiveBrowser.WaitUntilReady();
            myManager.ActiveBrowser.RefreshDomTree();

            CreateBlog objNewblog        = new CreateBlog(myManager);
            HtmlAnchor BlogArchiveButton = objNewblog.TPBlogArchiveButton.As <HtmlAnchor>();

            BlogArchiveButton.Click(true);

            Thread.Sleep(10000);
            myManager.ActiveBrowser.WaitUntilReady();
            myManager.ActiveBrowser.RefreshDomTree();

            Blogname = objNewblog.TPBlogArchiveFirstBlog.InnerText;
            Assert.AreEqual(Blogname, BlogTitle, "BLOG VALIDATION FAILED FROM BLOG ARCHIVE");
        }
Пример #16
0
 public Blog(CreateBlog command, IValidator <CreateBlog> validator) : base(command.AggregateRootId)
 {
     validator.Validate(command);
     AddEvent(command.ToEvent());
 }
Пример #17
0
        public void TestMethod_BlogParliament()
        {
            string navigateURL;

            ReadData();

            //Login to the system ---------------------
            myManager.ActiveBrowser.NavigateTo(_Url);
            CommonFunctions.HandleSpashScreen(myManager, myManager.ActiveBrowser);
            myManager.ActiveBrowser.WaitUntilReady();
            myManager.ActiveBrowser.RefreshDomTree();
            CommonFunctions.Login(myManager, myManager.ActiveBrowser, _Uname, _Password);
            Thread.Sleep(7000);
            //----------- End reagon

            //Navigate to parliament blog -----------------------
            navigateURL = _Url + "/the-parliament/";
            myManager.ActiveBrowser.NavigateTo(navigateURL);
            Thread.Sleep(5000);
            myManager.ActiveBrowser.WaitUntilReady();
            myManager.ActiveBrowser.RefreshDomTree();
            //----------- End reagon

            //Add new Blog
            CreateBlog objNewblog = new CreateBlog(myManager);

            myManager.ActiveBrowser.Actions.Click(objNewblog.TPnewblog);
            Thread.Sleep(5000);
            myManager.ActiveBrowser.WaitUntilReady();
            myManager.ActiveBrowser.RefreshDomTree();

            myManager.ActiveBrowser.Actions.SetText(objNewblog.TPBlogTitle, _BlogTitle);

            //Add a picture
            var x = new ArtOfTest.WebAii.Win32.Dialogs.FileUploadDialog(myManager.ActiveBrowser, @"C:\Images\918.jpg", DialogButton.OPEN);

            myManager.DialogMonitor.Start();
            myManager.DialogMonitor.AddDialog(x);
            HtmlInputFile choose = myManager.ActiveBrowser.Find.ById <HtmlInputFile>("fuPreviewImage");

            choose.Click();
            x.WaitUntilHandled(10000);
            //Sometimes the frame takes little time to show up
            Thread.Sleep(5000);
            //----------- End reagon


            ArtOfTest.WebAii.Core.Browser t1_frame = myManager.ActiveBrowser.Frames[0];
            Element TextEditor = t1_frame.Find.ByXPath("/html/body");

            myManager.ActiveBrowser.Actions.SetText(TextEditor, _BlogDescription);

            //This functionality is temporalyremoved will be implemented in the future
            //--------------------------------------------------------------------------
            //myManager.ActiveBrowser.Actions.Check(objNewblog.TPfrontpagenews, _FrontPageNews);
            //myManager.ActiveBrowser.Actions.Click(objNewblog.TPdisplayuntill);
            //myManager.ActiveBrowser.Actions.SetText(objNewblog.TPdisplayuntill, _displayUntill);
            //myManager.ActiveBrowser.Actions.Click(objNewblog.TPdisplayuntill);
            //--------------------------------------------------------------------------

            //Selecting the pulish Subsidiary
            if (_Subsidiary != "")
            {
                selectSubsidiary(_Subsidiary);
            }
            //----------- End reagon

            //Selecting the pulish Subsidiary
            if (_areas != "")
            {
                selectArea(_areas);
            }
            Thread.Sleep(5000);
            //----------- End reagon


            //Publish or Draft
            if (_publish == true)
            {
                myManager.ActiveBrowser.Actions.Click(objNewblog.saveandPublish);
            }
            else if (_draft == true)
            {
                myManager.ActiveBrowser.Actions.Click(objNewblog.saveDraft);
            }
            else
            {
                myManager.ActiveBrowser.Actions.Click(objNewblog.saveandPublish);
            }

            Thread.Sleep(5000);
            myManager.ActiveBrowser.WaitUntilReady();
            myManager.ActiveBrowser.RefreshDomTree();
            //----------- End reagon


            TPBlogArchiveValidation(_BlogTitle);
            TPBlogvalidationCarasoel(_BlogTitle);

            Thread.Sleep(5000);
            CommonFunctions.ValideActivityStream(myManager, myManager.ActiveBrowser, _Url, _BlogTitle, "PARLIAMENT");

            //after the activity stream validation the test screen will be on the added blog

            //Adding a Comment to the blog

            Thread.Sleep(5000);
            myManager.ActiveBrowser.WaitUntilReady();
            myManager.ActiveBrowser.RefreshDomTree();

            myManager.ActiveBrowser.Actions.SetText(objNewblog.TPBlogComment, _TPBlogComment);
            myManager.ActiveBrowser.Actions.Click(objNewblog.TPBlogCommentPostButton);

            CommonFunctions.ActivityStreamCommentsValidator(myManager, myManager.ActiveBrowser, _Url, _TPBlogComment, "PARLIAMENT");
        }
Пример #18
0
 public virtual async Task<ActionResult> CreateBlog(CreateBlog command)
 {
     return View();
 }
Пример #19
0
        public void CreateNewBlog(string navigateURL, Browser Br, Manager M, string BlogTitle, string BlogDescription, string Club, string BlogTag)
        {
            Br.NavigateTo(navigateURL);
            Thread.Sleep(7000);
            Br.WaitUntilReady();
            Br.RefreshDomTree();

            CreateBlog objNewblog = new CreateBlog(M);

            //objNewblog.createEntry.Wait.ForExists(5000);
            Br.Actions.Click(objNewblog.createEntry);

            Thread.Sleep(5000);
            Br.WaitUntilReady();
            Br.RefreshDomTree();

            //Adding title to blog
            Br.Actions.SetText(objNewblog.BlogTitle, BlogTitle);

            var x = new ArtOfTest.WebAii.Win32.Dialogs.FileUploadDialog(Br, @"C:\Images\918.jpg", DialogButton.OPEN);

            M.DialogMonitor.Start();
            M.DialogMonitor.AddDialog(x);

            HtmlInputFile choose = Br.Find.ById <HtmlInputFile>("fuPreviewImage");

            choose.Click();
            x.WaitUntilHandled(10000);


            Thread.Sleep(5000);
            Br.WaitUntilReady();
            Br.RefreshDomTree();

            ArtOfTest.WebAii.Core.Browser t1_frame = Br.Frames[0];

            Element TextEditor = t1_frame.Find.ByXPath("/html/body");

            Br.Actions.SetText(TextEditor, BlogDescription);

            switch (Club.ToUpper())
            {
            case "CUSTOMER":
                Br.Actions.Check(objNewblog.cbxBlogCustomer, true);
                break;

            case "DEVELOPER":
                Br.Actions.Check(objNewblog.cbxBlogDeveloper, true);
                break;

            case "TECHNICAL":
                Br.Actions.Check(objNewblog.cbxBlogTechnical, true);
                break;

            default:
                Br.Actions.Check(objNewblog.cbxBlogCustomer, true);
                break;
            }

            Br.Actions.SetText(objNewblog.blogTags, BlogTag);
            Br.Actions.Click(objNewblog.blogPostButton);
            Thread.Sleep(7000);
        }
Пример #20
0
        public IActionResult AddBlog()
        {
            var model = new CreateBlog();

            return(View(model));
        }