small fixes rubriken und themen

This commit is contained in:
Andreas Stephanides
2014-04-11 13:02:00 +02:00
parent 9b6907f4cb
commit e9be76d6e4
8 changed files with 64 additions and 41 deletions

View File

@@ -9,6 +9,11 @@ class NeuigkeitenController < ApplicationController
def show def show
@neuigkeit = Neuigkeit.find(params[:id]) @neuigkeit = Neuigkeit.find(params[:id])
@rubrik=@neuigkeit.rubrik @rubrik=@neuigkeit.rubrik
if can?(:shownonpublic, Rubrik)
@rubriken = Rubrik.all
else
@rubriken = Rubrik.where(:public=>true)
end
if !params[:version].nil? if !params[:version].nil?
@neuigkeit.assign_attributes(@neuigkeit.translation.versions.reverse[params[:version].to_i].reify.attributes.select{|k,v| @neuigkeit.translated_attribute_names.include? k.to_sym }) @neuigkeit.assign_attributes(@neuigkeit.translation.versions.reverse[params[:version].to_i].reify.attributes.select{|k,v| @neuigkeit.translated_attribute_names.include? k.to_sym })

View File

@@ -2,14 +2,25 @@ class RubrikenController < ApplicationController
before_filter {@toolbar_elements=[]} before_filter {@toolbar_elements=[]}
load_and_authorize_resource load_and_authorize_resource
def index def index
if can?(:shownonpublic, Rubrik)
@rubriken = Rubrik.all @rubriken = Rubrik.all
@neuigkeiten = Neuigkeit.recent else
@calentries= Calentry.public @rubriken = Rubrik.where(:public=>true)
end
@neuigkeiten = @rubriken.collect(&:neuigkeiten).map(&:recent).flatten
@calentries= @rubriken.collect(&:calendar).collect(&:calentries).flatten
end end
def show def show
if can?(:shownonpublic, Rubrik)
@rubriken = Rubrik.all
else
@rubriken = Rubrik.where(:public=>true)
end
@rubrik = Rubrik.find(params[:id]) @rubrik = Rubrik.find(params[:id])
@moderatoren=User.with_role(:newsmoderator,@rubrik) @moderatoren=User.with_role(:newsmoderator,@rubrik)
@calentries= @rubrik.calentries
if can?(:showunpublished, Neuigkeit) if can?(:showunpublished, Neuigkeit)
@neuigkeiten = @rubrik.neuigkeiten @neuigkeiten = @rubrik.neuigkeiten
else else

View File

@@ -76,6 +76,7 @@ class Ability
if user.has_role?("newsadmin") || user.has_role?( "fetadmin") || user.has_role?( "fetuser") if user.has_role?("newsadmin") || user.has_role?( "fetadmin") || user.has_role?( "fetuser")
can :manage, Rubrik can :manage, Rubrik
can :manage, Neuigkeit can :manage, Neuigkeit
can :shownonpublic, Rubrik
can :showunpublished, Neuigkeit can :showunpublished, Neuigkeit
end end

View File

@@ -36,14 +36,18 @@
class Lva < ActiveRecord::Base class Lva < ActiveRecord::Base
ERLAUBTE_TYPEN = ['VO', 'UE', 'VU', 'LU', 'SE', 'andere']; ERLAUBTE_TYPEN = ['VO', 'UE', 'VU', 'LU', 'SE', 'andere'];
has_paper_trail :ignore=>[:desc, :pruefungsinformation]# Versionsverfolgung has_paper_trail :ignore=>[:desc, :pruefungsinformation]# Versionsverfolgung
translates :desc,:pruefungsinformation, :fallbacks_for_empty_translations => true, :versioning=>true
attr_accessible :desc, :ects, :lvanr, :name, :stunden, :modul_ids, :semester_ids, :pruefungsinformation, :lernaufwand, :typ, :lecturer_ids attr_accessible :desc, :ects, :lvanr, :name, :stunden, :modul_ids, :semester_ids, :pruefungsinformation, :lernaufwand, :typ, :lecturer_ids
has_and_belongs_to_many :modul,:uniq=>true # Gehört zu einem Modul has_and_belongs_to_many :modul,:uniq=>true # Gehört zu einem Modul
has_and_belongs_to_many :semester has_and_belongs_to_many :semester
#Gehört zu einem Semester( derzeit nicht implementiert)
has_many :beispiele , :class_name => "Beispiel" has_many :beispiele , :class_name => "Beispiel"
has_and_belongs_to_many :lecturers has_and_belongs_to_many :lecturers
translates :desc,:pruefungsinformation, :fallbacks_for_empty_translations => true, :versioning=>true has_many :nlinks, as: :link
scope :search, ->(query) {where("name like ? or lvas.desc like ?", "%#{query}%", "%#{query}%")} scope :search, ->(query) {where("name like ? or lvas.desc like ?", "%#{query}%", "%#{query}%")}
validates :lvanr,:format=>{ :with => /^[0-9][0-9][0-9]\.[0-9A][0-9][0-9]$/}, :presence=>true, :uniqueness=>true # , :uniqueness=>true # LVA-Nummer muss das Format 000.000 besitzen (uniqueness?) oder 000 für nicht validates :lvanr,:format=>{ :with => /^[0-9][0-9][0-9]\.[0-9A][0-9][0-9]$/}, :presence=>true, :uniqueness=>true # , :uniqueness=>true # LVA-Nummer muss das Format 000.000 besitzen (uniqueness?) oder 000 für nicht
@@ -53,7 +57,7 @@ class Lva < ActiveRecord::Base
validates_presence_of :stunden # Stunden Eingetragen? validates_presence_of :stunden # Stunden Eingetragen?
validates_presence_of :modul # Zugehöriges Modul eingetragen? validates_presence_of :modul # Zugehöriges Modul eingetragen?
# (zumindest eines) # (zumindest eines)
has_many :nlinks, as: :link
def title def title
self.name self.name

