lib/octopress-ink/assets/page.rb in octopress-ink-1.0.0.rc.40 vs lib/octopress-ink/assets/page.rb in octopress-ink-1.0.0.rc.41
- old
+ new
@@ -14,33 +14,37 @@
@base = base
@filename = file
@dir = File.dirname(file)
@file = File.basename(file)
@exists = {}
- @permalink_name = File.basename(file, '.*')
+ @permalink_name = file.sub(File.extname(file), '')
@data = {}
file_check
end
# Add page to Jekyll pages if no other page has a conflicting destination
#
def add
if page.url && !find_page(page)
Octopress.site.pages << page
plugin.config['permalinks'] ||= {}
- plugin.config['permalinks'][File.basename(filename, '.*')] ||= page.url
+ plugin.config['permalinks'][@permalink_name] ||= page.url
end
end
- def clone(permalink_name, permalink, data={})
+ def clone(permalink, permalink_name=nil)
p = PageAsset.new(plugin, base, file)
p.permalink_name = permalink_name
p.permalink ||= permalink
- p.data.merge!(data)
p
end
+ def merge_data(data={})
+ self.data.merge!(data)
+ self
+ end
+
def find_page(page)
site_dir = Octopress.site.dest
dest = page.destination(site_dir)
Octopress.site.pages.clone.each do |p|
@@ -48,11 +52,11 @@
end
return false
end
def page
- @page ||= begin
+ @page ||= begin
page = Page.new(Octopress.site, source_dir, page_dir, file, self)
page.data.merge!(@data)
page
end
end
@@ -67,10 +71,13 @@
def permalink
@permalink ||= plugin.config['permalinks'][permalink_name]
end
def permalink=(url)
- @permalink = plugin.config['permalinks'][permalink_name] = url
+ @permalink = url
+ if permalink_name
+ plugin.config['permalinks'][permalink_name] = url
+ end
end
private
def page_dir