More localized strings and parent issue support

This commit is contained in:
Alexander Meindl
2017-05-10 17:49:54 +02:00
parent 19dd1712db
commit 35798e451c
5 changed files with 63 additions and 43 deletions

View File

@@ -123,7 +123,11 @@ class Messenger
title = I18n.t :label_attachment
else
key = detail.prop_key.to_s.sub('_id', '')
title = I18n.t "field_#{key}"
title = if key == 'parent'
I18n.t "field_#{key}_issue"
else
I18n.t "field_#{key}"
end
end
short = true

View File

@@ -1,12 +1,29 @@
# German strings
de:
label_messenger_contact_created: "[%{project_url}] Kontakt %{url} erstellt von *%{user}*"
label_messenger_contact_updated: "[%{project_url}] Kontakt %{url} aktualisiert von *%{user}*"
label_messenger_db_entry_created: "[%{project_url}] DB Eintrag %{url} erstellt von *%{user}*"
label_messenger_db_entry_updated: "[%{project_url}] DB Eintrag %{url} aktualisiert von *%{user}*"
label_messenger_issue_created: "[%{project_url}] Ticket %{url} erstellt von *%{user}*"
label_messenger_issue_updated: "[%{project_url}] Ticket %{url} aktualisiert von *%{user}*"
label_messenger_password_created: "[%{project_url}] Kennwort %{url} erstellt von *%{user}*"
label_messenger_password_updated: "[%{project_url}] Kennwort %{url} aktualisiert von *%{user}*"
label_messenger_wiki_created: "[%{project_url}] Wiki %{url} erstellt von *%{user}*"
label_messenger_wiki_updated: "[%{project_url}] Wiki %{url} aktualisiert von *%{user}*"
label_settings_auto_mentions: Convert names to mentions?
label_settings_display_watchers: Display watchers?
label_settings_messenger_channel: Messenger Channel
label_settings_messenger_icon: Messenger Icon
label_settings_messenger_url: Messenger URL
label_settings_messenger_username: Messenger Benutzer
label_settings_messenger_verify_ssl: SSL verifiziert
label_settings_new_include_description: Description in new issue?
label_settings_post_contact_updates: Contact updates?
label_settings_post_contact: Contact added?
label_settings_post_db_updates: DB entry updates?
label_settings_post_db: DB entry added?
label_settings_post_password_updates: Password updates?
label_settings_post_password: Password added?
label_settings_post_private_issues: Post updates for private issues?
label_settings_post_private_notes: Post private notes?
label_settings_post_updates: Post issue updates?
@@ -15,17 +32,4 @@ de:
label_settings_updated_include_description: Description in update issue?
messenger_channel_info_html: 'The channel can be changed on a per-project basis by creating a <a href="/custom_fields/new?type=ProjectCustomField&custom_field[name]=Rocket.Chat Channel">project custom field</a> named "Messenger Channel" (without quotes).'
messenger_url_info_html: 'Generate an <a target="_blank" href="https://github.com/AlphaNodes/redmine_messenger#prepare-your-messenger-service">Incoming WebHook</a> URL from the sessenger service. This URL can be changed on a per-project basis by creating a <a href="/custom_fields/new?type=ProjectCustomField&custom_field[name]=Messenger Channel">project custom field</a> named "Messenger URL" (without quotes).'
label_settings_messenger_verify_ssl: SSL verifiziert
messenger_verify_ssl_info_html: 'If your Messenger service uses an invalid or self-signed SSL certificate, disable it.'
label_settings_post_db: DB entry added?
label_settings_post_db_updates: DB entry updates?
label_settings_post_contact: Contact added?
label_settings_post_contact_updates: Contact updates?
label_settings_post_password: Password added?
label_settings_post_password_updates: Password updates?
label_messenger_db_entry_created: "[%{project_url}] DB Eintrag %{url} erstellt von *%{user}*"
label_messenger_db_entry_updated: "[%{project_url}] DB Eintrag %{url} aktualisiert von *%{user}*"
label_messenger_contact_created: "[%{project_url}] Kontakt %{url} erstellt von *%{user}*"
label_messenger_contact_updated: "[%{project_url}] Kontakt %{url} aktualisiert von *%{user}*"
label_messenger_password_created: "[%{project_url}] Kennwort %{url} erstellt von *%{user}*"
label_messenger_password_updated: "[%{project_url}] Kennwort %{url} aktualisiert von *%{user}*"

