Ejemplo n.º 1
0
 protected bool DoesNewPageCommandExecute(ICommand command, PageName expected)
 {
     var passedNewPage = PageName.Navigation;
     Commands.NewPageCommand = new RelayCommand<PageName>(p => passedNewPage = p);
     command.Execute(null);
     return passedNewPage.Equals(expected);
 }
        public virtual ActionResult Page(PageName page, int? revision)
        {
            if (revision != null && !SettingsProvider.GetSettings<FunnelWebSettings>().EnablePublicHistory)
            {
                return RedirectToAction("Page", "Wiki", new { page, revision = (int?)null });
            }

            var entry = revision == null
                            ? Repository.FindFirstOrDefault(new EntryByNameQuery(page))
                            : Repository.FindFirstOrDefault(new EntryByNameAndRevisionQuery(page, revision.Value));

            if (entry == null)
            {
                if (HttpContext.User.Identity.IsAuthenticated)
                    return RedirectToAction("Edit", "WikiAdmin", new { Area = "Admin", page });
                return Search(page, true);
            }

            if (entry.Status == EntryStatus.Private && !HttpContext.User.Identity.IsAuthenticated)
            {
                return Search(page, true);
            }

            ViewData.Model = new PageModel(page, entry);
            return new PageTemplateActionResult(
                pageTemplate: entry.PageTemplate
            );
        }
        public virtual ActionResult Edit(PageName page, int? revertToRevision)
        {
            var allTags = Repository.FindAll<Tag>();

            var entry =
                revertToRevision == null
                    ? Repository.FindFirstOrDefault(new EntryByNameQuery(page))
                    : Repository.FindFirstOrDefault(new EntryByNameAndRevisionQuery(page, revertToRevision.Value));

            if (entry == null)
            {
                entry = new EntryRevision
                            {
                                Title = "New post",
                                MetaTitle = "New post",
                                Name = page
                            };
            }

            entry.ChangeSummary = entry.Id == 0
                                      ? "Initial create"
                                      : (revertToRevision == null ? "" : "Reverted to version " + revertToRevision);
            entry.AllTags = allTags;

            if (revertToRevision != null)
            {
                return View("Edit", entry).AndFlash("You are editing an old version of this page. This will become the current version when you save.");
            }
            return View("Edit", entry);
        }
Ejemplo n.º 4
0
        public void SearchForNotExistingTag()
        {
            BAT.Macros().NavigateTo().Pages(this.Culture);
            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SelectWhichItemsToDisplay(WhichNewsToDisplay);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SelectCheckBox(TaxonomyName);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().ClickSelectButton();
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().SearchItemByTitle(TaxonTitle);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().VerifyNoItemsFound();
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().DoneSelecting();
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();
            for (int i = 0; i < this.newsTitles.Length; i++)
            {
                BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().CheckWidgetContent(WidgetName, this.newsTitles[i]);
            }

            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            Assert.IsTrue(BATFeather.Wrappers().Frontend().News().NewsWrapper().IsNewsTitlesPresentOnThePageFrontend(this.newsTitles));
        }
Ejemplo n.º 5
0
        public void AddAndRemoveNewPage()
        {
            BAT.Macros().NavigateTo().Modules().Forms(this.Culture);
            BAT.Wrappers().Backend().Forms().FormsDashboard().OpenFormFromTheGrid(FormName);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyNavigationPagesLabels(this.pagesDefaultLabels);
            BATFeather.Wrappers().Backend().Forms().FormsContentScreenWrapper().AddField(PageBreak);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyNavigationPagesLabels(this.pagesNewLabels);
            BAT.Wrappers().Backend().Forms().FormsContentScreen().PublishForm();

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyNavigationPagesLabels(this.pagesNewLabels);

            BAT.Macros().NavigateTo().Modules().Forms(this.Culture);
            BAT.Wrappers().Backend().Forms().FormsDashboard().OpenFormFromTheGrid(FormName);
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().DeleteWidget(PageBreak, 2);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyNavigationPagesLabels(this.pagesDefaultLabels);
            BAT.Wrappers().Backend().Forms().FormsContentScreen().PublishForm();

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyNavigationPagesLabels(this.pagesDefaultLabels);
        }
Ejemplo n.º 6
0
        public void VerifyCheckedStatusInNavigation()
        {
            BAT.Macros().NavigateTo().Modules().Forms(this.Culture);
            BAT.Wrappers().Backend().Forms().FormsDashboard().OpenFormFromTheGrid(FormName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(PageBreak, 1);
            BATFeather.Wrappers().Backend().Forms().FormsContentScreenWrapper().ClickAllowUsersToStepBackwardCheckBox();
            BATFeather.Wrappers().Backend().ContentBlocks().ContentBlocksWrapper().SaveChanges();
            BAT.Wrappers().Backend().Forms().FormsContentScreen().PublishForm();

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyNavigationPagesLabels(this.pagesDefaultLabels);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyVisibleNumbersInNavigation(3);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().ClickNextButton();
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyVisibleNumbersInNavigation(2);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().ClickPreviousButton();
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyVisibleNumbersInNavigation(3);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().ClickNextButton();
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyVisibleNumbersInNavigation(2);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().ClickNextButton();
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyVisibleNumbersInNavigation(1);
        }
        public void FilterCategoriesByContentTypeBlogPosts()
        {
            BAT.Macros().NavigateTo().Pages(this.Culture);
            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().AddWidgetToPlaceHolderPureMvcMode(WidgetName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
            BATFeather.Wrappers().Backend().Classifications().CategoriesWrapper().SelectRadioButtonOption(CategoriesRadioButtonIds.ContentCategories);
            BATFeather.Wrappers().Backend().Classifications().CategoriesWrapper().SelectUsedByContentTypeOption(BlogPostOption);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().CheckWidgetContent(WidgetName, taxonTitleBlogs);
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            Assert.IsTrue(BATFeather.Wrappers().Frontend().Classifications().ClassificationsWrapper().IsCategoriesTitlesPresentOnTheFrontendPage(new string[] { taxonTitleBlogs }));
            Assert.IsFalse(BATFeather.Wrappers().Frontend().Classifications().ClassificationsWrapper().IsCategoriesTitlesPresentOnTheFrontendPage(new string[] { taxonTitleNews + 1, taxonTitleNews + 2, taxonTitleNews + 3 }));
            Assert.IsTrue(BATFeather.Wrappers().Frontend().News().NewsWrapper().IsNewsTitlesPresentOnThePageFrontend(new string[] { NewsTitle + 1, NewsTitle + 2, NewsTitle + 3 }));
            Assert.IsTrue(BATFeather.Wrappers().Frontend().Blogs().BlogsWrapper().IsBlogPostTitlesPresentOnThePageFrontend(new string[] { BlogPostTitle }));

            BATFeather.Wrappers().Frontend().Classifications().ClassificationsWrapper().ClickCategoryTitle(taxonTitleBlogs);
            Assert.IsTrue(BATFeather.Wrappers().Frontend().Blogs().BlogsWrapper().IsBlogPostTitlesPresentOnThePageFrontend(new string[] { BlogPostTitle }));
            Assert.IsFalse(BATFeather.Wrappers().Frontend().News().NewsWrapper().IsNewsTitlesPresentOnThePageFrontend(new string[] { NewsTitle + 1, NewsTitle + 2, NewsTitle + 3 }));
        }
Ejemplo n.º 8
0
        protected void pageNameList_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName.Equals("RemoveButton"))
            {
                int rowNum = int.Parse(e.CommandArgument.ToString());
                CustomGenericList <PageName> pageNames = (CustomGenericList <PageName>)Session["PageNames" + pageIdTextBox.Text];

                int?     i        = null;
                PageName pageName = findPageName(pageNames,
                                                 (int)pageNameList.DataKeys[rowNum].Values[0],
                                                 (string)pageNameList.DataKeys[rowNum].Values[1],
                                                 (pageNameList.DataKeys[rowNum].Values[2] == null ?
                                                  null : (string)pageNameList.DataKeys[rowNum].Values[2]),
                                                 (pageNameList.DataKeys[rowNum].Values[3] == null ?
                                                  i : (int)pageNameList.DataKeys[rowNum].Values[3]),
                                                 (bool)pageNameList.DataKeys[rowNum].Values[4]);

                pageName.IsDeleted = true;
                bindPageNameData(true);
            }
        }
        public void SelectAllPublishedImagesWithSimpleListTemplate_Semantics()
        {
            this.SelectListTemplateInImageGalleryDesigner(SemanticUITemplate, SimpleListTemplate);

            foreach (var image in this.imageTitles)
            {
                string src = this.GetImageSource(false, image, ImageType);
                BATFeather.Wrappers().Backend().Pages().PageZoneEditorMediaWrapper().VerifyImageThumbnail(image, src);
            }

            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            int i = 3;

            foreach (var image in this.imageTitles)
            {
                var src = this.GetImageSource(false, image, ImageType);
                BATFeather.Wrappers().Frontend().ImageGallery().ImageGalleryWrapper().VerifyImage(ImageAltText + i, src);
                i--;
            }
        }
        private void VerifyFrontend()
        {
            currentProviderUrlName = BAT.Arrange(this.TestName).ExecuteArrangement("GetCurrentProviderUrlName").Result.Values["CurrentProviderUrlName"];
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            string libraryUrl = LibraryName.ToLower() + "/" + ChildLibrary.ToLower() + "/" + NextChildLibrary.ToLower();
            string imageUrl   = VideoName3.ToLower() + VideoType;
            string url;

            if (this.Culture == null)
            {
                url = this.BaseUrl;
            }
            else
            {
                url = ActiveBrowser.Url.Substring(0, 20);
            }

            string src = BATFeather.Wrappers().Frontend().MediaWidgets().MediaWidgetsWrapper().GetMediaSource(false, libraryUrl, imageUrl, url, "videos", currentProviderUrlName);

            BATFeather.Wrappers().Frontend().MediaWidgets().MediaWidgetsWrapper().VerifyVideo(src);
        }
