Merge branch 'develop' into cs_optimize_txz
This commit is contained in:
commit
fdf147326c
114
Gemfile~
114
Gemfile~
|
@ -1,114 +0,0 @@
|
|||
source 'https://ruby.taobao.org/'
|
||||
|
||||
unless RUBY_PLATFORM =~ /w32/
|
||||
# unix-like only
|
||||
gem 'iconv'
|
||||
gem "rmagick", ">= 2.0.0"
|
||||
gem 'certified'
|
||||
end
|
||||
|
||||
gem 'net-ssh', '2.9.1'
|
||||
gem 'jenkins_api_client'
|
||||
gem 'nokogiri'
|
||||
|
||||
gem 'wechat',path: 'lib/wechat'
|
||||
gem 'grack', path:'lib/grack'
|
||||
gem 'gitlab', path: 'lib/gitlab-cli'
|
||||
gem 'rest-client'
|
||||
gem "mysql2", "= 0.3.18"
|
||||
gem 'redis-rails'
|
||||
gem 'rubyzip'
|
||||
gem 'delayed_job_active_record'#, :group => :production
|
||||
gem 'daemons'
|
||||
gem 'grape', '~> 0.9.0'
|
||||
gem 'grape-entity'
|
||||
gem 'rack-cors', :require => 'rack/cors'
|
||||
gem 'seems_rateable', '~> 1.0.13'
|
||||
gem 'rails', '~> 3.2'
|
||||
gem "jquery-rails", "~> 2.0.2"
|
||||
gem "i18n", "~> 0.6.0"
|
||||
gem 'coderay', '~> 1.1.0'
|
||||
gem "fastercsv", "~> 1.5.0", :platforms => [:mri_18, :mingw_18, :jruby]
|
||||
gem "builder", "3.0.0"
|
||||
gem 'acts-as-taggable-on', '2.4.1'
|
||||
gem 'spreadsheet'
|
||||
gem 'ruby-ole'
|
||||
gem 'rails_kindeditor',path:'lib/rails_kindeditor'
|
||||
gem 'binding_of_caller'
|
||||
gem 'chinese_pinyin'
|
||||
# gem 'sunspot_rails', '~> 1.3.3'
|
||||
# gem 'sunspot_solr'
|
||||
# gem 'sunspot'
|
||||
# gem 'progress_bar'
|
||||
gem 'ansi'
|
||||
|
||||
gem 'kaminari'
|
||||
gem 'elasticsearch-model'
|
||||
gem 'elasticsearch-rails'
|
||||
|
||||
|
||||
### profile
|
||||
#gem 'oneapm_rpm'
|
||||
|
||||
group :development do
|
||||
gem 'grape-swagger'
|
||||
gem 'better_errors', '~> 1.1.0'
|
||||
# gem "query_reviewer"
|
||||
# gem 'rack-mini-profiler', '~> 0.9.3'
|
||||
if RUBY_PLATFORM =~ /w32/
|
||||
gem 'win32console'
|
||||
end
|
||||
end
|
||||
|
||||
group :development, :test do
|
||||
unless RUBY_PLATFORM =~ /w32/
|
||||
gem 'pry-rails'
|
||||
if RUBY_VERSION >= '2.0.0'
|
||||
gem 'pry-byebug'
|
||||
end
|
||||
gem 'pry-stack_explorer'
|
||||
if RUBY_PLATFORM =~ /darwin/
|
||||
gem 'puma'
|
||||
end
|
||||
end
|
||||
|
||||
gem 'rspec-rails', '~> 3.0'
|
||||
gem 'factory_girl_rails'
|
||||
end
|
||||
|
||||
# Gems used only for assets and not required
|
||||
# in production environments by default.
|
||||
group :assets do
|
||||
gem 'sass-rails', '~> 3.2.3'
|
||||
gem 'coffee-rails', '~> 3.2.1'
|
||||
|
||||
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
|
||||
# gem 'therubyracer', :platforms => :ruby
|
||||
|
||||
gem 'uglifier', '>= 1.0.3'
|
||||
end
|
||||
|
||||
# Optional gem for LDAP authentication
|
||||
group :ldap do
|
||||
gem "net-ldap", "~> 0.3.1"
|
||||
end
|
||||
|
||||
|
||||
# Optional gem for OpenID authentication
|
||||
group :openid do
|
||||
gem "ruby-openid", "~> 2.1.4", :require => "openid"
|
||||
gem "rack-openid"
|
||||
end
|
||||
|
||||
|
||||
database_file = File.join(File.dirname(__FILE__), "config/database.yml")
|
||||
if File.exist?(database_file)
|
||||
else
|
||||
warn("Please configure your config/database.yml first")
|
||||
end
|
||||
|
||||
# Load plugins' Gemfiles
|
||||
Dir.glob File.expand_path("../plugins/*/Gemfile", __FILE__) do |file|
|
||||
puts "Loading #{file} ..." if $DEBUG # `ruby -d` or `bundle -v`
|
||||
instance_eval File.read(file)
|
||||
end
|
|
@ -61,7 +61,7 @@ class AdminController < ApplicationController
|
|||
if params[:syllabus_id] && params[:course_id]
|
||||
course = Course.where("id = #{params[:course_id].to_i}").first
|
||||
unless course.nil?
|
||||
course.update_attribute('syllabus_id', params[:syllabus_id].to_i)
|
||||
course.update_column('syllabus_id', params[:syllabus_id].to_i)
|
||||
@flag = true
|
||||
end
|
||||
end
|
||||
|
@ -112,10 +112,10 @@ class AdminController < ApplicationController
|
|||
def non_syllabus_courses
|
||||
@name = params[:name].to_s.strip.downcase
|
||||
if @name && @name != ""
|
||||
@courses = Course.where("syllabus_id is null").select{ |course| (course.teacher[:lastname].to_s.downcase + course.teacher[:firstname].to_s.downcase).include?(@name) || course.name.include?(@name)}
|
||||
@courses = Course.where("syllabus_id is null and is_delete = 0").select{ |course| (course.teacher[:lastname].to_s.downcase + course.teacher[:firstname].to_s.downcase).include?(@name) || course.name.include?(@name)}
|
||||
@courses = @courses.sort{|x, y| y.created_at <=> x.created_at}
|
||||
else
|
||||
@courses = Course.where("syllabus_id is null").order('created_at desc')
|
||||
@courses = Course.where("syllabus_id is null and is_delete = 0").order('created_at desc')
|
||||
end
|
||||
@courses = paginateHelper @courses,30
|
||||
@page = (params['page'] || 1).to_i - 1
|
||||
|
@ -124,11 +124,11 @@ class AdminController < ApplicationController
|
|||
end
|
||||
end
|
||||
|
||||
#修改课程名称
|
||||
#修改班级名称
|
||||
def update_course_name
|
||||
@course = Course.where("id = #{params[:course_id].to_i}").first
|
||||
unless @course.nil?
|
||||
@course.update_attribute("name", params[:name])
|
||||
@course.update_column("name", params[:name])
|
||||
respond_to do |format|
|
||||
format.js
|
||||
end
|
||||
|
|
|
@ -114,7 +114,7 @@ class QualityAnalysisController < ApplicationController
|
|||
end
|
||||
end
|
||||
rescue => e
|
||||
puts e
|
||||
@message = e.message
|
||||
end
|
||||
respond_to do |format|
|
||||
if @current_build_status == "success"
|
||||
|
@ -227,9 +227,6 @@ class QualityAnalysisController < ApplicationController
|
|||
end
|
||||
@ha.store(key,value)
|
||||
end
|
||||
|
||||
issue_date = open(@sonar_address + "/api/resources/index?resource=#{@resource_id}&depth=0&metrics=blocker_violations,critical_violations,major_violations,minor_violations,info_violations,violations").read
|
||||
@sonar_issues = JSON.parse(issue_date).first
|
||||
end
|
||||
rescue => e
|
||||
puts e
|
||||
|
|
|
@ -110,9 +110,9 @@ class StudentWorkController < ApplicationController
|
|||
#status 0:答案正确 -5program_test_ex 函数出错 -4judge代码出错 -3http超时 -2:编译错误 -1:答案错误 2:程序运行超时
|
||||
resultObj[:status] = -3
|
||||
CodeTests.create(:homework_id=>@homework.id,:language=>@homework.homework_detail_programing.language,:status=>-3,:wait_time=>tUsedtime,:student_work_id=>student_work.id)
|
||||
rescue
|
||||
rescue => e
|
||||
#-4 judge代码 出错
|
||||
logger.debug "program_test_error 1"
|
||||
logger.debug "program_test_error #{e}"
|
||||
resultObj[:status] = -4
|
||||
tmpstatus = -4
|
||||
CodeTests.create(:homework_id=>@homework.id,:language=>@homework.homework_detail_programing.language,:status=>tmpstatus,:time_used=>0,:wait_time=>0,:student_work_id=>student_work.id)
|
||||
|
@ -197,7 +197,7 @@ class StudentWorkController < ApplicationController
|
|||
resultObj[:status] = 0
|
||||
end
|
||||
student_work.save!
|
||||
resultObj[:time] = student_work_test.created_at.to_s(:db)
|
||||
resultObj[:time] = student_work_test.created_at.strftime(format='%Y-%m-%d %H:%M:%S')
|
||||
resultObj[:index] = student_work.student_work_tests.count
|
||||
end
|
||||
|
||||
|
|
|
@ -2023,7 +2023,7 @@ class UsersController < ApplicationController
|
|||
@flag = true
|
||||
if params[:send_id].present?
|
||||
rs = ResourcesService.new
|
||||
@ori, @flag, @save_message = rs.send_resource_to_course(params)
|
||||
@ori, @flag, @save_message = rs.send_resource_to_course(User.current, params)
|
||||
elsif params[:send_ids].present?
|
||||
send_ids = params[:send_ids].split(",")
|
||||
course_ids = params[:course_ids]
|
||||
|
|
|
@ -3,16 +3,16 @@ module QualityAnalysisHelper
|
|||
|
||||
def sqale_rating_status val
|
||||
arr = []
|
||||
if val < 5
|
||||
if val <= 5
|
||||
arr << "很好"
|
||||
arr << "b_green2"
|
||||
elsif val. > 5 && val < 10
|
||||
elsif val. > 5 && val <= 10
|
||||
arr << "较好"
|
||||
arr << "b_slow_yellow"
|
||||
elsif val > 10 && val < 20
|
||||
elsif val > 10 && val <= 20
|
||||
arr << "中等"
|
||||
arr << "b_yellow"
|
||||
elsif val > 20 && val < 50
|
||||
elsif val > 20 && val <= 50
|
||||
arr << "较差"
|
||||
arr << "b_slow_red"
|
||||
elsif val > 20
|
||||
|
@ -23,10 +23,10 @@ module QualityAnalysisHelper
|
|||
|
||||
def complexity_status val
|
||||
arr = []
|
||||
if val < 10
|
||||
if val <= 10
|
||||
arr << "良好"
|
||||
arr << "b_green2"
|
||||
elsif val > 10 && val < 15
|
||||
elsif val > 10 && val <= 15
|
||||
arr << "较高"
|
||||
arr << "b_yellow"
|
||||
elsif val > 15
|
||||
|
@ -37,10 +37,10 @@ module QualityAnalysisHelper
|
|||
|
||||
def duplicated_lines_density_status val
|
||||
arr = []
|
||||
if val < 30
|
||||
if val <= 30
|
||||
arr << "良好"
|
||||
arr << "b_green2"
|
||||
elsif val > 30 && val < 50
|
||||
elsif val > 30 && val <= 50
|
||||
arr << "较高"
|
||||
arr << "b_yellow"
|
||||
elsif val > 50
|
||||
|
@ -51,10 +51,10 @@ module QualityAnalysisHelper
|
|||
|
||||
def comment_lines_density_status val
|
||||
arr = []
|
||||
if val < 20
|
||||
if val <= 20
|
||||
arr << "较低"
|
||||
arr << "b_yellow"
|
||||
elsif val > 20 && val < 50
|
||||
elsif val > 20 && val <= 50
|
||||
arr << "正常"
|
||||
arr << "b_green2"
|
||||
elsif val > 50
|
||||
|
@ -64,15 +64,15 @@ module QualityAnalysisHelper
|
|||
end
|
||||
|
||||
def score_sqale_rating val
|
||||
if val > 0 && val < 5
|
||||
if val >= 0 && val <= 5
|
||||
"5"
|
||||
elsif val > 5 && val < 10
|
||||
elsif val > 5 && val <= 10
|
||||
"4"
|
||||
elsif val > 10 && val < 20
|
||||
elsif val > 10 && val <= 20
|
||||
"3"
|
||||
elsif val > 20 && val < 50
|
||||
elsif val > 20 && val <= 50
|
||||
"2"
|
||||
elsif val > 20
|
||||
elsif val > 50
|
||||
"1"
|
||||
end
|
||||
end
|
||||
|
|
|
@ -45,7 +45,7 @@ class StudentWorkTest < ActiveRecord::Base
|
|||
private
|
||||
def get_success_count
|
||||
self.results.inject(0) do |sum, result|
|
||||
sum += (result["status"] && result["status"].to_i == 0 ? 1 : 0)
|
||||
sum += (result["status"] && result["status"].class == ::Fixnum && result["status"].to_i == 0 ? 1 : 0)
|
||||
end || 0
|
||||
end
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
</span>
|
||||
</td>
|
||||
<td align="center">
|
||||
<%= link_to(course.try(:teacher).try(:realname).truncate(6, omission: '...'), user_path(course.teacher)) %>
|
||||
<%= link_to(course.teacher.show_name.truncate(6, omission: '...'), user_path(course.teacher)) %>
|
||||
</td>
|
||||
<td align="center">
|
||||
<%= course.class_period %>
|
||||
|
@ -15,6 +15,9 @@
|
|||
<td class="center">
|
||||
<%= checked_image course.is_public? %>
|
||||
</td>
|
||||
<td class="center">
|
||||
<%= course.is_delete == 0 ? '正常' : '归档' %>
|
||||
</td>
|
||||
<td class="center">
|
||||
<%= format_date(course.created_at) %>
|
||||
</td>
|
||||
|
|
|
@ -27,10 +27,10 @@
|
|||
<table class="list" style="width: 100%;table-layout: fixed">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width: 30px;">
|
||||
<th style="width: 20px;">
|
||||
序号
|
||||
</th>
|
||||
<th style="width: 85px;">
|
||||
<th style="width: 70px;">
|
||||
班级
|
||||
</th>
|
||||
<th style="width: 35px;">
|
||||
|
@ -42,6 +42,9 @@
|
|||
<th style="width: 15px;">
|
||||
<%=l(:field_is_public)%>
|
||||
</th>
|
||||
<th style="width: 20px;">
|
||||
状态
|
||||
</th>
|
||||
<th style="width: 45px;">
|
||||
<%=l(:field_created_on)%>
|
||||
</th>
|
||||
|
@ -58,9 +61,11 @@
|
|||
</thead>
|
||||
<tbody>
|
||||
<% @courses.each do |course| %>
|
||||
<% unless course.teacher.nil? %>
|
||||
<tr class="<%= cycle("odd", "even") %>" id="course_<%=course.id %>">
|
||||
<%=render :partial => 'courselist_detail_tr', :locals => {:course => course} %>
|
||||
</tr>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</tbody>
|
||||
</table>
|
||||
|
|
|
@ -27,10 +27,10 @@
|
|||
<table class="list" style="width: 100%;table-layout: fixed">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width: 30px;">
|
||||
<th style="width: 20px;">
|
||||
序号
|
||||
</th>
|
||||
<th style="width: 85px;">
|
||||
<th style="width: 70px;">
|
||||
班级
|
||||
</th>
|
||||
<th style="width: 35px;">
|
||||
|
@ -42,6 +42,9 @@
|
|||
<th style="width: 15px;">
|
||||
<%=l(:field_is_public)%>
|
||||
</th>
|
||||
<th style="width: 20px;">
|
||||
状态
|
||||
</th>
|
||||
<th style="width: 45px;">
|
||||
<%=l(:field_created_on)%>
|
||||
</th>
|
||||
|
@ -58,17 +61,18 @@
|
|||
</thead>
|
||||
<tbody>
|
||||
<% @courses.each do |course| %>
|
||||
<% unless course.teacher.nil? %>
|
||||
<tr class="<%= cycle("odd", "even") %>" id="course_<%=course.id %>">
|
||||
<td style="text-align: center;">
|
||||
<%= course.id %>
|
||||
</td>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="name" title='<%=course.name%>'>
|
||||
<td style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="name" title='<%=course.name%>' id="syllabus_course_name_<%=course.id %>">
|
||||
<span>
|
||||
<a title="<%=course.name %>" id="rename_course_name_<%=course.id %>" ondblclick="rename_course_name($(this),'<%=course.name %>','<%=course.id %>');"><%= course.name%></a>
|
||||
</span>
|
||||
</td>
|
||||
<td align="center">
|
||||
<%= link_to(course.try(:teacher).try(:realname).truncate(6, omission: '...'), user_path(course.teacher)) %>
|
||||
<%= link_to(course.teacher.show_name.truncate(6, omission: '...'), user_path(course.teacher)) %>
|
||||
</td>
|
||||
<td align="center">
|
||||
<%= course.class_period %>
|
||||
|
@ -76,6 +80,9 @@
|
|||
<td class="center">
|
||||
<%= checked_image course.is_public? %>
|
||||
</td>
|
||||
<td class="center">
|
||||
<%= course.is_delete == 0 ? '正常' : '归档' %>
|
||||
</td>
|
||||
<td class="center">
|
||||
<%= format_date(course.created_at) %>
|
||||
</td>
|
||||
|
@ -90,6 +97,7 @@
|
|||
</td>
|
||||
</tr>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
|
|
@ -17,10 +17,10 @@
|
|||
<% if @quality_analyses.count >0 %>
|
||||
<% @quality_analyses.each do |qa| %>
|
||||
<ul class="analysis-result-list">
|
||||
<li title="Name" title="名称"><%=link_to "#{qa.author_login}:#{qa.rep_identifier}", project_quality_analysis_path(:resource_id => qa.sonar_name, :branch => (qa.branch.nil? ? "master" : qa.branch)), :class => "analysis-result-name fl fontBlue2" %></li>
|
||||
<li class="analysis-result-version fl fontBlue2" title="分支名"><%= qa.branch %></li>
|
||||
<li class="analysis-result-loc fl fontBlue2" title="语言"><%= qa.language %></li>
|
||||
<li class="analysis-result-debt fl fontBlue2" title="时间"><%= qa.path %></li>
|
||||
<li title="Name" title="名称"><%=link_to "#{qa.author_login}:#{qa.rep_identifier}", project_quality_analysis_path(:resource_id => qa.sonar_name, :branch => (qa.branch.nil? ? "master" : qa.branch)), :class => "analysis-result-name fl fontBlue2 hidden" %></li>
|
||||
<li class="analysis-result-version fl fontBlue2 hidden" title="分支名"><%= qa.branch %></li>
|
||||
<li class="analysis-result-loc fl fontBlue2 hidden" title="语言"><%= qa.language %></li>
|
||||
<li class="analysis-result-debt fl fontBlue2 hidden" title="路径"><%= qa.path %></li>
|
||||
<% if User.current.try(:login) == qa.author_login %>
|
||||
<li class="analysis-result-time fl" title="编辑">
|
||||
<%=link_to "编辑", edit_project_quality_analysi_path(qa, :project_id => @project.id), :remote => true, :class => "fontBlue2" %>
|
||||
|
|
|
@ -58,17 +58,17 @@
|
|||
<span class="fontGrey2">可定性评价为:<span class="c_red">质量<%= @ha["sqale_rating"].nil? ? "很好" : sqale_rating_status(@ha["sqale_rating"].to_i)[0] %></span></span></div>
|
||||
<div class="analysis-block mt10 mb40 f14">
|
||||
<div><span class="fontGrey3 mr30">技术债务</span>
|
||||
<span class="w70 pInline">
|
||||
<span class="w100 pInline">
|
||||
<% if @ha["sqale_index"].to_i == 0 %>
|
||||
0
|
||||
0天
|
||||
<% else %>
|
||||
<%= /[0-9]*/.match(@ha["sqale_index"])[0] %>天
|
||||
<%= / [0-9]*/.match(@ha["sqale_index"]).nil? ? 0 : / [0-9]*/.match(@ha["sqale_index"]) %>小时
|
||||
<%= / [0-9]*/.match(@ha["sqale_index"]).nil? ? "" : (/ [0-9]*/.match(@ha["sqale_index"]).to_s + "小时") %>
|
||||
<% end %>
|
||||
</span>
|
||||
<span class="fontGrey2"><a class="linkBlue2" target="_blank" href="<%= @sonar_address %>/drilldown/measures/<%= @resource_id %>?metric=sqale_index">查看详情</a></span></div>
|
||||
<div><span class="fontGrey3 mr30 fl">质量问题</span>
|
||||
<span class="fontBlue2 w70 pInline">
|
||||
<div><span class="fontGrey3 mr30 fl"> 质量问题</span>
|
||||
<span class="fontBlue2 w100 pInline">
|
||||
<a class="fontBlue2 w70 pInline" target="_blank" href="<%= @sonar_address %>/component_issues?id=<%= @resource_id %>#resolved=false">
|
||||
<%= @ha["violations"].nil? ? 0 : @ha["violations"] %>
|
||||
</a>
|
||||
|
|
|
@ -1,14 +1,6 @@
|
|||
<% if @name_flag %>
|
||||
<%= render :partial => "result_list" %>
|
||||
<% else %>
|
||||
<% if params[:current_build_status].nil? || params[:current_build_status] == "success" %>
|
||||
<%= render :partial => "show", :locals => {:branch => @branch} %>
|
||||
<% else %>
|
||||
<% if params[:build_console_result] %>
|
||||
运行结果超时
|
||||
<% else %>
|
||||
<%= render :partial => "console_output" %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
<%= render :partial => "show", :locals => {:branch => @branch} %>
|
||||
<% end %>
|
||||
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
<p>真实姓名:<%= User.find(ma.course_message_id).realname %></p>
|
||||
<p>申请课程:<%= Course.find(ma.course_id).name%></p>
|
||||
<div class="fl">课程描述:</div>
|
||||
<div class="ml60"><%= Course.find(ma.course_id).description.html_safe %></div>
|
||||
<div class="ml60"><%= Course.find(ma.course_id).description %></div>
|
||||
<p>申请职位:<%= ma.content == '9' ? "教师" : "教辅"%></p>
|
||||
</div>
|
||||
<li class="<%=(ma.status == 0 || ma.status.nil?) ? 'homepageHomeworkContentWarn2' : 'homepageHomeworkContentWarn' %> fl">
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<% send_ids = send_ids.class == String ? send_ids : send_ids.join(",") %>
|
||||
<% end %>
|
||||
<select class="resourcesSendType" onclick="chooseSendType2('<%= send_id %>', '<%= send_ids%>','<%= User.current.id %>','file', '<%= @type %>');">
|
||||
<option value="1">课程</option>
|
||||
<option value="1">班级</option>
|
||||
<option value="2">项目</option>
|
||||
<option value="3">组织</option>
|
||||
</select>
|
||||
|
@ -20,7 +20,7 @@
|
|||
<%= form_tag search_user_course_user_path(user),:method => 'get', :remote=>true, :id=> 'search_user_course_form', :class=> 'resourcesSearchBox' do %>
|
||||
<%= hidden_field_tag(:send_id, send_id) %>
|
||||
<%= hidden_field_tag(:send_ids, send_ids) %>
|
||||
<input type="text" id="search_course_input" value="<%= @search %>" name="search" placeholder="输入课程ID或者名称搜索" class="searchResourcePopup" />
|
||||
<input type="text" id="search_course_input" value="<%= @search %>" name="search" placeholder="输入班级ID或者名称搜索" class="searchResourcePopup" />
|
||||
<script>
|
||||
observeSearchfieldOnInput('search_course_input','<%= search_user_course_user_path(user)%>','<%= send_id %>','<%= send_ids%>','file')
|
||||
</script>
|
||||
|
|
|
@ -5,8 +5,8 @@
|
|||
</div>
|
||||
<!--<div class="resourcePopupClose"> <a href="javascript:void(0);" class="resourceClose" onclick="closeModal();"></a></div>-->
|
||||
<div class="fl">
|
||||
<!--<input type="text" name="search" placeholder="输入课程ID或者名称搜索" class="subjectSearch fr" />-->
|
||||
<input type="text" id="search_course_input" value="<%= @search %>" name="search" placeholder="输入课程ID或者名称搜索" class="mt10 mb10 course-search" />
|
||||
<!--<input type="text" name="search" placeholder="输入班级ID或者名称搜索" class="subjectSearch fr" />-->
|
||||
<input type="text" id="search_course_input" value="<%= @search %>" name="search" placeholder="输入班级ID或者名称搜索" class="mt10 mb10 course-search" />
|
||||
</div>
|
||||
<div id="send_homework_to_course_form">
|
||||
<%= render :partial => "users/send_homework_to_course_form", :locals => {:user => user, :courses => courses, :send_id => send_id} %>
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
:remote=>true,:id=>'search_user_course_form',:class=>'resourcesSearchBox' do %>
|
||||
<%= hidden_field_tag(:send_id, send_id) %>
|
||||
<%= hidden_field_tag(:send_ids, send_ids) %>
|
||||
<input type="text" id="search_course_input" value="<%= @search %>" name="search" placeholder="输入课程ID或者名称搜索" class="searchResourcePopup" />
|
||||
<input type="text" id="search_course_input" value="<%= @search %>" name="search" placeholder="输入班级ID或者名称搜索" class="searchResourcePopup" />
|
||||
<script>
|
||||
observeSearchfieldOnInput('search_course_input','<%= search_user_course_user_path(user)%>','<%= send_id %>','<%= send_ids%>','message')
|
||||
</script>
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
:remote=>true,:id=>'search_user_course_form',:class=>'resourcesSearchBox' do %>
|
||||
<%= hidden_field_tag(:send_id, send_id) %>
|
||||
<%= hidden_field_tag(:send_ids, send_ids) %>
|
||||
<input type="text" id="search_course_input" value="<%= @search %>" name="search" placeholder="输入课程ID或者名称搜索" class="searchResourcePopup" />
|
||||
<input type="text" id="search_course_input" value="<%= @search %>" name="search" placeholder="输入班级ID或者名称搜索" class="searchResourcePopup" />
|
||||
<script>
|
||||
observeSearchfieldOnInput('search_course_input','<%= search_user_course_user_path(user)%>','<%= send_id %>','<%= send_ids%>','news')
|
||||
</script>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<% if ma.class == CourseMessage %>
|
||||
<% if ma.course_message_type == "News" %>
|
||||
<% if ma.course_message_type == "News" && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl"><a href="javascript:void(0);"><%=link_to image_tag(url_to_avatar(ma.course_message.author), :width => "30", :height => "30"),user_path(ma.course_message.author), :target => '_blank' %></a></li>
|
||||
<li class="homepageNewsPubType fl"><%=link_to ma.course_message.author, user_path(ma.course_message.author), :class => "newsBlue homepageNewsPublisher", :target => '_blank' %><span class="<%= ma.viewed == 0 ? "homepageNewsTypeNotRead fl":"homepageNewsType fl" %>">发布了通知:</span></li>
|
||||
|
@ -19,7 +19,7 @@
|
|||
<li class="homepageNewsTime fl"><%= time_tag(ma.created_at).html_safe %> </li>
|
||||
</ul>
|
||||
<% end %>
|
||||
<% if ma.course_message_type == "Comment" %>
|
||||
<% if ma.course_message_type == "Comment" && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl"><a href="javascript:void(0);"><%=link_to image_tag(url_to_avatar(ma.course_message.author), :width => "30", :height => "30"), user_path(ma.course_message.author), :target => '_blank' %></a></li>
|
||||
<li class="homepageNewsPubType fl"><%=link_to ma.course_message.author, user_path(ma.course_message.author), :class => "newsBlue homepageNewsPublisher", :target => '_blank' %><span class="<%= ma.viewed == 0 ? "homepageNewsTypeNotRead fl":"homepageNewsType fl" %>">评论了通知:</span></li>
|
||||
|
@ -39,7 +39,7 @@
|
|||
<li class="homepageNewsTime fl"><%= time_tag(ma.created_at).html_safe %> </li>
|
||||
</ul>
|
||||
<% end %>
|
||||
<% if ma.course_message_type == "HomeworkCommon" && ma.status.nil?%>
|
||||
<% if ma.course_message_type == "HomeworkCommon" && ma.status.nil? && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl"><a href="javascript:void(0);"><%=link_to image_tag(url_to_avatar(ma.course_message.user), :width => "30", :height => "30"), user_path(ma.course_message.user), :target => '_blank' %></a></li>
|
||||
<li class="homepageNewsPubType fl"><%=link_to ma.course_message.user.lastname + ma.course_message.user.firstname + "老师", user_path(ma.course_message.user), :class => "newsBlue homepageNewsPublisher", :target => '_blank' %>
|
||||
|
@ -98,7 +98,7 @@
|
|||
<li class="homepageNewsTime fl"><%= time_tag(ma.created_at).html_safe %> </li>
|
||||
</ul>
|
||||
<% end %>
|
||||
<% if ma.course_message_type == "HomeworkCommon" && ma.status == 1 %>
|
||||
<% if ma.course_message_type == "HomeworkCommon" && ma.status == 1 && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl"><a href="javascript:void(0);"><%=link_to image_tag(url_to_avatar(ma.course_message.user), :width => "30", :height => "30"), user_path(ma.course_message.user), :target => '_blank' %></a></li>
|
||||
<li class="homepageNewsPubType fl"><%=link_to ma.course_message.user.lastname + ma.course_message.user.firstname + '老师',
|
||||
|
@ -133,7 +133,7 @@
|
|||
</ul>
|
||||
<% end %>
|
||||
<!--作品开启匿评 待整合:时间紧-->
|
||||
<% if ma.course_message_type == "HomeworkCommon" && ma.status == 2 %>
|
||||
<% if ma.course_message_type == "HomeworkCommon" && ma.status == 2 && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl">
|
||||
<a href="javascript:void(0);"><%= link_to image_tag(url_to_avatar(ma.course_message.user), :width => "30", :height => "30"), user_path(ma.course_message.user), :target => '_blank' %></a>
|
||||
|
@ -168,7 +168,7 @@
|
|||
</ul>
|
||||
<% end %>
|
||||
<!--作品关闭匿评-->
|
||||
<% if ma.course_message_type == "HomeworkCommon" && ma.status == 3 %>
|
||||
<% if ma.course_message_type == "HomeworkCommon" && ma.status == 3 && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl"><a href="javascript:void(0);"><%=link_to image_tag(url_to_avatar(ma.course_message.user), :width => "30", :height => "30"), user_path(ma.course_message.user), :target => '_blank' %></a></li>
|
||||
<li class="homepageNewsPubType fl">
|
||||
|
@ -199,7 +199,7 @@
|
|||
</ul>
|
||||
<% end %>
|
||||
|
||||
<% if ma.course_message_type == "HomeworkCommon" && ma.status == 4 %>
|
||||
<% if ma.course_message_type == "HomeworkCommon" && ma.status == 4 && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl">
|
||||
<a href="javascript:void(0);"><%= link_to image_tag(url_to_avatar(ma.course_message.user), :width => "30", :height => "30"), user_path(ma.course_message.user), :target => '_blank' %></a>
|
||||
|
@ -235,18 +235,18 @@
|
|||
</ul>
|
||||
<% end %>
|
||||
<!--资源申请-->
|
||||
<% if ma.course_message_type == "ApplyResource" && ma.status == 0 %>
|
||||
<% if ma.course_message_type == "ApplyResource" && ma.status == 0 && ma.course_message %>
|
||||
<ul class="homepageNewsList fl" id="apply_resource_message_<%=ma.id %>">
|
||||
<%= render :partial => 'apply_resource_course_message', :locals => {:ma => ma} %>
|
||||
</ul>
|
||||
<% end %>
|
||||
<!--资源申请回复-->
|
||||
<% if ma.course_message_type == "ApplyResource" && ma.status == 1 %>
|
||||
<% if ma.course_message_type == "ApplyResource" && ma.status == 1 && ma.course_message %>
|
||||
<ul class="homepageNewsList fl" id="apply_resource_message_<%=ma.id %>">
|
||||
<%= render :partial => 'apply_resource_course_message_reply', :locals => {:ma => ma} %>
|
||||
</ul>
|
||||
<% end %>
|
||||
<% if ma.course_message_type == "HomeworkCommon" && ma.status == 6 %>
|
||||
<% if ma.course_message_type == "HomeworkCommon" && ma.status == 6 && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl"><a href="javascript:void(0);"><div class="navHomepageLogo fl"><%= image_tag(url_to_avatar(User.find(ma.apply_user_id)), width: "30px", height: "30px", class: "mt3") %></div></a></li>
|
||||
<li class="homepageNewsPubType fl">
|
||||
|
@ -271,7 +271,7 @@
|
|||
<li class="homepageNewsTime fl"><%= time_tag(ma.created_at).html_safe %> </li>
|
||||
</ul>
|
||||
<% end %>
|
||||
<% if ma.course_message_type == "Poll" %>
|
||||
<% if ma.course_message_type == "Poll" && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl"><a href="javascript:void(0);"><%=link_to image_tag(url_to_avatar(ma.course_message.user), :width => "30", :height => "30"), user_path(ma.course_message.user), :target => '_blank' %></a></li>
|
||||
<li class="homepageNewsPubType fl"><%=link_to ma.course_message.user, user_path(ma.course_message.user), :class => "newsBlue homepageNewsPublisher", :target => '_blank' %><span class="<%= ma.viewed == 0 ? "homepageNewsTypeNotRead fl":"homepageNewsType fl" %>">发布了问卷:</span></li>
|
||||
|
@ -287,7 +287,7 @@
|
|||
<li class="homepageNewsTime fl"><%= time_tag(ma.created_at).html_safe %> </li>
|
||||
</ul>
|
||||
<% end %>
|
||||
<% if ma.course_message_type == "Message" %>
|
||||
<% if ma.course_message_type == "Message" && !ma.nil? && !ma.course_message.nil? %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl"><a href="javascript:void(0);"><%=link_to image_tag(url_to_avatar(ma.course_message.author), :width => "30", :height => "30"), user_path(ma.course_message.author), :target => '_blank' %></a></li>
|
||||
<li class="homepageNewsPubType fl">
|
||||
|
@ -376,7 +376,7 @@
|
|||
<li class="homepageNewsTime fl"><%= time_tag(ma.created_at).html_safe %> </li>
|
||||
</ul>
|
||||
<% end %>
|
||||
<% if ma.course_message_type == "JournalsForMessage" %>
|
||||
<% if ma.course_message_type == "JournalsForMessage" && ma.course_message %>
|
||||
<% if ma.course_message.jour_type == 'Course' %>
|
||||
<% if params[:type] != 'homework' %>
|
||||
<ul class="homepageNewsList fl">
|
||||
|
@ -459,7 +459,7 @@
|
|||
<% end %>
|
||||
<% end %>
|
||||
<!-- 作业迟交,不能参与匿评提醒消息 -->
|
||||
<% if ma.course_message_type == "StudentWork" && !ma.course_message.homework_common.nil? && !User.current.allowed_to?(:as_teacher, ma.course_message.homework_common.course) %>
|
||||
<% if ma.course_message_type == "StudentWork" && !ma.course_message.homework_common.nil? && !User.current.allowed_to?(:as_teacher, ma.course_message.homework_common.course) && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl"><a href="javascript:void(0);"><%= link_to image_tag(url_to_avatar(ma.course_message.homework_common.user), :width => "30", :height => "30"), user_path(ma.course_message.homework_common.user), :target => '_blank' %></a></li>
|
||||
<li class="homepageNewsPubType fl">
|
||||
|
@ -493,7 +493,7 @@
|
|||
<% end %>
|
||||
|
||||
|
||||
<% if ma.course_message_type == "StudentWork" && ma.status == 1 %>
|
||||
<% if ma.course_message_type == "StudentWork" && ma.status == 1 && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl">
|
||||
<a href="javascript:void(0);"><%= link_to image_tag(url_to_avatar(ma.course_message.user), :width => "30", :height => "30"), user_path(ma.course_message.user), :target => '_blank' %></a>
|
||||
|
@ -514,7 +514,7 @@
|
|||
</ul>
|
||||
<% end %>
|
||||
<!-- 学生追加作品附件 -->
|
||||
<% if ma.course_message_type == "StudentWork" && ma.status == 2 %>
|
||||
<% if ma.course_message_type == "StudentWork" && ma.status == 2 && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl">
|
||||
<a href="javascript:void(0);"><%= link_to image_tag(url_to_avatar(ma.course_message.user), :width => "30", :height => "30"), user_path(ma.course_message.user), :target => '_blank' %></a>
|
||||
|
@ -534,7 +534,7 @@
|
|||
</ul>
|
||||
<% end %>
|
||||
<!-- 创建课程消息 -->
|
||||
<% if ma.course_message_type == "Course" %>
|
||||
<% if ma.course_message_type == "Course" && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl">
|
||||
<a href="javascript:void(0);"><div class="navHomepageLogo fl"><%= image_tag("/images/trustie_logo1.png", width: "30px", height: "30px", class: "mt3") %></div></a>
|
||||
|
@ -569,7 +569,9 @@
|
|||
<li class="homepageNewsTime fl"><%= time_tag(ma.created_at).html_safe %> </li>
|
||||
</ul>
|
||||
<% end %>
|
||||
<% if ma.course_message_type == "JoinCourseRequest" %>
|
||||
|
||||
<!--# ma.course_message_id 是用户id-->
|
||||
<% if ma.course_message_type == "JoinCourseRequest" && !ma.nil? %>
|
||||
<ul class="homepageNewsList fl" id="course_message_join_<%=ma.id %>">
|
||||
<%= render :partial => 'join_course_course_message', :locals => {:ma => ma} %>
|
||||
</ul>
|
||||
|
@ -710,7 +712,7 @@
|
|||
<% end %>
|
||||
|
||||
<!--老师发布测验 发给学生看-->
|
||||
<% if ma.course_message_type == "Exercise" && ma.status == 2 %>
|
||||
<% if ma.course_message_type == "Exercise" && ma.status == 2 && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl"><a href="javascript:void(0);"><%=link_to image_tag(url_to_avatar(ma.course_message.user), :width => "30", :height => "30"), user_path(ma.course_message.user), :target => '_blank' %></a></li>
|
||||
<li class="homepageNewsPubType fl">
|
||||
|
@ -747,7 +749,7 @@
|
|||
<% end %>
|
||||
|
||||
|
||||
<% if ma.course_message_type == "Exercise" && ma.status == 3 %>
|
||||
<% if ma.course_message_type == "Exercise" && ma.status == 3 && ma.course_message %>
|
||||
<ul class="homepageNewsList fl">
|
||||
<li class="homepageNewsPortrait fl"><a href="javascript:void(0);"><%=link_to image_tag(url_to_avatar(ma.course_message.user), :width => "30", :height => "30"), user_path(ma.course_message.user), :target => '_blank' %></a></li>
|
||||
<li class="homepageNewsPubType fl">
|
||||
|
|
|
@ -15,10 +15,13 @@ namespace :update_homework do
|
|||
unless student_works.nil?
|
||||
student_works.each do |s|
|
||||
project = Project.find s.project_id
|
||||
unless project.nil? && project.gpid.nil?
|
||||
unless project.nil? && project.gpid.blank?
|
||||
project_time=project.updated_on
|
||||
project_time=ForgeActivity.where("project_id=?",project.id).last.updated_at if ForgeActivity.where("project_id=?",project.id).last
|
||||
puts "the time is =========================> #{time}"
|
||||
puts "the project_time is =========================> #{project_time}"
|
||||
if time.strftime('%Y-%m-%d %H:%M:%S') < project_time.strftime('%Y-%m-%d %H:%M:%S')
|
||||
#if format_time(time) < format_time(project_time)
|
||||
time = project_time
|
||||
end
|
||||
begin
|
||||
|
@ -28,8 +31,12 @@ namespace :update_homework do
|
|||
changesets = g.commits(project.gpid, :ref_name => default_branch)
|
||||
changesets_latest_coimmit = changesets[0]
|
||||
unless changesets[0].blank?
|
||||
if time.strftime('%Y-%m-%d %H:%M:%S') <changesets_latest_coimmit.created_at.strftime('%Y-%m-%d %H:%M:%S')
|
||||
time = changesets_latest_coimmit.created_at
|
||||
puts "the time is =========================> #{time}"
|
||||
puts "the changesets_latest_coimmit is =========================> #{changesets_latest_coimmit.created_at}"
|
||||
puts "the distance time is =========================> #{changesets_latest_coimmit.created_at.to_time > Time.now}"
|
||||
if time.strftime('%Y-%m-%d %H:%M:%S') < changesets_latest_coimmit.created_at.to_time.strftime('%Y-%m-%d %H:%M:%S')
|
||||
#if format_time(time) < format_time(changesets_latest_coimmit.created_at)
|
||||
time = changesets_latest_coimmit.created_at.to_time
|
||||
end
|
||||
end
|
||||
rescue Exception => e
|
||||
|
|
|
@ -1601,7 +1601,7 @@ function expand_course_list(id, target, btnid, count) {
|
|||
target.show();
|
||||
}else{
|
||||
btn.data('init',0);
|
||||
btn.html('共'+count+ '个课程,点击全部展开');
|
||||
btn.html('共'+count+ '个班级,点击全部展开');
|
||||
target.hide();
|
||||
target.eq(0).show();
|
||||
target.eq(1).show();
|
||||
|
|
|
@ -57,7 +57,7 @@ a:hover.news_foot{ color:#787b7e; border:1px solid #d4d4d4;}
|
|||
.hworkList60 {width:60px; text-align:center;}
|
||||
.hworkList60 {width:60px; text-align:center;}
|
||||
.hworkList70 {width:70px; text-align:center;}
|
||||
.hworkList80 {width:90px; text-align:center;}
|
||||
.hworkList80 {width:80px; text-align:center;}
|
||||
.hworkList90 {width:90px; text-align:center;}
|
||||
.hworkList100 {width:100px; text-align:center;}
|
||||
.hworkList110 {width:110px; text-align:center;}
|
||||
|
|
|
@ -292,4 +292,18 @@ div.modal {
|
|||
.resourceUploadPopup {width:400px; height:auto; border:3px solid #269ac9 !important; padding-left:16px; padding-bottom:16px; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-200px; z-index:1000;}
|
||||
a.Blue-btn{ display:block; margin-right:15px;width:65px; 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.Blue-btn{ background:#3598db; color:#fff;}
|
||||
/***** end Ajax indicator ******/
|
||||
/***** end Ajax indicator ******/
|
||||
|
||||
/*消息弹框*/
|
||||
.shadowbox_news{ width:305px; background-color:#fff; box-shadow: 0px 2px 8px rgba(146, 153, 169, 0.5); position: absolute; left: -131px; top: 45px; z-index: 9999;}
|
||||
.shadowbox_news_title{ height:40px; line-height:40px;padding-left:10px; font-size:12px; color:#333;border-bottom:1px solid #eee;}
|
||||
.shadowbox_news_p{ height:40px; line-height:40px; font-size:12px; color:#333;}
|
||||
.shadowbox_news font{ border: 1px solid #dddddd; display: block; border-width: 8px; position: absolute; top: -15px;left: 140px; border-style:solid; border-color: transparent transparent #fff transparent;font-size: 0;line-height: 0; box-shadow:2px rgba(146, 153, 169, 0.5); }
|
||||
.shadowbox_news_list{ max-height:400px; overflow:hidden;}
|
||||
.shadowbox_news_list a{ color:#999;}
|
||||
.shadowbox_news_list li{ height:40px; border-bottom:1px dashed #ebebeb; line-height:40px;overflow:hidden; white-space: nowrap; text-overflow:ellipsis; padding:0 10px;}
|
||||
.shadowbox_news_list li:hover{ background-color:#eee;}
|
||||
span.shadowbox_news_user{ color:#3b94d6;}
|
||||
a.shadowbox_news_all{ display:block; width:305px; height:40px; line-height:40px; color:#3b94d6; text-align:center;border-top:1px solid #eee;}
|
||||
.undis {display:none;}
|
||||
.text_c {text-align:center;}
|
||||
|
|
|
@ -1273,11 +1273,11 @@ a.pages-big{ width:50px;}
|
|||
.analysis-result-list {padding:5px;}
|
||||
.analysis-result-list:nth-of-type(odd){background:#fff;}/*奇数行*/
|
||||
.analysis-result-list:nth-of-type(even){background:#f5f5f5;}/*偶数行*/
|
||||
.analysis-result-name {width:200px; cursor:pointer;}
|
||||
.analysis-result-version {width:90px; text-align:right; cursor:pointer;}
|
||||
.analysis-result-loc {width:60px; text-align:right; cursor:pointer;}
|
||||
.analysis-result-debt {width:160px; text-align:right; cursor:pointer;}
|
||||
.analysis-result-time {width:150px; text-align:right; cursor:pointer;}
|
||||
.analysis-result-name {width:200px;}
|
||||
.analysis-result-version {width:90px; text-align:right;}
|
||||
.analysis-result-loc {width:60px; text-align:right;}
|
||||
.analysis-result-debt {width:160px; text-align:right;}
|
||||
.analysis-result-time {width:150px; text-align:right;}
|
||||
.analysis-name-icon {background:url(../images/code-analysis-icon.png) -2px -148px no-repeat; width:16px; height:16px; display:inline-block; vertical-align:middle;}
|
||||
|
||||
/*未登录回复提示*/
|
||||
|
|
Loading…
Reference in New Issue