View File

@@ -1,12 +1,29 @@
# English strings
en:
label_messenger_contact_created: "[%{project_url}] Contact %{url} created by *%{user}*"
label_messenger_contact_updated: "[%{project_url}] Contact %{url} updated by *%{user}*"
label_messenger_db_entry_created: "[%{project_url}] DB entry %{url} created by *%{user}*"
label_messenger_db_entry_updated: "[%{project_url}] DB entry %{url} updated by *%{user}*"
label_messenger_issue_created: "[%{project_url}] Issue %{url} created by *%{user}*"
label_messenger_issue_updated: "[%{project_url}] Issue %{url} updated by *%{user}*"
label_messenger_password_created: "[%{project_url}] Kennwort %{url} created by *%{user}*"
label_messenger_password_updated: "[%{project_url}] Kennwort %{url} updated by *%{user}*"
label_messenger_wiki_created: "[%{project_url}] Wiki %{url} created by *%{user}*"
label_messenger_wiki_updated: "[%{project_url}] Wiki %{url} updated by *%{user}*"
label_settings_auto_mentions: Convert names to mentions?
label_settings_display_watchers: Display watchers?
label_settings_messenger_channel: Messenger Channel
label_settings_messenger_icon: Messenger Icon
label_settings_messenger_url: Messenger URL
label_settings_messenger_username: Messenger username
label_settings_messenger_verify_ssl: Verify SSL
label_settings_new_include_description: Description in new issue?
label_settings_post_contact_updates: Contact updates?
label_settings_post_contact: Contact added?
label_settings_post_db_updates: DB entry updates?
label_settings_post_db: DB entry added?
label_settings_post_password_updates: Password updates?
label_settings_post_password: Password added?
label_settings_post_private_issues: Post updates for private issues?
label_settings_post_private_notes: Post private notes?
label_settings_post_updates: Post issue updates?
@@ -15,17 +32,4 @@ en:
label_settings_updated_include_description: Description in update issue?
messenger_channel_info_html: 'The channel can be changed on a per-project basis by creating a <a href="/custom_fields/new?type=ProjectCustomField&custom_field[name]=Rocket.Chat Channel">project custom field</a> named "Messenger Channel" (without quotes).'
messenger_url_info_html: 'Generate an <a target="_blank" href="https://github.com/AlphaNodes/redmine_messenger#prepare-your-messenger-service">Incoming WebHook</a> URL from the sessenger service. This URL can be changed on a per-project basis by creating a <a href="/custom_fields/new?type=ProjectCustomField&custom_field[name]=Messenger Channel">project custom field</a> named "Messenger URL" (without quotes).'
label_settings_messenger_verify_ssl: Verify SSL
messenger_verify_ssl_info_html: 'If your Messenger service uses an invalid or self-signed SSL certificate, disable it.'
label_settings_post_db: DB entry added?
label_settings_post_db_updates: DB entry updates?
label_settings_post_contact: Contact added?
label_settings_post_contact_updates: Contact updates?
label_settings_post_password: Password added?
label_settings_post_password_updates: Password updates?
label_messenger_db_entry_created: "[%{project_url}] DB entry %{url} created by *%{user}*"
label_messenger_db_entry_updated: "[%{project_url}] DB entry %{url} updated by *%{user}*"
label_messenger_contact_created: "[%{project_url}] Contact %{url} created by *%{user}*"
label_messenger_contact_updated: "[%{project_url}] Contact %{url} updated by *%{user}*"
label_messenger_password_created: "[%{project_url}] Kennwort %{url} created by *%{user}*"
label_messenger_password_updated: "[%{project_url}] Kennwort %{url} updated by *%{user}*"

View File

