merge master

This commit is contained in:
Karol
2019-12-09 20:54:24 +01:00
7 changed files with 444 additions and 212 deletions

View File

@@ -26,11 +26,16 @@ class ApplicationPolicy
private :no_one
def everyone_in_study_group
study_group = @record.study_group
return false if study_group.blank?
if @record.respond_to? :study_group # e.g. submission
study_group = @record.study_group
return false if study_group.blank?
users_in_same_study_group = study_group.users
return false if users_in_same_study_group.blank?
users_in_same_study_group = study_group.users
else # e.g. exercise
study_groups = @record.user.study_groups
users_in_same_study_group = study_groups.collect{ |study_group|
study_group.users}.flatten
end
users_in_same_study_group.include? @user
end

View File

@@ -8,7 +8,7 @@ class ExercisePolicy < AdminOrAuthorPolicy
end
[:clone?, :destroy?, :edit?, :update?, :export_external_check?, :export_external_confirm?].each do |action|
define_method(action) { admin? || author? }
define_method(action) { admin? || teacher_in_study_group || author? }
end
[:implement?, :working_times?, :intervention?, :search?, :submit?, :reload?].each do |action|