parent
1eb0cf06e5
commit
62ab862516
|
@ -5,8 +5,9 @@ class ChallengesController < ApplicationController
|
|||
before_filter :find_challenge, :only => [:show, :edit, :update, :challenge_build, :index_up, :index_down, :destroy]
|
||||
before_filter :authorize_tpi, :only => [:new, :create]
|
||||
before_filter :build_challege_from_params, :only => [:new, :create]
|
||||
before_filter :tpi_manager_allowed, :only => [:challenge_build]
|
||||
before_filter :tpi_manager_allowed, :only => [:challenge_build, :destroy, :show, :edit, :new]
|
||||
before_filter :query_challeges, :only => [:show, :edit, :update]
|
||||
# before_filter :is_members, :only => [:show, :edit]
|
||||
|
||||
include ApplicationHelper
|
||||
|
||||
|
@ -197,6 +198,10 @@ class ChallengesController < ApplicationController
|
|||
end
|
||||
|
||||
private
|
||||
def is_members
|
||||
render_403 unless User.current.manager_of_shixun?(@shixun)
|
||||
end
|
||||
|
||||
def count_input input, output
|
||||
if input.length == 0 && output.length == 0
|
||||
result = 0
|
||||
|
@ -208,7 +213,7 @@ class ChallengesController < ApplicationController
|
|||
end
|
||||
|
||||
def tpi_manager_allowed
|
||||
unless (@shixun.tpi? && User.current.manager_of_shixun?(@shixun))
|
||||
unless (User.current.manager_of_shixun?(@shixun))
|
||||
render_403
|
||||
end
|
||||
end
|
||||
|
|
|
@ -37,8 +37,12 @@ module ApplicationHelper
|
|||
# 定义实训相关方法
|
||||
# myshixun 最高分
|
||||
def top_score shixun, position
|
||||
Game.find_by_sql("SELECT max(final_score) FROM `games` where stage=#{position} and myshixun_id in (SELECT id FROM `myshixuns` where parent_id=#{shixun.id})").first
|
||||
Game.find_by_sql("SELECT max(final_score) as score FROM `games` where stage=#{position} and myshixun_id in (SELECT id FROM `myshixuns` where parent_id=#{shixun.id})").first
|
||||
end
|
||||
|
||||
# 实训平均分
|
||||
def shixun_avg_score shixun, position
|
||||
Game.find_by_sql("SELECT avg(final_score) as avg_score FROM `games` where stage=#{position} and myshixun_id in (SELECT id FROM `myshixuns` where parent_id=#{shixun.id})")
|
||||
end
|
||||
|
||||
# 正在进行中任务
|
||||
|
@ -52,14 +56,11 @@ module ApplicationHelper
|
|||
end
|
||||
|
||||
# 测评次数
|
||||
def shixun_exec_total_count shixun
|
||||
Game.find_by_sql("SELECT * FROM `outputs` op, `games` g, `myshixuns` m where op.game_id = g.id and m.parent_id = '#{shixun.id}';")
|
||||
def shixun_exec_total_count shixun, position
|
||||
Game.find_by_sql("SELECT * FROM `outputs` op, `games` g, `myshixuns` m where op.game_id = g.id and g.stage='#{position}' and m.parent_id = '#{shixun.id}';")
|
||||
end
|
||||
|
||||
# 实训平均分
|
||||
def shixun_avg
|
||||
|
||||
end
|
||||
|
||||
# 平均耗时
|
||||
def shixun_avg
|
||||
|
|
|
@ -24,9 +24,9 @@
|
|||
<p class="ml15 mt15 color-grey">
|
||||
<span class=" mr10">正在挑战:<%= shixun_running @shixun %></span>
|
||||
<span class=" mr10">完成挑战:<%= shixun_done @shixun %></span>
|
||||
<span class=" mr10">最佳表现:98分</span>
|
||||
<span class=" mr10">测评次数:3次</span>
|
||||
<span class=" mr10">平均表现:80分 </span>
|
||||
<span class=" mr10">最佳表现:<%= top_score(@shixun, challenge.position).score.to_i %>分</span>
|
||||
<span class=" mr10">测评次数:<%= shixun_exec_total_count(@shixun, challenge.position).count %>次</span>
|
||||
<!--<span class=" mr10">平均表现:<%#= shixun_avg_score(@shixun, challenge.position).avg_score.to_i %>分 </span>-->
|
||||
</p>
|
||||
</div>
|
||||
<script>
|
||||
|
|
|
@ -84,7 +84,7 @@ module Trustie
|
|||
snippets_enabled: false,
|
||||
public: false,
|
||||
user_id: gid,
|
||||
visibility_level: UserLevel::PUBLIC
|
||||
visibility_level: UserLevel::PUBLIC
|
||||
)
|
||||
shixun.gpid = gshixun.id
|
||||
shixun.save!
|
||||
|
|
|
@ -127,7 +127,7 @@ a.rightbar-pause{ color:#29bd8b; font-size: 18px; margin-right:245px; margin-top
|
|||
.content-submit{width:10%; min-width:135px;}
|
||||
.content-submitbox{ height: 80px; width:120px; margin: 15px auto;}
|
||||
.panel-inner{ background:#EFF2F7; margin:15px; padding:15px;}
|
||||
.panel-inner-title{ font-size: 14px; color: #666;}
|
||||
.panel-inner-title{ font-size: 14px; color: #666; max-width: 85%; line-height: 30px; word-wrap: break-word;}
|
||||
/* 弹框 */
|
||||
.task-popup{ width: 30%;background: #fff; border:1px solid #e8e8e8; border-radius:3px; -webkit-box-shadow:0 0 10px #ccc; -moz-box-shadow:0 0 10px #ccc; box-shadow:0 0 10px #ccc; margin: 50px auto;}
|
||||
.task-popup-text-center{ text-align: center; color: #666;}
|
||||
|
|
Loading…
Reference in New Issue