@@ -20,7 +20,7 @@ module RedmineMessenger
return unless channels.present? && url
return if is_private? && post_private_issues != '1'
msg = "[#{ERB::Util.html_escape(project)}] #{ERB::Util.html_escape(author)} created <#{Messenger.object_url(self)}|#{ERB::Util.html_escape(self)}>#{Messenger.mentions description if RedmineMessenger.settings[:auto_mentions] == '1'}"
set_language_if_valid Setting.default_language
attachment = {}
if description && RedmineMessenger.settings[:new_include_description] == '1'
@@ -48,7 +48,11 @@ module RedmineMessenger
}
end
Messenger.speak msg, channels, attachment, url
Messenger.speak(l(:label_messenger_issue_created,
project_url: "<#{Messenger.object_url self}|#{ERB::Util.html_escape(project)}>",
url: "<#{Messenger.object_url(self)}|#{ERB::Util.html_escape(self)}>#{Messenger.mentions description if RedmineMessenger.settings[:auto_mentions] == '1'}",
user: author),
channels, attachment, url)
end
def send_messenger_update
@@ -63,7 +67,7 @@ module RedmineMessenger
return if is_private? && post_private_issues != '1'
return if current_journal.private_notes? && post_private_notes != '1'
msg = "[#{ERB::Util.html_escape(project)}] #{ERB::Util.html_escape(current_journal.user.to_s)} updated <#{Messenger.object_url self}|#{ERB::Util.html_escape(self)}>#{Messenger.mentions current_journal.notes if RedmineMessenger.settings[:auto_mentions] == '1'}"
set_language_if_valid Setting.default_language
attachment = {}
if current_journal.notes && RedmineMessenger.settings[:updated_include_description] == '1'
@@ -72,7 +76,11 @@ module RedmineMessenger
fields = current_journal.details.map { |d| Messenger.detail_to_field d }
attachment[:fields] = fields if fields.any?
Messenger.speak msg, channels, attachment, url
Messenger.speak(l(:label_messenger_issue_updated,
project_url: "<#{Messenger.object_url self}|#{ERB::Util.html_escape(project)}>",
url: "<#{Messenger.object_url self}|#{ERB::Util.html_escape(self)}>#{Messenger.mentions current_journal.notes if RedmineMessenger.settings[:auto_mentions] == '1'}",
user: current_journal.user),
channels, attachment, url)
end
end
end

View File

@@ -14,26 +14,22 @@ module RedmineMessenger
module InstanceMethods
def send_messenger_create
return unless RedmineMessenger.settings[:post_wiki] == '1'
user = User.current
project_url = "<#{Messenger.object_url self}|#{ERB::Util.html_escape(project)}>"
page_url = "<#{Messenger.object_url self}|#{title}>"
comment = "[#{project_url}] #{page_url} created by *#{user}*"
set_language_if_valid Setting.default_language
channels = Messenger.channels_for_project project
url = Messenger.url_for_project project
return unless channels.present? && url
Messenger.speak comment, channels, nil, url
Messenger.speak(l(:label_messenger_wiki_created,
project_url: "<#{Messenger.object_url self}|#{ERB::Util.html_escape(project)}>",
url: "<#{Messenger.object_url self}|#{title}>",
user: User.current),
channels, nil, url)
end
def send_messenger_update
return unless RedmineMessenger.settings[:post_wiki_updates] == '1'
user = content.author
project_url = "<#{Messenger.object_url self}|#{ERB::Util.html_escape(project)}>"
page_url = "<#{Messenger.object_url self}|#{title}>"
comment = "[#{project_url}] #{page_url} updated by *#{user}*"
set_language_if_valid Setting.default_language
channels = Messenger.channels_for_project project
url = Messenger.url_for_project project
@@ -46,7 +42,11 @@ module RedmineMessenger
attachment[:text] = ERB::Util.html_escape(content.comments.to_s)
end
Messenger.speak comment, channels, attachment, url
Messenger.speak(l(:label_messenger_wiki_updated,
project_url: "<#{Messenger.object_url self}|#{ERB::Util.html_escape(project)}>",
url: "<#{Messenger.object_url self}|#{title}>",
user: content.author),
channels, attachment, url)
end
end
end