Neuigkeiten Link

Querverweise für Neuigkeiten
This commit is contained in:
Andreas Stephanides
2014-03-29 11:30:46 +01:00
parent 1d2d3e791b
commit a8401391a6
22 changed files with 199 additions and 55 deletions

View File

@@ -14,4 +14,11 @@ class Gallery < ActiveRecord::Base
WORD_COUNT = 20
attr_accessible :datum, :desc, :name
has_many :fotos
has_many :nlinks, as: :link
scope :search, ->(query) {where("name like ? or desc like ?", "%#{query}%", "%#{query}%")}
def title
name
end
end

View File

@@ -23,7 +23,9 @@ class Gremium < ActiveRecord::Base
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 ... "
scope :search, ->(query) {where("name like ? or desc like ?", "%#{query}%", "%#{query}%")}
# Gremium im 2. Fall für die Konstruktion "Mitglied des ... / der ... "
accepts_nested_attributes_for :memberships, :reject_if=>lambda{|a| a[:typ].blank?|| a[:start].blank? ||a[:fetprofile_id].blank?}
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":"")

View File

@@ -44,6 +44,7 @@ class Lva < ActiveRecord::Base
has_many :beispiele , :class_name => "Beispiel"
has_and_belongs_to_many :lecturers
translates :desc,:pruefungsinformation, :fallbacks_for_empty_translations => true, :versioning=>true
scope :search, ->(query) {where("name like ? or desc like ?", "%#{query}%", "%#{query}%")}
validates :lvanr,:format=>{ :with => /^[0-9][0-9][0-9]\.[0-9A][0-9][0-9]$/}, :presence=>true, :uniqueness=>true # , :uniqueness=>true # LVA-Nummer muss das Format 000.000 besitzen (uniqueness?) oder 000 für nicht
validates_presence_of :ects # ECTS vorhanden?
@@ -52,6 +53,11 @@ class Lva < ActiveRecord::Base
validates_presence_of :stunden # Stunden Eingetragen?
validates_presence_of :modul # Zugehöriges Modul eingetragen?
# (zumindest eines)
has_many :nlinks, as: :link
def title
self.name
end
def full_name
return self.typ + ' ' + self.name
end
@@ -69,7 +75,6 @@ class Lva < ActiveRecord::Base
end
##
# Lade Daten aus TISS und füge diese in die Datenbank ein.
def tisshash(semester)

View File

@@ -28,8 +28,11 @@ class Neuigkeit < ActiveRecord::Base
scope :unpublished, -> {where("datum >= ? OR datum IS NULL", Date.today)}
scope :public, ->{includes(:rubrik).where("rubriken.public"=>:true)}
scope :search, ->(query) {where("text like ? or title like ?", "%#{query}%", "%#{query}%")}
LINKTYPES=["Thema", "Gallery", "Lva"]
accepts_nested_attributes_for :calentries, :allow_destroy=>true , :reject_if=> lambda{|a| a[:start].blank?}
before_validation :sanitize
has_many :nlinks
def datum_nilsave
self.datum.nil? ? Time.now + 42.years : self.datum
end

10
app/models/nlink.rb Normal file
View File

@@ -0,0 +1,10 @@
class Nlink < ActiveRecord::Base
attr_accessible :link_id, :link_type, :neuigkeit_id, :neuigkeit,:link, :sort, :title
belongs_to :neuigkeit
belongs_to :link, :polymorphic=>true
validates :neuigkeit, :presence=>true
validates :link, :presence=>true
validates :link_id, :uniqueness=>{:scope=>[:neuigkeit_id]}
end

View File

@@ -19,6 +19,6 @@ class Thema < ActiveRecord::Base
validates :themengruppe, :presence => true
validates :title, :presence => true
scope :search, ->(query) {where("text like ? or title like ?", "%#{query}%", "%#{query}%")}
has_many :nlinks, as: :link
translates :title,:text, :versioning =>true, :fallbacks_for_empty_translations => true
end