diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 9887fd1ab..8d131fd4e 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -1451,26 +1451,14 @@ class UsersController < ApplicationController #显示更多用户课程 def user_courses4show @page = params[:page].to_i + 1 - @type = params[:type] - if @type == 'User' - @courses = @user.courses.visible.where("is_delete =?", 0).select("courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS a").order("a desc").limit(5).offset(@page * 5) - @all_count = @user.courses.visible.where("is_delete =?", 0).count - elsif @type == 'Syllabus' - @syllabus = Syllabus.where("id = #{params[:syllabus]}").first - if User.current == @syllabus.user || User.current.admin? - all_courses = @syllabus.courses.where("is_delete = 0").select("courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS a").order("a desc") - else - all_courses = User.current.courses.visible.where("is_delete =? and syllabus_id =?", 0, @syllabus.id).select("courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS a").order("a desc") - end - @courses = all_courses.limit(5).offset(@page * 5) - @all_count = all_courses.count - end + @courses = @user.courses.visible.where("is_delete =?", 0).select("courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS a").order("a desc").limit(10).offset(@page * 10) + @all_count = @user.courses.visible.where("is_delete =?", 0).count end #显示更多用户项目 def user_projects4show @page = params[:page].to_i + 1 - @projects = @user.projects.visible.select("projects.*,(SELECT MAX(updated_at) FROM `forge_activities` WHERE forge_activities.project_id = projects.id) AS a").order("a desc").limit(5).offset(@page * 5) + @projects = @user.projects.visible.select("projects.*,(SELECT MAX(updated_at) FROM `forge_activities` WHERE forge_activities.project_id = projects.id) AS a").order("a desc").limit(10).offset(@page * 10) end def user_course_activities @@ -3254,6 +3242,7 @@ class UsersController < ApplicationController @join_syllabuses = syllabus_course_list_sort @join_syllabuses @my_syllabuses = @my_syllabuses.sort{|x,y| y[:last_update] <=> x[:last_update]} @join_syllabuses = @join_syllabuses.sort{|x,y| y[:last_update] <=> x[:last_update]} + @is_course = 1 #分页 # @limit = 10 @@ -3363,6 +3352,7 @@ class UsersController < ApplicationController @atta_pages = Paginator.new @atta_count, @limit, params['page'] || 1 @offset ||= @atta_pages.offset @projects = paginateHelper @projects,@limit + @is_project = 1 respond_to do |format| format.js diff --git a/app/views/layouts/_user_brief_introduction.html.erb b/app/views/layouts/_user_brief_introduction.html.erb index 4b2645129..fac5177a3 100644 --- a/app/views/layouts/_user_brief_introduction.html.erb +++ b/app/views/layouts/_user_brief_introduction.html.erb @@ -2,7 +2,7 @@ <% if user.user_extensions && user.user_extensions.brief_introduction && !user.user_extensions.brief_introduction.empty? %> <%= user.user_extensions.brief_introduction %> <% else%> - 这位童鞋很懒,什么也没有留下~ + 这个小伙伴很懒,什么都没留下~ <% end %> <% if User.current == user%> diff --git a/app/views/layouts/_user_courses.html.erb b/app/views/layouts/_user_courses.html.erb index 31f06689d..eb8dc80b8 100644 --- a/app/views/layouts/_user_courses.html.erb +++ b/app/views/layouts/_user_courses.html.erb @@ -1,8 +1,9 @@ <% courses.each do |course|%> -
  • +
  • + <% is_teacher = User.current.logged? && (User.current.admin? || User.current.allowed_to?(:as_teacher,course)) %> - <%= link_to course.name+"("+current_time_and_term_short(course)+")", course_path(course.id,:host=>Setting.host_course), :class => "coursesLineGrey hidden #{course_endTime_timeout?(course) ? 'c_dark_grey' : ''}", - :id => "show_course_#{course.id}", :target => '_blank', :title => (course.is_public? ? "公开班级:":"私有班级:")+course.name+"("+current_time_and_term(course)+")"%> + <%= link_to course.name+"("+current_time_and_term_short(course)+")", course_path(course.id,:host=>Setting.host_course), + :id => "show_course_#{course.id}", :class => 'course_list_menu hidden', :target => '_blank', :title => (course.is_public? ? "公开班级:":"私有班级:")+course.name+"("+current_time_and_term(course)+")"%> <% count = ShieldActivity.where("container_type='User' and container_id=#{user.id} and shield_type='Course' and shield_id=#{course.id}").count %> <% wechat_count = ShieldWechatMessage.where("container_type='User' and container_id=#{user.id} and shield_type='Course' and shield_id=#{course.id}").count %> @@ -47,7 +48,7 @@ <%= link_to "+",course_boards_path(course, :flag => true, :is_new => 1), :class => 'fr fb', :title => '发布帖子',:target => '_blank' %>
  • - <% if type=='User' && !course.syllabus.nil? %> + <% if !course.syllabus.nil? %> <% end %> -<% if all_count > (page.to_i+1) * 5%> -
  • - - -
  • +<% if all_count > (page.to_i+1) * 10%> +
  • + + +
  • <% end%> diff --git a/app/views/users/user_courses4show.js.erb b/app/views/users/user_courses4show.js.erb index fddbcf032..3a99dc484 100644 --- a/app/views/users/user_courses4show.js.erb +++ b/app/views/users/user_courses4show.js.erb @@ -1 +1 @@ -$("#user_show_more_course").replaceWith("<%= escape_javascript( render :partial => 'layouts/user_courses',:locals => {:courses => @courses,:user => @user,:type=>@type,:page => @page, :all_count => @all_count} )%>"); +$("#user_show_more_course").replaceWith("<%= escape_javascript( render :partial => 'layouts/user_courses',:locals => {:courses => @courses,:user => @user,:page => @page, :all_count => @all_count} )%>"); diff --git a/public/images/user/female.jpg b/public/images/user/female.jpg new file mode 100644 index 000000000..219865572 Binary files /dev/null and b/public/images/user/female.jpg differ diff --git a/public/images/user/icons_user_leftnav.png b/public/images/user/icons_user_leftnav.png new file mode 100644 index 000000000..2fc6404b6 Binary files /dev/null and b/public/images/user/icons_user_leftnav.png differ diff --git a/public/images/user/male.jpg b/public/images/user/male.jpg new file mode 100644 index 000000000..46d58f26e Binary files /dev/null and b/public/images/user/male.jpg differ diff --git a/public/images/user/user_bg_info.jpg b/public/images/user/user_bg_info.jpg new file mode 100644 index 000000000..00bb9351c Binary files /dev/null and b/public/images/user/user_bg_info.jpg differ diff --git a/public/stylesheets/css/structure.css b/public/stylesheets/css/structure.css index fa55e1282..65909f7be 100644 --- a/public/stylesheets/css/structure.css +++ b/public/stylesheets/css/structure.css @@ -477,3 +477,150 @@ a.f_grey:hover {color:#000000;} .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;} + +/* 个人主页左侧信息 */ +.user_leftinfo{ width:238px;border:1px solid #e5e5e5; background:#fff url(/images/user/user_bg_info.jpg) 0 0 no-repeat; position:relative; } +a.user_leftinfo_img { display:block; width:80px; height:80px; margin:15px auto;} +.user_leftinfo_img img{ width:74px; height:74px;-webkit-border-radius:50px;-moz-border-radius:50px;-o-border-radius:50px;border-radius:50px; border:3px solid #dcdcdc; } +.user_leftinfo_female{ display:block; width:20px; height:20px;background:url(/images/user/icons_user_leftnav.png) 5px -378px no-repeat; position:absolute; top:80px; left:160px;} +.user_leftinfo_male{ display:block; width:20px; height:20px;background:url(/images/user/icons_user_leftnav.png) -25px -378px no-repeat; position:absolute; top:80px; left:160px;} +.user_leftinfo_namebox{ text-align:center; height:16px; line-height:16px; } +.user_leftinfo_name{ display: inline-block; max-width:160px; font-size:14px; font-weight:bold; overflow:hidden;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; } +.user_leftinfo_namebox a{ color: #333;} +.user_leftinfo_namebox a:hover{ color:#3b94d6;} +.user_cirbtn_yellow{ color:#fff; background:#ffb400; padding:0 5px;-webkit-border-radius:10px;-moz-border-radius:10px;-o-border-radius:10px;border-radius:10px; line-height:16px; } +.user_info_inner{ width:210px; margin:0 15px 15px;} +.user_atten li{ width:68px; float:left; border-right:1px solid #e5e5e5; text-align:center; font-size:14px;} +.user_atten li:last-child{ border:none;} +.user_info_intro{ margin:10px auto; width:210px; color:#888;} +.user_atten li a{ color:#333;} +.user_atten li a:hover{ color:#3b94d6;} + +/* 个人主页左侧导航 */ +.user_leftnav{ width:240px;} +.users_accordion li > a { + display: block; + padding: 0 10px 0 32px; + height:49px; + line-height:49px; + color: #333; + font-size:16px; + background: #f8f8f8; + border:1px solid #e5e5e5; + border-bottom:none; +} +.users_accordion > li:hover > a{ + color: #3b94d6; + background: #fff; +} +.users_accordion > li:target > a, +.users_accordion > li > a.active { + color: #3b94d6; + background: #fff; + border:1px solid #e5e5e5; + border-left:3px solid #3b94d6; + border-bottom:none; +} +.users_accordion li{ position:relative;} + +.users_accordion li > a span { + margin-top:15px; + font-size:12px; + padding: 0 10px; + background: #dbdbdb; + -webkit-border-radius: 15px; + -moz-border-radius: 15px; + border-radius: 15px; + margin-left:10px; + color: #333; +} +.users_accordion > li:hover > a span, +.users_accordion > li:target > a span, +.users_accordion > li > a.active span { + margin-left:10px; + color: #333; + background: #dbdbdb; +} +/* Images */ +.users_accordion > li > a:before { + position: absolute; + top: 0; + left: 0; + content: ''; + width: 24px; + height: 50px; + margin: 4px 8px; + background-repeat: no-repeat; + background-image:url(/images/user/icons_user_leftnav.png); + background-position: 5px 15px; +} +.users_accordion li.user_icons_course > a:before { background-position: 5px 15px; } +.users_accordion li.user_icons_course:hover > a:before, +.users_accordion li.user_icons_course:target > a:before, +.users_accordion li.user_icons_course > a.active:before { background-position: -25px 15px; } +.users_accordion li.user_icons_new > a:before { background-position: 5px -48px; } +.users_accordion li.user_icons_new:hover > a:before, +.users_accordion li.user_icons_new:target > a:before, +.users_accordion li.user_icons_new > a.active:before { background-position: -25px -48px; } +.users_accordion li.user_icons_addclass > a:before { background-position: 5px -87px; } +.users_accordion li.user_icons_addclass:hover > a:before, +.users_accordion li.user_icons_addclass:target > a:before, +.users_accordion li.user_icons_addclass > a.active:before { background-position: -25px -87px; } +.users_accordion li.user_icons_myhw > a:before { background-position: 5px -124px; } +.users_accordion li.user_icons_myhw:hover > a:before, +.users_accordion li.user_icons_myhw:target > a:before, +.users_accordion li.user_icons_myhw > a.active:before { background-position: -25px -124px; } +.users_accordion li.user_icons_project > a:before { background-position: 5px -167px; } +.users_accordion li.user_icons_project:hover > a:before, +.users_accordion li.user_icons_project:target > a:before, +.users_accordion li.user_icons_project > a.active:before { background-position: -25px -167px; } +.users_accordion li.user_icons_addproject > a:before { background-position: 5px -205px; } +.users_accordion li.user_icons_addproject:hover > a:before, +.users_accordion li.user_icons_addproject:target > a:before, +.users_accordion li.user_icons_addproject > a.active:before { background-position: -25px -205px; } +.users_accordion li.user_icons_myissues > a:before { background-position: 5px -246px; } +.users_accordion li.user_icons_myissues:hover > a:before, +.users_accordion li.user_icons_myissues:target > a:before, +.users_accordion li.user_icons_myissues > a.active:before { background-position: -25px -246px; } +.users_accordion li.user_icons_mes > a:before { background-position: 5px -289px; } +.users_accordion li.user_icons_mes:hover > a:before, +.users_accordion li.user_icons_mes:target > a:before, +.users_accordion li.user_icons_mes > a.active:before { background-position: -25px -289px; } +/* Sub Menu */ +.sub-menu li a { + color: #797979; + background: #f8f8f8; + height:39px; + line-height:39px; + font-size:14px; +} +.sub-menu li a:hover,.sub-menu li a:target { background:#fff; color:#3b94d6;} +.sub-menu li:last-child a { } +.users_accordion li > .sub-menu { + display: none; +} + +.users_accordion li:target > .sub-menu { + display: block; +} +.sub-menu > li > span.user_icons_class { + padding:0; + border:none; + display:block; + position: absolute; + top:18px; + left:10px; + width:20px; + height:20px; + background:url(/images/user/icons_user_leftnav.png) 0px -34px no-repeat; +} +.sub-menu > li > a > span.user_icons_moreclass{ + display:block; + position: absolute; + top:3px; + left:96px; + width:20px; + height:10px; + background:url(/images/user/icons_user_leftnav.png) 5px -347px no-repeat; +} +a.user_editinfo{border-top:1px solid #e5e5e5; height:30px; line-height:30px; text-align:center; color:#3b94d6; width:100%; display:inline-block;} \ No newline at end of file