Merge branch 'szzh' into dev_hjq

This commit is contained in:
huang 2015-07-07 14:05:26 +08:00
commit 600e7c1e16
35 changed files with 443 additions and 292 deletions

View File

@ -388,7 +388,7 @@ class AttachmentsController < ApplicationController
end end
rescue NoMethodError rescue NoMethodError
@save_flag = false @save_flag = false
@save_message = [] << l(:label_course_empty_select) @save_message = [] << l(:label_project_empty_select)
respond_to do |format| respond_to do |format|
format.js format.js
end end

View File

@ -298,7 +298,7 @@ class CoursesController < ApplicationController
if params[:group_id] && params[:group_id] != "0" if params[:group_id] && params[:group_id] != "0"
@group = CourseGroup.find(params[:group_id]) @group = CourseGroup.find(params[:group_id])
@results = student_homework_score(@group.id,0, 0,"desc") @results = student_homework_score(@group.id,0, 0,"desc")
@results = paginateHelper @results, 10 # @results = paginateHelper @results, 10
else else
page_from = params[:page].nil? ? 0 : (params[:page].to_i - 1) page_from = params[:page].nil? ? 0 : (params[:page].to_i - 1)
@results = student_homework_score(0,page_from, 10,"desc") @results = student_homework_score(0,page_from, 10,"desc")
@ -368,12 +368,12 @@ class CoursesController < ApplicationController
page = params[:page].nil? ? 0 : (params['page'].to_i - 1) page = params[:page].nil? ? 0 : (params['page'].to_i - 1)
@results = searchmember_by_name(student_homework_score(0,0,0,@score_sort_by), @search_name) @results = searchmember_by_name(student_homework_score(0,0,0,@score_sort_by), @search_name)
@result_count = @results.count @result_count = @results.count
@results = paginateHelper @results, 10 # @results = paginateHelper @results, 10
else else
@group = CourseGroup.find(group_id) @group = CourseGroup.find(group_id)
@results = searchmember_by_name(student_homework_score(group_id, 0, 0,@score_sort_by),@search_name) @results = searchmember_by_name(student_homework_score(group_id, 0, 0,@score_sort_by),@search_name)
@result_count = @results.count @result_count = @results.count
@results = paginateHelper @results, 10 # @results = paginateHelper @results, 10
end end
else else
if group_id == '0' if group_id == '0'

View File

@ -92,7 +92,7 @@ class HomeworkCommonController < ApplicationController
@homework.publish_time = params[:homework_common][:publish_time] @homework.publish_time = params[:homework_common][:publish_time]
@homework.homework_type = params[:homework_common][:homework_type] @homework.homework_type = params[:homework_common][:homework_type]
unless @homework.late_penalty == params[:late_penalty] unless @homework.late_penalty == params[:late_penalty]
@homework.student_works.where("created_at > #{@homework.end_time}").each do |student_work| @homework.student_works.where("created_at > '#{@homework.end_time} 23:59:59'").each do |student_work|
student_work.late_penalty = params[:late_penalty] student_work.late_penalty = params[:late_penalty]
student_work.save student_work.save
end end

View File

