Merge branch 'develop' into cxt_course

This commit is contained in:
cxt 2016-02-25 10:24:33 +08:00
commit 5d5fcda475
15 changed files with 537 additions and 488 deletions

View File

@ -532,9 +532,10 @@ class UsersController < ApplicationController
if @student_work.nil?
@student_work = StudentWork.new
end
@course = @homework.course
respond_to do |format|
format.js
format.html {render :layout => 'new_base_user'}
format.html {render :layout => 'base_courses'}
end
else
render_403

View File

@ -134,8 +134,11 @@ class ZipdownController < ApplicationController
homework_common.student_works.each do |work|
unless work.attachments.empty?
out_file = zip_student_work_by_user(work)
bid_homework_path << out_file.file_path
digests << out_file.file_digest
end
end
homework_id = homework_common.id
@ -172,7 +175,11 @@ class ZipdownController < ApplicationController
}
end
def zip_student_work_by_user work
def make_zip_name(work)
"#{work.user.show_name}_#{((work.user.user_extensions.nil? || work.user.user_extensions.student_id.nil?) ? "" : work.user.user_extensions.student_id)}_#{Time.now.to_i.to_s}"
end
def zip_student_work_by_user(work)
homeworks_attach_path = []
not_exist_file = []
# 需要将所有homework.attachments遍历加入zip
@ -186,11 +193,24 @@ class ZipdownController < ApplicationController
digests << 'not_exist_file'
end
end
#单个文件的话,不需要压缩,只改名
out_file = nil
if homeworks_attach_path.size == 1
out_file = find_or_pack(work.homework_common_id, work.user_id, digests.sort){
zipping("#{work.user.show_name}_#{((work.user.user_extensions.nil? || work.user.user_extensions.student_id.nil?) ? "" : work.user.user_extensions.student_id)}_#{Time.now.to_i.to_s}.zip",
des_path = "#{OUTPUT_FOLDER}/#{make_zip_name(work)}_#{File.basename(homeworks_attach_path.first)}"
FileUtils.cp homeworks_attach_path.first, des_path
des_path
}
else
out_file = find_or_pack(work.homework_common_id, work.user_id, digests.sort){
zipping("#{make_zip_name(work)}.zip",
homeworks_attach_path, OUTPUT_FOLDER, true, not_exist_file)
}
end
out_file
end
def find_or_pack(homework_id, user_id, digests)

View File

@ -80,7 +80,7 @@ module IssuesHelper
issuetype << "support fl"
issuetype << "支持"
elsif value == "功能" || value == 2
issuetype << "function fl"
issuetype << "issues-function fl"
issuetype << "功能"
else
issuetype << "weekly fl"

View File

@ -28,6 +28,7 @@ class Attachment < ActiveRecord::Base
belongs_to :attachmentstype, :foreign_key => "attachtype",:primary_key => "id"
# 被ForgeActivity虚拟关联
has_many :forge_acts, :class_name => 'ForgeActivity',:as =>:forge_act ,:dependent => :destroy
has_many :forwards, :as => :from
# 课程动态
has_many :course_acts, :class_name => 'CourseActivity',:as =>:course_act ,:dependent => :destroy
# end

4
app/models/forward.rb Normal file
View File

@ -0,0 +1,4 @@
class Forward < ActiveRecord::Base
validates_presence_of :from_id, :from_type, :to_id, :to_type
belongs_to :from, :polymorphic => true
end

View File

@ -8,7 +8,7 @@
<% when 1%>
<span class="issues fl" title="缺陷"></span>
<% when 2%>
<span class="function fl" title="功能"></span>
<span class="issues-function fl" title="功能"></span>
<% when 3%>
<span class="support fl" title="支持"></span>
<% when 4%>

View File

@ -1,6 +1,11 @@
<%# course_model %>
<% course_file_num = visable_attachemnts_incourse(@course).count%>
<% is_teacher = User.current.logged? && (User.current.admin? || User.current.allowed_to?(:as_teacher,@course)) %>
<% if User.current.admin? || User.current.allowed_to?(:as_teacher,@course) %>
<% homework_num = @course.homework_commons.count %>
<% else %>
<% homework_num = @course.homework_commons.where("publish_time <= '#{Date.today}'").count %>
<% end %>
<!DOCTYPE html>
<html lang="en">
<head>
@ -74,7 +79,7 @@
<% unless show_nav?(@course.homework_commons.count) %>
<div class="subNav">
<%= link_to l(:label_homework), homework_common_index_path(:course => @course.id), :class => "f14 c_blue02"%>
<%= link_to "(#{@course.homework_commons.count})", homework_common_index_path(:course => @course.id), :class => "subnav_num c_orange"%>
<%= link_to "(#{homework_num})", homework_common_index_path(:course => @course.id), :class => "subnav_num c_orange"%>
<%= link_to( "", homework_common_index_path(:course => @course.id,:is_new => 1), :class => 'courseMenuSetting', :title =>"#{l(:label_course_homework_new)}") if is_teacher %>
</div>
<% end %>

View File

@ -59,9 +59,10 @@
<div class="w607 fr">http//
<input type="text" name="organization[domain]" id="domain" value="<%= domain.nil? ? '' : domain.subname %>" class="orgUrlInput" />
.trustie.net<a href="javascript:void(0);" class="linkBlue ml15" style="text-decoration:underline;" onclick="apply_subdomain(<%= @organization.id %>,$('#domain').val());">申请</a>
<% if domain.present? and OrgMessage.where("organization_id=? and message_type='ApplySubdomain'", @organization.id).order("updated_at desc").first.content == domain.subname %>
<% record = OrgMessage.where("organization_id=? and message_type='ApplySubdomain'", @organization.id).order("updated_at desc").first %>
<% if domain.present? and record.present? and record.content == domain.subname %>
<span>(已批准)</span>
<% elsif OrgMessage.where("organization_id=? and message_type='ApplySubdomain'", @organization.id).count > 0 %>
<% elsif record %>
<span>(您申请了子域名<%= OrgMessage.where("organization_id=? and message_type='ApplySubdomain'", @organization.id).order("updated_at desc").first.content %>,还未批准)</span>
<% end %>
<p class="c_green f12" id="apply_hint" ></p></div>

View File

@ -18,7 +18,7 @@
<% when 1%>
<span class="issues fl" title="缺陷"></span>
<% when 2%>
<span class="function fl" title="功能"></span>
<span class="issues-function fl" title="功能"></span>
<% when 3%>
<span class="support fl" title="支持"></span>
<% when 4%>

View File

@ -4,7 +4,12 @@
<%= stylesheet_link_tag "/assets/codemirror/codemirror" %>
<% end %>
<script type="text/javascript">
$(function(){
$("#RSide").removeAttr("id");
$("#Container").css("width","1000px");
});
</script>
<!-- 模板1开始可以使用scripttype设置为text/html来存放模板片段并且用id标示 -->
<script id="t:result-list" type="text/html">
<div class="ProResultTop">
@ -40,7 +45,7 @@
</script>
<!-- 模板1结束 -->
<div class="ProgramHomework">
<div class="ProgramHomework ml10">
<div class="homepageRightBanner mb10">
@ -91,7 +96,9 @@
</div>
<div class="mt10">
<a href="javascript:void(0);" class="BlueCirBtn fl" data-homework-id="<%=@homework.id%>" data-student-work-id="<%=@student_work.id%>" id="test-program-btn">测试代码</a>
<% unless @is_test %>
<% if @is_test %>
<%=link_to '返 回',course_path(@course),:class=>'fr mt6' %>
<% else @is_test %>
<a href="javascript:void(0);" class="BlueCirBtn fr" id="commit-program-work-btn">提交代码</a>
<% end %>
<div class="cl"></div>

View File

@ -0,0 +1,15 @@
class CreateForwards < ActiveRecord::Migration
def up
create_table :forwards do|t|
t.integer :from_id
t.string :from_type
t.integer :to_id
t.string :to_type
t.timestamp :created_at
end
end
def down
drop_table :forwards
end
end

View File

@ -1405,7 +1405,7 @@ span.at a{color:#269ac9;text-decoration: none;}
.issues{ background:url(../images/public_icon.png) -66px 5px no-repeat; width:18px; height:21px;}
.duty{ background:url(../images/public_icon.png) -66px -18px no-repeat; width:18px; height:21px;}
.support{ background:url(../images/public_icon.png) -66px -45px no-repeat; width:18px; height:21px;}
.function{ background:url(../images/public_icon.png) -66px -70px no-repeat; width:18px; height:21px;}
.issues-function{ background:url(../images/public_icon.png) -66px -70px no-repeat; width:18px; height:21px;}
.weekly{ background:url(../images/public_icon.png) -66px -95px no-repeat; width:18px; height:21px;}
/*资源发送到org*/

View File

@ -200,12 +200,6 @@ a.pro_mes_w_news{ height:20px; float:right;display:block; color:#999999;}
.pro_info_box ul li{ height:24px;}
.pro_info_p{color:#0781b4 !important; float:left; width:80px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; }
.edit_pro_box{overflow:hidden;display:none; margin-bottom:30px; border-bottom:1px dashed #CCC; padding-bottom:10px;}
/*问题状态图片*/
.issues{ background:url(../images/public_icon.png) -66px 5px no-repeat; width:16px; height:21px;}
.duty{ background:url(../images/public_icon.png) -66px -18px no-repeat; width:16px; height:21px;}
.support{ background:url(../images/public_icon.png) -66px -45px no-repeat; width:16px; height:21px;}
.function{ background:url(../images/public_icon.png) -66px -70px no-repeat; width:16px; height:21px;}
.weekly{ background:url(../images/public_icon.png) -66px -95px no-repeat; width:16px; height:21px;}
/****翻页***/
ul.wlist{ float:right; border-bottom:none; height:30px; margin-top:20px; }
ul.wlist li{float: left;}
@ -1084,7 +1078,7 @@ a:hover.link_file_a{ background:url(../images/pic_file.png) 0 -25px no-repeat; c
.issues{ background:url(../images/public_icon.png) -66px 5px no-repeat; width:18px; height:21px;}
.duty{ background:url(../images/public_icon.png) -66px -18px no-repeat; width:18px; height:21px;}
.support{ background:url(../images/public_icon.png) -66px -45px no-repeat; width:18px; height:21px;}
.function{ background:url(../images/public_icon.png) -66px -70px no-repeat; width:18px; height:21px;}
.issues-function{ background:url(../images/public_icon.png) -66px -70px no-repeat; width:18px; height:21px;}
.weekly{ background:url(../images/public_icon.png) -66px -95px no-repeat; width:18px; height:21px;}
.upload_img img{max-width: 100%;}

View File

@ -113,6 +113,7 @@ h4{ font-size:14px; color:#3b3b3b;}
.mt0 {margin-top:0px !important;}
.mt3{ margin-top:3px;}
.mt5{ margin-top:5px;}
.mt6{ margin-top:6px;}
.mt8{ margin-top:8px;}
.mt10{ margin-top:10px !important;}
.mt20{margin-top: 20px;}