public CroppingToolPageObject clickOnImage(int imageIndex) {
    WebElement image = images.get(imageIndex);

    wait.forElementVisible(image);
    image.click();

    return new CroppingToolPageObject(driver);
  }
 public void type(String searchPhrase) {
   wait.forElementVisible(searchInput);
   searchInput.sendKeys(searchPhrase);
 }
 public CuratedContentPageObject clickOnMainPageLink() {
   wait.forElementVisible(linkToMainPage);
   jsActions.scrollToElement(linkToMainPage);
   linkToMainPage.click();
   return this;
 }
 public CuratedContentPageObject clickOnLoadMoreButton() {
   wait.forElementVisible(loadMoreButton);
   jsActions.scrollToElement(loadMoreButton);
   loadMoreButton.click();
   return this;
 }
 public int getCuratedContentItemsNumber() {
   wait.forElementVisible(curatedContentItems.get(0));
   return curatedContentItems.size();
 }
 public CuratedContentPageObject clickOnCuratedContentElementByIndex(int elementNumber) {
   wait.forElementVisible(curatedContentItems.get(elementNumber));
   jsActions.scrollToElement(curatedContentItems.get(elementNumber));
   curatedContentItems.get(elementNumber).click();
   return this;
 }
 public CuratedContentPageObject isLoadMoreButtonHidden() {
   wait.forElementNotPresent(loadMoreButtonSelector);
   PageObjectLogging.logInfo(Labels.LOAD_MORE_BUTTON.name + " " + MercuryMessages.INVISIBLE_MSG);
   return this;
 }
 public String getTitle() {
   wait.forElementVisible(sectionTitle);
   return sectionTitle.getText();
 }
 public CuratedContentPageObject isCuratedContentItemVisibleByIndex(int elementNumber) {
   wait.forElementVisible(curatedContentItems.get(elementNumber));
   PageObjectLogging.logInfo(Labels.SECTION_ITEM.name + " " + MercuryMessages.VISIBLE_MSG);
   return this;
 }
 public CuratedContentPageObject isLoadMoreButtonVisible() {
   wait.forElementVisible(loadMoreButton);
   PageObjectLogging.logInfo(Labels.LOAD_MORE_BUTTON.name + " " + MercuryMessages.VISIBLE_MSG);
   return this;
 }
 public CuratedContentPageObject isSectionVisible() {
   wait.forElementVisible(sectionContainer);
   PageObjectLogging.logInfo(Labels.SECTION.name + " " + MercuryMessages.VISIBLE_MSG);
   return this;
 }
 public CuratedContentPageObject isLinkToMainPageVisible() {
   wait.forElementVisible(linkToMainPage);
   PageObjectLogging.logInfo(Labels.LINK_TO_MAIN_PAGE.name + " " + MercuryMessages.VISIBLE_MSG);
   return this;
 }
 public CuratedContentPageObject isTitleVisible() {
   wait.forElementVisible(sectionTitle);
   PageObjectLogging.logInfo(Labels.SECTION_TITLE.name + " " + MercuryMessages.VISIBLE_MSG);
   return this;
 }
 public CuratedContentPageObject isVideoIconVisible() {
   wait.forElementPresent(videoItemIcon);
   return this;
 }
 public CuratedContentPageObject isImageIconVisible() {
   wait.forElementPresent(imageItemIcon);
   return this;
 }