Sha256: b3c11eb2d80c5466bf04a9b120f6292d508da350f5b5ac705a845dbbce220ebe
Contents?: true
Size: 586 Bytes
Versions: 1
Compression:
Stored size: 586 Bytes
Contents
module Crystal class Tag < Struct.new(:name, :value) def name_key name.starts_with?('og:') ? :property : :name end def value_for_context(context) case when asset? context.send(asset_path_method, value) when value.acts_like?(:time) value.iso8601 when value.acts_like?(:date) value.strftime('%Y-%m-%d') else value end end private def asset? %w{image audio video}.find{|type| name =~ /\b#{type}(:url)?$/} end def asset_path_method "#{asset?}_url" end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
crystalmeta-1.0.0 | lib/crystal/tag.rb |