diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2016-12-13 16:59:49 +0200 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2016-12-13 16:59:49 +0200 |
commit | d806230f9f95a2d08253f6c534ba69d1b9a498ea (patch) | |
tree | 96b9c5158648ae6e16ccb85ca2c284d0d4c68034 /app/models/namespace.rb | |
parent | 5c06875c39c8b525db41e73560f8cb1746119dd9 (diff) | |
download | gitlab-ce-d806230f9f95a2d08253f6c534ba69d1b9a498ea.tar.gz |
Add parents method to Namespace
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Diffstat (limited to 'app/models/namespace.rb')
-rw-r--r-- | app/models/namespace.rb | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/app/models/namespace.rb b/app/models/namespace.rb index 464be910f5a..b3cefc01b99 100644 --- a/app/models/namespace.rb +++ b/app/models/namespace.rb @@ -163,11 +163,26 @@ class Namespace < ActiveRecord::Base end def full_name - if parent - parent.full_name + ' / ' + name - else - name - end + @full_name ||= + if parent + parent.full_name + ' / ' + name + else + name + end + end + + def parents + @parents ||= + begin + parents = [] + + if parent + parents << parent + parents += parent.parents + end + + parents + end end private |