parent
91b245ad2c
commit
f61f639af2
@ -1,25 +1,143 @@
|
|||||||
#coding=utf-8
|
#coding=utf-8
|
||||||
|
|
||||||
class AtController < ApplicationController
|
class AtController < ApplicationController
|
||||||
respond_to :js
|
respond_to :json
|
||||||
|
|
||||||
def show
|
def show
|
||||||
type = params[:type]
|
@logger = Logger.new(Rails.root.join('log', 'at.log').to_s)
|
||||||
|
users = find_at_users(params[:type], params[:id])
|
||||||
|
@users = users.uniq { |u| u.id }.delete_if { |u| u.id == User.current.id }
|
||||||
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
def find_at_users(type, id)
|
||||||
|
@logger.info("#{type}, #{id}")
|
||||||
case type
|
case type
|
||||||
when "Issue"
|
when "Issue"
|
||||||
@users = find_issue(params)
|
find_issue(id)
|
||||||
|
when 'Project'
|
||||||
|
find_project(id)
|
||||||
|
when 'Course'
|
||||||
|
find_course(id)
|
||||||
|
when 'Activity', 'CourseActivity', 'ForgeActivity','UserActivity', 'OrgActivity','PrincipalActivity'
|
||||||
|
find_activity(id, type)
|
||||||
|
when 'Attachment'
|
||||||
|
find_attachment(id)
|
||||||
|
when 'Message'
|
||||||
|
find_message(id)
|
||||||
else
|
else
|
||||||
|
nil
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
def find_issue(id)
|
||||||
def find_issue(params)
|
|
||||||
#1. issues list persons
|
#1. issues list persons
|
||||||
#2. project persons
|
#2. project persons
|
||||||
issue = Issue.find(params[:id])
|
issue = Issue.find(id)
|
||||||
journals = issue.journals
|
journals = issue.journals
|
||||||
at_persons = journals.map(&:user) + issue.project.users
|
at_persons = journals.map(&:user) + issue.project.users
|
||||||
at_persons.uniq { |u| u.id }.delete_if { |u| u.id == User.current.id }
|
at_persons.uniq { |u| u.id }.delete_if { |u| u.id == User.current.id }
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def find_project(id)
|
||||||
|
at_persons = Project.find(id).users
|
||||||
|
at_persons.delete_if { |u| u.id == User.current.id }
|
||||||
|
end
|
||||||
|
|
||||||
|
def find_course(id)
|
||||||
|
at_persons = Course.find(id).users
|
||||||
|
at_persons.delete_if { |u| u.id == User.current.id }
|
||||||
|
end
|
||||||
|
|
||||||
|
def find_activity(id, type)
|
||||||
|
|
||||||
|
## 基本上是本类型中的 加上所属类型的用户
|
||||||
|
case type
|
||||||
|
when 'Activity'
|
||||||
|
activity = Activity.find(id)
|
||||||
|
(find_at_users(activity.act_type, activity.act_id) ||[]) +
|
||||||
|
(find_at_users(activity.activity_container_type, activity.activity_container_id) || [])
|
||||||
|
when 'CourseActivity'
|
||||||
|
activity = CourseActivity.find(id)
|
||||||
|
(find_at_users(activity.course_act_type, activity.course_act_id) || []) + (find_course(activity.course.id) || [])
|
||||||
|
when 'ForgeActivity'
|
||||||
|
activity = ForgeActivity.find(id)
|
||||||
|
(find_at_users(activity.forge_act_type, activity.forge_act_id) ||[]) +
|
||||||
|
(find_project(activity.project_id) || [])
|
||||||
|
when 'UserActivity'
|
||||||
|
activity = UserActivity.find(id)
|
||||||
|
(find_at_users(activity.act_type, activity.act_id) || []) +
|
||||||
|
(find_at_users(activity.container_type, activity.container_id) || [])
|
||||||
|
when 'OrgActivity'
|
||||||
|
activity = OrgActivity.find(id)
|
||||||
|
(find_at_users(activity.org_act_type, activity.org_act_id) || []) +
|
||||||
|
(find_at_users(activity.container_type, activity.container_id) || [])
|
||||||
|
when 'PrincipalActivity'
|
||||||
|
activity = PrincipalActivity.find(id)
|
||||||
|
find_at_users(activity.principal_act_type, activity.principal_act_id)
|
||||||
|
else
|
||||||
|
nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
#作业应该是关联课程,取课程的用户列表
|
||||||
|
def find_homework(id)
|
||||||
|
homework = HomeworkCommon.find(id)
|
||||||
|
find_course(homework.course_id)
|
||||||
|
end
|
||||||
|
|
||||||
|
def find_attachment(id)
|
||||||
|
attachment = Attachment.find(id)
|
||||||
|
find_at_users(attachment.container_type, attachment.container_id)
|
||||||
|
end
|
||||||
|
|
||||||
|
#Message
|
||||||
|
def find_message(id)
|
||||||
|
message = Message.find(id)
|
||||||
|
at_persons = message.board.messages.map(&:author)
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
#News
|
||||||
|
def find_news(id)
|
||||||
|
find_project(News.find(id).project_id)
|
||||||
|
end
|
||||||
|
|
||||||
|
#JournalsForMessage
|
||||||
|
def find_journals_for_message(id)
|
||||||
|
jounrnal = JournalsForMessage.find(id)
|
||||||
|
find_at_users(jounrnal.jour_type, jounrnal.jour_id)
|
||||||
|
end
|
||||||
|
|
||||||
|
#Poll
|
||||||
|
def find_poll(id)
|
||||||
|
end
|
||||||
|
|
||||||
|
#Journal
|
||||||
|
def find_journal(id)
|
||||||
|
journal = Journal.find(id)
|
||||||
|
find_at_users(journal.journalized_type, journal.journalized_id)
|
||||||
|
end
|
||||||
|
|
||||||
|
#Document
|
||||||
|
def find_document(id)
|
||||||
|
find_project(Document.find(id).project_id)
|
||||||
|
end
|
||||||
|
|
||||||
|
#ProjectCreateInfo
|
||||||
|
def find_project_create_info(id)
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
#Principal
|
||||||
|
def find_principal(id)
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
#BlogComment
|
||||||
|
def find_blog_comment(id)
|
||||||
|
blog = BlogComment.find(id).blog
|
||||||
|
blog.users
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
@ -1,8 +0,0 @@
|
|||||||
(function(){
|
|
||||||
window.atPersonLists = [];
|
|
||||||
<% @users && @users.each_with_index do |person,index| %>
|
|
||||||
var o = {id: <%=index%>, name: '<%=person.show_name%>', login: '<%=person.login%>', searchKey: '<%=person.get_at_show_name%>'};
|
|
||||||
atPersonLists.push(o);
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
})();
|
|
@ -0,0 +1,6 @@
|
|||||||
|
[
|
||||||
|
<% @users && @users.each_with_index do |person,index| %>
|
||||||
|
{"id": <%=index%>, "name": "<%=person.show_name%>", "login": "<%=person.login%>", "searchKey": "<%=person.get_at_show_name%>"}
|
||||||
|
<%= index != @users.size-1 ? ',' : '' %>
|
||||||
|
<% end %>
|
||||||
|
]
|
@ -1,7 +1,7 @@
|
|||||||
<% if @in_user_center%>
|
<% if @in_user_center%>
|
||||||
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/user_blog', :locals => {:activity => @article,:user_activity_id =>@user_activity_id}) %>");
|
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/user_blog', :locals => {:activity => @article,:user_activity_id =>@user_activity_id}) %>");
|
||||||
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%");
|
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%", 'UserActivity');
|
||||||
<% else%>
|
<% else%>
|
||||||
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'blogs/article', :locals => {:activity => @article,:user_activity_id =>@user_activity_id}) %>");
|
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'blogs/article', :locals => {:activity => @article,:user_activity_id =>@user_activity_id}) %>");
|
||||||
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%");
|
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%", 'UserActivity');
|
||||||
<% end %>
|
<% end %>
|
@ -1,3 +1,3 @@
|
|||||||
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/course_news', :locals => {:activity => @news,:user_activity_id =>@user_activity_id}) %>");
|
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/course_news', :locals => {:activity => @news,:user_activity_id =>@user_activity_id}) %>");
|
||||||
|
|
||||||
init_activity_KindEditor_data('<%= @user_activity_id%>',"","87%");
|
init_activity_KindEditor_data('<%= @user_activity_id%>',"","87%", "UserActivity");
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
alert('关闭成功');
|
alert('关闭成功');
|
||||||
<% if @user_activity_id == -1 %>
|
<% if @user_activity_id == -1 %>
|
||||||
$("#homework_common_<%= @homework.id %>").replaceWith("<%= escape_javascript(render :partial => "users/user_homework_detail",:locals => {:homework_common => @homework, :is_in_course => @is_in_course})%>");
|
$("#homework_common_<%= @homework.id %>").replaceWith("<%= escape_javascript(render :partial => "users/user_homework_detail",:locals => {:homework_common => @homework, :is_in_course => @is_in_course})%>");
|
||||||
init_activity_KindEditor_data(<%= @homework.id%>,"","87%");
|
init_activity_KindEditor_data(<%= @homework.id%>,"","87%", "<%=@homework.class.to_s%>");
|
||||||
<% else %>
|
<% else %>
|
||||||
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/course_homework', :locals => {:activity => @homework,:user_activity_id =>@user_activity_id,:course_activity=>@course_activity}) %>");
|
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/course_homework', :locals => {:activity => @homework,:user_activity_id =>@user_activity_id,:course_activity=>@course_activity}) %>");
|
||||||
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%");
|
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%", 'UserActivity');
|
||||||
<% end %>
|
<% end %>
|
||||||
/*
|
/*
|
||||||
$("#<%#= @homework.id %>_stop_anonymous_comment").replaceWith('');*/
|
$("#<%#= @homework.id %>_stop_anonymous_comment").replaceWith('');*/
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/project_issue', :locals => {:activity => @issue,:user_activity_id =>@user_activity_id}) %>");
|
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/project_issue', :locals => {:activity => @issue,:user_activity_id =>@user_activity_id}) %>");
|
||||||
|
|
||||||
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%");
|
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%", "UserActivity");
|
@ -1,3 +1,3 @@
|
|||||||
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'organizations/org_project_issue', :locals => {:activity => @issue,:user_activity_id =>@user_activity_id}) %>");
|
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'organizations/org_project_issue', :locals => {:activity => @issue,:user_activity_id =>@user_activity_id}) %>");
|
||||||
|
|
||||||
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%");
|
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%", "UserActivity");
|
@ -1,2 +1,2 @@
|
|||||||
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/user_blog', :locals => {:activity => @article,:user_activity_id =>@user_activity_id}) %>");
|
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/user_blog', :locals => {:activity => @article,:user_activity_id =>@user_activity_id}) %>");
|
||||||
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%");
|
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%", "UserActivity");
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
|
|
||||||
$("#organization_document_<%= @act.id %>").replaceWith("<%= escape_javascript(render :partial => 'organizations/show_org_document', :locals => {:document => @document, :act => @act}) %>");
|
$("#organization_document_<%= @act.id %>").replaceWith("<%= escape_javascript(render :partial => 'organizations/show_org_document', :locals => {:document => @document, :act => @act}) %>");
|
||||||
init_activity_KindEditor_data(<%= @act.id %>,"","87%");
|
init_activity_KindEditor_data(<%= @act.id %>,"","87%", "<%=@act.class.to_s%>");
|
@ -1,7 +1,7 @@
|
|||||||
<% if @user_activity_id == -1 %>
|
<% if @user_activity_id == -1 %>
|
||||||
$("#homework_common_<%= @homework.id %>").replaceWith("<%= escape_javascript(render :partial => "users/user_homework_detail",:locals => {:homework_common => @homework, :is_in_course => @is_in_course})%>");
|
$("#homework_common_<%= @homework.id %>").replaceWith("<%= escape_javascript(render :partial => "users/user_homework_detail",:locals => {:homework_common => @homework, :is_in_course => @is_in_course})%>");
|
||||||
init_activity_KindEditor_data(<%= @homework.id%>,"","87%");
|
init_activity_KindEditor_data(<%= @homework.id%>,"","87%", "<%=@homework.class.to_s%>");
|
||||||
<% else %>
|
<% else %>
|
||||||
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/course_homework', :locals => {:activity => @homework,:user_activity_id =>@user_activity_id,:course_activity=>@course_activity}) %>");
|
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/course_homework', :locals => {:activity => @homework,:user_activity_id =>@user_activity_id,:course_activity=>@course_activity}) %>");
|
||||||
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%");
|
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%", "UserActivity");
|
||||||
<% end %>
|
<% end %>
|
@ -1,8 +1,8 @@
|
|||||||
clickCanel();
|
clickCanel();
|
||||||
<% if @user_activity_id %>
|
<% if @user_activity_id %>
|
||||||
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/course_homework', :locals => {:activity => @homework,:user_activity_id =>@user_activity_id}) %>");
|
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/course_homework', :locals => {:activity => @homework,:user_activity_id =>@user_activity_id}) %>");
|
||||||
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%");
|
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%", "UserActivity");
|
||||||
<% else %>
|
<% else %>
|
||||||
$("#homework_common_<%= @homework.id %>").replaceWith("<%= escape_javascript(render :partial => 'users/user_homework_detail', :locals => {:homework_common => @homework,:is_in_course => @is_in_course}) %>");
|
$("#homework_common_<%= @homework.id %>").replaceWith("<%= escape_javascript(render :partial => 'users/user_homework_detail', :locals => {:homework_common => @homework,:is_in_course => @is_in_course}) %>");
|
||||||
init_activity_KindEditor_data(<%= @homework.id%>,"","87%");
|
init_activity_KindEditor_data(<%= @homework.id%>,"","87%", "<%=@homework.class.to_s%>");
|
||||||
<% end %>
|
<% end %>
|
@ -1,7 +1,7 @@
|
|||||||
<% if @user_activity_id %>
|
<% if @user_activity_id %>
|
||||||
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/course_homework', :locals => {:activity => @homework_common,:user_activity_id =>@user_activity_id,:course_activity => @course_activity}) %>");
|
$("#user_activity_<%= @user_activity_id%>").replaceWith("<%= escape_javascript(render :partial => 'users/course_homework', :locals => {:activity => @homework_common,:user_activity_id =>@user_activity_id,:course_activity => @course_activity}) %>");
|
||||||
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%");
|
init_activity_KindEditor_data(<%= @user_activity_id%>,"","87%", "UserActivity");
|
||||||
<% elsif @homework_common_id && @is_in_course %>
|
<% elsif @homework_common_id && @is_in_course %>
|
||||||
$("#homework_common_<%= @homework_common_id %>").replaceWith("<%= escape_javascript(render :partial => 'users/user_homework_detail', :locals => {:homework_common => @homework_common,:is_in_course => @is_in_course}) %>");
|
$("#homework_common_<%= @homework_common_id %>").replaceWith("<%= escape_javascript(render :partial => 'users/user_homework_detail', :locals => {:homework_common => @homework_common,:is_in_course => @is_in_course}) %>");
|
||||||
init_activity_KindEditor_data(<%= @homework_common_id%>,"","87%");
|
init_activity_KindEditor_data(<%= @homework_common_id%>,"","87%", "HomeworkCommon");
|
||||||
<% end %>
|
<% end %>
|
||||||
|
Loading…
Reference in new issue