From 7399e1aca298f5438601521d770ddbcc472a56d4 Mon Sep 17 00:00:00 2001 From: z9hang Date: Thu, 26 Jun 2014 15:05:24 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E4=B8=AA=E4=BA=BA=E5=BE=97=E5=88=86=E7=BB=9F=E8=AE=A1=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/changeset.rb | 4 +- .../20140618105213_migrate_course_students.rb | 2 +- db/schema.rb | 57 ++++++-- lib/tasks/userscore.rake | 138 +++++++++++++++++- 4 files changed, 183 insertions(+), 18 deletions(-) diff --git a/app/models/changeset.rb b/app/models/changeset.rb index 6763963c4..a56dee691 100644 --- a/app/models/changeset.rb +++ b/app/models/changeset.rb @@ -98,7 +98,9 @@ class Changeset < ActiveRecord::Base end def project - repository.project + unless repository.nil? + repository.project + end end def author diff --git a/db/migrate/20140618105213_migrate_course_students.rb b/db/migrate/20140618105213_migrate_course_students.rb index b9ac66714..ef037682a 100644 --- a/db/migrate/20140618105213_migrate_course_students.rb +++ b/db/migrate/20140618105213_migrate_course_students.rb @@ -3,7 +3,7 @@ class MigrateCourseStudents < ActiveRecord::Migration # 原课程的学生数据迁移成新模式 StudentsForCourse.all.each do |student| project = Project.find_by_id(student.course_id) - if project + if project && project.course_extra student.course_id = project.course_extra.id student.save end diff --git a/db/schema.rb b/db/schema.rb index 63020ad61..0bb488958 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended to check this file into your version control system. -ActiveRecord::Schema.define(:version => 20140618020535) do +ActiveRecord::Schema.define(:version => 20140617013146) do create_table "activities", :force => true do |t| t.integer "act_id", :null => false @@ -117,6 +117,7 @@ ActiveRecord::Schema.define(:version => 20140618020535) do t.integer "messages_count", :default => 0, :null => false t.integer "last_message_id" t.integer "parent_id" + t.integer "course_id" end add_index "boards", ["last_message_id"], :name => "index_boards_on_last_message_id" @@ -229,6 +230,23 @@ ActiveRecord::Schema.define(:version => 20140618020535) do t.datetime "updated_on", :null => false end + create_table "course_infos", :force => true do |t| + t.integer "course_id" + t.integer "user_id" + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + end + + create_table "course_statuses", :force => true do |t| + t.integer "changesets_count" + t.integer "watchers_count" + t.integer "course_id" + t.float "grade", :default => 0.0 + t.integer "course_ac_para", :default => 0 + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + end + create_table "courses", :force => true do |t| t.integer "tea_id" t.string "name" @@ -236,8 +254,8 @@ ActiveRecord::Schema.define(:version => 20140618020535) do t.string "code" t.integer "time" t.string "extra" - t.datetime "created_at", :null => false - t.datetime "updated_at", :null => false + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false t.string "location" t.string "term" t.string "string" @@ -246,6 +264,13 @@ ActiveRecord::Schema.define(:version => 20140618020535) do t.string "endup_time" t.string "class_period" t.integer "school_id" + t.text "description" + t.integer "status", :default => 1 + t.integer "attachmenttype", :default => 2 + t.integer "lft" + t.integer "rgt" + t.integer "is_public", :limit => 1, :default => 1 + t.integer "inherit_members", :limit => 1, :default => 1 end create_table "custom_fields", :force => true do |t| @@ -309,6 +334,7 @@ ActiveRecord::Schema.define(:version => 20140618020535) do create_table "enabled_modules", :force => true do |t| t.integer "project_id" t.string "name", :null => false + t.integer "course_id" end add_index "enabled_modules", ["project_id"], :name => "enabled_modules_project_id" @@ -348,17 +374,16 @@ ActiveRecord::Schema.define(:version => 20140618020535) do create_table "homework_attaches", :force => true do |t| t.integer "bid_id" t.integer "user_id" - t.datetime "created_at", :null => false - t.datetime "updated_at", :null => false + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false t.string "reward" t.string "name" t.string "description" t.integer "state" - t.integer "project_id", :default => 0 end create_table "homework_for_courses", :force => true do |t| - t.integer "project_id" + t.integer "course_id" t.integer "bid_id" end @@ -513,13 +538,14 @@ ActiveRecord::Schema.define(:version => 20140618020535) do create_table "members", :force => true do |t| t.integer "user_id", :default => 0, :null => false - t.integer "project_id", :default => 0, :null => false + t.integer "project_id", :default => 0 t.datetime "created_on" t.boolean "mail_notification", :default => false, :null => false + t.integer "course_id", :default => -1 end add_index "members", ["project_id"], :name => "index_members_on_project_id" - add_index "members", ["user_id", "project_id"], :name => "index_members_on_user_id_and_project_id", :unique => true + add_index "members", ["user_id", "project_id", "course_id"], :name => "index_members_on_user_id_and_project_id", :unique => true add_index "members", ["user_id"], :name => "index_members_on_user_id" create_table "memos", :force => true do |t| @@ -565,6 +591,7 @@ ActiveRecord::Schema.define(:version => 20140618020535) do t.integer "author_id", :default => 0, :null => false t.datetime "created_on" t.integer "comments_count", :default => 0, :null => false + t.integer "course_id" end add_index "news", ["author_id"], :name => "index_news_on_author_id" @@ -961,11 +988,13 @@ ActiveRecord::Schema.define(:version => 20140618020535) do end create_table "user_scores", :force => true do |t| - t.integer "user_id" - t.integer "collaboration" - t.integer "influence" - t.integer "skill" - t.integer "activity" + t.integer "user_id", :null => false + t.integer "collaboration" + t.integer "influence" + t.integer "skill" + t.integer "active" + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false end create_table "user_statuses", :force => true do |t| diff --git a/lib/tasks/userscore.rake b/lib/tasks/userscore.rake index 7bfec13b4..ab6e38abe 100644 --- a/lib/tasks/userscore.rake +++ b/lib/tasks/userscore.rake @@ -11,21 +11,48 @@ namespace :user_score do puts "loading..." # collaboration 协同得分 users = {} + grades = {} # 发帖 Message.includes(:author).where("parent_id IS NULL").all.each do |m| users[m.author.id] = users[m.author.id].to_i + 2 + project = m.project + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(m.author.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id => m.author.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i + 2 + end + end puts ":post_message calculate Completed. collaboration users count: #{users.count}" # 对缺陷的留言 Journal.includes(:user).all.each do |j| users[j.user.id] = users[j.user.id].to_i + 1 + project = j.project + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(j.user.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id => j.user.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i + 1 + end end puts ":post_issue_message calculate Completed. collaboration users count: #{users.count}" # 更改一次缺陷状态 Journal.joins(:details, :user).where("#{JournalDetail.table_name}.prop_key = 'status_id'").each do |j| users[j.user.id] = users[j.user.id].to_i + 1 + project = j.project + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(j.user.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id => j.user.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i + 1 + end + end puts ":change_issue_status calculate Completed. collaboration users count: #{users.count}" @@ -38,6 +65,14 @@ namespace :user_score do # 对帖子的回复 Message.includes(:author).where("parent_id IS NOT NULL").each do |m| users[m.author.id] = users[m.author.id].to_i + 1 + project = m.project + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(m.author.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id =>m.author.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i + 1 + end end puts ":reply_posting calculate Completed. collaboration users count: #{users.count}" @@ -76,24 +111,74 @@ namespace :user_score do end target_user = obj.author level = UserLevels.get_level(pt.user)#pt.user.get_level + project = pt.project if pt.praise_or_tread == 0 #踩帖 users_skill[pt.user.id] = users_skill[pt.user.id].to_i - 2 #踩别人帖-2分 + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(pt.user.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id =>pt.user.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i - 2 + end if level == 1 users_skill[target_user.id] = users_skill[target_user.id].to_i - 2 #帖子被一级会员踩-2分 add praise_tread + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(target_user.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id =>target_user.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i - 2 + end elsif level == 2 users_skill[target_user.id] = users_skill[target_user.id].to_i - 4 #帖子被二级会员踩-4分 add praise_tread + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(target_user.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id =>target_user.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i - 4 + end elsif level == 3 users_skill[target_user.id] = users_skill[target_user.id].to_i - 6 #帖子被三级会员踩-6分 add praise_tread + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(target_user.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id =>target_user.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i - 6 + end end elsif pt.praise_or_tread == 1 #顶贴 if level == 1 users_skill[target_user.id] = users_skill[target_user.id].to_i + 4 #帖子被一级会员顶+4分 add praise_tread + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(target_user.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id =>target_user.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i + 4 + end elsif level == 2 users_skill[target_user.id] = users_skill[target_user.id].to_i + 6 #帖子被二级会员顶+6分 add praise_tread + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(target_user.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id =>target_user.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i + 6 + end elsif level == 3 users_skill[target_user.id] = users_skill[target_user.id].to_i + 8 #帖子被三级会员顶+8分 add praise_tread + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(target_user.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id =>target_user.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i + 8 + end end end end @@ -114,6 +199,14 @@ namespace :user_score do next end users_active[changeset.user.id] = users_active[changeset.user.id].to_i + 4 + project = changeset.project + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(changeset.user.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id =>changeset.user.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i + 4 + end end puts ":push_code calculate Completed. active users count: #{users_active.count}" #提交文档 @@ -122,6 +215,14 @@ namespace :user_score do next end users_active[document.user.id] = users_active[document.user.id].to_i + 4 + project = document.project + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(document.user.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id =>document.user.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i + 4 + end end puts ":push_document calculate Completed. active users count: #{users_active.count}" #提交附件 @@ -134,6 +235,17 @@ namespace :user_score do next end users_active[attachment.author.id] = users_active[attachment.author.id].to_i + 4 + if attachment.container.class.to_s == "Project" + project = attachment.project + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(attachment.author.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id =>attachment.author.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i + 4 + end + end + # end #end end @@ -141,11 +253,27 @@ namespace :user_score do #更新完成度 Journal.joins(:details, :user).where("#{JournalDetail.table_name}.prop_key = 'done_ratio'").each do |j| users_active[j.user.id] = users_active[j.user.id].to_i + 2 + project = j.project + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(j.user.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id =>j.user.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i + 4 + end end puts ":update_issue_ratio calculate Completed. active users count: #{users_active.count}" #发布缺陷 Issue.includes(:author).all.each do |issue| users_active[issue.author.id] = users_active[issue.author.id].to_i + 4 + project = issue.project + unless project.nil? + user_grade = UserGrade.find_by_user_id_and_project_id(issue.author.id, project.id) + if user_grade.nil? + user_grade = UserGrade.create(:user_id =>issue.author.id, :project_id => project.id) + end + grades[user_grade.id] = grades[user_grade.id].to_i + 4 + end end puts ":post_issue calculate Completed. active users count: #{users_active.count}" @@ -156,8 +284,14 @@ namespace :user_score do end end puts "=== UserScore#active calculate Completed. active users count: #{users_active.count}" - puts "" - + UserGrade.transaction do + grades.each do |grade_id,score| + grade = UserGrade.find(grade_id) + grade.grade = score + grade.save + end + end + puts "=== UserGrid calculate Completed. UserGrids count: #{grades.count}" end end From 38baa247bfd409e73fca9b12eb9a44c98305b34c Mon Sep 17 00:00:00 2001 From: nwb Date: Thu, 26 Jun 2014 17:47:27 +0800 Subject: [PATCH 2/3] =?UTF-8?q?BUG=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/attachments_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/attachments_controller.rb b/app/controllers/attachments_controller.rb index d52f72d3c..5dbb4f2bb 100644 --- a/app/controllers/attachments_controller.rb +++ b/app/controllers/attachments_controller.rb @@ -120,7 +120,7 @@ class AttachmentsController < ApplicationController end if @attachment.container # Make sure association callbacks are called - @attachment.container.def attachments.delete(@attachment) + @attachment.container.attachments.delete(@attachment) else @attachment.destroy end From 74603e1256ccfa2ec2b733ad5e84a969fd33b322 Mon Sep 17 00:00:00 2001 From: z9hang Date: Thu, 26 Jun 2014 17:55:01 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E7=9B=B4=E6=8E=A5?= =?UTF-8?q?=E8=AE=BF=E9=97=AEajax=E9=93=BE=E6=8E=A5=E5=9C=B0=E5=9D=80?= =?UTF-8?q?=E6=8A=A5=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/projects_controller.rb | 6 +- app/controllers/users_controller.rb | 4 +- .../projects/_show_projects_score.html.erb | 2 +- .../projects/show_projects_score.html.erb | 97 +++++++++++++++++++ app/views/users/show_new_score.html.erb | 91 +++++++++++++++++ 5 files changed, 195 insertions(+), 5 deletions(-) create mode 100644 app/views/projects/show_projects_score.html.erb create mode 100644 app/views/users/show_new_score.html.erb diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb index 8c27068fc..b357ac44f 100644 --- a/app/controllers/projects_controller.rb +++ b/app/controllers/projects_controller.rb @@ -918,11 +918,13 @@ class ProjectsController < ApplicationController # added by bai def show_projects_score - + render :layout => false end def issue_score_index - + respond_to do |format| + format.js + end end def news_score_index diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 4995c885f..f78112c21 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -94,11 +94,11 @@ class UsersController < ApplicationController # added by bai def show_score - + end def show_new_score - + render :layout => false end # end diff --git a/app/views/projects/_show_projects_score.html.erb b/app/views/projects/_show_projects_score.html.erb index e9b21e571..d135cfbdb 100644 --- a/app/views/projects/_show_projects_score.html.erb +++ b/app/views/projects/_show_projects_score.html.erb @@ -28,7 +28,7 @@

