版本库默认打开设置文件
This commit is contained in:
parent
9e5ba45b5c
commit
b3141348b0
|
@ -17,10 +17,20 @@ class GamesController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
# mushixun的版本库必须创建时就创建
|
# mushixun的版本库必须创建时就创建
|
||||||
|
# 首次进入版本库自动打开文件
|
||||||
|
# path:"" && path: @game.path
|
||||||
def show
|
def show
|
||||||
|
game_path = @game.path
|
||||||
@rev = @rev.nil? ? "master" : @rev
|
@rev = @rev.nil? ? "master" : @rev
|
||||||
@git_url = git_repository_url(@myshixun, "Myshixun")
|
@git_url = git_repository_url(@myshixun, "Myshixun")
|
||||||
|
# 默认打开文件
|
||||||
|
if @path == "" && !game_path.nil? && !@repository.cat(game_path, @rev).blank?
|
||||||
|
@path = game_path
|
||||||
|
@file_open = true
|
||||||
|
@content = @repository.cat(@path, @rev)
|
||||||
|
else
|
||||||
@entries = @repository.entries(@path, @rev)
|
@entries = @repository.entries(@path, @rev)
|
||||||
|
end
|
||||||
@latest_output = @game.latest_output.try(:out_put)
|
@latest_output = @game.latest_output.try(:out_put)
|
||||||
outputs = @game.outputs
|
outputs = @game.outputs
|
||||||
@had_done = 1 if (@myshixun.games.count == @game.stage && @game.status ==2)
|
@had_done = 1 if (@myshixun.games.count == @game.stage && @game.status ==2)
|
||||||
|
@ -33,6 +43,8 @@ class GamesController < ApplicationController
|
||||||
format.html
|
format.html
|
||||||
format.js
|
format.js
|
||||||
end
|
end
|
||||||
|
rescue
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
# 代码预览
|
# 代码预览
|
||||||
|
@ -47,9 +59,9 @@ class GamesController < ApplicationController
|
||||||
def file_edit
|
def file_edit
|
||||||
entry_and_raw(false)
|
entry_and_raw(false)
|
||||||
@content = @repository.cat(@path, @rev).rstrip
|
@content = @repository.cat(@path, @rev).rstrip
|
||||||
respond_to do |format|
|
# respond_to do |format|
|
||||||
format.js
|
# format.js
|
||||||
end
|
# end
|
||||||
end
|
end
|
||||||
|
|
||||||
def file_update
|
def file_update
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<div class="panel-header clearfix" style="border: none">
|
<div class="panel-header clearfix" style="border: none">
|
||||||
<h3 class="fl"><%= render :partial => 'myshixun_breadcrumbs', :locals => {:path => @path, :kind => 'dir', :revision => @rev} %></h3>
|
<h3 class="fl"><%= render :partial => 'myshixun_breadcrumbs', :locals => {:path => @path, :kind => 'dir', :revision => @rev} %></h3>
|
||||||
<div class="fr mt5">
|
<div class="fr mt5">
|
||||||
<% if params[:action] == "entry" %>
|
<% if params[:action] == "entry" || @file_open %>
|
||||||
<a href="javascript:void(0)" class="undis" id="sava_edit_btn" onclick="file_edit_submit()" title="保存修改"><i class="fa fa-save font-18 fl color-grey mr10"></i></a>
|
<a href="javascript:void(0)" class="undis" id="sava_edit_btn" onclick="file_edit_submit()" title="保存修改"><i class="fa fa-save font-18 fl color-grey mr10"></i></a>
|
||||||
<a href="<%= file_edit_myshixun_game_path(@game, :myshixun_id => @myshixun, :path => params[:path]) %>" data-remote="true" ><i class="fa fa-edit font-18 fl color-grey mr10"></i></a>
|
<a href="<%= file_edit_myshixun_game_path(@game, :myshixun_id => @myshixun, :path => params[:path]) %>" data-remote="true" ><i class="fa fa-edit font-18 fl color-grey mr10"></i></a>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
@ -9,7 +9,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="content-history-extend">
|
<div class="content-history-extend">
|
||||||
<% if params[:action] == "entry" %>
|
<% if params[:action] == "entry" || @file_open %>
|
||||||
<div id="file_entry_content_inner">
|
<div id="file_entry_content_inner">
|
||||||
<%= render :partial => 'common/extend_file', :locals => {:filename => @path, :content => @content, :extend => true} %>
|
<%= render :partial => 'common/extend_file', :locals => {:filename => @path, :content => @content, :extend => true} %>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<%= render :partial => 'myshixun_breadcrumbs', :locals => {:path => @path, :kind => 'dir', :revision => @rev} %>
|
<%= render :partial => 'myshixun_breadcrumbs', :locals => {:path => @path, :kind => 'dir', :revision => @rev} %>
|
||||||
</h3>
|
</h3>
|
||||||
<div class="fr mt5">
|
<div class="fr mt5">
|
||||||
<% if params[:action] == "entry" %>
|
<% if params[:action] == "entry" || @file_open %>
|
||||||
<a href="javascript:void(0)" class="undis" id="sava_edit_btn1" onclick="file_edit_submit()" title="保存修改"><i class="fa fa-save font-18 fl color-grey mr10"></i></a>
|
<a href="javascript:void(0)" class="undis" id="sava_edit_btn1" onclick="file_edit_submit()" title="保存修改"><i class="fa fa-save font-18 fl color-grey mr10"></i></a>
|
||||||
<a href="javascript:void(0)" class="undis" id="sava_edit_btn1" onclick="file_edit_submit()"><i class="fa fa-save font-18 fl color-grey mr10"></i></a>
|
<a href="javascript:void(0)" class="undis" id="sava_edit_btn1" onclick="file_edit_submit()"><i class="fa fa-save font-18 fl color-grey mr10"></i></a>
|
||||||
<a href="<%= file_edit_myshixun_game_path(@game, :myshixun_id => @myshixun, :path => params[:path]) %>" data-remote="true" ><i class="fa fa-edit font-18 fl color-grey mr10"></i></a>
|
<a href="<%= file_edit_myshixun_game_path(@game, :myshixun_id => @myshixun, :path => params[:path]) %>" data-remote="true" ><i class="fa fa-edit font-18 fl color-grey mr10"></i></a>
|
||||||
|
@ -12,7 +12,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="content-editor-inner">
|
<div class="content-editor-inner">
|
||||||
<% if params[:action] == "entry" %>
|
<% if params[:action] == "entry" || @file_open %>
|
||||||
<div id="file_entry_content">
|
<div id="file_entry_content">
|
||||||
<%= render :partial => 'common/file', :locals => {:filename => @path, :content => @content} %>
|
<%= render :partial => 'common/file', :locals => {:filename => @path, :content => @content} %>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,33 +0,0 @@
|
||||||
<%= javascript_include_tag 'baiduTemplate', 'jquery.datetimepicker.js' %>
|
|
||||||
<%= javascript_include_tag "/assets/codemirror/codemirror_python_ruby_c" %>
|
|
||||||
<%= stylesheet_link_tag "/assets/codemirror/codemirror" %>
|
|
||||||
<%= form_tag(:controller => 'games', :action => 'file_update', :id => @game, :myshixun_id => @myshixun) do%>
|
|
||||||
<li class="clearfix" xmlns="http://www.w3.org/1999/html">
|
|
||||||
<label class=" panel-form-label fl"> 参考答案:</label>
|
|
||||||
<textarea class = "panel-form-width-690 panel-form-height-150 fl task-textarea-pd">
|
|
||||||
<%= Redmine::CodesetUtil.replace_invalid_utf8(@content) %>
|
|
||||||
</textarea>
|
|
||||||
<script>
|
|
||||||
var text = document.getElementById("challenge-answer");
|
|
||||||
</script>
|
|
||||||
</li>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<script type="text/javascript">
|
|
||||||
var editor = CodeMirror.fromTextArea(document.getElementById("challenge-answer"), {
|
|
||||||
mode: {name: 'text/x-java',
|
|
||||||
version: 2,
|
|
||||||
singleLineStringErrors: false},
|
|
||||||
lineNumbers: true,
|
|
||||||
indentUnit: 2,
|
|
||||||
matchBrackets: true
|
|
||||||
});
|
|
||||||
|
|
||||||
editor.on('change',function(cMirror){
|
|
||||||
// get value right from instance
|
|
||||||
$('#challenge-answer').val(cMirror.getValue());
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</script>
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
class AddPathToGames < ActiveRecord::Migration
|
||||||
|
def change
|
||||||
|
add_column :games, :path, :string
|
||||||
|
end
|
||||||
|
end
|
|
@ -11,7 +11,7 @@
|
||||||
#
|
#
|
||||||
# It's strongly recommended to check this file into your version control system.
|
# It's strongly recommended to check this file into your version control system.
|
||||||
|
|
||||||
ActiveRecord::Schema.define(:version => 20170323081518) do
|
ActiveRecord::Schema.define(:version => 20170324054735) do
|
||||||
|
|
||||||
create_table "activities", :force => true do |t|
|
create_table "activities", :force => true do |t|
|
||||||
t.integer "act_id", :null => false
|
t.integer "act_id", :null => false
|
||||||
|
@ -1091,6 +1091,7 @@ ActiveRecord::Schema.define(:version => 20170323081518) do
|
||||||
t.text "answer"
|
t.text "answer"
|
||||||
t.integer "score"
|
t.integer "score"
|
||||||
t.integer "final_score", :default => 0
|
t.integer "final_score", :default => 0
|
||||||
|
t.string "path"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "groups_users", :id => false, :force => true do |t|
|
create_table "groups_users", :id => false, :force => true do |t|
|
||||||
|
|
Loading…
Reference in New Issue