Merge branch 'develop' into dev_cs

This commit is contained in:
caishi 2017-10-12 09:22:39 +08:00
commit 349b259c0e
31 changed files with 588 additions and 339 deletions

View File

@ -536,6 +536,21 @@ class AccountController < ApplicationController
redirect_to professional_certification_account_path
end
# 修改资料时判断学号是否已使用
def check_user_student_id
data = {result:0, account:""}
if params[:student_id] && params[:school_id]
if UserExtensions.where("student_id = '#{params[:student_id]}' and school_id = #{params[:school_id]} and user_id != #{User.current.id}").count > 0
user = User.where(:id => UserExtensions.where("student_id = '#{params[:student_id]}' and school_id = #{params[:school_id]} and user_id != #{User.current.id}").map(&:user_id)).first
data[:account] = user.mail.blank? ? user.user_phone : user.user_mail
else
data[:result] = 1
end
end
render :json => data
end
# 实名认证时判断学号是否已使用
def check_student_id
data = {result:0, account:""}
if params[:student_id] && params[:school_id]
@ -555,6 +570,7 @@ class AccountController < ApplicationController
render :json => data
end
# 实名认证时判断证件号码是否已使用
def check_id_number
data = {result:0, account:""}
if params[:id_number]

View File

@ -106,7 +106,7 @@ class CoursesController < ApplicationController
end
def shixun_statistics
@homeworks = @course.homework_commons.where("homework_type = 4").order("created_at asc")
@homeworks = @course.homework_commons.where("homework_type = 4 and publish_time < '#{Time.now}'").order("publish_time desc")
filename="#{format_date(Time.now)}_#{@course.teacher.show_real_name.to_s}_#{@course.name}_实训数据报告";
respond_to do |format|
@ -2007,6 +2007,83 @@ class CoursesController < ApplicationController
blue = Spreadsheet::Format.new :color => :blue, :weight => :bold, :size => 10
black = Spreadsheet::Format.new :color => :black, :weight => :bold, :size => 10
current_row = 0
sheet = book.create_worksheet :name => "学员统计"
sheet.row(0).default_format = blue
sheet.row(0).concat(["学生id","学生姓名","作业编号","作业/实训名称","关卡"," 经验值","金币","评测历史","评测时间","评测结果"])
course.student.each_with_index do |course, i|
# 总统计
count_exp_score = 0
count_gold_score = 0
count_test = 0
count_time = 0
game_count = 0
# end
user = course.student
current_row += 1
sheet[current_row, 0] = user.login
sheet[current_row, 1] = user.show_real_name
homeworks.each_with_index do |homework, j|
# 关卡统计
count_game_exp_score = 0
count_game_gold_score = 0
count_game_test = 0
count_game_time = 0
# end
sheet[current_row, 2] = "# #{j + 1}"
sheet[current_row, 3] = homework.name
shixun = homework.homework_commons_shixuns.shixun if homework.homework_commons_shixuns
if shixun
shixun.challenges.each_with_index do |challenge, k|
sheet[current_row, 4] = "#{k+1}"
games = Game.where(:challenge_id => challenge.id, :user_id => user.id)
game_count = game_count + games.count
if games.count > 0
games.each do |game|
sheet[current_row, 5] = game.final_score ? "+#{game.final_score.to_s}" : "--"
sheet[current_row, 6] = game.final_score ? (game.answer_open? ? "#{-challenge.score.to_i}" : "+#{game.final_score.to_i}") : "--"
count_exp_score += (game.final_score ? game.final_score.to_i : 0)
count_gold_score += (game.final_score ? (game.answer_open? ? -challenge.score.to_i : game.final_score.to_i) : 0)
count_game_exp_score += (game.final_score ? game.final_score.to_i : 0)
count_game_gold_score += (game.final_score ? (game.answer_open? ? -challenge.score.to_i : game.final_score.to_i) : 0)
count = game.outputs.count
if count > 0
outputs = game.outputs.where(:test_set_position => 1).reorder("created_at asc")
outputs.each_with_index do |output, k|
count_test += 1
count_game_test += 1
sheet[current_row, 7] = "#{k+1}次评测"
sheet[current_row, 8] = k == 0 ? game_spend_time((output.created_at - game.created_at).to_i) : game_spend_time((output.created_at - outputs[k-1].created_at).to_i)
count_time = count_time + (k == 0 ? (output.created_at - game.created_at).to_i : (output.created_at - outputs[k-1].created_at).to_i)
count_game_time += (k == 0 ? (output.created_at - game.created_at).to_i : (output.created_at - outputs[k-1].created_at).to_i)
sheet[current_row, 9] = game.outputs.where(:query_index => output.query_index).select{|ou| ou.result == false}.count > 0 ? "失败" : "成功"
current_row += 1
end
else
current_row += 1
end
end
else
current_row += 1
end
end
end
sheet[current_row,4] = "合计"
sheet[current_row,5] = count_game_exp_score >= 0 ? "+#{count_game_exp_score}" : "-#{count_game_exp_score}"
sheet[current_row,6] = count_game_gold_score >= 0 ? "+#{count_game_gold_score}" : "#{count_game_gold_score}"
sheet[current_row,7] = "#{count_game_test}次评测"
sheet[current_row,8] = game_spend_time((count_game_time == 0 ? 0 : (count_game_time / count_test)).to_i)+"/次"
sheet.row(current_row).default_format = black
current_row += 1
end
sheet[current_row,2] = "合计"
sheet[current_row,4] = "#{game_count}"
sheet[current_row,5] = count_exp_score >= 0 ? "+#{count_exp_score}" : "-#{count_exp_score}"
sheet[current_row,6] = count_gold_score >= 0 ? "+#{count_gold_score}" : "#{count_gold_score}"
sheet[current_row,7] = "#{count_test}次评测"
sheet[current_row,8] = game_spend_time((count_time == 0 ? 0 : (count_time / count_test)).to_i)+"/次"
sheet.row(current_row).default_format = black
end
homeworks.each_with_index do |homework, i|
sheet = book.create_worksheet :name => "#{i+1}次作业"
sheet.row(0).default_format = blue
@ -2043,14 +2120,14 @@ class CoursesController < ApplicationController
user = game.user
sheet[current_row,6] = user.login
sheet[current_row,7] = user.show_real_name
sheet[current_row,8] = game.final_score ? "+#{game.final_score.to_s} 经验值" : "--"
sheet[current_row,8] = game.final_score ? "+#{game.final_score.to_s}" : "--"
count_exp_score = count_exp_score + (game.final_score ? game.final_score.to_i : 0)
sheet[current_row,9] = game.final_score ? (game.answer_open? ? "#{-challenge.score.to_i} 金币" : "+#{game.final_score.to_i} 金币") : "--"
sheet[current_row,9] = game.final_score ? (game.answer_open? ? "#{-challenge.score.to_i}" : "+#{game.final_score.to_i}") : "--"
count_gold_score = count_gold_score + (game.final_score ? (game.answer_open? ? -challenge.score.to_i : game.final_score.to_i) : 0)
count = game.outputs.count
if count > 0
outputs = game.outputs.where(:test_set_position => 1).order("created_at asc")
outputs = game.outputs.where(:test_set_position => 1).reorder("created_at asc")
outputs.each_with_index do |output, k|
count_test = count_test + 1
sheet[current_row,10] = "#{k+1}次评测"
@ -2069,8 +2146,8 @@ class CoursesController < ApplicationController
sheet[current_row,6] = "合计"
sheet[current_row,7] = games.count.to_s + ""
sheet[current_row,8] = count_exp_score >= 0 ? "+#{count_exp_score} 经验值" : "-#{count_exp_score} 经验值"
sheet[current_row,9] = count_gold_score >= 0 ? "+#{count_gold_score} 金币" : "-#{count_gold_score} 金币"
sheet[current_row,8] = count_exp_score >= 0 ? "+#{count_exp_score}" : "-#{count_exp_score}"
sheet[current_row,9] = count_gold_score >= 0 ? "+#{count_gold_score}" : "#{count_gold_score}"
sheet[current_row,10] = "#{count_test}次评测"
sheet[current_row,11] = game_spend_time((count_time == 0 ? 0 : (count_time / count_test)).to_i)+"/次"
sheet.row(current_row).default_format = black

View File

@ -89,7 +89,7 @@ class GamesController < ApplicationController
# @praise 判断是否点赞
# @tread 判断是否踩
# git_repository_url @myshixun, "Myshixun"
# @st 0 实践任务 1 多选任务 2 单选任务
# @st 0 实践任务 1 选择题任务
def show
# 展示全部实训
@is_subject = params[:is_subject]

View File

