Fix WikiPage.from_param

master
Alinson S. Xavier 10 years ago
parent ae098bd45c
commit 345da92e46

@ -25,7 +25,7 @@ class WikiController < ApplicationController
# after_filter :cache_sweep, only: [ :create, :update, :destroy, :move_up, # after_filter :cache_sweep, only: [ :create, :update, :destroy, :move_up,
# :move_down, :undelete ] # :move_down, :undelete ]
before_filter :find_wiki, except: [:preview] before_filter :find_wiki, except: [:preview]
before_filter :require_login, only: [:new, :create, :edit, :update, :destroy, before_filter :require_login, only: [:new, :create, :edit, :update, :destroy,
:move_up, :move_down] :move_up, :move_down]
@ -164,7 +164,7 @@ class WikiController < ApplicationController
@course = Course.from_param(params[:course_id]) @course = Course.from_param(params[:course_id])
if params[:id] if params[:id]
@wiki_page = WikiPage.from_param(params[:id]) @wiki_page = WikiPage.from_param(@course, params[:id])
else else
@wiki_page = WikiPage.new(params[:wiki_page]) @wiki_page = WikiPage.new(params[:wiki_page])
end end

@ -88,6 +88,6 @@ class Course < ActiveRecord::Base
end end
def self.from_param(param) def self.from_param(param)
param.is_numeric? ? Course.find(param) : Course.find_by_short_name(param) param.is_numeric? ? Course.find(param) : Course.find_by_short_name!(param)
end end
end end

@ -79,11 +79,11 @@ class WikiPage < ActiveRecord::Base
canonical_title || id canonical_title || id
end end
def self.from_param(param) def self.from_param(course, param)
if param.is_numeric? if param.is_numeric?
WikiPage.find!(param) course.wiki_pages.find(param)
else else
WikiPage.find_by_canonical_title!(param) course.wiki_pages.find_by_canonical_title!(param)
end end
end end