lib/runeblog.rb in runeblog-0.0.83 vs lib/runeblog.rb in runeblog-0.0.84
- old
+ new
@@ -11,11 +11,11 @@
###
class RuneBlog
- DotFile = ".blog"
+ DotDir = ".blog"
class << self
attr_accessor :blog
include Helpers
end
@@ -23,27 +23,30 @@
attr_reader :root, :views, :sequence
attr_accessor :view # overridden
include Helpers
- def self.create_new_blog(dir = "data")
- new_dotfile(root: dir)
+ def self.create_new_blog(dir)
+ new_dotfile(root: Dir.pwd + "/" + dir)
create_dir(dir)
Dir.chdir(dir) do
create_dir("views")
create_dir("assets")
create_dir("src")
new_sequence
end
+ rescue => err
+ puts "Can't create blog: '#{dir}' - #{err}"
+ puts err.backtrace
end
def initialize # assumes existing blog
# Crude - FIXME later -
# What views are there? Deployment, etc.
self.class.blog = self # Weird. Like a singleton - dumbass circular dependency?
@root, @view_name, @editor =
- read_config(DotFile, :root, :current_view, :editor)
+ read_config(DotDir + "/config", :root, :current_view, :editor)
@views = get_views
@view = str2view(@view_name)
@sequence = get_sequence
end
@@ -61,12 +64,11 @@
def view=(arg)
case arg
when RuneBlog::View
@view = arg
- raise "Problem here?"
- @view.read_config
+ @view.deployer = read_config(@view.dir + "/deploy")
when String
new_view = str2view(arg)
raise "Can't find view #{arg}" if new_view.nil?
@view = new_view
@view.deployer = read_config(@view.dir + "/deploy")
@@ -87,11 +89,13 @@
def viewdir(v)
@root + "/views/#{v}/"
end
def self.exist?
- File.exist?(DotFile)
+ File.exist?(DotDir) &&
+ File.directory?(DotDir) &&
+ File.exist?(DotDir + "/config")
end
def create_view(arg)
names = self.views.map(&:to_s)
raise "view #{arg} already exists" if names.include?(arg)
@@ -170,10 +174,10 @@
end
def change_view(view)
x = OpenStruct.new
x.root, x.current_view, x.editor = @root, view, @editor # dumb - FIXME later
- write_config(x, DotFile)
+ write_config(x, DotDir + "/config")
self.view = view # error checking?
end
def process_post(file)
path = @root + "/src/#{file}"