diff --git a/app/models/neuigkeit.rb b/app/models/neuigkeit.rb index fe998f8..5ad5e9b 100755 --- a/app/models/neuigkeit.rb +++ b/app/models/neuigkeit.rb @@ -107,18 +107,21 @@ class Neuigkeit < ActiveRecord::Base def is_event? self.has_calentries? end + def relevant_calentry + self.calentries.min_by{|c| c.days_to_today * 2 * ((c.is_past?)? 2:1)} + end def update_cache if self.has_meeting? && !self.meeting.calentry.nil? - self.update_column(:cache_order, (self.meeting.calentry.start.to_date - Date.today).to_i.abs) + self.update_column(:cache_order, (self.meeting.calentry.start.to_date - Date.today).to_i.abs * 2) self.update_column(:cache_relevant_date, self.meeting.calentry.start.to_date) else if self.is_event? - c = self.calentries.min{|c| c.days_to_today * ((c.is_past?)? 2:1)} - self.update_column(:cache_order, c.days_to_today * ((c.is_past?)? 2:1)) + c = self.calentries.min_by{|c| c.days_to_today * 2 * ((c.is_past?)? 2:1)} + self.update_column(:cache_order, c.days_to_today * 2 * ((c.is_past?)? 2:1)) self.update_column(:cache_relevant_date, (c.is_past?) ? c.ende.to_date : c.start.to_date) else unless self.datum.nil? - self.update_column(:cache_order, (((self.datum.to_date - Date.today).to_i)/3).abs-1) + self.update_column(:cache_order, (((self.datum.to_date - Date.today).to_i)).abs) self.update_column(:cache_relevant_date, self.datum.to_date) else self.update_column(:cache_order,0) diff --git a/app/views/neuigkeiten/_compact.html.erb b/app/views/neuigkeiten/_compact.html.erb index b6c7336..95f7921 100644 --- a/app/views/neuigkeiten/_compact.html.erb +++ b/app/views/neuigkeiten/_compact.html.erb @@ -8,9 +8,9 @@
<%= ff_icon(neuigkeit.rubrik.icon) unless neuigkeit.rubrik.icon.nil? or neuigkeit.rubrik.icon.empty? %> <%= neuigkeit.rubrik.name %> <% unless neuigkeit.has_calentries? %> <% unless neuigkeit.try(:datum).try(:to_date).nil? %> -<%= I18n.t("neuigkeit.am") %> - <%= I18n.l(neuigkeit.try(:datum).try(:to_date))%> -<% end %> <% else %> <% end %> + <%= I18n.t("neuigkeit.am") %> + <%= I18n.l(neuigkeit.try(:datum).try(:to_date))%> + <% end %> <% else %> <% end %>

<%= neuigkeit.title%> @@ -20,7 +20,7 @@ <% if neuigkeit.has_calentries? %>
<%= fa_icon("calendar 2x") %> - <%= neuigkeit.calentries.min{|c| c.days_to_today * ((c.is_past?)? 2:1)}.text %> + <%= neuigkeit.relevant_calentry.text %>
<% end %>