From 3a24df6956af9771d3709a557541eeb6bc327cb6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9gis=20Hanol?= Date: Thu, 29 Jan 2015 17:35:52 +0100 Subject: [PATCH] FIX: adding a custom emoji needed an application restart to work on the server-side rendering --- .../dialects/{html.js => html_dialect.js} | 0 ...ink_dialects.js => nested_link_dialect.js} | 0 lib/pretty_text.rb | 19 +++++++++---------- 3 files changed, 9 insertions(+), 10 deletions(-) rename app/assets/javascripts/discourse/dialects/{html.js => html_dialect.js} (100%) rename app/assets/javascripts/discourse/dialects/{nested_link_dialects.js => nested_link_dialect.js} (100%) diff --git a/app/assets/javascripts/discourse/dialects/html.js b/app/assets/javascripts/discourse/dialects/html_dialect.js similarity index 100% rename from app/assets/javascripts/discourse/dialects/html.js rename to app/assets/javascripts/discourse/dialects/html_dialect.js diff --git a/app/assets/javascripts/discourse/dialects/nested_link_dialects.js b/app/assets/javascripts/discourse/dialects/nested_link_dialect.js similarity index 100% rename from app/assets/javascripts/discourse/dialects/nested_link_dialects.js rename to app/assets/javascripts/discourse/dialects/nested_link_dialect.js diff --git a/lib/pretty_text.rb b/lib/pretty_text.rb index 6908c6073f4..ee5aa578331 100644 --- a/lib/pretty_text.rb +++ b/lib/pretty_text.rb @@ -76,19 +76,13 @@ module PrettyText ) Dir["#{app_root}/app/assets/javascripts/discourse/dialects/**.js"].sort.each do |dialect| - unless dialect =~ /\/dialect\.js$/ - ctx.load(dialect) - end + ctx.load(dialect) unless dialect =~ /\/dialect\.js$/ end - # custom emojis + # emojis emoji = ERB.new(File.read("#{app_root}/app/assets/javascripts/discourse/lib/emoji/emoji.js.erb")) ctx.eval(emoji.result) - Emoji.custom.each do |emoji| - ctx.eval("Discourse.Dialect.registerEmoji('#{emoji.name}', '#{emoji.url}');") - end - # Load server side javascripts if DiscoursePluginRegistry.server_side_javascripts.present? DiscoursePluginRegistry.server_side_javascripts.each do |ssjs| @@ -102,8 +96,8 @@ module PrettyText end end - ctx['quoteTemplate'] = File.open(app_root + 'app/assets/javascripts/discourse/templates/quote.hbs') {|f| f.read} - ctx['quoteEmailTemplate'] = File.open(app_root + 'lib/assets/quote_email.hbs') {|f| f.read} + ctx['quoteTemplate'] = File.read("#{app_root}/app/assets/javascripts/discourse/templates/quote.hbs") + ctx['quoteEmailTemplate'] = File.read("#{app_root}/lib/assets/quote_email.hbs") ctx.eval("HANDLEBARS_TEMPLATES = { 'quote': Handlebars.compile(quoteTemplate), 'quote_email': Handlebars.compile(quoteEmailTemplate), @@ -160,6 +154,11 @@ module PrettyText end end + # custom emojis + Emoji.custom.each do |emoji| + context.eval("Discourse.Dialect.registerEmoji('#{emoji.name}', '#{emoji.url}');") + end + context.eval('opts["mentionLookup"] = function(u){return helpers.is_username_valid(u);}') context.eval('opts["lookupAvatar"] = function(p){return Discourse.Utilities.avatarImg({size: "tiny", avatarTemplate: helpers.avatar_template(p)});}') baked = context.eval('Discourse.Markdown.markdownConverter(opts).makeHtml(raw)')