From 8e2cce8fd2df4c580ddec557effd1a9e2bced7df Mon Sep 17 00:00:00 2001 From: chenglong <871838921@qq.com> Date: Fri, 21 Apr 2017 20:06:54 +0800 Subject: [PATCH] =?UTF-8?q?=E9=9D=99=E6=80=81=E9=A1=B5=E9=9D=A2=E7=9A=84?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../users/_edu_user_watch_fan_list.html.erb | 8 +-- app/views/users/show.html.erb | 55 +++++++++-------- .../20170417081351_resource_bank_migration.rb | 2 +- public/images/edu_user/edu-nodata.png | Bin 0 -> 28452 bytes public/javascripts/bigdata/user.js | 31 ++++------ public/stylesheets/css/bigdata-user.css | 56 +++++++++++------- 6 files changed, 83 insertions(+), 69 deletions(-) create mode 100644 public/images/edu_user/edu-nodata.png diff --git a/app/views/users/_edu_user_watch_fan_list.html.erb b/app/views/users/_edu_user_watch_fan_list.html.erb index 7cb00b3e6..f4ed403d0 100644 --- a/app/views/users/_edu_user_watch_fan_list.html.erb +++ b/app/views/users/_edu_user_watch_fan_list.html.erb @@ -25,12 +25,12 @@
<% @user_watchlist.each do |user| %>
-
<%= link_to image_tag(url_to_avatar(user), width: "56", height: "56", :alt => "头像"), user_path(user), :target => '_blank' %>
+
<%= link_to image_tag(url_to_avatar(user), :width => "56", :height => "56", :class => "touxiang", :alt => "头像"), user_path(user), :target => '_blank', :class => "" %>
<%= link_to user.show_name, user_path(user), :target => '_blank' %>
<% end %> <% if @user_watchlist_count > 12 %> - <%= link_to '查看更多', user_watchlist_user_path(@user), :target => '_blank', :class => 'color-grey' %> + <%= link_to '查看更多', user_watchlist_user_path(@user), :target => '_blank', :class => 'color-grey many' %> <% end %>
<% end %> @@ -49,12 +49,12 @@
<% @user_fanlist.each do |user| %>
-
<%= link_to image_tag(url_to_avatar(user), width: "56", height: "56", :alt => "头像"), user_path(user), :target => '_blank' %>
+
<%= link_to image_tag(url_to_avatar(user), :width => "56", :height => "56", :class => "touxiang", :alt => "头像"), user_path(user), :target => '_blank', :class => "" %>
<%= link_to user.show_name, user_path(user), :target => '_blank' %>
<% end %> <% if @user_fanlist_count > 12 %> - <%= link_to '查看更多', user_fanslist_user_path(@user), :target => '_blank', :class => 'color-grey' %> + <%= link_to '查看更多', user_fanslist_user_path(@user), :target => '_blank', :class => 'color-grey many' %> <% end %>
<% end %> diff --git a/app/views/users/show.html.erb b/app/views/users/show.html.erb index e8a8c0749..e7af91c15 100644 --- a/app/views/users/show.html.erb +++ b/app/views/users/show.html.erb @@ -5,15 +5,19 @@
<%= image_tag(url_to_avatar(@user), :class => "person", :alt => "头像") %> <% if current_user %> -
更换头像
+
更换头像
<% end %>
-

+

<%= @user.login %> - + <% if @user.user_extensions && @user.user_extensions.gender && @user.user_extensions.gender == 1 %> + + <% else %> + + <% end %>

@@ -41,7 +45,7 @@ <% end %>

-
+
<% if current_user %>

@@ -60,13 +64,13 @@ - +

<% else %>
-

+

<%= @user.visits.to_i %> 次访问

@@ -75,7 +79,7 @@ <% if(@user.watched_by?(User.current)) %> <%= link_to "已关注", watch_path(:object_type => 'user', :object_id => @user.id, :target_id => @user.id), - :class => "fl font-14 user_watch", + :class => "fl font-14 user_watch ml30", :id => "cancel_watch", :method => "delete", :remote => "true", @@ -83,7 +87,7 @@ <% else %> <%= link_to "添加关注", watch_path(:object_type => 'user', :object_id => @user.id, :target_id => @user.id), - :class => "fl font-14 user_watch", + :class => "fl font-14 user_watch ml30", :method => "post", :remote => "true", :title => "添加关注" %> @@ -101,9 +105,9 @@
<% if current_user %> - + <% else %> -

"> +

"> <%= @user.user_extensions.brief_introduction.blank? ? "这家伙很懒,什么都没留下~" : @user.user_extensions.brief_introduction %>

<% end %> @@ -150,13 +154,16 @@
开始
-
    -
  • <%= link_to '创建课程', new_syllabus_path(:host => Setting.host_course), :target => "_blank" %>
  • -
  • <%= link_to '创建班级', new_course_path(:host => Setting.host_course), :target => "_blank" %>
  • -
  • <%= link_to "加入班级", join_private_courses_courses_path, :remote => true, :method => "post" %>
  • -
  • <%= link_to "发现实训", '', :target => "_blank" %>
  • -
  • <%= link_to '发起求助', new_forum_memo_path(:forum_id => Forum.first.id, :forum_index => true), :target => "_blank" %>
  • -
+
+
    +
  • <%= link_to '创建课程', new_syllabus_path(:host => Setting.host_course), :target => "_blank" %>
  • +
  • <%= link_to '创建班级', new_course_path(:host => Setting.host_course), :target => "_blank" %>
  • +
  • <%= link_to "加入班级", join_private_courses_courses_path, :remote => true, :method => "post" %>
  • +
  • <%= link_to "发现实训", '', :target => "_blank" %>
  • +
  • <%= link_to '发起求助', new_forum_memo_path(:forum_id => Forum.first.id, :forum_index => true), :target => "_blank" %>
  • +
+
+
<% if @courses_count == 0 && @shixuns_count == 0 %>
@@ -165,7 +172,7 @@

- +

显示你常用的课堂社区、实训社区列表

@@ -188,10 +195,10 @@
<% @courses.each do |course| %>

-   <%= course.name %> +   <%= course.name %> 课程:<%= course.syllabus.title %> 更新时间:<%= format_time course.updatetime %> - 分享 + 分享  

<% end %> <% if @courses_count > 8 %> @@ -202,9 +209,9 @@
<% @shixuns.each do |shixun| %>

-   胡莎莎/Helloword:java实训入门 +   胡莎莎/Helloword:java实训入门 已解锁第2关/共8 - 上次离开时间:2017-02-09 15:21 + 上次离开时间:2017-02-09 15:21

<% end %> @@ -226,9 +233,9 @@
- +
-
\ No newline at end of file +
diff --git a/db/migrate/20170417081351_resource_bank_migration.rb b/db/migrate/20170417081351_resource_bank_migration.rb index d76f68289..e38f54f2d 100644 --- a/db/migrate/20170417081351_resource_bank_migration.rb +++ b/db/migrate/20170417081351_resource_bank_migration.rb @@ -1,6 +1,6 @@ class ResourceBankMigration < ActiveRecord::Migration def up - #add_column :attachments, :resource_bank_id, :integer + add_column :attachments, :resource_bank_id, :integer count =Attachment.where(:container_type => 'Course').count / 30 + 2 transaction do diff --git a/public/images/edu_user/edu-nodata.png b/public/images/edu_user/edu-nodata.png new file mode 100644 index 0000000000000000000000000000000000000000..4b158a05fc77f3deed45e4275e93d4b52b963830 GIT binary patch literal 28452 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 ieg4M|BKh`Y2q