Merge branch 'szzh' of http://xianbo_trustie2@repository.trustie.net/xianbo/trustie2.git into szzh
This commit is contained in:
commit
f90927313d
|
@ -807,6 +807,7 @@ class BidsController < ApplicationController
|
||||||
@bid.is_evaluation = params[:bid][:is_evaluation]
|
@bid.is_evaluation = params[:bid][:is_evaluation]
|
||||||
@bid.proportion = params[:bid][:proportion]
|
@bid.proportion = params[:bid][:proportion]
|
||||||
@bid.evaluation_num = params[:bid][:evaluation_num]
|
@bid.evaluation_num = params[:bid][:evaluation_num]
|
||||||
|
@bid.open_anonymous_evaluation = params[:bid][:open_anonymous_evaluation]
|
||||||
@bid.reward_type = 3
|
@bid.reward_type = 3
|
||||||
# @bid.budget = params[:bid][:budget]
|
# @bid.budget = params[:bid][:budget]
|
||||||
@bid.deadline = params[:bid][:deadline]
|
@bid.deadline = params[:bid][:deadline]
|
||||||
|
@ -863,6 +864,7 @@ class BidsController < ApplicationController
|
||||||
@bid.is_evaluation = params[:bid][:is_evaluation]
|
@bid.is_evaluation = params[:bid][:is_evaluation]
|
||||||
@bid.proportion = params[:bid][:proportion]
|
@bid.proportion = params[:bid][:proportion]
|
||||||
@bid.evaluation_num = params[:bid][:evaluation_num]
|
@bid.evaluation_num = params[:bid][:evaluation_num]
|
||||||
|
@bid.open_anonymous_evaluation = params[:bid][:open_anonymous_evaluation]
|
||||||
@bid.reward_type = 3
|
@bid.reward_type = 3
|
||||||
@bid.deadline = params[:bid][:deadline]
|
@bid.deadline = params[:bid][:deadline]
|
||||||
@bid.budget = 0
|
@bid.budget = 0
|
||||||
|
|
|
@ -511,6 +511,7 @@ class CoursesController < ApplicationController
|
||||||
def new_homework
|
def new_homework
|
||||||
@homework = Bid.new
|
@homework = Bid.new
|
||||||
@homework.safe_attributes = params[:bid]
|
@homework.safe_attributes = params[:bid]
|
||||||
|
@homework.open_anonymous_evaluation = 1
|
||||||
if (User.current.logged? && User.current.member_of_course?(Course.find params[:id] ))
|
if (User.current.logged? && User.current.member_of_course?(Course.find params[:id] ))
|
||||||
render :layout => 'base_courses'
|
render :layout => 'base_courses'
|
||||||
else
|
else
|
||||||
|
|
|
@ -60,7 +60,7 @@ class IssuesController < ApplicationController
|
||||||
sort_update(@query.sortable_columns)
|
sort_update(@query.sortable_columns)
|
||||||
@query.sort_criteria = sort_criteria.to_a
|
@query.sort_criteria = sort_criteria.to_a
|
||||||
|
|
||||||
@project_base_tag = (params[:project_id] || @issue.project) ? 'base_projects':'base'#by young
|
@project_base_tag = (params[:project_id] || @issue.project) ? 'base_projects':'base'
|
||||||
|
|
||||||
if @query.valid?
|
if @query.valid?
|
||||||
case params[:format]
|
case params[:format]
|
||||||
|
|
|
@ -30,7 +30,7 @@ class Forum < ActiveRecord::Base
|
||||||
|
|
||||||
def destroyable_by? user
|
def destroyable_by? user
|
||||||
# user && user.logged? && Forum.find(self.forum_id).creator_id == user.id || user.admin?
|
# user && user.logged? && Forum.find(self.forum_id).creator_id == user.id || user.admin?
|
||||||
user.admin?
|
self.creator == user || user.admin?
|
||||||
end
|
end
|
||||||
|
|
||||||
# Updates topic_count, memo_count and last_memo_id attributes for +board_id+
|
# Updates topic_count, memo_count and last_memo_id attributes for +board_id+
|
||||||
|
|
|
@ -88,11 +88,11 @@ class Memo < ActiveRecord::Base
|
||||||
|
|
||||||
def editable_by? user
|
def editable_by? user
|
||||||
# user && user.logged? || (self.author == usr && usr.allowed_to?(:edit_own_messages, project))
|
# user && user.logged? || (self.author == usr && usr.allowed_to?(:edit_own_messages, project))
|
||||||
user.admin?
|
(user && self.author == user) || user.admin?
|
||||||
end
|
end
|
||||||
|
|
||||||
def destroyable_by? user
|
def destroyable_by? user
|
||||||
(user && user.logged? && (Forum.find(self.forum_id).creator_id == user.id) ) || user.admin?
|
(user && self.author == user) || user.admin?
|
||||||
#self.author == user || user.admin?
|
#self.author == user || user.admin?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
|
|
||||||
|
|
||||||
/* 匿名评分弹框 */
|
/* 匿名评分弹框 */
|
||||||
.anonymos{width:480px;height:180px;position:absolute;z-index:100;left:50%;top:50%;margin:-215px 0 0 -300px; background:#fff; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; box-shadow:0px 0px 8px #194a81; overflow:auto;}
|
.anonymos{width:480px;height:180px;position:fixed;z-index:100;left:50%;top:50%;margin:-215px 0 0 -300px; background:#fff; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; box-shadow:0px 0px 8px #194a81; overflow:auto;}
|
||||||
.ni_con { width:425px; margin:25px 30px;}
|
.ni_con { width:425px; margin:25px 30px;}
|
||||||
.ni_con h2{ display:block; height:40px; width:425px; text-align:center; color:#3a3a3a;}
|
.ni_con h2{ display:block; height:40px; width:425px; text-align:center; color:#3a3a3a;}
|
||||||
.ni_con p{ color:#808181; }
|
.ni_con p{ color:#808181; }
|
||||||
|
|
|
@ -1,4 +1,38 @@
|
||||||
<!--modified by huang-->
|
<!--modified by huang-->
|
||||||
|
<script type="text/javascript">
|
||||||
|
function ShowCountDown(year,month,day,divname)
|
||||||
|
{
|
||||||
|
var now = new Date();
|
||||||
|
var endDate = new Date(year, month-1, day);
|
||||||
|
var leftTime=endDate.getTime()-now.getTime();
|
||||||
|
var leftsecond = parseInt(leftTime/1000);
|
||||||
|
var day1=Math.floor(leftsecond/(60*60*24));
|
||||||
|
var hour=Math.floor((leftsecond-day1*24*60*60)/3600);
|
||||||
|
var minute=Math.floor((leftsecond-day1*24*60*60-hour*3600)/60);
|
||||||
|
var second=Math.floor(leftsecond-day1*24*60*60-hour*3600-minute*60);
|
||||||
|
$("#"+divname).html("<span style='color: #acaeb1;'>作业提交还剩 :</span> <span style='color: red;'>"
|
||||||
|
+day1+" </span><span style='color: #acaeb1;'>天</span><span style='color: red;'> "
|
||||||
|
+hour+" </span><span style='color: #acaeb1;'>时</span><span style='color: red;'> "
|
||||||
|
+minute+" </span><span style='color: #acaeb1;'>分</span><span style='color: red;'> "
|
||||||
|
+second+" </span><span style='color: #acaeb1;'>秒</span>");
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style>
|
||||||
|
.span_wping{}
|
||||||
|
.span_wping a{
|
||||||
|
margin-top: 18px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
width: 43px;
|
||||||
|
height: 23px;
|
||||||
|
background: #15bccf;
|
||||||
|
color: #fff;
|
||||||
|
text-align: center;
|
||||||
|
padding-top: 3px;
|
||||||
|
padding-left: 3px;
|
||||||
|
}
|
||||||
|
.span_wping a:hover{ background-color:#03a1b3;}
|
||||||
|
</style>
|
||||||
|
|
||||||
<% if bids.blank? %>
|
<% if bids.blank? %>
|
||||||
<%#= l(:label_uncommit_homework) %>
|
<%#= l(:label_uncommit_homework) %>
|
||||||
暂无作业!
|
暂无作业!
|
||||||
|
@ -26,7 +60,15 @@
|
||||||
<% if User.current.logged? && is_cur_course_student(@course) %>
|
<% if User.current.logged? && is_cur_course_student(@course) %>
|
||||||
<% cur_user_homework = cur_user_homework_for_bid(bid) %>
|
<% cur_user_homework = cur_user_homework_for_bid(bid) %>
|
||||||
<% if cur_user_homework!= nil && cur_user_homework.empty? %>
|
<% if cur_user_homework!= nil && cur_user_homework.empty? %>
|
||||||
<%= link_to l(:label_commit_homework),new_exercise_book_path(bid) %>
|
<% if bid.comment_status == 0 || bid.comment_status == 2%>
|
||||||
|
<span class="span_wping">
|
||||||
|
<%= link_to l(:label_commit_homework),new_exercise_book_path(bid) %>
|
||||||
|
</span>
|
||||||
|
<% else %>
|
||||||
|
<span title="匿评阶段不可提交作业!" class="span_wping">
|
||||||
|
<a style="width:80px; margin:20px 0 0 350px;background:#8e8e8e;">提交作业</a>
|
||||||
|
</span>
|
||||||
|
<% end %>
|
||||||
<% else %>
|
<% else %>
|
||||||
<span style="color: green; float: right">
|
<span style="color: green; float: right">
|
||||||
<%= l(:lable_has_commit_homework)%>
|
<%= l(:lable_has_commit_homework)%>
|
||||||
|
@ -34,7 +76,8 @@
|
||||||
<% end %>
|
<% end %>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% if (User.current.admin?||User.current.id==bid.author_id) %>
|
<% if (User.current.admin?||User.current.id==bid.author_id) %>
|
||||||
<span id="<%=bid.id %>_anonymous_comment">
|
<% if bid.open_anonymous_evaluation == 1%>
|
||||||
|
<span id="<%=bid.id %>_anonymous_comment" class="span_wping">
|
||||||
<% case bid.comment_status %>
|
<% case bid.comment_status %>
|
||||||
<% when 0 %>
|
<% when 0 %>
|
||||||
<%= link_to '启动匿评', alert_anonymous_comment_bid_path(bid), id: "#{bid.id}_start_anonymous_comment", remote: true, disable_with: '加载中...' %>
|
<%= link_to '启动匿评', alert_anonymous_comment_bid_path(bid), id: "#{bid.id}_start_anonymous_comment", remote: true, disable_with: '加载中...' %>
|
||||||
|
@ -44,11 +87,13 @@
|
||||||
匿评结束
|
匿评结束
|
||||||
<% end %>
|
<% end %>
|
||||||
</span>
|
</span>
|
||||||
<%= link_to(
|
<%end%>
|
||||||
|
<span class="span_wping">
|
||||||
|
<%= link_to(
|
||||||
l(:button_edit),
|
l(:button_edit),
|
||||||
{:action => 'edit', :controller=>'bids', :course_id =>@course.id, :bid_id => bid.id},
|
{:action => 'edit', :controller=>'bids', :course_id =>@course.id, :bid_id => bid.id}
|
||||||
:class => 'icon icon-edit'
|
|
||||||
) %>
|
) %>
|
||||||
|
</span>
|
||||||
<%#= link_to(
|
<%#= link_to(
|
||||||
l(:button_delete),
|
l(:button_delete),
|
||||||
{:action => 'homework_destroy', :controller=>'bids', :course_id => bid.id},
|
{:action => 'homework_destroy', :controller=>'bids', :course_id => bid.id},
|
||||||
|
@ -94,19 +139,6 @@
|
||||||
</strong>
|
</strong>
|
||||||
)
|
)
|
||||||
</span>
|
</span>
|
||||||
<span style="float: right">
|
|
||||||
<% if betweentime(bid.deadline) < 0 %>
|
|
||||||
<span style="color: red; float: right">
|
|
||||||
<%= l(:label_commit_limit)%>
|
|
||||||
</span>
|
|
||||||
<% else %>
|
|
||||||
<% if betweentime(bid.deadline) < 3 %>
|
|
||||||
<span style="color: red">
|
|
||||||
<%= l(:label_commit_ar) %>
|
|
||||||
</span>
|
|
||||||
<% end %>
|
|
||||||
<% end %>
|
|
||||||
</span>
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -146,10 +178,18 @@
|
||||||
<%=format_time bid.created_on %>
|
<%=format_time bid.created_on %>
|
||||||
</span>
|
</span>
|
||||||
<span style="float: right">
|
<span style="float: right">
|
||||||
<%= l(:field_deadline) %>
|
<% if betweentime(bid.deadline) < 0 %>
|
||||||
:
|
<span style="color: red; float: right">
|
||||||
<%=bid.deadline %>
|
<%= l(:label_commit_limit)%>
|
||||||
</span>
|
</span>
|
||||||
|
<% else %>
|
||||||
|
<script type="text/javascript">
|
||||||
|
window.setInterval(function(){ShowCountDown(<%= bid.deadline.year%>,<%= bid.deadline.month%>,<%= bid.deadline.day + 1%>,"show_deadtime_span_<%= bid.id%>");},1000)
|
||||||
|
</script>
|
||||||
|
<span id="show_deadtime_span_<%= bid.id%>" style="float: right">
|
||||||
|
</span>
|
||||||
|
<% end %>
|
||||||
|
</span>
|
||||||
</td>
|
</td>
|
||||||
<td></td>
|
<td></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
|
@ -43,9 +43,9 @@
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
<% unless @is_teacher%>
|
<% unless @is_teacher%>
|
||||||
<% if @bid.comment_status == 0%>
|
<% if @bid.comment_status == 0 && @bid.open_anonymous_evaluation == 1%>
|
||||||
$("#my_homework").click();
|
$("#my_homework").click();
|
||||||
<% elsif @bid.comment_status == 2%>
|
<% elsif @bid.comment_status == 2 || @bid.open_anonymous_evaluation == 0%>
|
||||||
$("#all_homeworks").click();
|
$("#all_homeworks").click();
|
||||||
<% end %>
|
<% end %>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
|
@ -44,6 +44,10 @@
|
||||||
<%= f.select :proportion, proportion_option %>
|
<%= f.select :proportion, proportion_option %>
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
|
<%= f.check_box :open_anonymous_evaluation, :style => "margin-left:10px;" %>
|
||||||
|
<span>未开启匿评作业将直接进入众评点赞阶段</span>
|
||||||
|
</p>
|
||||||
|
<p id="evaluation_num_p">
|
||||||
<%= f.text_field :evaluation_num, :required => true, :size => 60, :style => "width:150px;", :onblur => "regexEvaluationNum();" , :maxlength => 4%>
|
<%= f.text_field :evaluation_num, :required => true, :size => 60, :style => "width:150px;", :onblur => "regexEvaluationNum();" , :maxlength => 4%>
|
||||||
<span id="bid_evaluation_num_span">匿评分配数量不宜太大,否则会影响开启匿评速度</span>
|
<span id="bid_evaluation_num_span">匿评分配数量不宜太大,否则会影响开启匿评速度</span>
|
||||||
</p>
|
</p>
|
||||||
|
|
|
@ -28,14 +28,17 @@
|
||||||
</ul>
|
</ul>
|
||||||
<% else %>
|
<% else %>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="tb_5" class="hovertab">
|
<% if @bid.open_anonymous_evaluation == 1%>
|
||||||
<%= link_to @bid.comment_status == 2 ? "已评作品" : "待评作品", get_student_batch_homework_homework_attach_index_path(:bid_id => @bid.id), {id: 'student_batch_homework',:remote => true}%>
|
<li id="tb_5" class="hovertab">
|
||||||
</li>
|
<!-- 开启了匿评才能看到匿评列表 -->
|
||||||
|
<%= link_to @bid.comment_status == 2 ? "已评作品" : "待评作品", get_student_batch_homework_homework_attach_index_path(:bid_id => @bid.id), {id: 'student_batch_homework',:remote => true}%>
|
||||||
|
</li>
|
||||||
|
<% end %>
|
||||||
<li id="tb_6" class="normaltab">
|
<li id="tb_6" class="normaltab">
|
||||||
<%= link_to "我的作品", get_my_homework_homework_attach_index_path(:bid_id => @bid.id), {id: 'my_homework',:remote => true}%>
|
<%= link_to "我的作品", get_my_homework_homework_attach_index_path(:bid_id => @bid.id), {id: 'my_homework',:remote => true}%>
|
||||||
</li>
|
</li>
|
||||||
<% if @bid.comment_status == 2 %>
|
<% if @bid.comment_status == 2 || @bid.open_anonymous_evaluation == 0%>
|
||||||
<!-- 匿评结束后才能看到全部作业列表 -->
|
<!-- 匿评结束后或者未开启匿评才能看到全部作业列表 -->
|
||||||
<li id="tb_7" class="normaltab">
|
<li id="tb_7" class="normaltab">
|
||||||
<%= link_to "所有作品", get_homeworks_homework_attach_index_path(:bid_id => @bid.id), {id: 'all_homeworks',:remote => true}%>
|
<%= link_to "所有作品", get_homeworks_homework_attach_index_path(:bid_id => @bid.id), {id: 'all_homeworks',:remote => true}%>
|
||||||
</li>
|
</li>
|
||||||
|
|
|
@ -43,35 +43,66 @@
|
||||||
{
|
{
|
||||||
var evaluation_num = $.trim($("#bid_evaluation_num").val());
|
var evaluation_num = $.trim($("#bid_evaluation_num").val());
|
||||||
var regex = /^\d+$/;
|
var regex = /^\d+$/;
|
||||||
if(evaluation_num=="")
|
if($("#bid_open_anonymous_evaluation").attr("checked") == "checked")
|
||||||
{
|
{
|
||||||
$("#bid_evaluation_num_span").text("匿评分配数量不能为空");
|
if(evaluation_num=="")
|
||||||
$("#bid_evaluation_num_span").css('color','#ff0000');
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
else if(regex.test(evaluation_num))
|
|
||||||
{
|
|
||||||
if(evaluation_num > 0)
|
|
||||||
{
|
{
|
||||||
$("#bid_evaluation_num_span").text("填写正确");
|
$("#bid_evaluation_num_span").text("匿评分配数量不能为空");
|
||||||
$("#bid_evaluation_num_span").css('color','#008000');
|
$("#bid_evaluation_num_span").css('color','#ff0000');
|
||||||
return true;
|
return false;
|
||||||
|
}
|
||||||
|
else if(regex.test(evaluation_num))
|
||||||
|
{
|
||||||
|
if(evaluation_num > 0)
|
||||||
|
{
|
||||||
|
$("#bid_evaluation_num_span").text("填写正确");
|
||||||
|
$("#bid_evaluation_num_span").css('color','#008000');
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$("#bid_evaluation_num_span").text("匿评分配数量必须为大于0");
|
||||||
|
$("#bid_evaluation_num_span").css('color','#ff0000');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$("#bid_evaluation_num_span").text("匿评分配数量必须为大于0");
|
$("#bid_evaluation_num_span").text("匿评分配数量只能为数字");
|
||||||
$("#bid_evaluation_num_span").css('color','#ff0000');
|
$("#bid_evaluation_num_span").css('color','#ff0000');
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$("#bid_evaluation_num_span").text("匿评分配数量只能为数字");
|
return true;
|
||||||
$("#bid_evaluation_num_span").css('color','#ff0000');
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$(function(){
|
||||||
|
$("#bid_open_anonymous_evaluation").click(function(){
|
||||||
|
if($("#bid_open_anonymous_evaluation").attr("checked") == "checked")
|
||||||
|
{
|
||||||
|
$("#evaluation_num_p").slideDown();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$("#evaluation_num_p").slideUp();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
$(function(){
|
||||||
|
if($("#bid_open_anonymous_evaluation").attr("checked") == "checked")
|
||||||
|
{
|
||||||
|
$("#evaluation_num_p").show();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$("#evaluation_num_p").hide();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
function submitHomework(id)
|
function submitHomework(id)
|
||||||
{
|
{
|
||||||
if(regexDeadLine()&®exName()&®exEvaluationNum())
|
if(regexDeadLine()&®exName()&®exEvaluationNum())
|
||||||
|
|
|
@ -33,12 +33,11 @@
|
||||||
var xstep=1; // 移动步长,此参数越小,移动越平滑,最小值为1
|
var xstep=1; // 移动步长,此参数越小,移动越平滑,最小值为1
|
||||||
var delay_time=60; // 每步的时间间隔,此参数越小,移动速度越快
|
var delay_time=60; // 每步的时间间隔,此参数越小,移动速度越快
|
||||||
var YY=0;
|
var YY=0;
|
||||||
var screen_height = $(window).height(); //浏览器当前窗口文档的高度
|
|
||||||
var screen_width = $(window).width(); //浏览器当前窗口文档的宽度
|
|
||||||
|
|
||||||
window.setInterval(function(){move();},delay_time);
|
window.setInterval(function(){move();},delay_time);
|
||||||
function move()
|
function move()
|
||||||
{
|
{
|
||||||
|
var screen_height = $(window).height(); //浏览器当前窗口文档的高度
|
||||||
var floatpoint_height = $("#floatpoint").height();
|
var floatpoint_height = $("#floatpoint").height();
|
||||||
YY += xstep;
|
YY += xstep;
|
||||||
if(YY <= 0){xstep = 1; YY = 0;} //如果浮动层超出了上界,则设定移动方向为向下;并设定层的位置为正好在上界处
|
if(YY <= 0){xstep = 1; YY = 0;} //如果浮动层超出了上界,则设定移动方向为向下;并设定层的位置为正好在上界处
|
||||||
|
@ -47,9 +46,9 @@
|
||||||
xstep = -1;
|
xstep = -1;
|
||||||
YY=(screen_height-floatpoint_height);
|
YY=(screen_height-floatpoint_height);
|
||||||
}
|
}
|
||||||
$("#floatpoint").css("top",YY);
|
$("#floatpoint").css("margin-top",YY);
|
||||||
}
|
}
|
||||||
function change_size(){var body_width = $("#top-menu").width(); $("#floatpoint").css("left",screen_width/2+body_width/2+10);}
|
function change_size(){var screen_width = $(window).width();var body_width = $("#top-menu").width(); $("#floatpoint").css("left",screen_width/2+body_width/2+10).css("position", "fixed");}
|
||||||
$(document).ready(function(){change_size();});
|
$(document).ready(function(){change_size();});
|
||||||
$(window).resize(function(){screen_width = $(window).width();change_size();});
|
$(window).resize(function(){change_size();});
|
||||||
</script>
|
</script>
|
|
@ -49,6 +49,10 @@
|
||||||
<%= f.select :proportion, proportion_option %>
|
<%= f.select :proportion, proportion_option %>
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
|
<%= f.check_box :open_anonymous_evaluation, :style => "margin-left:10px;" %>
|
||||||
|
<span>未开启匿评作业将直接进入众评点赞阶段</span>
|
||||||
|
</p>
|
||||||
|
<p id="evaluation_num_p">
|
||||||
<%= f.text_field :evaluation_num, :required => true, :size => 60, :style => "width:150px;", :onblur => "regexEvaluationNum();" , :maxlength => 4%>
|
<%= f.text_field :evaluation_num, :required => true, :size => 60, :style => "width:150px;", :onblur => "regexEvaluationNum();" , :maxlength => 4%>
|
||||||
<span id="bid_evaluation_num_span">匿评分配数量不宜太大,否则会影响开启匿评速度</span>
|
<span id="bid_evaluation_num_span">匿评分配数量不宜太大,否则会影响开启匿评速度</span>
|
||||||
</p>
|
</p>
|
||||||
|
|
|
@ -43,35 +43,55 @@
|
||||||
{
|
{
|
||||||
var evaluation_num = $.trim($("#bid_evaluation_num").val());
|
var evaluation_num = $.trim($("#bid_evaluation_num").val());
|
||||||
var regex = /^\d+$/;
|
var regex = /^\d+$/;
|
||||||
if(evaluation_num=="")
|
if($("#bid_open_anonymous_evaluation").attr("checked") == "checked")
|
||||||
{
|
{
|
||||||
$("#bid_evaluation_num_span").text("匿评分配数量不能为空");
|
if(evaluation_num=="")
|
||||||
$("#bid_evaluation_num_span").css('color','#ff0000');
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
else if(regex.test(evaluation_num))
|
|
||||||
{
|
|
||||||
if(evaluation_num > 0)
|
|
||||||
{
|
{
|
||||||
$("#bid_evaluation_num_span").text("填写正确");
|
$("#bid_evaluation_num_span").text("匿评分配数量不能为空");
|
||||||
$("#bid_evaluation_num_span").css('color','#008000');
|
$("#bid_evaluation_num_span").css('color','#ff0000');
|
||||||
return true;
|
return false;
|
||||||
|
}
|
||||||
|
else if(regex.test(evaluation_num))
|
||||||
|
{
|
||||||
|
if(evaluation_num > 0)
|
||||||
|
{
|
||||||
|
$("#bid_evaluation_num_span").text("填写正确");
|
||||||
|
$("#bid_evaluation_num_span").css('color','#008000');
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$("#bid_evaluation_num_span").text("匿评分配数量必须为大于0");
|
||||||
|
$("#bid_evaluation_num_span").css('color','#ff0000');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$("#bid_evaluation_num_span").text("匿评分配数量必须为大于0");
|
$("#bid_evaluation_num_span").text("匿评分配数量只能为数字");
|
||||||
$("#bid_evaluation_num_span").css('color','#ff0000');
|
$("#bid_evaluation_num_span").css('color','#ff0000');
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$("#bid_evaluation_num_span").text("匿评分配数量只能为数字");
|
return true;
|
||||||
$("#bid_evaluation_num_span").css('color','#ff0000');
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$(function(){
|
||||||
|
$("#bid_open_anonymous_evaluation").click(function(){
|
||||||
|
if($("#bid_open_anonymous_evaluation").attr("checked") == "checked")
|
||||||
|
{
|
||||||
|
$("#evaluation_num_p").slideDown();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$("#evaluation_num_p").slideUp();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
function submitHomework()
|
function submitHomework()
|
||||||
{
|
{
|
||||||
if(regexDeadLine()&®exName()&®exEvaluationNum())
|
if(regexDeadLine()&®exName()&®exEvaluationNum())
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<% end %>
|
<% end %>
|
||||||
<div style="width: 120%;">
|
<div style="width: 120%;">
|
||||||
<div class="field">
|
<div class="field">
|
||||||
<%= f.text_field :name, :required => true, :style => 'width: 100%;', :class => 'create-share' %>
|
<%= f.text_field :name, :required => true, :style => 'width: 100%;', :class => 'create-share', :maxlength => 50%>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<% if User.current.logged? && User.current.admin? %>
|
<% if User.current.logged? && User.current.admin? %>
|
||||||
|
@ -36,7 +36,9 @@
|
||||||
</p>
|
</p>
|
||||||
<script type="text/javascript">var ckeditor=CKEDITOR.replace('editor01');</script>
|
<script type="text/javascript">var ckeditor=CKEDITOR.replace('editor01');</script>
|
||||||
|
|
||||||
<p style="color: #ff0000">(<%= l(:label_forums_max_length) %>)</p>
|
<p style="color: #ff0000">
|
||||||
|
(<%= l(:label_forums_max_length) %>)
|
||||||
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="actions" style=" padding-top: 10px; float:right">
|
<div class="actions" style=" padding-top: 10px; float:right">
|
||||||
<%= submit_tag l(:button_submit) %>
|
<%= submit_tag l(:button_submit) %>
|
||||||
|
|
|
@ -7,12 +7,15 @@
|
||||||
<table width="940px">
|
<table width="940px">
|
||||||
<tr>
|
<tr>
|
||||||
<td class="info_font" style="width: 220px; color: #15bccf">公共贴吧 </td>
|
<td class="info_font" style="width: 220px; color: #15bccf">公共贴吧 </td>
|
||||||
<td class="location-list"><strong><%= l(:label_user_location) %> :</strong></td>
|
<td class="location-list">
|
||||||
|
<strong>
|
||||||
|
<%= l(:label_user_location) %> :
|
||||||
|
</strong>
|
||||||
|
</td>
|
||||||
<td rowspan="2">
|
<td rowspan="2">
|
||||||
<% if User.current.logged? %>
|
<% if User.current.logged? %>
|
||||||
<%= link_to( l(:label_forum_new), new_forum_path, :class => 'icon icon-add') %>
|
<%= link_to( l(:label_forum_new), new_forum_path, :class => 'icon icon-add') %>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td rowspan="2" width="250px" >
|
<td rowspan="2" width="250px" >
|
||||||
<div class="top-content-search">
|
<div class="top-content-search">
|
||||||
|
@ -24,8 +27,15 @@
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td style="padding-left: 8px"><a><%= link_to request.host()+"/forums", forums_path %> </a></td>
|
<td style="padding-left: 8px">
|
||||||
<td ><%= link_to l(:field_homepage), home_path %> > <%= link_to "公共贴吧", forums_path %></td>
|
<a>
|
||||||
|
<%= link_to request.host()+"/forums", forums_path %>
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td >
|
||||||
|
<%= link_to l(:field_homepage), home_path %> >
|
||||||
|
<%= link_to "公共贴吧", forums_path %>
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,16 +1,25 @@
|
||||||
<!-- added by fq -->
|
<!-- added by fq -->
|
||||||
<div id="add-memo" class='lz' style="<% unless @memo.errors.any?%>display: none;<% end %> padding: 20px;">
|
<div id="add-memo" class='lz' style="<% unless @memo.errors.any?%>display: none;<% end %> padding: 20px;">
|
||||||
<h3><%=l(:label_memo_new)%></h3>
|
<h3>
|
||||||
|
<%=l(:label_memo_new)%>
|
||||||
|
</h3>
|
||||||
<% if User.current.logged? %>
|
<% if User.current.logged? %>
|
||||||
<%= labelled_form_for(@memo, :url => create_memo_forum_path(@forum), :html => {:multipart => true} ) do |f| %>
|
<%= labelled_form_for(@memo, :url => create_memo_forum_path(@forum), :html => {:multipart => true} ) do |f| %>
|
||||||
<div class="actions" style="max-width:680px">
|
<div class="actions" style="max-width:680px">
|
||||||
<p><%= f.text_field :subject, :required => true%></p>
|
|
||||||
<p style="max-width:680px"><%= f.text_area :content, :required => true, :id => 'editor02' %></p>
|
|
||||||
<script type="text/javascript">var ckeditor=CKEDITOR.replace('editor02');</script>
|
|
||||||
<p style="color: #ff0000">(<%= l(:label_memos_max_length) %>)</p>
|
|
||||||
<p>
|
<p>
|
||||||
<%= l(:label_attachment_plural) %><br />
|
<%= f.text_field :subject, :required => true, :maxlength => 50%>
|
||||||
<%= render :partial => 'attachments/form', :locals => {:container => @memo} %>
|
</p>
|
||||||
|
<p style="max-width:680px">
|
||||||
|
<%= f.text_area :content, :required => true, :id => 'editor02' %>
|
||||||
|
</p>
|
||||||
|
<script type="text/javascript">var ckeditor=CKEDITOR.replace('editor02');</script>
|
||||||
|
<p style="color: #ff0000">
|
||||||
|
(<%= l(:label_memos_max_length) %>)
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<%= l(:label_attachment_plural) %>
|
||||||
|
<br />
|
||||||
|
<%= render :partial => 'attachments/form', :locals => {:container => @memo} %>
|
||||||
</p>
|
</p>
|
||||||
<%= f.submit :value => l(:label_memo_create) %>
|
<%= f.submit :value => l(:label_memo_create) %>
|
||||||
<%= link_to l(:button_cancel), "#", :onclick => '$("#add-memo").hide(); return false;' %>
|
<%= link_to l(:button_cancel), "#", :onclick => '$("#add-memo").hide(); return false;' %>
|
||||||
|
|
|
@ -35,13 +35,13 @@
|
||||||
</span>
|
</span>
|
||||||
</li>
|
</li>
|
||||||
<li class="c_red" style="margin:25px 0 0 20px;"> 您还没交作业,请创建作业!</li>
|
<li class="c_red" style="margin:25px 0 0 20px;"> 您还没交作业,请创建作业!</li>
|
||||||
<% if @bid.comment_status == 0 %>
|
<% if @bid.comment_status == 0 || @bid.comment_status == 1%>
|
||||||
<!-- 老师布置的作业在创建和开启匿评这段时间才允许创建作品 -->
|
<!-- 老师布置的作业在创建和开启匿评这段时间才允许创建作品 -->
|
||||||
<li class="wping">
|
<li class="wping">
|
||||||
<%= link_to "提交作业", new_exercise_book_path(@bid), :style => "width:80px; margin:20px 0 0 350px;" %>
|
<%= link_to "提交作业", new_exercise_book_path(@bid), :style => "width:80px; margin:20px 0 0 350px;" %>
|
||||||
</li>
|
</li>
|
||||||
<% else %>
|
<% else %>
|
||||||
<li class="wping" title="只有开启匿评之前才能创建作业哦!">
|
<li class="wping" title="匿评阶段不可提交作业!">
|
||||||
<a style="width:80px; margin:20px 0 0 350px;background:#8e8e8e;">提交作业</a>
|
<a style="width:80px; margin:20px 0 0 350px;background:#8e8e8e;">提交作业</a>
|
||||||
</li>
|
</li>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
|
@ -41,9 +41,9 @@
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<%= submit_tag l(:button_create) %>
|
<%= submit_tag l(:button_create), :class => "ButtonAddTags"%>
|
||||||
<%= submit_tag l(:button_create_and_continue), :name => 'continue' %>
|
<%= submit_tag l(:button_create_and_continue), :class => 'ButtonAddTags' %>
|
||||||
<%= preview_link preview_new_issue_path(:project_id => @project), 'issue-form' %>
|
<%= preview_link preview_new_issue_path(:project_id => @project), 'issue-form','preview',{:class => "ButtonColor"}%>
|
||||||
|
|
||||||
<%= javascript_tag "$('#issue_subject').focus();" %>
|
<%= javascript_tag "$('#issue_subject').focus();" %>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<% if hasCourse %>
|
<% if hasCourse %>
|
||||||
<li id="course_loggedas_li" style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;">
|
<li id="course_loggedas_li" style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;">
|
||||||
<%=link_to l(:label_my_course), {:controller => 'users', :action => 'user_courses', id: User.current.id} %>
|
<%=link_to l(:label_my_course), user_courses_user_path(User.current.id) %>
|
||||||
<ul class="course_sub_menu">
|
<ul class="course_sub_menu">
|
||||||
<% course_index = 0 %>
|
<% course_index = 0 %>
|
||||||
<% User.current.courses.each do |course| %>
|
<% User.current.courses.each do |course| %>
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
<% if course %>
|
<% if course %>
|
||||||
<li id="homework_loggedas_li" style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" title="<%=course.name%>" onmouseover="homeworkSlipMenuOver(<%= course.id%>);" onmouseout="homeworkSlipMenuOut(<%= course.id%>);">
|
<li id="homework_loggedas_li" style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" title="<%=course.name%>" onmouseover="homeworkSlipMenuOver(<%= course.id%>);" onmouseout="homeworkSlipMenuOut(<%= course.id%>);">
|
||||||
<%= link_to course.name, {:controller => 'courses',:action => 'show',id:course.id} %>
|
<%= link_to course.name, course_path(course.id, host: Setting.host_course) %>
|
||||||
<ul class="homework_sub_menu" id="homework_loggedas_ul_<%= course.id%>" style="top:<%= course_index * 28.1%>px;">
|
<ul class="homework_sub_menu" id="homework_loggedas_ul_<%= course.id%>" style="top:<%= course_index * 28.1%>px;">
|
||||||
<% course.homework_for_courses.map(&:bid).each do |bid| %>
|
<% course.homework_for_courses.map(&:bid).each do |bid| %>
|
||||||
<li style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" title="<%=bid.name%>">
|
<li style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" title="<%=bid.name%>">
|
||||||
<%= link_to bid.name, course_for_bid_path(bid), :target => "_blank" %>
|
<%= link_to bid.name, course_for_bid_path(bid, host: Setting.host_course), :target => "_blank" %>
|
||||||
</li>
|
</li>
|
||||||
<% end %>
|
<% end %>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
@ -106,6 +106,7 @@
|
||||||
<% if (User.current.admin?||User.current.id==@bid.author_id) %>
|
<% if (User.current.admin?||User.current.id==@bid.author_id) %>
|
||||||
<tr>
|
<tr>
|
||||||
<td valign="top" style="padding-left: 8px; font-size: 15px" colspan="2">
|
<td valign="top" style="padding-left: 8px; font-size: 15px" colspan="2">
|
||||||
|
<% if @bid.open_anonymous_evaluation == 1%>
|
||||||
<span id="<%=@bid.id %>_anonymous_comment">
|
<span id="<%=@bid.id %>_anonymous_comment">
|
||||||
<% case @bid.comment_status %>
|
<% case @bid.comment_status %>
|
||||||
<% when 0 %>
|
<% when 0 %>
|
||||||
|
@ -116,6 +117,7 @@
|
||||||
匿评结束
|
匿评结束
|
||||||
<% end %>
|
<% end %>
|
||||||
</span>
|
</span>
|
||||||
|
<%end%>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
|
@ -133,7 +133,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="content">
|
<div id="content">
|
||||||
<div class="tabs_new">
|
<div class="tabs_new">
|
||||||
<%= render_main_menu(@project) %>
|
<%= render_main_menu(@project) %>
|
||||||
</div>
|
</div>
|
||||||
<%= render_flash_messages %>
|
<%= render_flash_messages %>
|
||||||
<%= yield %>
|
<%= yield %>
|
||||||
|
|
|
@ -4,30 +4,43 @@
|
||||||
<%= labelled_form_for(@memo, :url => forum_memo_path(@memo.forum_id, @memo)) do |f| %>
|
<%= labelled_form_for(@memo, :url => forum_memo_path(@memo.forum_id, @memo)) do |f| %>
|
||||||
<% if @memo.errors.any? %>
|
<% if @memo.errors.any? %>
|
||||||
<div id="error_explanation">
|
<div id="error_explanation">
|
||||||
<h2><%= pluralize(@memo.errors.count, "error") %> prohibited this memo from being saved:</h2>
|
<h2>
|
||||||
|
<%= pluralize(@memo.errors.count, "error") %>
|
||||||
|
prohibited this memo from being saved:
|
||||||
|
</h2>
|
||||||
<ul>
|
<ul>
|
||||||
<% @memo.errors.full_messages.each do |msg| %>
|
<% @memo.errors.full_messages.each do |msg| %>
|
||||||
<li><%= msg %></li>
|
<li>
|
||||||
|
<%= msg %>
|
||||||
|
</li>
|
||||||
<% end %>
|
<% end %>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
<div class="actions">
|
<div class="actions">
|
||||||
<p><%= f.text_field :subject, :required => true, :size => 96 ,:readonly => @replying%></p>
|
|
||||||
<p>
|
<p>
|
||||||
<% unless @replying %>
|
<%= f.text_field :subject, :required => true, :size => 96 ,:readonly => @replying, :maxlength => 50%>
|
||||||
<% if @memo.safe_attribute? 'sticky' %>
|
</p>
|
||||||
<%= f.check_box :sticky %> <%= label_tag 'memo_sticky', l(:label_board_sticky) %>
|
<% if User.current.admin?%>
|
||||||
<% end %>
|
<p>
|
||||||
<% if @memo.safe_attribute? 'lock' %>
|
<% unless @replying %>
|
||||||
<%= f.check_box :lock %> <%= label_tag 'memo_locked', l(:label_board_locked) %>
|
<% if @memo.safe_attribute? 'sticky' %>
|
||||||
<% end %>
|
<%= f.check_box :sticky %>
|
||||||
<% end %>
|
<%= label_tag 'memo_sticky', l(:label_board_sticky) %>
|
||||||
|
<% end %>
|
||||||
|
<% if @memo.safe_attribute? 'lock' %>
|
||||||
|
<%= f.check_box :lock %> <%= label_tag 'memo_locked', l(:label_board_locked) %>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
</p>
|
||||||
|
<% end %>
|
||||||
|
<p>
|
||||||
|
<%= f.text_area :content, :required => true, :size => 80, id: 'editor01' %>
|
||||||
</p>
|
</p>
|
||||||
<p><%= f.text_area :content, :required => true, :size => 80, id: 'editor01' %></p>
|
|
||||||
<script type="text/javascript">var ckeditor=CKEDITOR.replace('editor01');</script>
|
<script type="text/javascript">var ckeditor=CKEDITOR.replace('editor01');</script>
|
||||||
<p>
|
<p>
|
||||||
<%= l(:label_attachment_plural) %><br />
|
<%= l(:label_attachment_plural) %>
|
||||||
|
<br />
|
||||||
<%= render :partial => 'attachments/form', :locals => {:container => @memo} %>
|
<%= render :partial => 'attachments/form', :locals => {:container => @memo} %>
|
||||||
</p>
|
</p>
|
||||||
<br/>
|
<br/>
|
||||||
|
|
|
@ -11,11 +11,13 @@
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
-->
|
-->
|
||||||
<p class="small"><%= link_to l(:label_issue_view_all), :controller => 'issues',
|
<p class="small">
|
||||||
:action => 'index',
|
<%#= link_to l(:label_issue_view_all), :controller => 'issues',
|
||||||
:set_filter => 1,
|
:action => 'index',
|
||||||
:assigned_to_id => 'me',
|
:set_filter => 1,
|
||||||
:sort => 'priority:desc,updated_on:desc' %></p>
|
:assigned_to_id => 'me',
|
||||||
|
:sort => 'priority:desc,updated_on:desc' %>
|
||||||
|
</p>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% content_for :header_tags do %>
|
<% content_for :header_tags do %>
|
||||||
<%= auto_discovery_link_tag(:atom,
|
<%= auto_discovery_link_tag(:atom,
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<% reported_issues = issuesreportedbyme_items %>
|
<% reported_issues = issuesreportedbyme_items %>
|
||||||
<%= render :partial => 'issues/list_simple', :locals => { :issues => reported_issues } %>
|
<%= render :partial => 'issues/list_simple', :locals => { :issues => reported_issues } %>
|
||||||
<% if reported_issues.length > 0 %>
|
<% if reported_issues.length > 0 %>
|
||||||
<p class="small"><%= link_to l(:label_issue_view_all), :controller => 'issues',
|
<p class="small"><%#= link_to l(:label_issue_view_all), :controller => 'issues',
|
||||||
:action => 'index',
|
:action => 'index',
|
||||||
:set_filter => 1,
|
:set_filter => 1,
|
||||||
:status_id => '*',
|
:status_id => '*',
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
|
|
||||||
<%= render :partial => 'issues/list_simple', :locals => { :issues => watched_issues } %>
|
<%= render :partial => 'issues/list_simple', :locals => { :issues => watched_issues } %>
|
||||||
<% if watched_issues.length > 0 %>
|
<% if watched_issues.length > 0 %>
|
||||||
<p class="small"><%= link_to l(:label_issue_view_all), :controller => 'issues',
|
<p class="small"><%#= link_to l(:label_issue_view_all), :controller => 'issues',
|
||||||
:action => 'index',
|
:action => 'index',
|
||||||
:set_filter => 1,
|
:set_filter => 1,
|
||||||
:watcher_id => 'me',
|
:watcher_id => 'me',
|
||||||
|
|
|
@ -76,8 +76,9 @@
|
||||||
<%= f.text_field :name ,:id => "tags_name",:size=>"28",:require=>true,:maxlength => Setting.tags_max_length,:minlength=>Setting.tags_min_length %>
|
<%= f.text_field :name ,:id => "tags_name",:size=>"28",:require=>true,:maxlength => Setting.tags_max_length,:minlength=>Setting.tags_min_length %>
|
||||||
<%= f.text_field :object_id,:value=> obj.id,:style=>"display:none"%>
|
<%= f.text_field :object_id,:value=> obj.id,:style=>"display:none"%>
|
||||||
<%= f.text_field :object_flag,:value=> object_flag,:style=>"display:none"%>
|
<%= f.text_field :object_flag,:value=> object_flag,:style=>"display:none"%>
|
||||||
<%= f.submit l(:button_project_tags_add),:class => "small" %>
|
<%= f.submit l(:button_project_tags_add),:class => "ButtonAddTags" %>
|
||||||
<%= link_to_function l(:button_cancel), '$("#put-tag-form").hide();'%>
|
<%= link_to_function l(:button_cancel), '$("#put-tag-form").hide();',:class=>'ButtonColor'%>
|
||||||
|
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
|
@ -107,7 +107,7 @@
|
||||||
<span class="font_lighter">
|
<span class="font_lighter">
|
||||||
<%= l(:label_i_new_activity) %>
|
<%= l(:label_i_new_activity) %>
|
||||||
</span>
|
</span>
|
||||||
<%= link_to format_activity_title("#{l(:label_active_homework)}##{act.id}:#{act.name}"), respond_path(e.act_id) %>
|
<%= link_to format_activity_title("#{l(:label_active_homework)}##{act.id}:#{act.name}"), course_for_bid_path(e.act_id) %>
|
||||||
</td>
|
</td>
|
||||||
<% else %>
|
<% else %>
|
||||||
<td colspan="2" valign="top">
|
<td colspan="2" valign="top">
|
||||||
|
@ -117,7 +117,7 @@
|
||||||
<span class="font_lighter">
|
<span class="font_lighter">
|
||||||
<%= l(:label_new_activity) %>
|
<%= l(:label_new_activity) %>
|
||||||
</span>
|
</span>
|
||||||
<%= link_to format_activity_title("#{l(:label_active_homework)}##{act.id}:#{act.name}"), respond_path(e.act_id) %>
|
<%= link_to format_activity_title("#{l(:label_active_homework)}##{act.id}:#{act.name}"), course_for_bid_path(e.act_id) %>
|
||||||
</td>
|
</td>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% else %>
|
<% else %>
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<% course_list.map do |course| %>
|
<% course_list.map do |course| %>
|
||||||
<li class='<%= cycle("odd", "even") %>' title=<%= course.description.to_s.gsub(/<\/?.*?>/,"") %>>
|
<li class='<%= cycle("odd", "even") %>' title="<%= course.description.to_s.gsub(/<\/?.*?>/,'') %>" style="min-height: 69px;">
|
||||||
<div class='avatar'>
|
<div class='avatar'>
|
||||||
<%= image_tag(get_course_avatar(course), :class => "avatar-4") %>
|
<%= image_tag(get_course_avatar(course), :class => "avatar-4") %>
|
||||||
</div>
|
</div>
|
||||||
|
@ -9,11 +9,11 @@
|
||||||
<% unless course.is_public == 1 %>
|
<% unless course.is_public == 1 %>
|
||||||
<span class="private_project"><%= l(:label_private) %></span>
|
<span class="private_project"><%= l(:label_private) %></span>
|
||||||
<% end %>
|
<% end %>
|
||||||
<%= link_to(course.name.truncate(30, omission: '...')+":", course_path(course.id), :class => "d-g-blue d-p-project-name", :title => "#{course.name}") %>
|
<%= link_to(course.name.truncate(25, omission: '...')+":", course_path(course.id), :class => "d-g-blue d-p-project-name", :title => "#{course.name}") %>
|
||||||
|
|
||||||
</span>
|
</span>
|
||||||
<span class='font_bolder'>
|
<span class='font_bolder'>
|
||||||
<%= link_to(course.try(:teacher).try(:realname), user_path(course.teacher)) %>
|
<%= link_to(course.try(:teacher).try(:realname).truncate(6, omission: '...'), user_path(course.teacher)) %>
|
||||||
<%#=course.try(:teacher).try(:name)%>
|
<%#=course.try(:teacher).try(:name)%>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -2202,3 +2202,4 @@ zh:
|
||||||
label_submit_comments: 提交评论
|
label_submit_comments: 提交评论
|
||||||
field_evaluation_num: 匿评分配数量
|
field_evaluation_num: 匿评分配数量
|
||||||
label_my_score: 我的评分
|
label_my_score: 我的评分
|
||||||
|
field_open_anonymous_evaluation: 是否开启匿评
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
class AddOpenAnonymousEvaluation < ActiveRecord::Migration
|
||||||
|
def up
|
||||||
|
add_column :bids, :open_anonymous_evaluation, :integer, default: 1
|
||||||
|
end
|
||||||
|
|
||||||
|
def down
|
||||||
|
remove_column :bids, :open_anonymous_evaluation
|
||||||
|
end
|
||||||
|
end
|
15
db/schema.rb
15
db/schema.rb
|
@ -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 => 20141105012624) do
|
ActiveRecord::Schema.define(:version => 20141119011439) 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
|
||||||
|
@ -95,21 +95,22 @@ ActiveRecord::Schema.define(:version => 20141105012624) do
|
||||||
|
|
||||||
create_table "bids", :force => true do |t|
|
create_table "bids", :force => true do |t|
|
||||||
t.string "name"
|
t.string "name"
|
||||||
t.string "budget", :null => false
|
t.string "budget", :null => false
|
||||||
t.integer "author_id"
|
t.integer "author_id"
|
||||||
t.date "deadline"
|
t.date "deadline"
|
||||||
t.text "description"
|
t.text "description"
|
||||||
t.datetime "created_on", :null => false
|
t.datetime "created_on", :null => false
|
||||||
t.datetime "updated_on", :null => false
|
t.datetime "updated_on", :null => false
|
||||||
t.integer "commit"
|
t.integer "commit"
|
||||||
t.integer "reward_type"
|
t.integer "reward_type"
|
||||||
t.integer "homework_type"
|
t.integer "homework_type"
|
||||||
t.integer "parent_id"
|
t.integer "parent_id"
|
||||||
t.string "password"
|
t.string "password"
|
||||||
t.integer "is_evaluation"
|
t.integer "is_evaluation"
|
||||||
t.integer "proportion", :default => 60
|
t.integer "proportion", :default => 60
|
||||||
t.integer "comment_status", :default => 0
|
t.integer "comment_status", :default => 0
|
||||||
t.integer "evaluation_num", :default => 3
|
t.integer "evaluation_num", :default => 3
|
||||||
|
t.integer "open_anonymous_evaluation", :default => 1
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "boards", :force => true do |t|
|
create_table "boards", :force => true do |t|
|
||||||
|
|
|
@ -1277,7 +1277,7 @@ input#openid_url { background: url(../images/openid-bg.gif) no-repeat; backgroun
|
||||||
.clear:after{ content: "."; display: block; height: 0; clear: both; visibility: hidden; }
|
.clear:after{ content: "."; display: block; height: 0; clear: both; visibility: hidden; }
|
||||||
|
|
||||||
/***** Links *****/
|
/***** Links *****/
|
||||||
a, a:link, a:visited{ color: #169; text-decoration: none; }
|
a, a:link, a:visited{ color: #169 ; text-decoration: none; }
|
||||||
a:hover, a:active{ color: #c61a1a; text-decoration: underline;}
|
a:hover, a:active{ color: #c61a1a; text-decoration: underline;}
|
||||||
a img{ border: 0; }
|
a img{ border: 0; }
|
||||||
|
|
||||||
|
@ -1580,13 +1580,15 @@ form {display: inline;}
|
||||||
/*added by bai*/
|
/*added by bai*/
|
||||||
input[type="submit"].bid_btn {
|
input[type="submit"].bid_btn {
|
||||||
padding-bottom: 5px;
|
padding-bottom: 5px;
|
||||||
width: 55px;
|
width: 50px;
|
||||||
height: 25px;
|
height: 25px;
|
||||||
|
text-align: center;
|
||||||
font-family: '微软雅黑', Arial, Helvetica, sans-serif;
|
font-family: '微软雅黑', Arial, Helvetica, sans-serif;
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
padding: 0px;
|
padding: 8px;
|
||||||
background: #15bccf;
|
background: #15bccf;
|
||||||
|
text-align: center;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
border: 1px solid #15bccf;
|
border: 1px solid #15bccf;
|
||||||
box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.2), 0px 0px 2px rgb(255, 255, 255) inset;
|
box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.2), 0px 0px 2px rgb(255, 255, 255) inset;
|
||||||
|
@ -1594,6 +1596,25 @@ input[type="submit"].bid_btn {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
input[type="submit"].ButtonAddTags {
|
||||||
|
color: #fffbff ;
|
||||||
|
padding-bottom:5px ;
|
||||||
|
width:auto ;
|
||||||
|
height: 25px ;
|
||||||
|
font-family: '微软雅黑',Arial,Helvetica,sans-serif ;
|
||||||
|
font-size: 15px ;
|
||||||
|
font-weight: normal;
|
||||||
|
text-align: center ;
|
||||||
|
margin:0 auto;
|
||||||
|
border-radius: 0px !important;
|
||||||
|
background: #15bccf;
|
||||||
|
border: 0px solid #15bccf !important;
|
||||||
|
position: relative;
|
||||||
|
top:3px;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
input[type="button"].bid_btn {
|
input[type="button"].bid_btn {
|
||||||
/*padding-bottom: 5px;*/
|
/*padding-bottom: 5px;*/
|
||||||
width: 55px;
|
width: 55px;
|
||||||
|
@ -1603,6 +1624,7 @@ input[type="button"].bid_btn {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
padding: 0px;
|
padding: 0px;
|
||||||
background: #15bccf;
|
background: #15bccf;
|
||||||
|
text-align: center;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
border: 1px solid #15bccf;
|
border: 1px solid #15bccf;
|
||||||
box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.2), 0px 0px 2px rgb(255, 255, 255) inset;
|
box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.2), 0px 0px 2px rgb(255, 255, 255) inset;
|
||||||
|
@ -2180,7 +2202,7 @@ button.tab-right {
|
||||||
padding-bottom: 2px;
|
padding-bottom: 2px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
border: 1px solid #15BCCF;
|
border: 1px solid #15BCCF;
|
||||||
/*border-bottom: 0px solid #15BCCF;*/
|
border-bottom: 0px solid #15BCCF;
|
||||||
|
|
||||||
color:#606060;
|
color:#606060;
|
||||||
font-weight:bold;
|
font-weight:bold;
|
||||||
|
|
|
@ -69,7 +69,7 @@ a.wzan_visited{background:url(images/pic_zan.png) 0 0 no-repeat;}
|
||||||
|
|
||||||
|
|
||||||
/****评分弹框****/
|
/****评分弹框****/
|
||||||
.alert_box {width:488px;height:550px;position:absolute;z-index:1002;left:50%;top:40%;margin:-215px 0 0 -300px; background:#fff; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; box-shadow:0px 0px 8px #194a81; padding:5px; overflow:auto; }
|
.alert_box {width:488px;height:550px;position:fixed;z-index:1002;left:50%;top:40%;margin:-215px 0 0 -300px; background:#fff; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; box-shadow:0px 0px 8px #194a81; padding:5px; overflow:auto; }
|
||||||
.alert .close{width:26px;height:26px;overflow:hidden;position:absolute;top:-10px;right:-502px;background:url(images/close.png) no-repeat;cursor:pointer;}
|
.alert .close{width:26px;height:26px;overflow:hidden;position:absolute;top:-10px;right:-502px;background:url(images/close.png) no-repeat;cursor:pointer;}
|
||||||
.alert .C{width:476px;height:296px;position:absolute;left:5px;top:5px; }
|
.alert .C{width:476px;height:296px;position:absolute;left:5px;top:5px; }
|
||||||
|
|
||||||
|
@ -143,7 +143,7 @@ a:hover.tijiao{ background:#0f99a9 !important;}
|
||||||
.N_search{ height:20px !important; border:1px solid #999 !important;}
|
.N_search{ height:20px !important; border:1px solid #999 !important;}
|
||||||
|
|
||||||
/* 匿名评分弹框 */
|
/* 匿名评分弹框 */
|
||||||
.alert_praise{width:480px;height:200px;position:absolute;z-index:100;left:50%;top:50%;margin:-215px 0 0 -300px; background:#fff; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; box-shadow:0px 0px 8px #194a81; overflow:auto;}
|
.alert_praise{width:480px;height:200px;position:fixed;z-index:100;left:50%;top:50%;margin:-215px 0 0 -300px; background:#fff; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; box-shadow:0px 0px 8px #194a81; overflow:auto;}
|
||||||
.alert .close02{width:26px;height:26px;overflow:hidden;position:absolute;top:-10px;right:-490px;background:url(images/close.png) no-repeat;cursor:pointer;}
|
.alert .close02{width:26px;height:26px;overflow:hidden;position:absolute;top:-10px;right:-490px;background:url(images/close.png) no-repeat;cursor:pointer;}
|
||||||
.ni_con { width:425px; margin:25px 30px;}
|
.ni_con { width:425px; margin:25px 30px;}
|
||||||
.ni_con h2{ display:block; height:40px; width:188px; margin:0 auto;}
|
.ni_con h2{ display:block; height:40px; width:188px; margin:0 auto;}
|
||||||
|
|
|
@ -475,19 +475,21 @@ body {
|
||||||
top: 1px;
|
top: 1px;
|
||||||
}
|
}
|
||||||
input[class~='ButtonClolr'],.ButtonColor{
|
input[class~='ButtonClolr'],.ButtonColor{
|
||||||
|
|
||||||
color: #fffbff !important;
|
color: #fffbff !important;
|
||||||
padding-bottom: 5px;
|
padding: 5px;
|
||||||
width: 40px;
|
width: auto;
|
||||||
height: 20px;
|
height: 24px ;
|
||||||
font-family: '微软雅黑',Arial,Helvetica,sans-serif;
|
font-family: '微软雅黑',Arial,Helvetica,sans-serif;
|
||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
|
text-align: center;
|
||||||
padding: 0px;
|
padding: 0px;
|
||||||
background: #15bccf;
|
background: #15bccf !important;
|
||||||
border: 1px solid #15bccf;
|
border: 0px solid #15bccf ;
|
||||||
|
display:inline-block
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
input[class~='whiteButton'], .whiteButton {
|
input[class~='whiteButton'], .whiteButton {
|
||||||
-moz-box-shadow: inset 0px 1px 0px 0px #ffffff;
|
-moz-box-shadow: inset 0px 1px 0px 0px #ffffff;
|
||||||
-webkit-box-shadow: inset 0px 1px 0px 0px #ffffff;
|
-webkit-box-shadow: inset 0px 1px 0px 0px #ffffff;
|
||||||
|
@ -541,7 +543,6 @@ input[class~='m3p10'], .m3p10 {
|
||||||
padding: 3px 10px;
|
padding: 3px 10px;
|
||||||
height: 20px;
|
height: 20px;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
text-align: center;
|
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -648,14 +649,14 @@ input[class='nyan-clean-gray']:active, .nyan-clean-gray:active {
|
||||||
}
|
}
|
||||||
|
|
||||||
.tools a:visited {
|
.tools a:visited {
|
||||||
color: #116699;
|
color: #fffbff;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
padding: 3px 5px 0px 5px;
|
padding: 3px 5px 0px 5px;
|
||||||
width: 100px;
|
width: 100px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tools a:hover {
|
.tools a:hover {
|
||||||
color: white;
|
color: #fffbff;
|
||||||
padding: 3px 3px 0px 20px;
|
padding: 3px 3px 0px 20px;
|
||||||
width: 88px;
|
width: 88px;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
|
|
Loading…
Reference in New Issue