View File

@@ -1,7 +1,7 @@
<ul class="nav nav-tabs"> <ul class="nav nav-tabs">
<li <%= 'class="active"'.html_safe if (request.fullpath == rubriken_path)%> > <li <%= 'class="active"'.html_safe if (request.fullpath == rubriken_path)%> >
<%= link_to I18n.t('rubriken.alle') , rubriken_path %> </li> <%= link_to I18n.t('rubriken.alle') , rubriken_path %> </li>
<% for r in Rubrik.all %> <% for r in @rubriken %>
<% if can?(:show, r) %> <% if can?(:show, r) %>
<li <%= (!@rubrik.nil? && r == @rubrik) ? 'class="active"'.html_safe : '' %> title="<%= r.name %>"> <li <%= (!@rubrik.nil? && r == @rubrik) ? 'class="active"'.html_safe : '' %> title="<%= r.name %>">
<%= link_to r.name, r %> <%= link_to r.name, r %>

View File

@@ -31,7 +31,7 @@
</div> </div>
<div class="span3"> <div class="span3">
<%= render 'calendars/calentries', :object=>@rubrik.calendar.calentries %> <%= render 'calendars/calentries', :object=>@calentries %>
<%= link_to "ics-format", calendar_path(@rubrik.calendar,:format=>:ics) %> <%= link_to "ics-format", calendar_path(@rubrik.calendar,:format=>:ics) %>
</div> </div>

View File

@@ -20,5 +20,7 @@
<h2><%= I18n.t('attachment.title')%>:</h2> <h2><%= I18n.t('attachment.title')%>:</h2>
<div id="attachmentform"> <div id="attachmentform">
</div> </div>
<%= link_to new_thema_attachment_path(@thema) ,:remote=>true do %> new Attachment <% end %> <%= link_to new_thema_attachment_path(@thema) ,:remote=>true do %> new Attachment <% end %>
<%= render :partial => "themen/select", :object => @thema, :locals=>{:editor => :false} %> <%= render :partial => "themen/select", :object => @thema, :locals=>{:editor => :false} %>
<%= link_to I18n.t('common.back'), themengruppen_path, :class=>:btn %>

View File

@@ -1,23 +1,23 @@
<div class="content-wrap content-column" > <div class="content-wrap content-column" >
<%= link_to fa_icon("arrow-circle-left 2x")+" Alle Themengruppen", themengruppen_path, :class=>"linkbox" %> <%= link_to fa_icon("arrow-circle-left 2x")+" Alle Themengruppen", themengruppen_path, :class=>"linkbox" %>
<%= link_to fa_icon("question 2x")+" Häufige Fragen", faqs_themengruppen_path(:anchor=>"themengruppe_"+@themengruppe.id.to_s), :class=>"linkbox" %> <%= link_to fa_icon("question 2x")+" Häufige Fragen", faqs_themengruppen_path(:anchor=>"themengruppe_"+@themengruppe.id.to_s), :class=>"linkbox" %>
<h1><%= @themengruppe.title %></h1> <h1><%= @themengruppe.title %></h1>
<p> <p>
<%= @themengruppe.text %> <%= @themengruppe.text %>
</p> </p>
<ul class="unstyled linkbox-list" > <ul class="unstyled linkbox-list" >
<% @themengruppe.themen.each do |thema| %> <% @themengruppe.themen.each do |thema| %>
<li> <li>
<div class="contentbox"> <div class="contentbox">
<%= render :partial => 'themen/small', :object => thema %> <%= render :partial => 'themen/small', :object => thema %>
tools: tools:
<% <%
@small_elements2 = [] @small_elements2 = []
@small_elements2 << {:icon=>:pencil, :hicon=>'icon-pencil', :text=>I18n.t('common.verwalten'), :path=>verwalten_thema_path(thema)} if can? :edit, thema @small_elements2 << {:icon=>:pencil, :hicon=>'icon-pencil', :text=>I18n.t('common.verwalten'), :path=>verwalten_thema_path(thema)} if can? :edit, thema
%> %>
<%= render :partial=>'layouts/pretty_toolbar', :object=>@small_elements2 unless @small_elements2.empty? %> <%= render :partial=>'layouts/pretty_toolbar', :object=>@small_elements2 unless @small_elements2.empty? %>
<ul class="unstyled"> <ul class="unstyled">
<% unless thema.gremium.nil? %> <% unless thema.gremium.nil? %>
<li> <li>
@@ -26,13 +26,13 @@ tools:
<% end %> <% end %>
<% thema.nlinks.each do |l| %> <% thema.nlinks.each do |l| %>
<li><%= render l.neuigkeit %></li> <li><%= render l.neuigkeit %></li>
<% end %> <% end %>
</ul> </ul>
</div> </div>
</li> </li>
<% end %> <% end %>
</ul> </ul>
<%= render :partial=>'layouts/pretty_toolbar' %> <%= render :partial=>'layouts/pretty_toolbar' %>
</div> </div>