Add thank you note to rfc
This commit is contained in:
@ -1,5 +1,5 @@
|
||||
class RequestForCommentsController < ApplicationController
|
||||
before_action :set_request_for_comment, only: [:show, :edit, :update, :destroy, :mark_as_solved]
|
||||
before_action :set_request_for_comment, only: [:show, :edit, :update, :destroy, :mark_as_solved, :set_thank_you_note]
|
||||
|
||||
skip_after_action :verify_authorized
|
||||
|
||||
@ -34,6 +34,18 @@ class RequestForCommentsController < ApplicationController
|
||||
end
|
||||
end
|
||||
|
||||
def set_thank_you_note
|
||||
authorize!
|
||||
@request_for_comment.thank_you_note = params[:note]
|
||||
respond_to do |format|
|
||||
if @request_for_comment.save
|
||||
format.json { render :show, status: :ok, location: @request_for_comment }
|
||||
else
|
||||
format.json { render json: @request_for_comment.errors, status: :unprocessable_entity }
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def submit
|
||||
|
||||
end
|
||||
|
@ -24,6 +24,10 @@ class RequestForCommentPolicy < ApplicationPolicy
|
||||
admin? || author?
|
||||
end
|
||||
|
||||
def set_thank_you_note?
|
||||
admin? || author?
|
||||
end
|
||||
|
||||
def edit?
|
||||
admin?
|
||||
end
|
||||
|
@ -11,6 +11,7 @@ Rails.application.routes.draw do
|
||||
member do
|
||||
get :mark_as_solved
|
||||
post :create_comment_exercise
|
||||
post :set_thank_you_note
|
||||
end
|
||||
end
|
||||
resources :comments, except: [:destroy] do
|
||||
|
@ -0,0 +1,5 @@
|
||||
class AddThankYouNoteToRequestForComments < ActiveRecord::Migration
|
||||
def change
|
||||
add_column :request_for_comments, :thank_you_note, :text
|
||||
end
|
||||
end
|
26
db/schema.rb
26
db/schema.rb
@ -11,7 +11,7 @@
|
||||
#
|
||||
# It's strongly recommended that you check this file into your version control system.
|
||||
|
||||
ActiveRecord::Schema.define(version: 20170403162848) do
|
||||
ActiveRecord::Schema.define(version: 20170608141612) do
|
||||
|
||||
# These are extensions that must be enabled in order to support this database
|
||||
enable_extension "plpgsql"
|
||||
@ -93,7 +93,7 @@ ActiveRecord::Schema.define(version: 20170403162848) do
|
||||
create_table "exercise_tags", force: :cascade do |t|
|
||||
t.integer "exercise_id"
|
||||
t.integer "tag_id"
|
||||
t.integer "factor", default: 0
|
||||
t.integer "factor", default: 1
|
||||
end
|
||||
|
||||
create_table "exercises", force: :cascade do |t|
|
||||
@ -110,7 +110,7 @@ ActiveRecord::Schema.define(version: 20170403162848) do
|
||||
t.boolean "hide_file_tree"
|
||||
t.boolean "allow_file_creation"
|
||||
t.boolean "allow_auto_completion", default: false
|
||||
t.integer "expected_worktime_seconds", default: 0
|
||||
t.integer "expected_worktime_seconds", default: 60
|
||||
t.integer "expected_difficulty", default: 1
|
||||
end
|
||||
|
||||
@ -247,15 +247,16 @@ ActiveRecord::Schema.define(version: 20170403162848) do
|
||||
end
|
||||
|
||||
create_table "request_for_comments", force: :cascade do |t|
|
||||
t.integer "user_id", null: false
|
||||
t.integer "exercise_id", null: false
|
||||
t.integer "file_id", null: false
|
||||
t.integer "user_id", null: false
|
||||
t.integer "exercise_id", null: false
|
||||
t.integer "file_id", null: false
|
||||
t.datetime "created_at"
|
||||
t.datetime "updated_at"
|
||||
t.string "user_type", limit: 255
|
||||
t.string "user_type", limit: 255
|
||||
t.text "question"
|
||||
t.boolean "solved", default: false
|
||||
t.boolean "solved", default: false
|
||||
t.integer "submission_id"
|
||||
t.text "thank_you_note"
|
||||
end
|
||||
|
||||
create_table "searches", force: :cascade do |t|
|
||||
@ -296,12 +297,13 @@ ActiveRecord::Schema.define(version: 20170403162848) do
|
||||
end
|
||||
|
||||
create_table "user_exercise_feedbacks", force: :cascade do |t|
|
||||
t.integer "exercise_id", null: false
|
||||
t.integer "user_id", null: false
|
||||
t.string "user_type", null: false
|
||||
t.integer "exercise_id", null: false
|
||||
t.integer "user_id", null: false
|
||||
t.string "user_type", null: false
|
||||
t.integer "difficulty"
|
||||
t.integer "working_time_seconds"
|
||||
t.string "feedback_text"
|
||||
t.integer "user_estimated_worktime"
|
||||
end
|
||||
|
||||
create_table "user_exercise_interventions", force: :cascade do |t|
|
||||
@ -309,6 +311,8 @@ ActiveRecord::Schema.define(version: 20170403162848) do
|
||||
t.string "user_type"
|
||||
t.integer "exercise_id"
|
||||
t.integer "intervention_id"
|
||||
t.integer "accumulated_worktime_s"
|
||||
t.text "reason"
|
||||
t.datetime "created_at"
|
||||
t.datetime "updated_at"
|
||||
end
|
||||
|
Reference in New Issue
Block a user