fixes #2198
This commit is contained in:
@@ -8,7 +8,7 @@ class AliasAndImplicationImporter
|
||||
end
|
||||
|
||||
def process!
|
||||
tokens = tokenize(text)
|
||||
tokens = AliasAndImplicationImporter.tokenize(text)
|
||||
parse(tokens)
|
||||
end
|
||||
|
||||
@@ -16,9 +16,8 @@ class AliasAndImplicationImporter
|
||||
@rename_aliased_pages == "1"
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def tokenize(text)
|
||||
def self.tokenize(text)
|
||||
text = text.dup
|
||||
text.gsub!(/^\s+/, "")
|
||||
text.gsub!(/\s+$/, "")
|
||||
text.gsub!(/ {2,}/, " ")
|
||||
@@ -41,6 +40,8 @@ private
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def parse(tokens)
|
||||
ActiveRecord::Base.transaction do
|
||||
tokens.map do |token|
|
||||
|
||||
@@ -8,6 +8,7 @@ class BulkUpdateRequest < ActiveRecord::Base
|
||||
validates_presence_of :script
|
||||
validates_presence_of :title
|
||||
validates_inclusion_of :status, :in => %w(pending approved rejected)
|
||||
validate :script_formatted_correctly
|
||||
attr_accessible :user_id, :forum_topic_id, :script, :title, :reason
|
||||
attr_accessible :status, :as => [:admin]
|
||||
before_validation :initialize_attributes, :on => :create
|
||||
@@ -35,4 +36,12 @@ class BulkUpdateRequest < ActiveRecord::Base
|
||||
self.user_id = CurrentUser.user.id unless self.user_id
|
||||
self.status = "pending"
|
||||
end
|
||||
|
||||
def script_formatted_correctly
|
||||
AliasAndImplicationImporter.tokenize(script)
|
||||
return true
|
||||
rescue StandardError => e
|
||||
errors.add(:base, e.message)
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user