Neugkeiten Verwalten..

This commit is contained in:
Andreas Stephanides
2013-09-01 10:44:27 +02:00
parent 9f2c184e43
commit 4dbe3f90b4
6 changed files with 106 additions and 45 deletions

View File

@@ -5,7 +5,6 @@ class RubrikenController < ApplicationController
@rubriken = Rubrik.all @rubriken = Rubrik.all
@neuigkeiten = Neuigkeit.recent @neuigkeiten = Neuigkeit.recent
end end
def show def show
@rubrik = Rubrik.find(params[:id]) @rubrik = Rubrik.find(params[:id])
@@ -20,7 +19,6 @@ class RubrikenController < ApplicationController
def edit def edit
@rubrik = Rubrik.find(params[:id]) @rubrik = Rubrik.find(params[:id])
end end
def create def create
@rubrik = Rubrik.new(params[:rubrik]) @rubrik = Rubrik.new(params[:rubrik])
@@ -51,6 +49,16 @@ class RubrikenController < ApplicationController
format.html { redirect_to @rubrik,:notice => response_notice } format.html { redirect_to @rubrik,:notice => response_notice }
end end
end end
def removemoderator
rubrik = Rubrik.find(params[:id])
m = User.find(params[:moderator])
if m.has_role?(:newsmoderator,rubrik)
m.remove_role(:newsmoderator,rubrik)
end
redirect_to verwalten_rubrik_path(rubrik)
end
def update def update
@rubrik = Rubrik.find(params[:id]) @rubrik = Rubrik.find(params[:id])
@@ -64,13 +72,24 @@ class RubrikenController < ApplicationController
end end
end end
end end
def verwalten def verwalten
@rubrik = Rubrik.find(params[:id]) @rubrik = Rubrik.find(params[:id])
@moderatoren=User.with_role(:newsmoderator,@rubrik) @neuigkeiten_unpublished = @rubrik.neuigkeiten.unpublished
end @neuigkeiten_published=@rubrik.neuigkeiten.published
@moderatoren=User.with_role(:newsmoderator,@rubrik)
end
# Alle Rubriken verwalten und Sachen einstellen..
def alle_verwalten def alle_verwalten
@rubriken =Rubrik.all @rubriken =Rubrik.all
@neuigkeiten_unpublished = Neuigkeit.unpublished
@neuigkeiten_public_published = Neuigkeit.published.public
@toolbar_elements << {:text=>I18n.t('common.new'),:path=>new_rubrik_path() ,:icon=>:plus} if can? :new, Rubrik
end end
# DELETE /rubriken/1 # DELETE /rubriken/1
# DELETE /rubriken/1.json # DELETE /rubriken/1.json
def destroy def destroy

View File

@@ -24,6 +24,8 @@ class Neuigkeit < ActiveRecord::Base
mount_uploader :picture, PictureUploader mount_uploader :picture, PictureUploader
scope :published, -> {where("datum <= ? AND datum IS NOT NULL", Time.now.to_date).order(:datum).reverse_order} scope :published, -> {where("datum <= ? AND datum IS NOT NULL", Time.now.to_date).order(:datum).reverse_order}
scope :recent, -> { published.where("updated_at >= ? ",Time.now - 7.days)} scope :recent, -> { published.where("updated_at >= ? ",Time.now - 7.days)}
scope :unpublished, -> {where("datum >= ? OR datum IS NULL", Date.today)}
scope :public, ->{includes(:rubrik).where("rubriken.public"=>:true)}
def datum_nilsave def datum_nilsave
self.datum.nil? ? Time.now + 42.years : self.datum self.datum.nil? ? Time.now + 42.years : self.datum
end end

View File

@@ -1,27 +1,32 @@
<h1>Listing gremien</h1> <h1>Listing gremien</h1>
<div class="container-fluid">
<table>
<tr>
<th>Name</th>
<th>Desc</th>
<th>Typ</th>
<th></th>
<th></th>
<th></th>
</tr>
<% @gremien.each do |gremium| %> <% @gremien.each do |gremium| %>
<tr> <div class="row-fluid">
<td><%= gremium.name %></td> <div class="span2">
<td><%= gremium.desc %></td> <%= gremium.typ %>
<td><%= gremium.typ %></td> </div>
<td><%= link_to 'Show', gremium %></td> <div class="span18">
<td><%= link_to 'Edit', edit_gremium_path(gremium) %></td> <b><%= gremium.name %></b>
<td><%= link_to 'Destroy', gremium, method: :delete, data: { confirm: 'Are you sure?' } %></td> <%= gremium.desc %>
</tr> </div>
<div span="2">
<%= link_to 'Show', gremium %>
<%= link_to 'Edit', edit_gremium_path(gremium) %>
<%= link_to 'Destroy', gremium, method: :delete, data: { confirm: 'Are you sure?' } %>
</div>
</div>
<% end %> <% end %>
</div>
<tr></td>
</tr>
</table> </table>
<br /> <br />
<%= render 'layouts/pretty_toolbar' %>
<%= link_to 'New Gremium', new_gremium_path %> <%= link_to 'New Gremium', new_gremium_path %>

