Semesteransicht auf RESTful routes aufgebaut
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
class StudienController < ApplicationController
|
class StudienController < ApplicationController
|
||||||
before_filter {@toolbar_elements =[]}
|
before_filter {@toolbar_elements =[]}
|
||||||
|
|
||||||
|
|
||||||
def index
|
def index
|
||||||
@@ -12,19 +12,12 @@ class StudienController < ApplicationController
|
|||||||
|
|
||||||
def show
|
def show
|
||||||
@studium= Studium.find(params[:id])
|
@studium= Studium.find(params[:id])
|
||||||
@sem = params[:sem]
|
@sem = 'false'
|
||||||
if @sem.nil?
|
if @sem.nil?
|
||||||
@sem = 'true'
|
@sem = 'true'
|
||||||
end
|
end
|
||||||
if @sem == 'true'
|
@text = 'Zu Semesteransicht wechseln'
|
||||||
@link = "Modulansicht"
|
@path = studium_semesteransicht_path(@studium)
|
||||||
@change = 'false'
|
|
||||||
else
|
|
||||||
@link = "Semesteransicht"
|
|
||||||
@change = 'true'
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@studienphasen=[]
|
@studienphasen=[]
|
||||||
[1, 2 ,3].each do |ph|
|
[1, 2 ,3].each do |ph|
|
||||||
@@ -37,15 +30,15 @@ class StudienController < ApplicationController
|
|||||||
opts={:width=>4, :slice=>3}
|
opts={:width=>4, :slice=>3}
|
||||||
end
|
end
|
||||||
modulgruppen =[]
|
modulgruppen =[]
|
||||||
modulgruppen_phase.each_slice(opts[:slice]) do |s|
|
modulgruppen_phase.each_slice(opts[:slice]) do |s|
|
||||||
modulgruppen<<s #
|
modulgruppen<<s #
|
||||||
end
|
end
|
||||||
@studienphasen << {:modulgruppen=>modulgruppen, :phase => ph}.merge(opts)
|
@studienphasen << {:modulgruppen=>modulgruppen, :phase => ph}.merge(opts)
|
||||||
end
|
end
|
||||||
@toolbar_elements=[{:icon =>:plus ,:text=> I18n.t('studien.new') , :path => new_studium_path(@studium) }]
|
@toolbar_elements=[{:icon =>:plus ,:text=> I18n.t('studien.new') , :path => new_studium_path(@studium) }]
|
||||||
@toolbar_elements<<{:icon=>:pencil,:text =>I18n.t('common.edit'),:path => edit_studium_path(@studium)}
|
@toolbar_elements<<{:icon=>:pencil,:text =>I18n.t('common.edit'),:path => edit_studium_path(@studium)}
|
||||||
@toolbar_elements<<{:text=> I18n.t('common.delete'),:path => studium_path(@studium), :method=> :delete,:confirm=>"Sure?" }
|
@toolbar_elements<<{:text=> I18n.t('common.delete'),:path => studium_path(@studium), :method=> :delete,:confirm=>"Sure?" }
|
||||||
end
|
end
|
||||||
|
|
||||||
def new
|
def new
|
||||||
@studium = Studium.new
|
@studium = Studium.new
|
||||||
@@ -53,8 +46,8 @@ class StudienController < ApplicationController
|
|||||||
|
|
||||||
def edit
|
def edit
|
||||||
@studium = Studium.find(params[:id])
|
@studium = Studium.find(params[:id])
|
||||||
@toolbar_elements=[{:text => I18n.t('studien.anzeigen') , :path => url_for(@studium) }]
|
@toolbar_elements=[{:text => I18n.t('studien.anzeigen') , :path => url_for(@studium) }]
|
||||||
@toolbar_elements<<{:text =>I18n.t('studien.allestudien'),:path=>studien_path(@studium)}
|
@toolbar_elements<<{:text =>I18n.t('studien.allestudien'),:path=>studien_path(@studium)}
|
||||||
end
|
end
|
||||||
|
|
||||||
def create
|
def create
|
||||||
@@ -73,18 +66,27 @@ class StudienController < ApplicationController
|
|||||||
def update
|
def update
|
||||||
@studium = Studium.find(params[:id])
|
@studium = Studium.find(params[:id])
|
||||||
|
|
||||||
if @studium.update_attributes(params[:studium])
|
if @studium.update_attributes(params[:studium])
|
||||||
redirect_to url_for(@studium), notice: 'Studium was successfully updated.'
|
redirect_to url_for(@studium), notice: 'Studium was successfully updated.'
|
||||||
else
|
else
|
||||||
render action: "edit"
|
render action: "edit"
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
def semesteransicht
|
||||||
|
@sem = 'true'
|
||||||
|
@studium = Studium.find(params[:id])
|
||||||
|
if @studium.nil?
|
||||||
|
@studium = Studium.first
|
||||||
|
end
|
||||||
|
@text = 'Zu Modulgruppenansicht wechseln'
|
||||||
|
@path = studium_path(@studium)
|
||||||
|
end
|
||||||
|
|
||||||
def destroy
|
def destroy
|
||||||
@studium = Studium.find(params[:id])
|
@studium = Studium.find(params[:id])
|
||||||
@studium.destroy
|
@studium.destroy
|
||||||
redirect_to studien_url
|
redirect_to studien_url
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,17 +0,0 @@
|
|||||||
|
|
||||||
<h1><%= @studium.typ %> <%= @studium.name %> (<%= @studium.zahl %>)</h1>
|
|
||||||
</div>
|
|
||||||
<%= raw(@studium.desc) %>
|
|
||||||
<% @studienphasen.each do |sp| %>
|
|
||||||
<% sp[:modulgruppen].each do |row| %>
|
|
||||||
<div class="row-fluid">
|
|
||||||
<% row.each do |modulgruppe| %>
|
|
||||||
<div class="span<%= sp[:width]%> min-width:13em;">
|
|
||||||
<%= render modulgruppe %>
|
|
||||||
</div>
|
|
||||||
<% end %>
|
|
||||||
</div>
|
|
||||||
<% end %>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
|
|
||||||
10
app/views/studien/_navigation.html.erb
Executable file
10
app/views/studien/_navigation.html.erb
Executable file
@@ -0,0 +1,10 @@
|
|||||||
|
<%= link_to '<i class="icon-list"></i>'.html_safe+ I18n.t("studien.allestudien"), studien_path,:raw=>true %> /
|
||||||
|
<% Studium.all.each do |s| %>
|
||||||
|
<% if @sem=='true' %>
|
||||||
|
<%= link_to s.name + " / ", studium_semesteransicht_path(s) %>
|
||||||
|
<% else %>
|
||||||
|
<%= link_to s.name + " / ", studium_path(s) %>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
|
<%= link_to @text, @path%>
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
|
|
||||||
<h1><%= @studium.typ %> <%= @studium.name %> (<%= @studium.zahl %>)</h1>
|
|
||||||
</div>
|
|
||||||
<%= raw(@studium.desc) %>
|
|
||||||
<% @studium.semester.each do |sem| %>
|
|
||||||
<div class="row-fluid">
|
|
||||||
<% if sem.nummer > 0 %>
|
|
||||||
<h2><%= sem.nummer.to_s + ". Semester" %></h2>
|
|
||||||
<% else %>
|
|
||||||
<h2> Ohne Zuordnung </h2>
|
|
||||||
<% end %>
|
|
||||||
<div class="span<%= sem[:width]%> min-width:13em;">
|
|
||||||
<ul>
|
|
||||||
<% sem.lvas.sort_by{|n| n[:name]}.each do |l| %>
|
|
||||||
<li><%= render :partial=>'lvas/lva_semester', :locals =>{:lva => l}%>
|
|
||||||
<%end%>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<% end %>
|
|
||||||
</div>
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
<div class="studium">
|
<div class="studium">
|
||||||
<b ><%= link_to studium.name + " " + studium.zahl.to_s, studium_path(studium)%></b>(<%=link_to "Modulgruppenansicht", studium_path(studium, :sem=>'false')%>)<br>
|
<b ><%= link_to studium.name + " " + studium.zahl.to_s, studium_semesteransicht_path(studium)%></b>(<%=link_to "Modulgruppenansicht",studium_path(studium) %>)<br>
|
||||||
<div>
|
<div>
|
||||||
<b>Typ: </b><%= studium.typ%>
|
<b>Typ: </b><%= studium.typ%>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
21
app/views/studien/semesteransicht.html.erb
Normal file
21
app/views/studien/semesteransicht.html.erb
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
<%= render :partial=>'studien/navigation'%>
|
||||||
|
<div>
|
||||||
|
<h1><%= @studium.typ %> <%= @studium.name %> (<%= @studium.zahl %>)</h1>
|
||||||
|
<%= raw(@studium.desc) %>
|
||||||
|
<% @studium.semester.each do |sem| %>
|
||||||
|
<div class="row-fluid">
|
||||||
|
<% if sem.nummer > 0 %>
|
||||||
|
<h2><%= sem.nummer.to_s + ". Semester" %></h2>
|
||||||
|
<% else %>
|
||||||
|
<h2> Ohne Zuordnung </h2>
|
||||||
|
<% end %>
|
||||||
|
<div class="span<%= sem[:width]%> min-width:13em;">
|
||||||
|
<ul>
|
||||||
|
<% sem.lvas.sort_by{|n| n[:name]}.each do |l| %>
|
||||||
|
<li><%= render :partial=>'lvas/lva_semester', :locals =>{:lva => l}%>
|
||||||
|
<%end%>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
@@ -1,16 +1,21 @@
|
|||||||
|
<%= render :partial=>'studien/navigation'%>
|
||||||
<div class="container-fluid">
|
<div class="container-fluid">
|
||||||
<div class="row-fluid">
|
<div class="row-fluid">
|
||||||
<p id="notice"><%= notice %></p>
|
<p id="notice"><%= notice %></p>
|
||||||
|
<h1><%= @studium.typ %> <%= @studium.name %> (<%= @studium.zahl %>)</h1>
|
||||||
<%= link_to '<i class="icon-list"></i>'.html_safe+ I18n.t("studien.allestudien"), studien_path,:raw=>true %>|<%= link_to "Zu "+@link+ " wechseln", studium_path(@studium, :sem => @change)%>
|
</div>
|
||||||
|
<%= raw(@studium.desc) %>
|
||||||
<% if @sem=='false'%>
|
<% @studienphasen.each do |sp| %>
|
||||||
<%= render :partial => "studien/modulansicht", @collection => @studium, :as=>:studium%>
|
<% sp[:modulgruppen].each do |row| %>
|
||||||
<% else %>
|
<div class="row-fluid">
|
||||||
<%= render :partial =>"studien/semesteransicht", @collection => @studium, :as=>:studium%>
|
<% row.each do |modulgruppe| %>
|
||||||
|
<div class="span<%= sp[:width]%> min-width:13em;">
|
||||||
|
<%= render modulgruppe %>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
<br>
|
<% end %>
|
||||||
|
|
||||||
|
|
||||||
<div class="row-fluid">
|
<div class="row-fluid">
|
||||||
<span class="span12">
|
<span class="span12">
|
||||||
|
|||||||
@@ -19,17 +19,21 @@ Fetsite::Application.routes.draw do
|
|||||||
end
|
end
|
||||||
get 'pages', :to =>'pages#show'
|
get 'pages', :to =>'pages#show'
|
||||||
scope '(:locale)' do
|
scope '(:locale)' do
|
||||||
|
|
||||||
resources :studien, :only=>[:show,:new,:edit,:update,:destroy]
|
resources :studien, :only=>[:show,:new,:edit,:update,:destroy]
|
||||||
resources :modulgruppen,:only =>[:create,:index]
|
resources :modulgruppen,:only =>[:create,:index]
|
||||||
|
|
||||||
resources :studien,:except=>[:show,:new,:edit,:update,:destroy], :shallow=>true do
|
resources :studien,:except=>[:show,:new,:edit,:update,:destroy], :shallow=>true do
|
||||||
resources :modulgruppen, :path => "(:locale)/modulgruppen"
|
resources :modulgruppen, :path => "(:locale)/modulgruppen"
|
||||||
|
|
||||||
end
|
end
|
||||||
|
get 'studien/:id/semesteransicht', :controller=>:studien, :action=>:semesteransicht, :as=>'studium_semesteransicht'
|
||||||
resources :semesters
|
resources :semesters
|
||||||
resources :moduls
|
resources :moduls
|
||||||
resources :lvas
|
resources :lvas
|
||||||
resources :neuigkeiten
|
resources :neuigkeiten
|
||||||
get 'rubriken/verwalten', :controller=>:rubriken, :action=>:alle_verwalten, :as=>'alle_verwalten_rubrik'
|
get 'rubriken/verwalten', :controller=>:rubriken, :action=>:alle_verwalten, :as=>'alle_verwalten_rubrik'
|
||||||
|
|
||||||
resources :rubriken do
|
resources :rubriken do
|
||||||
resources :neuigkeiten, :only=>[:new, :show]
|
resources :neuigkeiten, :only=>[:new, :show]
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user