fix für bulk edit moduls
This commit is contained in:
@@ -63,9 +63,14 @@ class ModulsController < ApplicationController
|
||||
unless params[:modulgruppen_id].nil?
|
||||
@moduls=Modulgruppe.find(params[:modulgruppen_id]).moduls
|
||||
else
|
||||
unless params[:studium_id].nil?
|
||||
@moduls=Studium.find(params[:studium_id]).modulgruppen.collect(&:moduls).flatten
|
||||
else
|
||||
|
||||
@moduls=Modul.all
|
||||
end
|
||||
end
|
||||
@moduls << Modul.new
|
||||
|
||||
end
|
||||
|
||||
def edit_lvas
|
||||
|
||||
@@ -23,8 +23,9 @@ class Modul < ActiveRecord::Base
|
||||
translates :desc,:depend,:name, :versioning =>true, :fallbacks_for_empty_translations => true
|
||||
def self.update_multiple(hash)
|
||||
m= []
|
||||
hash.each_entry do |h|
|
||||
if h["id"].to_i == 0
|
||||
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))
|
||||
@@ -37,7 +38,16 @@ class Modul < ActiveRecord::Base
|
||||
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
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
class Studium < ActiveRecord::Base
|
||||
attr_accessible :desc, :name,:abkuerzung, :typ, :zahl, :semester, :picture, :picture_cache, :qualifikation,:struktur, :jobmoeglichkeiten
|
||||
has_many :modulgruppen, inverse_of: :studium, :class_name => "Modulgruppe", :dependent => :destroy
|
||||
|
||||
has_many :semester, :dependent => :destroy
|
||||
validates :abkuerzung, :length=>{:maximum=>5}, :format=>{:with=>/^[a-zA-z]{0,5}$/}
|
||||
validates :typ, :inclusion => {:in => ["Bachelor","Master"] }
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<% @moduls.each do |m| %>
|
||||
<%= semantic_fields_for "moduls[#{m.id}]", m do |f| %>
|
||||
<tr><td>
|
||||
<%= f.input :id, :label=>false, :hint=>"" ,:as=>:hidden%>
|
||||
<%= f.input :id, :label=>false, :hint=>"" ,:as=>:hidden %>
|
||||
<%= f.input :name, :label=>false, :hint=>"" %></td>
|
||||
<td>
|
||||
<%= f.input :modulgruppen, :label=>false, :hint=>"" , :collection=>Modulgruppe.all %>
|
||||
|
||||
Reference in New Issue
Block a user