lib/snippet.rb in djanowski-snippets-0.1.5 vs lib/snippet.rb in djanowski-snippets-0.1.6
- old
+ new
@@ -5,11 +5,10 @@
before_save :compile_text
class << self
def get(slug, options = {})
snippet = find_by_slug(slug.to_s.downcase) || create!(options.merge(:slug => slug))
- snippet.compiled_text.to_s if snippet
end
def parse(text, parser = nil)
parser = Snippet.default_parser if parser.blank?
klass = Snippets::Parsers.const_get(parser.to_s.classify)
@@ -20,10 +19,40 @@
'html'
end
end
def to_s
- slug
+ compiled_text.to_s
+ end
+
+ def %(*args)
+ if args.size == 1 && args.first.kind_of?(Hash)
+ text = to_s
+
+ args.first.each do |key,value|
+ text = text.gsub("{{#{key}}}", value)
+ end
+
+ text
+ else
+ sprintf(to_s, *args)
+ end
+ end
+
+ def empty?
+ to_s.empty?
+ end
+
+ def blank?
+ to_s.blank?
+ end
+
+ def inspect
+ to_s.inspect
+ end
+
+ def ==(other)
+ to_s.eql?(other)
end
private
def compile_text