kanbanworkflowstimelinescrumrubyroadmapproject-planningproject-managementopenprojectangularissue-trackerifcgantt-chartganttbug-trackerboardsbcf
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
114 lines
5.0 KiB
114 lines
5.0 KiB
<%#-- copyright
|
|
OpenProject is an open source project management software.
|
|
Copyright (C) 2012-2022 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.
|
|
|
|
++#%>
|
|
|
|
<%= call_hook :activity_index_head %>
|
|
|
|
<%= toolbar title: (@author.nil? ? t(:label_activity) : t(:label_user_activity, value: link_to_user(@author))).html_safe,
|
|
subtitle: t(:label_date_from_to, start: format_date(@date_to - @days), end: format_date(@date_to-1))
|
|
%>
|
|
|
|
<div id="activity">
|
|
<% @events_by_day.keys.sort.reverse.each do |day| %>
|
|
<h3><%= format_activity_day(day) %></h3>
|
|
<ul class="generic-list">
|
|
<% @events_by_day[day].sort { |x, y| y.event_datetime <=> x.event_datetime }.each do |e| -%>
|
|
<li class="<%= e.event_type %> <%= User.current.logged? && e.respond_to?(:event_author) && User.current == e.event_author ? 'me' : nil %>">
|
|
<div class="title">
|
|
<% event_type = e.event_type.start_with?('meeting') ? 'meetings' : e.event_type %>
|
|
<% event_type = e.event_type == 'budget' ? 'budget' : event_type %>
|
|
<%= icon_wrapper("icon-context icon-#{event_type}", e.event_name) %>
|
|
<span class="time"><%= format_time(e.event_datetime.to_time, false) %></span>
|
|
<% if (@project.nil? || @project != e.project) && e.project %>
|
|
<%= content_tag('span', link_to(e.project.name, e.project), class: 'project') %>
|
|
<span> - </span>
|
|
<% end %>
|
|
<%= link_to format_activity_title(e.event_title), e.event_path%>
|
|
</div>
|
|
<div class="description"><%= truncate_formatted_text(e.event_description) %></div>
|
|
<div class="author">
|
|
<%= avatar(e.event_author, {class: 'avatar-mini'}) if e.respond_to?(:event_author) %>
|
|
<%= link_to_user(e.event_author) if e.respond_to?(:event_author) %>
|
|
</div>
|
|
</li>
|
|
<% end -%>
|
|
</ul>
|
|
<% end -%>
|
|
</div>
|
|
|
|
<% if @events_by_day.empty? %>
|
|
<%= no_results_box %>
|
|
<br>
|
|
<% end %>
|
|
|
|
<div style="float:left;">
|
|
<%= link_to_content_update(t(:label_previous),
|
|
{ from: (@date_to - @days - 1) },
|
|
{title: t(:label_date_from_to, start: format_date(@date_to - 2*@days), end: format_date(@date_to - @days - 1)),
|
|
class: 'navigate-left'}) %>
|
|
</div>
|
|
<div style="float:right;">
|
|
<%= link_to_content_update(t(:label_next),
|
|
{ from: (@date_to + @days - 1) },
|
|
{title: t(:label_date_from_to, start: format_date(@date_to), end: format_date(@date_to + @days - 1)),
|
|
class: 'navigate-right'}) unless @date_to >= Date.today %>
|
|
</div>
|
|
|
|
<%= other_formats_links do |f| %>
|
|
<%= f.link_to 'Atom', url: { from: nil }, key: User.current.rss_key %>
|
|
<% end %>
|
|
|
|
<% content_for :header_tags do %>
|
|
<%= auto_discovery_link_tag(:atom,
|
|
{ format: 'atom', from: nil, key: User.current.rss_key }) %>
|
|
<% end %>
|
|
|
|
<% content_for :sidebar do %>
|
|
<%= form_tag({}, method: :get) do %>
|
|
<fieldset class="form--fieldset">
|
|
<legend class="form--fieldset-legend"><%= t(:description_filter) %></legend>
|
|
<p>
|
|
<%= hidden_field_tag "event_types[]" %>
|
|
<% @activity.event_types.sort_by { |type| t("label_#{type.singularize}_plural") }.each do |t| %>
|
|
<%= check_box_tag "event_types[]", t, @activity.scope.include?(t), id: "event_types_#{t}" %>
|
|
<label for="event_types_<%=t%>"><%=t("label_#{t.singularize}_plural")%></label>
|
|
<br />
|
|
<% end %>
|
|
</p>
|
|
<% if @project && @project.descendants.active.any? %>
|
|
<%= hidden_field_tag 'with_subprojects', 0 %>
|
|
<p><label><%= check_box_tag 'with_subprojects', 1, @with_subprojects %> <%=t(:label_subproject_plural)%></label></p>
|
|
<% end %>
|
|
<%= hidden_field_tag('user_id', params[:user_id]) unless params[:user_id].blank? %>
|
|
<%= hidden_field_tag('apply', true) %>
|
|
<p><%= submit_tag t(:button_apply), class: 'button -small -highlight', name: nil %></p>
|
|
</fieldset>
|
|
<% end %>
|
|
<% end %>
|
|
|
|
<% html_title(t(:label_activity), @author) -%>
|
|
|