opf/openproject

View on GitHub
modules/reporting/app/views/cost_reports/_report_menu.html.erb

Summary

Maintainability
Test Coverage
<%#-- copyright
OpenProject is an open source project management software.
Copyright (C) 2012-2024 the OpenProject GmbH

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License version 3.

OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows:
Copyright (C) 2006-2013 Jean-Philippe Lang
Copyright (C) 2010-2013 the ChiliProject Team

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.

See COPYRIGHT and LICENSE files for more details.

++#%>

<% items = [] %>
<% [:public, :private].each do |report_type| %>
  <% queries = report_type == :public ? CostQuery.public(@project) : CostQuery.private(@project, current_user) %>
  <% if queries.length > 0 %>
    <% item = {
                    title: t(:"label_#{report_type}_report_plural"),
                    collapsible: true,
                    children: []
                  } %>

    <% queries.each do |query| -%>
      <% item[:children].push({
          title: query.name,
          href: url_for(:controller => '/cost_reports', :action => 'show', :id => query.id)
        }) %>
      <% end -%>
    <% items.push(item) %>
  <% end %>
<% end %>

<div class="op-sidebar">
  <div class="op-sidebar--body">
    <%=
      angular_component_tag 'op-sidemenu',
                            inputs: {
                              title: '',
                              items: items
                            }
    %>
  </div>
</div>