compact fix

This commit is contained in:
2015-03-30 11:23:49 +02:00
parent 7000870853
commit 32f9e010f8
2 changed files with 11 additions and 8 deletions

View File

@@ -107,18 +107,21 @@ class Neuigkeit < ActiveRecord::Base
def is_event? def is_event?
self.has_calentries? self.has_calentries?
end end
def relevant_calentry
self.calentries.min_by{|c| c.days_to_today * 2 * ((c.is_past?)? 2:1)}
end
def update_cache def update_cache
if self.has_meeting? && !self.meeting.calentry.nil? 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) self.update_column(:cache_relevant_date, self.meeting.calentry.start.to_date)
else else
if self.is_event? if self.is_event?
c = self.calentries.min{|c| 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 * ((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) self.update_column(:cache_relevant_date, (c.is_past?) ? c.ende.to_date : c.start.to_date)
else else
unless self.datum.nil? 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) self.update_column(:cache_relevant_date, self.datum.to_date)
else else
self.update_column(:cache_order,0) self.update_column(:cache_order,0)

View File

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