merbiful-release 0.2.3 → 0.2.4
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +1 -1
- data/lib/merbiful-release/admin.rb +5 -1
- data/lib/merbiful-release/admin.rb~ +40 -11
- metadata +1 -1
data/Rakefile
CHANGED
@@ -159,7 +159,11 @@ module Merbiful
|
|
159
159
|
def upload_image
|
160
160
|
path = Pathname.new(File.join(Merb.root, "public", "images", File.basename(params[:image][:filename])))
|
161
161
|
raise "H4xx0r" unless path.to_s.index(Pathname.new(Merb.root).expand_path.to_s) == 0
|
162
|
-
Pathname.new(params[:image][:tempfile].path)
|
162
|
+
uploaded_path = Pathname.new(params[:image][:tempfile].path)
|
163
|
+
path.open("w") do |out|
|
164
|
+
out.write(uploaded_path.read)
|
165
|
+
end
|
166
|
+
uploaded_path.unlink
|
163
167
|
redirect url(:merbiful_admin, :action => "images")
|
164
168
|
end
|
165
169
|
|
@@ -5,6 +5,31 @@ module Merbiful
|
|
5
5
|
|
6
6
|
include RelativeTimeHelpers
|
7
7
|
|
8
|
+
before :authorize!
|
9
|
+
|
10
|
+
def authorize!
|
11
|
+
unless authorized?
|
12
|
+
redirect login_url
|
13
|
+
throw :halt, "Access denied"
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
def logged_in_user
|
18
|
+
nil
|
19
|
+
end
|
20
|
+
|
21
|
+
def login_url
|
22
|
+
""
|
23
|
+
end
|
24
|
+
|
25
|
+
def logout_url
|
26
|
+
""
|
27
|
+
end
|
28
|
+
|
29
|
+
def authorized?
|
30
|
+
true
|
31
|
+
end
|
32
|
+
|
8
33
|
def index
|
9
34
|
render_template_with_layout("index.html.haml")
|
10
35
|
end
|
@@ -88,18 +113,23 @@ module Merbiful
|
|
88
113
|
@form_page = Page.get(params[:page_id])
|
89
114
|
if request.post?
|
90
115
|
params[:page][:cached] = !!params[:page][:cached]
|
116
|
+
|
91
117
|
@form_page.update_attributes(params[:page])
|
118
|
+
|
119
|
+
version_csses = params[:version].delete(:css)
|
120
|
+
version_jses = params[:version].delete(:js)
|
121
|
+
|
122
|
+
@form_version = Page::Version.new(params[:version].merge(:page => @form_page))
|
123
|
+
|
124
|
+
version_csses.each do |css|
|
125
|
+
@form_version.add_css(Css.get(css))
|
126
|
+
end if version_csses
|
127
|
+
version_jses.each do |js|
|
128
|
+
@form_version.add_js(Js.get(js))
|
129
|
+
end if version_jses
|
130
|
+
|
92
131
|
if @form_page.valid?
|
93
132
|
@form_page.save
|
94
|
-
version_csses = params[:version].delete(:css)
|
95
|
-
version_jses = params[:version].delete(:js)
|
96
|
-
@form_version = Page::Version.new(params[:version].merge(:page => @form_page))
|
97
|
-
version_csses.each do |css|
|
98
|
-
@form_version.add_css(Css.get(css))
|
99
|
-
end if version_csses
|
100
|
-
version_jses.each do |js|
|
101
|
-
@form_version.add_js(Js.get(js))
|
102
|
-
end if version_jses
|
103
133
|
if @form_version.valid?
|
104
134
|
@form_version.save
|
105
135
|
redirect url(:merbiful_admin, :action => "pages", :page_id => @form_page.id)
|
@@ -224,9 +254,8 @@ module Merbiful
|
|
224
254
|
end
|
225
255
|
|
226
256
|
def errors(obj, meth)
|
227
|
-
return ""
|
228
257
|
if obj.errors.on(meth)
|
229
|
-
obj.errors.on(meth).join(", ")
|
258
|
+
"<div class='error'>#{obj.errors.on(meth).join(", ")}</div>"
|
230
259
|
else
|
231
260
|
""
|
232
261
|
end
|