Sha256: 759d9e5cdeda67b467480673adfd475ae5f849d0746b58273c0da66f7174c79f
Contents?: true
Size: 1.04 KB
Versions: 4
Compression:
Stored size: 1.04 KB
Contents
# -*- encoding : utf-8 -*- class SearchCardContext < Cardio::Migration::Transform def up sep = /\W/ replace = [ ["[lr]+", 'l\\1'], ["[LR]+", 'L\\1'], ["(?=[LR]*[lr]+)(?=[lr]*[LR]+)[lrLR]+", 'l\\1'], # mix of lowercase and uppercase l's and r's %w[left LL], %w[right LR], %w[self left], ["", "left"] ] Card.search(type_id: ["in", Card::SearchTypeID, Card::SetID]).each do |card| next unless card.name.compound? && card.real? content = card.db_content replace.each do |key, val| content.gsub!(/(#{sep})_(#{key})(?=#{sep})/, "\\1_#{val}") end card.update_column :db_content, content card.actions.each do |action| next unless (content_change = action.change :db_content) next if content_change.new_record? content = content_change.value replace.each do |key, val| content.gsub!(/(#{sep})_(#{key})(?=#{sep})/, "\\1_#{val}") end content_change.update_column :value, content end end end end
Version data entries
4 entries across 4 versions & 1 rubygems