<% if User.current.allowed_to?(:add_subprojects, @project) %> <%= link_to l(:label_subproject_new), {:controller => 'projects', :action => 'add', :parent_id => @project}, :class => 'icon icon-add' %> <% end %>

<%=l(:label_overview)%>

<%= textilizable @project.description %> <% if @subprojects.any? %> <% showHideOnclick = "onclick=\"showHide('#{@project.id}','#{@project.id}span')\"" %> " > <% # First, let's put the full project sub-tree into a nice array structure projTree = [ @project ] currIdx = 1 loop { currParent = projTree[currIdx - 1] break if(currParent.nil?) if(!currParent.children.empty?) currParent.children.each_index { |ii| projTree[currIdx + ii,0] = currParent.children[ii] } end currIdx += 1 } # Next, loop over the sub-tree array elements and make the HTML rows projTree.each_index { |ii| if(ii > 0) # We'll skip the tree root rowid = classes = spanicon = openonclick = "" project = tmpProj = projTree[ii] # Getting the full ancestor of each project need only take a little iteration code ancestorIds = [] (ii-1).downto(0) { |jj| if(tmpProj.parent_id == projTree[jj].id) # We found the parent of tmpProj, next find ITS parent, etc ancestorIds << projTree[jj].id tmpProj = projTree[jj] end } # Let's only show the immediate subprojects (sub-sub projects will be hidden until user expands) if(project.parent_id == @project.id) classes += " show " else classes += " hide " end # Set up classes and such for the rows, depending on whether has children or not if(!project.children.empty?) projIdStr = project.id.to_s classes += " closed parent " + cycle("odd", "even") rowid = "id=\"#{projIdStr}span\"" openonclick = "onclick=\"showHide('#{projIdStr}','#{projIdStr}span')\"" spanicon = "  " else classes += " closed child " + cycle("odd", "even") end classes += " #{ancestorIds.join(' ')} " baseurl = url_for(:controller => 'plugin_assets', :action => 'index') # Does this project have boards? If so, we'll provide a direct link to its Forums page if(!project.boards.empty?) forumsStr = " 'projects', :action => 'show', :id => project})}/boards\">" + "\"Forums\"" else forumsStr = "" end # Does this project have a wiki? If so, we'll provide a direct link to its main Wiki page if(project.wiki) wikiStr = " 'projects', :action => 'show', :id => project})}/wiki\">" + "\"Wiki\"" else wikiStr = "" end %> > <% end } %>
<%= h("Sub Projects") %>
<%= spanicon %> <%= project.active? ? link_to(h(project.name), {:controller => 'projects', :action => 'show', :id => project}, :class => "project") : h(project.name) %> class="empty <%=User.current.member_of?(project) ? 'my-project' : nil%>">  <%= forumsStr %><%= wikiStr %>
<% end %> <% @project.custom_values.each do |custom_value| %> <% if !custom_value.value.empty? %>
  • <%= custom_value.custom_field.name%>: <%=h show_value(custom_value) %>
  • <% end %> <% end %> <% if User.current.allowed_to?(:view_issues, @project) %>

    <%=l(:label_issue_tracking)%>

    <%= link_to l(:label_issue_view_all), :controller => 'issues', :action => 'index', :project_id => @project, :set_filter => 1 %>

    <% end %> <%= call_hook(:view_projects_show_left, :project => @project) %>
    <% if users_by_role_implemented %> <% if @members_by_role.any? %>

    <%=l(:label_member_plural)%>

    <% @members_by_role.keys.sort.each do |role| %> <%= role.name %>: <%= @members_by_role[role].collect(&:user).sort.collect{|u| link_to_user u}.join(", ") %>
    <% end %>

    <% end %> <% else %> <% if @users_by_role.any? %>

    <%=l(:label_member_plural)%>

    <% @users_by_role.keys.sort.each do |role| %> <%=h role %>: <%= @users_by_role[role].sort.collect{|u| link_to_user u}.join(", ") %>
    <% end %>

    <% end %> <% end %> <% if @news.any? && authorize_for('news', 'index') %>

    <%=l(:label_news_latest)%>

    <%= render :partial => 'news/news', :collection => @news %>

    <%= link_to l(:label_news_view_all), :controller => 'news', :action => 'index', :project_id => @project %>

    <% end %> <%= call_hook(:view_projects_show_right, :project => @project) %>
    <% content_for :sidebar do %> <% planning_links = [] planning_links << link_to_if_authorized(l(:label_calendar), :controller => 'issues', :action => 'calendar', :project_id => @project) planning_links << link_to_if_authorized(l(:label_gantt), :controller => 'issues', :action => 'gantt', :project_id => @project) planning_links.compact! unless planning_links.empty? %>

    <%= l(:label_planning) %>

    <%= planning_links.join(' | ') %>

    <% end %> <% if @total_hours && User.current.allowed_to?(:view_time_entries, @project) %>

    <%= l(:label_spent_time) %>

    <%= l_hours(@total_hours) %>

    <%= link_to(l(:label_details), {:controller => 'timelog', :action => 'details', :project_id => @project}) %> | <%= link_to(l(:label_report), {:controller => 'timelog', :action => 'report', :project_id => @project}) %>

    <% end %> <% end %> <% content_for :header_tags do %> <%= auto_discovery_link_tag(:atom, {:action => 'activity', :id => @project, :format => 'atom', :key => User.current.rss_key}) %> <% end %> <% html_title(l(:label_overview)) -%>