Sha256: 682e126f41fb2a038a07c1d6aa15905afa6a6ead81c161914df4be1702919f7d
Contents?: true
Size: 1.05 KB
Versions: 2
Compression:
Stored size: 1.05 KB
Contents
require 'cgi' require 'murlsh' module Murlsh # If document has meta or link media:thumbnail use it as the thumbnail. class AddPre50MediaThumbnail < Plugin @hook = 'add_pre' StorageDir = File.join(File.dirname(__FILE__), '..', 'public', 'img', 'thumb') def self.run(url, config) if not url.thumbnail_url and url.ask.doc url.ask.doc.xpath_search(%w{ //meta[@rel='media:thumbnail'] //link[@rel='media:thumbnail'] }) do |node| if node and not node['href'].to_s.empty? Murlsh::failproof do thumb_storage = Murlsh::ImgStore.new(StorageDir, :user_agent => config['user_agent']) stored_filename = thumb_storage.store_url(node['href']) do |i| max_side = config.fetch('thumbnail_max_side', 90) i.extend(Murlsh::ImageList).resize_down!(max_side) end url.thumbnail_url = "img/thumb/#{CGI.escape(stored_filename)}" end end end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
murlsh-1.4.1 | plugins/add_pre_50_media_thumbnail.rb |
murlsh-1.4.0 | plugins/add_pre_50_media_thumbnail.rb |