From 20f2a159324bbade9dc451f57d3b74cab12a4410 Mon Sep 17 00:00:00 2001 From: Andreas Stephanides Date: Tue, 13 Aug 2013 19:33:54 +0200 Subject: [PATCH 01/13] =?UTF-8?q?unn=C3=B6tige=20Migration=20entfernt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../20130812170437_add_themaid_to_thema_translations.rb | 6 ------ 1 file changed, 6 deletions(-) delete mode 100644 db/migrate/20130812170437_add_themaid_to_thema_translations.rb diff --git a/db/migrate/20130812170437_add_themaid_to_thema_translations.rb b/db/migrate/20130812170437_add_themaid_to_thema_translations.rb deleted file mode 100644 index acd6173..0000000 --- a/db/migrate/20130812170437_add_themaid_to_thema_translations.rb +++ /dev/null @@ -1,6 +0,0 @@ -class AddThemaidToThemaTranslations < ActiveRecord::Migration - def change - add_column :thema_translations, :theman_id, :integer - remove_column :thema_translations, :themen_id, :integer - end -end From 746aff8fa4195d8377b54414f4d0344ea15c5556 Mon Sep 17 00:00:00 2001 From: Andreas Stephanides Date: Tue, 13 Aug 2013 22:20:35 +0200 Subject: [PATCH 02/13] =?UTF-8?q?Tabs=20eingef=C3=BCgt=20bei=20Rubriken?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/rubriken/_tabs.html.erb | 18 ++++++++++++++++++ app/views/rubriken/index.html.erb | 7 ++++--- app/views/rubriken/show.html.erb | 7 +------ 3 files changed, 23 insertions(+), 9 deletions(-) create mode 100644 app/views/rubriken/_tabs.html.erb diff --git a/app/views/rubriken/_tabs.html.erb b/app/views/rubriken/_tabs.html.erb new file mode 100644 index 0000000..86af436 --- /dev/null +++ b/app/views/rubriken/_tabs.html.erb @@ -0,0 +1,18 @@ + diff --git a/app/views/rubriken/index.html.erb b/app/views/rubriken/index.html.erb index 6dd3706..7591824 100755 --- a/app/views/rubriken/index.html.erb +++ b/app/views/rubriken/index.html.erb @@ -1,6 +1,7 @@ + + +<%= render 'tabs' %>

<%= I18n.t("rubrik.title")%>

- - <% @rubriken.each do |rubrik| %> @@ -16,4 +17,4 @@
-<%= link_to 'New Rubrik', new_rubrik_path %> +<%= link_to 'New Rubrik', new_rubrik_path unless cannot?(:new, Rubrik) %> diff --git a/app/views/rubriken/show.html.erb b/app/views/rubriken/show.html.erb index b17ecd1..380d922 100755 --- a/app/views/rubriken/show.html.erb +++ b/app/views/rubriken/show.html.erb @@ -1,10 +1,5 @@ +<%= render 'tabs' %> -

<%= notice %>

From 81c46e28b9ea359292d4a45b2824bc4129a5153d Mon Sep 17 00:00:00 2001 From: Andreas Stephanides Date: Tue, 13 Aug 2013 22:21:45 +0200 Subject: [PATCH 03/13] Rechteverwaltung Start --- app/controllers/users_controller.rb | 6 +++++- app/models/ability.rb | 18 ++++++++++++++---- app/views/users/index.html.erb | 11 ++++++++--- 3 files changed, 27 insertions(+), 8 deletions(-) diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 98c53df..0a1b2db 100755 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -3,7 +3,11 @@ class UsersController < ApplicationController @users = User.all end def add_role - @user.find(params[:id]) + @user= User.find(params[:id]) @user.add_role(params[:role]) end + def do_confirm + @user= User.find(params[:id]) + @user.confirm! + end end diff --git a/app/models/ability.rb b/app/models/ability.rb index 51a0d5d..e33fa36 100755 --- a/app/models/ability.rb +++ b/app/models/ability.rb @@ -27,13 +27,23 @@ class Ability # For Debug allow everything # Remove this line in production environment and for testing user management - can :manage, :all - + # can :manage, :all + can [:show, :index], :all # Rechteverwaltung f�r Studien Modul can :read, Modulgruppe can :manage, Modulgruppe - - + + # Rechteverwaltung Kalender + can [:show, :index], Calendar + can [:show], Calentry + if( user.has_role?("fetuser") || user.has_role?("fetadmin")) + can [:edit, :update,:new,:create,:verwalten], Calendar + can [:edit, :update,:new,:create,:verwalten], Calentry + end + if( user.has_role?("fetadmin")) + can [:delete],Calendar + can [:delete],Calentry + end # Rechteverwaltung fuer Neuigkeiten diff --git a/app/views/users/index.html.erb b/app/views/users/index.html.erb index f630561..efd4a23 100755 --- a/app/views/users/index.html.erb +++ b/app/views/users/index.html.erb @@ -5,12 +5,17 @@ <% @users.each do |user|%> - - + + +<% end %> +<% end %>
NameE-MailRollen
E-MailRollenActions
<%= user.email %>
    <% user.roles.each do |role| %>
  • <%= role.name%>
  • -<% end %>
