diff --git a/app/controllers/beispiele_controller.rb b/app/controllers/beispiele_controller.rb
index d0a8146..8e8d5fb 100755
--- a/app/controllers/beispiele_controller.rb
+++ b/app/controllers/beispiele_controller.rb
@@ -2,6 +2,7 @@ class BeispieleController < ApplicationController
# GET /beispiele
# GET /beispiele.json
def index
+ @lva = params([:lva])
@beispiele = Beispiel.all
respond_to do |format|
@@ -13,6 +14,7 @@ class BeispieleController < ApplicationController
# GET /beispiele/1
# GET /beispiele/1.json
def show
+ @lva = lva unless lva.nil?
@beispiel = Beispiel.find(params[:id])
respond_to do |format|
diff --git a/app/controllers/lvas_controller.rb b/app/controllers/lvas_controller.rb
index 985d99d..d2ee71f 100755
--- a/app/controllers/lvas_controller.rb
+++ b/app/controllers/lvas_controller.rb
@@ -4,6 +4,9 @@ class LvasController < ApplicationController
def index
@lvas = Lva.all
@toolbar_elements=[{:hicon=>'icon-plus-sign',:text =>I18n.t('lva.add'),:path => new_lva_path}]
+ @tb=[{:hicon=>'icon-list', :text=>I18n.t("studien.allestudien"),:path=>studien_path},
+ {:hicon=>'icon-list', :text=>I18n.t("modul.list"),:path=>moduls_path},
+ {:hicon=>'icon-list', :text=>I18n.t("lva.list"),:path=>lvas_path}]
end
# GET /lvas/1
@@ -20,7 +23,7 @@ class LvasController < ApplicationController
def new
@lva = Lva.new
modul=Modul.find_by_id(params[:modul_id])
- @lva.modul<'icon-plus-sign', :text=>I18n.t("modul.add"), :path=>new_modul_path}]
+ @toolbar_elements = [{:hicon=>'icon-plus-sign', :text=>I18n.t("modul.add"), :path=>new_modul_path}]
+ @topbar_elements=[{:hicon=>'icon-list', :text=>I18n.t("studien.allestudien"),:path=>studien_path}]
+ @topbar_elements<<{:hicon=>'icon-list', :text=>I18n.t("modul.list"),:path=>moduls_path}
+ @topbar_elements<<{:hicon=>'icon-list', :text=>I18n.t("lva.list"),:path=>lvas_path}
respond_to do |format|
format.html # index.html.erb
format.json { render json: @moduls }
end
end
+
end
# GET /moduls/1
# GET /moduls/1.json
def show
@modul = Modul.find(params[:id])
- @toolbar_elements = [{:hicon=>'icon-plus-sign', :text=>I18n.t("lva.add"), :path=>new_lva_path(:modul_id =>@modul.id)}]
+ @toolbar_elements = [{:hicon=>'icon-plus-sign', :text=>I18n.t("lva.add"), :path=>new_lva_path(:modul_id =>@modul.id)}]
@toolbar_elements << {:hicon=>'icon-pencil', :text=>I18n.t("modul.edit"), :path=>edit_modul_path(@modul)}
@toolbar_elements << {:hicon=>'icon-remove-circle', :text=>I18n.t("common.delete"),:path=>@modul , :method=>:delete , :data=>{:confirm =>'Are you sure'}}
+
+ @topbar_elements = [{:hicon=>'icon-list', :text=>I18n.t("modul.list"),:path=>moduls_path}]
+
+ @topbar_elements <<{:newline=>true}
+ for i in @modul.modulgruppen
+ if !i.studium.nil?
+ name =i.studium.name
+ id = i.studium.id
+ else
+ s.name = 'Kein Studium vorhanden'
+ s.id = nil
+ end
+ @topbar_elements <<{:text=> i.name + ' ('+i.studium.name + ')', :path=>studium_modulgruppen_path(i)}
+ end
respond_to do |format|
format.html # show.html.erb
format.json { render json: @modul }
end
-
end
# GET /moduls/new
@@ -37,7 +54,7 @@ class ModulsController < ApplicationController
@modul = Modul.new
modulgruppe=Modulgruppe.find_by_id(params[:modulgruppen_id])
if !modulgruppe.nil?
- @modul.modulgruppen<:plus, :hicon=>'icon-plus-sign', :text=> I18n.t('studien.new') ,:path=>new_studium_path }
- # @toolbar_elements<<{:text=> I18n.t('modulgruppe.show.link') ,:path=>modulgruppen_path }
- end
+def index
+ @studien = Studium.all
+ @topbar_elements=[{:hicon=>'icon-list', :text=>I18n.t("studien.allestudien"),:path=>studien_path}]
+ @topbar_elements<<{:hicon=>'icon-list', :text=>I18n.t("modul.list"),:path=>moduls_path}
+ @topbar_elements<<{:hicon=>'icon-list', :text=>I18n.t("lva.list"),:path=>lvas_path}
+ @toolbar_elements<<{:icon =>:plus, :hicon=>'icon-plus-sign', :text=> I18n.t('studien.new') ,:path=>new_studium_path }
+ # @toolbar_elements<<{:text=> I18n.t('modulgruppe.show.link') ,:path=>modulgruppen_path }
+end
+
+def show
+ @studium= Studium.find(params[:id])
+ @text = 'Zu Semesteransicht wechseln'
+ @path = studium_semesteransicht_path(@studium)
+
+ @studienphasen=[]
+ [1, 2 ,3].each do |ph|
+ modulgruppen_phase=@studium.modulgruppen.where(:phase=>ph)
+ if modulgruppen_phase.count==1
+ opts={:width=>12, :slice=>1}
+ elsif modulgruppen_phase.count <= 4
+ opts={:width=>6, :slice=>2}
+ else
+ opts={:width=>4, :slice=>3}
+ end
+ modulgruppen =[]
+ modulgruppen_phase.each_slice(opts[:slice]) do |s|
+ modulgruppen<ph)
- if modulgruppen_phase.count==1
- opts={:width=>12, :slice=>1}
- elsif modulgruppen_phase.count <= 4
- opts={:width=>6, :slice=>2}
- else
- opts={:width=>4, :slice=>3}
- end
- modulgruppen =[]
- modulgruppen_phase.each_slice(opts[:slice]) do |s|
- modulgruppen<modulgruppen, :phase => ph}.merge(opts)
- end
- @toolbar_elements=[{:icon=>:plus, :hicon =>'icon-plus-sign' ,:text=> I18n.t('studien.new') , :path => new_studium_path(@studium) }]
- @toolbar_elements<<{:icon=>:pencil, :hicon=>'icon-pencil',:text =>I18n.t('common.edit'),:path => edit_studium_path(@studium)}
- @toolbar_elements<<{:hicon=>'icon-remove-circle', :text=> I18n.t('common.delete'),:path => studium_path(@studium), :method=> :delete,:confirm=>"Sure?" }
- @toolbar_modulgruppen =[ {:hicon=>'icon-plus-sign', :text=> I18n.t('modulgruppe.new'), :path=>new_studium_modulgruppe_path(@studium)}]
- @toolbar_modulgruppen << {:hicon=>'icon-list', :text => I18n.t('modulgruppe.list'), :path=>modulgruppen_path}
+ end
+
+ @toolbar_elements=[{:icon=>:plus, :hicon =>'icon-plus-sign' ,:text=> I18n.t('studien.new') , :path => new_studium_path(@studium) },
+ {:icon=>:pencil, :hicon=>'icon-pencil',:text =>I18n.t('common.edit'),:path => edit_studium_path(@studium)},
+ {:hicon=>'icon-remove-circle', :text=> I18n.t('common.delete'),:path => studium_path(@studium), :method=> :delete,:confirm=>"Sure?" }]
+
+ @toolbar_modulgruppen =[ {:hicon=>'icon-plus-sign', :text=> I18n.t('modulgruppe.new'), :path=>new_studium_modulgruppe_path(@studium)},
+ {:hicon=>'icon-list', :text => I18n.t('modulgruppe.list'), :path=>modulgruppen_path}]
+
+ @topbar_elements = [ {:hicon=>'icon-list', :text=>I18n.t("studien.allestudien"), :path=>studien_path},
+ {:text=>'Zur Semesteransicht wechseln', :path=>studium_semesteransicht_path(@studium)},
+ {:newline=>true}]
+ for i in Studium.all
+ @topbar_elements << {:text=>i.name, :path=>studium_path(i)}
+ end
+
end
def new
@@ -79,11 +93,20 @@ class StudienController < ApplicationController
end
@text = 'Zu Modulgruppenansicht wechseln'
@path = studium_path(@studium)
- @toolbar_elements=[{:icon=>:plus, :hicon =>'icon-plus-sign' ,:text=> I18n.t('studien.new') , :path => new_studium_path(@studium) }]
- @toolbar_elements<<{:icon=>:pencil, :hicon=>'icon-pencil',:text =>I18n.t('common.edit'),:path => edit_studium_path(@studium)}
- @toolbar_elements<<{:hicon=>'icon-remove-circle', :text=> I18n.t('common.delete'),:path => studium_path(@studium), :method=> :delete,:confirm=>"Sure?" }
+ @topbar_elements = [ {:hicon=>'icon-list', :text=>I18n.t("studien.allestudien"), :path=>studien_path},
+ {:text=>'Zur Modulgruppenansicht wechseln', :path=>studium_path(@studium)},
+ {:newline=>true}]
+ for i in Studium.all
+ @topbar_elements << {:text=>i.name, :path=>studium_semesteransicht_path(i)}
+ end
+
+
+
+ @toolbar_elements = [ {:icon=>:plus, :hicon =>'icon-plus-sign' ,:text=> I18n.t('studien.new') , :path => new_studium_path(@studium) },
+ {:icon=>:pencil, :hicon=>'icon-pencil',:text =>I18n.t('common.edit'),:path => edit_studium_path(@studium)},
+ {:hicon=>'icon-remove-circle', :text=> I18n.t('common.delete'),:path => studium_path(@studium), :method=> :delete,:confirm=>"Sure?" }]
end
-
+
def destroy
@studium = Studium.find(params[:id])
@studium.destroy
diff --git a/app/views/beispiele/index.html.erb b/app/views/beispiele/index.html.erb
index 7f175a8..89bee7d 100755
--- a/app/views/beispiele/index.html.erb
+++ b/app/views/beispiele/index.html.erb
@@ -1,4 +1,4 @@
-Listing beispiele
+<%= I18n.t("beispiele.list")
<% @beispiele.each do |beispiel| %>
-
diff --git a/app/views/layouts/_topbar.html.erb b/app/views/layouts/_topbar.html.erb
new file mode 100755
index 0000000..f22b2dc
--- /dev/null
+++ b/app/views/layouts/_topbar.html.erb
@@ -0,0 +1,11 @@
+<% topbar = !topbar.nil? ? topbar : @topbar_elements %>
+
+ <% topbar.each do |tb| %>
+ <% if tb[:newline]%>
+
+ <% else %>
+ -
+ <%= link_to_unless_current ''.html_safe+ tb[:text], tb[:path] %>/
+ <% end %>
+ <% end %>
+
diff --git a/app/views/lvas/_lva_semester.html.erb b/app/views/lvas/_lva_semester.html.erb
index 8545843..3c04128 100755
--- a/app/views/lvas/_lva_semester.html.erb
+++ b/app/views/lvas/_lva_semester.html.erb
@@ -1,7 +1,10 @@
- <%= link_to lva.name, lva_path(lva)%>
<%="LVa-Nr " + lva.lvanr.to_s %>
- <%= lva.ects %> ECTS / <%= lva.stunden %> Std <%= " / " + lva.beispiele.count.to_s + " Beispiele"%>
+ <%= link_to lva.name, lva_path(lva)%>
+ (|<% lva.modul.each do |m| %> <%= link_to m.name, modul_path(m) unless m.modulgruppen.map{|x| x.studium}.index(@studium).nil? && !@studium.nil? %> |<% end %>)
+
+ <%="LVa-Nr " + lva.lvanr.to_s %>
+ <%= lva.ects %> ECTS / <%= lva.stunden %> Std <% " / " + lva.beispiele.count.to_s + " Beispiele"%>
<%= link_to "Edit", edit_lva_path(lva) %> | <%= link_to "Beispiel hinzufügen", new_beispiel_path(:lva_id=>lva.id) %>
<% #toolbar_html(@toolbar_elements) %>
diff --git a/app/views/lvas/index.html.erb b/app/views/lvas/index.html.erb
index 640e04a..eb1a57b 100755
--- a/app/views/lvas/index.html.erb
+++ b/app/views/lvas/index.html.erb
@@ -1,4 +1,4 @@
-<%= render 'layouts/link_all' %>
+<%= render :partial=>'layouts/topbar', :object=>@tb %>
<%= I18n.t("lva.list")%>
<% @lvas.each do |l| %>
diff --git a/app/views/lvas/show.html.erb b/app/views/lvas/show.html.erb
index e88bce4..df3bb49 100755
--- a/app/views/lvas/show.html.erb
+++ b/app/views/lvas/show.html.erb
@@ -1,28 +1,34 @@
-<% @lva.modul.each do |modul| %>
-<% modul.modulgruppen.each do |g| %>
-
-- <%= link_to g.studium.name , studium_path(g.studium)%>
-/
-- <%= link_to g.name , modulgruppe_path(g)%>/
-- <%= link_to modul.name , modul_path(modul)%>
-<% end %>
-
-<% end %>
-
+<%= render 'layouts/link_all'%>
<%= notice %>
-
<%= @lva.lvanr %><%= @lva.name %> <%= @lva.ects %> ECTS/ <%= @lva.stunden %> Std
-
+ <%= @lva.lvanr %><%= @lva.name %> <%= @lva.ects %> ECTS/ <%= @lva.stunden %> Std
+
-
+
+
Beschreibung
<%= @lva.desc %>
+Beispiele
-<% @lva.beispiele.each do |b|%>
+ <% @lva.beispiele.each do |b|%>
-- <%= render b%>
+ - <%= render b%>
-<% end %>
+ <% end %>
+
+Module
+
+ <% @lva.modul.each do |modul| %>
+ - <%= link_to modul.name , modul_path(modul)%>
+
+ <% modul.modulgruppen.each do |g| %>
+
+ - <%= link_to g.studium.name , studium_semesteransicht_path(g.studium)%> (<%=link_to g.name, modulgruppe_path(g)%>)
+ <% end %>
+
+
+
+ <% end %>
<%= render 'layouts/pretty_toolbar' %>
diff --git a/app/views/moduls/index.html.erb b/app/views/moduls/index.html.erb
index 3b0e973..385cfb6 100755
--- a/app/views/moduls/index.html.erb
+++ b/app/views/moduls/index.html.erb
@@ -1,4 +1,4 @@
-<%= render 'layouts/link_all' %>
+<%= render 'layouts/topbar' %>
<%= I18n.t("modul.list") %>
<%= render :partial=>'moduls/lang', :collection=>@moduls, :as=>:modul%>
diff --git a/app/views/moduls/show.html.erb b/app/views/moduls/show.html.erb
index 45f598a..74c1367 100755
--- a/app/views/moduls/show.html.erb
+++ b/app/views/moduls/show.html.erb
@@ -1,23 +1,4 @@
-
-
- <% @modul.modulgruppen.each do |g| %>
- <% if !g.nil? %>
- -
- <% if !g.studium.nil? %>
- <%= link_to g.studium.name , studium_path(g.studium) %>
-
- <% else %>
-
- Studium fehlt!
- <% end %>
- /
- - <%= link_to g.name , modulgruppe_path(g)%>
- <% else %>
-
- Modulgruppe Fehlt
- <%end %>
- /
- <%end%>
-
-
+<%= render 'layouts/topbar'%>
<%= notice %>
<%= render @modul %>
diff --git a/app/views/studien/_navigation.html.erb b/app/views/studien/_navigation.html.erb
index cee7ed0..b2c8012 100755
--- a/app/views/studien/_navigation.html.erb
+++ b/app/views/studien/_navigation.html.erb
@@ -2,15 +2,15 @@
- <%= link_to ''.html_safe+ I18n.t("studien.allestudien"), studien_path,:raw=>true %>
/
- - <%= link_to @text, @path%>
+
- <%= link_to @text, @path%>
/
<% Studium.all.each do |s| %>
-
<% if @sem=='true' %>
- <%= link_to s.name, studium_semesteransicht_path(s) %>
+ <%= link_to_unless_current s.name, studium_semesteransicht_path(s) %>
<% else %>
- <%= link_to s.name, studium_path(s) %>
+ <%= link_to_unless_current s.name, studium_path(s) %>
<% end %>
/
diff --git a/app/views/studien/index.html.erb b/app/views/studien/index.html.erb
index cf2ae8b..c67e6c9 100755
--- a/app/views/studien/index.html.erb
+++ b/app/views/studien/index.html.erb
@@ -1,4 +1,4 @@
-<%= render 'layouts/link_all' %>
+<%= render 'layouts/topbar' %>
<%= I18n.t("studien.list") %>
diff --git a/app/views/studien/semesteransicht.html.erb b/app/views/studien/semesteransicht.html.erb
index 62c81eb..22c82c2 100644
--- a/app/views/studien/semesteransicht.html.erb
+++ b/app/views/studien/semesteransicht.html.erb
@@ -1,4 +1,4 @@
-<%= render :partial=>'studien/navigation'%>
+<%= render :partial=>'layouts/topbar'%>
<%= @studium.typ %> <%= @studium.name %> (<%= @studium.zahl %>)
<%= raw(@studium.desc) %>
diff --git a/app/views/studien/show.html.erb b/app/views/studien/show.html.erb
index 64f3c32..e813c9c 100644
--- a/app/views/studien/show.html.erb
+++ b/app/views/studien/show.html.erb
@@ -1,9 +1,10 @@
-<%= render :partial=>'studien/navigation'%>
+<%= render 'layouts/topbar'%>
<%= notice %>
<%= @studium.typ %> <%= @studium.name %> (<%= @studium.zahl %>)
+
<%= raw(@studium.desc) %>
<% @studienphasen.each do |sp| %>
<% sp[:modulgruppen].each do |row| %>
@@ -16,6 +17,7 @@
<% end %>
<% end %>
- <%= render 'layouts/pretty_toolbar' %>
- <%= render :partial=>'layouts/pretty_toolbar', :object=>@toolbar_modulgruppen %>
+ <%= render :partial=>'layouts/pretty_toolbar', :object=>@toolbar_modulgruppen %>
+
+ <%= render 'layouts/pretty_toolbar' %>
diff --git a/db/migrate/20130729085446_create_lva_semester_join_table.rb b/db/migrate/20130729085446_create_lva_semester_join_table.rb
index c4f8ea4..cd29e07 100644
--- a/db/migrate/20130729085446_create_lva_semester_join_table.rb
+++ b/db/migrate/20130729085446_create_lva_semester_join_table.rb
@@ -4,18 +4,11 @@ class CreateLvaSemesterJoinTable < ActiveRecord::Migration
t.integer :lva_id
t.integer :semester_id
end
- add_index :lva_semesters, [:lva_id, :semester_id]
- add_index :lva_semesters, :semester_id
+ add_index :lvas_semesters, [:lva_id, :semester_id]
+ add_index :lvas_semesters, :semester_id
end
- def change
- create_table :lvas_semesters, :id=>false do |t|
- t.integer :lva_id
- t.integer :semester_id
- end
- add_index :lva_semesters, [:lva_id, :semester_id]
- add_index :lva_semesters, :semester_id
- end
+
def self.down
- drop_table :lva_semesters
+ drop_table :lvas_semesters
end
end