mirror of
https://github.com/meineerde/redmine.git
synced 2026-01-03 06:09:41 +00:00
Use helper methods for rendering blocks.
git-svn-id: http://svn.redmine.org/redmine/trunk@16414 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
4cfd513373
commit
23131d14f5
@ -65,6 +65,7 @@ module MyHelper
|
||||
end
|
||||
end
|
||||
|
||||
# Returns the select tag used to add a block to My page
|
||||
def block_select_tag(user)
|
||||
blocks_in_use = user.pref.my_page_layout.values.flatten
|
||||
options = content_tag('option')
|
||||
@ -74,21 +75,22 @@ module MyHelper
|
||||
select_tag('block', options, :id => "block-select", :onchange => "$('#block-form').submit();")
|
||||
end
|
||||
|
||||
def calendar_items(startdt, enddt)
|
||||
Issue.visible.
|
||||
def render_calendar_block(block, settings)
|
||||
calendar = Redmine::Helpers::Calendar.new(User.current.today, current_language, :week)
|
||||
calendar.events = Issue.visible.
|
||||
where(:project_id => User.current.projects.map(&:id)).
|
||||
where("(start_date>=? and start_date<=?) or (due_date>=? and due_date<=?)", startdt, enddt, startdt, enddt).
|
||||
where("(start_date>=? and start_date<=?) or (due_date>=? and due_date<=?)", calendar.startdt, calendar.enddt, calendar.startdt, calendar.enddt).
|
||||
includes(:project, :tracker, :priority, :assigned_to).
|
||||
references(:project, :tracker, :priority, :assigned_to).
|
||||
to_a
|
||||
|
||||
render :partial => 'my/blocks/calendar', :locals => {:calendar => calendar, :block => block}
|
||||
end
|
||||
|
||||
def documents_items
|
||||
Document.visible.order("#{Document.table_name}.created_on DESC").limit(10).to_a
|
||||
end
|
||||
def render_documents_block(block, settings)
|
||||
documents = Document.visible.order("#{Document.table_name}.created_on DESC").limit(10).to_a
|
||||
|
||||
def issues_items(block, settings)
|
||||
send "#{block}_items", settings
|
||||
render :partial => 'my/blocks/documents', :locals => {:block => block, :documents => documents}
|
||||
end
|
||||
|
||||
def render_issuesassignedtome_block(block, settings)
|
||||
@ -134,17 +136,19 @@ module MyHelper
|
||||
end
|
||||
end
|
||||
|
||||
def news_items
|
||||
News.visible.
|
||||
def render_news_block(block, settings)
|
||||
news = News.visible.
|
||||
where(:project_id => User.current.projects.map(&:id)).
|
||||
limit(10).
|
||||
includes(:project, :author).
|
||||
references(:project, :author).
|
||||
order("#{News.table_name}.created_on DESC").
|
||||
to_a
|
||||
|
||||
render :partial => 'my/blocks/news', :locals => {:block => block, :news => news}
|
||||
end
|
||||
|
||||
def timelog_items(settings={})
|
||||
def render_timelog_block(block, settings)
|
||||
days = settings[:days].to_i
|
||||
days = 7 if days < 1 || days > 365
|
||||
|
||||
@ -155,7 +159,8 @@ module MyHelper
|
||||
includes(:issue => [:tracker, :status]).
|
||||
order("#{TimeEntry.table_name}.spent_on DESC, #{Project.table_name}.name ASC, #{Tracker.table_name}.position ASC, #{Issue.table_name}.id ASC").
|
||||
to_a
|
||||
entries_by_day = entries.group_by(&:spent_on)
|
||||
|
||||
return entries, days
|
||||
render :partial => 'my/blocks/timelog', :locals => {:block => block, :entries => entries, :entries_by_day => entries_by_day, :days => days}
|
||||
end
|
||||
end
|
||||
|
||||
@ -1,6 +1,3 @@
|
||||
<h3><%= l(:label_calendar) %></h3>
|
||||
|
||||
<% calendar = Redmine::Helpers::Calendar.new(User.current.today, current_language, :week)
|
||||
calendar.events = calendar_items(calendar.startdt, calendar.enddt) %>
|
||||
|
||||
<%= render :partial => 'common/calendar', :locals => {:calendar => calendar } %>
|
||||
|
||||
@ -1,3 +1,3 @@
|
||||
<h3><%=l(:label_document_plural)%></h3>
|
||||
|
||||
<%= render :partial => 'documents/document', :collection => documents_items %>
|
||||
<%= render :partial => 'documents/document', :collection => documents %>
|
||||
|
||||
@ -1,3 +1,3 @@
|
||||
<h3><%=l(:label_news_latest)%></h3>
|
||||
|
||||
<%= render :partial => 'news/news', :collection => news_items %>
|
||||
<%= render :partial => 'news/news', :collection => news %>
|
||||
|
||||
@ -1,8 +1,3 @@
|
||||
<%
|
||||
entries, days = timelog_items(settings)
|
||||
entries_by_day = entries.group_by(&:spent_on)
|
||||
%>
|
||||
|
||||
<div class="contextual">
|
||||
<%= link_to_function l(:label_options), "$('#timelog-settings').toggle();", :class => 'icon-only icon-settings', :title => l(:label_options) %>
|
||||
</div>
|
||||
|
||||
@ -24,10 +24,10 @@ module Redmine
|
||||
'issuesreportedbyme' => {:label => :label_reported_issues},
|
||||
'issueswatched' => {:label => :label_watched_issues},
|
||||
'issuequery' => {:label => :label_issue_plural, :max_occurs => 3},
|
||||
'news' => {:label => :label_news_latest, :partial => 'my/blocks/news'},
|
||||
'calendar' => {:label => :label_calendar, :partial => 'my/blocks/calendar'},
|
||||
'documents' => {:label => :label_document_plural, :partial => 'my/blocks/documents'},
|
||||
'timelog' => {:label => :label_spent_time, :partial => 'my/blocks/timelog'}
|
||||
'news' => {:label => :label_news_latest},
|
||||
'calendar' => {:label => :label_calendar},
|
||||
'documents' => {:label => :label_document_plural},
|
||||
'timelog' => {:label => :label_spent_time}
|
||||
}
|
||||
|
||||
# Returns the available blocks
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user