Example #1
0
        public object GetHtml(TemplateMetadataDebug request)
        {
            var feature = HostContext.GetPlugin <TemplatePagesFeature>();

            if (!HostContext.DebugMode)
            {
                RequiredRoleAttribute.AssertRequiredRoles(Request, feature.MetadataDebugAdminRole);
            }

            if (request.Template != null)
            {
                return(Any(request));
            }

            var defaultTemplate = feature.DebugDefaultTemplate ?? DefaultTemplate;

            var html = HtmlTemplates.GetMetadataDebugTemplate();

            html = html.Replace("{0}", defaultTemplate);

            var authsecret = Request.GetParam(Keywords.AuthSecret);

            if (HostContext.Config.AdminAuthSecret != null &&
                HostContext.Config.AdminAuthSecret == authsecret)
            {
                html = html.Replace("{ template: template }",
                                    "{ template: template, authsecret:" + feature.DefaultFilters.jsQuotedString(authsecret).ToRawString() + " }");
            }

            return(html);
        }