class LivePaper::WmTrigger
Constants
- DEFAULT_IMAGE_RESOLUTION
- WATERMARK_RESOLUTION
- WATERMARK_STRENGTH
Attributes
wm_url[RW]
Public Instance Methods
download_watermark(image_url, options = {})
click to toggle source
# File lib/live_paper/wm_trigger.rb, line 18 def download_watermark(image_url, options = {}) wpi = options[:wpi] || WATERMARK_RESOLUTION strength = options[:strength] || WATERMARK_STRENGTH ppi = options[:ppi] if ppi.blank? image = MiniMagick::Image.open(image_url + "?access_token=" + $lpp_access_token) ppiArray = image.resolution("PixelsPerInch") #This returns the [xResolution, yResolution] ppi = ppiArray[0] if (ppiArray.present? && ppiArray.length > 0) end if ppi.blank? ppi = DEFAULT_IMAGE_RESOLUTION end url = "#{self.wm_url}?imageURL=#{CGI.escape(image_url)}&wpi=#{wpi}&ppi=#{ppi}&strength=#{strength}" begin response = WmTrigger.rest_request( url, :get, accept: "image/jpg" ) response.body.empty? ? nil : response.body rescue Exception => e puts "Exception : #{e.to_s}\n" end end
parse(data)
click to toggle source
# File lib/live_paper/wm_trigger.rb, line 11 def parse(data) data = JSON.parse(data, symbolize_names: true)[:trigger] assign_attributes data self.wm_url=data[:link].select { |item| item[:rel] == "download" }.first[:href] self end
Private Instance Methods
create_body()
click to toggle source
# File lib/live_paper/wm_trigger.rb, line 41 def create_body { trigger: { name: @name, type: "watermark", startDate: @start_date || default_start_date, endDate: @end_date || default_end_date } } end