Patch #13413 » changeset_r71317ed3d9fa6bcdaf9eadcf9f18684a31a5f6ad.diff
| app/models/mailer.rb | ||
|---|---|---|
| 359 | 359 | 
    issues_by_assignee = scope.all(:include => [:status, :assigned_to, :project, :tracker]).group_by(&:assigned_to)  | 
| 360 | 360 | 
    issues_by_assignee.each do |assignee, issues|  | 
| 361 | 
    deliver_reminder(assignee, issues, days) if assignee.is_a?(User) && assignee.active?  | 
|
| 361 | 
    if assignee.is_a?(User) && assignee.active? && assignee.pref.reminder_days.present?  | 
|
| 362 | 
    pref_days = assignee.pref.reminder_days.to_i  | 
|
| 363 | 
            issues.reject!{|issue| issue.due_date.to_datetime > pref_days.days.from_now }
   | 
|
| 364 | 
    deliver_reminder(assignee, issues, pref_days < days ? pref_days : days) if issues.any?  | 
|
| 365 | 
    end  | 
|
| 362 | 366 | 
    end  | 
| 363 | 367 | 
    end  | 
| app/models/user_preference.rb | ||
|---|---|---|
| 59 | 59 | 
    def default_assign_issues_to_me; self[:default_assign_issues_to_me] || '0'; end  | 
| 60 | 60 | 
    def default_assign_issues_to_me=(value); self[:default_assign_issues_to_me]=value; end  | 
| 61 | ||
| 62 | 
    def reminder_days; self[:reminder_days] || ''; end  | 
|
| 63 | 
    def reminder_days=(value); self[:reminder_days] = value.blank? ? '' : value.to_i; end  | 
|
| 61 | 64 | 
    end  | 
| app/views/users/_preferences.html.erb | ||
|---|---|---|
| 4 | 4 | 
    <p><%= pref_fields.select :comments_sorting, [[l(:label_chronological_order), 'asc'], [l(:label_reverse_chronological_order), 'desc']] %></p>  | 
| 5 | 5 | 
    <p><%= pref_fields.check_box :warn_on_leaving_unsaved %></p>  | 
| 6 | 6 | 
    <p><%= pref_fields.check_box :default_assign_issues_to_me %></p>  | 
| 7 | 
    <p><%= pref_fields.text_field :reminder_days, :size => 6 %> <%= l(:label_before) %>  | 
|
| 8 | 
    <em class="info"><%= l(:text_reminder_days) %></em></p>  | 
|
| 7 | 9 | 
    <% end %>  | 
| config/locales/de.yml | ||
|---|---|---|
| 626 | 626 | 
    label_less_than_ago: vor weniger als  | 
| 627 | 627 | 
    label_more_than_ago: vor mehr als  | 
| 628 | 628 | 
    label_ago: vor  | 
| 629 | 
    label_before: Tage vorher  | 
|
| 629 | 630 | 
    label_contains: enthält  | 
| 630 | 631 | 
    label_not_contains: enthält nicht  | 
| 631 | 632 | 
    label_day_plural: Tage  | 
| ... | ... | |
| 961 | 962 | 
    setting_gantt_items_limit: Maximale Anzahl von Tickets die im Gantt-Chart angezeigt werden.  | 
| 962 | 963 | 
    field_default_assign_issues_to_me: Tickets die ich anlege mir selbst zuweisen  | 
| 963 | 964 | 
    field_warn_on_leaving_unsaved: vor dem Verlassen einer Seite mit ungesichertem Text im Editor warnen  | 
| 965 | 
    field_reminder_days: E-Mail-Erinnerung für fällige Tickets  | 
|
| 964 | 966 | 
    text_warn_on_leaving_unsaved: Die aktuellen Änderungen gehen verloren, wenn Sie diese Seite verlassen.  | 
| 967 | 
    text_reminder_days: Feld leer lassen für keine Erinnerungen  | 
|
| 965 | 968 | 
    label_my_queries: Meine eigenen Abfragen  | 
| 966 | 969 | 
      text_journal_changed_no_detail: "%{label} aktualisiert"
   | 
| 967 | 970 | 
    label_news_comment_added: Kommentar zu einem Blog-Artikel hinzugefügt  | 
| config/locales/en.yml | ||
|---|---|---|
| 323 | 323 | 
    field_visible: Visible  | 
| 324 | 324 | 
    field_default_assign_issues_to_me: Assign new issues to myself by default  | 
| 325 | 325 | 
    field_warn_on_leaving_unsaved: "Warn me when leaving a page with unsaved text"  | 
| 326 | 
    field_reminder_days: Due issue email reminders  | 
|
| 326 | 327 | 
    field_issues_visibility: Issues visibility  | 
| 327 | 328 | 
    field_is_private: Private  | 
| 328 | 329 | 
    field_commit_logs_encoding: Commit messages encoding  | 
| ... | ... | |
| 671 | 672 | 
    label_less_than_ago: less than days ago  | 
| 672 | 673 | 
    label_more_than_ago: more than days ago  | 
| 673 | 674 | 
    label_ago: days ago  | 
| 675 | 
    label_before: days before  | 
|
| 674 | 676 | 
    label_contains: contains  | 
| 675 | 677 | 
    label_not_contains: doesn't contain  | 
| 676 | 678 | 
    label_day_plural: days  | 
| ... | ... | |
| 1020 | 1022 | 
      text_issue_conflict_resolution_cancel: "Discard all my changes and redisplay %{link}"
   | 
| 1021 | 1023 | 
    text_account_destroy_confirmation: "Are you sure you want to proceed?\nYour account will be permanently deleted, with no way to reactivate it."  | 
| 1022 | 1024 | 
    text_session_expiration_settings: "Warning: changing these settings may expire the current sessions including yours."  | 
| 1025 | 
    text_reminder_days: Leave blank for no reminders  | 
|
| 1023 | 1026 | 
    default_role_manager: Manager  | 
| 1024 | 1027 | 
    default_role_developer: Developer  | 
| test/fixtures/user_preferences.yml | ||
|---|---|---|
| 17 | 17 | 
    user_preferences_002:  | 
| 18 | 18 | 
    others: |  | 
| 19 | 19 | 
    ---  | 
| 20 | 
    :reminder_days: 42  | 
|
| 20 | 21 | 
    :my_page_layout:  | 
| 21 | 22 | 
    left:  | 
| 22 | 23 | 
    - latestnews  |