Ejemplo n.º 11
0
        private void VerifyFrontend()
        {
            currentProviderUrlName = BAT.Arrange(EditAndChangeSelectedDocumentArrangement).ExecuteArrangement("GetCurrentProviderUrlName").Result.Values["CurrentProviderUrlName"];
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            string libraryUrl  = LibraryName.ToLower();
            string documentUrl = DocumentName1.ToLower() + DocumentType.ToLower();
            string url;

            if (this.Culture == null)
            {
                url = this.BaseUrl;
            }
            else
            {
                url = ActiveBrowser.Url.Substring(0, 20);
            }

            string href = BATFeather.Wrappers().Frontend().MediaWidgets().MediaWidgetsWrapper().GetMediaSource(false, libraryUrl, documentUrl, url, "docs", currentProviderUrlName);

            BATFeather.Wrappers().Frontend().MediaWidgets().MediaWidgetsWrapper().VerifyDocument(DocumentNewName, href);
        }
Ejemplo n.º 12
0
        public void ZActivateAndDeactivateNewsModule()
        {
            BAT.Arrange(this.TestName).ExecuteArrangement("DeactivateNewsModule");
            BAT.Macros().NavigateTo().Pages(this.Culture);
            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);

            ////This step is missed because of bug
            ////BATFeather.Wrappers().Backend().Widgets().WidgetDesignerContentScreenWrapper().CheckInactiveNewsWidget();

            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().CheckWidgetContent(WidgetName, string.Empty);
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower());
            Assert.IsTrue(BAT.Wrappers().Frontend().Pages().PagesWrapperFrontend().GetPageContent().InnerText.Contains(string.Empty), "Page is not empty");
            BAT.Arrange(this.TestName).ExecuteArrangement("ActivateNewsModule");
            BAT.Macros().NavigateTo().Pages();
            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().CheckWidgetContent(WidgetName, NewsTitle1);
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            Assert.IsTrue(BATFeather.Wrappers().Frontend().News().NewsWrapper().IsNewsTitlesPresentOnThePageFrontend(this.newsTitles));
        }
Ejemplo n.º 13
0
        private void VerifyFrontend()
        {
            currentProviderUrlName = BAT.Arrange(EditAndChangeSelectedImageArrangement).ExecuteArrangement("GetCurrentProviderUrlName").Result.Values["CurrentProviderUrlName"];
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            string libraryUrl = LibraryName.ToLower();
            string imageUrl   = ImageName.ToLower() + ImageType.ToLower();
            string url;

            if (this.Culture == null)
            {
                url = this.BaseUrl;
            }
            else
            {
                url = ActiveBrowser.Url.Substring(0, 20);
            }

            string scr = BATFeather.Wrappers().Frontend().MediaWidgets().MediaWidgetsWrapper().GetMediaSource(libraryUrl, imageUrl, "images", currentProviderUrlName);

            BATFeather.Wrappers().Frontend().MediaWidgets().MediaWidgetsWrapper().VerifyImage(ImageNewName, ImageAltText1, scr);
        }
        public void VerifyValidationContentFields()
        {
            BAT.Macros().NavigateTo().Modules().Forms(this.Culture);
            BAT.Wrappers().Backend().Forms().FormsDashboard().OpenFormFromTheGrid(FormName);
            foreach (var fieldName in this.fieldNames)
            {
                BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(fieldName);
                BATFeather.Wrappers().Backend().Forms().FormsContentScreenWrapper().CheckRequiredFieldCheckbox();
                BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();
            }

            BAT.Wrappers().Backend().Forms().FormsContentScreen().PublishForm();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyNextStepText();
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().ClickNextButton();
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyNextStepText();
            foreach (var fieldName in this.fieldNames)
            {
                BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyRequiredFields(fieldName);
            }
        }
 public void DuplicateAndDeleteUnsubscribeWidget()
 {
     BAT.Macros().NavigateTo().Pages(this.Culture);
     BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
     BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
     BATFeather.Wrappers().Backend().EmailCampaigns().UnsubscribeWrapper().SelectEmailAddress();
     BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().ClickSelectButton();
     BATFeather.Wrappers().Backend().EmailCampaigns().SubscribeFormWrapper().SelectItemsInFlatSelector(MailingList);
     BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().DoneSelecting();
     BATFeather.Wrappers().Backend().ContentBlocks().ContentBlocksWrapper().SaveChanges();
     BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().SelectExtraOptionForWidget(OperationNameDuplicate);
     BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();
     BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
     Assert.AreEqual(2, BATFeather.Wrappers().Frontend().EmailCampaigns().UnsubscribeWrapper().ListWithSubscribeAndUnsubscribeWidgets().Count);
     BAT.Macros().NavigateTo().Pages(this.Culture);
     BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
     BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().SelectExtraOptionForWidget(OperationNameDelete);
     BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();
     BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
     Assert.AreEqual(1, BATFeather.Wrappers().Frontend().EmailCampaigns().UnsubscribeWrapper().ListWithSubscribeAndUnsubscribeWidgets().Count);
 }
        public void CreateWidgetTemplateAndSetTheTemplate()
        {
            BAT.Macros().NavigateTo().Design().WidgetTemplates();
            BATFeather.Wrappers().Backend().WidgetTemplates().WidgetTemplatesWrapper().CreateTemplate();
            BATFeather.Wrappers().Backend().WidgetTemplates().WidgetTemplatesCreateScreenFrameWrapper().SelectTemplate("Card (MVC)");
            BATFeather.Wrappers().Backend().WidgetTemplates().WidgetTemplatesCreateScreenFrameWrapper().EnterTextInTextArea(TemplateContent);
            BATFeather.Wrappers().Backend().WidgetTemplates().WidgetTemplatesCreateScreenFrameWrapper().EnterWidgetTemplateName(TemplateName);
            BATFeather.Wrappers().Backend().WidgetTemplates().WidgetTemplatesCreateScreenFrameWrapper().CreateThisTemplate();

            BAT.Macros().NavigateTo().Pages(this.Culture);
            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
            BATFeather.Wrappers().Backend().Card().CardWrapper().FillHeadingText(HeadingText);
            BATFeather.Wrappers().Backend().Navigation().NavigationWidgetEditWrapper().MoreOptions();
            BATFeather.Wrappers().Backend().Card().CardWrapper().SelectCardWidetTemplate(TemplateName);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            Assert.IsTrue(BAT.Wrappers().Frontend().Pages().PagesWrapperFrontend().GetPageContent().InnerText.Contains(TemplateContent), "Template is not presented");
        }
