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| %> -
+
+
+

<%= I18n.t 'calendars.calendar' %>

+ <% @calendars.each do |calendar| %> +
- +
-

<%= link_to calendar.name, calendar %>

+

<%= link_to calendar.name, calendar %>

+
+ <% end %>
-<% end %> -
-
-
-
-<%= 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 %> +
+
+

+ + <%= image_tag(@lecturer.picture.thumb.url) unless @lecturer.picture.nil? %> + <%= f.file_field :picture %> + <%= f.hidden_field :picture_cache %> +

+

+ +

+
+
+ <%= 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 @@ +
+ + + +
+

<%= link_to lec_lva.name, lec_lva %>

+ Email: <%= mail_to lec_lva.email %>
+ TISS: <%= link_to lec_lva.name, lec_lva.link %> +
+
+ 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

-
@@ -53,6 +47,13 @@ <% end %>
+
+

<%= I18n.t "lecturers.lecturers" %>

+ <% @lva.lecturers.each do |lec| %> + <%= render :partial=>'lecturers/lec_lva', :object=>lec %> + + <% 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