Fetprofile, Gremien etc bearbeitet

This commit is contained in:
Andreas Stephanides
2013-08-21 19:04:26 +02:00
parent faf977e651
commit a4538fa61a
11 changed files with 79 additions and 67 deletions

View File

@@ -1,31 +1,9 @@
class MembershipsController < ApplicationController class MembershipsController < ApplicationController
# GET /memberships
# GET /memberships.json
def index
@memberships = Membership.all
respond_to do |format|
format.html # index.html.erb
format.json { render json: @memberships }
end
end
# GET /memberships/1
# GET /memberships/1.json
def show
@membership = Membership.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @membership }
end
end
# GET /memberships/new # GET /memberships/new
# GET /memberships/new.json # GET /memberships/new.json
def new def new
@membership = Membership.new @membership = Membership.new
@membership.fetprofile=Fetprofile.find(params[:fetprofile_id])
respond_to do |format| respond_to do |format|
format.html # new.html.erb format.html # new.html.erb
format.json { render json: @membership } format.json { render json: @membership }
@@ -44,8 +22,8 @@ class MembershipsController < ApplicationController
respond_to do |format| respond_to do |format|
if @membership.save if @membership.save
format.html { redirect_to @membership, notice: 'Membership was successfully created.' } format.html { redirect_to @membership.fetprofile, notice: 'Membership was successfully created.' }
format.json { render json: @membership, status: :created, location: @membership } format.json { render json: @membership.fetprofile, status: :created, location: @membership.fetprofile }
else else
format.html { render action: "new" } format.html { render action: "new" }
format.json { render json: @membership.errors, status: :unprocessable_entity } format.json { render json: @membership.errors, status: :unprocessable_entity }
@@ -60,7 +38,7 @@ class MembershipsController < ApplicationController
respond_to do |format| respond_to do |format|
if @membership.update_attributes(params[:membership]) if @membership.update_attributes(params[:membership])
format.html { redirect_to @membership, notice: 'Membership was successfully updated.' } format.html { redirect_to @membership.fetprofile, notice: 'Membership was successfully updated.' }
format.json { head :no_content } format.json { head :no_content }
else else
format.html { render action: "edit" } format.html { render action: "edit" }
@@ -73,10 +51,11 @@ class MembershipsController < ApplicationController
# DELETE /memberships/1.json # DELETE /memberships/1.json
def destroy def destroy
@membership = Membership.find(params[:id]) @membership = Membership.find(params[:id])
fp = @membership.fetprofile
@membership.destroy @membership.destroy
respond_to do |format| respond_to do |format|
format.html { redirect_to memberships_url } format.html { redirect_to fp }
format.json { head :no_content } format.json { head :no_content }
end end
end end

View File

@@ -1,3 +1,9 @@
class Fetprofile < ActiveRecord::Base class Fetprofile < ActiveRecord::Base
attr_accessible :active, :desc, :fetmailalias, :nachname, :picture, :short, :vorname attr_accessible :active, :desc, :fetmailalias, :nachname, :picture, :short, :vorname
has_many :memberships
has_many :gremien, :through=> :membership
mount_uploader :picture, PictureUploader
def name
[vorname, nachname, "(",short,")"].join(" ")
end
end end

View File

@@ -1,3 +1,4 @@
class Gremium < ActiveRecord::Base class Gremium < ActiveRecord::Base
attr_accessible :desc, :name, :typ attr_accessible :desc, :name, :typ
has_many :memberships
end end

View File

@@ -1,3 +1,5 @@
class Membership < ActiveRecord::Base class Membership < ActiveRecord::Base
attr_accessible :fetprofile_id, :gremium_id, :start, :stop, :typ attr_accessible :fetprofile_id, :gremium_id, :start, :stop, :typ
belongs_to :fetprofile
belongs_to :gremium
end end

View File

@@ -36,6 +36,9 @@ class PictureUploader < CarrierWave::Uploader::Base
process :resize_to_fill => [64, 64] process :resize_to_fill => [64, 64]
end end
version :portrait do
process :resize_to_fill => [128,192]
end
# Add a white list of extensions which are allowed to be uploaded. # Add a white list of extensions which are allowed to be uploaded.
# For images you might use something like this: # For images you might use something like this:
def extension_white_list def extension_white_list

View File

@@ -1,15 +1,39 @@
<div class="container-fluid">
<%= semantic_form_for @fetprofile do |f| %> <%= semantic_form_for @fetprofile do |f| %>
<%= f.inputs do %> <%= f.inputs do %>
<%= f.input :vorname %> <div class="row-fluid">
<%= f.input :nachname %> <div class="span4">
<%= f.input :short %> <%= f.input :vorname %></div>
<%= f.input :fetmailalias %> <div class="span4"><%= f.input :nachname %></div>
<%= f.input :desc %> <div class="span4"><%= f.input :short %>
<%= f.input :picture %> </div> </div>
<%= f.input :active %> <div class="row-fluid">
<% end %> <div class="span12">
<%= f.input :desc %></div>
</div>
<div class="row-fluid">
<div class="span4"> <%= f.input :active %></div>
<div class="span4"><%= f.input :picture, :as=>:file %></div>
<div class="span4"> <%= f.input :fetmailalias %></div>
</div>
<% @fetprofile.memberships.each do |m| %>
<%= semantic_fields_for m do |mf| %>
<div class="row-fluid">
<div class="span1"></div>
<div class="span3"><%= mf.input :start, :as=>:date %></div>
<div class="span3"><%= mf.input :stop %></div>
<div class="span3"><%= mf. input :gremium %></div>
<div class="span2"><%= mf.input :typ ,:as=>:radio, :collection=>{"mitglied"=>1, "ersatzmitglied"=>2} %></div>
</div>
<% end %>
<% end
end %>
<div class="row-fluid">
<div class="span12">
<%= f.actions do %> <%= f.actions do %>
<%= f.action :submit, :as => :input %> <%= f.action :submit, :as => :input %>
<% end %> <% end %>
<% end %> <% end %>
</div></div></div>