<%= link_to 'MK FETUSER', user_add_role_path(user, "fetadmin")%> +<%= link_to 'MK fetadmin', user_add_role_path(user, "fetadmin")%> +<%= link_to 'MK fetuser', user_add_role_path(user, "fetuser")%> +<%= link_to 'doconfirm', user_do_confirm_path(user)%> +
From 5c14fdadafbfe80a64b2945f8ae034558decea8d Mon Sep 17 00:00:00 2001 From: Andreas Stephanides Date: Tue, 13 Aug 2013 22:22:37 +0200 Subject: [PATCH 04/13] =?UTF-8?q?Verwaltungsrouten=20eingef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/routes.rb | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/config/routes.rb b/config/routes.rb index bc24ab4..c29421b 100755 --- a/config/routes.rb +++ b/config/routes.rb @@ -6,6 +6,8 @@ scope '(:locale)/admin' do resources :users, :only => [:index] get 'users/:id/add_role/:role', :controller=>:users, :action=>:add_role, :as=>'user_add_role' + get 'users/:id/do_confirm', :controller=>:users, :action=>:do_confirm, :as=>'user_do_confirm' + get 'config',:controller=>:config,:action=>:index , :as => 'config' get 'config/get_git_update',:controller=>:config,:action=>:get_git_update, :as=>'config_getgitupdate' get 'config/get_git_update',:controller=>:config,:action=>:get_git_update @@ -43,6 +45,8 @@ end put 'rubriken/(:id)/addmoderator',:controller=>:rubriken,:action=>:addmoderator get 'rubriken/:id/verwalten',:controller=>:rubriken,:action=>:verwalten, :as=>'verwalten_rubrik' + get 'rubriken/verwalten',:controller=>:rubriken,:action=>:alle_verwalten, :as=>'rubriken_verwalten' + resources :home, :only=>[:index] get 'home/dev', :controller=>:home, :action=>:dev, :as=>'home_dev' resources :beispiele @@ -52,6 +56,8 @@ end resources :calendars + get 'verwalten/calendars', :controller=>:calendars, :action=>:verwalten, :as=>'calendars_verwalten' + resources :calentries end From 501554eee149a987d241590d553ee68d28ac2e43 Mon Sep 17 00:00:00 2001 From: Andreas Stephanides Date: Tue, 13 Aug 2013 22:23:02 +0200 Subject: [PATCH 05/13] Kalender update - tabs... --- app/controllers/calendars_controller.rb | 3 +++ app/models/calendar.rb | 1 + app/models/calentry.rb | 2 ++ app/views/calendars/_tabs.html.erb | 16 ++++++++++++++++ app/views/calendars/index.html.erb | 20 +++++++++++++++++--- app/views/calendars/show.html.erb | 5 +++++ config/locales/calendars.de.yml | 5 +++++ 7 files changed, 49 insertions(+), 3 deletions(-) create mode 100644 app/views/calendars/_tabs.html.erb create mode 100644 config/locales/calendars.de.yml diff --git a/app/controllers/calendars_controller.rb b/app/controllers/calendars_controller.rb index 059a7f0..5a250b7 100644 --- a/app/controllers/calendars_controller.rb +++ b/app/controllers/calendars_controller.rb @@ -1,6 +1,7 @@ class CalendarsController < ApplicationController # GET /calendars # GET /calendars.json + load_and_authorize_resource def index @calendars = Calendar.all respond_to do |format| @@ -80,4 +81,6 @@ class CalendarsController < ApplicationController format.json { head :no_content } end end + def verwalten + end end diff --git a/app/models/calendar.rb b/app/models/calendar.rb index 4f5de1d..5f317b1 100644 --- a/app/models/calendar.rb +++ b/app/models/calendar.rb @@ -2,4 +2,5 @@ class Calendar < ActiveRecord::Base attr_accessible :name, :public, :picture has_and_belongs_to_many :calentries mount_uploader :picture, PictureUploader + resourcify end diff --git a/app/models/calentry.rb b/app/models/calentry.rb index 47f90ee..d4c64bc 100644 --- a/app/models/calentry.rb +++ b/app/models/calentry.rb @@ -8,6 +8,7 @@ class Calentry < ActiveRecord::Base errors.add(:ende, "Es muss ein Endzeitpunkt vorhanden sein") end end + resourcify def start_time start end @@ -17,4 +18,5 @@ class Calentry < ActiveRecord::Base def name summary end + end diff --git a/app/views/calendars/_tabs.html.erb b/app/views/calendars/_tabs.html.erb new file mode 100644 index 0000000..e449cfe --- /dev/null +++ b/app/views/calendars/_tabs.html.erb @@ -0,0 +1,16 @@ + diff --git a/app/views/calendars/index.html.erb b/app/views/calendars/index.html.erb index 8d6c591..ad394cb 100644 --- a/app/views/calendars/index.html.erb +++ b/app/views/calendars/index.html.erb @@ -1,5 +1,13 @@ -

