merbiful-release 0.2.1 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,17 @@
1
+ - if Merbiful::Images.upload_possible?
2
+ %form{:action => url(:merbiful_admin, :action => "upload_image"), :enctype => "multipart/form-data", :method => "post"}
3
+ Upload new image
4
+ %input{:name => "image", :size => "30", :type => "file"}
5
+ %input{:type => "submit", :value => "Upload"}
6
+ - else
7
+ %p Upload seems to be impossible, perhaps the 'public/images' directory is not writable?
8
+ %ul{:class => "images"}
9
+ - Merbiful::Images.images.each do |image|
10
+ %li{:class => "image"}
11
+ %ul{:class => "image_info info"}
12
+ %a{:href => image}
13
+ %li{:class => "picture"}
14
+ %img{:height => 20, :src => image.to_s, :alt => image.to_s}
15
+ %li{:class => "path"}= image
16
+ - if Merbiful::Images.delete_possible?(image)
17
+ %a{:href => url(:merbiful_admin, :action => "delete_image", :path => image)} -
@@ -1,29 +1,29 @@
1
- %a{:href => url(:merbiful_admin, :action => "create_css")} New css
2
- %ul{:class => "css"}
3
- - Merbiful::Css.all.each do |css|
4
- %li{:class => "css"}
5
- %ul{:class => "css_info info"}
6
- %a{:href => url(:merbiful_admin, :action => "css", :css_id => css.id)}
7
- %li{:class => "css_name"}= css.name
8
- %li{:class => "css_version"}= "ver##{css.latest.id} (#{time_ago_in_words(css.latest.created_at)} ago)"
9
- %li= link_to("-", url(:merbiful_admin, :action => "destroy_css", :css_id => css.id))
10
- - if params[:css_id].to_s == css.id.to_s
11
- %table.css
12
- %form{:action => url(:merbiful_admin, :action => "css", :css_id => css.id), :method => "post"}
1
+ %a{:href => url(:merbiful_admin, :action => "create_js")} New js
2
+ %ul{:class => "js"}
3
+ - Merbiful::Js.all.each do |js|
4
+ %li{:class => "js"}
5
+ %ul{:class => "js_info info"}
6
+ %a{:href => url(:merbiful_admin, :action => "js", :js_id => js.id)}
7
+ %li{:class => "js_name"}= js.name
8
+ %li{:class => "js_version"}= "ver##{js.latest.id} (#{time_ago_in_words(js.latest.created_at)} ago)"
9
+ %li= link_to("-", url(:merbiful_admin, :action => "destroy_js", :js_id => js.id))
10
+ - if params[:js_id].to_s == js.id.to_s
11
+ %table.js
12
+ %form{:action => url(:merbiful_admin, :action => "js", :js_id => js.id), :method => "post"}
13
+ %tr{:class => "version"}
14
+ %td Viewing version
15
+ %td= @form_js.js_versions(:order => [:id.desc]).collect do |v| "<a class='#{v.id == @form_version.id ? 'active' : 'inactive'}' href='#{url(:merbiful_admin, :action => "js", :js_id => @form_js.id, :version_id => v.id)}'>#{v.id}</a>" end.join(", ")
13
16
  %tr
14
- %td Name
15
- %td= text_field(:name => "css[name]", :value => @form_css.name) + errors(@form_css, :name)
17
+ %td Name (not versioned)
18
+ %td= text_field(:name => "js[name]", :value => @form_js.name) + errors(@form_js, :name)
16
19
  %tr
17
20
  %td Body
18
- %td~ text_area(@form_css.body, :name => "version[body]", :cols => 80, :rows => (2 * @form_css.body.to_s.split(/\n/).size)) + errors(@form_version, :body)
21
+ %td~ text_area(@form_version.body, :name => "version[body]", :cols => 80, :rows => text_area_rows) + errors(@form_version, :body)
19
22
  %tr{:class => "filter"}
20
23
  %td Filter
21
- %td= select(:name => "version[filter]", :collection => Merbiful::filters, :selected => @form_css.latest.filter) + errors(@form_version, :filter)
22
- %tr
23
- %td Media
24
- %td= text_field(:name => "css[media]", :value => @form_css.media) + errors(@form_css, :media)
24
+ %td= select(:name => "version[filter]", :collection => Merbiful::Filter.filters, :selected => @form_version.filter) + errors(@form_version, :filter)
25
25
  %tr{:class => "cached"}
26
- %td Cached
27
- %td= check_box(:name => "css[cached]", :checked => @form_css.cached) + errors(@form_css, :cached)
26
+ %td Cached (not versioned)
27
+ %td= check_box(:name => "js[cached]", :checked => @form_js.cached) + errors(@form_js, :cached)
28
28
  %tr{:class => "submit"}
29
- %td{:colspan => "2"}= submit("Save")
29
+ %td{:colspan => "2"}= submit("Save as new version")
@@ -0,0 +1,26 @@
1
+ %a{:href => url(:merbiful_admin, :action => "create_layout")} New layout
2
+ %ul{:class => "layouts"}
3
+ - Merbiful::Layout.all.each do |layout|
4
+ %li{:class => "layout"}
5
+ %ul{:class => "layout_info info"}
6
+ %a{:href => url(:merbiful_admin, :action => "layouts", :layout_id => layout.id)}
7
+ %li{:class => "layout_name"}= layout.name
8
+ %li{:class => "layout_version"}= "ver##{layout.latest.id} (#{time_ago_in_words(layout.latest.created_at)} ago)"
9
+ %li= link_to("-", url(:merbiful_admin, :action => "destroy_layout", :layout_id => layout.id))
10
+ - if params[:layout_id].to_s == layout.id.to_s
11
+ %table.layout
12
+ %form{:action => url(:merbiful_admin, :action => "layouts", :layout_id => layout.id), :method => "post"}
13
+ %tr{:class => "version"}
14
+ %td Viewing version
15
+ %td= @form_layout.layout_versions(:order => [:id.desc]).collect do |v| "<a class='#{v.id == @form_version.id ? 'active' : 'inactive'}' href='#{url(:merbiful_admin, :action => "layouts", :layout_id => @form_layout.id, :version_id => v.id)}'>#{v.id}</a>" end.join(", ")
16
+ %tr
17
+ %td Name (not versioned)
18
+ %td= text_field(:name => "layout[name]", :value => @form_layout.name) + errors(@form_layout, :name)
19
+ %tr
20
+ %td Body
21
+ %td~ text_area(@form_version.body, :name => "version[body]", :cols => 80, :rows => text_area_rows) + errors(@form_version, :body)
22
+ %tr{:class => "filter"}
23
+ %td Filter
24
+ %td= select(:name => "version[filter]", :collection => Merbiful::Filter.filters, :selected => @form_version.filter) + errors(@form_version, :filter)
25
+ %tr{:class => "submit"}
26
+ %td{:colspan => "2"}= submit("Save as new version")
@@ -1 +1,41 @@
1
- %p hej!
1
+ %table.page
2
+ %form{:action => url(:merbiful_admin, :action => "pages", :page_id => @form_page.id), :method => "post"}
3
+ %tr{:class => "path"}
4
+ %td Path
5
+ %td= text_field(:name => "page[path]", :value => @form_page.path) + errors(@form_page, :path)
6
+ %tr{:class => "title"}
7
+ %td Title
8
+ %td= text_field(:name => "version[title]", :value => @form_page.title) + errors(@form_version, :title)
9
+ %tr{:class => "keywords"}
10
+ %td Keywords
11
+ %td= text_field(:name => "version[keywords]", :value => @form_page.keywords) + errors(@form_version, :keywords)
12
+ %tr{:class => "body"}
13
+ %td Body
14
+ %td~ text_area(@form_page.body, :name => "version[body]", :cols => 80, :rows => text_area_rows) + errors(@form_version, :body)
15
+ %tr{:class => "filter"}
16
+ %td Filter
17
+ %td= select(:name => "version[filter]", :collection => Merbiful::filters, :selected => @form_page.latest.filter) + errors(@form_version, :filter)
18
+ %tr{:class => "layout"}
19
+ %td Layout
20
+ %td= select(:name => "version[layout_id]", :collection => Merbiful::Layout.all, :include_blank => true, :text_method => :name, :value_method => :id, :selected => @form_page.latest.layout_id) + errors(@form_version, :layout)
21
+ %tr{:class => "cached"}
22
+ %td Cached
23
+ %td= check_box(:name => "page[cached]", :checked => @form_page.cached) + errors(@form_page, :cached)
24
+ - Merbiful::Css.all.each_with_index do |css, index|
25
+ - if index == 0
26
+ %tr{:class => "css"}
27
+ %td{:rowspan => Merbiful::Css.count, :valign => "top"} Css
28
+ %td= check_box(:name => "version[css][]", :value => css.id, :checked => @form_page.csses.include?(css)) + css.name
29
+ - else
30
+ %tr{:class => "css"}
31
+ %td= check_box(:name => "version[css][]", :value => css.id, :checked => @form_page.csses.include?(css)) + css.name
32
+ - Merbiful::Js.all.each_with_index do |js, index|
33
+ - if index == 0
34
+ %tr{:class => "js"}
35
+ %td{:rowspan => Merbiful::Js.count, :valign => "top"} Js
36
+ %td= check_box(:name => "version[js][]", :value => js.id, :checked => @form_page.jses.include?(js)) + js.name
37
+ - else
38
+ %tr{:class => "js"}
39
+ %td= check_box(:name => "version[js][]", :value => js.id, :checked => @form_page.jses.include?(js)) + js.name
40
+ %tr{:class => "submit"}
41
+ %td{:colspan => 2}= submit("Save")
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: merbiful-release
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Kihlgren
@@ -9,10 +9,119 @@ autorequire: merbiful-release
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-10-07 00:00:00 +02:00
12
+ date: 2008-10-18 00:00:00 +02:00
13
13
  default_executable:
