Merge branch 'develop' of https://git.trustie.net/jacknudt/trustieforge into develop
This commit is contained in:
commit
d2bff21de5
|
@ -103,6 +103,9 @@ class AttachmentsController < ApplicationController
|
||||||
direct_download_history
|
direct_download_history
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
# 记录用户行为
|
||||||
|
record_user_actions(params[:id])
|
||||||
|
# 直接下载历史版本
|
||||||
direct_download_history
|
direct_download_history
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -113,6 +116,14 @@ class AttachmentsController < ApplicationController
|
||||||
redirect_to "http://" + (Setting.host_name.to_s) +"/file_not_found.html"
|
redirect_to "http://" + (Setting.host_name.to_s) +"/file_not_found.html"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def record_user_actions id
|
||||||
|
if params[:action] == "download_history"
|
||||||
|
UserActions.create(:action_id => id, :action_type => "AttachmentHistory", :user_id => User.current.id) unless id.nil?
|
||||||
|
elsif params[:action] == "download"
|
||||||
|
UserActions.create(:action_id => id, :action_type => "Attachment", :user_id => User.current.id) unless id.nil?
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def download
|
def download
|
||||||
# modify by nwb
|
# modify by nwb
|
||||||
# 下载添加权限设置
|
# 下载添加权限设置
|
||||||
|
@ -135,6 +146,8 @@ class AttachmentsController < ApplicationController
|
||||||
direct_download
|
direct_download
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
# 记录用户行为
|
||||||
|
record_user_actions(params[:id])
|
||||||
direct_download
|
direct_download
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -207,8 +207,7 @@ class FilesController < ApplicationController
|
||||||
sort = "created_on DESC"
|
sort = "created_on DESC"
|
||||||
end
|
end
|
||||||
if keywords != "%%"
|
if keywords != "%%"
|
||||||
resultSet = Attachment.where("attachments.container_type = 'Course' And attachments.container_id = '#{course.id}' AND filename LIKE :like ", like: "%#{keywords}%").
|
resultSet = Attachment.where("attachments.container_type = 'Course' And attachments.container_id = '#{course.id}' AND filename LIKE :like ", like: "%#{keywords}%").reorder(sort)
|
||||||
reorder(sort)
|
|
||||||
else
|
else
|
||||||
resultSet = Attachment.where("attachments.container_type = 'Course' And attachments.container_id = '#{course.id}' "). reorder(sort)
|
resultSet = Attachment.where("attachments.container_type = 'Course' And attachments.container_id = '#{course.id}' "). reorder(sort)
|
||||||
end
|
end
|
||||||
|
|
|
@ -2533,6 +2533,8 @@ class UsersController < ApplicationController
|
||||||
render_403
|
render_403
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
@resource_id = params[:project_id].nil? ? (params[:course_id].nil? ? params[:subfield_file_id] : params[:course_id]) : params[:project_id]
|
||||||
|
@resource_type = params[:project_id].nil? ? (params[:course_id].nil? ? "SubfieldFile" : "Course") : "Project"
|
||||||
@user = User.find(params[:id])
|
@user = User.find(params[:id])
|
||||||
@order, @b_sort = params[:order] || "created_on", params[:sort] || "asc"
|
@order, @b_sort = params[:order] || "created_on", params[:sort] || "asc"
|
||||||
@score = @b_sort == "desc" ? "asc" : "desc"
|
@score = @b_sort == "desc" ? "asc" : "desc"
|
||||||
|
@ -2561,6 +2563,8 @@ class UsersController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def import_resources_search
|
def import_resources_search
|
||||||
|
@resource_id = params[:mul_id]
|
||||||
|
@resource_type = params[:mul_type]
|
||||||
@order, @b_sort = params[:order] || "created_on", params[:sort] || "asc"
|
@order, @b_sort = params[:order] || "created_on", params[:sort] || "asc"
|
||||||
@score = @b_sort == "desc" ? "asc" : "desc"
|
@score = @b_sort == "desc" ? "asc" : "desc"
|
||||||
@user = User.current
|
@user = User.current
|
||||||
|
@ -2571,6 +2575,7 @@ class UsersController < ApplicationController
|
||||||
render_403
|
render_403
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
@resource_id = params[:mul_id]
|
||||||
if(params[:type].blank? || params[:type] == "1") # 我的资源
|
if(params[:type].blank? || params[:type] == "1") # 我的资源
|
||||||
# 修正:我的资源库的话,那么应该是我上传的所有资源加上,我加入的课程、项目、组织的所有资源
|
# 修正:我的资源库的话,那么应该是我上传的所有资源加上,我加入的课程、项目、组织的所有资源
|
||||||
user_course_ids = User.current.courses.map { |c| c.id}
|
user_course_ids = User.current.courses.map { |c| c.id}
|
||||||
|
|
|
@ -370,7 +370,7 @@ module ApplicationHelper
|
||||||
def link_to_short_attachment(attachment, options={})
|
def link_to_short_attachment(attachment, options={})
|
||||||
length = options[:length] ? options[:length]:23
|
length = options[:length] ? options[:length]:23
|
||||||
text = h(truncate(options.delete(:text) || attachment.filename, length: length, omission: '...'))
|
text = h(truncate(options.delete(:text) || attachment.filename, length: length, omission: '...'))
|
||||||
route_method = options.delete(:download) ? :download_named_attachment_path : :named_attachment_path
|
route_method = options.delete(:download) ? :download_named_attachment_url_without_domain : :named_attachment_url_without_domain
|
||||||
html_options = options.slice!(:only_path)
|
html_options = options.slice!(:only_path)
|
||||||
url = send(route_method, attachment, attachment.filename, options)
|
url = send(route_method, attachment, attachment.filename, options)
|
||||||
link_to text, url, html_options
|
link_to text, url, html_options
|
||||||
|
@ -841,7 +841,7 @@ module ApplicationHelper
|
||||||
def project_member_check_box_tags_ex name, principals
|
def project_member_check_box_tags_ex name, principals
|
||||||
s = ''
|
s = ''
|
||||||
principals.each do |principal|
|
principals.each do |principal|
|
||||||
s << "<li>#{ check_box_tag name, principal.id, false, :id => nil } #{h link_to principal.userInfo, user_path( principal.id)}</li>\n"
|
s << "<li>#{ check_box_tag name, principal.id, false, :id => nil } #{h link_to principal.userInfo, user_url_in_org( principal.id)}</li>\n"
|
||||||
end
|
end
|
||||||
s.html_safe
|
s.html_safe
|
||||||
end
|
end
|
||||||
|
@ -2582,9 +2582,9 @@ module ApplicationHelper
|
||||||
elsif homework.student_works.count >= 2 && homework.homework_detail_manual#作业份数大于2
|
elsif homework.student_works.count >= 2 && homework.homework_detail_manual#作业份数大于2
|
||||||
case homework.homework_detail_manual.comment_status
|
case homework.homework_detail_manual.comment_status
|
||||||
when 1
|
when 1
|
||||||
link = link_to '启动匿评', alert_anonymous_comment_homework_common_path(homework,:is_in_course=>is_in_course,:user_activity_id=>user_activity_id,:course_activity=>course_activity), id: "#{homework.id}_start_anonymous_comment", remote: true, disable_with: '加载中...',:class => 'postOptionLink'
|
link = link_to '启动匿评', Setting.protocol + "://" + Setting.host_name + "/homework_common/" + homework.id.to_s + "/alert_anonymous_comment?is_in_course=" + is_in_course.to_s + "&user_activity_id=" + user_activity_id.to_s + "&course_activity=" + course_activity.to_s, id: "#{homework.id}_start_anonymous_comment", remote: true, disable_with: '加载中...',:class => 'postOptionLink'
|
||||||
when 2
|
when 2
|
||||||
link = link_to '关闭匿评', alert_anonymous_comment_homework_common_path(homework,:is_in_course=>is_in_course,:user_activity_id=>user_activity_id,:course_activity=>course_activity), id: "#{homework.id}_stop_anonymous_comment", remote: true,:class => 'postOptionLink'
|
link = link_to '关闭匿评', Setting.protocol + "://" + Setting.host_name + "/homework_common/" + homework.id.to_s + "/alert_anonymous_comment?is_in_course=" + is_in_course.to_s + "&user_activity_id=" + user_activity_id.to_s + "&course_activity=" + course_activity.to_s, id: "#{homework.id}_stop_anonymous_comment", remote: true,:class => 'postOptionLink'
|
||||||
when 3
|
when 3
|
||||||
# link = link_to "匿评结束","javascript:void(0)", :class => "postOptionLink", :title => "匿评结束"
|
# link = link_to "匿评结束","javascript:void(0)", :class => "postOptionLink", :title => "匿评结束"
|
||||||
end
|
end
|
||||||
|
@ -2631,7 +2631,7 @@ module ApplicationHelper
|
||||||
def user_for_homework_common homework,is_teacher
|
def user_for_homework_common homework,is_teacher
|
||||||
if User.current.member_of_course?(homework.course)
|
if User.current.member_of_course?(homework.course)
|
||||||
if is_teacher #老师显示作品数量
|
if is_teacher #老师显示作品数量
|
||||||
link_to "作品(#{homework.student_works.count})",student_work_index_path(:homework => homework.id),:class => "c_blue"
|
link_to "作品(#{homework.student_works.count})", student_work_index_url_in_org(homework.id), :class => "c_blue"
|
||||||
else #学生显示提交作品、修改作品等按钮
|
else #学生显示提交作品、修改作品等按钮
|
||||||
work = cur_user_works_for_homework homework
|
work = cur_user_works_for_homework homework
|
||||||
project = cur_user_projects_for_homework homework
|
project = cur_user_projects_for_homework homework
|
||||||
|
@ -2639,30 +2639,30 @@ module ApplicationHelper
|
||||||
if homework.homework_type ==3 && project.nil? && homework.homework_detail_group.base_on_project == 1
|
if homework.homework_type ==3 && project.nil? && homework.homework_detail_group.base_on_project == 1
|
||||||
link_to "提交作品(#{homework.student_works.count})","javascript:void(0)", :class => 'c_grey',:style=>"cursor:not-allowed",:title => '请先关联项目再提交作品'
|
link_to "提交作品(#{homework.student_works.count})","javascript:void(0)", :class => 'c_grey',:style=>"cursor:not-allowed",:title => '请先关联项目再提交作品'
|
||||||
else
|
else
|
||||||
link_to "提交作品(#{homework.student_works.count})", new_student_work_path(:homework => homework.id),:class => 'c_blue'
|
link_to "提交作品(#{homework.student_works.count})", new_student_work_url_without_domain(homework.id),:class => 'c_blue'
|
||||||
end
|
end
|
||||||
elsif work.nil? && Time.parse(homework.end_time.to_s).strftime("%Y-%m-%d") < Time.now.strftime("%Y-%m-%d")
|
elsif work.nil? && Time.parse(homework.end_time.to_s).strftime("%Y-%m-%d") < Time.now.strftime("%Y-%m-%d")
|
||||||
if homework.homework_type ==3 && project.nil? && homework.homework_detail_group.base_on_project == 1
|
if homework.homework_type ==3 && project.nil? && homework.homework_detail_group.base_on_project == 1
|
||||||
link_to "补交作品(#{homework.student_works.count})","javascript:void(0)", :class => 'c_grey',:style=>"cursor:not-allowed",:title => '请先关联项目再补交作品'
|
link_to "补交作品(#{homework.student_works.count})","javascript:void(0)", :class => 'c_grey',:style=>"cursor:not-allowed",:title => '请先关联项目再补交作品'
|
||||||
else
|
else
|
||||||
link_to "补交作品(#{homework.student_works.count})", new_student_work_path(:homework => homework.id),:class => 'c_red'
|
link_to "补交作品(#{homework.student_works.count})", new_student_work_url_without_domain(homework.id),:class => 'c_red'
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
if homework.homework_detail_manual && homework.homework_detail_manual.comment_status == 2 #匿评作业,且作业状态不是在开启匿评之前
|
if homework.homework_detail_manual && homework.homework_detail_manual.comment_status == 2 #匿评作业,且作业状态不是在开启匿评之前
|
||||||
link_to "作品匿评", student_work_index_path(:homework => homework.id), :class => 'c_blue', :title => "开启匿评后不可修改作品"
|
link_to "作品匿评", student_work_index_url_in_org(homework.id), :class => 'c_blue', :title => "开启匿评后不可修改作品"
|
||||||
elsif homework.homework_detail_manual && homework.homework_detail_manual.comment_status == 3
|
elsif homework.homework_detail_manual && homework.homework_detail_manual.comment_status == 3
|
||||||
link_to "查看作品(#{homework.student_works.count})", student_work_index_path(:homework => homework.id), :class => 'c_blue', :title => "匿评已结束"
|
link_to "查看作品(#{homework.student_works.count})",student_work_index_url_in_org(homework.id), :class => 'c_blue', :title => "匿评已结束"
|
||||||
elsif homework.homework_type == 2 && Time.parse(homework.end_time.to_s).strftime("%Y-%m-%d") >= Time.now.strftime("%Y-%m-%d")#编程作业不能修改作品
|
elsif homework.homework_type == 2 && Time.parse(homework.end_time.to_s).strftime("%Y-%m-%d") >= Time.now.strftime("%Y-%m-%d")#编程作业不能修改作品
|
||||||
link_to "修改作品(#{homework.student_works.count})", new_student_work_path(:homework => homework.id),:class => 'c_blue'
|
link_to "修改作品(#{homework.student_works.count})", new_student_work_url_without_domain(homework.id),:class => 'c_blue'
|
||||||
elsif Time.parse(homework.end_time.to_s).strftime("%Y-%m-%d") >= Time.now.strftime("%Y-%m-%d") && work.user_id == User.current.id
|
elsif Time.parse(homework.end_time.to_s).strftime("%Y-%m-%d") >= Time.now.strftime("%Y-%m-%d") && work.user_id == User.current.id
|
||||||
link_to "修改作品(#{homework.student_works.count})", edit_student_work_path(work.id),:class => 'c_blue'
|
link_to "修改作品(#{homework.student_works.count})", edit_student_work_url_without_domain(work.id),:class => 'c_blue'
|
||||||
else
|
else
|
||||||
link_to "查看作品(#{homework.student_works.count})", student_work_index_path(:homework => homework.id), :class => 'c_blue', :title => "作业截止后不可修改作品"
|
link_to "查看作品(#{homework.student_works.count})", student_work_index_url_in_org(homework.id), :class => 'c_blue', :title => "作业截止后不可修改作品"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
link_to "作品(#{homework.student_works.count})",student_work_index_path(:homework => homework.id),:class => "c_blue"
|
link_to "作品(#{homework.student_works.count})",student_work_index_url_in_org(homework.id),:class => "c_blue"
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
@ -3021,6 +3021,24 @@ end
|
||||||
def register_url_without_domain
|
def register_url_without_domain
|
||||||
Setting.protocol + "://" + Setting.host_name + "/login?login=false"
|
Setting.protocol + "://" + Setting.host_name + "/login?login=false"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def new_student_work_url_without_domain(homework_id)
|
||||||
|
Setting.protocol + "://" + Setting.host_name + "/student_work/new?homework=" + homework_id.to_s
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit_student_work_url_without_domain(homework_id)
|
||||||
|
Setting.protocol + "://" + Setting.host_name + "/student_work/" + homework_id.to_s + "/edit"
|
||||||
|
end
|
||||||
|
|
||||||
|
def download_named_attachment_url_without_domain(id, filename, option={})
|
||||||
|
attachment_id = (Attachment === id ? id.id : id)
|
||||||
|
Setting.protocol + "://" + Setting.host_name + "/attachments/download/" + attachment_id.to_s + "/" + filename
|
||||||
|
end
|
||||||
|
|
||||||
|
def named_attachment_url_without_domain(id, filename, option={})
|
||||||
|
attachment_id = (Attachment === id ? id.id : id)
|
||||||
|
Setting.protocol + "://" + Setting.host_name + "/attachments/" + attachment_id.to_s + "/" + filename
|
||||||
|
end
|
||||||
#判断是否为默认的组织栏目
|
#判断是否为默认的组织栏目
|
||||||
def is_default_field? field
|
def is_default_field? field
|
||||||
(field.name == 'activity' || field.name == 'course' || field.name == 'project') && field.field_type == 'default'
|
(field.name == 'activity' || field.name == 'course' || field.name == 'project') && field.field_type == 'default'
|
||||||
|
|
|
@ -865,7 +865,7 @@ module CoursesHelper
|
||||||
# 学生按作业总分排序,取前8个
|
# 学生按作业总分排序,取前8个
|
||||||
def hero_homework_score(course, score_sort_by)
|
def hero_homework_score(course, score_sort_by)
|
||||||
sql_select = "SELECT members.*,(
|
sql_select = "SELECT members.*,(
|
||||||
SELECT SUM(IF(student_works.final_score is null,null,student_works.final_score - student_works.absence_penalty - student_works.late_penalty))
|
SELECT SUM(IF(student_works.final_score is null,null,IF(student_works.final_score = 0, 0, student_works.final_score - student_works.absence_penalty - student_works.late_penalty)))
|
||||||
FROM student_works,homework_commons
|
FROM student_works,homework_commons
|
||||||
WHERE student_works.homework_common_id = homework_commons.id
|
WHERE student_works.homework_common_id = homework_commons.id
|
||||||
AND homework_commons.course_id = #{course.id}
|
AND homework_commons.course_id = #{course.id}
|
||||||
|
|
|
@ -62,7 +62,7 @@ module UsersHelper
|
||||||
when 'Course'
|
when 'Course'
|
||||||
result = current_time_and_term_resource content
|
result = current_time_and_term_resource content
|
||||||
when 'Project'
|
when 'Project'
|
||||||
result = content.name + "(" + content.id.to_s + ")"
|
result = content.name
|
||||||
when 'Issue'
|
when 'Issue'
|
||||||
result = content.subject
|
result = content.subject
|
||||||
when 'Message'
|
when 'Message'
|
||||||
|
|
|
@ -66,8 +66,8 @@ class CourseActivity < ActiveRecord::Base
|
||||||
|
|
||||||
# 发布新课导语
|
# 发布新课导语
|
||||||
# 导语要放置在课程创建信息之后
|
# 导语要放置在课程创建信息之后
|
||||||
# 导语
|
|
||||||
def add_course_lead
|
def add_course_lead
|
||||||
|
# 避免空数据迁移报错问题
|
||||||
if self.course_act_type == "Course" and Message.where("id=12440").any?
|
if self.course_act_type == "Course" and Message.where("id=12440").any?
|
||||||
lead_message = Message.find(12440)
|
lead_message = Message.find(12440)
|
||||||
name = lead_message.subject
|
name = lead_message.subject
|
||||||
|
@ -75,7 +75,7 @@ class CourseActivity < ActiveRecord::Base
|
||||||
# message的status状态为0为正常,为1表示创建课程时发送的message
|
# message的status状态为0为正常,为1表示创建课程时发送的message
|
||||||
# author_id 默认为课程使者创建
|
# author_id 默认为课程使者创建
|
||||||
message = Message.create(:subject => name, :content => content, :board_id => self.course.boards.first.id, :author_id => 1 , :sticky => true, :status => true )
|
message = Message.create(:subject => name, :content => content, :board_id => self.course.boards.first.id, :author_id => 1 , :sticky => true, :status => true )
|
||||||
# 更新的目的是为了排序,因为该条动态的时间可能与课程创建的动态创建时间一直
|
# 更新的目的是为了排序,因为该条动态的时间可能与课程创建的动态创建时间一致
|
||||||
message.course_acts.first.update_attribute(:updated_at, message.course_acts.first.updated_at + 1) if message.course_acts.first
|
message.course_acts.first.update_attribute(:updated_at, message.course_acts.first.updated_at + 1) if message.course_acts.first
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
class UserActions < ActiveRecord::Base
|
||||||
|
attr_accessible :action_id, :action_type, :user_id
|
||||||
|
has_many :users
|
||||||
|
end
|
|
@ -2,6 +2,8 @@
|
||||||
<%= import_ke(enable_at: true, prettify: false, init_activity: true) %>
|
<%= import_ke(enable_at: true, prettify: false, init_activity: true) %>
|
||||||
<% end %>
|
<% end %>
|
||||||
<script>
|
<script>
|
||||||
|
var onUserCard = false;
|
||||||
|
var onImage = false;
|
||||||
$(document).ready(function(){
|
$(document).ready(function(){
|
||||||
$("#relateProject,.relatePInfo").mouseover(function(){
|
$("#relateProject,.relatePInfo").mouseover(function(){
|
||||||
$(".relatePInfo").css("display","block");
|
$(".relatePInfo").css("display","block");
|
||||||
|
@ -10,15 +12,24 @@
|
||||||
$(".relatePInfo").css("display","none");
|
$(".relatePInfo").css("display","none");
|
||||||
})
|
})
|
||||||
$(".homepagePostPortrait").mouseover(function(){
|
$(".homepagePostPortrait").mouseover(function(){
|
||||||
|
onImage = true;
|
||||||
$(this).children(".userCard").css("display","block");
|
$(this).children(".userCard").css("display","block");
|
||||||
})
|
})
|
||||||
$(".homepagePostPortrait").mouseout(function(){
|
$(".homepagePostPortrait").mouseout(function(){
|
||||||
$(this).children(".userCard").css("display","none");
|
var cur = $(this);
|
||||||
|
onImage = false;
|
||||||
|
setTimeout(function(){
|
||||||
|
if (onUserCard == false && onImage == false){
|
||||||
|
$(cur).children(".userCard").css("display", "none");
|
||||||
|
}
|
||||||
|
}, 500);
|
||||||
})
|
})
|
||||||
$(".userCard").mouseover(function(){
|
$(".userCard").mouseover(function(){
|
||||||
|
onUserCard = true;
|
||||||
$(this).css("display","block");
|
$(this).css("display","block");
|
||||||
})
|
})
|
||||||
$(".userCard").mouseout(function(){
|
$(".userCard").mouseout(function(){
|
||||||
|
onUserCard = false;
|
||||||
$(this).css("display","none");
|
$(this).css("display","none");
|
||||||
})
|
})
|
||||||
$(".coursesLineGrey").mouseover(function(){
|
$(".coursesLineGrey").mouseover(function(){
|
||||||
|
|
|
@ -108,23 +108,15 @@
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
<div class="re_con_top">
|
<div class="re_con_top">
|
||||||
<p class="f_l fontBlue f_b f_14">共有 <span id="attachment_count"><%= @all_attachments.count%></span> 个资源</p>
|
<p class="f_l fontBlue f_b f_14">共有 <span id="attachment_count"><%= @all_attachments.count%></span> 个资源</p>
|
||||||
<p class="f_r" style="color: #808080">
|
<p class="f_r" style="color: #808080" id="course_filter_order">
|
||||||
<% if @order == "asc" %>
|
<%= render :partial => 'course_file_filter_order', :locals => {:remote => @is_remote, :sort => @sort, :order => @order} %>
|
||||||
按 <%= link_to "时间",params.merge(:sort=>"created_on:desc"),:class => "f_b c_grey",:remote => @is_remote %><%= render partial: 'files/arrow_show',locals: { sort: @sort,order:@order,current:"created_on"} %> /
|
|
||||||
<%= link_to "下载次数",params.merge(:sort=>"downloads:desc"),:class => "f_b c_grey",:remote => @is_remote %><%= render partial: 'files/arrow_show',locals: { sort: @sort,order:@order,current:"downloads"} %> /
|
|
||||||
<%= link_to "引用次数",params.merge(:sort=>"quotes:desc"),:class => "f_b c_grey",:remote => @is_remote %><%= render partial: 'files/arrow_show',locals: { sort: @sort,order:@order,current:"quotes"} %> 排序
|
|
||||||
<% else %>
|
|
||||||
按 <%= link_to "时间",params.merge(:sort=>"created_on:asc"),:class => "f_b c_grey" ,:remote => @is_remote %><%= render partial: 'files/arrow_show',locals: { sort: @sort,order:@order,current:"created_on"} %> /
|
|
||||||
<%= link_to "下载次数",params.merge(:sort=>"downloads:asc"),:class => "f_b c_grey",:remote => @is_remote %><%= render partial: 'files/arrow_show',locals: { sort: @sort,order:@order,current:"downloads"} %> /
|
|
||||||
<%= link_to "引用次数",params.merge(:sort=>"quotes:asc"),:class => "f_b c_grey",:remote => @is_remote %><%= render partial: 'files/arrow_show',locals: { sort: @sort,order:@order,current:"quotes"} %> 排序
|
|
||||||
<% end %>
|
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
</div>
|
</div>
|
||||||
<div id="course_list">
|
<div id="course_list">
|
||||||
<%= render :partial => 'course_list',:locals => {course: @course,all_attachments: @all_attachments,sort:@sort,order:@order,curse_attachments:@obj_attachments} %>
|
<%= render :partial => 'course_list',:locals => {course: @course,all_attachments: @all_attachments,sort:@sort,order:@order,curse_attachments:@obj_attachments} %>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<%# html_title(l(:label_attachment_plural)) -%>
|
<%# html_title(l(:label_attachment_plural)) -%>
|
|
@ -0,0 +1,15 @@
|
||||||
|
<% if @order == "asc" %>
|
||||||
|
按 <%= link_to "时间", search_tag_attachment_course_files_path(@course, :sort => "created_on:desc", :tag_name => @tag_name.nil? ? " " : @tag_name, :q => @q.nil? ? " " : @q), :class => "f_b c_grey", :remote => true %>
|
||||||
|
<%= render partial: 'files/arrow_show',locals: { sort: @sort,order:@order,current:"created_on"} %> /
|
||||||
|
<%= link_to "下载次数", search_tag_attachment_course_files_path(@course, :sort => "downloads:desc", :tag_name => @tag_name.nil? ? " " : @tag_name, :q => @q.nil? ? " " : @q), :class => "f_b c_grey",:remote => true %>
|
||||||
|
<%= render partial: 'files/arrow_show',locals: { sort: @sort,order:@order,current:"downloads"} %> /
|
||||||
|
<%= link_to "引用次数", search_tag_attachment_course_files_path(@course, :sort => "quotes:desc", :tag_name => @tag_name.nil? ? " " : @tag_name, :q => @q.nil? ? " " : @q), :class => "f_b c_grey", :remote => true %>
|
||||||
|
<%= render partial: 'files/arrow_show',locals: { sort: @sort,order:@order,current:"quotes"} %> 排序
|
||||||
|
<% else %>
|
||||||
|
按 <%= link_to "时间", search_tag_attachment_course_files_path(@course, :sort => "created_on:asc", :tag_name => @tag_name.nil? ? ' ' : @tag_name, :q => @q.nil? ? ' ' : @q), :class => "f_b c_grey" , :remote => true %>
|
||||||
|
<%= render partial: 'files/arrow_show',locals: { sort: @sort,order:@order,current:"created_on"} %> /
|
||||||
|
<%= link_to "下载次数", search_tag_attachment_course_files_path(@course, :sort => "downloads:asc", :tag_name => @tag_name.nil? ? ' ' : @tag_name, :q => @q.nil? ? ' ' : @q), :class => "f_b c_grey", :remote => true %>
|
||||||
|
<%= render partial: 'files/arrow_show',locals: { sort: @sort,order:@order,current:"downloads"} %> /
|
||||||
|
<%= link_to "引用次数", search_tag_attachment_course_files_path(@course, :sort =>"quotes:asc", :tag_name => @tag_name.nil? ? ' ' : @tag_name, :q => @q.nil? ? ' ' : @q),:class => "f_b c_grey", :remote => true %>
|
||||||
|
<%= render partial:'files/arrow_show',locals: { sort: @sort,order:@order,current:"quotes"} %> 排序
|
||||||
|
<% end %>
|
|
@ -1,5 +1,6 @@
|
||||||
<% if @course %>
|
<% if @course %>
|
||||||
$("#course_list").html("<%= escape_javascript(render :partial => 'course_list',:locals => {course: @course,all_attachments: @result,sort:@sort,order:@order,curse_attachments:@searched_attach})%>");
|
$("#course_list").html("<%= escape_javascript(render :partial => 'course_list',:locals => {course: @course,all_attachments: @result,sort:@sort,order:@order,curse_attachments:@searched_attach})%>");
|
||||||
|
$("#course_filter_order").html("<%= escape_javascript(render :partial => 'course_file_filter_order', :locals => {course: @course,all_attachments: @result,sort:@sort,order:@order,curse_attachments:@searched_attach, tag_name: @tag_name, q: @q})%>");
|
||||||
$("#attachment_count").html("<%= @result.count%>")
|
$("#attachment_count").html("<%= @result.count%>")
|
||||||
<% else %>
|
<% else %>
|
||||||
$("#course_list").html("<%= escape_javascript(render :partial => 'project_list',:locals => {project:@project, all_attachments:@result_search_project, sort:@sort, order:@order, project_attachments:@searched_attach}) %>");
|
$("#course_list").html("<%= escape_javascript(render :partial => 'project_list',:locals => {project:@project, all_attachments:@result_search_project, sort:@sort, order:@order, project_attachments:@searched_attach}) %>");
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
$(function(){
|
$(function(){
|
||||||
$("#RSide").removeAttr("id");
|
$("#RSide").removeAttr("id");
|
||||||
$("#Container").css("width","1000px");
|
$("#Container").css("width","1000px");
|
||||||
if(<%= @is_edit %>) {
|
if(true == <%= @is_edit %>) {
|
||||||
issueEditShow();
|
issueEditShow();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -28,6 +28,8 @@
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
<script>
|
<script>
|
||||||
|
var onUserCard = false;
|
||||||
|
var onImage = false;
|
||||||
$(document).ready(function(){
|
$(document).ready(function(){
|
||||||
$("#relateProject,.relatePInfo").mouseover(function(){
|
$("#relateProject,.relatePInfo").mouseover(function(){
|
||||||
$(".relatePInfo").css("display","block");
|
$(".relatePInfo").css("display","block");
|
||||||
|
@ -36,15 +38,24 @@
|
||||||
$(".relatePInfo").css("display","none");
|
$(".relatePInfo").css("display","none");
|
||||||
})
|
})
|
||||||
$(".homepagePostPortrait").mouseover(function(){
|
$(".homepagePostPortrait").mouseover(function(){
|
||||||
|
onImage = true;
|
||||||
$(this).children(".userCard").css("display","block");
|
$(this).children(".userCard").css("display","block");
|
||||||
})
|
})
|
||||||
$(".homepagePostPortrait").mouseout(function(){
|
$(".homepagePostPortrait").mouseout(function(){
|
||||||
$(this).children(".userCard").css("display","none");
|
var cur = $(this);
|
||||||
|
onImage = false;
|
||||||
|
setTimeout(function(){
|
||||||
|
if (onUserCard == false && onImage == false) {
|
||||||
|
$(cur).children(".userCard").css("display","none");
|
||||||
|
}
|
||||||
|
},500);
|
||||||
})
|
})
|
||||||
$(".userCard").mouseover(function(){
|
$(".userCard").mouseover(function(){
|
||||||
|
onUserCard = true;
|
||||||
$(this).css("display","block");
|
$(this).css("display","block");
|
||||||
})
|
})
|
||||||
$(".userCard").mouseout(function(){
|
$(".userCard").mouseout(function(){
|
||||||
|
onUserCard = false;
|
||||||
$(this).css("display","none");
|
$(this).css("display","none");
|
||||||
})
|
})
|
||||||
$(".coursesLineGrey").mouseover(function(){
|
$(".coursesLineGrey").mouseover(function(){
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
<script>
|
<script>
|
||||||
|
var onUserCard = false;
|
||||||
$(document).ready(function(){
|
$(document).ready(function(){
|
||||||
$("#relateProject,.relatePInfo").mouseover(function(){
|
$("#relateProject,.relatePInfo").mouseover(function(){
|
||||||
$(".relatePInfo").css("display","block");
|
$(".relatePInfo").css("display","block");
|
||||||
|
@ -6,18 +7,6 @@
|
||||||
$("#relateProject,.relatePInfo").mouseout(function(){
|
$("#relateProject,.relatePInfo").mouseout(function(){
|
||||||
$(".relatePInfo").css("display","none");
|
$(".relatePInfo").css("display","none");
|
||||||
})
|
})
|
||||||
$(".homepagePostPortrait").mouseover(function(){
|
|
||||||
$(this).children(".userCard").css("display","block");
|
|
||||||
})
|
|
||||||
$(".homepagePostPortrait").mouseout(function(){
|
|
||||||
$(this).children(".userCard").css("display","none");
|
|
||||||
})
|
|
||||||
$(".userCard").mouseover(function(){
|
|
||||||
$(this).css("display","block");
|
|
||||||
})
|
|
||||||
$(".userCard").mouseout(function(){
|
|
||||||
$(this).css("display","none");
|
|
||||||
})
|
|
||||||
$(".coursesLineGrey").mouseover(function(){
|
$(".coursesLineGrey").mouseover(function(){
|
||||||
$(this).css("color","#ffffff");
|
$(this).css("color","#ffffff");
|
||||||
})
|
})
|
||||||
|
|
|
@ -6,18 +6,6 @@
|
||||||
$("#relateProject,.relatePInfo").mouseout(function(){
|
$("#relateProject,.relatePInfo").mouseout(function(){
|
||||||
$(".relatePInfo").css("display","none");
|
$(".relatePInfo").css("display","none");
|
||||||
})
|
})
|
||||||
$(".homepagePostPortrait").mouseover(function(){
|
|
||||||
$(this).children(".userCard").css("display","block");
|
|
||||||
})
|
|
||||||
$(".homepagePostPortrait").mouseout(function(){
|
|
||||||
$(this).children(".userCard").css("display","none");
|
|
||||||
})
|
|
||||||
$(".userCard").mouseover(function(){
|
|
||||||
$(this).css("display","block");
|
|
||||||
})
|
|
||||||
$(".userCard").mouseout(function(){
|
|
||||||
$(this).css("display","none");
|
|
||||||
})
|
|
||||||
$(".coursesLineGrey").mouseover(function(){
|
$(".coursesLineGrey").mouseover(function(){
|
||||||
$(this).css("color","#ffffff");
|
$(this).css("color","#ffffff");
|
||||||
})
|
})
|
||||||
|
|
|
@ -73,7 +73,7 @@
|
||||||
|
|
||||||
<% if activity.homework_type == 2 && is_teacher%>
|
<% if activity.homework_type == 2 && is_teacher%>
|
||||||
<div class="homepagePostSubmit">
|
<div class="homepagePostSubmit">
|
||||||
<%= link_to "模拟答题", "https://www.trustie.net/new_user_commit_homework?homework_id="+activity.id.to_s + "&is_test=true", class: 'c_blue test-program-btn', title: '教师可以通过模拟答题设置作业的标准答案' %>
|
<%= link_to "模拟答题", Setting.protocol + "://" + Setting.host_name + "/users/new_user_commit_homework?homework_id="+activity.id.to_s + "&is_test=true", class: 'c_blue test-program-btn', title: '教师可以通过模拟答题设置作业的标准答案' %>
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% if activity.homework_type == 2%>
|
<% if activity.homework_type == 2%>
|
||||||
|
@ -154,7 +154,7 @@
|
||||||
<% end %>
|
<% end %>
|
||||||
<% student_works.each_with_index do |sw, i| %>
|
<% student_works.each_with_index do |sw, i| %>
|
||||||
<div class="fl mr10 w100" style="text-align:center;">
|
<div class="fl mr10 w100" style="text-align:center;">
|
||||||
<a href="javascript:void(0);" class="linkBlue"><%= link_to image_tag(url_to_avatar(User.find sw.user_id), :width => "40", :height => "40"), student_work_index_path(:homework => activity.id), :alt => "学生头像" %>
|
<a href="javascript:void(0);" class="linkBlue"><%= link_to image_tag(url_to_avatar(User.find sw.user_id), :width => "40", :height => "40"), student_work_index_url_in_org(activity.id), :alt => "学生头像" %>
|
||||||
<p class="w100 hidden"><%= link_to sw.user.show_name, student_work_index_url_in_org(activity.id)%></p>
|
<p class="w100 hidden"><%= link_to sw.user.show_name, student_work_index_url_in_org(activity.id)%></p>
|
||||||
</a>
|
</a>
|
||||||
<% score = sw.respond_to?("score") ? sw.score : (sw.final_score || 0) - sw.absence_penalty - sw.late_penalty %>
|
<% score = sw.respond_to?("score") ? sw.score : (sw.final_score || 0) - sw.absence_penalty - sw.late_penalty %>
|
||||||
|
@ -245,7 +245,7 @@
|
||||||
<% end %>
|
<% end %>
|
||||||
<% if activity.anonymous_comment == 0 && (comment_status == 0 || comment_status == 1)%>
|
<% if activity.anonymous_comment == 0 && (comment_status == 0 || comment_status == 1)%>
|
||||||
<li>
|
<li>
|
||||||
<%= link_to("禁用匿评", Setting.host_name + "/homework_common/" + activity.id.to_s + "/alert_forbidden_anonymous_comment?user_activity_id=" + user_activity_id.to_s + "&course_activity=" + course_activity.to_s,:class => "postOptionLink",
|
<%= link_to("禁用匿评", Setting.protocol + "://" + Setting.host_name + "/homework_common/" + activity.id.to_s + "/alert_forbidden_anonymous_comment?user_activity_id=" + user_activity_id.to_s + "&course_activity=" + course_activity.to_s,:class => "postOptionLink",
|
||||||
:title => "匿评是同学之间的双盲互评过程:每个同学将评阅系统分配给他/她的若干个作品",:remote => true)%>
|
:title => "匿评是同学之间的双盲互评过程:每个同学将评阅系统分配给他/她的若干个作品",:remote => true)%>
|
||||||
</li>
|
</li>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
|
@ -22,9 +22,9 @@
|
||||||
<div class="homepagePostTitle break_word" >
|
<div class="homepagePostTitle break_word" >
|
||||||
<%#= link_to activity.polls_name.to_s/*+"(问卷名称)"*/, %>
|
<%#= link_to activity.polls_name.to_s/*+"(问卷名称)"*/, %>
|
||||||
<% if has_commit %>
|
<% if has_commit %>
|
||||||
<%= link_to poll_name, poll_result_poll_path(activity.id), :class => "postGrey"%>
|
<%= link_to poll_name, Setting.protocol + "://" + Setting.host_name + "/poll/" + activity.id.to_s + "/poll_result", :class => "postGrey"%>
|
||||||
<% else %>
|
<% else %>
|
||||||
<%= link_to poll_name, poll_path(activity.id), :class => "postGrey"%>
|
<%= link_to poll_name, Setting.protocol + "://" + Setting.host_name + "/poll/" + activity.id.to_s, :class => "postGrey"%>
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
<div class="homepagePostDate fl">
|
<div class="homepagePostDate fl">
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
<script>
|
<script>
|
||||||
|
var onUserCard = false;
|
||||||
|
var onImage = false;
|
||||||
$(document).ready(function(){
|
$(document).ready(function(){
|
||||||
$("#relateProject,.relatePInfo").mouseover(function(){
|
$("#relateProject,.relatePInfo").mouseover(function(){
|
||||||
$(".relatePInfo").css("display","block");
|
$(".relatePInfo").css("display","block");
|
||||||
|
@ -7,15 +9,24 @@
|
||||||
$(".relatePInfo").css("display","none");
|
$(".relatePInfo").css("display","none");
|
||||||
})
|
})
|
||||||
$(".homepagePostPortrait").mouseover(function(){
|
$(".homepagePostPortrait").mouseover(function(){
|
||||||
|
onImage = true;
|
||||||
$(this).children(".userCard").css("display","block");
|
$(this).children(".userCard").css("display","block");
|
||||||
})
|
})
|
||||||
$(".homepagePostPortrait").mouseout(function(){
|
$(".homepagePostPortrait").mouseout(function(){
|
||||||
$(this).children(".userCard").css("display","none");
|
var cur = $(this);
|
||||||
|
onImage = false;
|
||||||
|
setTimeout(function(){
|
||||||
|
if (onUserCard == false && onImage == false) {
|
||||||
|
$(cur).children(".userCard").css("display", "none");
|
||||||
|
}
|
||||||
|
}, 500);
|
||||||
})
|
})
|
||||||
$(".userCard").mouseover(function(){
|
$(".userCard").mouseover(function(){
|
||||||
|
onUserCard = true;
|
||||||
$(this).css("display","block");
|
$(this).css("display","block");
|
||||||
})
|
})
|
||||||
$(".userCard").mouseout(function(){
|
$(".userCard").mouseout(function(){
|
||||||
|
onUserCard = false;
|
||||||
$(this).css("display","none");
|
$(this).css("display","none");
|
||||||
})
|
})
|
||||||
$(".coursesLineGrey").mouseover(function(){
|
$(".coursesLineGrey").mouseover(function(){
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
<% members.each do |member|%>
|
<% members.each do |member|%>
|
||||||
<ul class="orgListRow">
|
<ul class="orgListRow">
|
||||||
<li class="orgListUser"><a href="<%= user_path(User.find(member.user_id))%>" class="linkBlue"><%= User.find(member.user_id).realname.blank? ? User.find(member.user_id).login : User.find(member.user_id).realname %></a></li>
|
<li class="orgListUser"><a href="<%= user_url_in_org(member.user_id) %>" class="linkBlue"><%= User.find(member.user_id).realname.blank? ? User.find(member.user_id).login : User.find(member.user_id).realname %></a></li>
|
||||||
<li class="orgListRole">
|
<li class="orgListRole">
|
||||||
<%= get_org_member_role_name member %>
|
<%= get_org_member_role_name member %>
|
||||||
<%= form_for(member, {:as => :org_member, :remote => true, :url => org_member_path(member),
|
<%= form_for(member, {:as => :org_member, :remote => true, :url => Setting.protocol + "://" + Setting.host_name + "/org_member/" + member.id.to_s,
|
||||||
:method => :put,
|
:method => :put,
|
||||||
:html => {:id => "org-member-#{member.id}-roles-form", :style=>'display:none'}}
|
:html => {:id => "org-member-#{member.id}-roles-form", :style=>'display:none'}}
|
||||||
) do |f| %>
|
) do |f| %>
|
||||||
|
@ -32,7 +32,7 @@
|
||||||
</li>
|
</li>
|
||||||
<% if ( (User.current.id == member.organization.creator_id || User.current.admin_of_org?(member.organization) ) && member.user_id != member.organization.creator_id )%>
|
<% if ( (User.current.id == member.organization.creator_id || User.current.admin_of_org?(member.organization) ) && member.user_id != member.organization.creator_id )%>
|
||||||
<a href="javascript:void(0);" style="color: #0781B4;margin-left: 30px;float: left" onclick="$(this).parent().height(70);$('#org-member-<%= member.id%>-roles-form').show();">编辑</a>
|
<a href="javascript:void(0);" style="color: #0781B4;margin-left: 30px;float: left" onclick="$(this).parent().height(70);$('#org-member-<%= member.id%>-roles-form').show();">编辑</a>
|
||||||
<%= link_to '删除', org_member_path(member.id),:method=>'delete',:style=>'color: #0781B4;margin-left: 30px;float: left',:confirm=>'您确定要删除么?', :remote => true %><% end %>
|
<%= link_to '删除', Setting.protocol + "://" + Setting.host_name + "/org_member/" + member.id.to_s,:method=>'delete',:style=>'color: #0781B4;margin-left: 30px;float: left',:confirm=>'您确定要删除么?', :remote => true %><% end %>
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
</ul>
|
</ul>
|
||||||
<% end %>
|
<% end %>
|
|
@ -1,11 +1,11 @@
|
||||||
<% if PraiseTread.where("praise_tread_object_id=? and praise_tread_object_type=? and user_id=?",activity.id,activity.class.to_s,User.current.id).empty? %>
|
<% if PraiseTread.where("praise_tread_object_id=? and praise_tread_object_type=? and user_id=?",activity.id,activity.class.to_s,User.current.id).empty? %>
|
||||||
<a href="<%= praise_tread_praise_plus_path({:obj_id=>activity.id,:obj_type=>activity.class,:user_activity_id=>user_activity_id,:type=>type })%>" data-remote="true" class="<%=type == 'reply'? 'fr' : 'ml15' %> likeButton" title="点赞" >
|
<a href='<%= Setting.protocol+"://"+Setting.host_name+"/praise_tread/praise_plus?obj_id="+activity.id.to_s+"&obj_type="+activity.class.name+"&user_activity_id="+user_activity_id.to_s+"&type="+type.to_s %>' data-remote="true" class="<%=type == 'reply'? 'fr' : 'ml15' %> likeButton" title="点赞" >
|
||||||
<span class="likeText">赞</span>
|
<span class="likeText">赞</span>
|
||||||
<% num = get_praise_num(activity) %>
|
<% num = get_praise_num(activity) %>
|
||||||
<span class="likeNum"><%= num > 0 ? "(#{num})" : "" %></span>
|
<span class="likeNum"><%= num > 0 ? "(#{num})" : "" %></span>
|
||||||
</a>
|
</a>
|
||||||
<% else %>
|
<% else %>
|
||||||
<a href="<%= praise_tread_praise_minus_path({:obj_id=>activity.id,:obj_type=>activity.class,:user_activity_id=>user_activity_id,:type=>type })%>" data-remote="true" class="<%=type == 'reply'? 'fr' : 'ml15' %> likeButton" title="取消点赞" >
|
<a href='<%= Setting.protocol+"://"+Setting.host_name+"/praise_tread/praise_minus?obj_id="+activity.id.to_s+"&obj_type="+activity.class.name+"&user_activity_id="+user_activity_id.to_s+"&type="+type.to_s %>' data-remote="true" class="<%=type == 'reply'? 'fr' : 'ml15' %> likeButton" title="取消点赞" >
|
||||||
<span class="likeText">已赞</span>
|
<span class="likeText">已赞</span>
|
||||||
<% num = get_praise_num(activity) %>
|
<% num = get_praise_num(activity) %>
|
||||||
<span class="likeNum"><%= num > 0 ? "(#{num})" : "" %></span>
|
<span class="likeNum"><%= num > 0 ? "(#{num})" : "" %></span>
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
<%= import_ke(enable_at: true, prettify: false, init_activity: true) %>
|
<%= import_ke(enable_at: true, prettify: false, init_activity: true) %>
|
||||||
<script>
|
<script>
|
||||||
|
var onUserCard = false;
|
||||||
|
var onImage = false;
|
||||||
$(document).ready(function(){
|
$(document).ready(function(){
|
||||||
$("#relateProject,.relatePInfo").mouseover(function(){
|
$("#relateProject,.relatePInfo").mouseover(function(){
|
||||||
$(".relatePInfo").css("display","block");
|
$(".relatePInfo").css("display","block");
|
||||||
|
@ -8,15 +10,24 @@
|
||||||
$(".relatePInfo").css("display","none");
|
$(".relatePInfo").css("display","none");
|
||||||
})
|
})
|
||||||
$(".homepagePostPortrait").mouseover(function(){
|
$(".homepagePostPortrait").mouseover(function(){
|
||||||
|
onImage = true;
|
||||||
$(this).children(".userCard").css("display","block");
|
$(this).children(".userCard").css("display","block");
|
||||||
})
|
})
|
||||||
$(".homepagePostPortrait").mouseout(function(){
|
$(".homepagePostPortrait").mouseout(function(){
|
||||||
$(this).children(".userCard").css("display","none");
|
var cur = $(this);
|
||||||
|
onImage = false;
|
||||||
|
setTimeout(function(){
|
||||||
|
if (onUserCard == false && onImage == false) {
|
||||||
|
$(cur).children(".userCard").css("display", "none");
|
||||||
|
}
|
||||||
|
}, 500);
|
||||||
})
|
})
|
||||||
$(".userCard").mouseover(function(){
|
$(".userCard").mouseover(function(){
|
||||||
|
onUserCard = true;
|
||||||
$(this).css("display","block");
|
$(this).css("display","block");
|
||||||
})
|
})
|
||||||
$(".userCard").mouseout(function(){
|
$(".userCard").mouseout(function(){
|
||||||
|
onUserCard = false;
|
||||||
$(this).css("display","none");
|
$(this).css("display","none");
|
||||||
})
|
})
|
||||||
$(".coursesLineGrey").mouseover(function(){
|
$(".coursesLineGrey").mouseover(function(){
|
||||||
|
|
|
@ -41,14 +41,6 @@
|
||||||
<% content = activity.parent.content%>
|
<% content = activity.parent.content%>
|
||||||
<% end %>
|
<% end %>
|
||||||
<%=render :partial =>"users/intro_content", :locals=>{:user_activity_id =>user_activity_id, :content=>content} %>
|
<%=render :partial =>"users/intro_content", :locals=>{:user_activity_id =>user_activity_id, :content=>content} %>
|
||||||
<% if activity.status == 1 %>
|
|
||||||
<span style="font-family:Calibri;font-size:10.5000pt;"><%= activity.created_on.year %></span>
|
|
||||||
<span style="font-size:10.5000pt;">年</span>
|
|
||||||
<span style="font-family:Calibri;font-size:10.5000pt;"><%= activity.created_on.month %></span>
|
|
||||||
<span style="font-size:10.5000pt;">月</span>
|
|
||||||
<span style="font-family:Calibri;font-size:10.5000pt;"><%= activity.created_on.day %></span>
|
|
||||||
<span style="font-size:10.5000pt;">日</span>
|
|
||||||
<% end %>
|
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
<div id="intro_content_show_<%= user_activity_id%>" class="fr" style="display:none;"><a href="javascript:void(0);" class="linkBlue">[展开]</a></div>
|
<div id="intro_content_show_<%= user_activity_id%>" class="fr" style="display:none;"><a href="javascript:void(0);" class="linkBlue">[展开]</a></div>
|
||||||
<div id="intro_content_hide_<%= user_activity_id%>" class="fr" style="display:none;"><a href="javascript:void(0);" class="linkBlue">[收起]</a></div>
|
<div id="intro_content_hide_<%= user_activity_id%>" class="fr" style="display:none;"><a href="javascript:void(0);" class="linkBlue">[收起]</a></div>
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
<a href="<%= import_resources_user_path(User.current, :type => '1', :subfield_file_id => params[:subfield_file_id]) %>" id="my_resources_choose" class="subject-choose fl" data-remote="true">我的资源</a>
|
<a href="<%= import_resources_user_path(User.current, :type => '1', :subfield_file_id => params[:subfield_file_id]) %>" id="my_resources_choose" class="subject-choose fl" data-remote="true">我的资源</a>
|
||||||
<% end %>
|
<% end %>
|
||||||
<div id="user_import_resource_search">
|
<div id="user_import_resource_search">
|
||||||
<%=render :partial=>'users/user_import_resource_search', :locals => {:type => @type, :search => ''} %>
|
<%=render :partial=>'users/user_import_resource_search', :locals => {:type => @type, :search => '', :mul_id => @resource_id, :mul_type => @resource_type} %>
|
||||||
</div>
|
</div>
|
||||||
<!--<%#= form_tag( url_for(:controller => 'users', :action => 'import_resources_search', :id => User.current.id), :remote => true , :method => 'get', :id => 'resource_search_form') do %>-->
|
<!--<%#= form_tag( url_for(:controller => 'users', :action => 'import_resources_search', :id => User.current.id), :remote => true , :method => 'get', :id => 'resource_search_form') do %>-->
|
||||||
<!--<input type="text" name="search" placeholder="输入资源关键词进行搜索" class="subjectSearch fr" />-->
|
<!--<input type="text" name="search" placeholder="输入资源关键词进行搜索" class="subjectSearch fr" />-->
|
||||||
|
|
|
@ -9,19 +9,6 @@
|
||||||
$("#relateProject,.relatePInfo").mouseout(function(){
|
$("#relateProject,.relatePInfo").mouseout(function(){
|
||||||
$(".relatePInfo").css("display","none");
|
$(".relatePInfo").css("display","none");
|
||||||
})
|
})
|
||||||
$(".homepagePostPortrait").mouseover(function(){
|
|
||||||
$(this).children(".userCard").css("display","block");
|
|
||||||
})
|
|
||||||
$(".homepagePostPortrait").mouseout(function(){
|
|
||||||
$(this).children(".userCard").css("display","none");
|
|
||||||
})
|
|
||||||
$(".userCard").mouseover(function(){
|
|
||||||
|
|
||||||
$(this).css("display","block");
|
|
||||||
})
|
|
||||||
$(".userCard").mouseout(function(){
|
|
||||||
$(this).css("display","none");
|
|
||||||
})
|
|
||||||
$(".coursesLineGrey").mouseover(function(){
|
$(".coursesLineGrey").mouseover(function(){
|
||||||
$(this).css("color","#ffffff");
|
$(this).css("color","#ffffff");
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<%= form_tag( url_for({:controller => 'users', :action => 'import_into_container',
|
<%= form_tag( url_for({:controller => 'users', :action => 'import_into_container',
|
||||||
:mul_id => project_id.nil? ? (course_id.nil? ? subfield_file_id : course_id) : project_id,
|
:mul_id => @resource_id,
|
||||||
:mul_type => project_id.nil? ? (course_id.nil? ? "SubfieldFile" : "Course") : "Project"}),
|
:mul_type => @resource_type}),
|
||||||
:method => 'post', :id => 'resource_import_container_form') do %>
|
:method => 'post', :id => 'resource_import_container_form') do %>
|
||||||
<% @attachments.each do |attach| %>
|
<% @attachments.each do |attach| %>
|
||||||
<ul class="subjectRow">
|
<ul class="subjectRow">
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
}
|
}
|
||||||
lastSearchCondition = $(e.target).val().trim();
|
lastSearchCondition = $(e.target).val().trim();
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: '<%= url_for(:controller => 'users', :action => 'import_resources_search', :id => User.current.id) %>'+'?name='+ e.target.value+'&type=<%=type %>',
|
url: '<%= url_for({:controller => 'users', :action => 'import_resources_search', :id => User.current.id}) %>'+'?name='+ e.target.value+'&type=<%=type %>'+'&mul_id=<%=@resource_id %>'+'&mul_type=<%=@resource_type %>',
|
||||||
type:'get'
|
type:'get'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -392,7 +392,7 @@
|
||||||
<% end %>
|
<% end %>
|
||||||
<% end %>
|
<% end %>
|
||||||
<!-- 作业迟交,不能参与匿评提醒消息 -->
|
<!-- 作业迟交,不能参与匿评提醒消息 -->
|
||||||
<% if ma.course_message_type == "StudentWork" && !ma.course_message.homework_common.nil? %>
|
<% if ma.course_message_type == "StudentWork" && !ma.course_message.homework_common.nil? && !User.current.allowed_to?(:as_teacher, ma.course_message.homework_common.course) %>
|
||||||
<ul class="homepageNewsList fl">
|
<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) %></a></li>
|
<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) %></a></li>
|
||||||
<li class="homepageNewsPubType fl">
|
<li class="homepageNewsPubType fl">
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
<% if params[:project_id] %>
|
<% if params[:project_id] %>
|
||||||
$('#ajax-modal').html('<%= escape_javascript( render :partial => 'users/import_resource_info', :locals => {:user => User.current, :type => @type, :project_id => params[:project_id]} ) %>');
|
$('#ajax-modal').html('<%= escape_javascript( render :partial => 'users/import_resource_info', :locals => {:user => User.current, :type => @type, :project_id => params[:project_id], :mul_id => @resource_id, :mul_type => @resource_type}) %>');
|
||||||
<% elsif params[:course_id] %>
|
<% elsif params[:course_id] %>
|
||||||
$('#ajax-modal').html('<%= escape_javascript( render :partial => 'users/import_resource_info', :locals => {:user => User.current, :type => @type, :course_id => params[:course_id]} ) %>');
|
$('#ajax-modal').html('<%= escape_javascript( render :partial => 'users/import_resource_info', :locals => {:user => User.current, :type => @type, :course_id => params[:course_id], :mul_id => @resource_id, :mul_type => @resource_type}) %>');
|
||||||
<% elsif params[:subfield_file_id] %>
|
<% elsif params[:subfield_file_id] %>
|
||||||
$('#ajax-modal').html('<%= escape_javascript( render :partial => 'users/import_resource_info', :locals => {:user => User.current, :type => @type, :subfield_file_id => params[:subfield_file_id]} ) %>');
|
$('#ajax-modal').html('<%= escape_javascript( render :partial => 'users/import_resource_info', :locals => {:user => User.current, :type => @type, :subfield_file_id => params[:subfield_file_id], :mul_id => @resource_id, :mul_type => @resource_type}) %>');
|
||||||
<% end %>
|
<% end %>
|
||||||
showModal('ajax-modal', '615px');
|
showModal('ajax-modal', '615px');
|
||||||
$('#ajax-modal').siblings().remove();
|
$('#ajax-modal').siblings().remove();
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
$("#import_resource_info_list").html('<%= escape_javascript( render :partial => 'user_import_resource_list',
|
$("#import_resource_info_list").html('<%= escape_javascript( render :partial => 'user_import_resource_list',
|
||||||
:locals => {:user => @user, :type => @type, :project_id => params[:project_id], :subfield_file_id => params[:subfield_file_id], :course_id => params[:course_id]} ) %>');
|
:locals => {:user => @user, :type => @type,
|
||||||
|
:mul_id => @resource_id,
|
||||||
|
:mul_type => @resource_type}) %>');
|
||||||
$("#pages").html('<%= pagination_links_full @atta_pages, @atta_count, :per_page_links => false, :remote => @is_remote, :flag => true %>');
|
$("#pages").html('<%= pagination_links_full @atta_pages, @atta_count, :per_page_links => false, :remote => @is_remote, :flag => true %>');
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
class CreateUserActions < ActiveRecord::Migration
|
||||||
|
def change
|
||||||
|
create_table :user_actions do |t|
|
||||||
|
t.integer :user_id
|
||||||
|
t.string :action_type
|
||||||
|
t.integer :action_id
|
||||||
|
|
||||||
|
t.timestamps
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
10
db/schema.rb
10
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 => 20160316055201) do
|
ActiveRecord::Schema.define(:version => 20160317090350) 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
|
||||||
|
@ -1782,6 +1782,14 @@ ActiveRecord::Schema.define(:version => 20160316055201) do
|
||||||
t.integer "fields_bits", :default => 0
|
t.integer "fields_bits", :default => 0
|
||||||
end
|
end
|
||||||
|
|
||||||
|
create_table "user_actions", :force => true do |t|
|
||||||
|
t.integer "user_id"
|
||||||
|
t.string "action_type"
|
||||||
|
t.integer "action_id"
|
||||||
|
t.datetime "created_at", :null => false
|
||||||
|
t.datetime "updated_at", :null => false
|
||||||
|
end
|
||||||
|
|
||||||
create_table "user_activities", :force => true do |t|
|
create_table "user_activities", :force => true do |t|
|
||||||
t.string "act_type"
|
t.string "act_type"
|
||||||
t.integer "act_id"
|
t.integer "act_id"
|
||||||
|
|
|
@ -247,11 +247,11 @@ function regexTopicDescription()
|
||||||
|
|
||||||
function submit_topic()
|
function submit_topic()
|
||||||
{
|
{
|
||||||
if(regexTopicSubject() && regexTopicDescription())
|
// if(regexTopicSubject() && regexTopicDescription())
|
||||||
{
|
// {
|
||||||
message_content_editor.sync();
|
message_content_editor.sync();
|
||||||
$("#message-form").submit();
|
$("#message-form").submit();
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
function reset_topic(){
|
function reset_topic(){
|
||||||
|
|
|
@ -3,11 +3,11 @@
|
||||||
*/
|
*/
|
||||||
function submit_topic()
|
function submit_topic()
|
||||||
{
|
{
|
||||||
if(regexTopicSubject() && regexTopicDescription())
|
// if(regexTopicSubject() && regexTopicDescription())
|
||||||
{
|
// {
|
||||||
message_content_editor.sync();
|
message_content_editor.sync();
|
||||||
$("#message-form").submit();
|
$("#message-form").submit();
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
function regexTopicSubject() {
|
function regexTopicSubject() {
|
||||||
|
|
|
@ -618,11 +618,11 @@ function regexTopicDescription()
|
||||||
}
|
}
|
||||||
function submit_topic_project()
|
function submit_topic_project()
|
||||||
{
|
{
|
||||||
if(regexTopicSubject() && regexTopicDescription())
|
// if(regexTopicSubject() && regexTopicDescription())
|
||||||
{
|
// {
|
||||||
message_content_editor.sync();
|
message_content_editor.sync();
|
||||||
$("#message-form-project").submit();
|
$("#message-form-project").submit();
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
function reset_topic(){
|
function reset_topic(){
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
FactoryGirl.define do
|
||||||
|
factory :user_action, :class => 'UserActions' do
|
||||||
|
user_id 1
|
||||||
|
action_type "MyString"
|
||||||
|
action_id 1
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
|
@ -0,0 +1,5 @@
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
RSpec.describe UserActions, :type => :model do
|
||||||
|
pending "add some examples to (or delete) #{__FILE__}"
|
||||||
|
end
|
Loading…
Reference in New Issue