Merge branch '8784-dir-listings'
[arvados.git] / apps / workbench / app / views / users / _show_admin.html.erb
index 8d5495093bb9572650d9afe3af8eea015524f523..89156aaf820238c3394d5e7d2c7975d03f9009f8 100644 (file)
@@ -1,3 +1,7 @@
+<%# Copyright (C) The Arvados Authors. All rights reserved.
+
+SPDX-License-Identifier: AGPL-3.0 %>
+
 <div class="row">
   <div class="col-md-6">
     <p>
     </blockquote>
 
     <p>
-      As an admin, you can setup this user. Please input a VM and
-      repository for the user. If you had previously provided any of
-      these items, they are pre-filled for you and you can leave them
-      as is if you would like to reuse them.
+      As an admin, you can setup a shell account for this user.
+      The login name is automatically generated from the user's e-mail address.
     </p>
 
     <blockquote>
-      <%= link_to "Setup #{@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'}  %>
+      <%= link_to "Setup shell 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'}  %>
     </blockquote>
 
     <p>
   <div class="col-md-6">
     <div class="panel panel-default">
       <div class="panel-heading">
-        Groups
+        Group memberships
+
+        <div class="pull-right">
+          <%= link_to raw('<i class="fa fa-plus"></i> Add new group'), "#",
+                       {class: 'btn btn-xs btn-primary', 'data-toggle' => "modal",
+                        'data-target' => '#add-group-modal'}  %>
+        </div>
       </div>
       <div class="panel-body">
         <div class="alert alert-info">
-          A <i>permitted</i> user <i>has all permissions</i> available to the group.
+          <b>Tip:</b> in most cases, you want <i>both permissions at once</i> for a given group.
           <br/>
-          A <i>member</i> user <i>is visible to</i> everyone else who can see the group.
+          The user&rarr;group permission is can_manage.
           <br/>
-          (Tip: in most cases, you don't want one without the other.)
+          The group&rarr;user permission is can_read.
         </div>
         <form>
           <% permitted_group_perms = {}
-             Link.limit(10000).filter([
+             Link.filter([
              ['tail_uuid', '=', @object.uuid],
              ['head_uuid', 'is_a', 'arvados#group'],
              ['link_class', '=', 'permission'],
@@ -69,7 +77,7 @@
                     data: {
                       permission_head: group.uuid,
                       permission_uuid: permitted_group_perms[group.uuid]}) %>
-                permitted
+                <small>user&rarr;group</small>
               </label>
               <label class="checkbox-inline" data-toggle-permission="true" data-permission-head="<%= @object.uuid %>" data-permission-name="can_read">
                 <%= check_box_tag(
                     data: {
                       permission_tail: group.uuid,
                       permission_uuid: member_group_perms[group.uuid]}) %>
-                member
+                <small>group&rarr;user</small>
               </label>
               <label class="checkbox-inline">
-                <%= group.name || '(unnamed)' %> <span class="deemphasize">(owned by <%= User.find(group.owner_uuid).andand.full_name %>)</span>
+                <%= group.name || '(unnamed)' %> <span class="deemphasize">(owned by <%= User.find?(group.owner_uuid).andand.full_name %>)</span>
               </label>
             </div>
           <% end.empty? and begin %>
         </form>
       </div>
       <div class="panel-footer">
-        To manage these groups (roles), use:
+        These groups (roles) can also be managed from the command line. For example:
         <ul>
           <li><code>arv group create \<br/>--group '{"group_class":"role","name":"New group"}'</code></li>
           <li><code>arv group list \<br/>--filters '[["group_class","=","role"]]' \<br/>--select '["uuid","name"]'</code></li>
 </div>
 
 <div id="user-setup-modal-window" class="modal fade" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"></div>
+<%= render partial: "add_group_modal" %>