forked from bofh/fetsite
Merge branch 'thomasb/master'
This commit is contained in:
@@ -5,19 +5,20 @@ class ModulgruppenController < ApplicationController
|
||||
load_and_authorize_resource
|
||||
def index
|
||||
@modulgruppen = Modulgruppe.all
|
||||
if !params[:studium_id].nil?
|
||||
@studium=Studium.find(params[:studium_id])
|
||||
end
|
||||
|
||||
if !params[:studium_id].nil?
|
||||
@studium=Studium.find(params[:studium_id])
|
||||
else
|
||||
@studium=Studium.first
|
||||
end
|
||||
end
|
||||
|
||||
# GET /modulgruppen/1
|
||||
|
||||
def show
|
||||
@modulgruppe = Modulgruppe.find(params[:id])
|
||||
if !params[:studium_id].nil?
|
||||
@studium=Studium.find(params[:studium_id])
|
||||
end
|
||||
if !params[:studium_id].nil?
|
||||
@studium=Studium.find(params[:studium_id])
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@@ -25,9 +26,15 @@ class ModulgruppenController < ApplicationController
|
||||
|
||||
def new
|
||||
@modulgruppe = Modulgruppe.new
|
||||
if !params[:studium_id].nil?
|
||||
@studium=Studium.find(params[:studium_id])
|
||||
end
|
||||
if !params[:studium_id].nil?
|
||||
@studium=Studium.find(params[:studium_id])
|
||||
else
|
||||
@studium=Studium.first
|
||||
end
|
||||
respond_to do |format|
|
||||
format.html # new.html.erb
|
||||
format.json { render json: @modulgruppe }
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@@ -35,26 +42,26 @@ class ModulgruppenController < ApplicationController
|
||||
def edit
|
||||
@modulgruppe = Modulgruppe.find(params[:id])
|
||||
if !params[:studium_id].nil?
|
||||
@studium=Studium.find(params[:studium_id])
|
||||
end
|
||||
@studium=Studium.find(params[:studium_id])
|
||||
end
|
||||
end
|
||||
|
||||
# POST /modulgruppen
|
||||
|
||||
def create
|
||||
@modulgruppe = Modulgruppe.new(params[:modulgruppe])
|
||||
if !params[:studium_id].nil?
|
||||
if !params[:studium_id].nil?
|
||||
@studium=Studium.find_by_id(params[:studium_id])
|
||||
else
|
||||
@studium=Studium.find_by_id(params[:modulgruppe][:studium_id])
|
||||
end
|
||||
end
|
||||
respond_to do |format|
|
||||
if @modulgruppe.save
|
||||
format.html { redirect_to @modulgruppe, notice: 'Modulgruppe was successfully created.' }
|
||||
|
||||
else
|
||||
format.html { render action: "new" }
|
||||
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -66,10 +73,10 @@ class ModulgruppenController < ApplicationController
|
||||
respond_to do |format|
|
||||
if @modulgruppe.update_attributes(params[:modulgruppe])
|
||||
format.html { redirect_to @modulgruppe, notice: 'Modulgruppe was successfully updated.' }
|
||||
|
||||
|
||||
else
|
||||
format.html { render action: "edit" }
|
||||
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -4,12 +4,13 @@ class ModulsController < ApplicationController
|
||||
def index
|
||||
@moduls = Modul.all
|
||||
if !params[:studium_id].nil?
|
||||
@studium=Studium.find(params[:studium_id])
|
||||
end
|
||||
@studium=Studium.find(params[:studium_id])
|
||||
end
|
||||
respond_to do |format|
|
||||
format.html # index.html.erb
|
||||
format.json { render json: @moduls }
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
# GET /moduls/1
|
||||
@@ -27,8 +28,10 @@ class ModulsController < ApplicationController
|
||||
# GET /moduls/new.json
|
||||
def new
|
||||
@modul = Modul.new
|
||||
modulgruppe=Modulgruppe.find(params[:modulgruppen_id])
|
||||
@modul.modulgruppen<<modulgruppe
|
||||
modulgruppe=Modulgruppe.find_by_id(params[:modulgruppen_id])
|
||||
if !modulgruppe.nil?
|
||||
@modul.modulgruppen<<modulgruppe
|
||||
end
|
||||
respond_to do |format|
|
||||
format.html # new.html.erb
|
||||
format.json { render json: @modul }
|
||||
|
||||
@@ -5,6 +5,8 @@ class StudienController < ApplicationController
|
||||
def index
|
||||
@studien = Studium.all
|
||||
@toolbar_elements<<{:icon =>:plus, :text=> I18n.t('studien.new') ,:path=>new_studium_path }
|
||||
@toolbar_elements<<{:text=> I18n.t('modulgruppe.show.link') ,:path=>modulgruppen_path }
|
||||
@toolbar_elements<<{:text=> I18n.t('modul.show.link') ,:path=>moduls_path }
|
||||
end
|
||||
|
||||
def show
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# == Schema Information
|
||||
#
|
||||
# Table name: lvas
|
||||
@@ -24,9 +25,12 @@ class Lva < ActiveRecord::Base
|
||||
|
||||
translates :desc, :fallbacks_for_empty_translations => true
|
||||
|
||||
validates :lvanr, :presence=>true; # LVA Nr vorhanden?
|
||||
validates :ects, :presence=>true; # ECTS vorhanden?
|
||||
|
||||
validates :lvanr,:format=>{ :with => /^[0-9][0-9][0-9]\.[0-9][0-9][0-9]$/} # , :uniqueness=>true # LVA-Nummer muss das Format 000.000 besitzen (uniqueness?) oder 000 für nicht existent
|
||||
|
||||
validates_presence_of :ects # ECTS vorhanden?
|
||||
validates_presence_of :name # Name Eingetragen?
|
||||
validates_presence_of :stunden # Stunden Eingetragen?
|
||||
validates_presence_of :modul # Zugehöriges Modul eingetragen? (zumindest eines)
|
||||
private
|
||||
|
||||
##
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
# -*- coding: undecided -*-
|
||||
# == Schema Information
|
||||
#
|
||||
# Table name: moduls
|
||||
@@ -13,9 +14,11 @@
|
||||
class Modul < ActiveRecord::Base
|
||||
attr_accessible :desc,:name, :depend, :studium_id, :modulgruppe_ids
|
||||
|
||||
has_and_belongs_to_many :lvas
|
||||
has_and_belongs_to_many :lvas
|
||||
has_and_belongs_to_many :modulgruppen
|
||||
|
||||
validates :modulgruppen, :presence=>true # Ein Modul muss zu einer Modulgruppe gehören
|
||||
validates :name, :presence=>true # Ein Modul muss einen Namen haben
|
||||
translates :desc,:depend,:name, :versioning =>true, :fallbacks_for_empty_translations => true
|
||||
|
||||
end
|
||||
|
||||
@@ -16,10 +16,12 @@ class Modulgruppe < ActiveRecord::Base
|
||||
attr_accessible :name, :phase, :typ,:desc, :studium_id
|
||||
belongs_to :studium, :foreign_key => "studium_id"
|
||||
has_and_belongs_to_many :moduls
|
||||
|
||||
resourcify
|
||||
validates :studium_id, :presence => true
|
||||
validates :studium, :presence => true
|
||||
validates :name, :uniqueness =>{:scope => :studium}, :presence=>true
|
||||
|
||||
validates :studium_id, :presence => true # Bei der Abfrage ist student_id entscheidend
|
||||
validates :studium, :presence => true # Wird gesetzt, um das richtige Feld zu melden bei Fehlern
|
||||
validates :name, :uniqueness =>{:scope => :studium}, :presence=>true # Funktioniert leider nicht
|
||||
validates :phase, :inclusion => {:in => [1, 2, 3, 4]}
|
||||
validates :typ, :inclusion => {:in => ["Pflicht","Vertiefungspflicht","Wahl"] }
|
||||
translates :name,:desc, :versioning =>true,:fallbacks_for_empty_translations => true
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @lva.modul.each do |modul| %>
|
||||
<% modul.modulgruppen.each do |g| %>
|
||||
<ul class="breadcrumb">
|
||||
<li><%= link_to g.studium.name , studium_path(g)%>
|
||||
<li><%= link_to g.studium.name , studium_path(g.studium)%>
|
||||
<span class="divider">/</span></li>
|
||||
<li><%= link_to g.name , modulgruppe_path(g)%><span class="divider">/</span></li>
|
||||
<li><%= link_to modul.name , modul_path(modul)%></li>
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
<div class="modulgruppe_phase_<%= modulgruppe.phase %>" >
|
||||
<h2><%= link_to modulgruppe.name, modulgruppe_path(modulgruppe) %>
|
||||
</h2>
|
||||
<h2><%= link_to modulgruppe.name, modulgruppe_path(modulgruppe) %>
|
||||
</h2>
|
||||
|
||||
<%= modulgruppe.desc%>
|
||||
<%= render :partial=>'moduls/kurz', :collection=>modulgruppe.moduls, :as=>:modul%>
|
||||
<br>
|
||||
<%= modulgruppe.desc%>
|
||||
<%= render :partial=>'moduls/kurz', :collection=>modulgruppe.moduls, :as=>:modul%>
|
||||
<br>
|
||||
|
||||
<% link_to '<i class="icon-pencil"></i>'.html_safe+I18n.t("common.edit"), edit_modulgruppe_path(modulgruppe) %>
|
||||
<!-- dropdown menu links -->
|
||||
<% link_to '<i class="icon-pencil"></i>'.html_safe+I18n.t("common.edit"), edit_modulgruppe_path(modulgruppe) %>
|
||||
<!-- dropdown menu links -->
|
||||
|
||||
</ul>
|
||||
|
||||
</ul>
|
||||
|
||||
</span>
|
||||
|
||||
</span>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<h1>Listing modulgruppen</h1>
|
||||
<h1><%= I18n.t("modulgruppe.show.title")%></h1>
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
@@ -11,7 +11,7 @@
|
||||
<th></th>
|
||||
</tr>
|
||||
|
||||
<% @modulgruppen.each do |modulgruppe| %>
|
||||
<% @modulgruppen.sort_by{|n| n[:name]}.each do |modulgruppe| %>
|
||||
<tr>
|
||||
<td><%= modulgruppe.typ %></td>
|
||||
<td><%= modulgruppe.phase %></td>
|
||||
@@ -24,7 +24,7 @@
|
||||
<% end %>
|
||||
</table>
|
||||
|
||||
<br />
|
||||
<br>
|
||||
<% if !@studium.nil? %>
|
||||
<%= link_to 'New Modulgruppe', new_modulgruppe_path %>
|
||||
<%= link_to 'New Modulgruppe', new_studium_modulgruppe_path(@studium) %>
|
||||
<% end%>
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
<h1>Alle Module der Elektrotechnik</h1>
|
||||
<h1><%= I18n.t("modul.show.title") %></h1>
|
||||
|
||||
<table class="table" >
|
||||
<tr>
|
||||
<th>Studium</th>
|
||||
<th>Modulgruppe</th>
|
||||
<th>Modulgruppe (Studium)</th>
|
||||
<th>Name</th>
|
||||
<th>Desc</th>
|
||||
<th></th>
|
||||
@@ -11,12 +10,19 @@
|
||||
<th></th>
|
||||
</tr>
|
||||
|
||||
<% @moduls.each do |modul| %>
|
||||
<% @moduls.sort_by{|n| n[:name]}.each do |modul| %>
|
||||
<tr>
|
||||
<td><%= %></td>
|
||||
<td><%= if !modul.modulgruppen.first.nil?
|
||||
modul.modulgruppen.first[:name]
|
||||
end %> </td>
|
||||
<td>
|
||||
<%modul.modulgruppen.sort_by{|n| n[:name]}.each do |m|%>
|
||||
|
||||
|
||||
<%=m.name unless m.nil? %> (<%=m.studium.name unless m.studium.nil? %>)
|
||||
<!-- Modulgruppenname falls existiert (Studium falls existiert) -->
|
||||
<br>
|
||||
<% end %>
|
||||
|
||||
</td>
|
||||
|
||||
<td><%= modul.name %></td>
|
||||
<td><%= modul.desc %></td>
|
||||
<td><%= link_to 'Show', modul_path(modul) %></td>
|
||||
@@ -27,6 +33,7 @@ end %> </td>
|
||||
</table>
|
||||
|
||||
<br />
|
||||
<% if !@studium.nil? %>
|
||||
<% #if !@studium.nil? %>
|
||||
<%= link_to 'New Modul', new_modul_path() %>
|
||||
<% end%>
|
||||
<% #end%>
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<h1><%= I18n.t("studien.list") %></h1>
|
||||
|
||||
|
||||
<% @studien.each do |studium| %>
|
||||
<% @studien.sort_by{|z| z[:zahl]}.each do |studium| %>
|
||||
|
||||
|
||||
<h2><%= link_to studium.zahl + " "+ studium.typ+" " + studium.name, studium_path(studium) %></h2>
|
||||
@@ -10,6 +10,6 @@
|
||||
|
||||
|
||||
<br />
|
||||
|
||||
<% link_to I18n.t("studien.new"), new_studium_path %>
|
||||
<% link_to I18n.t("modulgruppe.show"), modulgruppen_path %>
|
||||
<%= toolbar_html(@toolbar_elements) %>
|
||||
|
||||
@@ -15,12 +15,18 @@ de:
|
||||
modul:
|
||||
edit:
|
||||
title: "Bearbeite Modul"
|
||||
show:
|
||||
title: "Auflistung aller Module"
|
||||
link: "Alle Module auflisten"
|
||||
|
||||
modulgruppe:
|
||||
typ: "Typ"
|
||||
addmodul: "Neues Modul hinzufügen"
|
||||
studium: "Studium"
|
||||
new: "Neue Modulgruppe"
|
||||
show:
|
||||
title: "Auflistung aller Modulgruppen"
|
||||
link: "Modulgruppen auflisten"
|
||||
|
||||
home:
|
||||
mtitle: "Menu"
|
||||
@@ -65,3 +71,16 @@ de:
|
||||
name:
|
||||
blank: "Bitte geben sie einen Namen ein"
|
||||
taken: "Der Name ist schon vergeben (Hier ist ein Bug)"
|
||||
lva:
|
||||
attributes:
|
||||
modul:
|
||||
blank: "Wählen Sie zumindest ein Modul aus"
|
||||
name:
|
||||
blank: "Geben Sie bitte den Namen der LVA an"
|
||||
ects:
|
||||
blank: "Geben Sie die ECTS der LVA an"
|
||||
stunden:
|
||||
blank: "Geben Sie die Stunden der LVA an"
|
||||
lvanr:
|
||||
invalid: "Geben Sie eine LVA-Nummer in richtigem Format an. Wenn die LVA noch keine Nummer hat, so geben sie 000 an."
|
||||
|
||||
|
||||
Reference in New Issue
Block a user