changed logic

This commit is contained in:
Giga Chubinidze 2023-08-21 06:48:08 +04:00
parent e381651df2
commit 3c588709be
3 changed files with 95 additions and 111 deletions

View file

@ -71,11 +71,6 @@ class Project < ApplicationRecord
end
end)
scope :not_assigned_to_user, lambda { |user|
left_joins(:user_assignments)
.where('user_assignments.user_id = ? AND user_assignments.id IS NULL', user.id)
}
scope :templates, -> { where(template: true) }
after_create :auto_assign_project_members, if: :visible?

View file

@ -17,6 +17,9 @@ module Toolbars
@single = @items.length == 1
@team_owner = @current_user.current_team.user_assignments.find { |ua| ua.user == current_user }&.user_role.owner?
@unassigned_team_owner = @team_owner && !can_read_project?(@items.first)
@item_type = if project_ids.blank? && project_folder_ids.blank?
:none
elsif project_ids.present? && project_folder_ids.present?
@ -30,7 +33,7 @@ module Toolbars
def actions
return [] if @item_type == :none
return [access_action] if @not_assigned
return [access_action] if @unassigned_team_owner
[
restore_action,
@ -86,7 +89,7 @@ module Toolbars
project = @items.first
return unless can_read_project?(project)
return unless @team_owner || can_read_project?(project)
path = if can_manage_project_users?(project)
edit_access_permissions_project_path(project)

View file

@ -3,11 +3,7 @@
<% project_form = f %>
<%= f.hidden_field :archived, value: !project.archived %>
<% end %>
<% assigned = project.assigned_users.include?(current_user) %>
<ul class="dropdown-menu dropdown-menu-right" aria-labelledby="projectActionsDropdown">
<% if assigned %>
<!-- Restore project -->
<% if project.archived? && can_restore_project?(project) %>
<li class="form-dropdown-item">
@ -101,14 +97,4 @@
<span><%= t('projects.index.activities_option') %></span>
</a>
</li>
<% else %>
<!-- Project members access -->
<li class="form-dropdown-item">
<%= link_to can_manage_project_users?(project) ? edit_access_permissions_project_path(project) : access_permissions_project_path(project),
data: { action: 'remote-modal'} do %>
<i class="sn-icon sn-icon-project-member-access"></i>
<%= I18n.t('projects.index.project_members_access') %>
<% end %>
</li>
<% end %>
</ul>