X-Git-Url: https://git.squeep.com/?a=blobdiff_plain;f=src%2Ftemplate%2Froot-html.js;h=575d4bcbdf439c0287f1bc565e15fb4d10834ab0;hb=3ca7fccb306d0b23626befc3791ffa360b3db1e7;hp=fc655c01200b2f94cacec37d82d7847d044ca108;hpb=afc5da271215282fa723e79a12562d3b86734326;p=websub-hub diff --git a/src/template/root-html.js b/src/template/root-html.js index fc655c0..575d4bc 100644 --- a/src/template/root-html.js +++ b/src/template/root-html.js @@ -1,11 +1,18 @@ 'use strict'; const th = require('./template-helper'); +const { sessionNavLinks } = require('@squeep/authentication-module'); -function hAppSection(pageTitle) { - return ` `; } +/** + * + * @param {string} contactHTML html + * @returns {string} html + */ function contactSection(contactHTML) { let section = ''; if (contactHTML) { @@ -133,33 +154,37 @@ ${contactHTML} /** * - * @param {Object} ctx - * @param {Object} options - * @param {Object} options.manager - * @param {String} options.adminContactHTML - * @param {String} options.manager.pageTitle - * @param {String} options.manager.publicHub - * @param {Object} options.dingus - * @param {String} options.dingus.selfBaseUrl - * @returns {String} + * @param {object} ctx context + * @param {object} options options + * @param {object} options.manager manager options + * @param {string} options.adminContactHTML html + * @param {string} options.manager.pageTitle title + * @param {string} options.manager.publicHub is public + * @param {object} options.dingus dingus options + * @param {string} options.dingus.selfBaseUrl url + * @returns {string} html */ module.exports = (ctx, options) => { + const pagePathLevel = 0; const pageTitle = options.manager.pageTitle; const isPublicHub = options.manager.publicHub; const contactHTML = options.adminContactHTML; const footerEntries = options.manager.footerEntries; const hubURL = options.dingus.selfBaseUrl || 'https://hub.example.com/'; - const headElements = []; - const navLinks = [{ - href: 'admin/', - text: 'Admin', - }]; - const mainContent = [ + const htmlOptions = { + pageIdentifier: 'root', + pageTitle, + logoUrl: options.manager.logoUrl, + footerEntries, + navLinks: [], + }; + th.navLinks(pagePathLevel, ctx, htmlOptions); + sessionNavLinks(pagePathLevel, ctx, htmlOptions); + const content = [ aboutSection(), usageSection(isPublicHub, hubURL), contactSection(contactHTML), - hAppSection(pageTitle), + hAppSection(pageTitle, options.manager.logoUrl), ]; - return th.htmlTemplate(ctx, 0, pageTitle, headElements, navLinks, mainContent, footerEntries, - ); + return th.htmlPage(pagePathLevel, ctx, htmlOptions, content); }; \ No newline at end of file