Fixed forms to allow for exernal driving of the site
authorNeil Smith <neil.git@njae.me.uk>
Fri, 17 Jul 2009 19:19:21 +0000 (19:19 +0000)
committerNeil Smith <neil.git@njae.me.uk>
Fri, 17 Jul 2009 19:19:21 +0000 (19:19 +0000)
app/controllers/feed_controller.rb
app/views/feed/index.html.erb
app/views/feed/show.html.erb
app/views/layouts/application.html.erb [new file with mode: 0644]

index 2eddc8ca05f06eb2ea34ec6d76ead08e3c448703..71ab1df4f829d2530acf4163143ab6a042481099 100644 (file)
@@ -1,4 +1,7 @@
 class FeedController < ApplicationController
+
+  skip_before_filter :verify_authenticity_token
+
   def index
     @feeds = FeedItem.find(:all, :select => 'DISTINCT feed_name')
     respond_to do |format|
@@ -17,17 +20,19 @@ class FeedController < ApplicationController
   end
 
   def update
-    item = FeedItem.find_by_feed_name_and_title(params[:feed_item][:feed_name], params[:feed_item][:title])
+    item = FeedItem.find_by_feed_name_and_title(params[:feed_name], params[:title])
     if item
-      if params[:feed_item][:description] == ''
+      if params[:description] == ''
         item.destroy
       else
-        item.update_attribute(:description, params[:feed_item][:description])
+        item.update_attribute(:description, params[:description])
       end
     else
-      FeedItem.create(params[:feed_item])
+      FeedItem.create(:feed_name => params[:feed_name],
+        :title => params[:title],
+        :description => params[:description])
     end
-    redirect_to feed_url(params[:feed_item][:feed_name])
+    redirect_to feed_url(params[:feed_name])
   end
 
 end
index cd75a00c946dbc8a9cf259c6d1f765036b47a254..b9e082a693c98b95455e7b2181f66d357432e798 100644 (file)
@@ -1,10 +1,10 @@
 <h1>Feeds available</h1>
 
-<% form_for :feed_item, :url => update_url do |form| %>
-  <p>Set feed <%= form.text_field :feed_name, :size => 20 %>
-    to include <%= form.text_field :title, :size => 30 %>
-    containing  <%= form.text_field :description, :size => 50 %>
-    <%= submit_tag %></p>
+<% form_tag :action => 'update' do %>
+  <p>Set feed <%= text_field_tag :feed_name, '', :size => 20 %>
+    to include <%= text_field_tag :title, '', :size => 30 %>
+    containing  <%= text_field_tag :description, '', :size => 50 %>
+    <%= submit_tag 'Update' %></p>
 <% end %>
 
 <ul>
index 9c5180a91a41989e8db6d94ce346b5ba10ebb8d9..2a2b9b1daaaad4094886073444761803d9270618 100644 (file)
@@ -1,13 +1,14 @@
 <h1>Contents of feed <%= h params[:feed_name] %></h1>
 <p><%= link_to("List of all feeds", index_url) %></p>
 
-<% form_for :feed_item, :url => update_url(params[:feed_name]) do |form| %>
-  <p>Set feed <%= form.text_field :feed_name, :size => 20, :value => h(params[:feed_name]) %>
-    to include <%= form.text_field :title, :size => 30 %>
-    containing  <%= form.text_field :description, :size => 50 %>
-    <%= submit_tag %></p>
+<% form_tag :action => 'update' do %>
+  <p>Set feed <%= text_field_tag :feed_name, h(params[:feed_name]), :size => 20 %>
+    to include <%= text_field_tag :title, '', :size => 30 %>
+    containing  <%= text_field_tag :description, '', :size => 50 %>
+    <%= submit_tag 'Update' %></p>
 <% end %>
 
+
 <dl>
   <% for item in @feed_items %>
     <dt><%= h item.title %></dt>
diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb
new file mode 100644 (file)
index 0000000..6ac8aa8
--- /dev/null
@@ -0,0 +1,8 @@
+<html>
+  <head>
+    <title>Form: <%= controller.action_name %></title>
+  </head>
+  <body>
+    <%= yield :layout %>
+  </body>
+</html>