View File

@@ -1,8 +1,23 @@
<table class="table"> <table class="table">
<% rubriken.each do |r| %> <% neuigkeiten.each do |n| %>
<% r.neuigkeiten.each do |n| %> <% r = n.rubrik %>
<tr> <tr>
<td><%= r.name %></td><td><%= n.title %></td></tr> <td><%= r.public%></td>
<% end <td><%= r.name %></td>
end %> <td>
<%= n.title %>
</td>
<td>
<%= unless n.datum.nil?
I18n.l(n.datum)
else
link_to "publish", publish_rubrik_neuigkeit_path(r,n) if can?(:publish, n)
end
%>
<%= link_to "edit", edit_rubrik_neuigkeit_path(r,n) if can? :publish, n %>
</td>
</tr>
<% end %>
</table> </table>

View File

@@ -1,5 +1,15 @@
<h1>Neuigkeiten Verwaltung</h1>
<h2>Rubriken</h2>
<ul>
<% @rubriken.each do |r| %>
<li> <%= link_to r.name, verwalten_rubrik_path(r)%></li>
<% end %>
</ul>
<h2>Nicht veröffentlicht</h2>
<%= render :partial=>"admin_liste", :locals=>{:neuigkeiten=>@neuigkeiten_unpublished} %>
<h2>Öffentlich veröffentlicht</h2>
<%= render :partial=>"admin_liste", :locals=>{:neuigkeiten=>@neuigkeiten_public_published} %>
<%= render :partial=>"admin_liste", :locals=>{:rubriken=>@rubriken} %> <%= render 'layouts/pretty_toolbar' %>
<%= link_to 'New Rubrik', new_rubrik_path unless cannot?(:new, Rubrik) %>

View File

@@ -1,22 +1,32 @@
<h1><%= @rubrik.name %></h1> <h1><%= @rubrik.name %></h1>
<p id="notice"><%= notice %></p>
<%= render :partial=>'admin_liste', :locals=>{:rubriken => [@rubrik]} %> <p id="notice"><%= notice %></p>
<h2>Nicht Veröffentlicht</h2>
<%= render :partial=>'admin_liste', :locals=>{:neuigkeiten => @neuigkeiten_unpublished} %>
<h2>Veröffentlicht</h2>
<%= render :partial=>'admin_liste', :locals=>{:neuigkeiten => @neuigkeiten_published} %>
<b>Moderatoren:</b>
<table class="table"> <table class="table">
<b>Moderatoren:</b><i> <% @moderatoren.each do |m|%>
<% @moderatoren.each do |m|%> <tr>
<tr><td> <td>
<%= m.email%></td><td>Entfernen</td></tr> <%= m.email%>
<% end%></i> </td>
<td>
<%= link_to "Entfernen" , removemoderator_rubrik_path(:rubrik,{:moderator=>m.id})%>
</td>
</tr>
<% end%>
</table>
<%= semantic_form_for [@rubrik], :url=> url_for(:action => 'addmoderator',:id=>@rubrik.id) do |f| %>
<%= semantic_form_for @rubrik, :url=> url_for(:action => 'addmoderator',:id=>@rubrik.id) do |f| %>
<%= f.inputs do %> <%= f.inputs do %>
<%= f.input :moderator, :as => :select, :collection => Hash[User.all.map{|b| [b.email,b.id]}] ,:label=>"Hinzufuegen"%> <%= f.input :moderator, :as => :select, :collection => Hash[User.all.map{|b| [b.email,b.id]}] ,:label=>"Hinzufuegen"%>
<% end %> <% end %>
<%= f.action :submit %> <%= f.action :submit %>
<% end %> <% end %>
<%= link_to 'Edit', edit_rubrik_path(@rubrik) %> | <%= link_to 'Edit', edit_rubrik_path(@rubrik) %> |
<%= link_to 'Anzeigen', rubrik_path(@rubrik) %> <%= link_to 'Anzeigen', rubrik_path(@rubrik) %>
<%= link_to 'Destroy', @rubrik, method: :delete, data: { confirm: 'Are you sure?' } %> <%= link_to 'Destroy', @rubrik, method: :delete, data: { confirm: 'Are you sure?' } %>