/*
   * user tapped follow button to follow/unfollow the blog this post is from
   */
  private void togglePostFollowed() {
    if (!isAdded() || !hasPost()) {
      return;
    }

    final boolean isAskingToFollow = !ReaderPostTable.isPostFollowed(mPost);
    final ReaderFollowButton followButton =
        (ReaderFollowButton) getView().findViewById(R.id.follow_button);

    ReaderActions.ActionListener listener =
        new ReaderActions.ActionListener() {
          @Override
          public void onActionResult(boolean succeeded) {
            if (!isAdded()) {
              return;
            }
            followButton.setEnabled(true);
            if (!succeeded) {
              int resId =
                  (isAskingToFollow
                      ? R.string.reader_toast_err_follow_blog
                      : R.string.reader_toast_err_unfollow_blog);
              ToastUtils.showToast(getActivity(), resId);
              followButton.setIsFollowedAnimated(!isAskingToFollow);
            }
          }
        };

    followButton.setEnabled(false);

    if (ReaderBlogActions.followBlogForPost(mPost, isAskingToFollow, listener)) {
      followButton.setIsFollowedAnimated(isAskingToFollow);
    }
  }