diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb index f83a5657f..a14ade71a 100644 --- a/app/controllers/courses_controller.rb +++ b/app/controllers/courses_controller.rb @@ -199,6 +199,7 @@ class CoursesController < ApplicationController end def searchmembers + @subPage_title = l :label_student_list @render_file = 'member_list' @canShowCode = isCourseTeacher(User.current.id,@course) && params[:role] != '1' @is_remote = true @@ -211,6 +212,7 @@ class CoursesController < ApplicationController end def addgroups + @subPage_title = l :label_student_list if params[:group_name] group = CourseGroup.new group.name = params[:group_name] @@ -225,6 +227,7 @@ class CoursesController < ApplicationController end def updategroupname + @subPage_title = l :label_student_list if params[:group_name] group = CourseGroup.find(params[:group_id]) group.name = params[:group_name] @@ -237,6 +240,7 @@ class CoursesController < ApplicationController @course_groups = @course.course_groups end def join_group + @subPage_title = l :label_student_list group = CourseGroup.find(params[:object_id]) member = Member.where(:course_id => @course.id, :user_id => User.current.id).first member.course_group_id = group.id @@ -248,6 +252,7 @@ class CoursesController < ApplicationController search_group_members group end def unjoin_group + @subPage_title = l :label_student_list group = CourseGroup.find(params[:object_id]) member = Member.where(:course_id => @course.id, :user_id => User.current.id).first member.course_group_id = 0 @@ -259,6 +264,7 @@ class CoursesController < ApplicationController search_group_members group end def searchgroupmembers + @subPage_title = l :label_student_list @render_file = 'member_list' @canShowCode = isCourseTeacher(User.current.id,@course) && params[:role] != '1' @is_remote = true @@ -273,6 +279,7 @@ class CoursesController < ApplicationController @results = paginateHelper @results end def search_group_members group + @subPage_title = l :label_student_list @render_file = 'member_list' @canShowCode = isCourseTeacher(User.current.id,@course) && params[:role] != '1' @is_remote = true @@ -290,6 +297,7 @@ class CoursesController < ApplicationController @role = params[:role] @course_groups = @course.course_groups if @course.course_groups @course_group_id = params[:@course_group_id] unless params[:@course_group_id].nil? + @show_serch = params[:role] == '2' case params[:role] when '1' @subPage_title = l :label_teacher_list diff --git a/app/controllers/members_controller.rb b/app/controllers/members_controller.rb index fa19a1a3d..867c2a302 100644 --- a/app/controllers/members_controller.rb +++ b/app/controllers/members_controller.rb @@ -217,6 +217,7 @@ class MembersController < ApplicationController joined.each do |join| join.delete end + @member.course_group_id = 0 end if role.allowed_to?(:is_manager) @courseInfo = CourseInfos.new(:user_id => @member.user_id, :course_id => @course.id) diff --git a/app/helpers/watchers_helper.rb b/app/helpers/watchers_helper.rb index 8acd0b577..935fb440e 100644 --- a/app/helpers/watchers_helper.rb +++ b/app/helpers/watchers_helper.rb @@ -123,17 +123,17 @@ module WatchersHelper url_f = join_group_path(:object_id => group.id) if @isjoin == true joined = user.member_of_course_group?(group) - text = l(:label_exit_course) + text = l(:label_exit_group) if joined link_to text, {:controller => "courses", :action => "join_group", :object_id => "#{group.id}"}, :remote => true, :method => 'delete', - :id => "#{group.id}", :style => "padding: 8px 8px 4px;", + :id => "#{group.id}", :style => "padding: 8px 8px 4px; ", :confirm => l(:text_are_you_sure_out_group), :class => 'group_in' end else - text = l(:label_new_join) + text = l(:label_new_join_group) form_tag({:controller => "courses", :action => "join_group", :object_id => "#{group.id}"}, :remote => true, :method => 'post') do submit_tag text, class: "group_in", style: "width: 43px;height: 21px;" end diff --git a/app/models/principal.rb b/app/models/principal.rb index 2eaba6796..5aa21768f 100644 --- a/app/models/principal.rb +++ b/app/models/principal.rb @@ -26,11 +26,11 @@ class Principal < ActiveRecord::Base has_many :members, :foreign_key => 'user_id', :dependent => :destroy has_many :memberships, :class_name => 'Member', :foreign_key => 'user_id', :include => [ :project, :roles ], :conditions => "#{Project.table_name}.status<>#{Project::STATUS_ARCHIVED}", :order => "#{Project.table_name}.name" - has_many :coursememberships, :class_name => 'Member', :foreign_key => 'user_id', :include => [ :course, :roles ], :order => "#{Course.table_name}.name" + has_many :coursememberships, :class_name => 'Member', :foreign_key => 'user_id', :include => [ :course, :roles ], :conditions => "#{Course.table_name}.status<>#{Course::STATUS_ARCHIVED}", :order => "#{Course.table_name}.name" has_many :projects, :through => :memberships #add by nwb has_many :courses, :through => :coursememberships - has_many :course_groups, :through => :coursememberships + has_many :course_groups, :through => :members has_many :issue_categories, :foreign_key => 'assigned_to_id', :dependent => :nullify # Groups and active users diff --git a/app/views/courses/_groups_name.html.erb b/app/views/courses/_groups_name.html.erb index 9a57d1127..096e84372 100644 --- a/app/views/courses/_groups_name.html.erb +++ b/app/views/courses/_groups_name.html.erb @@ -5,9 +5,21 @@ alert('<%= l(:label_limit_groupname) %>'); } } - function validate_groupname_null(value1) { + function checkclass(value) { - if(value1.length == 0) { + for(var i = 0; i < document.getElementsByName("check_group_name").length; i++) { + if(document.getElementsByName("check_group_name")[i].id == value) { + document.getElementById(value).className = "selected"; + } + else { + document.getElementsByName("check_group_name")[i].className = "classbox"; + } + + } + } + function validate_groupname_null(value1) { + value1 = value1.trim(); + if(value1.length == 0 ) { alert('<%= l(:label_limit_groupname_null) %>'); } } @@ -16,41 +28,30 @@ validate_groupname(value1); } - function validate_add_group() { - value1 = document.getElementById('group_name').value; - validate_groupname(value1); - validate_groupname_null(value1); + function validate_add_group() { + value1 = document.getElementById('group_name').value; + validate_groupname(value1); + validate_groupname_null(value1); - } + }