14
- dependencies: []
15
-
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: merb-core
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: merb_helpers
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: "0"
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: merb_datamapper
37
+ type: :runtime
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: "0"
44
+ version:
45
+ - !ruby/object:Gem::Dependency
46
+ name: merb-action-args
47
+ type: :runtime
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: "0"
54
+ version:
55
+ - !ruby/object:Gem::Dependency
56
+ name: merb-assets
57
+ type: :runtime
58
+ version_requirement:
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: "0"
64
+ version:
65
+ - !ruby/object:Gem::Dependency
66
+ name: merb-haml
67
+ type: :runtime
68
+ version_requirement:
69
+ version_requirements: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - ">="
72
+ - !ruby/object:Gem::Version
73
+ version: "0"
74
+ version:
75
+ - !ruby/object:Gem::Dependency
76
+ name: dm-core
77
+ type: :runtime
78
+ version_requirement:
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ version: "0"
84
+ version:
85
+ - !ruby/object:Gem::Dependency
86
+ name: dm-aggregates
87
+ type: :runtime
88
+ version_requirement:
89
+ version_requirements: !ruby/object:Gem::Requirement
90
+ requirements:
91
+ - - ">="
92
+ - !ruby/object:Gem::Version
93
+ version: "0"
94
+ version:
95
+ - !ruby/object:Gem::Dependency
96
+ name: dm-migrations
97
+ type: :runtime
98
+ version_requirement:
99
+ version_requirements: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: "0"
104
+ version:
105
+ - !ruby/object:Gem::Dependency
106
+ name: dm-timestamps
107
+ type: :runtime
108
+ version_requirement:
109
+ version_requirements: !ruby/object:Gem::Requirement
110
+ requirements:
111
+ - - ">="
112
+ - !ruby/object:Gem::Version
113
+ version: "0"
114
+ version:
115
+ - !ruby/object:Gem::Dependency
116
+ name: dm-validations
117
+ type: :runtime
118
+ version_requirement:
119
+ version_requirements: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - ">="
122
+ - !ruby/object:Gem::Version
123
+ version: "0"
124
+ version:
16
125
  description: Merb plugin that provides a simple CMS
