verwaltung, formulare...

This commit is contained in:
Andreas Stephanides
2013-09-01 11:40:45 +02:00
parent f37d8d442d
commit 9b16843d83
7 changed files with 81 additions and 74 deletions

View File

@@ -1,5 +1,5 @@
class NeuigkeitenController < ApplicationController
before_filter {@toolbar_elements=[]}
before_filter {@toolbar_elements=[]}
load_and_authorize_resource
#def index
# @neuigkeiten = Neuigkeit.all
@@ -9,75 +9,69 @@ class NeuigkeitenController < ApplicationController
def show
@neuigkeit = Neuigkeit.find(params[:id])
if params[:verwalten]
@toolbar_elements << {:hicon=>'icon-plus', :text=> I18n.t('neuigkeit.publish'),:path => publish_rubrik_neuigkeit_path(@neuigkeit.rubrik,@neuigkeit),:confirm=>"Sure?" } if can? :publish, @neuigkeit
@toolbar_elements << {:hicon=>'icon-plus', :text=> I18n.t('neuigkeit.publish'),:path => publish_rubrik_neuigkeit_path(@neuigkeit.rubrik,@neuigkeit),:confirm=>"Sure?" } if can? :publish, @neuigkeit
@toolbar_elements << {:text=>I18n.t('common.edit'),:path=>edit_rubrik_neuigkeit_path(@neuigkeit.rubrik,@neuigkeit),:icon=>:pencil} if can? :edit, @neuigkeit
@toolbar_elements << {:hicon=>'icon-remove-circle', :text=> I18n.t('common.delete'),:path => rubrik_neuigkeit_path(@neuigkeit.rubrik,@neuigkeit), :method=> :delete,:confirm=>"Sure?" } if can? :delete, @neuigkeit
else
@toolbar_elements << {:text=>I18n.t('common.verwalten'),:path=>rubrik_neuigkeit_path(@neuigkeit.rubrik,@neuigkeit,{:verwalten=>true}),:icon=>:pencil} if can? :verwalten, @neuigkeit
end
@toolbar_elements << {:text=>I18n.t('common.edit'),:path=>edit_rubrik_neuigkeit_path(@neuigkeit.rubrik,@neuigkeit),:icon=>:pencil} if can? :edit, @neuigkeit
@toolbar_elements << {:hicon=>'icon-remove-circle', :text=> I18n.t('common.delete'),:path => rubrik_neuigkeit_path(@neuigkeit.rubrik,@neuigkeit), :method=> :delete,:confirm=>"Sure?" } if can? :delete, @neuigkeit
else
@toolbar_elements << {:text=>I18n.t('common.verwalten'),:path=>rubrik_neuigkeit_path(@neuigkeit.rubrik,@neuigkeit,{:verwalten=>true}),:icon=>:pencil} if can? :verwalten, @neuigkeit
end
end
def new
def new
@neuigkeit = Neuigkeit.new
@rubrik=Rubrik.find(params[:rubrik_id]) unless params[:rubrik_id].nil?
@neuigkeit.rubrik=@rubrik unless @rubrik.nil?
end
def publish
end
def publish
@neuigkeit = Neuigkeit.find(params[:id])
@neuigkeit.publish
@neuigkeit.save
if params[:verwalten]
redirect_to verwalten_rubrik_path(@neuigkeit.rubrik)
redirect_to verwalten_rubrik_path(@neuigkeit.rubrik)
end
redirect_to @neuigkeit
redirect_to rubrik_neuigkeit_path(@neuigkeit.rubrik,@neuigkeit)
end
end
def edit
def edit
@neuigkeit = Neuigkeit.find(params[:id])
@toolbar_elements << {:text=>I18n.t('common.show'),:path=>rubrik_neuigkeit_path(@neuigkeit.rubrik,@neuigkeit)} if can? :show, @neuigkeit
end
def create
@neuigkeit = Neuigkeit.new(params[:neuigkeit])
respond_to do |format|
if @neuigkeit.save
format.html { redirect_to [@neuigkeit.rubrik,@neuigkeit], notice: 'Neuigkeit was successfully created.' }
else
format.html { render action: "new" }
end
end
end
def update
@neuigkeit = Neuigkeit.find(params[:id])
respond_to do |format|
if @neuigkeit.update_attributes(params[:neuigkeit])
format.html { redirect_to @neuigkeit, notice: 'Neuigkeit was successfully updated.' }
format.html { redirect_to [@neuigkeit.rubrik,@neuigkeit], notice: 'Neuigkeit was successfully updated.' }
else
format.html { render action: "edit" }
format.html { render action: "edit" }
end
end
end
# DELETE /neuigkeiten/1
# DELETE /neuigkeiten/1.json
def destroy
@neuigkeit = Neuigkeit.find(params[:id])
rubrik=@neuigkeit.rubrik
@neuigkeit.destroy
respond_to do |format|
format.html { redirect_to neuigkeiten_url }
format.html { redirect_to rubrik }
end
end
end

View File

