+ respond_to do |format|
+ flash[:notice] = "Invalid feed name"
+ format.html { redirect_to index_path }
+ format.rss { head :not_found }
+ end
+ end
+ end
+
+
+ # private
+
+ private def create_item
+ item = FeedItem.new(:feed_name => params[:feed_name],
+ :title => params[:title],
+ :description => params[:description])
+ item.save!
+ flash[:notice] = "Element #{params[:title]} created"
+ respond_to do |format|
+ format.html { redirect_to feed_path(params[:feed_name]) }
+ format.rss { head :ok }
+ end
+ rescue ActiveRecord::RecordInvalid => error
+ flash[:notice] = "Element #{params[:title]} could not be created"
+ respond_to do |format|
+ format.html { redirect_to feed_path(params[:feed_name]) }
+ format.rss { head :unprocessable_entity }
+ end
+ end
+
+ private def update_item(item)
+ if item.update_attribute(:description, params[:description])
+ flash[:notice] = "Element #{params[:title]} updated"
+ respond_to do |format|
+ format.html { redirect_to feed_path(params[:feed_name]) }
+ format.rss { head :ok }
+ end
+ else
+ flash[:notice] = "Element #{params[:title]} could not be updated"
+ respond_to do |format|
+ format.html { redirect_to feed_path(params[:feed_name]) }
+ format.rss { head :unprocessable_entity }
+ end
+ end
+ end
+
+ private def destroy_item(item)
+ if item.destroy
+ flash[:notice] = "Element #{params[:title]} deleted"
+ respond_to do |format|
+ format.html { redirect_to feed_path(params[:feed_name]) }
+ format.rss { head :ok }
+ end
+ else
+ flash[:notice] = "Element #{params[:title]} could not be deleted"
+ respond_to do |format|
+ format.html { redirect_to feed_path(params[:feed_name]) }
+ format.rss { head :unprocessable_entity }
+ end