@ -31,22 +31,22 @@ class HomeworkCommonController < ApplicationController
end
if @order.blank?
if @is_teacher
@homework_commons = @homework_commons.order("created_at desc")
@homework_commons = @homework_commons.order("publish_time desc")
else
@homework_commons = @homework_commons.where("publish_time <= '#{Time.now}'").order("created_at desc")
@homework_commons = @homework_commons.where("publish_time <= '#{Time.now}'").order("publish_time desc")
end
else
case @order
when '1'
@homework_commons = @homework_commons.includes(:homework_detail_manual).where("homework_detail_manuals.comment_status = #{@order} and end_time > '#{Time.now}'").order("homework_commons.created_at desc")
@homework_commons = @homework_commons.includes(:homework_detail_manual).where("homework_detail_manuals.comment_status = #{@order} and end_time > '#{Time.now}'").order("homework_commons.publish_time desc")
when '3'
@homework_commons = @homework_commons.includes(:homework_detail_manual).where("homework_detail_manuals.comment_status = #{@order} and homework_detail_manuals.evaluation_end > '#{Time.now}'").order("homework_commons.created_at desc")
@homework_commons = @homework_commons.includes(:homework_detail_manual).where("homework_detail_manuals.comment_status = #{@order} and homework_detail_manuals.evaluation_end > '#{Time.now}'").order("homework_commons.publish_time desc")
when '4'
@homework_commons = @homework_commons.includes(:homework_detail_manual).where("(homework_detail_manuals.comment_status = #{@order} and homework_detail_manuals.appeal_time > '#{Time.now}')").order("homework_commons.created_at desc")
@homework_commons = @homework_commons.includes(:homework_detail_manual).where("(homework_detail_manuals.comment_status = #{@order} and homework_detail_manuals.appeal_time > '#{Time.now}')").order("homework_commons.publish_time desc")
when '5'
@homework_commons = @homework_commons.includes(:homework_detail_manual).where("(homework_detail_manuals.comment_status = #{@order} and archive_time > '#{Time.now}')").order("homework_commons.created_at desc")
@homework_commons = @homework_commons.includes(:homework_detail_manual).where("(homework_detail_manuals.comment_status = #{@order} and archive_time > '#{Time.now}')").order("homework_commons.publish_time desc")
else
@homework_commons = @homework_commons.includes(:homework_detail_manual).where("homework_detail_manuals.comment_status = #{@order}").order("homework_commons.created_at desc")
@homework_commons = @homework_commons.includes(:homework_detail_manual).where("homework_detail_manuals.comment_status = #{@order}").order("homework_commons.publish_time desc")
end
end
@is_student = User.current.logged? && (User.current.admin? || (User.current.member_of_course?(@course) && !@is_teacher))

View File

@ -823,7 +823,7 @@ end
@courselist= @courselist.where("name like '%#{search}%'")
end
end
@courselist = @courselist.order("created_at #{@sx_order}")
@courselist = @courselist.order("id #{@sx_order}")
@courselist_count = @courselist.count
limit = 20
@is_remote = true
@ -1591,7 +1591,7 @@ end
else #同意
shixun.update_column('status', 2)
apply_action.update_attributes(:status => 1, :dealer_id => User.current.id)
shixun_modify_status_without_publish shixun, 1
add_shixun_modify_status shixun, 1
# 实训发布后则不允许修改代码
# g = Gitlab.client
# shixun.shixun_members.each do |member|

View File

@ -283,6 +283,9 @@ class MessagesController < ApplicationController
#@replies = @replies[@page * @limit..@page * @limit + 9]
@reply = Message.new()
@user_activity_id = params[:user_activity_id].blank? ? @topic.id : params[:user_activity_id].to_i
if !params[:user_activity_id].blank? && params[:user_activity_id].to_i != @topic.id
@topic.update_attributes(:visits => @topic.visits + 1)
end
respond_to do |format|
format.js
end

View File

@ -235,7 +235,19 @@ class MyController < ApplicationController
if @user.save && @se.save
reward_grade(@user, @user.id, 'Account', 500)
# 修改邮箱的时候同步修改到gitlab
if @se.identity == 1
school_ids = School.where(:auto_users_trial => 1).map(&:id)
if !@se.student_id.nil? && @se.student_id != "" && !@se.school.nil? && school_ids.include?(@se.school_id)
apply_action = ApplyAction.where(:user_id => @user.id, :container_type => "TrialAuthorization", :status => 0).first
unless apply_action.blank?
@user.update_attributes(:certification => 1)
apply_action.update_attributes(:status => 1)
end
end
end
# 修改邮箱的时候同步修改到gitlab
# if changed_mail || changed_login
# g = Gitlab.client
# s = Trustie::Gitlab::Sync.new

View File

@ -367,16 +367,26 @@ class ShixunsController < ApplicationController
# jenkins回调脚本
# gameID 及实训ID
def publish
@status = 0
@position = ""
begin
@shixun.update_attributes!(:status => 1)
apply = ApplyAction.where(:container_type => "ApplyShixun", :container_id => @shixun.id).order("created_at desc").first
if apply && apply.status == 0
@status = 0
else
ApplyAction.create(:container_type => "ApplyShixun", :container_id => @shixun.id, :user_id => User.current.id, :status => 0)
notes = User.current.show_name.to_s + " 申请发布实训:<a href='#{shixun_path(@shixun)}'>#{@shixun.name}</a>"
JournalsForMessage.create(:jour_id => 1, :jour_type => 'Principal', :user_id => User.current.id, :notes => notes, :private => 1, :reply_id => 0)
@status = 1
@shixun.challenges.each do |challenge|
if challenge.challenge_tags.count == 0
@status = 2
@position = (@position == "" ? @position : (@position + "")) + challenge.position.to_s + ""
end
end
if @status == 0
@shixun.update_attributes!(:status => 1)
apply = ApplyAction.where(:container_type => "ApplyShixun", :container_id => @shixun.id).order("created_at desc").first
if apply && apply.status == 0
@status = 0
else
ApplyAction.create(:container_type => "ApplyShixun", :container_id => @shixun.id, :user_id => User.current.id, :status => 0)
notes = User.current.show_name.to_s + " 申请发布实训:<a href='#{shixun_path(@shixun)}'>#{@shixun.name}</a>"
JournalsForMessage.create(:jour_id => 1, :jour_type => 'Principal', :user_id => User.current.id, :notes => notes, :private => 1, :reply_id => 0)
@status = 1
end
end
rescue Exception => e
@jenkin_error = true
@ -610,23 +620,28 @@ class ShixunsController < ApplicationController
gshixun = g.edit_project(gshixun.id, new_shixun.identifier, new_shixun.identifier)
raise "实训复制失败" if (gshixun.try(:name) != new_shixun.identifier || gshixun.try(:path) != new_shixun.identifier)
new_shixun.update_column(:gpid, gshixun.id)
# 同步复制者至gitlab,必须要求用户绑定了邮箱
ShixunMember.create!(:user_id => User.current.id, :shixun_id => new_shixun.try(:id), :role => 1)
s = Trustie::Gitlab::Sync.new
gid = User.current.try(:gid)
u = g.add_team_member(gshixun.id, gid, 40) # 3代表角色master
# 同步复制合作者,合作者加入到gitlab
unless User.current.manager_of_shixun?(@shixun)
ShixunMember.create!(:user_id => User.current.id, :shixun_id => new_shixun.try(:id), :role => 1)
end
@shixun.shixun_members.each do |shixun_member|
if ShixunMember.where(:shixun_id => new_shixun.try(:id), :user_id => shixun_member.user_id).blank?
ShixunMember.create!(:user_id => shixun_member.try(:user_id), :shixun_id => new_shixun.try(:id),
:role => (shixun_member.try(:user_id) == User.current.id ? 1 : 2))
end
s = Trustie::Gitlab::Sync.new
gid = User.find(shixun_member.user_id).try(:gid)
u = s.g.add_team_member(gshixun.id, gid, 40) # 3代表角色master
if u.blank?
raise("同步Gitlab数据失败")
end
end
# # 同步复制合作者,合作者加入到gitlab
# unless User.current.manager_of_shixun?(@shixun)
# ShixunMember.create!(:user_id => User.current.id, :shixun_id => new_shixun.try(:id), :role => 1)
# end
# @shixun.shixun_members.each do |shixun_member|
# if ShixunMember.where(:shixun_id => new_shixun.try(:id), :user_id => shixun_member.user_id).blank?
# ShixunMember.create!(:user_id => shixun_member.try(:user_id), :shixun_id => new_shixun.try(:id),
# :role => (shixun_member.try(:user_id) == User.current.id ? 1 : 2))
# end
# s = Trustie::Gitlab::Sync.new
# gid = User.find(shixun_member.user_id).try(:gid)
# u = s.g.add_team_member(gshixun.id, gid, 40) # 3代表角色master
# if u.blank?
# raise("同步Gitlab数据失败")
# end
# end
# 同步复制关卡
if @shixun.challenges.present?
@shixun.challenges.each do |challenge|
@ -786,6 +801,8 @@ class ShixunsController < ApplicationController
return
end
Subject.where(:id => @shixun.stage_shixuns.map(&:subject_id)).destroy_all
g = Gitlab.client
g.delete_project(@shixun.gpid) if @shixun.try(:gpid).present?
@shixun.destroy
respond_to do |format|
format.html{ redirect_to shixuns_managements_path }

View File

@ -39,7 +39,7 @@ class StagesController < ApplicationController
@stage.name = params[:stage_name]
@stage.description = params[:stage_des]
ActiveRecord::Base.transaction do
if @stage.save && params[:shixun_id]
if @stage.save
begin
@stage.stage_shixuns.destroy_all
params[:shixun_id].each do |shixun_id|

View File

@ -400,6 +400,9 @@ class UsersController < ApplicationController
comment.root_id = reply.root_id
reply.children << comment
@is_project = params[:is_project] if params[:is_project]
redirect_to message_replies_board_message_path(@root, :board_id => @root.board_id, :user_activity_id => params[:user_activity_id])
return
when 'BlogComment'
@root = reply.root
comment = BlogComment.new

View File

