docs: protected String buildHtmlHelpNavigation() {
  
          StringBuffer result = new StringBuffer(512);
          // determine current URI
          String currentUri = getParamHelpresource();
          // ignore ressources outside content folder: e.g. the search.html which
          // is in the general help module and not the german or english online help folder.
          if ((currentUri == null) || (currentUri.indexOf("/workplace/locales/") == -1)) {
              // BUG!: getLocale().getLanguage() -> getCms().getRequestContext().getLocale() returns "en"!
              //currentUri = "/system/workplace/locales/" + getLocale().getLanguage() + "/help/";
              currentUri = resolveMacros(PATH_HELP) + DEFAULT_HELPFILE;
          }
          // determine level of help start folder
          int helpLevel = CmsResource.getPathLevel(PATH_HELP);
  
          // get a list of all pages / subfolders in the help folder
          List<CmsJspNavElement> navList = getJsp().getNavigation().getNavigationTreeForFolder(currentUri, helpLevel, 99);
          Iterator<CmsJspNavElement> i = navList.iterator();
  
          while (i.hasNext()) {
              CmsJspNavElement nav = i.next();
              // calculate level to display
              int level = nav.getNavTreeLevel() - (helpLevel - 1);
              if (nav.getResourceName().equals(currentUri)
                  || (nav.isFolderLink() && currentUri.equals(nav.getResourceName() + "index.html"))) {
                  result.append("\t\t<span class=\"navhelpcurrent\" style=\"padding-left: ");
                  result.append(level * 10);
                  result.append("px; background-position: ");
                  result.append((level - 1) * 10);
                  result.append("px 1px;\">");
                  result.append(nav.getNavText());
                  result.append("</span><br style=\"clear:left\">\n");
              } else {
                  result.append("\t\t<a class=\"navhelp\" style=\"padding-left: ");
                  result.append(level * 10);
                  result.append("px; background-position: ");
                  result.append((level - 1) * 10);
                  result.append("px 1px;\" href=\"");
                  if (nav.isFolderLink()) {
                      // append file name to folder links to avoid static export issues
                      result.append(
                          getJsp().link(
                              "/system/modules/org.opencms.workplace.help/jsptemplates/help_body.jsp?helpresource="
                                  + nav.getResourceName()
                                  + "index.html&"
                                  + CmsLocaleManager.PARAMETER_LOCALE
                                  + "="
                                  + getLocale()));
                  } else {
                      result.append(getJsp().link(
                          "/system/modules/org.opencms.workplace.help/jsptemplates/help_body.jsp?helpresource="
                              + nav.getResourceName()
                              + "&"
                              + CmsLocaleManager.PARAMETER_LOCALE
                              + "="
                              + getLocale()));
                      //                    result.append(getJsp().link(nav.getResourceName()));
                  }
                  result.append("\">");
                  result.append(nav.getNavText());
                  result.append("</a><br style=\"clear:left\">\n");
              }
          }
          return result.toString();
      }