Merge remote-tracking branch 'origin/szzh' into szzh
This commit is contained in:
commit
23e60bf007
|
@ -89,72 +89,54 @@ class MessagesController < ApplicationController
|
|||
|
||||
# Create a new topic
|
||||
def new
|
||||
@message = Message.new
|
||||
@message.author = User.current
|
||||
@message.board = @board
|
||||
@message.safe_attributes = params[:message]
|
||||
if request.post?
|
||||
@message.save_attachments(params[:attachments])
|
||||
if @message.save
|
||||
# 更新kindeditor上传的图片资源所有者
|
||||
if params[:asset_id]
|
||||
ids = params[:asset_id].split(',')
|
||||
update_kindeditor_assets_owner ids,@message.id,OwnerTypeHelper::MESSAGE
|
||||
end
|
||||
# # 与我相关动态的记录add start
|
||||
# if(@board && @board.course) #项目的先不管
|
||||
# teachers = searchTeacherAndAssistant(@board.course)
|
||||
# for teacher in teachers
|
||||
# if(teacher.user_id != User.current.id)
|
||||
# notify = ActivityNotify.new()
|
||||
# if(@board.course)
|
||||
# notify.activity_container_id = @board.course_id
|
||||
# notify.activity_container_type = 'Course'
|
||||
# else
|
||||
# notify.activity_container_id = @board.project_id
|
||||
# notify.activity_container_type = 'Project'
|
||||
# end
|
||||
# notify.activity_id = @message.id
|
||||
# notify.activity_type = 'Message'
|
||||
# notify.notify_to = teacher.user_id
|
||||
# notify.is_read = 0
|
||||
# notify.save()
|
||||
# end
|
||||
# end
|
||||
# end
|
||||
# 与我相关动态的记录add end
|
||||
if User.current.logged?
|
||||
@message = Message.new
|
||||
@message.author = User.current
|
||||
@message.board = @board
|
||||
@message.safe_attributes = params[:message]
|
||||
if request.post?
|
||||
@message.save_attachments(params[:attachments])
|
||||
if @message.save
|
||||
# 更新kindeditor上传的图片资源所有者
|
||||
if params[:asset_id]
|
||||
ids = params[:asset_id].split(',')
|
||||
update_kindeditor_assets_owner ids,@message.id,OwnerTypeHelper::MESSAGE
|
||||
end
|
||||
|
||||
call_hook(:controller_messages_new_after_save, { :params => params, :message => @message})
|
||||
render_attachment_warning_if_needed(@message)
|
||||
if params[:is_board]
|
||||
if @project
|
||||
redirect_to project_boards_path(@project)
|
||||
elsif @course
|
||||
redirect_to course_boards_path(@course)
|
||||
call_hook(:controller_messages_new_after_save, { :params => params, :message => @message})
|
||||
render_attachment_warning_if_needed(@message)
|
||||
if params[:is_board]
|
||||
if @project
|
||||
redirect_to project_boards_path(@project)
|
||||
elsif @course
|
||||
redirect_to course_boards_path(@course)
|
||||
end
|
||||
else
|
||||
redirect_to board_message_url(@board, @message)
|
||||
end
|
||||
else
|
||||
redirect_to board_message_url(@board, @message)
|
||||
if params[:is_board]
|
||||
if @project
|
||||
redirect_to project_boards_path(@project, :flag => true)
|
||||
elsif @course
|
||||
redirect_to course_boards_path(@course, :flag => true)
|
||||
end
|
||||
else
|
||||
layout_file = @project ? 'base_projects' : 'base_courses'
|
||||
render :action => 'new', :layout => layout_file
|
||||
end
|
||||
|
||||
end
|
||||
else
|
||||
if params[:is_board]
|
||||
if @project
|
||||
redirect_to project_boards_path(@project, :flag => true)
|
||||
elsif @course
|
||||
redirect_to course_boards_path(@course, :flag => true)
|
||||
end
|
||||
else
|
||||
layout_file = @project ? 'base_projects' : 'base_courses'
|
||||
render :action => 'new', :layout => layout_file
|
||||
respond_to do |format|
|
||||
format.html {
|
||||
layout_file = @project ? 'base_projects' : 'base_courses'
|
||||
render :layout => layout_file
|
||||
}
|
||||
end
|
||||
|
||||
end
|
||||
else
|
||||
respond_to do |format|
|
||||
format.html {
|
||||
layout_file = @project ? 'base_projects' : 'base_courses'
|
||||
render :layout => layout_file
|
||||
}
|
||||
end
|
||||
redirect_to signin_path
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -14,8 +14,8 @@ class StudentWorkController < ApplicationController
|
|||
def program_test
|
||||
is_test = params[:is_test] == 'true'
|
||||
resultObj = {status: 0, results: [], error_msg: '', time: Time.now.strftime('%Y-%m-%d %T')}
|
||||
unless is_test
|
||||
student_work = find_or_save_student_work
|
||||
|
||||
student_work = find_or_save_student_work(is_test)
|
||||
|
||||
unless student_work
|
||||
resultObj[:status] = 100
|
||||
|
@ -43,24 +43,7 @@ class StudentWorkController < ApplicationController
|
|||
end
|
||||
end
|
||||
|
||||
else
|
||||
if @homework.homework_type == 2 && @homework.homework_detail_programing
|
||||
result = test_realtime(student_work, params[:src])
|
||||
logger.debug result
|
||||
resultObj[:status] = result["status"]
|
||||
resultObj[:results] = result["results"]
|
||||
resultObj[:error_msg] = result["error_msg"]
|
||||
results = result["results"]
|
||||
if result["status"].to_i == -2 #编译错误
|
||||
results = [result["error_msg"]]
|
||||
end
|
||||
|
||||
resultObj[:status] = result["status"].to_i
|
||||
resultObj[:time] = Time.now.strftime('%Y-%m-%d %T')
|
||||
resultObj[:index] = 0
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
|
||||
|
||||
render :json => resultObj
|
||||
|
@ -640,13 +623,14 @@ class StudentWorkController < ApplicationController
|
|||
xls_report.string
|
||||
end
|
||||
|
||||
def find_or_save_student_work
|
||||
def find_or_save_student_work(is_test)
|
||||
student_work = @homework.student_works.where(user_id: User.current.id).first
|
||||
if student_work.nil?
|
||||
@homework.student_works.build(
|
||||
name: params[:title],
|
||||
description: params[:src],
|
||||
user_id: User.current.id
|
||||
user_id: User.current.id,
|
||||
is_test: is_test
|
||||
)
|
||||
unless @homework.save
|
||||
else
|
||||
|
|
|
@ -298,7 +298,7 @@ class UsersController < ApplicationController
|
|||
def user_homeworks
|
||||
if User.current == @user
|
||||
@page = params[:page] ? params[:page].to_i + 1 : 0
|
||||
user_course_ids = "(" + @user.courses.visible.map{|course| course.id}.join(",") + ")"
|
||||
user_course_ids = @user.courses.empty? ? "(-1)" :"(" + @user.courses.visible.map{|course| course.id}.join(",") + ")"
|
||||
@homework_commons = HomeworkCommon.where("course_id in #{user_course_ids}").order("created_at desc").limit(10).offset(@page * 10)
|
||||
respond_to do |format|
|
||||
format.js
|
||||
|
@ -401,7 +401,7 @@ class UsersController < ApplicationController
|
|||
homework_detail_programing = HomeworkDetailPrograming.new
|
||||
homework.homework_detail_programing = homework_detail_programing
|
||||
homework_detail_programing.ta_proportion = params[:ta_proportion] || 0.6
|
||||
homework_detail_programing.language = params[:program][:language].to_i
|
||||
homework_detail_programing.language = params[:language_type].to_i
|
||||
|
||||
inputs = params[:program][:input]
|
||||
if Array === inputs
|
||||
|
|
|
@ -202,11 +202,15 @@ class WordsController < ApplicationController
|
|||
|
||||
#给用户留言
|
||||
def leave_user_message
|
||||
@user = User.find(params[:id])
|
||||
if params[:new_form][:user_message].size>0 && User.current.logged? && @user
|
||||
@user.add_jour(User.current, params[:new_form][:user_message])
|
||||
if User.current.logged?
|
||||
@user = User.find(params[:id])
|
||||
if params[:new_form][:user_message].size>0 && User.current.logged? && @user
|
||||
@user.add_jour(User.current, params[:new_form][:user_message])
|
||||
end
|
||||
redirect_to feedback_path(@user)
|
||||
else
|
||||
render_403
|
||||
end
|
||||
redirect_to feedback_path(@user)
|
||||
end
|
||||
|
||||
# add by nwb
|
||||
|
|
|
@ -10,7 +10,7 @@ class HomeworkCommon < ActiveRecord::Base
|
|||
has_one :homework_detail_manual, :dependent => :destroy
|
||||
has_one :homework_detail_programing, :dependent => :destroy
|
||||
has_many :homework_tests, :dependent => :destroy
|
||||
has_many :student_works, :dependent => :destroy
|
||||
has_many :student_works, :dependent => :destroy, :conditions => "is_test=0"
|
||||
has_many :student_works_evaluation_distributions, :through => :student_works #一个作业的分配的匿评列表
|
||||
has_many :acts, :class_name => 'Activity', :as => :act, :dependent => :destroy #用户活动
|
||||
# 课程动态
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#学生提交作品表
|
||||
class StudentWork < ActiveRecord::Base
|
||||
attr_accessible :name, :description, :homework_common_id, :user_id, :final_score, :teacher_score, :student_score, :teaching_asistant_score, :project_id
|
||||
attr_accessible :name, :description, :homework_common_id, :user_id, :final_score, :teacher_score, :student_score, :teaching_asistant_score, :project_id, :is_test
|
||||
|
||||
belongs_to :homework_common
|
||||
belongs_to :user
|
||||
|
|
|
@ -130,4 +130,18 @@
|
|||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
$(function(){
|
||||
var images=$("div#activity_description_<%= user_activity_id %>").find("img");
|
||||
if (images.length>0) {
|
||||
for (var i=0; i<images.length; i++){
|
||||
var image=$(images[i]);
|
||||
var element=$("<a></a>").attr("href",image.attr('src'));
|
||||
image.wrap(element);
|
||||
}
|
||||
}
|
||||
$('#activity_description_<%= user_activity_id %> a').colorbox({rel:'nofollow', close: "关闭"});
|
||||
});
|
||||
|
||||
</script>
|
|
@ -49,6 +49,10 @@
|
|||
<!-- , user_import_resource_user_path(User.current.id,:homework_id=>container.id) -->
|
||||
<a href="javascript:void(0);" class="AnnexBtn fl mt3" onclick="$('#_file').click();">上传附件</a>
|
||||
<%= link_to "资源库",{:controller => 'users',:action=>'user_import_resource',:id=>User.current.id,:homework_id=>container.id},:class => "FilesBtn fl mr15 mt3",:remote => true%>
|
||||
<% if defined?(has_program) && has_program %>
|
||||
<a href="javascript:void(0);" class="ProBtn fl mt3">编程</a>
|
||||
<span class="fl C_lgrey mt3 program_detail_info"></span>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
<% content_for :header_tags do %>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<% content_for :header_tags do %>
|
||||
<%= javascript_include_tag "/assets/kindeditor/kindeditor",'/assets/kindeditor/pasteimg' %>
|
||||
<%= javascript_include_tag "/assets/kindeditor/kindeditor",'/assets/kindeditor/pasteimg'%>
|
||||
<%= javascript_include_tag 'homework','baiduTemplate' %>
|
||||
<% end %>
|
||||
|
||||
|
@ -40,7 +40,7 @@
|
|||
<div class="cl"></div>
|
||||
|
||||
<div id="homework_attachments">
|
||||
<%= render :partial => 'users/user_homework_attachment', :locals => {:container => homework} %>
|
||||
<%= render :partial => 'users/user_homework_attachment', :locals => {:container => homework, :has_program=>true} %>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -51,29 +51,6 @@
|
|||
<div class="cl"></div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="mt10">
|
||||
<a href="javascript:void(0);" class=" fl DropBtn">编程选项</a>
|
||||
<div class="DropLine"></div>
|
||||
<div class="cl"></div>
|
||||
</div>
|
||||
|
||||
<div class="advanced_option" style="display:none;">
|
||||
<div class="mt10">
|
||||
<select class="InputBox W120" name="program[language]">
|
||||
<option value="1" selected>C语言</option>
|
||||
<option value="2">C++</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="mt10">
|
||||
<textarea class="InputBox W320 fl mr10" placeholder="测试输入" name="program[input][]"></textarea><textarea class="InputBox W320 fl mr5" placeholder="测试输出" name="program[output][]"></textarea>
|
||||
<a href="javascript:void(0);" class=" fl icon_add" title="增加测试组"></a>
|
||||
<div class="cl"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<input type="hidden" name="homework_type" value="1">
|
||||
|
||||
</div>
|
||||
|
@ -82,9 +59,46 @@
|
|||
|
||||
<script id="t:test-answer-list" type="text/html">
|
||||
<div class="mt10">
|
||||
<textarea class="InputBox W320 fl mr10" placeholder="测试输入" required name="program[input][]"></textarea><textarea class="InputBox W320 fl mr5" placeholder="测试输出" required name="program[output][]"></textarea>
|
||||
<textarea class="InputBox W320 fl mr10" placeholder="测试输入" name="program[input][]"></textarea><textarea class="InputBox W320 fl mr5" placeholder="测试输出" name="program[output][]"></textarea>
|
||||
<a href="javascript:void(0);" class=" fl icon_add" title="增加测试组"></a>
|
||||
<a href="javascript:void(0);" class=" fl icon_remove" title="删除测试组"></a>
|
||||
<div class="cl"></div>
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<script type="text/html" id="t:program-input-list">
|
||||
<div class="program-input">
|
||||
<input type="hidden" name="language_type" value="<!= language_type !>" />
|
||||
<! for(var i=0; i< input_groups.length; ++i) { !>
|
||||
<input name="program[input][]" type="hidden" value="<!= input_groups[i].input !>" />
|
||||
<input name="program[output][]" type="hidden" value="<!= input_groups[i].output !>" />
|
||||
<! } !>
|
||||
</div>
|
||||
</script>
|
||||
|
||||
|
||||
<div class="BluePopupBox" id="BluePopupBox" style="display:none">
|
||||
<a href="javascript:void(0);" class="CloseBtn" title="关闭弹框"></a>
|
||||
<h2 class="BluePopuph2 fl">编程作业的测试集设置</h2>
|
||||
<div class="cl"></div>
|
||||
<div class="HomeWorkCon">
|
||||
<div class="mt15">
|
||||
<select class="InputBox W120 language_type" >
|
||||
<option value="1" selected>C语言</option>
|
||||
<option value="2">C++</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="mt10">
|
||||
<textarea class="InputBox W320 fl mr10" placeholder="测试输入"></textarea><textarea class="InputBox W320 fl mr5" placeholder="测试输出"></textarea>
|
||||
<a href="javascript:void(0);" class=" fl icon_add" title="增加测试组"></a>
|
||||
<div class="cl"></div>
|
||||
</div>
|
||||
|
||||
<div class="mt10">
|
||||
<a href="javascript:void(0);" class="BlueCirBtn fr">确 定</a>
|
||||
<div class="cl"></div>
|
||||
</div>
|
||||
|
||||
</div><!----HomeWorkCon end-->
|
||||
|
||||
</div><!----BluePopupBox end-->
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
</div>
|
||||
<% if homework_common.homework_type == 2 && is_teacher%>
|
||||
<div class="homepagePostSubmit">
|
||||
<%= link_to "模拟答题", new_user_commit_homework_users_path(homework_id: homework_common.id, is_test: true), class: 'c_blue' %>
|
||||
<%= link_to "模拟答题", new_user_commit_homework_users_path(homework_id: homework_common.id, is_test: true), class: 'c_blue test-program-btn', title: '教师可以通过模拟答题设置作业的标准答案' %>
|
||||
</div>
|
||||
<% end %>
|
||||
<div class="homepagePostDeadline">
|
||||
|
|
|
@ -38,11 +38,15 @@
|
|||
</script>
|
||||
<!-- 模板1结束 -->
|
||||
|
||||
<div class="homepageRight">
|
||||
<div class="ProgramHomework">
|
||||
|
||||
|
||||
<div class="homepageRightBanner mb10">
|
||||
<div class="NewsBannerName"><%= @is_test ? '模拟答题' : '提交作品' %></div>
|
||||
</div>
|
||||
<div class="cl"></div>
|
||||
|
||||
<div class="HomeWork">
|
||||
<div class="RightBanner">
|
||||
<div class="NewsBannerName"><%= @is_test ? '模拟答题' : '提交作品' %></div>
|
||||
</div>
|
||||
<div class="HomeWorkBox">
|
||||
<div class="">
|
||||
<div class="homepagePostTitle fl"><%= @homework.name %></div><span class="fr c_grey">截止时间:<%= @homework.end_time %></span>
|
||||
|
@ -70,7 +74,7 @@
|
|||
<%= f.text_area :name, id: 'program-title', class:"InputBox W700", placeholder:"请概括你的代码的功能" %>
|
||||
</div>
|
||||
<div class="mt10">
|
||||
<%= f.text_area :description, id: 'program-src', class:" W700 H150", placeholder:"请贴入你的代码", rows: 10 %>
|
||||
<%= f.text_area :description, id: 'program-src', class:"InputBox W700 H150", placeholder:"请贴入你的代码", rows: 10 %>
|
||||
</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>
|
||||
|
|
|
@ -1,13 +1,6 @@
|
|||
class DeleteAnonymousJour < ActiveRecord::Migration
|
||||
def up
|
||||
jour_count = Journal.all.count / 30 + 2
|
||||
transaction do
|
||||
for i in 1 ... jour_count do i
|
||||
Journal.page(i).per(30).each do |jour|
|
||||
jour.destroy if jour.user_id == 2
|
||||
end
|
||||
end
|
||||
end
|
||||
Journal.where("user_id = 2").destroy_all
|
||||
end
|
||||
|
||||
def down
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
class DeleteAnonymousFeedback < ActiveRecord::Migration
|
||||
def up
|
||||
JournalsForMessage.where("user_id = 2").destroy_all
|
||||
end
|
||||
|
||||
def down
|
||||
end
|
||||
end
|
|
@ -0,0 +1,8 @@
|
|||
class DeleteAnonymousMessage < ActiveRecord::Migration
|
||||
def up
|
||||
Message.where("author_id = 2").destroy_all
|
||||
end
|
||||
|
||||
def down
|
||||
end
|
||||
end
|
|
@ -0,0 +1,5 @@
|
|||
class AddIsTestToStudentWorks < ActiveRecord::Migration
|
||||
def change
|
||||
add_column :student_works, :is_test, :boolean, default: false
|
||||
end
|
||||
end
|
3370
db/schema.rb
3370
db/schema.rb
File diff suppressed because it is too large
Load Diff
Binary file not shown.
After Width: | Height: | Size: 3.2 KiB |
Binary file not shown.
After Width: | Height: | Size: 5.3 KiB |
Binary file not shown.
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 11 KiB |
Binary file not shown.
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 12 KiB |
|
@ -4,7 +4,7 @@ $(function(){
|
|||
var bt=baidu.template;
|
||||
bt.LEFT_DELIMITER='<!';
|
||||
bt.RIGHT_DELIMITER='!>';
|
||||
|
||||
|
||||
var tested = false;
|
||||
var valid_form = function() {
|
||||
var src = $('#program-src').val();
|
||||
|
@ -95,6 +95,10 @@ $(function(){
|
|||
|
||||
|
||||
//发布作业
|
||||
|
||||
$('#program-src').focus(function(){
|
||||
$(this).css('height', '100px');
|
||||
});
|
||||
var isProgramHomework = function(){
|
||||
return !$(".advanced_option").is(":hidden");
|
||||
}
|
||||
|
@ -128,16 +132,65 @@ $(function(){
|
|||
})
|
||||
|
||||
|
||||
$('a.DropBtn').on('click', function(){
|
||||
$(".advanced_option").toggle();
|
||||
$('a.ProBtn').on('click', function(){
|
||||
$("#BluePopupBox").dialog({
|
||||
modal: true,
|
||||
dialogClass: 'BluePopupBox',
|
||||
minWidth: 753
|
||||
});
|
||||
$(".ui-dialog-titlebar").hide();
|
||||
|
||||
$("a.CloseBtn").on('click', function(){
|
||||
$("#BluePopupBox" ).dialog("close");
|
||||
});
|
||||
|
||||
$("#BluePopupBox a.BlueCirBtn").on('click', function(){
|
||||
var test_numbers = 0;
|
||||
var valid = true;
|
||||
var input = null;
|
||||
var output = null;
|
||||
var input_groups = [];
|
||||
$.each($('#BluePopupBox textarea.InputBox'), function(i, val){
|
||||
if ($(val).val().length<=0) {
|
||||
$(val)[0].focus();
|
||||
valid =false;
|
||||
return false;
|
||||
}
|
||||
if (test_numbers %2==0) {
|
||||
input = $(val).val();
|
||||
} else {
|
||||
output = $(val).val();
|
||||
input_groups.push({input: input, output: output});
|
||||
}
|
||||
test_numbers += 1;
|
||||
});
|
||||
|
||||
var language = $('select.language_type').val() == 1 ? 'C语言' : 'C++语言';
|
||||
|
||||
if (valid) {
|
||||
$("input[name=homework_type]").val(2);
|
||||
$('span.program_detail_info').text('('+language+','+test_numbers/2+'组测试)');
|
||||
//保存js值
|
||||
var data = {
|
||||
language_type: $('select.language_type').val(),
|
||||
input_groups: input_groups
|
||||
};
|
||||
//构建到form中
|
||||
$('.program-input').remove();
|
||||
var html=bt('t:program-input-list',data);
|
||||
$("input[name=homework_type]").after(html);
|
||||
$("#BluePopupBox" ).dialog( "close" );
|
||||
};
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
$(".HomeWork").on('click', 'a.icon_add', function(){
|
||||
$("#BluePopupBox").on('click', 'a.icon_add', function(){
|
||||
var html = bt('t:test-answer-list', null);
|
||||
$(this).parent('.mt10').after(html);
|
||||
|
||||
});
|
||||
$(".HomeWork").on('click', 'a.icon_remove', function(){
|
||||
$("#BluePopupBox").on('click', 'a.icon_remove', function(){
|
||||
$(this).parent('.mt10').remove();
|
||||
});
|
||||
});
|
|
@ -864,16 +864,36 @@ a:hover.BlueCirBtnMini{ background:#269ac9; color:#fff;}
|
|||
a.DropBtn{background: url(../images/homepage_icon2.png) -125px -339px no-repeat; width:85px; height:20px; display:block; color:#888888; font-size:14px;}
|
||||
a:hover.DropBtn{background: url(../images/homepage_icon2.png) -125px -370px no-repeat;}
|
||||
.DropLine{border-top:1px solid #d9d9d9; float:left; width:623px; height:10px; margin-top:10px;}
|
||||
/*20150820课程作业 LB*/
|
||||
.HomeWork {width:708px; background-color:#ffffff; padding:20px; border:1px solid #dddddd;}
|
||||
.RightBanner {font-size:16px; width:733px; color:#4b4b4b; padding:10px 0 0 15px; margin-bottom:10px; background:#fff; border:1px solid #dddddd;height:34px;}
|
||||
select.InputBox,input.InputBox,textarea.InputBox{ border:1px solid #d9d9d9; color:#888888; height:28px; line-height:28px; padding-left:5px; font-size:14px;}
|
||||
a.BlueCirBtn{ display:block;width:75px; height:28px; background-color:#fff; line-height:28px; vertical-align:middle; text-align:center; border:1px solid #3598db; color:#3598db; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;}
|
||||
a:hover.BlueCirBtn{ background:#3598db; color:#fff;}
|
||||
.W440{ width:440px;}
|
||||
.W120{ width:110px;}
|
||||
.W700{ width:700px;}
|
||||
a.AnnexBtn{ background: url(../images/homepage_icon.png) 0px -343px no-repeat; width:70px; height:20px; display:block; padding-left:20px; color:#888888;}
|
||||
a:hover.AnnexBtn{background: url(../images/homepage_icon.png) -90px -343px no-repeat; color:#3598db;}
|
||||
a.FilesBtn{ background: url(../images/homepage_icon.png) 0px -373px no-repeat; width:70px; height:20px; display:block; padding-left:20px; color:#888888;}
|
||||
a:hover.FilesBtn{background: url(../images/homepage_icon.png) -89px -372px no-repeat; color:#3598db;}
|
||||
a.BlueCirBtnMini{ display:block;width:40px; height:22px; background-color:#ffffff; line-height:24px; vertical-align:middle; text-align:center; border:1px solid #3598db; color:#3598db; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;}
|
||||
a:hover.BlueCirBtnMini{ background:#3598db; color:#fff;}
|
||||
a.ProBtn{background: url(../images/homepage_icon.png) -86px -396px no-repeat; width:35px; height:20px; display:block; padding-left:20px; color:#888888;}
|
||||
a:hover.ProBtn{background: url(../images/homepage_icon.png) -86px -426px no-repeat; color:#3598db;}
|
||||
|
||||
a.DropBtn{background: url(../images/homepage_icon.png) -125px -339px no-repeat; width:85px; height:20px; display:block; color:#888888; font-size:14px;}
|
||||
a:hover.DropBtn{background: url(../images/homepage_icon.png) -125px -370px no-repeat;}
|
||||
.DropLine{border-top:1px solid #d9d9d9; float:left; width:623px; height:10px; margin-top:10px;}
|
||||
/*20150820编程作业 LB*/
|
||||
.W320{ width:320px; max-width: 320px; min-width: 320px;}
|
||||
.icon_add{ background:url(images/icons.png) 0px -310px no-repeat; width:16px; height:27px; display:block;float:left; margin-right:5px;}
|
||||
a:hover.icon_add{background:url(images/icons.png) -20px -310px no-repeat;}
|
||||
.icon_remove{background:url(images/icons.png) 0px -338px no-repeat; width:16px; height:27px; display:block;float:left;}
|
||||
a:hover.icon_remove{background:url(images/icons.png) -20px -338px no-repeat;}
|
||||
.W320{ width:320px;}
|
||||
.icon_add{ background:url(../images/course/icons.png) 0px -310px no-repeat; width:16px; height:27px; display:block;float:left; margin-right:5px;}
|
||||
a:hover.icon_add{background:url(../images/course/icons.png) -20px -310px no-repeat;}
|
||||
.icon_remove{background:url(../images/course/icons.png) 0px -338px no-repeat; width:16px; height:27px; display:block;float:left;}
|
||||
a:hover.icon_remove{background:url(../images/course/icons.png) -20px -338px no-repeat;}
|
||||
/*20150820提交作业 LB*/
|
||||
.HomeWorkBox{ background:#f6f6f6; padding:10px; margin:10px 0;}
|
||||
.c_grey{ color:#888888;}
|
||||
.c_dark_grey{color:#a9a9a9 !important;}
|
||||
.HomeWorkP{ width:690px; font-size:14px;}
|
||||
.H150{ height:150px;}
|
||||
.ProResult{width:748px; background-color:#fff; border:1px solid #dddddd;border-bottom:none; }
|
||||
|
@ -883,17 +903,43 @@ a:hover.icon_remove{background:url(images/icons.png) -20px -338px no-repeat;}
|
|||
.W200{ width:200px;}
|
||||
.ProResultTable{ color:#888888;}
|
||||
.T_C{ text-align:center;}
|
||||
.SearchIcon{background:url(../images/homepage_icon2.png) 676px -393px no-repeat; }
|
||||
.SearchIcon:hover{background:url(../images/homepage_icon2.png) 676px -419px no-repeat; }
|
||||
a.link_file{ background:url(../images/pic_file.png) 0 2px no-repeat; padding-left:20px; }
|
||||
a:hover.link_file{ background:url(../images/pic_file.png) 0 -25px no-repeat; color:#3ca5c6;}
|
||||
a.remove-upload {background: url(../images/delete.png) no-repeat 1px 50%;width: 1px;display: inline-block;padding-left: 16px;}
|
||||
.SearchIcon{background:url(../images/homepage_icon.png) 676px -393px no-repeat; }
|
||||
.SearchIcon:hover{background:url(../images/homepage_icon.png) 676px -419px no-repeat; }
|
||||
a.link_file{ background:url(../images/course/pic_file.png) 0 2px no-repeat; padding-left:20px; }
|
||||
a:hover.link_file{ background:url(../images/course/pic_file.png) 0 -25px no-repeat; color:#3ca5c6;}
|
||||
a.FilesName{ max-width:540px;overflow:hidden; white-space:nowrap; text-overflow:ellipsis; display:block;}
|
||||
a.FilesName02{ max-width:665px;overflow:hidden; white-space:nowrap; text-overflow:ellipsis; display:block;}
|
||||
.ProResultUl span { display:block; float:left;}
|
||||
.ProResultUl li{ line-height:35px; border-bottom:1px solid #dddddd; }
|
||||
.DateBorder{border:1px solid #d9d9d9; border-left:none; padding:7px 6px 6px 6px;}
|
||||
|
||||
a.UsersEditBtn{ display:block; width:55px; height:20px; border:1px solid #6d6d6d; color:#fff; background:#888888 url(../images/homepage_icon.png) -11px -35px no-repeat; padding-left:25px; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;}
|
||||
a:hover.UsersEditBtn{ color:#484848; background:#888888 url(../images/homepage_icon.png) -11px -74px no-repeat;}
|
||||
a.UsersAttBtn{ display:block; width:55px; height:20px; border:1px solid #d3d3d3; color:#888888; background:#f2f3f3 url(../images/homepage_icon.png) -9px -6px no-repeat; padding-left:25px; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;}
|
||||
a:hover.UsersAttBtn{border:1px solid #888888; }
|
||||
a.UsersApBtn{ display:block; width:55px; height:20px; border:1px solid #d3d3d3; color:#888888; background:#f2f3f3 url(../images/homepage_icon.png) -177px -6px no-repeat; padding-left:25px; line-height:1.9;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;}
|
||||
a:hover.UsersApBtn{border:1px solid #888888; }
|
||||
/*20150906编程作业设置弹框 LB*/
|
||||
.C_lgrey{ color:#a5a5a5;}
|
||||
.C_Blue{ color:#3598db;}
|
||||
a.C_Blue{ color:#3598db;}
|
||||
a:hover.C_Blue{ color:#297fb8;}
|
||||
.BluePopupBox{ border:3px solid #3598db; padding:20px; background:#fff; width:707px;}
|
||||
/*.BluePopupBox:hover{ border:3px solid #297fb8; }*/
|
||||
a.CloseBtn{background:url(../images/CloseBtn.png) 0px 0px no-repeat; width:13px; height:13px; display:block; float:right;}
|
||||
a:hover.CloseBtn{background:url(../images/CloseBtn.png) 0px -24px no-repeat; }
|
||||
.BluePopuph2{ font-size:16px; font-weight:bold; color:#3598db; }
|
||||
.ProBoxResult{width:706px; background-color:#fff; border:1px solid #dddddd;border-bottom:none; max-height:300px; overflow:auto; }
|
||||
.W108{ width:108px;}
|
||||
.HomeWorkCon{ width:706px;}
|
||||
/*20150906导入作业弹框 LB*/
|
||||
.ImportBox{ width:708px; max-height:300px;overflow:auto;}
|
||||
.ImportBox li{ margin-bottom:10px;}
|
||||
.WorkTitle{ max-width:660px; font-size:14px; font-weight:bold; color:#484848;}
|
||||
.W520{ width:680px;}
|
||||
.ImportSearchIcon{background:url(../images/homepage_icon.png) 656px -393px no-repeat; }
|
||||
.ImportSearchIcon:hover{background:url(../images/homepage_icon.png) 656px -419px no-repeat; }
|
||||
|
||||
/*日历选择图*/
|
||||
img.ui-datepicker-trigger {
|
||||
display:block;
|
||||
|
@ -1001,3 +1047,56 @@ a:hover.tijiao{ background:#0f99a9;}
|
|||
.about_project{ overflow:hidden;display:none;}
|
||||
.project_r_h{ width:670px; height:40px; background:#eaeaea; margin-bottom:10px;}
|
||||
.project_r_h02{ width:920px; height:40px; background:#eaeaea; margin-bottom:10px;}
|
||||
|
||||
/* colorbox
|
||||
*******************************************************************************/
|
||||
/*
|
||||
Colorbox Core Style:
|
||||
The following CSS is consistent between example themes and should not be altered.
|
||||
*/
|
||||
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
|
||||
#cboxWrapper {max-width:none;}
|
||||
#cboxOverlay{position:fixed; width:100%; height:100%;}
|
||||
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
|
||||
#cboxContent{position:relative;}
|
||||
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
|
||||
#cboxTitle{margin:0;}
|
||||
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
|
||||
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
|
||||
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
|
||||
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
|
||||
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}
|
||||
|
||||
/*
|
||||
User Style:
|
||||
Change the following styles to modify the appearance of Colorbox. They are
|
||||
ordered & tabbed in a way that represents the nesting of the generated HTML.
|
||||
*/
|
||||
#cboxOverlay{background:#fff;}
|
||||
#colorbox{outline:0;}
|
||||
#cboxTopLeft{width:25px; height:25px; background:url(../images/colorbox/border1.png) no-repeat 0 0;}
|
||||
#cboxTopCenter{height:25px; background:url(../images/colorbox/border1.png) repeat-x 0 -50px;}
|
||||
#cboxTopRight{width:25px; height:25px; background:url(../images/colorbox/border1.png) no-repeat -25px 0;}
|
||||
#cboxBottomLeft{width:25px; height:25px; background:url(../images/colorbox/border1.png) no-repeat 0 -25px;}
|
||||
#cboxBottomCenter{height:25px; background:url(../images/colorbox/border1.png) repeat-x 0 -75px;}
|
||||
#cboxBottomRight{width:25px; height:25px; background:url(../images/colorbox/border1.png) no-repeat -25px -25px;}
|
||||
#cboxMiddleLeft{width:25px; background:url(../images/colorbox/border2.png) repeat-y 0 0;}
|
||||
#cboxMiddleRight{width:25px; background:url(../images/colorbox/border2.png) repeat-y -25px 0;}
|
||||
#cboxContent{background:#fff; overflow:hidden;}
|
||||
.cboxIframe{background:#fff;}
|
||||
#cboxError{padding:50px; border:1px solid #ccc;}
|
||||
#cboxLoadedContent{margin-bottom:20px;}
|
||||
#cboxTitle{position:absolute; bottom:0px; left:0; text-align:center; width:100%; color:#999;}
|
||||
#cboxCurrent{position:absolute; bottom:0px; left:100px; color:#999;}
|
||||
#cboxLoadingOverlay{background:#fff url(../images/colorbox/loading.gif) no-repeat 5px 5px;}
|
||||
|
||||
/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
|
||||
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; width:auto; background:none; }
|
||||
|
||||
/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
|
||||
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}
|
||||
|
||||
#cboxSlideshow{position:absolute; bottom:0px; right:42px; color:#444;}
|
||||
#cboxPrevious{position:absolute; bottom:0px; left:0; color:#444;}
|
||||
#cboxNext{position:absolute; bottom:0px; left:63px; color:#444;}
|
||||
#cboxClose{position:absolute; bottom:0; right:0; display:block; color:#444;}
|
||||
|
|
Loading…
Reference in New Issue