Listing calendars

+
+
+
+<%= render 'tabs' %> +
+
+
+
+

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

<% @calendars.each do |calendar| %>
<% end %> - -<%= link_to 'New Calendar', new_calendar_path %> +
+
+
+
+<%= link_to 'New Calendar', new_calendar_path unless cannot?(:new, Calendar) %> +
+
+
diff --git a/app/views/calendars/show.html.erb b/app/views/calendars/show.html.erb index cb20b2a..cc75f51 100644 --- a/app/views/calendars/show.html.erb +++ b/app/views/calendars/show.html.erb @@ -1,4 +1,9 @@
+
+
+<%= render 'calendars/tabs' %> +
+

<%= notice %>

diff --git a/config/locales/calendars.de.yml b/config/locales/calendars.de.yml new file mode 100644 index 0000000..f109d8c --- /dev/null +++ b/config/locales/calendars.de.yml @@ -0,0 +1,5 @@ + +de: + calendars: + alle: "Alle Kalender" + calendar: "Kalender" From e7974ea69310243c8560f4e0a3d431626c46ff84 Mon Sep 17 00:00:00 2001 From: Thomas Blazek Date: Wed, 14 Aug 2013 22:07:37 +0200 Subject: [PATCH 06/13] blub --- db/schema.rb | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/db/schema.rb b/db/schema.rb index 85d18a2..95500ad 100755 --- a/db/schema.rb +++ b/db/schema.rb @@ -104,14 +104,11 @@ ActiveRecord::Schema.define(:version => 20130813145651) do t.integer "modul_id" end - create_table "lvas_semesters", :id => false, :force => true do |t| + create_table "lvas_semesters", :force => true do |t| t.integer "lva_id" t.integer "semester_id" end - add_index "lvas_semesters", ["lva_id", "semester_id"], :name => "index_lvas_semesters_on_lva_id_and_semester_id" - add_index "lvas_semesters", ["semester_id"], :name => "index_lvas_semesters_on_semester_id" - create_table "modul_translations", :force => true do |t| t.integer "modul_id" t.string "locale" @@ -225,7 +222,7 @@ ActiveRecord::Schema.define(:version => 20130813145651) do t.text "text" t.datetime "created_at", :null => false t.datetime "updated_at", :null => false - t.integer "theman_id" + t.integer "themen_id" end add_index "thema_translations", ["locale"], :name => "index_thema_translations_on_locale" From ecb0275c445769b3931396753c6035b452677bda Mon Sep 17 00:00:00 2001 From: Thomas Blazek Date: Wed, 14 Aug 2013 22:37:53 +0200 Subject: [PATCH 07/13] nav divider css eingebaut --- app/assets/stylesheets/application.css.scss | 11 +++++++++++ app/views/layouts/menu.html.erb | 19 ++++++++++--------- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/app/assets/stylesheets/application.css.scss b/app/assets/stylesheets/application.css.scss index ab46a0b..bd9a219 100755 --- a/app/assets/stylesheets/application.css.scss +++ b/app/assets/stylesheets/application.css.scss @@ -40,3 +40,14 @@ margin-bottom: 20px width:100%; } + +.navbar .nav li { +min-width:60%; + +} +.navbar .nav .divider { +border-style: solid; +border-width: 1px 0px 0px 0px; +border-color: grey; +min-width: 100%; +} \ No newline at end of file diff --git a/app/views/layouts/menu.html.erb b/app/views/layouts/menu.html.erb index 0d1ce24..dc77e62 100755 --- a/app/views/layouts/menu.html.erb +++ b/app/views/layouts/menu.html.erb @@ -1,6 +1,6 @@
From de83a4068374bd3d46a41c6661639635813f9ad3 Mon Sep 17 00:00:00 2001 From: Andreas Stephanides Date: Thu, 15 Aug 2013 11:45:33 +0200 Subject: [PATCH 08/13] Translations aufgeteilt auf mehrere files --- config/locales/date.de.yml | 196 ++++++++++++++++++++++++++++ config/locales/de.yml | 207 +----------------------------- config/locales/neuigkeiten.de.yml | 22 ++++ 3 files changed, 220 insertions(+), 205 deletions(-) create mode 100644 config/locales/date.de.yml create mode 100644 config/locales/neuigkeiten.de.yml diff --git a/config/locales/date.de.yml b/config/locales/date.de.yml new file mode 100644 index 0000000..c4004ef --- /dev/null +++ b/config/locales/date.de.yml @@ -0,0 +1,196 @@ +de: + date: + abbr_day_names: + - So + - Mo + - Di + - Mi + - Do + - Fr + - Sa + abbr_month_names: + - + - Jan + - Feb + - Mär + - Apr + - Mai + - Jun + - Jul + - Aug + - Sep + - Okt + - Nov + - Dez + day_names: + - Sonntag + - Montag + - Dienstag + - Mittwoch + - Donnerstag + - Freitag + - Samstag + formats: + default: ! '%d.%m.%Y' + long: ! '%e. %B %Y' + short: ! '%e. %b' + month_names: + - + - Januar + - Februar + - März + - April + - Mai + - Juni + - Juli + - August + - September + - Oktober + - November + - Dezember + order: + - :day + - :month + - :year + datetime: + distance_in_words: + about_x_hours: + one: etwa eine Stunde + other: etwa %{count} Stunden + about_x_months: + one: etwa ein Monat + other: etwa %{count} Monate + about_x_years: + one: etwa ein Jahr + other: etwa %{count} Jahre + almost_x_years: + one: fast ein Jahr + other: fast %{count} Jahre + half_a_minute: eine halbe Minute + less_than_x_minutes: + one: weniger als eine Minute + other: weniger als %{count} Minuten + less_than_x_seconds: + one: weniger als eine Sekunde + other: weniger als %{count} Sekunden + over_x_years: + one: mehr als ein Jahr + other: mehr als %{count} Jahre + x_days: + one: ein Tag + other: ! '%{count} Tage' + x_minutes: + one: eine Minute + other: ! '%{count} Minuten' + x_months: + one: ein Monat + other: ! '%{count} Monate' + x_seconds: + one: eine Sekunde + other: ! '%{count} Sekunden' + prompts: + day: Tag + hour: Stunden + minute: Minuten + month: Monat + second: Sekunden + year: Jahr + errors: + format: ! '%{attribute} %{message}' + messages: + accepted: muss akzeptiert werden + blank: muss ausgefüllt werden + confirmation: stimmt nicht mit der Bestätigung überein + empty: muss ausgefüllt werden + equal_to: muss genau %{count} sein + even: muss gerade sein + exclusion: ist nicht verfügbar + greater_than: muss größer als %{count} sein + greater_than_or_equal_to: muss größer oder gleich %{count} sein + inclusion: ist kein gültiger Wert + invalid: ist nicht gültig + less_than: muss kleiner als %{count} sein + less_than_or_equal_to: muss kleiner oder gleich %{count} sein + not_a_number: ist keine Zahl + not_an_integer: muss ganzzahlig sein + odd: muss ungerade sein + record_invalid: ! 'Gültigkeitsprüfung ist fehlgeschlagen: %{errors}' + taken: ist bereits vergeben + too_long: ist zu lang (nicht mehr als %{count} Zeichen) + too_short: ist zu kurz (nicht weniger als %{count} Zeichen) + wrong_length: hat die falsche Länge (muss genau %{count} Zeichen haben) + template: + body: ! 'Bitte überprüfen Sie die folgenden Felder:' + header: + one: ! 'Konnte %{model} nicht speichern: ein Fehler.' + other: ! 'Konnte %{model} nicht speichern: %{count} Fehler.' + helpers: + select: + prompt: Bitte wählen + submit: + create: ! '%{model} erstellen' + submit: ! '%{model} speichern' + update: ! '%{model} aktualisieren' + number: + currency: + format: + delimiter: . + format: ! '%n %u' + precision: 2 + separator: ! ',' + significant: false + strip_insignificant_zeros: false + unit: € + format: + delimiter: . + precision: 2 + separator: ! ',' + significant: false + strip_insignificant_zeros: false + human: + decimal_units: + format: ! '%n %u' + units: + billion: + one: Milliarde + other: Milliarden + million: Millionen + quadrillion: + one: Billiarde + other: Billiarden + thousand: Tausend + trillion: Billionen + unit: '' + format: + delimiter: '' + precision: 1 + significant: true + strip_insignificant_zeros: true + storage_units: + format: ! '%n %u' + units: + byte: + one: Byte + other: Bytes + gb: GB + kb: KB + mb: MB + tb: TB + percentage: + format: + delimiter: '' + precision: + format: + delimiter: '' + support: + array: + last_word_connector: ! ' und ' + two_words_connector: ! ' und ' + words_connector: ! ', ' + time: + am: vormittags + formats: + default: ! '%d.%m.%Y, %H:%M Uhr' + long: ! '%A, %d. %B %Y, %H:%M Uhr' + short: ! '%d.%m.%Y, %H:%M Uhr' + pm: nachmittags diff --git a/config/locales/de.yml b/config/locales/de.yml index 8dbaa04..2784350 100755 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -39,9 +39,7 @@ de: show: title: "Auflistung aller Modulgruppen" link: "Modulgruppen auflisten" - neuigkeit: - new: - title: "Neue Neuigkeit" + home: mtitle: "Menu" willkommen: "Willkommen bei der Fachschaft Elektrotechnik" @@ -50,13 +48,7 @@ de: studien: "Studien" news: "Neuigkeiten" info: "Information" - - rubrik: - title: "Neuigkeiten und aktuelle Infos" - moderatoradded: "Neuen Moderator hinzugefügt!" - moderatoraddnorights: "Keine Berechtigung neue Moderatoren hinzuzufügen!" - new: "Neue Rubrik" - edit: "Rubrik bearbeiten" + formtastic: titles: modul: @@ -131,198 +123,3 @@ de: support: array: two_words_connector: ', ' - date: - abbr_day_names: - - So - - Mo - - Di - - Mi - - Do - - Fr - - Sa - abbr_month_names: - - - - Jan - - Feb - - Mär - - Apr - - Mai - - Jun - - Jul - - Aug - - Sep - - Okt - - Nov - - Dez - day_names: - - Sonntag - - Montag - - Dienstag - - Mittwoch - - Donnerstag - - Freitag - - Samstag - formats: - default: ! '%d.%m.%Y' - long: ! '%e. %B %Y' - short: ! '%e. %b' - month_names: - - - - Januar - - Februar - - März - - April - - Mai - - Juni - - Juli - - August - - September - - Oktober - - November - - Dezember - order: - - :day - - :month - - :year - datetime: - distance_in_words: - about_x_hours: - one: etwa eine Stunde - other: etwa %{count} Stunden - about_x_months: - one: etwa ein Monat - other: etwa %{count} Monate - about_x_years: - one: etwa ein Jahr - other: etwa %{count} Jahre - almost_x_years: - one: fast ein Jahr - other: fast %{count} Jahre - half_a_minute: eine halbe Minute - less_than_x_minutes: - one: weniger als eine Minute - other: weniger als %{count} Minuten - less_than_x_seconds: - one: weniger als eine Sekunde - other: weniger als %{count} Sekunden - over_x_years: - one: mehr als ein Jahr - other: mehr als %{count} Jahre - x_days: - one: ein Tag - other: ! '%{count} Tage' - x_minutes: - one: eine Minute - other: ! '%{count} Minuten' - x_months: - one: ein Monat - other: ! '%{count} Monate' - x_seconds: - one: eine Sekunde - other: ! '%{count} Sekunden' - prompts: - day: Tag - hour: Stunden - minute: Minuten - month: Monat - second: Sekunden - year: Jahr - errors: - format: ! '%{attribute} %{message}' - messages: - accepted: muss akzeptiert werden - blank: muss ausgefüllt werden - confirmation: stimmt nicht mit der Bestätigung überein - empty: muss ausgefüllt werden - equal_to: muss genau %{count} sein - even: muss gerade sein - exclusion: ist nicht verfügbar - greater_than: muss größer als %{count} sein - greater_than_or_equal_to: muss größer oder gleich %{count} sein - inclusion: ist kein gültiger Wert - invalid: ist nicht gültig - less_than: muss kleiner als %{count} sein - less_than_or_equal_to: muss kleiner oder gleich %{count} sein - not_a_number: ist keine Zahl - not_an_integer: muss ganzzahlig sein - odd: muss ungerade sein - record_invalid: ! 'Gültigkeitsprüfung ist fehlgeschlagen: %{errors}' - taken: ist bereits vergeben - too_long: ist zu lang (nicht mehr als %{count} Zeichen) - too_short: ist zu kurz (nicht weniger als %{count} Zeichen) - wrong_length: hat die falsche Länge (muss genau %{count} Zeichen haben) - template: - body: ! 'Bitte überprüfen Sie die folgenden Felder:' - header: - one: ! 'Konnte %{model} nicht speichern: ein Fehler.' - other: ! 'Konnte %{model} nicht speichern: %{count} Fehler.' - helpers: - select: - prompt: Bitte wählen - submit: - create: ! '%{model} erstellen' - submit: ! '%{model} speichern' - update: ! '%{model} aktualisieren' - number: - currency: - format: - delimiter: . - format: ! '%n %u' - precision: 2 - separator: ! ',' - significant: false - strip_insignificant_zeros: false - unit: € - format: - delimiter: . - precision: 2 - separator: ! ',' - significant: false - strip_insignificant_zeros: false - human: - decimal_units: - format: ! '%n %u' - units: - billion: - one: Milliarde - other: Milliarden - million: Millionen - quadrillion: - one: Billiarde - other: Billiarden - thousand: Tausend - trillion: Billionen - unit: '' - format: - delimiter: '' - precision: 1 - significant: true - strip_insignificant_zeros: true - storage_units: - format: ! '%n %u' - units: - byte: - one: Byte - other: Bytes - gb: GB - kb: KB - mb: MB - tb: TB - percentage: - format: - delimiter: '' - precision: - format: - delimiter: '' - support: - array: - last_word_connector: ! ' und ' - two_words_connector: ! ' und ' - words_connector: ! ', ' - time: - am: vormittags - formats: - default: ! '%d.%m.%Y, %H:%M Uhr' - long: ! '%A, %d. %B %Y, %H:%M Uhr' - short: ! '%d.%m.%Y, %H:%M Uhr' - pm: nachmittags \ No newline at end of file diff --git a/config/locales/neuigkeiten.de.yml b/config/locales/neuigkeiten.de.yml new file mode 100644 index 0000000..3e1aca0 --- /dev/null +++ b/config/locales/neuigkeiten.de.yml @@ -0,0 +1,22 @@ + +de: + neuigkeit: + new: + title: "Neue Neuigkeit" + rubriken: + alle: "Alle Rubriken" + rubrik: + title: "Neuigkeiten und aktuelle Infos" + moderatoradded: "Neuen Moderator hinzugefügt!" + moderatoraddnorights: "Keine Berechtigung neue Moderatoren hinzuzufügen!" + new: "Neue Rubrik" + edit: "Rubrik bearbeiten" + + activerecord: + errors: + models: + neuigkeit: + attributes: + title: + blank: "Bitte einen Titel angeben" + From 0f6559bce65a891c4ba99dc6823b3b82b186634f Mon Sep 17 00:00:00 2001 From: Andreas Stephanides Date: Thu, 15 Aug 2013 11:46:41 +0200 Subject: [PATCH 09/13] Rechtemanagement integriert in views --- app/controllers/neuigkeiten_controller.rb | 7 ++++--- app/controllers/rubriken_controller.rb | 1 + app/views/calendars/_tabs.html.erb | 2 ++ app/views/calendars/show.html.erb | 4 ++-- app/views/neuigkeiten/new.html.erb | 2 +- 5 files changed, 10 insertions(+), 6 deletions(-) diff --git a/app/controllers/neuigkeiten_controller.rb b/app/controllers/neuigkeiten_controller.rb index cd8db04..b09973e 100755 --- a/app/controllers/neuigkeiten_controller.rb +++ b/app/controllers/neuigkeiten_controller.rb @@ -1,5 +1,6 @@ class NeuigkeitenController < ApplicationController before_filter {@toolbar_elements=[]} + load_and_authorize_resource def index @neuigkeiten = Neuigkeit.all end @@ -14,8 +15,8 @@ class NeuigkeitenController < ApplicationController def new @neuigkeit = Neuigkeit.new - @rubrik=Rubrik.find(params[:rubrik_id]) - @neuigkeit.rubrik=@rubrik + @rubrik=Rubrik.find(params[:rubrik_id]) unless params[:rubrik_id].nil? + @neuigkeit.rubrik=@rubrik unless @rubrik.nil? end @@ -25,7 +26,7 @@ class NeuigkeitenController < ApplicationController def create @neuigkeit = Neuigkeit.new(params[:neuigkeit]) - + @rubrik = @neuigkeit.rubrik respond_to do |format| if @neuigkeit.save format.html { redirect_to @neuigkeit, notice: 'Neuigkeit was successfully created.' } diff --git a/app/controllers/rubriken_controller.rb b/app/controllers/rubriken_controller.rb index e28aaec..bbff5b5 100755 --- a/app/controllers/rubriken_controller.rb +++ b/app/controllers/rubriken_controller.rb @@ -1,5 +1,6 @@ class RubrikenController < ApplicationController before_filter {@toolbar_elements=[]} + load_and_authorize_resource def index @rubriken = Rubrik.all diff --git a/app/views/calendars/_tabs.html.erb b/app/views/calendars/_tabs.html.erb index e449cfe..3045ea7 100644 --- a/app/views/calendars/_tabs.html.erb +++ b/app/views/calendars/_tabs.html.erb @@ -6,6 +6,7 @@ <%= link_to c.name, c %> <% end %> +<% if can?(:verwalten,Calendar) %> <% if request.fullpath == calendars_verwalten_path %>
  • <% else %> @@ -13,4 +14,5 @@ <% end %> <%= link_to "Verwaltung", calendars_verwalten_path %>
  • +<% end %> diff --git a/app/views/calendars/show.html.erb b/app/views/calendars/show.html.erb index cc75f51..3ad52d1 100644 --- a/app/views/calendars/show.html.erb +++ b/app/views/calendars/show.html.erb @@ -27,8 +27,8 @@
    -<%= link_to 'New Entry', new_calentry_path, {:class=>"btn"} %> -<%= link_to 'Edit', edit_calendar_path(@calendar), {:class=>"btn"} %> +<%= link_to 'New Entry', new_calentry_path, {:class=>"btn"} unless cannot? :new, Calendar%> +<%= link_to 'Edit', edit_calendar_path(@calendar), {:class=>"btn"} unless cannot? :edit, Calendar %> <%= link_to 'Back', calendars_path, {:class=>"btn"} %>
    diff --git a/app/views/neuigkeiten/new.html.erb b/app/views/neuigkeiten/new.html.erb index 597e29f..cb7500e 100755 --- a/app/views/neuigkeiten/new.html.erb +++ b/app/views/neuigkeiten/new.html.erb @@ -2,4 +2,4 @@ <%= render 'form' %> -<%= link_to 'Back', rubrik_path(@rubrik) %> +<%= link_to 'Back', rubrik_path(@rubrik) unless @rubrik.nil? %> From 83f33483d9185ee05c11de2a1f6f8966a2e24599 Mon Sep 17 00:00:00 2001 From: Andreas Stephanides Date: Thu, 15 Aug 2013 11:46:57 +0200 Subject: [PATCH 10/13] kleines update userverwaltung --- app/views/users/index.html.erb | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/app/views/users/index.html.erb b/app/views/users/index.html.erb index efd4a23..64cecb7 100755 --- a/app/views/users/index.html.erb +++ b/app/views/users/index.html.erb @@ -13,9 +13,11 @@
  • <%= role.name%>
  • <% end %> -<%= link_to 'MK fetadmin', user_add_role_path(user, "fetadmin")%> -<%= link_to 'MK fetuser', user_add_role_path(user, "fetuser")%> -<%= link_to 'doconfirm', user_do_confirm_path(user)%> +
      +
    • <%= link_to 'MK fetadmin', user_add_role_path(user, "fetadmin")%>
    • +
    • <%= link_to 'MK fetuser', user_add_role_path(user, "fetuser")%>
    • +
    • <%= link_to 'doconfirm', user_do_confirm_path(user)%>
    • +
    <% end %> From b00e0709ca59b9eb86060cf6b266943f22ef6161 Mon Sep 17 00:00:00 2001 From: Andreas Stephanides Date: Thu, 15 Aug 2013 11:47:23 +0200 Subject: [PATCH 11/13] einige updates ability --- app/models/ability.rb | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/app/models/ability.rb b/app/models/ability.rb index e33fa36..97c1a45 100755 --- a/app/models/ability.rb +++ b/app/models/ability.rb @@ -27,16 +27,24 @@ class Ability # For Debug allow everything # Remove this line in production environment and for testing user management - # can :manage, :all - can [:show, :index], :all + can :manage, :all + can [:show, :index], Studium + can [:show, :index], Modulgruppe + can [:show, :index], Modul + can [:show, :index], Lva + # Rechteverwaltung f�r Studien Modul can :read, Modulgruppe - can :manage, Modulgruppe + # Rechteverwaltung Kalender - can [:show, :index], Calendar + can [:show, :index], Calendar, :public => true can [:show], Calentry if( user.has_role?("fetuser") || user.has_role?("fetadmin")) + + can :manage, Modulgruppe + + can [:show,:index], Calendar can [:edit, :update,:new,:create,:verwalten], Calendar can [:edit, :update,:new,:create,:verwalten], Calentry end @@ -49,11 +57,15 @@ class Ability # can :write, Neuigkeit if user.has_role?("newsmoderator", Neuigkeit.rubrik) - if user.has_role? "newsadmin" + if user.has_role?("newsadmin") || user.has_role?("fetadmin") can :addmoderator, Rubrik end - - - + can [:show, :index], [Rubrik,Neuigkeit] + if user.has_role?("newsadmin") || user.has_role?( "fetadmin") || user.has_role?( "fetuser") + can :manage, Rubrik + can :manage, Neuigkeit + end + + end end From 7313b50696b623909b6147891ccc63826b80ab15 Mon Sep 17 00:00:00 2001 From: Andreas Stephanides Date: Thu, 15 Aug 2013 11:57:41 +0200 Subject: [PATCH 12/13] Login auf Startseite verschoben --- app/views/home/index.html.erb | 1 + app/views/layouts/_login.html.erb | 9 +++++++++ app/views/layouts/menu.html.erb | 10 +--------- 3 files changed, 11 insertions(+), 9 deletions(-) create mode 100644 app/views/layouts/_login.html.erb diff --git a/app/views/home/index.html.erb b/app/views/home/index.html.erb index 6e2e796..6f48250 100755 --- a/app/views/home/index.html.erb +++ b/app/views/home/index.html.erb @@ -19,3 +19,4 @@ alle anderen sind nur zur Voransicht. Bezüglich Design und Steuerung sind Vorsc

    <%= t 'home.hallobeiderfet' %>

    <%= link_to "Entwicklungsstatus" , home_dev_path %> +<%= render 'layouts/login' %> diff --git a/app/views/layouts/_login.html.erb b/app/views/layouts/_login.html.erb new file mode 100644 index 0000000..7a65018 --- /dev/null +++ b/app/views/layouts/_login.html.erb @@ -0,0 +1,9 @@ +<% if user_signed_in? %> +
  • Logged in as : <%= current_user.email %> + <%= link_to('Logout', destroy_user_session_path, :method => :delete) %> +
  • + <% else %> +
  • + <%= link_to('Login', new_user_session_path) %> +
  • + <% end %> diff --git a/app/views/layouts/menu.html.erb b/app/views/layouts/menu.html.erb index dc77e62..3c3e69b 100755 --- a/app/views/layouts/menu.html.erb +++ b/app/views/layouts/menu.html.erb @@ -23,15 +23,7 @@ <%= link_to "English" ,switch_locale_url(:en)%> <%end %> - <% if user_signed_in? %> -
  • Logged in as : <%= current_user.email %> - <%= link_to('Logout', destroy_user_session_path, :method => :delete) %> -
  • - <% else %> -
  • - <%= link_to('Login', new_user_session_path) %> -
  • - <% end %> +
  • <%= link_to 'Admin' , config_path%>
  • From 3da4e632c5f3a7246921725515b22ab972bf5cdf Mon Sep 17 00:00:00 2001 From: Andreas Stephanides Date: Thu, 15 Aug 2013 11:57:52 +0200 Subject: [PATCH 13/13] UserAction Button --- app/views/users/index.html.erb | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/app/views/users/index.html.erb b/app/views/users/index.html.erb index 64cecb7..c1dc0f3 100755 --- a/app/views/users/index.html.erb +++ b/app/views/users/index.html.erb @@ -13,11 +13,19 @@
  • <%= role.name%>
  • <% end %> -
      -
    • <%= link_to 'MK fetadmin', user_add_role_path(user, "fetadmin")%>
    • -
    • <%= link_to 'MK fetuser', user_add_role_path(user, "fetuser")%>
    • -
    • <%= link_to 'doconfirm', user_do_confirm_path(user)%>
    • -
    + +
    + + Action + + + +
    <% end %>