17
126
  email: martin@wemind.se
18
127
  executables: []
@@ -25,51 +134,46 @@ files:
25
134
  - Rakefile
26
135
  - LICENSE
27
136
  - lib/merbiful-release
28
- - lib/merbiful-release/page.rb~
29
- - lib/merbiful-release/layout.rb~
30
- - lib/merbiful-release/merbiful.rb~
31
- - lib/merbiful-release/routes.rb~
32
- - lib/merbiful-release/routes.rb
137
+ - lib/merbiful-release/admin.rb
33
138
  - lib/merbiful-release/admin.rb~
34
- - lib/merbiful-release/controller.rb~
35
- - lib/merbiful-release/controller.rb
36
- - lib/merbiful-release/haml.rb~
37
- - lib/merbiful-release/version.rb~
139
+ - lib/merbiful-release/body.rb
38
140
  - lib/merbiful-release/body.rb~
141
+ - lib/merbiful-release/controller.rb
142
+ - lib/merbiful-release/css.rb
39
143
  - lib/merbiful-release/css.rb~
40
- - lib/merbiful-release/js.rb~
41
- - lib/merbiful-release/eruby.rb~
42
144
  - lib/merbiful-release/erubis.rb~
43
- - lib/merbiful-release/relative_time.rb~
44
- - lib/merbiful-release/relative_time.rb
145
+ - lib/merbiful-release/filters.rb
146
+ - lib/merbiful-release/filters.rb~
147
+ - lib/merbiful-release/haml.rb~
45
148
  - lib/merbiful-release/images.rb
46
- - lib/merbiful-release/layout.rb
47
- - lib/merbiful-release/admin.rb
48
- - lib/merbiful-release/body.rb
49
- - lib/merbiful-release/css.rb
149
+ - lib/merbiful-release/images.rb~
50
150
  - lib/merbiful-release/js.rb
151
+ - lib/merbiful-release/js.rb~
152
+ - lib/merbiful-release/layout.rb
153
+ - lib/merbiful-release/layout.rb~
51
154
  - lib/merbiful-release/page.rb
155
+ - lib/merbiful-release/page.rb~
156
+ - lib/merbiful-release/relative_time.rb
157
+ - lib/merbiful-release/routes.rb
52
158
  - lib/merbiful-release/string.rb
53
- - lib/merbiful-release/filters.rb
54
- - lib/merbiful-release.rb~
159
+ - lib/merbiful-release/string.rb~
55
160
  - lib/merbiful-release.rb
56
- - templates/index.html.haml~
57
- - templates/index.html.haml
58
- - templates/admin_layout.html.haml~
59
- - templates/pages.html.haml~
60
- - templates/admin.css~
61
- - templates/page_form.html.haml~
62
- - templates/layouts.html.haml~
63
- - templates/admin_layout.html.rhtml~
64
- - templates/css.html.haml~
65
- - templates/js.html.haml~
161
+ - lib/merbiful-release.rb~
66
162
  - templates/admin.css
163
+ - templates/admin.css~
67
164
  - templates/admin_layout.html.haml
68
- - templates/images.html.haml
69
- - templates/page_form.html.haml
165
+ - templates/admin_layout.html.haml~
70
166
  - templates/css.html.haml
167
+ - templates/css.html.haml~
168
+ - templates/images.html.haml
169
+ - templates/images.html.haml~
170
+ - templates/index.html.haml
71
171
  - templates/js.html.haml
