/** @param collectionItemDo */
  @UiConstructor
  public ResourceFrameBreakerView(final CollectionItemDo collectionItemDo, boolean isGoogleFile) {
    initWidget(uiBinder.createAndBindUi(this));
    PlayerBundle.INSTANCE.getPlayerStyle().ensureInjected();
    this.collectionItemDo = collectionItemDo;
    if (!isGoogleFile) {
      setLabelsAndIds();
      supportTip.setStyleName(PlayerBundle.INSTANCE.getPlayerStyle().supportTip());
      supportTip.setText(i18n.GL1453());
      supportTip.getElement().setId("lblSupportTip");
      supportTip.getElement().setAttribute("alt", i18n.GL1453());
      supportTip.getElement().setAttribute("title", i18n.GL1453());
      btnResourceLink.addStyleName(PlayerBundle.INSTANCE.getPlayerStyle().btnResourceLink());
    } else {
      btnResourceLink.removeFromParent();
    }
    imgFieldTrip.setUrl(collectionItemDo.getResource().getThumbnailUrl());
    if (collectionItemDo.getResource().getResourceFormat() != null) {
      defaultResourceCategory = collectionItemDo.getResource().getResourceFormat().getDisplayName();
    }
    if (defaultResourceCategory != null) {
      if (defaultResourceCategory.equalsIgnoreCase("Lesson")
          || defaultResourceCategory.equalsIgnoreCase("Textbook")
          || defaultResourceCategory.equalsIgnoreCase("Handout")) {
        defaultResourceCategory =
            defaultResourceCategory
                .replaceAll("Lesson", "Text")
                .replaceAll("Textbook", "Text")
                .replaceAll("Handout", "Text")
                .replaceAll("lesson", "Text")
                .replaceAll("textbook", "Text")
                .replaceAll("handout", "Text");
      }
      if (defaultResourceCategory.equalsIgnoreCase("Slide")) {
        defaultResourceCategory =
            defaultResourceCategory.replaceAll("Slide", "Image").replaceAll("slide", "Image");
      }
      if (defaultResourceCategory.equalsIgnoreCase("Exam")
          || defaultResourceCategory.equalsIgnoreCase("Challenge")
          || defaultResourceCategory.equalsIgnoreCase("Website")) {
        defaultResourceCategory =
            defaultResourceCategory
                .replaceAll("Exam", "Webpage")
                .replaceAll("Challenge", "Webpage")
                .replaceAll("exam", "Webpage")
                .replaceAll("challenge", "Webpage");
      }
    }
    imgFieldTrip.addErrorHandler(
        new ErrorHandler() {

          @Override
          public void onError(ErrorEvent event) {
            imgFieldTrip.setUrl(DEFULT_IMAGE_PREFIX + defaultResourceCategory.toLowerCase() + PNG);
          }
        });
    if (collectionItemDo.getResource().getResourceFormat() != null) {
      resourceCategory.addStyleName(
          getResourceTypeImage(
              collectionItemDo.getResource().getResourceFormat().getDisplayName()));
    }
  }
  public void setView(UserFollowDo userFollowDo) {
    profileThumbnailImage.setUrl(userFollowDo.getProfileImageUrl());
    profileThumbnailImage.addErrorHandler(
        new ErrorHandler() {

          @Override
          public void onError(ErrorEvent event) {
            profileThumbnailImage.setUrl("images/settings/setting-user-image.png");
          }
        });

    // userNameLabel.setText(userFollowDo.getUsername());
    userNameLabel.getElement().setId(userFollowDo.getGooruUid());

    int collectionCount = userFollowDo.getSummary().getCollection();
    userCollections.setText(
        collectionCount + (collectionCount == 1 ? " Collection" : " Collections"));
    userCollections
        .getElement()
        .setAttribute(
            "alt", collectionCount + (collectionCount == 1 ? " Collection" : " Collections"));
    userCollections
        .getElement()
        .setAttribute(
            "title", collectionCount + (collectionCount == 1 ? " Collection" : " Collections"));

    userFollowDetails.setText(
        userFollowDo.getSummary().getFollowers()
            + (userFollowDo.getSummary().getFollowers() == 1 ? " Follower" : " Followers")
            + " | "
            + userFollowDo.getSummary().getFollowing()
            + " Following");
    userFollowDetails
        .getElement()
        .setAttribute(
            "alt",
            userFollowDo.getSummary().getFollowers()
                + (userFollowDo.getSummary().getFollowers() == 1 ? " Follower" : " Followers")
                + " | "
                + userFollowDo.getSummary().getFollowing()
                + " Following");
    userFollowDetails
        .getElement()
        .setAttribute(
            "title",
            userFollowDo.getSummary().getFollowers()
                + (userFollowDo.getSummary().getFollowers() == 1 ? " Follower" : " Followers")
                + " | "
                + userFollowDo.getSummary().getFollowing()
                + " Following");

    String gooruUid = userNameLabel.getElement().getId();
    Anchor anchor = new Anchor();
    String userName = userFollowDo.getUsername();

    String token = "#" + PlaceTokens.PROFILE_PAGE + "&id=" + gooruUid + "&user="******"style", "font-size: 18px !important");
    anchor.setTarget("_blank");
    userNameLabel.setText("");
    userNameLabel.getElement().setAttribute("alt", "");
    userNameLabel.getElement().setAttribute("title", "");
    //		boolean isEnabled =  userFollowDo.getCustomFields() != null &&
    // userFollowDo.getCustomFields().get(0).getOptionalValue() != null &&
    // userFollowDo.getCustomFields().get(0).getOptionalValue().equalsIgnoreCase("true") ? true :
    // false;
    boolean isEnabled = false;
    if (userFollowDo.getCustomFields() != null) {
      for (int i = 0; i < userFollowDo.getCustomFields().size(); i++)
        if (userFollowDo
            .getCustomFields()
            .get(i)
            .getOptionalKey()
            .equalsIgnoreCase("show_profile_page")) {
          isEnabled =
              userFollowDo.getCustomFields().get(i).getOptionalValue().equalsIgnoreCase("true")
                  ? true
                  : false;
        }
    }
    if (isEnabled) {
      userNameLabel.getElement().appendChild(anchor.getElement());
    } else {
      userNameLabel.setText(userFollowDo.getUsername());
      userNameLabel.getElement().setAttribute("alt", userFollowDo.getUsername());
      userNameLabel.getElement().setAttribute("title", userFollowDo.getUsername());
      userNameLabel.getElement().getStyle().setCursor(Cursor.DEFAULT);
    }
  }