Commit 9fa4df16ec8f8317c83371c5768c30e276e49ae9

Authored by gitlabhq
1 parent b3279b9b

now you can view comrade profile info #134

app/views/projects/_top_menu.html.haml
... ... @@ -5,7 +5,7 @@
5 5 %span= link_to "Tree", tree_project_path(@project), :class => current_page?(:controller => "projects", :action => "tree", :id => @project) ? "current" : nil
6 6 %span= link_to "Commits", project_commits_path(@project), :class => current_page?(:controller => "commits", :action => "index", :project_id => @project) ? "current" : nil
7 7 %span
8   - = link_to team_project_path(@project), :class => current_page?(:controller => "projects", :action => "team", :id => @project) ? "current" : nil do
  8 + = link_to team_project_path(@project), :class => (current_page?(:controller => "projects", :action => "team", :id => @project) || controller.controller_name == "team_members") ? "current" : nil do
9 9 Team
10 10 - if @project.users_projects.count > 0
11 11 %span{ :class => "top_menu_count" }= @project.users_projects.count
... ...
app/views/team_members/_show.html.haml
1 1 - user = member.user
2 2 %tr{:id => dom_id(member)}
3 3 %td
4   - = image_tag gravatar_icon(user.email), :class => "left", :width => 40, :style => "padding:0 5px;"
5   - = truncate user.name, :lenght => 16
  4 + = link_to image_tag(gravatar_icon(user.email), :class => "left", :width => 40, :style => "padding:0 5px;"), project_team_member_path(@project, member)
  5 +
  6 + = link_to truncate(user.name, :lenght => 16), project_team_member_path(@project, member)
  7 +
6 8 %td= truncate user.email, :lenght => 16
7 9 - if can? current_user, :admin_project, @project
8 10 = form_for(member, :as => :team_member, :url => project_team_member_path(@project, member)) do |f|
... ...
app/views/team_members/show.html.haml 0 → 100644
... ... @@ -0,0 +1,28 @@
  1 +- user = @team_member.user
  2 +.span-2
  3 + = image_tag gravatar_icon(user.email), :class => "left", :width => 60, :style => "padding-right:5px;"
  4 +%p
  5 + %b Name:
  6 + = user.name
  7 +%p
  8 + %b Email:
  9 + = user.email
  10 +
  11 +%br
  12 +
  13 +- unless user.skype.empty?
  14 + .div
  15 + %b Skype:
  16 + = user.skype
  17 +
  18 +- unless user.linkedin.empty?
  19 + .div
  20 + %b LinkedIn:
  21 + = user.linkedin
  22 +
  23 +- unless user.twitter.empty?
  24 + .div
  25 + %b Twitter:
  26 + = user.twitter
  27 +
  28 +
... ...
db/migrate/20111021101550_change_social_fields_in_users.rb 0 → 100644
... ... @@ -0,0 +1,10 @@
  1 +class ChangeSocialFieldsInUsers < ActiveRecord::Migration
  2 + def up
  3 + change_column(:users, :skype, :string, {:null => false, :default => ''})
  4 + change_column(:users, :linkedin, :string, {:null => false, :default => ''})
  5 + change_column(:users, :twitter, :string, {:null => false, :default => ''})
  6 + end
  7 +
  8 + def down
  9 + end
  10 +end
... ...
db/schema.rb
... ... @@ -11,7 +11,7 @@
11 11 #
12 12 # It's strongly recommended to check this file into your version control system.
13 13  
14   -ActiveRecord::Schema.define(:version => 20111019212429) do
  14 +ActiveRecord::Schema.define(:version => 20111021101550) do
15 15  
16 16 create_table "issues", :force => true do |t|
17 17 t.string "title"
... ... @@ -82,9 +82,9 @@ ActiveRecord::Schema.define(:version =&gt; 20111019212429) do
82 82 t.string "name"
83 83 t.boolean "admin", :default => false, :null => false
84 84 t.integer "projects_limit", :default => 10
85   - t.string "skype"
86   - t.string "linkedin"
87   - t.string "twitter"
  85 + t.string "skype", :default => "", :null => false
  86 + t.string "linkedin", :default => "", :null => false
  87 + t.string "twitter", :default => "", :null => false
88 88 end
89 89  
90 90 add_index "users", ["email"], :name => "index_users_on_email", :unique => true
... ...
spec/requests/team_members_spec.rb
... ... @@ -7,6 +7,15 @@ describe &quot;TeamMembers&quot; do
7 7 @project.add_access(@user, :read, :admin)
8 8 end
9 9  
  10 + describe "View profile" do
  11 + it "should be available" do
  12 + visit(team_project_path(@project))
  13 + find(:xpath, "//table[@id='team-table']//a[1]").click
  14 + page.should have_content @user.skype
  15 + page.should_not have_content 'Twitter'
  16 + end
  17 + end
  18 +
10 19 describe "New Team member", :js => true do
11 20 before do
12 21 @user_1 = Factory :user
... ...
spec/support/login.rb
... ... @@ -3,7 +3,8 @@ module LoginMacros
3 3 @user = User.create(:email => "user#{User.count}@mail.com",
4 4 :name => "John Smith",
5 5 :password => "123456",
6   - :password_confirmation => "123456")
  6 + :password_confirmation => "123456",
  7 + :skype => 'user_skype')
7 8  
8 9 if role == :admin
9 10 @user.admin = true
... ...