Ejemplo n.º 17
0
        public void VerifyViewPermissionsForDocumentsListWidget()
        {
            RuntimeSettingsModificator.ExecuteWithClientTimeout(800000, () => BAT.Macros().NavigateTo().CustomPage("~/sitefinity/pages", true, null, new HtmlFindExpression("class=~sfMain")));
            BAT.Macros().NavigateTo().Pages(this.Culture);
            BAT.Macros().NavigateTo().Modules().Documents(this.Culture);
            BAT.Wrappers().Backend().DocumentsAndFiles().DocumentsAndFilesDashboardWrapper().ClickActionMenuAndChooseOption(0, OptionSetPermissions);
            BAT.Wrappers().Backend().Permissions().PermissionsContentWrapper().ClickBreakInheritanceButton();
            var changeBtn = BAT.Wrappers().Backend().Permissions().PermissionsContentWrapper().ChangePermissionButton("View document");

            changeBtn.Click();
            BAT.Wrappers().Backend().Permissions().PermissionsContentWrapper().SelectAndAddRole("TestRole2");

            BAT.Macros().NavigateTo().Modules().Documents(this.Culture);
            BAT.Wrappers().Backend().DocumentsAndFiles().DocumentsAndFilesDashboardWrapper().ClickActionMenuAndChooseOption(1, OptionSetPermissions);
            BAT.Wrappers().Backend().Permissions().PermissionsContentWrapper().ClickBreakInheritanceButton();
            changeBtn.Click();
            BAT.Wrappers().Backend().Permissions().PermissionsContentWrapper().SelectAndAddRole("TestRole1");

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            BAT.Macros().User().LogOut();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            BATFeather.Wrappers().Frontend().Identity().LoginFormWrapper().EnterEmail(UserName);
            BATFeather.Wrappers().Frontend().Identity().LoginFormWrapper().EnterPassword(UserPassword);
            BATFeather.Wrappers().Frontend().Identity().LoginFormWrapper().PressLoginButton();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            Assert.IsTrue(BATFeather.Wrappers().Frontend().CommonWrapper().AreTitlesPresentOnThePageFrontend(new string[] { DocumentTitle1, DocumentTitle2 }));
            BATFeather.Wrappers().Frontend().DocumentsList().DocumentsListWrapper().ClickDocument(DocumentTitle1);
            ActiveBrowser.WaitUntilReady();
            BATFeather.Wrappers().Frontend().DocumentsList().DocumentsListWrapper().IsDocumentTitlePresentOnDetailMasterPage(DocumentTitle1);
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            BATFeather.Wrappers().Frontend().DocumentsList().DocumentsListWrapper().ClickDocument(DocumentTitle2);
            ActiveBrowser.WaitUntilReady();
            ActiveBrowser.ContainsText("HTTP Error 403.0 - Forbidden");
            ActiveBrowser.ContainsText("This is a generic 403 error and means the authenticated user is not authorized to view the page.");
            ActiveBrowser.ContainsText("You do not have permission to view this directory or page.");
            Assert.IsFalse(ActiveBrowser.ContainsText("You are not authorized to 'View document' ('Document')."), "Text was not found on the page");
            ActiveBrowser.WaitUntilReady();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            BATFeather.Wrappers().Frontend().Identity().LoginStatusWrapper().Logout();
        }
        public void EditDeleteTagAndEditDynamicWidget()
        {
            var pagesUrl = this.Culture != null ? "~/sitefinity/pages/?lang=" + this.Culture : "~/sitefinity/pages";

            RuntimeSettingsModificator.ExecuteWithClientTimeout(800000, () => BAT.Macros().NavigateTo().CustomPage(pagesUrl, false, null, new HtmlFindExpression("class=~sfMain")));
            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SelectWhichItemsToDisplay(WhichNewsToDisplay);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SelectCheckBox(TaxonomyName);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().ClickSelectButton();
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().SelectItemsInFlatSelector(TaxonTitle1);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().DoneSelecting();
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().CheckWidgetContent(WidgetName, ItemsTitle1);
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();

            BAT.Arrange(this.TestName).ExecuteArrangement("EditTag");

            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().VerifySelectedItemsFromFlatSelector(new[] { TaxonTitle1Edited });
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().CheckWidgetContent(WidgetName, ItemsTitle1);
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();

            BAT.Arrange(this.TestName).ExecuteArrangement("DeleteTag");

            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().ClickSelectButton();
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().WaitForItemsToAppear(1);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().SelectItemsInFlatSelector(TaxonTitle2);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().DoneSelecting();
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().CheckWidgetContent(WidgetName, ItemsTitle2);
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            Assert.IsTrue(BATFeather.Wrappers().Frontend().ModuleBuilder().ModuleBuilderWrapper().VerifyDynamicContentPresentOnTheFrontend(this.itemsTitles));
        }
        public void ViewFormWithContentBlockOnPageAndVerifyResponseInBackend()
        {
            BAT.Macros().NavigateTo().Modules().Forms(this.Culture);
            BAT.Wrappers().Backend().Forms().FormsDashboard().ClickCreateAFormButton();
            BAT.Wrappers().Backend().Forms().FormsCreateScreen().SetFormName(FormName);
            BAT.Wrappers().Backend().Forms().FormsCreateScreen().ClickCreateAndAddContent();
            ActiveBrowser.WaitUntilReady();
            ActiveBrowser.WaitForAsyncOperations();
            ActiveBrowser.RefreshDomTree();
            BATFeather.Wrappers().Backend().Forms().FormsContentScreenWrapper().AddField(FieldName);
            ActiveBrowser.WaitUntilReady();
            ActiveBrowser.WaitForAsyncOperations();
            ActiveBrowser.RefreshDomTree();
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(FieldName);
            BATFeather.Wrappers().Backend().ContentBlocks().ContentBlocksWrapper().FillContentToContentBlockWidget(ExpectedContent);
            BATFeather.Wrappers().Backend().ContentBlocks().ContentBlocksWrapper().SaveChanges();
            BAT.Wrappers().Backend().Forms().FormsContentScreen().PublishForm();

            BAT.Macros().NavigateTo().Pages(this.Culture);
            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().AddMvcWidgetHybridModePage(WidgetName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().SelectItemsInFormWidgetSelector(FormName);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().WaitForContentOnFrontend(ExpectedContent);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().VerifyContentBlockFieldTextIsVisible(ExpectedContent);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().SubmitForm();

            BAT.Macros().NavigateTo().Modules().Forms(this.Culture);
            BAT.Wrappers().Backend().Forms().FormsDashboard().ViewFormResponses(FormName);

            BATFeather.Wrappers().Backend().Forms().FormsWrapper().VerifyNumberOfResponses(ExpectedResponsesCount);
            BAT.Wrappers().Backend().Forms().FormsResponseScreen().SelectResponse(ResponseNumber);
            BATFeather.Wrappers().Backend().Forms().FormsWrapper().VerifyResponseAuthorUsername(ExpectedAuthorName);
            BATFeather.Wrappers().Backend().Forms().FormsWrapper().VerifyResponseSubmitDate();
            BATFeather.Wrappers().Backend().Forms().FormsWrapper().VerifyResponseContentBlockAnswer(ExpectedContent);
        }
Ejemplo n.º 20
0
        public void ChangeAdvancedSettingsOfCaptchaFieldAndSetCssClass()
        {
            BAT.Macros().NavigateTo().Modules().Forms(this.Culture);
            BAT.Wrappers().Backend().Forms().FormsDashboard().OpenFormFromTheGrid(FormName);
            ActiveBrowser.WaitUntilReady();
            ActiveBrowser.WaitForAsyncOperations();
            ActiveBrowser.RefreshDomTree();
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(Captcha);
            ActiveBrowser.WaitUntilReady();
            ActiveBrowser.WaitForAsyncOperations();
            ActiveBrowser.RefreshDomTree();
            BATFeather.Wrappers().Backend().Forms().FormsContentScreenWrapper().ApplyCssClasses(CssClassesToApply);
            BATFeather.Wrappers().Backend().ContentBlocks().ContentBlocksWrapper().SaveChanges();
            ActiveBrowser.WaitUntilReady();
            ActiveBrowser.WaitForAsyncOperations();
            ActiveBrowser.RefreshDomTree();
            BAT.Wrappers().Backend().Forms().FormsContentScreen().PublishForm();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            Assert.IsTrue(ActiveBrowser.ContainsText(CssClassesToApply), "Css class was not found on the page");

            BAT.Macros().NavigateTo().Modules().Forms(this.Culture);
            BAT.Wrappers().Backend().Forms().FormsDashboard().OpenFormFromTheGrid(FormName);
            ActiveBrowser.WaitUntilReady();
            ActiveBrowser.WaitForAsyncOperations();
            ActiveBrowser.RefreshDomTree();
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(Captcha);
            ActiveBrowser.WaitUntilReady();
            ActiveBrowser.WaitForAsyncOperations();
            ActiveBrowser.RefreshDomTree();
            BATFeather.Wrappers().Backend().ModuleBuilder().DynamicWidgetAdvancedSettingsWrapper().ClickAdvancedSettingsButton();
            BATFeather.Wrappers().Backend().ModuleBuilder().DynamicWidgetAdvancedSettingsWrapper().ClickModelButton();
            BATFeather.Wrappers().Backend().Forms().FormsContentScreenWrapper().ChangeCssClassInAdvancedSettings(CssClassesToApplyNew);
            BATFeather.Wrappers().Backend().ContentBlocks().ContentBlocksWrapper().SaveChanges();
            ActiveBrowser.WaitUntilReady();
            ActiveBrowser.WaitForAsyncOperations();
            ActiveBrowser.RefreshDomTree();
            BAT.Wrappers().Backend().Forms().FormsContentScreen().PublishForm();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            Assert.IsTrue(ActiveBrowser.ContainsText(CssClassesToApplyNew), "Css class was not found on the page");
        }
Ejemplo n.º 21
0
        public void NavigationWidgetAllPagesUnderCurrentlyOpenedPageSemanticUI()
        {
            string pageTemplateName = "SemanticUI.default";
            string navTemplateClass = "ui menu inverted";

            BAT.Macros().User().EnsureAdminLoggedIn();
            BAT.Arrange(this.ArrangementClass).AddParameter("templateName", pageTemplateName).ExecuteSetUp();

            BAT.Macros().NavigateTo().Pages(this.Culture);
            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
            BATFeather.Wrappers().Backend().Navigation().NavigationWidgetEditWrapper().SelectNavigationWidgetDisplayMode(NavWidgetDisplayMode);
            BATFeather.Wrappers().Backend().Navigation().NavigationWidgetEditWrapper().SaveChanges();
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);

            BATFeather.Wrappers().Frontend().Navigation().NavigationWrapper().VerifyPagesNotPresentFrontEndNavigation(navTemplateClass, this.ParentPages, TemplateType.Semantic);
            BATFeather.Wrappers().Frontend().Navigation().NavigationWrapper().VerifyNavigationOnThePageFrontend(navTemplateClass, this.ChildPages, TemplateType.Semantic);

            BATFeather.Wrappers().Frontend().Navigation().NavigationWrapper().ClickOnPageLinkFromNavigationMenu(ChildPage1, TemplateType.Semantic, navTemplateClass);
        }
        public void ValidateAllFieldsInReviewsWidgetOnFrontend()
        {
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().AssertMessageAndCountOnPage(ReviewMessage);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().ClickSubmitButton();
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().VerifyErrorMessageOnTheFrontend(MessageIsRequired);

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().TypeAMessage(this.reviewsToPage[0]);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().ClickSubmitButton();
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().VerifyErrorMessageOnTheFrontend(RaitingIsRequired);

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().TypeAMessage(this.reviewsToPage[0]);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().ClickRaitingStar(Raiting);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().ClickSubmitButton();
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().VerifyErrorMessageOnTheFrontend(AuthorIsRequired);

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().TypeAMessage(this.reviewsToPage[0]);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().ClickRaitingStar(Raiting);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().TypeYourName(this.reviewAuthor[0]);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().TypeEmailAddress(this.reviewAuthorInvalidEmail[0]);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().ClickSubmitButton();
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().VerifyErrorMessageOnTheFrontend(InvalidEmail);

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().TypeAMessage(this.reviewsToPage[0]);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().ClickRaitingStar(Raiting);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().TypeYourName(this.reviewAuthor[0]);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().TypeEmailAddress(this.reviewAuthorEmail[0]);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().ClickSubmitButton();

            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().VerifyReviewsAuthorRaitingAndContent(this.reviewAuthor, this.reviewsToPage, this.reviewRaiting);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().VerifyAverageRaiting(this.reviewRaiting[0]);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().AssertMessageAndCountOnPage(ReviewsCount);

            this.VerifyCommentBackend();
        }
        public void SelectAllPublishedVideosWithOverlayGalleryTemplate()
        {
            BAT.Macros().NavigateTo().Pages(this.Culture);
            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);

            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SwitchToListSettingsTab();
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SelectOptionInListTemplateSelector(OverlayGalleryTemplate);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();

            foreach (var video in this.videoTitles)
            {
                string src = this.GetVideoSource(video, ImageType);
                BATFeather.Wrappers().Backend().Pages().PageZoneEditorMediaWrapper().VerifyImageThumbnail(video, src);
            }

            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            int i = 3;

            foreach (var image in this.videoTitles)
            {
                var src = this.GetVideoSource(image, ImageType);
                BATFeather.Wrappers().Frontend().ImageGallery().ImageGalleryWrapper().VerifyImage(ImageAltText + i, src);
                i--;
            }

            BATFeather.Wrappers().Frontend().ImageGallery().ImageGalleryWrapper().ClickImage(ImageAltText + 2);
            var scr = this.GetVideoSource(this.videoTitles[1], VideoType);

            BATFeather.Wrappers().Frontend().VideoGallery().VideoGalleryWrapper().VerifySelectedVideoOverlayTemplate(scr);
            BATFeather.Wrappers().Frontend().VideoGallery().VideoGalleryWrapper().VerifyPreviousAndNextVideoArrowsOverlayTemplate();
            scr = this.GetVideoSource(this.videoTitles[1], string.Empty);
            string url = PageName.ToLower() + scr;

            ActiveBrowser.WaitForUrl("/" + url, true, 60000);
            BATFeather.Wrappers().Frontend().VideoGallery().VideoGalleryWrapper().CloseSelectedVideoOverlayTemplate();
            ActiveBrowser.WaitForUrl("/" + PageName.ToLower(), true, 60000);
        }
