课程点击更多按钮显示

This commit is contained in:
sw 2015-08-24 14:44:22 +08:00
parent 36152d19e8
commit 2d75fea96b
7 changed files with 62 additions and 88 deletions

View File

@ -473,40 +473,15 @@ class UsersController < ApplicationController
end end
end end
#显示更多用户课程
def user_courses4show def user_courses4show
query = Course.joins("join members m on #{Course.table_name}.id=m.course_id") @page = params[:page].to_i + 1
query = query.where("m.user_id = ?",@user.id).order("#{Course.table_name}.id desc") @courses = @user.courses.visible.select("courses.*,(SELECT MAX(created_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS a").order("a desc").limit(5).offset(@page * 5)
if User.current == @user #看自己
else
if @user.user_extensions!=nil && @user.user_extensions.identity == 0 #看老师
query = query.joins("join member_roles r on m.id = r.member_id")
query = query.where("r.role_id in(3,7,9)")
end
query = query.where(Course.table_name+".is_public = 1")
end
if params[:lastid]!=nil && !params[:lastid].empty?
query = query.where(" #{Course.table_name}.id < ?",params[:lastid],)
end
@list = query.limit(8)
render :layout=>nil
end end
#显示更多用户项目
def user_projects4show def user_projects4show
query = Project.joins("join members m on #{Project.table_name}.id=m.project_id")
query = query.where("m.user_id = ? and #{Project.table_name}.project_type=?",@user.id,Project::ProjectType_project)
if User.current == @user #看自己
else
query = query.where(Project.table_name+".is_public = 1")
# TODO or exists (select 1 from project c2,members m2 where c2.id=m2.course_id and c2.id=#{Project.table_name}.id and m2.user_id= User.current.id)
end
if params[:lastid]!=nil && !params[:lastid].empty?
query = query.where("( (#{Project.table_name}.updated_on=? and #{Project.table_name}.id < ?) or #{Project.table_name}.updated_on<?)",params[:lasttime],params[:lastid],params[:lasttime])
end
@list = query.order("#{Project.table_name}.updated_on desc,#{Project.table_name}.id desc").limit(8).all
render :layout=>nil
end end
def user_course_activities def user_course_activities

View File

@ -0,0 +1,12 @@
<% courses.each do |course|%>
<li class="homepageLeftMenuCoursesLine">
<%= link_to course.name, course_path(course.id,:host=>Setting.host_course), :class => "coursesLineGrey"%>
</li>
<% end %>
<% if courses.size == 5%>
<li class="homepageLeftMenuMore" id="user_show_more_course">
<input type="hidden" value="<%= page%>" id="course_page_num">
<a href="javascript:void(0);" class="homepageLeftMenuMoreIcon" onclick="show_more_course('<%= user_courses4show_user_path(user.id)%>');"></a>
</li>
<% end%>

View File

@ -102,18 +102,7 @@
<div class="homepageLeftMenuCourses"> <div class="homepageLeftMenuCourses">
<ul> <ul>
<% courses = @user.courses.visible.select("courses.*,(SELECT MAX(created_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS a").order("a desc").limit(5)%> <% courses = @user.courses.visible.select("courses.*,(SELECT MAX(created_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS a").order("a desc").limit(5)%>
<% courses.each do |course|%> <%= render :partial => 'layouts/user_courses', :locals => {:courses => courses,:user => @user, :page => 0} %>
<li class="homepageLeftMenuCoursesLine">
<a href="<%= url_for(:controller => 'courses', :action=>"show", :id=>course.id, :host=>Setting.host_course) %>" class="coursesLineGrey">
<%= course.name %>
</a>
</li>
<% end %>
<% if courses.size == 5%>
<li class="homepageLeftMenuMore">
<a href="javascript:void(0);" class="homepageLeftMenuMoreIcon"></a>
</li>
<% end%>
</ul> </ul>
</div> </div>
<div class="homepageLeftMenuBlock"> <div class="homepageLeftMenuBlock">
@ -124,19 +113,13 @@
</div> </div>
<div class="homepageLeftMenuCourses"> <div class="homepageLeftMenuCourses">
<ul> <ul>
<% projects = @user.projects.visible.select("projects.*,(SELECT MAX(created_at) FROM `forge_activities` WHERE forge_activities.project_id = projects.id) AS a").order("a desc").limit(5)%> <%# projects = @user.projects.visible.select("projects.*,(SELECT MAX(created_at) FROM `forge_activities` WHERE forge_activities.project_id = projects.id) AS a").order("a desc").limit(5)%>
<% projects.each do |project|%> <%#= render :partial => 'layouts/user_item', :locals => {:items => courses,:is_course => false} %>
<li class="homepageLeftMenuCoursesLine"> <%# if projects.size == 5%>
<a href="<%= url_for(:controller => 'projects', :action=>"show", :id=>project.id, :host=>Setting.host_name) %>" class="coursesLineGrey"> <!--li class="homepageLeftMenuMore" id="user_show_more_project">
<%= project.name %> <a href="javascript:void(0);" class="homepageLeftMenuMoreIcon" onclick="show_more_project();"></a>
</a> </li-->
</li> <%# end%>
<% end %>
<% if projects.size == 5%>
<li class="homepageLeftMenuMore">
<a href="javascript:void(0);" class="homepageLeftMenuMoreIcon"></a>
</li>
<% end%>
</ul> </ul>
</div> </div>
<div class="homepageLeftMenuBlock"> <div class="homepageLeftMenuBlock">

