Merge branch 'develop' of https://bdgit.trustie.net/hushasha/bigdata into develop

# Conflicts:
#	public/stylesheets/css/ketang.css
#	public/stylesheets/css/taskstyle.css
This commit is contained in:
miss 2017-09-22 17:17:51 +08:00
commit e3b64c1e26
81 changed files with 602 additions and 366 deletions

View File

@ -586,7 +586,7 @@ class AccountController < ApplicationController
def apply_trail
apply_action = ApplyAction.where(:user_id => User.current.id, :container_type => "TrialAuthorization", :status => 0).first
if User.current.user_extensions.identity == 1 && !User.current.user_extensions.student_id.nil? && User.current.user_extensions.student_id != "" && !User.current.user_extensions.school.nil?
if User.current.user_extensions.identity == 1 && !User.current.user_extensions.student_id.nil? && User.current.user_extensions.student_id != "" && !User.current.user_extensions.school.nil? && [1579, 2438, 1587, 117].include?(User.current.user_extensions.school_id)
User.current.update_attributes(:certification => 1)
@tip = "申请成功,我们将在一分钟内完成审核"
if apply_action.blank?

View File

@ -220,6 +220,16 @@ class CoursesController < ApplicationController
join = cs.join_course_roles params,@user
@state = join[:state]
@course = join[:course]
if @state == 6
# 给课堂老师发留言
if params[:role].include?("7") || params[:role].include?("9")
notes = @user.show_real_name.to_s + " 申请以#{params[:role].include?('7') ? '教辅' : '教师'}的身份加入班级:<a target='_blank' href='#{members_course_path(@course)}'>#{@course.name}</a>"
@course.course_teachers.each do |mem|
user = mem.user
user.journals_for_messages << JournalsForMessage.new(:user_id => @user.id, :notes => notes, :private => 1, :reply_id => 0)
end
end
end
else
@state = 5 #未登录
end
@ -992,6 +1002,7 @@ class CoursesController < ApplicationController
@curr_page = '成员管理'
respond_to do |format|
format.js
format.html { render :layout => 'base_edu_course' }
format.api { render_validation_errors(@course) }
end

View File

@ -335,11 +335,11 @@ class HomeworkCommonController < ApplicationController
if @homework.homework_type == 4
if @homework_detail_manual.answer_open_evaluation != params[:answer_open_evaluation].to_i
@homework_detail_manual.answer_open_evaluation = params[:answer_open_evaluation].to_i
if @homework.end_time < Time.now
@homework.student_works.each do |student_work|
set_shixun_final_score @homework, student_work, @homework_detail_manual.answer_open_evaluation
end
end
# if @homework.end_time < Time.now
# @homework.student_works.each do |student_work|
# set_shixun_final_score @homework, student_work, @homework_detail_manual.answer_open_evaluation
# end
# end
end
@homework.score_open = params[:homework_score_open] ? 1 : 0
else

View File

@ -406,7 +406,11 @@ class MessagesController < ApplicationController
def sticky_topic
(render_403; return false) unless (User.current.admin? || User.current.allowed_to?(:as_teacher, @course))
@topic.update_attributes(:sticky => @topic.sticky == 1 ? 0 : 1)
redirect_to board_message_path(@topic.board_id, @topic)
if params[:is_board]
redirect_to course_boards_path(@course)
else
redirect_to board_message_path(@topic.board_id, @topic)
end
end
def quote

View File

@ -151,10 +151,12 @@ class ShixunsController < ApplicationController
@mail = User.current.mail.blank?
@shixun_all_count = Shixun.where(:hidden => 0).count
@shixuns = Shixun.where("name like ? and hidden = 0", "%#{search}%")
@shixuns.each do |shixun|
shixun[:myshixunCount] = shixun.myshixuns.count
end
@shixuns = @shixuns.sort{|x, y| y[:myshixunCount] <=> x[:myshixunCount]}
# @shixuns.each do |shixun|
# shixun[:myshixunCount] = shixun.myshixuns.count
# end
# @shixuns = @shixuns.sort{|x, y| y[:myshixunCount] <=> x[:myshixunCount]}
@shixuns = @shixuns.select("shixuns.*, (select count(myshixuns.id) from myshixuns where myshixuns.shixun_id = shixuns.id group by shixuns.id) AS myshixunCount").reorder("status = 2 desc, myshixunCount desc")
@shixun_my_score = Experience.find_by_sql("SELECT sum(score) as score FROM `experiences` where user_id=#{User.current.id}").first.try(:score).to_i
@current_user_had_passed = Myshixun.find_by_sql("select count(*) as had_passed from myshixuns where status =1 and user_id=#{User.current.id}
and shixun_id in (SELECT id FROM `shixuns` where status > 1)").first.try(:had_passed).to_i
@ -252,7 +254,7 @@ class ShixunsController < ApplicationController
bsort = params[:sort] || "desc"
@sort = bsort == "desc" ? "asc" : "desc"
if @order == "updated_at"
order_str = "#{Shixun.table_name}.updated_at #{@sort}"
order_str = "#{Shixun.table_name}.updated_at #{bsort}"
else
order_str = "myshixun_count #{bsort}, #{Shixun.table_name}.updated_at #{bsort}"
end
@ -312,14 +314,16 @@ class ShixunsController < ApplicationController
@shixuns =@shixuns.reorder(order_str)
else
# 最热排序
@shixuns.each do |shixun|
shixun[:myshixunCount] = shixun.myshixuns.count
end
if bsort == "desc"
@shixuns = @shixuns.sort{|x, y| y[:myshixunCount] <=> x[:myshixunCount]}
else
@shixuns = @shixuns.sort{|x, y| x[:myshixunCount] <=> y[:myshixunCount]}
end
# @shixuns.each do |shixun|
# shixun[:myshixunCount] = shixun.myshixuns.count
# end
@shixuns = @shixuns.select("shixuns.*, (select count(myshixuns.id) from myshixuns where myshixuns.shixun_id = shixuns.id group by shixuns.id) AS myshixunCount").reorder("status = 2 desc, myshixunCount #{bsort}")
#@shixuns = @shixuns.reorder("status = 2 #{bsort}, myshixunCount #{bsort}")
# if bsort == "desc"
# @shixuns = @shixuns.sort{|x, y| y[:myshixunCount] <=> x[:myshixunCount]}
# else
# @shixuns = @shixuns.sort{|x, y| x[:myshixunCount] <=> y[:myshixunCount]}
# end
end
# @shixuns = Shixun.where(:authentication => 1).reorder(order)
@shixuns_count = @shixuns.count

View File

@ -359,8 +359,10 @@ class StudentWorkController < ApplicationController
end
end
##################################################################################################################
if @homework.homework_type == 4 && @homework.homework_detail_manual.comment_status > 0 && (@homework.publish_time > Time.now || (@homework.publish_time <= Time.now && @homework.allow_late))
update_shixun_work_status @homework
if params[:order].nil? && params[:sort].nil? && params[:name].nil? && params[:group].nil? && params[:comment].nil? && params[:status].nil?
if @homework.homework_type == 4 && @homework.homework_detail_manual.comment_status > 0 && @homework.homework_detail_manual.comment_status != 6 && (@homework.end_time > Time.now || (@homework.end_time <= Time.now && @homework.allow_late))
update_shixun_work_status @homework
end
end
@order,@b_sort,@name,@group,@comment,@status = params[:order] || "updated_at",params[:sort] || "desc",params[:name].to_s.strip || "",params[:group], params[:comment], params[:status]
@homework_commons = @course.homework_commons.where("publish_time <= ?",Time.now).order("created_at desc")

View File

@ -8,12 +8,17 @@ class SubjectsController < ApplicationController
include ApplicationHelper
def index
@order = params[:order] || "updated_at"
bsort = params[:sort] || "asc"
@order = params[:order] || "myshixun_count"
bsort = params[:sort] || "desc"
@sort = bsort == "desc" ? "asc" : "desc"
search = params[:search]
#ids = Subject.find_by_sql("select group_concat(id) as allId from subjects where id in (SELECT distinct(subject_id) FROM `stages`)")
@subjects = Subject.where("hidden = 0").reorder("#{@order} #{bsort}")
if @order == "myshixun_count"
#@shixuns = @shixuns.select("shixuns.*, (select count(myshixuns.id) from myshixuns where myshixuns.shixun_id = shixuns.id group by shixuns.id) AS myshixunCount").reorder("status = 2 desc, myshixunCount desc")
@subjects = Subject.where("hidden = 0").select("subjects.*, (select count(myshixuns.id) from myshixuns, stage_shixuns where myshixuns.shixun_id = stage_shixuns.shixun_id and stage_shixuns.subject_id = subjects.id group by subjects.id) AS myshixunCount").reorder("status = 2 desc, myshixunCount #{bsort}")
else
@subjects = Subject.where("hidden = 0").reorder("#{@order} #{bsort}")
end
@subject_created_count = Subject.where(:user_id => User.current.id).count
@subjects_all_count = @subjects.count
#@subjects = Subject.where("name like ?", "%#{search}%").reorder("#{@order} #{@sort}")

View File

@ -790,14 +790,22 @@ class UsersController < ApplicationController
if integer_ids.include?(9)
cs = CoursesService.new
c = Course.find(@msg.course_id)
cs.send_wechat_join_class_notice apply_user,c,9,0
#cs.send_wechat_join_class_notice apply_user,c,9,0
else
cs = CoursesService.new
c = Course.find(@msg.course_id)
cs.send_wechat_join_class_notice apply_user,c,7,0
#cs.send_wechat_join_class_notice apply_user,c,7,0
end
end
apply_user = User.find @msg.course_message_id
notes = User.current.show_real_name.to_s + " 批准#{apply_user.show_real_name}#{integer_ids.include?(7) ? '教辅' : '教师'}的身份加入班级:<a target='_blank' href='#{members_course_path(c)}'>#{c.name}</a>"
c.course_teachers.each do |mem|
user = mem.user
if user != User.current
user.journals_for_messages << JournalsForMessage.new(:user_id => User.current.id, :notes => notes, :private => 1, :reply_id => 0)
end
end
when 'N'
CourseMessage.create(:user_id => @msg.course_message_id, :course_id => @msg.course_id, :viewed => false,:course_message_id=>User.current.id,:content=>@msg.content,:course_message_type=>'CourseRequestDealResult',:status=>2)
@msg.update_attributes(:status=>2,:viewed=>1)
@ -2058,14 +2066,16 @@ class UsersController < ApplicationController
@user_fanlist_count = fan_query.count()
@user_fanlist = fan_query.order("#{Watcher.table_name}.id desc").limit(12)
show_all = @user == User.current || User.current.admin?
# 我创建的实训数
@create_num = (@user == User.current ? Shixun.where(:user_id => @user).count : Shixun.where(:user_id => @user).visible.count)
@create_num = (show_all ? Shixun.where(:user_id => @user).count : Shixun.where(:user_id => @user).visible.count)
# 我合作的实训数
coop_id = Shixun.find_by_sql("select shixun_id from shixun_members where user_id=#{@user.id} and role = 2").map(&:shixun_id) # 合作者的实训id
@cooperative_num = (@user == User.current ? Shixun.where(:id => coop_id).count : Shixun.where(:id => coop_id).visible.count)
@cooperative_num = (show_all ? Shixun.where(:id => coop_id).count : Shixun.where(:id => coop_id).visible.count)
# 我挑战的实训数
ch_id = Shixun.find_by_sql("select id from shixuns where id in (select shixun_id from myshixuns where user_id = #{@user.id})")
@challenge_num = (@user == User.current ? Shixun.where(:id => ch_id).count : Shixun.where(:id => ch_id).visible.count)
@challenge_num = (show_all ? Shixun.where(:id => ch_id).count : Shixun.where(:id => ch_id).visible.count)
# 我的所有课程数
@all_courses_count = @user.courses.not_deleted_not_end.count
# 我创建的课程数
@ -2081,7 +2091,7 @@ class UsersController < ApplicationController
ids2 = ids2.map{|shixun| shixun.id} unless ids2.blank?
id = ids + ids2
id = id.uniq
if @user == User.current
if show_all
@shixuns = Shixun.where(:id => id).order("updated_at desc")
else
@shixuns = Shixun.where(:status => [2, 3], :id => id).order("updated_at desc")
@ -2243,13 +2253,13 @@ class UsersController < ApplicationController
if params[:filter] == "challenge"
# 已挑战过
id = Shixun.find_by_sql("select id from shixuns where id in (select shixun_id from myshixuns where user_id = #{@user.id})")
if @user == User.current
if @user == User.current || User.current.admin?
@shixuns = Shixun.where(:id => id).order("updated_at desc")
else
@shixuns = Shixun.where(:id => id).visible.order("updated_at desc")
end
elsif params[:filter] == "create"
if @user == User.current
if @user == User.current || User.current.admin?
@shixuns = Shixun.where(:user_id => @user).order("updated_at desc")
else
@shixuns = Shixun.where(:user_id => @user).visible.order("updated_at desc")
@ -2257,7 +2267,7 @@ class UsersController < ApplicationController
elsif params[:filter] == "cooperative"
# 合作者的实训id
id = Shixun.find_by_sql("select shixun_id from shixun_members where user_id=#{@user.id} and role = 2").map(&:shixun_id)
if @user == User.current
if @user == User.current || User.current.admin?
@shixuns = Shixun.where(:id => id).order("updated_at desc")
else
@shixuns = Shixun.where(:id => id).visible.order("updated_at desc")
@ -2271,7 +2281,7 @@ class UsersController < ApplicationController
ids2 = ids2.map{|shixun| shixun.id} unless ids2.blank?
id = ids + ids2
id = id.uniq
if @user == User.current
if @user == User.current || User.current.admin?
@shixuns = Shixun.where(:id => id).order("updated_at desc")
else
@shixuns = Shixun.where(:id => id).visible.order("updated_at desc")
@ -2323,7 +2333,7 @@ class UsersController < ApplicationController
end
def user_experience
@user_experiences = @user.experiences.reorder("created_at desc")
@user_experiences = @user.experiences.where("score > 0").reorder("created_at desc")
@limit = 20
@is_remote = true
@experiences_count = @user_experiences.count

View File

@ -3885,7 +3885,7 @@ module ApplicationHelper
if User.current.logged?
if User.current.member_of_course?(homework.course)
if is_teacher #老师显示作品数量
link_to "作品(#{count})", student_work_index_url_in_org(homework.id, 2), :class => "c_blue homepagePostSubmit"
link_to "作品&nbsp;(#{count})".html_safe, student_work_index_url_in_org(homework.id, 2), :class => "c_blue homepagePostSubmit"
else #学生显示提交作品、修改作品等按钮
work = cur_user_works_for_homework homework
project = cur_user_projects_for_homework homework
@ -3930,10 +3930,10 @@ module ApplicationHelper
end
end
else
link_to "作品(#{count})", "javascript:void(0)", :class => "c_blue homepagePostSubmit", :onclick => "notice_sure_box('您不是班级成员,不能提交作品<br/>请先从老师处获取邀请码后加入班级,再提交作品')"
link_to "作品&nbsp;(#{count})".html_safe, "javascript:void(0)", :class => "c_blue homepagePostSubmit", :onclick => "notice_sure_box('您不是班级成员,不能提交作品<br/>请先从老师处获取邀请码后加入班级,再提交作品')"
end
else
link_to "作品(#{count})", "javascript:void(0)", :class => "c_blue homepagePostSubmit", :onclick => "login_notice_box('#{signin_url_without_domain}');"
link_to "作品&nbsp;(#{count})".html_safe, "javascript:void(0)", :class => "c_blue homepagePostSubmit", :onclick => "login_notice_box('#{signin_url_without_domain}');"
end
end

View File

@ -15,4 +15,5 @@ module OwnerTypeHelper
HOMEWORKREFERENCEANSWER = 14
STUDENTWORK = 15
HOMEWORKBANK = 16
SUBJECT = 17
end

View File

@ -3,11 +3,14 @@ include UserScoreHelper
module StudentWorkHelper
def update_shixun_work_status homework
homework.student_works.where(:work_status => 0).each do |work|
myshixun = Myshixun.where(:shixun_id => homework.homework_commons_shixuns.shixun_id, :user_id => work.user_id).first
if myshixun
work.update_attributes(:work_status => myshixun.created_at <= homework.end_time ? 1 : 2, :late_penalty => myshixun.created_at <= homework.end_time ? 0 : homework.late_penalty, :commit_time => myshixun.created_at, :myshixun_id => myshixun.id)
homework.student_works.each do |work|
if work.work_status == 0
myshixun = Myshixun.where(:shixun_id => homework.homework_commons_shixuns.shixun_id, :user_id => work.user_id).first
if myshixun
work.update_attributes(:work_status => myshixun.created_at <= homework.end_time ? 1 : 2, :late_penalty => myshixun.created_at <= homework.end_time ? 0 : homework.late_penalty, :commit_time => myshixun.created_at, :myshixun_id => myshixun.id)
end
end
set_shixun_final_score homework, work, homework.homework_detail_manual.answer_open_evaluation
end
end
@ -88,9 +91,9 @@ module StudentWorkHelper
when 0
str = "未提交"
when 1
str = "按时提交"
str = "<span class='color-light-green'>按时提交</span>"
when 2
str = "延时提交"
str = "<span class='color-orange'>延时提交</span>"
end
end
@ -130,16 +133,19 @@ module StudentWorkHelper
link_to "继续实战", 'javascript:void(0);', :onclick => "sure_box_redirect('#{myshixun_reset_myshixun_path(myshixun)}', '实训已经更新啦,系统正在为您重置');", :class => "white-btn orange-btn fr mr10 mt8"
end
else
work_ids = "(" + homework.student_works.has_committed.map(&:id).join(",") + ")"
if homework.homework_detail_manual && homework.homework_detail_manual.comment_status == 3 && User.current.student_works_evaluation_distributions.where("student_work_id IN #{work_ids}").count > 0 #匿评作业,且作业状态不是在开启匿评之前
link_to "匿评作品", student_work_index_url_in_org(homework.id, 2), :class => 'white-btn orange-btn fr mr10 mt8', :title => "开启匿评后不可修改作品"
elsif homework.homework_detail_manual && homework.homework_detail_manual.comment_status > 3
link_to "查看作品", student_work_path(work), :class => 'white-btn orange-btn fr mr10 mt8', :title => "匿评已结束"
elsif homework.end_time >= Time.now && work.user_id == User.current.id
if homework.end_time >= Time.now && work.user_id == User.current.id
link_to "修改作品", edit_student_work_url_without_domain(work.id),:class => 'white-btn orange-btn fr mr10 mt8'
else
link_to "查看作品", student_work_path(work), :class => 'white-btn orange-btn fr mr10 mt8', :title => "作业截止后不可修改作品"
end
# work_ids = "(" + homework.student_works.has_committed.map(&:id).join(",") + ")"
# if homework.homework_detail_manual && homework.homework_detail_manual.comment_status == 3 && User.current.student_works_evaluation_distributions.where("student_work_id IN #{work_ids}").count > 0 #匿评作业,且作业状态不是在开启匿评之前
# link_to "匿评作品", student_work_index_url_in_org(homework.id, 2), :class => 'white-btn orange-btn fr mr10 mt8', :title => "开启匿评后不可修改作品"
# elsif homework.homework_detail_manual && homework.homework_detail_manual.comment_status > 3
# link_to "查看作品", student_work_path(work), :class => 'white-btn orange-btn fr mr10 mt8', :title => "匿评已结束"
# elsif homework.end_time >= Time.now && work.user_id == User.current.id
# link_to "修改作品", edit_student_work_url_without_domain(work.id),:class => 'white-btn orange-btn fr mr10 mt8'
# else
# link_to "查看作品", student_work_path(work), :class => 'white-btn orange-btn fr mr10 mt8', :title => "作业截止后不可修改作品"
# end
end
end
end
@ -179,9 +185,9 @@ module StudentWorkHelper
#传入分数,获取对应颜色
def score_color score
if score
color = score >= 90 ? "c_red" : "c_green"
color = score >= 90 ? "color-red-light" : "color-light-green"
else
color = "c_grey"
color = "color-grey"
end
color
end

View File

@ -244,6 +244,11 @@ class Course < ActiveRecord::Base
self.status == STATUS_ARCHIVED
end
# 课堂的老师不包括助教
def course_teachers
self.members.select{|m| m.roles.to_s.include?("Manager") || m.roles.to_s.include?("Teacher")}
end
def self.visible_condition(user, options={})
allowed_to_condition(user, :view_course, options)
end

View File

@ -39,16 +39,16 @@ class StudentsForCourse < ActiveRecord::Base
if str != ""
str += ","
end
if hw.homework_type == 4
myshixun = Myshixun.where(:shixun_id => hw.homework_commons_shixuns.shixun_id, :user_id => self.student_id).first
if myshixun
str += "('#{hw.name}的作品提交',#{hw.id},#{self.student_id}, 1, #{myshixun.id}, '#{Time.now.strftime('%Y-%m-%d %H:%M:%S')}', '#{Time.now.strftime('%Y-%m-%d %H:%M:%S')}', '#{Time.now.strftime('%Y-%m-%d %H:%M:%S')}')"
else
str += "('#{hw.name}的作品提交',#{hw.id},#{self.student_id}, 0, null, null, '#{Time.now.strftime('%Y-%m-%d %H:%M:%S')}', '#{Time.now.strftime('%Y-%m-%d %H:%M:%S')}')"
end
else
#if hw.homework_type == 4
#myshixun = Myshixun.where(:shixun_id => hw.homework_commons_shixuns.shixun_id, :user_id => self.student_id).first
# if myshixun
# str += "('#{hw.name}的作品提交',#{hw.id},#{self.student_id}, 1, #{myshixun.id}, '#{Time.now.strftime('%Y-%m-%d %H:%M:%S')}', '#{Time.now.strftime('%Y-%m-%d %H:%M:%S')}', '#{Time.now.strftime('%Y-%m-%d %H:%M:%S')}')"
# else
# str += "('#{hw.name}的作品提交',#{hw.id},#{self.student_id}, 0, null, null, '#{Time.now.strftime('%Y-%m-%d %H:%M:%S')}', '#{Time.now.strftime('%Y-%m-%d %H:%M:%S')}')"
# end
#else
str += "('#{hw.name}的作品提交',#{hw.id},#{self.student_id}, 0, null, null, '#{Time.now.strftime('%Y-%m-%d %H:%M:%S')}', '#{Time.now.strftime('%Y-%m-%d %H:%M:%S')}')"
end
#end
end
end
if str != ""

View File

@ -35,6 +35,15 @@ class Subject < ActiveRecord::Base
count
end
def subject_users
count = 0
self.stage_shixuns.each do |stage_shixun|
shixun = stage_shixun.shixun
count += shixun.myshixuns.count
end
count
end
def subject_score
score = 0
self.stage_shixuns.each do |stage_shixun|

View File

@ -682,18 +682,18 @@ class CoursesService
#----------------微信通知----------------------
if role_ids.include?("7") || role_ids.include?("9")
tea_user = User.find(course.tea_id)
count = ShieldWechatMessage.where("container_type='User' and container_id=#{tea_user.id} and shield_type='Course' and shield_id=#{course.id}").count
if count == 0
rolename = role_ids.include?("7") ? "助教" : "教师"
content = current_user.show_name + "申请以"+rolename+"身份加入班级,等待您的审批。"
name = course.course_list.nil? ? course.name : course.course_list_name+""+course.name
ws = WechatService.new
ws.class_notice tea_user.id, "review_class_member", course.id, "班级成员审批通知。", name, tea_user.show_name, format_time(Time.now), content, "点击查看申请详情。",current_user.id
end
end
# if role_ids.include?("7") || role_ids.include?("9")
# tea_user = User.find(course.tea_id)
# count = ShieldWechatMessage.where("container_type='User' and container_id=#{tea_user.id} and shield_type='Course' and shield_id=#{course.id}").count
# if count == 0
#
# rolename = role_ids.include?("7") ? "助教" : "教师"
# content = current_user.show_name + "申请以"+rolename+"身份加入班级,等待您的审批。"
# name = course.course_list.nil? ? course.name : course.course_list_name+" • "+course.name
# ws = WechatService.new
# ws.class_notice tea_user.id, "review_class_member", course.id, "班级成员审批通知。", name, tea_user.show_name, format_time(Time.now), content, "点击查看申请详情。",current_user.id
# end
# end
#--------------------------------------------
if is_stu

View File

@ -87,7 +87,7 @@
//paramsHeight = params.kindutil.removeUnit(this.height);
edit.iframe.height(150);
this.resize(null, Math.max((params.kindutil.IE ? body.scrollHeight : body.offsetHeight) , 150));
elocalStorage(message_content_editor,'topic_course_<%=course.id %>');
elocalStorage(message_content_editor,'topic_course_<%=course.id %>','des');
}
}).loadPlugin('paste');
return editor;
@ -154,8 +154,8 @@
<textarea placeholder="有问题或有建议,请直接给我留言吧!" style="display: none" nhname='topic_textarea' name="message[content]"><%=topic.content %></textarea>
<div class="cl"></div>
<p id="message_content_span"></p>
<p id="e_tip" class="c_grey"></p>
<p id="e_tips" class="c_grey"></p>
<p id="e_tip_des" class="c_grey"></p>
<p id="e_tips_des" class="c_grey"></p>
</div>
<div class="cl"></div>
<div class="mt10">

