@Override
  public String getURL(PortletRequest portletRequest, PortletResponse portletResponse) {

    String url = StringPool.BLANK;

    ThemeDisplay themeDisplay = (ThemeDisplay) portletRequest.getAttribute(WebKeys.THEME_DISPLAY);

    try {
      long roleId = _getRoleId(portletRequest);

      Role role = _roleService.fetchRole(roleId);

      int[] roleTypes = {role.getType()};

      if (role.getType() != RoleConstants.TYPE_REGULAR) {
        roleTypes = new int[] {RoleConstants.TYPE_REGULAR, role.getType()};
      }

      url =
          PermissionsURLTag.doTag(
              StringPool.BLANK,
              Role.class.getName(),
              themeDisplay.getScopeGroupName(),
              null,
              String.valueOf(_getRoleId(portletRequest)),
              LiferayWindowState.POP_UP.toString(),
              roleTypes,
              themeDisplay.getRequest());
    } catch (Exception e) {
    }

    return url;
  }
  @Override
  public String getURL() {
    String url = StringPool.BLANK;

    try {
      Layout layout = getLayout();

      url =
          PermissionsURLTag.doTag(
              StringPool.BLANK,
              Layout.class.getName(),
              layout.getName(themeDisplay.getLocale()),
              null,
              String.valueOf(layout.getPlid()),
              LiferayWindowState.POP_UP.toString(),
              null,
              themeDisplay.getRequest());
    } catch (Exception e) {
    }

    return url;
  }
  @Override
  public void permissionsURL(
      String redirect,
      String modelResource,
      String modelResourceDescription,
      Object resourceGroupId,
      String resourcePrimKey,
      String windowState,
      int[] roleTypes)
      throws Exception {

    PermissionsURLTag.doTag(
        redirect,
        modelResource,
        modelResourceDescription,
        resourceGroupId,
        resourcePrimKey,
        windowState,
        null,
        roleTypes,
        _pageContext);
  }
  @Override
  public String getURL(PortletRequest portletRequest, PortletResponse portletResponse) {

    String url = StringPool.BLANK;

    ThemeDisplay themeDisplay = (ThemeDisplay) portletRequest.getAttribute(WebKeys.THEME_DISPLAY);

    try {
      url =
          PermissionsURLTag.doTag(
              StringPool.BLANK,
              "com.liferay.shopping",
              themeDisplay.getScopeGroupName(),
              null,
              String.valueOf(themeDisplay.getScopeGroupId()),
              LiferayWindowState.POP_UP.toString(),
              null,
              themeDisplay.getRequest());
    } catch (Exception e) {
    }

    return url;
  }