Class: Diary::Site

Inherits:
Object
  • Object
show all
Includes:
Message
Defined in:
lib/diary/site.rb

Constant Summary

Constants included from Message

Message::Create, Message::Error, Message::Exist, Message::Identical, Message::Invoke, Message::Publish, Message::Skip, Message::Update

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Message

#say

Constructor Details

#initialize(options = {}) ⇒ Site

Returns a new instance of Site.



5
6
7
8
9
10
11
12
13
14
15
# File 'lib/diary/site.rb', line 5

def initialize(options = {})
  # Create directories
  create_dir 'templates'
  create_dir 'drafts'
  create_dir 'posts'
  create_dir 'pages'
  create_dir 'assets'
  
  # Create files
  create_file 'templates/index.html', '{{ yield }}'
end

Class Method Details

.compile(force = false) ⇒ Object



17
18
19
20
21
22
23
24
25
# File 'lib/diary/site.rb', line 17

def self.compile(force = false)
  unless (Post.all.size == 0) and (Page.all.size == 0)
    Post.all.each { |p| p.output(force) }
    Page.all.each { |p| p.output(force) }
    return self
  else
    puts "#{Error} Nothing to compile"
  end
end

.syncObject



27
28
29
# File 'lib/diary/site.rb', line 27

def self.sync
  # TODO use rsync to sync over ftp
end