-
Notifications
You must be signed in to change notification settings - Fork 11
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1347 from concord-consortium/187613639-rm-old-per…
…mission-forms-code Remove old Permission Forms code and remove V2 suffix from the new one
- Loading branch information
Showing
42 changed files
with
31 additions
and
378 deletions.
There are no files selected for viewing
111 changes: 0 additions & 111 deletions
111
rails/app/controllers/admin/permission_forms_controller.rb
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,121 +1,10 @@ | ||
class Admin::PermissionFormsController < ApplicationController | ||
|
||
protected | ||
|
||
def not_authorized_error_message | ||
super({resource_type: 'permission form'}) | ||
end | ||
|
||
def update_student_permissions(student_id, permission_ids) | ||
student = Portal::Student.find(student_id) | ||
return false unless student | ||
permission_ids ||= [] | ||
permission_ids = [permission_ids].flatten.compact.uniq | ||
permissions = permission_ids.map { |pid| Portal::PermissionForm.find(pid) } | ||
student.permission_forms = permissions | ||
student.save | ||
return true | ||
end | ||
|
||
|
||
class TeacherSearchForm < Struct.new(:name, :order) | ||
|
||
def initialize(params) | ||
params ||= {} | ||
self.name = params[:name] | ||
self.order = params[:order] || "last_name" | ||
end | ||
def search(current_visitor) | ||
return [] unless self.name | ||
value = "%#{self.name}%" | ||
where = "users.login like ? " + | ||
"or users.first_name like ? " + | ||
"or users.last_name like ?" + | ||
"or users.email like ?" | ||
order = "users.last_name" | ||
group = "users.login" | ||
if current_visitor.has_role?('manager', 'admin', 'researcher') | ||
teachers = Portal::Teacher.joins(:user,:clazzes).where(where, value, value, value, value) | ||
else | ||
if current_visitor.is_project_admin? | ||
ids = current_visitor.admin_for_project_teachers.map {|t| t.user_id} | ||
elsif current_visitor.is_project_researcher? | ||
ids = current_visitor.researcher_for_project_teachers.map {|t| t.user_id} | ||
end | ||
teachers = Portal::Teacher.joins(:user,:clazzes).where("users.id in (?) and (#{where})", ids, value, value, value, value) | ||
end | ||
teachers.order(order).group(group).limit(30).map { |t| TeacherView.new(t)} | ||
end | ||
end | ||
|
||
class StudentView < Struct.new(:name, :id, :login, :perms) | ||
def initialize(portal_student) | ||
user = portal_student.user | ||
self.name = user.name | ||
self.login = user.login | ||
self.id = portal_student.id | ||
self.perms = portal_student.permission_forms | ||
end | ||
end | ||
|
||
class ClazzView < Struct.new(:id, :name, :students, :word) | ||
def initialize(portal_clazz) | ||
self.name = portal_clazz.name | ||
self.word = portal_clazz.class_word | ||
self.id = portal_clazz.id | ||
self.students = portal_clazz.students.joins(:user).order('users.last_name').map{ |s| StudentView.new(s)} | ||
end | ||
end | ||
|
||
class TeacherView < Struct.new(:name, :email, :login, :clazzes, :id) | ||
def initialize(teacher) | ||
user = teacher.user | ||
self.name = user.name | ||
self.login = user.login | ||
self.email = user.email | ||
self.id = user.id | ||
self.clazzes = teacher.clazzes.map { |c| ClazzView.new(c) } | ||
self.clazzes = clazzes.reject { |c| c.students.size < 1} | ||
end | ||
end | ||
|
||
public | ||
|
||
def index | ||
authorize Portal::PermissionForm | ||
# PUNDIT_REVIEW_SCOPE | ||
# PUNDIT_CHECK_SCOPE (did not find instance) | ||
# @permission_forms = policy_scope(Portal::PermissionForm) | ||
form = TeacherSearchForm.new(params[:form]) | ||
@teachers = form.search current_visitor | ||
@projects = policy_scope(Admin::Project).order("name ASC") | ||
@permission_forms = policy_scope(Portal::PermissionForm) | ||
end | ||
|
||
def update_forms | ||
authorize Portal::PermissionForm | ||
student_id = params['student_id'] | ||
permission_ids = params['permission_ids'] | ||
status = 400 | ||
if update_student_permissions(student_id, permission_ids) | ||
status = 200 | ||
end | ||
head status | ||
end | ||
|
||
def create | ||
authorize Portal::PermissionForm | ||
form_data = params['portal_permission'] | ||
if form_data && (!form_data['name'].blank?) | ||
form = Portal::PermissionForm.create(:name => form_data['name'], :url => form_data['url'], :project_id => form_data['project_id']) | ||
end | ||
redirect_to action: 'index' | ||
end | ||
|
||
def remove_form | ||
form = Portal::PermissionForm.find(params[:id]) | ||
authorize form, :destroy? | ||
form.destroy | ||
redirect_to action: 'index' | ||
end | ||
end |
10 changes: 0 additions & 10 deletions
10
rails/app/controllers/admin/permission_forms_v2_controller.rb
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
31 changes: 0 additions & 31 deletions
31
rails/app/views/admin/permission_forms/_permission_forms.html.haml
This file was deleted.
Oops, something went wrong.
5 changes: 0 additions & 5 deletions
5
rails/app/views/admin/permission_forms/_search_form.html.haml
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
24 changes: 0 additions & 24 deletions
24
rails/app/views/admin/permission_forms/_show_student.html.haml
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,4 @@ | ||
%p | ||
= render :partial => 'permission_forms', :locals => {:projects => @projects, :permission_forms => @permission_forms} | ||
= render :partial => 'search_form', :locals => {:form => @form} | ||
- unless @teachers.blank? | ||
%h3 Teachers: | ||
#listings.scrollable | ||
%table#admin_teachers_table | ||
%tr | ||
%th Teacher | ||
%th Classes | ||
= render :partial => 'show', :collection => @teachers, :as => :teacher, :locals => {:permission_forms => @permission_forms} | ||
- else | ||
%p | ||
search for teachers by firstname, lastname, login, or email. | ||
#permission-forms-page | ||
|
||
:javascript | ||
PortalComponents.renderPermissionForms({}, 'permission-forms-page') |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.