View File

@@ -7,7 +7,7 @@
<th>Short</th> <th>Short</th>
<th>Fetmailalias</th> <th>Fetmailalias</th>
<th>Desc</th> <th>Desc</th>
<th>Picture</th>
<th>Active</th> <th>Active</th>
<th></th> <th></th>
<th></th> <th></th>
@@ -21,7 +21,7 @@
<td><%= fetprofile.short %></td> <td><%= fetprofile.short %></td>
<td><%= fetprofile.fetmailalias %></td> <td><%= fetprofile.fetmailalias %></td>
<td><%= fetprofile.desc %></td> <td><%= fetprofile.desc %></td>
<td><%= fetprofile.picture %></td>
<td><%= fetprofile.active %></td> <td><%= fetprofile.active %></td>
<td><%= link_to 'Show', fetprofile %></td> <td><%= link_to 'Show', fetprofile %></td>
<td><%= link_to 'Edit', edit_fetprofile_path(fetprofile) %></td> <td><%= link_to 'Edit', edit_fetprofile_path(fetprofile) %></td>

View File

@@ -1,40 +1,35 @@
<p id="notice"><%= notice %></p> <p id="notice"><%= notice %></p>
<div class="container-fluid">
<div class="row-fluid">
<div class="span3">
<%= image_tag @fetprofile.picture.portrait.url %>
</div>
<div class="span9">
<h2><%= @fetprofile.name %></h2>
<p> <p>
<b>Vorname:</b>
<%= @fetprofile.vorname %>
</p>
<p>
<b>Nachname:</b>
<%= @fetprofile.nachname %>
</p>
<p>
<b>Short:</b>
<%= @fetprofile.short %>
</p>
<p>
<b>Fetmailalias:</b>
<%= @fetprofile.fetmailalias %> <%= @fetprofile.fetmailalias %>
</p> </p>
<p> <p>
<b>Desc:</b>
<%= @fetprofile.desc %> <%= @fetprofile.desc %>
</p> </p>
<p> <p>
<b>Picture:</b> <%= "<b>Aktiv</b>".html_safe if @fetprofile.active %>
<%= @fetprofile.picture %>
</p> </p>
<p> </div>
<b>Active:</b> </div>
<%= @fetprofile.active %> <div class="row-fluid">
</p> <div class="span12">
<% @fetprofile.memberships.each do |m| %>
<%= m.start.to_s %>
<%= m.gremium.try(:name).to_s %>
<%= link_to 'edit', edit_fetprofile_membership_path(@fetprofile,m) %>
<% end %>
<%= link_to 'Edit', new_fetprofile_membership_path(@fetprofile) %> |
<%= link_to 'Edit', edit_fetprofile_path(@fetprofile) %> | <%= link_to 'Edit', edit_fetprofile_path(@fetprofile) %> |
<%= link_to 'Back', fetprofiles_path %> <%= link_to 'Back', fetprofiles_path %>
</div>
</div></div>

View File

@@ -3,5 +3,6 @@ Vorhandene Resourcen
<li><%= link_to "galleries", galleries_path %></li> <li><%= link_to "galleries", galleries_path %></li>
<li><%= link_to "fotos", fotos_path %></li> <li><%= link_to "fotos", fotos_path %></li>
<li><%= link_to "gremien", gremien_path %></li> <li><%= link_to "gremien", gremien_path %></li>
<li><%= link_to "fetprofiles", fetprofiles_path %></li>
<li><%= link_to "memberships", memberships_path %></li> <li><%= link_to "memberships", memberships_path %></li>
</ul> </ul>

View File

@@ -1,10 +1,9 @@
<%= semantic_form_for @membership do |f| %> <%= semantic_form_for @membership do |f| %>
<%= f.inputs do %> <%= f.inputs do %>
<%= f.input :fetprofile_id %> <%= f.input :gremium, :as=>:radio %>
<%= f.input :gremium_id %>
<%= f.input :start %> <%= f.input :start %>
<%= f.input :stop %> <%= f.input :stop %>
<%= f.input :typ %> <%= f.input :typ ,:as=>:radio, :collection=>{"mitglied"=>1, "ersatzmitglied"=>2} %>
<% end %> <% end %>
<%= f.actions do %> <%= f.actions do %>

View File

@@ -40,9 +40,11 @@
resources :galleries do resources :galleries do
resources :fotos, :only=>[:new,:show] resources :fotos, :only=>[:new,:show]
end end
resources :memberships resources :memberships, :except=>[:new, :show, :edit]
resources :gremien resources :gremien
resources :fetprofiles resources :fetprofiles do
resources :memberships, :only=>[:new, :show, :edit]
end
resources :lecturers resources :lecturers
resources :semesters resources :semesters
resources :moduls resources :moduls