diff --git a/app/assets/stylesheets/formtastic-changes.css.scss b/app/assets/stylesheets/formtastic-changes.css.scss index 233b45e..a23eeb0 100644 --- a/app/assets/stylesheets/formtastic-changes.css.scss +++ b/app/assets/stylesheets/formtastic-changes.css.scss @@ -1,6 +1,9 @@ form.formtastic .stringish input { width:90%; } +form.formtastic select { +width:90% +} form.formtastic textarea { width:90%; height:20em; diff --git a/app/controllers/studien_controller.rb b/app/controllers/studien_controller.rb index 0504b84..f5b9d63 100755 --- a/app/controllers/studien_controller.rb +++ b/app/controllers/studien_controller.rb @@ -184,10 +184,10 @@ class StudienController < ApplicationController for m in @module if m.valid? - @messages << m.name + ' hat keine Modulgruppe' if m.modulgruppen.count == 0 - @messages << m.name + ' hat keine Lvas' if m.lvas.count == 0 + @messages << m.name.to_s + ' hat keine Modulgruppe' if m.modulgruppen.count == 0 + @messages << m.name.to_s + ' hat keine Lvas' if m.lvas.count == 0 else - @messages << ''+m.name + ': ' + @messages << ''+m.name.to_s + ': ' @messages << m.errors.full_messages @messages << '' end diff --git a/app/models/lva.rb b/app/models/lva.rb index 300e0e2..411d913 100755 --- a/app/models/lva.rb +++ b/app/models/lva.rb @@ -16,8 +16,9 @@ # class Lva < ActiveRecord::Base + ERLAUBTE_TYPEN = ['VO', 'UE', 'VU', 'LU', 'SE', 'andere']; has_paper_trail # Versionsverfolgung - attr_accessible :desc, :ects, :lvanr, :name, :stunden, :modul_ids, :semester_ids, :pruefungsinformation, :lernaufwand + attr_accessible :desc, :ects, :lvanr, :name, :stunden, :modul_ids, :semester_ids, :pruefungsinformation, :lernaufwand, :typ has_and_belongs_to_many :modul # Gehört zu einem Modul has_and_belongs_to_many :semester #Gehört zu einem Semester( derzeit nicht implementiert) @@ -27,8 +28,8 @@ class Lva < ActiveRecord::Base validates :lvanr,:format=>{ :with => /^[0-9][0-9][0-9]\.[0-9][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_presence_of :ects # ECTS vorhanden? - validates :name, :presence=>true - validates :name, :uniqueness=>true# Name Eingetragen? + validates :name, :presence=>true, :uniqueness=>true# Name Eingetragen? + validates :typ, :presence=>true, :inclusion=> ERLAUBTE_TYPEN validates_presence_of :stunden # Stunden Eingetragen? validates_presence_of :modul # Zugehöriges Modul eingetragen? (zumindest eines) def add_semesters diff --git a/app/views/lvas/_form.html.erb b/app/views/lvas/_form.html.erb index be3ef9d..ec38a70 100755 --- a/app/views/lvas/_form.html.erb +++ b/app/views/lvas/_form.html.erb @@ -8,8 +8,11 @@
- - <%= f.input :name, :wrapper_html=>{:class=>'span5'}%> + <%= f.input :typ, :as=>:select, :include_blank=>false, :collection=>Lva::ERLAUBTE_TYPEN, :wrapper_html=>{:class=>'span2'}%> + + <%= f.input :name, :wrapper_html=>{:class=>'span10'}%> +
+
<%= f.input :lvanr, :wrapper_html=>{:class=>'span4'}%> diff --git a/app/views/lvas/show.html.erb b/app/views/lvas/show.html.erb index c174b8e..49557eb 100755 --- a/app/views/lvas/show.html.erb +++ b/app/views/lvas/show.html.erb @@ -3,7 +3,7 @@

<%= notice %>

-

<%= @lva.name %>

+

<%=@lva.typ.to_s + ' ' + @lva.name %>

Prüfungsinformation

<%= @lva.pruefungsinformation %> diff --git a/app/views/modulgruppen/show.html.erb b/app/views/modulgruppen/show.html.erb index a127623..3c00840 100755 --- a/app/views/modulgruppen/show.html.erb +++ b/app/views/modulgruppen/show.html.erb @@ -1,11 +1,4 @@ - -

<%= notice %>

-

<%= @modulgruppe.name %>

@@ -21,7 +14,6 @@ <% @modulgruppe.moduls.each do |modul| %> <%= render 'moduls/kurz', :modul=>modul%> <% end %> -
<%= I18n.t("common.actions")%> @@ -30,4 +22,4 @@ <%= link_to I18n.t("modulgruppe.studium"), studium_path(@modulgruppe.studium),:class =>"btn" %> <%= link_to I18n.t("common.edit"), edit_modulgruppe_path(@modulgruppe),:class =>"btn" %> <%= link_to I18n.t("common.delete"),[@modulgruppe], :method=>:delete , :data=>{:confirm=>I18n.t("common.sure")} ,:class=>"btn" %> -
+
diff --git a/app/views/moduls/_kurz.html.erb b/app/views/moduls/_kurz.html.erb index 7792e5b..2f70525 100755 --- a/app/views/moduls/_kurz.html.erb +++ b/app/views/moduls/_kurz.html.erb @@ -1,10 +1,6 @@

<% if !modul.name.nil? %><%= link_to "Modul "+ modul.name , modul_path(modul) %> <%end%>

-

- <%= raw(modul.desc) %> -

- <% link_to ''.html_safe+I18n.t("common.edit"), edit_modul_path(modul) %>
diff --git a/app/views/moduls/_modul.html.erb b/app/views/moduls/_modul.html.erb index 78ff8dc..0bf3d55 100755 --- a/app/views/moduls/_modul.html.erb +++ b/app/views/moduls/_modul.html.erb @@ -2,22 +2,27 @@

<%=@modul.name %>

-

Beschreibung

+ +
+
+

Beschreibung

<%= raw(@modul.desc) %>

-

Lvas

-<% @modul.lvas.each_slice(3) do |row| %> -
-<% row.each do |lv| %> -
-<%= render 'lvas/lva_semester', :lva=>lv%> -
-<% end %> -
-<% end %> -

Modulgruppen

+
+
+

Modulgruppen

<% @modul.modulgruppen.each do |mg| %> <%= render 'modulgruppen/kurz', :modulgruppe=>mg %>
<% end %> + +

Lvas

+<% @modul.lvas.each_slice(3) do |row| %> +<% row.each do |lv| %> +<%= render 'lvas/lva_semester', :lva=>lv%> +<% end %> + +<% end %> + +
diff --git a/app/views/studien/verwalten.html.erb b/app/views/studien/verwalten.html.erb index a7b7d4b..c1008e8 100644 --- a/app/views/studien/verwalten.html.erb +++ b/app/views/studien/verwalten.html.erb @@ -3,14 +3,14 @@
-

<%= I18n.t("studien.verwaltung") %>

<%= link_to I18n.t("filter.reset"), studien_verwalten_path(:std_verw=>nil, :mg_verw=>nil, :m_verw=>nil, :lva_verw=>nil, :b_verw=>nil), :class=>"btn" %> - <%= I18n.t("filter.explanation").html_safe %> +

<%= I18n.t("studien.verwaltung.title") %>

+ <%= I18n.t("studien.verwaltung.explanation").html_safe %>

Studien

| <% @studien.each do |s| %> - <%= link_to s.name, s %> <%= (s.valid?) ? "Gültig" : "Problemfall" %> | <% end %> + <%= (s.valid?) ? ' '.html_safe : ''.html_safe %> <%= link_to s.name, s %> | <%=link_to ''.html_safe+ 'edit', edit_studium_path(s)%> ||<% end %>
@@ -36,7 +36,7 @@

Modulgruppen

<% @modulgruppen.each do |mg| %> - <%= link_to mg.name, mg %> | <%= (mg.valid?) ? "Gültig" : "Problemfall" %>
+ <%= (mg.valid?) ? ' '.html_safe : ''.html_safe %> <%= link_to mg.name, mg %> | <%=link_to ''.html_safe+ 'edit', edit_modulgruppe_path(mg)%>
<% end %>
@@ -65,8 +65,8 @@ <% @module.each do |m| %> - <%= link_to m.name, m %> - | <%= (m.valid?) ? "Gültig" : "Problemfall" %>
+ <%= (m.valid?) ? ' '.html_safe : ''.html_safe %> <%= link_to m.name, m %> + | <%=link_to ''.html_safe+ 'edit', edit_modul_path(m)%>
<% end %>
@@ -93,8 +93,8 @@ <% @lvas.each do |lva| %> - <%= link_to lva.name, lva %> | - <%= (lva.valid?) ? "Gültig" : "Problemfall" %>
+ <%= (lva.valid?) ? ' '.html_safe : ''.html_safe %><%= link_to lva.name, lva %> | + <%=link_to ''.html_safe+ 'edit', edit_lva_path(lva)%>
<% end %>
@@ -123,11 +123,12 @@
+ <%= link_to I18n.t("filter.reset"), studien_verwalten_path(:std_verw=>nil, :mg_verw=>nil, :m_verw=>nil, :lva_verw=>nil, :b_verw=>nil), :class=>"btn" %>

Error Log

    -
  • Red: Error, Solve immediately
  • -
  • Black: Warning, should be solved
  • -
  • Green: Everything is fine
  • +
  • Red: Error, Solve immediately
  • +
  • Black: Warning, should be solved
  • +
  • Green: Everything is fine
    @@ -144,7 +145,7 @@ <% @beispiele.each do |b| %> - <%= link_to b.name, b %> +<%= (b.valid?) ? ' '.html_safe : ''.html_safe %> <%= link_to b.name, b %> | <%=link_to ''.html_safe+ 'edit', edit_beispiel_path(b)%> <% end %>
    diff --git a/config/locales/de.yml b/config/locales/de.yml index 0b26e0f..22b46ad 100755 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -13,7 +13,12 @@ de: allestudien: "Alle Studien" loeschen: "Dieses Studium löschen" edit: "Studium bearbeiten" - verwaltung: "Studien verwalten" + 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" @@ -83,17 +88,20 @@ de: lva: attributes: modul: - blank: "Wählen Sie zumindest ein Modul aus" + blank: "Lva muss zumindest einem Modul zugewiesen sein" name: - blank: "Geben Sie bitte den Namen der LVA an" + blank: "Die Lva muss einen Namen haben" ects: - blank: "Geben Sie die ECTS der LVA an" + blank: "Es müssen ECTS eingetragen sein" stunden: - blank: "Geben Sie die Stunden der LVA an" + blank: "Es muss die Studenanzahl eingettragen sein" lvanr: - invalid: "Geben Sie eine Nummer im Format 000.000 an." + invalid: "Die Nummer muss im Format 000.000 eingegeben sein" blank: "Geben sie eine Lva-Nr an" - taken: "Die Lva-Nummer ist bereits vergeben" + taken: "Die Lva-Nummer ist vergeben" + typ: + blank: "Es muss ein Lva-Typ angegeben sein" + inclusion: "Der Typ ist nicht aus der Auswahl der gültigen Typen" studium: attributes: @@ -111,7 +119,7 @@ de: modulgruppen: blank: "Wählen Sie zumindest eine Modulgruppe aus" filter: - explanation: "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" + studium: "Studium" modulgruppe: "Modulgruppe" modul: "Modul" diff --git a/db/migrate/20130811191150_add_pruefungsinfos_to_lvas.rb b/db/migrate/20130811191150_add_pruefungsinfos_to_lvas.rb new file mode 100644 index 0000000..a4a2443 --- /dev/null +++ b/db/migrate/20130811191150_add_pruefungsinfos_to_lvas.rb @@ -0,0 +1,6 @@ +class AddPruefungsinfosToLvas < ActiveRecord::Migration + def change + add_column :lvas, :pruefungsinformation, :text + add_column :lvas, :lernaufwand, :text + end +end diff --git a/db/migrate/20130812070544_add_typ_to_lvas.rb b/db/migrate/20130812070544_add_typ_to_lvas.rb new file mode 100644 index 0000000..ed8c291 --- /dev/null +++ b/db/migrate/20130812070544_add_typ_to_lvas.rb @@ -0,0 +1,5 @@ +class AddTypToLvas < ActiveRecord::Migration + def change + add_column :lvas, :typ, :string + end +end diff --git a/db/schema.rb b/db/schema.rb index af3e9e3..a247941 100755 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended to check this file into your version control system. -ActiveRecord::Schema.define(:version => 20130811191150) do +ActiveRecord::Schema.define(:version => 20130812070544) do create_table "attachments", :force => true do |t| t.string "name" @@ -116,6 +116,7 @@ ActiveRecord::Schema.define(:version => 20130811191150) do t.integer "semester_id" t.text "pruefungsinformation" t.text "lernaufwand" + t.string "typ" end create_table "lvas_moduls", :id => false, :force => true do |t|