Skip to content

Commit b4273ca

Browse files
committed
Add an option to make model solutois visible before completion
1 parent 1f3ea5e commit b4273ca

File tree

3 files changed

+18
-10
lines changed

3 files changed

+18
-10
lines changed

app/models/solution.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@ def visible_to?(user)
2121
true
2222
elsif user.guest?
2323
false
24+
elsif @exercise.course.model_solution_visible_before_completion?
25+
true
2426
elsif @exercise.completed_by?(user)
2527
true
2628
elsif !@exercise.course.visible_to?(user)
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
class ModelSolutionsVisbleBeforeCompletion < ActiveRecord::Migration
2+
def change
3+
add_column :courses, :model_solution_visible_before_completion, :boolean, null: false, default: false
4+
end
5+
end

db/schema.rb

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
#
1212
# It's strongly recommended that you check this file into your version control system.
1313

14-
ActiveRecord::Schema.define(version: 20180903074526) do
14+
ActiveRecord::Schema.define(version: 20180903081927) do
1515

1616
# These are extensions that must be enabled in order to support this database
1717
enable_extension "plpgsql"
@@ -93,26 +93,27 @@
9393
t.datetime "created_at"
9494
t.datetime "updated_at"
9595
t.datetime "hide_after"
96-
t.boolean "hidden", default: false, null: false
97-
t.integer "cache_version", default: 0, null: false
96+
t.boolean "hidden", default: false, null: false
97+
t.integer "cache_version", default: 0, null: false
9898
t.string "spreadsheet_key"
9999
t.datetime "hidden_if_registered_after"
100100
t.datetime "refreshed_at"
101-
t.boolean "locked_exercise_points_visible", default: true, null: false
101+
t.boolean "locked_exercise_points_visible", default: true, null: false
102102
t.text "description"
103103
t.string "paste_visibility"
104104
t.string "formal_name"
105-
t.boolean "certificate_downloadable", default: false, null: false
105+
t.boolean "certificate_downloadable", default: false, null: false
106106
t.string "certificate_unlock_spec"
107107
t.integer "organization_id"
108-
t.integer "disabled_status", default: 1
108+
t.integer "disabled_status", default: 1
109109
t.string "title"
110110
t.string "material_url"
111-
t.integer "course_template_id", null: false
112-
t.boolean "hide_submission_results", default: false
111+
t.integer "course_template_id", null: false
112+
t.boolean "hide_submission_results", default: false
113113
t.string "external_scoreboard_url"
114-
t.boolean "initial_refresh_ready", default: false
115-
t.boolean "hide_submissions", default: false, null: false
114+
t.boolean "initial_refresh_ready", default: false
115+
t.boolean "hide_submissions", default: false, null: false
116+
t.boolean "model_solution_visible_before_completion", default: false, null: false
116117
end
117118

118119
add_index "courses", ["organization_id"], name: "index_courses_on_organization_id", using: :btree

0 commit comments

Comments
 (0)