From e6efa0f48306555965bf1b4cb5491584f7c1111a Mon Sep 17 00:00:00 2001
From: alan <547533434@qq.com>
Date: Sat, 6 Dec 2014 16:49:38 +0800
Subject: [PATCH 1/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E3=80=8A=E7=82=B9?=
=?UTF-8?q?=E5=87=BB=E5=88=86=E7=8F=AD=EF=BC=8C=E6=90=9C=E7=B4=A2=E6=A0=8F?=
=?UTF-8?q?=E4=B8=8D=E8=A7=81=E4=BA=86=E3=80=8Bbug=20Signed-off-by:=20alan?=
=?UTF-8?q?=20<547533434@qq.com>?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/views/courses/_member_list.html.erb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/views/courses/_member_list.html.erb b/app/views/courses/_member_list.html.erb
index 1c71d915a..a02ca83e2 100644
--- a/app/views/courses/_member_list.html.erb
+++ b/app/views/courses/_member_list.html.erb
@@ -5,7 +5,7 @@
<% end %>
<%= l(:label_current_group)%>: <%= @group.name %>
<% end %>
- <% if @show_serch%>
+ <% if @subPage_title == l(:label_student_list) %>
<%= form_tag( searchmembers_course_path(@course), method: 'get',:class => "f_l",:style => "margin-left: 5px; ",:remote=>true) do %>
<%= text_field_tag 'name', params[:name], name: "name", :class => 'f_1', :style => "height:15px"%>
<%= submit_tag l(:label_search), :class => "f_2"%>
From 5c33c578bb0fe829aaf431d80a650f7b885a96df Mon Sep 17 00:00:00 2001
From: alan <547533434@qq.com>
Date: Mon, 8 Dec 2014 16:50:20 +0800
Subject: [PATCH 2/4] =?UTF-8?q?=E5=A2=9E=E5=87=8F=E5=8A=9F=E8=83=BD?=
=?UTF-8?q?=E3=80=8A=E8=AF=BE=E7=A8=8B=E5=88=86=E7=8F=AD=E6=A8=A1=E5=9D=97?=
=?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=BD=93=E5=88=86=E7=8F=AD=E4=B8=AD=E6=B2=A1?=
=?UTF-8?q?=E6=9C=89=E5=AD=A6=E7=94=9F=E6=97=B6=EF=BC=8C=E5=8F=AF=E4=BB=A5?=
=?UTF-8?q?=E5=88=A0=E9=99=A4=E8=AF=A5=E5=88=86=E7=8F=AD=E3=80=8B=20Signed?=
=?UTF-8?q?-off-by:=20alan=20<547533434@qq.com>?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/controllers/courses_controller.rb | 10 ++++++++++
app/views/courses/_groups_name.html.erb | 7 +++++++
app/views/courses/deletegroup.js.erb | 1 +
config/locales/zh.yml | 1 +
config/routes.rb | 3 ++-
public/images/pic_del.gif | Bin 0 -> 100 bytes
6 files changed, 21 insertions(+), 1 deletion(-)
create mode 100644 app/views/courses/deletegroup.js.erb
create mode 100644 public/images/pic_del.gif
diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb
index a14ade71a..756595e70 100644
--- a/app/controllers/courses_controller.rb
+++ b/app/controllers/courses_controller.rb
@@ -226,6 +226,16 @@ class CoursesController < ApplicationController
@course_groups = @course.course_groups
end
+ def deletegroup
+ CourseGroup.delete(params[:group_id])
+ @subPage_title = l :label_student_list
+ @canShowCode = isCourseTeacher(User.current.id,@course) && params[:role] != '1'
+ @is_remote = true
+ @members = searchStudent(@course)
+ @membercount = @members.count
+ @course_groups = @course.course_groups
+ end
+
def updategroupname
@subPage_title = l :label_student_list
if params[:group_name]
diff --git a/app/views/courses/_groups_name.html.erb b/app/views/courses/_groups_name.html.erb
index 096e84372..68baa2ccd 100644
--- a/app/views/courses/_groups_name.html.erb
+++ b/app/views/courses/_groups_name.html.erb
@@ -48,6 +48,13 @@
<%= link_to group_display, searchgroupmembers_course_path(@course,:group_id => group.id), method: 'get', remote: true,
:onclick => "checkclass('group_name_#{group.id}')",:style => " border:0px; color: #0d90c3; float:left;"%>
+ <% if @canShowCode && group.members.count == 0 %>
+ <%= link_to '', deletegroup_course_path(:group_id => group.id), :method => 'delete', :remote => true,
+ :data => {confirm: l(:label_delete_group)},
+ :class => 'f_1',
+ :style => "width: 16px;height: 21px;margin-top:3px;margin-left:5px;background: url(/images/pic_del.gif) no-repeat 0 0;"
+ %>
+ <% end %>
<% if @canShowCode %>
<% end %>
diff --git a/app/views/courses/deletegroup.js.erb b/app/views/courses/deletegroup.js.erb
new file mode 100644
index 000000000..a6f6933b9
--- /dev/null
+++ b/app/views/courses/deletegroup.js.erb
@@ -0,0 +1 @@
+$("#st_groups").html("<%= escape_javascript( render :partial => 'groups_name', locals: {:course_groups => @course_groups})%>");
\ No newline at end of file
diff --git a/config/locales/zh.yml b/config/locales/zh.yml
index c0bc4df73..f7ff4374a 100644
--- a/config/locales/zh.yml
+++ b/config/locales/zh.yml
@@ -572,6 +572,7 @@ zh:
label_member: 成员
label_search_member_count: 共搜索到
label_member_people: 人
+ label_delete_group: 确定删除分班?
label_current_group: 当前分班
label_limit_groupname: 组别名不能超出20字符
label_limit_groupname_null: 组别名不能为空
diff --git a/config/routes.rb b/config/routes.rb
index 835e6be6e..45f3071b3 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -646,7 +646,8 @@ RedmineApp::Application.routes.draw do
match "searchmembers", :controller => 'courses', :action => 'searchmembers', :via => [:post,:get]
match "searchgroupmembers", :via => [:post, :get]
match "updategroupname", :via => [:post, :get]
- match "addgroups", :via => [:post, :get]
+ match "addgroups", :via => [:post, :get]
+ match 'deletegroup', :via => [:delete]
post 'join_in/join_group', :to => 'courses#join_group', :as => 'join_group'
delete 'join_in/join_group', :to => 'courses#unjoin_group'
end
diff --git a/public/images/pic_del.gif b/public/images/pic_del.gif
new file mode 100644
index 0000000000000000000000000000000000000000..436fd1f922b59a5d68374e2c9d282d4948220a4f
GIT binary patch
literal 100
zcmZ?wbhEHb6!EW`}gP1p99%oF$Tq-EQ|~ctPDCJE=Vl{vu4Dq
vP1**>l$!R2zp~KUcF2J>)YB*>YEkO-jk1a-dUDS5y1ucAEs+jnVz34P*>NJV
literal 0
HcmV?d00001
From d8a568e685525893f5d2ca1edaa00512d9321559 Mon Sep 17 00:00:00 2001
From: alan <547533434@qq.com>
Date: Tue, 9 Dec 2014 14:57:10 +0800
Subject: [PATCH 3/4] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E3=80=8A=E5=88=86?=
=?UTF-8?q?=E7=8F=AD=E6=90=9C=E7=B4=A2=E5=AD=A6=E7=94=9F=E3=80=8B=E5=8A=9F?=
=?UTF-8?q?=E8=83=BD=20Signed-off-by:=20alan=20<547533434@qq.com>?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/controllers/courses_controller.rb | 7 ++++++-
app/helpers/courses_helper.rb | 12 ++++++++++++
app/views/courses/_member_list.html.erb | 6 +++++-
3 files changed, 23 insertions(+), 2 deletions(-)
diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb
index 756595e70..788237444 100644
--- a/app/controllers/courses_controller.rb
+++ b/app/controllers/courses_controller.rb
@@ -205,7 +205,12 @@ class CoursesController < ApplicationController
@is_remote = true
q = "#{params[:name].strip}"
#(redirect_to stores_url, :notice => l(:label_sumbit_empty);return) if params[:name].blank?
- @results = searchStudent_by_name(@course, q)
+ if params[:incourse]
+ @results = searchStudent_by_name(@course, q)
+ else
+ group = CourseGroup.find(params[:search_group_id])
+ @results = searchgroupstudent_by_name(group, @course, q)
+ end
@result_count = @results.count
@results = paginateHelper @results
diff --git a/app/helpers/courses_helper.rb b/app/helpers/courses_helper.rb
index 3b7e811f6..bf3810030 100644
--- a/app/helpers/courses_helper.rb
+++ b/app/helpers/courses_helper.rb
@@ -184,6 +184,18 @@ module CoursesHelper
end
members
end
+ def searchgroupstudent_by_name(group, project, q)
+ members = []
+ group.members.each do |m|
+ if m && m.user && m.user.allowed_to?(:as_student,project)
+ username = m.user[:lastname].to_s + m.user[:firstname].to_s
+ if(m.user[:login].to_s.include?(name) || m.user.user_extensions[:student_id].to_s.include?(name) || username.include?(name))
+ members << m
+ end
+ end
+ end
+ members
+ end
def searchStudent_by_group group, project
#searchPeopleByRoles(project, StudentRoles)
members = []
diff --git a/app/views/courses/_member_list.html.erb b/app/views/courses/_member_list.html.erb
index a02ca83e2..b77d359d0 100644
--- a/app/views/courses/_member_list.html.erb
+++ b/app/views/courses/_member_list.html.erb
@@ -8,7 +8,11 @@
<% if @subPage_title == l(:label_student_list) %>
<%= form_tag( searchmembers_course_path(@course), method: 'get',:class => "f_l",:style => "margin-left: 5px; ",:remote=>true) do %>
<%= text_field_tag 'name', params[:name], name: "name", :class => 'f_1', :style => "height:15px"%>
- <%= submit_tag l(:label_search), :class => "f_2"%>
+ <% if @group %>
+ <%= hidden_field "#{@group.id}", params[:search_group_id], name: 'search_group_id' %>
+ <%= submit_tag l(:label_search), :name => "ingroup",:class => "f_2"%>
+ <% end %>
+ <%= submit_tag l(:label_search), :name => 'incourse',:class => "f_2"%>
<%#= link_to l(:label_search),'' , :class => 'f_2' %>
<% end %>
<% end %>
From 90a01c8d84b615abc1daa43e3e402361659499d1 Mon Sep 17 00:00:00 2001
From: alan <547533434@qq.com>
Date: Tue, 9 Dec 2014 15:16:43 +0800
Subject: [PATCH 4/4] =?UTF-8?q?=E5=AF=B9=E6=96=B0=E5=A2=9E=E5=8A=9F?=
=?UTF-8?q?=E8=83=BD=E3=80=8A=E6=B7=BB=E5=8A=A0=E5=AD=A6=E7=94=9F=E5=88=97?=
=?UTF-8?q?=E8=A1=A8=E7=8F=AD=E5=86=85=E6=90=9C=E7=B4=A2=E5=92=8C=E8=AF=BE?=
=?UTF-8?q?=E5=86=85=E6=90=9C=E7=B4=A2=E3=80=8B=E6=A0=B7=E5=BC=8F=E5=BE=AE?=
=?UTF-8?q?=E8=B0=83=20Signed-off-by:=20alan=20<547533434@qq.com>?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/controllers/courses_controller.rb | 6 ++--
app/helpers/courses_helper.rb | 2 +-
app/views/courses/_groups_name.html.erb | 36 ------------------------
app/views/courses/_member_list.html.erb | 6 ++--
app/views/courses/member.html.erb | 37 +++++++++++++++++++++++++
config/locales/zh.yml | 2 ++
6 files changed, 46 insertions(+), 43 deletions(-)
diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb
index 788237444..326ae0f42 100644
--- a/app/controllers/courses_controller.rb
+++ b/app/controllers/courses_controller.rb
@@ -207,9 +207,9 @@ class CoursesController < ApplicationController
#(redirect_to stores_url, :notice => l(:label_sumbit_empty);return) if params[:name].blank?
if params[:incourse]
@results = searchStudent_by_name(@course, q)
- else
- group = CourseGroup.find(params[:search_group_id])
- @results = searchgroupstudent_by_name(group, @course, q)
+ elsif params[:ingroup]
+ @group = CourseGroup.find(params[:search_group_id])
+ @results = searchgroupstudent_by_name(@group, @course, q)
end
@result_count = @results.count
@results = paginateHelper @results
diff --git a/app/helpers/courses_helper.rb b/app/helpers/courses_helper.rb
index bf3810030..a1199a55a 100644
--- a/app/helpers/courses_helper.rb
+++ b/app/helpers/courses_helper.rb
@@ -184,7 +184,7 @@ module CoursesHelper
end
members
end
- def searchgroupstudent_by_name(group, project, q)
+ def searchgroupstudent_by_name(group, project, name)
members = []
group.members.each do |m|
if m && m.user && m.user.allowed_to?(:as_student,project)
diff --git a/app/views/courses/_groups_name.html.erb b/app/views/courses/_groups_name.html.erb
index 68baa2ccd..ca0fed9c2 100644
--- a/app/views/courses/_groups_name.html.erb
+++ b/app/views/courses/_groups_name.html.erb
@@ -1,40 +1,4 @@
-
diff --git a/app/views/courses/_member_list.html.erb b/app/views/courses/_member_list.html.erb
index b77d359d0..c6c20b542 100644
--- a/app/views/courses/_member_list.html.erb
+++ b/app/views/courses/_member_list.html.erb
@@ -9,10 +9,10 @@
<%= form_tag( searchmembers_course_path(@course), method: 'get',:class => "f_l",:style => "margin-left: 5px; ",:remote=>true) do %>
<%= text_field_tag 'name', params[:name], name: "name", :class => 'f_1', :style => "height:15px"%>
<% if @group %>
- <%= hidden_field "#{@group.id}", params[:search_group_id], name: 'search_group_id' %>
- <%= submit_tag l(:label_search), :name => "ingroup",:class => "f_2"%>
+ <%= hidden_field "search_group_id", params[:search_group_id],:value => "#{@group.id}", name: 'search_group_id' %>
+ <%= submit_tag l(:label_search_member_in_group), :name => "ingroup",:class => "f_2"%>
<% end %>
- <%= submit_tag l(:label_search), :name => 'incourse',:class => "f_2"%>
+ <%= submit_tag l(:label_search_member_in_course), :name => 'incourse',:onclick => "checkclass('group_name_0')",:class => "f_2"%>
<%#= link_to l(:label_search),'' , :class => 'f_2' %>
<% end %>
<% end %>
diff --git a/app/views/courses/member.html.erb b/app/views/courses/member.html.erb
index fb317acf6..b426e4a3e 100644
--- a/app/views/courses/member.html.erb
+++ b/app/views/courses/member.html.erb
@@ -1,3 +1,40 @@
+
<%= stylesheet_link_tag 'course_group', :media => 'all' %>
diff --git a/config/locales/zh.yml b/config/locales/zh.yml
index f7ff4374a..fccf78563 100644
--- a/config/locales/zh.yml
+++ b/config/locales/zh.yml
@@ -570,6 +570,8 @@ zh:
label_role_new: 新建角色
label_role_and_permissions: 角色和权限
label_member: 成员
+ label_search_member_in_group: 班内搜索
+ label_search_member_in_course: 课内搜索
label_search_member_count: 共搜索到
label_member_people: 人
label_delete_group: 确定删除分班?