1 <%# Copyright (C) The Arvados Authors. All rights reserved.
3 SPDX-License-Identifier: AGPL-3.0 %>
9 This button sets up an inactive user. After setup, they will be able to log in.
10 This dialog bog also allows you to optionally setup a shell account for this user.
11 The login name is automatically generated from the user's e-mail address.
14 <%= link_to "Setup account #{'for ' if @object.full_name.present?} #{@object.full_name}", setup_popup_user_url(id: @object.uuid), {class: 'btn btn-primary', :remote => true, 'data-toggle' => "modal", 'data-target' => '#user-setup-modal-window'} %>
16 <p style="margin-top: 3em">
17 As an admin, you can deactivate and reset this user. This will
18 remove all repository/VM permissions for the user. If you
19 "setup" the user again, the user will have to sign the user
23 <%= button_to "Deactivate #{@object.full_name}", unsetup_user_url(id: @object.uuid), class: 'btn btn-primary', data: {confirm: "Are you sure you want to deactivate #{@object.full_name}?"} %>
25 <p style="margin-top: 3em">
26 As an admin, you can log in as this user. When you’ve
27 finished, you will need to log out and log in again with your
31 <%= button_to "Log in as #{@object.full_name}", sudo_user_url(id: @object.uuid), class: 'btn btn-primary' %>
33 <div class="col-md-6">
34 <div class="panel panel-default">
35 <div class="panel-heading">
38 <div class="pull-right">
39 <%= link_to raw('<i class="fa fa-plus"></i> Add new group'), "#",
40 {class: 'btn btn-xs btn-primary', 'data-toggle' => "modal",
41 'data-target' => '#add-group-modal'} %>
44 <div class="panel-body">
45 <div class="alert alert-info">
46 <b>Tip:</b> in most cases, you want <i>both permissions at once</i> for a given group.
48 The user→group permission is can_manage.
50 The group→user permission is can_read.
53 <% permitted_group_perms = {}
55 ['tail_uuid', '=', @object.uuid],
56 ['head_uuid', 'is_a', 'arvados#group'],
57 ['link_class', '=', 'permission'],
59 permitted_group_perms[perm.head_uuid] = perm.uuid
61 <% member_group_perms = {}
62 Link.permissions_for(@object).each do |perm|
63 member_group_perms[perm.tail_uuid] = perm.uuid
65 <% Group.order(['name']).where(group_class: 'role').each do |group| %>
67 <label class="checkbox-inline" data-toggle-permission="true" data-permission-tail="<%= @object.uuid %>" data-permission-name="can_manage">
71 permitted_group_perms[group.uuid],
72 disabled: (group.owner_uuid == @object.uuid),
74 permission_head: group.uuid,
75 permission_uuid: permitted_group_perms[group.uuid] || 'x'}) %>
76 <small>user→group</small>
78 <label class="checkbox-inline" data-toggle-permission="true" data-permission-head="<%= @object.uuid %>" data-permission-name="can_read">
82 member_group_perms[group.uuid],
83 disabled: (group.owner_uuid == @object.uuid),
85 permission_tail: group.uuid,
86 permission_uuid: member_group_perms[group.uuid] || 'x'}) %>
87 <small>group→user</small>
89 <label class="checkbox-inline">
90 <%= group.name || '(unnamed)' %> <span class="deemphasize">(owned by <%= User.find?(group.owner_uuid).andand.full_name %>)</span>
93 <% end.empty? and begin %>
100 <div class="panel-footer">
101 These groups (roles) can also be managed from the command line. For example:
103 <li><code>arv group create \<br/>--group '{"group_class":"role","name":"New group"}'</code></li>
104 <li><code>arv group list \<br/>--filters '[["group_class","=","role"]]' \<br/>--select '["uuid","name"]'</code></li>
105 <li><code>arv edit <i>uuid</i></code></li>
112 <div id="user-setup-modal-window" class="modal fade" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"></div>
113 <%= render partial: "add_group_modal" %>