@ -237,7 +237,7 @@ module ApplicationHelper
# 实训语言的种类
def shixun_language
["Java", "C", "C++", "Python2.7", "Python3.6", "MySQL/Java", "Html", "JFinal", "Docker", "Ethereum", "Dynamips", "MachineLearning", "verilog"]
["Java", "C", "C++", "Python2.7", "Python3.6", "MySQL/Java", "Html", "JFinal", "Docker", "Ethereum", "Dynamips", "MachineLearning", "Verilog","Spark","MySQL/Python3.6"]
end
# 实训试用专业
@ -4833,15 +4833,15 @@ def get_hw_index(hw,is_teacher,type=0)
homework_commons = hw.course.homework_commons
if is_teacher
if type != 0
homeworks = homework_commons.where("homework_commons.homework_type = #{type}").order("created_at asc")
homeworks = homework_commons.where("homework_commons.homework_type = #{type}").order("publish_time desc")
else
homeworks = homework_commons.order("created_at asc")
homeworks = homework_commons.order("publish_time desc")
end
else
if type != 0
homeworks = homework_commons.where("homework_commons.homework_type = #{type} and publish_time <= '#{Time.now}'").order("created_at asc")
homeworks = homework_commons.where("homework_commons.homework_type = #{type} and publish_time <= '#{Time.now}'").order("publish_time desc")
else
homeworks = homework_commons.where("publish_time <= '#{Time.now}'").order("created_at asc")
homeworks = homework_commons.where("publish_time <= '#{Time.now}'").order("publish_time desc")
end
end
hw_ids = homeworks.map{|hw| hw.id} if !homeworks.blank?

View File

@ -349,6 +349,7 @@
var lens = contents.length;
for(var i = 0; i < lens; i++){
if($(contents[i]).val().trim() == ""){
$(contents[i]).focus();
return true;
}
}
@ -358,6 +359,7 @@
// 判断选择题选择答案的个数
function judge_choice_answer(){
var answer = document.getElementsByName("choice[answer][]");
var contents = document.getElementsByName("question[cnt][]");
var lens = answer.length;
var num = 0;
for(var i= 0; i < lens; i++){
@ -365,6 +367,7 @@
num += 1;
}
}
$(contents[0]).focus();
return num;
}
@ -438,6 +441,7 @@
if(st == "1"){
if(judge_choice_contents()) {
error.html("选项内容不能为空").show();
}else if(choice_num() < 2){
error.html("单选题选项不能少于2个").show();
}else if(judge_choice_answer() == 0){

View File

@ -56,55 +56,9 @@
<p class="fr">
<span class="font-12 color-grey mb10" style="display: block;">温馨提示:[单选题]属于客观题将由系统自动评分,请设置标准答案</span>
<a href="javascript:void(0)" class="fr task-btn task-btn-blue" onclick="edit_poll_question($(this),<%= exercise_question.id %>,1);">保存</a>
<a href="javascript:void(0)" class="fr task-btn mr10" onclick="$(this).parent().parent().parent().parent().remove();">取消</a>
<a href="javascript:void(0)" class="fr task-btn mr10" onclick="$('#edit_poll_questions_<%=exercise_question.id %>').hide();$('#show_poll_questions_<%=exercise_question.id %>').show();">取消</a>
</p>
</li>
</div>
</div>
<% if false %>
<div class="questionContainer" style="width: 680px;">
<div class="mb10 ur_item">
<label>分值<span class="ur_index"></span>&nbsp;&nbsp;&nbsp;</label>
<input id="poll_question_score_<%=exercise_question.id %>" value="<%=exercise_question.question_score %>" type="text" name="question_score" style="width:60px; text-align:center; padding-left:0px;">分
<span class="fr c_red" style="width: 60px;" id="question_standard_answer_<%=exercise_question.id %>"><%=convert_to_char(exercise_question.exercise_standard_answers.first.exercise_choice_id.to_s) %></span>
<span class="fr">标准答案:</span>
<div class="cl"></div>
</div>
<div class="ur_editor_title">
<label class="questionLabel mt8">问题:&nbsp;&nbsp;</label>
<input name="question_type" value="<%=exercise_question.question_type %>" type="hidden">
<textarea name="question_title" style="width: 625px;" id="poll_questions_title_<%=exercise_question.id %>" class="questionTitle" placeholder="请输入单选题的题干" type="text" onfocus="autoHeight('#poll_questions_title_<%=exercise_question.id %>',30)"><%=exercise_question.question_title %></textarea>
</div>
<div class="ur_editor_content">
<ul>
<div id="poll_answers_<%=exercise_question.id%>">
<input style="display: none;" name="exercise_choice" id="exercise_choice_<%=exercise_question.id%>" value="<%= convert_to_char(exercise_question.exercise_standard_answers.first.exercise_choice_id.to_s) %>"/>
<% exercise_question.exercise_choices.reorder("choice_position").each_with_index do |exercise_choice,index| %>
<li class="ur_item new_answer">
<a class="<%= (index + 1) == exercise_question.exercise_standard_answers.first.exercise_choice_id ? 'question_choice_blue' : 'question_choice_white' %> fl mr10 choice_btn" title="设为答案" href="javascript:void(0)" onclick="toggle_select($(this), 1, <%= exercise_question.id %>);"><%=convert_to_char (index+1).to_s %></a>
<input maxlength="200" class="w600" type='text' name='question_answer[<%=exercise_choice.id %>]' placeholder='输入选项内容' value="<%=exercise_choice.choice_text %>">
<a class="icon_remove" title="删除" onclick="remove_single_answer($(this))"></a>
</li>
<div class="cl"></div>
<% end %>
<li class="ur_item">
<a class="question_choice_dash fl mr10 choice_btn"><%=convert_to_char (exercise_question.exercise_choices.count+1).to_s %></a>
<div class="dash-block new-question w600" onclick='add_single_answer($(this), 1);'>新建选项</div>
</li>
<div class='cl'></div>
</div>
<div class="cl"></div>
</ul>
</div>
<div class="ur_editor_footer">
<span class="fl c_red mt10">温馨提示:[单选题]属于客观题将由系统自动评分,请设置标准答案</span>
<a class="big_blue_btn borderRadius fr" data-button="ok" onclick="edit_poll_question($(this),<%= exercise_question.id %>,1);">保存</a>
<a class="big_grey_btn borderRadius fr mr10" data-button="cancel" onclick="resetQuestion<%=exercise_question.id%>();pollQuestionCancel(<%= exercise_question.id%>);">取消</a>
</div>
<div class="cl"></div>
</div>
<!--编辑单选 end-->
<% end%>
<% end%>

View File

@ -25,7 +25,6 @@
<div class="clearfix">
<p class="fl mt15 font-16 mb10">多选题</p>
<input name="question_type" value="2" type="hidden">
<input name="quest_id" id="quest_id" value="0" type="hidden">
<label class="fr mt15">标准答案:<span class="color-orange current-option"id="question_standard_answer_<%=exercise_question.id %>"><%=convert_to_char(exercise_question.exercise_standard_answers.first.exercise_choice_id.to_s) %></span></label>
<input style="display: none;" name="exercise_choice"/>
</div>
@ -62,57 +61,9 @@
<p class="fr">
<span class="font-12 color-grey mb10" style="display: block;">温馨提示:[多选题]属于客观题将由系统自动评分,请设置标准答案</span>
<a href="javascript:void(0)" class="fr task-btn task-btn-blue" onclick="edit_poll_question($(this),<%= exercise_question.id %>,2);">保存</a>
<a href="javascript:void(0)" class="fr task-btn mr10" onclick="$(this).parent().parent().parent().parent().remove();">取消</a>
<a href="javascript:void(0)" class="fr task-btn mr10" onclick="$('#edit_poll_questions_<%=exercise_question.id %>').hide();$('#show_poll_questions_<%=exercise_question.id %>').show();">取消</a>
</p>
</li>
</div>
</div>
<% if false %>
<div class="questionContainer" style="width: 680px;">
<div class="mb10 ur_item">
<label>分值<span class="ur_index"></span>&nbsp;&nbsp;&nbsp;</label>
<input id="poll_question_score_<%=exercise_question.id %>" value="<%=exercise_question.question_score %>" type="text" name="question_score" style="width:60px; text-align:center; padding-left:0px;">分
<span class="fr c_red" style="width: 60px;" id="question_standard_answer_<%=exercise_question.id %>"><%=convert_to_char(exercise_question.exercise_standard_answers.first.exercise_choice_id.to_s) %></span>
<span class="fr">标准答案:</span>
<div class="cl"></div>
</div>
<div class="ur_editor_title">
<label class="questionLabel mt8">问题:&nbsp;&nbsp;</label>
<input name="question_type" value="<%=exercise_question.question_type %>" type="hidden">
<textarea name="question_title" style="width: 625px;" id="poll_questions_title_<%=exercise_question.id %>" class="questionTitle" placeholder="请输入多选题的题干" type="text" onfocus="autoHeight('#poll_questions_title_<%=exercise_question.id %>',30)"><%=exercise_question.question_title %></textarea>
</div>
<div class="ur_editor_content">
<ul>
<div id="poll_answers_<%=exercise_question.id%>">
<input style="display: none;" name="exercise_choice" id="exercise_choice_<%=exercise_question.id%>" value="<%= convert_to_char(exercise_question.exercise_standard_answers.first.exercise_choice_id.to_s) %>"/>
<% exercise_question.exercise_choices.reorder("choice_position").each_with_index do |exercise_choice,index| %>
<li class="ur_item new_answer">
<a class="<%= exercise_question.exercise_standard_answers.first.exercise_choice_id.to_s.include?((index+1).to_s) ? 'question_choice_blue' : 'question_choice_white' %> fl mr10 choice_btn" title="设为答案" href="javascript:void(0)" onclick="toggle_select($(this), 2, <%= exercise_question.id %>);"><%=convert_to_char (index+1).to_s %></a>
<input maxlength="200" class="w600" type='text' name='question_answer[<%= exercise_choice.id %>]' placeholder='输入选项内容' value="<%=exercise_choice.choice_text %>">
<a class="icon_remove" title="删除" onclick="remove_single_answer($(this))"></a>
</li>
<div class="cl"></div>
<% end %>
<li class="ur_item">
<a class="question_choice_dash fl mr10 choice_btn"><%=convert_to_char (exercise_question.exercise_choices.count+1).to_s %></a>
<div class="dash-block new-question w600" onclick='add_single_answer($(this), 2);'>新建选项</div>
</li>
<div class="cl"></div>
</div>
</ul>
</div>
<div class="ur_editor_footer">
<span class="fl c_red mt10">温馨提示:[多选题]属于客观题将由系统自动评分,请设置标准答案</span>
<a class="big_blue_btn borderRadius fr" data-button="ok" onclick="edit_poll_question($(this),<%= exercise_question.id %>,2);">
保存
</a>
<a class="big_grey_btn borderRadius fr mr10" data-button="cancel" onclick="resetQuestion<%=exercise_question.id%>();pollQuestionCancel(<%= exercise_question.id%>);">
<%= l(:button_cancel)%>
</a>
</div>
<div class="cl"></div>
</div>
<!--编辑单选 end-->
<% end %>
<% end%>

View File

@ -10,7 +10,6 @@
<div class="user_bg_shadow bor-grey-e pl15 pr30 mb20 answer_Temp" id="answer_Temp">
<p class="fl mt15 font-16 mb10">简答题</p>
<input name="question_type" value="4" type="hidden">
<input name="quest_id" id="quest_id" value="0" type="hidden">
<li class="clearfix pr mb20">
<label class="panel-form-label fl"><span class="mr10">题目</span></label>
<input name="question_type" value="<%=exercise_question.question_type %>" type="hidden">
@ -28,40 +27,8 @@
<span class="font-12 color-grey" style="display: block;">温馨提示:[简答题]属于主观题需要人工评分,未作答的情况下系统将自动评分</span>
<span class="font-12 color-grey mb10 ml50" style="display: block;">&nbsp;&nbsp;参考答案仅作为人工评分的参考</span>
<a href="javascript:void(0)" class="fr task-btn task-btn-blue" onclick="edit_poll_question($(this),<%= exercise_question.id %>,4);">保存</a>
<a href="javascript:void(0)" class="fr task-btn mr10" onclick="$(this).parent().parent().parent().parent().remove();">取消</a>
<a href="javascript:void(0)" class="fr task-btn mr10" onclick="$('#edit_poll_questions_<%=exercise_question.id %>').hide();$('#show_poll_questions_<%=exercise_question.id %>').show();">取消</a>
</p>
</li>
</div>
<% if false %>
<div class="questionContainer" style="width: 680px;">
<div class="mb10 ur_item">
<label class="ml25">分值<span class="ur_index"></span>&nbsp;&nbsp;&nbsp;</label>
<input id="poll_question_score_<%=exercise_question.id %>" value="<%=exercise_question.question_score %>" name="question_score" style="width:60px; text-align:center; padding-left:0px;">分
<div class="cl"></div>
</div>
<div class="ur_editor_title">
<label class="questionLabel mt8 ml25">问题:&nbsp;&nbsp;</label>
<input name="question_type" value="<%=exercise_question.question_type %>" type="hidden">
<textarea name="question_title" style="width: 600px;" id="poll_questions_title_<%=exercise_question.id %>" class="questionTitle" placeholder="请输入问答题的题干" onfocus="autoHeight('#poll_questions_title_<%=exercise_question.id %>',30)"><%=exercise_question.question_title %></textarea>
</div>
<div class="ur_editor_content" id="edit_multi">
<div id="poll_answers_<%=exercise_question.id%>" class="multi_input">
<label name='candiate_items'>参考答案<span class="ur_index"></span>&nbsp;&nbsp;&nbsp;</label>
<textarea class="candiate_answer" style="width: 600px; height: 90px;" name="exercise_choice" id="poll_questions_answer_<%=exercise_question.id %>" placeholder="如有参考答案,请输入参考答案" type="text"><%=exercise_question.exercise_standard_answers.empty? ? '' : exercise_question.exercise_standard_answers.first.answer_text %></textarea>
</div>
<div class="cl"></div>
</div>
<div class="ur_editor_footer">
<p class="fl c_red">温馨提示:[问答题]属于主观题需要人工评分,未作答的情况下系统将自动评零分<br><span class="ml60">参考答案作为人工评分时的参考</span></p>
<a class="big_blue_btn borderRadius fr" data-button="ok" onclick="edit_poll_question($(this),<%= exercise_question.id %>,4);">保存</a>
<a class="big_grey_btn borderRadius fr mr10" data-button="cancel" onclick="resetQuestion<%=exercise_question.id%>();pollQuestionCancel(<%= exercise_question.id%>);">
<%= l(:button_cancel)%>
</a>
</div>
<div class="cl"></div>
</div>
<!--编辑单选 end-->
<% end%>
<% end%>

View File

@ -24,7 +24,6 @@
<p class="fl mt15 font-16 mb10">填空题</p>
<li class="clearfix pr mb20">
<input name="question_type" value="3" type="hidden">
<input name="quest_id" id="quest_id" value="0" type="hidden">
<label class="panel-form-label fl"><span class="mr10">题目</span></label>
<input name="question_type" value="<%=exercise_question.question_type %>" type="hidden">
<textarea maxlength="250" class="panel-form-width2-690 fl panel-box-sizing questionTitle" name="question_title" id="poll_questions_title_<%=exercise_question.id %>" placeholder="请输入填空题的题干(注意:目前仅支持一个空)" type="text" oninput="autoHeight('#poll_questions_title_<%=exercise_question.id %>',30)"><%=exercise_question.question_title %></textarea>
@ -51,7 +50,7 @@
<p class="fr">
<span class="font-12 color-grey mb10" style="display: block;">温馨提示:[填空题]属于客观题将由系统自动评分,请设置标准答案</span>
<a href="javascript:void(0)" class="fr task-btn task-btn-blue"onclick="edit_poll_question($(this),<%= exercise_question.id %>,3);">保存</a>
<a href="javascript:void(0)" class="fr task-btn mr10" onclick="$(this).parent().parent().parent().parent().remove();">取消</a>
<a href="javascript:void(0)" class="fr task-btn mr10" onclick="$('#edit_poll_questions_<%=exercise_question.id %>').hide();$('#show_poll_questions_<%=exercise_question.id %>').show();">取消</a>
</p>
</li>
</div>

View File

@ -16,13 +16,31 @@
<p class="color-grey font-12 mt20">
<span>创建于<%=time_from_now exercise.created_at %></span>
<span class="ml25">更新于<%=time_from_now exercise.updated_at %></span>
<span class="ml50"><a href="javascript:void(0)" class="color-orange05 mr3"><%= exercise.exercise_users.where("commit_status = 1").count %></a>已答</span>
<span class="ml50"><a href="javascript:void(0)" class="color-orange05 mr3"><%= exercise.course.student.count - exercise.exercise_users.where("commit_status = 1").count %></a>未答</span>
<%# count = exercise.exercise_users.where("commit_status = 1 and subjective_score = -1").count %>
<span class="ml50"><a href="javascript:void(0)" class="color-orange05 mr3"><%= un_commit_num exercise %></a>未评</span>
<span class="ml50 <%= exercise.try(:exercise_status) == 3 ? 'color-grey' : 'color-orange' %>"><%= ex_curr_status[:time] %></span>
<% if exercise.try(:exercise_status) == 0 && exercise.publish_time %>
<% if exercise.try(:exercise_status) > 1 %>
<% if @is_teacher %>
<span class="ml50">
<%= link_to exercise.exercise_users.where("commit_status = 1").count, student_exercise_list_exercise_path(exercise, :ex_status => ['1']), :class => "color-orange05 mr3", :target =>"_blank" %>
已答</span>
<span class="ml50">
<%= link_to (exercise.course.student.count - exercise.exercise_users.where("commit_status = 1").count), student_exercise_list_exercise_path(exercise, :ex_status => ['0']), :class => "color-orange05 mr3", :target =>"_blank" %>
未答</span>
<%# count = exercise.exercise_users.where("commit_status = 1 and subjective_score = -1").count %>
<span class="ml50">
<%= link_to un_commit_num(exercise), student_exercise_list_exercise_path(exercise, :ex_comment => ['0']), :class => "color-orange05 mr3", :target =>"_blank" %>
未评</span>
<% else %>
<span class="ml50">
<%= link_to exercise.exercise_users.where("commit_status = 1").count, student_exercise_list_exercise_path(exercise), :class => "color-orange05 mr3", :target =>"_blank" %>
已答</span>
<span class="ml50">
<%= link_to (exercise.course.student.count - exercise.exercise_users.where("commit_status = 1").count), student_exercise_list_exercise_path(exercise), :class => "color-orange05 mr3", :target =>"_blank" %>
未答</span>
<% end %>
<% end %>
<% if exercise.try(:exercise_status) == 1 && exercise.publish_time %>
<span class="ml50 color-grey">将于&nbsp;<span class="color-orange"><%= format_time(exercise.publish_time).to_s %></span>&nbsp;发布</span>
<% else %>
<span class="ml50 <%= exercise.try(:exercise_status) == 3 ? 'color-grey' : 'color-orange' %>"><%= ex_curr_status[:time] %></span>
<% end %>
</p>
</div>
@ -42,7 +60,7 @@
</li>
<% end %>
<!--<li><a href="javascript:void(0)">加入题库</a></li>-->
<li><a href="javascript:void(0)" onclick="delete_confirm_box_3('<%= exercise_path(exercise) %>', '确定要删除该试卷吗?')">删除</a></li>
<li><a href="javascript:void(0)" onclick="delete_confirm_box_3('<%= exercise_path(exercise) %>', '删除后,学生的答题情况将全部丢失,无法恢复<br/>确定要删除该试卷吗?')">删除</a></li>
</ul>
</div>
<% end %>

View File

@ -15,8 +15,8 @@
</div>
<pre class="exercise_que_title pl15 mb10 pr15"><%= exercise_question.question_title %></pre>
<div class="clearfix bor-top-greyE padding15 answer_con">
<p>参考答案</p>
<p style="text-align:justify;"><%= exercise_question.exercise_standard_answers.count > 0 ? exercise_question.exercise_standard_answers.first.answer_text : "无"%></p>
<p>参考答案</p>
<pre class="exercise_que_title" style="text-align:justify;"><%= exercise_question.exercise_standard_answers.count > 0 ? exercise_question.exercise_standard_answers.first.answer_text : "无"%></pre>
</div>
</div>

View File

@ -1,7 +1,10 @@
<ul id="blacktab_nav">
<li class="blacktab_con blacktab_hover">
<li class="blacktab_con blacktab_hover" onclick="check_tab('blacktab_con','blacktab_hover',this);">
<a href="javascript:void(0);" class="tab_type tab_color">测试结果</a>
</li>
<li class="blacktab_con" onclick="check_tab('blacktab_con','blacktab_hover',this);">
<a href="javascript:void(0);" class="tab_type tab_color" >评测信息</a>
</li>
<a href="javascript:void(0);" onclick="valuation_extend_and_zoom();" id="valuation_extend_and_zoom"><i class="fa fa-expand font-16 color-grey fr mt10 mr15 fa-arrows-alt" ></i></a>
<div class="cl"></div>
</ul>
@ -60,4 +63,33 @@
</div>
</div>
</div>
<div id="blacktab_con_2" class="undis" >
<div class="fit -scroll">
<div class="-layout-v -fit">
<div class="-flex -scroll task-padding16 loading-center undis" id="info_ajax_loading"></div>
<div class="-flex -scroll task-padding16" id="evaluating_info">
<% unless @game.choose_correct_num == nil %>
<% if @game.choose_correct_num != game_challenge.challenge_chooses.count %>
<p class="-text-danger mb10">
<i class="fa fa-exclamation-circle font-16" ></i><span class="ml5 mr5 -text-danger"><%= @game.choose_correct_num %>/<%= game_challenge.challenge_chooses.count %></span>共有<%= game_challenge.challenge_chooses.count %>题,其中有<%= game_challenge.challenge_chooses.count - @game.choose_correct_num %>题结果不匹配。
</p>
<% else %>
<p class="color-light-green mb10">
<i class="fa fa-check-circle font-16 " ></i><span class="ml5 mr5"><%= game_challenge.challenge_chooses.count %>/<%= game_challenge.challenge_chooses.count %></span> 全部通过
</p>
<% end %>
<% end %>
<div class="-task-ces-box mb10 clearfix">
<div class="-task-ces-info">
<ul>
<li><span class="-task-ces-info-left ">选择题:</span><span class="color-light-green"><%= @game.choose_correct_num.nil? ? 0 : @game.choose_correct_num %>/<%= game_challenge.challenge_chooses.count %></span></li>
<li><span class="-task-ces-info-left">经验值:</span><span class="color-light-green" id="experience_value">+ <%= @final_score %></span></li>
<li><span class="-task-ces-info-left">金币:</span><span class="color-light-green" id="grade_value">+ <%= @final_score %></span></li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
</div>

View File

@ -58,10 +58,11 @@
</span>
<% end %>
<% end %>
<span class="ml50 <%= homework_common.homework_detail_manual.try(:comment_status) == 6 ? 'color-grey' : 'color-orange' %>"><%= homework_curr_status[:time] %></span>
<% if homework_common.homework_detail_manual.try(:comment_status) == 0 && homework_common.publish_time %>
<span class="ml50 color-grey">将于&nbsp;<span class="color-orange"><%= format_time(homework_common.publish_time).to_s %></span>&nbsp;发布</span>
<% end %>
<% else %>
<span class="ml50 <%= homework_common.homework_detail_manual.try(:comment_status) == 6 ? 'color-grey' : 'color-orange' %>"><%= homework_curr_status[:time] %></span>
<% end %>
</p>
</div>
<% if @is_teacher %>

View File

@ -23,7 +23,7 @@
<!--<td><%#= syllabus.syllabus_first_level_discipline == "" ? "--" : syllabus.syllabus_first_level_discipline %></td>-->
<!--<td><%#= syllabus.syllabus_major == "" ? "--" : syllabus.syllabus_major %></td>-->
<td class="edu-txt-left">
<%= courselist.name %>
<%= courselist.name %>
</td>
<td>
<%= courselist.courses.count %>

View File

@ -8,9 +8,12 @@
<% if result %>
<% if @status == 0 %>
已发布过申请,请等待管理员审核
<% else %>
<% elsif @status == 1 %>
发布申请已提交,请等待管理员的审核<br/>
<span class="font-12 color-grey"> • 我们将在1-2个工作日内完成审核</span>
<% else %>
每一个关卡至少需要一个技能标签<br/>
第<%= @position %>尚未设置技能标签,请补充
<% end %>
<% else %>
实训云平台繁忙繁忙等级80

View File

@ -1,4 +1,4 @@
<% unless @status && @status = 1 %>
<% unless @status && @status == 1 %>
$("#apply_publish_shixun").attr("data-option", 1);
$("#apply_publish_shixun").removeClass("disabled-grey-bg");
<% end %>

View File

@ -1,6 +1,5 @@
<% content_for :header_tags do %>
<%= import_ke(enable_at: false, prettify: false, init_activity: false) %>
<% end %>
<%= stylesheet_link_tag '/editormd/css/editormd' %>
<%= javascript_include_tag '/editormd/editormd' %>
<div class="active-class ">
<p style="line-height: 42px;">
<i class="fa fa-map-marker mr5 color-grey"></i>
@ -9,40 +8,28 @@
</p>
<div class="box_bg_shandow bor-grey-e mb30">
<div class="edu-con-top ">
<span class="ml15 color-grey font-16">编辑实训路径</span>
</div>
<span class="ml15 color-grey font-16">编辑实训路径</span>
</div>
<div class="edu-bg createmain mb20 pt30 ">
<%= labelled_form_for @subject do |f| %>
<li class="clearfix pt20">
<label class="panel-form-label label fl"><span class="color-orange">*</span>&nbsp;名称</label>
<input type="text" name="subject[name]" value="<%= @subject.name %>" id="new_subject_name" class="task task-height-40 panel-box-sizing task-form-70 fl color-grey ml20" maxlength="100" placeholder="例如Python程序设计-从入门到精通">
<div class="cl"></div>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_subject_name_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入名称</span>
</li>
<!--<li class="clearfix pt20">-->
<%= labelled_form_for @subject do |f| %>
<li class="clearfix pt20">
<label class="panel-form-label label fl"><span class="color-orange">*</span>&nbsp;名称</label>
<input type="text" name="subject[name]" value="<%= @subject.name %>" id="new_subject_name" class="task task-height-40 panel-box-sizing task-form-80 fl color-grey ml20" maxlength="100" placeholder="例如Python程序设计-从入门到精通">
<div class="cl"></div>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_subject_name_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入名称</span>
</li>
<!--<li class="clearfix pt20">-->
<!--<label class="panel-form-label label fl"><span class="color-orange">*</span>&nbsp;描述</label>-->
<!--<input type="text" name="subject[introduction]" value="<%#= @subject.introduction %>" id="new_subject_intro" class="task task-height-40 panel-box-sizing task-form-80 fl color-grey ml20" maxlength="50" placeholder="一句话描述一下吸引更多人学习吧不超过50个字符">-->
<!--<div class="cl"></div>-->
<!--<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_subject_intro_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入描述</span>-->
<!--</li>-->
<!--</li>-->
<li class="clearfix pt20">
<label class="panel-form-label label fl mr20"><span class="color-orange">*</span>简介</label>
<%= hidden_field_tag :asset_id, params[:asset_id], :required => false, :style => 'display:none' %>
<textarea class="panel-form-width-690 panel-form-height-150 fl panel-box-sizing" style="display: none"></textarea>
<%= f.kindeditor :description, :editor_id => 'subject_description_editor',
:owner_id => @subject.nil? ? 0: @subject.id,
:owner_type => OwnerTypeHelper::SUBJECT,
:local_storage_mdu => "subject_description_#{User.current.id}_#{@subject.id}",
:local_storage_id => "desc",
:width => '80%',
:height => 200,
:minHeight=>200,
:placeholder => "请在此输入实训路径的简介",
:class => 'talk_text fl',
:input_html => { :id => 'new_subject_description',
:class => 'talk_text fl',
:maxlength => 5000 }
%>
<div id="shixun_introduction" class="new_li fl">
<textarea class="panel-form-width-690 panel-form-height-150 fl panel-box-sizing" name="subject[description]" style="display: none"><%= @subject.description %></textarea>
</div>
<div class="cl"></div>
<p id="e_tip_desc" style="margin-left: 140px" class="c_grey"></p>
<p id="e_tips_desc" style="margin-left: 140px" class="c_grey"></p>
@ -50,32 +37,116 @@
</li>
<li class="clearfix pt20">
<label class="panel-form-label label fl mr20"><span class="color-orange">*</span>&nbsp;学习须知</label>
<textarea class="panel-form-width-690 panel-form-height-150 fl panel-box-sizing" style="display: none"></textarea>
<%= f.kindeditor :learning_notes, :editor_id => 'subject_learning_notes_editor',
:owner_id => @subject.nil? ? 0: @subject.id,
:owner_type => OwnerTypeHelper::SUBJECT,
:local_storage_mdu => "subject_notes_#{User.current.id}_#{@subject.id}",
:local_storage_id => "notes",
:width => '80%',
:height => 200,
:minHeight=>200,
:placeholder => "请在此输入实训路径的学习须知",
:class => 'talk_text fl',
:input_html => { :id => 'new_learning_notes',
:class => 'talk_text fl',
:maxlength => 5000 }
%>
<div id="shixun_propaedeutics" class="new_li fl">
<textarea class="panel-form-width-690 panel-form-height-150 fl panel-box-sizing" name="subject[learning_notes]" style="display: none"><%= @subject.learning_notes %></textarea>
</div>
<div class="cl"></div>
<p id="e_tip_notes" style="margin-left: 140px" class="c_grey"></p>
<p id="e_tips_notes" style="margin-left: 140px" class="c_grey"></p>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_learning_notes_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入学习须知</span>
</li>
<li class="clearfix pt20 pb20">
<label class="panel-form-label label fl">&nbsp;</label>
<%= link_to "取消", subject_path(@subject), :class => "task-btn fl mr10 ml20" %>
<a href="javascript:void(0);" onclick="submit_edit_subject(<%= @subject.id %>);" class="task-btn task-btn-blue fl">保存</a>
</li>
<% end %>
<li class="clearfix pt20 pb20">
<label class="panel-form-label label fl">&nbsp;</label>
<%= link_to "取消", subject_path(@subject), :class => "task-btn fl mr10 ml20" %>
<a href="javascript:void(0);" onclick="submit_edit_subject(<%= @subject.id %>);" class="task-btn task-btn-blue fl">保存</a>
</li>
<% end %>
</div>
</div>
</div>
</div>
</div>
<script>
/* ------------------------------- 简介md ------------------------------*/
var shixun_editormd = editormd("shixun_introduction", {
width : "80%",
height : 600,
syncScrolling : "single",
//你的lib目录的路径我这边用JSP做测试的
path : "/editormd/lib/",
tex : true,
toolbarIcons : function() {
// Or return editormd.toolbarModes[name]; // full, simple, mini
// Using "||" set icons align right.
return ["bold", "italic", "|", "list-ul", "list-ol", "|", "code", "code-block", "|", "testIcon", "testIcon1", '|', "image", "table", '|', "watch", "clear" ]
},
toolbarCustomIcons : {
testIcon : "<a type=\"inline\" class=\"latex\" ><div class='zbg'></div></a>",
testIcon1 : "<a type=\"latex\" class=\"latex\" ><div class='zbg_latex'></div></a>"
},
//这个配置在simple.html中并没有但是为了能够提交表单使用这个配置可以让构造出来的HTML代码直接在第二个隐藏的textarea域中方便post提交表单。
saveHTMLToTextarea : true,
autoFocus: false,
// 用于增加自定义工具栏的功能可以直接插入HTML标签不使用默认的元素创建图标
dialogMaskOpacity : 0.6,
placeholder: "请在此输入实训路径的简介",
imageUpload : true,
imageFormats : ["jpg", "jpeg", "gif", "png", "bmp", "webp", "JPG", "JPEG", "GIF", "PNG", "BMP", "WEBP"],
imageUploadURL : "<%= upload_with_markdown_path(:container_id => @subject.id, :container_type => @subject.class) %>" //url
});
/* --------------------------------- 学习须知 -------------------------------------- */
var shixun_propaedeutics = editormd("shixun_propaedeutics", {
width : "80%",
height : 600,
syncScrolling : "single",
//你的lib目录的路径我这边用JSP做测试的
path : "/editormd/lib/",
tex : true,
toolbarIcons : function() {
// Or return editormd.toolbarModes[name]; // full, simple, mini
// Using "||" set icons align right.
return ["bold", "italic", "|", "list-ul", "list-ol", "|", "code", "code-block", "|", "testIcon", "testIcon1", '|', "image", "table", '|', "watch", "clear" ]
},
toolbarCustomIcons : {
testIcon : "<a type=\"inline\" class=\"latex\" ><div class='zbg'></div></a>",
testIcon1 : "<a type=\"latex\" class=\"latex\" ><div class='zbg_latex'></div></a>"
},
//这个配置在simple.html中并没有但是为了能够提交表单使用这个配置可以让构造出来的HTML代码直接在第二个隐藏的textarea域中方便post提交表单。
saveHTMLToTextarea : true,
autoFocus: false,
// 用于增加自定义工具栏的功能可以直接插入HTML标签不使用默认的元素创建图标
dialogMaskOpacity : 0.6,
placeholder: "请在此输入实训路径的学习须知",
imageUpload : true,
imageFormats : ["jpg", "jpeg", "gif", "png", "bmp", "webp", "JPG", "JPEG", "GIF", "PNG", "BMP", "WEBP"],
imageUploadURL : "<%= upload_with_markdown_path(:container_id => @subject.id, :container_type => @subject.class) %>" //url
});
window.onload = function(){
console.log(shixun_editormd);
$("#shixun_introduction [type=\"latex\"]").bind("click", function(){
shixun_editormd.cm.replaceSelection("```latex");
shixun_editormd.cm.replaceSelection("\n");
shixun_editormd.cm.replaceSelection("\n");
shixun_editormd.cm.replaceSelection("```");
var __Cursor = shixun_editormd.cm.getDoc().getCursor();
shixun_editormd.cm.setCursor(__Cursor.line-1, 0);
});
$("#shixun_propaedeutics [type=\"latex\"]").bind("click", function(){
shixun_propaedeutics.cm.replaceSelection("```latex");
shixun_propaedeutics.cm.replaceSelection("\n");
shixun_propaedeutics.cm.replaceSelection("\n");
shixun_propaedeutics.cm.replaceSelection("```");
var __Cursor = shixun_propaedeutics.cm.getDoc().getCursor();
shixun_propaedeutics.cm.setCursor(__Cursor.line-1, 0);
});
$("#shixun_introduction [type=\"inline\"]").bind("click", function(){
shixun_editormd.cm.replaceSelection("$$$$");
var __Cursor = shixun_editormd.cm.getDoc().getCursor();
shixun_editormd.cm.setCursor(__Cursor.line, __Cursor.ch-2);
shixun_editormd.cm.focus();
});
$("#shixun_propaedeutics [type=\"inline\"]").bind("click", function(){
shixun_propaedeutics.cm.replaceSelection("$$$$");
var __Cursor = shixun_propaedeutics.cm.getDoc().getCursor();
shixun_propaedeutics.cm.setCursor(__Cursor.line, __Cursor.ch-2);
shixun_propaedeutics.cm.focus();
});
$("[type=\"inline\"]").attr("title", "行内公式");
$("[type=\"latex\"]").attr("title", "多行公式");
};
</script>

View File

@ -1,6 +1,6 @@
<% content_for :header_tags do %>
<%= import_ke(enable_at: false, prettify: false, init_activity: false) %>
<% end %>
<%= stylesheet_link_tag '/editormd/css/editormd' %>
<%= javascript_include_tag '/editormd/editormd' %>
<div class="active-class ">
<p style="line-height: 42px;">
<i class="fa fa-map-marker mr5 color-grey"></i>
@ -9,81 +9,57 @@
</p>
<div class="box_bg_shandow bor-grey-e mb30">
<div class="edu-con-top">
<span class="ml15 color-grey3 font-16">新建实训路径</span>
</div>
<span class="ml15 color-grey3 font-16">新建实训路径</span>
</div>
<div class="edu-bg createmain mb20 pt30 ">
<%= labelled_form_for @subject do |f| %>
<li class="clearfix pt20">
<label class="panel-form-label label fl"><span class="color-orange">*</span>&nbsp;名称</label>
<input type="text" name="subject[name]" id="new_subject_name" class="task task-height-40 panel-box-sizing task-form-80 fl color-grey ml20" maxlength="50" placeholder="例如Python程序设计-从入门到精通">
<div class="cl"></div>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_subject_name_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入名称</span>
</li>
<!--<li class="clearfix pt20">-->
<%= labelled_form_for @subject do |f| %>
<li class="clearfix pt20">
<label class="panel-form-label label fl"><span class="color-orange">*</span>&nbsp;名称</label>
<input type="text" name="subject[name]" id="new_subject_name" class="task task-height-40 panel-box-sizing task-form-80 fl color-grey ml20" maxlength="50" placeholder="例如Python程序设计-从入门到精通">
<div class="cl"></div>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_subject_name_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入名称</span>
</li>
<!--<li class="clearfix pt20">-->
<!--<label class="panel-form-label label fl"><span class="color-orange">*</span>&nbsp;描述</label>-->
<!--<input type="text" name="subject[introduction]" id="new_subject_intro" class="task task-height-40 panel-box-sizing task-form-80 fl color-grey ml20" maxlength="50" placeholder="一句话描述一下吸引更多人学习吧不超过50个字符">-->
<!--<div class="cl"></div>-->
<!--<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_subject_intro_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入描述</span>-->
<!--</li>-->
<li class="clearfix pt20">
<label class="panel-form-label label fl mr20"><span class="color-orange">*</span>简介</label>
<%= hidden_field_tag :asset_id, params[:asset_id], :required => false, :style => 'display:none' %>
<textarea class="panel-form-width-690 panel-form-height-150 fl panel-box-sizing" style="display: none"></textarea>
<%= f.kindeditor :description, :editor_id => 'subject_description_editor',
:owner_id => @subject.nil? ? 0: @subject.id,
:owner_type => OwnerTypeHelper::SUBJECT,
:local_storage_mdu => "subject_description_#{User.current.id}",
:local_storage_id => "desc",
:width => '80%',
:height => 200,
:minHeight=>200,
:placeholder => "请在此输入实训路径的简介",
:class => 'talk_text fl',
:input_html => { :id => 'new_subject_description',
:class => 'talk_text fl',
:maxlength => 5000 }
%>
<div class="cl"></div>
<p id="e_tip_desc" style="margin-left: 140px" class="c_grey"></p>
<p id="e_tips_desc" style="margin-left: 140px" class="c_grey"></p>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_subject_description_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入简介</span>
</li>
<li class="clearfix pt20">
<label class="panel-form-label label fl mr20"><span class="color-orange">*</span>&nbsp;学习须知</label>
<textarea class="panel-form-width-690 panel-form-height-150 fl panel-box-sizing" style="display: none"></textarea>
<%= f.kindeditor :learning_notes, :editor_id => 'subject_learning_notes_editor',
:owner_id => @subject.nil? ? 0: @subject.id,
:owner_type => OwnerTypeHelper::SUBJECT,
:local_storage_mdu => "subject_notes_#{User.current.id}",
:local_storage_id => "notes",
:width => '80%',
:height => 200,
:minHeight=>200,
:placeholder => "请在此输入实训路径的学习须知",
:class => 'talk_text fl',
:input_html => { :id => 'new_learning_notes',
:class => 'talk_text fl',
:maxlength => 5000 }
%>
<!--textarea type="text" name="subject[learning_notes]" id="new_learning_notes" class="task task-height-220 panel-box-sizing task-form-70 fl color-grey ml20" placeholder=""></textarea>-->
<div class="cl"></div>
<p id="e_tip_notes" style="margin-left: 140px" class="c_grey"></p>
<p id="e_tips_notes" style="margin-left: 140px" class="c_grey"></p>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_learning_notes_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入学习须知</span>
</li>
<!--<li class="clearfix pt20">
<label class="panel-form-label label fl"><span class="color-orange">*</span>&nbsp;学习须知</label>
<textarea name="subject[base]" placeholder="例如了解Python的基础知识" class="task task-height-220 panel-box-sizing task-form-80 fl color-grey ml20"></textarea>
</li>-->
<li class="clearfix pt20 pb20">
<label class="panel-form-label label fl">&nbsp;</label>
<%= link_to "取消", subjects_path(), :class => "task-btn fl mr10 ml20" %>
<a href="javascript:void(0);" onclick="submit_new_subject();" class="task-btn task-btn-blue fl">保存</a>
</li>
<% end %>
</div>
</div>
<!--</li>-->
<li class="clearfix pt20">
<label class="panel-form-label label fl mr20"><span class="color-orange">*</span>简介</label>
<%= hidden_field_tag :asset_id, params[:asset_id], :required => false, :style => 'display:none' %>
<div id="shixun_introduction" class="new_li fl">
<textarea class="panel-form-width-690 panel-form-height-150 fl panel-box-sizing" name="subject[description]" style="display: none"></textarea>
</div>
<div class="cl"></div>
<p id="e_tip_desc" style="margin-left: 140px" class="c_grey"></p>
<p id="e_tips_desc" style="margin-left: 140px" class="c_grey"></p>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_subject_description_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入简介</span>
</li>
<li class="clearfix pt20">
<label class="panel-form-label label fl mr20"><span class="color-orange">*</span>&nbsp;学习须知</label>
<div id="shixun_propaedeutics" class="new_li fl">
<textarea class="panel-form-width-690 panel-form-height-150 fl panel-box-sizing" name="subject[learning_notes]" style="display: none"></textarea>
</div>
<!--textarea type="text" name="subject[learning_notes]" id="new_learning_notes" class="task task-height-220 panel-box-sizing task-form-70 fl color-grey ml20" placeholder=""></textarea>-->
<div class="cl"></div>
<p id="e_tip_notes" style="margin-left: 140px" class="c_grey"></p>
<p id="e_tips_notes" style="margin-left: 140px" class="c_grey"></p>
<span class="color-orange ml20 fl none" style="margin-left: 12%;" id="new_learning_notes_notice"><i class="fa fa-exclamation-circle mr5" ></i>请输入学习须知</span>
</li>
<!--<li class="clearfix pt20">
<label class="panel-form-label label fl"><span class="color-orange">*</span>&nbsp;学习须知</label>
<textarea name="subject[base]" placeholder="例如了解Python的基础知识" class="task task-height-220 panel-box-sizing task-form-80 fl color-grey ml20"></textarea>
</li>-->
<li class="clearfix pt20 pb20">
<label class="panel-form-label label fl">&nbsp;</label>
<%= link_to "取消", subjects_path(), :class => "task-btn fl mr10 ml20" %>
<a href="javascript:void(0);" onclick="submit_new_subject();" class="task-btn task-btn-blue fl">保存</a>
</li>
<% end %>
</div>
</div>
</div>
<script>
function rec_data(k,mdu,id){
@ -96,4 +72,98 @@
clear_data(k,mdu,id);
}
}
</script>
/* ------------------------------- 简介md ------------------------------*/
var shixun_editormd = editormd("shixun_introduction", {
width : "80%",
height : 600,
syncScrolling : "single",
//你的lib目录的路径我这边用JSP做测试的
path : "/editormd/lib/",
tex : true,
toolbarIcons : function() {
// Or return editormd.toolbarModes[name]; // full, simple, mini
// Using "||" set icons align right.
return ["bold", "italic", "|", "list-ul", "list-ol", "|", "code", "code-block", "|", "testIcon", "testIcon1", '|', "image", "table", '|', "watch", "clear" ]
},
toolbarCustomIcons : {
testIcon : "<a type=\"inline\" class=\"latex\" ><div class='zbg'></div></a>",
testIcon1 : "<a type=\"latex\" class=\"latex\" ><div class='zbg_latex'></div></a>"
},
//这个配置在simple.html中并没有但是为了能够提交表单使用这个配置可以让构造出来的HTML代码直接在第二个隐藏的textarea域中方便post提交表单。
saveHTMLToTextarea : true,
autoFocus: false,
// 用于增加自定义工具栏的功能可以直接插入HTML标签不使用默认的元素创建图标
dialogMaskOpacity : 0.6,
placeholder: "请在此输入实训路径的简介",
imageUpload : true,
imageFormats : ["jpg", "jpeg", "gif", "png", "bmp", "webp", "JPG", "JPEG", "GIF", "PNG", "BMP", "WEBP"],
imageUploadURL : "<%= upload_with_markdown_path(:container_id => @subject.id, :container_type => @subject.class) %>" //url
});
/* --------------------------------- 学习须知 -------------------------------------- */
var shixun_propaedeutics = editormd("shixun_propaedeutics", {
width : "80%",
height : 600,
syncScrolling : "single",
//你的lib目录的路径我这边用JSP做测试的
path : "/editormd/lib/",
tex : true,
toolbarIcons : function() {
// Or return editormd.toolbarModes[name]; // full, simple, mini
// Using "||" set icons align right.
return ["bold", "italic", "|", "list-ul", "list-ol", "|", "code", "code-block", "|", "testIcon", "testIcon1", '|', "image", "table", '|', "watch", "clear" ]
},
toolbarCustomIcons : {
testIcon : "<a type=\"inline\" class=\"latex\" ><div class='zbg'></div></a>",
testIcon1 : "<a type=\"latex\" class=\"latex\" ><div class='zbg_latex'></div></a>"
},
//这个配置在simple.html中并没有但是为了能够提交表单使用这个配置可以让构造出来的HTML代码直接在第二个隐藏的textarea域中方便post提交表单。
saveHTMLToTextarea : true,
autoFocus: false,
// 用于增加自定义工具栏的功能可以直接插入HTML标签不使用默认的元素创建图标
dialogMaskOpacity : 0.6,
placeholder: "请在此输入实训路径的学习须知",
imageUpload : true,
imageFormats : ["jpg", "jpeg", "gif", "png", "bmp", "webp", "JPG", "JPEG", "GIF", "PNG", "BMP", "WEBP"],
imageUploadURL : "<%= upload_with_markdown_path(:container_id => @subject.id, :container_type => @subject.class) %>" //url
});
window.onload = function(){
console.log(shixun_editormd);
$("#shixun_introduction [type=\"latex\"]").bind("click", function(){
shixun_editormd.cm.replaceSelection("```latex");
shixun_editormd.cm.replaceSelection("\n");
shixun_editormd.cm.replaceSelection("\n");
shixun_editormd.cm.replaceSelection("```");
var __Cursor = shixun_editormd.cm.getDoc().getCursor();
shixun_editormd.cm.setCursor(__Cursor.line-1, 0);
});
$("#shixun_propaedeutics [type=\"latex\"]").bind("click", function(){
shixun_propaedeutics.cm.replaceSelection("```latex");
shixun_propaedeutics.cm.replaceSelection("\n");
shixun_propaedeutics.cm.replaceSelection("\n");
shixun_propaedeutics.cm.replaceSelection("```");
var __Cursor = shixun_propaedeutics.cm.getDoc().getCursor();
shixun_propaedeutics.cm.setCursor(__Cursor.line-1, 0);
});
$("#shixun_introduction [type=\"inline\"]").bind("click", function(){
shixun_editormd.cm.replaceSelection("$$$$");
var __Cursor = shixun_editormd.cm.getDoc().getCursor();
shixun_editormd.cm.setCursor(__Cursor.line, __Cursor.ch-2);
shixun_editormd.cm.focus();
});
$("#shixun_propaedeutics [type=\"inline\"]").bind("click", function(){
shixun_propaedeutics.cm.replaceSelection("$$$$");
var __Cursor = shixun_propaedeutics.cm.getDoc().getCursor();
shixun_propaedeutics.cm.setCursor(__Cursor.line, __Cursor.ch-2);
shixun_propaedeutics.cm.focus();
});
$("[type=\"inline\"]").attr("title", "行内公式");
$("[type=\"latex\"]").attr("title", "多行公式");
};
</script>

View File

@ -1,3 +1,6 @@
<%= stylesheet_link_tag '/editormd/css/editormd','/editormd/css/editormd.min.css' %>
<%= javascript_include_tag '/editormd/lib/marked.min.js','/editormd/lib/prettify.min.js','/editormd/lib/raphael.min.js','/editormd/lib/underscore.min.js','/editormd/lib/sequence-diagram.min.js',
'/editormd/lib/flowchart.min.js','/editormd/lib/jquery.flowchart.min.js','/editormd/editormd.js'%>
<div class="with75 fl pr15 mb20" style="box-sizing: border-box;width: 73%">
<!--简介-->
<% if !@subject.description.blank? || User.current.manager_of_subject?(@subject) %>
@ -8,8 +11,10 @@
<a href="<%= edit_subject_path(@subject) %>"><i class="fa fa-pencil fr mt10 mr5 color-grey-c edit-produce"data-tip-down="编辑"></i></a>
<% end %>
</p>
<div class="color-grey3 <%= @subject.description.blank? ? 'color-light-grey' : '' %> justify">
<pre class="pre_word font-15" style="font-family: '微软雅黑','宋体';"><%= @subject.description.blank? ? "暂未填写" : (@subject.description.html_safe) %></pre>
<div class="color-grey3 clearfix <%= @subject.description.blank? ? 'color-light-grey' : '' %> ">
<div id="shixuns_propaedeutics" class="new_li fl" style="padding: 0px;text-align: justify;">
<textarea name="subject[description]" style="display: none"><%= @subject.description.blank? ? "暂未填写" : (@subject.description) %></textarea>
</div>
</div>
</div>
<% end %>
@ -142,7 +147,9 @@
<a href="<%= edit_subject_path(@subject) %>"><i class="fa fa-pencil mt10 mr5 color-grey-c edit-produce font-12"data-tip-down="编辑" style="position: relative;top:-3px"></i></a>
<% end %>
</p>
<div class="mt10 mb10 color-grey justify"><pre class="pre_word font-15" style="font-family: '微软雅黑','宋体';"><%= @subject.learning_notes.blank? ? "暂未填写" : @subject.learning_notes.html_safe %></pre></div>
<div id="subject_learning_notes" class="new_li flmt10 mb10 color-grey" style="margin-bottom: 20px;padding: 0px;text-align: justify;">
<textarea name="subject[learning_notes]" style="display: none"><%= @subject.learning_notes.blank? ? "暂未填写" : @subject.learning_notes %></textarea>
</div>
</div>
<div class="edu-class-right-box ml15 bor-radius4 bor-grey01 pt20 mb40">
<p class="font-18 mb20" style="text-align: center">教学团队
@ -176,6 +183,22 @@
</div>
</div>
<script>
/* -------------- 简介Md -------------------- */
var shixunPro = editormd.markdownToHTML("shixuns_propaedeutics", {
htmlDecode: "style,script,iframe", // you can filter tags decode
taskList: true,
tex: true, // 默认不解析
flowChart: true, // 默认不解析
sequenceDiagram: true // 默认不解析
});
/* -------------- 简介Md -------------------- */
var shixunPro = editormd.markdownToHTML("subject_learning_notes", {
htmlDecode: "style,script,iframe", // you can filter tags decode
taskList: true,
tex: true, // 默认不解析
flowChart: true, // 默认不解析
sequenceDiagram: true // 默认不解析
});
var flag = true;
$(function() {
//初始化拖拽层

View File

@ -63,8 +63,4 @@ $("#activity_post_reply_<%= @user_activity_id%>").html("<%= escape_javascript(re
$("#discusses_count").html("<%= @discusses_count %>");
<% end %>
<% end %>
<% if @discusses_count > 0 %>
$("#discusses_count").html("<%= @discusses_count %>");
//window.location.href = "<%#= myshixun_game_path(@challenge.current_user_game, :myshixun_id => @challenge.current_user_game.try(:myshixun)) %>";
<% end %>
sd_create_editor_from_data(<%= @user_activity_id%>,"","100%", "UserActivity");

View File

@ -832,6 +832,7 @@ RedmineApp::Application.routes.draw do
match 'account/apply_auth', :to => 'account#apply_auth', :via => :post, :as => "apply_auth_account"
match 'account/apply_pro_certification', :to => 'account#apply_pro_certification', :via => :post, :as => "apply_pro_certification_account"
match 'account/check_student_id', :to => 'account#check_student_id', :via => :post
match 'account/check_user_student_id', :to => 'account#check_user_student_id', :via => :post
match 'account/cancel_pro_apply', :to => 'account#cancel_pro_apply', :via => :get, :as => "cancel_pro_apply_account"
match 'account/check_id_number', :to => 'account#check_id_number', :via => :post
match 'account/codepedia_login', :to => 'account#codepedia_login', :via => [:get, :post]

View File

@ -0,0 +1,19 @@
# encoding: utf-8
class MigrateShixunMajorCourse < ActiveRecord::Migration
def up
c_courses = CourseList.where("name = 'C++程序设计' and id != 5")
ShixunMajorCourse.where(:course_list_id => c_courses.map(&:id)).update_all(:course_list_id => 5)
c_courses.destroy_all
c_courses = CourseList.where("id in (70, 86)")
ShixunMajorCourse.where(:course_list_id => c_courses.map(&:id)).update_all(:course_list_id => 1)
c_courses.destroy_all
c_courses = CourseList.where("id = 84")
ShixunMajorCourse.where(:course_list_id => c_courses.map(&:id)).update_all(:course_list_id => 79)
c_courses.destroy_all
end
def down
end
end

View File

@ -246,7 +246,23 @@ function my_account_form_submit() {
$("#school_name_hint").hide();
}
$('#my_account_form').submit();
if($("#user_student_id").parent().is(":visible") == true && $("#user_student_id").val() != ""){
$.ajax({
url: '/account/check_user_student_id',
type: 'post',
data: {student_id:$("#user_student_id").val(), school_id:$("input[name='occupation']").val()},
success: function(data){
if(data.result == 0){
notice_box("该学号已被另一个账号(" + data.account + ")使用");
}
else if (data.result == 1){
$('#my_account_form').submit();
}
}
});
} else{
$('#my_account_form').submit();
}
}
//申请单位
@ -728,7 +744,7 @@ function submit_pro_certification(){
data: {student_id:$("#user_student_id").val(), school_id:$("input[name='occupation']").val()},
success: function(data){
if(data.result == 0){
notice_box("该学号已被另一个账号用于" + data.account + "认证");
notice_box("该学号已被另一个账号" + data.account + "用于认证");
}
else if (data.result == 1){
$('#my_pro_certification_form').submit();
@ -772,7 +788,7 @@ function submit_user_auth(){
success: function(data){
if(data.result == 0){
$("#user_auth_submit_a").removeAttr("disabled");
notice_box("该证件号码已被另一个账号用于" + data.account + "认证");
notice_box("该证件号码已被另一个账号" + data.account + "用于认证");
}
else if (data.result == 1){
$('#my_user_auth_form').submit();

View File

@ -1199,21 +1199,19 @@ function submit_new_subject(){
} else{
$("#new_subject_name_notice").hide();
}
if(subject_description_editor.isEmpty()){
if(shixun_editormd.getValue() == ""){
check = false;
$("#new_subject_description_notice").show();
} else{
$("#new_subject_description_notice").hide();
}
if(subject_learning_notes_editor.isEmpty()){
if(shixun_propaedeutics.getValue() == ""){
check = false;
$("#new_learning_notes_notice").show();
} else {
$("#new_learning_notes_notice").hide();
}
if(check){
subject_description_editor.sync();
subject_learning_notes_editor.sync();
$("#new_subject").submit();
}
}
@ -1226,21 +1224,19 @@ function submit_edit_subject(id){
} else{
$("#new_subject_name_notice").hide();
}
if(subject_description_editor.isEmpty()){
if(shixun_editormd.getValue() == ""){
check = false;
$("#new_subject_description_notice").show();
} else{
$("#new_subject_description_notice").hide();
}
if(subject_learning_notes_editor.isEmpty()){
if(shixun_propaedeutics.getValue() == ""){
check = false;
$("#new_learning_notes_notice").show();
} else {
$("#new_learning_notes_notice").hide();
}
if(check){
subject_description_editor.sync();
subject_learning_notes_editor.sync();
$("#edit_subject_"+id).submit();
}
}