Commit dfb62c4e authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

Add selectbox to share options. Add acceess to project for invited groups

parent b50bc135
......@@ -11,10 +11,24 @@
#-------------------------------------------------------------------
class ProjectGroupLink < ActiveRecord::Base
GUEST = 10
REPORTER = 20
DEVELOPER = 30
MASTER = 40
belongs_to :project
belongs_to :group
validates :project_id, presence: true
validates :group_id, presence: true
validates :group_id, uniqueness: { scope: [:project_id], message: "already shared with this group" }
def self.access_options
{
"Guest" => GUEST,
"Reporter" => REPORTER,
"Developer" => DEVELOPER,
"Master" => MASTER
}
end
end
......@@ -111,13 +111,30 @@ class ProjectTeam
def fetch_members(level = nil)
project_members = project.users_projects
group_members = group ? group.users_groups : []
invited_members = []
if project.invited_groups.any?
project.invited_groups.each do |invited_group|
im = invited_group.users_groups
if level
if level == :masters
im = im.owners + im.masters
else
im = im.send(level)
end
end
invited_members << im
end
invited_members = invited_members.flatten.compact
end
if level
project_members = project_members.send(level)
group_members = group_members.send(level) if group
end
(project_members + group_members).map(&:user).uniq
(project_members + group_members + invited_members).map(&:user).uniq
end
def group
......
......@@ -15,12 +15,12 @@
%li
%h5
.pull-left
= link_to project_group_link_path(@project, group_link), method: :delete, class: 'btn btn-small' do
= link_to project_group_link_path(@project, group_link), method: :delete, class: 'btn btn-small append-right-10' do
%i.icon-remove
&nbsp;
= link_to group do
%i.icon-folder-open
= group.name
%small.light up to Masters
.span5.available-groups
%h5
......@@ -31,8 +31,9 @@
%h5
.pull-right
= form_tag project_group_links_path(@project), method: :post do
= select_tag :group_access, options_for_select(ProjectGroupLink.access_options, ProjectGroupLink::MASTER), class: "span2"
= hidden_field_tag :group_id, group.id
= submit_tag "Share", class: "btn btn-small"
= submit_tag "Share", class: "btn"
%i.icon-folder-close
= group.name
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