<%= l(:label_projects_score) %>

- +
<%= image_tag(url_to_avatar(@project), :class => 'avatar2') %> diff --git a/app/views/projects/show_projects_score.html.erb b/app/views/projects/show_projects_score.html.erb new file mode 100644 index 000000000..95a7085d4 --- /dev/null +++ b/app/views/projects/show_projects_score.html.erb @@ -0,0 +1,97 @@ + +<% issue_count = @project.issues.count %> +<% issue_journal_count = @project.issue_changes.count %> +<% issue_score = issue_count * 0.2 %> +<% issue_journal_score = issue_journal_count * 0.1 %> +<% finall_issue_score = issue_score + issue_journal_score %> + +<% new_count = @project.news.count %> +<% new_score = new_count * 0.1 %> +<% finall_new_score = new_score %> + +<% document_count = @project.documents.count %> +<% file_score = document_count * 0.1 %> +<% finall_file_score = file_score %> + +<% changeset_count = @project.changesets.count %> +<% code_submit_score = changeset_count * 0.3 %> +<% finall_code_submit_score = code_submit_score %> + +<% board_message_count = 0 %> +<% @project.boards.each do |board| %> + <% board_message_count += board.messages_count %> +<% end %> +<% topic_score = board_message_count * 0.1 %> +<% finall_topic_score = topic_score %> + +<% finall_project_score = finall_issue_score + finall_new_score + finall_file_score + finall_code_submit_score + topic_score %> + + + <%= h html_title %> + + + <%= csrf_meta_tag %> + <%= favicon %> + <%= stylesheet_link_tag 'jquery/jquery-ui-1.9.2', 'application', 'nyan', :media => 'all' %> + <%= stylesheet_link_tag 'rtl', :media => 'all' if l(:direction) == 'rtl' %> + <%= javascript_heads %> + <%= heads_for_theme %> + <%= hubspot_head %> + <%= call_hook :view_layouts_base_html_head %> + + <%= yield :header_tags -%> + + +

<%= l(:label_projects_score) %>

+
+ + + + + + +
<%= image_tag(url_to_avatar(@project), :class => 'avatar2') %> + + + +
<%= @project.name %>
+
+ + + +
<%= l(:label_projects_score) %>
<%= format("%.2f" , finall_project_score ).to_f %>
+
+
+ +
+
    +
  • + <%= link_to l(:label_projects_score), {:controller => 'projects', :action => 'show_projects_score', :remote => true}%> : + <%= format("%.2f" , finall_project_score ).to_f %> +
  • +
  • + <%= link_to l(:label_issue_score), {:controller => 'projects', :action => 'issue_score_index', :remote => true}%> : + <%= format("%.2f" , finall_issue_score).to_f %> +
  • +
  • + <%= link_to l(:label_news_score), {:controller => 'projects', :action => 'news_score_index', :remote => true}%> : + <%= format("%.2f" , finall_new_score).to_f %> +
  • +
  • + <%= link_to l(:label_file_score), {:controller => 'projects', :action => 'file_score_index', :remote => true}%> : + <%= format("%.2f" , finall_file_score).to_f %> +
  • +
  • + <%= link_to l(:label_code_submit_score), {:controller => 'projects', :action => 'code_submit_score_index', :remote => true}%> : + <%= format("%.2f" , finall_code_submit_score).to_f %> +
  • +
  • + <%= link_to l(:label_topic_score), {:controller => 'projects', :action => 'projects_topic_score_index', :remote => true}%> : + <%= format("%.2f" , finall_topic_score).to_f %> +
  • +
+
+
+ <%= render :partial => 'projects/project_score_index', :locals => {:index => 0 } %> +
+ \ No newline at end of file diff --git a/app/views/users/show_new_score.html.erb b/app/views/users/show_new_score.html.erb new file mode 100644 index 000000000..07e82fd5f --- /dev/null +++ b/app/views/users/show_new_score.html.erb @@ -0,0 +1,91 @@ + +<% messages_count = @user.messages.count %> +<% messages_score = messages_count * 0.05%> +<% finall_messages_score = messages_score %> + +<% journals_count = @user.journals.count %> +<% journals_score = journals_count * 0.1 %> +<% user_changesets_count = @user.changesets.count %> +<% user_changesets_score = user_changesets_count * 0.3 %> +<% finall_user_project_score = journals_score + user_changesets_score %> + +<% journals_for_messages_count = @user.journals_messages.count %> +<% activities_count = @user.activities.count %> +<% journals_for_messages_score = journals_for_messages_count * 0.05 %> +<% activities_score = activities_count * 0.2 %> +<% finall_activity_score = journals_for_messages_score + activities_score %> + +<% news_count = @user.news.count %> +<% news_score = news_count * 0.1 %> +<% wiki_contents_count = @user.wiki_contents.count %> +<% wiki_contents_score = wiki_contents_count * 0.1 %> +<% comments_count = @user.comments.count %> +<% comments_score = comments_count * 0.1 %> +<% finall_influence_score = news_score + wiki_contents_score + comments_score %> +<% finall_user_score = finall_messages_score + finall_user_project_score + finall_activity_score + finall_influence_score %> + + + <%= h html_title %> + + + <%= csrf_meta_tag %> + <%= favicon %> + <%= stylesheet_link_tag 'jquery/jquery-ui-1.9.2', 'application', 'nyan', :media => 'all' %> + <%= stylesheet_link_tag 'rtl', :media => 'all' if l(:direction) == 'rtl' %> + <%= javascript_heads %> + <%= heads_for_theme %> + <%= hubspot_head %> + <%= call_hook :view_layouts_base_html_head %> + + <%= yield :header_tags -%> + +

<%= l(:label_user_score) %>

+
+ + + + + + + + +
<%= image_tag(url_to_avatar(@user), :class => 'avatar2') %> + + + +
<%= h @user.name %>
<%= @user.user_extensions.show_identity %>
+
+ + + +
<%= l(:label_user_score) %>
<%= format("%.2f" , @user.user_score_attr.total_score).to_f %>
+
+ + + + <%= l(:label_user_score) %> : + <%= format("%.2f" , @user.user_score_attr.total_score).to_f %> +
+ + <%= l(:label_user_score_of_collaboration) %> : + <%= format("%.2f" , @user.user_score_attr.collaboration.nil? ? 0:@user.user_score_attr.collaboration).to_f %> +
+ + <%= l(:label_user_score_of_influence) %> : + <%= format("%.2f" , @user.user_score_attr.influence.nil? ? 0:@user.user_score_attr.influence).to_f %> +
+ + <%= l(:label_user_score_of_skill) %> : + <%= format("%.2f" , @user.user_score_attr.skill.nil? ? 0:@user.user_score_attr.skill).to_f %> +
+ + <%= l(:label_user_score_of_active) %> : + <%= format("%.2f" , @user.user_score_attr.active.nil? ? 0:@user.user_score_attr.active).to_f %> +
+
+ +
+ +
+ <%= render :partial => 'users/score_new_index', :locals => {:index => 0 } %> +