Ejemplo n.º 24
0
        public void ChangeReviewsStatusesForPage()
        {
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().AssertMessageAndCountOnPage(ReviewMessage);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().VerifyAlertMessageOnTheFrontend(AllertMessage);

            this.PublishReviewAndVerifyFrontEnd();

            BAT.Arrange(this.TestName).ExecuteArrangement("MarkAsSpamReview");
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().AssertMessageAndCountOnPage(ReviewMessage);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().VerifyAlertMessageOnTheFrontend(AllertMessage);

            this.PublishReviewAndVerifyFrontEnd();

            BAT.Arrange(this.TestName).ExecuteArrangement("HideReview");
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().AssertMessageAndCountOnPage(ReviewMessage);
            BATFeather.Wrappers().Frontend().CommentsAndReviews().ReviewsWrapper().VerifyAlertMessageOnTheFrontend(AllertMessage);

            this.PublishReviewAndVerifyFrontEnd();
        }
Ejemplo n.º 25
0
        public void UnselectNewsItemInTheSelector()
        {
            BAT.Macros().NavigateTo().Pages(this.Culture);
            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SelectWhichItemsToDisplay(WhichNewsToDisplay);

            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().ClickSelectButton();
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().WaitForItemsToAppear(20);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().SelectItemsInFlatSelector(this.newSelectedNewsNames1);
            var countOfSelectedItems = this.newSelectedNewsNames1.Count();

            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().CheckNotificationInSelectedTab(countOfSelectedItems);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().DoneSelecting();

            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().VerifySelectedItemsFromFlatSelector(this.newSelectedNewsNames1);

            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().ClickSelectButton();

            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().SelectItemsInFlatSelector("News Item Title5");
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().CheckNotificationInSelectedTab(countOfSelectedItems - 1);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().OpenAllTab();
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().SearchItemByTitle(SelectedNewsName15);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().WaitForItemsToAppear(1);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().SelectItemsInFlatSelector(SelectedNewsName15);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().OpenSelectedTab();
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().CheckNotificationInSelectedTab(countOfSelectedItems - 2);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().DoneSelecting();
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().VerifySelectedItemsFromFlatSelector(this.newSelectedNewsNames2);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();
            foreach (var newsTitle in this.newSelectedNewsNames2)
            {
                BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().CheckWidgetContent(WidgetName, newsTitle);
            }

            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            Assert.IsTrue(BATFeather.Wrappers().Frontend().News().NewsWrapper().IsNewsTitlesPresentOnThePageFrontend(this.newSelectedNewsNames2));
        }
 public void SelectedTagsOptionAndCloudListTemplate()
 {
     BAT.Macros().NavigateTo().Pages(this.Culture);
     BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
     BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
     BATFeather.Wrappers().Backend().Classifications().TagsWrapper().SelectRadioButtonOption(TagsRadioButtonIds.SelectedTags);
     BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().ClickSelectButton();
     BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().SelectItemsInFlatSelector(TagTitle + 2);
     BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().DoneSelecting();
     BATFeather.Wrappers().Backend().Classifications().TagsWrapper().SelectTagsTemplate(TagsTemplates.CloudList);
     BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();
     BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().CheckWidgetContent(WidgetName, TagTitle + 2);
     BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();
     BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
     Assert.IsTrue(BATFeather.Wrappers().Frontend().Classifications().ClassificationsWrapper().IsTagsTitlesPresentOnTheFrontendPage(new string[] { TagTitle + 2 }));
     Assert.IsFalse(BATFeather.Wrappers().Frontend().Classifications().ClassificationsWrapper().IsTagsTitlesPresentOnTheFrontendPage(new string[] { TagTitle + 1, TagTitle + 3 }));
     BATFeather.Wrappers().Frontend().Classifications().ClassificationsWrapper().VerifyCloudStyleTemplate(this.stylesTags, TagsTemplates.CloudList);
     BATFeather.Wrappers().Frontend().Classifications().ClassificationsWrapper().ClickTagTitle(TagTitle + 2);
     Assert.IsTrue(BATFeather.Wrappers().Frontend().News().NewsWrapper().IsNewsTitlesPresentOnThePageFrontend(new string[] { NewsTitle + 2 }));
     Assert.IsTrue(BATFeather.Wrappers().Frontend().News().NewsWrapper().IsNewsTitlesPresentOnThePageFrontend(new string[] { NewsTitle + 3 }));
     Assert.IsFalse(BATFeather.Wrappers().Frontend().News().NewsWrapper().IsNewsTitlesPresentOnThePageFrontend(new string[] { NewsTitle + 1 }));
 }
