# -*- coding: utf-8 -*- # == Schema Information # # Table name: moduls # # id :integer not null, primary key # name :string(255) # desc :text # depend :text # created_at :datetime not null # updated_at :datetime not null # class Modul < ActiveRecord::Base attr_accessible :desc,:name, :depend, :studium_id, :modulgruppen, :modulgruppe_ids, :lva_ids has_and_belongs_to_many :lvas , :uniq=>true has_and_belongs_to_many :modulgruppen validates :modulgruppen, :presence=>true # Ein Modul muss zu einer Modulgruppe gehören validates :name, :presence=>true # Ein Modul muss einen Namen haben translates :desc,:depend,:name, :versioning =>true, :fallbacks_for_empty_translations => true def self.update_multiple(hash) m= [] if hash.is_a? Hash hash.each do |i,h| if i.to_i == 0 unless h["name"].empty? md=Modul.new(:name=>h["name"],:desc=>h["desc"],:depend=>h["depend"]) md.modulgruppen=Modulgruppe.where(:id => h["modulgruppe_ids"].map(&:to_i)) md.save m << md end else md=Modul.find(h["id"].to_i) md.name=h["name"] md.desc=h["desc"] md.depend=h["depend"] md.modulgruppen=Modulgruppe.where(:id => h["modulgruppe_ids"].map(&:to_i)) m << md end end else hash.each do |h| unless h["name"].empty? md=Modul.new(:name=>h["name"],:desc=>h["desc"],:depend=>h["depend"]) md.modulgruppen=Modulgruppe.where(:id => h["modulgruppe_ids"].map(&:to_i)) md.save m << md end end end m end searchable do text :desc text :name, :boost=>3.0 end end