Module: Gast::Memo
- Extended by:
- Helper, Memo
- Included in:
- Memo
- Defined in:
- lib/gast/memo.rb
Defined Under Namespace
Classes: Request, Response
Class Method Summary
collapse
Instance Method Summary
collapse
Methods included from Helper
escape_html, get_content, get_language, unescape_html
Class Method Details
.changed?(content_id, content) ⇒ Boolean
61
62
63
|
# File 'lib/gast/memo.rb', line 61
def changed?(content_id, content)
content.to_s.chomp != item(content_id).chomp
end
|
.create(content, language = DEFAULT_HIGHLIGHT) ⇒ Object
49
50
51
52
|
# File 'lib/gast/memo.rb', line 49
def create(content, language = DEFAULT_HIGHLIGHT)
content_id = repository(content, language)
response(content_id, language, content)
end
|
.item(id) ⇒ Object
81
82
83
|
# File 'lib/gast/memo.rb', line 81
def item(id)
escape_html { get_content(id) }
end
|
.language(id) ⇒ Object
86
87
88
|
# File 'lib/gast/memo.rb', line 86
def language(id)
escape_html { get_language(id) }
end
|
.lists ⇒ Object
71
72
73
74
75
76
77
78
|
# File 'lib/gast/memo.rb', line 71
def lists
Dir.glob(File.expand_path(Gast::PATH + '/**')).map do |dir|
{
content_id: dir.split('/').last,
updated_at: File.stat(dir + '/content').mtime
}
end
end
|
.number ⇒ Object
66
67
68
|
# File 'lib/gast/memo.rb', line 66
def number
lists.length
end
|
.request(content_id, language, content) ⇒ Object
32
33
34
|
# File 'lib/gast/memo.rb', line 32
def request(content_id, language, content)
Request.new(content_id, language, content)
end
|
.response(content_id, language, content) ⇒ Object
27
28
29
|
# File 'lib/gast/memo.rb', line 27
def response(content_id, language, content)
Response.new(content_id, language, content)
end
|
.update(content_id, content, language = DEFAULT_HIGHLIGHT) ⇒ Object
55
56
57
58
|
# File 'lib/gast/memo.rb', line 55
def update(content_id, content, language = DEFAULT_HIGHLIGHT)
content_id = repository(content, language, content_id)
response(content_id, language, content)
end
|
Instance Method Details
#repository(content, language, content_id = nil) ⇒ Object
37
38
39
40
41
42
43
44
45
46
47
|
# File 'lib/gast/memo.rb', line 37
def repository(content, language, content_id = nil)
repo = Repository.new
repo.dir_name = content_id
repo.create
repo.content = unescape_html { content }
repo.language = unescape_html { language }
repo.write
repo.commit!
repo.dir_name
end
|