Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class MoviesController < ApplicationController
- def movie_params
- params.require(:movie).permit(:title, :rating, :description, :release_date)
- end
- def show
- id = params[:id] # retrieve movie ID from URI route
- @movie = Movie.find(id) # look up movie by unique ID
- # will render app/views/movies/show.<extension> by default
- end
- def index
- @all_ratings = ['G','PG','PG-13','R']
- @valid_ratings = []
- @checkbox_values = {}
- if params["ratings"]
- @valid_ratings = []
- params["ratings"].each_key do |key|
- @checkbox_values[key] = true;
- @valid_ratings << key
- end
- session["ratings"] = @valid_ratings
- elsif session["ratings"]
- @valid_ratings = session["ratings"]
- @valid_ratings.each do |rating|
- @checkbox_values[rating] = true;
- end
- else
- @valid_ratings = @all_ratings
- @valid_ratings.each do |rating|
- @checkbox_values[rating] = true;
- end
- end
- @hilite = {}
- @hilite[:title] = ''
- @hilite[:release_date] = ''
- sortby = ''
- order = ''
- if params[:sort]
- sortby = params[:sort]
- session["sort"] = params[:sort]
- order = sortby + ' ASC'
- elsif session["sort"]
- sortby = session["sort"]
- order = session["sort"] + ' ASC'
- @hilite[session["sort"].to_sym] = 'hilite'
- order = sortby + ' ASC'
- end
- @hilite[sortby.to_sym] = 'hilite'
- @movies = Movie.order(order).where(rating: @valid_ratings)
- end
- def new
- # default: render 'new' template
- end
- def create
- @movie = Movie.create!(movie_params)
- flash[:notice] = "#{@movie.title} was successfully created."
- redirect_to movies_path
- end
- def edit
- @movie = Movie.find params[:id]
- end
- def update
- @movie = Movie.find params[:id]
- @movie.update_attributes!(movie_params)
- flash[:notice] = "#{@movie.title} was successfully updated."
- redirect_to movie_path(@movie)
- end
- def destroy
- @movie = Movie.find(params[:id])
- @movie.destroy
- flash[:notice] = "Movie '#{@movie.title}' deleted."
- redirect_to movies_path
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement