Commit ed3f4408 authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

Redesign Admin -> user -> show page

parent 6b24c375
...@@ -9,8 +9,12 @@ class Admin::UsersController < Admin::ApplicationController ...@@ -9,8 +9,12 @@ class Admin::UsersController < Admin::ApplicationController
end end
def show def show
@projects = Project.scoped # Projects user can be added to
@projects = @projects.without_user(admin_user) if admin_user.authorized_projects.present? @not_in_projects = Project.scoped
@not_in_projects = @not_in_projects.without_user(admin_user) if admin_user.authorized_projects.present?
# Projects he already own or joined
@projects = admin_user.authorized_projects.where('projects.id in (?)', admin_user.authorized_projects.map(&:id))
end end
def team_update def team_update
......
...@@ -313,4 +313,8 @@ class User < ActiveRecord::Base ...@@ -313,4 +313,8 @@ class User < ActiveRecord::Base
UserTeam.where(id: ids) UserTeam.where(id: ids)
end end
end end
def owned_teams
UserTeam.where(owner_id: self.id)
end
end end
%h3.page_title .row
User: #{@admin_user.name} .span6
- if @admin_user.blocked %h3.page_title
%small Blocked = image_tag gravatar_icon(@admin_user.email, 90), class: "avatar s90"
- if @admin_user.admin = @admin_user.name
%small Administrator - if @admin_user.blocked
= link_to edit_admin_user_path(@admin_user), class: "btn pull-right" do %span.cred (Blocked)
%i.icon-edit - if @admin_user.admin
Edit %span.cred (Admin)
.pull-right
%br = link_to edit_admin_user_path(@admin_user), class: "btn pull-right" do
%i.icon-edit
%table.zebra-striped Edit
%thead %br
%tr %small @#{@admin_user.username}
%th Profile %br
%th %small member since #{@admin_user.created_at.stamp("Nov 12, 2031")}
%tr .clearfix
%td %hr
%b %h5
Email: Add User to Projects
%td %small
= @admin_user.email
%tr
%td
%b
Username:
%td
= @admin_user.username
%tr
%td
%b
Admin:
%td= check_box_tag "admin", 1, @admin_user.admin, disabled: :disabled
%tr
%td
%b
Blocked:
%td= check_box_tag "blocked", 1, @admin_user.blocked, disabled: :disabled
%tr
%td
%b
Created at:
%td
= @admin_user.created_at.stamp("March 1, 1999")
%tr
%td
%b
Projects limit:
%td
= @admin_user.projects_limit
- unless @admin_user.skype.empty?
%tr
%td
%b
Skype:
%td
= @admin_user.skype
- unless @admin_user.linkedin.empty?
%tr
%td
%b
Linkedin:
%td
= @admin_user.linkedin
- unless @admin_user.twitter.empty?
%tr
%td
%b
Twitter:
%td
= @admin_user.twitter
%br
%h5 Add User to Projects
%br
= form_tag team_update_admin_user_path(@admin_user), class: "bulk_import", method: :put do
%table
%thead
%tr
%th Projects
%th Project Access:
%tr
%td= select_tag :project_ids, options_from_collection_for_select(@projects , :id, :name_with_namespace), multiple: true, data: {placeholder: 'Select projects'}, class: 'chosen span5'
%td= select_tag :project_access, options_for_select(Project.access_options), class: "project-access-select chosen span3"
%tr
%td= submit_tag 'Add', class: "btn btn-primary"
%td
Read more about project permissions Read more about project permissions
%strong= link_to "here", help_permissions_path, class: "vlink" %strong= link_to "here", help_permissions_path, class: "vlink"
%br %br
= form_tag team_update_admin_user_path(@admin_user), class: "bulk_import", method: :put do
- if @admin_user.groups.present? .control-group
%h5 Owner of groups: = label_tag :project_ids, "Projects", class: 'control-label'
%br .controls
= select_tag :project_ids, options_from_collection_for_select(@not_in_projects , :id, :name_with_namespace), multiple: true, data: {placeholder: 'Select projects'}, class: 'chosen span3'
%table.zebra-striped .control-group
%thead = label_tag :project_access, "Project Access", class: 'control-label'
%tr .controls
%th Name = select_tag :project_access, options_for_select(Project.access_options), class: "project-access-select chosen span3"
- @admin_user.groups.each do |group| .form-actions
%tr = submit_tag 'Add', class: "btn btn-create"
%td= link_to group.name, admin_group_path(group) .pull-right
%br
- if @admin_user.owned_groups.present?
.ui-box
%h5.title Owned groups:
%ul.well-list
- @admin_user.groups.each do |group|
%li
%strong= link_to group.name, admin_group_path(group)
- if @admin_user.authorized_projects.present? - if @admin_user.owned_teams.present?
%h5 Authorized Projects: .ui-box
%br %h5.title Owned teams:
%ul.well-list
- @admin_user.owned_teams.each do |team|
%li
%strong= link_to team.name, admin_team_path(team)
%table.zebra-striped
%thead
%tr
%th Name
%th Project Access
%th
%th
- @admin_user.tm_in_authorized_projects.each do |tm| .span6
- project = tm.project = render 'users/profile', user: @admin_user
%tr .ui-box
%td= link_to project.name_with_namespace, admin_project_path(project) %h5.title Projects (#{@projects.count})
%td= tm.project_access_human %ul.well-list
%td= link_to 'Edit Access', edit_admin_project_member_path(project, tm.user), class: "btn btn-small" - @projects.each do |project|
%td= link_to 'Remove from team', admin_project_member_path(project, tm.user), confirm: 'Are you sure?', method: :delete, class: "btn btn-small btn-remove" %li
= link_to admin_project_path(project), class: dom_class(project) do
- if project.namespace
= project.namespace.human_name
\/
%strong.well-title
= truncate(project.name, length: 45)
%span.pull-right.light
- if project.owner == @admin_user
%i.icon-wrench
- tm = project.team.get_tm(@admin_user.id)
- if tm
= tm.project_access_human
= link_to edit_admin_project_member_path(project, tm.user), class: "btn btn-small" do
%i.icon-edit
= link_to admin_project_member_path(project, tm.user), confirm: 'Are you sure?', method: :delete, class: "btn btn-small btn-remove" do
%i.icon-remove
%p.light
%i.icon-wrench
&ndash; user is a project owner
...@@ -4,20 +4,20 @@ ...@@ -4,20 +4,20 @@
%ul.well-list %ul.well-list
%li %li
%strong Email %strong Email
%span.pull-right= mail_to @user.email %span.pull-right= mail_to user.email
- unless @user.skype.blank? - unless user.skype.blank?
%li %li
%strong Skype %strong Skype
%span.pull-right= @user.skype %span.pull-right= user.skype
- unless @user.linkedin.blank? - unless user.linkedin.blank?
%li %li
%strong LinkedIn %strong LinkedIn
%span.pull-right= @user.linkedin %span.pull-right= user.linkedin
- unless @user.twitter.blank? - unless user.twitter.blank?
%li %li
%strong Twitter %strong Twitter
%span.pull-right= @user.twitter %span.pull-right= user.twitter
- unless @user.bio.blank? - unless user.bio.blank?
%li %li
%strong Bio %strong Bio
%span.pull-right= @user.bio %span.pull-right= user.bio
...@@ -10,9 +10,9 @@ ...@@ -10,9 +10,9 @@
%strong.well-title %strong.well-title
= truncate(project.name, length: 45) = truncate(project.name, length: 45)
%span.pull-right.light %span.pull-right.light
- if project.owner == @user - if project.owner == user
%i.icon-wrench %i.icon-wrench
- tm = project.team.get_tm(@user.id) - tm = project.team.get_tm(user.id)
- if tm - if tm
= tm.project_access_human = tm.project_access_human
%p.light %p.light
......
...@@ -17,5 +17,5 @@ ...@@ -17,5 +17,5 @@
%h5 Recent events %h5 Recent events
= render @events = render @events
.span4 .span4
= render 'profile' = render 'profile', user: @user
= render 'projects' = render 'projects', user: @user
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment