From 2ff5b1dfbc61dc940433aa589651d97a67bf5bd3 Mon Sep 17 00:00:00 2001 From: Toks Date: Tue, 17 Jun 2014 13:36:33 -0400 Subject: [PATCH] bulk reqs: link to wiki pages/tag search --- app/models/bulk_update_request.rb | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/app/models/bulk_update_request.rb b/app/models/bulk_update_request.rb index 4a13002c4..25c864037 100644 --- a/app/models/bulk_update_request.rb +++ b/app/models/bulk_update_request.rb @@ -38,7 +38,24 @@ class BulkUpdateRequest < ActiveRecord::Base end def reason_with_link - "[code]\n#{script}\n[/code]\n\nh4. Reason\n\n#{reason}\n\n\"Link to request\":/bulk_update_requests?search[id]=#{id}\n" + "#{script_with_links}\n\nh4. Reason\n\n#{reason}\n\n\"Link to request\":/bulk_update_requests?search[id]=#{id}\n" + end + + def script_with_links + tokens = AliasAndImplicationImporter.tokenize(script) + lines = tokens.map do |token| + case token[0] + when :create_alias, :create_implication, :remove_alias, :remove_implication + "#{token[0].to_s.tr("_", " ")} [[#{token[1]}]] -> [[#{token[2]}]]" + + when :mass_update + "mass update {{#{token[1]}}} -> #{token[2]}" + + else + raise "Unknown token: #{token[0]}" + end + end + lines.join("\n") end def reject!