diff --git a/app/models/calentry.rb b/app/models/calentry.rb index 94561f3..1b9f245 100644 --- a/app/models/calentry.rb +++ b/app/models/calentry.rb @@ -1,3 +1,4 @@ +# -*- coding: utf-8 -*- # == Schema Information # # Table name: calentries @@ -17,14 +18,13 @@ class Calentry < ActiveRecord::Base validates :start, :presence => true validates :typ, :presence => true before_save :get_public - belongs_to :object, polymorphic: true + belongs_to :object, polymorphic: true # Objekt zu dem der Calentry gehört (derzeit ein Newsartikel) - validate do |entry| +validate do |entry| if entry.ende.nil? errors.add(:ende, "Es muss ein Endzeitpunkt vorhanden sein") end - end - + end resourcify def get_public @@ -38,7 +38,11 @@ class Calentry < ActiveRecord::Base start.to_date end def name - summary + unless self.object.nil? + self.object.name + else + summary + end end scope :public, -> { where(:public => :true) } scope :upcoming, -> { where("start >= ?" , Time.now).where("start <= ?", 8.days.from_now) } diff --git a/app/models/gremium.rb b/app/models/gremium.rb index 643286c..b3bc9fa 100644 --- a/app/models/gremium.rb +++ b/app/models/gremium.rb @@ -12,16 +12,15 @@ # class Gremium < ActiveRecord::Base - TYPEN={1=>"offiziell", 2=>"offiziell-temporär", 3 => "inoffiziell",4=>"inoffiziell-tempo"} - TAPS_TYPEN={1=>true,2=>false,3=>true,4=>false} - GESCHLECHT={0=>"saechlich", 1 => "maennlich", 2 => "weiblich"} - ART2FALL={0=>"des", 1=>"des",2=>"der"} + TYPEN={1=>"offiziell", 2=>"offiziell-temporär", 3 => "inoffiziell",4=>"inoffiziell-tempo"} # Kategorien, im Wesentlichen wichtig für Listung oder nicht Listung + GESCHLECHT={0=>"saechlich", 1 => "maennlich", 2 => "weiblich"} # Geschlecht des Gremiums zur richtige Deklination + ART2FALL={0=>"des", 1=>"des",2=>"der"} # Artikel 2.Fall abhängig vom Geschlecht attr_accessible :desc, :name, :typ, :geschlecht,:thema_id - has_many :memberships - belongs_to :thema - scope :tabs, -> { where(:typ => [1,3]).order(:typ).order(:name) } - - def fall2 + has_many :memberships # Mitgliedschaften bei dem Gremium + belongs_to :thema # Gehört zu einem Thema + scope :tabs, -> { where(:typ => [1,3]).order(:typ).order(:name) } # Gremien die in Tabs angezeigt werden (Alle Anderen nur in der Liste + # Gremium im 2. Fall für die Konstruktion "Mitglied des ... / der ... " + def fall2 Gremium::ART2FALL[self.geschlecht.to_i].to_s+" "+ self.name.to_s+ ((self.geschlecht.to_i==1||self.geschlecht.to_i==0)? "s":"") end