added user feedback functional test
This commit is contained in:
@@ -10,7 +10,7 @@ class ApplicationController < ActionController::Base
|
||||
|
||||
protected
|
||||
def access_denied
|
||||
previous_url = params[:url] || request.request_uri
|
||||
previous_url = params[:url] || request.fullpath
|
||||
|
||||
respond_to do |fmt|
|
||||
fmt.html do
|
||||
|
||||
@@ -1,19 +1,39 @@
|
||||
class UserFeedbackController < ApplicationController
|
||||
before_filter :privileged_only, :only => [:new, :edit, :create, :update, :destroy]
|
||||
respond_to :html, :xml, :json
|
||||
rescue_from User::PrivilegeError, :with => "static/access_denied"
|
||||
|
||||
def new
|
||||
@user_feedback = UserFeedback.new
|
||||
respond_with(@user_feedback)
|
||||
end
|
||||
|
||||
def edit
|
||||
@user_feedback = UserFeedback.find(params[:id])
|
||||
check_privilege(@user_feedback)
|
||||
respond_with(@user_feedback)
|
||||
end
|
||||
|
||||
def index
|
||||
@search = UserFeedback.search(params[:search])
|
||||
@user_feedback = @search.paginate(:page => params[:page])
|
||||
respond_with(@user_feedback)
|
||||
end
|
||||
|
||||
def create
|
||||
end
|
||||
|
||||
def update
|
||||
@user_feedback = UserFeedback.create(params[:user_feedback])
|
||||
respond_with(@user_feedback)
|
||||
end
|
||||
|
||||
def destroy
|
||||
@user_feedback = UserFeedback.find(params[:id])
|
||||
check_privilege(@user_feedback)
|
||||
@user_feedback.destroy
|
||||
respond_with(@user_feedback, :location => user_feedback_path)
|
||||
end
|
||||
|
||||
private
|
||||
def check_privilege(user_feedback)
|
||||
raise User::PrivilegeError unless (user_feedback.creator_id == CurrentUser.id || CurrentUser.is_moderator?)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -232,7 +232,7 @@ class Upload < ActiveRecord::Base
|
||||
end
|
||||
|
||||
def temp_file_path
|
||||
@temp_file_path ||= File.join(Rails.root, "tmp", "#{Time.now.to_f}.#{$PROCESS_ID}")
|
||||
@temp_file_path ||= File.join(Rails.root, "tmp", "upload_#{Time.now.to_f}.#{$PROCESS_ID}")
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ class UserFeedback < ActiveRecord::Base
|
||||
belongs_to :user
|
||||
belongs_to :creator, :class_name => "User"
|
||||
before_validation :initialize_creator, :on => :create
|
||||
attr_accessible :body, :user_id, :is_positive
|
||||
attr_accessible :body, :user_id, :is_positive, :user_name
|
||||
validates_presence_of :user, :creator, :body
|
||||
validate :creator_is_privileged
|
||||
|
||||
@@ -11,6 +11,10 @@ class UserFeedback < ActiveRecord::Base
|
||||
self.creator_id = CurrentUser.id
|
||||
end
|
||||
|
||||
def user_name=(name)
|
||||
self.user_id = User.name_to_id(name)
|
||||
end
|
||||
|
||||
def creator_is_privileged
|
||||
if !creator.is_privileged?
|
||||
errors[:creator] << "must be privileged"
|
||||
|
||||
0
app/views/user_feedback/edit.html.erb
Normal file
0
app/views/user_feedback/edit.html.erb
Normal file
0
app/views/user_feedback/index.html.erb
Normal file
0
app/views/user_feedback/index.html.erb
Normal file
0
app/views/user_feedback/new.html.erb
Normal file
0
app/views/user_feedback/new.html.erb
Normal file
Reference in New Issue
Block a user