From 1a80d6cd79235694cc8babf8dc779be3155c9111 Mon Sep 17 00:00:00 2001 From: hukl Date: Sat, 18 Apr 2009 14:23:02 +0200 Subject: adding event information to the metadata section allowing to add and edit events --- app/controllers/events_controller.rb | 6 +++--- app/helpers/nodes_helper.rb | 9 +++++++++ app/views/nodes/edit.html.erb | 4 ++++ 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/app/controllers/events_controller.rb b/app/controllers/events_controller.rb index c25c73f..04e9908 100644 --- a/app/controllers/events_controller.rb +++ b/app/controllers/events_controller.rb @@ -24,7 +24,7 @@ class EventsController < ApplicationController # GET /events/new # GET /events/new.xml def new - @event = Event.new + @event = Event.new(:node_id => params[:node_id]) respond_to do |format| format.html # new.html.erb @@ -45,7 +45,7 @@ class EventsController < ApplicationController respond_to do |format| if @event.save flash[:notice] = 'Event was successfully created.' - format.html { redirect_to(@event) } + format.html { redirect_to(edit_node_path(@event.node)) } format.xml { render :xml => @event, :status => :created, :location => @event } else format.html { render :action => "new" } @@ -62,7 +62,7 @@ class EventsController < ApplicationController respond_to do |format| if @event.update_attributes(params[:event]) flash[:notice] = 'Event was successfully updated.' - format.html { redirect_to(@event) } + format.html { redirect_to(edit_node_path(@event.node)) } format.xml { head :ok } else format.html { render :action => "edit" } diff --git a/app/helpers/nodes_helper.rb b/app/helpers/nodes_helper.rb index 63db995..9bee8d8 100644 --- a/app/helpers/nodes_helper.rb +++ b/app/helpers/nodes_helper.rb @@ -11,4 +11,13 @@ module NodesHelper def custom_page_templates Page.custom_templates.map {|x| [x.gsub("_", " ").titlecase, x]} end + + + def event_information + if @node.event + "#{@node.event.start_time} - #{@node.event.end_time} > #{link_to 'edit', edit_event_path(@node.event)}" + else + "no event attached > #{link_to 'add', new_event_path(:event_node_id => @node.id)}" + end + end end diff --git a/app/views/nodes/edit.html.erb b/app/views/nodes/edit.html.erb index 0d0b0d3..fe4934f 100644 --- a/app/views/nodes/edit.html.erb +++ b/app/views/nodes/edit.html.erb @@ -12,6 +12,10 @@ <%= f.error_messages %> + + + + -- cgit v1.3
Event<%= event_information %>
Slug <%= f.text_field :slug %>