View File

@ -2,9 +2,9 @@
<a href="<%= edit_shixun_challenge_path(@challenge, :shixun_id => @shixun) %>" class="color-black">本关任务</a>
</li>
<% @challenge.challenge_chooses.each_with_index do |choose, index| %>
<li class="fl <%= @index == index ? "check_nav" : "" %>">
<li class="fl <%= @index == index ? "check_nav" : "" %>" style="<%= @index == index ? "width:110px" : "flex:1" %>">
<a href="<%= choose_type_show_shixun_challenge_path(@challenge, :shixun_id => @shixun, :choose_id => choose.id, :index => index) %>" class="color-black" data-remote="true">
<%= (index + 1).to_s + (choose.category == 1 ? ".单选题" : ".多选题") %>
</a>
</li>
<% end %>
<% end %>

View File

@ -1,10 +1,12 @@
<div class="stage-part-2 mt20" id="">
<ul class="nav_check_item border-bottom-orange clearfix" style="margin-bottom: 0px">
<div id="challenge_choose_tab">
<ul class="nav_option border-bottom-orange clearfix" style="margin-bottom: 0px">
<div id="challenge_choose_tab" class="fl df" style="width: 1015px;">
<%= render :partial => "challenges/choose_tab" %>
</div>
<a href="javascript:void(0)" class="fr white-btn green-btn white_bg addoption-btn">+&nbsp;多选题</a>
<a href="javascript:void(0)" class="fr mr10 white-btn green-btn white_bg addoption-btn">+&nbsp;单选题</a>
<div class="fr option_item_con">
<a href="javascript:void(0)" class="mr10 white-btn green-btn white_bg addoption-btn mt5">+&nbsp;单选题</a>
<a href="javascript:void(0)" class="white-btn green-btn white_bg addoption-btn mt5">+&nbsp;多选题</a>
</div>
</ul>
<div id="task_content" class="task-pm-box mh550 user_bg_shadow">
<div class="panel-form" id="task_show_page">
@ -41,6 +43,7 @@
<%#= render :partial => 'single_or_multiple_question_show'%>
</div>
<script>
editormd.loadKaTeX(function() {
var taskPassMD = editormd.markdownToHTML("challenge_task_pass_show", {
htmlDecode: "style,script,iframe", // you can filter tags decode
@ -52,41 +55,49 @@
});
//添加单选、多选tab
$(".addoption-btn").on("click",function(){
var len= $(".stage-part-2").find(".nav_check_item li").length;
for(var i = 1; i < len; i ++){
if($(".stage-part-2").find(".nav_check_item li a").eq(i).attr("href") == "javascript:void(0)"){
$(".stage-part-2").find(".nav_check_item li").eq(i).remove()
var length= $(".stage-part-2").find(".nav_option li").length;
for(var i = 1; i < length; i ++){
if($(".stage-part-2").find(".nav_option li a").eq(i).attr("href") == "javascript:void(0)"){
$(".stage-part-2").find(".nav_option li").eq(i).remove();
length--;
}
}
var length= $(".stage-part-2").find(".nav_check_item li").length;
if(length<11){
var title=$(this).html();
var category = title.indexOf("多选")>0 ? 2 : 1;
if(title.indexOf("多选")>0){//多选
title="多选题";
}else{
title="单选题";
}
var li_con=length+".<span>"+title+"</span>";
var html="<li class=\"fl check_nav\"><a href=\"javascript:void(0)\" class=\"color-black\">"+li_con+"</a></li>";
$(".stage-part-2").find(".nav_check_item li").removeClass("check_nav");
$(".stage-part-2").find(".nav_check_item li").eq(length-1).after(html);
$.ajax({
url: "<%= add_choose_question_shixun_challenge_path(@challenge, :shixun_id => @shixun) %>",
dateType: "script",
data: {category: category, position: length},
success: function(){
}
})
var title=$(this).html();
var category = title.indexOf("多选")>0 ? 2 : 1;
if(title.indexOf("多选")>0){//多选
title="多选题";
}else{
title="单选题";
}
var li_con=length+".<span>"+title+"</span>";
var html="<li class=\"fl check_nav\"><a href=\"javascript:void(0)\" class=\"color-black\">"+li_con+"</a></li>";
$(".stage-part-2").find(".nav_option li").removeClass("check_nav");
$(".stage-part-2").find(".nav_option li").removeAttr("style");
for(var i=1;i<$(".stage-part-2").find(".nav_option li").length;i++){
$(".stage-part-2").find(".nav_option li").eq(i).attr("style","flex:1");
}
$(".stage-part-2").find(".nav_option li").eq(length-1).after(html);
$.ajax({
url: "<%= add_choose_question_shixun_challenge_path(@challenge, :shixun_id => @shixun) %>",
dateType: "script",
data: {category: category, position: length},
success: function(){
}
})
// editor_tigan();
});
//删除单选、多选tab
$(".deloption-btn").on("click",function(){
var index=0;
for(var i=1;i<$(".stage-part-2").find(".nav_check_item li").length;i++){
var length=$(".stage-part-2").find(".nav_check_item li").length;
var item=$(".stage-part-2").find(".nav_check_item li");
for(var i=1;i<$(".stage-part-2").find(".nav_option li").length;i++){
var length=$(".stage-part-2").find(".nav_option li").length;
var item=$(".stage-part-2").find(".nav_option li");
if(item.eq(i).hasClass("check_nav")){
if(length>1){
item.eq(0).addClass("check_nav");
@ -95,16 +106,18 @@
}
}
for(var i=1;i<$(".stage-part-2").find(".nav_check_item li").length;i++){
var item=$(".stage-part-2").find(".nav_check_item li");
for(var i=1;i<$(".stage-part-2").find(".nav_option li").length;i++){
var item=$(".stage-part-2").find(".nav_option li");
item.eq(i).html(i+".<span>"+item.eq(i).find("span").html()+"</span>");
}
})
//第二个ul tab的切换事件
$(".stage-part-2").find(".nav_check_item li a").live("click",function(){
if($(".nav_check_item li").length>1){
$(".nav_check_item li").removeClass("check_nav");
$(".stage-part-2").find(".nav_option li a").live("click",function(){
if($(".nav_option li").length>1){
$(".nav_option li").removeClass("check_nav");
$(this).parent().addClass("check_nav");
$(this).parent().removeAttr("style")
$(this).parent().attr("style","flex:1");
}
})

View File

@ -49,7 +49,7 @@
<div class="panel-form">
<li class="clearfix">
<label class="panel-form-label fl">知识点:&nbsp;&nbsp;</label>
<div class="fl task-inputs mt5">
<div class="fl task-inputs" style="margin-top:6px;">
<% if @challenge_choose.challenge_tags.blank? %>
<% else %>

View File

@ -1,6 +1,5 @@
$("#task_content").html("<%= j(render :partial => 'single_or_multiple_question_show')%>");
$("#challenge_choose_tab").html("<%= j(render :partial => "challenges/choose_tab") %>");
/*
// JS局部刷新时有可能加载不成功需要重新加载一次具体原因不明
editormd.loadKaTeX(function() {

View File

@ -38,8 +38,8 @@
<div id="challenge_list">
<%= render :partial => "content_list" %>
</div>
</div>
<script type="text/javascript">
$(document).ready(function() {
/* -------------- 简介Md -------------------- */

View File

@ -2,6 +2,5 @@
<% is_teacher = User.current.logged? && (User.current.admin? || User.current.allowed_to?(:as_teacher,@course)) %>
$("#student_table_div").html("<%= j(render :partial => "courses/settings/student_table", :locals => {:is_teacher => is_teacher}) %>");
<% else %>
$("#setting_teacher_list").hide();
$("#setting_student_list").html("<%= j(render :partial => 'courses/settings/all_student_list') %>").show();
$("#setting_teacher_list").html("<%= j(render :partial => 'courses/settings/all_student_list') %>").show();
<% end %>

View File

@ -2,6 +2,5 @@
<% is_teacher = User.current.logged? && (User.current.admin? || User.current.allowed_to?(:as_teacher,@course)) %>
$("#student_table_div").html("<%= j(render :partial => "courses/settings/student_table", :locals => {:is_teacher => is_teacher}) %>");
<% else %>
$("#setting_teacher_list").hide();
$("#setting_student_list").html("<%= j(render :partial => 'courses/settings/has_group_student_list') %>").show();
$("#setting_teacher_list").html("<%= j(render :partial => 'courses/settings/has_group_student_list') %>").show();
<% end %>

View File

@ -10,8 +10,6 @@
<div id="setting_teacher_list">
<%= render :partial => 'courses/settings/members' %>
</div>
<div id="setting_student_list">
</div>
</div>
</div>
</div>

View File

@ -0,0 +1 @@
$("#setting_teacher_list").html("<%= j(render :partial => 'courses/settings/members') %>");

View File

@ -2,6 +2,5 @@
<% is_teacher = User.current.logged? && (User.current.admin? || User.current.allowed_to?(:as_teacher,@course)) %>
$("#student_table_div").html("<%= j(render :partial => "courses/settings/student_table", :locals => {:is_teacher => is_teacher}) %>");
<% else %>
$("#setting_teacher_list").hide();
$("#setting_student_list").html("<%= j(render :partial => 'courses/settings/no_group_student_list') %>").show();
$("#setting_teacher_list").html("<%= j(render :partial => 'courses/settings/no_group_student_list') %>").show();
<% end %>

View File

@ -11,13 +11,19 @@
<div class="mb10 edu-position" style="width:400px;">
<input type="hidden" value="10" name="membership[role_ids][]">
<input type="hidden" value="<%= @course.id %>" id="course_search_not_student_id">
<input class="task-form-100 task-height-40 panel-box-sizing" id="search_not_student" placeholder="输入姓名、学号进行搜索" type="text">
<input class="task-form-100 task-height-40 panel-box-sizing color-grey3" id="search_not_student" placeholder="输入姓名、学号进行搜索" type="text">
<a href="javascript:void(0);" class="edu-btn-search font-16 color-grey mt5"><i class="fa fa-search"></i></a>
</div>
<div class="clearfix mb15">
<% if @course.course_groups.count > 0 %>
<%= select_tag :course_group_id,options_for_select(course_group_option(@course),0), {:id=>"course_group_id", :class=>"add_student_select"} %>
<%= select_tag :course_group_id,options_for_select(course_group_option(@course),0), {:id=>"course_group_id", :class=>"task-form-100 task-height-40 panel-box-sizing mb10 color-grey3"} %>
<% end %>
<div class="mb10 edu-position" style="text-align: right">
<label class="color-grey">单位:&nbsp;&nbsp;</label>
<input placeholder="请输入单位名称" class="task-form-60 task-height-40 panel-box-sizing color-grey3"/>
<a href="javascript:void(0);" class="edu-btn-search font-16 color-grey mt5"><i class="fa fa-search"></i></a>
</div>
<ul class="upload_select_box fl" style="overflow-y:auto;width:380px;" id="search_not_students_list">
<%#= render :partial => 'courses/settings/search_not_students_list' %>
</ul>

View File

@ -13,6 +13,11 @@
<input class="task-form-100 task-height-40 panel-box-sizing" id="search_not_teacher" placeholder="输入用户的真实姓名进行搜索" type="text">
<a href="javascript:void(0);" class="edu-btn-search font-16 color-grey mt5"><i class="fa fa-search"></i></a>
</div>
<div class="mb10 edu-position mr15" style="text-align: right">
<label class="color-grey">单位:&nbsp;&nbsp;</label>
<input placeholder="请输入单位名称" class="task-form-40 task-height-40 panel-box-sizing color-grey3"/>
<a href="javascript:void(0);" class="edu-btn-search font-16 color-grey mt5"><i class="fa fa-search"></i></a>
</div>
<div class="clearfix mb15">
<ul class="upload_select_box fl" style="overflow-y:auto;width:380px;" id="search_not_teachers_list">
<%#= render :partial => 'courses/settings/search_not_teachers_list' %>
@ -21,7 +26,7 @@
</div>
<div class="right fl">
<h4 class="font-16 mt50">角色:</h4>
<h4 class="font-16 mt95">角色:</h4>
<ul class="pl20 pb20">
<li>
<!--<i class="fa fa-circle-o grey fl" aria-hidden="true"></i>-->

View File

@ -17,11 +17,6 @@
<em><%= group.members.count %></em>
<!--<i class="fa fa-bars" aria-hidden="true"></i>-->
</p>
<p class="p2 color-grey">
<span onclick="rename_group_name(<%= @course.id %>, <%= group.id %>)">重命名</span>
<span onclick="delete_group(<%= @course.id %>, <%= group.id %>)">删除</span>
</p>
</li>
<% end %>
<% end %>

View File

@ -9,7 +9,7 @@
<input type="hidden" name="member_ids[]" value="<%= id %>">
<% end %>
<input type="hidden" name="type" value="<%= @type %>">
<%= select_tag :course_group_id,options_for_select(course_group_option(@course),0), {:id=>"course_group_id", :class=>"task-height-40 color-grey", :style => 'width:400px;border:1px solid #ddd;background:#fff;'} %>
<%= select_tag :course_group_id,options_for_select(course_group_option(@course),0), {:id=>"course_group_id", :class=>"task-height-40 color-grey ml10", :style => 'width:400px;border:1px solid #ddd;background:#fff;'} %>
<div class="cl"></div>
<span class="color-orange none" id="choose_course_group_notice">请先选择一个分班</span>
<% end %>

View File

@ -1,4 +1,4 @@
<table class="edu-pop-table color-grey edu-txt-center table-pa5 interval-td" style="border:none;" cellspacing="0" cellpadding="0" >
<table class="edu-pop-table color-grey3 edu-txt-center table-pa5 interval-td" style="border:none;" cellspacing="0" cellpadding="0" >
<thead>
<tr>
<th>
@ -32,7 +32,7 @@
<%= index + 1 + (@page -1) * 20 %>
<% else %>
<input id="member_<%= member.id %>" type="checkbox" class="check magic-checkbox <%= is_teacher ? "" : "none" %>" name="member_ids[]" value="<%= member.id %>"/>
<label for="member_<%= member.id %>"><%= index + 1 + (@page -1) * 20 %></label>
<label for="member_<%= member.id %>" style="top:0px"><%= index + 1 + (@page -1) * 20 %></label>
<% end %>
</span>
</td>

View File

@ -9,14 +9,19 @@
<input type="hidden" value="<%= @type%>" name="type" id="user_activities_type">
<div class="homepageRight mt0 " style="width:85%; float:left;">
<% if User.current.admin? || User.current.allowed_to?(:as_teacher,@course) %>
<div class="homepageRightBanner user_bg_shadow bor-grey-e with100 mb20 clearfix df" style="width:973px;">
<%= link_to '成员管理', members_course_path(@course), :class => "fl white-btn orange-btn", :style => "flex: 1;text-align: center;height:32px;line-height:32px" %>
<%= link_to '发布普通作业', new_homework_common_path(:course => @course.id, :homework_type => 1), :class => "fl white-btn orange-btn ml20", :style => "flex: 1;text-align: center;height:32px;line-height:32px" %>
<%= link_to '发布实训作业', shixuns_homework_common_index_path(:course => @course.id), :remote => true, :class => "fl white-btn orange-btn ml20", :style => "flex: 1;text-align: center;height:32px;line-height:32px" %>
<a class="fl white-btn orange-btn ml20" onclick="course_files_upload();" style="flex: 1;text-align: center;height:32px;line-height:32px">发布资源</a>
<ul class="with100 mb20 ml15 clearfix df activities_btn font-16" style="width:1003px;">
<li><%= link_to '成员管理', members_course_path(@course),:class => "color-orange03" %>
<% apply_count = CourseMessage.where(:course_id => @course.id,:course_message_type => 'JoinCourseRequest', :status => 0).count %>
<% if apply_count > 0 %>
<span class="ml10"><span class="edu-cir-orange" data-tip-down="有<%= apply_count %>名助教或教师申请加入课堂,请审批"><%= apply_count %></span></span>
<% end %>
</li>
<li><%= link_to '+&nbsp;发布普通作业'.html_safe, new_homework_common_path(:course => @course.id, :homework_type => 1),:class => "color-orange03" %></li>
<li><%= link_to '+&nbsp;发布实训作业'.html_safe, shixuns_homework_common_index_path(:course => @course.id),:class => "color-orange03", :remote => true %></li>
<li><a class="color-orange03" onclick="course_files_upload();">+&nbsp;发布资源</a></li>
<% course_board = @course.boards.where("parent_id is NULL").first %>
<%= link_to '发布帖子', new_board_message_path(:board_id => course_board.id), :class => "fl white-btn orange-btn ml20", :style => "flex: 1;text-align: center;height:32px;line-height:32px" %>
</div>
<li><%= link_to '+&nbsp;发布帖子'.html_safe, new_board_message_path(:board_id => course_board.id),:class => "color-orange03" %></li>
</ul>
<% end %>
<div id="course_activities_content">
<%= render :partial => 'courses/course_activity_content', :locals => {:course_activities => @course_activities} %>

View File

@ -1,6 +1,6 @@
$("#setting_teacher_list").hide();
$("#setting_student_list").html("<%= j(render :partial => 'courses/settings/all_student_list') %>").show();
<% if @had_import_count > 0 %>
var htmlvalue = '<%= escape_javascript(render :partial => 'courses/settings/import_students_result', :locals => {:course => @course}) %>';
pop_box_new(htmlvalue, 440, 490);
$("#setting_teacher_list").hide();
$("#setting_student_list").html("<%= j(render :partial => 'courses/settings/all_student_list') %>").show();
<% if @had_import_count > 0 %>
var htmlvalue = '<%= escape_javascript(render :partial => 'courses/settings/import_students_result', :locals => {:course => @course}) %>';
pop_box_new(htmlvalue, 440, 490);
<% end %>

View File

@ -67,7 +67,7 @@
<div class="homepagePostSetting">
<ul>
<li>
<i class="fa fa-bars color-grey-bc"></i>
<i class="fa fa-bars color-grey-b"></i>
<% if User.current.logged? || User.current.admin? %>
<% if User.current.admin? || ((is_course_teacher(User.current,@course) || file.author_id == User.current.id) && course_contains_attachment?(@course,file)) %>
<% if User.current.admin? || ((delete_allowed || User.current.id == file.author_id) && file.container_id == @course.id && file.container_type == "Course") %>

View File

@ -1,18 +1,46 @@
<%= stylesheet_link_tag 'css/edu-common', 'css/edu-popup' %>
<div class="task-popup-warp" style="background-color: rgba(0,0,0,0.7);">
<% if game.challenge.st != 0 %>
<div class="task-popup-warp" style="background-color: rgba(0,0,0,0.7);top: 0px;left: 0px;">
<div class="task-popup-box <%= had_done == 0 ? "task-box1" : "task-box2" %>">
<a href="javascript:void(0)" class="task-popup-close" onclick="refresh_game_list();"></a>
<div class="task-su-con">
<% if had_done == 0 %>
<% if had_done == 0 %>
<div class="task-su-con">
<p class="task-su-p">恭喜您通过本关</p>
<%= link_to "下 一 关", {:controller => 'games', :action => "next_step", :id => game, :myshixun_id => myshixun}, :class => "task-su-btn", :onclick => "hideModal();", :remote => true %>
<% else %>
<a href="<%= myshixun_game_path(myshixun, :index => 1) %>" class="task-su-btn-white mt50" onclick="hideModal();" data-remote="true">查看光辉历史</a>
<% end %>
</div>
<p class="mt8"><i class="fa fa-check-circle color-light-green mr5"></i>本题正确:<span class="color-orange03">&nbsp;<%= game.challenge.choose_correct_num.to_i %>&nbsp;</span>道</p>
<p><i class="fa fa-exclamation-circle color-orange mr5"></i>本题错误:<span class="color-orange03">&nbsp;<%= game.challenge.challenge_chooses.count - game.challenge.choose_correct_num.to_i %>&nbsp;</span>道</p>
</div>
<% else %>
<div class="task-su-con" style="position: absolute;width: 100%;z-index:3;padding-top: 63px;">
<img src="/images/task/task-success02.png"/>
<a href="<%= myshixun_game_path(myshixun, :index => 1) %>" class="task-su-btn-white mt30" onclick="hideModal();" data-remote="true">查看光辉历史</a>
</div>
<div style="text-align:center;background-color: #fff;border-radius: 0px 0px 8px 8px;width: 200px;position:absolute;z-index:2;height:100px;bottom:-30px;left:50%;margin-left:-100px;">
<p class="mt25"><i class="fa fa-check-circle color-light-green mr5"></i>本题正确:<span class="color-orange03">&nbsp;<%= game.challenge.choose_correct_num.to_i %>&nbsp;</span>道</p>
<p><i class="fa fa-exclamation-circle color-orange mr5"></i>本题错误:<span class="color-orange03">&nbsp;<%= game.challenge.challenge_chooses.count - game.challenge.choose_correct_num.to_i %>&nbsp;</span>道</p>
</div>
<% end %>
</div>
<% if had_done == 0 %>
<%= link_to "下 一 关", {:controller => 'games', :action => "next_step", :id => game, :myshixun_id => myshixun}, :class => "task-su-btn", :onclick => "hideModal();", :remote => true %>
<% end %>
</div>
<% else %>
<div class="task-popup-warp" style="background-color: rgba(0,0,0,0.7);">
<div class="task-popup-box <%= had_done == 0 ? "task-box1" : "task-box2" %>">
<a href="javascript:void(0)" class="task-popup-close" onclick="refresh_game_list();"></a>
<div class="task-su-con">
<% if had_done == 0 %>
<p class="task-su-p">恭喜您通过本关</p>
<%= link_to "下 一 关", {:controller => 'games', :action => "next_step", :id => game, :myshixun_id => myshixun}, :class => "task-su-btn", :onclick => "hideModal();", :remote => true %>
<% else %>
<a href="<%= myshixun_game_path(myshixun, :index => 1) %>" class="task-su-btn-white mt50" onclick="hideModal();" data-remote="true">查看光辉历史</a>
<% end %>
</div>
</div>
</div>
<% end %>
<script>
function refresh_game_list(){
$.ajax({

View File

@ -14,12 +14,21 @@
<em></em>
<span></span>
<% if @homework.allow_late %>
<p id="edit_late_notice">允许补交,则在结束日期之前,学生可以补交作品 <br/>
但是在提交截止时间之后才提交作品的学生,将被扣迟交分
</p>
<% if @homework.homework_type != 4 %>
<p>允许补交,则在结束日期之前,学生可以补交作品 <br/>
但是在提交截止时间之后才提交作品的学生,将被扣迟交分
</p>
<% else %>
<p>允许补交,则在结束日期之前,学生可以补交作品,并在作业结束时间<br/>之前,根据实训任务的完成情况实时计算学生成绩 <br/><br/>
但是在提交截止时间之后才创建的作品,将被扣迟交分
</p>
<% end %>
<% else %>
<p id="edit_late_notice">禁止补交,则在提交截止时间之后,学生不能再提交作品
</p>
<% if @homework.homework_type != 4 %>
<p>禁止补交,则在提交截止时间之后,学生不能再提交作品</p>
<% else %>
<p>禁止补交则在提交截止时间之后才创建的作品得分为0</p>
<% end %>
<% end %>
</div>
</li>

View File

@ -28,7 +28,7 @@
<em></em>
<span></span>
<p><%= @homework.homework_type == 4 ? "截止时间后,系统将根据学生完成情况计算成绩" : "截止时间过后,学生不能修改作品和追加附件" %></p>
<p><%= @homework.homework_type == 4 ? "系统在截止时间之前,根据实训任务的完成情况实时计算学生成绩" : "截止时间过后,学生不能修改作品和追加附件" %></p>
</div>
</li>
<li class="clearfix mb15 edu-position pl30">

View File

@ -8,7 +8,7 @@
<li class="clearfix">
<label class="panel-form-label fl mr10" style="width: 20%">查看参考答案后通过评测的任务</label>
</li>
<li class="clearfix">
<li class="clearfix edu-position">
<label class="panel-form-label fl mr10">&nbsp;</label>
<input id="answer_open_evaluation_0" class="magic-radio fl mt6" type="radio" name="answer_open_evaluation" value="0" <%= @homework.homework_detail_manual.answer_open_evaluation ? '' : 'checked' %>>
<label for="answer_open_evaluation_0" class="fl mt6 mr30">零分</label>
@ -18,14 +18,14 @@
<em></em>
<span></span>
<p>零分:查看参考答案才完成的任务,在系统评分时属于未完成任务<br/>
分:查看参考答案才完成的任务,在系统评分时属于已完成任务 <br/>
分:查看参考答案才完成的任务,在系统评分时属于已完成任务 <br/>
</p>
</div>
</li>
<li class="clearfix mt10">
<label class="panel-form-label fl mr10">最终成绩组成</label>
</li>
<li class="clearfix">
<li class="clearfix edu-position mb20">
<label class="panel-form-label fl mr10">系统评分</label>
<input type="text" disabled class="fl task-form-15 task-height-40 panel-box-sizing" value="100%" placeholder="100%" />
<div class="popup_tip_box fontGrey2" style="right:-15px; top:0px;width:405px;">

View File

@ -50,8 +50,11 @@
未交
</span>
<% end %>
<span class="ml50 <%= homework_common.homework_detail_manual.try(:comment_status) == 6 ? 'color-grey' : 'color-orange' %>"><%= homework_curr_status[:time] %></span>
<% end %>
<span class="ml50 <%= homework_common.homework_detail_manual.try(:comment_status) == 6 ? 'color-grey' : 'color-orange' %>"><%= homework_curr_status[:time] %></span>
<% if homework_common.homework_detail_manual.try(:comment_status) == 0 && homework_common.publish_time %>
<span class="ml50 color-grey">将于&nbsp;<span class="color-orange"><%= format_time(homework_common.publish_time).to_s %></span>&nbsp;发布</span>
<% end %>
</p>
</div>
<% if @is_teacher %>
@ -64,7 +67,7 @@
</li>
<% end %>
<li>
<%= link_to "设置", setting_homework_common_path(homework_common) %>
<%= link_to "设置", student_work_index_path(:homework => homework_common.id, :tab => 4) %>
</li>
<!--<li><%#= link_to "导出成绩", student_work_index_path(:homework => homework_common, :format => 'xls'), :id => "export_student_work" %></li>-->
<%# if homework_common.homework_type == 1 || homework_common.homework_type == 3 %>

View File

@ -14,12 +14,21 @@
<em></em>
<span></span>
<% if @homework.allow_late %>
<p>允许补交,则在结束日期之前,学生可以补交作品 <br/>
但是在提交截止时间之后才提交作品的学生,将被扣迟交分
</p>
<% if @homework.homework_type != 4 %>
<p>允许补交,则在结束日期之前,学生可以补交作品 <br/>
但是在提交截止时间之后才提交作品的学生,将被扣迟交分
</p>
<% else %>
<p>允许补交,则在结束日期之前,学生可以补交作品,并在作业结束时间<br/>之前,根据实训任务的完成情况实时计算学生成绩 <br/><br/>
但是在提交截止时间之后才创建的作品,将被扣迟交分
</p>
<% end %>
<% else %>
<p>禁止补交,则在提交截止时间之后,学生不能再提交作品
</p>
<% if @homework.homework_type != 4 %>
<p>禁止补交,则在提交截止时间之后,学生不能再提交作品</p>
<% else %>
<p>禁止补交则在提交截止时间之后才创建的作品得分为0</p>
<% end %>
<% end %>
</div>
</li>

View File

@ -23,7 +23,7 @@
<div class="popup_tip_box fontGrey2" style="right:-15px; top:0px;width:405px;">
<em></em>
<span></span>
<p><%= @homework.homework_type == 4 ? "截止时间后,系统将根据学生完成情况计算成绩" : "截止时间过后,学生不能修改作品和追加附件" %></p>
<p><%= @homework.homework_type == 4 ? "系统在截止时间之前,根据实训任务的完成情况实时计算学生成绩" : "截止时间过后,学生不能修改作品和追加附件" %></p>
</div>
</li>
<li class="clearfix mb15 edu-position pl30">

View File

@ -8,7 +8,7 @@
<li class="clearfix">
<label class="panel-form-label fl mr10" style="width: 20%">查看参考答案后通过评测的任务</label>
</li>
<li class="clearfix">
<li class="clearfix edu-position">
<label class="panel-form-label fl mr10">&nbsp;</label>
<input class="magic-radio fl mt6" type="radio" disabled value="1" <%= @homework.homework_detail_manual.answer_open_evaluation ? '' : 'checked' %>>
<label class="fl mt6 mr30">零分</label>
@ -18,14 +18,14 @@
<em></em>
<span></span>
<p>零分:查看参考答案才完成的任务,在系统评分时属于未完成任务<br/>
分:查看参考答案才完成的任务,在系统评分时属于已完成任务 <br/>
分:查看参考答案才完成的任务,在系统评分时属于已完成任务 <br/>
</p>
</div>
</li>
<li class="clearfix mt10">
<label class="panel-form-label fl mr10">最终成绩组成</label>
</li>
<li class="clearfix">
<li class="clearfix edu-position mb20">
<label class="panel-form-label fl mr10">系统评分</label>
<input type="text" disabled class="fl task-form-15 task-height-40 panel-box-sizing" value="100%" placeholder="100%" />
<div class="popup_tip_box fontGrey2" style="right:-15px; top:0px;width:405px;">

View File

@ -3,17 +3,17 @@
<% group_count = @course.course_groups.count %>
<span class="edu-cir-grey fl ml10 mt15"><%= group_count %></span>
</li>
<li id="sy_09" class="clearfix">
<% count = @course.members.where(:course_group_id => 0).select{|m| m.roles.to_s.include?("Student")}.count %>
<a href="<%= no_group_student_list_course_path(@course) %>" class="fl ml15">未分班</a>
<span class="edu-cir-grey fl ml10 mt15"><%= count %></span>
</li>
<% unless @course.course_groups.empty? %>
<ul>
<li id="sy_09" class="clearfix">
<% count = @course.members.where(:course_group_id => 0).select{|m| m.roles.to_s.include?("Student")}.count %>
<a href="<%= no_group_student_list_course_path(@course) %>" class="fl ml35">未分班</a>
<span class="edu-cir-grey fl ml10 mt15"><%= count %></span>
</li>
<% @course.course_groups.each do |group| %>
<li id="course_group_<%=group.id %>" class="clearfix">
<% count = group.members.count %>
<a href="<%= has_group_student_list_course_path(@course, :group_id => group.id) %>" class="fl ml15 edu-break-out"><%=group.name %></a>
<a href="<%= has_group_student_list_course_path(@course, :group_id => group.id) %>" class="fl ml35 edu-break-outshort"><%=group.name %></a>
<span class="edu-cir-grey fl ml10 mt15"><%= count %></span>
</li>
<% end %>

View File

@ -34,15 +34,15 @@
<% if User.current.logged? %>
<p class="fr font-16">
<% if User.current.admin? || User.current.allowed_to?(:as_teacher, @course) || User.current == @topic.author %>
<a href="javascript:void(0);" class="mr10" data-tip-down="删除"><i class="fa fa-trash-o"></i></a>
<a href="javascript:void(0);" onclick="delete_confirm_box_3('<%= delete_board_message_path(@topic.board_id, @topic) %>', '确定要删除该帖子吗?')" class="mr10" data-tip-down="删除"><i class="fa fa-trash-o"></i></a>
<% end %>
<!--<a href="javascript:void(0);" class="mr10" title="发送" onclick="show_send(<%#= @topic.id %>, <%#= User.current.id %>, 'message');"><i class="fa fa-send-o"></i></a>-->
<a href="javascript:void(0);" class="mr10" title="发送" onclick="show_send(<%= @topic.id %>, <%= User.current.id %>, 'message');"><i class="fa fa-send-o"></i></a>
<% if User.current.admin? || User.current.allowed_to?(:as_teacher, @course) || User.current == @topic.author %>
<a href="<%= edit_board_message_path(@topic.board_id, @topic) %>" class="mr10" data-tip-down="编辑"><i class="fa fa-pencil"></i></a>
<% end %>
<%# if User.current.admin? || User.current.allowed_to?(:as_teacher, @course) %>
<!--<a href="<%#= sticky_topic_board_message_path(@topic.board_id, @topic) %>" class="mr10" data-tip-down="<%#= @topic.sticky == 1 ? '取消置顶' : '置顶' %>"><i class="fa <%#= @topic.sticky == 1 ? 'fa-arrow-circle-o-down' : 'fa-arrow-circle-o-up' %>"></i></a>-->
<%# end %>
<% if User.current.admin? || User.current.allowed_to?(:as_teacher, @course) %>
<a href="<%= sticky_topic_board_message_path(@topic.board_id, @topic) %>" class="mr10" data-tip-down="<%= @topic.sticky == 1 ? '取消置顶' : '置顶' %>"><i class="fa <%= @topic.sticky == 1 ? 'fa-arrow-circle-o-down' : 'fa-arrow-circle-o-up' %>"></i></a>
<% end %>
</p>
<% end %>
<div class="cl"></div>

View File

@ -1,13 +1,13 @@
<tr id="student_work_<%= student_work.id %>">
<td id="work_num_<%= student_work.id %>"><%= (@page - 1) * @limit + index + 1 %></td>
<td>
<%= link_to student_work.user.show_real_name, user_path(student_work.user) %>
<%= link_to student_work.user.show_real_name, user_path(student_work.user),:class=>"color-grey3" %>
</td>
<td title="<%= student_work.user.user_extensions.nil? ? "--" : student_work.user.user_extensions.student_id %>">
<%= student_work.user.user_extensions.nil? ? "--" : student_work.user.user_extensions.student_id %>
</td>
<td>
<%= list_work_status student_work.work_status %>
<%= (list_work_status student_work.work_status).html_safe %>
</td>
<td>
<%= student_work.work_status == 0 ? '--' : format_time(student_work.updated_at) %>
@ -84,6 +84,6 @@
<% end%>
</td>
<td>
<%= link_to "#{@is_teacher ? '评阅' : (student_work.work_status == 0 ? '--' : '查看')}", student_work_path(student_work) %>
<%= link_to "#{@is_teacher ? '评阅' : (student_work.work_status == 0 ? '--' : '查看')}", student_work_path(student_work), :target => "_blank" %>
</td>
</tr>

View File

@ -1,7 +1,7 @@
<tr id="student_work_<%= student_work.id %>">
<td id="work_num_<%= student_work.id %>"><%= (@page - 1) * @limit + index + 1 %></td>
<td>
<%= link_to student_work.user.show_real_name, user_path(student_work.user) %>
<%= link_to student_work.user.show_real_name, user_path(student_work.user),:class=>"color-grey3" %>
</td>
<td title="<%= student_work.user.user_extensions.nil? ? "--" : student_work.user.user_extensions.student_id %>">
<%= student_work.user.user_extensions.nil? ? "--" : student_work.user.user_extensions.student_id %>
@ -87,6 +87,6 @@
<% end%>
</td>
<td>
<%= link_to "#{@is_teacher ? '评阅' : (student_work.work_status == 0 ? '--' : '查看')}", student_work_path(student_work) %>
<%= link_to "#{@is_teacher ? '评阅' : (student_work.work_status == 0 ? '--' : '查看')}", student_work_path(student_work), :target => "_blank" %>
</td>
</tr>

View File

@ -1,7 +1,7 @@
<tr id="student_work_<%= student_work.id %>">
<td id="work_num_<%= student_work.id %>"><%= (@page - 1) * @limit + index + 1 %></td>
<td>
<%= link_to student_work.user.show_real_name, user_path(student_work.user) %>
<%= link_to student_work.user.show_real_name, user_path(student_work.user),:class => "color-grey3" %>
</td>
<td title="<%= student_work.user.user_extensions.nil? ? "--" : student_work.user.user_extensions.student_id %>">
<%= student_work.user.user_extensions.nil? ? "--" : student_work.user.user_extensions.student_id %>
@ -87,6 +87,6 @@
<% end%>
</td>
<td>
<%= link_to "#{@is_teacher ? '评阅' : (student_work.work_status == 0 ? '--' : '查看')}", student_work_path(student_work) %>
<%= link_to "#{@is_teacher ? '评阅' : (student_work.work_status == 0 ? '--' : '查看')}", student_work_path(student_work), :target => "_blank" %>
</td>
</tr>

View File

@ -1,7 +1,7 @@
<tr id="student_work_<%= student_work.id %>">
<td id="work_num_<%= student_work.id %>"><%= (@page - 1) * @limit + index + 1 %></td>
<td>
<%= link_to student_work.user.show_real_name, user_path(student_work.user) %>
<%= link_to student_work.user.show_real_name, user_path(student_work.user),:class=>"color-grey3" %>
</td>
<td title="<%= student_work.user.user_extensions.nil? ? "--" : student_work.user.user_extensions.student_id %>">
<%= student_work.user.user_extensions.nil? ? "--" : student_work.user.user_extensions.student_id %>

View File

@ -10,12 +10,14 @@
<% if is_my_work%>
<td><%= index + 1 %></td>
<td><%= student_work.user.show_real_name%></td>
<td><%= format_time student_work.updated_at %></td>
<td>
<%= student_work.work_status == 0 ? '--' : format_time(student_work.updated_at) %>
</td>
<td class="<%= score_color student_work.student_score %>">
<%= student_work.student_score.nil? ? '--' : format("%.1f",student_work.student_score)+"#{student_work.student_works_scores.where(:reviewer_role => 3).group_by(&:user_id).count}" %>
</td>
<td>
<%= link_to '查看', student_work_path(student_work), :class => 'link-color-blue' %>
<%= link_to "#{student_work.work_status == 0 ? '--' : '查看'}", student_work_path(student_work), :target => "_blank" %>
</td>
<% else%>
<td><%= index + 1 %></td>

View File

@ -26,7 +26,7 @@
<div class="clearfix">
<li class="fl mb15 with80">
<label class="panel-form-label fl color-grey" style="width:80px;"> 评分&nbsp;&nbsp;</label>
<input type="number" class="fl task-form-10 task-height-40 panel-box-sizing color-light-green" name="score" id="score_<%= @work.id%>" value="<%= (@score.nil? || @score.score.nil?) ? -1 : @score.score%>" min="-1" max="100" size="4" data-units="dollars" />
<input type="number" class="fl task-form-10 task-height-40 panel-box-sizing" name="score" id="score_<%= @work.id%>" value="<%= (@score.nil? || @score.score.nil?) ? -1 : @score.score%>" min="-1" max="100" size="4" data-units="dollars" />
<!--<input type="number" class="fl task-form-10 task-height-40 panel-box-sizing" placeholder="88" name="score" />-->
<!--<input type="number" class="fl task-form-10 task-height-40 panel-box-sizing" placeholder="88" name="score" id="score_<%#= @work.id %>" value="<%#= (@score.nil? || @score.score.nil?) ? -1 : @score.score %>" min="-1" max="100" size="4" data-units="dollars" />-->
<span class="ml5 fl mt5">分</span>

View File

@ -50,6 +50,9 @@
:owner_id => @student_work.nil? ? 0: @student_work.id,
:owner_type => OwnerTypeHelper::STUDENTWORK,
:width => '90%',
:placeholder => "请在此输入您的作业内容,或者作业附件的简要描述。",
:local_storage_mdu => "student_work_description_#{User.current.id}",
:local_storage_id => "desc",
:height => 200,
:minHeight=>200,
:class => 'talk_text fl',
@ -58,10 +61,9 @@
:maxlength => 5000 }
%>
</li>
<!--<li class="clearfix ">-->
<!--<label class=" panel-form-label fl">&nbsp;&nbsp;</label>-->
<!--<span class="fl color-grey font-12">数据已于 16:50:50 保存</span>-->
<!--</li>-->
<div class="cl"></div>
<p id="e_tip_desc" style="margin-left: 10%" class="c_grey"></p>
<p id="e_tips_desc" style="margin-left: 10%" class="c_grey"></p>
<li class="none" id="student_work_description_notice">
<label class="panel-form-label fl">&nbsp;</label>
<span class="color-orange fl mt5"><i class="fa fa-exclamation-circle mr5 color-orange"></i>内容不能为空</span>

View File

@ -29,33 +29,33 @@
</div>
<div class="edu-tab-con-box">
<div id="student_work_img_<%=@work.id %>"><%= @work.description ? @work.description.html_safe : "" %></div>
<ul>
<% com_attachments = @work.attachments.where("attachtype IS NULL OR attachtype <> 7") %>
<% if com_attachments.empty?%>
<span style="color: #999999">尚未提交附件</span>
<% else%>
<%= render :partial => 'work_attachments_status', :locals => {:attachments => com_attachments, :status => @homework.homework_detail_manual.comment_status} %>
<% end%>
<li class="color-grey clearfix font-12">
<span class="fr"><%= format_time(@work.updated_at) %> 更新</span>
<span class="mr15 fr"><%= format_time(@work.commit_time) %> 提交</span>
</li>
</ul>
</div>
<ul class="pl15 pr15 pb15">
<% com_attachments = @work.attachments.where("attachtype IS NULL OR attachtype <> 7") %>
<% if com_attachments.empty?%>
<span style="color: #999999">尚未提交附件</span>
<% else%>
<%= render :partial => 'work_attachments_status', :locals => {:attachments => com_attachments, :status => @homework.homework_detail_manual.comment_status} %>
<% end%>
<li class="color-grey clearfix font-12">
<span class="fr"><%= format_time(@work.updated_at) %> 更新</span>
<span class="mr15 fr"><%= format_time(@work.commit_time) %> 提交</span>
</li>
</ul>
</div>
<% if !@work.attachments.where(:attachtype => 7).blank? %>
<% revise_attachment = @work.attachments.where("attachtype = 7").first %>
<div class="edu-con-bg01 mt15" >
<div class="edu-con-bg01 mt15 user_bg_shadow bor-grey-e" >
<div class="edu-con-top clearfix">
<p class="ml15 font-bd">补交附件</p>
</div>
<div class="edu-tab-con-box">
补交原因:<%= revise_attachment.description %>
<ul>
<%= render :partial => 'work_attachments_status', :locals => {:attachments => @work.attachments.where("attachtype = 7"), :status => @homework.homework_detail_manual.comment_status} %>
<li class="color-grey"><span><%= format_time(revise_attachment.created_on) %> 提交</span></li>
</ul>
</div>
<ul class="pl15 pr15 pb15">
<%= render :partial => 'work_attachments_status', :locals => {:attachments => @work.attachments.where("attachtype = 7"), :status => @homework.homework_detail_manual.comment_status} %>
<li class="color-grey font-12"><span class="fr"><%= format_time(revise_attachment.created_on) %> 提交</span></li>
</ul>
</div>
<% end %>

View File

@ -1,9 +1,9 @@
<ul class="nav_check_item border-bottom-orange clearfix mb15">
<li class="fl <%= @order == 'updated_at' ? 'check_nav' : "" %>">
<%= link_to "最热", subjects_path(:order => "updated_at", :search => @search, :sort => @sort), :remote => true %>
<li class="fl <%= @order == 'myshixun_count' ? 'check_nav' : "" %>">
<%= link_to "最热", subjects_path(:order => "myshixun_count", :search => @search, :sort => @sort), :remote => true %>
</li>
<li class="fl <%= @order == 'created_at' ? 'check_nav' : "" %>">
<%= link_to "最新", subjects_path(:order => "created_at", :search => @search, :sort => @sort), :remote => true %>
<li class="fl <%= @order == 'updated_at' ? 'check_nav' : "" %>">
<%= link_to "最新", subjects_path(:order => "updated_at", :search => @search, :sort => @sort), :remote => true %>
</li>
<li class="fr" style="width: auto;cursor:default;">共<span class="color-orange"><%= @subjects_count %></span>个检索结果</li>
</ul>
@ -43,8 +43,8 @@
<% if subject.subject_score > 0 %>
<span class="pl5 pr5"><i class="fa fa-viacoin color-light-green pr5" aria-hidden="true" data-tip-down="总经验值"></i><em><%= subject.subject_score %></em></span>
<% end %>
<% if subject.subject_challenges > 0 %>
<span class="pl5 pr5"><i class="fa fa-users color-light-green pr5" aria-hidden="true" data-tip-down="学习人数"></i><em><%= subject.subject_challenges %></em></span>
<% if subject.subject_users > 0 %>
<span class="pl5 pr5"><i class="fa fa-users color-light-green pr5" aria-hidden="true" data-tip-down="学习人数"></i><em><%= subject.subject_users %></em></span>
<% end %>
</p>
<div class="clearfix task-index-list-user task_yx_bo" style="margin-bottom: 0px">

View File

@ -1,3 +1,6 @@
<% content_for :header_tags do %>
<%= import_ke(enable_at: false, prettify: false, init_activity: false) %>
<% end %>
<div class="active-class ">
<p style="line-height: 42px;">
<i class="fa fa-map-marker mr5 color-grey"></i>
@ -22,18 +25,51 @@
<!--<div class="cl"></div>-->
<!--<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_subject_intro_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入描述</span>-->
<!--</li>-->
<li class="clearfix pt20">
<label class="panel-form-label label fl"><span class="color-orange">*</span>&nbsp;简介</label>
<textarea name="subject[description]" id="new_subject_description" class="task task-height-220 panel-box-sizing task-form-70 fl color-grey ml20"><%= @subject.description %></textarea>
<div class="cl"></div>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_subject_description_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入简介</span>
</li>
<li class="clearfix pt20">
<label class="panel-form-label label fl"><span class="color-orange">*</span>&nbsp;学习须知</label>
<textarea type="text" name="subject[learning_notes]" id="new_learning_notes" class="task task-height-220 panel-box-sizing task-form-70 fl color-grey ml20" placeholder=""><%= @subject.learning_notes %></textarea>
<div class="cl"></div>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_learning_notes_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入学习须知</span>
</li>
<li class="clearfix pt20">
<label class="panel-form-label label fl mr20"><span class="color-orange">*</span>简介</label>
<%= hidden_field_tag :asset_id, params[:asset_id], :required => false, :style => 'display:none' %>
<textarea class="panel-form-width-690 panel-form-height-150 fl panel-box-sizing" style="display: none"></textarea>
<%= f.kindeditor :description, :editor_id => 'subject_description_editor',
:owner_id => @subject.nil? ? 0: @subject.id,
:owner_type => OwnerTypeHelper::SUBJECT,
:local_storage_mdu => "subject_description_#{User.current.id}_#{@subject.id}",
:local_storage_id => "desc",
:width => '80%',
:height => 200,
:minHeight=>200,
:placeholder => "请在此输入实训路径的简介",
:class => 'talk_text fl',
:input_html => { :id => 'new_subject_description',
:class => 'talk_text fl',
:maxlength => 5000 }
%>
<div class="cl"></div>
<p id="e_tip_desc" style="margin-left: 140px" class="c_grey"></p>
<p id="e_tips_desc" style="margin-left: 140px" class="c_grey"></p>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_subject_description_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入简介</span>
</li>
<li class="clearfix pt20">
<label class="panel-form-label label fl mr20"><span class="color-orange">*</span>&nbsp;学习须知</label>
<textarea class="panel-form-width-690 panel-form-height-150 fl panel-box-sizing" style="display: none"></textarea>
<%= f.kindeditor :learning_notes, :editor_id => 'subject_learning_notes_editor',
:owner_id => @subject.nil? ? 0: @subject.id,
:owner_type => OwnerTypeHelper::SUBJECT,
:local_storage_mdu => "subject_notes_#{User.current.id}_#{@subject.id}",
:local_storage_id => "notes",
:width => '80%',
:height => 200,
:minHeight=>200,
:placeholder => "请在此输入实训路径的学习须知",
:class => 'talk_text fl',
:input_html => { :id => 'new_learning_notes',
:class => 'talk_text fl',
:maxlength => 5000 }
%>
<div class="cl"></div>
<p id="e_tip_notes" style="margin-left: 140px" class="c_grey"></p>
<p id="e_tips_notes" style="margin-left: 140px" class="c_grey"></p>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_learning_notes_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入学习须知</span>
</li>
<li class="clearfix pt20 pb20">
<label class="panel-form-label label fl">&nbsp;</label>
<%= link_to "取消", subject_path(@subject), :class => "task-btn fl mr10 ml20" %>

View File

@ -1,4 +1,4 @@
<%= content_for(:header_tags) do %>
<% content_for :header_tags do %>
<%= import_ke(enable_at: false, prettify: false, init_activity: false) %>
<% end %>
<div class="active-class ">
@ -27,41 +27,48 @@
<!--</li>-->
<li class="clearfix pt20">
<label class="panel-form-label label fl mr20"><span class="color-orange">*</span>简介</label>
<%#= hidden_field_tag :asset_id, params[:asset_id], :required => false, :style => 'display:none' %>
<%= hidden_field_tag :asset_id, params[:asset_id], :required => false, :style => 'display:none' %>
<textarea class="panel-form-width-690 panel-form-height-150 fl panel-box-sizing" style="display: none"></textarea>
<%= f.kindeditor :description,
:editor_id => 'new_subject_description',
:owner_id => 0,
:owner_type => OwnerTypeHelper::MESSAGE,
<%= f.kindeditor :description, :editor_id => 'subject_description_editor',
:owner_id => @subject.nil? ? 0: @subject.id,
:owner_type => OwnerTypeHelper::SUBJECT,
:local_storage_mdu => "subject_description_#{User.current.id}",
:local_storage_id => "desc",
:width => '80%',
:height => 300,
:minHeight=>300,
:height => 200,
:minHeight=>200,
:placeholder => "请在此输入实训路径的简介",
:class => 'talk_text fl',
:input_html => { :id => 'new_subject_description',
:class => 'task task-height-220 panel-box-sizing task-form-80 fl color-grey ml20',
:class => 'talk_text fl',
:maxlength => 5000 }
%>
<!-- <textarea name="subject[description]" id="new_subject_description" class="task task-height-220 panel-box-sizing task-form-80 fl color-grey ml20"></textarea>-->
<div class="cl"></div>
<p id="e_tip_desc" style="margin-left: 140px" class="c_grey"></p>
<p id="e_tips_desc" style="margin-left: 140px" class="c_grey"></p>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_subject_description_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入简介</span>
</li>
<li class="clearfix pt20">
<label class="panel-form-label label fl mr20"><span class="color-orange">*</span>&nbsp;学习须知</label>
<textarea class="panel-form-width-690 panel-form-height-150 fl panel-box-sizing" style="display: none"></textarea>
<%= f.kindeditor :learning_notes,
:editor_id => 'new_learning_notes',
:owner_id => 0,
:owner_type => OwnerTypeHelper::MESSAGE,
<%= f.kindeditor :learning_notes, :editor_id => 'subject_learning_notes_editor',
:owner_id => @subject.nil? ? 0: @subject.id,
:owner_type => OwnerTypeHelper::SUBJECT,
:local_storage_mdu => "subject_notes_#{User.current.id}",
:local_storage_id => "notes",
:width => '80%',
:height => 300,
:minHeight=>300,
:height => 200,
:minHeight=>200,
:placeholder => "请在此输入实训路径的学习须知",
:class => 'talk_text fl',
:input_html => { :id => 'new_learning_notes',
:class => 'task task-height-220 panel-box-sizing task-form-80 fl color-grey ml20',
:class => 'talk_text fl',
:maxlength => 5000 }
%>
<!--textarea type="text" name="subject[learning_notes]" id="new_learning_notes" class="task task-height-220 panel-box-sizing task-form-70 fl color-grey ml20" placeholder=""></textarea>-->
<div class="cl"></div>
<p id="e_tip_notes" style="margin-left: 140px" class="c_grey"></p>
<p id="e_tips_notes" style="margin-left: 140px" class="c_grey"></p>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_learning_notes_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入学习须知</span>
</li>
<!--<li class="clearfix pt20">
@ -76,4 +83,17 @@
<% end %>
</div>
</div>
</div>
</div>
<script>
function rec_data(k,mdu,id){
if(window.sessionStorage.getItem(k+mdu) !== null){
if(id == "desc"){
subject_description_editor.html(window.sessionStorage.getItem(k+mdu));
} else{
subject_learning_notes_editor.html(window.sessionStorage.getItem(k+mdu));
}
clear_data(k,mdu,id);
}
}
</script>

View File

@ -20,7 +20,7 @@
<div class="lesson-saved-list-item pt20 pb20 bor-grey-e user_bg_shadow mb20" style = "border-radius:4px;" id="stage_div_<%= stage.id %>">
<p class="clearfix title-line ml20 mr20">
<i class="fa fa-pause-circle color-light-green font-22 transform90 mr5"></i>
<span class="font-18 font-bd">第<span class="subject_stage_index"><%= s_index + 1 %></span>章&nbsp;&nbsp;<%= stage.name %></span>
<span class="font-18 font-bd"><%= stage.name %></span>
<% if User.current.manager_of_subject?(@subject) %>
<a href="javascript:void(0);" class="fr" onclick="edit_stage(<%= stage.id %>)"><i class="fa fa-pencil mt8 color-grey-c edit" data-tip-down="编辑"></i></a>
<a href="javascript:void(0);" class="fr" onclick="delete_confirm_box_2('<%= stage_path(stage) %>', '确定要删除该阶段吗?');"><i class="fa fa-trash mt8 mr10 color-grey-c delete" data-tip-down="删除"></i></a>
@ -108,7 +108,7 @@
<div class="stage-entry clearfix">
<li class="clearfix ml10 mr10">
<label class="fl"><span class="color-orange mr5">*</span>名称:</label>
<input class="stage-name fl" name="stage_name" style="background: none;" maxlength="100" placeholder="请输入阶段名称,最多100个字符,如基础知识、第1章等" size="100" type="text">
<input class="stage-name fl" name="stage_name" value="第1章 " style="background: none;" maxlength="100" placeholder="请输入阶段名称,最多100个字符,如基础知识、第1章等" size="100" type="text">
<p class="color-red clearfix" style="height: 20px;width: 90%;margin-left: 55px"><span id="stage_name_notice" style="display: none;"><i class="fa fa-exclamation-circle color-red mr5"></i>阶段名称不能为空</span></p>
</li>
<li class="clearfix ml10 mb15">
@ -265,7 +265,7 @@
edithtml+="<div class=\"stage-entry clearfix\">";
edithtml+="<li class=\"clearfix ml10 mr10\">";
edithtml+="<label class=\"fl\"><span class=\"color-orange mr5\">*</span>名称:</label>";
edithtml+="<input class=\"stage-name fl\" name=\"stage_name\" style=\"background: none;\" maxlength=\"100\" placeholder=\"请输入阶段名称,最多100个字符,如基础知识、第1章等\" size=\"100\" type=\"text\">";
edithtml+="<input class=\"stage-name fl\" name=\"stage_name\" style=\"background: none;\" value=\"第"+counttage+"章\" maxlength=\"100\" placeholder=\"请输入阶段名称,最多100个字符,如基础知识、第1章等\" size=\"100\" type=\"text\">";
edithtml+="<p class=\"color-red clearfix\" style=\"height: 20px;width: 90%;margin-left: 55px\"><span id=\"stage_name_notice\" style=\"display: none;\"><i class=\"fa fa-exclamation-circle color-red mr5\"></i>阶段名称不能为空</span></p>";
edithtml+="</li>";
edithtml+="<li class=\"clearfix ml10 mb15\">";

View File

@ -10,12 +10,12 @@
</div>
<div class="homepagePostTo break_word fl" style="margin:0px">
<% if activity.try(:author).show_real_name == ' ' %>
<%= link_to activity.try(:author).show_real_name, user_path(activity.author_id), :class => "newsBlue mr15" %>
<%= link_to activity.try(:author).show_real_name, user_path(activity.author_id), :class => "newsBlue mr15 color-grey-b" %>
<% else %>
<%= link_to activity.try(:author).show_real_name, user_path(activity.author_id), :class => "newsBlue mr15" %>
<%= link_to activity.try(:author).show_real_name, user_path(activity.author_id), :class => "newsBlue mr15 color-grey-b" %>
<% end %>
TO
<%= link_to "班级资源", course_files_path(activity.course), :class => "newsBlue ml15" %>
<%= link_to "班级资源", course_files_path(activity.course), :class => "newsBlue ml15 color-grey-b" %>
</div>
<div class="homepagePostSubmitContainer fr" style="margin:0px">

View File

@ -50,9 +50,9 @@
<!--列表内容-->
<% if @topics.count > 0 %>
<% topics.each do |activity| %>
<div class="panel-inner-fourm" style="padding: 10px 20px;">
<div class="panel-inner-fourm" style="padding: 15px 20px;">
<%= link_to image_tag(url_to_avatar(activity.author), :width => "60", :height => "60", :class => "panel-list-img mr15"), user_path(activity.author), :alt => "用户",:style => "width:60px;height:60px;display: block;" %>
<div class="panel-list-infobox clearfix ds">
<div class="panel-list-infobox clearfix ds pr pt5">
<h6>
<%= link_to activity.subject.to_s.html_safe, User.current.logged? ? board_message_path(activity.board_id, activity) : signin_url_without_domain, :class => "panel-list-title hide fl mt5" %>
</h6>
@ -61,7 +61,7 @@
<% end %>
<!--<span class="btn-cir btn-cir-red fl mt5 ml5">置顶</span></h6>-->
<div class="cl"></div>
<p class="color-grey panel-lightgrey mt15 fl">
<p class="color-grey panel-lightgrey mt10 fl">
<span class="mr50">
<%= link_to activity.author.show_real_name, user_path(activity.author), :class => "panel-name-small hide fl mr15 color-grey" %>
<span><%= time_from_now(activity.created_on) %></span>
@ -72,12 +72,28 @@
<span class="mr10">最后回复<span class="ml10 mr10"><%= last_message.author.show_real_name %></span><%= time_from_now(last_message.created_on) %></span>
<% end %>
</p>
<p class="fr panel-lightgrey mt15">
<p class="fr panel-lightgrey mt10">
<!--<span class="mr10"><i class="fa fa-eye color-grey mr5 "></i>473</span>-->
<span class="mr10"><i class="fa fa-eye color-grey mr5"></i><%= activity.visits %></span>
<span class="mr10"><i class="fa fa-thumbs-up color-grey mr5"></i><%= get_praise_num(activity) > 0 ? "#{get_praise_num(activity)}" : "0" %></span>
<span class="mr10"><i class="fa fa-comments-o color-grey mr5"></i><%= count %></span>
</p>
<div class="homepagePostSetting" style="right: 4px;top: 5px;">
<ul>
<li>
<i class="fa fa-bars color-grey-b"></i>
<ul class="homepagePostSettiongText">
<li><a href="javascript:void(0)" onclick="show_send(<%= activity.id %>, <%= User.current.id %>, 'message');" class="postOptionLink">发&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;送</a></li>
<li><a href="<%= sticky_topic_board_message_path(activity.board_id, activity, :is_board => true) %>" class="postOptionLink"><%= activity.sticky == 1 ? '取消置顶' : '置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;顶'.html_safe %></a></li>
<li><a href="<%= edit_board_message_path(activity.board_id, activity) %>" class="postOptionLink">编&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;辑</a></li>
<li>
<a href="javascript:void(0);" onclick="delete_confirm_box_3('<%= delete_board_message_path(activity.board_id, activity) %>', '确定要删除该帖子吗?')" class="postOptionLink">删&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;除</a>
</li>
</ul>
</li>
</ul>
</div>
</div>
</div>
<% end %>

View File

@ -10,13 +10,13 @@
</div>
<div class="homepagePostTo break_word fl">
<% if activity.try(:teacher).show_real_name == ' ' %>
<%= link_to activity.try(:teacher), user_path(activity.teacher), :class => "newsBlue mr15" %>
<%= link_to activity.try(:teacher), user_path(activity.teacher), :class => "newsBlue mr15 color-grey-b" %>
<% else %>
<%= link_to activity.try(:teacher).show_real_name, user_path(activity.teacher), :class => "newsBlue mr15" %>
<%= link_to activity.try(:teacher).show_real_name, user_path(activity.teacher), :class => "newsBlue mr15 color-grey-b" %>
<% end %>
TO
<% str = defined?(is_course) && is_course == 1 ? "班级" : "#{activity.name.to_s} | 班级" %>
<%= link_to str, course_path(activity.id,:host=>Setting.host_course), :class => "newsBlue ml15" %>
<%= link_to str, course_path(activity.id,:host=>Setting.host_course), :class => "newsBlue ml15 color-grey-b" %>
</div>
<div class="homepagePostDate fr">

View File

@ -26,12 +26,12 @@
<div class="cl"></div>
<div class="homepagePostTo break_word">
<%= link_to activity.user.show_real_name, user_path(activity.user,:host=>Setting.host_user), :class => "newsBlue mr15" %>
<%= link_to activity.user.show_real_name, user_path(activity.user,:host=>Setting.host_user), :class => "newsBlue mr15 color-grey-b" %>
TO <!--+"(课程名称)" -->
<% if hw_status == 3 || hw_status == 2 %>
<%= link_to "#{activity.homework_type_ch}作业", homework_common_index_path(:course => activity.course.id, :host=> Setting.host_course, :homework_type => activity.homework_type), :class => "newsBlue ml15"%>
<%= link_to "#{activity.homework_type_ch}作业", homework_common_index_path(:course => activity.course.id, :host=> Setting.host_course, :homework_type => activity.homework_type), :class => "newsBlue ml15 color-grey-b"%>
<% else %>
<%= link_to activity.course.name.to_s+" | #{activity.homework_type_ch}作业", homework_common_index_path(:course => activity.course.id, :host=> Setting.host_course, :homework_type => activity.homework_type), :class => "newsBlue ml15"%>
<%= link_to activity.course.name.to_s+" | #{activity.homework_type_ch}作业", homework_common_index_path(:course => activity.course.id, :host=> Setting.host_course, :homework_type => activity.homework_type), :class => "newsBlue ml15 color-grey-b"%>
<% end %>
</div>
@ -43,7 +43,7 @@
<div class="homepagePostSubmitContainer">
<%= render :partial => 'users/homework_opr', :locals => {:activity => activity, :is_teacher => is_teacher, :hw_status => hw_status, :user_activity_id => user_activity_id} %>
<% if !activity.end_time.nil? %>
<div class="homepagePostDeadline fr">提交截止时间:<%= format_time activity.end_time %></div>
<div class="homepagePostDeadline fl mt3 color-grey3">提交截止时间:<%= format_time activity.end_time %></div>
<% end %>
<% if activity.homework_detail_manual.comment_status == 0 && !activity.publish_time.nil? %>
<div class="homepagePostDeadline ml15">

View File

@ -6,11 +6,11 @@
</div>
<div class="homepagePostDes">
<div class="homepagePostTo break_word">
<%= link_to activity.user.show_name, user_path(activity.user), :class => "newsBlue mr15" %>
<%= link_to activity.user.show_name, user_path(activity.user), :class => "newsBlue mr15 color-grey-b" %>
TO
<% course=Course.find(activity.jour_id) %>
<% str = defined?(is_course) && is_course == 1 ? "班级留言" : "#{course.name.to_s} | 班级留言" %>
<%= link_to str, course_feedback_path(course), :class => "newsBlue ml15" %>
<%= link_to str, course_feedback_path(course), :class => "newsBlue ml15 color-grey-b" %>
</div>
<!--<div class="homepagePostTitle break_word list_style upload_img">
<%# if activity.parent %>

View File

@ -13,17 +13,17 @@
<% end %>
</div>
<% if activity.sticky == 1 %>
<span class="sticky_btn_cir ml10">置顶</span>
<span class="sticky_btn_cir ml10 fl mt3">置顶</span>
<% end%>
<% if activity.locked %>
<span class="locked_btn_cir ml10 fl" title="已锁定">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>
<% end %>
<div class="cl"></div>
<div class="homepagePostTo break_word fl">
<%= link_to activity.author.show_real_name, user_path(activity.author, :host=>Setting.host_user), :class => "newsBlue mr15" %>
<%= link_to activity.author.show_real_name, user_path(activity.author, :host=>Setting.host_user), :class => "newsBlue mr15 color-grey-b" %>
TO
<% str = is_course == 1 ? "#{activity.board.parent.nil? ? '班级讨论区' : activity.board.name}" : activity.course.name.to_s+" | #{activity.board.parent.nil? ? '班级讨论区' : activity.board.name}" %>
<%= link_to str, course_boards_path(activity.course,:host=> Setting.host_course), :class => "newsBlue ml15"%>
<%= link_to str, course_boards_path(activity.course,:host=> Setting.host_course), :class => "newsBlue ml15 color-grey-b"%>
</div>
<!--<div class="homepagePostDate fl">

View File

@ -6,10 +6,10 @@
</div>
<div class="homepagePostDes">
<div class="homepagePostTo break_word">
<%= link_to activity.author.show_name, user_path(activity.author), :class => "newsBlue mr15" %>
<%= link_to activity.author.show_name, user_path(activity.author), :class => "newsBlue mr15color-grey-b" %>
TO <!--+"(课程名称)"-->
<% str = defined?(is_course) && is_course == 1 ? "班级通知" : "#{activity.course.name.to_s} | 班级通知" %>
<%= link_to str, course_news_index_path(activity.course), :class => "newsBlue ml15" %>
<%= link_to str, course_news_index_path(activity.course), :class => "newsBlue ml15color-grey-b" %>
</div>
<div class="homepagePostTitle break_word hidden fl m_w600"> <!--+"(通知标题)"-->
<%= link_to activity.title.to_s, news_path(activity), :class => "postGrey" %>

View File

@ -11,14 +11,14 @@
<div class="homepagePostDes">
<div class="homepagePostTo break_word">
<% if activity.try(:user).try(:realname) == ' ' %>
<%= link_to activity.try(:user), user_path(activity.user), :class => "newsBlue mr15" %>
<%= link_to activity.try(:user), user_path(activity.user), :class => "newsBlue mr15 color-grey-b" %>
<% else %>
<%= link_to activity.try(:user).try(:realname), user_path(activity.user), :class => "newsBlue mr15" %>
<%= link_to activity.try(:user).try(:realname), user_path(activity.user), :class => "newsBlue mr15 color-grey-b" %>
<% end %>
TO
<% course = Course.find(activity.polls_group_id) %>
<% str = defined?(is_course) && is_course == 1 ? "班级问卷" : "#{course.name.to_s} | 班级问卷" %>
<%= link_to str, poll_index_path(:polls_type => "Course", :polls_group_id => activity.polls_group_id), :class => "newsBlue ml15" %>
<%= link_to str, poll_index_path(:polls_type => "Course", :polls_group_id => activity.polls_group_id), :class => "newsBlue ml15 color-grey-b" %>
<!--<a href="javascript:void(0);" class="newsBlue ml15">分布式计算环境(课程名称)</a>-->
</div>
<div class="homepagePostTitle break_word" >

View File

@ -1,4 +1,4 @@
<div class="mt10">
<div class="mt20 clearfix">
<div class="homepagePostDeadline">
迟交扣分:<%= activity.late_penalty%>分
</div>
@ -9,7 +9,7 @@
<% end %>
</div>
<div class="cl"></div>
<div>
<div class="clearfix">
<% if activity.anonymous_comment == 0%>
<div class="homepagePostDeadline">
缺评扣分:<%= activity.homework_detail_manual.absence_penalty%>分/作品
@ -22,7 +22,7 @@
<div class="cl"></div>
<% if activity.student_works.has_committed.count != 0 %>
<% sw = activity.student_works.has_committed.reorder("commit_time desc").first %>
<div class="mt10 homepagePostDeadline">
<div class="mt20 homepagePostDeadline color-grey">
#&nbsp;<%=time_from_now sw.commit_time %><%= link_to sw.user.show_real_name, user_activities_path(sw.user_id), :class => "newsBlue ml5 mr5"%>提交了作品
</div>
<div class="cl"></div>
@ -31,7 +31,7 @@
<% student_work_scores = StudentWorksScore.where("student_work_id in #{sw_id} and score is not null").reorder("created_at desc") %>
<% unless student_work_scores.empty? %>
<% last_score = student_work_scores.first %>
<div class="mt10">
<div class="mt3 mb10">
<p class="fontGrey2">
#&nbsp;<%=time_from_now last_score.created_at %><%= link_to last_score.reviewer_role == 3 && !is_teacher ? '学生匿名' : last_score.user.show_real_name, last_score.reviewer_role == 3 && !is_teacher ? "javascript:void(0)" : user_activities_path(last_score.user_id), :class => "newsBlue ml5 mr5"%>评阅了作品,优秀排行:
</p>
@ -55,7 +55,7 @@
<% end %>
</a>
<% score = sw.respond_to?("score") ? sw.score : sw.work_score %>
<p class="fontGrey2">分数:<span class="c_red"><%=format("%.1f",score.to_f < 0 ? 0 : score.to_f) %>分</span></p>
<p class="fontGrey2"><span class="c_red"><%=format("%.1f",score.to_f < 0 ? 0 : score.to_f) %>分</span></p>
</div>
<% end %>
<% if student_works.count == 7 %>
@ -87,7 +87,7 @@
<% comment_status = activity.homework_detail_manual.comment_status %>
<div class="homepagePostSetting">
<ul>
<li class="homepagePostSettingIcon"><i class="fa fa-bars color-grey9"></i>
<li class="homepagePostSettingIcon"><i class="fa fa-bars color-grey-b"></i>
<ul class="whomepagePostSettiongText">
<% if activity.homework_type != 4 %>
<li>

View File

@ -3,11 +3,11 @@
<% projects = cur_user_projects_for_homework activity %>
<% if work.nil? && projects.nil? %>
<div class="homepagePostSubmit">
<%=link_to "关联项目",new_student_work_project_student_work_index_path(:homework => activity.id,:hw_status=>hw_status,:user_activity_id=>user_activity_id),remote: true,:class=> 'c_blue', :title=> '请各组长关联作业项目' %>
<%=link_to "关联项目",new_student_work_project_student_work_index_path(:homework => activity.id,:hw_status=>hw_status,:user_activity_id=>user_activity_id),remote: true,:class=> 'color_white', :title=> '请各组长关联作业项目' %>
</div>
<% elsif work.nil? %>
<div class="homepagePostSubmit">
<%=link_to "取消关联",cancel_relate_project_student_work_index_path(:homework => activity.id,:hw_status=>hw_status,:user_activity_id=>user_activity_id), :confirm => "您确定要取消关联吗?", remote: true,:class => "c_blue", :title=> '取消关联项目' %>
<%=link_to "取消关联",cancel_relate_project_student_work_index_path(:homework => activity.id,:hw_status=>hw_status,:user_activity_id=>user_activity_id), :confirm => "您确定要取消关联吗?", remote: true,:class => "color_white", :title=> '取消关联项目' %>
</div>
<% end %>
<% end %>
@ -16,16 +16,16 @@
</div>
<% if activity.allow_late && activity.end_time < Time.now && (activity.homework_type == 1 || activity.homework_type == 3) && work && work.work_status != 0 && work.user == User.current && !is_teacher && activity.homework_detail_manual.comment_status < 6 %>
<div class="homepagePostSubmit">
<%=link_to "补交附件", student_work_path(work, :is_focus => 1), :class => 'c_blue', :title => "可追加作品修订附件" %>
<%=link_to "补交附件", student_work_path(work, :is_focus => 1), :class => 'color_white', :title => "可追加作品修订附件" %>
</div>
<% end %>
<% if activity.homework_type == 2 && is_teacher%>
<div class="homepagePostSubmit">
<%= link_to "模拟答题", new_student_work_path(homework: activity.id, is_test: true), class: 'c_blue test-program-btn', title: '教师可以通过模拟答题设置作业的标准答案' %>
<%= link_to "模拟答题", new_student_work_path(homework: activity.id, is_test: true), class: 'color_white test-program-btn', title: '教师可以通过模拟答题设置作业的标准答案' %>
</div>
<% if activity.homework_detail_manual.comment_status != 0 %>
<div class="homepagePostSubmit">
<%= link_to "代码查重", work_canrepeat_student_work_index_path(homework: activity.id, course_id: activity.course.id), class: 'c_blue test-program-btn',:remote => true %>
<%= link_to "代码查重", work_canrepeat_student_work_index_path(homework: activity.id, course_id: activity.course.id), class: 'color_white test-program-btn',:remote => true %>
</div>
<% end %>
<% end %>

View File

@ -0,0 +1,14 @@
#encoding: utf-8
class MigrateStageName < ActiveRecord::Migration
def up
Stage.where("0=0").each do |stage|
str = "" + stage.position.to_s + ""
unless stage.name.index(str) && stage.name.index(str) == 0
stage.update_column('name', str + " " + stage.name)
end
end
end
def down
end
end

View File

@ -97,7 +97,7 @@ namespace :homework_publishtime do
homework_commons.each do |homework|
homework_detail_manual = homework.homework_detail_manual
homework_detail_manual.update_column('comment_status', 6)
if homework.homework_type == 4
if homework.homework_type == 4 && homework.allow_late
shixun = homework.homework_commons_shixuns.shixun
homework.student_works.where("work_status != 0").each do |student_work|
passed_count = homework.homework_detail_manual.answer_open_evaluation ? had_passed_changllenge_num_rake(student_work.myshixun) : had_passed_no_ans_changllenge_num_rake(student_work.myshixun)

View File

@ -237,6 +237,8 @@ function _getBasePath() {
K.basePath = _getBasePath();
K.options = {
placeholder : '',
local_storage_mdu : '',
local_storage_id : '',
designMode : true,
fullscreenMode : false,
filterMode : true,
@ -4784,7 +4786,7 @@ function _bindTabEvent() {
function _bindFocusEvent() {
var self = this;
K(self.edit.textarea[0], self.edit.win).focus(function(e) {
if(/^\s*<\w*\s*\w*\=\"\w*\"\s*\w*\=\"\w*\:\s*\#\d*\;\s*\w*\-\w*\:\s*\w*\;\"\>[\u4e00-\u9fa5]*[\uFF1A][\u4e00-\u9fa5]*[\uFF0C][\u4e00-\u9fa5]*[\uFF0C][\u4e00-\u9fa5]*[\uFF0C][\u4e00-\u9fa5]*<\/\w*\>\s*$/.test(self.edit.html())){
if(/^\s*<\w*\s*\w*\=\"\w*\"\s*\w*\=\"\w*\:\s*\#\d*\;\s*\w*\-\w*\:\s*\w*\;\"\>[\u4e00-\u9fa5]*[\]*[\u4e00-\u9fa5]*[\。]*<\/\w*\>\s*$/.test(self.edit.html())){
self.edit.html('');
}
if(typeof self.options.enable_at === 'function'){
@ -4795,7 +4797,10 @@ function _bindFocusEvent() {
}
}).blur(function(e) {
if(self.isEmpty()) {
self.edit.html(self.placeholder);
if (self.placeholder != "") {
self.edit.html("<span id='hint' style='color:#999999;font-size:12px;'>" + self.placeholder + "</span>");
}
// self.edit.html(self.placeholder);
// self.edit.html("<span id='hint' style='color:#999999;font-size:12px;'>" + self.placeholder + "</span>");
}
if (self.afterBlur) {
@ -5184,7 +5189,8 @@ KEditor.prototype = {
if (self.placeholder != "" && self.edit.html() == "") {
self.edit.html("<span id='hint' style='color:#999999;font-size:12px;'>" + self.placeholder + "</span>");
}
}
elocalStorage(self, self.local_storage_mdu, self.local_storage_id);
}
});
//statusbar.removeClass('statusbar').addClass('ke-statusbar')
// .append('<span class="ke-inline-block ke-statusbar-center-icon"></span>');
@ -5323,7 +5329,12 @@ KEditor.prototype = {
}
},
isEmpty : function() {
return _trim(this.text().replace(/\r\n|\n|\r/, '')) === '';
var self = this;
if(self.placeholder == ""){
return _trim(this.text().replace(/\r\n|\n|\r/, '')) === '';
} else{
return (_trim(this.text().replace(/\r\n|\n|\r/, '')) === '' || /^\s*<\w*\s*\w*\=\"\w*\"\s*\w*\=\"\w*\:\s*\#\d*\;\s*\w*\-\w*\:\s*\w*\;\"\>[\u4e00-\u9fa5]*[\]*[\u4e00-\u9fa5]*[\。]*<\/\w*\>\s*$/.test(self.edit.html()));
}
},
isDirty : function() {
return _trim(this.initContent.replace(/\r\n|\n|\r|t/g, '')) !== _trim(this.html().replace(/\r\n|\n|\r|t/g, ''));

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@ -1540,13 +1540,8 @@ function elocalStorage(editor,mdu,id){
editor2 = editor;
var oc = window.sessionStorage.getItem('content'+mdu);
if(oc !== null ){
if(arguments[2]){
var h = '您上次有已保存的数据,是否<a style="cursor: pointer;" onclick="rec_data(\'content\',\''+ mdu + '\',' + id + ')">恢复</a> ? / <a style="cursor: pointer;" onclick="clear_data(\'content\',\''+ mdu + '\',' + id + ')">不恢复</a>';
$("#e_tips_"+id).html(h);
}else{
var h = '您上次有已保存的数据,是否<a style="cursor: pointer;" onclick="rec_data(\'content\',\''+ mdu + '\')">恢复</a> ? / <a style="cursor: pointer;" onclick="clear_data(\'content\',\''+ mdu + '\')">不恢复</a>';
$("#e_tips").html(h);
}
var h = '您上次有已保存的数据,是否<a style="cursor: pointer;" class="color-orange05" onclick="rec_data(\'content\',\''+ mdu + '\',\'' + id + '\')">恢复</a> ? / <a style="cursor: pointer;" class="color-orange05" onclick="clear_data(\'content\',\''+ mdu + '\',\'' + id + '\')">不恢复</a>';
$("#e_tips_"+id).html(h);
}
setInterval(function() {
d = new Date();
@ -1559,8 +1554,9 @@ function elocalStorage(editor,mdu,id){
editor.sync();
if(!editor.isEmpty()){
add_data("content",mdu,editor.html());
var id1 = arguments[2] ? "#e_tip_"+id : "#e_tip";
var id2 = arguments[2] ? "#e_tips_"+id : "#e_tips";
var id1 = "#e_tip_"+id;
var id2 = "#e_tips_"+id;
console.log(id1 + h + ':' + m + ':' + s +" 保存 ");
$(id1).html(" 数据已于 " + h + ':' + m + ':' + s +" 保存 ");
$(id2).html("");
}
@ -1581,8 +1577,8 @@ function rec_data(k,mdu,id){
}
function clear_data(k,mdu,id){
window.sessionStorage.removeItem(k+mdu);
var id1 = arguments[2] ? "#e_tip_"+id : "#e_tip";
var id2 = arguments[2] ? "#e_tips_"+id : "#e_tips";
var id1 = "#e_tip_"+id;
var id2 = "#e_tips_"+id;
if(k == 'content'){
$(id2).html("");
}else{

View File

@ -286,6 +286,16 @@ $(function(){
if($(this).is(':checked')){
$(this).parent().parent('ul').find('input[type="text"]').removeAttr('disabled');
$(this).parent().parent('ul').find('input[type="text"]').removeClass('disabled-bg');
if($("input[name='homework_end_time']").val().trim() != ""){
var my_date = new Date();
var end_date = new Date(Date.parse($("input[name='homework_end_time']").val().replace(/-/g, "/")));
var max_date = my_date > end_date ? my_date : end_date;
$("input[name='homework_evaluation_start']").val(formate_time(new Date(max_date.setDate(max_date.getDate()+7))));
$("input[name='homework_evaluation_end']").val(formate_time(new Date(max_date.setDate(max_date.getDate()+14))));
}
$("input[name='homework_evaluation_num']").val("3");
$("input[name='homework_absence_penalty']").val("2");
$("select[name='st_proportion']").removeAttr('disabled').removeClass('disabled-bg');
$("#anon_relate_setting_ul").show();
$("input[name='homework_anonymous_appeal']").attr("checked", "checked");
$("input[name='homework_appeal_time']").datetimepicker({
@ -303,16 +313,6 @@ $(function(){
$("input[name='homework_appeal_time']").val(formate_time(new Date(max_date.setDate(max_date.getDate()+7))));
}
$("input[name='homework_appeal_penalty']").val("2");
if($("input[name='homework_end_time']").val().trim() != ""){
var my_date = new Date();
var end_date = new Date(Date.parse($("input[name='homework_end_time']").val().replace(/-/g, "/")));
var max_date = my_date > end_date ? my_date : end_date;
$("input[name='homework_evaluation_start']").val(formate_time(new Date(max_date.setDate(max_date.getDate()+7))));
$("input[name='homework_evaluation_end']").val(formate_time(new Date(max_date.setDate(max_date.getDate()+14))));
}
$("input[name='homework_evaluation_num']").val("3");
$("input[name='homework_absence_penalty']").val("2");
$("select[name='st_proportion']").removeAttr('disabled').removeClass('disabled-bg');
} else{
$(this).parent().parent('ul').find('input[type="text"]').attr('disabled', 'disabled');
$(this).parent().parent('ul').find('input[type="text"]').addClass('disabled-bg');
@ -842,8 +842,8 @@ function setting_cancel_edit(fn){
$(function(){
$("#comment_no_limit").live('click', function(){
if(!$(this).hasClass("link-color-blue")){
$(this).addClass("link-color-blue");
if(!$(this).hasClass("color-orange03")){
$(this).addClass("color-orange03");
$("input[name='comment[]']").attr("checked", false);
$.ajax({
url: '/student_work?homework='+$("#homework_id").val(),
@ -872,8 +872,8 @@ $(function(){
});
});
$("#status_no_limit").live('click', function(){
if(!$(this).hasClass("link-color-blue")){
$(this).addClass("link-color-blue");
if(!$(this).hasClass("color-orange03")){
$(this).addClass("color-orange03");
$("input[name='status[]']").attr("checked", false);
$.ajax({
url: '/student_work?homework='+$("#homework_id").val(),
@ -902,8 +902,8 @@ $(function(){
});
});
$("#group_no_limit").live('click', function(){
if(!$(this).hasClass("link-color-blue")){
$(this).addClass("link-color-blue");
if(!$(this).hasClass("color-orange03")){
$(this).addClass("color-orange03");
$("input[name='group[]']").attr("checked", false);
$.ajax({
url: '/student_work?homework='+$("#homework_id").val(),
@ -1094,21 +1094,21 @@ function submit_new_subject(){
} else{
$("#new_subject_name_notice").hide();
}
if(new_subject_description.isEmpty()){
if(subject_description_editor.isEmpty()){
check = false;
$("#new_subject_description_notice").show();
} else{
$("#new_subject_description_notice").hide();
}
if(new_learning_notes.isEmpty()){
if(subject_learning_notes_editor.isEmpty()){
check = false;
$("#new_learning_notes_notice").show();
} else {
$("#new_learning_notes_notice").hide();
}
if(check){
new_subject_description.sync();
new_learning_notes.sync();
subject_description_editor.sync();
subject_learning_notes_editor.sync();
$("#new_subject").submit();
}
}
@ -1121,19 +1121,21 @@ function submit_edit_subject(id){
} else{
$("#new_subject_name_notice").hide();
}
if($("#new_subject_description").val().trim() == ""){
if(subject_description_editor.isEmpty()){
check = false;
$("#new_subject_description_notice").show();
} else{
$("#new_subject_description_notice").hide();
}
if($("#new_learning_notes").val().trim() == ""){
if(subject_learning_notes_editor.isEmpty()){
check = false;
$("#new_learning_notes_notice").show();
} else {
$("#new_learning_notes_notice").hide();
}
if(check){
subject_description_editor.sync();
subject_learning_notes_editor.sync();
$("#edit_subject_"+id).submit();
}
}

View File

@ -43,25 +43,24 @@ $(function() {
$(".stud-class-set .news .container .member .people .left ul li").live('click', function(e) {
//$(".stud-class-set .news .container .member .people .left ul li").removeClass("sheet");
//$(this).addClass("sheet");
var $course_id = $(this).attr("data-course-id");
if($(this).attr("data-option") == "teacher") {
$("#setting_teacher_list").show();
$("#setting_student_list").html("");
$.get(
'/courses/'+$course_id+'/members'
)
}
if($(this).attr("data-option") == "allstudent") {
var $course_id = $(this).attr("data-course-id");
$.get(
'/courses/'+$course_id+'/all_student_list'
)
}
if($(this).attr("data-option") == "noclass") {
var $course_id = $(this).attr("data-course-id");
$.get(
'/courses/'+$course_id+'/no_group_student_list'
)
}
if($(this).attr("data-option") == "hasclass") {
var $course_id = $(this).attr("data-course-id");
var $group_id = $(this).attr("data-group-id");
$.get(
'/courses/'+$course_id+'/has_group_student_list?group_id='+$group_id
@ -188,7 +187,7 @@ function submit_new_group_form(id){
if($("#sy_08").length > 0){
window.location.href = "/courses/"+id+"/all_student_list";
} else{
window.location.href = "/courses/"+id+"/members";
$(".stud-class-set .news .container .member .people .left ul li[data-option='allstudent']").click();
}
}
}
@ -280,7 +279,7 @@ function submit_delete_group_form(course_id, group_id){
if($("#sy_08").length > 0){
window.location.href = "/courses/"+course_id+"/all_student_list";
} else{
$(".stud-class-set .news .container .member .people .left ul li[data-option='teacher']").click();
$(".stud-class-set .news .container .member .people .left ul li[data-option='allstudent']").click();
}
}
});
@ -398,7 +397,7 @@ $.fn.peSlider = function(settings){
input.next().next().html("未评分");
input.next().next().show();
} else{
input.css("color", "#000");
input.css("color", "#29bd8b");
input.next().next().hide();
}
slider
@ -410,7 +409,7 @@ $.fn.peSlider = function(settings){
input.next().next().html("未评分");
input.next().next().show();
} else {
input.css("color", "#000");
input.css("color", "#29bd8b");
input.next().next().hide();
}
input.val(ui.value);
@ -438,7 +437,7 @@ $.fn.peSlider = function(settings){
input.next().next().html("未评分");
input.next().next().show();
} else {
input.css("color", "#000");
input.css("color", "#29bd8b");
input.next().next().hide();
}
slider.slider('value', inVal);
@ -453,7 +452,7 @@ $.fn.peSlider = function(settings){
input.next().next().html("未评分");
input.next().next().show();
} else {
input.css("color", "#000");
input.css("color", "#29bd8b");
input.next().next().hide();
}
slider.slider('value', inVal);
@ -470,7 +469,7 @@ $.fn.peSlider = function(settings){
input.next().next().html("未评分");
input.next().next().show();
} else {
input.css("color", "#000");
input.css("color", "#29bd8b");
input.next().next().hide();
}
});

View File

@ -35,7 +35,6 @@ a.edu-txt-w100,.edu-txt-w100{ width:100px; display: inline-block;}
.edu-w245{ width: 245px; }
a.edu-btn{display: inline-block;border:none; padding:0 12px;color: #666!important;border:1px solid #ccc; text-align:center;font-size: 14px; height: 29px;line-height: 29px; border-radius:3px; font-weight: bold;letter-spacing:1px;}
a:hover.edu-btn{ border:1px solid #FF7500; color: #FF7500!important;}
.edu-cir-grey{ display: inline-block; padding:0px 5px; color:#666; background:#eaeaea; text-align: center; border-radius:15px; font-size:12px; line-height:20px!important;}
/*a.edu-filter-cir-grey{display: inline-block; padding:0px 15px; color:#666; border:1px solid #ddd; text-align: center; border-radius:3px; font-size:12px; height:25px; line-height:25px;}
a:hover.edu-filter-cir-grey,a.edu-filter-cir-grey.active{ border:1px solid #3498db; color:#3498db; }*/

View File

@ -192,6 +192,7 @@ em{font-style:normal;}
.stud-class-set .news .container .member .people .left li .p1{position:relative;}
.stud-class-set .news .container .member .people .left li .p1 span{max-width:115px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;display:inline-block;float:left}
.edu-break-out{max-width:115px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;display:inline-block;float:left}
.edu-break-outshort{max-width:105px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;display:inline-block;float:left}
.stud-class-set .news .container .member .people .left li .p1 em{margin-left:10px;font-size:12px;background:#e9e9e9;border-radius:8px;padding:2px 5px;}
.stud-class-set .news .container .member .people .left li .p1 i{color:#ddd;cursor: pointer;position:absolute;right:10px;top:17px;}
.stud-class-set .news .container .member .people .left li .p1 i:hover{color:#FF7500;}

View File

@ -1,5 +1,5 @@
@charset "utf-8";
body{font-size:14px; line-height:2.0;}
body{font-size:14px; line-height:2.0;background:#ffffff;}
html{height:100%;}
.newContainer{ min-height:100%; height: auto !important; height: 100%; /*IE6不识别min-height*/position: relative;}
.newMain{ margin: 0 auto; padding-bottom: 155px; }
@ -12,7 +12,7 @@ div,img,tr,td,table{ border:0;}
table,tr,td{border:0;}
ol,ul,li{ list-style-type:none}
a:link,a:visited{text-decoration:none;color:#898989; }
a:hover {color:#29bd8b;}
a:hover {color:#FF7500;}
input,textarea,select{ background: #fff; border:1px solid #eee; color:#666;}
textarea{resize: none;}
/*侧滚动条*/
@ -38,6 +38,7 @@ textarea{resize: none;}
.none{display: none}
/*通用文字功能样式*/
.font-bd{ font-weight: bold;}
.color-red-light{color: #F00!important;}
.color-red{ color:#d2322d!important;}
.u-color-light-red{color: #FF6666}
.color-black{color:#333!important;}
@ -60,11 +61,12 @@ a.color-orange05:hover,i.color-orange05:hover{color:#ff7500!important;}
a.color-grey:hover{color: #FF7500!important;}/*a标签移入变橙色*/
.color-dark-grey{color:#666!important;}
.color-grey3{color:#333!important;}
a.color-grey3:hover{color: #ff7500!important;}
.u-color-light-grey{color: #CCCCCC}
.color-light-grey-C{color: #CCCCCC!important;}
.color-light-grey-E{color: #EEEEEE}
.color-grey-bf{color:#bfbfbf!important;}
.color-grey-bc{color:#bcbcbc;}
.color-grey-b{color:#bbbbbb!important;}
.-text-danger{ color:#FF6545 }
.color_white{ color:#fff!important;}
@ -96,7 +98,7 @@ a:hover.link-color-grey03{color:#3498db!important;}
.font-28{ font-size: 28px!important;}
.font-30{ font-size: 30px!important;}
/*通用内外边距*/
.mt-10{ margin-top:-10px;}.mt2{ margin-top:2px;}.mt3{ margin-top:3px;}.mt5{ margin-top:5px;}.mt6{ margin-top:6px;}.mt7{ margin-top:7px;}.mt8{ margin-top:8px;}.mt10{ margin-top:10px;}.mt12{ margin-top:12px;}.mt15{ margin-top:15px;}.mt20{ margin-top:20px;}.mt25{ margin-top:25px;}.mt30{ margin-top:30px;}.mt50{ margin-top:50px;}
.mt-10{ margin-top:-10px;}.mt2{ margin-top:2px;}.mt3{ margin-top:3px;}.mt5{ margin-top:5px;}.mt6{ margin-top:6px;}.mt7{ margin-top:7px;}.mt8{ margin-top:8px;}.mt10{ margin-top:10px;}.mt12{ margin-top:12px;}.mt15{ margin-top:15px;}.mt20{ margin-top:20px;}.mt25{ margin-top:25px;}.mt30{ margin-top:30px;}.mt50{ margin-top:50px;}.mt95{ margin-top:95px;}
.mb5{ margin-bottom: 5px;}.mb10{ margin-bottom: 10px;}.mb15{ margin-bottom: 15px;}.mb20{ margin-bottom: 20px;}.mb25{ margin-bottom: 25px;}.mb30{ margin-bottom: 30px;}.mb40{ margin-bottom: 40px;}.mb50{ margin-bottom: 50px;}
.ml-3{ margin-left: -3px;}.ml5{ margin-left: 5px;}.ml6{ margin-left: 6px;}.ml10{ margin-left: 10px;}.ml15{ margin-left: 15px;}.ml20{ margin-left: 20px;}.ml25{ margin-left: 25px;}.ml30{ margin-left: 30px;}.ml33{ margin-left: 33px;}.ml35{ margin-left:35px;}.ml40{margin-left:40px;}.ml42{margin-left:42px;}.ml50{ margin-left: 50px;}.ml75{ margin-left: 75px;}.ml95{ margin-left: 95px;}.ml115{margin-left: 115px}.ml230{ margin-left: 230px;}
.mr3{margin-right: 3px}.mr5{ margin-right: 5px;}.mr10{ margin-right: 10px;}.mr15{ margin-right: 15px;}.mr18{ margin-right: 18px;}.mr20{ margin-right: 20px;}.mr25{ margin-right: 25px;}.mr30{ margin-right:30px;}.mr40{margin-right:40px;}.mr50{ margin-right: 50px;}.mr60{ margin-right:60px;}
@ -250,6 +252,7 @@ a:hover.edu-btn{ border:1px solid #5faee3; color: #5faee3!important;}
.edu-cir-grey{ display: inline-block; padding:0px 5px; color:#666; background:#f3f3f3; text-align: center; border-radius:15px; font-size:12px; line-height:20px!important;}
.edu-cir-grey1{ display: inline-block; padding:0px 5px; margin-left: 5px; color:#666; background:#ccc; text-align: center; border-radius:15px; font-size:12px; line-height:20px!important;}
.edu-cir-grey-q{ display: inline-block; padding:0px 7px; color:#666; background:#f3f3f3; text-align: center; border-radius:15px; font-size:12px; line-height:20px!important;}
.edu-cir-orange{ display: inline-block; padding:0px 7px; color:#fff; background:#FF7500; text-align: center; border-radius:15px; font-size:12px; line-height:20px!important;}
/*a.edu-filter-cir-grey{display: inline-block; padding:0px 15px; color:#666; border:1px solid #ddd; text-align: center; border-radius:3px; font-size:12px; height:25px; line-height:25px;}
a:hover.edu-filter-cir-grey,a.edu-filter-cir-grey.active{ border:1px solid #3498db; color:#3498db; }*/

View File

@ -11,15 +11,15 @@
/************实训弹窗****************/
.task-popup-warp{ width: 100%; height:100%; background:black; position:fixed;}
.task-popup-box{ position: relative; margin:150px auto; }
.task-popup-box{ position: relative; margin:150px auto 0px; }
.task-box1{ width:428px; height:420px;background:url(/images/task/task-success.png) 0px 0px no-repeat;}
.task-box2{ width:496px; height:373px;background:url(/images/task/task-success02.png) 0px 50px no-repeat;}
.task-box2{ width:496px; height:373px;position: relative;}/*background:url(/images/task/task-success02.png) 0px 50px no-repeat;*/
a.task-popup-close{ display: block; background:url(/images/task/task-close.png) 0px 0px no-repeat; width: 31px; height: 31px; position:absolute; right:5px; top:100px;}
a:hover.task-popup-close{background:url(/images/task/task-close.png) -40px 0px no-repeat; }
.task-su-con{ text-align: center; padding-top:285px;}
.task-su-p{ font-size: 20px; color:#ee4a1f; font-weight: bold;}
a.task-su-btn{display: block;background:url(/images/task/task-su-btn.png) 0px -64px no-repeat; width: 138px; height: 57px;color:#ee4a1f; line-height: 50px; text-align: center; font-size: 16px; margin:20px auto;}
a:hover.task-su-btn{background:url(/images/task/task-su-btn.png) 0px 0px no-repeat; }
a.task-su-btn{display: block;background:url(/images/task/task-su-btn-jie.png) 0px -64px no-repeat; width: 138px; height: 53px;color:#ee4a1f; line-height: 50px; text-align: center; font-size: 16px; margin:20px auto;}
a:hover.task-su-btn{background:url(/images/task/task-su-btn-jie.png) 0px 0px no-repeat;height: 53px;}
a.task-su-btn-white{ display: inline-block; padding:8px 25px; border:1px solid #fff; color:#fff; text-align: center; border-radius:5px; font-size:14px;}
a:hover.task-su-btn-white{ color: #ee4a1f; border:1px solid #ee4a1f; }

View File

@ -4,7 +4,7 @@
.active-class .search .open{padding-top:6px;}
.active-class .search b{cursor:pointer;}
.active-class .search span input{border:none;outline:none;padding-right:80px;display:none;}
.active-class .content .sub-con{width:23.7%;background:#fff;margin: 0 1.5% 1.5% 0px;box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15);}
.active-class .content .sub-con{width:23.69%;border:1px solid #eee;background:#fff;margin: 0 1.5% 1.5% 0px;box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15);}
.active-class .content .sub-con:nth-child(4n+0){margin:0 0 1.5% 0;}
.active-class .content .sub-con:hover{box-shadow: 0 5px 15px 0 rgba(0, 0, 0, 0.15);cursor: pointer;-webkit-animation: bounce-down 1s linear 1;animation: bounce-down 1s linear 1;}
.active-class .content .sub-con .top{height:154px;}

View File

@ -88,7 +88,7 @@ textarea.muban_textarea{ width: 87%;border:1px solid #ddd; background:#fff; colo
.newupload_textarea{ width: 316px; padding:5px; border:1px solid #c8c8c8;}
#muban_popup_box label.newupload_innnerlabel{ width: auto; text-align: left;}
/*新版导入资源弹框20161107byLB*/
.newupload_conbox{ background: #fff; padding:15px; padding-bottom: 0;}
.newupload_conbox{ background: #fff;padding-bottom: 0;}
.newupload_navbox{border-bottom:1px solid #dbdbdb;}
.newupload_nav { height: 30px; line-height: 30px; background: #e7e7e7; }
.newupload_nav li {float:left; padding:0 15px; display: block; text-align:center; }

View File

@ -184,20 +184,21 @@ a.postTypeGrey:hover {color:#3b94d6;}
.homepagePostBrief {width:965px; margin:0px auto; position:relative;}
.eduHomepagePostBrief {width:1200px; margin:0px auto; position:relative;}
.homepagePostPortrait {float:left; width:50px;}
.homepagePostPortrait img{float: left;margin-top: 5px}
.homepagePostDes {float:left; width:890px; margin-left:15px; }
.eduHomepagePostDes {float:left; width:92%; margin-left:15px; }
.homepagePostTo {font-size:14px; color:#484848; margin-bottom:5px; margin-right: 20px;}
.homepagePostTitle {font-size:14px; color:#484848; margin-bottom:5px; font-weight:bold;}
.homepagePostSubmitContainer {height:25px; margin-top: 8px; margin-bottom: 5px;}
.homepagePostSubmit {font-size:14px; color:#888888; border:1px solid #dddddd; background-color:#eaeaea; float:left; margin-right:20px; padding:0px 10px;}
.homepagePostSubmit:hover {background-color:#d8d8d8;}
.homepagePostTo {font-size:14px; color:#bbbbbb; margin-bottom:12px; margin-right: 20px;}
.homepagePostTitle {font-size:16px; color:#484848;}
.homepagePostSubmitContainer {height:25px; margin-top: 8px; margin-bottom: 25px;}
.homepagePostSubmit {font-size:14px; color:#fff!important; border:1px solid #FF7500; background-color:#FF7500; float:left; margin-right:15px; padding:0px 10px;}
/*.homepagePostSubmit:hover {background-color:#d8d8d8;}*/
.homepagePostIntro {font-size:14px; color:#484848;overflow:hidden;}
.homepagePostIntro ol li{list-style-type: decimal;margin-left: 40px;}
.homepagePostIntro ul li{list-style-type: disc;margin-left: 40px;}
.homepagePostIntro td,.homepagePostIntro tr {border: 1px solid; border-color: inherit;}
.homepagePostIntro a{color: #136ec2;}
.homepagePostIntro p,.homepagePostIntro div,.homepagePostIntro em, .homepagePostIntro span{text-align: justify; text-justify:inter-ideograph; word-break: normal !important; word-wrap: break-word !important;}
.homepagePostDeadline {font-size:12px; color:#888888; float:left; margin-top: 2px;}
.homepagePostDeadline {font-size:12px; color:#333; float:left; margin-top: 2px;}
.homepagePostDate {font-size:12px; color:#888888;margin-bottom: 5px;}
.homepagePostReply {width:965px; margin:0px auto; background-color:#f1f1f1; margin-top:10px;}
.eduHomepagePostReply {width:1200px; margin:0px auto; background-color:#f1f1f1; margin-top:10px;}
@ -533,4 +534,10 @@ a.user_editinfo{border-top:1px solid #e5e5e5; height:30px; line-height:30px; tex
.homepageClickBackground{ background-color:#3b94d6; flex:1; text-align: center }
.flex-cell_homepage:hover{ background-color:#3b94d6;}
.feedback_error p{display: inline;}
.feedback_error p{display: inline;}
.activities_btn{border: 1px solid #FF7500;}
.activities_btn li{flex: 1;height: 50px;line-height: 50px;float: left;text-align: center;border-right: 1px solid #FF7500;}
.activities_btn li:last-child{border: none;}
.activities_btn li:hover{color:#fff!important;background: #FF7500;}
.activities_btn li:hover a{color: #fff!important;}
.activities_btn li:hover .edu-cir-orange{background: #fff;color: #FF7500}

View File

@ -424,4 +424,7 @@ html>body #ajax-indicator-base { position: fixed; }
text-align:center;border-radius:4px;padding:0 10px;border:1px solid #000;}
.data-tip-top:after,.data-tip-top:before{position: absolute;content:'';width:0;height:0;left: 45%;bottom:-10px;border-left: 5px solid transparent;
border-right: 5px solid transparent;border-top: 10px solid #000;}
.data-tip-top:before{bottom:-11px;}
.data-tip-top:before{bottom:-11px;}
/*选择题tab切换*/
.nav_option li{overflow: hidden;width: 110px; text-align: center;cursor: pointer;height: 38px;line-height: 38px;border-top-right-radius: 5px;border-top-left-radius: 5px;border:1px solid #e2e2e2;border-bottom: 0px;color: #FF7500;border-right: none;}
.nav_option li:last-child{border-right: 1px solid #e2e2e2;}