diff --git a/app/controllers/lvas_controller.rb b/app/controllers/lvas_controller.rb
index d2ee71f..7a2667c 100755
--- a/app/controllers/lvas_controller.rb
+++ b/app/controllers/lvas_controller.rb
@@ -16,6 +16,7 @@ class LvasController < ApplicationController
@toolbar_elements<<{:hicon=>'icon-plus-sign', :icon=>:plus, :text => "Neues Beispiel", :path=> new_beispiel_path(:lva_id =>@lva.id)}
@toolbar_elements<<{:hicon=>'icon-pencil', :icon=>:pencil,:text =>I18n.t('common.edit'),:path => edit_lva_path(@lva)}
+ @toolbar_elements << {:hicon=>'icon-remove-circle', :text=>I18n.t('common.delete'), :path=> lva_path(@lva), :method=>:delete, :confirm=>"Sure?"}
end
# GET /lvas/new
diff --git a/app/controllers/studien_controller.rb b/app/controllers/studien_controller.rb
index 22fae68..f94a440 100755
--- a/app/controllers/studien_controller.rb
+++ b/app/controllers/studien_controller.rb
@@ -161,9 +161,9 @@ class StudienController < ApplicationController
end
if !@new_params[:lec_verw].nil?
@lecturers=[Lecturer.find(@new_params[:lec_verw])]
- temp = @lecturers.map{|x| x.lva}.flatten.uniq #Force Force Lvas
+ temp = @lecturers.map{|x| x.lvas}.flatten.uniq #Force Force Lvas
@lvas=@lvas.select{|k| temp.include?(k)}
- temp = @lva.map{|x| x.moduls}.flatten.uniq #Force Force Lvas
+ temp = @lvas.map{|x| x.modul}.flatten.uniq #Force Force Lvas
@module=@module.select{|k| temp.include?(k)}
temp = @module.map{|x| x.modulgruppen}.flatten.uniq # Force Modulgruppen
@modulgruppen = @modulgruppen.select{|k| temp.include?(k)}
@@ -247,7 +247,9 @@ class StudienController < ApplicationController
:mg_verw=> params[:mg_verw],
:m_verw=>params[:m_verw],
:lva_verw=>params[:lva_verw],
- :b_verw=>params[:b_verw]}.merge(super)
+ :b_verw=>params[:b_verw],
+ :lec_verw=>params[:lec_verw]}.merge(super)
+
end
end
diff --git a/app/models/ability.rb b/app/models/ability.rb
index 293df62..dd9aefd 100755
--- a/app/models/ability.rb
+++ b/app/models/ability.rb
@@ -1,3 +1,4 @@
+# -*- coding: utf-8 -*-
class Ability
include CanCan::Ability
def initialize(user)
@@ -27,7 +28,7 @@ class Ability
# For Debug allow everything
# Remove this line in production environment and for testing user management
- # can :manage, :all
+ can :manage, :all
can :addfetuser, User
can :addfetadmin, User
can [:show, :index], Studium
diff --git a/app/models/lecturer.rb b/app/models/lecturer.rb
index 773e2de..664e612 100644
--- a/app/models/lecturer.rb
+++ b/app/models/lecturer.rb
@@ -1,4 +1,6 @@
class Lecturer < ActiveRecord::Base
- attr_accessible :email, :name, :oid, :picture, :lva_ids
+ attr_accessible :email, :name, :oid, :picture, :remove_picture, :picture_cache, :lva_ids, :link
has_and_belongs_to_many :lvas
+ mount_uploader :picture, PictureUploader
+ resourcify
end
diff --git a/app/views/calendars/index.html.erb b/app/views/calendars/index.html.erb
index ad394cb..fd90c6c 100644
--- a/app/views/calendars/index.html.erb
+++ b/app/views/calendars/index.html.erb
@@ -1,28 +1,28 @@
-
-
-<%= render 'tabs' %>
-
-
+
+
+ <%= render 'tabs' %>
+
+
-
-
-
<%= I18n.t 'calendars.calendar' %>
-<% @calendars.each do |calendar| %>
-
-
-
-<%= link_to 'New Calendar', new_calendar_path unless cannot?(:new, Calendar) %>
-
-
+
+
+
+ <%= link_to 'New Calendar', new_calendar_path unless cannot?(:new, Calendar) %>
+
+
diff --git a/app/views/lecturers/_form.html.erb b/app/views/lecturers/_form.html.erb
index d9f1416..5dbf669 100644
--- a/app/views/lecturers/_form.html.erb
+++ b/app/views/lecturers/_form.html.erb
@@ -1,10 +1,28 @@
<%= semantic_form_for @lecturer do |f| %>
<%= f.inputs do %>
+
+
<%= f.input :name %>
<%= f.input :email %>
- <%= f.input :oid %>
- <%= f.input :picture, :as=>:file %>
- <%= f.input :lvas %>
+ <%= f.input :link %>
+
+
+
+ Bild
+ <%= image_tag(@lecturer.picture.thumb.url) unless @lecturer.picture.nil? %>
+ <%= f.file_field :picture %>
+ <%= f.hidden_field :picture_cache %>
+
+
+
+ <%= f.check_box :remove_picture %>
+ Bild Entfernen
+
+
+
+
+ <%= f.input :lvas, :as=>:check_boxes%>
+
<% end %>
<%= f.actions do %>
diff --git a/app/views/lecturers/_lec_lva.html.erb b/app/views/lecturers/_lec_lva.html.erb
new file mode 100644
index 0000000..21a9536
--- /dev/null
+++ b/app/views/lecturers/_lec_lva.html.erb
@@ -0,0 +1,11 @@
+
+
diff --git a/app/views/lvas/show.html.erb b/app/views/lvas/show.html.erb
index a294a2e..7aa4d24 100755
--- a/app/views/lvas/show.html.erb
+++ b/app/views/lvas/show.html.erb
@@ -18,17 +18,11 @@
Beispiele
-
Beschreibung
- <%= @lva.desc %>
-
-<%= link_to "Beispiel neu" , new_beispiel_path(:lva_id=>@lva.id) %>
-
-
Beispiele
-
- <% @lva.beispiele.each do |b|%>
+
+ <% @lva.beispiele.each do |b|%>
<%= render b%>
- <% end %>
+ <% end %>
@@ -53,6 +47,13 @@
<% end %>
+
diff --git a/app/views/studien/index.html.erb b/app/views/studien/index.html.erb
index 0d58a99..23459f3 100755
--- a/app/views/studien/index.html.erb
+++ b/app/views/studien/index.html.erb
@@ -4,12 +4,15 @@
<%= I18n.t("studien.list") %>
- <% @studien.sort_by{|z| z[:zahl]}.each do |studium| %>
-
+ <% @studien.each_slice(2) do |row| %>
+
+ <% row.each do |studium|%>
+
<%= render studium%>
<% end %>
-
+
+ <%end%>
diff --git a/app/views/studien/verwalten.html.erb b/app/views/studien/verwalten.html.erb
index af2b07e..dd56b33 100644
--- a/app/views/studien/verwalten.html.erb
+++ b/app/views/studien/verwalten.html.erb
@@ -5,10 +5,10 @@
<%= I18n.t("studien.verwaltung.title") %>
<%= I18n.t("studien.verwaltung.explanation").html_safe %>
-
Studien
+
<%= I18n.t "studien.studien"%>
- <% @studien.each_slice((Studium.count/2.0).ceil) do |col| %>
+ <% @studien.each_slice([(Studium.count/2.0).ceil, 1].max) do |col| %>
<% col.each do |s| %>
@@ -38,7 +38,7 @@
Vortragende
- <% @lecturers.each_slice((Lecturer.count/3.0).ceil) do |col| %>
+ <% @lecturers.each_slice([(Lecturer.count/3.0).ceil, 1].max) do |col| %>
<% col.each do |lec| %>
<%= (lec.valid?) ? '
'.html_safe : '
'.html_safe %> <%= link_to lec.name, lec %> | <%=link_to '
'.html_safe+ 'edit', edit_lecturer_path(lec)%>
@@ -166,7 +166,7 @@
- <% @messages.flatten.each do |m| %>
+ <% @messages.flatten.compact.each do |m| %>
<% if !m.strip.empty? %>
<%= m.html_safe %>
<% end %>
diff --git a/config/locales/de.yml b/config/locales/de.yml
index e6e8ed7..8ebc3cf 100755
--- a/config/locales/de.yml
+++ b/config/locales/de.yml
@@ -7,39 +7,6 @@ de:
edit: "Bearbeiten"
actions: "Aktionen"
delete: "Löschen"
- studien:
- list: "Studien der Fakultät Elektrotechnik"
- anzeigen: "Studium anzeigen"
- new: "Neues Studium"
- allestudien: "Alle Studien"
- loeschen: "Dieses Studium löschen"
- edit: "Studium bearbeiten"
- verwaltung:
- title: "Studien verwalten"
- explanation: "
- Klick auf den Namen eines Objektes führt zu dessen Ansicht, ein Klick auf edit direkt zum Bearbeitungsformular
- Per Dropdown-Menü kann nach einzelnen Objekten gefiltert werden. Die Filter können kombiniert werden, wobei nur erlaubte Kombinationen möglich sind. Solange validation-Fehler (im Log rot und fett) auftreten, keine Filter verwenden
- "
- modul:
- edit: "Modul bearbeiten"
- list: "Alle Module"
- add: "Neues Modul"
- keine:
- beschreibung: "Keine Beschreibung vorhanden"
- lva:
- add: "Lva hinzufügen"
- list: "Alle Lvas"
- semester:
- ohne: "Ohne Semesterzuordnung"
- modulgruppe:
- typ: "Typ"
- addmodul: "Neues Modul hinzufügen"
- studium: "Studium"
- new: "Neue Modulgruppe"
- list: "Alle Modulgruppen auflisten"
- show:
- title: "Auflistung aller Modulgruppen"
- link: "Modulgruppen auflisten"
home:
mtitle: "Menu"
@@ -111,16 +78,6 @@ de:
attributes:
modulgruppen:
blank: "Wählen Sie zumindest eine Modulgruppe aus"
- filter:
- studium: "Studium"
- modulgruppe: "Modulgruppe"
- modul: "Modul"
- lva: "Lva"
- beispiel: "Beispiel"
- reset: "Alle Filter zurücksetzen"
- verwalten:
- fehler:
- keine: "Keine Fehlermeldungen oder Warnungen"
support:
array:
two_words_connector: ', '
diff --git a/config/locales/studien.de.yml b/config/locales/studien.de.yml
new file mode 100644
index 0000000..538d33f
--- /dev/null
+++ b/config/locales/studien.de.yml
@@ -0,0 +1,47 @@
+de:
+ studien:
+ studien: "Studien"
+ list: "Studien der Fakultät Elektrotechnik"
+ anzeigen: "Studium anzeigen"
+ new: "Neues Studium"
+ allestudien: "Alle Studien"
+ loeschen: "Dieses Studium löschen"
+ edit: "Studium bearbeiten"
+ verwaltung:
+ title: "Studien verwalten"
+ explanation: "
+ Klick auf den Namen eines Objektes führt zu dessen Ansicht, ein Klick auf edit direkt zum Bearbeitungsformular
+ Per Dropdown-Menü kann nach einzelnen Objekten gefiltert werden. Die Filter können kombiniert werden, wobei nur erlaubte Kombinationen möglich sind. Solange validation-Fehler (im Log rot und fett) auftreten, keine Filter verwenden
+ "
+ modul:
+ edit: "Modul bearbeiten"
+ list: "Alle Module"
+ add: "Neues Modul"
+ keine:
+ beschreibung: "Keine Beschreibung vorhanden"
+ lva:
+ add: "Lva hinzufügen"
+ list: "Alle Lvas"
+ semester:
+ ohne: "Ohne Semesterzuordnung"
+ modulgruppe:
+ typ: "Typ"
+ addmodul: "Neues Modul hinzufügen"
+ studium: "Studium"
+ new: "Neue Modulgruppe"
+ list: "Alle Modulgruppen auflisten"
+ show:
+ title: "Auflistung aller Modulgruppen"
+ link: "Modulgruppen auflisten"
+ filter:
+ studium: "Studium"
+ modulgruppe: "Modulgruppe"
+ modul: "Modul"
+ lva: "Lva"
+ beispiel: "Beispiel"
+ reset: "Alle Filter zurücksetzen"
+ verwalten:
+ fehler:
+ keine: "Keine Fehlermeldungen oder Warnungen"
+ lecturers:
+ lecturers: "Vortragende"
\ No newline at end of file
diff --git a/db/migrate/20130821113333_add_link_to_lecturers.rb b/db/migrate/20130821113333_add_link_to_lecturers.rb
new file mode 100644
index 0000000..f376657
--- /dev/null
+++ b/db/migrate/20130821113333_add_link_to_lecturers.rb
@@ -0,0 +1,5 @@
+class AddLinkToLecturers < ActiveRecord::Migration
+ def change
+ add_column :lecturers, :link, :string
+ end
+end