diff --git a/app/controllers/homework_common_controller.rb b/app/controllers/homework_common_controller.rb
index 9f754a0fc..3532a9e4c 100644
--- a/app/controllers/homework_common_controller.rb
+++ b/app/controllers/homework_common_controller.rb
@@ -1,378 +1,380 @@
-class HomeworkCommonController < ApplicationController
- require 'net/http'
- require 'json'
- require "base64"
- layout "base_courses"
-
- include StudentWorkHelper
- before_filter :find_course, :only => [:index,:new,:create]
- before_filter :find_homework, :only => [:edit,:update,:alert_anonymous_comment,:start_anonymous_comment,:stop_anonymous_comment,:destroy,:start_evaluation_set,:set_evaluation_attr,:score_rule_set,:alert_forbidden_anonymous_comment,:alert_open_student_works,:open_student_works]
- before_filter :teacher_of_course, :only => [:new, :create, :edit, :update, :destroy, :start_anonymous_comment, :stop_anonymous_comment, :alert_anonymous_comment,:start_evaluation_set,:set_evaluation_attr,:score_rule_set,:alert_forbidden_anonymous_comment,:alert_open_student_works,:open_student_works]
- before_filter :member_of_course, :only => [:index]
-
- def index
- @new_homework = HomeworkCommon.new
- @new_homework.homework_detail_manual = HomeworkDetailManual.new
- @new_homework.course = @course
- @page = params[:page] ? params[:page].to_i + 1 : 0
- @is_teacher = User.current.logged? && (User.current.admin? || User.current.allowed_to?(:as_teacher,@course))
- if @is_teacher
- @homeworks = @course.homework_commons.order("updated_at desc").limit(10).offset(@page * 10)
- else
- @homeworks = @course.homework_commons.where("publish_time <= '#{Date.today}'").order("updated_at desc").limit(10).offset(@page * 10)
- end
- @is_student = User.current.logged? && (User.current.admin? || (User.current.member_of_course?(@course) && !@is_teacher))
- @is_new = params[:is_new]
-
- #设置at已读
- @homeworks.each do |homework|
- homework.journals_for_messages.each do |j|
- User.current.at_messages.unviewed('JournalsForMessage', j.id).each {|x| x.viewed!}
- end
- end
-
- respond_to do |format|
- format.js
- format.html
- end
- end
-
- #新建作业,在个人作业列表创建作业
- def new
- render_404
- end
-
- #新建作业,在个人作业列表创建作业
- def create
- redirect_to user_homeworks_user_path(User.current.id)
- end
-
- def edit
- @user = User.current
- @is_in_course = params[:is_in_course].to_i
- @course_activity = params[:course_activity].to_i
- respond_to do |format|
- format.html{render :layout => 'new_base_user'}
- end
- end
-
- def update
- if params[:homework_common]
- @homework.name = params[:homework_common][:name]
- @homework.description = params[:homework_common][:description]
- if params[:homework_common][:publish_time] == ""
- @homework.publish_time = Date.today
- else
- @homework.publish_time = params[:homework_common][:publish_time]
- end
- @homework.end_time = params[:homework_common][:end_time] || Time.now
- @homework.course_id = params[:course_id]
- @homework.anonymous_comment = params[:homework_common][:anonymous_comment] ? params[:homework_common][:anonymous_comment] : 0
-
- homework_detail_manual = @homework.homework_detail_manual || HomeworkDetailManual.new
- if @homework.publish_time <= Date.today && homework_detail_manual.comment_status == 0
- homework_detail_manual.comment_status = 1
- end
- homework_detail_manual.evaluation_start = params[:evaluation_start].blank? ? @homework.end_time + 7 : params[:evaluation_start]
- homework_detail_manual.evaluation_end = params[:evaluation_end].blank? ? homework_detail_manual.evaluation_start + 7 : params[:evaluation_end]
-
- @homework.save_attachments(params[:attachments])
- render_attachment_warning_if_needed(@homework)
-
- #编程作业相关属性
- if @homework.homework_type == 2
- @homework.homework_detail_programing ||= HomeworkDetailPrograming.new
- @homework_detail_programing = @homework.homework_detail_programing
- @homework_detail_programing.language = params[:language_type].to_i
-
- @homework.homework_tests.delete_all
- inputs = params[:program][:input]
- if Array === inputs
- inputs.each_with_index do |val, i|
- @homework.homework_tests << HomeworkTest.new(
- input: val,
- output: params[:program][:output][i]
- )
- end
- end
- end
-
- #分组作业
- if @homework.homework_type == 3
- @homework.homework_detail_group ||= HomeworkDetailGroup.new
- @homework_detail_group = @homework.homework_detail_group
- @homework_detail_group.min_num = params[:min_num].to_i
- @homework_detail_group.max_num = params[:max_num].to_i
- @homework_detail_group.base_on_project = params[:base_on_project].to_i
- end
-
- if @homework.save
- @homework_detail_manual.save if @homework_detail_manual
- @homework_detail_programing.save if @homework_detail_programing
- @homework_detail_group.save if @homework_detail_group
-
- if params[:is_in_course] == "1"
- redirect_to homework_common_index_path(:course => @course.id)
- elsif params[:is_in_course] == "0"
- redirect_to user_homeworks_user_path(User.current.id)
- elsif params[:is_in_course] == "-1" && params[:course_activity] == "0"
- redirect_to user_path(User.current.id)
- elsif params[:is_in_course] == "-1" && params[:course_activity] == "1"
- redirect_to course_path(@course.id)
- end
- end
- end
- end
-
- def destroy
- if @homework.destroy
- respond_to do |format|
- format.html {
- if params[:is_in_course] == "1"
- redirect_to homework_common_index_path(:course => @course.id)
- elsif params[:is_in_course] == "0"
- redirect_to user_homeworks_user_path(User.current.id)
- elsif params[:is_in_course] == "-1" && params[:course_activity] == "0"
- redirect_to user_path(User.current.id)
- elsif params[:is_in_course] == "-1" && params[:course_activity] == "1"
- redirect_to course_path(@course.id)
- end
- }
- end
- end
- end
-
- #开启匿评
- #statue 1:启动成功,2:启动失败,作业总数大于等于2份时才能启动匿评,3:已开启匿评,请务重复开启,4:没有开启匿评的权限
- def start_anonymous_comment
- @statue = 4 and return unless User.current.admin? || User.current.allowed_to?(:as_teacher,@course)
- @statue = 5 and return if Time.parse(@homework.end_time.to_s).strftime("%Y-%m-%d") >= Time.now.strftime("%Y-%m-%d")
- if @homework_detail_manual.comment_status == 1
- student_works = @homework.student_works
- if student_works && student_works.size >= 2
- if @homework.homework_type == 3
- student_work_projects = @homework.student_work_projects.where("student_work_id is not null")
- student_work_projects.each_with_index do |pro_work, pro_index|
- n = @homework_detail_manual.evaluation_num
- n = n < student_works.size ? n : student_works.size - 1
- work_index = -1
- student_works.each_with_index do |stu_work, stu_index|
- if stu_work.id.to_i == pro_work.student_work_id.to_i
- work_index = stu_index
- end
- end
- assigned_homeworks = get_assigned_homeworks(student_works, n, work_index)
- assigned_homeworks.each do |h|
- student_works_evaluation_distributions = StudentWorksEvaluationDistribution.new(user_id: pro_work.user_id, student_work_id: h.id)
- student_works_evaluation_distributions.save
- end
- end
- else
- student_works.each_with_index do |work, index|
- user = work.user
- n = @homework_detail_manual.evaluation_num
- n = n < student_works.size ? n : student_works.size - 1
- assigned_homeworks = get_assigned_homeworks(student_works, n, index)
- assigned_homeworks.each do |h|
- student_works_evaluation_distributions = StudentWorksEvaluationDistribution.new(user_id: user.id, student_work_id: h.id)
- student_works_evaluation_distributions.save
- end
- end
- end
- @homework_detail_manual.update_column('comment_status', 2)
- @homework_detail_manual.update_column('evaluation_start', Date.today)
- @statue = 1
- # 匿评开启消息邮件通知
- send_message_anonymous_comment(@homework, m_status = 2)
- Mailer.send_mail_anonymous_comment_open(@homework).deliver
- else
- @statue = 2
-
- end
- else
- @statue = 3
- end
- @user_activity_id = params[:user_activity_id].to_i
- @is_in_course = params[:is_in_course].to_i
- @course_activity = params[:course_activity].to_i
- end
-
- #关闭匿评
- def stop_anonymous_comment
- @homework_detail_manual.update_column('comment_status', 3)
- @homework_detail_manual.update_column('evaluation_end', Date.today)
- #计算缺评扣分
- work_ids = "(" + @homework.student_works.map(&:id).join(",") + ")"
- @homework.student_works.each do |student_work|
- absence_penalty_count = student_work.user.student_works_evaluation_distributions.where("student_work_id IN #{work_ids}").count - student_work.user.student_works_scores.where("student_work_id IN #{work_ids}").count
- student_work.absence_penalty = absence_penalty_count > 0 ? absence_penalty_count * @homework_detail_manual.absence_penalty : 0
- student_work.save
- end
- # 匿评关闭消息邮件通知
- send_message_anonymous_comment(@homework, m_status = 3)
- Mailer.send_mail_anonymous_comment_close(@homework).deliver
- @user_activity_id = params[:user_activity_id].to_i
- @is_in_course = params[:is_in_course].to_i
- @course_activity = params[:course_activity].to_i
- respond_to do |format|
- format.js
- end
- end
-
- # 开启/关闭匿评消息通知
- def send_message_anonymous_comment(homework, m_status )
- # status 标记匿评状态 1为关闭 0为开启
- course = homework.course
- course.members.each do |m|
- @homework.course_messages << CourseMessage.new(:user_id => m.user_id, :course_id => course.id, :viewed => false, :status => m_status)
- end
- end
- #提示
- def alert_anonymous_comment
- @cur_size = 0
- @totle_size = 0
- if @homework_detail_manual.comment_status == 1
- @totle_size = @course.student.count
- @cur_size = @homework.student_works.size
- elsif @homework_detail_manual.comment_status == 2
- @homework.student_works.map { |work| @totle_size += work.student_works_evaluation_distributions.count}
- @cur_size = 0
- @homework.student_works.map { |work| @cur_size += work.student_works_scores.where(:reviewer_role => 3).count}
- end
- @percent = format("%.2f",(@cur_size.to_f / ( @totle_size == 0 ? 1 : @totle_size)) * 100)
- @user_activity_id = params[:user_activity_id].to_i
- @is_in_course = params[:is_in_course].to_i
- @course_activity = params[:course_activity].to_i
- respond_to do |format|
- format.js
- end
- end
-
- def alert_forbidden_anonymous_comment
- if params[:user_activity_id]
- @user_activity_id = params[:user_activity_id]
- else
- @user_activity_id = -1
- end
- @is_in_course = params[:is_in_course] if params[:is_in_course]
- @course_activity = params[:course_activity] if params[:course_Activity]
- respond_to do |format|
- format.js
- end
- end
-
- def open_student_works
- if @homework.is_open == 0
- @homework.update_attribute(:is_open, 1)
- else
- @homework.update_attribute(:is_open, 0)
- end
- @user_activity_id = params[:user_activity_id]
- @is_in_course = params[:is_in_course] if params[:is_in_course]
- @course_activity = params[:course_activity] if params[:course_Activity]
- end
-
- def alert_open_student_works
- if params[:user_activity_id]
- @user_activity_id = params[:user_activity_id]
- else
- @user_activity_id = -1
- end
- @is_in_course = params[:is_in_course] if params[:is_in_course]
- @course_activity = params[:course_activity] if params[:course_Activity]
- respond_to do |format|
- format.js
- end
- end
-
- def programing_test
- test = {language:params[:language],src:Base64.encode64(params[:src]),input:[params[:input]],output:[params[:output]]}
- @index = params[:index]
- uri = URI('http://192.168.80.21:8080/api/realtime.json')
- body = test.to_json
- res = Net::HTTP.new(uri.host, uri.port).start do |client|
- request = Net::HTTP::Post.new(uri.path)
- request.body = body
- request["Content-Type"] = "application/json"
- client.request(request)
- end
- result = JSON.parse(res.body)
- @err_msg = result["compile_error_msg"]
- result["results"].each do |re|
- @result = re["status"]
- end
- end
-
- #启动匿评参数设置
- def start_evaluation_set
- if params[:user_activity_id]
- @user_activity_id = params[:user_activity_id]
- else
- @user_activity_id = -1
- end
- @is_in_course = params[:is_in_course]
- @course_activity = params[:course_activity].to_i
- end
-
- #设置匿评参数
- def set_evaluation_attr
- if @homework_detail_manual
- unless params[:evaluation_start].to_s == @homework_detail_manual.evaluation_start.to_s
- @homework_detail_manual.evaluation_start = params[:evaluation_start]
- end
-
- unless @homework_detail_manual.evaluation_end.to_s == params[:evaluation_end].to_s
- @homework_detail_manual.evaluation_end = params[:evaluation_end]
- end
-
- @homework_detail_manual.evaluation_num = params[:evaluation_num]
- @homework_detail_manual.save
- @user_activity_id = params[:user_activity_id].to_i
- @is_in_course = params[:is_in_course].to_i
- @course_activity = params[:course_activity].to_i
- end
- end
-
- #评分设置
- def score_rule_set
- if params[:user_activity_id]
- @user_activity_id = params[:user_activity_id]
- else
- @user_activity_id = -1
- end
- @is_in_course = params[:is_in_course]
- @course_activity = params[:course_activity].to_i
- end
-
- private
- #获取课程
- def find_course
- @course = Course.find params[:course]
- rescue
- render_404
- end
- #获取作业
- def find_homework
- @homework = HomeworkCommon.find params[:id]
- @homework_detail_manual = @homework.homework_detail_manual
- @homework_detail_programing = @homework.homework_detail_programing
- @homework_detail_group = @homework.homework_detail_group
- @course = @homework.course
- rescue
- render_404
- end
- #是不是课程的老师
- def teacher_of_course
- render_403 unless User.current.allowed_to?(:as_teacher,@course) || User.current.admin?
- end
-
- #当前用户是不是课程的成员
- def member_of_course
- render_403 unless @course.is_public==1 || User.current.member_of_course?(@course) || User.current.admin?
- end
-
- def get_assigned_homeworks(student_works, n, index)
- student_works += student_works
- student_works[index + 1 .. index + n]
- end
-end
+class HomeworkCommonController < ApplicationController
+ require 'net/http'
+ require 'json'
+ require "base64"
+ layout "base_courses"
+
+ include StudentWorkHelper
+ before_filter :find_course, :only => [:index,:new,:create]
+ before_filter :find_homework, :only => [:edit,:update,:alert_anonymous_comment,:start_anonymous_comment,:stop_anonymous_comment,:destroy,:start_evaluation_set,:set_evaluation_attr,:score_rule_set,:alert_forbidden_anonymous_comment,:alert_open_student_works,:open_student_works]
+ before_filter :teacher_of_course, :only => [:new, :create, :edit, :update, :destroy, :start_anonymous_comment, :stop_anonymous_comment, :alert_anonymous_comment,:start_evaluation_set,:set_evaluation_attr,:score_rule_set,:alert_forbidden_anonymous_comment,:alert_open_student_works,:open_student_works]
+ before_filter :member_of_course, :only => [:index]
+
+ def index
+ @new_homework = HomeworkCommon.new
+ @new_homework.homework_detail_manual = HomeworkDetailManual.new
+ @new_homework.course = @course
+ @page = params[:page] ? params[:page].to_i + 1 : 0
+ @is_teacher = User.current.logged? && (User.current.admin? || User.current.allowed_to?(:as_teacher,@course))
+ if @is_teacher
+ @homeworks = @course.homework_commons.order("updated_at desc").limit(10).offset(@page * 10)
+ else
+ @homeworks = @course.homework_commons.where("publish_time <= '#{Date.today}'").order("updated_at desc").limit(10).offset(@page * 10)
+ end
+ @is_student = User.current.logged? && (User.current.admin? || (User.current.member_of_course?(@course) && !@is_teacher))
+ @is_new = params[:is_new]
+
+ #设置at已读
+ @homeworks.each do |homework|
+ homework.journals_for_messages.each do |j|
+ User.current.at_messages.unviewed('JournalsForMessage', j.id).each {|x| x.viewed!}
+ end
+ end
+
+ respond_to do |format|
+ format.js
+ format.html
+ end
+ end
+
+ #新建作业,在个人作业列表创建作业
+ def new
+ render_404
+ end
+
+ #新建作业,在个人作业列表创建作业
+ def create
+ redirect_to user_homeworks_user_path(User.current.id)
+ end
+
+ def edit
+ @user = User.current
+ @is_in_course = params[:is_in_course].to_i
+ @course_activity = params[:course_activity].to_i
+ respond_to do |format|
+ format.html{render :layout => 'new_base_user'}
+ end
+ end
+
+ def update
+ if params[:homework_common]
+ @homework.name = params[:homework_common][:name]
+ @homework.description = params[:homework_common][:description]
+ if params[:homework_common][:publish_time] == ""
+ @homework.publish_time = Date.today
+ else
+ @homework.publish_time = params[:homework_common][:publish_time]
+ end
+ @homework.end_time = params[:homework_common][:end_time] || Time.now
+ @homework.course_id = params[:course_id]
+ @homework.anonymous_comment = params[:homework_common][:anonymous_comment] ? params[:homework_common][:anonymous_comment] : 0
+
+ homework_detail_manual = @homework.homework_detail_manual || HomeworkDetailManual.new
+ if @homework.publish_time <= Date.today && homework_detail_manual.comment_status == 0
+ homework_detail_manual.comment_status = 1
+ end
+ eval_start = homework_detail_manual.evaluation_start
+ if eval_start <= @homework.end_time && homework_detail_manual.comment_status <= 1
+ homework_detail_manual.evaluation_start = @homework.end_time + 7
+ homework_detail_manual.evaluation_end = homework_detail_manual.evaluation_start + 7
+ end
+ @homework.save_attachments(params[:attachments])
+ render_attachment_warning_if_needed(@homework)
+
+ #编程作业相关属性
+ if @homework.homework_type == 2
+ @homework.homework_detail_programing ||= HomeworkDetailPrograming.new
+ @homework_detail_programing = @homework.homework_detail_programing
+ @homework_detail_programing.language = params[:language_type].to_i
+
+ @homework.homework_tests.delete_all
+ inputs = params[:program][:input]
+ if Array === inputs
+ inputs.each_with_index do |val, i|
+ @homework.homework_tests << HomeworkTest.new(
+ input: val,
+ output: params[:program][:output][i]
+ )
+ end
+ end
+ end
+
+ #分组作业
+ if @homework.homework_type == 3
+ @homework.homework_detail_group ||= HomeworkDetailGroup.new
+ @homework_detail_group = @homework.homework_detail_group
+ @homework_detail_group.min_num = params[:min_num].to_i
+ @homework_detail_group.max_num = params[:max_num].to_i
+ @homework_detail_group.base_on_project = params[:base_on_project].to_i
+ end
+
+ if @homework.save
+ @homework_detail_manual.save if @homework_detail_manual
+ @homework_detail_programing.save if @homework_detail_programing
+ @homework_detail_group.save if @homework_detail_group
+
+ if params[:is_in_course] == "1"
+ redirect_to homework_common_index_path(:course => @course.id)
+ elsif params[:is_in_course] == "0"
+ redirect_to user_homeworks_user_path(User.current.id)
+ elsif params[:is_in_course] == "-1" && params[:course_activity] == "0"
+ redirect_to user_path(User.current.id)
+ elsif params[:is_in_course] == "-1" && params[:course_activity] == "1"
+ redirect_to course_path(@course.id)
+ end
+ end
+ end
+ end
+
+ def destroy
+ if @homework.destroy
+ respond_to do |format|
+ format.html {
+ if params[:is_in_course] == "1"
+ redirect_to homework_common_index_path(:course => @course.id)
+ elsif params[:is_in_course] == "0"
+ redirect_to user_homeworks_user_path(User.current.id)
+ elsif params[:is_in_course] == "-1" && params[:course_activity] == "0"
+ redirect_to user_path(User.current.id)
+ elsif params[:is_in_course] == "-1" && params[:course_activity] == "1"
+ redirect_to course_path(@course.id)
+ end
+ }
+ end
+ end
+ end
+
+ #开启匿评
+ #statue 1:启动成功,2:启动失败,作业总数大于等于2份时才能启动匿评,3:已开启匿评,请务重复开启,4:没有开启匿评的权限
+ def start_anonymous_comment
+ @statue = 4 and return unless User.current.admin? || User.current.allowed_to?(:as_teacher,@course)
+ @statue = 5 and return if Time.parse(@homework.end_time.to_s).strftime("%Y-%m-%d") >= Time.now.strftime("%Y-%m-%d")
+ if @homework_detail_manual.comment_status == 1
+ student_works = @homework.student_works
+ if student_works && student_works.size >= 2
+ if @homework.homework_type == 3
+ student_work_projects = @homework.student_work_projects.where("student_work_id is not null")
+ student_work_projects.each_with_index do |pro_work, pro_index|
+ n = @homework_detail_manual.evaluation_num
+ n = n < student_works.size ? n : student_works.size - 1
+ work_index = -1
+ student_works.each_with_index do |stu_work, stu_index|
+ if stu_work.id.to_i == pro_work.student_work_id.to_i
+ work_index = stu_index
+ end
+ end
+ assigned_homeworks = get_assigned_homeworks(student_works, n, work_index)
+ assigned_homeworks.each do |h|
+ student_works_evaluation_distributions = StudentWorksEvaluationDistribution.new(user_id: pro_work.user_id, student_work_id: h.id)
+ student_works_evaluation_distributions.save
+ end
+ end
+ else
+ student_works.each_with_index do |work, index|
+ user = work.user
+ n = @homework_detail_manual.evaluation_num
+ n = n < student_works.size ? n : student_works.size - 1
+ assigned_homeworks = get_assigned_homeworks(student_works, n, index)
+ assigned_homeworks.each do |h|
+ student_works_evaluation_distributions = StudentWorksEvaluationDistribution.new(user_id: user.id, student_work_id: h.id)
+ student_works_evaluation_distributions.save
+ end
+ end
+ end
+ @homework_detail_manual.update_column('comment_status', 2)
+ @homework_detail_manual.update_column('evaluation_start', Date.today)
+ @statue = 1
+ # 匿评开启消息邮件通知
+ send_message_anonymous_comment(@homework, m_status = 2)
+ Mailer.send_mail_anonymous_comment_open(@homework).deliver
+ else
+ @statue = 2
+
+ end
+ else
+ @statue = 3
+ end
+ @user_activity_id = params[:user_activity_id].to_i
+ @is_in_course = params[:is_in_course].to_i
+ @course_activity = params[:course_activity].to_i
+ end
+
+ #关闭匿评
+ def stop_anonymous_comment
+ @homework_detail_manual.update_column('comment_status', 3)
+ @homework_detail_manual.update_column('evaluation_end', Date.today)
+ #计算缺评扣分
+ work_ids = "(" + @homework.student_works.map(&:id).join(",") + ")"
+ @homework.student_works.each do |student_work|
+ absence_penalty_count = student_work.user.student_works_evaluation_distributions.where("student_work_id IN #{work_ids}").count - student_work.user.student_works_scores.where("student_work_id IN #{work_ids}").count
+ student_work.absence_penalty = absence_penalty_count > 0 ? absence_penalty_count * @homework_detail_manual.absence_penalty : 0
+ student_work.save
+ end
+ # 匿评关闭消息邮件通知
+ send_message_anonymous_comment(@homework, m_status = 3)
+ Mailer.send_mail_anonymous_comment_close(@homework).deliver
+ @user_activity_id = params[:user_activity_id].to_i
+ @is_in_course = params[:is_in_course].to_i
+ @course_activity = params[:course_activity].to_i
+ respond_to do |format|
+ format.js
+ end
+ end
+
+ # 开启/关闭匿评消息通知
+ def send_message_anonymous_comment(homework, m_status )
+ # status 标记匿评状态 1为关闭 0为开启
+ course = homework.course
+ course.members.each do |m|
+ @homework.course_messages << CourseMessage.new(:user_id => m.user_id, :course_id => course.id, :viewed => false, :status => m_status)
+ end
+ end
+ #提示
+ def alert_anonymous_comment
+ @cur_size = 0
+ @totle_size = 0
+ if @homework_detail_manual.comment_status == 1
+ @totle_size = @course.student.count
+ @cur_size = @homework.student_works.size
+ elsif @homework_detail_manual.comment_status == 2
+ @homework.student_works.map { |work| @totle_size += work.student_works_evaluation_distributions.count}
+ @cur_size = 0
+ @homework.student_works.map { |work| @cur_size += work.student_works_scores.where(:reviewer_role => 3).count}
+ end
+ @percent = format("%.2f",(@cur_size.to_f / ( @totle_size == 0 ? 1 : @totle_size)) * 100)
+ @user_activity_id = params[:user_activity_id].to_i
+ @is_in_course = params[:is_in_course].to_i
+ @course_activity = params[:course_activity].to_i
+ respond_to do |format|
+ format.js
+ end
+ end
+
+ def alert_forbidden_anonymous_comment
+ if params[:user_activity_id]
+ @user_activity_id = params[:user_activity_id]
+ else
+ @user_activity_id = -1
+ end
+ @is_in_course = params[:is_in_course] if params[:is_in_course]
+ @course_activity = params[:course_activity] if params[:course_Activity]
+ respond_to do |format|
+ format.js
+ end
+ end
+
+ def open_student_works
+ if @homework.is_open == 0
+ @homework.update_attribute(:is_open, 1)
+ else
+ @homework.update_attribute(:is_open, 0)
+ end
+ @user_activity_id = params[:user_activity_id]
+ @is_in_course = params[:is_in_course] if params[:is_in_course]
+ @course_activity = params[:course_activity] if params[:course_Activity]
+ end
+
+ def alert_open_student_works
+ if params[:user_activity_id]
+ @user_activity_id = params[:user_activity_id]
+ else
+ @user_activity_id = -1
+ end
+ @is_in_course = params[:is_in_course] if params[:is_in_course]
+ @course_activity = params[:course_activity] if params[:course_Activity]
+ respond_to do |format|
+ format.js
+ end
+ end
+
+ def programing_test
+ test = {language:params[:language],src:Base64.encode64(params[:src]),input:[params[:input]],output:[params[:output]]}
+ @index = params[:index]
+ uri = URI('http://192.168.80.21:8080/api/realtime.json')
+ body = test.to_json
+ res = Net::HTTP.new(uri.host, uri.port).start do |client|
+ request = Net::HTTP::Post.new(uri.path)
+ request.body = body
+ request["Content-Type"] = "application/json"
+ client.request(request)
+ end
+ result = JSON.parse(res.body)
+ @err_msg = result["compile_error_msg"]
+ result["results"].each do |re|
+ @result = re["status"]
+ end
+ end
+
+ #启动匿评参数设置
+ def start_evaluation_set
+ if params[:user_activity_id]
+ @user_activity_id = params[:user_activity_id]
+ else
+ @user_activity_id = -1
+ end
+ @is_in_course = params[:is_in_course]
+ @course_activity = params[:course_activity].to_i
+ end
+
+ #设置匿评参数
+ def set_evaluation_attr
+ if @homework_detail_manual
+ unless params[:evaluation_start].to_s == @homework_detail_manual.evaluation_start.to_s
+ @homework_detail_manual.evaluation_start = params[:evaluation_start]
+ end
+
+ unless @homework_detail_manual.evaluation_end.to_s == params[:evaluation_end].to_s
+ @homework_detail_manual.evaluation_end = params[:evaluation_end]
+ end
+
+ @homework_detail_manual.evaluation_num = params[:evaluation_num]
+ @homework_detail_manual.save
+ @user_activity_id = params[:user_activity_id].to_i
+ @is_in_course = params[:is_in_course].to_i
+ @course_activity = params[:course_activity].to_i
+ end
+ end
+
+ #评分设置
+ def score_rule_set
+ if params[:user_activity_id]
+ @user_activity_id = params[:user_activity_id]
+ else
+ @user_activity_id = -1
+ end
+ @is_in_course = params[:is_in_course]
+ @course_activity = params[:course_activity].to_i
+ end
+
+ private
+ #获取课程
+ def find_course
+ @course = Course.find params[:course]
+ rescue
+ render_404
+ end
+ #获取作业
+ def find_homework
+ @homework = HomeworkCommon.find params[:id]
+ @homework_detail_manual = @homework.homework_detail_manual
+ @homework_detail_programing = @homework.homework_detail_programing
+ @homework_detail_group = @homework.homework_detail_group
+ @course = @homework.course
+ rescue
+ render_404
+ end
+ #是不是课程的老师
+ def teacher_of_course
+ render_403 unless User.current.allowed_to?(:as_teacher,@course) || User.current.admin?
+ end
+
+ #当前用户是不是课程的成员
+ def member_of_course
+ render_403 unless @course.is_public==1 || User.current.member_of_course?(@course) || User.current.admin?
+ end
+
+ def get_assigned_homeworks(student_works, n, index)
+ student_works += student_works
+ student_works[index + 1 .. index + n]
+ end
+end
diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb
index 1c9a00fa4..adb4eb91e 100644
--- a/app/controllers/users_controller.rb
+++ b/app/controllers/users_controller.rb
@@ -387,12 +387,12 @@ class UsersController < ApplicationController
@homeworks = HomeworkCommon.where("user_id = #{@user.id} and publish_time <= '#{Date.today}'").order("#{@order} #{@b_sort}")
end
@type = params[:type]
- @limit = 15
+ @limit = 25
@is_remote = true
@hw_count = @homeworks.count
@hw_pages = Paginator.new @hw_count, @limit, params['page'] || 1
@offset ||= @hw_pages.offset
- @homeworks = paginateHelper @homeworks,15
+ @homeworks = paginateHelper @homeworks,25
respond_to do |format|
format.js
format.html {render :layout => 'static_base'}
@@ -546,13 +546,13 @@ class UsersController < ApplicationController
end
@type = params[:type]
@property = params[:property]
- @limit = 15
+ @is_import = params[:is_import]
+ @limit = params[:is_import].to_i == 1 ? 15 : 25
@is_remote = true
@hw_count = @homeworks.count
@hw_pages = Paginator.new @hw_count, @limit, params['page'] || 1
@offset ||= @hw_pages.offset
- @homeworks = paginateHelper @homeworks,15
- @is_import = params[:is_import]
+ @homeworks = paginateHelper @homeworks,@limit
respond_to do |format|
format.js
end
@@ -572,6 +572,7 @@ class UsersController < ApplicationController
@r_sort = @b_sort == "desc" ? "asc" : "desc"
@user = User.current
search = params[:name].to_s.strip.downcase
+ type_ids = params[:property] ? "(" + params[:property] + ")" : "(1, 2, 3)"
if(params[:type].blank? || params[:type] == "1") #全部
visible_course = Course.where("is_public = 1 && is_delete = 0")
visible_course_ids = visible_course.empty? ? "(-1)" : "(" + visible_course.map{|course| course.id}.join(",") + ")"
@@ -579,24 +580,40 @@ class UsersController < ApplicationController
all_user_ids = all_homeworks.map{|hw| hw.user_id}
user_str_ids = search_user_by_name all_user_ids, search
user_ids = user_str_ids.empty? ? "(-1)" : "(" + user_str_ids.join(",") + ")"
- @homeworks = HomeworkCommon.where("course_id in #{visible_course_ids} and publish_time <= '#{Date.today}' and (name like '%#{search}%' or user_id in #{user_ids})").order("#{@order} #{@b_sort}")
+ if @order == "course_name"
+ sql = "SELECT homework_commons.* FROM homework_commons INNER JOIN courses ON homework_commons.course_id = courses.id where homework_type in #{type_ids} and course_id in #{visible_course_ids} and publish_time <= '#{Date.today}' and (homework_commons.name like '%#{search}%' or homework_commons.user_id in #{user_ids}) order by CONVERT (courses.name USING gbk) COLLATE gbk_chinese_ci #{@b_sort}"
+ @homeworks = HomeworkCommon.find_by_sql(sql)
+ elsif @order == "user_name"
+ @homeworks = HomeworkCommon.where("course_id in #{visible_course_ids} and publish_time <= '#{Date.today}' and homework_type in #{type_ids} and (name like '%#{search}%' or user_id in #{user_ids})").joins(:user).order("CONVERT (lastname USING gbk) COLLATE gbk_chinese_ci #{@b_sort}, CONVERT (firstname USING gbk) COLLATE gbk_chinese_ci #{@b_sort},login #{@b_sort}")
+ else
+ @homeworks = HomeworkCommon.where("course_id in #{visible_course_ids} and publish_time <= '#{Date.today}' and homework_type in #{type_ids} and (name like '%#{search}%' or user_id in #{user_ids})").order("#{@order} #{@b_sort}")
+ end
elsif params[:type] == "2" #课程资源
- @homeworks = HomeworkCommon.where("user_id = #{@user.id} and publish_time <= '#{Date.today}' and (name like '%#{search}%')").order("#{@order} #{@b_sort}")
+ if @order == "course_name"
+ sql = "SELECT homework_commons.* FROM homework_commons INNER JOIN courses ON homework_commons.course_id = courses.id where homework_commons.user_id = #{@user.id} and homework_type in #{type_ids} and publish_time <= '#{Date.today}' and (homework_commons.name like '%#{search}%') order by CONVERT (courses.name USING gbk) COLLATE gbk_chinese_ci #{@b_sort}"
+ @homeworks = HomeworkCommon.find_by_sql(sql)
+ elsif @order == "user_name"
+ @homeworks = HomeworkCommon.where("user_id = #{@user.id} and publish_time <= '#{Date.today}' and (name like '%#{search}%') and homework_type in #{type_ids}").joins(:user).order("CONVERT (lastname USING gbk) COLLATE gbk_chinese_ci #{@b_sort}, CONVERT (firstname USING gbk) COLLATE gbk_chinese_ci #{@b_sort},login #{@b_sort}")
+ else
+ @homeworks = HomeworkCommon.where("user_id = #{@user.id} and publish_time <= '#{Date.today}' and (name like '%#{search}%') and homework_type in #{type_ids}").order("#{@order} #{@b_sort}")
+ end
end
+=begin
if params[:property] && params[:property] == "1"
- @homeworks = @homeworks.where("homework_type = 1").reorder("#{@order} #{@b_sort}")
+ @homeworks = @homeworks.where("homework_type = 1")
elsif params[:property] && params[:property] == "2"
- @homeworks = @homeworks.where("homework_type = 2").reorder("#{@order} #{@b_sort}")
+ @homeworks = @homeworks.where("homework_type = 2")
elsif params[:property] && params[:property] == "3"
- @homeworks = @homeworks.where("homework_type = 3").reorder("#{@order} #{@b_sort}")
+ @homeworks = @homeworks.where("homework_type = 3")
end
+=end
@type = params[:type]
- @limit = 15
+ @limit = params[:is_import].to_i == 1 ? 15 : 25
@is_remote = true
@hw_count = @homeworks.count
@hw_pages = Paginator.new @hw_count, @limit, params['page'] || 1
@offset ||= @hw_pages.offset
- @homeworks = paginateHelper @homeworks,15
+ @homeworks = paginateHelper @homeworks,@limit
@is_import = params[:is_import]
@property = params[:property]
@search = search
diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb
index d238235ed..cc093ad7a 100644
--- a/app/helpers/application_helper.rb
+++ b/app/helpers/application_helper.rb
@@ -1044,9 +1044,9 @@ module ApplicationHelper
elsif @organization
title << @organization.name
elsif @user
- title << @user.login
+ title << @user.try(:realname)
else
- title << User.current.login
+ title << User.current.try(:realname)
end
if first_page.nil? || first_page.web_title.nil?
title << Setting.app_title unless Setting.app_title == title.last
diff --git a/app/views/blogs/_homepage.html.erb b/app/views/blogs/_homepage.html.erb
index 80ae8c9f4..5dbee59d6 100644
--- a/app/views/blogs/_homepage.html.erb
+++ b/app/views/blogs/_homepage.html.erb
@@ -43,6 +43,8 @@
<%=render :partial =>"users/intro_content", :locals=>{:user_activity_id =>user_activity_id, :content=>activity.content} %>
+
+
diff --git a/app/views/boards/_course_new.html.erb b/app/views/boards/_course_new.html.erb
index 31cdf41eb..3deb04f6c 100644
--- a/app/views/boards/_course_new.html.erb
+++ b/app/views/boards/_course_new.html.erb
@@ -1,7 +1,123 @@
<%= content_for(:header_tags) do %>
- <%= import_ke(enable_at: true, prettify: false) %>
+ <%= import_ke(enable_at: true, prettify: false, init_activity: false) %>
<% end %>
-
+
<%= error_messages_for 'message' %>
@@ -25,7 +141,7 @@
<%= text_area :quote,:quote,:style => 'display:none' %>
<%= hidden_field_tag :asset_id,params[:asset_id],:required => false,:style => 'display:none' %>
- <%= f.kindeditor :content, :editor_id => 'message_content_editor',
+ <%#= f.kindeditor :content, :editor_id => 'message_content_editor',
:owner_id => topic.nil? ? 0: topic.id,
:owner_type => OwnerTypeHelper::MESSAGE,
:width => '100%',
@@ -37,8 +153,11 @@
:maxlength => 5000 },
at_id: topic.id, at_type: topic.class.to_s
%>
+
+
+
@@ -49,11 +168,11 @@
<%if !edit_mode %>
-
确定
+
确定
或
取消
<% else %>
-
确定
+
确定
或
<%= link_to "取消",board_message_url(topic.board, topic.root, :r => (topic.parent_id && topic.id)), :class => "fr mr10 mt3"%>
<% end %>
diff --git a/app/views/boards/_course_show.html.erb b/app/views/boards/_course_show.html.erb
index 16b4fcd3d..d33b75f82 100644
--- a/app/views/boards/_course_show.html.erb
+++ b/app/views/boards/_course_show.html.erb
@@ -25,11 +25,13 @@
课程问答区
+
<% if User.current.logged? %>
<%= labelled_form_for @message, :url =>{:controller=>'messages',:action => 'new', :board_id => @board.id, :is_board => 'true'},
:html => {:nhname=>'form',:multipart => true, :id => 'message-form'} do |f| %>
<%= render :partial => 'course_new', :locals => {:f => f, :topic => @message, :edit_mode => false, :course => @board.course} %>
<% end %>
<% end %>
+
<%= render :partial=> 'course_show_detail',:locals =>{:topics => @topics, :page => 0} %>
diff --git a/app/views/messages/edit.html.erb b/app/views/messages/edit.html.erb
index 89fe71c65..324b1edf1 100644
--- a/app/views/messages/edit.html.erb
+++ b/app/views/messages/edit.html.erb
@@ -12,6 +12,7 @@
<% end %>
<% elsif @message.course %>
+
<%= form_for @message, {
:as => :message,
:url => {:action => 'edit',:is_course=>@is_course,:is_board=>@is_board},
@@ -22,7 +23,7 @@
<%= render :partial => 'boards/course_message_edit',
:locals => {:f => f, :edit_mode => true, :topic => @message, :course => @message.course} %>
<% end %>
-
+
<% elsif @message.board.org_subfield %>
<%= form_for @message, {
:as => :message,
diff --git a/app/views/org_document_comments/_new.html.erb b/app/views/org_document_comments/_new.html.erb
index 9e77d3fa8..f462df2c9 100644
--- a/app/views/org_document_comments/_new.html.erb
+++ b/app/views/org_document_comments/_new.html.erb
@@ -50,6 +50,8 @@
+
+
diff --git a/app/views/org_document_comments/edit.html.erb b/app/views/org_document_comments/edit.html.erb
index ed7413850..3ad388bd2 100644
--- a/app/views/org_document_comments/edit.html.erb
+++ b/app/views/org_document_comments/edit.html.erb
@@ -39,6 +39,8 @@
+
+
diff --git a/app/views/org_document_comments/new.html.erb b/app/views/org_document_comments/new.html.erb
index 2a261bd5f..fea89459b 100644
--- a/app/views/org_document_comments/new.html.erb
+++ b/app/views/org_document_comments/new.html.erb
@@ -46,6 +46,8 @@
+
+
diff --git a/app/views/student_work/_show.html.erb b/app/views/student_work/_show.html.erb
index d66a30718..67c04d71f 100644
--- a/app/views/student_work/_show.html.erb
+++ b/app/views/student_work/_show.html.erb
@@ -59,8 +59,8 @@
内容:
-
- <%= text_format(work.description) if work.description%>
+
+ <%= work.description.html_safe if work.description%>
@@ -105,6 +105,9 @@
+ -->
+
+
@@ -66,7 +73,7 @@
<% end %>
-
确定
+
确定
或
<%= link_to "取消", student_work_index_path(:homework => @homework), :class => "fr mr10 mt3"%>
@@ -96,23 +103,130 @@
}
function popupRegex(){
- if(regexStudentWorkName()&®exStudentWorkDescription())
- {
- if($("#group_member_ids").length > 0) {
- if(regexStudentWorkMember(parseInt($.trim($("#min_num_member").html())),parseInt($.trim($("#max_num_member").html())))) {
- $('#ajax-modal').html("
");
- showModal('ajax-modal', '500px');
- $('#ajax-modal').siblings().remove();
- $('#ajax-modal').parent().css("top","").css("left","").css("border","3px solid #269ac9");
- $('#ajax-modal').parent().addClass("anonymos");
- }
- } else {
+ if($("#group_member_ids").length > 0) {
+ if(regexStudentWorkMember(parseInt($.trim($("#min_num_member").html())),parseInt($.trim($("#max_num_member").html())))) {
$('#ajax-modal').html("
");
showModal('ajax-modal', '500px');
$('#ajax-modal').siblings().remove();
$('#ajax-modal').parent().css("top","").css("left","").css("border","3px solid #269ac9");
$('#ajax-modal').parent().addClass("anonymos");
}
+ } else {
+ $('#ajax-modal').html("
");
+ showModal('ajax-modal', '500px');
+ $('#ajax-modal').siblings().remove();
+ $('#ajax-modal').parent().css("top","").css("left","").css("border","3px solid #269ac9");
+ $('#ajax-modal').parent().addClass("anonymos");
+ }
+ }
+
+ function nh_check_field(params){
+ var result=true;
+ if(!regexStudentWorkName()) {
+ result=false;
+ return result;
+ }
+ if(params.content!=undefined){
+ if(params.content.isEmpty()){
+ result=false;
+ }
+ if(params.content.html()!=params.textarea.html() || params.issubmit==true){
+ params.textarea.html(params.content.html());
+ params.content.sync();
+
+ if(params.content.isEmpty()){
+ params.contentmsg.html('作品描述不能为空');
+ }else{
+ params.contentmsg.html('');
+ }
+ }
}
+ return result;
}
+ function init_homework_form(params){
+ params.form.submit(function(){
+ params.textarea.html(params.editor.html());
+ params.editor.sync();
+ var flag = false;
+ if(params.form.attr('data-remote') != undefined ){
+ flag = true
+ }
+ var is_checked = nh_check_field({
+ issubmit:true,
+ content:params.editor,
+ contentmsg:params.contentmsg,
+ textarea:params.textarea
+ });
+
+ if(is_checked){
+ if(flag){
+ popupRegex();
+ return true;
+ }else{
+ $(this)[0].submit();
+ $("#ajax-indicator").hide();
+ return false;
+ }
+ }
+ return false;
+ });
+ }
+ function init_homework_editor(params){
+ params.textarea.removeAttr('placeholder');
+ var editor = params.kindutil.create(params.textarea, {
+ resizeType : 1,minWidth:"1px",width:"100%",minHeight:"30px",height:"30px",
+ items : ['code','emoticons','fontname',
+ 'forecolor', 'hilitecolor', 'bold', '|', 'justifyleft', 'justifycenter', 'insertorderedlist','insertunorderedlist', '|',
+ 'formatblock', 'fontsize', '|','indent', 'outdent',
+ '|','imagedirectupload','table', 'media', 'preview',"more"
+ ],
+ afterChange:function(){//按键事件
+ var edit = this.edit;
+ var body = edit.doc.body;
+ //paramsHeight = params.kindutil.removeUnit(this.height);
+ edit.iframe.height(150);
+ this.resize(null, Math.max((params.kindutil.IE ? body.scrollHeight : body.offsetHeight) + 33, 150));
+ },
+ afterCreate:function(){
+ //init
+ var edit = this.edit;
+ var body = edit.doc.body;
+ edit.iframe[0].scroll = 'no';
+ body.style.overflowY = 'hidden';
+ //reset height
+ var edit = this.edit;
+ var body = edit.doc.body;
+ edit.html(params.textarea.innerHTML);
+ //paramsHeight = params.kindutil.removeUnit(this.height);
+ edit.iframe.height(150);
+ this.resize(null, Math.max((params.kindutil.IE ? body.scrollHeight : body.offsetHeight) , 150));
+ elocalStorage(editor2,'student_work_<%=@work.id %>');
+ }
+ }).loadPlugin('paste');
+ return editor;
+ }
+ KindEditor.ready(function(K){
+ $("div[nhname='student_work_form']").each(function(){
+ var params = {};
+ params.kindutil = K;
+ params.div_form = $(this);
+ params.form = $("form",params.div_form);
+ if(params.form==undefined || params.form.length==0){
+ return;
+ }
+ params.textarea = $("textarea[nhname='student_work_textarea']",params.div_form);
+ params.contentmsg = $("#student_work_description_textarea");
+ params.submit_btn = $("#new_message_submit_btn");
+ if(params.textarea.data('init') == undefined) {
+ params.editor = init_homework_editor(params);
+ editor2 = params.editor;
+ init_homework_form(params);
+ params.submit_btn.click(function () {
+ params.form.submit();
+ $("#ajax-indicator").hide();
+ });
+ params.textarea.data('init', 1);
+ }
+ });
+ });
\ No newline at end of file
diff --git a/app/views/student_work/index.html.erb b/app/views/student_work/index.html.erb
index 41ec2b61b..8e7d87302 100644
--- a/app/views/student_work/index.html.erb
+++ b/app/views/student_work/index.html.erb
@@ -172,7 +172,7 @@
<% if @homework.homework_detail_manual && @homework.homework_detail_manual.comment_status < 2 %>
提交截止时间:<%= @homework.end_time %> 23:59
- <% elsif @homework.homework_detail_manual && @homework.homework_detail_manual.comment_status >= 2 %>
+ <% elsif @homework.homework_detail_manual && @homework.homework_detail_manual.comment_status >= 2 && @homework.anonymous_comment == 0 %>
匿评截止时间:<%= @homework.homework_detail_manual.evaluation_end %> 23:59
<% end %>
<% if @homework.homework_detail_manual.comment_status == 0 %>
diff --git a/app/views/student_work/new.html.erb b/app/views/student_work/new.html.erb
index 5d2b134a8..c43482299 100644
--- a/app/views/student_work/new.html.erb
+++ b/app/views/student_work/new.html.erb
@@ -1,4 +1,9 @@
+<% content_for :header_tags do %>
+ <%= import_ke(enable_at: true, prettify: false, init_activity: false) %>
+ <%= javascript_include_tag 'homework','baiduTemplate' %>
+<% end %>
+
-
+
<%= form_for(@student_work,
:html => { :multipart => true },
:url => {:controller => 'student_work',
@@ -127,18 +242,21 @@
<%=hidden_field_tag 'group_member_ids', params[:group_member_ids], :value=>User.current.id %>
<% end %>
- <%= f.text_field "name", :required => true, :size => 60, :class => "InputBox W700", :maxlength => 200, :placeholder => "请输入作品名称", :onkeyup => "regexStudentWorkName();" %>
+ <%= f.text_field "name", :required => true, :size => 60, :class => "InputBox W700", :maxlength => 200, :placeholder => "请输入作品名称",:value=>"#{@homework.name}的作品提交", :onkeyup => "regexStudentWorkName();" %>
- <%= f.text_area "description", :class => "InputBox W700 H150", :placeholder => "请输入作品描述", :onkeyup => "regexStudentWorkDescription();"%>
-
+ -->
+
+
@@ -167,9 +285,9 @@
-->
-
提交
+
提交
或
- <%= link_to "取消", delete_work_student_work_index_path(:homework =>@homework.id), :class => "fr mr10 mt3"%>
+ <%= link_to "取消", delete_work_student_work_index_path(:homework =>@homework.id),:id => 'new_message_cancel_btn', :class => "fr mr10 mt3"%>
<% end%>
diff --git a/app/views/student_work/show.js.erb b/app/views/student_work/show.js.erb
index 31180ccb0..135da3c0d 100644
--- a/app/views/student_work/show.js.erb
+++ b/app/views/student_work/show.js.erb
@@ -1,36 +1,36 @@
-if($("#about_hwork_<%= @work.id%>").children().length > 0){
- $("#about_hwork_<%= @work.id%>").html("");
-}
-else{
- <% if @homework.homework_type == 2%>
- $("#about_hwork_<%= @work.id%>").html("<%= escape_javascript(render :partial => 'programing_work_show',:locals => {:work =>@work,:score =>@score,:student_work_scores => @student_work_scores}) %>");
-
- var program_name = "text/x-csrc";
- var language = <%= @homework.language %>;
- if (language == 1) {
- program_name = 'text/x-csrc';
- } else if(language==2){
- program_name = 'text/x-c++src';
- }else if(language==3){
- program_name = 'text/x-cython';
- } else if(language==4){
- program_name = 'text/x-java';
- }
-
- var editor = CodeMirror(document.getElementById("work-code_<%= @work.id%>"), {
- mode: {name: program_name,
- version: 2,
- singleLineStringErrors: false},
- lineNumbers: true,
- indentUnit: 2,
- matchBrackets: true,
- readOnly: true,
- value: $("#work-src_<%= @work.id%>").text()
- }
- );
-
- <% else%>
- $("#about_hwork_<%= @work.id%>").html("<%= escape_javascript(render :partial => 'show',:locals => {:work =>@work,:score =>@score,:student_work_scores => @student_work_scores}) %>");
- <% end%>
- $('#score_<%= @work.id%>').peSlider({range: 'min'});
+if($("#about_hwork_<%= @work.id%>").children().length > 0){
+ $("#about_hwork_<%= @work.id%>").html("");
+}
+else{
+ <% if @homework.homework_type == 2%>
+ $("#about_hwork_<%= @work.id%>").html("<%= escape_javascript(render :partial => 'programing_work_show',:locals => {:work =>@work,:score =>@score,:student_work_scores => @student_work_scores}) %>");
+
+ var program_name = "text/x-csrc";
+ var language = <%= @homework.language %>;
+ if (language == 1) {
+ program_name = 'text/x-csrc';
+ } else if(language==2){
+ program_name = 'text/x-c++src';
+ }else if(language==3){
+ program_name = 'text/x-cython';
+ } else if(language==4){
+ program_name = 'text/x-java';
+ }
+
+ var editor = CodeMirror(document.getElementById("work-code_<%= @work.id%>"), {
+ mode: {name: program_name,
+ version: 2,
+ singleLineStringErrors: false},
+ lineNumbers: true,
+ indentUnit: 2,
+ matchBrackets: true,
+ readOnly: true,
+ value: $("#work-src_<%= @work.id%>").text()
+ }
+ );
+
+ <% else%>
+ $("#about_hwork_<%= @work.id%>").html("<%= escape_javascript(render :partial => 'show',:locals => {:work =>@work,:score =>@score,:student_work_scores => @student_work_scores}) %>");
+ <% end%>
+ $('#score_<%= @work.id%>').peSlider({range: 'min'});
}
\ No newline at end of file
diff --git a/app/views/users/_homework_detail_information.html.erb b/app/views/users/_homework_detail_information.html.erb
index 07328e696..1829fa61c 100644
--- a/app/views/users/_homework_detail_information.html.erb
+++ b/app/views/users/_homework_detail_information.html.erb
@@ -1,7 +1,17 @@
题目信息
<% if homework.nil? %>
-
请先在左侧选择作业
+
本题库遵循创作共用许可证
+
+教师给学生出题本质上是一种创作行为,题目的作者通常为此付出大量时间和精力。好的题目不仅能加深学生对知识点的理解,还能激发学生兴趣,提升学习效率。为此,本网站的题库许可证基于创作共用许可证( Creative Commons License )建立,其核心条款包括:
+
+1. 署名:必须提到原作者。
+
+2. 非商业用途:不得用于盈利性目的。
+
+3. 相同方式共享:允许修改原作品,但必须使用相同的许可证发布。
+
+对此许可证的支持或反对,请在网站中留言,我们不断完善,谢谢!
<% else %>
标题:<%=homework.name %>
来源:<%=homework.course.name %>
diff --git a/app/views/users/_homework_repository_detail.html.erb b/app/views/users/_homework_repository_detail.html.erb
index 7cf74e11e..efbf24955 100644
--- a/app/views/users/_homework_repository_detail.html.erb
+++ b/app/views/users/_homework_repository_detail.html.erb
@@ -2,7 +2,18 @@
题目信息
<% if homework.nil? %>
-
请先在左侧选择作业
+
本题库遵循创作共用许可证
+
+教师给学生出题本质上是一种创作行为,题目的作者通常为此付出大量时间和精力。好的题目不仅能加深学生对知识点的理解,还能激发学生兴趣,提升学习效率。为此,本网站的题库许可证基于创作共用许可证( Creative Commons License )建立,其核心条款包括:
+
+1. 署名:必须提到原作者。
+
+2. 非商业用途:不得用于盈利性目的。
+
+3. 相同方式共享:允许修改原作品,但必须使用相同的许可证发布。
+
+对此许可证的支持或反对,请在网站中留言,我们不断完善,谢谢!
+
<% else %>
标题:<%=homework.name %>
来源:<%=homework.course.name %>
diff --git a/app/views/users/_homework_repository_list.html.erb b/app/views/users/_homework_repository_list.html.erb
index 67a8f47b4..56259d6b8 100644
--- a/app/views/users/_homework_repository_list.html.erb
+++ b/app/views/users/_homework_repository_list.html.erb
@@ -1,18 +1,33 @@
- 作业名称
- - 来源
- - 类别
- - 贡献者
+ -
+ <%= link_to "来源",user_search_homeworks_user_path(@user,:name=>search,:type => type,:is_import=>is_import,:property=>property,:order => "course_name", :sort => @r_sort),:class => "fl ml30",:remote => true%>
+ <% if @order == "course_name"%>
+ <%= link_to "", user_search_homeworks_user_path(@user,:name=>search,:type => type,:is_import=>is_import,:property=>property,:order => "course_name", :sort => @r_sort),:class => "#{@r_sort == 'desc' ? 'st_up' : 'st_down'} mt12 fl" ,:remote => true%>
+ <% end%>
+
+ -
+ <%= link_to "类别",user_search_homeworks_user_path(@user,:name=>search,:type => type,:is_import=>is_import,:property=>property,:order => "homework_type", :sort => @r_sort),:class => "fl ml10",:remote => true%>
+ <% if @order == "homework_type"%>
+ <%= link_to "", user_search_homeworks_user_path(@user,:name=>search,:type => type,:is_import=>is_import,:property=>property,:order => "homework_type", :sort => @r_sort),:class => "#{@r_sort == 'desc' ? 'st_up' : 'st_down'} mt12 fl" ,:remote => true%>
+ <% end%>
+
+ -
+ <%= link_to "贡献者",user_search_homeworks_user_path(@user,:name=>search,:type => type,:is_import=>is_import,:property=>property,:order => "user_name", :sort => @r_sort),:class => "fl ml20",:remote => true%>
+ <% if @order == "user_name"%>
+ <%= link_to "", user_search_homeworks_user_path(@user,:name=>search,:type => type,:is_import=>is_import,:property=>property,:order => "user_name", :sort => @r_sort),:class => "#{@r_sort == 'desc' ? 'st_up' : 'st_down'} mt12 fl" ,:remote => true%>
+ <% end%>
+
-
- <%= link_to "引用数",user_search_homeworks_user_path(@user,:name=>search,:type => type,:is_import=>is_import,:property=>property,:order => "quotes", :sort => @r_sort),:class => "fl",:remote => true%>
+ <%= link_to "引用数",user_search_homeworks_user_path(@user,:name=>search,:type => type,:is_import=>is_import,:property=>property,:order => "quotes", :sort => @r_sort),:class => "fl ml5",:remote => true%>
<% if @order == "quotes"%>
- <%= link_to "", user_search_homeworks_user_path(@user,:name=>search,:type => type,:is_import=>is_import,:property=>property,:order => "quotes", :sort => @r_sort),:class => "#{@r_sort == 'desc' ? 'st_up' : 'st_down'} mt12" ,:remote => true%>
+ <%= link_to "", user_search_homeworks_user_path(@user,:name=>search,:type => type,:is_import=>is_import,:property=>property,:order => "quotes", :sort => @r_sort),:class => "#{@r_sort == 'desc' ? 'st_up' : 'st_down'} mt12 fl" ,:remote => true%>
<% end%>
-
<%= link_to "发布时间",user_search_homeworks_user_path(@user,:name=>search,:type => type,:is_import=>is_import,:property=>property,:order => "created_at", :sort => @r_sort),:class => "fl",:remote => true%>
<% if @order == "created_at"%>
- <%= link_to "", user_search_homeworks_user_path(@user,:name=>search,:type => type,:is_import=>is_import,:property=>property,:order => "created_at", :sort => @r_sort),:class => "#{@r_sort == 'desc' ? 'st_up' : 'st_down'} mt12" ,:remote => true%>
+ <%= link_to "", user_search_homeworks_user_path(@user,:name=>search,:type => type,:is_import=>is_import,:property=>property,:order => "created_at", :sort => @r_sort),:class => "#{@r_sort == 'desc' ? 'st_up' : 'st_down'} mt12 fl" ,:remote => true%>
<% end%>
diff --git a/app/views/users/_show_user_homeworks.html.erb b/app/views/users/_show_user_homeworks.html.erb
index b9bbf6934..7e9df7f4d 100644
--- a/app/views/users/_show_user_homeworks.html.erb
+++ b/app/views/users/_show_user_homeworks.html.erb
@@ -30,7 +30,7 @@
取消
-
+
<%= pagination_links_full @hw_pages, @hw_count, :per_page_links => false, :remote => @is_remote, :flag => true%>
diff --git a/app/views/users/_user_homework_form.html.erb b/app/views/users/_user_homework_form.html.erb
index 8b72ec781..f23d01d3c 100644
--- a/app/views/users/_user_homework_form.html.erb
+++ b/app/views/users/_user_homework_form.html.erb
@@ -16,7 +16,6 @@
$("#GroupPopupBox a.group_save_btn").click();
<% end %>
});
- var homework_description_editor;
function checked_val() {
if ($("#anonymous_comment").is(":checked")) {
$("#anonymous_comment").val(1);
@@ -106,7 +105,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(homework_description_editor,'homework_<%=User.current.id %>');
}
}).loadPlugin('paste');
return editor;
@@ -150,7 +149,7 @@
- <%= link_to("导入作业", user_import_homeworks_user_path(User.current.id,:select_course => defined?(select_course)),:class => "BlueCirBtn fl mr10",:remote => true,:title=>"导入自己发布过的作业,或者共享题库中的作业") unless edit_mode%>
+ <%= link_to("从题库选用", user_import_homeworks_user_path(User.current.id,:select_course => defined?(select_course)),:class => "BlueCirBtn fl mr10",:remote => true,:title=>"导入自己发布过的作业,或者共享题库中的作业") unless edit_mode%>
<% unless edit_mode %>
<% end %>
@@ -159,7 +158,7 @@
<% end %>
- <% if homework.homework_detail_manual.comment_status.to_i < 3 %>
+ <% if homework.homework_detail_manual.comment_status.to_i < 2 %>
<%= calendar_for('homework_end_time')%>
<% end %>
@@ -199,6 +198,8 @@
<%= select_tag :course_id, options_for_select(get_as_teacher_courses(User.current), homework.course_id), {:class => "InputBox w709",:value => "请选择发布作业的课程"} %>
+
+
diff --git a/app/views/users/new_user_commit_homework.html.erb b/app/views/users/new_user_commit_homework.html.erb
index 3c0c4969b..f8ce5cee4 100644
--- a/app/views/users/new_user_commit_homework.html.erb
+++ b/app/views/users/new_user_commit_homework.html.erb
@@ -85,7 +85,7 @@
style="display-hidden" id="data-language">
- <%= f.text_area :name, id: 'program-title', class:"InputBox W700", placeholder:"请概括你的代码的功能" %>
+ <%= f.text_area :name, id: 'program-title', class:"InputBox W700", placeholder:"请概括你的代码的功能", value:"#{@homework.name}的作品提交" %>
<%= f.text_area :description, id: 'program-src', class:"InputBox W700 H150", placeholder:"请贴入你的代码", rows: 10 %>
diff --git a/app/views/users/user_homeworks.html.erb b/app/views/users/user_homeworks.html.erb
index 279f36b5c..683cb7019 100644
--- a/app/views/users/user_homeworks.html.erb
+++ b/app/views/users/user_homeworks.html.erb
@@ -33,7 +33,7 @@
-
+
-
公共题库
@@ -46,7 +46,7 @@
-
- - 全部
+ - 全部
- 普通作业
- 编程作业
- 分组作业
@@ -61,7 +61,7 @@
<%=render :partial=>'homework_repository_search', :locals=>{:type => @type,:is_import => 0,:property => @property} %>
-
+
<%=render :partial => 'homework_repository_list', :locals => {:homeworks => @homeworks,:type=>@type,:is_import => 0,:property => @property,:search=>''} %>
@@ -69,7 +69,7 @@
-
+
<%= pagination_links_full @hw_pages, @hw_count, :per_page_links => false, :remote => @is_remote, :flag => true%>
diff --git a/public/javascripts/application.js b/public/javascripts/application.js
index 55d3eefad..2eaac8c39 100644
--- a/public/javascripts/application.js
+++ b/public/javascripts/application.js
@@ -1,1177 +1,1222 @@
-//= require_directory ./rateable
-//= require jquery.min
-//= require jquery.infinitescroll
-
-/* Redmine - project management software
- Copyright (C) 2006-2013 Jean-Philippe Lang */
-
-//动态高度控制
-function description_show_hide(id){
- showNormalImage('activity_description_'+id);
- if($("#intro_content_"+id).height() > 810) {
- $("#intro_content_show_"+id).show();
- }
- $("#intro_content_show_"+id).click(function(){
- $("#activity_description_"+id).toggleClass("maxh360");
- $("#intro_content_show_"+id).hide();
- $("#intro_content_hide_"+id).show();
- });
- $("#intro_content_hide_"+id).click(function(){
- $("#activity_description_"+id).toggleClass("maxh360");
- $("#intro_content_hide_"+id).hide();
- $("#intro_content_show_"+id).show();
- });
-}
-
-function cleanArray (actual){
- var newArray = new Array();
- for (var i = 0; i< actual.length; i++){
- if (actual[i]){
- newArray.push(actual[i]);
- }
- }
- return newArray;
-}
-
-function checkAll(id, checked) {
- if (checked) {
- $('#'+id).find('input[type=checkbox]').attr('checked', true);
- } else {
- $('#'+id).find('input[type=checkbox]').removeAttr('checked');
- }
-}
-
-function toggleCheckboxesBySelector(selector) {
- var all_checked = true;
- $(selector).each(function(index) {
- if (!$(this).is(':checked')) { all_checked = false; }
- });
- $(selector).attr('checked', !all_checked);
-}
-
-function showAndScrollTo(id, focus) {
- $('#'+id).show();
- if (focus !== null) {
- $('#'+focus).focus();
- }
- $('html, body').animate({scrollTop: $('#'+id).offset().top}, 400);
-}
-
-function toggleRowGroup(el) {
- var tr = $(el).parents('tr').first();
- var n = tr.next();
- tr.toggleClass('open');
- while (n.length && !n.hasClass('group')) {
- n.toggle();
- n = n.next('tr');
- }
-}
-
-function collapseAllRowGroups(el) {
- var tbody = $(el).parents('tbody').first();
- tbody.children('tr').each(function(index) {
- if ($(this).hasClass('group')) {
- $(this).removeClass('open');
- } else {
- $(this).hide();
- }
- });
-}
-
-function expandAllRowGroups(el) {
- var tbody = $(el).parents('tbody').first();
- tbody.children('tr').each(function(index) {
- if ($(this).hasClass('group')) {
- $(this).addClass('open');
- } else {
- $(this).show();
- }
- });
-}
-
-function toggleAllRowGroups(el) {
- var tr = $(el).parents('tr').first();
- if (tr.hasClass('open')) {
- collapseAllRowGroups(el);
- } else {
- expandAllRowGroups(el);
- }
-}
-
-function toggleFieldset(el) {
- var fieldset = $(el).parents('fieldset').first();
- fieldset.toggleClass('collapsed');
- fieldset.children('div').toggle();
-}
-
-function hideFieldset(el) {
- var fieldset = $(el).parents('fieldset').first();
- fieldset.toggleClass('collapsed');
- fieldset.children('div').hide();
-}
-
-function initFilters(){
- $('#add_filter_select').change(function(){
- addFilter($(this).val(), '', []);
- });
- $('#filters-table td.field input[type=checkbox]').each(function(){
- toggleFilter($(this).val());
- });
- $('#filters-table td.field input[type=checkbox]').on('click',function(){
- toggleFilter($(this).val());
- });
- $('#filters-table .toggle-multiselect').on('click',function(){
- toggleMultiSelect($(this).siblings('select'));
- });
- $('#filters-table input[type=text]').on('keypress', function(e){
- if (e.keyCode == 13) submit_query_form("query_form");
- });
-}
-
-function addFilter(field, operator, values) {
- var fieldId = field.replace('.', '_');
- var tr = $('#tr_'+fieldId);
- if (tr.length > 0) {
- tr.show();
- } else {
- buildFilterRow(field, operator, values);
- }
- $('#cb_'+fieldId).attr('checked', true);
- toggleFilter(field);
- $('#add_filter_select').val('').children('option').each(function(){
- if ($(this).attr('value') == field) {
- $(this).attr('disabled', true);
- }
- });
-}
-
-function buildFilterRow(field, operator, values) {
- var fieldId = field.replace('.', '_');
- var filterTable = $("#filters-table");
- var filterOptions = availableFilters[field];
- var operators = operatorByType[filterOptions['type']];
- var filterValues = filterOptions['values'];
- var i, select;
-
- var tr = $('
').attr('id', 'tr_'+fieldId).html(
- ' | ' +
- ' | ' +
- ' | '
- );
- filterTable.append(tr);
-
- select = tr.find('td.operator select');
- for (i=0;i').val(operators[i]).text(operatorLabels[operators[i]]);
- if (operators[i] == operator) { option.attr('selected', true); }
- select.append(option);
- }
- select.change(function(){ toggleOperator(field); });
-
- switch (filterOptions['type']){
- case "list":
- case "list_optional":
- case "list_status":
- case "list_subprojects":
- tr.find('td.values').append(
- '' +
- ' 复选/multi-select'
- );
- select = tr.find('td.values select');
- if (values.length > 1) { select.attr('multiple', true); }
- for (i=0;i');
- if ($.isArray(filterValue)) {
- option.val(filterValue[1]).text(filterValue[0]);
- if ($.inArray(filterValue[1], values) > -1) {option.attr('selected', true);}
- } else {
- option.val(filterValue).text(filterValue);
- if ($.inArray(filterValue, values) > -1) {option.attr('selected', true);}
- }
- select.append(option);
- }
- break;
- case "date":
- case "date_past":
- tr.find('td.values').append(
- '' +
- ' ' +
- ' '+labelDayPlural+''
- );
- $('#values_'+fieldId+'_1').val(values[0]).datepicker(datepickerOptions);
- $('#values_'+fieldId+'_2').val(values[1]).datepicker(datepickerOptions);
- $('#values_'+fieldId).val(values[0]);
- break;
- case "string":
- case "text":
- tr.find('td.values').append(
- ''
- );
- $('#values_'+fieldId).val(values[0]);
- break;
- case "relation":
- tr.find('td.values').append(
- '' +
- ''
- );
- $('#values_'+fieldId).val(values[0]);
- select = tr.find('td.values select');
- for (i=0;i');
- option.val(filterValue[1]).text(filterValue[0]);
- if (values[0] == filterValue[1]) { option.attr('selected', true); }
- select.append(option);
- }
- case "integer":
- case "float":
- tr.find('td.values').append(
- '' +
- ' '
- );
- $('#values_'+fieldId+'_1').val(values[0]);
- $('#values_'+fieldId+'_2').val(values[1]);
- break;
- }
-}
-
-function toggleFilter(field) {
- var fieldId = field.replace('.', '_');
- if ($('#cb_' + fieldId).is(':checked')) {
- $("#operators_" + fieldId).show().removeAttr('disabled');
- toggleOperator(field);
- } else {
- $("#operators_" + fieldId).hide().attr('disabled', true);
- enableValues(field, []);
- }
-}
-
-function enableValues(field, indexes) {
- var fieldId = field.replace('.', '_');
- $('#tr_'+fieldId+' td.values .value').each(function(index) {
- if ($.inArray(index, indexes) >= 0) {
- $(this).removeAttr('disabled');
- $(this).parents('span').first().show();
- } else {
- $(this).val('');
- $(this).attr('disabled', true);
- $(this).parents('span').first().hide();
- }
-
- if ($(this).hasClass('group')) {
- $(this).addClass('open');
- } else {
- $(this).show();
- }
- });
-}
-
-function toggleOperator(field) {
- var fieldId = field.replace('.', '_');
- var operator = $("#operators_" + fieldId);
- switch (operator.val()) {
- case "!*":
- case "*":
- case "t":
- case "ld":
- case "w":
- case "lw":
- case "l2w":
- case "m":
- case "lm":
- case "y":
- case "o":
- case "c":
- enableValues(field, []);
- break;
- case "><":
- enableValues(field, [0,1]);
- break;
- case "t+":
- case ">t-":
- case "0) {
- lis.eq(i-1).show();
- }
-}
-
-function displayTabsButtons() {
- var lis;
- var tabsWidth = 0;
- var el;
- $('div.tabs').each(function() {
- el = $(this);
- lis = el.find('ul').children();
- lis.each(function(){
- if ($(this).is(':visible')) {
- tabsWidth += $(this).width() + 6;
- }
- });
- if ((tabsWidth < el.width() - 60) && (lis.first().is(':visible'))) {
- el.find('div.tabs-buttons').hide();
- } else {
- el.find('div.tabs-buttons').show();
- }
- });
-}
-
-function setPredecessorFieldsVisibility() {
- var relationType = $('#relation_relation_type');
- if (relationType.val() == "precedes" || relationType.val() == "follows") {
- $('#predecessor_fields').show();
- } else {
- $('#predecessor_fields').hide();
- }
-}
-
-function showModal(id, width) {
- var el = $('#'+id).first();
- if (el.length === 0 || el.is(':visible')) {return;}
- var title = el.find('h3.title').text();
- el.dialog({
- width: width,
- modal: true,
- resizable: false,
- dialogClass: 'modal',
- title: title
- });
- el.find("input[type=text], input[type=submit]").first().focus();
-}
-
-function hideModal(el) {
- var modal;
- if (el) {
- modal = $(el).parents('.ui-dialog-content');
- } else {
- modal = $('#ajax-modal');
- }
- modal.dialog("close");
-}
-
-function submitPreview(url, form, target) {
- $.ajax({
- url: url,
- type: 'post',
- data: $('#'+form).serialize(),
- success: function(data){
- $('#'+target).html(data);
- }
- });
-}
-
-function collapseScmEntry(id) {
- $('.'+id).each(function() {
- if ($(this).hasClass('open')) {
- collapseScmEntry($(this).attr('id'));
- }
- $(this).hide();
- });
- $('#'+id).removeClass('open');
-}
-
-function expandScmEntry(id) {
- $('.'+id).each(function() {
- $(this).show();
- if ($(this).hasClass('loaded') && !$(this).hasClass('collapsed')) {
- expandScmEntry($(this).attr('id'));
- }
- });
- $('#'+id).addClass('open');
-}
-
-function scmEntryClick(id, url) {
- el = $('#'+id);
- if (el.hasClass('open')) {
- collapseScmEntry(id);
- el.addClass('collapsed');
- return false;
- } else if (el.hasClass('loaded')) {
- expandScmEntry(id);
- el.removeClass('collapsed');
- return false;
- }
- if (el.hasClass('loading')) {
- return false;
- }
- el.addClass('loading');
- $.ajax({
- url: url,
- success: function(data){
- el.after(data);
- el.addClass('open').addClass('loaded').removeClass('loading');
- }
- });
- return true;
-}
-
-function randomKey(size) {
- var chars = new Array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z');
- var key = '';
- for (i = 0; i < size; i++) {
- key += chars[Math.floor(Math.random() * chars.length)];
- }
- return key;
-}
-
-// Can't use Rails' remote select because we need the form data
-function updateIssueFrom(url) {
- $.ajax({
- url: url,
- type: 'post',
- data: $('#issue-form').serialize()
- });
-}
-
-function updateBulkEditFrom(url) {
- $.ajax({
- url: url,
- type: 'post',
- data: $('#bulk_edit_form').serialize()
- });
-}
-
-function clearMessage(id) {
- $('#'+id).val("");
-}
-
-
-function observeAutocompleteField(fieldId, url, options) {
- $(document).ready(function() {
- $('#'+fieldId).autocomplete($.extend({
- source: url,
- select: function(e,ui){self.location="/issues/"+ui.item.value;},
- minLength: 1,
- search: function(){$('#'+fieldId).addClass('ajax-loading');},
- response: function(){$('#'+fieldId).removeClass('ajax-loading');
- }
- }, options));
- $('#'+fieldId).addClass('autocomplete');
-
- });
-
-}
-
-function observeSearchfield(fieldId, targetId, url) {
- $('#'+fieldId).each(function() {
- var $this = $(this);
- $this.addClass('autocomplete');
- $this.attr('data-value-was', $this.val());
- var check = function() {
- var val = $this.val();
- if ($this.attr('data-value-was') != val){
- $this.attr('data-value-was', val);
- $.ajax({
- url: url,
- type: 'get',
- data: {q: $this.val()},
- success: function(data){ if(targetId) $('#'+targetId).html(data); },
- beforeSend: function(){ $this.addClass('ajax-loading'); },
- complete: function(){ $this.removeClass('ajax-loading'); }
- });
- }
- };
- var reset = function() {
- if (timer) {
- clearInterval(timer);
- timer = setInterval(check, 300);
- }
- };
- var timer = setInterval(check, 300);
- $this.bind('keyup click mousemove', reset);
- });
-}
-
-function observeProjectModules() {
- var f = function() {
- /* Hides trackers and issues custom fields on the new project form when issue_tracking module is disabled */
- if ($('#project_enabled_module_names_issue_tracking').attr('checked')) {
- $('#project_trackers').show();
- }else{
- $('#project_trackers').hide();
- }
- };
-
- $(window).load(f);
- $('#project_enabled_module_names_issue_tracking').change(f);
-}
-
-function initMyPageSortable(list, url) {
- $('#list-'+list).sortable({
- connectWith: '.block-receiver',
- tolerance: 'pointer',
- update: function(){
- $.ajax({
- url: url,
- type: 'post',
- data: {'blocks': $.map($('#list-'+list).children(), function(el){return $(el).attr('id');})}
- });
- }
- });
- $("#list-top, #list-left, #list-right").disableSelection();
-}
-
-var warnLeavingUnsavedMessage;
-function warnLeavingUnsaved(message) {
- warnLeavingUnsavedMessage = message;
-
- $('form').submit(function(){
- $('textarea').removeData('changed');
- });
- $('textarea').change(function(){
- $(this).data('changed', 'changed');
- });
- window.onbeforeunload = function(){
- var warn = false;
- $('textarea').blur().each(function(){
- if ($(this).data('changed')) {
- warn = true;
- }
- });
- if (warn) {return warnLeavingUnsavedMessage;}
- };
-}
-
-function setupHeartBeat(){
- var time = 60*1000*30; // 30 mins
- setInterval(function(){$.getJSON('/account/heartbeat');},time);
-}
-
-function setupAjaxIndicator() {
- $('#ajax-indicator').bind('ajaxSend', function(event, xhr, settings) {
- if(settings && settings.url && settings.url.match(/account\/heartbeat$/)){
- return;
- }
- if ($('.ajax-loading').length === 0 && settings.contentType != 'application/octet-stream') {
- $('#ajax-indicator').show();
- }
- });
-
- $('#ajax-indicator').bind('ajaxStop', function() {
- $('#ajax-indicator').hide();
- if(MathJax && MathJax.Hub)
- MathJax.Hub.Queue(['Typeset', MathJax.Hub]); //如果是ajax刷新页面的话,手动执行MathJax的公式显示
- try{
- prettyPrint(); //如果刷新出来的页面如果存在代码行的话,也需要美化
- }catch (e){
-
- }
- });
-}
-
-function hideOnLoad() {
- $('.hol').hide();
-}
-
-function addFormObserversForDoubleSubmit() {
- $('form[method=post]').each(function() {
- if (!$(this).hasClass('multiple-submit')) {
- $(this).submit(function(form_submission) {
- if ($(form_submission.target).attr('data-submitted')) {
- form_submission.preventDefault();
- } else {
- $(form_submission.target).attr('data-submitted', true);
- }
- });
- }
- });
-}
-
-function blockEventPropagation(event) {
- event.stopPropagation();
- event.preventDefault();
-}
-
-function toggleAndSettingWordsVal(parent_widget, text_widget, value){
- text_widget.val(value)
- parent_widget.slideToggle(400)
-}
-function transpotUrl (scope) {
- $(scope).each(function(){
- var tmpContent = $(this).html();
- tmpContent = tmpContent.replace(/(^|[^\"\'])(http|ftp|mms|rstp|news|https)(\:\/\/[^<\s\+,,]+)/gi,"$1$2$3<\/a>");
- // tmpContent = tmpContent.replace(/(^|[^\/])(www\.[^<\s\+,,]+)/gi,"$1$2");
- $(this).html(tmpContent);
- });
-}
-
-$(document).ready(setupAjaxIndicator);
-$(document).ready(setupHeartBeat);
-$(document).ready(hideOnLoad);
-$(document).ready(addFormObserversForDoubleSubmit);
-
-function img_thumbnails() {
- $('.thumbnails a').colorbox({rel:'nofollow'});
- $('.attachments').find('a').each(function(index, element) {
- var href_value = $(element).attr('href');
- if (/\.(jpg|png|gif|bmp|jpeg|PNG|BMP|GIF|JPG|JPEG)$/.test(href_value)) {
- $(element).colorbox({rel:'nofollow'});
- }
- });
- $('.for_img_thumbnails').find('a').each(function(index, element) {
- var href_value = $(element).attr('href');
- if (/\.(jpg|png|gif|bmp|jpeg|PNG|BMP|GIF|JPG|JPEG)$/.test(href_value)) {
- $(element).colorbox({rel:'nofollow'});
- }
- });
-}
-$(document).ready(img_thumbnails);
-
-function TimeClose(dateText, inst) {
- if(inst.id=="issue_start_date"){
- time=dateText;
- }
-}
-var time=new Date();
-function TimeBeforeShow(input){
- if(input.id=="issue_due_date"){
- //var minDate = $(input).datepicker('option', 'minDate');
- var tempdata=$("#issue_start_date").attr("value");
-
- $(input).datepicker('option', 'minDate',new Date(tempdata.replace(/-/g, "/")));
- //$('.selector').datepicker('option', 'minDate', '12/25/2012');
- }
-}
-
-function SetMinValue(){
- /// var tempdata=$("#issue_start_date").attr("value");
- //$('.selector').datepicker('option', 'minDate', '12/25/2012');
- //alert(tempdata);
- //$("#issue_due_date").datepicker({
- // minDate: new Date(2014,08,23)
- //var datepickerOptions=
- //{dateFormat: 'yy-mm-dd',minDate: new Date(2014,08,23), showOn: 'button', buttonImageOnly: true, buttonImage: "path_to_image('/images/calendar.png')", showButtonPanel: true, showWeek: true, showOtherMonths: true, selectOtherMonths: true};
- //alert( $('.issue_due_date').length);
- //$('.selector')[1].datepicker('option', 'minDate', new Date(2014, 0 - 8, 23));
- //$("#issue_due_date").datepicker(datepickerOptions);
- //$("##{issue_due_date}").datepicker(datepickerOptions);
- //$("#issue_due_date").datepicker(
- // {dateFormat: 'yy-mm-dd',minDate: new Date(2014,08,23), showOn: 'button', buttonImageOnly: true, buttonImage: "path_to_image('/images/calendar.png')", showButtonPanel: true, showWeek: true, showOtherMonths: true, selectOtherMonths: true}
- //)
- //});
-}
-function PrecentChange(obj){
- var _v= obj;
- if(_v==100)
- {
- //var select=$("select[id='issue_status_id']");
- $("select[id='issue_status_id']").find("option[value='3']").attr("selected","selected");
- }
- else if(_v==0)
- {
- //alert(1);
- $("select[id='issue_status_id']").find("option[value='1']").attr("selected","selected");
- }
- else if(_v!=100&&_v!=0)
- {
- // alert(2);
- $("select[id='issue_status_id']").find("option[value='2']").attr("selected","selected");
- }
-}
-
-//added by lizanle 日期選擇js
-function HS_DateAdd(interval,number,date){
- number = parseInt(number);
- if (typeof(date)=="string"){var date = new Date(date.split("-")[0],date.split("-")[1],date.split("-")[2])}
- if (typeof(date)=="object"){var date = date}
- switch(interval){
- case "y":return new Date(date.getFullYear()+number,date.getMonth(),date.getDate()); break;
- case "m":return new Date(date.getFullYear(),date.getMonth()+number,checkDate(date.getFullYear(),date.getMonth()+number,date.getDate())); break;
- case "d":return new Date(date.getFullYear(),date.getMonth(),date.getDate()+number); break;
- case "w":return new Date(date.getFullYear(),date.getMonth(),7*number+date.getDate()); break;
- }
-}
-function checkDate(year,month,date){
- var enddate = ["31","28","31","30","31","30","31","31","30","31","30","31"];
- var returnDate = "";
- if (year%4==0){enddate[1]="29"}
- if (date>enddate[month]){returnDate = enddate[month]}else{returnDate = date}
- return returnDate;
-}
-
-function WeekDay(date){
- var theDate;
- if (typeof(date)=="string"){theDate = new Date(date.split("-")[0],date.split("-")[1],date.split("-")[2]);}
- if (typeof(date)=="object"){theDate = date}
- return theDate.getDay();
-}
-function HS_calender(){
- var lis = "";
- var style = "";
- /*可以把下面的css剪切出去独立一个css文件*/
- style +="";
-
- var now;
- if (typeof(arguments[0])=="string"){
- selectDate = arguments[0].split("-");
- var year = selectDate[0];
- var month = parseInt(selectDate[1])-1+"";
- var date = selectDate[2];
- now = new Date(year,month,date);
- }else if (typeof(arguments[0])=="object"){
- now = arguments[0];
- }
- var lastMonthEndDate = HS_DateAdd("d","-1",now.getFullYear()+"-"+now.getMonth()+"-01").getDate();
- var lastMonthDate = WeekDay(now.getFullYear()+"-"+now.getMonth()+"-01");
- var thisMonthLastDate = HS_DateAdd("d","-1",now.getFullYear()+"-"+(parseInt(now.getMonth())+1).toString()+"-01");
- var thisMonthEndDate = thisMonthLastDate.getDate();
- var thisMonthEndDay = thisMonthLastDate.getDay();
- var todayObj = new Date();
- today = todayObj.getFullYear()+"-"+todayObj.getMonth()+"-"+todayObj.getDate();
-
- for (i=0; i" + lis;
- lastMonthEndDate--;
- }
- for (i=1; i<=thisMonthEndDate; i++){ // Current Month's Date
-
- if(today == now.getFullYear()+"-"+now.getMonth()+"-"+i){
- var todayString = now.getFullYear()+"-"+(parseInt(now.getMonth())+1).toString()+"-"+i;
- lis += ""+i+"";
- }else{
- lis += ""+i+"";
- }
-
- }
- var j=1;
- for (i=thisMonthEndDay; i<6; i++){ // Next Month's Date
- lis += ""+j+"";
- j++;
- }
- lis += style;
-
- var CalenderTitle = "»";
- CalenderTitle += "«";
- CalenderTitle += ""+now.getFullYear()+"年"+(parseInt(now.getMonth())+1).toString()+"月";
-
- if (arguments.length>1){
- arguments[1].parentNode.parentNode.getElementsByTagName("ul")[1].innerHTML = lis;
- arguments[1].parentNode.innerHTML = CalenderTitle;
-
- }else{
- var CalenderBox = style+"";
- return CalenderBox;
- }
-}
-function _selectThisDay(d){
- var boxObj = d.parentNode.parentNode.parentNode.parentNode.parentNode;
- boxObj.targetObj.value = d.title;
- boxObj.parentNode.removeChild(boxObj);
-}
-function closeCalender(d){
- var boxObj = d.parentNode.parentNode.parentNode;
- boxObj.parentNode.removeChild(boxObj);
-}
-
-function CalenderselectYear(obj){
- var opt = "";
- var thisYear = obj.innerHTML;
- for (i=1970; i<=2020; i++){
- if (i==thisYear){
- opt += "";
- }else{
- opt += "";
- }
- }
- opt = "";
- obj.parentNode.innerHTML = opt;
-}
-
-function selectThisYear(obj){
- HS_calender(obj.value+"-"+obj.parentNode.parentNode.getElementsByTagName("span")[1].getElementsByTagName("a")[0].innerHTML+"-1",obj.parentNode);
-}
-
-function CalenderselectMonth(obj){
- var opt = "";
- var thisMonth = obj.innerHTML;
- for (i=1; i<=12; i++){
- if (i==thisMonth){
- opt += "";
- }else{
- opt += "";
- }
- }
- opt = "";
- obj.parentNode.innerHTML = opt;
-}
-function selectThisMonth(obj){
- HS_calender(obj.parentNode.parentNode.getElementsByTagName("span")[0].getElementsByTagName("a")[0].innerHTML+"-"+obj.value+"-1",obj.parentNode);
-}
-function HS_setDate(inputObj){
- var calenderObj = document.createElement("span");
- calenderObj.innerHTML = HS_calender(new Date());
- calenderObj.style.position = "absolute";
- calenderObj.targetObj = inputObj;
- inputObj.parentNode.insertBefore(calenderObj,inputObj.nextSibling);
-}
-//lizanle 刷新函数
-function redo() {
- window.location.reload()
-}
-
-function encodeHomeworkUrl(url, is_base64){
- if(typeof is_base64 === 'boolean' && is_base64){
- return '/zipdown/download?base64file='+url;
- }
- var file = encodeURI(url).replace(/\+/g, '%2B');
- return '/zipdown/download?file='+file;
-}
-
-//// 作业附件删除
-$(function(){
- $('.attachments a.delete-homework-icon').bind('ajax:complete', //this will work
- function(event, data, status, xhr) { //note parametes
- $(this).parent('p').remove();
- console.log("delete complete.");
- });
-
- $('a.tb_all').bind('ajax:complete', function (event, data, status, xhr) {
- if(status == 'success'){
- var res = JSON.parse(data.responseText);
- if(res.length<1){
- return;
- }
-
- if(res.length==1){
- if(res[0].base64file){
- location.href = encodeHomeworkUrl(res[0].base64file, true);return;
- }
- location.href = encodeHomeworkUrl(res[0].file);return;
- }
-
- document.getElementById('light').style.display='block';
- $container = $('#light .upload_box_ul');
- $container.empty();
- for(var i = 0; i 1){
- des = '第'+res[i].index+'-'+(res[i].count+res[i].index-1)+'个学生的作品下载';
- } else {
- des = '第'+res[i].index+'个学生的作品下载';
- }
-
- if(res[i].base64file){
- $(''+(i+1)+'. '+des+' (共'+res[i].size+'M) ').appendTo($container);
- } else {
- $(''+(i+1)+'. '+des+' (共'+res[i].size+'M) ').appendTo($container);
- }
- }
- }
- });
- $('#download_homework_attachments').bind('ajax:complete', function (event, data, status, xhr) {
- if(status == 'success'){
- var res = JSON.parse(data.responseText);
- if(res.length == null){
- alert("该作业没有任何附件可下载");
- }
- else if(res.length<1){
- return;
- }
- else
- {
- if(res.length==1){
- if(res[0].base64file){
- location.href = encodeHomeworkUrl(res[0].base64file, true);return;
- }
- location.href = encodeHomeworkUrl(res[0].file);return;
- }
- document.getElementById('light').style.display='block';
- $container = $('#light .upload_box_ul');
- $container.empty();
- for(var i = 0; i 1){
- des = '第'+res[i].index+'-'+(res[i].count+res[i].index-1)+'个学生的作品下载';
- } else {
- des = '第'+res[i].index+'个学生的作品下载';
- }
-
- if(res[i].base64file){
- $(''+(i+1)+'. '+des+' (共'+res[i].size+'M) ').appendTo($container);
- } else {
- $(''+(i+1)+'. '+des+' (共'+res[i].size+'M) ').appendTo($container);
- }
-
- }
- }
- }
- });
-});
-
-
-//firefox的pre标签换行
-$(document).ready(function () {
- var userAgent = navigator.userAgent.toLowerCase();
- var browser = {
- version: (userAgent.match(/.+(?:rv|it|ra|ie)[/: ]([d.]+)/) || [])[1],
- safari: /webkit/.test(userAgent),
- opera: /opera/.test(userAgent),
- msie: /msie/.test(userAgent) && !/opera/.test(userAgent),
- mozilla: /mozilla/.test(userAgent) && !/(compatible|webkit)/.test(userAgent)
- };
- if (browser.mozilla || browser.opera){
- $("pre").addClass("break_word_firefox");
- }
- else{
- $("pre").addClass("break_word");
- }
-});
-
-//点击发送资源弹出框中的组织,要更改选择栏目中的内容
-//@dom 选中的radio,值为org_id
-function change_org_subfield(url){
- $.ajax({
- type:'get',
- url:url
- })
-}
-
-//点击图片即显示大图
-function showNormalImage(id) {
- var description_images=$('div#'+id).find("img");
- if (description_images.length>0) {
- for (var i=0; i").attr("href",image.attr('src'));
- image.wrap(element);
- $(image).parent().colorbox({rel:'nofollow', close: "关闭", returnFocus: false});
- }
- //$('#'+id+' a').colorbox({rel:'nofollow', close: "关闭", returnFocus: false}); //有图片才将链接变为弹出框
- }
-
-}
-
-
-//文件、帖子、通知分享
-function org_id_click(){
- var sendText = $("input[name='org_id']:checked").next().text();
- var orgDirection = "目标地址:";
- $(".orgDirection").text(orgDirection + sendText);
-}
-function subfield_click(){
- var sendText = $("input[name='org_id']:checked").next().text();
- var orgDirection = "目标地址:";
- var sendColumn = $("input[name='subfield']:checked").next().text();
- $(".orgDirection").text(orgDirection + sendText + " / " + sendColumn);
-}
-
-//send_type:发送的类型,file对应文件,message对应帖子,news对应通知或新闻
-function observeSearchfieldOnInput(fieldId, url,send_id,send_ids, send_type) {
- $('#'+fieldId).each(function() {
- var $this = $(this);
- $this.addClass('autocomplete');
- $this.attr('data-value-was', $this.val());
- var check = function() {
- var val = $this.val();
- if ($this.attr('data-value-was') != val){
- $this.attr('data-value-was', val);
- $.ajax({
- url: url,
- type: 'get',
- data: {search: $this.val(),send_id:send_id,send_ids:send_ids, send_type:send_type},
- success: function(data){ },
- beforeSend: function(){ $this.addClass('ajax-loading'); },
- complete: function(){ $this.removeClass('ajax-loading'); }
- });
- }
- };
- var reset = function() {
- if (timer) {
- clearInterval(timer);
- timer = setInterval(check, 300);
- }
- };
- var timer = setInterval(check, 300);
- $this.bind('keyup click mousemove', reset);
- });
-}
-function check_des(event){
- if($(".sectionContent").find('input[type="radio"]:checked').length <= 0){
- event.preventDefault();
- $(".orgDirection").text('目标地址组织不能为空');
- return false;
- }else if($(".columnContent").find('input[type="radio"]:checked').length <= 0){
- event.preventDefault();
- $(".orgDirection").text('目标地址栏目不能为空');
- return false;
- }else{
- return true;
- }
-}
-
-var sendType = '1';
-var lastSendType ;//初始为发送到我的课程
-function show_send(id, user_id, send_type){
- if (lastSendType === '2'){ //如果已经发送过一次了,那么就应该沿用上次发送的类型。
- $.ajax({
- type: 'get',
- url: '/users/' + user_id + '/search_user_project',
- data:{send_id:id, send_type:send_type}
- });
- }else if(lastSendType == '1'){
- $.ajax({
- type: 'get',
- url: '/users/' + user_id + '/search_user_course',
- data:{send_id:id, send_type:send_type}
- });
- }else if( lastSendType == '3'){//组织
- $.ajax({
- type: 'get',
- url: '/users/' + user_id + '/search_user_org',
- data:{send_id:id, send_type:send_type}
- });
- }else{
- $.ajax({
- type: 'get',
- url: '/users/' + user_id + '/search_user_course',
- data:{send_id:id, send_type:send_type}
- });
- }
-}
-
-//id 发送的id
-//发送的id数组
-//send_type:发送的类型,file对应文件,message对应帖子,news对应通知或新闻
-function chooseSendType(res_id,res_ids, user_id, send_type){
-
- sendType = $(".resourcesSendType").val();
- if (sendType === lastSendType) {
- return;
- } else if(lastSendType != null) { //不是第一次点击的时候
- if (sendType == '1') {
- $.ajax({
- type: 'get',
- url: '/users/' + user_id + '/search_user_course',
- data:{send_id:res_id, send_type:send_type}
- });
- } else if(sendType == '2') {
- $.ajax({
- type: 'get',
- url: '/users/' + user_id + '/search_user_project',
- data:{send_id:res_id, send_type:send_type}
- });
- }else if(sendType == '3'){
- $.ajax({
- type: 'get',
- url: '/users/' + user_id + '/search_user_org',
- data:{send_id:res_id, send_type:send_type}
- });
- }
- }
- lastSendType = sendType;
-}
-
-//组织新建和配置中,选择组织为私有后,disbled掉允许游客下载选项
-function disable_down(source, des, hint){
- if (source.attr("checked")){
- des.attr("disabled", false);
- hint.html("");
- }
- else{
- des.attr("checked", false);
- des.attr("disabled", true);
- hint.html("(私有组织不允许游客下载资源)");
-
- }
-}
-
-function getRootPath(){
- //获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp
- var curWwwPath=window.document.location.href;
- //获取主机地址之后的目录,如: uimcardprj/share/meun.jsp
- var pathName=window.document.location.pathname;
- var pos=curWwwPath.indexOf(pathName);
- //获取主机地址,如: http://localhost:8083
- var localhostPaht=curWwwPath.substring(0,pos);
- //获取带"/"的项目名,如:/uimcardprj
-// var projectName=pathName.substring(0,pathName.substr(1).indexOf('/')+1);
- var projectName="";
- return(localhostPaht+projectName);
-}
-
+//= require_directory ./rateable
+//= require jquery.min
+//= require jquery.infinitescroll
+
+/* Redmine - project management software
+ Copyright (C) 2006-2013 Jean-Philippe Lang */
+
+//动态高度控制
+function description_show_hide(id){
+ showNormalImage('activity_description_'+id);
+ if($("#intro_content_"+id).height() > 810) {
+ $("#intro_content_show_"+id).show();
+ }
+ $("#intro_content_show_"+id).click(function(){
+ $("#activity_description_"+id).toggleClass("maxh360");
+ $("#intro_content_show_"+id).hide();
+ $("#intro_content_hide_"+id).show();
+ });
+ $("#intro_content_hide_"+id).click(function(){
+ $("#activity_description_"+id).toggleClass("maxh360");
+ $("#intro_content_hide_"+id).hide();
+ $("#intro_content_show_"+id).show();
+ });
+}
+
+function cleanArray (actual){
+ var newArray = new Array();
+ for (var i = 0; i< actual.length; i++){
+ if (actual[i]){
+ newArray.push(actual[i]);
+ }
+ }
+ return newArray;
+}
+
+function checkAll(id, checked) {
+ if (checked) {
+ $('#'+id).find('input[type=checkbox]').attr('checked', true);
+ } else {
+ $('#'+id).find('input[type=checkbox]').removeAttr('checked');
+ }
+}
+
+function toggleCheckboxesBySelector(selector) {
+ var all_checked = true;
+ $(selector).each(function(index) {
+ if (!$(this).is(':checked')) { all_checked = false; }
+ });
+ $(selector).attr('checked', !all_checked);
+}
+
+function showAndScrollTo(id, focus) {
+ $('#'+id).show();
+ if (focus !== null) {
+ $('#'+focus).focus();
+ }
+ $('html, body').animate({scrollTop: $('#'+id).offset().top}, 400);
+}
+
+function toggleRowGroup(el) {
+ var tr = $(el).parents('tr').first();
+ var n = tr.next();
+ tr.toggleClass('open');
+ while (n.length && !n.hasClass('group')) {
+ n.toggle();
+ n = n.next('tr');
+ }
+}
+
+function collapseAllRowGroups(el) {
+ var tbody = $(el).parents('tbody').first();
+ tbody.children('tr').each(function(index) {
+ if ($(this).hasClass('group')) {
+ $(this).removeClass('open');
+ } else {
+ $(this).hide();
+ }
+ });
+}
+
+function expandAllRowGroups(el) {
+ var tbody = $(el).parents('tbody').first();
+ tbody.children('tr').each(function(index) {
+ if ($(this).hasClass('group')) {
+ $(this).addClass('open');
+ } else {
+ $(this).show();
+ }
+ });
+}
+
+function toggleAllRowGroups(el) {
+ var tr = $(el).parents('tr').first();
+ if (tr.hasClass('open')) {
+ collapseAllRowGroups(el);
+ } else {
+ expandAllRowGroups(el);
+ }
+}
+
+function toggleFieldset(el) {
+ var fieldset = $(el).parents('fieldset').first();
+ fieldset.toggleClass('collapsed');
+ fieldset.children('div').toggle();
+}
+
+function hideFieldset(el) {
+ var fieldset = $(el).parents('fieldset').first();
+ fieldset.toggleClass('collapsed');
+ fieldset.children('div').hide();
+}
+
+function initFilters(){
+ $('#add_filter_select').change(function(){
+ addFilter($(this).val(), '', []);
+ });
+ $('#filters-table td.field input[type=checkbox]').each(function(){
+ toggleFilter($(this).val());
+ });
+ $('#filters-table td.field input[type=checkbox]').on('click',function(){
+ toggleFilter($(this).val());
+ });
+ $('#filters-table .toggle-multiselect').on('click',function(){
+ toggleMultiSelect($(this).siblings('select'));
+ });
+ $('#filters-table input[type=text]').on('keypress', function(e){
+ if (e.keyCode == 13) submit_query_form("query_form");
+ });
+}
+
+function addFilter(field, operator, values) {
+ var fieldId = field.replace('.', '_');
+ var tr = $('#tr_'+fieldId);
+ if (tr.length > 0) {
+ tr.show();
+ } else {
+ buildFilterRow(field, operator, values);
+ }
+ $('#cb_'+fieldId).attr('checked', true);
+ toggleFilter(field);
+ $('#add_filter_select').val('').children('option').each(function(){
+ if ($(this).attr('value') == field) {
+ $(this).attr('disabled', true);
+ }
+ });
+}
+
+function buildFilterRow(field, operator, values) {
+ var fieldId = field.replace('.', '_');
+ var filterTable = $("#filters-table");
+ var filterOptions = availableFilters[field];
+ var operators = operatorByType[filterOptions['type']];
+ var filterValues = filterOptions['values'];
+ var i, select;
+
+ var tr = $('').attr('id', 'tr_'+fieldId).html(
+ ' | ' +
+ ' | ' +
+ ' | '
+ );
+ filterTable.append(tr);
+
+ select = tr.find('td.operator select');
+ for (i=0;i').val(operators[i]).text(operatorLabels[operators[i]]);
+ if (operators[i] == operator) { option.attr('selected', true); }
+ select.append(option);
+ }
+ select.change(function(){ toggleOperator(field); });
+
+ switch (filterOptions['type']){
+ case "list":
+ case "list_optional":
+ case "list_status":
+ case "list_subprojects":
+ tr.find('td.values').append(
+ '' +
+ ' 复选/multi-select'
+ );
+ select = tr.find('td.values select');
+ if (values.length > 1) { select.attr('multiple', true); }
+ for (i=0;i');
+ if ($.isArray(filterValue)) {
+ option.val(filterValue[1]).text(filterValue[0]);
+ if ($.inArray(filterValue[1], values) > -1) {option.attr('selected', true);}
+ } else {
+ option.val(filterValue).text(filterValue);
+ if ($.inArray(filterValue, values) > -1) {option.attr('selected', true);}
+ }
+ select.append(option);
+ }
+ break;
+ case "date":
+ case "date_past":
+ tr.find('td.values').append(
+ '' +
+ ' ' +
+ ' '+labelDayPlural+''
+ );
+ $('#values_'+fieldId+'_1').val(values[0]).datepicker(datepickerOptions);
+ $('#values_'+fieldId+'_2').val(values[1]).datepicker(datepickerOptions);
+ $('#values_'+fieldId).val(values[0]);
+ break;
+ case "string":
+ case "text":
+ tr.find('td.values').append(
+ ''
+ );
+ $('#values_'+fieldId).val(values[0]);
+ break;
+ case "relation":
+ tr.find('td.values').append(
+ '' +
+ ''
+ );
+ $('#values_'+fieldId).val(values[0]);
+ select = tr.find('td.values select');
+ for (i=0;i');
+ option.val(filterValue[1]).text(filterValue[0]);
+ if (values[0] == filterValue[1]) { option.attr('selected', true); }
+ select.append(option);
+ }
+ case "integer":
+ case "float":
+ tr.find('td.values').append(
+ '' +
+ ' '
+ );
+ $('#values_'+fieldId+'_1').val(values[0]);
+ $('#values_'+fieldId+'_2').val(values[1]);
+ break;
+ }
+}
+
+function toggleFilter(field) {
+ var fieldId = field.replace('.', '_');
+ if ($('#cb_' + fieldId).is(':checked')) {
+ $("#operators_" + fieldId).show().removeAttr('disabled');
+ toggleOperator(field);
+ } else {
+ $("#operators_" + fieldId).hide().attr('disabled', true);
+ enableValues(field, []);
+ }
+}
+
+function enableValues(field, indexes) {
+ var fieldId = field.replace('.', '_');
+ $('#tr_'+fieldId+' td.values .value').each(function(index) {
+ if ($.inArray(index, indexes) >= 0) {
+ $(this).removeAttr('disabled');
+ $(this).parents('span').first().show();
+ } else {
+ $(this).val('');
+ $(this).attr('disabled', true);
+ $(this).parents('span').first().hide();
+ }
+
+ if ($(this).hasClass('group')) {
+ $(this).addClass('open');
+ } else {
+ $(this).show();
+ }
+ });
+}
+
+function toggleOperator(field) {
+ var fieldId = field.replace('.', '_');
+ var operator = $("#operators_" + fieldId);
+ switch (operator.val()) {
+ case "!*":
+ case "*":
+ case "t":
+ case "ld":
+ case "w":
+ case "lw":
+ case "l2w":
+ case "m":
+ case "lm":
+ case "y":
+ case "o":
+ case "c":
+ enableValues(field, []);
+ break;
+ case "><":
+ enableValues(field, [0,1]);
+ break;
+ case "t+":
+ case ">t-":
+ case "0) {
+ lis.eq(i-1).show();
+ }
+}
+
+function displayTabsButtons() {
+ var lis;
+ var tabsWidth = 0;
+ var el;
+ $('div.tabs').each(function() {
+ el = $(this);
+ lis = el.find('ul').children();
+ lis.each(function(){
+ if ($(this).is(':visible')) {
+ tabsWidth += $(this).width() + 6;
+ }
+ });
+ if ((tabsWidth < el.width() - 60) && (lis.first().is(':visible'))) {
+ el.find('div.tabs-buttons').hide();
+ } else {
+ el.find('div.tabs-buttons').show();
+ }
+ });
+}
+
+function setPredecessorFieldsVisibility() {
+ var relationType = $('#relation_relation_type');
+ if (relationType.val() == "precedes" || relationType.val() == "follows") {
+ $('#predecessor_fields').show();
+ } else {
+ $('#predecessor_fields').hide();
+ }
+}
+
+function showModal(id, width) {
+ var el = $('#'+id).first();
+ if (el.length === 0 || el.is(':visible')) {return;}
+ var title = el.find('h3.title').text();
+ el.dialog({
+ width: width,
+ modal: true,
+ resizable: false,
+ dialogClass: 'modal',
+ title: title
+ });
+ el.find("input[type=text], input[type=submit]").first().focus();
+}
+
+function hideModal(el) {
+ var modal;
+ if (el) {
+ modal = $(el).parents('.ui-dialog-content');
+ } else {
+ modal = $('#ajax-modal');
+ }
+ modal.dialog("close");
+}
+
+function submitPreview(url, form, target) {
+ $.ajax({
+ url: url,
+ type: 'post',
+ data: $('#'+form).serialize(),
+ success: function(data){
+ $('#'+target).html(data);
+ }
+ });
+}
+
+function collapseScmEntry(id) {
+ $('.'+id).each(function() {
+ if ($(this).hasClass('open')) {
+ collapseScmEntry($(this).attr('id'));
+ }
+ $(this).hide();
+ });
+ $('#'+id).removeClass('open');
+}
+
+function expandScmEntry(id) {
+ $('.'+id).each(function() {
+ $(this).show();
+ if ($(this).hasClass('loaded') && !$(this).hasClass('collapsed')) {
+ expandScmEntry($(this).attr('id'));
+ }
+ });
+ $('#'+id).addClass('open');
+}
+
+function scmEntryClick(id, url) {
+ el = $('#'+id);
+ if (el.hasClass('open')) {
+ collapseScmEntry(id);
+ el.addClass('collapsed');
+ return false;
+ } else if (el.hasClass('loaded')) {
+ expandScmEntry(id);
+ el.removeClass('collapsed');
+ return false;
+ }
+ if (el.hasClass('loading')) {
+ return false;
+ }
+ el.addClass('loading');
+ $.ajax({
+ url: url,
+ success: function(data){
+ el.after(data);
+ el.addClass('open').addClass('loaded').removeClass('loading');
+ }
+ });
+ return true;
+}
+
+function randomKey(size) {
+ var chars = new Array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z');
+ var key = '';
+ for (i = 0; i < size; i++) {
+ key += chars[Math.floor(Math.random() * chars.length)];
+ }
+ return key;
+}
+
+// Can't use Rails' remote select because we need the form data
+function updateIssueFrom(url) {
+ $.ajax({
+ url: url,
+ type: 'post',
+ data: $('#issue-form').serialize()
+ });
+}
+
+function updateBulkEditFrom(url) {
+ $.ajax({
+ url: url,
+ type: 'post',
+ data: $('#bulk_edit_form').serialize()
+ });
+}
+
+function clearMessage(id) {
+ $('#'+id).val("");
+}
+
+
+function observeAutocompleteField(fieldId, url, options) {
+ $(document).ready(function() {
+ $('#'+fieldId).autocomplete($.extend({
+ source: url,
+ select: function(e,ui){self.location="/issues/"+ui.item.value;},
+ minLength: 1,
+ search: function(){$('#'+fieldId).addClass('ajax-loading');},
+ response: function(){$('#'+fieldId).removeClass('ajax-loading');
+ }
+ }, options));
+ $('#'+fieldId).addClass('autocomplete');
+
+ });
+
+}
+
+function observeSearchfield(fieldId, targetId, url) {
+ $('#'+fieldId).each(function() {
+ var $this = $(this);
+ $this.addClass('autocomplete');
+ $this.attr('data-value-was', $this.val());
+ var check = function() {
+ var val = $this.val();
+ if ($this.attr('data-value-was') != val){
+ $this.attr('data-value-was', val);
+ $.ajax({
+ url: url,
+ type: 'get',
+ data: {q: $this.val()},
+ success: function(data){ if(targetId) $('#'+targetId).html(data); },
+ beforeSend: function(){ $this.addClass('ajax-loading'); },
+ complete: function(){ $this.removeClass('ajax-loading'); }
+ });
+ }
+ };
+ var reset = function() {
+ if (timer) {
+ clearInterval(timer);
+ timer = setInterval(check, 300);
+ }
+ };
+ var timer = setInterval(check, 300);
+ $this.bind('keyup click mousemove', reset);
+ });
+}
+
+function observeProjectModules() {
+ var f = function() {
+ /* Hides trackers and issues custom fields on the new project form when issue_tracking module is disabled */
+ if ($('#project_enabled_module_names_issue_tracking').attr('checked')) {
+ $('#project_trackers').show();
+ }else{
+ $('#project_trackers').hide();
+ }
+ };
+
+ $(window).load(f);
+ $('#project_enabled_module_names_issue_tracking').change(f);
+}
+
+function initMyPageSortable(list, url) {
+ $('#list-'+list).sortable({
+ connectWith: '.block-receiver',
+ tolerance: 'pointer',
+ update: function(){
+ $.ajax({
+ url: url,
+ type: 'post',
+ data: {'blocks': $.map($('#list-'+list).children(), function(el){return $(el).attr('id');})}
+ });
+ }
+ });
+ $("#list-top, #list-left, #list-right").disableSelection();
+}
+
+var warnLeavingUnsavedMessage;
+function warnLeavingUnsaved(message) {
+ warnLeavingUnsavedMessage = message;
+
+ $('form').submit(function(){
+ $('textarea').removeData('changed');
+ });
+ $('textarea').change(function(){
+ $(this).data('changed', 'changed');
+ });
+ window.onbeforeunload = function(){
+ var warn = false;
+ $('textarea').blur().each(function(){
+ if ($(this).data('changed')) {
+ warn = true;
+ }
+ });
+ if (warn) {return warnLeavingUnsavedMessage;}
+ };
+}
+
+function setupHeartBeat(){
+ var time = 60*1000*30; // 30 mins
+ setInterval(function(){$.getJSON('/account/heartbeat');},time);
+}
+
+function setupAjaxIndicator() {
+ $('#ajax-indicator').bind('ajaxSend', function(event, xhr, settings) {
+ if(settings && settings.url && settings.url.match(/account\/heartbeat$/)){
+ return;
+ }
+ if ($('.ajax-loading').length === 0 && settings.contentType != 'application/octet-stream') {
+ $('#ajax-indicator').show();
+ }
+ });
+
+ $('#ajax-indicator').bind('ajaxStop', function() {
+ $('#ajax-indicator').hide();
+ if(MathJax && MathJax.Hub)
+ MathJax.Hub.Queue(['Typeset', MathJax.Hub]); //如果是ajax刷新页面的话,手动执行MathJax的公式显示
+ try{
+ prettyPrint(); //如果刷新出来的页面如果存在代码行的话,也需要美化
+ }catch (e){
+
+ }
+ });
+}
+
+function hideOnLoad() {
+ $('.hol').hide();
+}
+
+function addFormObserversForDoubleSubmit() {
+ $('form[method=post]').each(function() {
+ if (!$(this).hasClass('multiple-submit')) {
+ $(this).submit(function(form_submission) {
+ if ($(form_submission.target).attr('data-submitted')) {
+ form_submission.preventDefault();
+ } else {
+ $(form_submission.target).attr('data-submitted', true);
+ }
+ });
+ }
+ });
+}
+
+function blockEventPropagation(event) {
+ event.stopPropagation();
+ event.preventDefault();
+}
+
+function toggleAndSettingWordsVal(parent_widget, text_widget, value){
+ text_widget.val(value)
+ parent_widget.slideToggle(400)
+}
+function transpotUrl (scope) {
+ $(scope).each(function(){
+ var tmpContent = $(this).html();
+ tmpContent = tmpContent.replace(/(^|[^\"\'])(http|ftp|mms|rstp|news|https)(\:\/\/[^<\s\+,,]+)/gi,"$1$2$3<\/a>");
+ // tmpContent = tmpContent.replace(/(^|[^\/])(www\.[^<\s\+,,]+)/gi,"$1$2");
+ $(this).html(tmpContent);
+ });
+}
+
+$(document).ready(setupAjaxIndicator);
+$(document).ready(setupHeartBeat);
+$(document).ready(hideOnLoad);
+$(document).ready(addFormObserversForDoubleSubmit);
+
+function img_thumbnails() {
+ $('.thumbnails a').colorbox({rel:'nofollow'});
+ $('.attachments').find('a').each(function(index, element) {
+ var href_value = $(element).attr('href');
+ if (/\.(jpg|png|gif|bmp|jpeg|PNG|BMP|GIF|JPG|JPEG)$/.test(href_value)) {
+ $(element).colorbox({rel:'nofollow'});
+ }
+ });
+ $('.for_img_thumbnails').find('a').each(function(index, element) {
+ var href_value = $(element).attr('href');
+ if (/\.(jpg|png|gif|bmp|jpeg|PNG|BMP|GIF|JPG|JPEG)$/.test(href_value)) {
+ $(element).colorbox({rel:'nofollow'});
+ }
+ });
+}
+$(document).ready(img_thumbnails);
+
+function TimeClose(dateText, inst) {
+ if(inst.id=="issue_start_date"){
+ time=dateText;
+ }
+}
+var time=new Date();
+function TimeBeforeShow(input){
+ if(input.id=="issue_due_date"){
+ //var minDate = $(input).datepicker('option', 'minDate');
+ var tempdata=$("#issue_start_date").attr("value");
+
+ $(input).datepicker('option', 'minDate',new Date(tempdata.replace(/-/g, "/")));
+ //$('.selector').datepicker('option', 'minDate', '12/25/2012');
+ }
+}
+
+function SetMinValue(){
+ /// var tempdata=$("#issue_start_date").attr("value");
+ //$('.selector').datepicker('option', 'minDate', '12/25/2012');
+ //alert(tempdata);
+ //$("#issue_due_date").datepicker({
+ // minDate: new Date(2014,08,23)
+ //var datepickerOptions=
+ //{dateFormat: 'yy-mm-dd',minDate: new Date(2014,08,23), showOn: 'button', buttonImageOnly: true, buttonImage: "path_to_image('/images/calendar.png')", showButtonPanel: true, showWeek: true, showOtherMonths: true, selectOtherMonths: true};
+ //alert( $('.issue_due_date').length);
+ //$('.selector')[1].datepicker('option', 'minDate', new Date(2014, 0 - 8, 23));
+ //$("#issue_due_date").datepicker(datepickerOptions);
+ //$("##{issue_due_date}").datepicker(datepickerOptions);
+ //$("#issue_due_date").datepicker(
+ // {dateFormat: 'yy-mm-dd',minDate: new Date(2014,08,23), showOn: 'button', buttonImageOnly: true, buttonImage: "path_to_image('/images/calendar.png')", showButtonPanel: true, showWeek: true, showOtherMonths: true, selectOtherMonths: true}
+ //)
+ //});
+}
+function PrecentChange(obj){
+ var _v= obj;
+ if(_v==100)
+ {
+ //var select=$("select[id='issue_status_id']");
+ $("select[id='issue_status_id']").find("option[value='3']").attr("selected","selected");
+ }
+ else if(_v==0)
+ {
+ //alert(1);
+ $("select[id='issue_status_id']").find("option[value='1']").attr("selected","selected");
+ }
+ else if(_v!=100&&_v!=0)
+ {
+ // alert(2);
+ $("select[id='issue_status_id']").find("option[value='2']").attr("selected","selected");
+ }
+}
+
+//added by lizanle 日期選擇js
+function HS_DateAdd(interval,number,date){
+ number = parseInt(number);
+ if (typeof(date)=="string"){var date = new Date(date.split("-")[0],date.split("-")[1],date.split("-")[2])}
+ if (typeof(date)=="object"){var date = date}
+ switch(interval){
+ case "y":return new Date(date.getFullYear()+number,date.getMonth(),date.getDate()); break;
+ case "m":return new Date(date.getFullYear(),date.getMonth()+number,checkDate(date.getFullYear(),date.getMonth()+number,date.getDate())); break;
+ case "d":return new Date(date.getFullYear(),date.getMonth(),date.getDate()+number); break;
+ case "w":return new Date(date.getFullYear(),date.getMonth(),7*number+date.getDate()); break;
+ }
+}
+function checkDate(year,month,date){
+ var enddate = ["31","28","31","30","31","30","31","31","30","31","30","31"];
+ var returnDate = "";
+ if (year%4==0){enddate[1]="29"}
+ if (date>enddate[month]){returnDate = enddate[month]}else{returnDate = date}
+ return returnDate;
+}
+
+function WeekDay(date){
+ var theDate;
+ if (typeof(date)=="string"){theDate = new Date(date.split("-")[0],date.split("-")[1],date.split("-")[2]);}
+ if (typeof(date)=="object"){theDate = date}
+ return theDate.getDay();
+}
+function HS_calender(){
+ var lis = "";
+ var style = "";
+ /*可以把下面的css剪切出去独立一个css文件*/
+ style +="";
+
+ var now;
+ if (typeof(arguments[0])=="string"){
+ selectDate = arguments[0].split("-");
+ var year = selectDate[0];
+ var month = parseInt(selectDate[1])-1+"";
+ var date = selectDate[2];
+ now = new Date(year,month,date);
+ }else if (typeof(arguments[0])=="object"){
+ now = arguments[0];
+ }
+ var lastMonthEndDate = HS_DateAdd("d","-1",now.getFullYear()+"-"+now.getMonth()+"-01").getDate();
+ var lastMonthDate = WeekDay(now.getFullYear()+"-"+now.getMonth()+"-01");
+ var thisMonthLastDate = HS_DateAdd("d","-1",now.getFullYear()+"-"+(parseInt(now.getMonth())+1).toString()+"-01");
+ var thisMonthEndDate = thisMonthLastDate.getDate();
+ var thisMonthEndDay = thisMonthLastDate.getDay();
+ var todayObj = new Date();
+ today = todayObj.getFullYear()+"-"+todayObj.getMonth()+"-"+todayObj.getDate();
+
+ for (i=0; i" + lis;
+ lastMonthEndDate--;
+ }
+ for (i=1; i<=thisMonthEndDate; i++){ // Current Month's Date
+
+ if(today == now.getFullYear()+"-"+now.getMonth()+"-"+i){
+ var todayString = now.getFullYear()+"-"+(parseInt(now.getMonth())+1).toString()+"-"+i;
+ lis += ""+i+"";
+ }else{
+ lis += ""+i+"";
+ }
+
+ }
+ var j=1;
+ for (i=thisMonthEndDay; i<6; i++){ // Next Month's Date
+ lis += ""+j+"";
+ j++;
+ }
+ lis += style;
+
+ var CalenderTitle = "»";
+ CalenderTitle += "«";
+ CalenderTitle += ""+now.getFullYear()+"年"+(parseInt(now.getMonth())+1).toString()+"月";
+
+ if (arguments.length>1){
+ arguments[1].parentNode.parentNode.getElementsByTagName("ul")[1].innerHTML = lis;
+ arguments[1].parentNode.innerHTML = CalenderTitle;
+
+ }else{
+ var CalenderBox = style+"";
+ return CalenderBox;
+ }
+}
+function _selectThisDay(d){
+ var boxObj = d.parentNode.parentNode.parentNode.parentNode.parentNode;
+ boxObj.targetObj.value = d.title;
+ boxObj.parentNode.removeChild(boxObj);
+}
+function closeCalender(d){
+ var boxObj = d.parentNode.parentNode.parentNode;
+ boxObj.parentNode.removeChild(boxObj);
+}
+
+function CalenderselectYear(obj){
+ var opt = "";
+ var thisYear = obj.innerHTML;
+ for (i=1970; i<=2020; i++){
+ if (i==thisYear){
+ opt += "";
+ }else{
+ opt += "";
+ }
+ }
+ opt = "";
+ obj.parentNode.innerHTML = opt;
+}
+
+function selectThisYear(obj){
+ HS_calender(obj.value+"-"+obj.parentNode.parentNode.getElementsByTagName("span")[1].getElementsByTagName("a")[0].innerHTML+"-1",obj.parentNode);
+}
+
+function CalenderselectMonth(obj){
+ var opt = "";
+ var thisMonth = obj.innerHTML;
+ for (i=1; i<=12; i++){
+ if (i==thisMonth){
+ opt += "";
+ }else{
+ opt += "";
+ }
+ }
+ opt = "";
+ obj.parentNode.innerHTML = opt;
+}
+function selectThisMonth(obj){
+ HS_calender(obj.parentNode.parentNode.getElementsByTagName("span")[0].getElementsByTagName("a")[0].innerHTML+"-"+obj.value+"-1",obj.parentNode);
+}
+function HS_setDate(inputObj){
+ var calenderObj = document.createElement("span");
+ calenderObj.innerHTML = HS_calender(new Date());
+ calenderObj.style.position = "absolute";
+ calenderObj.targetObj = inputObj;
+ inputObj.parentNode.insertBefore(calenderObj,inputObj.nextSibling);
+}
+//lizanle 刷新函数
+function redo() {
+ window.location.reload()
+}
+
+function encodeHomeworkUrl(url, is_base64){
+ if(typeof is_base64 === 'boolean' && is_base64){
+ return '/zipdown/download?base64file='+url;
+ }
+ var file = encodeURI(url).replace(/\+/g, '%2B');
+ return '/zipdown/download?file='+file;
+}
+
+//// 作业附件删除
+$(function(){
+ $('.attachments a.delete-homework-icon').bind('ajax:complete', //this will work
+ function(event, data, status, xhr) { //note parametes
+ $(this).parent('p').remove();
+ console.log("delete complete.");
+ });
+
+ $('a.tb_all').bind('ajax:complete', function (event, data, status, xhr) {
+ if(status == 'success'){
+ var res = JSON.parse(data.responseText);
+ if(res.length<1){
+ return;
+ }
+
+ if(res.length==1){
+ if(res[0].base64file){
+ location.href = encodeHomeworkUrl(res[0].base64file, true);return;
+ }
+ location.href = encodeHomeworkUrl(res[0].file);return;
+ }
+
+ document.getElementById('light').style.display='block';
+ $container = $('#light .upload_box_ul');
+ $container.empty();
+ for(var i = 0; i 1){
+ des = '第'+res[i].index+'-'+(res[i].count+res[i].index-1)+'个学生的作品下载';
+ } else {
+ des = '第'+res[i].index+'个学生的作品下载';
+ }
+
+ if(res[i].base64file){
+ $(''+(i+1)+'. '+des+' (共'+res[i].size+'M) ').appendTo($container);
+ } else {
+ $(''+(i+1)+'. '+des+' (共'+res[i].size+'M) ').appendTo($container);
+ }
+ }
+ }
+ });
+ $('#download_homework_attachments').bind('ajax:complete', function (event, data, status, xhr) {
+ if(status == 'success'){
+ var res = JSON.parse(data.responseText);
+ if(res.length == null){
+ alert("该作业没有任何附件可下载");
+ }
+ else if(res.length<1){
+ return;
+ }
+ else
+ {
+ if(res.length==1){
+ if(res[0].base64file){
+ location.href = encodeHomeworkUrl(res[0].base64file, true);return;
+ }
+ location.href = encodeHomeworkUrl(res[0].file);return;
+ }
+ document.getElementById('light').style.display='block';
+ $container = $('#light .upload_box_ul');
+ $container.empty();
+ for(var i = 0; i 1){
+ des = '第'+res[i].index+'-'+(res[i].count+res[i].index-1)+'个学生的作品下载';
+ } else {
+ des = '第'+res[i].index+'个学生的作品下载';
+ }
+
+ if(res[i].base64file){
+ $(''+(i+1)+'. '+des+' (共'+res[i].size+'M) ').appendTo($container);
+ } else {
+ $(''+(i+1)+'. '+des+' (共'+res[i].size+'M) ').appendTo($container);
+ }
+
+ }
+ }
+ }
+ });
+});
+
+
+//firefox的pre标签换行
+$(document).ready(function () {
+ var userAgent = navigator.userAgent.toLowerCase();
+ var browser = {
+ version: (userAgent.match(/.+(?:rv|it|ra|ie)[/: ]([d.]+)/) || [])[1],
+ safari: /webkit/.test(userAgent),
+ opera: /opera/.test(userAgent),
+ msie: /msie/.test(userAgent) && !/opera/.test(userAgent),
+ mozilla: /mozilla/.test(userAgent) && !/(compatible|webkit)/.test(userAgent)
+ };
+ if (browser.mozilla || browser.opera){
+ $("pre").addClass("break_word_firefox");
+ }
+ else{
+ $("pre").addClass("break_word");
+ }
+});
+
+//点击发送资源弹出框中的组织,要更改选择栏目中的内容
+//@dom 选中的radio,值为org_id
+function change_org_subfield(url){
+ $.ajax({
+ type:'get',
+ url:url
+ })
+}
+
+//点击图片即显示大图
+function showNormalImage(id) {
+ var description_images=$('div#'+id).find("img");
+ if (description_images.length>0) {
+ for (var i=0; i").attr("href",image.attr('src'));
+ image.wrap(element);
+ $(image).parent().colorbox({rel:'nofollow', close: "关闭", returnFocus: false});
+ }
+ //$('#'+id+' a').colorbox({rel:'nofollow', close: "关闭", returnFocus: false}); //有图片才将链接变为弹出框
+ }
+
+}
+
+
+//文件、帖子、通知分享
+function org_id_click(){
+ var sendText = $("input[name='org_id']:checked").next().text();
+ var orgDirection = "目标地址:";
+ $(".orgDirection").text(orgDirection + sendText);
+}
+function subfield_click(){
+ var sendText = $("input[name='org_id']:checked").next().text();
+ var orgDirection = "目标地址:";
+ var sendColumn = $("input[name='subfield']:checked").next().text();
+ $(".orgDirection").text(orgDirection + sendText + " / " + sendColumn);
+}
+
+//send_type:发送的类型,file对应文件,message对应帖子,news对应通知或新闻
+function observeSearchfieldOnInput(fieldId, url,send_id,send_ids, send_type) {
+ $('#'+fieldId).each(function() {
+ var $this = $(this);
+ $this.addClass('autocomplete');
+ $this.attr('data-value-was', $this.val());
+ var check = function() {
+ var val = $this.val();
+ if ($this.attr('data-value-was') != val){
+ $this.attr('data-value-was', val);
+ $.ajax({
+ url: url,
+ type: 'get',
+ data: {search: $this.val(),send_id:send_id,send_ids:send_ids, send_type:send_type},
+ success: function(data){ },
+ beforeSend: function(){ $this.addClass('ajax-loading'); },
+ complete: function(){ $this.removeClass('ajax-loading'); }
+ });
+ }
+ };
+ var reset = function() {
+ if (timer) {
+ clearInterval(timer);
+ timer = setInterval(check, 300);
+ }
+ };
+ var timer = setInterval(check, 300);
+ $this.bind('keyup click mousemove', reset);
+ });
+}
+function check_des(event){
+ if($(".sectionContent").find('input[type="radio"]:checked').length <= 0){
+ event.preventDefault();
+ $(".orgDirection").text('目标地址组织不能为空');
+ return false;
+ }else if($(".columnContent").find('input[type="radio"]:checked').length <= 0){
+ event.preventDefault();
+ $(".orgDirection").text('目标地址栏目不能为空');
+ return false;
+ }else{
+ return true;
+ }
+}
+
+var sendType = '1';
+var lastSendType ;//初始为发送到我的课程
+function show_send(id, user_id, send_type){
+ if (lastSendType === '2'){ //如果已经发送过一次了,那么就应该沿用上次发送的类型。
+ $.ajax({
+ type: 'get',
+ url: '/users/' + user_id + '/search_user_project',
+ data:{send_id:id, send_type:send_type}
+ });
+ }else if(lastSendType == '1'){
+ $.ajax({
+ type: 'get',
+ url: '/users/' + user_id + '/search_user_course',
+ data:{send_id:id, send_type:send_type}
+ });
+ }else if( lastSendType == '3'){//组织
+ $.ajax({
+ type: 'get',
+ url: '/users/' + user_id + '/search_user_org',
+ data:{send_id:id, send_type:send_type}
+ });
+ }else{
+ $.ajax({
+ type: 'get',
+ url: '/users/' + user_id + '/search_user_course',
+ data:{send_id:id, send_type:send_type}
+ });
+ }
+}
+
+//id 发送的id
+//发送的id数组
+//send_type:发送的类型,file对应文件,message对应帖子,news对应通知或新闻
+function chooseSendType(res_id,res_ids, user_id, send_type){
+
+ sendType = $(".resourcesSendType").val();
+ if (sendType === lastSendType) {
+ return;
+ } else if(lastSendType != null) { //不是第一次点击的时候
+ if (sendType == '1') {
+ $.ajax({
+ type: 'get',
+ url: '/users/' + user_id + '/search_user_course',
+ data:{send_id:res_id, send_type:send_type}
+ });
+ } else if(sendType == '2') {
+ $.ajax({
+ type: 'get',
+ url: '/users/' + user_id + '/search_user_project',
+ data:{send_id:res_id, send_type:send_type}
+ });
+ }else if(sendType == '3'){
+ $.ajax({
+ type: 'get',
+ url: '/users/' + user_id + '/search_user_org',
+ data:{send_id:res_id, send_type:send_type}
+ });
+ }
+ }
+ lastSendType = sendType;
+}
+
+//组织新建和配置中,选择组织为私有后,disbled掉允许游客下载选项
+function disable_down(source, des, hint){
+ if (source.attr("checked")){
+ des.attr("disabled", false);
+ hint.html("");
+ }
+ else{
+ des.attr("checked", false);
+ des.attr("disabled", true);
+ hint.html("(私有组织不允许游客下载资源)");
+
+ }
+}
+
+function getRootPath(){
+ //获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp
+ var curWwwPath=window.document.location.href;
+ //获取主机地址之后的目录,如: uimcardprj/share/meun.jsp
+ var pathName=window.document.location.pathname;
+ var pos=curWwwPath.indexOf(pathName);
+ //获取主机地址,如: http://localhost:8083
+ var localhostPaht=curWwwPath.substring(0,pos);
+ //获取带"/"的项目名,如:/uimcardprj
+// var projectName=pathName.substring(0,pathName.substr(1).indexOf('/')+1);
+ var projectName="";
+ return(localhostPaht+projectName);
+}
+//自动保存草稿
+var editor2;
+function elocalStorage(editor,mdu){
+ if (window.sessionStorage){
+ editor2 = editor;
+ var oc = window.sessionStorage.getItem('content'+mdu);
+ if(oc !== null ){
+ var h = '您上次有已保存的数据,是否恢复 ? / 不恢复';
+ $('#e_tips').html(h);
+ }
+ setInterval(function() {
+ d = new Date();
+ var h = d.getHours();
+ var m = d.getMinutes();
+ var s = d.getSeconds();
+ h = h < 10 ? '0' + h : h;
+ m = m < 10 ? '0' + m : m;
+ s = s < 10 ? '0' + s : s;
+ if(!editor.isEmpty()){
+ add_data("content",mdu,editor.html());
+ $('#e_tip').html(" 数据已于 " + h + ':' + m + ':' + s +" 保存 ");
+ $('#e_tips').html("");
+ }
+ },10000);
+
+ }else{
+ $('.ke-edit').after('您的浏览器不支持localStorage.无法开启自动保存草稿服务,请升级浏览器!');
+ }
+}
+function add_data(k,mdu,d){
+ window.sessionStorage.setItem(k+mdu,d);
+}
+function rec_data(k,mdu){
+ if(window.sessionStorage.getItem(k+mdu) !== null){
+ editor2.html(window.sessionStorage.getItem(k+mdu));
+ clear_data(k,mdu);
+ }
+}
+function clear_data(k,mdu){
+ window.sessionStorage.removeItem(k+mdu);
+ if(k == 'content'){
+ $("#e_tips").html("");
+ }else{
+ $("#e_tip").html("");
+ }
+}
diff --git a/public/javascripts/des_kindEditor.js b/public/javascripts/des_kindEditor.js
index f8aff0be7..3a05c909d 100644
--- a/public/javascripts/des_kindEditor.js
+++ b/public/javascripts/des_kindEditor.js
@@ -1,3 +1,4 @@
+var editor2;
function init_des_editor(params){
// var minHeight; //最小高度
var paramsHeight = params.height; //设定的高度
@@ -32,7 +33,7 @@ function init_des_editor(params){
paramsHeight = paramsHeight == undefined ? params.kindutil.removeUnit(this.height) : paramsHeight;
edit.iframe.height(paramsHeight);
this.resize(null, Math.max((params.kindutil.IE ? body.scrollHeight : body.offsetHeight), paramsHeight));
-
+ elocalStorage(editor2,'org_document');
}
}).loadPlugin('paste');
return editor;
@@ -123,6 +124,7 @@ function init_des_data(){
params.width = width;
if (params.textarea.data('init') == undefined) {
params.editor = init_des_editor(params);
+ editor2 = params.editor;
init_form(params);
params.cancel_btn.click(function () {
nh_reset_form(params);
diff --git a/public/stylesheets/base.css b/public/stylesheets/base.css
index bd303a35f..c36925040 100644
--- a/public/stylesheets/base.css
+++ b/public/stylesheets/base.css
@@ -1,109 +1,109 @@
-/* CSS Document */
-/* 2015-06-26 */
-.navContainer h1,h2,h3,h4,h5,h6,hr,blockquote,dl,dt,dd,ul,ol,li,pre,form,fieldset,legend,button,input,textarea,th,td{ margin:0; padding:0;}
-.navContainer body,table,input,textarea,select,button { font-family: "微软雅黑","宋体"; font-size:12px;line-height:1.5;}
-div,img,tr,td,table{ border:0;}
-table,tr,td{border:0;cellspacing:0; cellpadding:0;}
-ol,ul,li{ list-style-type:none}
-a:link,a:visited{text-decoration:none;}
-/*a:hover,a:active{color:#000;}*/
-/*常用*/
-/*#RSide{ background:#fff;}*/
-/*上传图片处理*/
-.navSearchTypeBox{margin-top: 32px;}
-#navHomepageSearch{margin-top: 11px;background-color: white;}
-.upload_img img{max-width: 100%;}
-blockquote img{max-width: 100%;}
-.hidden{overflow:hidden; white-space: nowrap; text-overflow:ellipsis;}
-.none{display: none;}
-.rside_back{ width:670px; margin-left:10px; background:#fff; margin-bottom:10px;}
-.break_word{ word-break:break-all; word-wrap: break-word;}
-select,input,textarea{ border:1px solid #64bdd9; background:#fff; color:#000; padding-left:5px; }
-.sub_btn{ cursor:pointer; -moz-border-radius:3px; -webkit-border-radius:3px; border:1px solid #707070; color:#000; border-radius:3px; padding:1px 10px; background:#dbdbdb;}
-.sub_btn:hover{ background:#b5e2fa; color:#000; border:1px solid #3c7fb1;}
-/*table{ background:#fff;}*/
-.more{ font-weight:normal; color:#999; font-size:12px;}
-.no_line{ border-bottom:none;}
-.line{border-bottom:1px dashed #d4d4d4; padding-bottom:10px; margin-bottom:10px;}
-.no_border{ border:none;background:none;}
-.min_search{ width:150px; height:20px; border:1px solid #d0d0d0; color:#666; background:url(../images/public_icon.png) 135px -193px no-repeat; cursor:pointer;}
-.db {display:block;}
-/* font & color */
-.f12{font-size:12px; font-weight:normal;}
-.f14{font-size:14px;}
-.f16{font-size:16px;}
-.f18{font-size:18px;}
-.fb{font-weight:bold;}
-
-/* Float & Clear */
-.cl{ clear:both; overflow:hidden; }
-.fl{float:left;display:inline;}
-.fr{float:right;display:inline;}
-.f_l{ float:left;}
-.f_r{ float:right;}
-.clearfix:after{clear:both;content:".";display:block;font-size:0;height:0;line-height:0;visibility:hidden}
-.clearfix{clear:both;zoom:1}
-.break_word{ word-break:break-all; word-wrap: break-word;}
-.white_space{white-space:nowrap;}
-a.c_white{ color:#fff !important;}
-input.c_white { color:#fff !important;}
-
-/* Spacing */
-.ml2{ margin-left:2px;}
-.ml3{ margin-left:3px;}
-.ml4{ margin-left:4px;}
-.ml5{ margin-left:5px;}
-.ml8{ margin-left:8px;}
-.ml10{ margin-left:10px;}
-.ml15{ margin-left:15px;}
-.ml20{ margin-left:20px;}
-.ml40{ margin-left:40px;}
-.ml45{ margin-left:45px;}
-.ml55{ margin-left:55px;}
-.ml30{ margin-left:30px;}
-.ml60{ margin-left:60px;}
-.ml80{ margin-left:80px;}
-.ml90{ margin-left:90px;}
-.ml100{ margin-left:100px;}
-.ml110{ margin-left:110px;}
-.ml150 { margin-left:150px;}
-.mr5{ margin-right:5px;}
-.mr45 {margin-right:45px;}
-.mr55{ margin-right:55px;}
-.mr10{ margin-right:10px;}
-.mr15 {margin-right:15px;}
-.mr20{ margin-right:20px;}
-.mr30{ margin-right:30px;}
-.mr40{ margin-right:40px;}
-.mw20{ margin: 0 20px;}
-.mt3{ margin-top:3px;}
-.mt5{ margin-top:5px;}
-.mt8{ margin-top:8px;}
-.mt10{ margin-top:10px !important;}
-.mt15 {margin-top:15px;}
-.mb4{ margin-bottom:4px;}
-.mb5{ margin-bottom:5px;}
-.mb8 {margin-bottom:8px;}
-.mb10{ margin-bottom:10px !important;}
-.mb20{ margin-bottom:20px;}
-.pl15{ padding-left:15px;}
-.w20{ width:20px;}
-.w60{ width:60px;}
-.w70{ width:70px;}
-.w90{ width:90px;}
-.w210{ width:210px;}
-.w150{ width:150px;}
-.w280{ width:280px;}
-.w430{ width:470px;}
-.w520{ width:520px;}
-.w543{ width:543px;}
-.w557{ width:557px;}
-.w583{ width:583px;}
-.w350{ width:350px;}
-.w610{ width:610px;}
-.w600{ width:600px;}
-.h22{ height:22px;}
-.h26{ height:26px;}
-.h50{ height:50px;}
-.h70{ height:70px;}
+/* CSS Document */
+/* 2015-06-26 */
+.navContainer h1,h2,h3,h4,h5,h6,hr,blockquote,dl,dt,dd,ul,ol,li,pre,form,fieldset,legend,button,input,textarea,th,td{ margin:0; padding:0;}
+.navContainer body,table,input,textarea,select,button { font-family: "微软雅黑","宋体"; font-size:12px;line-height:1.5;}
+div,img,tr,td,table{ border:0;}
+table,tr,td{border:0;cellspacing:0; cellpadding:0;}
+ol,ul,li{ list-style-type:none}
+a:link,a:visited{text-decoration:none;}
+/*a:hover,a:active{color:#000;}*/
+/*常用*/
+/*#RSide{ background:#fff;}*/
+/*上传图片处理*/
+.navSearchTypeBox{margin-top: 32px;}
+#navHomepageSearch{margin-top: 11px;background-color: white;}
+.upload_img img{max-width: 100%;}
+blockquote img{max-width: 100%;}
+.hidden{overflow:hidden; white-space: nowrap; text-overflow:ellipsis;}
+.none{display: none;}
+.rside_back{ width:670px; margin-left:10px; background:#fff; margin-bottom:10px;}
+.break_word{ word-break:break-all; word-wrap: break-word;}
+select,input,textarea{ border:1px solid #64bdd9; background:#fff; color:#000; padding-left:5px; }
+.sub_btn{ cursor:pointer; -moz-border-radius:3px; -webkit-border-radius:3px; border:1px solid #707070; color:#000; border-radius:3px; padding:1px 10px; background:#dbdbdb;}
+.sub_btn:hover{ background:#b5e2fa; color:#000; border:1px solid #3c7fb1;}
+/*table{ background:#fff;}*/
+.more{ font-weight:normal; color:#999; font-size:12px;}
+.no_line{ border-bottom:none;}
+.line{border-bottom:1px dashed #d4d4d4; padding-bottom:10px; margin-bottom:10px;}
+.no_border{ border:none;background:none;}
+.min_search{ width:150px; height:20px; border:1px solid #d0d0d0; color:#666; background:url(../images/public_icon.png) 135px -193px no-repeat; cursor:pointer;}
+.db {display:block;}
+/* font & color */
+.f12{font-size:12px; font-weight:normal;}
+.f14{font-size:14px;}
+.f16{font-size:16px;}
+.f18{font-size:18px;}
+.fb{font-weight:bold;}
+
+/* Float & Clear */
+.cl{ clear:both; overflow:hidden; }
+.fl{float:left;display:inline;}
+.fr{float:right;display:inline;}
+.f_l{ float:left;}
+.f_r{ float:right;}
+.clearfix:after{clear:both;content:".";display:block;font-size:0;height:0;line-height:0;visibility:hidden}
+.clearfix{clear:both;zoom:1}
+.break_word{ word-break:break-all; word-wrap: break-word;}
+.white_space{white-space:nowrap;}
+a.c_white{ color:#fff !important;}
+input.c_white { color:#fff !important;}
+
+/* Spacing */
+.ml2{ margin-left:2px;}
+.ml3{ margin-left:3px;}
+.ml4{ margin-left:4px;}
+.ml5{ margin-left:5px;}
+.ml8{ margin-left:8px;}
+.ml10{ margin-left:10px;}
+.ml15{ margin-left:15px;}
+.ml20{ margin-left:20px;}
+.ml40{ margin-left:40px;}
+.ml45{ margin-left:45px;}
+.ml55{ margin-left:55px;}
+.ml30{ margin-left:30px;}
+.ml60{ margin-left:60px;}
+.ml80{ margin-left:80px;}
+.ml90{ margin-left:90px;}
+.ml100{ margin-left:100px;}
+.ml110{ margin-left:110px;}
+.ml150 { margin-left:150px;}
+.mr5{ margin-right:5px;}
+.mr45 {margin-right:45px;}
+.mr55{ margin-right:55px;}
+.mr10{ margin-right:10px;}
+.mr15 {margin-right:15px;}
+.mr20{ margin-right:20px;}
+.mr30{ margin-right:30px;}
+.mr40{ margin-right:40px;}
+.mw20{ margin: 0 20px;}
+.mt3{ margin-top:3px;}
+.mt5{ margin-top:5px;}
+.mt8{ margin-top:8px;}
+.mt10{ margin-top:10px !important;}
+.mt15 {margin-top:15px;}
+.mb4{ margin-bottom:4px;}
+.mb5{ margin-bottom:5px;}
+.mb8 {margin-bottom:8px;}
+.mb10{ margin-bottom:10px !important;}
+.mb20{ margin-bottom:20px;}
+.pl15{ padding-left:15px;}
+.w20{ width:20px;}
+.w60{ width:60px;}
+.w70{ width:70px;}
+.w90{ width:90px;}
+.w210{ width:210px;}
+.w150{ width:150px;}
+.w280{ width:280px;}
+.w430{ width:470px;}
+.w520{ width:520px;}
+.w543{ width:543px;}
+.w557{ width:557px;}
+.w683{ width:683px;}
+.w350{ width:350px;}
+.w610{ width:610px;}
+.w600{ width:600px;}
+.h22{ height:22px;}
+.h26{ height:26px;}
+.h50{ height:50px;}
+.h70{ height:70px;}
.h150{ height:150px;}
\ No newline at end of file
diff --git a/public/stylesheets/courses.css b/public/stylesheets/courses.css
index 108f1cd2e..346fc5b54 100644
--- a/public/stylesheets/courses.css
+++ b/public/stylesheets/courses.css
@@ -1267,7 +1267,7 @@ div.disable_link {background-color: #c1c1c1 !important;}
/*导入题库样式*/
.popupWrap {border:3px solid #269ac9; padding:15px; background-color:#ffffff; position:relative; z-index:1000;}
.subjectList {width:585px;}
-.subjectDetail {width:385px;}
+.subjectDetail {width:285px;}
a.subjectChoose {padding:8px 20px; background-color:#f1f1f1; color:#888888;}
a.chooseActive {background-color:#269ac9; color:#ffffff;}
.subjectBanner {width:585px; height:40px; background-color:#f1f1f1; border-top:1px solid #eaeaea; color:#7a7a7a; font-size:14px;}
@@ -1278,7 +1278,7 @@ a.chooseActive {background-color:#269ac9; color:#ffffff;}
.subjectRow {width:585px; height:40px; color:#7a7a7a; font-size:12px;}
.subjectRow li {height:40px; line-height:40px; vertical-align:middle;}
.subjectSearch {border:1px solid #dddddd; height:32px; width:250px;}
-.subjectInfo {width:385px; background-color:#f1f1f1; border:1px solid #dddddd; height:32px; line-height:32px; vertical-align:middle; text-align:center; color:#7a7a7a;}
+.subjectInfo {width:285px; background-color:#f1f1f1; border:1px solid #dddddd; height:32px; line-height:32px; vertical-align:middle; text-align:center; color:#7a7a7a;}
.subjectWrap {border:1px solid #dddddd; border-top:none; padding:10px; width:365px; height:460px; overflow-y:auto;}
.subjectIntro {color:#585858; line-height:18px; font-size:12px;}
.subjectContent {color:#888888; line-height:18px; font-size:12px;}
diff --git a/public/stylesheets/new_user.css b/public/stylesheets/new_user.css
index 4669d043e..498b19df3 100644
--- a/public/stylesheets/new_user.css
+++ b/public/stylesheets/new_user.css
@@ -135,7 +135,7 @@ a.linkGrey6:hover {color:#ffffff !important;}
.w520{ width:520px;}
.w543{ width:543px;}
.w557{ width:557px;}
-.w583{ width:583px;}
+.w683{ width:683px;}
.w350{ width:350px;}
.w610{ width:610px;}
.w600{ width:600px;}
@@ -1440,50 +1440,50 @@ span.at a{color:#269ac9;text-decoration: none;}
/*导入题库样式*/
.popup-wrapper {border:3px solid #269ac9; padding:15px; background-color:#ffffff; position:relative; z-index:1000;}
-.subject-list {width:585px;}
-.subject-detail {width:385px;}
+.subject-list {width:685px;}
+.subject-detail {width:285px;}
a.subject-choose {padding:8px 20px; background-color:#f1f1f1; color:#888888;}
a.choose-active {background-color:#269ac9; color:#ffffff;}
-.subject-pop-banner {width:585px; height:40px; background-color:#f1f1f1; border-top:1px solid #eaeaea; color:#7a7a7a; font-size:14px;}
+.subject-pop-banner {width:685px; height:40px; background-color:#f1f1f1; border-top:1px solid #eaeaea; color:#7a7a7a; font-size:14px;}
.subject-pop-banner li {height:40px; line-height:40px; vertical-align:middle;}
-.subject-pop-name {width:200px; padding-left:10px; padding-right:10px;}
+.subject-pop-name {width:260px; padding-left:10px; padding-right:10px;}
.subject-pop-publisher {width:80px; text-align:center;}
.subject-pop-date {width:75px; text-align:center;}
-.subject-pop-row {width:585px; height:30px; color:#7a7a7a; font-size:12px;}
+.subject-pop-row {width:685px; height:30px; color:#7a7a7a; font-size:12px;}
.subject-pop-row li {height:30px; line-height:30px; vertical-align:middle;}
.subject-pop-search {border:1px solid #dddddd; height:32px; width:250px;}
-.subject-pop-info {width:385px; background-color:#f1f1f1; border:1px solid #dddddd; height:32px; line-height:32px; vertical-align:middle; text-align:center; color:#7a7a7a;}
-.subject-pop-wrap {border:1px solid #dddddd; border-top:none; padding:10px; width:365px; height:475px; overflow-y:auto;}
+.subject-pop-info {width:285px; background-color:#f1f1f1; border:1px solid #dddddd; height:32px; line-height:32px; vertical-align:middle; text-align:center; color:#7a7a7a;}
+.subject-pop-wrap {border:1px solid #dddddd; border-top:none; padding:10px; width:265px; height:475px; overflow-y:auto;}
.subject-pop-intro {color:#585858; line-height:18px; font-size:12px;}
.subject-pop-content {color:#888888; line-height:18px; font-size:12px;}
.popup-close {background:url(../images/resource_icon_list.png) 0px -40px no-repeat; width:20px; height:20px; display:inline-block; position: absolute; z-index: 1000; right:10px; top:5px;}
.subject-pop-type {width:50px; text-align:center;}
.subject-pop-count {width:60px; text-align:center;}
-.subject-pop-from {width:100px; text-align:center;}
+.subject-pop-from {width:140px; text-align:center;}
.subjectContent p,.subjectContent div,.subjectContent em, .subjectContent span{text-align: justify; text-justify:inter-ideograph; word-break: normal !important; word-wrap: break-word !important; line-height: 18px !important; color:#888888 !important; font-size:12px !important;}
.whiteSettingIcon {background:url(../images/hwork_icon.png) -5px -302px no-repeat; width:20px; height:20px;}
.whiteSettingIcon:hover {background:url(../images/homepage_icon.png) -93px -44px no-repeat;}
/*20160301新题库样式*/
-.subject-list-banner {width:585px; height:34px; background-color:#f1f1f1; border-top:1px solid #eaeaea; color:#7a7a7a; font-size:14px;}
-.subject-list-banner li {height:34px; line-height:34px; vertical-align:middle;}
-.subject-list-name {width:200px; padding-left:10px; padding-right:10px;}
+.subject-list-banner {width:685px; height:40px; background-color:#f1f1f1; border-top:1px solid #eaeaea; color:#7a7a7a; font-size:14px;}
+.subject-list-banner li {height:40px; line-height:40px; vertical-align:middle;}
+.subject-list-name {width:260px; padding-left:10px; padding-right:10px;}
.subject-list-publisher {width:80px; text-align:center;}
.subject-list-date {width:70px; text-align:center;}
-.subject-list-row {width:585px; height:30px; color:#7a7a7a; font-size:12px;}
-.subject-list-row li {height:30px; line-height:30px; vertical-align:middle;}
+.subject-list-row {width:685px; height:40px; color:#7a7a7a; font-size:12px;}
+.subject-list-row li {height:40px; line-height:40px; vertical-align:middle;}
.subject-list-search {border:1px solid #dddddd; height:32px; width:250px;}
.subject-list-info {width:385px; background-color:#f1f1f1; border:1px solid #dddddd; height:32px; line-height:32px; vertical-align:middle; text-align:center; color:#7a7a7a;}
.subject-list-wrap {border:1px solid #dddddd; border-top:none; padding:10px; width:365px; height:460px; overflow-y:auto;}
-.subject-content-wrapper {border:1px solid #dddddd; border-top:none; padding:10px; width:365px; height:430px; overflow-y:auto;}
+.subject-content-wrapper {border:1px solid #dddddd; border-top:none; padding:10px; width:265px; height:430px; overflow-y:auto;}
.subject-list-type {width:50px; text-align:center;}
.subject-list-count {width:60px; text-align:center;}
-.subject-list-from {width:105px; text-align:center;}
+.subject-list-from {width:145px; text-align:center;}
/*视频播放默认图标*/
.mediaIco{margin: 30px 0 30px 20px;}
a.st_up{ display: block; width:8px; float:left; height:13px; background:url(../images/pic_up.png) 0 0 no-repeat; margin-top:5px; margin-left:3px;}
a.st_down{ display: block; width:8px; float:left; height:13px; background:url(../images/pic_up.png) 0 -22px no-repeat; margin-top:5px; margin-left:3px;}
a.st_img { display:block;width:32px; height:32px; border:1px solid #CCC; padding:1px;}
-a:hover.st_img { border:1px solid #1c9ec7; }
\ No newline at end of file
+a:hover.st_img { border:1px solid #1c9ec7; }
diff --git a/public/stylesheets/org.css b/public/stylesheets/org.css
index eaabcafa6..1d437a10a 100644
--- a/public/stylesheets/org.css
+++ b/public/stylesheets/org.css
@@ -121,7 +121,7 @@ a.link_file_a2{ background:url(../images/pic_file.png) 0 -15px no-repeat; paddin
/*导入题库样式*/
.popupWrap {border:3px solid #269ac9; padding:15px; background-color:#ffffff; position:relative; z-index:1000;}
.subjectList {width:585px;}
-.subjectDetail {width:385px;}
+.subjectDetail {width:285px;}
a.subjectChoose {padding:8px 20px; background-color:#f1f1f1; color:#888888;}
a.chooseActive {background-color:#269ac9; color:#ffffff;}
.subjectBanner {width:585px; height:40px; background-color:#f1f1f1; border-top:1px solid #eaeaea; color:#7a7a7a; font-size:14px;}
@@ -132,7 +132,7 @@ a.chooseActive {background-color:#269ac9; color:#ffffff;}
.subjectRow {width:585px; height:40px; color:#7a7a7a; font-size:12px;}
.subjectRow li {height:40px; line-height:40px; vertical-align:middle;}
.subjectSearch {border:1px solid #dddddd; height:32px; width:250px;}
-.subjectInfo {width:385px; background-color:#f1f1f1; border:1px solid #dddddd; height:32px; line-height:32px; vertical-align:middle; text-align:center; color:#7a7a7a;}
+.subjectInfo {width:285px; background-color:#f1f1f1; border:1px solid #dddddd; height:32px; line-height:32px; vertical-align:middle; text-align:center; color:#7a7a7a;}
.subjectWrap {border:1px solid #dddddd; border-top:none; padding:10px; width:365px; height:460px; overflow-y:auto;}
.subjectIntro {color:#585858; line-height:18px; font-size:12px;}
.subjectContent {color:#888888; line-height:18px; font-size:12px;}
diff --git a/public/stylesheets/project.css b/public/stylesheets/project.css
index f30838a92..f711c25e2 100644
--- a/public/stylesheets/project.css
+++ b/public/stylesheets/project.css
@@ -1182,7 +1182,7 @@ div.disable_link {background-color: #c1c1c1 !important;}
/*导入题库样式*/
.popupWrap {border:3px solid #269ac9; padding:15px; background-color:#ffffff; position:relative; z-index:1000;}
.subjectList {width:585px;}
-.subjectDetail {width:385px;}
+.subjectDetail {width:285px;}
a.subjectChoose {padding:8px 20px; background-color:#f1f1f1; color:#888888;}
a.chooseActive {background-color:#269ac9; color:#ffffff;}
.subjectBanner {width:585px; height:40px; background-color:#f1f1f1; border-top:1px solid #eaeaea; color:#7a7a7a; font-size:14px;}
@@ -1193,7 +1193,7 @@ a.chooseActive {background-color:#269ac9; color:#ffffff;}
.subjectRow {width:585px; height:40px; color:#7a7a7a; font-size:12px;}
.subjectRow li {height:40px; line-height:40px; vertical-align:middle;}
.subjectSearch {border:1px solid #dddddd; height:32px; width:250px;}
-.subjectInfo {width:385px; background-color:#f1f1f1; border:1px solid #dddddd; height:32px; line-height:32px; vertical-align:middle; text-align:center; color:#7a7a7a;}
+.subjectInfo {width:285px; background-color:#f1f1f1; border:1px solid #dddddd; height:32px; line-height:32px; vertical-align:middle; text-align:center; color:#7a7a7a;}
.subjectWrap {border:1px solid #dddddd; border-top:none; padding:10px; width:365px; height:460px; overflow-y:auto;}
.subjectIntro {color:#585858; line-height:18px; font-size:12px;}
.subjectContent {color:#888888; line-height:18px; font-size:12px;}
diff --git a/public/stylesheets/public.css b/public/stylesheets/public.css
index 6bdd8d2e2..b9f93ba43 100644
--- a/public/stylesheets/public.css
+++ b/public/stylesheets/public.css
@@ -164,7 +164,7 @@ h4{ font-size:14px; color:#3b3b3b;}
.w543{ width:543px;}
.w557{ width:557px;}
.w576{ width:576px;}
-.w583{ width:583px;}
+.w683{ width:683px;}
.w350{ width:350px;}
.w610{ width:610px;}
.w600{ width:600px !important;}
@@ -1033,26 +1033,26 @@ a:hover.userCancel{border:1px solid #888888; }
/*导入题库样式*/
.popup-wrapper {border:3px solid #269ac9; padding:15px; background-color:#ffffff; position:relative; z-index:1000;}
-.subject-list {width:585px;}
-.subject-detail {width:385px;}
+.subject-list {width:685px;}
+.subject-detail {width:285px;}
a.subject-choose {padding:8px 20px; background-color:#f1f1f1; color:#888888;}
a.choose-active {background-color:#269ac9; color:#ffffff;}
-.subject-pop-banner {width:585px; height:40px; background-color:#f1f1f1; border-top:1px solid #eaeaea; color:#7a7a7a; font-size:14px;}
+.subject-pop-banner {width:685px; height:40px; background-color:#f1f1f1; border-top:1px solid #eaeaea; color:#7a7a7a; font-size:14px;}
.subject-pop-banner li {height:40px; line-height:40px; vertical-align:middle;}
-.subject-pop-name {width:200px; padding-left:10px; padding-right:10px;}
+.subject-pop-name {width:260px; padding-left:10px; padding-right:10px;}
.subject-pop-publisher {width:80px; text-align:center;}
.subject-pop-date {width:75px; text-align:center;}
-.subject-pop-row {width:585px; height:30px; color:#7a7a7a; font-size:12px;}
+.subject-pop-row {width:685px; height:30px; color:#7a7a7a; font-size:12px;}
.subject-pop-row li {height:30px; line-height:30px; vertical-align:middle;}
.subject-pop-search {border:1px solid #dddddd; height:32px; width:250px;}
-.subject-pop-info {width:385px; background-color:#f1f1f1; border:1px solid #dddddd; height:32px; line-height:32px; vertical-align:middle; text-align:center; color:#7a7a7a;}
-.subject-pop-wrap {border:1px solid #dddddd; border-top:none; padding:10px; width:365px; height:475px; overflow-y:auto;}
+.subject-pop-info {width:285px; background-color:#f1f1f1; border:1px solid #dddddd; height:32px; line-height:32px; vertical-align:middle; text-align:center; color:#7a7a7a;}
+.subject-pop-wrap {border:1px solid #dddddd; border-top:none; padding:10px; width:265px; height:475px; overflow-y:auto;}
.subject-pop-intro {color:#585858; line-height:18px; font-size:12px;}
.subject-pop-content {color:#888888; line-height:18px; font-size:12px;}
.popup-close {background:url(../images/resource_icon_list.png) 0px -40px no-repeat; width:20px; height:20px; display:inline-block; position: absolute; z-index: 1000; right:10px; top:5px;}
.subject-pop-type {width:50px; text-align:center;}
.subject-pop-count {width:60px; text-align:center;}
-.subject-pop-from {width:100px; text-align:center;}
+.subject-pop-from {width:140px; text-align:center;}
.subjectContent p,.subjectContent div,.subjectContent em, .subjectContent span{text-align: justify; text-justify:inter-ideograph; word-break: normal !important; word-wrap: break-word !important; line-height: 18px !important; color:#888888 !important; font-size:12px !important;}
.whiteSettingIcon {background:url(../images/hwork_icon.png) -5px -302px no-repeat; width:20px; height:20px;}
@@ -1085,7 +1085,7 @@ a.resource-tab-active {color:#fff; background-color:#269ac9; border-bottom:1px s
/*导入资源样式*/
.popupWrap {border:3px solid #269ac9; padding:15px; background-color:#ffffff; position:relative; z-index:1000;}
.resoure-list {width:705px;}
-.subjectDetail {width:385px;}
+.subjectDetail {width:285px;}
.resource-pop-banner {width:705px; height:40px; background-color:#f1f1f1; border-top:1px solid #eaeaea; color:#7a7a7a; font-size:14px;}
.resource-pop-banner li {height:40px; line-height:40px; vertical-align:middle;}
.resource-pop-name {width:270px; padding-left:10px; padding-right:10px;}
@@ -1094,7 +1094,7 @@ a.resource-tab-active {color:#fff; background-color:#269ac9; border-bottom:1px s
.resource-pop-row {width:705px; height:40px; color:#7a7a7a; font-size:12px;}
.resource-pop-row li {height:40px; line-height:40px; vertical-align:middle;}
.subjectSearch {border:1px solid #dddddd; height:32px; width:250px;}
-.subjectInfo {width:385px; background-color:#f1f1f1; border:1px solid #dddddd; height:32px; line-height:32px; vertical-align:middle; text-align:center; color:#7a7a7a;}
+.subjectInfo {width:285px; background-color:#f1f1f1; border:1px solid #dddddd; height:32px; line-height:32px; vertical-align:middle; text-align:center; color:#7a7a7a;}
.subjectWrap {border:1px solid #dddddd; border-top:none; padding:10px; width:365px; height:460px; overflow-y:auto;}
.subjectIntro {color:#585858; line-height:18px; font-size:12px;}
.subjectContent {color:#888888; line-height:18px; font-size:12px;}
diff --git a/public/stylesheets/public_new.css b/public/stylesheets/public_new.css
index 99f28b257..b9f76ffbf 100644
--- a/public/stylesheets/public_new.css
+++ b/public/stylesheets/public_new.css
@@ -1,803 +1,803 @@
-/* CSS Document */
-/* 2015-06-26 */
-body,h1,h2,h3,h4,h5,h6,hr,p,blockquote,dl,dt,dd,ul,ol,li,pre,form,fieldset,legend,button,input,textarea,th,td{ margin:0; padding:0;}
-body,table,input,textarea,select,button { font-family: "微软雅黑","宋体"; font-size:12px;line-height:1.5; background:#eaebec;}
-div,img,tr,td,table{ border:0;}
-table,tr,td{border:0;cellspacing:0; cellpadding:0;}
-ol,ul,li{ list-style-type:none}
-a:link,a:visited{color:#7f7f7f;text-decoration:none;}
-a:hover,a:active{color:#15bccf;}
-/*img{max-width: 100%;}*/
-
-/*常用*/
-select,input,textarea{ border:1px solid #64bdd9; background:#fff; color:#000; padding-left:5px; }
-.sub_btn{ cursor:pointer; -moz-border-radius:3px; -webkit-border-radius:3px; border:1px solid #707070; color:#000; border-radius:3px; padding:1px 10px; background:#dbdbdb;}
-.sub_btn:hover{ background:#b5e2fa; color:#000; border:1px solid #3c7fb1;}
-table{ background:#fff;}
-.more{ font-weight:normal; color:#999; font-size:12px;}
-.no_line{ border-bottom:none;}
-.line{border-bottom:1px dashed #d4d4d4; padding-bottom:10px; margin-bottom:10px;}
-.no_border{ border:none;background:none;}
-.min_search{ width:150px; height:20px; border:1px solid #d0d0d0; color:#666; background:url(../images/public_icon.png) 135px -193px no-repeat; cursor:pointer;}
-.none{display: none;}
-
-/* font & color */
-h2{ font-size:18px; color:#15bccf;}
-h3{ font-size:14px; color:#e8770d;}
-h4{ font-size:14px; color:#3b3b3b;}
-.f12{font-size:12px; font-weight:normal;}
-.f14{font-size:14px;}
-.f16{font-size:16px;}
-.f18{font-size:18px;}
-.fb{font-weight:bold;}
-.lh20{line-height:20px;}
-.lh22{line-height:22px;}
-.lh24{line-height:24px;}
-.lh26{line-height:26px;}
-.fmYh{font-family:"MicroSoft Yahei";}
-.font999{ color:#999;}
-.fontRed{color:#770000;}
-.text_c{ text-align:center;}
-
-/* Float & Clear */
-.cl{ clear:both; overflow:hidden; }
-.fl{float:left;display:inline;}
-.fr{float:right;display:inline;}
-.f_l{ float:left;}
-.f_r{ float:right;}
-.clearfix:after{clear:both;content:".";display:block;font-size:0;height:0;line-height:0;visibility:hidden}
-.clearfix{clear:both;zoom:1}
-.break_word{ word-break:break-all; word-wrap: break-word;}
-.white_space{white-space:nowrap;}
-
-/* Spacing */
-.ml2{ margin-left:2px;}
-.ml3{ margin-left:3px;}
-.ml4{ margin-left:4px;}
-.ml5{ margin-left:5px;}
-.ml8{ margin-left:8px;}
-.ml10{ margin-left:10px;}
-.ml15{ margin-left:15px;}
-.ml20{ margin-left:20px;}
-.ml40{ margin-left:40px;}
-.ml45{ margin-left:45px;}
-.ml55{ margin-left:55px;}
-.ml30{ margin-left:30px;}
-.ml60{ margin-left:60px;}
-.ml80{ margin-left:80px;}
-.ml90{ margin-left:90px;}
-.ml100{ margin-left:100px;}
-.ml110{ margin-left:110px;}
-.mr5{ margin-right:5px;}
-.mr10{ margin-right:10px;}
-.mr20{ margin-right:20px;}
-.mr30{ margin-right:30px;}
-.mr40{ margin-right:40px;}
-.mr45{margin-right: 45px;}
-.mw15{margin:0 15px;}
-.mw20{margin:0 20px;}
-.mt3{ margin-top:3px;}
-.mt5{ margin-top:5px;}
-.mt8{ margin-top:8px;}
-.mt10{ margin-top:10px;}
-.mb5{ margin-bottom:5px;}
-.mb10{ margin-bottom:10px;}
-.mb20{ margin-bottom:20px;}
-.pl15{ padding-left:15px;}
-.w20{ width:20px;}
-.w60{ width:60px;}
-.w70{ width:70px;}
-.w90{ width:90px;}
-.w210{ width:210px;}
-.w150{ width:150px;}
-.w280{ width:280px;}
-.w430{ width:470px;}
-.w520{ width:520px;}
-.w543{ width:543px;}
-.w557{ width:557px;}
-.w583{ width:583px;}
-.w350{ width:350px;}
-.w610{ width:610px;}
-.w600{ width:600px;}
-.h22{ height:22px;}
-.h26{ height:26px;}
-.h50{ height:50px;}
-.h70{ height:70px;}
-.h150{ height:150px;}
-
-/* Font & background Color */
-a.b_grey{ background: #F5F5F5;}
-a.b_dgrey{ background: #CCC;}
-a.c_orange{color:#ff5722;}
-a:hover.c_orange{color: #d33503;}
-a.c_lorange{color:#ff9900;}
-a:hover.c_lorange{color:#fff;}
-a.c_blue{ color:#269ac9;}
-a.c_dblue{ color:#09658c;}
-a:hover.c_dblue{ color:#15bccf;}
-a.c_white{ color:#fff;}
-a.c_dorange{ color:#fd6e2a;}
-a.c_dark{color: #3e4040;}
-a:hover.c_dark{color: #3ca5c6;}
-a.b_blue{background: #64bdd9;}
-a:hover.b_blue{background: #41a8c8;}
-a.b_green{background:#28be6c;}
-a:hover.b_green{background:#14ad5a;}
-a.c_blue02{color: #3ca5c6;}
-a:hover.c_blue02{color: #0781b4;}
-a.c_red{ color:#F00;}
-a:hover.c_red{ color: #C00;}
-a.c_purple{color: #426e9a;}
-a:hover.c_purple{color: #d33503;}
-a.c_green{ color:#28be6c;}
-
-.b_grey{ background: #F5F5F5;}
-.b_dgrey{ background: #CCC;}
-.c_orange{color:#e8770d;}
-.c_dark{ color:#2d2d2d;}
-.c_lorange{ color:#ff9900;}
-.c_purple{color: #6883b6;}
-.c_blue{ color:#15bccf;}
-.c_red{ color:#F00;}
-.c_green{ color:#28be6c;}
-.c_dblue{ color:#09658c;}
-.b_blue{background:#64bdd9;}
-.b_green{background:#28be6c;}
-.b_w{ background:#fff;}
-
-/* commonBtn */
-.grey_btn{ background:#d9d9d9; color:#656565;font-size:14px; font-weight:normal; text-align:center;padding:2px 10px;}
-a.grey_btn{ background:#d9d9d9; color:#656565;font-size:14px; font-weight:normal; text-align:center;padding:2px 10px;}
-a:hover.grey_btn{ background:#717171; color:#fff;}
-.grey_n_btn{ background:#d9d9d9; color:#656565; font-weight:normal;padding:2px 10px; text-align:center;}
-a.grey_n_btn{background:#d9d9d9; color:#656565;font-weight:normal; padding:2px 10px; text-align:center;}
-a:hover.grey_n_btn{ background:#717171; color:#fff;}
-.green_btn{ background:#28be6c; color:#fff; font-size:14px; font-weight:normal;padding:2px 10px; text-align:center;}
-a.green_btn{background:#28be6c;color:#fff;font-size:14px; font-weight:normal; padding:2px 10px; text-align:center;}
-a:hover.green_btn{ background:#14ad5a;}
-.blue_btn{ background:#64bdd9; color:#fff; font-size:14px; font-weight:normal;padding:2px 10px; text-align:center;}
-a.blue_btn{background:#64bdd9;color:#fff;font-size:14px; font-weight:normal; padding:2px 10px; text-align:center;}
-a:hover.blue_btn{ background:#329cbd;}
-a.orange_btn{ background:#ff5722;color:#fff;font-size:14px; font-weight:normal; padding:2px 10px; text-align:center; }
-a:hover.orange_btn{ background:#d63502;}
-
-.green_u_btn{border:1px solid #3cb761; padding:2px 10px; color:#3cb761;}
-a.green_u_btn{border:1px solid #3cb761; padding:2px 10px; color:#3cb761;}
-a:hover.green_u_btn{ background:#3cb761; color:#fff;}
-.orange_u_btn{border:1px solid #ff5d31; padding:2px 10px; color:#ff5d31;}
-a.orange_u_btn{border:1px solid #ff5d31; padding:2px 10px; color:#ff5d31;}
-a:hover.orange_u_btn{background:#ff5d31; color:#fff;}
-.bgreen_u_btn{border:1px solid #1abc9c; padding:2px 10px; color:#1abc9c;}
-a.bgreen_u_btn{border:1px solid #1abc9c1; padding:2px 10px; color:#1abc9c;}
-a:hover.bgreen_u_btn{background:#1abc9c; color:#fff;}
-.blue_u_btn{border:1px solid #64bdd9; padding:2px 10px; color:#64bdd9;}
-a.blue_u_btn{border:1px solid #64bdd9; padding:2px 10px; color:#64bdd9;}
-a:hover.blue_u_btn{background:#64bdd9; color:#fff;}
-.blue_n_btn{ background:#64bdd9; color:#fff; font-weight:normal;padding:2px 10px; text-align:center;}
-a.blue_n_btn{background:#64bdd9;color:#fff;font-weight:normal; padding:2px 10px; text-align:center;}
-a:hover.blue_n_btn{ background:#329cbd;}
-.green_n_btn{background:#3cb761; padding:2px 10px; color:#fff;}
-a.green_n_btn{background:#3cb761; padding:2px 10px; color:#fff;}
-a:hover.green_n_btn{ background:#14ad5a;}
-.orange_n_btn{background:#ff5d31; padding:2px 10px; color:#fff;}
-a.orange_n_btn{background:#ff5d31; padding:2px 10px; color:#fff;}
-a:hover.orange_n_btn{background:#d63502;}
-.bgreen_n_btn{background:#1abc9c; padding:2px 10px; color:#fff;}
-a.bgreen_n_btn{background:#1abc9c; padding:2px 10px; color:#fff;}
-a:hover.bgreen_n_btn{background:#08a384;}
-
-.nolink_btn{ background:#BCBCBC; color: #fff; padding:2px 5px;}
-.more_btn{-moz-border-radius:3px; -webkit-border-radius:3px; border:1px solid #9DCEFF; color:#9DCEFF; border-radius:3px; padding:0px 3px;}
-.upbtn{ margin:42px 0 0 10px; border:none; color:#999; width:150px;}
-.red_btn_cir{ background:#e74c3c; padding:1px 10px; -moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px; color:#fff; font-weight:normal;font-size:12px;}
-.green_btn_cir{ background:#28be6c; padding:1px 10px; -moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px; color:#fff; font-weight:normal;font-size:12px;}
-.blue_btn_cir{ background:#3498db; padding:1px 10px; -moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px; color:#fff; font-weight:normal;font-size:12px;}
-.orange_btn_cir{ background:#e67e22; padding:1px 10px; -moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px; color:#fff; font-weight:normal; font-size:12px;}
-.bgreen_btn_cir{ background:#1abc9c; padding:1px 10px; -moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px; color:#fff; font-weight:normal; font-size:12px;}
-/* commonpic */
-.pic_date{ display:block; background:url(../images/public_icon.png) -31px 0 no-repeat; width:16px; height:15px; float:left;}
-.pic_add{ display:block; background:url(../images/public_icon.png) -31px -273px no-repeat; width:16px; height:15px; float:left;}
-.pic_sch{ display:block; background:url(../images/public_icon.png) -31px -195px no-repeat; width:16px; height:15px; float:left;}
-.pic_mes{ display:block; background:url(../images/public_icon.png) 0px -376px no-repeat; width:20px; height:15px; padding-left:18px;}
-.pic_img{ display:block; background:url(../images/public_icon.png) -31px -419px no-repeat; width:20px; height:15px; }
-.pic_del{ display:block; background:url(../images/public_icon.png) 0px -235px no-repeat; width:20px; height:15px; }
-.pic_del:hover{ background:url(../images/public_icon.png) -32px -235px no-repeat; }
-.pic_stats{display:block; background:url(../images/public_icon.png) 0px -548px no-repeat; width:20px; height:15px;}
-.pic_files{display:block; background:url(../images/public_icon.png) 0px -578px no-repeat; width:20px; height:15px;}
-.pic_text{display:block; background:url(../images/public_icon.png) 0px -609px no-repeat; width:20px; height:18px;}
-.pic_text02{display:block; background:url(../images/public_icon.png) 0px -642px no-repeat; width:20px; height:19px;}
-.pic_edit{display:block; background:url(../images/public_icon.png) 0px -32px no-repeat; width:20px; height:15px;}
-.pic_edit:hover{display:block; background:url(../images/public_icon.png) -32px -32px no-repeat; width:20px; height:15px;}
-
-
-
-
-
-/*框架主类容*/
-#Container{ width:1000px; margin:0 auto; }
-
-/*头部导航*/
-#Header{ margin:10px 0; background:#15bccf; height:40px; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; }
-.logo{ margin:5px 10px; }
-#TopNav{}
-#TopNav ul li{ margin-top:8px;}
-.topnav_a a{ font-size:14px; font-weight:bold; color:#fff; margin-right:10px;}
-.topnav_a a:hover{color: #a1ebff;}
-#TopUser{}
-#TopUser ul li{ margin-top:8px;}
-.topuser_a a{ font-size:14px; font-weight:bold; color:#fff; margin-right:10px;}
-.topuser_a a:hover{color: #a1ebff;}
-#TopUser02{ }
-#TopUser02 li{ float: left;}
-#TopUser02 li a{ margin-right:10px;color: #FFF;text-align: center;}
-#TopUser02 li a:hover{color: #a1ebff;}
-#TopUser02 div{ position: absolute;visibility: hidden;background:#fff;border: 1px solid #15bccf;}
-#TopUser02 div a{position: relative;display: block;white-space: nowrap;text-align: left; line-height:1.9; margin-left:5px;background: #fff;color:#15bccf; font-weight:normal;}
-#TopUser02 div a:hover{ color:#e8770d; font-weight: bold;}
-/*头部导航下拉*/
-div#menu {height:41px; font-size:14px; font-weight:bold; }
-div#menu ul {float: left;}
-div#menu ul.menu { padding-left: 30px; }
-div#menu li {position: relative; z-index: 9; margin: 0; display: block; float: left; }
-div#menu li:hover>ul { left: -2px;}
-div#menu a {position: relative;z-index: 10; height: 41px; display: block; float: left;line-height: 41px; text-decoration: none; font-size:14px; }
-div#menu a:hover, div#menu a:hover span { color: #a1ebff; }
-div#menu li.current a {}
-div#menu {display: block; cursor: pointer; background-repeat: no-repeat;background-position: 95% 0;padding-right: 15px; _padding-right: 20px;}
-div#menu ul a.parent {background: url(../images/item.png) -20px -30px no-repeat; width:60px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis;}
-div#menu ul a.parent:hover {background: url(../images/item.png) -20px -60px no-repeat;}
-div#menu ul ul a.parent {background: url(../images/item.png) -20px 6px no-repeat;}
-div#menu ul ul a.parent:hover {background: url(../images/item.png) -20px -11px no-repeat;}
-/* menu::level1 */
-div#menu a { padding: 5px 12px 0 10px;line-height: 30px; color: #fff;}
-div#menu li { background: url(images/main-delimiter.png) 98% 4px no-repeat; }
-div#menu li.last { background: none; }
-/* menu::level2 */
-div#menu ul ul li { background: none; }
-div#menu ul ul { position: absolute;top: 38px; left: -999em; width: 90px; padding: 5px 0 0 0; background:#fff; border:1px solid #15bccf; margin-top:1px;}
-div#menu ul ul a {padding: 0 0 0 15px; height: auto; float: none;display: block; line-height: 24px; font-size:12px; font-weight:normal;color:#15bccf;}
-div#menu ul ul a:hover { color:#ff9900;}
-div#menu ul ul li.last { margin-left:15px; }
-div#menu ul ul li {width: 100%;}
-/* menu::level3 */
-div#menu ul ul ul {padding: 0;margin: -38px 0 0 92px !important; width:140px; }
-div#menu ul ul ul li a{ width:125px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis;color:#15bccf;}
-
-/*主类容*/
-#Main{ background:#fff; margin-bottom:10px;}
-#content{}
-#content02{ background:#fff; padding:10px; margin-bottom:10px;}
-/*主类容搜索*/
-#TopBar{ height:60px; margin-bottom:10px; background:#fff;}
-.topbar_info02{ margin:5px 10px;width:480px; }
-.topbar_info02 p{color: #7f7f7f;}
-.search{ margin-top:8px; margin-left:71px;}
-.search_form{margin-top:8px;margin-left:72px;}
-.topbar_info{ width:350px; color:#5c5c5c; font-size:16px; margin-right:50px; line-height:1.3; padding-left:100px;}
-a.search_btn{ display:block; background:#15bccf; color:#fff; width:60px; height:24px; text-align:center; padding-top:3px;}
-a:hover.search_btn{ background: #0fa9bb;}
-.search_text{ border:1px solid #15bccf; background:#fff; width:220px; height:25px; padding-left:5px; }
-/*主类容左右分栏*/
-#LSide{ width:240px; }
-#RSide{ width:730px; margin-left:10px; background:#fff; padding:10px; margin-bottom:10px;}
-
-
-/*底部*/
-#Footer{ padding-top:10px; background:#fff; margin-bottom:10px;}
-.copyright{ width:780px; margin:0 auto;height:30px; }
-.footlogo{ width:580px; margin:0 auto;height:50px; }
-/*意见反馈*/
-html{ overflow-x:hidden;}
-.scrollsidebar{ position: fixed; bottom:1px; right:1px; background:none; }
-.side_content{width:154px; height:auto; overflow:hidden; float:left; }
-.side_content .side_list {width:154px;overflow:hidden;}
-.show_btn{ width:0; height:112px; overflow:hidden; float:left; margin-top:190px;cursor:pointer;}
-.show_btn span { display:none;}
-.close_btn{width:24px;height:24px;cursor:pointer;}
-.side_title,.side_bottom,.close_btn,.show_btn {background:url(../images/sidebar_bg.png) no-repeat; }
-.side_title {height:35px;}
-.side_bottom { height:8px;}
-.side_center {font-family:Verdana, Geneva, sans-serif; padding:0px 12px; font-size:12px;}
-.close_btn { float:right; display:block; width:21px; height:16px; margin:9px 10px 0 0; _margin:16px 5px 0 0;}
-.close_btn span { display:none;}
-.side_center .custom_service p { text-align:center; padding:6px 0; margin:0; vertical-align:middle;}
-.msgserver { margin-top:5px;}
-/*.msgserver a { background:url(../images/sidebar_bg.png) no-repeat -119px -112px; padding-left:22px; height:21px; display:block; }*/
-.msgserver a { height:21px; display:block; }
-.opnionText{box-shadow:none; width:122px; height:180px; border-color: #DFDFDF; background:#fff; color:#999; padding:3px; font-size:12px;overflow:auto; background-attachment:fixed;border-style:solid;}
-a.opnionButton{ display:block; background:#15bccf; width:130px; height:23px; margin-top:5px; text-align:center; padding-top:3px;}
-a:hover.opnionButton{background: #0fa9bb; }
-/* blue skin as the default skin */
-.side_title {background-position:-195px 0;}
-.side_center {background:url(../images/blue_line.png) repeat-y center; }
-.side_bottom {background-position:-195px -50px;}
-a.close_btn {background-position:-44px 0;}
-a:hover.close_btn {background-position:-66px 0;}
-.show_btn {background-position:-119px 0;}
-.msgserver a {color:#15bccf; }
-.msgserver a:hover { text-decoration:underline; }
-
-
-/***** Ajax indicator ******/
-#ajax-indicator {
- position: absolute; /* fixed not supported by IE */
- background-color:#eee;
- border: 1px solid #bbb;
- top:35%;
- left:40%;
- width:20%;
- font-weight:bold;
- text-align:center;
- padding:0.6em;
- z-index:100000;
- opacity: 0.5;
-}
-
-html>body #ajax-indicator { position: fixed; }
-
-#ajax-indicator span {
- background-position: 0% 40%;
- background-repeat: no-repeat;
- background-image: url(../images/loading.gif);
- padding-left: 26px;
- vertical-align: bottom;
-}
-
-div.modal {
- border-radius: 5px;
- background: #fff;
- z-index: 50;
- padding: 4px;
-}
-.ui-widget-content {
- border: 1px solid #ddd;
- color: #333;
-}
-.ui-widget {
- font-family: Verdana, sans-serif;
- font-size: 1.1em;
-}
-.ui-dialog .ui-dialog-content {
- position: relative;
- border: 0;
- padding: .5em 1em;
- background: none;
- overflow: auto;
- zoom: 1;
-}
-.ui-widget-overlay {
- position: absolute;
- top: 0;
- left: 0;
- width: 100%;
- height: 100%;
-}
-.ui-widget-overlay {
- background: #666 url(http://forge.trustie.net/stylesheets/jquery/images/xui-bg_diagonals-thick_20_666666_40x40.png.pagespeed.ic.9mfuw_R0z1.png) 50% 50% repeat;
- opacity: .5;
- filter: Alpha(Opacity=50);
-}
-/***** end Ajax indicator ******/
-
-/***** Flash & error messages ****/
-#errorExplanation, div.flash, .nodata, .warning, .conflict {
- padding: 4px 4px 4px 30px;
- margin-bottom: 12px;
- font-size: 1.1em;
- border: 2px solid;
-}
-
-div.flash {margin-top: 8px;}
-
-div.flash.error, #errorExplanation {
- background: url(../images/exclamation.png) 8px 50% no-repeat;
- background-color: #ffe3e3;
- border-color: #dd0000;
- color: #880000;
-}
-
-div.flash.notice {
- background: url(../images/true.png) 8px 5px no-repeat;
- background-color: #dfffdf;
- border-color: #9fcf9f;
- color: #005f00;
-}
-
-div.flash.warning, .conflict {
- background: url(../images/warning.png) 8px 5px no-repeat;
- background-color: #FFEBC1;
- border-color: #FDBF3B;
- color: #A6750C;
- text-align: left;
-}
-
-.nodata, .warning {
- text-align: center;
- background-color: #FFEBC1;
- border-color: #FDBF3B;
- color: #A6750C;
-}
-
-#errorExplanation ul { font-size: 0.9em;}
-#errorExplanation h2, #errorExplanation p { display: none; }
-
-.conflict-details {font-size:80%;}
-/***** end Flash & error messages ****/
-
-
-/*弹出框*/
-.black_overlay{display:none;position:fixed;top:0px;left:0px;width:100%;height:100%;background-color:black;z-index:1001;-moz-opacity:0.8;opacity:.80;filter:alpha(opacity=80);}
-.white_content{display:none;position:fixed;top:15%;left:30%;width:420px;height: auto; margin-bottom:20px;padding:16px;border:3px solid #15bccf;background-color:white;z-index:1002;overflow:auto;}
-.white_content02{display:none;position:fixed;top:15%;left:30%;width:200px;height: auto; margin-bottom:20px;padding:10px;border:3px solid #15bccf;background-color:white;z-index:1002;overflow:auto;}
-.newhwork_content{ display:none;position:fixed;top:15%;left:30%;width:600px;height: auto; margin-bottom:20px;padding:16px;border:3px solid #15bccf;background-color:white;z-index:1002;overflow:auto;}
-.floatbox{ width:420px; border:3px solid #15bccf; background:#fff; padding:5px;}
-a.box_close{ display:block; float:right; width:16px; height:16px; background:url(../images/img_floatbox.png) 0 0 no-repeat;}
-a:hover.box_close{background:url(../images/img_floatbox.png) -22px 0 no-repeat;}
-
-div.ke-statusbar{height:1px; border-top:none;}
-
-/*底部*/
-/*#Footer{background-color:#ffffff; margin-bottom:10px; padding-bottom:15px; color:#666666;}*/
-/*.footerAboutContainer {width:auto; border-bottom:1px solid #efefef;}*/
-/*.footerAbout{ width:585px; margin:0 auto;height:35px; line-height:35px; border-bottom:1px solid #efefef; }*/
-/*.languageBox {width:55px; height:20px; margin-left:5px; outline:none; color:#666666; border:1px solid #d9d9d9;}*/
-/*.departments{ width:890px; margin:5px auto 0 auto;height:30px;line-height:30px;}*/
-/*.copyright{ width:390px; margin:0 auto;height:20px;line-height:20px;}*/
-/*a.f_grey {color:#666666;}*/
-/*a.f_grey:hover {color:#000000;}*/
-/*资源库*/
-.resources {width:728px; background-color:#ffffff; padding:10px; border:1px solid #dddddd;float: right}
-/*.resources {width:730px; background-color:#ffffff; padding:10px;float: right}*/
-.resourcesBanner {width:730px; height:40px; background-color:#eaeaea; margin-bottom:10px;}
-.bannerName {background:#64bdd9; color:#ffffff; height:40px; line-height:40px; width:90px; text-align:center; font-weight:normal; vertical-align:middle; font-size: 16px; float:left;}
-.resourcesSelect {width:30px; height:34px; float:right; position:relative; margin-top:-6px;}
-.resourcesSelected {width:25px; height:20px; position:relative; background:url(images/resource_icon_list.png) 0px 0px no-repeat;}
-.resourcesSelected:hover { background:url(images/resource_icon_list.png) 0px -25px no-repeat;}
-.resourcesIcon {margin-top:15px; display:block; width:25px; height:20px;}
-/*.resourcesIcon {margin-top:15px; display:block; position:relative; background:url(images/resource_icon_list.png) 0px 0px no-repeat; width:25px; height:20px;}*/
-/*.resourcesIcon:hover { background:url(images/resource_icon_list.png) 0px -25px no-repeat;}*/
-/*.resourcesType {width:50px; background-color:#ffffff; float:left; list-style:none; position:absolute; border:1px solid #eaeaea; border-radius:5px; top:35px; padding:5px 10px; left:-30px; font-size:12px; color:#888888; display:none;}*/
-a.resourcesGrey {font-size:12px; color:#888888;}
-a.resourcesGrey:hover {font-size:12px; color:#15bccf;}
-.resourcesBanner ul li:hover ul.resourcesType {display:block;}
-.resourcesSelected:hover ul {display:block;}
-.resourcesUploadBox {float:right; width:103px; height:34px; background-color:#64bdd9; line-height:34px; vertical-align:middle; text-align:center; margin-left:12px;}
-.resourcesUploadBox:hover {background-color:#0781b4;}
-.uploadIcon {background:url(images/resource_icon_list.png) -35px 10px no-repeat; float:left; display:block; width:30px; height:30px; margin-left:-3px;}
-a.uploadText {color:#ffffff; font-size:14px;}
-.resourcesSearchloadBox {border:1px solid #e6e6e6; width:225px; float:left; background-color:#ffffff;}
-.searchResource {border:none; outline:none; background-color:#ffffff; width:184px; height:32px; padding-left:10px; display:block; float:left;}
-.searchIcon{width:31px; height:32px; background-color:#ffffff; background:url(images/resource_icon_list.png) -40px -15px no-repeat; display:block; float:left;}
-/*.resourcesSearchBanner {height:34px; margin-bottom:10px;}*/
-.resourcesSearchBanner {width:710px; height:34px; margin-bottom:10px; margin-top:15px; margin-left:auto; margin-right:auto;}
-/*.resourcesListTab {width:730px; height:40px; background-color:#f6f6f6; border-bottom:1px solid #eaeaea; font-size:14px; color:#7a7a7a;}*/
-.resourcesListTab {width:710px; height:40px; background-color:#f6f6f6; border-bottom:1px solid #eaeaea; font-size:14px; color:#7a7a7a; margin-left:auto; margin-right:auto;}
-/*.resourcesListName {width:175px; height:40px; line-height:40px; text-align:center;}*/
-/*.resourcesListSize {width:110px; height:40px; line-height:40px; text-align:center;}*/
-/*.resourcesListType {width:150px; height:40px; line-height:40px; text-align:center;}*/
-/*.resourcesListUploader {width:130px; height:40px; line-height:40px; text-align:center;}*/
-/*.resourcesListTime {width:165px; height:40px; line-height:40px; text-align:center;}*/
-.resourcesListName {width:160px; height:40px; line-height:40px; text-align:left;}
-.resourcesListSize {width:105px; height:40px; line-height:40px; text-align:center;}
-.resourcesListType {width:150px; height:40px; line-height:40px; text-align:center;}
-.resourcesListUploader {width:180px; height:40px; line-height:40px; text-align:center;}
-.resourcesListTime {width:95px; height:40px; line-height:40px; text-align:center;}
-/*.resourcesList {width:730px; height:39px; background-color:#ffffff; border-bottom:1px dashed #eaeaea; color:#9a9a9a; font-size:12px;}*/
-a.resourcesBlack {font-size:12px; color:#4c4c4c;white-space: nowrap;text-align: left}
-a.resourcesBlack:hover {font-size:12px; color:#000000;}
-.resourcesListCheckbox {width:20px; height:40px; line-height:40px; text-align:center; vertical-align:middle;}
-.resourcesCheckbox {padding:0px; margin:0px; margin-top:14px; width:12px; height:12px;}
-.resourcesList {width:710px; height:39px; background-color:#ffffff; border-bottom:1px dashed #eaeaea; color:#9a9a9a; font-size:12px; margin-left:auto; margin-right:auto;}
-.resourcesListOption {width:710px; height:40px; line-height:40px; vertical-align:middle; margin-left:auto; margin-right:auto; background-color:#f6f6f6;}
-.resourcesCheckAll {width:20px; height:40px; line-height:40px; text-align:center; vertical-align:middle; float:left;}
-.resourcesSelectSend {float:right;}
-/*.resourcesSelectSendButton {width:75px; height:28px; background-color:#ffffff; line-height:28px; vertical-align:middle; margin-top:5px; margin-right:10px; margin-left:15px; text-align:center; border:1px solid #15bccf; border-radius:5px; float:right;}*/
-.resourcesSelectSendButton {width:75px; height:28px; background-color:#ffffff; line-height:28px; vertical-align:middle; margin-top:5px; margin-right:10px; margin-left:15px; text-align:center; border:1px solid #15bccf; border-radius:5px; float:right;}
-a.sendButtonBlue {color:#15bccf;}
-a.sendButtonBlue:hover {color:#ffffff;}
-.resourcesSelectSendButton:hover {background-color:#15bccf;}
-.db {display:block !important;}
-
-.dropdown-menu {
- position: absolute;
- top: 100%;
- left: 0;
- z-index: 1000;
- display: none;
- float: left;
- min-width: 80px;
- padding: 5px 0;
- margin: 2px 0 0;
- font-size: 12px;
- text-align: left;
- background-color: #fff;
- -webkit-background-clip: padding-box;
- background-clip: padding-box;
- border: 1px solid #ccc;
- border-radius: 4px;
- -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
- box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
-}
-.dropdown-menu > li > a {
- display: block;
- padding: 3px 20px;
- clear: both;
- font-weight: normal;
- line-height: 1.5;
- color:#616060;
- white-space: nowrap;
-}
-.dropdown-menu > li > a:hover{
- color: #ffffff;
- text-decoration: none;
- background-color: #64bdd9;
- outline:none;
-}
-.homepageRightBanner {width:718px; margin:0px auto; float:right; background-color: #ffffff; padding:10px 15px; border:1px solid #dddddd;}
-.NewsBannerName {font-size:16px; color:#4b4b4b; display:block; width:150px; float:left;}a.resourcesTypeAll {background:url(images/homepage_icon.png) -180px -89px no-repeat; padding-left:23px;}
-a.resourcesTypeAtt {background:url(images/homepage_icon.png) -180px -49px no-repeat; padding-left:23px;}
-.resourcesType {width:75px; background-color:#ffffff; float:left; list-style:none; position:absolute; border:1px solid #eaeaea; border-radius:5px; top:15px; padding:10px 20px; left:-90px; font-size:12px; color:#888888; display:none; line-height:2;}
-.resourcesUploadBox {float:right; width:103px; height:34px; background-color:#64bdd9; line-height:34px; vertical-align:middle; text-align:center; margin-left:12px;}
-.resourcesUploadBox:hover {background-color:#0781b4;}
-/* 个人主页右边部分*/
-.homepageSearchIcon {width:30px; height:32px; background:url(images/nav_icon.png) -8px 3px no-repeat; float:left;}
-a.homepagePostTypeQuiz {background:url(images/homepage_icon.png) -90px -124px no-repeat; padding-left:23px;}
-a.homepagePostTypeAssignment {background:url(images/homepage_icon.png) -93px -318px no-repeat; padding-left:23px;}
-a.replyGrey {color:#888888; display:inline-block;}
-a.replyGrey:hover {color:#4b4b4b;}
-
-/*上传资源弹窗*/
-.resourceUploadPopup {width:400px; height:auto; border:3px solid #15bccf; padding-left:16px; padding-bottom:16px; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-200px; z-index:1000;}
-.uploadDialogText {font-size:16px; color:#15bccf; line-height:16px; padding-top:20px; width:140px; display:inline-block;}
-.uploadBoxContainer {height:33px; line-height:33px; margin-top:10px; position:relative}
-.uploadBox {width:100px; height:33px; line-height:33px; text-align:center; vertical-align:middle; background-color:#64bdd9; border-radius:3px; float:left; margin-right:12px;}
-a.uploadBoxIcon {background:url(images/resource_icon_list.png) -35px 10px no-repeat; float:left; display:block; width:81px; height:30px; padding-left:22px; font-size:14px; color:#ffffff;}
-a.uploadIcon {background:url(images/resource_icon_list.png) 8px -60px no-repeat; width:100px; height:33px;}
-.chooseFile {color:#ffffff; display:block; margin-left:32px;}
-.uploadResourceIntr {width:250px; height:33px; float:left; line-height:33px; font-size:12px;}
-.uploadResourceName {width:250px; display:inline-block; line-height:15px; font-size:12px; color:#444444; margin-bottom:2px;}
-.uploadResourceIntr2 {width:250px; display:inline-block; line-height:15px; font-size:12px; color:#444444;}
-.uploadType {margin:10px 0; border:1px solid #e6e6e6; width:100px; height:30px; outline:none; font-size:12px; color:#888888;}
-.uploadKeyword {margin-bottom:10px; outline:none; border:1px solid #e6e6e6; height:30px; width:280px;}
-
-/*发送资源弹窗*/
-/*.resourceShareContainer {width:100%; height:100%; background:#666; filter:alpha(opacity=50); opacity:0.5; -moz-opacity:0.5; position:absolute; left:0; top:0; z-index:-999;}*/
-/*.resourceSharePopup {width:300px; height:auto; border:3px solid #15bccf; padding-left:16px; padding-bottom:16px; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-150px; z-index:1000;}*/
-.resourceSharePopup {width:300px; height:auto; border:3px solid #15bccf; padding-left:16px; padding-bottom:16px; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-150px; z-index:1000;}
-.sendText {font-size:16px; color:#15bccf; line-height:16px; padding-top:20px; width:100px; display:inline-block;}
-.resourcePopupClose {width:20px; height:20px; display:inline-block; float:right;}
-.resourceClose {background:url(images/resource_icon_list.png) 0px -40px no-repeat; width:20px; height:20px; display:inline-block; position: absolute; z-index: 1000;}
-.resourcesSearchBox {border:1px solid #e6e6e6; width:225px; height:25px; background-color:#ffffff; margin-top:12px; margin-bottom:15px;}
-.searchResourcePopup {border:none; outline:none; background-color:#ffffff; width:184px; height:25px; padding-left:10px; display:inline-block; float:left;}
-.searchIconPopup{width:31px; height:25px; background-color:#ffffff; background:url(images/resource_icon_list.png) -40px -18px no-repeat; display:inline-block; float:left;}
-.courseSend {width:260px; height:15px; line-height:15px; margin-bottom:10px;}
-.courseSendCheckbox {padding:0px; margin:0px; width:12px; height:12px; margin-right:10px; display:inline-block; margin-top:2px;}
-.sendCourseName {font-size:12px; color:#5f6060;display:inline-block}
-.courseSendSubmit {width:50px; height:25px; line-height:25px; text-align:center; vertical-align:middle; background-color:#64bdd9; margin-right:25px; float:left;}
-.courseSendCancel {width:50px; height:25px; line-height:25px; text-align:center; vertical-align:middle; background-color:#c1c1c1; float:left}
-a.sendSourceText {font-size:14px; color:#ffffff;}
-input.sendSourceText {font-size:14px;color:#ffffff;background-color:#64bdd9;}
-.resourcesSendTo {float:left; height:20px; margin-top:15px;}
-.resourcesSendType {border:1px solid #e6e6e6; width:60px; height:24px; outline:none; font-size:14px; color:#888888;}
-
-
-
-/*主类容左右分栏*/
-#LSide{ width:240px; }
-#RSide{ width:730px; margin-left:10px; background:#fff; padding:10px; margin-bottom:10px;}
-
-
-/*资源库*/
-/*.resources {width:730px; background-color:#ffffff;}*/
-/*.resourcesBanner {width:730px; height:40px; background-color:#eaeaea; margin-bottom:10px;}*/
-/*.bannerName {background:#64bdd9; color:#ffffff; height:40px; line-height:40px; width:90px; text-align:center; font-weight:normal; vertical-align:middle; font-size: 16px; float:left;}*/
-/*.resourcesSelect {width:40px; height:40px; float:right; position:relative;}*/
-.resourcesSelected2 {width:25px; height:20px;}
-.resourcesIcon2 {margin-top:20px; display:block; position:relative; background:url(images/resource_icon_list.png) 0px 0px no-repeat; width:25px; height:20px;}
-.resourcesIcon2:hover { background:url(images/resource_icon_list.png) 0px -25px no-repeat;}
-/*.resourcesType {width:50px; background-color:#ffffff; float:left; list-style:none; position:absolute; border:1px solid #eaeaea; border-radius:5px; top:35px; padding:5px 10px; left:-30px; font-size:12px; color:#888888; display:none;}*/
-/*a.resourcesGrey {font-size:12px; color:#888888;}*/
-/*a.resourcesGrey:hover {font-size:12px; color:#15bccf;}*/
-/*.resourcesBanner ul li:hover ul.resourcesType {display:block;}*/
-/*ul li:hover ul {display:block;}*/
-/*.resourcesUploadBox {float:right; width:103px; height:34px; background-color:#64bdd9; line-height:34px; vertical-align:middle; text-align:center; margin-left:12px;}*/
-/*.uploadIcon {background:url(images/resource_icon_list.png) -35px 10px no-repeat; float:left; display:block; width:30px; height:30px; margin-left:-3px;}*/
-/*a.uploadText {color:#ffffff; font-size:14px;}*/
-/*.resourcesSearchloadBox {border:1px solid #e6e6e6; width:225px; float:right; background-color:#ffffff;}*/
-/*.searchResource {border:none; outline:none; background-color:#ffffff; width:184px; height:32px; padding-left:10px; display:block; float:left;}*/
-/*.searchIcon{width:31px; height:32px; background-color:#ffffff; background:url(images/resource_icon_list.png) -40px -15px no-repeat; display:block; float:left;}*/
-/*.resourcesSearchBanner {height:34px; margin-bottom:10px;}*/
-/*.resourcesListTab {width:730px; height:40px; background-color:#f6f6f6; border-bottom:1px solid #eaeaea; font-size:14px; color:#7a7a7a;}*/
-/*.resourcesListCheckbox {width:40px; height:40px; line-height:40px; text-align:center; vertical-align:middle;}*/
-/*.resourcesCheckbox {padding:0px; margin:0px; margin-top:14px; width:12px; height:12px;}*/
-/*.resourcesListName {width:135px; height:40px; line-height:40px; text-align:left;}*/
-/*.resourcesListSize {width:110px; height:40px; line-height:40px; text-align:center;}*/
-/*.resourcesListType {width:150px; height:40px; line-height:40px; text-align:center;}*/
-/*.resourcesListUploader {width:130px; height:40px; line-height:40px; text-align:center;}*/
-/*.resourcesListTime {width:165px; height:40px; line-height:40px; text-align:center;}*/
-/*.resourcesList {width:730px; height:39px; background-color:#ffffff; border-bottom:1px dashed #eaeaea; color:#9a9a9a; font-size:12px;}*/
-/*a.resourcesBlack {font-size:12px; color:#4c4c4c;}*/
-/*a.resourcesBlack:hover {font-size:12px; color:#000000;}*/
-/*.dropdown-menu {*/
- /*position: absolute;*/
- /*top: 100%;*/
- /*left: 0;*/
- /*z-index: 1000;*/
- /*display: none;*/
- /*float: left;*/
- /*min-width: 80px;*/
- /*padding: 5px 0;*/
- /*margin: 2px 0 0;*/
- /*font-size: 12px;*/
- /*text-align: left;*/
- /*background-color: #fff;*/
- /*-webkit-background-clip: padding-box;*/
- /*background-clip: padding-box;*/
- /*border: 1px solid #ccc;*/
- /*border-radius: 4px;*/
- /*-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);*/
- /*box-shadow: 0 6px 12px rgba(0, 0, 0, .175);*/
-/*}*/
-/*.dropdown-menu > li > a {*/
- /*display: block;*/
- /*padding: 3px 20px;*/
- /*clear: both;*/
- /*font-weight: normal;*/
- /*line-height: 1.5;*/
- /*color:#616060;*/
- /*white-space: nowrap;*/
-/*}*/
-/*.dropdown-menu > li > a:hover{*/
- /*color: #ffffff;*/
- /*text-decoration: none;*/
- /*background-color: #64bdd9;*/
- /*outline:none;*/
-/*}*/
-
-/*发送资源弹窗*/
-/*.resourceShareContainer {width:100%; height:100%; background:#666; filter:alpha(opacity=50); opacity:0.5; -moz-opacity:0.5; position:absolute; left:0; top:0; z-index:-999;}*/
-/*.resourceSharePopup {width:300px; height:auto; border:3px solid #15bccf; padding-left:16px; padding-bottom:16px; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-150px; z-index:1000;}*/
-/*.sendText {font-size:16px; color:#15bccf; line-height:16px; padding-top:20px; width:140px; display:inline-block;}*/
-/*.resourcePopupClose {width:20px; height:20px; display:inline-block; float:right;}*/
-/*.resourceClose {background:url(images/resource_icon_list.png) 0px -40px no-repeat; width:20px; height:20px; display:inline-block;}*/
-/*.resourcesSearchBox {border:1px solid #e6e6e6; width:225px; height:25px; background-color:#ffffff; margin-top:12px; margin-bottom:15px;}*/
-/*.searchResourcePopup {border:none; outline:none; background-color:#ffffff; width:184px; height:25px; padding-left:10px; display:inline-block; float:left;}*/
-/*.searchIconPopup{width:31px; height:25px; background-color:#ffffff; background:url(images/resource_icon_list.png) -40px -18px no-repeat; display:inline-block; float:left;}*/
-/*.courseSend {width:260px; height:15px; line-height:15px; margin-bottom:10px;}*/
-/*.courseSendCheckbox {padding:0px; margin:0px; width:12px; height:12px; margin-right:10px; display:inline-block; margin-top:2px;}*/
-/*.sendCourseName {font-size:12px; color:#5f6060;}*/
-/*.courseSendSubmit {width:50px; height:25px; line-height:25px; text-align:center; vertical-align:middle; background-color:#64bdd9; margin-right:25px; float:left;}*/
-/*.courseSendCancel {width:50px; height:25px; line-height:25px; text-align:center; vertical-align:middle; background-color:#c1c1c1; float:left}*/
-/*a.sendSourceText {font-size:14px; color:#ffffff;}*/
-
-/*上传资源弹窗*/
-/*.resourceUploadPopup {width:400px; height:auto; border:3px solid #15bccf; padding-left:16px; padding-bottom:16px; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-200px; z-index:1000;}*/
-/*.uploadText {font-size:16px; color:#15bccf; line-height:16px; padding-top:20px; width:140px; display:inline-block;}*/
-/*.uploadBoxContainer {height:33px; line-height:33px; margin-top:10px; position:relative;}*/
-/*.uploadBox {width:100px; height:33px; line-height:33px; text-align:center; vertical-align:middle; background-color:#64bdd9; border-radius:3px; float:left; margin-right:12px;}*/
-/*a.uploadIcon {background:url(images/resource_icon_list.png) 8px -60px no-repeat; width:100px; height:33px;}*/
-/*.chooseFile {color:#ffffff; display:block; margin-left:32px;}*/
-/*.uploadResourceIntr {width:250px; height:33px; float:left; line-height:33px; font-size:12px;}*/
-/*.uploadResourceName {width:250px; display:inline-block; line-height:15px; font-size:12px; color:#444444; margin-bottom:2px;}*/
-/*.uploadResourceIntr2 {width:250px; display:inline-block; line-height:15px; font-size:12px; color:#444444;}*/
-/*.uploadType {margin:10px 0; border:1px solid #e6e6e6; width:100px; height:30px; outline:none; font-size:12px; color:#888888;}*/
-/*.uploadKeyword {margin-bottom:10px; outline:none; border:1px solid #e6e6e6; height:30px; width:280px;}*/
-
-
-/*新个人主页框架css*/
-.navContainer {width:100%; margin:0 auto; background-color:#15bccf;}
-.homepageContentContainer {width:100%; margin:0 auto; background-color:#eaebed;}
-.homepageContent {width:1000px; background-color:#eaebed; margin:0 auto;}
-.navHomepage {width:1000px; height:54px; background-color:#15bccf; margin:0 auto;}
-.navHomepageLogo {width:60px; height:54px; line-height:54px; vertical-align:middle; margin-left:2px; margin-right:40px;}
-.navHomepageMenu {margin-right:40px;display:inline-block;height:54px; line-height:54px; vertical-align:middle;}
-.navHomepageSearchBox {width:380px; border:none; outline:none; height:32px; margin-top:11px; background-color:#ffffff;}
-.navHomepageSearchInput {width:345px; height:32px; outline:none; border:none; float:left; padding-left:5px;; margin:0;}
-.homepageSearchIcon {width:30px; height:32px; background:url(../images/nav_icon.png) -8px 3px no-repeat; float:left;}
-a.homepageSearchIcon:hover {background:url(../images/nav_icon.png) -49px 3px no-repeat;}
-.navHomepageNews {width:30px; display:block; float:right; margin-top:12px; position:relative;}
-.homepageNewsIcon {background:url(../images/nav_icon.png) -5px -85px no-repeat; width:30px; height:29px; display:block;}
-.newsActive {width:10px; height:10px; border-radius:50%; border:2px solid #ffffff; background-color:#ff0000; position:absolute; left:17px; top:5px;}
-.navHomepageProfile {width:65px; display:block; float:right; margin-top:8px; margin-left:33px;}
-.homepageProfileMenuIcon {background:url(../images/nav_icon.png) -8px -175px no-repeat; width:20px; height:25px; float:left; margin-top:15px; line-height:0;}
-a.homepageProfileMenuIconhover {background:url(../images/nav_icon.png) -8px -175px no-repeat; width:12px; height:12px; float:left;}
-.homepageLeft {width:240px; float:left; margin-right:10px;}
-.homepageRight {width:750px; float:left;}
-.homepagePortraitContainer {width:238px; height:348px; border:1px solid #dddddd; background-color:#ffffff; margin-top:15px;}
-.homepagePortraitImage {width:208px; height:208px; margin:15px 16px 14px 16px;}
-.homepageFollow {}
-.homepageEditProfile {}
-.homepageImageName {font-size:16px; color:#484848; margin-left:15px; display:inline-block; margin-right:8px;}
-.homepageImageSex {float:left; top:116px; left:5px; width:14px; height:14px; display:inline-block;}
-.homepageSignature {font-size:12px; color:#888888; margin-left:15px; margin-top:5px; margin-bottom:15px;}
-.homepageImageBlock {margin:0 26px; float:left; text-align:center; display:inline-block;}
-.homepageImageNumber {font-size:12px; color:#484848;}
-.homepageImageText {width:26px; font-size:12px; color:#888888;}
-.homepageVerDiv {height:28px; vertical-align:middle; width:1px; float:left; display:inline-block; background-color:#d1d1d1; margin-top:3px;}
-.homepageLeftMenuContainer {width:238px; border:1px solid #dddddd; border-bottom:none; background-color:#ffffff; margin-top:10px;}
-.homepageLeftMenuBlock {border-bottom:1px solid #dddddd; height:50px; line-height:50px; vertical-align:middle;}
-a.homepageMenuText {color:#484848; font-size:16px; margin-left:20px;}
-.homepageLeftLabelContainer {width:238px; border:1px solid #dddddd; background-color:#ffffff; margin-top:10px;}
-.homepageRightBanner {}
-.newsType {width:60px; background-color:#ffffff; float:left; list-style:none; position:absolute; border:1px solid #eaeaea; border-radius:5px; top:35px; padding:5px 10px; left:-40px; font-size:12px; color:#888888; display:none; line-height:2;}
-.homepageRightBlock {}
-.homepageNewsList {width:710px; height:39px; line-height:39px; vertical-align:middle; border-bottom:1px dashed #eaeaea; margin:0 auto;}
-.homepageNewsPortrait {width:40px; display:block; margin-top:7px;}
-.homepageNewsPublisher {width:80px; max-width:80px; margin-right:10px; font-size:12px; color:#15bccf; display:block; padding-left:5px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; }
-.homepageNewsType {width:95px; font-size:12px; color:#888888; display:block;}
-.homepageNewsTypeNotRead {width:95px; font-size:12px; color:#888888; display:block;}
-.homepageNewsContent {width:395px; max-width:395px; margin-right:10px; font-size:12px; color:#4b4b4b; display:block; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; overflow: hidden;height:49px; max-height:49px;}
-.homepageNewsTime {width:75px; font-size:12px; color:#888888; display:block; text-align:right;}
-a.homepageWhite {color:#ffffff;}
-a.homepageWhite:hover {color:#a1ebff}
-a.newsGrey {color:#4b4b4b;}
-a.newsGrey:hover {color:#000000;}
-a.newsRed {color:red;}
-a.newsRed:hovor {color:#888888;}
-a.replyGrey {color:#888888; display:inline-block;}
-a.replyGrey:hover {color:#4b4b4b;}
-a.replyGrey1 {color:#888888;}
-a.replyGrey1:hover {color:#4b4b4b;}
-a.newsBlue {color:#269ac9;}
-a.newsBlue:hover {color:#297fb8;}
-a.newsBlack {color:#4b4b4b; font-size:13px; font-weight:bold}
-a.menuGrey {color:#808080;}
-a.menuGrey:hover {color:#fe7d68;}
-a.resourcesGrey {font-size:12px; color:#888888;}
-a.resourcesGrey:hover {font-size:12px; color:#15bccf;}
-.portraitRadius {border-radius: 3px;}
-
-/***** Flash & error messages ****/
-#errorExplanation, div.flash, .nodata, .warning, .conflict {
- padding: 4px 4px 4px 30px;
- margin-bottom: 12px;
- font-size: 1.1em;
- border: 2px solid;
-}
-
-div.flash {margin-top: 8px;}
-
-div.flash.error, #errorExplanation {
- background: url(../images/exclamation.png) 8px 50% no-repeat;
- background-color: #ffe3e3;
- border-color: #dd0000;
- color: #880000;
-}
-
-div.flash.notice {
- background: url(../images/true.png) 8px 5px no-repeat;
- background-color: #dfffdf;
- border-color: #9fcf9f;
- color: #005f00;
-}
-
-div.flash.warning, .conflict {
- background: url(../images/warning.png) 8px 5px no-repeat;
- background-color: #FFEBC1;
- border-color: #FDBF3B;
- color: #A6750C;
- text-align: left;
-}
-
-.nodata, .warning {
- text-align: center;
- background-color: #FFEBC1;
- border-color: #FDBF3B;
- color: #A6750C;
-}
-
-#errorExplanation ul { font-size: 0.9em;}
-#errorExplanation h2, #errorExplanation p { display: none; }
-
-.conflict-details {font-size:80%;}
-/***** end Flash & error messages ****/
-
-/*消息铃铛样式*/
-.navHomepageNews {width:30px; display:block; float:right; margin-top:4px; position:relative; margin-right: 8px;}
-.newsActive {width:6px; height:6px; border-radius:50%; border:2px solid #ffffff; background-color:#ff0000; position:absolute; left:20px; top:8px;z-index:999}
-
-/*20150826协议 LB*/
-.AgreementBox{ margin:20px 0; color:#666666; font-size:14px; line-height:1.9;}
-.Agreementh4{ color:#2980b9; font-weight:bold; font-size:14px; margin-top:30px; border: none;}
-.AgreementTxt{text-indent: 2em; margin-bottom: 15px;}
-.AgreementImg{margin: 0px auto;}
+/* CSS Document */
+/* 2015-06-26 */
+body,h1,h2,h3,h4,h5,h6,hr,p,blockquote,dl,dt,dd,ul,ol,li,pre,form,fieldset,legend,button,input,textarea,th,td{ margin:0; padding:0;}
+body,table,input,textarea,select,button { font-family: "微软雅黑","宋体"; font-size:12px;line-height:1.5; background:#eaebec;}
+div,img,tr,td,table{ border:0;}
+table,tr,td{border:0;cellspacing:0; cellpadding:0;}
+ol,ul,li{ list-style-type:none}
+a:link,a:visited{color:#7f7f7f;text-decoration:none;}
+a:hover,a:active{color:#15bccf;}
+/*img{max-width: 100%;}*/
+
+/*常用*/
+select,input,textarea{ border:1px solid #64bdd9; background:#fff; color:#000; padding-left:5px; }
+.sub_btn{ cursor:pointer; -moz-border-radius:3px; -webkit-border-radius:3px; border:1px solid #707070; color:#000; border-radius:3px; padding:1px 10px; background:#dbdbdb;}
+.sub_btn:hover{ background:#b5e2fa; color:#000; border:1px solid #3c7fb1;}
+table{ background:#fff;}
+.more{ font-weight:normal; color:#999; font-size:12px;}
+.no_line{ border-bottom:none;}
+.line{border-bottom:1px dashed #d4d4d4; padding-bottom:10px; margin-bottom:10px;}
+.no_border{ border:none;background:none;}
+.min_search{ width:150px; height:20px; border:1px solid #d0d0d0; color:#666; background:url(../images/public_icon.png) 135px -193px no-repeat; cursor:pointer;}
+.none{display: none;}
+
+/* font & color */
+h2{ font-size:18px; color:#15bccf;}
+h3{ font-size:14px; color:#e8770d;}
+h4{ font-size:14px; color:#3b3b3b;}
+.f12{font-size:12px; font-weight:normal;}
+.f14{font-size:14px;}
+.f16{font-size:16px;}
+.f18{font-size:18px;}
+.fb{font-weight:bold;}
+.lh20{line-height:20px;}
+.lh22{line-height:22px;}
+.lh24{line-height:24px;}
+.lh26{line-height:26px;}
+.fmYh{font-family:"MicroSoft Yahei";}
+.font999{ color:#999;}
+.fontRed{color:#770000;}
+.text_c{ text-align:center;}
+
+/* Float & Clear */
+.cl{ clear:both; overflow:hidden; }
+.fl{float:left;display:inline;}
+.fr{float:right;display:inline;}
+.f_l{ float:left;}
+.f_r{ float:right;}
+.clearfix:after{clear:both;content:".";display:block;font-size:0;height:0;line-height:0;visibility:hidden}
+.clearfix{clear:both;zoom:1}
+.break_word{ word-break:break-all; word-wrap: break-word;}
+.white_space{white-space:nowrap;}
+
+/* Spacing */
+.ml2{ margin-left:2px;}
+.ml3{ margin-left:3px;}
+.ml4{ margin-left:4px;}
+.ml5{ margin-left:5px;}
+.ml8{ margin-left:8px;}
+.ml10{ margin-left:10px;}
+.ml15{ margin-left:15px;}
+.ml20{ margin-left:20px;}
+.ml40{ margin-left:40px;}
+.ml45{ margin-left:45px;}
+.ml55{ margin-left:55px;}
+.ml30{ margin-left:30px;}
+.ml60{ margin-left:60px;}
+.ml80{ margin-left:80px;}
+.ml90{ margin-left:90px;}
+.ml100{ margin-left:100px;}
+.ml110{ margin-left:110px;}
+.mr5{ margin-right:5px;}
+.mr10{ margin-right:10px;}
+.mr20{ margin-right:20px;}
+.mr30{ margin-right:30px;}
+.mr40{ margin-right:40px;}
+.mr45{margin-right: 45px;}
+.mw15{margin:0 15px;}
+.mw20{margin:0 20px;}
+.mt3{ margin-top:3px;}
+.mt5{ margin-top:5px;}
+.mt8{ margin-top:8px;}
+.mt10{ margin-top:10px;}
+.mb5{ margin-bottom:5px;}
+.mb10{ margin-bottom:10px;}
+.mb20{ margin-bottom:20px;}
+.pl15{ padding-left:15px;}
+.w20{ width:20px;}
+.w60{ width:60px;}
+.w70{ width:70px;}
+.w90{ width:90px;}
+.w210{ width:210px;}
+.w150{ width:150px;}
+.w280{ width:280px;}
+.w430{ width:470px;}
+.w520{ width:520px;}
+.w543{ width:543px;}
+.w557{ width:557px;}
+.w683{ width:683px;}
+.w350{ width:350px;}
+.w610{ width:610px;}
+.w600{ width:600px;}
+.h22{ height:22px;}
+.h26{ height:26px;}
+.h50{ height:50px;}
+.h70{ height:70px;}
+.h150{ height:150px;}
+
+/* Font & background Color */
+a.b_grey{ background: #F5F5F5;}
+a.b_dgrey{ background: #CCC;}
+a.c_orange{color:#ff5722;}
+a:hover.c_orange{color: #d33503;}
+a.c_lorange{color:#ff9900;}
+a:hover.c_lorange{color:#fff;}
+a.c_blue{ color:#269ac9;}
+a.c_dblue{ color:#09658c;}
+a:hover.c_dblue{ color:#15bccf;}
+a.c_white{ color:#fff;}
+a.c_dorange{ color:#fd6e2a;}
+a.c_dark{color: #3e4040;}
+a:hover.c_dark{color: #3ca5c6;}
+a.b_blue{background: #64bdd9;}
+a:hover.b_blue{background: #41a8c8;}
+a.b_green{background:#28be6c;}
+a:hover.b_green{background:#14ad5a;}
+a.c_blue02{color: #3ca5c6;}
+a:hover.c_blue02{color: #0781b4;}
+a.c_red{ color:#F00;}
+a:hover.c_red{ color: #C00;}
+a.c_purple{color: #426e9a;}
+a:hover.c_purple{color: #d33503;}
+a.c_green{ color:#28be6c;}
+
+.b_grey{ background: #F5F5F5;}
+.b_dgrey{ background: #CCC;}
+.c_orange{color:#e8770d;}
+.c_dark{ color:#2d2d2d;}
+.c_lorange{ color:#ff9900;}
+.c_purple{color: #6883b6;}
+.c_blue{ color:#15bccf;}
+.c_red{ color:#F00;}
+.c_green{ color:#28be6c;}
+.c_dblue{ color:#09658c;}
+.b_blue{background:#64bdd9;}
+.b_green{background:#28be6c;}
+.b_w{ background:#fff;}
+
+/* commonBtn */
+.grey_btn{ background:#d9d9d9; color:#656565;font-size:14px; font-weight:normal; text-align:center;padding:2px 10px;}
+a.grey_btn{ background:#d9d9d9; color:#656565;font-size:14px; font-weight:normal; text-align:center;padding:2px 10px;}
+a:hover.grey_btn{ background:#717171; color:#fff;}
+.grey_n_btn{ background:#d9d9d9; color:#656565; font-weight:normal;padding:2px 10px; text-align:center;}
+a.grey_n_btn{background:#d9d9d9; color:#656565;font-weight:normal; padding:2px 10px; text-align:center;}
+a:hover.grey_n_btn{ background:#717171; color:#fff;}
+.green_btn{ background:#28be6c; color:#fff; font-size:14px; font-weight:normal;padding:2px 10px; text-align:center;}
+a.green_btn{background:#28be6c;color:#fff;font-size:14px; font-weight:normal; padding:2px 10px; text-align:center;}
+a:hover.green_btn{ background:#14ad5a;}
+.blue_btn{ background:#64bdd9; color:#fff; font-size:14px; font-weight:normal;padding:2px 10px; text-align:center;}
+a.blue_btn{background:#64bdd9;color:#fff;font-size:14px; font-weight:normal; padding:2px 10px; text-align:center;}
+a:hover.blue_btn{ background:#329cbd;}
+a.orange_btn{ background:#ff5722;color:#fff;font-size:14px; font-weight:normal; padding:2px 10px; text-align:center; }
+a:hover.orange_btn{ background:#d63502;}
+
+.green_u_btn{border:1px solid #3cb761; padding:2px 10px; color:#3cb761;}
+a.green_u_btn{border:1px solid #3cb761; padding:2px 10px; color:#3cb761;}
+a:hover.green_u_btn{ background:#3cb761; color:#fff;}
+.orange_u_btn{border:1px solid #ff5d31; padding:2px 10px; color:#ff5d31;}
+a.orange_u_btn{border:1px solid #ff5d31; padding:2px 10px; color:#ff5d31;}
+a:hover.orange_u_btn{background:#ff5d31; color:#fff;}
+.bgreen_u_btn{border:1px solid #1abc9c; padding:2px 10px; color:#1abc9c;}
+a.bgreen_u_btn{border:1px solid #1abc9c1; padding:2px 10px; color:#1abc9c;}
+a:hover.bgreen_u_btn{background:#1abc9c; color:#fff;}
+.blue_u_btn{border:1px solid #64bdd9; padding:2px 10px; color:#64bdd9;}
+a.blue_u_btn{border:1px solid #64bdd9; padding:2px 10px; color:#64bdd9;}
+a:hover.blue_u_btn{background:#64bdd9; color:#fff;}
+.blue_n_btn{ background:#64bdd9; color:#fff; font-weight:normal;padding:2px 10px; text-align:center;}
+a.blue_n_btn{background:#64bdd9;color:#fff;font-weight:normal; padding:2px 10px; text-align:center;}
+a:hover.blue_n_btn{ background:#329cbd;}
+.green_n_btn{background:#3cb761; padding:2px 10px; color:#fff;}
+a.green_n_btn{background:#3cb761; padding:2px 10px; color:#fff;}
+a:hover.green_n_btn{ background:#14ad5a;}
+.orange_n_btn{background:#ff5d31; padding:2px 10px; color:#fff;}
+a.orange_n_btn{background:#ff5d31; padding:2px 10px; color:#fff;}
+a:hover.orange_n_btn{background:#d63502;}
+.bgreen_n_btn{background:#1abc9c; padding:2px 10px; color:#fff;}
+a.bgreen_n_btn{background:#1abc9c; padding:2px 10px; color:#fff;}
+a:hover.bgreen_n_btn{background:#08a384;}
+
+.nolink_btn{ background:#BCBCBC; color: #fff; padding:2px 5px;}
+.more_btn{-moz-border-radius:3px; -webkit-border-radius:3px; border:1px solid #9DCEFF; color:#9DCEFF; border-radius:3px; padding:0px 3px;}
+.upbtn{ margin:42px 0 0 10px; border:none; color:#999; width:150px;}
+.red_btn_cir{ background:#e74c3c; padding:1px 10px; -moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px; color:#fff; font-weight:normal;font-size:12px;}
+.green_btn_cir{ background:#28be6c; padding:1px 10px; -moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px; color:#fff; font-weight:normal;font-size:12px;}
+.blue_btn_cir{ background:#3498db; padding:1px 10px; -moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px; color:#fff; font-weight:normal;font-size:12px;}
+.orange_btn_cir{ background:#e67e22; padding:1px 10px; -moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px; color:#fff; font-weight:normal; font-size:12px;}
+.bgreen_btn_cir{ background:#1abc9c; padding:1px 10px; -moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px; color:#fff; font-weight:normal; font-size:12px;}
+/* commonpic */
+.pic_date{ display:block; background:url(../images/public_icon.png) -31px 0 no-repeat; width:16px; height:15px; float:left;}
+.pic_add{ display:block; background:url(../images/public_icon.png) -31px -273px no-repeat; width:16px; height:15px; float:left;}
+.pic_sch{ display:block; background:url(../images/public_icon.png) -31px -195px no-repeat; width:16px; height:15px; float:left;}
+.pic_mes{ display:block; background:url(../images/public_icon.png) 0px -376px no-repeat; width:20px; height:15px; padding-left:18px;}
+.pic_img{ display:block; background:url(../images/public_icon.png) -31px -419px no-repeat; width:20px; height:15px; }
+.pic_del{ display:block; background:url(../images/public_icon.png) 0px -235px no-repeat; width:20px; height:15px; }
+.pic_del:hover{ background:url(../images/public_icon.png) -32px -235px no-repeat; }
+.pic_stats{display:block; background:url(../images/public_icon.png) 0px -548px no-repeat; width:20px; height:15px;}
+.pic_files{display:block; background:url(../images/public_icon.png) 0px -578px no-repeat; width:20px; height:15px;}
+.pic_text{display:block; background:url(../images/public_icon.png) 0px -609px no-repeat; width:20px; height:18px;}
+.pic_text02{display:block; background:url(../images/public_icon.png) 0px -642px no-repeat; width:20px; height:19px;}
+.pic_edit{display:block; background:url(../images/public_icon.png) 0px -32px no-repeat; width:20px; height:15px;}
+.pic_edit:hover{display:block; background:url(../images/public_icon.png) -32px -32px no-repeat; width:20px; height:15px;}
+
+
+
+
+
+/*框架主类容*/
+#Container{ width:1000px; margin:0 auto; }
+
+/*头部导航*/
+#Header{ margin:10px 0; background:#15bccf; height:40px; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; }
+.logo{ margin:5px 10px; }
+#TopNav{}
+#TopNav ul li{ margin-top:8px;}
+.topnav_a a{ font-size:14px; font-weight:bold; color:#fff; margin-right:10px;}
+.topnav_a a:hover{color: #a1ebff;}
+#TopUser{}
+#TopUser ul li{ margin-top:8px;}
+.topuser_a a{ font-size:14px; font-weight:bold; color:#fff; margin-right:10px;}
+.topuser_a a:hover{color: #a1ebff;}
+#TopUser02{ }
+#TopUser02 li{ float: left;}
+#TopUser02 li a{ margin-right:10px;color: #FFF;text-align: center;}
+#TopUser02 li a:hover{color: #a1ebff;}
+#TopUser02 div{ position: absolute;visibility: hidden;background:#fff;border: 1px solid #15bccf;}
+#TopUser02 div a{position: relative;display: block;white-space: nowrap;text-align: left; line-height:1.9; margin-left:5px;background: #fff;color:#15bccf; font-weight:normal;}
+#TopUser02 div a:hover{ color:#e8770d; font-weight: bold;}
+/*头部导航下拉*/
+div#menu {height:41px; font-size:14px; font-weight:bold; }
+div#menu ul {float: left;}
+div#menu ul.menu { padding-left: 30px; }
+div#menu li {position: relative; z-index: 9; margin: 0; display: block; float: left; }
+div#menu li:hover>ul { left: -2px;}
+div#menu a {position: relative;z-index: 10; height: 41px; display: block; float: left;line-height: 41px; text-decoration: none; font-size:14px; }
+div#menu a:hover, div#menu a:hover span { color: #a1ebff; }
+div#menu li.current a {}
+div#menu {display: block; cursor: pointer; background-repeat: no-repeat;background-position: 95% 0;padding-right: 15px; _padding-right: 20px;}
+div#menu ul a.parent {background: url(../images/item.png) -20px -30px no-repeat; width:60px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis;}
+div#menu ul a.parent:hover {background: url(../images/item.png) -20px -60px no-repeat;}
+div#menu ul ul a.parent {background: url(../images/item.png) -20px 6px no-repeat;}
+div#menu ul ul a.parent:hover {background: url(../images/item.png) -20px -11px no-repeat;}
+/* menu::level1 */
+div#menu a { padding: 5px 12px 0 10px;line-height: 30px; color: #fff;}
+div#menu li { background: url(images/main-delimiter.png) 98% 4px no-repeat; }
+div#menu li.last { background: none; }
+/* menu::level2 */
+div#menu ul ul li { background: none; }
+div#menu ul ul { position: absolute;top: 38px; left: -999em; width: 90px; padding: 5px 0 0 0; background:#fff; border:1px solid #15bccf; margin-top:1px;}
+div#menu ul ul a {padding: 0 0 0 15px; height: auto; float: none;display: block; line-height: 24px; font-size:12px; font-weight:normal;color:#15bccf;}
+div#menu ul ul a:hover { color:#ff9900;}
+div#menu ul ul li.last { margin-left:15px; }
+div#menu ul ul li {width: 100%;}
+/* menu::level3 */
+div#menu ul ul ul {padding: 0;margin: -38px 0 0 92px !important; width:140px; }
+div#menu ul ul ul li a{ width:125px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis;color:#15bccf;}
+
+/*主类容*/
+#Main{ background:#fff; margin-bottom:10px;}
+#content{}
+#content02{ background:#fff; padding:10px; margin-bottom:10px;}
+/*主类容搜索*/
+#TopBar{ height:60px; margin-bottom:10px; background:#fff;}
+.topbar_info02{ margin:5px 10px;width:480px; }
+.topbar_info02 p{color: #7f7f7f;}
+.search{ margin-top:8px; margin-left:71px;}
+.search_form{margin-top:8px;margin-left:72px;}
+.topbar_info{ width:350px; color:#5c5c5c; font-size:16px; margin-right:50px; line-height:1.3; padding-left:100px;}
+a.search_btn{ display:block; background:#15bccf; color:#fff; width:60px; height:24px; text-align:center; padding-top:3px;}
+a:hover.search_btn{ background: #0fa9bb;}
+.search_text{ border:1px solid #15bccf; background:#fff; width:220px; height:25px; padding-left:5px; }
+/*主类容左右分栏*/
+#LSide{ width:240px; }
+#RSide{ width:730px; margin-left:10px; background:#fff; padding:10px; margin-bottom:10px;}
+
+
+/*底部*/
+#Footer{ padding-top:10px; background:#fff; margin-bottom:10px;}
+.copyright{ width:780px; margin:0 auto;height:30px; }
+.footlogo{ width:580px; margin:0 auto;height:50px; }
+/*意见反馈*/
+html{ overflow-x:hidden;}
+.scrollsidebar{ position: fixed; bottom:1px; right:1px; background:none; }
+.side_content{width:154px; height:auto; overflow:hidden; float:left; }
+.side_content .side_list {width:154px;overflow:hidden;}
+.show_btn{ width:0; height:112px; overflow:hidden; float:left; margin-top:190px;cursor:pointer;}
+.show_btn span { display:none;}
+.close_btn{width:24px;height:24px;cursor:pointer;}
+.side_title,.side_bottom,.close_btn,.show_btn {background:url(../images/sidebar_bg.png) no-repeat; }
+.side_title {height:35px;}
+.side_bottom { height:8px;}
+.side_center {font-family:Verdana, Geneva, sans-serif; padding:0px 12px; font-size:12px;}
+.close_btn { float:right; display:block; width:21px; height:16px; margin:9px 10px 0 0; _margin:16px 5px 0 0;}
+.close_btn span { display:none;}
+.side_center .custom_service p { text-align:center; padding:6px 0; margin:0; vertical-align:middle;}
+.msgserver { margin-top:5px;}
+/*.msgserver a { background:url(../images/sidebar_bg.png) no-repeat -119px -112px; padding-left:22px; height:21px; display:block; }*/
+.msgserver a { height:21px; display:block; }
+.opnionText{box-shadow:none; width:122px; height:180px; border-color: #DFDFDF; background:#fff; color:#999; padding:3px; font-size:12px;overflow:auto; background-attachment:fixed;border-style:solid;}
+a.opnionButton{ display:block; background:#15bccf; width:130px; height:23px; margin-top:5px; text-align:center; padding-top:3px;}
+a:hover.opnionButton{background: #0fa9bb; }
+/* blue skin as the default skin */
+.side_title {background-position:-195px 0;}
+.side_center {background:url(../images/blue_line.png) repeat-y center; }
+.side_bottom {background-position:-195px -50px;}
+a.close_btn {background-position:-44px 0;}
+a:hover.close_btn {background-position:-66px 0;}
+.show_btn {background-position:-119px 0;}
+.msgserver a {color:#15bccf; }
+.msgserver a:hover { text-decoration:underline; }
+
+
+/***** Ajax indicator ******/
+#ajax-indicator {
+ position: absolute; /* fixed not supported by IE */
+ background-color:#eee;
+ border: 1px solid #bbb;
+ top:35%;
+ left:40%;
+ width:20%;
+ font-weight:bold;
+ text-align:center;
+ padding:0.6em;
+ z-index:100000;
+ opacity: 0.5;
+}
+
+html>body #ajax-indicator { position: fixed; }
+
+#ajax-indicator span {
+ background-position: 0% 40%;
+ background-repeat: no-repeat;
+ background-image: url(../images/loading.gif);
+ padding-left: 26px;
+ vertical-align: bottom;
+}
+
+div.modal {
+ border-radius: 5px;
+ background: #fff;
+ z-index: 50;
+ padding: 4px;
+}
+.ui-widget-content {
+ border: 1px solid #ddd;
+ color: #333;
+}
+.ui-widget {
+ font-family: Verdana, sans-serif;
+ font-size: 1.1em;
+}
+.ui-dialog .ui-dialog-content {
+ position: relative;
+ border: 0;
+ padding: .5em 1em;
+ background: none;
+ overflow: auto;
+ zoom: 1;
+}
+.ui-widget-overlay {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+}
+.ui-widget-overlay {
+ background: #666 url(http://forge.trustie.net/stylesheets/jquery/images/xui-bg_diagonals-thick_20_666666_40x40.png.pagespeed.ic.9mfuw_R0z1.png) 50% 50% repeat;
+ opacity: .5;
+ filter: Alpha(Opacity=50);
+}
+/***** end Ajax indicator ******/
+
+/***** Flash & error messages ****/
+#errorExplanation, div.flash, .nodata, .warning, .conflict {
+ padding: 4px 4px 4px 30px;
+ margin-bottom: 12px;
+ font-size: 1.1em;
+ border: 2px solid;
+}
+
+div.flash {margin-top: 8px;}
+
+div.flash.error, #errorExplanation {
+ background: url(../images/exclamation.png) 8px 50% no-repeat;
+ background-color: #ffe3e3;
+ border-color: #dd0000;
+ color: #880000;
+}
+
+div.flash.notice {
+ background: url(../images/true.png) 8px 5px no-repeat;
+ background-color: #dfffdf;
+ border-color: #9fcf9f;
+ color: #005f00;
+}
+
+div.flash.warning, .conflict {
+ background: url(../images/warning.png) 8px 5px no-repeat;
+ background-color: #FFEBC1;
+ border-color: #FDBF3B;
+ color: #A6750C;
+ text-align: left;
+}
+
+.nodata, .warning {
+ text-align: center;
+ background-color: #FFEBC1;
+ border-color: #FDBF3B;
+ color: #A6750C;
+}
+
+#errorExplanation ul { font-size: 0.9em;}
+#errorExplanation h2, #errorExplanation p { display: none; }
+
+.conflict-details {font-size:80%;}
+/***** end Flash & error messages ****/
+
+
+/*弹出框*/
+.black_overlay{display:none;position:fixed;top:0px;left:0px;width:100%;height:100%;background-color:black;z-index:1001;-moz-opacity:0.8;opacity:.80;filter:alpha(opacity=80);}
+.white_content{display:none;position:fixed;top:15%;left:30%;width:420px;height: auto; margin-bottom:20px;padding:16px;border:3px solid #15bccf;background-color:white;z-index:1002;overflow:auto;}
+.white_content02{display:none;position:fixed;top:15%;left:30%;width:200px;height: auto; margin-bottom:20px;padding:10px;border:3px solid #15bccf;background-color:white;z-index:1002;overflow:auto;}
+.newhwork_content{ display:none;position:fixed;top:15%;left:30%;width:600px;height: auto; margin-bottom:20px;padding:16px;border:3px solid #15bccf;background-color:white;z-index:1002;overflow:auto;}
+.floatbox{ width:420px; border:3px solid #15bccf; background:#fff; padding:5px;}
+a.box_close{ display:block; float:right; width:16px; height:16px; background:url(../images/img_floatbox.png) 0 0 no-repeat;}
+a:hover.box_close{background:url(../images/img_floatbox.png) -22px 0 no-repeat;}
+
+div.ke-statusbar{height:1px; border-top:none;}
+
+/*底部*/
+/*#Footer{background-color:#ffffff; margin-bottom:10px; padding-bottom:15px; color:#666666;}*/
+/*.footerAboutContainer {width:auto; border-bottom:1px solid #efefef;}*/
+/*.footerAbout{ width:585px; margin:0 auto;height:35px; line-height:35px; border-bottom:1px solid #efefef; }*/
+/*.languageBox {width:55px; height:20px; margin-left:5px; outline:none; color:#666666; border:1px solid #d9d9d9;}*/
+/*.departments{ width:890px; margin:5px auto 0 auto;height:30px;line-height:30px;}*/
+/*.copyright{ width:390px; margin:0 auto;height:20px;line-height:20px;}*/
+/*a.f_grey {color:#666666;}*/
+/*a.f_grey:hover {color:#000000;}*/
+/*资源库*/
+.resources {width:728px; background-color:#ffffff; padding:10px; border:1px solid #dddddd;float: right}
+/*.resources {width:730px; background-color:#ffffff; padding:10px;float: right}*/
+.resourcesBanner {width:730px; height:40px; background-color:#eaeaea; margin-bottom:10px;}
+.bannerName {background:#64bdd9; color:#ffffff; height:40px; line-height:40px; width:90px; text-align:center; font-weight:normal; vertical-align:middle; font-size: 16px; float:left;}
+.resourcesSelect {width:30px; height:34px; float:right; position:relative; margin-top:-6px;}
+.resourcesSelected {width:25px; height:20px; position:relative; background:url(images/resource_icon_list.png) 0px 0px no-repeat;}
+.resourcesSelected:hover { background:url(images/resource_icon_list.png) 0px -25px no-repeat;}
+.resourcesIcon {margin-top:15px; display:block; width:25px; height:20px;}
+/*.resourcesIcon {margin-top:15px; display:block; position:relative; background:url(images/resource_icon_list.png) 0px 0px no-repeat; width:25px; height:20px;}*/
+/*.resourcesIcon:hover { background:url(images/resource_icon_list.png) 0px -25px no-repeat;}*/
+/*.resourcesType {width:50px; background-color:#ffffff; float:left; list-style:none; position:absolute; border:1px solid #eaeaea; border-radius:5px; top:35px; padding:5px 10px; left:-30px; font-size:12px; color:#888888; display:none;}*/
+a.resourcesGrey {font-size:12px; color:#888888;}
+a.resourcesGrey:hover {font-size:12px; color:#15bccf;}
+.resourcesBanner ul li:hover ul.resourcesType {display:block;}
+.resourcesSelected:hover ul {display:block;}
+.resourcesUploadBox {float:right; width:103px; height:34px; background-color:#64bdd9; line-height:34px; vertical-align:middle; text-align:center; margin-left:12px;}
+.resourcesUploadBox:hover {background-color:#0781b4;}
+.uploadIcon {background:url(images/resource_icon_list.png) -35px 10px no-repeat; float:left; display:block; width:30px; height:30px; margin-left:-3px;}
+a.uploadText {color:#ffffff; font-size:14px;}
+.resourcesSearchloadBox {border:1px solid #e6e6e6; width:225px; float:left; background-color:#ffffff;}
+.searchResource {border:none; outline:none; background-color:#ffffff; width:184px; height:32px; padding-left:10px; display:block; float:left;}
+.searchIcon{width:31px; height:32px; background-color:#ffffff; background:url(images/resource_icon_list.png) -40px -15px no-repeat; display:block; float:left;}
+/*.resourcesSearchBanner {height:34px; margin-bottom:10px;}*/
+.resourcesSearchBanner {width:710px; height:34px; margin-bottom:10px; margin-top:15px; margin-left:auto; margin-right:auto;}
+/*.resourcesListTab {width:730px; height:40px; background-color:#f6f6f6; border-bottom:1px solid #eaeaea; font-size:14px; color:#7a7a7a;}*/
+.resourcesListTab {width:710px; height:40px; background-color:#f6f6f6; border-bottom:1px solid #eaeaea; font-size:14px; color:#7a7a7a; margin-left:auto; margin-right:auto;}
+/*.resourcesListName {width:175px; height:40px; line-height:40px; text-align:center;}*/
+/*.resourcesListSize {width:110px; height:40px; line-height:40px; text-align:center;}*/
+/*.resourcesListType {width:150px; height:40px; line-height:40px; text-align:center;}*/
+/*.resourcesListUploader {width:130px; height:40px; line-height:40px; text-align:center;}*/
+/*.resourcesListTime {width:165px; height:40px; line-height:40px; text-align:center;}*/
+.resourcesListName {width:160px; height:40px; line-height:40px; text-align:left;}
+.resourcesListSize {width:105px; height:40px; line-height:40px; text-align:center;}
+.resourcesListType {width:150px; height:40px; line-height:40px; text-align:center;}
+.resourcesListUploader {width:180px; height:40px; line-height:40px; text-align:center;}
+.resourcesListTime {width:95px; height:40px; line-height:40px; text-align:center;}
+/*.resourcesList {width:730px; height:39px; background-color:#ffffff; border-bottom:1px dashed #eaeaea; color:#9a9a9a; font-size:12px;}*/
+a.resourcesBlack {font-size:12px; color:#4c4c4c;white-space: nowrap;text-align: left}
+a.resourcesBlack:hover {font-size:12px; color:#000000;}
+.resourcesListCheckbox {width:20px; height:40px; line-height:40px; text-align:center; vertical-align:middle;}
+.resourcesCheckbox {padding:0px; margin:0px; margin-top:14px; width:12px; height:12px;}
+.resourcesList {width:710px; height:39px; background-color:#ffffff; border-bottom:1px dashed #eaeaea; color:#9a9a9a; font-size:12px; margin-left:auto; margin-right:auto;}
+.resourcesListOption {width:710px; height:40px; line-height:40px; vertical-align:middle; margin-left:auto; margin-right:auto; background-color:#f6f6f6;}
+.resourcesCheckAll {width:20px; height:40px; line-height:40px; text-align:center; vertical-align:middle; float:left;}
+.resourcesSelectSend {float:right;}
+/*.resourcesSelectSendButton {width:75px; height:28px; background-color:#ffffff; line-height:28px; vertical-align:middle; margin-top:5px; margin-right:10px; margin-left:15px; text-align:center; border:1px solid #15bccf; border-radius:5px; float:right;}*/
+.resourcesSelectSendButton {width:75px; height:28px; background-color:#ffffff; line-height:28px; vertical-align:middle; margin-top:5px; margin-right:10px; margin-left:15px; text-align:center; border:1px solid #15bccf; border-radius:5px; float:right;}
+a.sendButtonBlue {color:#15bccf;}
+a.sendButtonBlue:hover {color:#ffffff;}
+.resourcesSelectSendButton:hover {background-color:#15bccf;}
+.db {display:block !important;}
+
+.dropdown-menu {
+ position: absolute;
+ top: 100%;
+ left: 0;
+ z-index: 1000;
+ display: none;
+ float: left;
+ min-width: 80px;
+ padding: 5px 0;
+ margin: 2px 0 0;
+ font-size: 12px;
+ text-align: left;
+ background-color: #fff;
+ -webkit-background-clip: padding-box;
+ background-clip: padding-box;
+ border: 1px solid #ccc;
+ border-radius: 4px;
+ -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
+ box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
+}
+.dropdown-menu > li > a {
+ display: block;
+ padding: 3px 20px;
+ clear: both;
+ font-weight: normal;
+ line-height: 1.5;
+ color:#616060;
+ white-space: nowrap;
+}
+.dropdown-menu > li > a:hover{
+ color: #ffffff;
+ text-decoration: none;
+ background-color: #64bdd9;
+ outline:none;
+}
+.homepageRightBanner {width:718px; margin:0px auto; float:right; background-color: #ffffff; padding:10px 15px; border:1px solid #dddddd;}
+.NewsBannerName {font-size:16px; color:#4b4b4b; display:block; width:150px; float:left;}a.resourcesTypeAll {background:url(images/homepage_icon.png) -180px -89px no-repeat; padding-left:23px;}
+a.resourcesTypeAtt {background:url(images/homepage_icon.png) -180px -49px no-repeat; padding-left:23px;}
+.resourcesType {width:75px; background-color:#ffffff; float:left; list-style:none; position:absolute; border:1px solid #eaeaea; border-radius:5px; top:15px; padding:10px 20px; left:-90px; font-size:12px; color:#888888; display:none; line-height:2;}
+.resourcesUploadBox {float:right; width:103px; height:34px; background-color:#64bdd9; line-height:34px; vertical-align:middle; text-align:center; margin-left:12px;}
+.resourcesUploadBox:hover {background-color:#0781b4;}
+/* 个人主页右边部分*/
+.homepageSearchIcon {width:30px; height:32px; background:url(images/nav_icon.png) -8px 3px no-repeat; float:left;}
+a.homepagePostTypeQuiz {background:url(images/homepage_icon.png) -90px -124px no-repeat; padding-left:23px;}
+a.homepagePostTypeAssignment {background:url(images/homepage_icon.png) -93px -318px no-repeat; padding-left:23px;}
+a.replyGrey {color:#888888; display:inline-block;}
+a.replyGrey:hover {color:#4b4b4b;}
+
+/*上传资源弹窗*/
+.resourceUploadPopup {width:400px; height:auto; border:3px solid #15bccf; padding-left:16px; padding-bottom:16px; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-200px; z-index:1000;}
+.uploadDialogText {font-size:16px; color:#15bccf; line-height:16px; padding-top:20px; width:140px; display:inline-block;}
+.uploadBoxContainer {height:33px; line-height:33px; margin-top:10px; position:relative}
+.uploadBox {width:100px; height:33px; line-height:33px; text-align:center; vertical-align:middle; background-color:#64bdd9; border-radius:3px; float:left; margin-right:12px;}
+a.uploadBoxIcon {background:url(images/resource_icon_list.png) -35px 10px no-repeat; float:left; display:block; width:81px; height:30px; padding-left:22px; font-size:14px; color:#ffffff;}
+a.uploadIcon {background:url(images/resource_icon_list.png) 8px -60px no-repeat; width:100px; height:33px;}
+.chooseFile {color:#ffffff; display:block; margin-left:32px;}
+.uploadResourceIntr {width:250px; height:33px; float:left; line-height:33px; font-size:12px;}
+.uploadResourceName {width:250px; display:inline-block; line-height:15px; font-size:12px; color:#444444; margin-bottom:2px;}
+.uploadResourceIntr2 {width:250px; display:inline-block; line-height:15px; font-size:12px; color:#444444;}
+.uploadType {margin:10px 0; border:1px solid #e6e6e6; width:100px; height:30px; outline:none; font-size:12px; color:#888888;}
+.uploadKeyword {margin-bottom:10px; outline:none; border:1px solid #e6e6e6; height:30px; width:280px;}
+
+/*发送资源弹窗*/
+/*.resourceShareContainer {width:100%; height:100%; background:#666; filter:alpha(opacity=50); opacity:0.5; -moz-opacity:0.5; position:absolute; left:0; top:0; z-index:-999;}*/
+/*.resourceSharePopup {width:300px; height:auto; border:3px solid #15bccf; padding-left:16px; padding-bottom:16px; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-150px; z-index:1000;}*/
+.resourceSharePopup {width:300px; height:auto; border:3px solid #15bccf; padding-left:16px; padding-bottom:16px; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-150px; z-index:1000;}
+.sendText {font-size:16px; color:#15bccf; line-height:16px; padding-top:20px; width:100px; display:inline-block;}
+.resourcePopupClose {width:20px; height:20px; display:inline-block; float:right;}
+.resourceClose {background:url(images/resource_icon_list.png) 0px -40px no-repeat; width:20px; height:20px; display:inline-block; position: absolute; z-index: 1000;}
+.resourcesSearchBox {border:1px solid #e6e6e6; width:225px; height:25px; background-color:#ffffff; margin-top:12px; margin-bottom:15px;}
+.searchResourcePopup {border:none; outline:none; background-color:#ffffff; width:184px; height:25px; padding-left:10px; display:inline-block; float:left;}
+.searchIconPopup{width:31px; height:25px; background-color:#ffffff; background:url(images/resource_icon_list.png) -40px -18px no-repeat; display:inline-block; float:left;}
+.courseSend {width:260px; height:15px; line-height:15px; margin-bottom:10px;}
+.courseSendCheckbox {padding:0px; margin:0px; width:12px; height:12px; margin-right:10px; display:inline-block; margin-top:2px;}
+.sendCourseName {font-size:12px; color:#5f6060;display:inline-block}
+.courseSendSubmit {width:50px; height:25px; line-height:25px; text-align:center; vertical-align:middle; background-color:#64bdd9; margin-right:25px; float:left;}
+.courseSendCancel {width:50px; height:25px; line-height:25px; text-align:center; vertical-align:middle; background-color:#c1c1c1; float:left}
+a.sendSourceText {font-size:14px; color:#ffffff;}
+input.sendSourceText {font-size:14px;color:#ffffff;background-color:#64bdd9;}
+.resourcesSendTo {float:left; height:20px; margin-top:15px;}
+.resourcesSendType {border:1px solid #e6e6e6; width:60px; height:24px; outline:none; font-size:14px; color:#888888;}
+
+
+
+/*主类容左右分栏*/
+#LSide{ width:240px; }
+#RSide{ width:730px; margin-left:10px; background:#fff; padding:10px; margin-bottom:10px;}
+
+
+/*资源库*/
+/*.resources {width:730px; background-color:#ffffff;}*/
+/*.resourcesBanner {width:730px; height:40px; background-color:#eaeaea; margin-bottom:10px;}*/
+/*.bannerName {background:#64bdd9; color:#ffffff; height:40px; line-height:40px; width:90px; text-align:center; font-weight:normal; vertical-align:middle; font-size: 16px; float:left;}*/
+/*.resourcesSelect {width:40px; height:40px; float:right; position:relative;}*/
+.resourcesSelected2 {width:25px; height:20px;}
+.resourcesIcon2 {margin-top:20px; display:block; position:relative; background:url(images/resource_icon_list.png) 0px 0px no-repeat; width:25px; height:20px;}
+.resourcesIcon2:hover { background:url(images/resource_icon_list.png) 0px -25px no-repeat;}
+/*.resourcesType {width:50px; background-color:#ffffff; float:left; list-style:none; position:absolute; border:1px solid #eaeaea; border-radius:5px; top:35px; padding:5px 10px; left:-30px; font-size:12px; color:#888888; display:none;}*/
+/*a.resourcesGrey {font-size:12px; color:#888888;}*/
+/*a.resourcesGrey:hover {font-size:12px; color:#15bccf;}*/
+/*.resourcesBanner ul li:hover ul.resourcesType {display:block;}*/
+/*ul li:hover ul {display:block;}*/
+/*.resourcesUploadBox {float:right; width:103px; height:34px; background-color:#64bdd9; line-height:34px; vertical-align:middle; text-align:center; margin-left:12px;}*/
+/*.uploadIcon {background:url(images/resource_icon_list.png) -35px 10px no-repeat; float:left; display:block; width:30px; height:30px; margin-left:-3px;}*/
+/*a.uploadText {color:#ffffff; font-size:14px;}*/
+/*.resourcesSearchloadBox {border:1px solid #e6e6e6; width:225px; float:right; background-color:#ffffff;}*/
+/*.searchResource {border:none; outline:none; background-color:#ffffff; width:184px; height:32px; padding-left:10px; display:block; float:left;}*/
+/*.searchIcon{width:31px; height:32px; background-color:#ffffff; background:url(images/resource_icon_list.png) -40px -15px no-repeat; display:block; float:left;}*/
+/*.resourcesSearchBanner {height:34px; margin-bottom:10px;}*/
+/*.resourcesListTab {width:730px; height:40px; background-color:#f6f6f6; border-bottom:1px solid #eaeaea; font-size:14px; color:#7a7a7a;}*/
+/*.resourcesListCheckbox {width:40px; height:40px; line-height:40px; text-align:center; vertical-align:middle;}*/
+/*.resourcesCheckbox {padding:0px; margin:0px; margin-top:14px; width:12px; height:12px;}*/
+/*.resourcesListName {width:135px; height:40px; line-height:40px; text-align:left;}*/
+/*.resourcesListSize {width:110px; height:40px; line-height:40px; text-align:center;}*/
+/*.resourcesListType {width:150px; height:40px; line-height:40px; text-align:center;}*/
+/*.resourcesListUploader {width:130px; height:40px; line-height:40px; text-align:center;}*/
+/*.resourcesListTime {width:165px; height:40px; line-height:40px; text-align:center;}*/
+/*.resourcesList {width:730px; height:39px; background-color:#ffffff; border-bottom:1px dashed #eaeaea; color:#9a9a9a; font-size:12px;}*/
+/*a.resourcesBlack {font-size:12px; color:#4c4c4c;}*/
+/*a.resourcesBlack:hover {font-size:12px; color:#000000;}*/
+/*.dropdown-menu {*/
+ /*position: absolute;*/
+ /*top: 100%;*/
+ /*left: 0;*/
+ /*z-index: 1000;*/
+ /*display: none;*/
+ /*float: left;*/
+ /*min-width: 80px;*/
+ /*padding: 5px 0;*/
+ /*margin: 2px 0 0;*/
+ /*font-size: 12px;*/
+ /*text-align: left;*/
+ /*background-color: #fff;*/
+ /*-webkit-background-clip: padding-box;*/
+ /*background-clip: padding-box;*/
+ /*border: 1px solid #ccc;*/
+ /*border-radius: 4px;*/
+ /*-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);*/
+ /*box-shadow: 0 6px 12px rgba(0, 0, 0, .175);*/
+/*}*/
+/*.dropdown-menu > li > a {*/
+ /*display: block;*/
+ /*padding: 3px 20px;*/
+ /*clear: both;*/
+ /*font-weight: normal;*/
+ /*line-height: 1.5;*/
+ /*color:#616060;*/
+ /*white-space: nowrap;*/
+/*}*/
+/*.dropdown-menu > li > a:hover{*/
+ /*color: #ffffff;*/
+ /*text-decoration: none;*/
+ /*background-color: #64bdd9;*/
+ /*outline:none;*/
+/*}*/
+
+/*发送资源弹窗*/
+/*.resourceShareContainer {width:100%; height:100%; background:#666; filter:alpha(opacity=50); opacity:0.5; -moz-opacity:0.5; position:absolute; left:0; top:0; z-index:-999;}*/
+/*.resourceSharePopup {width:300px; height:auto; border:3px solid #15bccf; padding-left:16px; padding-bottom:16px; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-150px; z-index:1000;}*/
+/*.sendText {font-size:16px; color:#15bccf; line-height:16px; padding-top:20px; width:140px; display:inline-block;}*/
+/*.resourcePopupClose {width:20px; height:20px; display:inline-block; float:right;}*/
+/*.resourceClose {background:url(images/resource_icon_list.png) 0px -40px no-repeat; width:20px; height:20px; display:inline-block;}*/
+/*.resourcesSearchBox {border:1px solid #e6e6e6; width:225px; height:25px; background-color:#ffffff; margin-top:12px; margin-bottom:15px;}*/
+/*.searchResourcePopup {border:none; outline:none; background-color:#ffffff; width:184px; height:25px; padding-left:10px; display:inline-block; float:left;}*/
+/*.searchIconPopup{width:31px; height:25px; background-color:#ffffff; background:url(images/resource_icon_list.png) -40px -18px no-repeat; display:inline-block; float:left;}*/
+/*.courseSend {width:260px; height:15px; line-height:15px; margin-bottom:10px;}*/
+/*.courseSendCheckbox {padding:0px; margin:0px; width:12px; height:12px; margin-right:10px; display:inline-block; margin-top:2px;}*/
+/*.sendCourseName {font-size:12px; color:#5f6060;}*/
+/*.courseSendSubmit {width:50px; height:25px; line-height:25px; text-align:center; vertical-align:middle; background-color:#64bdd9; margin-right:25px; float:left;}*/
+/*.courseSendCancel {width:50px; height:25px; line-height:25px; text-align:center; vertical-align:middle; background-color:#c1c1c1; float:left}*/
+/*a.sendSourceText {font-size:14px; color:#ffffff;}*/
+
+/*上传资源弹窗*/
+/*.resourceUploadPopup {width:400px; height:auto; border:3px solid #15bccf; padding-left:16px; padding-bottom:16px; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-200px; z-index:1000;}*/
+/*.uploadText {font-size:16px; color:#15bccf; line-height:16px; padding-top:20px; width:140px; display:inline-block;}*/
+/*.uploadBoxContainer {height:33px; line-height:33px; margin-top:10px; position:relative;}*/
+/*.uploadBox {width:100px; height:33px; line-height:33px; text-align:center; vertical-align:middle; background-color:#64bdd9; border-radius:3px; float:left; margin-right:12px;}*/
+/*a.uploadIcon {background:url(images/resource_icon_list.png) 8px -60px no-repeat; width:100px; height:33px;}*/
+/*.chooseFile {color:#ffffff; display:block; margin-left:32px;}*/
+/*.uploadResourceIntr {width:250px; height:33px; float:left; line-height:33px; font-size:12px;}*/
+/*.uploadResourceName {width:250px; display:inline-block; line-height:15px; font-size:12px; color:#444444; margin-bottom:2px;}*/
+/*.uploadResourceIntr2 {width:250px; display:inline-block; line-height:15px; font-size:12px; color:#444444;}*/
+/*.uploadType {margin:10px 0; border:1px solid #e6e6e6; width:100px; height:30px; outline:none; font-size:12px; color:#888888;}*/
+/*.uploadKeyword {margin-bottom:10px; outline:none; border:1px solid #e6e6e6; height:30px; width:280px;}*/
+
+
+/*新个人主页框架css*/
+.navContainer {width:100%; margin:0 auto; background-color:#15bccf;}
+.homepageContentContainer {width:100%; margin:0 auto; background-color:#eaebed;}
+.homepageContent {width:1000px; background-color:#eaebed; margin:0 auto;}
+.navHomepage {width:1000px; height:54px; background-color:#15bccf; margin:0 auto;}
+.navHomepageLogo {width:60px; height:54px; line-height:54px; vertical-align:middle; margin-left:2px; margin-right:40px;}
+.navHomepageMenu {margin-right:40px;display:inline-block;height:54px; line-height:54px; vertical-align:middle;}
+.navHomepageSearchBox {width:380px; border:none; outline:none; height:32px; margin-top:11px; background-color:#ffffff;}
+.navHomepageSearchInput {width:345px; height:32px; outline:none; border:none; float:left; padding-left:5px;; margin:0;}
+.homepageSearchIcon {width:30px; height:32px; background:url(../images/nav_icon.png) -8px 3px no-repeat; float:left;}
+a.homepageSearchIcon:hover {background:url(../images/nav_icon.png) -49px 3px no-repeat;}
+.navHomepageNews {width:30px; display:block; float:right; margin-top:12px; position:relative;}
+.homepageNewsIcon {background:url(../images/nav_icon.png) -5px -85px no-repeat; width:30px; height:29px; display:block;}
+.newsActive {width:10px; height:10px; border-radius:50%; border:2px solid #ffffff; background-color:#ff0000; position:absolute; left:17px; top:5px;}
+.navHomepageProfile {width:65px; display:block; float:right; margin-top:8px; margin-left:33px;}
+.homepageProfileMenuIcon {background:url(../images/nav_icon.png) -8px -175px no-repeat; width:20px; height:25px; float:left; margin-top:15px; line-height:0;}
+a.homepageProfileMenuIconhover {background:url(../images/nav_icon.png) -8px -175px no-repeat; width:12px; height:12px; float:left;}
+.homepageLeft {width:240px; float:left; margin-right:10px;}
+.homepageRight {width:750px; float:left;}
+.homepagePortraitContainer {width:238px; height:348px; border:1px solid #dddddd; background-color:#ffffff; margin-top:15px;}
+.homepagePortraitImage {width:208px; height:208px; margin:15px 16px 14px 16px;}
+.homepageFollow {}
+.homepageEditProfile {}
+.homepageImageName {font-size:16px; color:#484848; margin-left:15px; display:inline-block; margin-right:8px;}
+.homepageImageSex {float:left; top:116px; left:5px; width:14px; height:14px; display:inline-block;}
+.homepageSignature {font-size:12px; color:#888888; margin-left:15px; margin-top:5px; margin-bottom:15px;}
+.homepageImageBlock {margin:0 26px; float:left; text-align:center; display:inline-block;}
+.homepageImageNumber {font-size:12px; color:#484848;}
+.homepageImageText {width:26px; font-size:12px; color:#888888;}
+.homepageVerDiv {height:28px; vertical-align:middle; width:1px; float:left; display:inline-block; background-color:#d1d1d1; margin-top:3px;}
+.homepageLeftMenuContainer {width:238px; border:1px solid #dddddd; border-bottom:none; background-color:#ffffff; margin-top:10px;}
+.homepageLeftMenuBlock {border-bottom:1px solid #dddddd; height:50px; line-height:50px; vertical-align:middle;}
+a.homepageMenuText {color:#484848; font-size:16px; margin-left:20px;}
+.homepageLeftLabelContainer {width:238px; border:1px solid #dddddd; background-color:#ffffff; margin-top:10px;}
+.homepageRightBanner {}
+.newsType {width:60px; background-color:#ffffff; float:left; list-style:none; position:absolute; border:1px solid #eaeaea; border-radius:5px; top:35px; padding:5px 10px; left:-40px; font-size:12px; color:#888888; display:none; line-height:2;}
+.homepageRightBlock {}
+.homepageNewsList {width:710px; height:39px; line-height:39px; vertical-align:middle; border-bottom:1px dashed #eaeaea; margin:0 auto;}
+.homepageNewsPortrait {width:40px; display:block; margin-top:7px;}
+.homepageNewsPublisher {width:80px; max-width:80px; margin-right:10px; font-size:12px; color:#15bccf; display:block; padding-left:5px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; }
+.homepageNewsType {width:95px; font-size:12px; color:#888888; display:block;}
+.homepageNewsTypeNotRead {width:95px; font-size:12px; color:#888888; display:block;}
+.homepageNewsContent {width:395px; max-width:395px; margin-right:10px; font-size:12px; color:#4b4b4b; display:block; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; overflow: hidden;height:49px; max-height:49px;}
+.homepageNewsTime {width:75px; font-size:12px; color:#888888; display:block; text-align:right;}
+a.homepageWhite {color:#ffffff;}
+a.homepageWhite:hover {color:#a1ebff}
+a.newsGrey {color:#4b4b4b;}
+a.newsGrey:hover {color:#000000;}
+a.newsRed {color:red;}
+a.newsRed:hovor {color:#888888;}
+a.replyGrey {color:#888888; display:inline-block;}
+a.replyGrey:hover {color:#4b4b4b;}
+a.replyGrey1 {color:#888888;}
+a.replyGrey1:hover {color:#4b4b4b;}
+a.newsBlue {color:#269ac9;}
+a.newsBlue:hover {color:#297fb8;}
+a.newsBlack {color:#4b4b4b; font-size:13px; font-weight:bold}
+a.menuGrey {color:#808080;}
+a.menuGrey:hover {color:#fe7d68;}
+a.resourcesGrey {font-size:12px; color:#888888;}
+a.resourcesGrey:hover {font-size:12px; color:#15bccf;}
+.portraitRadius {border-radius: 3px;}
+
+/***** Flash & error messages ****/
+#errorExplanation, div.flash, .nodata, .warning, .conflict {
+ padding: 4px 4px 4px 30px;
+ margin-bottom: 12px;
+ font-size: 1.1em;
+ border: 2px solid;
+}
+
+div.flash {margin-top: 8px;}
+
+div.flash.error, #errorExplanation {
+ background: url(../images/exclamation.png) 8px 50% no-repeat;
+ background-color: #ffe3e3;
+ border-color: #dd0000;
+ color: #880000;
+}
+
+div.flash.notice {
+ background: url(../images/true.png) 8px 5px no-repeat;
+ background-color: #dfffdf;
+ border-color: #9fcf9f;
+ color: #005f00;
+}
+
+div.flash.warning, .conflict {
+ background: url(../images/warning.png) 8px 5px no-repeat;
+ background-color: #FFEBC1;
+ border-color: #FDBF3B;
+ color: #A6750C;
+ text-align: left;
+}
+
+.nodata, .warning {
+ text-align: center;
+ background-color: #FFEBC1;
+ border-color: #FDBF3B;
+ color: #A6750C;
+}
+
+#errorExplanation ul { font-size: 0.9em;}
+#errorExplanation h2, #errorExplanation p { display: none; }
+
+.conflict-details {font-size:80%;}
+/***** end Flash & error messages ****/
+
+/*消息铃铛样式*/
+.navHomepageNews {width:30px; display:block; float:right; margin-top:4px; position:relative; margin-right: 8px;}
+.newsActive {width:6px; height:6px; border-radius:50%; border:2px solid #ffffff; background-color:#ff0000; position:absolute; left:20px; top:8px;z-index:999}
+
+/*20150826协议 LB*/
+.AgreementBox{ margin:20px 0; color:#666666; font-size:14px; line-height:1.9;}
+.Agreementh4{ color:#2980b9; font-weight:bold; font-size:14px; margin-top:30px; border: none;}
+.AgreementTxt{text-indent: 2em; margin-bottom: 15px;}
+.AgreementImg{margin: 0px auto;}