public
Description: A Ruby web application framework
Homepage: http://www.mackframework.com
Clone URL: git://github.com/markbates/mack.git
Click here to lend your support to: mack and make a donation at www.pledgie.com !
Added delete_button form helper. [#19]
markbates (author)
Fri Aug 15 10:30:34 -0700 2008
commit  89e3fed23f182b925e7ea5c57f114c9e71925907
tree    403bf4dca37fb5512e2b2b01278dfc1f41cf3a4a
parent  1f90d323506bcaaecde71ea1bf79fa3e1297ee17
...
17
18
19
20
 
21
22
23
...
17
18
19
 
20
21
22
23
0
@@ -17,7 +17,7 @@ module Mack
0
         @total_time = @end_time - @start_time
0
         @requests_per_second = (1 / @total_time).round
0
         if app_config.log.detailed_requests
0
-          msg = "\n\t[#{request.request_method.upcase}] '#{request.path_info}'\n"
0
+          msg = "\n\t[#{request.params[:method].to_s.upcase}] '#{request.path_info}'\n"
0
           msg << "\tSession ID: #{request.session.id}\n" if app_config.mack.use_sessions
0
           msg << "\tParameters: #{request.all_params}\n"
0
           msg << Mack::Utils::Ansi::Color.wrap(app_config.log.completed_color, "\tCompleted in #{@total_time} (#{@requests_per_second} reqs/sec) | #{response.status} [#{request.full_host}]")
...
36
37
38
 
 
 
 
 
 
 
 
 
 
 
39
40
41
...
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
0
@@ -36,6 +36,17 @@ module Mack
0
         # content_tag(:form, options, &block)
0
       end
0
       
0
+      def delete_button(url, value = "Delete", form_options = {}, button_options = {})
0
+        if button_options[:confirm]
0
+          button_options[:onclick] = "if (confirm('#{button_options[:confirm]}')) {submit();}; return false;"
0
+          button_options.delete(:confirm)
0
+        end
0
+        t = "\n" << hidden_field(:_method, :value => :delete)
0
+        t << "\n" << submit_button(value, button_options)
0
+        t << "\n"
0
+        content_tag(:form, {:action => url, :method => :post}.merge(form_options), t)
0
+      end
0
+      
0
       alias_deprecated_method :submit_tag, :submit_button, '0.7.0'
0
       
0
       # Examples:
...
239
240
241
 
 
 
 
 
 
 
 
 
 
 
 
242
243
244
...
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
0
@@ -239,6 +239,18 @@ describe Mack::ViewHelpers::FormHelpers do
0
     
0
   end
0
   
0
+  describe "delete_button" do
0
+    include CommonHelpers
0
+    
0
+    it "should create a form and a delete button" do
0
+      delete_button("http://www.mackframework.com").should == %{<form action="http://www.mackframework.com" method="post">\n<input id="_method" name="_method" type="hidden" value="delete" />\n<button type="submit">Delete</button>\n</form>}
0
+      delete_button("http://www.mackframework.com", "Remove", :target => "_blank").should == %{<form action="http://www.mackframework.com" method="post" target="_blank">\n<input id="_method" name="_method" type="hidden" value="delete" />\n<button type="submit">Remove</button>\n</form>}
0
+      delete_button("http://www.mackframework.com", "Remove", {:target => "_blank"}, {:class => "foo"}).should == %{<form action="http://www.mackframework.com" method="post" target="_blank">\n<input id="_method" name="_method" type="hidden" value="delete" />\n<button class="foo" type="submit">Remove</button>\n</form>}
0
+      delete_button("http://www.mackframework.com", "Remove", {:target => "_blank"}, {:confirm => "really??"}).should == %{<form action="http://www.mackframework.com" method="post" target="_blank">\n<input id="_method" name="_method" type="hidden" value="delete" />\n<button onclick="if (confirm('really??')) {submit();}; return false;" type="submit">Remove</button>\n</form>}
0
+    end
0
+    
0
+  end
0
+  
0
   
0
   describe "form" do
0
     include CommonHelpers

Comments