From 7f9261b0cb76d99488eebf19efd517337e8e6df0 Mon Sep 17 00:00:00 2001 From: r888888888 Date: Thu, 4 Feb 2016 13:46:37 -0800 Subject: [PATCH] strip syntax for meta description tag --- app/logical/d_text.rb | 18 ++++++++++++++++++ app/logical/weekly_maintenance.rb | 2 +- app/presenters/wiki_page_presenter.rb | 2 +- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/app/logical/d_text.rb b/app/logical/d_text.rb index 339916e5a..9d876990b 100644 --- a/app/logical/d_text.rb +++ b/app/logical/d_text.rb @@ -323,6 +323,24 @@ class DText html.join("").html_safe end + def self.strip(s) + s.gsub!(/[\r\n]+/m, " ") + s.gsub!(/\[\/?(?:b|i|s|u|tn|tr|td|th|thead|tbody|quote|code|spoilers|spoiler|expand|table)\]/, "") + s.gsub!(/\[\[([^\|\]]+)\|([^\]]+)\]\]/m, '\2') + s.gsub!(/\[\[([^\]]+)\]\]/, '\1') + s.gsub!(/\{\{([^\}]+)\}\}/, '\1') + s.gsub!(/("[^"]+":(https?:\/\/|\/)[^\s\r\n<>]+|https?:\/\/[^\s\r\n<>]+|"[^"]+":\[(https?:\/\/|\/)[^\s\r\n<>\]]+\])+/) do |url| + if url =~ /^"([^"]+)":\[(.+)\]$/ + $1 + elsif url =~ /^"([^"]+)":(.+)$/ + $1 + else + url + end + end + s + end + def self.sanitize(text) text.gsub!(/<( |-|3|:|>|\Z)/, "<\\1") diff --git a/app/logical/weekly_maintenance.rb b/app/logical/weekly_maintenance.rb index dcca7e6b8..01cbdc68a 100644 --- a/app/logical/weekly_maintenance.rb +++ b/app/logical/weekly_maintenance.rb @@ -2,6 +2,6 @@ class WeeklyMaintenance def run ActiveRecord::Base.connection.execute("set statement_timeout = 0") UserPasswordResetNonce.prune! - JanitorPruner.new.prune! + # JanitorPruner.new.prune! end end diff --git a/app/presenters/wiki_page_presenter.rb b/app/presenters/wiki_page_presenter.rb index cd45a0f3d..95d59aafe 100644 --- a/app/presenters/wiki_page_presenter.rb +++ b/app/presenters/wiki_page_presenter.rb @@ -10,7 +10,7 @@ class WikiPagePresenter end def blurb - excerpt.try(:gsub, /<.+?>/, "") + DText.strip(excerpt.to_s) end def consequent_tag_aliases