Further repo browser/Dolt integration work
[gitorious:mainline.git] / app / presenters / repository_presenter.rb
1 # encoding: utf-8
2 #--
3 #   Copyright (C) 2012 Gitorious AS
4 #
5 #   This program is free software: you can redistribute it and/or modify
6 #   it under the terms of the GNU Affero General Public License as published by
7 #   the Free Software Foundation, either version 3 of the License, or
8 #   (at your option) any later version.
9 #
10 #   This program is distributed in the hope that it will be useful,
11 #   but WITHOUT ANY WARRANTY; without even the implied warranty of
12 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 #   GNU Affero General Public License for more details.
14 #
15 #   You should have received a copy of the GNU Affero General Public License
16 #   along with this program.  If not, see <http://www.gnu.org/licenses/>.
17 #++
18 require "presenters/project_presenter"
19
20 class RepositoryPresenter
21   def initialize(repository)
22     @repository = repository
23   end
24
25   def name; repository.name; end
26   def gitdir; repository.gitdir; end
27   def to_param; repository.to_param; end
28
29   def slug
30     "#{project.slug}/#{name}"
31   end
32
33   def project
34     @project ||= ProjectPresenter.new(@repository.project)
35   end
36
37   private
38   def repository; @repository; end
39 end