View File

@ -1,16 +0,0 @@
<% for item in @list %>
<div class="home_courses_list fl" nhname="rec" data-id="<%= item.id %>" data-time="<%= item.updated_at %>">
<div class="courses_list_pic fl ml10 mr10">
<a href="<%= url_for(:controller => 'courses', :action=>"show", :id=>item.id, :host=>Setting.host_course) %>"><%= image_tag(url_to_avatar(item), :style => 'width:64px;height:64px;') %></a>
</div>
<span class="fl" style="width:260px;">
<a href="<%= url_for(:controller => 'courses', :action=>"show", :id=>item.id, :host=>Setting.host_course) %>" class="home_list_title c_blue02 fl mb10" title="<%= item.name %>"><%= item.name %></a>
</span>
<div class="fl c_dgrey">
<p>主讲老师:<a href="<%= user_path(item.teacher) %>" title="<%= item.teacher.show_name %>"><%= item.teacher.show_name %></a></p>
<p>课程作业:<a href="<%=url_for(:controller => 'homework_common', :action => 'index',:course=>item.id, :host=>Setting.host_course)%>"><%= item.homework_commons.count %></a> <span class="ml10"></span>学生:<a href="<%= url_for(:controller => 'courses', :action=>"member", :id=>item.id,:role=>2, :host=>Setting.host_course) %>"><%= studentCount(item) %></a></p>
</div>
<div class="cl"></div>
</div>
<% end %>

View File

@ -0,0 +1 @@
$("#user_show_more_course").replaceWith("<%= escape_javascript( render :partial => 'layouts/user_courses',:locals => {:courses => @courses,:user => @user, :page => @page} )%>");

View File

@ -1,6 +1,4 @@
$(function(){ $(function(){
$("#RSide").css("min-height",$("#LSide").height()-40).css("padding","10px");
//头像相关 //头像相关
$("#homepage_portrait_image").live("mouseover",function(){ $("#homepage_portrait_image").live("mouseover",function(){
$("#edit_user_file_btn").show(); $("#edit_user_file_btn").show();
@ -29,18 +27,39 @@ function edit_user_introduction(url){
); );
} }
$(function(){ //显示更多的课程
$(".newsType").mouseover(function(){ function show_more_course(url){
$(".resourcesIcon").css({background:"url(images/resource_icon_list.png) 0px -25px no-repeat"}); $.get(
}); url,
$(".newsType").mouseout(function(){ { page: $("#course_page_num").val() },
$(".resourcesIcon").css({background:"url(images/resource_icon_list.png) 0px 0px no-repeat"}); function (data) {
}); }
$(".resourcesSelected").mouseover(function(){ );
$(".resourcesIcon").css({background:"url(images/resource_icon_list.png) 0px -25px no-repeat"}); }
});
$(".resourcesSelected").mouseout(function(){ //显示更多的项目
$(".resourcesIcon").css({background:"url(images/resource_icon_list.png) 0px 0px no-repeat"}); function show_more_project(url){
}); $.get(
}); url,
{ brief_introduction: $("#user_brief_introduction_edit").val() },
function (data) {
}
);
}
//
//$(function(){
// $(".newsType").mouseover(function(){
// $(".resourcesIcon").css({background:"url(images/resource_icon_list.png) 0px -25px no-repeat"});
// });
// $(".newsType").mouseout(function(){
// $(".resourcesIcon").css({background:"url(images/resource_icon_list.png) 0px 0px no-repeat"});
// });
// $(".resourcesSelected").mouseover(function(){
// $(".resourcesIcon").css({background:"url(images/resource_icon_list.png) 0px -25px no-repeat"});
// });
// $(".resourcesSelected").mouseout(function(){
// $(".resourcesIcon").css({background:"url(images/resource_icon_list.png) 0px 0px no-repeat"});
// });
//});
//个人动态 end //个人动态 end

View File

@ -415,7 +415,7 @@ a.homepageSearchIcon:hover {background:url(../images/nav_icon.png) -49px 3px no-
.homepageImageSexWomen {width: 20px;height: 20px;background: url(../images/homepage_icon.png) -10px -149px no-repeat;float: left;} .homepageImageSexWomen {width: 20px;height: 20px;background: url(../images/homepage_icon.png) -10px -149px no-repeat;float: left;}
.homepageSignatureTextarea {width:207px; height:80px; max-width:207px; max-height:80px; border:1px solid #d9d9d9; outline:none; margin:0px 0px 12px 15px;;} .homepageSignatureTextarea {width:207px; height:80px; max-width:207px; max-height:80px; border:1px solid #d9d9d9; outline:none; margin:0px 0px 12px 15px;;}
.homepageSignature {font-size:12px; color:#888888; margin-left:15px; margin-top:10px; margin-bottom:12px; width:208px;} .homepageSignature {font-size:12px; color:#888888; margin-left:15px; margin-top:10px; margin-bottom:12px; width:208px;}
.homepageImageBlock {margin:0 auto; width:78px; float:left; text-align:center; display:inline-block;} .homepageImageBlock {margin:0 auto; width:75px; float:left; text-align:center; display:inline-block;}
.homepageImageNumber {font-size:12px; color:#484848;} .homepageImageNumber {font-size:12px; color:#484848;}
a.homepageImageNumber:hover {color:#15bccf;} a.homepageImageNumber:hover {color:#15bccf;}
.homepageImageText {font-size:12px; color:#888888;} .homepageImageText {font-size:12px; color:#888888;}