module Filepreviews::Utils
@author Jonah Ruiz <jonah@pixelhipsters.com> Utility module with helper methods
Public Class Methods
included(base)
click to toggle source
# File lib/filepreviews/utils.rb, line 8 def self.included(base) base.extend(self) end
Public Instance Methods
extract_metadata(metadata)
click to toggle source
Extracts metadata parameters @param metadata [Array] image formats @return [String] metadata url parameters
# File lib/filepreviews/utils.rb, line 15 def extract_metadata(metadata) metadata.to_a end
extract_size(size)
click to toggle source
Extracts the desired image size attributes @param size [Hash<Symbol>] desired image :width and :height @return [String] combined width and height size for http request
# File lib/filepreviews/utils.rb, line 31 def extract_size(size) unless size.nil? size = OpenStruct.new(size) "#{size.width}x#{size.height}" end end
process_params(params)
click to toggle source
Returns processed options and url as parameters @param params [Hash<Symbol>] :url and :metadata @return [Hash<Symbol>] processed parameters for http request
# File lib/filepreviews/utils.rb, line 41 def process_params(params) parameters = { url: CGI.unescape(params.url) } if params.metadata parameters[:metadata] = extract_metadata(params.metadata) end parameters end
validate_pages(pages)
click to toggle source
Validates page parameters @param pages [Array] page parameters @return [String] page thumbnail parameters
# File lib/filepreviews/utils.rb, line 22 def validate_pages(pages) if !!(pages =~ /,/) || !!(pages =~ /-/) || pages.eql?('all') || pages =~ /\d/ pages end end