Ejemplo n.º 27
0
        public void AddContentBlockWidgetToTemplateBasedOnLayoutFile()
        {
            RuntimeSettingsModificator.ExecuteWithClientTimeout(800000, () => BAT.Macros().NavigateTo().CustomPage("~/sitefinity/design/pagetemplates", false, this.Culture));
            RuntimeSettingsModificator.ExecuteWithClientTimeout(800000, () => BAT.Macros().User().EnsureAdminLoggedIn());
            BAT.Macros().NavigateTo().Design().PageTemplates(this.Culture);
            BAT.Wrappers().Backend().PageTemplates().PageTemplateMainScreen().OpenTemplateEditor(TemplateTitle);
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().SwitchEditorLayoutMode(EditorLayoutMode.Layout);
            BAT.Wrappers().Backend().Pages().PageLayoutEditorWrapper().SelectAnotherTemplate();
            BAT.Wrappers().Backend().Pages().SelectTemplateWrapper().SelectATemplate("Bootstrap.default");
            BAT.Wrappers().Backend().Pages().SelectTemplateWrapper().ClickDoneButton();

            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().AddWidgetToPlaceHolderPureMvcMode(WidgetName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
            BATFeather.Wrappers().Backend().ContentBlocks().ContentBlocksWrapper().FillContentToContentBlockWidget(ContentBlockContent);
            BATFeather.Wrappers().Backend().ContentBlocks().ContentBlocksWrapper().SaveChanges();
            BAT.Wrappers().Backend().PageTemplates().PageTemplateModifyScreen().PublishTemplate();
            BAT.Arrange(this.TestName).ExecuteArrangement("GetTemplateId");
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);

            Assert.IsFalse(ActiveBrowser.ContainsText(ServerErrorMessage), "Server error was found on the page");
            Assert.IsTrue(ActiveBrowser.ContainsText(ContentBlockContent), "Content block content was not found on the page");
        }
Ejemplo n.º 28
0
        public void EditPageWithMultipageFormsViaInlineEditing()
        {
            BAT.Macros().NavigateTo().Modules().Forms(this.Culture);
            BAT.Wrappers().Backend().Forms().FormsDashboard().OpenFormFromTheGrid(FormName);
            BAT.Wrappers().Backend().Forms().FormsContentScreen().PublishForm();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            BAT.Wrappers().Frontend().InlineEditing().InlineEditingWrapper().OpenPageForEdit();
            BAT.Wrappers().Frontend().InlineEditing().InlineEditingWrapper().VerifyEditIsOn(PageName);
            BATFeather.Wrappers().Frontend().ContentBlock().ContentBlockWrapper().EditContentBlock();
            BAT.Wrappers().Frontend().InlineEditing().InlineEditingWrapper().PublishPage();
            BAT.Wrappers().Frontend().InlineEditing().InlineEditingWrapper().VerifyEditIsOff();
            BATFeather.Wrappers().Frontend().ContentBlock().ContentBlockWrapper().VerifyContentOfContentBlockOnThePageFrontend(EditedContentBlockContent);

            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().ClickNextButton();
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().SelectRadioButton(Choice);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().ClickNextButton();
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().SelectCheckbox(Choice);
            BATFeather.Wrappers().Frontend().Forms().FormsWrapper().ClickSubmit();
            BAT.Macros().NavigateTo().Modules().Forms(this.Culture);
            BAT.Wrappers().Backend().Forms().FormsDashboard().ViewFormResponses(FormName);
            BATFeather.Wrappers().Backend().Forms().FormsWrapper().VerifyNumberOfResponses(ExpectedResponsesCount);
        }