@@ -15,16 +15,16 @@
#
class Fetprofile < ActiveRecord::Base
attr_accessible :active, :desc, :fetmailalias, :nachname, :picture, :short, :vorname,:memberships_attributes
attr_accessible :active, :desc, :fetmailalias, :nachname, :picture, :short, :vorname,:memberships_attributes,:remove_picture,:picture_cache
has_many :memberships
has_many :gremien, :through=> :membership
mount_uploader :picture, PictureUploader
def name
[vorname, nachname, "(",short,")"].join(" ")
[vorname, nachname, "(",short,")"].join(" ")
end
accepts_nested_attributes_for :memberships
scope :active, -> { where(:active=>true).order(:vorname) }
def fetmail
fetmailalias.empty? ? short + "@fet.at" : fetmailalias + "@fet.at"
fetmailalias.empty? ? short + "@fet.at" : fetmailalias + "@fet.at"
end
end

View File

@@ -12,15 +12,16 @@
#
class Gremium < ActiveRecord::Base
TYPEN={1=>"offiziell", 2=>"offiziell-temporär", 3 => "inoffiziell","inoffiziell-tempo"}
TYPEN={1=>"offiziell", 2=>"offiziell-temporaer", 3 => "inoffiziell",4=>"inoffiziell-tempo"}
GESCHLECHT={0=>"saechlich", 1 => "maennlich", 2 => "weiblich"}
ART2FALL={0=>"des", 1=>"des",2=>"der"}
attr_accessible :desc, :name, :typ, :geschlecht,:thema_id
has_many :memberships
belongs_to :thema
scope :tabs, { .where(:typ=> 1,:typ=>2)}
scope :tabs, -> { where(:typ => [1,2]) }
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":"")
Gremium::ART2FALL[self.geschlecht.to_i].to_s+" "+ self.name.to_s+ ((self.geschlecht.to_i==1||self.geschlecht.to_i==0)? "s":"")
end
end

View File

@@ -33,7 +33,7 @@ class Neuigkeit < ActiveRecord::Base
self.rubrik.public && self.datum >=Time.now.to_date
end
def publish
self.datum = Time.now
self.datum = Date.today
end
def reverse_publish
self.datum = nil

View File

@@ -1,39 +1,50 @@
<div class="container-fluid">
<%= semantic_form_for @fetprofile do |f| %>
<%= semantic_form_for @fetprofile do |f| %>
<%= f.inputs do %>
<div class="row-fluid">
<div class="span4">
<%= f.input :vorname %></div>
<div class="span4"><%= f.input :nachname %></div>
<div class="span4"><%= f.input :short %>
</div> </div>
<div class="row-fluid">
<div class="span12">
<%= f.input :desc %></div>
<div class="span4">
<%= f.input :vorname %>
</div>
<div class="span4"><%= f.input :nachname %></div>
<div class="span4"><%= f.input :short %>
</div> </div>
<div class="row-fluid">
<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 class="span4"> <%= f.input :active %></div>
<div class="span4">
<%= image_tag(@fetprofile.picture.thumb.url) unless @fetprofile.picture.nil? %>
<%= f.file_field :picture %>
<%= f.hidden_field :picture_cache %>
<label>
<%= f.check_box :remove_picture %>
Bild Entfernen
</label>
</div>
<div class="span4"> <%= f.input :fetmailalias %></div>
</div>
<%= f.inputs :for => :memberships do |membership,i| %>
<div class="row-fluid">
<div class="span1"></div>
<div class="span3"><%= membership.input :start, :as=>:date %></div>
<div class="span3"><%= membership.input :stop %></div>
<div class="span3"><%= membership. input :gremium %></div>
<div class="span2"><%= membership.input :typ ,:as=>:radio, :collection=>Membership::TYPEN.invert %></div>
</div> <% end %>
<% end %>
<div class="row-fluid">
<div class="span12">
<%= f.actions do %>
<%= f.action :submit, :as => :input %>
<% end %>
<% end %>
</div></div></div>
<%= f.inputs :for => :memberships do |membership,i| %>
<div class="row-fluid">
<div class="span1"></div>
<div class="span3"><%= membership.input :start, :as=>:datepicker %></div>
<div class="span3"><%= membership.input :stop, :as=>:datepicker,:label=>false %></div>
<div class="span3"><%= membership. input :gremium %></div>
<div class="span2"><%= membership.input :typ ,:as=>:radio, :collection=>Membership::TYPEN.invert %></div>
</div>
<% end %>
<% end %>
<div class="row-fluid">
<div class="span12">
<%= f.actions do %>
<%= f.action :submit, :as => :input %>
<% end %>
</div>
</div>
<% end %>
</div>

View File

@@ -30,3 +30,6 @@
<br />
<%= render 'layouts/pretty_toolbar' %>
<%= link_to 'New Gremium', new_gremium_path %>

View File

@@ -1,6 +1,4 @@
<h1>Editing neuigkeit</h1>
<%= %>
<%= render 'form' %>
<%= link_to 'Show', @neuigkeit %> |
<%= link_to 'Back', neuigkeiten_path %>
<%= render 'layouts/pretty_toolbar' %>