diff --git a/app/models/task.rb b/app/models/task.rb index d32b8251..bd2f23d6 100644 --- a/app/models/task.rb +++ b/app/models/task.rb @@ -18,7 +18,7 @@ class Task < ActiveRecord::Base validates :required_users, :presence => true validates_numericality_of :duration, :required_users, :only_integer => true, :greater_than => 0 validates_length_of :description, maximum: 250 - validates :done, exclusion: { in: [true], message: 'erledigte Aufgaben können nicht wöchentlich wiederholt werden' }, if: :periodic?, on: :create + validates :done, exclusion: { in: [true] }, if: :periodic?, on: :create before_save :exclude_from_periodic_task_group, if: :changed?, unless: :new_record? after_save :update_ordergroup_stats diff --git a/app/views/tasks/_form.html.haml b/app/views/tasks/_form.html.haml index ba627f7e..95f3b134 100644 --- a/app/views/tasks/_form.html.haml +++ b/app/views/tasks/_form.html.haml @@ -27,5 +27,5 @@ .form-actions = f.submit class: 'btn btn-primary' - if @task.new_record? - = f.submit 'Wöchentliche Aufgabe erstellen', name: 'periodic', class: 'btn' + = f.submit t('.submit.periodic'), name: 'periodic', class: 'btn' = link_to t('ui.or_cancel'), :back diff --git a/app/views/tasks/show.haml b/app/views/tasks/show.haml index f2e147c8..6a57dbad 100644 --- a/app/views/tasks/show.haml +++ b/app/views/tasks/show.haml @@ -30,5 +30,5 @@ = link_to t('ui.delete'), task_path(@task), :method => :delete, :confirm => "Die Aufgabe wirklich löschen?", class: 'btn btn-danger' - if @task.periodic? - = link_to 'Aufgabe und folgende löschen', task_path(@task, periodic: true), method: :delete, - confirm: "Diese und alle folgenden wöchentlichen Aufgaben wirklich löschen?", class: 'btn btn-danger' + = link_to t('.delete_group'), task_path(@task, periodic: true), method: :delete, + confirm: t('.confirm_delete_group'), class: 'btn btn-danger' diff --git a/config/locales/de.yml b/config/locales/de.yml index 0961913b..8a8abb73 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -81,6 +81,11 @@ de: 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) + models: + task: + attributes: + done: + exclusion: erledigte Aufgaben können nicht wöchentlich wiederholt werden template: body: ! 'Bitte überprüfen Sie die folgenden Felder:' header: @@ -1628,12 +1633,6 @@ de: role_finance: Finanzen role_orders: Bestellverwaltung role_suppliers: Lieferanten - task_description: Beschreibung - task_duration: Vor. Dauer in Stunden - task_name: Name für Job - task_required_users: Benötige Verantwortliche - weekday: Wochentag - weekly_task: Monatlichen Job definieren? 'no': Nein required: mark: ! '*' @@ -1764,6 +1763,8 @@ de: hint: Nach Nutzerin suchen noresult: Keine Nutzerin gefunden placeholder: Suche ... + submit: + periodic: Wöchentliche Aufgabe speichern index: show_group_tasks: Gruppenaufgaben anzeigen title: Aufgaben @@ -1791,6 +1792,8 @@ de: notice: Aufgabenstatus wurde aktualisiert show: accept_task: Aufgabe übernehmen + confirm_delete_group: Diese und alle folgenden wöchentlichen Aufgaben wirklich löschen? + delete_group: Aufgabe und folgende löschen due_date: Fälligkeitsdatum hours: ! '%{count}h' mark_done: Als erledigt markieren @@ -1807,11 +1810,6 @@ de: workgroup: title: Aufgaben für %{workgroup} title_all: Alle Aufgaben der Gruppe - weekly: - desc: ! '

Jeden %{weekday} hat diese Arbeitsgruppe folgenden Job: %{task}

Die Wochenaufgaben werden von der Foodsoft automatisch erstellt. Eintragen müsst Ihr Euch aber selber.

' - edit: Wöchentliche Aufgaben anpassen - empty: Noch keine Wochenaufgaben angelegt. - title: Wöchentliche Aufgaben time: am: vormittags formats: diff --git a/config/locales/en.yml b/config/locales/en.yml index bd34e6d4..1cd4eee9 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -81,6 +81,11 @@ en: too_long: is too long (no more than %{count} characters) too_short: is too short (use more than %{count} characters) wrong_length: is the wrong length (has to have exactly %{count} characters) + models: + task: + attributes: + done: + exclusion: finished tasks may not be repeated weekly template: body: ! 'Please check the following fields:' header: @@ -1765,6 +1770,8 @@ en: hint: Search for user noresult: No user found placeholder: Search ... + submit: + periodic: Save weekly task index: show_group_tasks: Show group tasks title: Tasks @@ -1792,6 +1799,8 @@ en: notice: The state of the task has been updated show: accept_task: Accept task + confirm_delete_group: Really delete this and all subsequent tasks? + delete_group: Delete task and subsequent due_date: Due date hours: ! '%{count}h' mark_done: Mark task as done diff --git a/db/schema.rb b/db/schema.rb index d2a0dc72..f81bfae6 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -308,10 +308,10 @@ ActiveRecord::Schema.define(:version => 20130624085246) do add_index "suppliers", ["name"], :name => "index_suppliers_on_name", :unique => true create_table "tasks", :force => true do |t| - t.string "name", :default => "", :null => false + t.string "name", :default => "", :null => false t.string "description" t.date "due_date" - t.boolean "done", :default => false + t.boolean "done", :default => false t.integer "workgroup_id" t.datetime "created_on", :null => false t.datetime "updated_on", :null => false