Ejemplo n.º 29
0
        public void AddPersonalizedVersionOfCardWidget()
        {
            BAT.Macros().NavigateTo().Pages(this.Culture);
            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
            BATFeather.Wrappers().Backend().Card().CardWrapper().FillHeadingText(NotPersonalizedWidgetContent);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();
            BAT.Wrappers().Backend().Personalization().PersonalizationInPages().ExpandMoreInWidgetByIndex();
            BAT.Wrappers().Backend().Personalization().PersonalizationInPages().AssertAddPersonalizedVersionLink();
            BAT.Wrappers().Backend().Personalization().PersonalizationInPages().SelectAddPersonalizedVersionLink();
            BATFeather.Wrappers().Backend().Card().CardWrapper().ClickAddButton();
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
            BATFeather.Wrappers().Backend().Card().CardWrapper().FillHeadingText(PersonalizedWidgetContent);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            BATFeather.Wrappers().Frontend().Card().CardWrapper().VerifyCardWidgetContentOnFrontend(PersonalizedWidgetContent);
            BAT.Macros().User().LogOut();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);
            BATFeather.Wrappers().Frontend().Card().CardWrapper().VerifyCardWidgetContentOnFrontend(NotPersonalizedWidgetContent);
        }
Ejemplo n.º 30
0
        public void VerifyAnchorListTemplate()
        {
            BAT.Macros().NavigateTo().Pages(this.Culture);
            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);

            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().ClickSelectButton(0);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().SelectItemsInFlatSelector(ListTitle);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().DoneSelecting();
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().VerifySelectedItemsFromFlatSelector(new string[] { ListTitle });

            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().VerifyFilterByCategoryTagDateOptions();

            BATFeather.Wrappers().Backend().Lists().ListsWidgetWrapper().SelectSortingOption(SortingOption);
            BATFeather.Wrappers().Backend().Lists().ListsWidgetWrapper().SelectListTemplate(ListTemplate);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();

            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            BATFeather.Wrappers().Frontend().Lists().ListsWidgetWrapper().VerifyAnchorListTemplate(ListTitle, this.listItems);
        }
        public void AddAndRenameGridWidgetFromFileSystemVerifyTemplateToolbox()
        {
            RuntimeSettingsModificator.ExecuteWithClientTimeout(800000, () => BAT.Macros().NavigateTo().CustomPage("~/sitefinity/design/pagetemplates", false));
            RuntimeSettingsModificator.ExecuteWithClientTimeout(800000, () => BAT.Macros().User().EnsureAdminLoggedIn());
            BAT.Wrappers().Backend().PageTemplates().PageTemplateMainScreen().OpenTemplateEditor(PageTemplateName);
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().SwitchEditorLayoutMode(EditorLayoutMode.Layout);
            BATFrontend.Wrappers().Backend().Widgets().GridWidgets().ClickBootstrapGridWidgetButton();
            BATFrontend.Wrappers().Backend().Pages().PageZoneEditorWrapper().DragAndDropLayoutWidgetToPlaceholder(LayoutCaption);
            BAT.Wrappers().Backend().Pages().PageLayoutEditorWrapper().VerifyLayoutWidgetPageEditor(LayoutCaption);
            BAT.Wrappers().Backend().PageTemplates().PageTemplateModifyScreen().PublishTemplate();

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false);
            BATFrontend.Wrappers().Frontend().Widgets().GridWidgets().VerifyNewGridWidgetOnTheFrontend(this.layouts);

            BAT.Arrange(this.TestName).ExecuteArrangement("RenameGridWidgetFromFileSystem");

            BAT.Macros().NavigateTo().Design().PageTemplates();
            BAT.Wrappers().Backend().PageTemplates().PageTemplateMainScreen().OpenTemplateEditor(PageTemplateName);
            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().SwitchEditorLayoutMode(EditorLayoutMode.Layout);
            BATFrontend.Wrappers().Backend().Widgets().GridWidgets().ClickBootstrapGridWidgetButton();
            Assert.IsFalse(
                BATFrontend.Wrappers().Backend().Pages().PageZoneEditorWrapper().IsLayoutWidgetPresentInToolbox(LayoutCaption),
                "Layout widget is found in the toolbox");

            Assert.IsTrue(
                BATFrontend.Wrappers().Backend().Pages().PageZoneEditorWrapper().IsLayoutWidgetPresentInToolbox(LayoutRenamed),
                "Layout widget is NOT found in the toolbox");

            BAT.Wrappers().Backend().Pages().PageLayoutEditorWrapper().VerifyLayoutWidgetNotPresentPageEditor(LayoutCaption);
            BAT.Wrappers().Backend().Pages().PageLayoutEditorWrapper().VerifyLayoutWidgetPageEditor(LayoutRenamed);

            BAT.Wrappers().Backend().PageTemplates().PageTemplateModifyScreen().PublishTemplate();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false);

            HttpResponseMessage response = new HttpResponseMessage();

            Assert.AreEqual(200, (int)response.StatusCode);
            BATFrontend.Wrappers().Frontend().Widgets().GridWidgets().VerifyNewGridWidgetOnTheFrontend(this.layouts);
        }
        public void SearchAndSelectNewsByTag()
        {
            BAT.Macros().NavigateTo().Pages(this.Culture);
            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SelectWhichItemsToDisplay(WhichNewsToDisplay);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SelectCheckBox(TaxonomyName);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().ClickSelectButton();
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().SearchItemByTitle(TaxonTitle1);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().SelectItemsInFlatSelector(TaxonTitle1);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().SearchItemByTitle(TaxonTitle2);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().SelectItemsInFlatSelector(TaxonTitle2);
            BATFeather.Wrappers().Backend().Widgets().SelectorsWrapper().DoneSelecting();
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().VerifySelectedItemsFromFlatSelector(new[] { TaxonTitle1, TaxonTitle2 });
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();
            this.VerifyNewsOnBackend();

            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();
            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), true, this.Culture);
            Assert.IsTrue(BATFeather.Wrappers().Frontend().News().NewsWrapper().IsNewsTitlesPresentOnThePageFrontend(new string[] { NewsTitle + 2, NewsTitle + 1 }));
            Assert.IsFalse(BATFeather.Wrappers().Frontend().News().NewsWrapper().IsNewsTitlesPresentOnThePageFrontend(new string[] { NewsTitle + 0, NewsTitle + 3, NewsTitle + 4 }));
        }
        public void SelectAllPublishedDocuments()
        {
            BAT.Macros().NavigateTo().Pages(this.Culture);
            BAT.Wrappers().Backend().Pages().PagesWrapper().OpenPageZoneEditor(PageName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().AddWidgetToPlaceHolderPureMvcMode(WidgetName);
            BATFeather.Wrappers().Backend().Pages().PageZoneEditorWrapper().EditWidget(WidgetName);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().VerifyCheckedRadioButtonOption(WidgetDesignerRadioButtonIds.allPublished);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().ExpandNarrowSelectionByArrow();
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().VerifyCheckedRadioButtonOption(WidgetDesignerRadioButtonIds.allItems);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SwitchToListSettingsTab();
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().VerifyCheckedRadioButtonOption(WidgetDesignerRadioButtonIds.usePaging);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SwitchToSingleItemSettingsTab();
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().VerifyCheckedRadioButtonOption(WidgetDesignerRadioButtonIds.samePage);
            BATFeather.Wrappers().Backend().Widgets().WidgetDesignerWrapper().SaveChanges();
            foreach (var doc in this.documentTitles)
            {
                BATFeather.Wrappers().Backend().Pages().PageZoneEditorMediaWrapper().VerifyDocument(doc, this.GetDocumentHref(true, doc, PageName + "/" + ContentType));
                BATFeather.Wrappers().Backend().Pages().PageZoneEditorMediaWrapper().VerifyDocumentIconOnTemplate(DocumentType);
            }

            BAT.Wrappers().Backend().Pages().PageZoneEditorWrapper().PublishPage();

            BAT.Macros().NavigateTo().CustomPage("~/" + PageName.ToLower(), false, this.Culture);

            foreach (var doc in this.documentTitles)
            {
                BATFeather.Wrappers().Frontend().DocumentsList().DocumentsListWrapper().VerifyDocument(doc, this.GetDocumentHref(true, doc, PageName + "/" + ContentType));
                BATFeather.Wrappers().Frontend().DocumentsList().DocumentsListWrapper().VerifyDownloadButton(this.GetDownloadHref(true, doc, ContentType));
            }

            BATFeather.Wrappers().Frontend().DocumentsList().DocumentsListWrapper().VerifyCorrectOrderOfDocuments(this.documentTitles);
            BATFeather.Wrappers().Frontend().DocumentsList().DocumentsListWrapper().VerifyDocumentIconOnTemplate(DocumentType);

            BATFeather.Wrappers().Frontend().DocumentsList().DocumentsListWrapper().ClickDocument(SelectedDocument);
            ActiveBrowser.WaitForUrl(this.GetDocumentHref(false, SelectedDocument, PageName + "/" + ContentType), true, 60000);
            BATFeather.Wrappers().Frontend().DocumentsList().DocumentsListWrapper().IsDocumentTitlePresentOnDetailMasterPage(SelectedDocument);
            BATFeather.Wrappers().Frontend().DocumentsList().DocumentsListWrapper().VerifyDownloadButton(this.GetDownloadHref(true, SelectedDocument, ContentType));
            BATFeather.Wrappers().Frontend().DocumentsList().DocumentsListWrapper().VerifySizeAndExtensionOnTemplate("5 KB", "(" + DocumentType + ")");
        }
Ejemplo n.º 34
0
        public static string CreateUrl(PageName pageName, string value)
        {
            switch (pageName) {
                case PageName.UserHome:
                    return MapPath(String.Format("/users/{0}", value));
                case PageName.UserProfile:
                    return MapPath(String.Format("/users/{0}/profile", value));
                case PageName.UserFriends:
                    return MapPath(String.Format("/users/{0}/friends", value));
                case PageName.UserKickedStories:
                    return MapPath(String.Format("/users/{0}/kicked", value));
                case PageName.UserKickedStoriesRss:
                    return MapPath(String.Format("/users/{0}/kicked/rss", value));
                case PageName.UserSubmittedStories:
                    return MapPath(String.Format("/users/{0}/submitted", value));
                case PageName.UserSubmittedStoriesRss:
                    return MapPath(String.Format("/users/{0}/submitted/rss", value));
                case PageName.UserComments:
                    return MapPath(String.Format("/users/{0}/comments", value));
                case PageName.UserCommentsRss:
                    return MapPath(String.Format("/users/{0}/comments/rss", value));
                case PageName.UserTags:
                    return MapPath(String.Format("/users/{0}/tags", value));
                case PageName.UserTest:
                    return MapPath(String.Format("/users/{0}/test", value));
                case PageName.FriendsKickedStories:
                    return MapPath(String.Format("/users/{0}/friends/kicked", value));
                case PageName.FriendsSubmittedStories:
                    return MapPath(String.Format("/users/{0}/friends/submitted", value));
                case PageName.ViewCategory:
                    return MapPath(String.Format("/{0}", value));
                case PageName.ViewCategoryRss:
                    return MapPath(String.Format("/{0}/feeds/rss", value));
                case PageName.ViewCategoryNewStories:
                    return MapPath(String.Format("/{0}/upcoming", value));
                case PageName.ViewCategoryNewStoriesRss:
                    if (String.IsNullOrEmpty(value))
                        return MapPath(String.Format("/upcoming/rss", value));
                    else
                        return MapPath(String.Format("/{0}/upcoming/rss", value));
                case PageName.LoginSwitch:
                    return MapPath(String.Format("/loginswitch/?url={0}", HttpUtility.UrlEncode(value)));
                case PageName.ViewTag:
                    return MapPath(String.Format("/tags/{0}", value));
                case PageName.ViewTagRss:
                    return MapPath(String.Format("/tags/{0}/feeds/rss", value));
                case PageName.Login:
                    return MapPath(String.Format("/login?ReturnUrl={0}", HttpUtility.UrlEncode(value)));

                case PageName.Zeitgeist:
                    return MapPath(String.Format("/zeitgeist/{0}", value));
                case PageName.Search:
                    return MapPath(String.Format("/search?q={0}", value));
                default:
                    throw new Exception("not enough params to create url");
            }
        }
Ejemplo n.º 35
0
 public static string CreateUrl(PageName pageName, string identifier1, string identifier2)
 {
     switch (pageName) {
         case PageName.ViewStory:
             return MapPath(String.Format("/{1}/{0}", identifier1, identifier2));
         case PageName.UserTag:
             return MapPath(String.Format("/users/{0}/tags/{1}", identifier1, identifier2));
         case PageName.Zeitgeist:
             return MapPath(String.Format("/zeitgeist/{0}/{1}", identifier1, identifier2));
         case PageName.UserProfile:
             return MapPath(String.Format("/users/{0}/profile?EmailSent={1}", identifier1, identifier2));
         default:
             throw new Exception("not enough params to create url");
     }
 }
Ejemplo n.º 36
0
 public PageModel(PageName page, EntryRevision entry)
 {
     Page = page;
     Entry = entry;
 }
Ejemplo n.º 37
0
 public static string CreateUrl(PageName pageName, string identifier1, string identifier2, string identifier3)
 {
     switch (pageName)
     {
         case PageName.Zeitgeist:
             return MapPath(String.Format("/zeitgeist/{0}/{1}/{2}", identifier1, identifier2, identifier3 ));
         default:
             throw new Exception("not enough params to create url");
     }
 }
Ejemplo n.º 38
0
 private void Finish(PageName pageName)
 {
     visitedPages.Clear();
     CurrentPage = container.Resolve<UserControl>(pageName.ToString());
 }
Ejemplo n.º 39
0
		private async void Finish(PageName pageName) {
			await Task.Run(() => Customer.SaveAsync());
			if (Commands.FinishCommand != null)
				Commands.FinishCommand.Execute(pageName);
		}
Ejemplo n.º 40
0
        public ActionResult Page(PageName page, int? revision)
        {
            if (revision != null && !SettingsProvider.GetSettings<FunnelWebSettings>().EnablePublicHistory)
            {
                return RedirectToAction("Page", "Wiki", new { page, revision = (int?)null });
            }

            var entry = revision == null
                                            ? Repository.FindFirstOrDefault(new EntryByNameQuery(page))
                                            : Repository.FindFirstOrDefault(new EntryByNameAndRevisionQuery(page, revision.Value));

            if (entry == null)
            {
                return Thread.CurrentPrincipal.IsAuthenticated() ?
                    RedirectToAction("Edit", "WikiAdmin", new { Area = "Admin", page }) :
                    Search(page, true);
            }

            if (entry.Status == EntryStatus.Private && !Thread.CurrentPrincipal.IsAuthenticated())
            {
                return Search(page, true);
            }

            var pageModel = new PageModel(page, entry);
            ClaimsPrincipal claimsPrincipal = Thread.CurrentPrincipal.AsClaimsPrincipal();

            Claim claim;
            if (claimsPrincipal.TryFindFirstClaim(c => c.Type == ClaimTypes.Name, out claim))
            {
                pageModel.CommenterName = claim.Value;
            }

            if (claimsPrincipal.TryFindFirstClaim(c => c.Type == ClaimTypes.Email, out claim))
            {
                pageModel.CommenterEmail = claim.Value;
            }

            ViewData.Model = pageModel;

            return new PageTemplateActionResult(entry.PageTemplate);
        }
Ejemplo n.º 41
0
 public RevisionsModel(PageName page, Entry entry)
 {
     Page = page;
     Entry = entry;
 }
Ejemplo n.º 42
0
 public static string CreateUrl(PageName pageName, string storyIdentifier, string categoryIdentifier, int commentID)
 {
     switch (pageName) {
         case PageName.ViewStory:
             return MapPath(String.Format("/{0}/{1}#Comment_{2}", categoryIdentifier, storyIdentifier, commentID));
         default:
             throw new Exception("not enough params to create url");
     }
 }
Ejemplo n.º 43
0
 public static string CreateUrl(PageName pageName, string storyIdentifier, string categoryIdentifier, Host hostProfile)
 {
     switch (pageName) {
         case PageName.ViewStory:
             return hostProfile.RootUrl + String.Format("/{0}/{1}", categoryIdentifier, storyIdentifier);
         default:
             throw new Exception("not enough params to create url");
     }
 }
Ejemplo n.º 44
0
        public static string CreateUrl(PageName pageName)
        {
            switch (pageName) {
                case PageName.Home:
                    return MapPath("/");
                case PageName.HomeRss:
                    return MapPath("/feeds/rss");
                case PageName.Login:
                    return MapPath("/login");
                case PageName.LoginSwitch:
                    return MapPath("/loginswitch");
                case PageName.Logout:
                    return MapPath("/logout");
                case PageName.Register:
                    return MapPath("/register");
                case PageName.About:
                    return MapPath("/docs/about");
                case PageName.EarnMoney:
                    return MapPath("/docs/earnmoney");
                case PageName.Contribute:
                    return MapPath("/docs/contribute");
                case PageName.JavaScriptFeeds:
                    return MapPath("/docs/webfeeds");
                case PageName.Tools:
                    return MapPath("/docs/tools");
                case PageName.Search:
                    return MapPath("/search");
                case PageName.Users:
                    return MapPath("/users");
                case PageName.SubmitStory:
                    return MapPath("/submit");
                case PageName.NewStories:
                    return MapPath("/upcoming");
                case PageName.NewStoriesRss:
                    return MapPath("/upcoming/rss");
                case PageName.ChangePassword:
                    return MapPath("/changepassword");
                case PageName.ViewTags:
                    return MapPath("/tags");
                case PageName.NotAuthorised:
                    return MapPath("/notauthorised");
                case PageName.Admin:
                    return MapPath("/admin");
                case PageName.Zeitgeist:
                    return MapPath("/zeitgeist");
                case PageName.WhoIsOnline:
                case PageName.KickSpy:
                    return MapPath("/spy");

                case PageName.ChangeEmail:
                    return MapPath("/changeemail");

                case PageName.ApiOverview:
                    return MapPath("/api");
                case PageName.ApiGenerateKey:
                    return MapPath("/api/key");

                case PageName.JsonServices:
                    return MapPath("/services/json/jsonservices.ashx");
                case PageName.LiveKicks:
                    return "http://widgets.dotnetkicks.com/";

                default:
                    throw new Exception("not enough params to create url");
            }
        }
Ejemplo n.º 45
0
		private bool CanFinish(PageName pageName) {
			return Purchases != null && Purchases.Any() &&
			       (Transaction.TotalCost != 0 || Purchases.Count > 1) &&
			       Purchases.All(purchase => (!string.IsNullOrEmpty(purchase.ItemName) && purchase.SubTotal != 0));
		}
 public bool AppliesToPage(PageName pageName)
 {
     return pageName == PageName.PersonalInformation;
 }
 private void frame_Loaded(object sender, RoutedEventArgs e)
 {
     frame.Navigate(new Uri("MainPage.xaml", UriKind.Relative));
     CurrentPage = PageName.MainPage;
 }
Ejemplo n.º 48
0
		private async void SaveCustomerExecute(PageName pageName) {
			if (Customer.IsDirty)
				await Customer.SaveAsync();
			OnPropertyChanged(string.Empty);
			if (Commands.NewPageCommand != null)
				Commands.NewPageCommand.Execute(pageName);
		}
 public bool AppliesToPage(PageName pageName)
 {
     return pageName == PageName.PersonalInformation && DateTime.Now.Minute%2 == 0;
 }
Ejemplo n.º 50
0
 public PageModel(PageName page = null, EntryRevision entry = null, List<EntryRevision> entrylist = null)
 {
     Page = page;
     Entry = entry;
     EntryList = entrylist;
 }
 public bool AppliesToPage(PageName pageName)
 {
     return pageName == PageName.AddressInformation;
 }
Ejemplo n.º 52
0
		private bool SaveCustomerCanExecute(PageName pageName) {
			return !string.IsNullOrEmpty(Customer.FirstName) &&
			       !string.IsNullOrEmpty(Customer.LastName) &&
			       !string.IsNullOrEmpty(Customer.PhotoPath) &&
			       !string.IsNullOrEmpty(Address.Postcode);
		}
 public virtual ActionResult Pingbacks(PageName page)
 {
     var entry = Repository.FindFirst(new GetEntryWithPingbacksQuery(page));
     return View(entry);
 }
Ejemplo n.º 54
0
 private void NavigateToNewPage(PageName pageName)
 {
     if (CurrentPage != null)
         visitedPages.Push(CurrentPage);
     try {
         CurrentPage = ResolvePage(pageName);
     } catch (Exception e) {
         LogHelper.LogException(e);
     }
 }
        public virtual ActionResult Revisions(PageName page)
        {
            var settings = SettingsProvider.GetSettings<FunnelWebSettings>();
            if (!settings.EnablePublicHistory)
            {
                return RedirectToAction("Page", "Wiki", new { page });
            }

            var entry = Repository.FindFirstOrDefault(new EntryByNameQuery(page));
            if (entry == null)
            {
                return RedirectToAction("Edit", "WikiAdmin", new { page });
            }

            ViewData.Model = new RevisionsModel(page, entry.Entry.Value);
            return View();
        }
Ejemplo n.º 56
0
 private UserControl ResolvePage(PageName pageName)
 {
     return container.Resolve<UserControl>(pageName.ToString());
 }
        public virtual ActionResult Page(PageName page, PageModel model)
        {
            var entry = Repository.FindFirstOrDefault(new EntryByNameQuery(page));
            if (entry == null)
                return RedirectToAction("Recent");

            if (!ModelState.IsValid)
            {
                model.Entry = entry;
                model.Page = page;
                ViewData.Model = model;
                return new PageTemplateActionResult(entry.PageTemplate, "Page");
            }

            var comment = entry.Entry.Value.Comment();
            comment.AuthorEmail = model.CommenterEmail ?? string.Empty;
            comment.AuthorName = model.CommenterName ?? string.Empty;
            comment.AuthorUrl = model.CommenterBlog ?? string.Empty;
            comment.AuthorIp = Request.UserHostAddress;
            comment.EntryRevisionNumber = entry.LatestRevisionNumber;
            comment.Body = model.Comments;

            try
            {
                SpamChecker.Verify(comment);
            }
            catch (Exception ex)
            {
                HttpContext.Trace.Warn("Akismet is offline, comment cannot be validated: " + ex);
            }

            // Anything posted after the disable date is considered spam (the comment box shouldn't be visible anyway)
            var settings = SettingsProvider.GetSettings<FunnelWebSettings>();
            if (settings.DisableCommentsOlderThan > 0 && DateTime.UtcNow.AddDays(settings.DisableCommentsOlderThan) > entry.Published)
            {
                comment.IsSpam = true;
                entry.Entry.Value.CommentCount = entry.Entry.Value.Comments.Count(c => !c.IsSpam);
            }

            EventPublisher.Publish(new CommentPostedEvent(entry.Entry.Value, comment));

            return RedirectToAction("Page", new { page })
                .AndFlash("Thanks, your comment has been posted.");
        }