Issue #64 fixed

This commit is contained in:
Andreas Stephanides
2013-12-01 12:05:08 +01:00
parent b779701ffe
commit e68d8a06d8
6 changed files with 17 additions and 13 deletions

View File

@@ -80,14 +80,16 @@ class FetprofilesController < ApplicationController
# PUT /fetprofiles/1.json # PUT /fetprofiles/1.json
def update def update
@fetprofile = Fetprofile.find(params[:id]) @fetprofile = Fetprofile.find(params[:id])
@memberships=@fetprofile.memberships.order(:typ)
@memberships<<Membership.new
respond_to do |format| respond_to do |format|
if @fetprofile.update_attributes(params[:fetprofile]) if @fetprofile.update_attributes(params[:fetprofile])
format.html { redirect_to @fetprofile, notice: 'Fetprofile was successfully updated.' } format.html { redirect_to @fetprofile, notice: 'Fetprofile was successfully updated.' }
format.json { head :no_content } format.json { head :no_content }
else else
@memberships=@fetprofile.memberships.order(:typ)
@memberships<< Membership.new
format.html { render action: "edit" } format.html { render action: "edit" }
format.json { render json: @fetprofile.errors, status: :unprocessable_entity } format.json { render json: @fetprofile.errors, status: :unprocessable_entity }
end end

View File

@@ -35,6 +35,7 @@ class GremienController < ApplicationController
# GET /gremien/new.json # GET /gremien/new.json
def new def new
@gremium = Gremium.new @gremium = Gremium.new
@memberships=[Membership.new]
respond_to do |format| respond_to do |format|
format.html # new.html.erb format.html # new.html.erb

View File

@@ -25,10 +25,12 @@ validates :desc, :presence=>true
validates :vorname, length:{minimum: 3},:presence=>true validates :vorname, length:{minimum: 3},:presence=>true
validates :short, length:{minimum: 3},:presence=>true validates :short, length:{minimum: 3},:presence=>true
accepts_nested_attributes_for :memberships, :reject_if=>lambda{|a| a[:typ].blank?|| a[:start].blank? ||a[:gremium_id].blank?}
def name def name
[vorname, nachname, "(",short,")"].join(" ") [vorname, nachname, "(",short,")"].join(" ")
end end
accepts_nested_attributes_for :memberships, :reject_if=>lambda{|a| a[:typ].blank?|| a[:start].blank? ||a[:fetprofile_id].blank?}
scope :active, -> { where(:active=>true).order(:vorname) } scope :active, -> { where(:active=>true).order(:vorname) }
def fetmail def fetmail
(fetmailalias.nil? || fetmailalias.empty?) ? short.to_s + "@fet.at" : fetmailalias.to_s + "@fet.at" (fetmailalias.nil? || fetmailalias.empty?) ? short.to_s + "@fet.at" : fetmailalias.to_s + "@fet.at"

View File

@@ -17,6 +17,7 @@ class Gremium < ActiveRecord::Base
ART2FALL={0=>"des", 1=>"des",2=>"der"} # Artikel 2.Fall abhängig vom Geschlecht ART2FALL={0=>"des", 1=>"des",2=>"der"} # Artikel 2.Fall abhängig vom Geschlecht
attr_accessible :desc, :name, :typ, :geschlecht,:thema_id, :memberships_attributes attr_accessible :desc, :name, :typ, :geschlecht,:thema_id, :memberships_attributes
has_many :memberships # Mitgliedschaften bei dem Gremium has_many :memberships # Mitgliedschaften bei dem Gremium
belongs_to :thema # Gehört zu einem Thema 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 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 ... " # Gremium im 2. Fall für die Konstruktion "Mitglied des ... / der ... "

View File

@@ -38,7 +38,9 @@
<div class="span3"><%= membership.input :start, :as=>:datepicker, :prepend=>"von",:label=>false%></div> <div class="span3"><%= membership.input :start, :as=>:datepicker, :prepend=>"von",:label=>false%></div>
<div class="span3"><%= membership.input :stop, :as=>:datepicker,:label=>false, :prepend =>"bis" %></div> <div class="span3"><%= membership.input :stop, :as=>:datepicker,:label=>false, :prepend =>"bis" %></div>
<div class="span2"><%= membership.input :typ ,:as=>:select, :collection=>Membership::TYPEN.invert, :label=>false %></div> <div class="span2"><%= membership.input :typ ,:as=>:select, :collection=>Membership::TYPEN.invert, :label=>false %></div>
<div class="span3"><%= membership.input :gremium, :label=>false %></div> <div class="span3"><%= membership.input :gremium, :label=>false %>
</div>
</div> </div>

View File

@@ -33,12 +33,8 @@
</div> </div>
</div> </div>
<br> <br>
<%= render 'layouts/pretty_toolbar', :object=> @toolbar_elements %> <%= render 'layouts/pretty_toolbar', :object=> @toolbar_elements %>
</div> </div>