@ -278,7 +278,7 @@ class StudentWorkController < ApplicationController
work_ids = "(" + @homework.student_works.map(&:id).join(",") + ")" work_ids = "(" + @homework.student_works.map(&:id).join(",") + ")"
@stundet_works = StudentWork.find_by_sql("SELECT * FROM (SELECT *,(all_count - has_count) AS absence FROM( @stundet_works = StudentWork.find_by_sql("SELECT * FROM (SELECT *,(all_count - has_count) AS absence FROM(
SELECT * , SELECT * ,
(SELECT evaluation_num FROM homework_detail_manuals WHERE homework_detail_manuals.homework_common_id = #{@homework.id}) AS all_count, (SELECT COUNT(*) FROM `student_works_evaluation_distributions` WHERE user_id = student_works.user_id AND student_work_id IN #{work_ids}) AS all_count,
(SELECT COUNT(*) FROM `student_works_scores` WHERE user_id = student_works.user_id AND student_work_id IN #{work_ids}) AS has_count (SELECT COUNT(*) FROM `student_works_scores` WHERE user_id = student_works.user_id AND student_work_id IN #{work_ids}) AS has_count
FROM `student_works` FROM `student_works`
WHERE homework_common_id = #{@homework.id} WHERE homework_common_id = #{@homework.id}
@ -365,7 +365,7 @@ class StudentWorkController < ApplicationController
sheet1[count_row,6] = homework.teacher_score.nil? ? l(:label_without_score) : format("%.2f",homework.teacher_score) sheet1[count_row,6] = homework.teacher_score.nil? ? l(:label_without_score) : format("%.2f",homework.teacher_score)
sheet1[count_row,7] = homework.teaching_asistant_score.nil? ? l(:label_without_score) : format("%.2f",homework.teaching_asistant_score) sheet1[count_row,7] = homework.teaching_asistant_score.nil? ? l(:label_without_score) : format("%.2f",homework.teaching_asistant_score)
sheet1[count_row,8] = homework.student_score.nil? ? l(:label_without_score) : format("%.2f",homework.student_score) sheet1[count_row,8] = homework.student_score.nil? ? l(:label_without_score) : format("%.2f",homework.student_score)
sheet1[count_row,9] = homework.final_score.nil? ? l(:label_without_score) : format("%.2f",homework.final_score) sheet1[count_row,9] = homework.respond_to?("score") ? homework.score.nil? ? l(:label_without_score) : format("%.2f",homework.score) : l(:label_without_score)
sheet1[count_row,10] = format_time(homework.created_at) sheet1[count_row,10] = format_time(homework.created_at)
count_row += 1 count_row += 1
end end

View File

@ -93,7 +93,7 @@ module ApiHelper
def homework_status_desc homework def homework_status_desc homework
if homework.homework_type == 1 && homework.homework_detail_manual #匿评作业 if homework.homework_type == 1 && homework.homework_detail_manual #匿评作业
if Time.parse(homework.end_time.to_s).strftime("%Y-%m-%d") >= Time.now.strftime("%Y-%m-%d") if Time.parse(homework.end_time.to_s).strftime("%Y-%m-%d") >= Time.now.strftime("%Y-%m-%d")
link = "<span class='fr mr10 pr_join_span ' title='作业截止日期之前不可启动匿评'>启动匿评</span>".html_safe link = "截止日期之前不可启动匿评"
elsif homework.student_works.count >= 2 #作业份数大于2 elsif homework.student_works.count >= 2 #作业份数大于2
case homework.homework_detail_manual.comment_status case homework.homework_detail_manual.comment_status
when 1 when 1
@ -104,10 +104,10 @@ module ApiHelper
link = " 匿评结束" link = " 匿评结束"
end end
else else
link = "学生提交作业数大于2才可启动匿评" link = "提交作业数大于2才可启动匿评"
end end
else else
link = "未开启匿评作业不可启动匿评" link = "未开启匿评作业不可启动匿评"
end end
link link
end end

View File

@ -1,149 +1,149 @@
module HomeworkAttachHelper module HomeworkAttachHelper
#判断是否具有删除的权限 # #判断是否具有删除的权限
def attach_delete(project) # def attach_delete(project)
if User.current.logged? && (User.current.admin? || (!Member.where('user_id = ? and project_id = ?', User.current.id, project.bid.courses.first.id).first.nil? && (Member.where('user_id = ? and project_id = ?', User.current.id, project.bid.courses.first.id).first.roles&Role.where('id = ? or id = ?', 3, 7)).size >0) || project.user_id == User.current.id) # if User.current.logged? && (User.current.admin? || (!Member.where('user_id = ? and project_id = ?', User.current.id, project.bid.courses.first.id).first.nil? && (Member.where('user_id = ? and project_id = ?', User.current.id, project.bid.courses.first.id).first.roles&Role.where('id = ? or id = ?', 3, 7)).size >0) || project.user_id == User.current.id)
true # true
else # else
false # false
end # end
end # end
#作业添加、编辑界面的tab页 # #作业添加、编辑界面的tab页
def homework_settings_tabs f # def homework_settings_tabs f
@f = f # @f = f
tabs = [{:name => 'info', :partial => 'homework_attach/edit_homework', :label => :label_information_plural}, # tabs = [{:name => 'info', :partial => 'homework_attach/edit_homework', :label => :label_information_plural},
{:name => 'members', :partial => 'homework_attach/homework_member', :label => :label_member_plural} # {:name => 'members', :partial => 'homework_attach/homework_member', :label => :label_member_plural}
] # ]
end # end
#
#作业可选成员列表分页 # #作业可选成员列表分页
def render_new_members_for_homework members # def render_new_members_for_homework members
#scope = Principal.active.sorted.not_member_of(project).like(params[:q]) # #scope = Principal.active.sorted.not_member_of(project).like(params[:q])
#scope = project.members # #scope = project.members
#principals = paginateHelper members,10 # #principals = paginateHelper members,10
#principals = members # #principals = members
#principal_count = members.count # #principal_count = members.count
#limit = 10 # #limit = 10
#principal_pages = Redmine::Pagination::Paginator.new principal_count, limit, params['page'] #by young # #principal_pages = Redmine::Pagination::Paginator.new principal_count, limit, params['page'] #by young
#offset ||= principal_pages.offset # #offset ||= principal_pages.offset
#principals = members[offset, limit] # #principals = members[offset, limit]
users = members.map(&:user) # users = members.map(&:user)
s = content_tag('div', member_check_box_tags_ex('membership[user_ids][]', users), :id => 'principals') # s = content_tag('div', member_check_box_tags_ex('membership[user_ids][]', users), :id => 'principals')
links = pagination_links_full(@obj_pages, @obj_count, :per_page_links => false) {|text, parameters, options| # links = pagination_links_full(@obj_pages, @obj_count, :per_page_links => false) {|text, parameters, options|
link_to text, get_homework_member_list_homework_attach_index_path( parameters.merge(:q => params[:q], bid_id: params[:id]||@homework)), :remote => true } # link_to text, get_homework_member_list_homework_attach_index_path( parameters.merge(:q => params[:q], bid_id: params[:id]||@homework)), :remote => true }
return s + content_tag('div', content_tag('ul', links), :class => 'pagination_new') # return s + content_tag('div', content_tag('ul', links), :class => 'pagination_new')
end # end
#
#扩展的checkbox生成 # #扩展的checkbox生成
def member_check_box_tags_ex(name, principals) # def member_check_box_tags_ex(name, principals)
s = '' # s = ''
principals.each do |member| # principals.each do |member|
s << "<label>#{ check_box_tag name, member.id, false, :id => nil } #{h member.name }</label><br/>" # s << "<label>#{ check_box_tag name, member.id, false, :id => nil } #{h member.name }</label><br/>"
end # end
s.html_safe # s.html_safe
end # end
#
def paginateHelper obj, pre_size=20 # def paginateHelper obj, pre_size=20
@obj_count = obj.count # @obj_count = obj.count
@obj_pages = Redmine::Pagination::Paginator.new @obj_count, pre_size, params['page'] # @obj_pages = Redmine::Pagination::Paginator.new @obj_count, pre_size, params['page']
if obj.kind_of? ActiveRecord::Base or obj.kind_of? ActiveRecord::Relation # if obj.kind_of? ActiveRecord::Base or obj.kind_of? ActiveRecord::Relation
obj.limit(@obj_pages.per_page).offset(@obj_pages.offset) # obj.limit(@obj_pages.per_page).offset(@obj_pages.offset)
elsif obj.kind_of? Array # elsif obj.kind_of? Array
obj[@obj_pages.offset, @obj_pages.per_page] # obj[@obj_pages.offset, @obj_pages.per_page]
else # else
logger.error "[ApplicationController] Error : application_controller#paginateHelper ===> unknow category: #{obj.class}" # logger.error "[ApplicationController] Error : application_controller#paginateHelper ===> unknow category: #{obj.class}"
raise RuntimeError, 'unknow type, Please input you type into this helper.' # raise RuntimeError, 'unknow type, Please input you type into this helper.'
end # end
end # end
#
def user_projects_option # def user_projects_option
cond = Project.visible_condition(User.current) + " AND projects.project_type <> 1" # cond = Project.visible_condition(User.current) + " AND projects.project_type <> 1"
memberships = User.current.memberships.all(:conditions => cond) # memberships = User.current.memberships.all(:conditions => cond)
projects = memberships.map(&:project) # projects = memberships.map(&:project)
not_have_project = [] # not_have_project = []
not_have_project << Setting.please_chose # not_have_project << Setting.please_chose
not_have_project << 0 # not_have_project << 0
type = [] # type = []
type << not_have_project # type << not_have_project
projects.each do |project| # projects.each do |project|
if project != nil # if project != nil
option = [] # option = []
option << project.name # option << project.name
option << project.id # option << project.id
type << option # type << option
end # end
end # end
type # type
end # end
#
#判断指定用户是不是已经赞过该作业 # #判断指定用户是不是已经赞过该作业
def is_praise_homework user_id, obj_id # def is_praise_homework user_id, obj_id
PraiseTread.where("user_id = #{user_id} AND praise_tread_object_id = #{obj_id} AND praise_tread_object_type = 'HomeworkAttach'").empty? # PraiseTread.where("user_id = #{user_id} AND praise_tread_object_id = #{obj_id} AND praise_tread_object_type = 'HomeworkAttach'").empty?
end # end
#
#获取赞的总数 # #获取赞的总数
def praise_homework_count obj_id # def praise_homework_count obj_id
PraiseTread.where("praise_tread_object_id = #{obj_id} AND praise_tread_object_type = 'HomeworkAttach'").count # PraiseTread.where("praise_tread_object_id = #{obj_id} AND praise_tread_object_type = 'HomeworkAttach'").count
end # end
#
#获取用户对作业的评分 # #获取用户对作业的评分
def get_homework_score user, homework # def get_homework_score user, homework
temp = HomeworkAttach.find_by_sql("SELECT stars FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = #{homework.id} AND rater_id = #{user.id}").first # temp = HomeworkAttach.find_by_sql("SELECT stars FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = #{homework.id} AND rater_id = #{user.id}").first
@m_score = temp.nil? ? 0:temp.stars.to_i # @m_score = temp.nil? ? 0:temp.stars.to_i
end # end
#
#获取评分对应的评论 # #获取评分对应的评论
def get_homework_review homework,is_teacher,user # def get_homework_review homework,is_teacher,user
homework.journals_for_messages.where("is_comprehensive_evaluation = #{is_teacher ? 1 : 2} and user_id = #{user.id}").order("created_on DESC").first # homework.journals_for_messages.where("is_comprehensive_evaluation = #{is_teacher ? 1 : 2} and user_id = #{user.id}").order("created_on DESC").first
end # end
#
def convert_array array # def convert_array array
ary = "(" # ary = "("
if array.nil? || array.count == 0 # if array.nil? || array.count == 0
return "()" # return "()"
end # end
array.length.times do |i| # array.length.times do |i|
if i == array.length - 1 # if i == array.length - 1
ary += array[i].id.to_s + ")" # ary += array[i].id.to_s + ")"
else # else
if !(array[i].nil? || array[i].id.nil? || array[i].id.to_s == "") # if !(array[i].nil? || array[i].id.nil? || array[i].id.to_s == "")
ary += array[i].id.to_s + "," # ary += array[i].id.to_s + ","
end # end
end # end
end # end
#array.each do |member| # #array.each do |member|
# if member == array.last # # if member == array.last
# ary += member.id.to_s + ")" # # ary += member.id.to_s + ")"
# else # # else
# ary += member.id.to_s + "," # # ary += member.id.to_s + ","
# end # # end
#end # #end
ary # ary
end # end
#
def get_student_batch_homework_list bid,user # def get_student_batch_homework_list bid,user
student_batch_homework_list = HomeworkAttach.eager_load(:attachments,:user,:rate_averages).find_by_sql("SELECT homework_attaches.*, # student_batch_homework_list = HomeworkAttach.eager_load(:attachments,:user,:rate_averages).find_by_sql("SELECT homework_attaches.*,
(SELECT stars FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND is_teacher_score = 1 AND stars IS NOT NULL ORDER BY updated_at DESC limit 0,1) AS t_score, # (SELECT stars FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND is_teacher_score = 1 AND stars IS NOT NULL ORDER BY updated_at DESC limit 0,1) AS t_score,
(SELECT AVG(stars) FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND is_teacher_score = 0) AS s_score, # (SELECT AVG(stars) FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND is_teacher_score = 0) AS s_score,
(SELECT stars FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id = #{User.current.id} AND is_teacher_score = 0) AS m_score # (SELECT stars FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id = #{User.current.id} AND is_teacher_score = 0) AS m_score
FROM homework_attaches # FROM homework_attaches
INNER JOIN homework_evaluations ON homework_evaluations.homework_attach_id = homework_attaches.id # INNER JOIN homework_evaluations ON homework_evaluations.homework_attach_id = homework_attaches.id
WHERE homework_attaches.bid_id = #{bid.id} AND homework_evaluations.user_id = #{user.id} ORDER BY m_score DESC") # WHERE homework_attaches.bid_id = #{bid.id} AND homework_evaluations.user_id = #{user.id} ORDER BY m_score DESC")
student_batch_homework_list # student_batch_homework_list
end # end
#
######################################################### # #########################################################
#sw # #sw
#获取学生未进行匿评的数量 # #获取学生未进行匿评的数量
#param: bid => 作业 user => 用户 # #param: bid => 作业 user => 用户
#return 指定用户未进行匿评的作业的数量 # #return 指定用户未进行匿评的作业的数量
#user必须是学生用户 # #user必须是学生用户
####################################################### # #######################################################
def get_student_not_batch_homework_list bid,user # def get_student_not_batch_homework_list bid,user
HomeworkAttach.find_by_sql("SELECT * FROM(SELECT homework_attaches.*, # HomeworkAttach.find_by_sql("SELECT * FROM(SELECT homework_attaches.*,
(SELECT stars FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id = #{user.id} AND is_teacher_score = 0) AS m_score # (SELECT stars FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id = #{user.id} AND is_teacher_score = 0) AS m_score
FROM homework_attaches # FROM homework_attaches
INNER JOIN homework_evaluations ON homework_evaluations.homework_attach_id = homework_attaches.id # INNER JOIN homework_evaluations ON homework_evaluations.homework_attach_id = homework_attaches.id
WHERE homework_attaches.bid_id = #{bid.id} AND homework_evaluations.user_id = #{user.id}) AS table1 # WHERE homework_attaches.bid_id = #{bid.id} AND homework_evaluations.user_id = #{user.id}) AS table1
WHERE table1.m_score IS NULL").count # WHERE table1.m_score IS NULL").count
end # end
end end

View File

@ -68,24 +68,36 @@ module IssuesHelper
end end
#获取跟踪类型及样式 #获取跟踪类型及样式
#REDO:时间紧可以优化.
def get_issue_type(value) def get_issue_type(value)
issuetype = [] issuetype = []
if value == "缺陷" || value == 1 if value == "缺陷" || value == 1
issuetype << "red_btn_cir ml10" issuetype << "issues fl"
issuetype << "缺陷"
elsif value == "功能" || value == 2 elsif value == "功能" || value == 2
issuetype << "blue_btn_cir ml10" issuetype << "duty fl"
issuetype << "功能"
elsif value == "支持" || value == 3 elsif value == "支持" || value == 3
issuetype << "green_btn_cir ml10" issuetype << "support fl"
issuetype << "支持"
elsif value == "任务" || value == 4 elsif value == "任务" || value == 4
issuetype << "function fl"
else
issuetype << "weekly fl"
end
end
# 获取优先级样式
def get_issue_priority(value)
issuetype = []
if value == "紧急" || value == 1
issuetype << "red_btn_cir ml10"
issuetype << "紧急"
elsif value == "正常" || value == 3
issuetype << "green_btn_cir ml10"
issuetype << "正常"
elsif value == "" || value == 4
issuetype << "orange_btn_cir ml10" issuetype << "orange_btn_cir ml10"
issuetype << "任务" issuetype << ""
else else
issuetype << "bgreen_btn_cir ml10" issuetype << "bgreen_btn_cir ml10"
issuetype << "周报" issuetype << ""
end end
end end

View File

@ -433,7 +433,7 @@ module UserScoreHelper
#协同得分 #协同得分
def collaboration(option_number) def collaboration(option_number)
option_number.memo * 2 + option_number.messages_for_issues + option_number.issues_status + option_number.replay_for_message + option_number.replay_for_memo option_number.messages_for_issues + option_number.issues_status + option_number.replay_for_message + option_number.replay_for_memo
end end
#影响力得分 #影响力得分
def influence(option_number) def influence(option_number)
@ -445,7 +445,7 @@ module UserScoreHelper
end end
#项目贡献得分 #项目贡献得分
def active(option_number) def active(option_number)
option_number.changeset * 4 + option_number.document * 4 + option_number.attachment * 4 + option_number.issue_done_ratio * 2 + option_number.post_issue * 4 option_number.changeset * 4 + option_number.document * 4 + option_number.attachment * 4 + option_number.issue_done_ratio * 2 + option_number.post_issue * 4 + option_number.memo * 2
end end
#更新发帖数 #更新发帖数

View File

@ -120,8 +120,8 @@ class Mailer < ActionMailer::Base
count = courses.count count = courses.count
count = count - 1 count = count - 1
for i in 0..count do for i in 0..count do
bids = courses[i].homework_commons.where("homework_commons.created_at between '#{date_from}' and '#{date_to}'").order(" '#{courses[i].id}', homework_commons.created_at desc") bids = courses[i].homework_commons.where("homework_commons.created_at between '#{date_from}' and '#{date_to}'").order("homework_commons.created_at desc")
attachments = courses[i].attachments.where("attachments.created_on between '#{date_from}' and '#{date_to}'").order(" '#{courses[i].id}',attachments.created_on DESC' ") attachments = courses[i].attachments.where("attachments.created_on between '#{date_from}' and '#{date_to}'")
@bids += bids if bids.count > 0 @bids += bids if bids.count > 0
@attachments += attachments if attachments.count > 0 @attachments += attachments if attachments.count > 0
end end

View File

@ -1,5 +1,6 @@
class OptionNumber < ActiveRecord::Base class OptionNumber < ActiveRecord::Base
attr_accessible :attachment, :changeset, :document, :follow, :issue_done_ratio, :issues_status, :memo, :messages_for_issues, :post_issue, :praise_by_one, :praise_by_three, :praise_by_two, :replay_for_memo, :replay_for_message, :score_type, :total_score, :tread, :tread_by_one, :tread_by_three, :tread_by_two, :user_id attr_accessible :attachment, :changeset, :document, :follow, :issue_done_ratio, :issues_status, :memo, :messages_for_issues, :post_issue,
:praise_by_one, :praise_by_three, :praise_by_two, :replay_for_memo, :replay_for_message, :score_type, :total_score, :tread, :tread_by_one, :tread_by_three, :tread_by_two, :user_id
def self.get_user_option_number user_id def self.get_user_option_number user_id
result = nil result = nil

View File

@ -50,9 +50,6 @@
} }
} }
</script> </script>
<div class="add_frame_header" >
<%= l(:bale_news_notice) %>
</div>
<div class="box tabular"> <div class="box tabular">
<p> <p>
<%= f.text_field :title, <%= f.text_field :title,

View File

@ -56,7 +56,23 @@
</div> </div>
<% end%> <% end%>
</div> </div>
<div class="cl"></div>
<div class="mt5">
<span class="tit_fb" style="width: auto;"> 扣分标准:</span>
<div class="fl mb5 c_red">
迟交扣
<%= homework.late_penalty%>
<% if homework.homework_type == 1%>
,缺评一个作品扣
<%= homework.homework_detail_manual.absence_penalty%>
<% else%>
<% end%>
</div>
</div>
<div class="cl"></div> <div class="cl"></div>
<span class="fl"><%= l(:label_end_time)%><%= homework.end_time%></span> <span class="fl"><%= l(:label_end_time)%><%= homework.end_time%></span>

View File

@ -1,11 +1,11 @@
<% reply_links = authorize_for('issues', 'edit') -%> <% reply_links = authorize_for('issues', 'edit') -%>
<% journals.reverse.each do |journal| %> <% journals.reverse.each do |journal| %>
<!-- modified by bai --> <!-- modified by bai -->
<div id="change-<%= journal.id %>" class="<%= journal.css_classes %>" style=" word-wrap: break-word; word-break: break-all"> <div id="change-<%= journal.id %>" class="<%= journal.css_classes %>" style=" word-wrap: break-word; word-break: break-all">
<!-- end --> <!-- end -->
<div class="ping_C mb10"> <div class="ping_C mb10 ml10">
<div class="ping_dispic"><a href="#" target="_blank"><%= image_tag(url_to_avatar(journal.user), :class => "ping_dispic",:width => 46,:height => 46) %></a></div> <div class="ping_dispic"><a href="#" target="_blank"><%= image_tag(url_to_avatar(journal.user), :class => "ping_dispic",:width => 46,:height => 46) %></a></div>
<div class="ping_discon"> <div class="ping_discon" style="width: 600px;">
<div class="ping_distop"> <div class="ping_distop">
<a href="#" target="_blank" class="c_blue fb fl mb10 "><%= journal.user %></a><span class="c_grey fr"><%= format_time journal.created_on %></span> <a href="#" target="_blank" class="c_blue fb fl mb10 "><%= journal.user %></a><span class="c_grey fr"><%= format_time journal.created_on %></span>
<div class="cl"></div> <div class="cl"></div>
@ -20,14 +20,12 @@
<!--编辑、引用、回复按钮--> <!--编辑、引用、回复按钮-->
<div class="ping_disfoot"><%= render_links_easy(issue, journal, :reply_links => reply_links) unless journal.notes.blank? %></div> <div class="ping_disfoot"><%= render_links_easy(issue, journal, :reply_links => reply_links) unless journal.notes.blank? %></div>
<!--回复内容、引用内容--> <!--回复内容、引用内容-->
<p> <p><%= render_notes_issue(issue, journal, :reply_links => reply_links) unless journal.notes.blank? %></p>
<%= render_notes_issue(issue, journal, :reply_links => reply_links) unless journal.notes.blank? %>
</p>
<div class="cl"></div> <div class="cl"></div>
</div> </div>
<div class="cl"></div> <div class="cl"></div>
</div> </div>
</div> </div>
<%= call_hook(:view_issues_history_journal_bottom, { :journal => journal }) %> <%= call_hook(:view_issues_history_journal_bottom, { :journal => journal }) %>
<% end %> <% end %>

View File

@ -7,12 +7,12 @@
<div class="problem_main"> <div class="problem_main">
<% column_content = ( query.inline_columns.map {|column| "#{column_content_new(column, issue)}"}) %> <% column_content = ( query.inline_columns.map {|column| "#{column_content_new(column, issue)}"}) %>
<% unless issue.author.nil? || issue.author.name == "Anonymous" %> <% unless issue.author.nil? || issue.author.name == "Anonymous" %>
<span class="issues_icon fl"></span> <span class ="<%= get_issue_type(column_content[1])[0] %>"></span>
<div class="problem_txt fl"> <div class="problem_txt fl">
<%= link_to issue.author.name, user_path(issue.author), :class => "problem_name c_orange fl" %> <%= link_to issue.author.name, user_path(issue.author), :class => "problem_name c_orange fl" %>
<span class="fl"><%= l(:label_post_on_issue) %>(<%= "#{raw column_content[2]}" %>)</span> <span class="fl"><%= l(:label_post_on_issue) %>(<%= "#{raw column_content[2]}" %>)</span>
<div class="problem_tit_div fl break_word"> <div class="problem_tit_div fl break_word">
<%=link_to "#{column_content[4]}<span class = '#{get_issue_type(column_content[1])[0]}'>#{get_issue_type(column_content[1])[1]}</span>".html_safe, issue_path(issue.id), :class => "problem_tit_a break_word",:target => "_blank" %> <%=link_to "#{column_content[4]}<span class = '#{get_issue_priority(column_content[3])[0]}'>#{get_issue_priority(column_content[3])[1]}</span>".html_safe, issue_path(issue.id), :class => "problem_tit_a break_word",:target => "_blank" %>
</div> </div>
<div class="cl"></div> <div class="cl"></div>
<p> <p>

View File

@ -66,7 +66,8 @@
<%= text_field_tag 'name', params[:name], :size => 20, :onkeyup => 'regexName1();', :width => "125px", :style=>"float:left" %> <%= text_field_tag 'name', params[:name], :size => 20, :onkeyup => 'regexName1();', :width => "125px", :style=>"float:left" %>
<%= hidden_field_tag 'project_type', params[:project_type] %> <%= hidden_field_tag 'project_type', params[:project_type] %>
<%#= submit_tag l(:label_search), :class => "enterprise", :name => nil %> <%#= submit_tag l(:label_search), :class => "enterprise", :name => nil %>
<a href="#" onclick="submitSerch();" class="ButtonColor m3p10" style="float:left;padding-top: 3px; margin: 0px;padding-bottom:0px;" > <!--<a href="#" onclick="submitSerch();" class="ButtonColor" style="float:left;padding-top: 3px; margin: 0px;padding-bottom:0px; padding-left:8px;" >-->
<a href="#" onclick="submitSerch();" class="enterprise" style="padding-top: 3px; margin: 0px;padding-bottom:0px; margin-top: 1px; margin-left: 3px; background:#15bccf repeat">
<%= l(:label_search)%> <%= l(:label_search)%>
</a> </a>
<br /> <br />

View File

@ -5,7 +5,7 @@
<% if @attachments.first || @course_news.first || @course_news_comments.first || @bids.first || <% if @attachments.first || @course_news.first || @course_news_comments.first || @bids.first ||
@course_journal_messages.first|| @course_messages.first || @attachments.first %> @course_journal_messages.first|| @course_messages.first || @attachments.first %>
<div class="wmail_main" style="padding:20px 10px 0px;"> <div class="wmail_main" style="padding:20px 10px 0px;">
<h3 class="wmail_h2" style="color:#15bccf; "><%= l(:label_course_overview)%></h3> <h3 class="wmail_h2" style="color:#474646; "><%= l(:label_course_overview)%></h3>
<!-- 课程通知 --> <!-- 课程通知 -->
<% unless @course_news.first.nil? || @course_news_comments.first.nil? %> <% unless @course_news.first.nil? || @course_news_comments.first.nil? %>
<ul class="wmail_ul" style=" list-style-type:none;clear: both;margin-left:10px; border-bottom:1px dashed #cfcfcf; padding-bottom:15px; width:1020px; margin-bottom:15px;"> <ul class="wmail_ul" style=" list-style-type:none;clear: both;margin-left:10px; border-bottom:1px dashed #cfcfcf; padding-bottom:15px; width:1020px; margin-bottom:15px;">
@ -189,7 +189,7 @@
<% if @issues.first || @project_messages.first || @issues_journals.first || @wiki_contents.first || @project_news.first || @project_news_comments.first || @project_journal_messages.first || <% if @issues.first || @project_messages.first || @issues_journals.first || @wiki_contents.first || @project_news.first || @project_news_comments.first || @project_journal_messages.first ||
@project_news_comments.first %> @project_news_comments.first %>
<div class="wmail_main" style="padding:20px 10px 0px;"> <div class="wmail_main" style="padding:20px 10px 0px;">
<h3 class="wmail_h2" style="color:#15BCCF; "><%= l(:label_project_overview_new)%></h3> <h3 class="wmail_h2" style="color:#474646; "><%= l(:label_project_overview_new)%></h3>
<% unless @issues.first.nil? || @issues_journals.first.nil? %> <% unless @issues.first.nil? || @issues_journals.first.nil? %>
<ul class="wmail_ul" style="margin-left:10px; border-bottom:1px dashed #cfcfcf; padding-bottom:15px; width:1020px; margin-bottom:15px;"> <ul class="wmail_ul" style="margin-left:10px; border-bottom:1px dashed #cfcfcf; padding-bottom:15px; width:1020px; margin-bottom:15px;">
<span class="wmail_h4" style="color:#666; font-size:14px; margin-bottom:5px;" > <span class="wmail_h4" style="color:#666; font-size:14px; margin-bottom:5px;" >
@ -420,7 +420,7 @@
<!-- 用户留言 --> <!-- 用户留言 -->
<% unless @user_journal_messages.first.nil? %> <% unless @user_journal_messages.first.nil? %>
<div class="wmail_main" style="padding:20px 10px 0px;"> <div class="wmail_main" style="padding:20px 10px 0px;">
<h3 class="wmail_h2" style="color:#15bccf; "><%= l(:label_activities) %></h3> <h3 class="wmail_h2" style="color:#474646; "><%= l(:label_activities) %></h3>
<ul class="wmail_ul" style="margin-left:10px; border-bottom:1px dashed #cfcfcf; padding-bottom:15px; width:1020px; margin-bottom:15px;"> <ul class="wmail_ul" style="margin-left:10px; border-bottom:1px dashed #cfcfcf; padding-bottom:15px; width:1020px; margin-bottom:15px;">
<span class="wmail_h4" style="color:#666; font-size:14px; margin-bottom:5px;" > <span class="wmail_h4" style="color:#666; font-size:14px; margin-bottom:5px;" >
@ -451,7 +451,7 @@
<% end %> <% end %>
<% if @forums.first || @memos.first %> <% if @forums.first || @memos.first %>
<div class="wmail_main" style="padding:20px 10px 0px;"> <div class="wmail_main" style="padding:20px 10px 0px;">
<h3 class="wmail_h2" style="color:#15bccf; "><%= l(:lable_bar_active) %></h3> <h3 class="wmail_h2" style="color:#474646; "><%= l(:lable_bar_active) %></h3>
<% unless @forums.first.nil? %> <% unless @forums.first.nil? %>
<ul class="wmail_ul" style="margin-left:10px; border-bottom:1px dashed #cfcfcf; padding-bottom:15px; width:1020px; margin-bottom:15px;"> <ul class="wmail_ul" style="margin-left:10px; border-bottom:1px dashed #cfcfcf; padding-bottom:15px; width:1020px; margin-bottom:15px;">
<span class="wmail_h4" style="color:#474646; font-size:14px; margin-bottom:5px;" > <span class="wmail_h4" style="color:#474646; font-size:14px; margin-bottom:5px;" >
@ -508,7 +508,7 @@
</div><!--贴吧动态 end--> </div><!--贴吧动态 end-->
<% end %> <% end %>
<div class="wmail_foot" style="margin-top:20px;color:#2775d2; margin-left:10px;"> <div class="wmail_foot" style="margin-top:20px;color:#2775d2; margin-left:10px;">
<span style="color:#666;"><%= l(:label_mail_policy) %></span> <span style="color:#474646;"><%= l(:label_mail_policy) %></span>
<% [:label_user_mail_option_all, :label_user_mail_option_day, :label_user_mail_option_none].each do |mail_option| %> <% [:label_user_mail_option_all, :label_user_mail_option_day, :label_user_mail_option_none].each do |mail_option| %>
<% if Hash[*User::MAIL_NOTIFICATION_OPTIONS.flatten][@user.mail_notification] == mail_option %> <% if Hash[*User::MAIL_NOTIFICATION_OPTIONS.flatten][@user.mail_notification] == mail_option %>
<label style="margin-top:20px;color:gray; margin-left:10px;"><%= l(mail_option) %></label> <label style="margin-top:20px;color:gray; margin-left:10px;"><%= l(mail_option) %></label>

View File

@ -1,5 +1,5 @@
<%= stylesheet_link_tag 'polls', :media => 'all' %> <%= stylesheet_link_tag 'polls', :media => 'all' %>
<div class="polls_content polls_box"> <div class="polls_content polls_box break_word">
<div class="ur_page_head" > <div class="ur_page_head" >
<h1 class="ur_page_title"> <h1 class="ur_page_title">
<%= @poll.polls_name.empty? ? l(:label_poll_new) : @poll.polls_name %> <%= @poll.polls_name.empty? ? l(:label_poll_new) : @poll.polls_name %>

View File

@ -0,0 +1,58 @@
<!-- 作品列表,显示某一个作品的信息 -->
<ul class="hwork_ul <%= cycle("b_grey", "") %>" id="student_work_<%= student_work.id%>">
<li class="hwork_num">
<span>
<%= student_work.user.user_extensions.nil? ? "--" : student_work.user.user_extensions.student_id%>
</span>
</li>
<li class=" hwork_name ">
<%= link_to student_work.user.show_name,user_path(student_work.user),:title => student_work.user.show_name, :class => "c_blue02"%>
</li>
<li class=" hwork_tit">
<%= link_to student_work.name, student_work_path(student_work),:remote => true,:title => student_work.name, :class => "c_blue02"%>
</li>
<li class=" hwork_time_c">
<% if Time.parse(@homework.end_time.to_s).strftime("%Y-%m-%d") < Time.parse(student_work.created_at.to_s).strftime("%Y-%m-%d") %>
<span class="c_red">迟交</span>
<% else%>
<%= student_work.created_at.strftime("%m-%d").to_s%>
<% end %>
</li>
<li class=" hwork_score <%= score_color student_work.teacher_score%>">
<%= student_work.teacher_score.nil? ? "--" : format("%.1f",student_work.teacher_score)%>
</li>
<li class=" hwork_score <%= score_color student_work.teaching_asistant_score%>">
<%= student_work.teaching_asistant_score.nil? ? "--" : format("%.1f",student_work.teaching_asistant_score)%>
</li>
<li class=" hwork_code02 <%= score_color student_work.student_score%> student_score_info" >
<%= student_work.student_score.nil? ? "--" : format("%.1f",student_work.student_score)%>
<% unless student_work.student_score.nil?%>
<span class="">
(<%= student_work.student_works_scores.where(:reviewer_role => 3).count%>)
</span>
<div class="info_ni">
现共有
<span class="c_red">&nbsp;<%= student_work.student_works_scores.where(:reviewer_role => 3).count%>&nbsp;</span>
名学生进行了匿评,平均分为
<span class="c_red">&nbsp;<%= format("%.1f",student_work.student_score)%>&nbsp;</span>分。
</div>
<% end%>
</li>
<% score = student_work.respond_to?("score") ? student_work.score : student_work.final_score - student_work.absence_penalty - student_work.late_penalty%>
<li class=" hwork_score <%= score_color score%> student_final_scor_info">
<%= score.nil? ? "--" : format("%.1f",score)%>
<% unless score.nil?%>
<div class="info_ni">
作品最终评分为
<span class="c_red">&nbsp;<%= student_work.final_score%>&nbsp;</span>分。
迟交扣分
<span class="c_red">&nbsp;<%= student_work.late_penalty%>&nbsp;</span>分,
缺评扣分
<span class="c_red">&nbsp;<%= student_work.absence_penalty%>&nbsp;</span>分,
最终成绩为
<span class="c_red">&nbsp;<%= format("%.1f",score)%>&nbsp;</span>分。
</div>
<% end%>
</li>
<div class="cl"></div>
</ul><!---hwork_ul end-->

View File

@ -0,0 +1,43 @@
<li class="hwork_num ">
<span class="c_dark f14 fb fl">学号</span>
</li>
<li class=" hwork_name f14 fb c_dark">
<%= link_to "姓名",@show_all ? student_work_index_path(:homework => @homework.id,:order => "name", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%>
<% if @show_all && @order == "name"%>
<a href="javascript:void(0);" class="<%= @score == 'desc' ? 'st_up' : 'st_down'%>" ></a>
<% end%>
</li>
<li class="hwork_tit">
<span class="c_dark f14 fb fl">作品名称</span>
</li>
<li class=" hwork_time f14 fb c_dark">
<%= link_to "时间",@show_all ? student_work_index_path(:homework => @homework.id,:order => "created_at", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%>
<% if @show_all && @order == "created_at"%>
<%= link_to "",student_work_index_path(:homework => @homework.id,:order => "created_at", :sort => @score, :name => @name) ,:class => @score == 'desc' ? 'st_up' : 'st_down'%>
<% end%>
</li>
<li class="mr5 w40 ml15">
<%= link_to "教师",@show_all ? student_work_index_path(:homework => @homework.id,:order => "teacher_score", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%>
<% if @show_all && @order == "teacher_score"%>
<%= link_to "", student_work_index_path(:homework => @homework.id,:order => "teacher_score", :sort => @score, :name => @name) ,:class => @score == 'desc' ? 'st_up' : 'st_down'%>
<% end%>
</li>
<li class="mr5 w40 ml20">
<%= link_to "教辅",@show_all ? student_work_index_path(:homework => @homework.id,:order => "teaching_asistant_score", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%>
<% if @show_all && @order == "teaching_asistant_score"%>
<%= link_to "", student_work_index_path(:homework => @homework.id,:order => "teaching_asistant_score", :sort => @score, :name => @name) ,:class => @score == 'desc' ? 'st_up' : 'st_down'%>
<% end%>
</li>
<li class="mr5 ml10 w40">
<%= link_to "匿评",@show_all ? student_work_index_path(:homework => @homework.id,:order => "student_score", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%>
<% if @show_all && @order == "student_score"%>
<%= link_to "", student_work_index_path(:homework => @homework.id,:order => "student_score", :sort => @score, :name => @name) ,:class => @score == 'desc' ? 'st_up' : 'st_down'%>
<% end%>
</li>
<li class="ml20">
<%= link_to "成绩",@show_all ? student_work_index_path(:homework => @homework.id,:order => "score", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%>
<% if @show_all && @order == "score"%>
<%= link_to "", student_work_index_path(:homework => @homework.id,:order => "score", :sort => @score, :name => @name) ,:class => @score == 'desc' ? 'st_up' : 'st_down'%>
<% end%>
</li>

View File

@ -8,7 +8,7 @@
<li class=" hwork_name "> <li class=" hwork_name ">
<%= link_to student_work.user.show_name,user_path(student_work.user),:title => student_work.user.show_name, :class => "c_blue02"%> <%= link_to student_work.user.show_name,user_path(student_work.user),:title => student_work.user.show_name, :class => "c_blue02"%>
</li> </li>
<li class=" hwork_tit"> <li class=" hwork_tit_une">
<%= link_to student_work.name, student_work_path(student_work),:remote => true,:title => student_work.name, :class => "c_blue02"%> <%= link_to student_work.name, student_work_path(student_work),:remote => true,:title => student_work.name, :class => "c_blue02"%>
</li> </li>
<li class=" hwork_time_c"> <li class=" hwork_time_c">
@ -24,37 +24,10 @@
<li class=" hwork_score <%= score_color student_work.teaching_asistant_score%>"> <li class=" hwork_score <%= score_color student_work.teaching_asistant_score%>">
<%= student_work.teaching_asistant_score.nil? ? "--" : format("%.1f",student_work.teaching_asistant_score)%> <%= student_work.teaching_asistant_score.nil? ? "--" : format("%.1f",student_work.teaching_asistant_score)%>
</li> </li>
<li class=" hwork_code02 <%= score_color student_work.student_score%> student_score_info" >
<%= student_work.student_score.nil? ? "--" : format("%.1f",student_work.student_score)%>
<% unless student_work.student_score.nil?%>
<span class="">
(<%= student_work.student_works_scores.where(:reviewer_role => 3).count%>)
</span>
<div class="info_ni">
现共有
<span class="c_red">&nbsp;<%= student_work.student_works_scores.where(:reviewer_role => 3).count%>&nbsp;</span>
名学生进行了匿评,平均分为
<span class="c_red">&nbsp;<%= format("%.1f",student_work.student_score)%>&nbsp;</span>分。
</div>
<% end%>
</li>
<% score = student_work.respond_to?("score") ? student_work.score : student_work.final_score - student_work.absence_penalty - student_work.late_penalty%> <% score = student_work.respond_to?("score") ? student_work.score : student_work.final_score - student_work.absence_penalty - student_work.late_penalty%>
<li class=" hwork_score <%= score_color score%> student_final_scor_info"> <li class=" hwork_score <%= score_color score%> student_final_scor_info ml4">
<%= score.nil? ? "--" : format("%.1f",score)%> <%= score.nil? ? "--" : format("%.1f",score)%>
<% unless score.nil?%> <% unless score.nil?%>
<% if @homework.homework_type == 1%>
<!-- 匿评作品显示缺评扣分 -->
<div class="info_ni">
作品最终评分为
<span class="c_red">&nbsp;<%= student_work.final_score%>&nbsp;</span>分。
迟交扣分
<span class="c_red">&nbsp;<%= student_work.late_penalty%>&nbsp;</span>分,
缺评扣分
<span class="c_red">&nbsp;<%= student_work.absence_penalty%>&nbsp;</span>分,
最终成绩为
<span class="c_red">&nbsp;<%= score%>&nbsp;</span>分。
</div>
<% else%>
<!-- 非匿评作品不显示缺评扣分 --> <!-- 非匿评作品不显示缺评扣分 -->
<div class="info_ni"> <div class="info_ni">
作品最终评分为 作品最终评分为
@ -62,10 +35,9 @@
迟交扣分 迟交扣分
<span class="c_red">&nbsp;<%= student_work.late_penalty%>&nbsp;</span>分, <span class="c_red">&nbsp;<%= student_work.late_penalty%>&nbsp;</span>分,
最终成绩为 最终成绩为
<span class="c_red">&nbsp;<%= score%>&nbsp;</span>分。 <span class="c_red">&nbsp;<%= format("%.1f",score)%>&nbsp;</span>分。
</div> </div>
<% end%> <% end%>
<% end%>
</li> </li>
<div class="cl"></div> <div class="cl"></div>
</ul><!---hwork_ul end--> </ul><!---hwork_ul end-->

View File

@ -7,7 +7,7 @@
<a href="javascript:void(0);" class="<%= @score == 'desc' ? 'st_up' : 'st_down'%>" ></a> <a href="javascript:void(0);" class="<%= @score == 'desc' ? 'st_up' : 'st_down'%>" ></a>
<% end%> <% end%>
</li> </li>
<li class="hwork_tit"> <li class="hwork_tit_une">
<span class="c_dark f14 fb fl">作品名称</span> <span class="c_dark f14 fb fl">作品名称</span>
</li> </li>
<li class=" hwork_time f14 fb c_dark"> <li class=" hwork_time f14 fb c_dark">
@ -29,12 +29,6 @@
<% end%> <% end%>
</li> </li>
<li class="mr5 ml10 w40">
<%= link_to "匿评",@show_all ? student_work_index_path(:homework => @homework.id,:order => "student_score", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%>
<% if @show_all && @order == "student_score"%>
<%= link_to "", student_work_index_path(:homework => @homework.id,:order => "student_score", :sort => @score, :name => @name) ,:class => @score == 'desc' ? 'st_up' : 'st_down'%>
<% end%>
</li>
<li class="ml20"> <li class="ml20">
<%= link_to "成绩",@show_all ? student_work_index_path(:homework => @homework.id,:order => "score", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%> <%= link_to "成绩",@show_all ? student_work_index_path(:homework => @homework.id,:order => "score", :sort => @score, :name => @name) : "javascript:void(0)",:class => "f14 f_b c_dark fl"%>
<% if @show_all && @order == "score"%> <% if @show_all && @order == "score"%>

View File

@ -2,40 +2,36 @@ $("#add_student_score_<%= @work.id%>").html("<%= escape_javascript(render :parti
$('#score_<%= @work.id%>').peSlider({range: 'min'}); $('#score_<%= @work.id%>').peSlider({range: 'min'});
<% if @is_new%> <% if @is_new%>
$("#score_list_<%= @work.id%>").prepend("<div id='work_score_<%= @score.id%>'><%= escape_javascript(render :partial => 'student_work_score', :locals => {:score => @score}) %></div>"); $("#score_list_<%= @work.id%>").prepend("<div id='work_score_<%= @score.id%>'><%= escape_javascript(render :partial => 'student_work_score', :locals => {:score => @score}) %></div>");
<% else %> <% else %>
$("#work_score_<%= @score.id%>").html("<%= escape_javascript(render :partial => 'student_work_score', :locals => {:score => @score}) %>"); $("#work_score_<%= @score.id%>").html("<%= escape_javascript(render :partial => 'student_work_score', :locals => {:score => @score}) %>");
<% end%> <% end%>
$("#score_list_<%= @work.id%>").removeAttr("style"); $("#score_list_<%= @work.id%>").removeAttr("style");
<% if @is_teacher %> <% if @is_teacher %>
$("#student_work_<%= @work.id%>").replaceWith("<%= escape_javascript(render :partial => 'student_work',:locals => {:student_work => @work}) %>"); <% if @homework.homework_type == 1%>
$("#student_work_<%= @work.id%>").replaceWith("<%= escape_javascript(render :partial => 'evaluation_student_work',:locals => {:student_work => @work}) %>");
<% else%>
$("#student_work_<%= @work.id%>").replaceWith("<%= escape_javascript(render :partial => 'student_work',:locals => {:student_work => @work}) %>");
<% end%>
<% else %> <% else %>
$("#student_work_<%= @work.id%>").replaceWith("<%= escape_javascript(render :partial => 'evaluation_work',:locals => {:student_work => @work}) %>"); $("#student_work_<%= @work.id%>").replaceWith("<%= escape_javascript(render :partial => 'evaluation_work',:locals => {:student_work => @work}) %>");
<% end%> <% end%>
$(function(){ $(function(){
//匿评评分提示 //匿评评分提示
$(".student_score_info").bind("mouseover",function(e){ $(".student_score_info").bind("mouseover",function(e){
//alert($(this).html());
$(this).find("div").show(); $(this).find("div").show();
// $(this).find("div").css("top",e.pageY);
// $(this).find("div").css("left",e.pageX);
}); });
$(".student_score_info").bind("mouseout",function(e){ $(".student_score_info").bind("mouseout",function(e){
//alert($(this).html());
$(this).find("div").hide(); $(this).find("div").hide();
}); });
//最终成绩提示 //最终成绩提示
$(".student_final_scor_info").bind("mouseover",function(e){ $(".student_final_scor_info").bind("mouseover",function(e){
//alert($(this).html());
$(this).find("div").show(); $(this).find("div").show();
// $(this).find("div").css("top",e.pageY);
// $(this).find("div").css("left",e.pageX);
}); });
$(".student_final_scor_info").bind("mouseout",function(e){ $(".student_final_scor_info").bind("mouseout",function(e){
//alert($(this).html());
$(this).find("div").hide(); $(this).find("div").hide();
}); });
}); });

View File

@ -60,7 +60,7 @@
<%= link_to "附件", zipdown_assort_path(obj_class: @homework.class, obj_id: @homework, format: :json), <%= link_to "附件", zipdown_assort_path(obj_class: @homework.class, obj_id: @homework, format: :json),
remote: true, class: "down_btn fr zip_download_alert", :id => "download_homework_attachments" %> remote: true, class: "down_btn fr zip_download_alert", :id => "download_homework_attachments" %>
<% end%> <% end%>
<div class="info_ni_download"> <div class="info_ni_download" style="<%= @homework.homework_type == 1 ? '' : 'margin-left: 130px;'%>">
使用 使用
<span class="c_red">winzip</span> <span class="c_red">winzip</span>
工具进行解压可能会导致 工具进行解压可能会导致
@ -69,28 +69,46 @@
<span class="c_red">winrar</span> <span class="c_red">winrar</span>
工具进行解压 工具进行解压
</div> </div>
<%= link_to "匿评", evaluation_list_student_work_index_path(:homework => @homework.id, :format => 'xls'),:class=>'down_btn fr'%> <%= link_to("匿评", evaluation_list_student_work_index_path(:homework => @homework.id, :format => 'xls'),:class=>'down_btn fr') if @homework.homework_type == 1%>
<%= link_to "缺评", absence_penalty_list_student_work_index_path(:homework => @homework.id, :format => 'xls'),:class=>'down_btn fr'%> <%= link_to("缺评", absence_penalty_list_student_work_index_path(:homework => @homework.id, :format => 'xls'),:class=>'down_btn fr') if @homework.homework_type == 1%>
<%= link_to l(:label_list), student_work_index_path(:homework => @homework.id,:order => @order, :sort => @b_sort, :name => @name, :format => 'xls'),:class=>'down_btn fr'%> <%= link_to l(:label_list), student_work_index_path(:homework => @homework.id,:order => @order, :sort => @b_sort, :name => @name, :format => 'xls'),:class=>'down_btn fr'%>
<span class="mt3 fr " style="color:#136b3b;">导出全部:</span> <span class="mt3 fr " style="color:#136b3b;">导出全部:</span>
</div> </div>
<% end%> <% end%>
<div class="cl"></div> <div class="cl"></div>
</div><!---code_list end---> </div><!---code_list end--->
<ul class="hwork_ul">
<% if @is_evaluation.nil?%>
<%= render :partial => 'student_work_title'%>
<% else%>
<%= render :partial => 'evaluation_work_title'%>
<% end%>
</ul><!---hwork_ul end-->
<div class="cl"></div> <div class="cl"></div>
<% if @is_evaluation%>
<ul class="hwork_ul">
<%= render :partial => 'evaluation_work_title'%>
</ul><!---hwork_ul end-->
<div class="cl"></div>
<% @stundet_works.each do |student_work|%> <% @stundet_works.each do |student_work|%>
<%= render :partial => (@is_evaluation ? 'evaluation_work' :'student_work'),:locals => {:student_work => student_work}%> <%= render :partial => "evaluation_work",:locals => {:student_work => student_work}%>
<div id="about_hwork_<%= student_work.id%>" ></div> <div id="about_hwork_<%= student_work.id%>" ></div>
<% end%> <% end%>
<% else %>
<% if @homework.homework_type == 1%>
<ul class="hwork_ul">
<%= render :partial => 'evaluation_student_work_title'%>
</ul><!---hwork_ul end-->
<div class="cl"></div>
<% @stundet_works.each do |student_work|%>
<%= render :partial => "evaluation_student_work",:locals => {:student_work => student_work}%>
<div id="about_hwork_<%= student_work.id%>" ></div>
<% end%>
<% else%>
<ul class="hwork_ul">
<%= render :partial => 'student_work_title'%>
</ul><!---hwork_ul end-->
<div class="cl"></div>
<% @stundet_works.each do |student_work|%>
<%= render :partial => "student_work",:locals => {:student_work => student_work}%>
<div id="about_hwork_<%= student_work.id%>" ></div>
<% end%>
<% end%>
<% end%>
<div class="cl"></div> <div class="cl"></div>
</div><!---tbc_01 end--> </div><!---tbc_01 end-->
@ -123,6 +141,23 @@
</div> </div>
<% end%> <% end%>
</div> </div>
<div class="cl"></div>
<div class="mt5">
<span class="tit_fb" style="width: auto;"> 扣分标准:</span>
<div class="fl mb5 c_red">
迟交扣
<%= @homework.late_penalty%>
<% if @homework.homework_type == 1%>
,缺评一个作品扣
<%= @homework.homework_detail_manual.absence_penalty%>
<% else%>
<% end%>
</div>
</div>
<div class="cl"></div> <div class="cl"></div>
<span class="fl">截止时间:<%= @homework.end_time%></span> <span class="fl">截止时间:<%= @homework.end_time%></span>

View File

@ -4,4 +4,5 @@
<div>&nbsp;&nbsp;&nbsp; <%= l('userscore.active.commit.attachments')%> * 4 = <%= option_num.attachment %> * 4 = <%= option_num.attachment * 4 %></div> <div>&nbsp;&nbsp;&nbsp; <%= l('userscore.active.commit.attachments')%> * 4 = <%= option_num.attachment %> * 4 = <%= option_num.attachment * 4 %></div>
<div>&nbsp;&nbsp;&nbsp; <%= l('userscore.active.update_issues')%> * 2 = <%= option_num.issue_done_ratio %> * 2 = <%= option_num.issue_done_ratio * 2 %></div> <div>&nbsp;&nbsp;&nbsp; <%= l('userscore.active.update_issues')%> * 2 = <%= option_num.issue_done_ratio %> * 2 = <%= option_num.issue_done_ratio * 2 %></div>
<div>&nbsp;&nbsp;&nbsp; <%= l('userscore.active.release_issues')%> * 4 = <%= option_num.post_issue %> * 4 = <%= option_num.post_issue * 4 %></div> <div>&nbsp;&nbsp;&nbsp; <%= l('userscore.active.release_issues')%> * 4 = <%= option_num.post_issue %> * 4 = <%= option_num.post_issue * 4 %></div>
<div>&nbsp;&nbsp;&nbsp; <%= l(:label_user_score_of_active)%> = <%= option_num.changeset * 4 %> + <%= option_num.document * 4 %> + <%= option_num.attachment * 4 %> + <%= option_num.issue_done_ratio * 2 %> + <%= option_num.post_issue * 4 %> = <%= active(option_num) %> </div> <div>&nbsp;&nbsp;&nbsp; <%= l('userscore.active.release_messages')%> * 1 = <%= option_num.memo %> * 2 = <%= option_num.memo * 2 %></div>
<div>&nbsp;&nbsp;&nbsp; <%= l(:label_user_score_of_active)%> = <%= option_num.changeset * 4 %> + <%= option_num.document * 4 %> + <%= option_num.attachment * 4 %> + <%= option_num.issue_done_ratio * 2 %> + <%= option_num.post_issue * 4 %> + <%= option_num.memo * 2 %> = <%= active(option_num) %> </div>

View File

@ -1,7 +1,5 @@
<div>&nbsp;&nbsp;&nbsp; <%= l('userscore.collaboration.memos')%> * 2 = <%= option_num.memo %> * 2 = <%= option_num.memo * 2 %></div>
<div>&nbsp;&nbsp;&nbsp; <%= l('userscore.collaboration.message_for_issues')%> * 1 = <%= option_num.messages_for_issues %> * 1 = <%= option_num.messages_for_issues * 1 %></div> <div>&nbsp;&nbsp;&nbsp; <%= l('userscore.collaboration.message_for_issues')%> * 1 = <%= option_num.messages_for_issues %> * 1 = <%= option_num.messages_for_issues * 1 %></div>
<div>&nbsp;&nbsp;&nbsp; <%= l('userscore.collaboration.issue_status')%> * 1 = <%= option_num.issues_status %> * 1= <%= option_num.issues_status * 1 %></div> <div>&nbsp;&nbsp;&nbsp; <%= l('userscore.collaboration.issue_status')%> * 1 = <%= option_num.issues_status %> * 1= <%= option_num.issues_status * 1 %></div>
<div>&nbsp;&nbsp;&nbsp; <%= l('userscore.collaboration.reply_for_messages')%> * 1 = <%= option_num.replay_for_message %> * 1 = <%= option_num.replay_for_message * 1 %></div> <div>&nbsp;&nbsp;&nbsp; <%= l('userscore.collaboration.reply_for_messages')%> * 1 = <%= option_num.replay_for_message %> * 1 = <%= option_num.replay_for_message * 1 %></div>
<div>&nbsp;&nbsp;&nbsp; <%= l('userscore.collaboration.reply_for_memos')%> * 1 = <%= option_num.replay_for_memo %> * 1 = <%= option_num.replay_for_memo * 1 %></div> <div>&nbsp;&nbsp;&nbsp; <%= l('userscore.collaboration.reply_for_memos')%> * 1 = <%= option_num.replay_for_memo %> * 1 = <%= option_num.replay_for_memo * 1 %></div>
<div>&nbsp;&nbsp;&nbsp; <%= l(:label_user_score_of_collaboration)%> = <%= option_num.memo * 2 %> + <%= option_num.messages_for_issues * 1 %> + <%= option_num.issues_status * 1 %> + <%= option_num.replay_for_message * 1 %> + <%= option_num.replay_for_memo * 1 %> = <%= collaboration(option_num) %>  </div> <div>&nbsp;&nbsp;&nbsp; <%= l(:label_user_score_of_collaboration)%> = <%= option_num.messages_for_issues * 1 %> + <%= option_num.issues_status * 1 %> + <%= option_num.replay_for_message * 1 %> + <%= option_num.replay_for_memo * 1 %> = <%= collaboration(option_num) %>  </div>

View File

@ -387,7 +387,7 @@
<%= l(:label_i_new_activity) %> <%= l(:label_i_new_activity) %>
</span> </span>
&nbsp; &nbsp;
<%= link_to format_activity_title("#{l(:label_news)}: #{act.title}"), {:controller => 'news', :action => 'show', :id => act.id} %> <%= link_to format_activity_title(" #{act.title}"), {:controller => 'news', :action => 'show', :id => act.id} %>
</td> </td>
<% else %> <% else %>
<td colspan="2" valign="top"> <td colspan="2" valign="top">

View File

@ -28,7 +28,7 @@
<td colspan="2" valign="top" width="50" ><img src="/images/new/news.png" width="40" height="40"/></td> <td colspan="2" valign="top" width="50" ><img src="/images/new/news.png" width="40" height="40"/></td>
<td><table width="580" border="0"> <td><table width="580" border="0">
<tr> <tr>
<td colspan="2" valign="top"><strong> <%= content_tag('span', h(e.project), :class => 'project') %></strong> <span class="font_lighter"><%= l(:label_new_activity) %></span> <td colspan="2" valign="top"><strong> <%= content_tag('span', h(e.project), :class => 'project') %></strong>
<% if e.event_type.eql?("message") || e.event_type.eql?("reply") %> <% if e.event_type.eql?("message") || e.event_type.eql?("reply") %>
<%= link_to format_activity_title(e.event_title), e.board.project ? project_boards_path(e.board.project,:topic_id => e.id):course_boards_path(e.board.course,:topic_id => e.id) %> <%= link_to format_activity_title(e.event_title), e.board.project ? project_boards_path(e.board.project,:topic_id => e.id):course_boards_path(e.board.course,:topic_id => e.id) %>
<%else %> <%else %>

View File

@ -337,7 +337,7 @@ zh:
# #
# 贴吧动态栏 # 贴吧动态栏
# #
lable_bar_active: 问题和反馈动态 lable_bar_active: 贴吧动态
label_my_question: 我要提问 label_my_question: 我要提问
label_my_feedback: 我要反馈 label_my_feedback: 我要反馈

View File

@ -68,6 +68,7 @@ zh:
attachments: 提交附件次数 attachments: 提交附件次数
update_issues: 更新缺陷完成度次数 update_issues: 更新缺陷完成度次数
release_issues: 发布缺陷数量 release_issues: 发布缺陷数量
release_messages: 发布帖子数量
label_score_less_than_zero: 得分小于0修正为0 label_score_less_than_zero: 得分小于0修正为0
label_user_info: "个人简介" label_user_info: "个人简介"

View File

@ -737,7 +737,7 @@ zh:
label_date_to: label_date_to:
label_language_based: 根据用户的语言 label_language_based: 根据用户的语言
label_mail_policy: 邮件策略 label_mail_policy: 您可以修改邮件通知策略
label_send_test_email: 发送测试邮件 label_send_test_email: 发送测试邮件
label_feeds_access_key: RSS存取键 label_feeds_access_key: RSS存取键
label_missing_feeds_access_key: 缺少RSS存取键 label_missing_feeds_access_key: 缺少RSS存取键
@ -1903,9 +1903,9 @@ zh:
lable_teacher_evaluation: 作业综评 lable_teacher_evaluation: 作业综评
lable_course_teacher: 主讲老师 lable_course_teacher: 主讲老师
lable_course_end: 课程学期已结束 lable_course_end: 课程学期已结束
label_no_contest_news_description: 竞赛描述不能为空 label_no_contest_news_description: 竞赛通知描述不能为空
label_contest_news_condition: 竞赛描述超过5000个汉字 label_contest_news_condition: 竞赛描述超过5000个汉字
label_no_contest_news_title: 竞赛标题不能为空 label_no_contest_news_title: 竞赛通知标题不能为空
label_contest_news_title_condition: 竞赛标题超过255个汉字 label_contest_news_title_condition: 竞赛标题超过255个汉字
label_course_organizers: 开设单位 label_course_organizers: 开设单位
@ -1928,6 +1928,7 @@ zh:
label_my_score: 我的评分 label_my_score: 我的评分
field_open_anonymous_evaluation: 是否使用匿评 field_open_anonymous_evaluation: 是否使用匿评
label_course_empty_select: 尚未选择课程! label_course_empty_select: 尚未选择课程!
label_project_empty_select: 尚未选择项目!
label_course_prompt: 课程: label_course_prompt: 课程:
label_project_prompt: 项目: label_project_prompt: 项目:
label_contain_resource: 已包含资源: label_contain_resource: 已包含资源:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 9.4 KiB

View File

@ -626,6 +626,8 @@ a:hover.icon_add{background:url(images/icons.png) -20px -310px no-repeat;}
.hwork_tit{ width:210px; float:left; } .hwork_tit{ width:210px; float:left; }
.hwork_tit a{ width:205px; display:block; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; } .hwork_tit a{ width:205px; display:block; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; }
.hwork_tit_une{ width:270px; float:left; }
.hwork_tit_une a{ width:265px; display:block; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; }
.hwork_code{ width:56px; text-align:center; } .hwork_code{ width:56px; text-align:center; }
.hwork_code02{ width:60px; text-align:center; } .hwork_code02{ width:60px; text-align:center; }
.hwork_tit_e{ width:420px; float:left; } .hwork_tit_e{ width:420px; float:left; }

View File

@ -95,6 +95,12 @@ a.pro_mes_w_news{ height:20px; float:right;display:block; color:#999999;}
.pro_info_box ul li{ height:24px;} .pro_info_box ul li{ height:24px;}
.pro_info_p{color:#0781b4 !important; float:left; width:80px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; } .pro_info_p{color:#0781b4 !important; float:left; width:80px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; }
.edit_pro_box{overflow:hidden;display:none; margin-bottom:30px; border-bottom:1px dashed #CCC; padding-bottom:10px;} .edit_pro_box{overflow:hidden;display:none; margin-bottom:30px; border-bottom:1px dashed #CCC; padding-bottom:10px;}
/*问题状态图片*/
.issues{ background:url(../images/public_icon.png) -66px 5px no-repeat; width:16px; height:21px;}
.duty{ background:url(../images/public_icon.png) -66px -18px no-repeat; width:16px; height:21px;}
.support{ background:url(../images/public_icon.png) -66px -45px no-repeat; width:16px; height:21px;}
.function{ background:url(../images/public_icon.png) -66px -70px no-repeat; width:16px; height:21px;}
.weekly{ background:url(../images/public_icon.png) -66px -95px no-repeat; width:16px; height:21px;}
/****翻页***/ /****翻页***/
ul.wlist{ float:right; border-bottom:none; height:30px; margin-top:20px; } ul.wlist{ float:right; border-bottom:none; height:30px; margin-top:20px; }
ul.wlist li{float: left;} ul.wlist li{float: left;}

View File

@ -98,6 +98,8 @@ h4{ font-size:14px; color:#3b3b3b;}
.w210{ width:210px;} .w210{ width:210px;}
.w150{ width:150px;} .w150{ width:150px;}
.w280{ width:280px;} .w280{ width:280px;}
.w265{ width: 265px;}
.w270{ width: 270px;}
.w430{ width:470px;} .w430{ width:470px;}
.w520{ width:520px;} .w520{ width:520px;}
.w543{ width:543px;} .w543{ width:543px;}

View File

@ -1698,6 +1698,23 @@ div.project-search {
} }
/*huang*/ /*huang*/
/*zhangshen*/
a.enterprise {
float:left;
text-align: center;
width: 40px;
height: 18px;
font-family: '微软雅黑',Arial,Helvetica,sans-serif;
font-size: 12px;
color:#fff;
padding: 0px;
border-radius:4px;
border: 1px solid rgb(148, 148, 148);
box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.2), 0px 0px 2px rgb(255, 255, 255) inset;
text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.1), 0px 0px 0px rgb(255, 255, 255);
cursor: pointer;
}
input.enterprise[type="button"] { input.enterprise[type="button"] {
padding-bottom: 5px; padding-bottom: 5px;
width: 55px; width: 55px;