172
+ - templates/js.html.haml~
72
173
  - templates/layouts.html.haml
174
+ - templates/layouts.html.haml~
175
+ - templates/page_form.html.haml
176
+ - templates/page_form.html.haml~
73
177
  has_rdoc: true
74
178
  homepage: ""
75
179
  post_install_message:
@@ -1,12 +0,0 @@
1
-
2
- module Merbiful
3
-
4
- class Controller < Merb::Controller
5
-
6
- def display(what)
7
- render what.inspect
8
- end
9
-
10
- end
11
-
12
- end
@@ -1,11 +0,0 @@
1
- module Merbiful
2
-
3
- class Eruby
4
-
5
- def render(text, scope)
6
- ::Haml::Engine.new(text).render(scope)
7
- end
8
-
9
- end
10
-
11
- end
@@ -1,8 +0,0 @@
1
-
2
- class Merbiful < Application
3
-
4
- def peek
5
-
6
- end
7
-
8
- end
@@ -1,78 +0,0 @@
1
- module Merbiful
2
-
3
- module RelativeTimeHelpers
4
- mattr_accessor :time_class
5
- mattr_accessor :time_output
6
-
7
- self.time_class = Time
8
- self.time_output = {
9
- :today => 'today',
10
- :yesterday => 'yesterday',
11
- :tomorrow => 'tomorrow',
12
- :initial_format => '%b %d',
13
- :year_format => ', %Y'
14
- }
15
-
16
- def relative_date(time)
17
- date = time.to_date
18
- today = time_class.now.to_date
19
- if date == today
20
- time_output[:today]
21
- elsif date == (today - 1)
22
- time_output[:yesterday]
23
- elsif date == (today + 1)
24
- time_output[:tomorrow]
25
- else
26
- fmt = time_output[:initial_format].dup
27
- fmt << time_output[:year_format] unless date.year == today.year
28
- time.strftime_ordinalized(fmt)
29
- end
30
- end
31
-
32
- def relative_date_span(times)
33
- times = [times.first, times.last].collect!(&:to_date)
34
- times.sort!
35
- if times.first == times.last
36
- relative_date(times.first)
37
- else
38
- first = times.first; last = times.last; now = time_class.now
39
- [first.strftime_ordinalized('%b %d')].tap do |arr|
40
- arr << ", #{first.year}" unless first.year == last.year
41
- arr << ' - '
42
- arr << last.strftime('%b') << ' ' unless first.year == last.year && first.month == last.month
43
- arr << last.day.ordinalize
44
- arr << ", #{last.year}" unless first.year == last.year && last.year == now.year
45
- end.to_s
46
- end
47
- end
48
-
49
- def relative_time_span(times)
50
- times = [times.first, times.last].collect!(&:to_time)
51
- times.sort!
52
- if times.first == times.last
53
- "#{prettier_time(times.first)} #{relative_date(times.first)}"
54
- elsif times.first.to_date == times.last.to_date
55
- same_half = (times.first.hour/12 == times.last.hour/12)
56
- "#{prettier_time(times.first, !same_half)} - #{prettier_time(times.last)} #{relative_date(times.first)}"
57
-
58
- else
59
- first = times.first; last = times.last; now = time_class.now
60
- [prettier_time(first)].tap do |arr|
61
- arr << ' '
62
- arr << first.strftime_ordinalized('%b %d')
63
- arr << ", #{first.year}" unless first.year == last.year
64
- arr << ' - '
65
- arr << prettier_time(last)
66
- arr << ' '
67
- arr << last.strftime('%b') << ' ' unless first.year == last.year && first.month == last.month
68
- arr << last.day.ordinalize
69
- arr << ", #{last.year}" unless first.year == last.year && last.year == now.year
70
- end.to_s
71
- end
72
- end
73
-
74
- def prettier_time(time, ampm=true)
75
- time.strftime("%I:%M#{" %p" if ampm}").sub(/^0/, '')
76
- end
77
- end
78
- end