Skip to content

Instantly share code, notes, and snippets.

@rgee
Created August 1, 2010 01:16
Show Gist options
  • Save rgee/502816 to your computer and use it in GitHub Desktop.
Save rgee/502816 to your computer and use it in GitHub Desktop.
class EventsController < ApplicationController
before_filter :redirect_if_not_logged_in
private
def redirect_if_not_logged_in
redirect_to :controller => 'session', :action => 'new' and
flash[:notice] = 'You must log in to perform this action.' and return unless logged_in?
end
helper :all
include AuthenticatedSystem
# GET /events
# GET /events.xml
def index
@events = Event.all
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @events }
end
end
# GET /events/1
# GET /events/1.xml
def show
@event = Event.find(params[:id])
@comment = Comment.new( :commentable => @event )
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @event }
end
end
# GET /events/new
# GET /events/new.xml
def new
@event = Event.new
respond_to do |format|
format.html # new.html.erb
format.xml { render :xml => @event }
end
end
# GET /events/1/edit
def edit
@event = Event.find(params[:id])
end
# POST /events
# POST /events.xml
def create
@event = Event.new(params[:event])
respond_to do |format|
if @event.save
format.html { redirect_to(@event, :notice => 'Event was successfully created.') }
format.xml { render :xml => @event, :status => :created, :location => @event }
else
format.html { render :action => "new" }
format.xml { render :xml => @event.errors, :status => :unprocessable_entity }
end
end
end
# PUT /events/1
# PUT /events/1.xml
def update
@event = Event.find(params[:id])
respond_to do |format|
if @event.update_attributes(params[:event])
format.html { redirect_to(@event, :notice => 'Event was successfully updated.') }
format.xml { head :ok }
else
format.html { render :action => "edit" }
format.xml { render :xml => @event.errors, :status => :unprocessable_entity }
end
end
end
# DELETE /events/1
# DELETE /events/1.xml
def destroy
@event = Event.find(params[:id])
@event.destroy
respond_to do |format|
format.html { redirect_to(events_url) }
format.xml { head :ok }
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment