From d6236a3afa979e008e213821ac13816805cc5211 Mon Sep 17 00:00:00 2001 From: ruslanjankurazov Date: Thu, 30 Sep 2021 21:03:48 +0600 Subject: [PATCH] PR #3780 - adds Russian translation to email templates and chat widget --- app/views/mailer/email_oversized/ru.txt.erb | 12 ++ app/views/mailer/password_change/ru.html.erb | 9 ++ app/views/mailer/password_reset/ru.html.erb | 15 ++ app/views/mailer/signup/ru.html.erb | 9 ++ .../mailer/signup_taken_reset/ru.html.erb | 15 ++ app/views/mailer/test_ticket/ru.html.erb | 9 ++ app/views/mailer/ticket_create/ru.html.erb | 24 +++ .../mailer/ticket_escalation/ru.html.erb | 18 +++ .../ticket_escalation_warning/ru.html.erb | 18 +++ .../ticket_reminder_reached/ru.html.erb | 18 +++ app/views/mailer/ticket_update/ru.html.erb | 29 ++++ .../ticket_update_merged_into/ru.html.erb | 11 ++ .../ticket_update_received_merge/ru.html.erb | 11 ++ app/views/mailer/user_device_new/ru.html.erb | 19 +++ .../user_device_new_location/ru.html.erb | 19 +++ app/views/mailer/user_invite/ru.html.erb | 13 ++ i18n/zammad.pot | 16 ++ public/assets/chat/chat-no-jquery.coffee | 38 ++--- public/assets/chat/chat-no-jquery.js | 12 +- public/assets/chat/chat-no-jquery.min.js | 2 +- public/assets/chat/chat.coffee | 38 ++--- public/assets/chat/chat.js | 138 +++++++++--------- public/assets/chat/chat.min.js | 2 +- public/assets/form/form.js | 9 ++ 24 files changed, 389 insertions(+), 115 deletions(-) create mode 100644 app/views/mailer/email_oversized/ru.txt.erb create mode 100644 app/views/mailer/password_change/ru.html.erb create mode 100644 app/views/mailer/password_reset/ru.html.erb create mode 100644 app/views/mailer/signup/ru.html.erb create mode 100644 app/views/mailer/signup_taken_reset/ru.html.erb create mode 100644 app/views/mailer/test_ticket/ru.html.erb create mode 100644 app/views/mailer/ticket_create/ru.html.erb create mode 100644 app/views/mailer/ticket_escalation/ru.html.erb create mode 100644 app/views/mailer/ticket_escalation_warning/ru.html.erb create mode 100644 app/views/mailer/ticket_reminder_reached/ru.html.erb create mode 100644 app/views/mailer/ticket_update/ru.html.erb create mode 100644 app/views/mailer/ticket_update_merged_into/ru.html.erb create mode 100644 app/views/mailer/ticket_update_received_merge/ru.html.erb create mode 100644 app/views/mailer/user_device_new/ru.html.erb create mode 100644 app/views/mailer/user_device_new_location/ru.html.erb create mode 100644 app/views/mailer/user_invite/ru.html.erb diff --git a/app/views/mailer/email_oversized/ru.txt.erb b/app/views/mailer/email_oversized/ru.txt.erb new file mode 100644 index 000000000..810aa01fc --- /dev/null +++ b/app/views/mailer/email_oversized/ru.txt.erb @@ -0,0 +1,12 @@ +[undeliverable] Сообщение слишком велико +Уважаемый #{mail.from_display_name}, + +К сожалению, ваше электронное письмо с названием "#{mail.subject}" не может быть доставлено одному или нескольким получателям. + +Размер вашего сообщения составляет #{mail.msg_size} МБ, но мы принимаем сообщения размером до #{config.postmaster_max_size} МБ. + +Уменьшите размер сообщения и попробуйте еще раз. Спасибо за Ваше понимание. + +С уважением, + +Почтмейстер #{config.fqdn} \ No newline at end of file diff --git a/app/views/mailer/password_change/ru.html.erb b/app/views/mailer/password_change/ru.html.erb new file mode 100644 index 000000000..1eac76138 --- /dev/null +++ b/app/views/mailer/password_change/ru.html.erb @@ -0,0 +1,9 @@ +Пароль был изменен в #{config.product_name} + +

Здравствуйте #{user.firstname},

+
+

Пароль для вашей учетной записи #{config.product_name} #{user.login} недавно был изменен.

+
+

Эта деятельность вам не известна? Если нет, обратитесь к системному администратору..

+
+

Команда #{config.product_name}

diff --git a/app/views/mailer/password_reset/ru.html.erb b/app/views/mailer/password_reset/ru.html.erb new file mode 100644 index 000000000..620e1343c --- /dev/null +++ b/app/views/mailer/password_reset/ru.html.erb @@ -0,0 +1,15 @@ +Cброс пароля учетной записи #{config.product_name} + +
Здравствуйте #{user.firstname},
+
+
Мы получили запрос на сброс пароля для вашей учетной записи #{config.product_name} #{user.login}.
+
+
Если вы хотите сбросить пароль, нажмите на ссылку ниже (или скопируйте и вставьте URL-адрес в свой браузер):
+
+
#{config.http_type}://#{config.fqdn}/#password_reset_verify/#{token.name}
+
+
Эта ссылка приведет вас на страницу, где вы можете изменить свой пароль.
+
+
Если вы не хотите сбрасывать пароль, не обращайте внимания на это сообщение. Ваш пароль не будет сброшен.
+
+
Команда #{config.product_name}
diff --git a/app/views/mailer/signup/ru.html.erb b/app/views/mailer/signup/ru.html.erb new file mode 100644 index 000000000..90a834510 --- /dev/null +++ b/app/views/mailer/signup/ru.html.erb @@ -0,0 +1,9 @@ +Подтвердите вашу учетную запись #{config.product_name}, #{user.firstname} #{user.lastname} + +
Здравствуйте, #{user.firstname},
+
+
Подтвердите свой адрес электронной почты, чтобы завершить учетную запись #{config.product_name}. Это просто, просто нажмите на ссылку ниже.
+
+
#{config.http_type}://#{config.fqdn}/#email_verify/#{token.name}
+
+
Команда #{config.product_name}
\ No newline at end of file diff --git a/app/views/mailer/signup_taken_reset/ru.html.erb b/app/views/mailer/signup_taken_reset/ru.html.erb new file mode 100644 index 000000000..b82e2c40e --- /dev/null +++ b/app/views/mailer/signup_taken_reset/ru.html.erb @@ -0,0 +1,15 @@ +Cброс пароля учетной записи #{config.product_name} + +
Здравствуйте #{user.firstname},
+
+
Вы или кто-то другой пытались зарегистрироваться с этим адресом электронной почты. Однако этот адрес электронной почты уже используется.
+
+
Если вы хотите сбросить пароль, нажмите на ссылку ниже (или скопируйте и вставьте URL-адрес в свой браузер):
+
+
#{config.http_type}://#{config.fqdn}/#password_reset_verify/#{token.name}
+
+
Эта ссылка приведет вас на страницу, где вы можете изменить свой пароль.
+
+
Если вы не хотите сбрасывать пароль, не обращайте внимания на это сообщение. Ваш пароль не будет сброшен.
+
+
Комнда #{config.product_name}
diff --git a/app/views/mailer/test_ticket/ru.html.erb b/app/views/mailer/test_ticket/ru.html.erb new file mode 100644 index 000000000..e3e13399e --- /dev/null +++ b/app/views/mailer/test_ticket/ru.html.erb @@ -0,0 +1,9 @@ +Тестовый тикет! + +
Уважаемый #{agent.firstname},
+
+
Этотестовый тикет. Я клиент, и мне нужна помощь! :)
+
+
#{customer.fullname}
+
+
Проект Zammad
diff --git a/app/views/mailer/ticket_create/ru.html.erb b/app/views/mailer/ticket_create/ru.html.erb new file mode 100644 index 000000000..d84c266da --- /dev/null +++ b/app/views/mailer/ticket_create/ru.html.erb @@ -0,0 +1,24 @@ +Новый тикет (#{ticket.title}) + +
Здравствуйте #{recipient.firstname},
+
+
Новый тикет (#{ticket.title}) был создан "#{current_user.longname}".
+
+
+#{t('Group')}: #{ticket.group.name}
+#{t('Owner')}: #{ticket.owner.fullname}
+#{t('State')}: #{t(ticket.state.name)}
+
+
+<% if @objects[:article] %> +
+ #{t('Information')}: +
+ #{article.body_as_html} +
+
+<% end %> +
+
+ #{t('View this in Zammad')} +
diff --git a/app/views/mailer/ticket_escalation/ru.html.erb b/app/views/mailer/ticket_escalation/ru.html.erb new file mode 100644 index 000000000..f28242ac5 --- /dev/null +++ b/app/views/mailer/ticket_escalation/ru.html.erb @@ -0,0 +1,18 @@ +Тикет эскалирован (#{ticket.title}) + +
Здравствуйте #{recipient.firstname},
+
+
Тикет (#{ticket.title}) от "#{ticket.customer.longname}" бы эскалирован с "#{ticket.escalation_at}"!
+
+<% if @objects[:article] %> +
+ #{t('Information')}: +
+ #{article.body_as_html} +
+
+<% end %> +
+
+ #{t('View this in Zammad')} +
diff --git a/app/views/mailer/ticket_escalation_warning/ru.html.erb b/app/views/mailer/ticket_escalation_warning/ru.html.erb new file mode 100644 index 000000000..6abe5acd0 --- /dev/null +++ b/app/views/mailer/ticket_escalation_warning/ru.html.erb @@ -0,0 +1,18 @@ +Тикет будет эскалирован (#{ticket.title}) + +
Здравствуйте #{recipient.firstname},
+
+
Тикет (#{ticket.title}) от "#{ticket.customer.longname}" будет эскалирован с "#{ticket.escalation_at}"!
+
+<% if @objects[:article] %> +
+ #{t('Information')}: +
+ #{article.body_as_html} +
+
+<% end %> +
+
+ #{t('View this in Zammad')} +
diff --git a/app/views/mailer/ticket_reminder_reached/ru.html.erb b/app/views/mailer/ticket_reminder_reached/ru.html.erb new file mode 100644 index 000000000..04077c5e9 --- /dev/null +++ b/app/views/mailer/ticket_reminder_reached/ru.html.erb @@ -0,0 +1,18 @@ +Напоминание доставлено (#{ticket.title}) + +
Здравствуйте #{recipient.firstname},
+
+
Тикет требует внимания, напоминание доставленно для (#{ticket.title}) с клиентом "#{ticket.customer.longname}".
+
+<% if @objects[:article] %> +
+ #{t('Information')}: +
+ #{article.body_as_html} +
+
+<% end %> +
+
+ #{t('View this in Zammad')} +
diff --git a/app/views/mailer/ticket_update/ru.html.erb b/app/views/mailer/ticket_update/ru.html.erb new file mode 100644 index 000000000..d6029ce09 --- /dev/null +++ b/app/views/mailer/ticket_update/ru.html.erb @@ -0,0 +1,29 @@ +Тикет обновлен (#{ticket.title}) + +
Здравствуйте #{recipient.firstname},
+
+
+Тикет (#{ticket.title}) был обновлен "#{current_user.longname}". +
+
+<% if @objects[:changes].present? %> +
+ #{t('Changes')}:
+ <% @objects[:changes].each do |key, value| %> + <%= t key %>: <%= h value[0] %> -> <%= h value[1] %>
+ <% end %> +
+<% end %> +
+<% if @objects[:article] %> +
+ #{t('Information')}: +
+ #{article.body_as_html} +
+
+<% end %> +
+
+ #{t('View this in Zammad')} +
diff --git a/app/views/mailer/ticket_update_merged_into/ru.html.erb b/app/views/mailer/ticket_update_merged_into/ru.html.erb new file mode 100644 index 000000000..6e548cb8c --- /dev/null +++ b/app/views/mailer/ticket_update_merged_into/ru.html.erb @@ -0,0 +1,11 @@ +Тикет (#{ticket.title}) был слит с другим тикетом + +
Hi #{recipient.firstname},
+
+
+Тикет (#{ticket.title}) был слит с другим тикетом пользователем "#{current_user.longname}". +
+
+
+ #{t('View this in Zammad')} +
diff --git a/app/views/mailer/ticket_update_received_merge/ru.html.erb b/app/views/mailer/ticket_update_received_merge/ru.html.erb new file mode 100644 index 000000000..7bc30c016 --- /dev/null +++ b/app/views/mailer/ticket_update_received_merge/ru.html.erb @@ -0,0 +1,11 @@ +Другой тикет был слит с тикетом (#{ticket.title}) + +
Hi #{recipient.firstname},
+
+
+Другой тикет был слит с тикетом (#{ticket.title}) пользователем "#{current_user.longname}". +
+
+
+ #{t('View this in Zammad')} +
diff --git a/app/views/mailer/user_device_new/ru.html.erb b/app/views/mailer/user_device_new/ru.html.erb new file mode 100644 index 000000000..0cb235b48 --- /dev/null +++ b/app/views/mailer/user_device_new/ru.html.erb @@ -0,0 +1,19 @@ +#{config.product_name} вход обнаружен с нового устройства + +
Здравствуйте #{user.firstname},
+
+
Похоже, вы вошли в свою учетную запись с нового устройства в "#{user_device.created_at}":
+
+
+Ваше устройство: #{user_device.name}
+Ваша локация (относительная): #{user_device.location}
+Ваш IP: #{user_device.ip}
+
+
+
Ваше устройство было добавлено в список известных устройств, который вы можете просмотреть здесь.:
+
+
#{config.http_type}://#{config.fqdn}/#profile/devices
+
+
Если это не вы, удалите устройство, измените пароль учетной записи и обратитесь к администратору. Кто-то мог получить несанкционированный доступ к вашей учетной записи.
+
+
Команда #{config.product_name}
diff --git a/app/views/mailer/user_device_new_location/ru.html.erb b/app/views/mailer/user_device_new_location/ru.html.erb new file mode 100644 index 000000000..e7be526a1 --- /dev/null +++ b/app/views/mailer/user_device_new_location/ru.html.erb @@ -0,0 +1,19 @@ +#{config.product_name} обнаружен вход из новой страны + +
Здравствуйте #{user.firstname},
+
+
Похоже, вы использовали свою учетную запись на известном устройстве, но из другой страны в "#{user_device.created_at}":
+
+
+Ваше устройство: #{user_device.name}
+Ваша локация (относительная): #{user_device.location}
+Ваш IP: #{user_device.ip}
+
+
+
Страна добавлена в список известных устройств, который вы можете просмотреть здесь.:
+
+
#{config.http_type}://#{config.fqdn}/#profile/devices
+
+
Если это не вы, удалите устройство, измените пароль учетной записи и обратитесь к администратору. Кто-то мог получить несанкционированный доступ к вашей учетной записи.
+
+
Команда #{config.product_name}
diff --git a/app/views/mailer/user_invite/ru.html.erb b/app/views/mailer/user_invite/ru.html.erb new file mode 100644 index 000000000..b7e49053a --- /dev/null +++ b/app/views/mailer/user_invite/ru.html.erb @@ -0,0 +1,13 @@ +Приглашение в #{config.product_name} на #{config.fqdn} + +
Здравствуйте #{user.firstname},
+
+
Я (#{current_user.firstname} #{current_user.lastname}) приглашаю вас в #{config.product_name} - наша платформа поддержки клиентов / тикет-системы.
+
+
Нажмите сюда и установите свой пароль.
+
+
Наслаждайтесь,
+
+
#{current_user.firstname} #{current_user.lastname}
+
+
Команда #{config.product_name}
diff --git a/i18n/zammad.pot b/i18n/zammad.pot index 2f595d9d6..1b138a99b 100644 --- a/i18n/zammad.pot +++ b/i18n/zammad.pot @@ -1496,6 +1496,7 @@ msgstr "" #: app/views/mailer/ticket_update/fr.html.erb #: app/views/mailer/ticket_update/it.html.erb #: app/views/mailer/ticket_update/pt-br.html.erb +#: app/views/mailer/ticket_update/ru.html.erb #: app/views/mailer/ticket_update/zh-cn.html.erb #: app/views/mailer/ticket_update/zh-tw.html.erb msgid "Changes" @@ -4409,6 +4410,7 @@ msgstr "" #: app/views/mailer/ticket_create/it.html.erb #: app/views/mailer/ticket_create/pl.html.erb #: app/views/mailer/ticket_create/pt-br.html.erb +#: app/views/mailer/ticket_create/ru.html.erb #: app/views/mailer/ticket_create/zh-cn.html.erb #: app/views/mailer/ticket_create/zh-tw.html.erb #: app/views/slack/ticket_create/en.md.erb @@ -4972,6 +4974,7 @@ msgstr "" #: app/views/mailer/ticket_create/it.html.erb #: app/views/mailer/ticket_create/pl.html.erb #: app/views/mailer/ticket_create/pt-br.html.erb +#: app/views/mailer/ticket_create/ru.html.erb #: app/views/mailer/ticket_create/zh-cn.html.erb #: app/views/mailer/ticket_create/zh-tw.html.erb #: app/views/mailer/ticket_escalation/cs.html.erb @@ -4982,6 +4985,7 @@ msgstr "" #: app/views/mailer/ticket_escalation/it.html.erb #: app/views/mailer/ticket_escalation/pl.html.erb #: app/views/mailer/ticket_escalation/pt-br.html.erb +#: app/views/mailer/ticket_escalation/ru.html.erb #: app/views/mailer/ticket_escalation/zh-cn.html.erb #: app/views/mailer/ticket_escalation/zh-tw.html.erb #: app/views/mailer/ticket_escalation_warning/cs.html.erb @@ -4992,6 +4996,7 @@ msgstr "" #: app/views/mailer/ticket_escalation_warning/it.html.erb #: app/views/mailer/ticket_escalation_warning/pl.html.erb #: app/views/mailer/ticket_escalation_warning/pt-br.html.erb +#: app/views/mailer/ticket_escalation_warning/ru.html.erb #: app/views/mailer/ticket_escalation_warning/zh-cn.html.erb #: app/views/mailer/ticket_escalation_warning/zh-tw.html.erb #: app/views/mailer/ticket_reminder_reached/cs.html.erb @@ -5001,6 +5006,7 @@ msgstr "" #: app/views/mailer/ticket_reminder_reached/fr.html.erb #: app/views/mailer/ticket_reminder_reached/it.html.erb #: app/views/mailer/ticket_reminder_reached/pt-br.html.erb +#: app/views/mailer/ticket_reminder_reached/ru.html.erb #: app/views/mailer/ticket_reminder_reached/zh-cn.html.erb #: app/views/mailer/ticket_reminder_reached/zh-tw.html.erb #: app/views/mailer/ticket_update/cs.html.erb @@ -5010,6 +5016,7 @@ msgstr "" #: app/views/mailer/ticket_update/fr.html.erb #: app/views/mailer/ticket_update/it.html.erb #: app/views/mailer/ticket_update/pt-br.html.erb +#: app/views/mailer/ticket_update/ru.html.erb #: app/views/mailer/ticket_update/zh-cn.html.erb #: app/views/mailer/ticket_update/zh-tw.html.erb msgid "Information" @@ -6940,6 +6947,7 @@ msgstr "" #: app/views/mailer/ticket_create/it.html.erb #: app/views/mailer/ticket_create/pl.html.erb #: app/views/mailer/ticket_create/pt-br.html.erb +#: app/views/mailer/ticket_create/ru.html.erb #: app/views/mailer/ticket_create/zh-cn.html.erb #: app/views/mailer/ticket_create/zh-tw.html.erb #: app/views/slack/ticket_create/en.md.erb @@ -8455,6 +8463,7 @@ msgstr "" #: app/views/mailer/ticket_create/it.html.erb #: app/views/mailer/ticket_create/pl.html.erb #: app/views/mailer/ticket_create/pt-br.html.erb +#: app/views/mailer/ticket_create/ru.html.erb #: app/views/mailer/ticket_create/zh-cn.html.erb #: app/views/mailer/ticket_create/zh-tw.html.erb #: app/views/slack/ticket_create/en.md.erb @@ -10045,6 +10054,7 @@ msgstr "" #: app/views/mailer/ticket_create/es.html.erb #: app/views/mailer/ticket_create/fr.html.erb #: app/views/mailer/ticket_create/it.html.erb +#: app/views/mailer/ticket_create/ru.html.erb #: app/views/mailer/ticket_create/zh-cn.html.erb #: app/views/mailer/ticket_create/zh-tw.html.erb #: app/views/mailer/ticket_escalation/cs.html.erb @@ -10053,6 +10063,7 @@ msgstr "" #: app/views/mailer/ticket_escalation/es.html.erb #: app/views/mailer/ticket_escalation/fr.html.erb #: app/views/mailer/ticket_escalation/it.html.erb +#: app/views/mailer/ticket_escalation/ru.html.erb #: app/views/mailer/ticket_escalation/zh-cn.html.erb #: app/views/mailer/ticket_escalation/zh-tw.html.erb #: app/views/mailer/ticket_escalation_warning/cs.html.erb @@ -10061,6 +10072,7 @@ msgstr "" #: app/views/mailer/ticket_escalation_warning/es.html.erb #: app/views/mailer/ticket_escalation_warning/fr.html.erb #: app/views/mailer/ticket_escalation_warning/it.html.erb +#: app/views/mailer/ticket_escalation_warning/ru.html.erb #: app/views/mailer/ticket_escalation_warning/zh-cn.html.erb #: app/views/mailer/ticket_escalation_warning/zh-tw.html.erb #: app/views/mailer/ticket_reminder_reached/cs.html.erb @@ -10069,6 +10081,7 @@ msgstr "" #: app/views/mailer/ticket_reminder_reached/es.html.erb #: app/views/mailer/ticket_reminder_reached/fr.html.erb #: app/views/mailer/ticket_reminder_reached/it.html.erb +#: app/views/mailer/ticket_reminder_reached/ru.html.erb #: app/views/mailer/ticket_reminder_reached/zh-cn.html.erb #: app/views/mailer/ticket_reminder_reached/zh-tw.html.erb #: app/views/mailer/ticket_update/cs.html.erb @@ -10077,10 +10090,13 @@ msgstr "" #: app/views/mailer/ticket_update/es.html.erb #: app/views/mailer/ticket_update/fr.html.erb #: app/views/mailer/ticket_update/it.html.erb +#: app/views/mailer/ticket_update/ru.html.erb #: app/views/mailer/ticket_update/zh-cn.html.erb #: app/views/mailer/ticket_update/zh-tw.html.erb #: app/views/mailer/ticket_update_merged_into/en.html.erb +#: app/views/mailer/ticket_update_merged_into/ru.html.erb #: app/views/mailer/ticket_update_received_merge/en.html.erb +#: app/views/mailer/ticket_update_received_merge/ru.html.erb msgid "View this in Zammad" msgstr "" diff --git a/public/assets/chat/chat-no-jquery.coffee b/public/assets/chat/chat-no-jquery.coffee index 977a5716d..bcd638126 100644 --- a/public/assets/chat/chat-no-jquery.coffee +++ b/public/assets/chat/chat-no-jquery.coffee @@ -206,7 +206,7 @@ do(window) -> 'Today': 'I dag' 'Send': 'Send' 'Chat closed by %s': 'Chat lukket af %s' - 'Compose your message...': 'Skriv en besked...' + 'Compose your message…': 'Skriv en besked…' 'All colleagues are busy.': 'Alle kollegaer er optaget.' 'You are on waiting list position %s.': 'Du er i venteliste som nummer %s.' 'Start new conversation': 'Start en ny samtale' @@ -223,7 +223,7 @@ do(window) -> 'Today': 'Heute' 'Send': 'Senden' 'Chat closed by %s': 'Chat beendet von %s' - 'Compose your message...': 'Ihre Nachricht...' + 'Compose your message…': 'Ihre Nachricht…' 'All colleagues are busy.': 'Alle Kollegen sind belegt.' 'You are on waiting list position %s.': 'Sie sind in der Warteliste an der Position %s.' 'Start new conversation': 'Neue Konversation starten' @@ -240,7 +240,7 @@ do(window) -> 'Today': 'Hoy' 'Send': 'Enviar' 'Chat closed by %s': 'Chat cerrado por %s' - 'Compose your message...': 'Escriba su mensaje...' + 'Compose your message…': 'Escriba su mensaje…' 'All colleagues are busy.': 'Todos los agentes están ocupados.' 'You are on waiting list position %s.': 'Usted está en la posición %s de la lista de espera.' 'Start new conversation': 'Iniciar nueva conversación' @@ -257,7 +257,7 @@ do(window) -> 'Today': 'Tänään' 'Send': 'Lähetä' 'Chat closed by %s': '%s sulki keskustelun' - 'Compose your message...': 'Luo viestisi...' + 'Compose your message…': 'Luo viestisi…' 'All colleagues are busy.': 'Kaikki kollegat ovat varattuja.' 'You are on waiting list position %s.': 'Olet odotuslistalla sijalla %s.' 'Start new conversation': 'Aloita uusi keskustelu' @@ -274,7 +274,7 @@ do(window) -> 'Today': 'Aujourdhui' 'Send': 'Envoyer' 'Chat closed by %s': 'Chat fermé par %s' - 'Compose your message...': 'Composez votre message...' + 'Compose your message…': 'Composez votre message…' 'All colleagues are busy.': 'Tous les collaborateurs sont occupés actuellement.' 'You are on waiting list position %s.': 'Vous êtes actuellement en position %s dans la file d\'attente.' 'Start new conversation': 'Démarrer une nouvelle conversation' @@ -291,7 +291,7 @@ do(window) -> 'Today': 'היום' 'Send': 'שלח' 'Chat closed by %s': 'הצאט נסגר ע"י %s' - 'Compose your message...': 'כתוב את ההודעה שלך ...' + 'Compose your message…': 'כתוב את ההודעה שלך …' 'All colleagues are busy.': 'כל הנציגים תפוסים' 'You are on waiting list position %s.': 'מיקומך בתור %s.' 'Start new conversation': 'התחל שיחה חדשה' @@ -308,7 +308,7 @@ do(window) -> 'Today': 'Ma' 'Send': 'Küldés' 'Chat closed by %s': 'A beszélgetést lezárta %s' - 'Compose your message...': 'Írj üzenetet...' + 'Compose your message…': 'Írj üzenetet…' 'All colleagues are busy.': 'Jelenleg minden kollégánk elfoglalt.' 'You are on waiting list position %s.': 'A várólistán a %s. pozícióban várakozol.' 'Start new conversation': 'Új beszélgetés indítása' @@ -325,7 +325,7 @@ do(window) -> 'Today': 'Vandaag' 'Send': 'Verzenden' 'Chat closed by %s': 'Chat gesloten door %s' - 'Compose your message...': 'Typ uw bericht...' + 'Compose your message…': 'Typ uw bericht…' 'All colleagues are busy.': 'Alle medewerkers zijn bezet.' 'You are on waiting list position %s.': 'U bent %s in de wachtrij.' 'Start new conversation': 'Nieuwe conversatie starten' @@ -342,7 +342,7 @@ do(window) -> 'Today': 'Oggi' 'Send': 'Invio' 'Chat closed by %s': 'Conversazione chiusa da %s' - 'Compose your message...': 'Comporre il tuo messaggio...' + 'Compose your message…': 'Comporre il tuo messaggio…' 'All colleagues are busy.': 'Tutti i colleghi sono occupati.' 'You are on waiting list position %s.': 'Siete in posizione lista d\' attesa %s.' 'Start new conversation': 'Avviare una nuova conversazione' @@ -359,7 +359,7 @@ do(window) -> 'Today': 'dzisiejszy' 'Send': 'Wyślij' 'Chat closed by %s': 'Czat zamknięty przez %s' - 'Compose your message...': 'Utwórz swoją wiadomość...' + 'Compose your message…': 'Utwórz swoją wiadomość…' 'All colleagues are busy.': 'Wszyscy konsultanci są zajęci.' 'You are on waiting list position %s.': 'Na liście oczekujących znajduje się pozycja %s.' 'Start new conversation': 'Rozpoczęcie nowej konwersacji' @@ -376,7 +376,7 @@ do(window) -> 'Today': 'Hoje', 'Send': 'Enviar', 'Chat closed by %s': 'Chat encerrado por %s', - 'Compose your message...': 'Escreva sua mensagem...', + 'Compose your message…': 'Escreva sua mensagem…', 'All colleagues are busy.': 'Todos os agentes estão ocupados.', 'You are on waiting list position %s.': 'Você está na posição %s na fila de espera.', 'Start new conversation': 'Iniciar uma nova conversa', @@ -394,7 +394,7 @@ do(window) -> 'Today': '今天' 'Send': '发送' 'Chat closed by %s': 'Chat closed by %s' - 'Compose your message...': '正在输入信息...' + 'Compose your message…': '正在输入信息…' 'All colleagues are busy.': '所有工作人员都在忙碌中.' 'You are on waiting list position %s.': '您目前的等候位置是第 %s 位.' 'Start new conversation': '开始新的会话' @@ -411,7 +411,7 @@ do(window) -> 'Today': '今天' 'Send': '發送' 'Chat closed by %s': 'Chat closed by %s' - 'Compose your message...': '正在輸入訊息...' + 'Compose your message…': '正在輸入訊息…' 'All colleagues are busy.': '所有服務人員都在忙碌中.' 'You are on waiting list position %s.': '你目前的等候位置是第 %s 順位.' 'Start new conversation': '開始新的對話' @@ -428,9 +428,9 @@ do(window) -> 'Today': 'Сегодня' 'Send': 'Отправить' 'Chat closed by %s': '%s закрыл чат' - 'Compose your message...': 'Напишите сообщение...' + 'Compose your message…': 'Напишите сообщение…' 'All colleagues are busy.': 'Все сотрудники заняты' - 'You are on waiting list position %s.': 'Вы в списке ожидания под номером %s' + 'You are on waiting list position %s.': 'Вы в списке ожидания под номером %s' 'Start new conversation': 'Начать новую переписку.' 'Since you didn\'t respond in the last %s minutes your conversation with %s got closed.': 'Поскольку вы не отвечали в течение последних %s минут, ваш разговор с %s был закрыт.' 'Since you didn\'t respond in the last %s minutes your conversation got closed.': 'Поскольку вы не отвечали в течение последних %s минут, ваш разговор был закрыт.' @@ -445,7 +445,7 @@ do(window) -> 'Today': 'I dag' 'Send': 'Skicka' 'Chat closed by %s': 'Chatt stängd av %s' - 'Compose your message...': 'Skriv ditt meddelande...' + 'Compose your message…': 'Skriv ditt meddelande…' 'All colleagues are busy.': 'Alla kollegor är upptagna.' 'You are on waiting list position %s.': 'Du är på väntelistan som position %s.' 'Start new conversation': 'Starta ny konversation' @@ -462,7 +462,7 @@ do(window) -> 'Today': 'I dag' 'Send': 'Send' 'Chat closed by %s': 'Chat avsluttes om %s' - 'Compose your message...': 'Skriv din melding...' + 'Compose your message…': 'Skriv din melding…' 'All colleagues are busy.': 'Alle våre kolleger er for øyeblikket opptatt.' 'You are on waiting list position %s.': 'Du står nå i kø og er nr. %s på ventelisten.' 'Start new conversation': 'Start en ny samtale' @@ -479,7 +479,7 @@ do(window) -> 'Today': 'I dag' 'Send': 'Send' 'Chat closed by %s': 'Chat avsluttes om %s' - 'Compose your message...': 'Skriv din melding...' + 'Compose your message…': 'Skriv din melding…' 'All colleagues are busy.': 'Alle våre kolleger er for øyeblikket opptatt.' 'You are on waiting list position %s.': 'Du står nå i kø og er nr. %s på ventelisten.' 'Start new conversation': 'Start en ny samtale' @@ -496,7 +496,7 @@ do(window) -> 'Today': 'Σήμερα' 'Send': 'Αποστολή' 'Chat closed by %s': 'Η συνομιλία έκλεισε από τον/την %s' - 'Compose your message...': 'Γράψτε το μήνυμα σας...' + 'Compose your message…': 'Γράψτε το μήνυμα σας…' 'All colleagues are busy.': 'Όλοι οι συνάδελφοι μας είναι απασχολημένοι.' 'You are on waiting list position %s.': 'Βρίσκεστε σε λίστα αναμονής στη θέση %s.' 'Start new conversation': 'Έναρξη νέας συνομιλίας' diff --git a/public/assets/chat/chat-no-jquery.js b/public/assets/chat/chat-no-jquery.js index cb35cb62d..ff76bef7d 100644 --- a/public/assets/chat/chat-no-jquery.js +++ b/public/assets/chat/chat-no-jquery.js @@ -1,3 +1,7 @@ +/*! @license DOMPurify 2.3.1 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/2.3.1/LICENSE */ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).DOMPurify=t()}(this,(function(){"use strict";var e=Object.hasOwnProperty,t=Object.setPrototypeOf,n=Object.isFrozen,r=Object.getPrototypeOf,o=Object.getOwnPropertyDescriptor,i=Object.freeze,a=Object.seal,l=Object.create,c="undefined"!=typeof Reflect&&Reflect,s=c.apply,u=c.construct;s||(s=function(e,t,n){return e.apply(t,n)}),i||(i=function(e){return e}),a||(a=function(e){return e}),u||(u=function(e,t){return new(Function.prototype.bind.apply(e,[null].concat(function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t1?n-1:0),o=1;o/gm),U=a(/^data-[\-\w.\u00B7-\uFFFF]/),j=a(/^aria-[\-\w]+$/),B=a(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),P=a(/^(?:\w+script|data):/i),W=a(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),G="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function q(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t0&&void 0!==arguments[0]?arguments[0]:K(),n=function(t){return e(t)};if(n.version="2.3.1",n.removed=[],!t||!t.document||9!==t.document.nodeType)return n.isSupported=!1,n;var r=t.document,o=t.document,a=t.DocumentFragment,l=t.HTMLTemplateElement,c=t.Node,s=t.Element,u=t.NodeFilter,f=t.NamedNodeMap,x=void 0===f?t.NamedNodeMap||t.MozNamedAttrMap:f,Y=t.Text,X=t.Comment,$=t.DOMParser,Z=t.trustedTypes,J=s.prototype,Q=N(J,"cloneNode"),ee=N(J,"nextSibling"),te=N(J,"childNodes"),ne=N(J,"parentNode");if("function"==typeof l){var re=o.createElement("template");re.content&&re.content.ownerDocument&&(o=re.content.ownerDocument)}var oe=V(Z,r),ie=oe&&ze?oe.createHTML(""):"",ae=o,le=ae.implementation,ce=ae.createNodeIterator,se=ae.createDocumentFragment,ue=ae.getElementsByTagName,fe=r.importNode,me={};try{me=w(o).documentMode?o.documentMode:{}}catch(e){}var de={};n.isSupported="function"==typeof ne&&le&&void 0!==le.createHTMLDocument&&9!==me;var pe=z,ge=H,he=U,ye=j,ve=P,be=W,Te=B,Ae=null,xe=S({},[].concat(q(k),q(E),q(D),q(R),q(M))),Se=null,we=S({},[].concat(q(L),q(F),q(I),q(C))),Ne=null,ke=null,Ee=!0,De=!0,Oe=!1,Re=!1,_e=!1,Me=!1,Le=!1,Fe=!1,Ie=!1,Ce=!0,ze=!1,He=!0,Ue=!0,je=!1,Be={},Pe=null,We=S({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Ge=null,qe=S({},["audio","video","img","source","image","track"]),Ke=null,Ve=S({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ye="http://www.w3.org/1998/Math/MathML",Xe="http://www.w3.org/2000/svg",$e="http://www.w3.org/1999/xhtml",Ze=$e,Je=!1,Qe=null,et=o.createElement("form"),tt=function(e){Qe&&Qe===e||(e&&"object"===(void 0===e?"undefined":G(e))||(e={}),e=w(e),Ae="ALLOWED_TAGS"in e?S({},e.ALLOWED_TAGS):xe,Se="ALLOWED_ATTR"in e?S({},e.ALLOWED_ATTR):we,Ke="ADD_URI_SAFE_ATTR"in e?S(w(Ve),e.ADD_URI_SAFE_ATTR):Ve,Ge="ADD_DATA_URI_TAGS"in e?S(w(qe),e.ADD_DATA_URI_TAGS):qe,Pe="FORBID_CONTENTS"in e?S({},e.FORBID_CONTENTS):We,Ne="FORBID_TAGS"in e?S({},e.FORBID_TAGS):{},ke="FORBID_ATTR"in e?S({},e.FORBID_ATTR):{},Be="USE_PROFILES"in e&&e.USE_PROFILES,Ee=!1!==e.ALLOW_ARIA_ATTR,De=!1!==e.ALLOW_DATA_ATTR,Oe=e.ALLOW_UNKNOWN_PROTOCOLS||!1,Re=e.SAFE_FOR_TEMPLATES||!1,_e=e.WHOLE_DOCUMENT||!1,Fe=e.RETURN_DOM||!1,Ie=e.RETURN_DOM_FRAGMENT||!1,Ce=!1!==e.RETURN_DOM_IMPORT,ze=e.RETURN_TRUSTED_TYPE||!1,Le=e.FORCE_BODY||!1,He=!1!==e.SANITIZE_DOM,Ue=!1!==e.KEEP_CONTENT,je=e.IN_PLACE||!1,Te=e.ALLOWED_URI_REGEXP||Te,Ze=e.NAMESPACE||$e,Re&&(De=!1),Ie&&(Fe=!0),Be&&(Ae=S({},[].concat(q(M))),Se=[],!0===Be.html&&(S(Ae,k),S(Se,L)),!0===Be.svg&&(S(Ae,E),S(Se,F),S(Se,C)),!0===Be.svgFilters&&(S(Ae,D),S(Se,F),S(Se,C)),!0===Be.mathMl&&(S(Ae,R),S(Se,I),S(Se,C))),e.ADD_TAGS&&(Ae===xe&&(Ae=w(Ae)),S(Ae,e.ADD_TAGS)),e.ADD_ATTR&&(Se===we&&(Se=w(Se)),S(Se,e.ADD_ATTR)),e.ADD_URI_SAFE_ATTR&&S(Ke,e.ADD_URI_SAFE_ATTR),e.FORBID_CONTENTS&&(Pe===We&&(Pe=w(Pe)),S(Pe,e.FORBID_CONTENTS)),Ue&&(Ae["#text"]=!0),_e&&S(Ae,["html","head","body"]),Ae.table&&(S(Ae,["tbody"]),delete Ne.tbody),i&&i(e),Qe=e)},nt=S({},["mi","mo","mn","ms","mtext"]),rt=S({},["foreignobject","desc","title","annotation-xml"]),ot=S({},E);S(ot,D),S(ot,O);var it=S({},R);S(it,_);var at=function(e){var t=ne(e);t&&t.tagName||(t={namespaceURI:$e,tagName:"template"});var n=g(e.tagName),r=g(t.tagName);if(e.namespaceURI===Xe)return t.namespaceURI===$e?"svg"===n:t.namespaceURI===Ye?"svg"===n&&("annotation-xml"===r||nt[r]):Boolean(ot[n]);if(e.namespaceURI===Ye)return t.namespaceURI===$e?"math"===n:t.namespaceURI===Xe?"math"===n&&rt[r]:Boolean(it[n]);if(e.namespaceURI===$e){if(t.namespaceURI===Xe&&!rt[r])return!1;if(t.namespaceURI===Ye&&!nt[r])return!1;var o=S({},["title","style","font","a","script"]);return!it[n]&&(o[n]||!ot[n])}return!1},lt=function(e){p(n.removed,{element:e});try{e.parentNode.removeChild(e)}catch(t){try{e.outerHTML=ie}catch(t){e.remove()}}},ct=function(e,t){try{p(n.removed,{attribute:t.getAttributeNode(e),from:t})}catch(e){p(n.removed,{attribute:null,from:t})}if(t.removeAttribute(e),"is"===e&&!Se[e])if(Fe||Ie)try{lt(t)}catch(e){}else try{t.setAttribute(e,"")}catch(e){}},st=function(e){var t=void 0,n=void 0;if(Le)e=""+e;else{var r=h(e,/^[\r\n\t ]+/);n=r&&r[0]}var i=oe?oe.createHTML(e):e;if(Ze===$e)try{t=(new $).parseFromString(i,"text/html")}catch(e){}if(!t||!t.documentElement){t=le.createDocument(Ze,"template",null);try{t.documentElement.innerHTML=Je?"":i}catch(e){}}var a=t.body||t.documentElement;return e&&n&&a.insertBefore(o.createTextNode(n),a.childNodes[0]||null),Ze===$e?ue.call(t,_e?"html":"body")[0]:_e?t.documentElement:a},ut=function(e){return ce.call(e.ownerDocument||e,e,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT,null,!1)},ft=function(e){return!(e instanceof Y||e instanceof X)&&!("string"==typeof e.nodeName&&"string"==typeof e.textContent&&"function"==typeof e.removeChild&&e.attributes instanceof x&&"function"==typeof e.removeAttribute&&"function"==typeof e.setAttribute&&"string"==typeof e.namespaceURI&&"function"==typeof e.insertBefore)},mt=function(e){return"object"===(void 0===c?"undefined":G(c))?e instanceof c:e&&"object"===(void 0===e?"undefined":G(e))&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName},dt=function(e,t,r){de[e]&&m(de[e],(function(e){e.call(n,t,r,Qe)}))},pt=function(e){var t=void 0;if(dt("beforeSanitizeElements",e,null),ft(e))return lt(e),!0;if(h(e.nodeName,/[\u0080-\uFFFF]/))return lt(e),!0;var r=g(e.nodeName);if(dt("uponSanitizeElement",e,{tagName:r,allowedTags:Ae}),!mt(e.firstElementChild)&&(!mt(e.content)||!mt(e.content.firstElementChild))&&T(/<[/\w]/g,e.innerHTML)&&T(/<[/\w]/g,e.textContent))return lt(e),!0;if("select"===r&&T(/