/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/nodebb-plugin-openedx-discussion@0.1.0/library.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
"use strict";require("module-alias/register");const{async:meta}=require.main.require("./src/meta"),constants=require("@lib/constants"),controllers=require("@lib/controllers"),authentication=require("@utils/authentication"),logger=require("@utils/logger"),plugin={init:(e,t)=>{const i=e.router,a=e.middleware;i.get("/admin/plugins/openedx-discussion",a.admin.buildHeader,controllers.adminPanel.renderAdminPage),i.get("/api/admin/plugins/openedx-discussion",controllers.adminPanel.renderAdminPage),i.get("/embed",a.buildHeader,controllers.embed.embedView),i.get("/api/embed",controllers.embed.embedView),i.use(((e,t,i,a)=>{logger.error(e),a(e)})),t()},addAdminNavigation:(e,t)=>{e.plugins.push({route:"/plugins/openedx-discussion",icon:"fa-user-secret",name:"Openedx Discussion"}),t(null,e)},addHeaderVariables:async(e,t)=>{e.req.cookies.embed&&e.req.cookies.embed.isEmbedView&&(e.templateValues.isEmbedView=!0);try{const i=await meta.settings.get(constants.PLUGIN_NAME);return e.templateValues.isEmbedView=e.req.cookies.embed,e.templateValues.loginURL=i.loginURL,e.templateValues.registrationURL=i.registrationURL,e.templateValues.logoutURL=i.logoutURL,t(null,e)}catch(e){t(e)}},authenticateSession:async(e,t,i)=>{const a=e.uid;try{const r=await meta.settings.get(constants.PLUGIN_NAME);if("/login"===e.path&&r.loginURL&&"/admin"!==e.session.returnTo)return t.redirect(r.loginURL);if("/register"===e.path&&r.registrationURL)return t.redirect(r.registrationURL);const n=r.jwtCookieName;return e.cookies[n]?(await authentication.loginByJwtToken(e,r),e.uid===a?i():t.redirect(e.originalUrl)):e.user&&1!==e.user.uid?(e.logout(),t.redirect("/login")):i()}catch(e){return i(e)}},cleanSession:async(e,t)=>{try{const i=await meta.settings.get(constants.PLUGIN_NAME);i.jwtCookieName&&e.res.clearCookie(i.jwtCookieName),t()}catch(e){t(e)}},addTopicViewVariables:(e,t)=>{e.req.cookies.embed&&(e.templateData.isEmbedView=!0,e.templateData.breadcrumbs=null,e.templateData.showCategoryLink=!0,e.templateData.hideFooter=!0),t(null,e)},addCategoryViewVariables:(e,t)=>{e.req.cookies.embed&&(e.templateData.isEmbedView=!0,e.templateData.breadcrumbs=null,e.templateData.showCategoryLink=!1,e.templateData.hideFooter=!0),t(null,e)}};module.exports=plugin;
//# sourceMappingURL=/sm/217ff478916afbaf8a4436a902714a8eb4a6d02e71036e43db611be535e12cf4.map