Skip to content

Instantly share code, notes, and snippets.

@thescubageek
Last active September 14, 2016 22:01
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save thescubageek/6d7f9265323b9b579d5c4c474c1d825b to your computer and use it in GitHub Desktop.
Save thescubageek/6d7f9265323b9b579d5c4c474c1d825b to your computer and use it in GitHub Desktop.
Finds settings (and corresponding owners) matching string pattern
## G5 Content Management System
def find_setting_value(target)
Setting.where(Setting.arel_table[:value].matches("%#{target}%"))
end
def find_setting_value_widgets(target)
find_setting_value(target).map do |setting|
setting.owner
end.uniq
end
def find_setting_value_web_templates(target)
find_setting_value_widgets(target).map do |widget|
widget.web_template
end.uniq
end
def find_setting_value_websites(target)
find_setting_value_web_templates(target).map do |web_template|
web_template.website
end.uniq
end
def find_setting_value_locations(target)
find_setting_value_websites(target).map do |website|
website.owner
end.uniq
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment