From e876cb09d9c2a5d7a7f20c86ae6ed0209f146467 Mon Sep 17 00:00:00 2001 From: Tim Date: Thu, 31 Dec 2015 10:28:58 +0800 Subject: [PATCH 01/18] =?UTF-8?q?=E8=87=AA=E5=8A=A8=E5=87=BA=E7=8E=B0?= =?UTF-8?q?=E7=9A=84controller=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/exercise_controller.rb | 1360 ++++++++++++------------ 1 file changed, 680 insertions(+), 680 deletions(-) diff --git a/app/controllers/exercise_controller.rb b/app/controllers/exercise_controller.rb index 444446ef4..a3e4f89c3 100644 --- a/app/controllers/exercise_controller.rb +++ b/app/controllers/exercise_controller.rb @@ -1,681 +1,681 @@ -class ExerciseController < ApplicationController - layout "base_courses" - - before_filter :find_exercise_and_course, :only => [:create_exercise_question, :edit, :update, :show, :destroy, - :commit_exercise, :commit_answer,:publish_exercise,:republish_exercise, - :show_student_result,:student_exercise_list] - before_filter :find_course, :only => [:index,:new,:create] - include ExerciseHelper - - def index - publish_exercises = Exercise.where("publish_time is not null and exercise_status = 1 and publish_time <=?",Time.now) - publish_exercises.each do |exercise| - exercise.update_column('exercise_status', 2) - course = exercise.course - course.members.each do |m| - exercise.course_messages << CourseMessage.new(:user_id => m.user_id, :course_id => course.id, :viewed => false, :status => 2) - end - end - - if @course.is_public == 0 && !(User.current.member_of_course?(@course)||User.current.admin?) - render_403 - return - end - remove_invalid_exercise(@course) - @is_teacher = User.current.allowed_to?(:as_teacher,@course) - if @is_teacher || User.current.admin? - exercises = @course.exercises.order("created_at asc") - else - exercises = @course.exercises.where("exercise_status <> 1").order("created_at asc") - end - @exercises = paginateHelper exercises,20 #分页 - respond_to do |format| - format.html - end - end - - def show - publish_exercises = Exercise.where("publish_time is not null and exercise_status = 1 and publish_time <=?",Time.now) - publish_exercises.each do |exercise| - exercise.update_column('exercise_status', 2) - course = exercise.course - course.members.each do |m| - exercise.course_messages << CourseMessage.new(:user_id => m.user_id, :course_id => course.id, :viewed => false, :status => 2) - end - end - - unless User.current.member_of_course?(@course) || User.current.admin? - render_403 - return - end - @exercise = Exercise.find params[:id] - @is_teacher = User.current.allowed_to?(:as_teacher,@course) || User.current.admin? - exercise_end = @exercise.end_time > Time.now - if @exercise.time == -1 - @can_edit_excercise = exercise_end - else - @can_edit_excercise = !has_commit_exercise?(@exercise.id,User.current.id)&& exercise_end - end - unless @is_teacher - @exercise_user = ExerciseUser.where("user_id=? and exercise_id=?", User.current.id, @exercise.id).first - if @exercise_user.nil? - eu = ExerciseUser.create(:user_id => User.current.id, :exercise_id => @exercise.id, :start_at => Time.now, :status => false) - @exercise_user = ExerciseUser.where("user_id=? and exercise_id=?", User.current.id, @exercise.id).first - end - score = calculate_student_score(@exercise, User.current) - @exercise_user.update_attributes(:score => score) - end - # @percent = get_percent(@exercise,User.current) - @exercise_questions = @exercise.exercise_questions - respond_to do |format| - format.html {render :layout => 'base_courses'} - end - #end - end - - def new - option = { - :exercise_name => "", - :course_id => @course.id, - :exercise_status => 1, - :user_id => User.current.id, - :time => "", - :end_time => "", - :publish_time => "", - :exercise_description => "", - :show_result => 1 - } - @exercise = Exercise.create option - if @exercise - redirect_to edit_exercise_url @exercise.id - end - end - - def create - if params[:exercise] - exercise = Exercise.find(params[:exercise_id]) if params[:exercise_id] - exercise ||= Exercise.new - exercise.exercise_name = params[:exercise][:exercise_name] - exercise.exercise_description = params[:exercise][:exercise_description] - exercise.end_time = Time.at(params[:exercise][:end_time].to_time.to_i + 16*60*60 -1) - exercise.publish_time = params[:exercise][:publish_time] - exercise.user_id = User.current.id - exercise.time = params[:exercise][:time] - exercise.course_id = params[:course_id] - exercise.exercise_status = 1 - if exercise.save - @exercise = exercise - respond_to do |format| - format.js - end - end - end - end - - def edit - respond_to do |format| - format.html{render :layout => 'base_courses'} - end - end - - def update - @exercise.exercise_name = params[:exercise][:exercise_name] - @exercise.exercise_description = params[:exercise][:exercise_description] - @exercise.time = params[:exercise][:time].blank? ? -1 : params[:exercise][:time] - @exercise.end_time = Time.at(params[:exercise][:end_time].to_time.to_i + 16*60*60 -1) - @exercise.publish_time = params[:exercise][:publish_time] - @exercise.show_result = params[:exercise][:show_result].blank? ? 1 : params[:exercise][:show_result] - if @exercise.save - respond_to do |format| - format.js - end - else - render_404 - end - end - - def destroy - @is_teacher = User.current.allowed_to?(:as_teacher,@course) || User.current.admin? - if @exercise && @exercise.destroy - if @is_teacher - exercises = Exercise.where("course_id =?", @course.id) - else - exercises = Exercise.where("course_id =? and exercise_status =?", @course.id, 2) - end - @exercises = paginateHelper exercises,20 #分页 - respond_to do |format| - format.js - end - end - end - - # 统计结果 - def statistics_result - @exercise = Exercise.find(params[:id]) - exercise_questions = @exercise.exercise_questions - @exercise_questions = paginateHelper exercise_questions, 5 - respond_to do |format| - format.html{render :layout => 'base_courses'} - end - end - - # 添加题目 - # question_type 1:单选 2:多选 3:填空题 - def create_exercise_question - question_title = params[:question_title].nil? || params[:question_title].empty? ? l(:label_enter_single_title) : params[:question_title] - option = { - :question_title => question_title, - :question_type => params[:question_type] || 1, - :question_number => params[:question_type] == "1"? @exercise.exercise_questions.where("question_type = 1").count + 1 : - (params[:question_type] == "2" ? (@exercise.exercise_questions.where("question_type = 2").count + 1) : - @exercise.exercise_questions.where("question_type = 3").count + 1), - :question_score => params[:question_score] - } - @exercise_questions = @exercise.exercise_questions.new option - # params[:question_answer] 题目选项 - if params[:question_answer] - for i in 1..params[:question_answer].count - answer = (params[:question_answer].values[i-1].nil? || params[:question_answer].values[i-1].empty?) ? l(:label_new_answer) : params[:question_answer].values[i-1] - question_option = { - :choice_position => i, - :choice_text => answer - } - @exercise_questions.exercise_choices.new question_option - end - end - # 如果是插入的话,那么从插入的这个id以后的question_num都将要+1 - if params[:quest_id] - @is_insert = true - if @exercise_questions.question_type == 1 - ExerciseQuestion.where("question_number>? and question_type=?",params[:quest_num].to_i, 1).update_all(" question_number = question_number + 1") - #@exercise.exercise_questions.where("question_number > #{params[:quest_num].to_i} and question_type == 1").update_all(" question_number = question_number + 1") - elsif @exercise_questions.question_type == 2 - ExerciseQuestion.where("question_number>? and question_type=?",params[:quest_num].to_i, 2).update_all(" question_number = question_number + 1") - else - ExerciseQuestion.where("question_number>? and question_type=?",params[:quest_num].to_i, 3).update_all(" question_number = question_number + 1") - end - # @exercise_question_num = params[:quest_num].to_i - @exercise_questions.question_number = params[:quest_num].to_i + 1 - end - if @exercise_questions.save - # params[:exercise_choice] 标准答案参数 - # 问答题标准答案有三个,单独处理 - if @exercise_questions.question_type == 3 - for i in 1..params[:exercise_choice].count - standart_answer = ExerciseStandardAnswer.new - standart_answer.exercise_question_id = @exercise_questions.id - standart_answer.answer_text = params[:exercise_choice].values[i-1] - standart_answer.save - end - else - standart_answer = ExerciseStandardAnswer.new - standart_answer.exercise_question_id = @exercise_questions.id - if @exercise_questions.question_type == 1 - standart_answer.exercise_choice_id = sigle_selection_standard_answer(params[:exercise_choice]) - else - standart_answer.exercise_choice_id = multiselect_standard_answer(params[:exercise_choice]) - end - standart_answer.save - end - respond_to do |format| - format.js - end - end - - end - - # 修改题目 - # params[:exercise_question] The id of exercise_question - # params[:question_answer] eg:A、B、C选项 - def update_exercise_question - @exercise_question = ExerciseQuestion.find params[:exercise_question] - @exercise_question.question_title = params[:question_title].nil? || params[:question_title].empty? ? l(:label_enter_single_title) : params[:question_title] - @exercise_question.question_score = params[:question_score] - # 处理选项:如果选了某个选项,那么则要删除之前的选项 - if params[:question_answer] - @exercise_question.exercise_choices.each do |answer| - answer.destroy unless params[:question_answer].keys.include? answer.id.to_s - end - for i in 1..params[:question_answer].count - question = @exercise_question.exercise_choices.find_by_id params[:question_answer].keys[i-1] - answer = (params[:question_answer].values[i-1].nil? || params[:question_answer].values[i-1].empty?) ? l(:label_new_answer) : params[:question_answer].values[i-1] - if question - question.choice_position = i - question.choice_text = answer - question.save - else - question_option = { - :choice_position => i, - :choice_text => answer - } - @exercise_question.exercise_choices.new question_option - end - end - end - # 更新标准答案 - if params[:exercise_choice] - if @exercise_question.question_type == 3 - # 删除不合理的选项 - @exercise_question.exercise_standard_answers.each do |answer| - answer.destroy unless params[:exercise_choice].keys.include? answer.id.to_s - end - for i in 1..params[:exercise_choice].count - # 找到对应的标准答案 - question_standart = @exercise_question.exercise_standard_answers.find_by_id params[:exercise_choice].keys[i-1] - # 标准答案值 - answer_standart = (params[:exercise_choice].values[i-1].nil? || params[:exercise_choice].values[i-1].empty?) ? l(:label_new_answer) : params[:exercise_choice].values[i-1] - if question_standart - question_standart.answer_text = answer_standart - question_standart.save - else - standart_answer_option = { - :answer_text => answer_standart - } - @exercise_question.exercise_standard_answers.new standart_answer_option - end - end - else - answer_standart = @exercise_question.exercise_standard_answers.first - answer_standart.exercise_choice_id = @exercise_question.question_type == 1 ? sigle_selection_standard_answer(params[:exercise_choice]) : multiselect_standard_answer(params[:exercise_choice]) - answer_standart.save - end - @exercise_question.save - respond_to do |format| - format.js - end - end - end - - # 删除题目 - def delete_exercise_question - @exercise_question = ExerciseQuestion.find params[:exercise_question] - @exercise = @exercise_question.exercise - - if @exercise_question.question_type == 1 - ExerciseQuestion.where("question_number>? and question_type=?",params[:quest_num].to_i, 1).update_all(" question_number = question_number - 1") - #@exercise.exercise_questions.where("question_number > #{params[:quest_num].to_i} and question_type == 1").update_all(" question_number = question_number + 1") - elsif @exercise_question.question_type == 2 - ExerciseQuestion.where("question_number>? and question_type=?",params[:quest_num].to_i, 2).update_all(" question_number = question_number - 1") - else - ExerciseQuestion.where("question_number>? and question_type=?",params[:quest_num].to_i, 3).update_all(" question_number = question_number - 1") - end - # @exercise_question_num = params[:quest_num].to_i - # @exercise_questions.question_number = params[:quest_num].to_i - 1 - # - # exercise_questions = @exercise.exercise_questions.where("question_number > #{@exercise_question.question_number}") - # exercise_questions.each do |question| - # question.question_number -= 1 - # question.save - # end - if @exercise_question && @exercise_question.destroy - respond_to do |format| - format.js - end - end - end - - # 发布试卷 - def publish_exercise - @is_teacher = User.current.allowed_to?(:as_teacher,@course) - @index = params[:index] - @exercise.exercise_status = 2 - @exercise.publish_time = Time.now - if @exercise.save - @exercise.course.members.each do |m| - @exercise.course_messages << CourseMessage.create(:user_id =>m.user_id, :course_id => @exercise.course.id, :viewed => false,:status=>2) - end - #redirect_to exercise_index_url(:course_id=> @course.id) - respond_to do |format| - format.js - end - end - end - - # 重新发布试卷 - # 重新发布的时候会删除所有的答题 - def republish_exercise - @is_teacher = User.current.allowed_to?(:as_teacher,@course) - @index = params[:index] - @exercise.exercise_questions.each do |exercise_question| - exercise_question.exercise_answers.destroy_all - end - @exercise.course_messages.destroy_all - @exercise.exercise_users.destroy_all - @exercise.exercise_status = 1 - @exercise.publish_time = nil - @exercise.save - respond_to do |format| - format.js - end - end - - def student_exercise_list -=begin - if @exercise.end_time <= Time.now - @course.student.each do |student| - if ExerciseUser.where("user_id = ? && exercise_id = ?",student.student_id,@exercise.id).empty? - ExerciseUser.create(:user_id => student.student_id, :exercise_id => @exercise.id, :start_at => @exercise.end_time, :status => true,:score=>0) - end - - s_score = calculate_student_score(@exercise, student.student) - exercise_user = ExerciseUser.where("user_id =? and exercise_id=?", student.student_id, @exercise.id).first - exercise_user.update_attributes(:score => s_score) - end - end -=end - @is_teacher = User.current.allowed_to?(:as_teacher,@course) || User.current.admin? - @all_exercises = @course.exercises.where("exercise_status > 1").order("created_at desc") - @exercise_count = @exercise.exercise_users.where('score is not NULL').count - if @is_teacher || (!@exercise.exercise_users.where(:user_id => User.current.id).empty? && @exercise.end_time <= Time.now) - @exercise_users_list = @exercise.exercise_users.where('score is not NULL') - @show_all = true; - elsif !@exercise.exercise_users.where(:user_id => User.current.id).empty? && @exercise.end_time > Time.now - @exercise_users_list = @exercise.exercise_users.where("user_id = ? and score is not NULL",User.current.id) - else - @exercise_users_list = [] - end - respond_to do |format| - format.html - end - end - - # 学生提交答卷,选中答案的过程中提交 - def commit_answer - eq = ExerciseQuestion.find(params[:exercise_question_id]) - # 已提交过的且是限时的则不允许答题 - if (has_commit_exercise?(@exercise.id,User.current.id) && (!User.current.admin?) && @exercise.time != -1) || @exercise.end_time < Time.now - render :json => {:text => "failure"} - return - end - if eq.question_type == 1 - # 单选题 - ea = ExerciseAnswer.find_by_exercise_question_id_and_user_id(params[:exercise_question_id],User.current.id) - if ea.nil? - # 尚未答该题,添加答案 - ea = ExerciseAnswer.new - ea.user_id = User.current.id - ea.exercise_question_id = params[:exercise_question_id] - end - #修改该题对应答案 - ea.exercise_choice_id = params[:exercise_choice_id] - if ea.save - # 保存成功返回成功信息及当前以答题百分比 - uncomplete_question = get_uncomplete_question(@exercise, User.current) - if uncomplete_question.count < 1 - complete = 1; - else - complete = 0; - end - @percent = get_percent(@exercise,User.current) - render :json => {:text => "ok" ,:complete => complete,:percent => format("%.2f" ,@percent)} - else - #返回失败信息 - render :json => {:text => "failure"} - end - elsif eq.question_type == 2 - #多选题 - ea = ExerciseAnswer.find_by_exercise_choice_id_and_user_id(params[:exercise_choice_id],User.current.id) - if ea.nil? - #尚未答该题,添加答案 - ea = ExerciseAnswer.new - ea.user_id = User.current.id - ea.exercise_question_id = params[:exercise_question_id] - ea.exercise_choice_id = params[:exercise_choice_id] - if ea.save - uncomplete_question = get_uncomplete_question(@exercise, User.current) - if uncomplete_question.count < 1 - complete = 1; - else - complete = 0; - end - @percent = get_percent(@exercise,User.current) - render :json => {:text => "ok",:complete => complete,:percent => format("%.2f" ,@percent)} - else - render :json => {:text => "failure"} - end - else - #pv不为空,则当前选项之前已被选择,再次点击则是不再选择该项,故删除该答案 - if ea.delete - @percent = get_percent(@exercise, User.current) - render :json => {:text => "false" ,:percent => format("%.2f" , @percent)} - else - render :json => {:text => "failure"} - end - end - elsif eq.question_type == 3 - #单行文本,多行文本题 - ea = ExerciseAnswer.find_by_exercise_question_id_and_user_id(params[:exercise_question_id], User.current.id) - if ea.nil? - # ea为空之前尚未答题,添加答案 - if params[:answer_text].nil? || params[:answer_text].blank? - #用户提交空答案,视作不作答 - @percent = get_percent(@exercise,User.current) - render :json => {:text => "",:percent => format("%.2f", @percent)} - else - #添加答案 - ea = ExerciseAnswer.new - ea.user_id = User.current.id - ea.exercise_question_id = params[:exercise_question_id] - ea.answer_text = params[:answer_text] - if ea.save - uncomplete_question = get_uncomplete_question(@exercise, User.current) - if uncomplete_question.count < 1 - complete = 1; - else - complete = 0; - end - @percent = get_percent(@exercise,User.current) - render :json => {:text => ea.answer_text,:complete => complete,:percent => format("%.2f",@percent)} - else - render :json => {:text => "failure"} - end - end - else - # ea不为空说明用户之前已作答 - if params[:answer_text].nil? || params[:answer_text].blank? - # 用户提交空答案,视为删除答案 - if ea.delete - @percent = get_percent(@exercise,User.current) - render :json => {:text => "",:percent => format("%.2f", @percent)} - else - render :json => {:text => "failure"} - end - else - #用户修改答案 - ea.answer_text = params[:answer_text] - if ea.save - @percent = get_percent(@exercise,User.current) - render :json => {:text => ea.answer_text,:percent => format("%.2f", @percent)} - else - render :json => {:text => "failure"} - end - end - end - - else - render :json => {:text => "failure"} - end - end - - # 提交问卷 - def commit_exercise - # 老师不需要提交 - if User.current.allowed_to?(:as_teacher,@course) - if @exercise.publish_time.nil? - @exercise.update_attributes(:show_result => params[:show_result]) - @exercise.update_attributes(:exercise_status => 2) - @exercise.update_attributes(:publish_time => Time.now) - course = @exercise.course - course.members.each do |m| - @exercise.course_messages << CourseMessage.new(:user_id => m.user_id, :course_id => course.id, :viewed => false, :status => 2) - end - redirect_to exercise_url(@exercise) - return - elsif @exercise.publish_time > Time.now - @exercise.update_attributes(:show_result => params[:show_result]) - redirect_to exercise_url(@exercise) - return - end - @exercise.update_attributes(:show_result => params[:show_result]) - redirect_to exercise_url(@exercise) - # REDO: 提示提交成功 - else - # 更新提交状态 - cur_exercise_user = ExerciseUser.where("user_id =? and exercise_id=?", User.current, @exercise.id).first - cur_exercise_user.update_attributes(:status => 1) - # 答题过程中需要统计完成量 - @uncomplete_question = get_uncomplete_question(@exercise, User.current) - # 获取改学生的考试得分 - @score = calculate_student_score(@exercise, User.current) - # @score = 100 - if @uncomplete_question.count < 1 - # 查看是否有已提交记录 - cur_exercise_user.score = @score - if cur_exercise_user.save - #redirect_to poll_index_path(:polls_group_id => @course.id,:polls_type => 'Course') - @status = 0 #提交成功 - else - @status = 2 #未知错误 - end - else - @status = 1 #有未做得必答题 - end - @save = params[:save].to_i if params[:save] - respond_to do |format| - format.js - end - end - end - - #查看学生的答卷情况 - def show_student_result - @user = User.find params[:user_id] - @can_edit_excercise = false - @exercise_questions = @exercise.exercise_questions - score = calculate_student_score(@exercise, @user) - eu = get_exercise_user(@exercise.id, @user.id) - eu.update_attributes(:score => score) - @exercise_user = ExerciseUser.where("user_id =? and exercise_id=?", @user.id, @exercise.id).first - respond_to do |format| - format.html {render :layout => 'base_courses'} - end - end - - # 计算学生得分 - def calculate_student_score(exercise, user) - score = 0 - score1 = 0 - score2 = 0 - score3 = 0 - exercise_qustions = exercise.exercise_questions - exercise_qustions.each do |question| - answer = get_user_answer(question, user) - standard_answer = get_user_standard_answer(question, user) - unless answer.empty? - # 问答题有多个答案 - if question.question_type == 3 && !standard_answer.empty? - if standard_answer.include?(answer.first.answer_text) - score1 = score1+ question.question_score unless question.question_score.nil? - end - elsif question.question_type == 1 && !standard_answer.nil? - if answer.first.exercise_choice.choice_position == standard_answer.exercise_choice_id - score2 = score2 + question.question_score unless question.question_score.nil? - end - elsif question.question_type == 2 && !standard_answer.nil? - arr = get_mulscore(question, user) - if arr.to_i == standard_answer.exercise_choice_id - score3 = score3 + question.question_score unless question.question_score.nil? - end - # ecs = ExerciseAnswer.where("user_id =? and exercise_question_id =?", user.id, question.id) - # arr = [] - # ecs.each do |ec| - # arr << ec.exercise_choice.choice_position - # end - # arr.sort - # arr = arr.join("") - # if arr.to_i == standard_answer.exercise_choice_id - # score3 = score + question.question_score unless question.question_score.nil? - # end - end - end - end - score = score1 + score2 + score3 - end - - private - - # ExerciseUser记录用户是否已提交问卷有对应的记录则已提交,没有则新建一个 - def get_exercise_user exercise_id,user_id - eu = ExerciseUser.find_by_exercise_id_and_user_id(exercise_id,user_id) - if eu.nil? - eu = ExerciseUser.new - end - eu - end - - # 获取当前学生回答问题的答案 - def get_user_answer(question,user) - # user_answer = ExerciseAnswer.where("user_id=? and exercise_question_id=?", user.id, question.id).first - user_answer = question.exercise_answers.where("#{ExerciseAnswer.table_name}.user_id = #{user.id}") - user_answer - end - - # 获取问题的标准答案 - def get_user_standard_answer(question,user) - if question.question_type == 3 - standard_answer =[] - question.exercise_standard_answers.each do |answer| - standard_answer << answer.answer_text - end - else - standard_answer = question.exercise_standard_answers.first - end - standard_answer - end - # 是否完成了答题 - def get_complete_question(exercise,user) - questions = exercise.exercise_questions - complete_question = [] - questions.each do |question| - answers = get_user_answer(question,user) - if !(answers.nil? || answers.count < 1) - complete_question << question - end - end - complete_question - end - - # 获取答题百分比 - def get_percent exercise,user - complete_count = get_complete_question(exercise,user).count - if exercise.exercise_questions.count == 0 - return 0 - else - return (complete_count.to_f / exercise.exercise_questions.count.to_f)*100 - end - end - - def remove_invalid_exercise(course) - exercises = course.exercises.where("exercise_name=?","") - unless exercises.empty? - exercises.each do |exercise| - if exercise.exercise_questions.empty? - exercise.destroy - end - end - end - end - - def find_exercise_and_course - @exercise = Exercise.find params[:id] - @course = Course.find @exercise.course_id - rescue Exception => e - render_404 - end - - def find_course - @course = Course.find params[:course_id] - rescue Exception => e - render_404 - end +class ExerciseController < ApplicationController + layout "base_courses" + + before_filter :find_exercise_and_course, :only => [:create_exercise_question, :edit, :update, :show, :destroy, + :commit_exercise, :commit_answer,:publish_exercise,:republish_exercise, + :show_student_result,:student_exercise_list] + before_filter :find_course, :only => [:index,:new,:create] + include ExerciseHelper + + def index + publish_exercises = Exercise.where("publish_time is not null and exercise_status = 1 and publish_time <=?",Time.now) + publish_exercises.each do |exercise| + exercise.update_column('exercise_status', 2) + course = exercise.course + course.members.each do |m| + exercise.course_messages << CourseMessage.new(:user_id => m.user_id, :course_id => course.id, :viewed => false, :status => 2) + end + end + + if @course.is_public == 0 && !(User.current.member_of_course?(@course)||User.current.admin?) + render_403 + return + end + remove_invalid_exercise(@course) + @is_teacher = User.current.allowed_to?(:as_teacher,@course) + if @is_teacher || User.current.admin? + exercises = @course.exercises.order("created_at asc") + else + exercises = @course.exercises.where("exercise_status <> 1").order("created_at asc") + end + @exercises = paginateHelper exercises,20 #分页 + respond_to do |format| + format.html + end + end + + def show + publish_exercises = Exercise.where("publish_time is not null and exercise_status = 1 and publish_time <=?",Time.now) + publish_exercises.each do |exercise| + exercise.update_column('exercise_status', 2) + course = exercise.course + course.members.each do |m| + exercise.course_messages << CourseMessage.new(:user_id => m.user_id, :course_id => course.id, :viewed => false, :status => 2) + end + end + + unless User.current.member_of_course?(@course) || User.current.admin? + render_403 + return + end + @exercise = Exercise.find params[:id] + @is_teacher = User.current.allowed_to?(:as_teacher,@course) || User.current.admin? + exercise_end = @exercise.end_time > Time.now + if @exercise.time == -1 + @can_edit_excercise = exercise_end + else + @can_edit_excercise = !has_commit_exercise?(@exercise.id,User.current.id)&& exercise_end + end + unless @is_teacher + @exercise_user = ExerciseUser.where("user_id=? and exercise_id=?", User.current.id, @exercise.id).first + if @exercise_user.nil? + eu = ExerciseUser.create(:user_id => User.current.id, :exercise_id => @exercise.id, :start_at => Time.now, :status => false) + @exercise_user = ExerciseUser.where("user_id=? and exercise_id=?", User.current.id, @exercise.id).first + end + score = calculate_student_score(@exercise, User.current) + @exercise_user.update_attributes(:score => score) + end + # @percent = get_percent(@exercise,User.current) + @exercise_questions = @exercise.exercise_questions + respond_to do |format| + format.html {render :layout => 'base_courses'} + end + #end + end + + def new + option = { + :exercise_name => "", + :course_id => @course.id, + :exercise_status => 1, + :user_id => User.current.id, + :time => "", + :end_time => "", + :publish_time => "", + :exercise_description => "", + :show_result => 1 + } + @exercise = Exercise.create option + if @exercise + redirect_to edit_exercise_url @exercise.id + end + end + + def create + if params[:exercise] + exercise = Exercise.find(params[:exercise_id]) if params[:exercise_id] + exercise ||= Exercise.new + exercise.exercise_name = params[:exercise][:exercise_name] + exercise.exercise_description = params[:exercise][:exercise_description] + exercise.end_time = Time.at(params[:exercise][:end_time].to_time.to_i + 16*60*60 -1) + exercise.publish_time = params[:exercise][:publish_time] + exercise.user_id = User.current.id + exercise.time = params[:exercise][:time] + exercise.course_id = params[:course_id] + exercise.exercise_status = 1 + if exercise.save + @exercise = exercise + respond_to do |format| + format.js + end + end + end + end + + def edit + respond_to do |format| + format.html{render :layout => 'base_courses'} + end + end + + def update + @exercise.exercise_name = params[:exercise][:exercise_name] + @exercise.exercise_description = params[:exercise][:exercise_description] + @exercise.time = params[:exercise][:time].blank? ? -1 : params[:exercise][:time] + @exercise.end_time = Time.at(params[:exercise][:end_time].to_time.to_i + 16*60*60 -1) + @exercise.publish_time = params[:exercise][:publish_time] + @exercise.show_result = params[:exercise][:show_result].blank? ? 1 : params[:exercise][:show_result] + if @exercise.save + respond_to do |format| + format.js + end + else + render_404 + end + end + + def destroy + @is_teacher = User.current.allowed_to?(:as_teacher,@course) || User.current.admin? + if @exercise && @exercise.destroy + if @is_teacher + exercises = Exercise.where("course_id =?", @course.id) + else + exercises = Exercise.where("course_id =? and exercise_status =?", @course.id, 2) + end + @exercises = paginateHelper exercises,20 #分页 + respond_to do |format| + format.js + end + end + end + + # 统计结果 + def statistics_result + @exercise = Exercise.find(params[:id]) + exercise_questions = @exercise.exercise_questions + @exercise_questions = paginateHelper exercise_questions, 5 + respond_to do |format| + format.html{render :layout => 'base_courses'} + end + end + + # 添加题目 + # question_type 1:单选 2:多选 3:填空题 + def create_exercise_question + question_title = params[:question_title].nil? || params[:question_title].empty? ? l(:label_enter_single_title) : params[:question_title] + option = { + :question_title => question_title, + :question_type => params[:question_type] || 1, + :question_number => params[:question_type] == "1"? @exercise.exercise_questions.where("question_type = 1").count + 1 : + (params[:question_type] == "2" ? (@exercise.exercise_questions.where("question_type = 2").count + 1) : + @exercise.exercise_questions.where("question_type = 3").count + 1), + :question_score => params[:question_score] + } + @exercise_questions = @exercise.exercise_questions.new option + # params[:question_answer] 题目选项 + if params[:question_answer] + for i in 1..params[:question_answer].count + answer = (params[:question_answer].values[i-1].nil? || params[:question_answer].values[i-1].empty?) ? l(:label_new_answer) : params[:question_answer].values[i-1] + question_option = { + :choice_position => i, + :choice_text => answer + } + @exercise_questions.exercise_choices.new question_option + end + end + # 如果是插入的话,那么从插入的这个id以后的question_num都将要+1 + if params[:quest_id] + @is_insert = true + if @exercise_questions.question_type == 1 + ExerciseQuestion.where("question_number>? and question_type=?",params[:quest_num].to_i, 1).update_all(" question_number = question_number + 1") + #@exercise.exercise_questions.where("question_number > #{params[:quest_num].to_i} and question_type == 1").update_all(" question_number = question_number + 1") + elsif @exercise_questions.question_type == 2 + ExerciseQuestion.where("question_number>? and question_type=?",params[:quest_num].to_i, 2).update_all(" question_number = question_number + 1") + else + ExerciseQuestion.where("question_number>? and question_type=?",params[:quest_num].to_i, 3).update_all(" question_number = question_number + 1") + end + # @exercise_question_num = params[:quest_num].to_i + @exercise_questions.question_number = params[:quest_num].to_i + 1 + end + if @exercise_questions.save + # params[:exercise_choice] 标准答案参数 + # 问答题标准答案有三个,单独处理 + if @exercise_questions.question_type == 3 + for i in 1..params[:exercise_choice].count + standart_answer = ExerciseStandardAnswer.new + standart_answer.exercise_question_id = @exercise_questions.id + standart_answer.answer_text = params[:exercise_choice].values[i-1] + standart_answer.save + end + else + standart_answer = ExerciseStandardAnswer.new + standart_answer.exercise_question_id = @exercise_questions.id + if @exercise_questions.question_type == 1 + standart_answer.exercise_choice_id = sigle_selection_standard_answer(params[:exercise_choice]) + else + standart_answer.exercise_choice_id = multiselect_standard_answer(params[:exercise_choice]) + end + standart_answer.save + end + respond_to do |format| + format.js + end + end + + end + + # 修改题目 + # params[:exercise_question] The id of exercise_question + # params[:question_answer] eg:A、B、C选项 + def update_exercise_question + @exercise_question = ExerciseQuestion.find params[:exercise_question] + @exercise_question.question_title = params[:question_title].nil? || params[:question_title].empty? ? l(:label_enter_single_title) : params[:question_title] + @exercise_question.question_score = params[:question_score] + # 处理选项:如果选了某个选项,那么则要删除之前的选项 + if params[:question_answer] + @exercise_question.exercise_choices.each do |answer| + answer.destroy unless params[:question_answer].keys.include? answer.id.to_s + end + for i in 1..params[:question_answer].count + question = @exercise_question.exercise_choices.find_by_id params[:question_answer].keys[i-1] + answer = (params[:question_answer].values[i-1].nil? || params[:question_answer].values[i-1].empty?) ? l(:label_new_answer) : params[:question_answer].values[i-1] + if question + question.choice_position = i + question.choice_text = answer + question.save + else + question_option = { + :choice_position => i, + :choice_text => answer + } + @exercise_question.exercise_choices.new question_option + end + end + end + # 更新标准答案 + if params[:exercise_choice] + if @exercise_question.question_type == 3 + # 删除不合理的选项 + @exercise_question.exercise_standard_answers.each do |answer| + answer.destroy unless params[:exercise_choice].keys.include? answer.id.to_s + end + for i in 1..params[:exercise_choice].count + # 找到对应的标准答案 + question_standart = @exercise_question.exercise_standard_answers.find_by_id params[:exercise_choice].keys[i-1] + # 标准答案值 + answer_standart = (params[:exercise_choice].values[i-1].nil? || params[:exercise_choice].values[i-1].empty?) ? l(:label_new_answer) : params[:exercise_choice].values[i-1] + if question_standart + question_standart.answer_text = answer_standart + question_standart.save + else + standart_answer_option = { + :answer_text => answer_standart + } + @exercise_question.exercise_standard_answers.new standart_answer_option + end + end + else + answer_standart = @exercise_question.exercise_standard_answers.first + answer_standart.exercise_choice_id = @exercise_question.question_type == 1 ? sigle_selection_standard_answer(params[:exercise_choice]) : multiselect_standard_answer(params[:exercise_choice]) + answer_standart.save + end + @exercise_question.save + respond_to do |format| + format.js + end + end + end + + # 删除题目 + def delete_exercise_question + @exercise_question = ExerciseQuestion.find params[:exercise_question] + @exercise = @exercise_question.exercise + + if @exercise_question.question_type == 1 + ExerciseQuestion.where("question_number>? and question_type=?",params[:quest_num].to_i, 1).update_all(" question_number = question_number - 1") + #@exercise.exercise_questions.where("question_number > #{params[:quest_num].to_i} and question_type == 1").update_all(" question_number = question_number + 1") + elsif @exercise_question.question_type == 2 + ExerciseQuestion.where("question_number>? and question_type=?",params[:quest_num].to_i, 2).update_all(" question_number = question_number - 1") + else + ExerciseQuestion.where("question_number>? and question_type=?",params[:quest_num].to_i, 3).update_all(" question_number = question_number - 1") + end + # @exercise_question_num = params[:quest_num].to_i + # @exercise_questions.question_number = params[:quest_num].to_i - 1 + # + # exercise_questions = @exercise.exercise_questions.where("question_number > #{@exercise_question.question_number}") + # exercise_questions.each do |question| + # question.question_number -= 1 + # question.save + # end + if @exercise_question && @exercise_question.destroy + respond_to do |format| + format.js + end + end + end + + # 发布试卷 + def publish_exercise + @is_teacher = User.current.allowed_to?(:as_teacher,@course) + @index = params[:index] + @exercise.exercise_status = 2 + @exercise.publish_time = Time.now + if @exercise.save + @exercise.course.members.each do |m| + @exercise.course_messages << CourseMessage.create(:user_id =>m.user_id, :course_id => @exercise.course.id, :viewed => false,:status=>2) + end + #redirect_to exercise_index_url(:course_id=> @course.id) + respond_to do |format| + format.js + end + end + end + + # 重新发布试卷 + # 重新发布的时候会删除所有的答题 + def republish_exercise + @is_teacher = User.current.allowed_to?(:as_teacher,@course) + @index = params[:index] + @exercise.exercise_questions.each do |exercise_question| + exercise_question.exercise_answers.destroy_all + end + @exercise.course_messages.destroy_all + @exercise.exercise_users.destroy_all + @exercise.exercise_status = 1 + @exercise.publish_time = nil + @exercise.save + respond_to do |format| + format.js + end + end + + def student_exercise_list +=begin + if @exercise.end_time <= Time.now + @course.student.each do |student| + if ExerciseUser.where("user_id = ? && exercise_id = ?",student.student_id,@exercise.id).empty? + ExerciseUser.create(:user_id => student.student_id, :exercise_id => @exercise.id, :start_at => @exercise.end_time, :status => true,:score=>0) + end + + s_score = calculate_student_score(@exercise, student.student) + exercise_user = ExerciseUser.where("user_id =? and exercise_id=?", student.student_id, @exercise.id).first + exercise_user.update_attributes(:score => s_score) + end + end +=end + @is_teacher = User.current.allowed_to?(:as_teacher,@course) || User.current.admin? + @all_exercises = @course.exercises.where("exercise_status > 1").order("created_at desc") + @exercise_count = @exercise.exercise_users.where('score is not NULL').count + if @is_teacher || (!@exercise.exercise_users.where(:user_id => User.current.id).empty? && @exercise.end_time <= Time.now) + @exercise_users_list = @exercise.exercise_users.where('score is not NULL') + @show_all = true; + elsif !@exercise.exercise_users.where(:user_id => User.current.id).empty? && @exercise.end_time > Time.now + @exercise_users_list = @exercise.exercise_users.where("user_id = ? and score is not NULL",User.current.id) + else + @exercise_users_list = [] + end + respond_to do |format| + format.html + end + end + + # 学生提交答卷,选中答案的过程中提交 + def commit_answer + eq = ExerciseQuestion.find(params[:exercise_question_id]) + # 已提交过的且是限时的则不允许答题 + if (has_commit_exercise?(@exercise.id,User.current.id) && (!User.current.admin?) && @exercise.time != -1) || @exercise.end_time < Time.now + render :json => {:text => "failure"} + return + end + if eq.question_type == 1 + # 单选题 + ea = ExerciseAnswer.find_by_exercise_question_id_and_user_id(params[:exercise_question_id],User.current.id) + if ea.nil? + # 尚未答该题,添加答案 + ea = ExerciseAnswer.new + ea.user_id = User.current.id + ea.exercise_question_id = params[:exercise_question_id] + end + #修改该题对应答案 + ea.exercise_choice_id = params[:exercise_choice_id] + if ea.save + # 保存成功返回成功信息及当前以答题百分比 + uncomplete_question = get_uncomplete_question(@exercise, User.current) + if uncomplete_question.count < 1 + complete = 1; + else + complete = 0; + end + @percent = get_percent(@exercise,User.current) + render :json => {:text => "ok" ,:complete => complete,:percent => format("%.2f" ,@percent)} + else + #返回失败信息 + render :json => {:text => "failure"} + end + elsif eq.question_type == 2 + #多选题 + ea = ExerciseAnswer.find_by_exercise_choice_id_and_user_id(params[:exercise_choice_id],User.current.id) + if ea.nil? + #尚未答该题,添加答案 + ea = ExerciseAnswer.new + ea.user_id = User.current.id + ea.exercise_question_id = params[:exercise_question_id] + ea.exercise_choice_id = params[:exercise_choice_id] + if ea.save + uncomplete_question = get_uncomplete_question(@exercise, User.current) + if uncomplete_question.count < 1 + complete = 1; + else + complete = 0; + end + @percent = get_percent(@exercise,User.current) + render :json => {:text => "ok",:complete => complete,:percent => format("%.2f" ,@percent)} + else + render :json => {:text => "failure"} + end + else + #pv不为空,则当前选项之前已被选择,再次点击则是不再选择该项,故删除该答案 + if ea.delete + @percent = get_percent(@exercise, User.current) + render :json => {:text => "false" ,:percent => format("%.2f" , @percent)} + else + render :json => {:text => "failure"} + end + end + elsif eq.question_type == 3 + #单行文本,多行文本题 + ea = ExerciseAnswer.find_by_exercise_question_id_and_user_id(params[:exercise_question_id], User.current.id) + if ea.nil? + # ea为空之前尚未答题,添加答案 + if params[:answer_text].nil? || params[:answer_text].blank? + #用户提交空答案,视作不作答 + @percent = get_percent(@exercise,User.current) + render :json => {:text => "",:percent => format("%.2f", @percent)} + else + #添加答案 + ea = ExerciseAnswer.new + ea.user_id = User.current.id + ea.exercise_question_id = params[:exercise_question_id] + ea.answer_text = params[:answer_text] + if ea.save + uncomplete_question = get_uncomplete_question(@exercise, User.current) + if uncomplete_question.count < 1 + complete = 1; + else + complete = 0; + end + @percent = get_percent(@exercise,User.current) + render :json => {:text => ea.answer_text,:complete => complete,:percent => format("%.2f",@percent)} + else + render :json => {:text => "failure"} + end + end + else + # ea不为空说明用户之前已作答 + if params[:answer_text].nil? || params[:answer_text].blank? + # 用户提交空答案,视为删除答案 + if ea.delete + @percent = get_percent(@exercise,User.current) + render :json => {:text => "",:percent => format("%.2f", @percent)} + else + render :json => {:text => "failure"} + end + else + #用户修改答案 + ea.answer_text = params[:answer_text] + if ea.save + @percent = get_percent(@exercise,User.current) + render :json => {:text => ea.answer_text,:percent => format("%.2f", @percent)} + else + render :json => {:text => "failure"} + end + end + end + + else + render :json => {:text => "failure"} + end + end + + # 提交问卷 + def commit_exercise + # 老师不需要提交 + if User.current.allowed_to?(:as_teacher,@course) + if @exercise.publish_time.nil? + @exercise.update_attributes(:show_result => params[:show_result]) + @exercise.update_attributes(:exercise_status => 2) + @exercise.update_attributes(:publish_time => Time.now) + course = @exercise.course + course.members.each do |m| + @exercise.course_messages << CourseMessage.new(:user_id => m.user_id, :course_id => course.id, :viewed => false, :status => 2) + end + redirect_to exercise_url(@exercise) + return + elsif @exercise.publish_time > Time.now + @exercise.update_attributes(:show_result => params[:show_result]) + redirect_to exercise_url(@exercise) + return + end + @exercise.update_attributes(:show_result => params[:show_result]) + redirect_to exercise_url(@exercise) + # REDO: 提示提交成功 + else + # 更新提交状态 + cur_exercise_user = ExerciseUser.where("user_id =? and exercise_id=?", User.current, @exercise.id).first + cur_exercise_user.update_attributes(:status => 1) + # 答题过程中需要统计完成量 + @uncomplete_question = get_uncomplete_question(@exercise, User.current) + # 获取改学生的考试得分 + @score = calculate_student_score(@exercise, User.current) + # @score = 100 + if @uncomplete_question.count < 1 + # 查看是否有已提交记录 + cur_exercise_user.score = @score + if cur_exercise_user.save + #redirect_to poll_index_path(:polls_group_id => @course.id,:polls_type => 'Course') + @status = 0 #提交成功 + else + @status = 2 #未知错误 + end + else + @status = 1 #有未做得必答题 + end + @save = params[:save].to_i if params[:save] + respond_to do |format| + format.js + end + end + end + + #查看学生的答卷情况 + def show_student_result + @user = User.find params[:user_id] + @can_edit_excercise = false + @exercise_questions = @exercise.exercise_questions + score = calculate_student_score(@exercise, @user) + eu = get_exercise_user(@exercise.id, @user.id) + eu.update_attributes(:score => score) + @exercise_user = ExerciseUser.where("user_id =? and exercise_id=?", @user.id, @exercise.id).first + respond_to do |format| + format.html {render :layout => 'base_courses'} + end + end + + # 计算学生得分 + def calculate_student_score(exercise, user) + score = 0 + score1 = 0 + score2 = 0 + score3 = 0 + exercise_qustions = exercise.exercise_questions + exercise_qustions.each do |question| + answer = get_user_answer(question, user) + standard_answer = get_user_standard_answer(question, user) + unless answer.empty? + # 问答题有多个答案 + if question.question_type == 3 && !standard_answer.empty? + if standard_answer.include?(answer.first.answer_text) + score1 = score1+ question.question_score unless question.question_score.nil? + end + elsif question.question_type == 1 && !standard_answer.nil? + if answer.first.exercise_choice.choice_position == standard_answer.exercise_choice_id + score2 = score2 + question.question_score unless question.question_score.nil? + end + elsif question.question_type == 2 && !standard_answer.nil? + arr = get_mulscore(question, user) + if arr.to_i == standard_answer.exercise_choice_id + score3 = score3 + question.question_score unless question.question_score.nil? + end + # ecs = ExerciseAnswer.where("user_id =? and exercise_question_id =?", user.id, question.id) + # arr = [] + # ecs.each do |ec| + # arr << ec.exercise_choice.choice_position + # end + # arr.sort + # arr = arr.join("") + # if arr.to_i == standard_answer.exercise_choice_id + # score3 = score + question.question_score unless question.question_score.nil? + # end + end + end + end + score = score1 + score2 + score3 + end + + private + + # ExerciseUser记录用户是否已提交问卷有对应的记录则已提交,没有则新建一个 + def get_exercise_user exercise_id,user_id + eu = ExerciseUser.find_by_exercise_id_and_user_id(exercise_id,user_id) + if eu.nil? + eu = ExerciseUser.new + end + eu + end + + # 获取当前学生回答问题的答案 + def get_user_answer(question,user) + # user_answer = ExerciseAnswer.where("user_id=? and exercise_question_id=?", user.id, question.id).first + user_answer = question.exercise_answers.where("#{ExerciseAnswer.table_name}.user_id = #{user.id}") + user_answer + end + + # 获取问题的标准答案 + def get_user_standard_answer(question,user) + if question.question_type == 3 + standard_answer =[] + question.exercise_standard_answers.each do |answer| + standard_answer << answer.answer_text + end + else + standard_answer = question.exercise_standard_answers.first + end + standard_answer + end + # 是否完成了答题 + def get_complete_question(exercise,user) + questions = exercise.exercise_questions + complete_question = [] + questions.each do |question| + answers = get_user_answer(question,user) + if !(answers.nil? || answers.count < 1) + complete_question << question + end + end + complete_question + end + + # 获取答题百分比 + def get_percent exercise,user + complete_count = get_complete_question(exercise,user).count + if exercise.exercise_questions.count == 0 + return 0 + else + return (complete_count.to_f / exercise.exercise_questions.count.to_f)*100 + end + end + + def remove_invalid_exercise(course) + exercises = course.exercises.where("exercise_name=?","") + unless exercises.empty? + exercises.each do |exercise| + if exercise.exercise_questions.empty? + exercise.destroy + end + end + end + end + + def find_exercise_and_course + @exercise = Exercise.find params[:id] + @course = Course.find @exercise.course_id + rescue Exception => e + render_404 + end + + def find_course + @course = Course.find params[:course_id] + rescue Exception => e + render_404 + end end \ No newline at end of file From 9ccca401f6c85664243a66235b083dde700d915d Mon Sep 17 00:00:00 2001 From: cxt Date: Tue, 5 Jan 2016 16:47:55 +0800 Subject: [PATCH 02/18] =?UTF-8?q?=E5=8C=BF=E8=AF=84=E6=97=B6=E4=B9=9F?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E7=B3=BB=E7=BB=9F=E6=B5=8B=E8=AF=95=E6=83=85?= =?UTF-8?q?=E5=86=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../_programing_work_show.html.erb | 86 +++++++++---------- .../student_work/_student_work_list.html.erb | 54 +++++++++--- 2 files changed, 83 insertions(+), 57 deletions(-) diff --git a/app/views/student_work/_programing_work_show.html.erb b/app/views/student_work/_programing_work_show.html.erb index f7ecb0ccf..d98a9fe0f 100644 --- a/app/views/student_work/_programing_work_show.html.erb +++ b/app/views/student_work/_programing_work_show.html.erb @@ -31,52 +31,50 @@
- <% if @is_teacher%> -
  • - - 测试结果: - -
    - <% work.student_work_tests.each_with_index do |test, index| %> -
    -

    - 第<%= work.student_work_tests.count - index%>次测试 -

    - - <%= test.created_at.to_s(:db) %> - -
    +
  • + + 测试结果: + +
    + <% work.student_work_tests.each_with_index do |test, index| %> +
    +

    + 第<%= work.student_work_tests.count - index%>次测试 +

    + + <%= test.created_at.to_s(:db) %> + +
    +
    + <% if test.status.to_i == -2 %> +
    + <%= test.results.first %> +
    + <% else %> +
    +
      + <% test.results.each_with_index do |x, i| %> +
    • + 测试<%=i+1%> + <% if x["status"].to_i != 0 %> + 测试错误! + 您的输出: + <%=x["result"]%> + 正确输出: + <%=x["output"]%> +
      + <% else %> + 测试正确! +
      + <% end %> +
    • + <% end %> +
    - <% if test.status.to_i == -2 %> -
    - <%= test.results.first %> -
    - <% else %> -
    -
      - <% test.results.each_with_index do |x, i| %> -
    • - 测试<%=i+1%> - <% if x["status"].to_i != 0 %> - 测试错误! - 您的输出: - <%=x["result"]%> - 正确输出: - <%=x["output"]%> -
      - <% else %> - 测试正确! -
      - <% end %> -
    • - <% end %> -
    -
    - <% end %> <% end %> -
    -
  • - <% end%> + <% end %> + +
  • <% if @is_teacher || (@homework.homework_detail_manual.comment_status == 2 && work.user != User.current )%> diff --git a/app/views/student_work/_student_work_list.html.erb b/app/views/student_work/_student_work_list.html.erb index 5598092e9..4f891f4c8 100644 --- a/app/views/student_work/_student_work_list.html.erb +++ b/app/views/student_work/_student_work_list.html.erb @@ -40,18 +40,46 @@ <% end%>
    - <% if @homework.homework_type != 3 && student_work.user == User.current && !@is_evaluation %> - <% if @homework.homework_type == 2%> - <%=render :partial => 'programing_work_show', :locals=> {:work => student_work, :score =>student_work_score(student_work,User.current),:student_work_scores => student_work.student_works_scores.order("updated_at desc")} %> - <% else %> - <%=render :partial => 'show' , :locals=> {:work => student_work, :score =>student_work_score(student_work,User.current),:student_work_scores => student_work.student_works_scores.order("updated_at desc")} %> - <% end %> - <% elsif @homework.homework_type == 3 %> - <% pro = @homework.student_work_projects.where(:user_id => User.current.id).first %> - <% if pro && pro.student_work_id == student_work.id && !@is_evaluation %> - <%=render :partial => 'show' , :locals=> {:work => student_work, :score =>student_work_score(student_work,User.current),:student_work_scores => student_work.student_works_scores.order("updated_at desc")} %> - <% end %> - <% end %>
    -<% end%> \ No newline at end of file +<% end%> + \ No newline at end of file From cf125159f24ade513cb50358ea115b0846db4780 Mon Sep 17 00:00:00 2001 From: cxt Date: Wed, 6 Jan 2016 10:36:53 +0800 Subject: [PATCH 03/18] =?UTF-8?q?=E5=85=B3=E8=81=94=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=8F=90=E4=BA=A4=E6=AC=A1=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/organizations/_org_course_homework.html.erb | 2 +- app/views/users/_course_homework.html.erb | 2 +- app/views/users/_user_homework_detail.html.erb | 2 +- public/stylesheets/public.css | 1 + 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/app/views/organizations/_org_course_homework.html.erb b/app/views/organizations/_org_course_homework.html.erb index 22b0b2cb4..e3e2938ec 100644 --- a/app/views/organizations/_org_course_homework.html.erb +++ b/app/views/organizations/_org_course_homework.html.erb @@ -172,7 +172,7 @@ <% time=project.updated_on %> <% time=ForgeActivity.where("project_id=?",project.id).last.updated_at if ForgeActivity.where("project_id=?",project.id).last %>

    <%=(User.find project.user_id).show_name %>(组长)

    -

    <%=time_from_now time %>

    +

    <%=time_from_now time %>  <%=changesets_num project %>提交

    项目名称:<%=project.name %>
    创建者:<%=(User.find project.user_id).show_name %>(组长)
    diff --git a/app/views/users/_course_homework.html.erb b/app/views/users/_course_homework.html.erb index db276d88b..f74cdcf54 100644 --- a/app/views/users/_course_homework.html.erb +++ b/app/views/users/_course_homework.html.erb @@ -173,7 +173,7 @@ <% time=project.updated_on %> <% time=ForgeActivity.where("project_id=?",project.id).last.updated_at if ForgeActivity.where("project_id=?",project.id).last %>

    <%=(User.find project.user_id).show_name %>(组长)

    -

    <%=time_from_now time %>

    +

    <%=time_from_now time %>  <%=changesets_num project %>提交

    项目名称:<%=project.name %>
    创建者:<%=(User.find project.user_id).show_name %>(组长)
    diff --git a/app/views/users/_user_homework_detail.html.erb b/app/views/users/_user_homework_detail.html.erb index 6cb502d77..b39f5a647 100644 --- a/app/views/users/_user_homework_detail.html.erb +++ b/app/views/users/_user_homework_detail.html.erb @@ -175,7 +175,7 @@ <% time=project.updated_on %> <% time=ForgeActivity.where("project_id=?",project.id).last.updated_at if ForgeActivity.where("project_id=?",project.id).last %>

    <%=(User.find project.user_id).show_name %>(组长)

    -

    <%=time_from_now time %>

    +

    <%=time_from_now time %>  <%=changesets_num project %>提交

    项目名称:<%=project.name %>
    创建者:<%=(User.find project.user_id).show_name %>(组长)
    diff --git a/public/stylesheets/public.css b/public/stylesheets/public.css index ed0874751..94e274505 100644 --- a/public/stylesheets/public.css +++ b/public/stylesheets/public.css @@ -69,6 +69,7 @@ h4{ font-size:14px; color:#3b3b3b;} .ml35{margin-left: 35px;} .ml40{ margin-left:40px;} .ml45{ margin-left:45px;} +.ml48{ margin-left:48px;} .ml55{ margin-left:55px;} .ml30{ margin-left:30px;} .ml38{ margin-left:38px;} From e9d986b311b3d140d3fc0c1c2f61797e18844d93 Mon Sep 17 00:00:00 2001 From: Tim Date: Wed, 6 Jan 2016 11:01:00 +0800 Subject: [PATCH 04/18] =?UTF-8?q?=E8=AF=BE=E7=A8=8B=E5=85=B3=E8=81=94?= =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E6=A0=B7=E5=BC=8F=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/users/_course_homework.html.erb | 3 ++- public/stylesheets/new_user.css | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/app/views/users/_course_homework.html.erb b/app/views/users/_course_homework.html.erb index f74cdcf54..f7eae22db 100644 --- a/app/views/users/_course_homework.html.erb +++ b/app/views/users/_course_homework.html.erb @@ -152,6 +152,7 @@
    已关联项目:<%='各小组尚未将小组项目关联到本次作业。' if projects.empty? %>
    +
    <% projects.each do |pro| %> <% project = Project.find pro.project_id %> -
    +
    <% if project.is_public || User.current.member_of?(project) || User.current.admin? %> <%= link_to image_tag(url_to_avatar(project),:width=>"40",:height => "40",:class => "borderRadius"),project_path(project.id,:host=>Setting.host_name),:id=>"project_img_"+project.id.to_s+"_"+activity.id.to_s,:alt =>"项目头像" %> <% else %> diff --git a/public/stylesheets/new_user.css b/public/stylesheets/new_user.css index 346d6b3a7..7c59f673b 100644 --- a/public/stylesheets/new_user.css +++ b/public/stylesheets/new_user.css @@ -121,6 +121,7 @@ a.linkGrey6:hover {color:#ffffff !important;} .w70{ width:70px;} .w80{ width:80px;} .w90{ width:90px;} +.w110{width:110px;} .w210{ width:210px;} .w150{ width:150px;} .w280{ width:280px;} @@ -1384,7 +1385,7 @@ a:hover.blueCir{ background:#3598db; color:#fff;} .proHelp {background:url(/images/course/hwork_icon.png) -5px -124px no-repeat; display:inline-block; width:15px; height:15px; display:inline-block;} .hworkPrName {width:110px; max-width:110px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; float:left; height:18px; line-height:18px; font-size:12px; color:#888888; text-align:center;} .mr150 {margin-right:150px;} -.captainName {max-width:40px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; display: inline-block;} +.captainName {max-width:75px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; display: inline-block;} /* @功能 定义 */ span.at {color:#269ac9;} From 151c08ac5c3418d5d15ee80638a3425d5080fa9b Mon Sep 17 00:00:00 2001 From: cxt Date: Thu, 7 Jan 2016 15:29:25 +0800 Subject: [PATCH 05/18] =?UTF-8?q?=E5=A4=8D=E5=88=B6=E5=AD=A6=E6=9C=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/courses_controller.rb | 101 ++++++++++++++++ app/helpers/application_helper.rb | 7 ++ app/helpers/project_score_helper.rb | 8 -- app/views/courses/_copy_course.html.erb | 142 +++++++++++++++++++++++ app/views/courses/copy_course.js.erb | 10 ++ app/views/layouts/_project_info.html.erb | 2 +- public/stylesheets/public.css | 25 +++- 7 files changed, 285 insertions(+), 10 deletions(-) create mode 100644 app/views/courses/_copy_course.html.erb create mode 100644 app/views/courses/copy_course.js.erb diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb index 57e365aff..2942ee598 100644 --- a/app/controllers/courses_controller.rb +++ b/app/controllers/courses_controller.rb @@ -1,3 +1,4 @@ +#encoding: utf-8 class CoursesController < ApplicationController # layout 'base_courses' include CoursesHelper @@ -436,6 +437,73 @@ class CoursesController < ApplicationController def create cs = CoursesService.new @course = cs.create_course(params,User.current)[:course] + if params[:copy_course] + copy_course = Course.find params[:copy_course].to_i + @course.update_attributes(:open_student => copy_course.open_student, :publish_resource => copy_course.publish_resource) + if params[:checkAll] + attachments = copy_course.attachments + attachments.each do |attachment| + attach_copied_obj = attachment.copy + attach_copied_obj.tag_list.add(attachment.tag_list) # tag关联 + attach_copied_obj.container = @course + attach_copied_obj.created_on = Time.now + attach_copied_obj.author_id = User.current.id + attach_copied_obj.copy_from = attachment.copy_from.nil? ? attachment.id : attachment.copy_from + if attach_copied_obj.attachtype == nil + attach_copied_obj.attachtype = 4 + end + attach_copied_obj.save + update_quotes attach_copied_obj + end + elsif params[:course_attachment_type] + copy_attachments = [] + params[:course_attachment_type].each do |type| + case type + when "1" + tag_name = l(:label_courseware) + when "2" + tag_name = l(:label_software) + when "3" + tag_name = l(:label_media) + when "4" + tag_name = l(:label_code) + when "6" + tag_name = "论文" + else + tag_name = "" + end + if tag_name == "" + tag_attachments = copy_course.attachments.select{|attachment| + !attachment.tag_list.include?('课件') && + !attachment.tag_list.include?('软件') && + !attachment.tag_list.include?('媒体') && + !attachment.tag_list.include?('代码') && + !attachment.tag_list.include?('论文') } + else + tag_attachments = copy_course.attachments.select{|attachment| attachment.tag_list.include?(tag_name)} + end + tag_attachments.each do |attach| + next if copy_attachments.include?(attach) + copy_attachments << attach + end + end + unless copy_attachments.blank? + copy_attachments.each do |c_attach| + attach_copied_obj = c_attach.copy + attach_copied_obj.tag_list.add(c_attach.tag_list) # tag关联 + attach_copied_obj.container = @course + attach_copied_obj.created_on = Time.now + attach_copied_obj.author_id = User.current.id + attach_copied_obj.copy_from = c_attach.copy_from.nil? ? c_attach.id : c_attach.copy_from + if attach_copied_obj.attachtype == nil + attach_copied_obj.attachtype = 4 + end + attach_copied_obj.save + update_quotes attach_copied_obj + end + end + end + end if @course respond_to do |format| flash[:notice] = l(:notice_successful_create) @@ -751,6 +819,11 @@ class CoursesController < ApplicationController #param id:已有课程ID def copy_course if @course + @new_course = Course.new + respond_to do |format| + format.js + end +=begin @new_course = Course.new @course.attributes @new_course.tea_id = User.current.id @new_course.created_at = DateTime.now @@ -769,6 +842,7 @@ class CoursesController < ApplicationController @new_course.course_infos << course redirect_to settings_course_url @new_course end +=end else render_404 end @@ -829,6 +903,33 @@ class CoursesController < ApplicationController end private + def update_quotes attachment + if attachment.copy_from + attachments = Attachment.find_by_sql("select * from attachments where copy_from = #{attachment.copy_from} or id = #{attachment.copy_from}") + else + attachments = Attachment.find_by_sql("select * from attachments where copy_from = #{attachment.id} or id = #{attachment.copy_from}") + end + attachment.quotes = get_qute_number attachment + attachment.save + attachments.each do |att| + att.quotes = attachment.quotes + att.save + end + end + + def get_qute_number attachment + if attachment.copy_from + result = Attachment.find_by_sql("select count(*) as number from attachments where copy_from = #{attachment.copy_from}") + else + result = Attachment.find_by_sql("select count(*) as number from attachments where copy_from = #{attachment.id}") + end + if result.nil? || result.count <= 0 + return 0 + else + return result[0].number + end + end + def allow_join course if course_endTime_timeout? course respond_to do |format| diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 55a017019..98b72f67e 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -2757,4 +2757,11 @@ int main(int argc, char** argv){ ss.html_safe end + #代码提交数量 + def changesets_num project + g = Gitlab.client + project.gpid.nil? ? 0 : g.commits_total_count(project.gpid).count + # # commits_total_count(project.gpid) + # project.changesets.count + end end diff --git a/app/helpers/project_score_helper.rb b/app/helpers/project_score_helper.rb index d73e1592e..133212718 100644 --- a/app/helpers/project_score_helper.rb +++ b/app/helpers/project_score_helper.rb @@ -20,14 +20,6 @@ module ProjectScoreHelper project.documents.count end - #代码提交数量 - def changesets_num project - g = Gitlab.client - project.gpid.nil? ? 0 : g.commits_total_count(project.gpid).count - # # commits_total_count(project.gpid) - # project.changesets.count - end - #讨论区帖子数量 def board_message_num project board_message_count = 0 diff --git a/app/views/courses/_copy_course.html.erb b/app/views/courses/_copy_course.html.erb new file mode 100644 index 000000000..98d20ddfb --- /dev/null +++ b/app/views/courses/_copy_course.html.erb @@ -0,0 +1,142 @@ + + +
    +
    信息配置
    +
    +
      + <%=labelled_form_for @new_course do |f| %> + +
    • 上传图片 上传图片 + +
      +
    • +
    • + + + + + +
      +
    • + + + +
    • +
      +
    • + + <%= select_tag :time,options_for_select(course_time_option(@new_course.time),@new_course.time), {} %> + <%= select_tag :term,options_for_select(course_term_option,@new_course.term || cur_course_term),{} %> + +
    • +
      +
    • + + <%= select_tag :end_time,options_for_select(course_time_option(@new_course.end_time),@new_course.end_time), {} %> + <%= select_tag :end_term,options_for_select(course_term_option,@new_course.end_term || cur_course_term),{} %> + 仅针对跨越多个学期的班级,否则不用修改。 +
    • +
      +
    • + + + + + +
      + 学生或其他成员申请加入课程时候需要使用该口令,该口令可以由老师在课堂上公布。 +
    • +
    • + + +
      +
    • +
    • + + id="course_is_public" name="course[is_public]" type="checkbox" value="<%=@course.is_public.to_i %>"> + (选中后课外用户可见该课程,否则仅对课内成员可见) +
      +
    • +
    • + +
        +
      • + +
      • +
      +
        +
      • + +
      • +
      • + +
      • +
      • + +
      • +
      • + +
      • +
      • + +
      • +
      • + +
      • +
        + 您可以通过选择资源类型,将对应资源复制到新课程中。 +
      +
      +
    • + <% end %> +
    +
    + 完成 + 取消 +
    +
    diff --git a/app/views/courses/copy_course.js.erb b/app/views/courses/copy_course.js.erb new file mode 100644 index 000000000..0c5b62266 --- /dev/null +++ b/app/views/courses/copy_course.js.erb @@ -0,0 +1,10 @@ +$('#ajax-modal').html('<%= escape_javascript(render :partial => 'copy_course') %>'); +showModal('ajax-modal', '730px'); +$('#ajax-modal').css('height','530px').css('width','730px'); +$('#ajax-modal').siblings().remove(); +$('#ajax-modal').before("
    " + +"
    "); +$('#ajax-modal').parent().css("top","30%").css("left","").css("position","fixed"); +$('#ajax-modal').parent().addClass("popbox").addClass("referenceResourcesPopup"); + + diff --git a/app/views/layouts/_project_info.html.erb b/app/views/layouts/_project_info.html.erb index b4a2996d0..51758ea4c 100644 --- a/app/views/layouts/_project_info.html.erb +++ b/app/views/layouts/_project_info.html.erb @@ -84,7 +84,7 @@ ID:<%= @course.id%>
    • <%= link_to "课程配置", {:controller => 'courses', :action => 'settings', :id => @course}, :class => "postOptionLink" %>
    • <%= link_to @course.is_public == 0 ? "设为公开" : "设为私有", {:controller => 'courses', :action => 'private_or_public', :id => @course},:remote=>true,:confirm=>"您确定要设置为"+(@course.is_public == 0 ? "公开" : "私有")+"吗", :class => "postOptionLink" %>
    • - +
    • <%= link_to "复制学期", copy_course_course_path(@course.id),:remote=>true, :class => "postOptionLink" %>
  • diff --git a/public/stylesheets/public.css b/public/stylesheets/public.css index 94e274505..f5125090f 100644 --- a/public/stylesheets/public.css +++ b/public/stylesheets/public.css @@ -962,4 +962,27 @@ span.at a{color:#269ac9;text-decoration: none;} /*文本描述展开高度*/ .maxh360 {max-height: 810px;} -.lh18 { line-height: 18px;} \ No newline at end of file +.lh18 { line-height: 18px;} + +/*151228样式更新*/ +.menuSetting {background:url(../images/hwork_icon.png) -5px -132px no-repeat; display:inline-block; width:20px; height:20px;} +.boxShadow {box-shadow:0px 2px 8px rgba(146, 153, 169, 0.5);} +a.greyBtn{ display:inline-block; background:#f2f3f3; padding:0px 5px; height:20px; border:1px solid #d3d3d3; color:#888888; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} +a:hover.greyBtn{border:1px solid #888888; } +a.blueBtn{ display:inline-block; background:#269ac9; padding:0px 5px; height:20px; border:1px solid #269ac9; color:#ffffff; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} +a.blueBtn:hover {background-color:#298fbd;} +a.cancelBtn{ display:inline-block; background:#c1c1c1; padding:0px 5px; height:20px; border:1px solid #d3d3d3; color:#ffffff; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} +a.cancelBtn:hover {background:#888888;} +a.userFollow{ display:inline-block; width:55px; height:20px; border:1px solid #d3d3d3; color:#888888; background:#f2f3f3 url(../images/homepage_icon2.png) -9px -6px no-repeat; padding-left:25px; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} +a:hover.userFollow{border:1px solid #888888; } +a.userCancel{ display:inline-block; width:55px; height:20px; border:1px solid #d3d3d3; color:#888888; background:#f2f3f3 url(../images/homepage_icon2.png) -177px -6px no-repeat; padding-left:25px; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} +a:hover.userCancel{border:1px solid #888888; } +.pAbsolute {position:absolute; z-index:999;} +.userAvatarWrap {width:50px; height:50px; position:relative; border:1px solid #cbcbcb; padding: 2px;} +.userAvatarWrap:hover {border:1px solid #269ac9;} +.mr27 {margin-right:27px;} +.userCard {width:208px; border:1px solid #dddddd; background-color:#ffffff; margin-top:10px; padding:15px; top:-176px; left:-95px; position:absolute; z-index:999; display:none;} +.userCard font {display:block; border-width:8px; position:absolute; bottom:-16px; left:110px; border-style:solid dashed dashed dashed; border-color:#FFF transparent transparent transparent; font-size:0; line-height:0;} +.userCard em {display:block; border-width:8px; position:absolute; bottom:-17px; left:110px; border-style:solid dashed dashed dashed; border-color:#eaeaea transparent transparent transparent; font-size:0; line-height:0;} +.userCardM {width:201px; height:20px; border:1px solid #dddddd; resize:none;} +.resourceCopy {padding:0px; margin:0px; width:12px; height:12px; display:inline-block;} \ No newline at end of file From 1263e4cac0a315448e6ad8769f3c00e06d4a86da Mon Sep 17 00:00:00 2001 From: cxt Date: Thu, 7 Jan 2016 15:33:21 +0800 Subject: [PATCH 06/18] =?UTF-8?q?=E5=85=B3=E8=81=94=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E7=9A=84=E6=A0=B7=E5=BC=8F=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/organizations/_org_course_homework.html.erb | 3 ++- app/views/users/_user_homework_detail.html.erb | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/app/views/organizations/_org_course_homework.html.erb b/app/views/organizations/_org_course_homework.html.erb index e3e2938ec..6b6308a21 100644 --- a/app/views/organizations/_org_course_homework.html.erb +++ b/app/views/organizations/_org_course_homework.html.erb @@ -151,6 +151,7 @@
    已关联项目:<%='各小组尚未将小组项目关联到本次作业。' if projects.empty? %>
    +
    <% projects.each do |pro| %> <% project = Project.find pro.project_id %> -
    +
    <% if project.is_public || User.current.member_of?(project) || User.current.admin? %> <%= link_to image_tag(url_to_avatar(project),:width=>"40",:height => "40",:class => "borderRadius"),project_path(project.id,:host=>Setting.host_name),:id=>"project_img_"+project.id.to_s+"_"+activity.id.to_s,:alt =>"项目头像" %> <% else %> diff --git a/app/views/users/_user_homework_detail.html.erb b/app/views/users/_user_homework_detail.html.erb index b39f5a647..d14e5517b 100644 --- a/app/views/users/_user_homework_detail.html.erb +++ b/app/views/users/_user_homework_detail.html.erb @@ -155,6 +155,7 @@
    已关联项目:<%='各小组尚未将小组项目关联到本次作业。' if projects.empty? %>
    +
    <% projects.each do |pro| %> <% project = Project.find pro.project_id %> -
    +
    <% if project.is_public || User.current.member_of?(project) || User.current.admin? %> <%= link_to image_tag(url_to_avatar(project),:width=>"40",:height => "40",:class => "borderRadius"),project_path(project.id,:host=>Setting.host_name),:id=>"project_img_"+project.id.to_s+"_"+homework_common.id.to_s,:alt =>"项目头像" %> <% else %> From 5b234580a8584ad113a28cea4c036b7226c9511a Mon Sep 17 00:00:00 2001 From: cxt Date: Thu, 7 Jan 2016 15:59:51 +0800 Subject: [PATCH 07/18] =?UTF-8?q?=E5=AD=A6=E7=94=9F=E4=BD=9C=E5=93=81?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=89=93=E5=BC=80=E6=8A=A5500?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../student_work/_student_work_list.html.erb | 62 ++++++++++--------- 1 file changed, 32 insertions(+), 30 deletions(-) diff --git a/app/views/student_work/_student_work_list.html.erb b/app/views/student_work/_student_work_list.html.erb index 4f891f4c8..371334be1 100644 --- a/app/views/student_work/_student_work_list.html.erb +++ b/app/views/student_work/_student_work_list.html.erb @@ -45,38 +45,40 @@ <% end%> - -
    -
    信息配置
    -
    -
      - <%=labelled_form_for @new_course do |f| %> - -
    • 上传图片 上传图片 - -
      -
    • -
    • - - - - - -
      -
    • - - - -
    • -
      -
    • - - <%= select_tag :time,options_for_select(course_time_option(@new_course.time),@new_course.time), {} %> - <%= select_tag :term,options_for_select(course_term_option,@new_course.term || cur_course_term),{} %> - -
    • -
      -
    • - - <%= select_tag :end_time,options_for_select(course_time_option(@new_course.end_time),@new_course.end_time), {} %> - <%= select_tag :end_term,options_for_select(course_term_option,@new_course.end_term || cur_course_term),{} %> - 仅针对跨越多个学期的班级,否则不用修改。 -
    • -
      -
    • - - - - - -
      - 学生或其他成员申请加入课程时候需要使用该口令,该口令可以由老师在课堂上公布。 -
    • -
    • - - -
      -
    • -
    • - - id="course_is_public" name="course[is_public]" type="checkbox" value="<%=@course.is_public.to_i %>"> - (选中后课外用户可见该课程,否则仅对课内成员可见) -
      -
    • -
    • - -
        -
      • - -
      • -
      -
        -
      • - -
      • -
      • - -
      • -
      • - -
      • -
      • - -
      • -
      • - -
      • -
      • - -
      • -
        - 您可以通过选择资源类型,将对应资源复制到新课程中。 -
      -
      -
    • - <% end %> -
    -
    - 完成 - 取消 -
    -
    + + +
    +
    信息配置
    +
    +
      + <%=labelled_form_for @new_course do |f| %> + +
    • 上传图片 上传图片 + +
      +
    • +
    • + + + + + +
      +
    • + + + +
    • +
      +
    • + + <%= select_tag :time,options_for_select(course_time_option(@new_course.time),@new_course.time), {} %> + <%= select_tag :term,options_for_select(course_term_option,@new_course.term || cur_course_term),{} %> + +
    • +
      +
    • + + <%= select_tag :end_time,options_for_select(course_time_option(@new_course.end_time),@new_course.end_time), {} %> + <%= select_tag :end_term,options_for_select(course_term_option,@new_course.end_term || cur_course_term),{} %> + 仅针对跨越多个学期的班级,否则不用修改。 +
    • +
      +
    • + + + + + +
      + 学生或其他成员申请加入课程时候需要使用该口令,该口令可以由老师在课堂上公布。 +
    • +
    • + + +
      +
    • +
    • + + id="course_is_public" name="course[is_public]" type="checkbox" value="<%=@course.is_public.to_i %>"> + (选中后课外用户可见该课程,否则仅对课内成员可见) +
      +
    • +
    • + +
        +
      • + +
      • +
      +
        +
      • + +
      • +
      • + +
      • +
      • + +
      • +
      • + +
      • +
      • + +
      • +
      • + +
      • +
        +
      + 您可以通过选择资源类型,将对应资源复制到新课程中。 +
      +
    • + <% end %> +
    +
    + 完成 + 取消 +
    +
    diff --git a/app/views/courses/copy_course.js.erb b/app/views/courses/copy_course.js.erb index 0c5b62266..e31e423ba 100644 --- a/app/views/courses/copy_course.js.erb +++ b/app/views/courses/copy_course.js.erb @@ -1,10 +1,10 @@ -$('#ajax-modal').html('<%= escape_javascript(render :partial => 'copy_course') %>'); -showModal('ajax-modal', '730px'); -$('#ajax-modal').css('height','530px').css('width','730px'); -$('#ajax-modal').siblings().remove(); -$('#ajax-modal').before("
    " + -"
    "); -$('#ajax-modal').parent().css("top","30%").css("left","").css("position","fixed"); -$('#ajax-modal').parent().addClass("popbox").addClass("referenceResourcesPopup"); - - +$('#ajax-modal').html('<%= escape_javascript(render :partial => 'copy_course') %>'); +showModal('ajax-modal', '730px'); +$('#ajax-modal').css('height','530px').css('width','730px'); +$('#ajax-modal').siblings().remove(); +$('#ajax-modal').before("
    " + +"
    "); +$('#ajax-modal').parent().css("top","30%").css("left","").css("position","fixed"); +$('#ajax-modal').parent().addClass("popbox").addClass("copyCoursePopup"); + + diff --git a/public/stylesheets/public.css b/public/stylesheets/public.css index f5125090f..a25d462b6 100644 --- a/public/stylesheets/public.css +++ b/public/stylesheets/public.css @@ -1,988 +1,997 @@ -/* 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:#000;} -a:hover {text-decoration: none; } -textarea {resize: none;} -.pInline {margin:0px; padding:0px; display:inline-block;} - -/*常用*/ -select,input,textarea{ border:1px solid #dddddd; 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; margin-bottom: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;} -.min_search{ width:150px; height:20px; border:1px solid #d0d0d0; color:#666; background:url(../images/new_project/public_icon.png) 135px -193px no-repeat;} -a.btn_message_free{ background:#ff5722; display:block; text-align:center; color:#fff; padding:3px 0; width:80px; margin-bottom:10px;} -.db {display:block;} -/* 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;} -.f20{font-size:20px;} -.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;} -.hidden{overflow:hidden; white-space: nowrap; text-overflow:ellipsis;} -.flow_hidden{ width:300px;overflow:hidden; white-space: nowrap; text-overflow:ellipsis;} -.white_space{white-space:nowrap;} -.pr {position:relative;} - -/* 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;} -.ml16{ margin-left: 16px;} -.ml20{ margin-left:20px;} -.ml35{margin-left: 35px;} -.ml40{ margin-left:40px;} -.ml45{ margin-left:45px;} -.ml48{ margin-left:48px;} -.ml55{ margin-left:55px;} -.ml30{ margin-left:30px;} -.ml38{ margin-left:38px;} -.ml60{ margin-left:60px;} -.ml160 {margin-left:160px;} -.ml80{ margin-left:80px;} -.ml90{ margin-left:90px;} -.ml100{ margin-left:100px;} -.ml110{ margin-left:110px;} -.ml125 { margin-left:125px;} -.ml320{ margin-left:320px;} -.ml150 { margin-left:150px;} -.mr-5 {margin-right:-5px;} -.mr5{ margin-right:5px;} -.mr45 {margin-right:45px;} -.mr55{ margin-right:55px;} -.mr10{ margin-right:10px;} -.mr15 {margin-right:15px;} -.mr18 {margin-right:15px;} -.mr20{ margin-right:20px;} -.mr25 {margin-right:25px;} -.mr30{ margin-right:30px;} -.mr40{ margin-right:40px;} -.mr45{margin-right: 45px;} -.mr50{margin-right: 50px;} -.mr55{margin-right: 55px;} -.mr60 {margin-right:60px;} -.mr70{margin-right: 70px;} -.mw15{margin:0 15px;} -.mr90 {margin-right:90px;} -.mw20{ margin: 0 20px;} -.mt1{margin-top: 1px;} -.mt-4 {margin-top:-4px;} -.mt0 {margin-top:0px !important;} -.mt3{ margin-top:3px;} -.mt5{ margin-top:5px;} -.mt8{ margin-top:8px;} -.mt10{ margin-top:10px !important;} -.mt30{ margin-top: 30px;} -.mt40{ margin-top: 40px;} -.mt12 { margin-top:12px !important;} -.mt15 {margin-top:15px;} -.mt19 {margin-top:19px !important;} -.ml70{margin-left: 70px;} -.mb0 {margin-bottom: 0px !important;} -.mb4{ margin-bottom:4px;} -.mb5{ margin-bottom:5px;} -.mb8 {margin-bottom:8px;} -.mb10{ margin-bottom:10px !important;} -.mb20{ margin-bottom:20px;} -.pl10 {padding-left:10px;} -.pl15{ padding-left:15px;} -.pl5{ padding-left:5px;} -.pt5{ padding-top:5px;} -.pt10{ padding-top:10px;} -.pb5{ padding-bottom: 5px;} -.w20{ width:20px;} -.w40{width: 40px;} -.w45{ width: 45px;} -.w50 {width:50px;} -.w60{ width:60px;} -.w70{ width:70px;} -.w90{ width:90px;} -.w100{width: 100px;} -.w210{ width:210px;} -.w150{ width:150px;} -.w230{width:230px !important;} -.w235{ width:235px !important;} -.w280{ width:280px;} -.w265{ width: 265px;} -.w270{ width: 270px;} -.w350 {width:350px;} -.w362 {width:362px;} -.w430{ width:470px;} -.w455{width:455px !important;} -.w465{width:465px !important;} -.w520{ width:520px;} -.w543{ width:543px;} -.w557{ width:557px;} -.w576{ width:576px;} -.w583{ width:583px;} -.w350{ width:350px;} -.w610{ width:610px;} -.w60{ width:600px !important;} -.w606{ width:606px } -.h20{height: 20px;} -.h22{ height:22px;} -.h26{ height:26px;} -.h50{ height:50px;} -.h70{ height:70px;} -.h150{ height:150px;} -.p10 {padding-left:10px; padding-right:10px;} - -/* 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_eblue{color: #3784D3} -a.c_setting_blue{color: #0781B4} -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_grey{color:#999;} -.c_dblue{ color:#09658c;} -.b_blue{background:#64bdd9;} -.b_green{background:#28be6c;} -.b_w{ background:#fff;} - -/*add by Tim*/ -.fontGrey {color:#cecece;} -.fontGrey2 {color:#888888;} -.fontGrey3 {color:#484848;} -.fontBlue {color:#3498db;} -a.underline {text-decoration:underline;} -a.fontBlue {color:#297fb8;} -a.fontGrey {color:#cecece;} -a.fontGrey2 {color:#888888;} -a.linkOrange {color:#ff7143;} -a.linkBlue {color:#269ac9;} -a.linkBlue:hover {color:#297fb8;} -a.linkBlue2 {color:#3498db;} -a.linkBlue2:hover {color:#297fb8;} -a.buttonBlue {background-color:#269ac9;} -a.buttonBlue:hover {background-color:#297fb8;} -a.linkGrey {color:#484848;} -a.linkGrey:hover {color:#269ac9;} -a.linkGrey2 {color:#888888;} -a.linkGrey2:hover {color:#484848;} -a.linkGrey3 {color:#484848;} -a.linkGrey3:hover {color:#000000;} -a.linkGrey4 {color:#484848;} -a.linkGrey4:hover {color:#297fb8;} -a.linkGrey5 {color:#484848;} -a.linkGrey5:hover {color:#3498db;} -a.linkGrey6 {color:#484848 !important;} -a.linkGrey6:hover {color:#ffffff !important;} -a.linkGrey7 {color:#888888;} -a.linkGrey7:hover {color:#269ac9;} -a.bBlue {background-color:#3498db;} -a.bBlue:hover {background-color:#297fb8;} -a.submit_btn {border:1px solid #3498db; padding:3px 10px; border-radius:3px; color:#3498db;} -a.submit_btn:hover {background-color:#3498db; color:#ffffff;} - -/* 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 8px; text-align:center;} -a.green_btn{background:#28be6c;color:#fff;font-size:14px; font-weight:normal; padding:2px 8px; text-align:center;cursor: pointer;} -a:hover.green_btn{ background:#14ad5a;} -.blue_btn{ background:#64bdd9; color:#fff; font-size:14px; font-weight:normal;padding:2px 8px; text-align:center;} -a.blue_btn{background:#64bdd9;color:#fff;font-size:14px; font-weight:normal; padding:2px 8px; text-align:center;cursor: pointer;} -.red_btn{ background:red; color:#fff; font-size:14px; font-weight:normal;padding:2px 8px; text-align:center;} -a.red_btn{background:red; color:#fff;font-size:14px; font-weight:normal; padding:2px 8px; text-align:center;cursor: pointer;} -a.orange_btn_homework{background:#d63502;color:#fff;font-size:14px; font-weight:normal; padding:2px 10px; text-align:center;} -a:hover.blue_btn{ background:#329cbd;cursor: pointer;} -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 #1abc9c; 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:40px 0 0 15px; display:block; padding:2px 5px; border:1px solid #eaeaea;} -.upbtn:hover{color:#64bdd9;cursor: pointer;} -.upload_file{margin-left: -60px;margin-top: 40px;width: 50px;position: absolute;height: 24px;opacity: 0;cursor: pointer} -.undis{display:none;} -.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;white-space:nowrap;} -.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;white-space:nowrap;} -.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;white-space:nowrap;} -.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;white-space:nowrap;} -.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;white-space:nowrap;} -/* commonpic */ -.pic_date{ display:block; background:url(../images/new_project/public_icon.png) -31px 0 no-repeat; width:16px; height:15px; float:left;} -.pic_add{ display:block; background:url(../images/new_project/public_icon.png) -31px -273px no-repeat; width:16px; height:15px; float:left;} -.pic_sch{ display:block; background:url(../images/new_project/public_icon.png) -31px -195px no-repeat; width:16px; height:15px; float:left;} -.pic_mes{ display:block; background:url(../images/new_project/public_icon.png) 0px -376px no-repeat; width:20px; height:15px; padding-left:18px;} -.pic_img{ display:block; background:url(../images/new_project/public_icon.png) -31px -419px no-repeat; width:20px; height:15px; } -.pic_del{ display:block; background:url(../images/new_project/public_icon.png) 0px -235px no-repeat; width:20px; height:15px; } -.pic_del:hover{ background:url(../images/new_project/public_icon.png) -32px -235px no-repeat; } -.pic_stats{display:block; background:url(../images/new_project/public_icon.png) 0px -548px no-repeat; width:20px; height:15px;} -.pic_files{display:block; background:url(../images/new_project/public_icon.png) 0px -578px no-repeat; width:20px; height:15px;} -.pic_text{display:block; background:url(../images/new_project/public_icon.png) 0px -609px no-repeat; width:20px; height:18px;} -.pic_text02{display:block; background:url(../images/new_project/public_icon.png) 0px -642px no-repeat; width:20px; height:19px;} -.pic_edit{display:block; background:url(../images/new_project/public_icon.png) 0px -32px no-repeat; width:20px; height:15px;} -.pic_edit:hover{display:block; background:url(../images/new_project/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; position: relative;} -.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;} -#userInfo {float:right; display:inline-block; width:130px; padding-top:5px;} -.userInfoRow2 {margin-top:-5px;} -.myPractice {display:inline-block;} -a.parent {background: url(../images/arrowList.png) -30px 3px no-repeat; width:95px; padding-right:50px;} -a.parent:hover {background: url(../images/arrowList.png) -30px -14px no-repeat; width:95px; padding-right:50px; color:#fe7d68;} -a.linkToOrange:hover {color:#fe7d68;} -#userInfo ul li {positon: relative;} -#userInfo ul li ul {display:none;} -#userInfo ul li:hover ul {display:block; position:absolute;} -#userInfo ul li:hover ul li ul {display:none;} -#userInfo ul li:hover ul li:hover ul {display:block; position:absolute; left:110px; top:6px; width:148px; border:1px solid #15bccf; background-color:#ffffff; padding:5px 0px;} -#userInfo ul li:hover ul li:hover ul li {max-width:148px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; display:block; padding: 0 10px; line-height:1.5; color:#15bccf;} -#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 { right: 5px;}*/ -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.user_name { width:170px; text-align:right; margin:0; } -.pic_triangle{background: url(../images/item.png) -90px -48px no-repeat; float:right; display:block; width:10px; height:10px; margin-top:12px; margin-left:7px;} -.pic_triangle:hover{background: url(../images/item.png) -90px -78px no-repeat; } -div#menu ul ul a.parent {background: url(../images/item.png) -20px 6px no-repeat;width:60px;} -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; 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 90px !important; width:200px; } -div#menu ul ul ul li a{ width:185px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis;color:#15bccf;} - -/*myctrip*/ -.userImage{position:absolute; right:140px; top:5px; width:30px;height:30px; background: url(../images/item.png) 2px 4px no-repeat; line-height:1.4;} -a.topnav_login_a{color:#fff; display:inline-block;} -a.topnav_login_a:hover {color:#a1ebff;} -a.topnav_login_mes{color:#fff; width:10px;height:20px; padding-left:15px; background: url(../images/item.png) -84px -145px no-repeat; display:inline-block; vertical-align:top;} -a.topnav_login_mes:hover {color:#a1ebff;} -a.topnav_login_box{ color:#fff; font-size:14px; font-weight:bold; width:90px; display:inline-block;} -.menuArrow {background:url(../images/item.png) -20px -40px no-repeat;} -li.menuArrow:hover {background:url(../images/item.png) -20px -70px no-repeat;} -a.topnav_login_box:hover {color:#a1ebff;} -.navRow1 {margin:0; padding:0;} -.navRow2 {margin:0; padding:0;} -.topnav_login_list{ border:1px solid #269ac9; background:#fff; padding-left:10px; padding-bottom:10px; padding-top:8px; width:60px; left:-7px; position:absolute; z-index:9999; line-height:2;} -.topnav_login_list a{color:#15bccf;} -.topnav_login_list li{ } - -/*主类容*/ -#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:670px; margin-left:10px; background:#fff; padding:10px; margin-bottom:10px;} - -/*发送资源弹窗*/ -/*.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;}*/ -/*发送资源弹窗*/ -/*.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 #269ac9 !important; 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:#269ac9; line-height:16px; padding-top:20px; width:110px; display:inline-block; font-weight: bold;} -.resourcesSendTo {float:left; height:20px; margin-top:15px;} -.boxContainer {height:33px; line-height:33px; position:relative} -.resourcesSendType {border:1px solid #e6e6e6; width:60px; height:24px; outline:none; font-size:14px; color:#888888;} -.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/homepage_icon.png) 5px -394px no-repeat; display:inline-block; float:left; cursor: pointer;} -.searchIconPopup:hover {background:url(../images/homepage_icon.png) 5px -420px no-repeat;} -.courseSend {width:390px; height:15px; line-height:15px; margin-bottom:10px;display:block;white-space:nowrap;} -.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:#269ac9; margin-right:25px; float:left;cursor: pointer;} -.courseSendSubmit:hover {background-color:#297fb8;} -.courseSendCancel {width:50px; height:25px; line-height:25px; text-align:center; vertical-align:middle; background-color:#c1c1c1; float:left} -.courseSendCancel:hover {background-color:#717171;} -a.sendSourceText {font-size:14px; color:#ffffff;} -input.sendSourceText {font-size:14px;color:#ffffff;background-color:#269ac9;cursor: pointer; outline: none; border: none; width: 50px; height: 25px;} -input.sendSourceText:hover {background-color:#297fb8;} -/*input.sendSourceText:hover {font-size:14px; color:#ffffff;}*/ -.resourcesSendTo {float:left; height:20px; margin-top:15px;} -.resourcesSendType {border:1px solid #e6e6e6; width:60px; height:24px; outline:none; font-size:14px; color:#888888;} -.courseReferContainer {float:left; max-height:120px;margin-right:16px;margin-bottom:10px; overflow:auto; overflow-x:hidden;} -.popbox{/* width:300px; *//* height:100px; */position:fixed !important;/* z-index:100; */left:50%;top:50%;margin:-100px 0 0 -150px; /* background:#fff; */ -moz-border-radius:5px; /* -webkit-border-radius:5px; */ /* border-radius:5px; */ /* box-shadow:0px 0px 8px #194a81; */ /* overflow:auto; */} - -/*上传资源弹窗*/ -.resourceUploadPopup {width:400px; height:auto; border:3px solid #269ac9; 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:#269ac9; line-height:16px; padding-top:15px; 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:#269ac9; border-radius:3px; float:left; margin-right:12px;} -.uploadBox:hover {background-color:#297fb8;} -a.uploadIcon {background:url(../images/resource_icon_list.png) 8px -60px no-repeat; width:100px; height:33px; display:block;} -.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;} - -/*评分设置弹窗*/ -.markPopup {width:290px; height:auto; padding:5px 0px 15px 15px; background-color:#ffffff; z-index:1000;} -.markInput {margin-bottom:10px; outline:none; border:1px solid #e6e6e6; height:30px; width:140px; color:#3d3c3c;} -.markPercentage {margin:10px 0; border:1px solid #e6e6e6; width:70px; height:30px; outline:none; font-size:12px; color:#3d3c3c;} - - -/*新个人主页框架css*/ -.navContainer {width:100%; margin:0 auto; background-color:#269ac9;} -.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:#269ac9; margin:0 auto;} -.navHomepageLogo {width:60px; height:54px; line-height:54px; vertical-align:middle; margin-left:2px; margin-right:30px;} -.navHomepageMenu {margin-right:20px; display:inline-block;height:54px; line-height:54px; vertical-align:middle;} -.navHomepageMenu:hover {background-color:#297fb8;} -.navHomepageSearchBoxcontainer {margin-top:11px; } -.navHomepageSearchBox {width:380px; border:none; outline:none; height:32px; 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; -moz-transition :all 0s linear 0s; -webkit-transition :all 0s linear 0s; -o-transition:all 0s linear 0s; transition:all 0s linear 0s;} -a.homepageSearchIcon:hover {background:url(../images/nav_icon.png) -49px 3px no-repeat; -moz-transition :all 0s linear 0s; -webkit-transition :all 0s linear 0s; -o-transition:all 0s linear 0s; transition:all 0s linear 0s;} -.navSearchTypeBox {width:368px; height:35px; position:absolute; border:1px solid #98a1a6; background-color:#ffffff; padding-left:10px; display:none; color:#3e3e3e; font-size:14px;} -#navSearchAlert {display:none;} -.navHomepageNews {width:30px; display:block; float:right; margin-top:8px; position:relative;} -.homepageNewsIcon {background:url(../images/nav_icon.png) -5px -85px no-repeat; width:30px; height:35px; display:block;} -.newsActive {width:16px; height:16px; border-radius:50%; background-color:#ff0000; position:absolute; left:17px; top:5px; text-align:center;font-size:12px; color:#ffffff !important;padding-bottom: 3px;padding-left: 2px;padding-right: 1px;font-weight: bold;} -.navHomepageProfile {width:65px; display:block; float:right; margin-left:33px;} -.homepageProfileMenuIcon {background:url(../images/nav_icon.png) 30px -155px no-repeat; width:65px; height:54px; position:relative; display:inline-block;} -.homepageProfileMenuIcon:hover {background:url(../images/nav_icon.png) 30px -122px no-repeat;} -.navHomepageProfile ul li ul {display:none;} -.navHomepageProfile ul li:hover ul {display:block;} -.homepageLeft {width:240px; float:left; margin-right:10px; margin-bottom:10px; margin-top:15px;} -.homepageRight {width:750px; float:left; margin-top:15px; margin-bottom:10px;} -.homepagePortraitContainer {width:238px; border:1px solid #dddddd; background-color:#ffffff; padding-bottom:15px;} -.homepagePortraitImage {width:206px; height:206px; padding:2px; margin:15px 14px 10px 14px; position:relative; border:1px solid #cbcbcb;} -.homepagePortraitImage:hover {border:1px solid #297fb8;} -.homepageFollow {background:url(../images/homepage_icon.png) -10px -8px no-repeat; width:20px; height:20px; position:absolute; right:9px; top:9px;} -.homepageFollowCancel {background:url(../images/homepage_icon.png) -178px -8px no-repeat; width:20px; height:20px; position:absolute; right:9px; top:9px;} -.homepageEditProfile {width:16px; height:16px; border-radius:2px; background-color:#888888; position:absolute; right:5px; bottom:5px; font-size:12px; filter:alpha(opacity=50); -moz-opacity:0.5; opacity: 0.5;} -.homepageEditProfileIcon {background:url(../images/homepage_icon.png) -14px -37px no-repeat; width:16px; height:16px; display:block;} -.homepageImageName {font-size:16px; color:#484848; margin-left:15px; margin-right:8px; height:25px; float:left;} -.homepageImageSex {top:116px; left:5px; width:20px; height:20px; background:url(../images/homepage_icon.png) -10px -112px no-repeat; float:left;} -.homepageImageSex2 {top:116px; left:5px; width:20px; height:20px; background:url(../images/homepage_icon.png) -10px -150px no-repeat; float:left;} -.homepageSignature {font-size:12px; color:#888888; margin-left:15px; margin-top:10px; margin-bottom:12px; width:208px;} -.homepageImageBlock {margin:0 auto; width:68px; float:left; text-align:center; display:inline-block;} -.homepageImageNumber {font-size:12px; color:#484848; font-weight:bold;} -a.homepageImageNumber:hover {color:#15bccf;} -.homepageImageText {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;} -.homepageLeftMenuCourses {font-size:14px; border-bottom:1px solid #dddddd;} -.homepageLeftMenuCoursesLine {height:38px; line-height:38px; vertical-align:middle;} -.homepageLeftMenuCoursesLine:hover {background-color:#b3e0ee;} -a.coursesLineGrey {padding-left:25px; color:#15bccf; display:block;} -a.coursesLineGrey:hover {color:#ffffff;} -.homepageLeftMenuMore {height:18px;} -.homepageLeftMenuMore:hover {background-color:#b3e0ee;} -.homepageLeftMenuMoreIcon {background:url(../images/homepage_icon.png) -74px -240px no-repeat; display:block; height:18px;} -.homepageMenuSetting {display:inline-block; margin-left:155px;} -a.homepageMenuText {color:#484848; font-size:16px; margin-left:20px;} -.homepageLeftLabelContainer {width:238px; border:1px solid #dddddd; background-color:#ffffff; margin-top:10px;} -.homepageLabelText {color:#484848; font-size:16px; margin-left:10px; margin-bottom:12px; display:block;} -.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;} -.newsType {width:60px; background-color:#ffffff; float:left; list-style:none; position:absolute; border:1px solid #eaeaea; border-radius:5px; top:15px; padding:5px 10px; left:-40px; font-size:12px; color:#888888; display:none; line-height:2; z-index:9999;} -.newsReadSetting {width:700px; background-color:#f6f6f6; border-bottom:1px solid #eeeeee; margin:10px auto; height:39px; line-height:39px; vertical-align:middle; font-size:14px; color:#7a7a7a; padding-left:10px;} -.homepageNewsList {width:710px; height:49px; line-height:49px; vertical-align:middle; border-bottom:1px dashed #eaeaea; margin-left:10px;} -.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;} -.homepageNewsContent {width:395px; max-width:395px; margin-right:10px; font-size:12px; color:#4b4b4b; display:block; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; } -.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:hover {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;} - -/*个人主页右部分*/ -.homepagePostType {width:180px; background-color:#ffffff; float:left; list-style:none; position:absolute; border:1px solid #eaeaea; border-radius:5px; top:15px; padding:5px 10px; left:-170px; font-size:12px; color:#4b4b4b; line-height:2; z-index:9999; display:none;} -.homepagePostTypeHomework {width:100px;} -.homepagePostTypeProject {width:80px;} -a.homepagePostTypeAssignment {background:url(../images/homepage_icon.png) -93px -318px no-repeat; padding-left:23px;} -a.homepagePostTypeNotice {background:url(../images/homepage_icon.png) -87px -280px no-repeat; padding-left:23px;} -a.homepagePostTypeForum {background:url(../images/homepage_icon.png) -10px -310px no-repeat; padding-left:23px;} -a.homepagePostTypeQuiz {background:url(../images/homepage_icon.png) -90px -124px no-repeat; padding-left:23px;} -a.homepagePostTypeQuestion {background:url(../images/homepage_icon.png) -10px -273px no-repeat; padding-left:23px;} -a.homepagePostTypeAll {background:url(../images/homepage_icon.png) -10px -360px no-repeat; padding-left:23px;} -a.postTypeGrey {color:#888888;} -a.postTypeGrey:hover {color:#269ac9;} -.homepagePostBrief {width:720px; margin:20px auto 0px auto; position:relative;} -.homepagePostPortrait {float:left; width:50px;} -.homepagePostDes {float:left; width:600px; margin-left:20px;} -.homepagePostTo {font-size:14px; color:#484848; margin-bottom:8px;} -.homepagePostTitle {font-size:14px; color:#484848; margin-bottom:10px; font-weight:bold;} -.homepagePostSubmitContainer {height:25px; margin-top: 8px; margin-bottom: 5px;} -.homepagePostSubmit {font-size:14px; color:#888888; border:1px solid #dddddd; background-color:#eaeaea; float:left; margin-right:20px; padding:0px 10px;} -.homepagePostSubmit:hover {background-color:#d8d8d8;} -.homepagePostIntro {font-size:14px; color:#484848;overflow:hidden;} -.homepagePostDeadline {font-size:12px; color:#888888; float:left; margin-top: 2px;} -.homepagePostDate {font-size:12px; color:#888888;margin-bottom: 5px;} -.homepagePostReplyBanner {width:708px; height:33px; border:1px solid #e4e4e4; line-height:33px; vertical-align:middle; font-size:12px; color:#888888;} -.borderBottomNone {border-bottom:none !important;} -.topBorder {border-top: 1px solid #e4e4e4;} -.homepagePostReplyBannerCount{width:255px; display:inline-block; margin-left:15px;} -.homepagePostReplyBannerTime{width:85px; display:inline-block;} -.homepagePostReplyBannerMore{width:330px; display:inline-block; text-align:right;} -.homepagePostReplyInputContainer {width:690px; margin:0px auto;} -.homepagePostReplyInput {width:680px; height:40px; max-width:680px; max-height:40px; border:1px solid #d9d9d9; outline:none; margin:15px auto 10px auto; padding-left:8px; padding-top:5px;} -.homepagePostReplyEmotion {background:url(../images/homepage_icon.png) -90px -88px no-repeat; width:50px; height:24px; float:left; padding-left:30px;} -.homepagePostReplySubmit {float:right; width:45px; height:24px; text-align:center; line-height:24px; vertical-align:middle; font-size:12px; color:#ffffff; background-color:#269ac9;} -.homepagePostReplySubmit:hover {background-color:#297fb8;} -a.postReplySubmit {color:#ffffff; display:block;} -.homepagePostReplyCancel {float:right; width:45px; height:24px; text-align:center; line-height:24px; vertical-align:middle; font-size:12px; color:#888888; background-color:#cecece; margin-left:8px;} -.homepagePostReplyCancel:hover {background-color:#717171;} -a.postReplyCancel {color:#888888; display:block;} -a.postReplyCancel:hover {color:#ffffff;} -.homepagePostReplyInputContainer2 {width:620px; margin:0px auto;} -.homepagePostReplyInput2 {width:610px; height:25px; max-width:610px; max-height:25px; border:1px solid #d9d9d9; outline:none; margin:0px auto 10px auto; padding-left:8px; padding-top:5px;} -.homepagePostReplyContainer {border-bottom:1px solid #e3e3e3; width:690px; margin:0px auto; margin-top:15px; min-height:60px;} -.homepagePostSetting {position:absolute; width:20px; height:20px; right:0px; top:0px;} -.homepagePostSettingIcon {background:url(../images/homepage_icon.png) -93px -5px no-repeat; width:20px; height:20px;} -.homepagePostSettiongText {width:85px; line-height:2; font-size:12px; color:#616060; background-color:#ffffff; border:1px solid #eaeaea; border-radius:3px; position:absolute; left:-68px; top:20px; padding:5px 0px; display:none;} -.homepagePostSettingIcon:hover {background:url(../images/homepage_icon.png) -93px -44px no-repeat;} -/*a.postOptionLink {color:#616060; display:block; width:55px; padding:0px 15px;}*/ -/*a.postOptionLink:hover {color:#ffffff; background-color:#15bccf;}*/ -.homepagePostReplyPortrait {float:left; width:45px;} -.homepagePostReplyDes {float:left; width:620px; margin-left:15px;} -.homepagePostReplyPublisher {font-size:12px; color:#484848; margin-bottom:5px;} -.homepagePostReplyContent {font-size:12px; color:#484848; margin-bottom:12px;} -.table_maxWidth table {max-width: 642px;} -.homepagePostProjectState {width:42px; height:20px; line-height:20px; border-radius:1px; background-color:#28be6c; color:#ffffff; text-align:center; vertical-align:middle; font-size:12px; display:inline-block; margin-left:5px;} -.homepagePostAssignTo {float:left; font-size:14px; color:#15bccf;} -.homepagePostFileAtt {height:22px; line-height:22px; vertical-align:middle; background:url(../images/homepage_icon.png) -85px -150px no-repeat; padding-left:35px; font-size:14px;} -.homepagePostImageAtt {height:22px; line-height:22px; vertical-align:middle; background:url(../images/homepage_icon.png) -86px -195px no-repeat; padding-left:35px; font-size:14px; margin-right:25px;} -.postAttSize {color:#888888; font-size:12px; margin-left: 5px;} -a.postGrey {color:#484848;} -a.postGrey:hover {color:#000000;} -.homepagePostReplyjournal{margin-left: 15px; float: left;} - -/*课程主页css*/ -.homepageCoursesType {width:75px; background-color:#ffffff; float:left; list-style:none; position:absolute; border:1px solid #eaeaea; border-radius:5px; top:15px; padding:5px 10px; left:-65px; font-size:12px; color:#4b4b4b; line-height:2; z-index:9999; display:none;} - -/*注册登陆页面*/ -#loginInBox {display:block; margin-top:143px;} -#signUpBox {display:none; margin-top:79px;} -#loginSignButton {height:54px; padding-left:10px; padding-right:10px; text-align:center; line-height:54px; vertical-align:middle; color:#ffffff; font-size:16px;} -#loginInButton {height:54px; padding-left:10px; padding-right:10px; text-align:center; line-height:54px; vertical-align:middle; color:#ffffff; font-size:16px;} -#loginSignButton:hover {background-color:#297fb8;} -#loginInButton:hover {background-color:#297fb8;} -.loginContentContainer {width:100%; background-color:#269ac9; margin-top:1px; height:580px;} -.loginContent {width:1000px; margin:0px auto;} -.loginLeft {width:595px; float:left;} -.loginLogo {padding-left:208px; padding-top:155px;} -.loginInro {width:465px; padding-top:55px; padding-left:50px; font-size:16px; color:#ffffff;} -.loginRight {width:405px; float:left;} -.loginChooseBox {width:405px; height:54px; background-color:#ffffff; padding-top:18px;} -.loginChooseList {width:350px; height:30px; font-size:14px; margin:0px auto;} -.loginChoose {width:55px; height:30px; border-bottom:1px solid #269ac9; text-align:center; font-weight:bold;} -a.loginChooseTab {color:#484848; height:30px; display:block;} -.loginInButton {width:315px; height:40px; background-color:#269ac9; margin-left:46px; font-size:14px; text-align:center; line-height:40px; vertical-align:middle; margin-top:20px;} -.loginInButton:hover {background-color:#297fb8;} -.loginUpButton {width:315px; height:40px; background-color:#269ac9; margin-left:46px; font-size:14px; text-align:center; line-height:40px; vertical-align:middle; margin-top:30px;} -.loginUpButton:hover {background-color:#297fb8;} -.loginChooseBorder {width:295px; height:30px; border-bottom:1px solid #e3e3e3;} -.loginSign {width:405px; background-color:#ffffff;} -.loginSignBox {width:308px; height:38px; margin-left:46px; border:1px solid #98a1a6; outline:none;} -.loginSignOption {margin-left:46px; margin-top:15px;} -.loginIn {width:405px; background-color:#ffffff; padding-bottom:30px;} -.loginSignAlert {font-size:12px; color:#fc0000; margin-left:60px;} -.loginSignRow {height:60px; min-height:60px;} - -/*课程选择弹窗*/ -.coursesChoosePopup {width:530px; height:auto; padding-left:20px; padding-bottom:35px; background-color:#ffffff;} -.coursesSearchBox {border:1px solid #e6e6e6; width:515px; height:25px; background-color:#ffffff; margin-top:12px; margin-bottom:15px;} -.searchCoursesPopup {border:none; outline:none; background-color:#ffffff; width:470px; height:25px; padding-left:10px; display:inline-block; float:left;} -.searchIconPopup{width:31px; height:25px; background-color:#ffffff; background:url(../images/homepage_icon.png) -180px -273px no-repeat; display:inline-block; float:left;} -.searchIconPopup:hover {background:url(../images/homepage_icon.png) -180px -314px no-repeat;} - -/*导入作业弹窗*/ -.homeworkPublish {width:500px; height:15px; line-height:15px;} -.homeworkPublishTime {font-size:12px; color:#b1b1b1; margin-left:22px; margin-bottom:8px;} -.homeworkListForm{height: 160px;width: 550px;overflow: scroll;overflow-x: hidden;} -.w450{width: 450px;} - -/*引用资源库弹窗*/ -.popbox{position:fixed !important;left:50%;top:50%;margin:-100px 0 0 -150px; -moz-border-radius:5px;} -.referenceResourcesPopup {width:750px !important; height:500px !important; border:3px solid #269ac9 !important; padding-left:16px !important; padding-right:16px !important; padding-bottom:16px !important; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-375px; z-index:1000;} -.referenceText {font-size:16px; color:#269ac9; line-height:16px; display:inline-block; font-weight:bold;} -.referenceSearchBox {border:1px solid #e6e6e6; width:235px; height:32px; background-color:#ffffff; margin-top:12px; margin-bottom:15px;} -.searchReferencePopup {border:none; outline:none; background-color:#ffffff; width:190px; height:32px; padding-left:10px; display:inline-block; float:left;} -.referenceSearchIcon{width:31px; height:25px; background-color:#ffffff; background:url(../images/homepage_icon2.png) -180px -270px no-repeat; display:inline-block; float:left;} -.referenceSearchIcon:hover {background:url(../images/homepage_icon2.png) -180px -311px no-repeat;} -.referenceResourceType {font-size:14px; width:460px; height:34px; line-height:34px; vertical-align:middle; background-color:#f6f6f6; margin-top:15px;} -.referenceTypeActive {background-color:#269ac9; color:#ffffff !important;} -a.referenceTypeBlock {color:#888888; display:inline-block; padding:0px 20px;} - -/*底部*/ -#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:375px; margin:0 auto;height:20px;line-height:20px;} -a.f_grey {color:#666666;} -a.f_grey:hover {color:#000000;} -/*意见反馈*/ -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:200px; 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:10px 0 0px 5px;} -.msgserver a { background:url(../images/sidebar_bg.png) no-repeat -119px -110px; padding-left:22px; display:block; height:24px; } -.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:#269ac9; width:130px; height:26px; margin-top:5px; text-align:center; padding-top:0px; color:#fff;} -a.opnionButton:hover{background: #297fb8; } -/* 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;} -.close_btn {background-position:-44px 0;} -.close_btn:hover {background-position:-66px 0;} -.show_btn {background-position:-119px 0;} -.msgserver a {color:#269ac9; } -.msgserver a:hover { text-decoration:underline; } -.closeSidebar {background:url(../images/sidebar_bg.png) 0px -112px no-repeat; width:28px; height:18px; margin-top:65px; position:absolute;} - - -.hiddent{ overflow:hidden; white-space: nowrap; text-overflow:ellipsis;} -.break_word_firefox{white-space: pre-wrap;word-break: break-all;} -.font_bold{font-weight: bold;} - - -/***** 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; - word-wrap: break-word; - word-break: break-all -} - -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:450px;height: auto; margin-bottom:20px;padding:10px;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.box_close{background:url(../images/img_floatbox.png) -22px 0 no-repeat;} - -/*文本左对齐*/ -.tl{text-align: left;} -.embed img,embed{max-width: 100%;} -.attachments {clear: both;} -.is_public_checkbox{margin-left: 15px;margin-right: 10px;} -.author_name{color: #3ca5c6 !important;} -.ke-container-default{max-width: 100%;} - -/*底部*/ -/*#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:718px; background-color:#ffffff; padding:15px; border:1px solid #dddddd;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:24px; 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;} -a.resourcesGrey {font-size:12px; color:#888888;} -a.resourcesGrey:hover {font-size:12px; color:#269ac9;} -.resourcesBanner ul li:hover ul.resourcesType {display:block;} -.resourcesSelected:hover ul {display:block;} -.resourcesUploadBox {float:right; width:103px; height:34px; background-color:#269ac9; line-height:34px; vertical-align:middle; text-align:center; margin-left:12px;} -.resourcesUploadBox:hover {background-color:#297fb8;} -.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 {width:710px; height:34px; margin-bottom:10px; margin-top:15px; margin-left:auto; margin-right:auto;} -.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:340px; height:40px; line-height:40px; text-align:left;} -.resourcesListSize {width:85px; height:40px; line-height:40px; text-align:center;} -.resourcesListType {width:85px; height:40px; line-height:40px; text-align:center;} -.resourcesListUploader {width:85px; height:40px; line-height:40px; text-align:center;} -.resourcesListTime {width:95px; height:40px; line-height:40px; text-align:center;} -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 #269ac9; border-radius:5px; float:right;} -a.sendButtonBlue {color:#269ac9;} -a.sendButtonBlue:hover {color:#ffffff;} -.resourcesSelectSendButton:hover {background-color:#297fb8;} -.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; -} -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;} -a.resourcesTypeUser {background:url(images/homepage_icon.png) -178px -453px 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;} - -.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;} - -.list_style ol li{list-style-type: decimal;margin-left: 20px;} -.list_style ul li{list-style-type: disc;margin-left: 20px;} - -/* @功能 定义 */ -span.at {color:#269ac9;} -span.at a{color:#269ac9;text-decoration: none;} - -/*20151217资源库Tim*/ -.preview {background:url(../images/hwork_icon.png) -75px -120px no-repeat; width:20px; height:20px; display:inline-block;} -.mediaIcon {background:url(../images/hwork_icon.png) -5px -160px no-repeat; padding-left:23px;} -.codeIcon {background:url(../images/hwork_icon.png) -78px -160px no-repeat; padding-left:23px;} -.othersIcon {background:url(../images/hwork_icon.png) -3px -210px no-repeat; padding-left:23px;} -.thesisIcon {background:url(../images/hwork_icon.png) -78px -212px no-repeat; padding-left:23px;} -.softwareIcon {background:url(../images/hwork_icon.png) -5px -254px no-repeat; padding-left:23px;} - -.shareDP {width:415px; height:auto; border:3px solid #269ac9; padding-left:16px; padding-bottom:16px; background-color:#ffffff; position:relative; z-index:1000;} -.shareArrow {background:url(../images/arrowList.png) -90px -108px no-repeat; display:inline-block; width:5px; height:10px; margin-right:3px;} -.sectionWrap {float:left; max-height:150px; margin-bottom:10px; overflow:auto; overflow-x:hidden; width:205px; min-height:150px; padding-top:5px; border:1px solid #dddddd;} -.columnWrap {float:left; max-height:155px; margin-bottom:10px; overflow:auto; overflow-x:hidden; width:178px; min-height:155px; border:1px solid #dddddd;} -.columnWrap li {padding-left:10px; color:#585858; line-height:20px;} -.columnWrap li:hover {background-color:#cccccc;} -.columnWrap span {width:150px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; display:inline-block; height:20px; vertical-align:top;} -.sectionRow:hover {background-color:#cccccc; cursor:pointer;} -.sectionContent {} -.sectionContent li {padding-left:10px; line-height:20px;} -.sectionContent li:hover {background-color:#cccccc;} -.sectionContent span {width:160px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; display:inline-block; height:20px; vertical-align:top;} -.orgDirection {width:392px; background-color:#f1f1f1; height:30px; vertical-align:middle; line-height:30px; color:#585858; padding-left:10px;} -.orgSendSearch {border:1px solid #dddddd; outline:none; width:262px; height:22px; padding-left:10px; float:left;} - -/*文本描述展开高度*/ -.maxh360 {max-height: 810px;} -.lh18 { line-height: 18px;} - -/*151228样式更新*/ -.menuSetting {background:url(../images/hwork_icon.png) -5px -132px no-repeat; display:inline-block; width:20px; height:20px;} -.boxShadow {box-shadow:0px 2px 8px rgba(146, 153, 169, 0.5);} -a.greyBtn{ display:inline-block; background:#f2f3f3; padding:0px 5px; height:20px; border:1px solid #d3d3d3; color:#888888; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} -a:hover.greyBtn{border:1px solid #888888; } -a.blueBtn{ display:inline-block; background:#269ac9; padding:0px 5px; height:20px; border:1px solid #269ac9; color:#ffffff; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} -a.blueBtn:hover {background-color:#298fbd;} -a.cancelBtn{ display:inline-block; background:#c1c1c1; padding:0px 5px; height:20px; border:1px solid #d3d3d3; color:#ffffff; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} -a.cancelBtn:hover {background:#888888;} -a.userFollow{ display:inline-block; width:55px; height:20px; border:1px solid #d3d3d3; color:#888888; background:#f2f3f3 url(../images/homepage_icon2.png) -9px -6px no-repeat; padding-left:25px; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} -a:hover.userFollow{border:1px solid #888888; } -a.userCancel{ display:inline-block; width:55px; height:20px; border:1px solid #d3d3d3; color:#888888; background:#f2f3f3 url(../images/homepage_icon2.png) -177px -6px no-repeat; padding-left:25px; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} -a:hover.userCancel{border:1px solid #888888; } -.pAbsolute {position:absolute; z-index:999;} -.userAvatarWrap {width:50px; height:50px; position:relative; border:1px solid #cbcbcb; padding: 2px;} -.userAvatarWrap:hover {border:1px solid #269ac9;} -.mr27 {margin-right:27px;} -.userCard {width:208px; border:1px solid #dddddd; background-color:#ffffff; margin-top:10px; padding:15px; top:-176px; left:-95px; position:absolute; z-index:999; display:none;} -.userCard font {display:block; border-width:8px; position:absolute; bottom:-16px; left:110px; border-style:solid dashed dashed dashed; border-color:#FFF transparent transparent transparent; font-size:0; line-height:0;} -.userCard em {display:block; border-width:8px; position:absolute; bottom:-17px; left:110px; border-style:solid dashed dashed dashed; border-color:#eaeaea transparent transparent transparent; font-size:0; line-height:0;} -.userCardM {width:201px; height:20px; border:1px solid #dddddd; resize:none;} +/* 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:#000;} +a:hover {text-decoration: none; } +textarea {resize: none;} +.pInline {margin:0px; padding:0px; display:inline-block;} + +/*常用*/ +select,input,textarea{ border:1px solid #dddddd; 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; margin-bottom: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;} +.min_search{ width:150px; height:20px; border:1px solid #d0d0d0; color:#666; background:url(../images/new_project/public_icon.png) 135px -193px no-repeat;} +a.btn_message_free{ background:#ff5722; display:block; text-align:center; color:#fff; padding:3px 0; width:80px; margin-bottom:10px;} +.db {display:block;} +/* 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;} +.f20{font-size:20px;} +.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;} +.hidden{overflow:hidden; white-space: nowrap; text-overflow:ellipsis;} +.flow_hidden{ width:300px;overflow:hidden; white-space: nowrap; text-overflow:ellipsis;} +.white_space{white-space:nowrap;} +.pr {position:relative;} + +/* 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;} +.ml16{ margin-left: 16px;} +.ml20{ margin-left:20px;} +.ml30{margin-left:30px !important;} +.ml35{margin-left: 35px;} +.ml40{ margin-left:40px;} +.ml45{ margin-left:45px;} +.ml48{ margin-left:48px;} +.ml53{margin-left:53px;} +.ml55{ margin-left:55px;} +.ml58{margin-left:58px;} +.ml30{ margin-left:30px;} +.ml38{ margin-left:38px;} +.ml60{ margin-left:60px;} +.ml160 {margin-left:160px;} +.ml80{ margin-left:80px;} +.ml85{margin-left:85px;} +.ml90{ margin-left:90px;} +.ml95{margin-left:95px;} +.ml100{ margin-left:100px;} +.ml110{ margin-left:110px;} +.ml125 { margin-left:125px;} +.ml320{ margin-left:320px;} +.ml150 { margin-left:150px;} +.mr-5 {margin-right:-5px;} +.mr5{ margin-right:5px;} +.mr45 {margin-right:45px;} +.mr55{ margin-right:55px;} +.mr10{ margin-right:10px;} +.mr15 {margin-right:15px;} +.mr18 {margin-right:15px;} +.mr20{ margin-right:20px;} +.mr25 {margin-right:25px;} +.mr30{ margin-right:30px;} +.mr40{ margin-right:40px;} +.mr45{margin-right: 45px;} +.mr50{margin-right: 50px;} +.mr55{margin-right: 55px;} +.mr60 {margin-right:60px;} +.mr70{margin-right: 70px;} +.mw15{margin:0 15px;} +.mr90 {margin-right:90px;} +.mw20{ margin: 0 20px;} +.mt1{margin-top: 1px;} +.mt-4 {margin-top:-4px;} +.mt0 {margin-top:0px !important;} +.mt3{ margin-top:3px;} +.mt5{ margin-top:5px;} +.mt8{ margin-top:8px;} +.mt10{ margin-top:10px !important;} +.mt30{ margin-top: 30px;} +.mt40{ margin-top: 40px;} +.mt12 { margin-top:12px !important;} +.mt15 {margin-top:15px;} +.mt19 {margin-top:19px !important;} +.ml70{margin-left: 70px;} +.mb0 {margin-bottom: 0px !important;} +.mb4{ margin-bottom:4px;} +.mb5{ margin-bottom:5px;} +.mb8 {margin-bottom:8px;} +.mb10{ margin-bottom:10px !important;} +.mb20{ margin-bottom:20px;} +.pl10 {padding-left:10px;} +.pl15{ padding-left:15px;} +.pl5{ padding-left:5px;} +.pt5{ padding-top:5px;} +.pt10{ padding-top:10px;} +.pb5{ padding-bottom: 5px;} +.w20{ width:20px;} +.w40{width: 40px;} +.w45{ width: 45px;} +.w50 {width:50px;} +.w60{ width:60px;} +.w70{ width:70px;} +.w90{ width:90px;} +.w100{width: 100px;} +.w210{ width:210px;} +.w150{ width:150px;} +.w230{width:230px !important;} +.w235{ width:235px !important;} +.w280{ width:280px;} +.w265{ width: 265px;} +.w270{ width: 270px;} +.w350 {width:350px;} +.w362 {width:362px;} +.w430{ width:470px;} +.w455{width:455px !important;} +.w465{width:465px !important;} +.w520{ width:520px;} +.w543{ width:543px;} +.w557{ width:557px;} +.w576{ width:576px;} +.w583{ width:583px;} +.w350{ width:350px;} +.w610{ width:610px;} +.w60{ width:600px !important;} +.w606{ width:606px } +.h20{height: 20px;} +.h22{ height:22px;} +.h26{ height:26px;} +.h50{ height:50px;} +.h70{ height:70px;} +.h150{ height:150px;} +.p10 {padding-left:10px; padding-right:10px;} + +/* 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_eblue{color: #3784D3} +a.c_setting_blue{color: #0781B4} +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_grey{color:#999;} +.c_dblue{ color:#09658c;} +.b_blue{background:#64bdd9;} +.b_green{background:#28be6c;} +.b_w{ background:#fff;} + +/*add by Tim*/ +.fontGrey {color:#cecece;} +.fontGrey2 {color:#888888;} +.fontGrey3 {color:#484848;} +.fontBlue {color:#3498db;} +a.underline {text-decoration:underline;} +a.fontBlue {color:#297fb8;} +a.fontGrey {color:#cecece;} +a.fontGrey2 {color:#888888;} +a.linkOrange {color:#ff7143;} +a.linkBlue {color:#269ac9;} +a.linkBlue:hover {color:#297fb8;} +a.linkBlue2 {color:#3498db;} +a.linkBlue2:hover {color:#297fb8;} +a.buttonBlue {background-color:#269ac9;} +a.buttonBlue:hover {background-color:#297fb8;} +a.linkGrey {color:#484848;} +a.linkGrey:hover {color:#269ac9;} +a.linkGrey2 {color:#888888;} +a.linkGrey2:hover {color:#484848;} +a.linkGrey3 {color:#484848;} +a.linkGrey3:hover {color:#000000;} +a.linkGrey4 {color:#484848;} +a.linkGrey4:hover {color:#297fb8;} +a.linkGrey5 {color:#484848;} +a.linkGrey5:hover {color:#3498db;} +a.linkGrey6 {color:#484848 !important;} +a.linkGrey6:hover {color:#ffffff !important;} +a.linkGrey7 {color:#888888;} +a.linkGrey7:hover {color:#269ac9;} +a.bBlue {background-color:#3498db;} +a.bBlue:hover {background-color:#297fb8;} +a.submit_btn {border:1px solid #3498db; padding:3px 10px; border-radius:3px; color:#3498db;} +a.submit_btn:hover {background-color:#3498db; color:#ffffff;} + +/* 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 8px; text-align:center;} +a.green_btn{background:#28be6c;color:#fff;font-size:14px; font-weight:normal; padding:2px 8px; text-align:center;cursor: pointer;} +a:hover.green_btn{ background:#14ad5a;} +.blue_btn{ background:#64bdd9; color:#fff; font-size:14px; font-weight:normal;padding:2px 8px; text-align:center;} +a.blue_btn{background:#64bdd9;color:#fff;font-size:14px; font-weight:normal; padding:2px 8px; text-align:center;cursor: pointer;} +.red_btn{ background:red; color:#fff; font-size:14px; font-weight:normal;padding:2px 8px; text-align:center;} +a.red_btn{background:red; color:#fff;font-size:14px; font-weight:normal; padding:2px 8px; text-align:center;cursor: pointer;} +a.orange_btn_homework{background:#d63502;color:#fff;font-size:14px; font-weight:normal; padding:2px 10px; text-align:center;} +a:hover.blue_btn{ background:#329cbd;cursor: pointer;} +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 #1abc9c; 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:40px 0 0 15px; display:block; padding:2px 5px; border:1px solid #eaeaea;} +.upbtn:hover{color:#64bdd9;cursor: pointer;} +.upload_file{margin-left: -60px;margin-top: 40px;width: 50px;position: absolute;height: 24px;opacity: 0;cursor: pointer} +.undis{display:none;} +.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;white-space:nowrap;} +.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;white-space:nowrap;} +.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;white-space:nowrap;} +.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;white-space:nowrap;} +.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;white-space:nowrap;} +.grey_border{border:1px solid #dddddd !important; } +/* commonpic */ +.pic_date{ display:block; background:url(../images/new_project/public_icon.png) -31px 0 no-repeat; width:16px; height:15px; float:left;} +.pic_add{ display:block; background:url(../images/new_project/public_icon.png) -31px -273px no-repeat; width:16px; height:15px; float:left;} +.pic_sch{ display:block; background:url(../images/new_project/public_icon.png) -31px -195px no-repeat; width:16px; height:15px; float:left;} +.pic_mes{ display:block; background:url(../images/new_project/public_icon.png) 0px -376px no-repeat; width:20px; height:15px; padding-left:18px;} +.pic_img{ display:block; background:url(../images/new_project/public_icon.png) -31px -419px no-repeat; width:20px; height:15px; } +.pic_del{ display:block; background:url(../images/new_project/public_icon.png) 0px -235px no-repeat; width:20px; height:15px; } +.pic_del:hover{ background:url(../images/new_project/public_icon.png) -32px -235px no-repeat; } +.pic_stats{display:block; background:url(../images/new_project/public_icon.png) 0px -548px no-repeat; width:20px; height:15px;} +.pic_files{display:block; background:url(../images/new_project/public_icon.png) 0px -578px no-repeat; width:20px; height:15px;} +.pic_text{display:block; background:url(../images/new_project/public_icon.png) 0px -609px no-repeat; width:20px; height:18px;} +.pic_text02{display:block; background:url(../images/new_project/public_icon.png) 0px -642px no-repeat; width:20px; height:19px;} +.pic_edit{display:block; background:url(../images/new_project/public_icon.png) 0px -32px no-repeat; width:20px; height:15px;} +.pic_edit:hover{display:block; background:url(../images/new_project/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; position: relative;} +.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;} +#userInfo {float:right; display:inline-block; width:130px; padding-top:5px;} +.userInfoRow2 {margin-top:-5px;} +.myPractice {display:inline-block;} +a.parent {background: url(../images/arrowList.png) -30px 3px no-repeat; width:95px; padding-right:50px;} +a.parent:hover {background: url(../images/arrowList.png) -30px -14px no-repeat; width:95px; padding-right:50px; color:#fe7d68;} +a.linkToOrange:hover {color:#fe7d68;} +#userInfo ul li {positon: relative;} +#userInfo ul li ul {display:none;} +#userInfo ul li:hover ul {display:block; position:absolute;} +#userInfo ul li:hover ul li ul {display:none;} +#userInfo ul li:hover ul li:hover ul {display:block; position:absolute; left:110px; top:6px; width:148px; border:1px solid #15bccf; background-color:#ffffff; padding:5px 0px;} +#userInfo ul li:hover ul li:hover ul li {max-width:148px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; display:block; padding: 0 10px; line-height:1.5; color:#15bccf;} +#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 { right: 5px;}*/ +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.user_name { width:170px; text-align:right; margin:0; } +.pic_triangle{background: url(../images/item.png) -90px -48px no-repeat; float:right; display:block; width:10px; height:10px; margin-top:12px; margin-left:7px;} +.pic_triangle:hover{background: url(../images/item.png) -90px -78px no-repeat; } +div#menu ul ul a.parent {background: url(../images/item.png) -20px 6px no-repeat;width:60px;} +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; 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 90px !important; width:200px; } +div#menu ul ul ul li a{ width:185px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis;color:#15bccf;} + +/*myctrip*/ +.userImage{position:absolute; right:140px; top:5px; width:30px;height:30px; background: url(../images/item.png) 2px 4px no-repeat; line-height:1.4;} +a.topnav_login_a{color:#fff; display:inline-block;} +a.topnav_login_a:hover {color:#a1ebff;} +a.topnav_login_mes{color:#fff; width:10px;height:20px; padding-left:15px; background: url(../images/item.png) -84px -145px no-repeat; display:inline-block; vertical-align:top;} +a.topnav_login_mes:hover {color:#a1ebff;} +a.topnav_login_box{ color:#fff; font-size:14px; font-weight:bold; width:90px; display:inline-block;} +.menuArrow {background:url(../images/item.png) -20px -40px no-repeat;} +li.menuArrow:hover {background:url(../images/item.png) -20px -70px no-repeat;} +a.topnav_login_box:hover {color:#a1ebff;} +.navRow1 {margin:0; padding:0;} +.navRow2 {margin:0; padding:0;} +.topnav_login_list{ border:1px solid #269ac9; background:#fff; padding-left:10px; padding-bottom:10px; padding-top:8px; width:60px; left:-7px; position:absolute; z-index:9999; line-height:2;} +.topnav_login_list a{color:#15bccf;} +.topnav_login_list li{ } + +/*主类容*/ +#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:670px; margin-left:10px; background:#fff; padding:10px; margin-bottom:10px;} + +/*发送资源弹窗*/ +/*.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;}*/ +/*发送资源弹窗*/ +/*.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 #269ac9 !important; 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:#269ac9; line-height:16px; padding-top:20px; width:110px; display:inline-block; font-weight: bold;} +.resourcesSendTo {float:left; height:20px; margin-top:15px;} +.boxContainer {height:33px; line-height:33px; position:relative} +.resourcesSendType {border:1px solid #e6e6e6; width:60px; height:24px; outline:none; font-size:14px; color:#888888;} +.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/homepage_icon.png) 5px -394px no-repeat; display:inline-block; float:left; cursor: pointer;} +.searchIconPopup:hover {background:url(../images/homepage_icon.png) 5px -420px no-repeat;} +.courseSend {width:390px; height:15px; line-height:15px; margin-bottom:10px;display:block;white-space:nowrap;} +.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:#269ac9; margin-right:25px; float:left;cursor: pointer;} +.courseSendSubmit:hover {background-color:#297fb8;} +.courseSendCancel {width:50px; height:25px; line-height:25px; text-align:center; vertical-align:middle; background-color:#c1c1c1; float:left} +.courseSendCancel:hover {background-color:#717171;} +a.sendSourceText {font-size:14px; color:#ffffff;} +input.sendSourceText {font-size:14px;color:#ffffff;background-color:#269ac9;cursor: pointer; outline: none; border: none; width: 50px; height: 25px;} +input.sendSourceText:hover {background-color:#297fb8;} +/*input.sendSourceText:hover {font-size:14px; color:#ffffff;}*/ +.resourcesSendTo {float:left; height:20px; margin-top:15px;} +.resourcesSendType {border:1px solid #e6e6e6; width:60px; height:24px; outline:none; font-size:14px; color:#888888;} +.courseReferContainer {float:left; max-height:120px;margin-right:16px;margin-bottom:10px; overflow:auto; overflow-x:hidden;} +.popbox{/* width:300px; *//* height:100px; */position:fixed !important;/* z-index:100; */left:50%;top:50%;margin:-100px 0 0 -150px; /* background:#fff; */ -moz-border-radius:5px; /* -webkit-border-radius:5px; */ /* border-radius:5px; */ /* box-shadow:0px 0px 8px #194a81; */ /* overflow:auto; */} + +/*上传资源弹窗*/ +.resourceUploadPopup {width:400px; height:auto; border:3px solid #269ac9; 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:#269ac9; line-height:16px; padding-top:15px; 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:#269ac9; border-radius:3px; float:left; margin-right:12px;} +.uploadBox:hover {background-color:#297fb8;} +a.uploadIcon {background:url(../images/resource_icon_list.png) 8px -60px no-repeat; width:100px; height:33px; display:block;} +.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;} + +/*评分设置弹窗*/ +.markPopup {width:290px; height:auto; padding:5px 0px 15px 15px; background-color:#ffffff; z-index:1000;} +.markInput {margin-bottom:10px; outline:none; border:1px solid #e6e6e6; height:30px; width:140px; color:#3d3c3c;} +.markPercentage {margin:10px 0; border:1px solid #e6e6e6; width:70px; height:30px; outline:none; font-size:12px; color:#3d3c3c;} + + +/*新个人主页框架css*/ +.navContainer {width:100%; margin:0 auto; background-color:#269ac9;} +.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:#269ac9; margin:0 auto;} +.navHomepageLogo {width:60px; height:54px; line-height:54px; vertical-align:middle; margin-left:2px; margin-right:30px;} +.navHomepageMenu {margin-right:20px; display:inline-block;height:54px; line-height:54px; vertical-align:middle;} +.navHomepageMenu:hover {background-color:#297fb8;} +.navHomepageSearchBoxcontainer {margin-top:11px; } +.navHomepageSearchBox {width:380px; border:none; outline:none; height:32px; 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; -moz-transition :all 0s linear 0s; -webkit-transition :all 0s linear 0s; -o-transition:all 0s linear 0s; transition:all 0s linear 0s;} +a.homepageSearchIcon:hover {background:url(../images/nav_icon.png) -49px 3px no-repeat; -moz-transition :all 0s linear 0s; -webkit-transition :all 0s linear 0s; -o-transition:all 0s linear 0s; transition:all 0s linear 0s;} +.navSearchTypeBox {width:368px; height:35px; position:absolute; border:1px solid #98a1a6; background-color:#ffffff; padding-left:10px; display:none; color:#3e3e3e; font-size:14px;} +#navSearchAlert {display:none;} +.navHomepageNews {width:30px; display:block; float:right; margin-top:8px; position:relative;} +.homepageNewsIcon {background:url(../images/nav_icon.png) -5px -85px no-repeat; width:30px; height:35px; display:block;} +.newsActive {width:16px; height:16px; border-radius:50%; background-color:#ff0000; position:absolute; left:17px; top:5px; text-align:center;font-size:12px; color:#ffffff !important;padding-bottom: 3px;padding-left: 2px;padding-right: 1px;font-weight: bold;} +.navHomepageProfile {width:65px; display:block; float:right; margin-left:33px;} +.homepageProfileMenuIcon {background:url(../images/nav_icon.png) 30px -155px no-repeat; width:65px; height:54px; position:relative; display:inline-block;} +.homepageProfileMenuIcon:hover {background:url(../images/nav_icon.png) 30px -122px no-repeat;} +.navHomepageProfile ul li ul {display:none;} +.navHomepageProfile ul li:hover ul {display:block;} +.homepageLeft {width:240px; float:left; margin-right:10px; margin-bottom:10px; margin-top:15px;} +.homepageRight {width:750px; float:left; margin-top:15px; margin-bottom:10px;} +.homepagePortraitContainer {width:238px; border:1px solid #dddddd; background-color:#ffffff; padding-bottom:15px;} +.homepagePortraitImage {width:206px; height:206px; padding:2px; margin:15px 14px 10px 14px; position:relative; border:1px solid #cbcbcb;} +.homepagePortraitImage:hover {border:1px solid #297fb8;} +.homepageFollow {background:url(../images/homepage_icon.png) -10px -8px no-repeat; width:20px; height:20px; position:absolute; right:9px; top:9px;} +.homepageFollowCancel {background:url(../images/homepage_icon.png) -178px -8px no-repeat; width:20px; height:20px; position:absolute; right:9px; top:9px;} +.homepageEditProfile {width:16px; height:16px; border-radius:2px; background-color:#888888; position:absolute; right:5px; bottom:5px; font-size:12px; filter:alpha(opacity=50); -moz-opacity:0.5; opacity: 0.5;} +.homepageEditProfileIcon {background:url(../images/homepage_icon.png) -14px -37px no-repeat; width:16px; height:16px; display:block;} +.homepageImageName {font-size:16px; color:#484848; margin-left:15px; margin-right:8px; height:25px; float:left;} +.homepageImageSex {top:116px; left:5px; width:20px; height:20px; background:url(../images/homepage_icon.png) -10px -112px no-repeat; float:left;} +.homepageImageSex2 {top:116px; left:5px; width:20px; height:20px; background:url(../images/homepage_icon.png) -10px -150px no-repeat; float:left;} +.homepageSignature {font-size:12px; color:#888888; margin-left:15px; margin-top:10px; margin-bottom:12px; width:208px;} +.homepageImageBlock {margin:0 auto; width:68px; float:left; text-align:center; display:inline-block;} +.homepageImageNumber {font-size:12px; color:#484848; font-weight:bold;} +a.homepageImageNumber:hover {color:#15bccf;} +.homepageImageText {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;} +.homepageLeftMenuCourses {font-size:14px; border-bottom:1px solid #dddddd;} +.homepageLeftMenuCoursesLine {height:38px; line-height:38px; vertical-align:middle;} +.homepageLeftMenuCoursesLine:hover {background-color:#b3e0ee;} +a.coursesLineGrey {padding-left:25px; color:#15bccf; display:block;} +a.coursesLineGrey:hover {color:#ffffff;} +.homepageLeftMenuMore {height:18px;} +.homepageLeftMenuMore:hover {background-color:#b3e0ee;} +.homepageLeftMenuMoreIcon {background:url(../images/homepage_icon.png) -74px -240px no-repeat; display:block; height:18px;} +.homepageMenuSetting {display:inline-block; margin-left:155px;} +a.homepageMenuText {color:#484848; font-size:16px; margin-left:20px;} +.homepageLeftLabelContainer {width:238px; border:1px solid #dddddd; background-color:#ffffff; margin-top:10px;} +.homepageLabelText {color:#484848; font-size:16px; margin-left:10px; margin-bottom:12px; display:block;} +.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;} +.newsType {width:60px; background-color:#ffffff; float:left; list-style:none; position:absolute; border:1px solid #eaeaea; border-radius:5px; top:15px; padding:5px 10px; left:-40px; font-size:12px; color:#888888; display:none; line-height:2; z-index:9999;} +.newsReadSetting {width:700px; background-color:#f6f6f6; border-bottom:1px solid #eeeeee; margin:10px auto; height:39px; line-height:39px; vertical-align:middle; font-size:14px; color:#7a7a7a; padding-left:10px;} +.homepageNewsList {width:710px; height:49px; line-height:49px; vertical-align:middle; border-bottom:1px dashed #eaeaea; margin-left:10px;} +.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;} +.homepageNewsContent {width:395px; max-width:395px; margin-right:10px; font-size:12px; color:#4b4b4b; display:block; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; } +.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:hover {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;} + +/*个人主页右部分*/ +.homepagePostType {width:180px; background-color:#ffffff; float:left; list-style:none; position:absolute; border:1px solid #eaeaea; border-radius:5px; top:15px; padding:5px 10px; left:-170px; font-size:12px; color:#4b4b4b; line-height:2; z-index:9999; display:none;} +.homepagePostTypeHomework {width:100px;} +.homepagePostTypeProject {width:80px;} +a.homepagePostTypeAssignment {background:url(../images/homepage_icon.png) -93px -318px no-repeat; padding-left:23px;} +a.homepagePostTypeNotice {background:url(../images/homepage_icon.png) -87px -280px no-repeat; padding-left:23px;} +a.homepagePostTypeForum {background:url(../images/homepage_icon.png) -10px -310px no-repeat; padding-left:23px;} +a.homepagePostTypeQuiz {background:url(../images/homepage_icon.png) -90px -124px no-repeat; padding-left:23px;} +a.homepagePostTypeQuestion {background:url(../images/homepage_icon.png) -10px -273px no-repeat; padding-left:23px;} +a.homepagePostTypeAll {background:url(../images/homepage_icon.png) -10px -360px no-repeat; padding-left:23px;} +a.postTypeGrey {color:#888888;} +a.postTypeGrey:hover {color:#269ac9;} +.homepagePostBrief {width:720px; margin:20px auto 0px auto; position:relative;} +.homepagePostPortrait {float:left; width:50px;} +.homepagePostDes {float:left; width:600px; margin-left:20px;} +.homepagePostTo {font-size:14px; color:#484848; margin-bottom:8px;} +.homepagePostTitle {font-size:14px; color:#484848; margin-bottom:10px; font-weight:bold;} +.homepagePostSubmitContainer {height:25px; margin-top: 8px; margin-bottom: 5px;} +.homepagePostSubmit {font-size:14px; color:#888888; border:1px solid #dddddd; background-color:#eaeaea; float:left; margin-right:20px; padding:0px 10px;} +.homepagePostSubmit:hover {background-color:#d8d8d8;} +.homepagePostIntro {font-size:14px; color:#484848;overflow:hidden;} +.homepagePostDeadline {font-size:12px; color:#888888; float:left; margin-top: 2px;} +.homepagePostDate {font-size:12px; color:#888888;margin-bottom: 5px;} +.homepagePostReplyBanner {width:708px; height:33px; border:1px solid #e4e4e4; line-height:33px; vertical-align:middle; font-size:12px; color:#888888;} +.borderBottomNone {border-bottom:none !important;} +.topBorder {border-top: 1px solid #e4e4e4;} +.homepagePostReplyBannerCount{width:255px; display:inline-block; margin-left:15px;} +.homepagePostReplyBannerTime{width:85px; display:inline-block;} +.homepagePostReplyBannerMore{width:330px; display:inline-block; text-align:right;} +.homepagePostReplyInputContainer {width:690px; margin:0px auto;} +.homepagePostReplyInput {width:680px; height:40px; max-width:680px; max-height:40px; border:1px solid #d9d9d9; outline:none; margin:15px auto 10px auto; padding-left:8px; padding-top:5px;} +.homepagePostReplyEmotion {background:url(../images/homepage_icon.png) -90px -88px no-repeat; width:50px; height:24px; float:left; padding-left:30px;} +.homepagePostReplySubmit {float:right; width:45px; height:24px; text-align:center; line-height:24px; vertical-align:middle; font-size:12px; color:#ffffff; background-color:#269ac9;} +.homepagePostReplySubmit:hover {background-color:#297fb8;} +a.postReplySubmit {color:#ffffff; display:block;} +.homepagePostReplyCancel {float:right; width:45px; height:24px; text-align:center; line-height:24px; vertical-align:middle; font-size:12px; color:#888888; background-color:#cecece; margin-left:8px;} +.homepagePostReplyCancel:hover {background-color:#717171;} +a.postReplyCancel {color:#888888; display:block;} +a.postReplyCancel:hover {color:#ffffff;} +.homepagePostReplyInputContainer2 {width:620px; margin:0px auto;} +.homepagePostReplyInput2 {width:610px; height:25px; max-width:610px; max-height:25px; border:1px solid #d9d9d9; outline:none; margin:0px auto 10px auto; padding-left:8px; padding-top:5px;} +.homepagePostReplyContainer {border-bottom:1px solid #e3e3e3; width:690px; margin:0px auto; margin-top:15px; min-height:60px;} +.homepagePostSetting {position:absolute; width:20px; height:20px; right:0px; top:0px;} +.homepagePostSettingIcon {background:url(../images/homepage_icon.png) -93px -5px no-repeat; width:20px; height:20px;} +.homepagePostSettiongText {width:85px; line-height:2; font-size:12px; color:#616060; background-color:#ffffff; border:1px solid #eaeaea; border-radius:3px; position:absolute; left:-68px; top:20px; padding:5px 0px; display:none;} +.homepagePostSettingIcon:hover {background:url(../images/homepage_icon.png) -93px -44px no-repeat;} +/*a.postOptionLink {color:#616060; display:block; width:55px; padding:0px 15px;}*/ +/*a.postOptionLink:hover {color:#ffffff; background-color:#15bccf;}*/ +.homepagePostReplyPortrait {float:left; width:45px;} +.homepagePostReplyDes {float:left; width:620px; margin-left:15px;} +.homepagePostReplyPublisher {font-size:12px; color:#484848; margin-bottom:5px;} +.homepagePostReplyContent {font-size:12px; color:#484848; margin-bottom:12px;} +.table_maxWidth table {max-width: 642px;} +.homepagePostProjectState {width:42px; height:20px; line-height:20px; border-radius:1px; background-color:#28be6c; color:#ffffff; text-align:center; vertical-align:middle; font-size:12px; display:inline-block; margin-left:5px;} +.homepagePostAssignTo {float:left; font-size:14px; color:#15bccf;} +.homepagePostFileAtt {height:22px; line-height:22px; vertical-align:middle; background:url(../images/homepage_icon.png) -85px -150px no-repeat; padding-left:35px; font-size:14px;} +.homepagePostImageAtt {height:22px; line-height:22px; vertical-align:middle; background:url(../images/homepage_icon.png) -86px -195px no-repeat; padding-left:35px; font-size:14px; margin-right:25px;} +.postAttSize {color:#888888; font-size:12px; margin-left: 5px;} +a.postGrey {color:#484848;} +a.postGrey:hover {color:#000000;} +.homepagePostReplyjournal{margin-left: 15px; float: left;} + +/*课程主页css*/ +.homepageCoursesType {width:75px; background-color:#ffffff; float:left; list-style:none; position:absolute; border:1px solid #eaeaea; border-radius:5px; top:15px; padding:5px 10px; left:-65px; font-size:12px; color:#4b4b4b; line-height:2; z-index:9999; display:none;} + +/*注册登陆页面*/ +#loginInBox {display:block; margin-top:143px;} +#signUpBox {display:none; margin-top:79px;} +#loginSignButton {height:54px; padding-left:10px; padding-right:10px; text-align:center; line-height:54px; vertical-align:middle; color:#ffffff; font-size:16px;} +#loginInButton {height:54px; padding-left:10px; padding-right:10px; text-align:center; line-height:54px; vertical-align:middle; color:#ffffff; font-size:16px;} +#loginSignButton:hover {background-color:#297fb8;} +#loginInButton:hover {background-color:#297fb8;} +.loginContentContainer {width:100%; background-color:#269ac9; margin-top:1px; height:580px;} +.loginContent {width:1000px; margin:0px auto;} +.loginLeft {width:595px; float:left;} +.loginLogo {padding-left:208px; padding-top:155px;} +.loginInro {width:465px; padding-top:55px; padding-left:50px; font-size:16px; color:#ffffff;} +.loginRight {width:405px; float:left;} +.loginChooseBox {width:405px; height:54px; background-color:#ffffff; padding-top:18px;} +.loginChooseList {width:350px; height:30px; font-size:14px; margin:0px auto;} +.loginChoose {width:55px; height:30px; border-bottom:1px solid #269ac9; text-align:center; font-weight:bold;} +a.loginChooseTab {color:#484848; height:30px; display:block;} +.loginInButton {width:315px; height:40px; background-color:#269ac9; margin-left:46px; font-size:14px; text-align:center; line-height:40px; vertical-align:middle; margin-top:20px;} +.loginInButton:hover {background-color:#297fb8;} +.loginUpButton {width:315px; height:40px; background-color:#269ac9; margin-left:46px; font-size:14px; text-align:center; line-height:40px; vertical-align:middle; margin-top:30px;} +.loginUpButton:hover {background-color:#297fb8;} +.loginChooseBorder {width:295px; height:30px; border-bottom:1px solid #e3e3e3;} +.loginSign {width:405px; background-color:#ffffff;} +.loginSignBox {width:308px; height:38px; margin-left:46px; border:1px solid #98a1a6; outline:none;} +.loginSignOption {margin-left:46px; margin-top:15px;} +.loginIn {width:405px; background-color:#ffffff; padding-bottom:30px;} +.loginSignAlert {font-size:12px; color:#fc0000; margin-left:60px;} +.loginSignRow {height:60px; min-height:60px;} + +/*课程选择弹窗*/ +.coursesChoosePopup {width:530px; height:auto; padding-left:20px; padding-bottom:35px; background-color:#ffffff;} +.coursesSearchBox {border:1px solid #e6e6e6; width:515px; height:25px; background-color:#ffffff; margin-top:12px; margin-bottom:15px;} +.searchCoursesPopup {border:none; outline:none; background-color:#ffffff; width:470px; height:25px; padding-left:10px; display:inline-block; float:left;} +.searchIconPopup{width:31px; height:25px; background-color:#ffffff; background:url(../images/homepage_icon.png) -180px -273px no-repeat; display:inline-block; float:left;} +.searchIconPopup:hover {background:url(../images/homepage_icon.png) -180px -314px no-repeat;} + +/*导入作业弹窗*/ +.homeworkPublish {width:500px; height:15px; line-height:15px;} +.homeworkPublishTime {font-size:12px; color:#b1b1b1; margin-left:22px; margin-bottom:8px;} +.homeworkListForm{height: 160px;width: 550px;overflow: scroll;overflow-x: hidden;} +.w450{width: 450px;} + +/*引用资源库弹窗*/ +.popbox{position:fixed !important;left:50%;top:50%;margin:-100px 0 0 -150px; -moz-border-radius:5px;} +.referenceResourcesPopup {width:750px !important; height:500px !important; border:3px solid #269ac9 !important; padding-left:16px !important; padding-right:16px !important; padding-bottom:16px !important; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-375px; z-index:1000;} +.referenceText {font-size:16px; color:#269ac9; line-height:16px; display:inline-block; font-weight:bold;} +.referenceSearchBox {border:1px solid #e6e6e6; width:235px; height:32px; background-color:#ffffff; margin-top:12px; margin-bottom:15px;} +.searchReferencePopup {border:none; outline:none; background-color:#ffffff; width:190px; height:32px; padding-left:10px; display:inline-block; float:left;} +.referenceSearchIcon{width:31px; height:25px; background-color:#ffffff; background:url(../images/homepage_icon2.png) -180px -270px no-repeat; display:inline-block; float:left;} +.referenceSearchIcon:hover {background:url(../images/homepage_icon2.png) -180px -311px no-repeat;} +.referenceResourceType {font-size:14px; width:460px; height:34px; line-height:34px; vertical-align:middle; background-color:#f6f6f6; margin-top:15px;} +.referenceTypeActive {background-color:#269ac9; color:#ffffff !important;} +a.referenceTypeBlock {color:#888888; display:inline-block; padding:0px 20px;} + +/*复制课程弹窗*/ +.copyCoursePopup {width:750px !important; height:auto !important; border:3px solid #269ac9 !important; padding-left:16px !important; padding-right:16px !important; padding-bottom:16px !important; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-375px; z-index:1000;} + +/*底部*/ +#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:375px; margin:0 auto;height:20px;line-height:20px;} +a.f_grey {color:#666666;} +a.f_grey:hover {color:#000000;} +/*意见反馈*/ +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:200px; 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:10px 0 0px 5px;} +.msgserver a { background:url(../images/sidebar_bg.png) no-repeat -119px -110px; padding-left:22px; display:block; height:24px; } +.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:#269ac9; width:130px; height:26px; margin-top:5px; text-align:center; padding-top:0px; color:#fff;} +a.opnionButton:hover{background: #297fb8; } +/* 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;} +.close_btn {background-position:-44px 0;} +.close_btn:hover {background-position:-66px 0;} +.show_btn {background-position:-119px 0;} +.msgserver a {color:#269ac9; } +.msgserver a:hover { text-decoration:underline; } +.closeSidebar {background:url(../images/sidebar_bg.png) 0px -112px no-repeat; width:28px; height:18px; margin-top:65px; position:absolute;} + + +.hiddent{ overflow:hidden; white-space: nowrap; text-overflow:ellipsis;} +.break_word_firefox{white-space: pre-wrap;word-break: break-all;} +.font_bold{font-weight: bold;} + + +/***** 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; + word-wrap: break-word; + word-break: break-all +} + +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:450px;height: auto; margin-bottom:20px;padding:10px;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.box_close{background:url(../images/img_floatbox.png) -22px 0 no-repeat;} + +/*文本左对齐*/ +.tl{text-align: left;} +.embed img,embed{max-width: 100%;} +.attachments {clear: both;} +.is_public_checkbox{margin-left: 15px;margin-right: 10px;} +.author_name{color: #3ca5c6 !important;} +.ke-container-default{max-width: 100%;} + +/*底部*/ +/*#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:718px; background-color:#ffffff; padding:15px; border:1px solid #dddddd;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:24px; 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;} +a.resourcesGrey {font-size:12px; color:#888888;} +a.resourcesGrey:hover {font-size:12px; color:#269ac9;} +.resourcesBanner ul li:hover ul.resourcesType {display:block;} +.resourcesSelected:hover ul {display:block;} +.resourcesUploadBox {float:right; width:103px; height:34px; background-color:#269ac9; line-height:34px; vertical-align:middle; text-align:center; margin-left:12px;} +.resourcesUploadBox:hover {background-color:#297fb8;} +.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 {width:710px; height:34px; margin-bottom:10px; margin-top:15px; margin-left:auto; margin-right:auto;} +.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:340px; height:40px; line-height:40px; text-align:left;} +.resourcesListSize {width:85px; height:40px; line-height:40px; text-align:center;} +.resourcesListType {width:85px; height:40px; line-height:40px; text-align:center;} +.resourcesListUploader {width:85px; height:40px; line-height:40px; text-align:center;} +.resourcesListTime {width:95px; height:40px; line-height:40px; text-align:center;} +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 #269ac9; border-radius:5px; float:right;} +a.sendButtonBlue {color:#269ac9;} +a.sendButtonBlue:hover {color:#ffffff;} +.resourcesSelectSendButton:hover {background-color:#297fb8;} +.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; +} +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;} +a.resourcesTypeUser {background:url(images/homepage_icon.png) -178px -453px 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;} + +.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;} + +.list_style ol li{list-style-type: decimal;margin-left: 20px;} +.list_style ul li{list-style-type: disc;margin-left: 20px;} + +/* @功能 定义 */ +span.at {color:#269ac9;} +span.at a{color:#269ac9;text-decoration: none;} + +/*20151217资源库Tim*/ +.preview {background:url(../images/hwork_icon.png) -75px -120px no-repeat; width:20px; height:20px; display:inline-block;} +.mediaIcon {background:url(../images/hwork_icon.png) -5px -160px no-repeat; padding-left:23px;} +.codeIcon {background:url(../images/hwork_icon.png) -78px -160px no-repeat; padding-left:23px;} +.othersIcon {background:url(../images/hwork_icon.png) -3px -210px no-repeat; padding-left:23px;} +.thesisIcon {background:url(../images/hwork_icon.png) -78px -212px no-repeat; padding-left:23px;} +.softwareIcon {background:url(../images/hwork_icon.png) -5px -254px no-repeat; padding-left:23px;} + +.shareDP {width:415px; height:auto; border:3px solid #269ac9; padding-left:16px; padding-bottom:16px; background-color:#ffffff; position:relative; z-index:1000;} +.shareArrow {background:url(../images/arrowList.png) -90px -108px no-repeat; display:inline-block; width:5px; height:10px; margin-right:3px;} +.sectionWrap {float:left; max-height:150px; margin-bottom:10px; overflow:auto; overflow-x:hidden; width:205px; min-height:150px; padding-top:5px; border:1px solid #dddddd;} +.columnWrap {float:left; max-height:155px; margin-bottom:10px; overflow:auto; overflow-x:hidden; width:178px; min-height:155px; border:1px solid #dddddd;} +.columnWrap li {padding-left:10px; color:#585858; line-height:20px;} +.columnWrap li:hover {background-color:#cccccc;} +.columnWrap span {width:150px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; display:inline-block; height:20px; vertical-align:top;} +.sectionRow:hover {background-color:#cccccc; cursor:pointer;} +.sectionContent {} +.sectionContent li {padding-left:10px; line-height:20px;} +.sectionContent li:hover {background-color:#cccccc;} +.sectionContent span {width:160px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; display:inline-block; height:20px; vertical-align:top;} +.orgDirection {width:392px; background-color:#f1f1f1; height:30px; vertical-align:middle; line-height:30px; color:#585858; padding-left:10px;} +.orgSendSearch {border:1px solid #dddddd; outline:none; width:262px; height:22px; padding-left:10px; float:left;} + +/*文本描述展开高度*/ +.maxh360 {max-height: 810px;} +.lh18 { line-height: 18px;} + +/*151228样式更新*/ +.menuSetting {background:url(../images/hwork_icon.png) -5px -132px no-repeat; display:inline-block; width:20px; height:20px;} +.boxShadow {box-shadow:0px 2px 8px rgba(146, 153, 169, 0.5);} +a.greyBtn{ display:inline-block; background:#f2f3f3; padding:0px 5px; height:20px; border:1px solid #d3d3d3; color:#888888; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} +a:hover.greyBtn{border:1px solid #888888; } +a.blueBtn{ display:inline-block; background:#269ac9; padding:0px 5px; height:20px; border:1px solid #269ac9; color:#ffffff; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} +a.blueBtn:hover {background-color:#298fbd;} +a.cancelBtn{ display:inline-block; background:#c1c1c1; padding:0px 5px; height:20px; border:1px solid #d3d3d3; color:#ffffff; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} +a.cancelBtn:hover {background:#888888;} +a.userFollow{ display:inline-block; width:55px; height:20px; border:1px solid #d3d3d3; color:#888888; background:#f2f3f3 url(../images/homepage_icon2.png) -9px -6px no-repeat; padding-left:25px; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} +a:hover.userFollow{border:1px solid #888888; } +a.userCancel{ display:inline-block; width:55px; height:20px; border:1px solid #d3d3d3; color:#888888; background:#f2f3f3 url(../images/homepage_icon2.png) -177px -6px no-repeat; padding-left:25px; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} +a:hover.userCancel{border:1px solid #888888; } +.pAbsolute {position:absolute; z-index:999;} +.userAvatarWrap {width:50px; height:50px; position:relative; border:1px solid #cbcbcb; padding: 2px;} +.userAvatarWrap:hover {border:1px solid #269ac9;} +.mr27 {margin-right:27px;} +.userCard {width:208px; border:1px solid #dddddd; background-color:#ffffff; margin-top:10px; padding:15px; top:-176px; left:-95px; position:absolute; z-index:999; display:none;} +.userCard font {display:block; border-width:8px; position:absolute; bottom:-16px; left:110px; border-style:solid dashed dashed dashed; border-color:#FFF transparent transparent transparent; font-size:0; line-height:0;} +.userCard em {display:block; border-width:8px; position:absolute; bottom:-17px; left:110px; border-style:solid dashed dashed dashed; border-color:#eaeaea transparent transparent transparent; font-size:0; line-height:0;} +.userCardM {width:201px; height:20px; border:1px solid #dddddd; resize:none;} .resourceCopy {padding:0px; margin:0px; width:12px; height:12px; display:inline-block;} \ No newline at end of file From 7d663ce66fc053c08249846c1419c49b8fc0ace6 Mon Sep 17 00:00:00 2001 From: cxt Date: Fri, 8 Jan 2016 14:53:12 +0800 Subject: [PATCH 15/18] =?UTF-8?q?=E5=8A=A8=E6=80=81=E5=86=85=E5=AE=B9?= =?UTF-8?q?=E7=BB=9F=E4=B8=80=E9=AB=98=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/blog_comments/reply.js.erb | 18 +--------- app/views/blogs/_article.html.erb | 5 ++- app/views/blogs/_article_list.html.erb | 16 --------- app/views/boards/_course_show_detail.html.erb | 16 --------- .../boards/_project_show_detail.html.erb | 16 --------- app/views/courses/_course_activity.html.erb | 16 --------- app/views/issues/_list.html.erb | 16 --------- app/views/messages/reply.js.erb | 18 +--------- .../_org_course_homework.html.erb | 7 ++-- .../_org_course_message.html.erb | 5 ++- .../organizations/_org_course_news.html.erb | 7 ++-- .../organizations/_org_course_poll.html.erb | 7 ++-- .../organizations/_org_project_issue.html.erb | 5 ++- .../_org_subfield_message.html.erb | 7 ++-- .../organizations/_project_message.html.erb | 7 ++-- app/views/projects/_attachment_acts.html.erb | 7 ++-- .../projects/_project_activities.html.erb | 16 --------- app/views/projects/_project_news.html.erb | 7 ++-- app/views/users/_course_homework.html.erb | 7 ++-- app/views/users/_course_message.html.erb | 5 ++- app/views/users/_course_news.html.erb | 7 ++-- app/views/users/_course_poll.html.erb | 7 ++-- app/views/users/_project_issue.html.erb | 5 ++- app/views/users/_project_message.html.erb | 9 ++--- app/views/users/_user_activities.html.erb | 16 --------- app/views/users/_user_blog.html.erb | 7 ++-- .../users/_user_homework_detail.html.erb | 7 ++-- app/views/users/_user_homework_list.html.erb | 16 --------- public/javascripts/application.js | 35 +++++++++++++++++++ 29 files changed, 122 insertions(+), 195 deletions(-) diff --git a/app/views/blog_comments/reply.js.erb b/app/views/blog_comments/reply.js.erb index fe46d870c..2a4e71f1c 100644 --- a/app/views/blog_comments/reply.js.erb +++ b/app/views/blog_comments/reply.js.erb @@ -5,20 +5,4 @@ $("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'blogs/article', :locals => {:activity => @article,:user_activity_id =>@user_activity_id}) %>"); //init_activity_KindEditor_data(<%#= @user_activity_id%>,"","87%", 'UserActivity'); <% end %> -init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%", 'UserActivity'); -showNormalImage('activity_description_<%= @user_activity_id %>'); -if($("#intro_content_<%= @user_activity_id %>").height() > 810) { - $("#intro_content_show_<%= @user_activity_id %>").show(); -} -$("#intro_content_show_<%= @user_activity_id %>").click(function(){ - $("#activity_description_<%= @user_activity_id %>").toggleClass("maxh360"); - $("#activity_description_<%= @user_activity_id%>").toggleClass("lh18"); - $("#intro_content_show_<%= @user_activity_id %>").hide(); - $("#intro_content_hide_<%= @user_activity_id %>").show(); -}); -$("#intro_content_hide_<%= @user_activity_id %>").click(function(){ - $("#activity_description_<%= @user_activity_id %>").toggleClass("maxh360"); - $("#activity_description_<%= @user_activity_id%>").toggleClass("lh18"); - $("#intro_content_hide_<%= @user_activity_id %>").hide(); - $("#intro_content_show_<%= @user_activity_id %>").show(); -}); \ No newline at end of file +init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%", 'UserActivity'); \ No newline at end of file diff --git a/app/views/blogs/_article.html.erb b/app/views/blogs/_article.html.erb index 99c743a96..8d366a05a 100644 --- a/app/views/blogs/_article.html.erb +++ b/app/views/blogs/_article.html.erb @@ -57,7 +57,7 @@
    发帖时间:<%= format_time(activity.created_on) %>
    -
    +
    <% if activity.parent_id.nil? %> <%= activity.content.to_s.html_safe%> @@ -176,3 +176,6 @@ <% end %>
    + diff --git a/app/views/blogs/_article_list.html.erb b/app/views/blogs/_article_list.html.erb index 62f1391b0..534c33609 100644 --- a/app/views/blogs/_article_list.html.erb +++ b/app/views/blogs/_article_list.html.erb @@ -75,22 +75,6 @@ $(function () { init_activity_KindEditor_data(<%= topic.id%>, null, "87%", "<%=topic.class.to_s%>"); - showNormalImage('activity_description_<%= topic.id %>'); - if($("#intro_content_<%= topic.id %>").height() > 810) { - $("#intro_content_show_<%= topic.id %>").show(); - } - $("#intro_content_show_<%= topic.id %>").click(function(){ - $("#activity_description_<%= topic.id %>").toggleClass("maxh360"); - $("#activity_description_<%= topic.id%>").toggleClass("lh18"); - $("#intro_content_show_<%= topic.id %>").hide(); - $("#intro_content_hide_<%= topic.id %>").show(); - }); - $("#intro_content_hide_<%= topic.id %>").click(function(){ - $("#activity_description_<%= topic.id %>").toggleClass("maxh360"); - $("#activity_description_<%= topic.id%>").toggleClass("lh18"); - $("#intro_content_hide_<%= topic.id %>").hide(); - $("#intro_content_show_<%= topic.id %>").show(); - }); }); <% if topic %> diff --git a/app/views/boards/_course_show_detail.html.erb b/app/views/boards/_course_show_detail.html.erb index 8f50905c6..804f6543e 100644 --- a/app/views/boards/_course_show_detail.html.erb +++ b/app/views/boards/_course_show_detail.html.erb @@ -41,22 +41,6 @@ $(function () { init_activity_KindEditor_data(<%= topic.id%>, null, "87%"); - showNormalImage('activity_description_<%= topic.id %>'); - if($("#intro_content_<%= topic.id %>").height() > 810) { - $("#intro_content_show_<%= topic.id %>").show(); - } - $("#intro_content_show_<%= topic.id %>").click(function(){ - $("#activity_description_<%= topic.id %>").toggleClass("maxh360"); - $("#activity_description_<%= topic.id%>").toggleClass("lh18"); - $("#intro_content_show_<%= topic.id %>").hide(); - $("#intro_content_hide_<%= topic.id %>").show(); - }); - $("#intro_content_hide_<%= topic.id %>").click(function(){ - $("#activity_description_<%= topic.id %>").toggleClass("maxh360"); - $("#activity_description_<%= topic.id%>").toggleClass("lh18"); - $("#intro_content_hide_<%= topic.id %>").hide(); - $("#intro_content_show_<%= topic.id %>").show(); - }); }); <% if topic %> diff --git a/app/views/boards/_project_show_detail.html.erb b/app/views/boards/_project_show_detail.html.erb index 5b266b90c..367f0552c 100644 --- a/app/views/boards/_project_show_detail.html.erb +++ b/app/views/boards/_project_show_detail.html.erb @@ -40,22 +40,6 @@ $(function () { init_activity_KindEditor_data(<%= topic.id%>, null, "87%"); - showNormalImage('activity_description_<%= topic.id %>'); - if($("#intro_content_<%= topic.id %>").height() > 810) { - $("#intro_content_show_<%= topic.id %>").show(); - } - $("#intro_content_show_<%= topic.id %>").click(function(){ - $("#activity_description_<%= topic.id %>").toggleClass("maxh360"); - $("#activity_description_<%= topic.id%>").toggleClass("lh18"); - $("#intro_content_show_<%= topic.id %>").hide(); - $("#intro_content_hide_<%= topic.id %>").show(); - }); - $("#intro_content_hide_<%= topic.id %>").click(function(){ - $("#activity_description_<%= topic.id %>").toggleClass("maxh360"); - $("#activity_description_<%= topic.id%>").toggleClass("lh18"); - $("#intro_content_hide_<%= topic.id %>").hide(); - $("#intro_content_show_<%= topic.id %>").show(); - }); }); <% if topic %> diff --git a/app/views/courses/_course_activity.html.erb b/app/views/courses/_course_activity.html.erb index ea41787d5..f0ae33996 100644 --- a/app/views/courses/_course_activity.html.erb +++ b/app/views/courses/_course_activity.html.erb @@ -73,22 +73,6 @@ $(function () { init_activity_KindEditor_data(<%= activity.id%>, null, "87%", "<%= activity.class.to_s %>"); - showNormalImage('activity_description_<%= activity.id %>'); - if($("#intro_content_<%= activity.id %>").height() > 360) { - $("#intro_content_show_<%= activity.id %>").show(); - } - $("#intro_content_show_<%= activity.id %>").click(function(){ - $("#activity_description_<%= activity.id %>").toggleClass("maxh360"); - $("#activity_description_<%= activity.id%>").toggleClass("lh18"); - $("#intro_content_show_<%= activity.id %>").hide(); - $("#intro_content_hide_<%= activity.id %>").show(); - }); - $("#intro_content_hide_<%= activity.id %>").click(function(){ - $("#activity_description_<%= activity.id %>").toggleClass("maxh360"); - $("#activity_description_<%= activity.id%>").toggleClass("lh18"); - $("#intro_content_hide_<%= activity.id %>").hide(); - $("#intro_content_show_<%= activity.id %>").show(); - }); }); <% if activity && activity.course_act%> diff --git a/app/views/issues/_list.html.erb b/app/views/issues/_list.html.erb index 58fbda6d6..e47967099 100644 --- a/app/views/issues/_list.html.erb +++ b/app/views/issues/_list.html.erb @@ -19,22 +19,6 @@ $(function () { init_activity_KindEditor_data(<%= issue.id%>, null, "87%", "<%= issue.class.name %>"); - showNormalImage('activity_description_<%= issue.id %>'); - if ($("#intro_content_<%= issue.id %>").height() > 360) { - $("#intro_content_show_<%= issue.id %>").show(); - } - $("#intro_content_show_<%= issue.id %>").click(function () { - $("#activity_description_<%= issue.id %>").toggleClass("maxh360"); - $("#activity_description_<%= issue.id%>").toggleClass("lh18"); - $("#intro_content_show_<%= issue.id %>").hide(); - $("#intro_content_hide_<%= issue.id %>").show(); - }); - $("#intro_content_hide_<%= issue.id %>").click(function () { - $("#activity_description_<%= issue.id %>").toggleClass("maxh360"); - $("#activity_description_<%= issue.id%>").toggleClass("lh18"); - $("#intro_content_hide_<%= issue.id %>").hide(); - $("#intro_content_show_<%= issue.id %>").show(); - }); }); <%= render :partial => 'users/project_issue', :locals => {:activity => issue, :user_activity_id => issue.id} %> diff --git a/app/views/messages/reply.js.erb b/app/views/messages/reply.js.erb index ea848439f..f61de74f0 100644 --- a/app/views/messages/reply.js.erb +++ b/app/views/messages/reply.js.erb @@ -5,20 +5,4 @@ <% elsif @org_subfield %> $("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'organizations/org_subfield_message', :locals => {:activity => @topic,:user_activity_id =>@user_activity_id}) %>"); <%end%> -init_activity_KindEditor_data(<%= @user_activity_id %>,"","87%", "UserActivity"); -showNormalImage('activity_description_<%= @user_activity_id %>'); -if($("#intro_content_<%= @user_activity_id %>").height() > 810) { - $("#intro_content_show_<%= @user_activity_id %>").show(); -} -$("#intro_content_show_<%= @user_activity_id %>").click(function(){ - $("#activity_description_<%= @user_activity_id %>").toggleClass("maxh360"); - $("#activity_description_<%= @user_activity_id %>").toggleClass("lh18"); - $("#intro_content_show_<%= @user_activity_id %>").hide(); - $("#intro_content_hide_<%= @user_activity_id %>").show(); -}); -$("#intro_content_hide_<%= @user_activity_id %>").click(function(){ - $("#activity_description_<%= @user_activity_id %>").toggleClass("maxh360"); - $("#activity_description_<%= @user_activity_id %>").toggleClass("lh18"); - $("#intro_content_hide_<%= @user_activity_id %>").hide(); - $("#intro_content_show_<%= @user_activity_id %>").show(); -}); \ No newline at end of file +init_activity_KindEditor_data(<%= @user_activity_id %>,"","87%", "UserActivity"); \ No newline at end of file diff --git a/app/views/organizations/_org_course_homework.html.erb b/app/views/organizations/_org_course_homework.html.erb index 41e392b33..de87c5fdf 100644 --- a/app/views/organizations/_org_course_homework.html.erb +++ b/app/views/organizations/_org_course_homework.html.erb @@ -92,7 +92,7 @@
    匿评截止时间:<%= activity.homework_detail_manual.evaluation_end.to_s %> 23:59
    <% end %>
    -
    +
    <%= activity.description.html_safe %>
    @@ -291,4 +291,7 @@
    -
    \ No newline at end of file +
    + \ No newline at end of file diff --git a/app/views/organizations/_org_course_message.html.erb b/app/views/organizations/_org_course_message.html.erb index 9ca8f5d10..aec4754a0 100644 --- a/app/views/organizations/_org_course_message.html.erb +++ b/app/views/organizations/_org_course_message.html.erb @@ -30,7 +30,7 @@
    发帖时间:<%= format_time(activity.created_on) %>
    -
    +
    <% if activity.parent_id.nil? %> <%= activity.content.to_s.html_safe%> @@ -138,3 +138,6 @@ <% end %>
    + diff --git a/app/views/organizations/_org_course_news.html.erb b/app/views/organizations/_org_course_news.html.erb index 475a982e5..abb984efe 100644 --- a/app/views/organizations/_org_course_news.html.erb +++ b/app/views/organizations/_org_course_news.html.erb @@ -22,7 +22,7 @@
    发布时间:<%= format_time(activity.created_on) %>
    -
    +
    <%= activity.description.html_safe %>
    @@ -103,4 +103,7 @@
    -
    \ No newline at end of file +
    + \ No newline at end of file diff --git a/app/views/organizations/_org_course_poll.html.erb b/app/views/organizations/_org_course_poll.html.erb index c363909d9..d8907f4a9 100644 --- a/app/views/organizations/_org_course_poll.html.erb +++ b/app/views/organizations/_org_course_poll.html.erb @@ -29,7 +29,7 @@
    发布时间:<%= format_time(activity.published_at) %>
    -
    +
    <%= activity.polls_description.html_safe %>
    @@ -53,4 +53,7 @@
    -<% end %> \ No newline at end of file +<% end %> + \ No newline at end of file diff --git a/app/views/organizations/_org_project_issue.html.erb b/app/views/organizations/_org_project_issue.html.erb index e29994967..681b604f8 100644 --- a/app/views/organizations/_org_project_issue.html.erb +++ b/app/views/organizations/_org_project_issue.html.erb @@ -33,7 +33,7 @@ <%=format_time(activity.created_on) %>
    -
    +
    <% if activity.description? %> <%= textAreailizable activity, :description, :attachments => activity.attachments %> @@ -150,3 +150,6 @@
    + diff --git a/app/views/organizations/_org_subfield_message.html.erb b/app/views/organizations/_org_subfield_message.html.erb index e6bee8000..7ffdfda6b 100644 --- a/app/views/organizations/_org_subfield_message.html.erb +++ b/app/views/organizations/_org_subfield_message.html.erb @@ -26,7 +26,7 @@
    时间:<%= format_time(activity.created_on) %>
    -
    +
    <% if activity.parent_id.nil? %> <%= activity.content.to_s.html_safe%> @@ -115,4 +115,7 @@
    -
    \ No newline at end of file +
    + \ No newline at end of file diff --git a/app/views/organizations/_project_message.html.erb b/app/views/organizations/_project_message.html.erb index 037dfe61b..cac3c8dec 100644 --- a/app/views/organizations/_project_message.html.erb +++ b/app/views/organizations/_project_message.html.erb @@ -26,7 +26,7 @@
    时间:<%= format_time(activity.created_on) %>
    -
    +
    <% if activity.parent_id.nil? %> <%= activity.content.to_s.html_safe%> @@ -115,4 +115,7 @@
    -
    \ No newline at end of file + + \ No newline at end of file diff --git a/app/views/projects/_attachment_acts.html.erb b/app/views/projects/_attachment_acts.html.erb index bb62eee55..737473e76 100644 --- a/app/views/projects/_attachment_acts.html.erb +++ b/app/views/projects/_attachment_acts.html.erb @@ -21,7 +21,7 @@ 发布时间:<%= format_time(activity.created_on) %>

    <%= textAreailizable activity, :description %>

    -
    +
    <%#= activity.description.html_safe %>
    @@ -32,4 +32,7 @@
    -
    \ No newline at end of file + + \ No newline at end of file diff --git a/app/views/projects/_project_activities.html.erb b/app/views/projects/_project_activities.html.erb index 781b65810..2926747e4 100644 --- a/app/views/projects/_project_activities.html.erb +++ b/app/views/projects/_project_activities.html.erb @@ -33,22 +33,6 @@ $(function () { init_activity_KindEditor_data(<%= activity.id%>, null, "87%", "<%= activity.class.to_s %>"); - showNormalImage('activity_description_<%= activity.id %>'); - if ($("#intro_content_<%= activity.id %>").height() > 810) { - $("#intro_content_show_<%= activity.id %>").show(); - } - $("#intro_content_show_<%= activity.id %>").click(function () { - $("#activity_description_<%= activity.id %>").toggleClass("maxh360"); - $("#activity_description_<%= activity.id%>").toggleClass("lh18"); - $("#intro_content_show_<%= activity.id %>").hide(); - $("#intro_content_hide_<%= activity.id %>").show(); - }); - $("#intro_content_hide_<%= activity.id %>").click(function () { - $("#activity_description_<%= activity.id %>").toggleClass("maxh360"); - $("#activity_description_<%= activity.id%>").toggleClass("lh18"); - $("#intro_content_hide_<%= activity.id %>").hide(); - $("#intro_content_show_<%= activity.id %>").show(); - }); }); diff --git a/app/views/projects/_project_news.html.erb b/app/views/projects/_project_news.html.erb index 919abc11e..fe35d2698 100644 --- a/app/views/projects/_project_news.html.erb +++ b/app/views/projects/_project_news.html.erb @@ -22,7 +22,7 @@
    发布时间:<%= format_time(activity.created_on) %>
    -
    +
    <%= activity.description.html_safe %>
    @@ -103,4 +103,7 @@
    - \ No newline at end of file + + \ No newline at end of file diff --git a/app/views/users/_course_homework.html.erb b/app/views/users/_course_homework.html.erb index 33b61923e..17d2ace69 100644 --- a/app/views/users/_course_homework.html.erb +++ b/app/views/users/_course_homework.html.erb @@ -92,7 +92,7 @@
    匿评截止时间:<%= activity.homework_detail_manual.evaluation_end.to_s %> 23:59
    <% end %> -
    +
    <%= activity.description.html_safe %>
    @@ -298,4 +298,7 @@
    - \ No newline at end of file + + \ No newline at end of file diff --git a/app/views/users/_course_message.html.erb b/app/views/users/_course_message.html.erb index 22a4bcf57..562427c43 100644 --- a/app/views/users/_course_message.html.erb +++ b/app/views/users/_course_message.html.erb @@ -30,7 +30,7 @@
    发帖时间:<%= format_time(activity.created_on) %>
    -
    +
    <% if activity.parent_id.nil? %> <%= activity.content.to_s.html_safe%> @@ -159,3 +159,6 @@ <% end %>
    + diff --git a/app/views/users/_course_news.html.erb b/app/views/users/_course_news.html.erb index 475a982e5..abb984efe 100644 --- a/app/views/users/_course_news.html.erb +++ b/app/views/users/_course_news.html.erb @@ -22,7 +22,7 @@
    发布时间:<%= format_time(activity.created_on) %>
    -
    +
    <%= activity.description.html_safe %>
    @@ -103,4 +103,7 @@
    -
    \ No newline at end of file + + \ No newline at end of file diff --git a/app/views/users/_course_poll.html.erb b/app/views/users/_course_poll.html.erb index 48ab5d2f2..6ecd72cfb 100644 --- a/app/views/users/_course_poll.html.erb +++ b/app/views/users/_course_poll.html.erb @@ -29,7 +29,7 @@
    发布时间:<%= format_time(activity.published_at) %>
    -
    +
    <%= activity.polls_description.html_safe %>
    @@ -53,4 +53,7 @@
    -<% end %> \ No newline at end of file +<% end %> + \ No newline at end of file diff --git a/app/views/users/_project_issue.html.erb b/app/views/users/_project_issue.html.erb index cd9704186..a83258737 100644 --- a/app/views/users/_project_issue.html.erb +++ b/app/views/users/_project_issue.html.erb @@ -45,7 +45,7 @@ <%=format_time(activity.created_on) %> -
    +
    <% if activity.description? %> <%= textAreailizable activity, :description, :attachments => activity.attachments %> @@ -163,3 +163,6 @@
    + diff --git a/app/views/users/_project_message.html.erb b/app/views/users/_project_message.html.erb index 5a9f7e398..d248eb845 100644 --- a/app/views/users/_project_message.html.erb +++ b/app/views/users/_project_message.html.erb @@ -31,7 +31,7 @@
    发帖时间:<%= format_time(activity.created_on) %>
    -
    +
    <% if activity.parent_id.nil? %> <%= activity.content.to_s.html_safe%> @@ -146,7 +146,8 @@
    - -
    -
    \ No newline at end of file + + \ No newline at end of file diff --git a/app/views/users/_user_activities.html.erb b/app/views/users/_user_activities.html.erb index bb1a42f58..2941394da 100644 --- a/app/views/users/_user_activities.html.erb +++ b/app/views/users/_user_activities.html.erb @@ -40,22 +40,6 @@ $(function() { init_activity_KindEditor_data(<%= user_activity.id%>, null, "87%", "<%=user_activity.class.to_s%>"); - showNormalImage('activity_description_<%= user_activity.id %>'); - if($("#intro_content_<%= user_activity.id %>").height() > 360) { - $("#intro_content_show_<%= user_activity.id %>").show(); - } - $("#intro_content_show_<%= user_activity.id %>").click(function(){ - $("#activity_description_<%= user_activity.id %>").toggleClass("maxh360"); - $("#activity_description_<%= user_activity.id%>").toggleClass("lh18"); - $("#intro_content_show_<%= user_activity.id %>").hide(); - $("#intro_content_hide_<%= user_activity.id %>").show(); - }); - $("#intro_content_hide_<%= user_activity.id %>").click(function(){ - $("#activity_description_<%= user_activity.id %>").toggleClass("maxh360"); - $("#activity_description_<%= user_activity.id%>").toggleClass("lh18"); - $("#intro_content_hide_<%= user_activity.id %>").hide(); - $("#intro_content_show_<%= user_activity.id %>").show(); - }); }); <% unless user_activity.act_type == "ProjectCreateInfo" %> diff --git a/app/views/users/_user_blog.html.erb b/app/views/users/_user_blog.html.erb index c1219eb25..50bddb65f 100644 --- a/app/views/users/_user_blog.html.erb +++ b/app/views/users/_user_blog.html.erb @@ -28,7 +28,7 @@
    发布时间:<%= format_time(activity.created_on) %>
    -
    +
    <%= activity.content.html_safe %>
    @@ -116,4 +116,7 @@
    <% end %>
    - \ No newline at end of file + + \ No newline at end of file diff --git a/app/views/users/_user_homework_detail.html.erb b/app/views/users/_user_homework_detail.html.erb index b644d562b..af0db004f 100644 --- a/app/views/users/_user_homework_detail.html.erb +++ b/app/views/users/_user_homework_detail.html.erb @@ -95,7 +95,7 @@ <% end %> -
    +
    <%= homework_common.description.html_safe %>
    @@ -301,4 +301,7 @@
    - \ No newline at end of file + + \ No newline at end of file diff --git a/app/views/users/_user_homework_list.html.erb b/app/views/users/_user_homework_list.html.erb index f00900488..efe9216df 100644 --- a/app/views/users/_user_homework_list.html.erb +++ b/app/views/users/_user_homework_list.html.erb @@ -18,22 +18,6 @@