diff --git a/app/controllers/homework_common_controller.rb b/app/controllers/homework_common_controller.rb
index e3424707f..6f2ecef0b 100644
--- a/app/controllers/homework_common_controller.rb
+++ b/app/controllers/homework_common_controller.rb
@@ -223,17 +223,19 @@ class HomeworkCommonController < ApplicationController
homework_test = HomeworkTest.find id
homework_test.destroy if homework_test
end
- if params[:input] && params[:output]
+ if params[:input] && params[:output] && params[:result]
params[:input].each do |k,v|
if params[:output].include? k
homework_test = HomeworkTest.find_by_id k
if homework_test #已存在的测试,修改
homework_test.input = v
homework_test.output = params[:output][k]
+ homework_test.result = params[:result][k]
else #不存在的测试,增加
homework_test = HomeworkTest.new
homework_test.input = v
homework_test.output = params[:output][k]
+ homework_test.result = params[:result][k]
homework_test.homework_common = @homework
end
homework_test.save
diff --git a/app/controllers/student_work_controller.rb b/app/controllers/student_work_controller.rb
index 3e1e0ba29..01f858442 100644
--- a/app/controllers/student_work_controller.rb
+++ b/app/controllers/student_work_controller.rb
@@ -387,8 +387,8 @@ class StudentWorkController < ApplicationController
if stundet_work && params[:results] && params[:results].class.to_s == "Array"
homework_common = stundet_work.homework_common
params[:results].each do |result|
- homework_test = homework_common.homework_tests.where("input = '#{result[:input]}' AND output = '#{result[:output]}'").first
- if homework_test
+ homework_tests = homework_common.homework_tests.where("input = '#{result[:input]}' AND output = '#{result[:output]}'")
+ homework_tests.each do |homework_test|
student_work_test = StudentWorkTest.new
student_work_test.student_work = stundet_work
student_work_test.homework_test = homework_test
diff --git a/app/helpers/users_helper.rb b/app/helpers/users_helper.rb
index a971787d1..49865d335 100644
--- a/app/helpers/users_helper.rb
+++ b/app/helpers/users_helper.rb
@@ -333,40 +333,45 @@ module UsersHelper
end
def get_create_course_count(user)
- if user == User.current
- user.courses.count
- else
- user.courses.where("is_public = 1").count
- end
+ user.courses.visible.where("tea_id = ?",user.id).count
end
+ #获取加入课程数
def get_join_course_count(user)
- user.coursememberships.count - get_create_course_count(user)
+ user.courses.visible.count - get_create_course_count(user)
end
+ #发布作业数
def get_homework_commons_count(user)
HomeworkCommon.where("user_id = ?",user.id).count
end
+ #资源数
def get_projectandcourse_attachment_count(user)
Attachment.where("author_id = ? and container_type in ('Project','Course')",user.id).count
end
+
+ #创建项目数
def get_create_project_count(user)
- Project.where("user_id = ? and project_type = ?",user.id,Project::ProjectType_project).count
+ user.projects.visible.where("projects.user_id=#{user.id}").count
end
+ #加入项目数
def get_join_project_count(user)
- user.memberships.count(conditions: "projects.project_type = #{Project::ProjectType_project}") - get_create_project_count(user)
+ user.projects.visible.count - get_create_project_count(user)
end
+ #创建缺陷数
def get_create_issue_count(user)
Issue.where("author_id = ?",user.id).count
end
+ #解决缺陷数
def get_resolve_issue_count(user)
Issue.where("assigned_to_id = ? and status_id=3",user.id).count
end
+ #参与匿评数
def get_anonymous_evaluation_count(user)
StudentWorksScore.where("user_id = ? and reviewer_role=3",user.id).count
end
diff --git a/app/models/homework_test.rb b/app/models/homework_test.rb
index 4ed290ecd..df2848194 100644
--- a/app/models/homework_test.rb
+++ b/app/models/homework_test.rb
@@ -1,5 +1,5 @@
class HomeworkTest < ActiveRecord::Base
- attr_accessible :input, :output, :homework_common_id
+ attr_accessible :input, :output, :homework_common_id,:result,:error_msg
belongs_to :homework_common
has_many :student_work_test
diff --git a/app/models/user.rb b/app/models/user.rb
index 005c394a8..2271adc18 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -418,7 +418,7 @@ class User < Principal
end
def nickname(formatter = nil)
- login
+ login.nil? || (login && login.empty?) ? "AnonymousUser" : login
end
def name(formatter = nil)
diff --git a/app/views/courses/_set_join.js.erb b/app/views/courses/_set_join.js.erb
index f880ce945..0542f2a0c 100644
--- a/app/views/courses/_set_join.js.erb
+++ b/app/views/courses/_set_join.js.erb
@@ -1,11 +1,11 @@
<% if object_id%>
$("#join_in_course_header").html("<%= escape_javascript(join_in_course_header(course, user)) %>");
- $("#try_join_course_link").replaceWith(" 'index',:course=>course.id, :host=>Setting.host_course)%>' target='_blank' class='blue_n_btn fr mt20'>提交作品");
<% end %>
<% if @state %>
<% if @state == 0 %>
alert("加入成功");
hideModal($("#popbox02"));
+ $("#try_join_course_link").replaceWith(" 'index',:course=>course.id, :host=>Setting.host_course)%>' target='_blank' class='blue_n_btn fr mt20'>提交作品");
<% elsif @state == 1 %>
alert("密码错误");
<% elsif @state == 2 %>
diff --git a/app/views/homework_common/_homework_detail_programing_form.html.erb b/app/views/homework_common/_homework_detail_programing_form.html.erb
index 5e53c4b15..22ca4cac7 100644
--- a/app/views/homework_common/_homework_detail_programing_form.html.erb
+++ b/app/views/homework_common/_homework_detail_programing_form.html.erb
@@ -78,7 +78,7 @@
<%= l(:label_tag)%>:
- <%= render :partial => 'tags/project_tag', :locals => {:obj => @user,:object_flag => "1"}%>
+ <%= render :partial => 'tags/user_tag', :locals => {:obj => @user,:object_flag => "1"}%>
diff --git a/app/views/projects/settings/_new_versions.html.erb b/app/views/projects/settings/_new_versions.html.erb
index 30da08614..557025eaa 100644
--- a/app/views/projects/settings/_new_versions.html.erb
+++ b/app/views/projects/settings/_new_versions.html.erb
@@ -13,8 +13,8 @@
<%= l(:field_effective_date) %> |
<%= l(:field_description) %> |
<%= l(:field_status) %> |
-
<%= l(:field_sharing) %> |
-
<%= l(:label_wiki_page) %> |
+
+
|
<% for version in @project.shared_versions.sort %>
@@ -25,13 +25,13 @@
<%= format_date(version.effective_date) %> |
<%=h version.description %> |
<%= l("version_status_#{version.status}") %> |
-
<%=h format_version_sharing(version.sharing) %> |
-
- <%= link_to_if_authorized(h(truncate(version.wiki_page_title,:length=>20)), {:controller => 'wiki',
- :action => 'show',
- :project_id => version.project,
+
+
+ <%#= link_to_if_authorized(h(truncate(version.wiki_page_title,:length=>20)), {:controller => 'wiki',
+# :action => 'show',
+# :project_id => version.project,
:id => Wiki.titleize(version.wiki_page_title)},:class=>"c_blue02") || h(version.wiki_page_title) unless version.wiki_page_title.blank? || version.project.wiki.nil? %>
- |
+
<% if version.project == @project && User.current.allowed_to?(:manage_versions, @project) %>
<%= link_to l(:button_edit), edit_version_path(version), :class => 'c_purple' %>
diff --git a/app/views/student_work/_evaluation_student_work.html.erb b/app/views/student_work/_evaluation_student_work.html.erb
index 9569718fb..368c636df 100644
--- a/app/views/student_work/_evaluation_student_work.html.erb
+++ b/app/views/student_work/_evaluation_student_work.html.erb
@@ -48,8 +48,10 @@
<%= student_work.final_score%> 分。
迟交扣分
<%= student_work.late_penalty%> 分,
- 缺评扣分
- <%= student_work.absence_penalty%> 分,
+ <% if student_work.homework_common.homework_type == 1%>
+ 缺评扣分
+ <%= student_work.absence_penalty%> 分,
+ <% end%>
最终成绩为
<%= format("%.1f",score)%> 分。
diff --git a/app/views/student_work/index.html.erb b/app/views/student_work/index.html.erb
index 3783d67d3..0250a7eed 100644
--- a/app/views/student_work/index.html.erb
+++ b/app/views/student_work/index.html.erb
@@ -148,7 +148,7 @@
输出
|
- <% homework.homework_tests.each do |test|%>
+ <% @homework.homework_tests.each do |test|%>
">
<%=test.input%>
diff --git a/app/views/tags/_tag_user_new_name.html.erb b/app/views/tags/_tag_user_new_name.html.erb
new file mode 100644
index 000000000..95730c22c
--- /dev/null
+++ b/app/views/tags/_tag_user_new_name.html.erb
@@ -0,0 +1,30 @@
+<% @tags = obj.reload.tag_list %>
+<% if non_list_all && @tags.size > 0 %>
+
+<% else %>
+
+ <% if @tags.size > 0 %>
+ <% @tags.each do |tag| %>
+
+ <%= link_to tag, :controller => "tags", :action => "index", :q => tag, :object_flag => object_flag, :obj_id => obj.id, :class => 'pt5' %>
+
+ <%= link_to('x', remove_tag_path(:tag_name => tag,:taggable_id => obj.id, :taggable_type => object_flag), :remote => true, :confirm => l(:text_are_you_sure) ) if User.current.eql?(obj) %>
+
+
+ <% end %>
+ <% end %>
+<% end %>
+
+<% if User.current.logged?%>
+ <%= l(:label_add_tag)%>
+
+ <%= form_for "tag_for_save",:remote => true,:url=>save_tag_path,:update => "tags_show",:complete => '$("#put-tag-form").slideUp();' do |f| %>
+ <%= f.text_field :name ,:id => "tags_name3",:size=>"20",:require=>true,:maxlength => Setting.tags_max_length,:minlength=>Setting.tags_min_length,:class =>"isTxt w90 f_l" %>
+ <%= f.text_field :object_id,:value=> obj.id,:style=>"display:none"%>
+ <%= f.text_field :object_flag,:value=> object_flag,:style=>"display:none"%>
+
+ <% end %>
+
+<% end%>
+
+
diff --git a/app/views/tags/_user_tag.html.erb b/app/views/tags/_user_tag.html.erb
new file mode 100644
index 000000000..d04fb50a6
--- /dev/null
+++ b/app/views/tags/_user_tag.html.erb
@@ -0,0 +1,5 @@
+
diff --git a/app/views/tags/remove_tag.js.erb b/app/views/tags/remove_tag.js.erb
index cd56fef1a..4c4409c1c 100644
--- a/app/views/tags/remove_tag.js.erb
+++ b/app/views/tags/remove_tag.js.erb
@@ -2,6 +2,9 @@
<% if @object_flag == '3'%>
$('#tags_show_issue').html('<%= escape_javascript(render :partial => 'tags/tag_name',
:locals => {:obj => @obj,:non_list_all => false,:object_flag => @object_flag}) %>');
+<% elsif @object_flag == '1'%>
+$('#tags_show').html('<%= escape_javascript(render :partial => 'tags/tag_user_new_name',
+ :locals => {:obj => @obj,:non_list_all => false,:object_flag => @object_flag}) %>');
<% elsif @object_flag == '2'%>
$('#tags_show').html('<%= escape_javascript(render :partial => 'tags/tag_project_new_name',
:locals => {:obj => @obj,:non_list_all => false,:object_flag => @object_flag}) %>');
diff --git a/app/views/tags/tag_save.js.erb b/app/views/tags/tag_save.js.erb
index 992c472ed..5a29c113c 100644
--- a/app/views/tags/tag_save.js.erb
+++ b/app/views/tags/tag_save.js.erb
@@ -4,6 +4,10 @@ $('#tags_show_issue').html('<%= escape_javascript(render :partial => 'tags/tag_n
:locals => {:obj => @obj,:non_list_all => false,:object_flag => @obj_flag}) %>');
//$('#put-tag-form-issue').hide();
$('#name-issue').val("");
+<% elsif @obj_flag == '1'%>
+$('#tags_show').html('<%= escape_javascript(render :partial => 'tags/tag_user_new_name',
+ :locals => {:obj => @obj,:non_list_all => false,:object_flag => @obj_flag}) %>');
+$('#tags_name3').val("");
<% elsif @obj_flag == '2'%>
$('#tags_show').html('<%= escape_javascript(render :partial => 'tags/tag_project_new_name',
:locals => {:obj => @obj,:non_list_all => false,:object_flag => @obj_flag}) %>');
diff --git a/app/views/users/_user_jour_reply.html.erb b/app/views/users/_user_jour_reply.html.erb
index ee94cb35a..60eda9fcd 100644
--- a/app/views/users/_user_jour_reply.html.erb
+++ b/app/views/users/_user_jour_reply.html.erb
@@ -3,9 +3,9 @@
<%= link_to image_tag(url_to_avatar(reply.user),:width => '32',:height => '32'), user_path(reply.user),:class => "users_pic_sub fl mr5" %>
- <%= link_to "#{reply.user.login} ".html_safe, user_path(reply.user),:class => 'course_name fl c_blue02 ', :target => "_blank"%>
+ <%= link_to "#{reply.user.nickname} ".html_safe, user_path(reply.user),:class => 'course_name fl c_blue02 ', :target => "_blank"%>
回复
- <%= link_to "#{parent_jour.user.login} : ".html_safe, user_path(parent_jour.user),:class => 'course_name fl c_blue02 mr5 ', :target => "_blank"%>
+ <%= link_to "#{parent_jour.user.nickname} : ".html_safe, user_path(parent_jour.user),:class => 'course_name fl c_blue02 mr5 ', :target => "_blank"%>
<%= reply.notes.html_safe %>
diff --git a/app/views/users/_user_jours_new.html.erb b/app/views/users/_user_jours_new.html.erb
index 9a9e14787..0fe301641 100644
--- a/app/views/users/_user_jours_new.html.erb
+++ b/app/views/users/_user_jours_new.html.erb
@@ -1,8 +1,8 @@
-
+
<%= link_to image_tag(url_to_avatar(jour.user),:width => '46',:height => '46'), user_path(jour.user),:class => "users_pic fl" %>
- <%= link_to "#{jour.user.login} : ".html_safe, user_path(jour.user),:class => 'fl c_blue02 f14 fb mb5', :target => "_blank"%>
+ <%= link_to "#{jour.user.nickname} : ".html_safe, user_path(jour.user),:class => 'fl c_blue02 f14 fb mb5', :target => "_blank"%>
diff --git a/config/locales/account/zh.yml b/config/locales/account/zh.yml
index 69edc7aa3..c7c76707d 100644
--- a/config/locales/account/zh.yml
+++ b/config/locales/account/zh.yml
@@ -37,7 +37,7 @@ zh:
label_password_lost: "忘记密码?"
button_login: 登录
# account_controller中判断用户名或密码输入有误的提示信息
- notice_account_invalid_creditentials: "无效的用户名或密码"
+ notice_account_invalid_creditentials: "无效的用户名或密码,注意登录名区分大小写,谢谢!"
# account_controller中判断未激活的提示信息
notice_account_invalid_creditentials_new: "您还未到邮箱激活。如果您丢失帐户,电子邮件验证帮助我们的支持团队验证帐户的所有权,并允许您接收所有您要求的通知。"
diff --git a/db/migrate/20150801034945_change_result_default.rb b/db/migrate/20150801034945_change_result_default.rb
new file mode 100644
index 000000000..1f629aa45
--- /dev/null
+++ b/db/migrate/20150801034945_change_result_default.rb
@@ -0,0 +1,9 @@
+class ChangeResultDefault < ActiveRecord::Migration
+ def up
+ change_column :homework_tests,:result,:integer,:default => nil
+ end
+
+ def down
+ change_column :homework_tests,:result,:integer,:default => 0
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
index 29aeb1f16..30ca29d12 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -11,7 +11,7 @@
#
# It's strongly recommended to check this file into your version control system.
-ActiveRecord::Schema.define(:version => 20150730130816) do
+ActiveRecord::Schema.define(:version => 20150801034945) do
create_table "activities", :force => true do |t|
t.integer "act_id", :null => false
@@ -632,9 +632,9 @@ ActiveRecord::Schema.define(:version => 20150730130816) do
t.text "input"
t.text "output"
t.integer "homework_common_id"
- t.datetime "created_at", :null => false
- t.datetime "updated_at", :null => false
- t.integer "result", :default => 0
+ t.datetime "created_at", :null => false
+ t.datetime "updated_at", :null => false
+ t.integer "result"
t.text "error_msg"
end
diff --git a/public/javascripts/course.js b/public/javascripts/course.js
index c7b01cee1..6ba202b28 100644
--- a/public/javascripts/course.js
+++ b/public/javascripts/course.js
@@ -550,7 +550,7 @@ function add_programing_test(obj) {
" " +
"" +
"" +
- "测试" +
+ "测试" +
"" +
"");
}
|