Added Romanian language

+ small fixes
This commit is contained in:
RainLoop Team 2014-02-13 19:45:18 +04:00
parent c9e394c585
commit ce60192120
14 changed files with 671 additions and 208 deletions

View file

@ -136,6 +136,7 @@ Globals.oHtmlEditorLangsMap = {
'pt-pt': 'pt', 'pt-pt': 'pt',
'pt-br': 'pt-br', 'pt-br': 'pt-br',
'ru': 'ru', 'ru': 'ru',
'ro': 'ro',
'zh': 'zh', 'zh': 'zh',
'zh-cn': 'zh-cn' 'zh-cn': 'zh-cn'
}; };

View file

@ -182,7 +182,7 @@ NewHtmlEditorWrapper.prototype.focus = function ()
{ {
if (this.editor) if (this.editor)
{ {
this.editor.focusManager.focus(); this.editor.focus();
} }
}; };

View file

@ -783,7 +783,7 @@ PopupsComposeViewModel.prototype.onShow = function (sType, oMessageOrArray, aToE
}); });
sText = '<br /><br />' + sReplyTitle + ':' + sText = '<br /><br />' + sReplyTitle + ':' +
'<blockquote><br />' + sText + '</blockquote>'; '<blockquote><p>' + sText + '</p></blockquote>';
break; break;

View file

@ -17,6 +17,9 @@ LANG_PL_PL = "Polski"
LANG_RU = "Русский" LANG_RU = "Русский"
LANG_RU_RU = "Русский" LANG_RU_RU = "Русский"
LANG_RO = "Română"
LANG_RO_RO = "Română"
LANG_UA = "Українська" LANG_UA = "Українська"
LANG_UA_UA = "Українська" LANG_UA_UA = "Українська"
@ -76,6 +79,9 @@ LANG_PL_PL = "Polish"
LANG_RU = "Russian" LANG_RU = "Russian"
LANG_RU_RU = "Russian" LANG_RU_RU = "Russian"
LANG_RO = "Romanian"
LANG_RO_RO = "Romanian"
LANG_UA = "Ukrainian" LANG_UA = "Ukrainian"
LANG_UA_UA = "Ukrainian" LANG_UA_UA = "Ukrainian"

View file

@ -0,0 +1,454 @@
[LOGIN]
LABEL_EMAIL = "Email"
LABEL_LOGIN = "Conectare"
LABEL_PASSWORD = "Parolă"
LABEL_SIGN_ME = "Ține-mă minte"
BUTTON_SIGN_IN = "Conectare"
TITLE_SIGN_IN_GOOGLE = "Войти, используя Google"
TITLE_SIGN_IN_FACEBOOK = "Войти, используя Facebook"
TITLE_SIGN_IN_TWITTER = "Войти, используя Twitter"
[TOP_TOOLBAR]
BUTTON_ADD_ACCOUNT = "Adaugă un cont"
BUTTON_SETTINGS = "Opțiuni"
BUTTON_LOGOUT = "Deconectare"
[SEARCH]
MAIN_INPUT_PLACEHOLDER = "Caută în mesaje"
TITLE_ADV = "Căutare avansată"
LABEL_ADV_FROM = "De la"
LABEL_ADV_TO = "către"
LABEL_ADV_SUBJECT = "Subiect"
LABEL_ADV_TEXT = "Conținut"
LABEL_ADV_HAS_ATTACHMENTS = "Atașamente"
LABEL_ADV_FLAGGED = "Importante"
LABEL_ADV_UNSEEN = "Necitit"
LABEL_ADV_DATE = "Data"
LABEL_ADV_DATE_ALL = "Tot timpul"
LABEL_ADV_DATE_3_DAYS = "З zile"
LABEL_ADV_DATE_7_DAYS = "7 zile"
LABEL_ADV_DATE_MONTH = "în această lună"
LABEL_ADV_DATE_3_MONTHS = "3 luni"
LABEL_ADV_DATE_6_MONTHS = "6 luni"
LABEL_ADV_DATE_YEAR = "în acest an"
BUTTON_ADV_SEARCH = "căutare"
[MAGNIFIC_POPUP]
CLOSE = "Închide (Esc)"
LOADING = "Se îcarcă..."
GALLERY_PREV = "Precedentul (Стрелка ←)"
GALLERY_NEXT = "Următorul (Стрелка →)"
GALLERY_COUNTER = "%curr% из %total%"
IMAGE_ERROR = "<a href="%url%" target=\"_blank\">Изображение</a> не загрузилось."
AJAX_ERROR = "<a href="%url%" target=\"_blank\">Данные</a> не загрузились."
[FOLDER_LIST]
BUTTON_COMPOSE = "Compune"
BUTTON_CONTACTS = "Contacte"
INBOX_NAME = "Intrări"
SENT_NAME = "Trimise"
DRAFTS_NAME = "Salvate"
SPAM_NAME = "SPAM"
TRASH_NAME = "Șterse"
[QUOTA]
TITLE = "Cotă"
[MESSAGE_LIST]
BUTTON_RELOAD = "Reîncarcă"
BUTTON_MOVE_TO = "Mută la"
BUTTON_DELETE = "Șterge"
BUTTON_SPAM = "SPAM"
BUTTON_EMPTY_FOLDER = "Golește folderul"
BUTTON_MULTY_FORWARD = "Redirecționează mesajul"
BUTTON_DELETE_WITHOUT_MOVE = "Șterge definitiv"
BUTTON_MORE = "Mai mult"
MENU_SET_SEEN = "Marchează ca citit"
MENU_SET_ALL_SEEN = "Marchează toate ca citite"
MENU_UNSET_SEEN = "Marchează ca necitit"
MENU_SET_FLAG = "Seteaza ca important"
MENU_UNSET_FLAG = "Setează ca neimportant"
MENU_SELECT_ALL = "Toate"
MENU_SELECT_NONE = "Deselectează"
MENU_SELECT_INVERT = "Inversează selecția"
MENU_SELECT_UNSEEN = "Necitit"
MENU_SELECT_SEEN = "Citit"
MENU_SELECT_FLAGGED = "Important"
MENU_SELECT_UNFLAGGED = "Neimportant"
EMPTY_LIST = "Nimic aici, deocamdată"
EMPTY_SEARCH_LIST = "Nu am găsit nimic."
SEARCH_RESULT_FOR = "Rezultat căutare \"%SEARCH%\""
LIST_LOADING = "Caut..."
EMPTY_SUBJECT_TEXT = "(nici un subiect)"
PUT_MESSAGE_HERE = "EROARE CONTACTATI ADIMISTRATORUL!(trimite-ti un prt.scr)"
TODAY_AT = "azi %TIME%"
YESTERDAY_IN = "ieri %TIME%"
SEARCH_PLACEHOLDER = "caută mesaje"
NEW_MESSAGE_NOTIFICATION = "Aveți %COUNT% mesaje noi!"
QUOTA_SIZE = "A-ți folosit <strong>%SIZE% (%PROC%%)</strong> din <strong>%LIMIT%</strong>"
[MESSAGE]
BUTTON_EDIT = "Editează"
BUTTON_BACK = "Înapoi"
BUTTON_CLOSE = "Închide"
BUTTON_DELETE = "Șterge"
BUTTON_SPAM = "SPAM"
BUTTON_MOVE_TO = "Mută la"
BUTTON_MORE = "Mai mult"
BUTTON_REPLY = "Răspunde"
BUTTON_REPLY_ALL = "Răspunde la toți"
BUTTON_FORWARD = "Redirecționează"
BUTTON_FORWARD_AS_ATTACHMENT = "Redirecționează cu atașament"
BUTTON_EDIT_AS_NEW = "Editează ca nou"
BUTTON_SHOW_IMAGES = "Arată imaginile"
BUTTON_NOTIFY_READ_RECEIPT = "Anunță expeditorul că am citit mesajul"
BUTTON_IN_NEW_WINDOW = "Deschide într-o fereastră separată"
MENU_HEADERS = "Vezi titlurile"
MENU_VIEW_ORIGINAL = "Vezi originalul"
MENU_DOWNLOAD_ORIGINAL = "Descărcați ca fișier eml"
MENU_FILTER_SIMILAR = "Filtrează similarele"
MENU_PRINT = "Printează"
EMPTY_SUBJECT_TEXT = "(nici un subiect)"
LABEL_SUBJECT = "Subiect"
LABEL_DATE = "Data"
LABEL_FROM = "De la"
LABEL_FROM_SHORT = "de la"
LABEL_TO = "către"
LABEL_TO_SHORT = "către"
LABEL_CC = "copie către"
LABEL_BCC = "copie 2 către"
PRINT_LABEL_FROM = "de la"
PRINT_LABEL_TO = "către"
PRINT_LABEL_CC = "copie către"
PRINT_LABEL_BCC = "a doua copie către"
PRINT_LABEL_DATE = "Data"
PRINT_LABEL_SUBJECT = "Subiect"
PRINT_LABEL_ATTACHMENTS = "Atașament"
MESSAGE_LOADING = "Se încarcă..."
MESSAGE_VIEW_DESC = "Selectați un mesaj pentru al vizualiza."
[READ_RECEIPT]
SUBJECT = "Mesajul dumneavoastră a fost citit - %SUBJECT%"
BODY = "Aceasta este o confirmare de citire pentru mesajul trimis la adresa %READ-RECEIPT%.
Примечание: Această notificare de citire însemnă că mesajul ajuns la destinatar. Această funție nu garanteză că destinatarul a citit conținutul mesajului"
[SUGGESTIONS]
SEARCHING_DESC = "Căutare..."
[CONTACTS]
LEGEND_CONTACTS = "Contact"
SEARCH_INPUT_PLACEHOLDER = "Caută contacte"
BUTTON_ADD_CONTACT = "Adugă un contact"
BUTTON_CREATE_CONTACT = "Salvează"
BUTTON_UPDATE_CONTACT = "Actualizează"
BUTTON_IMPORT = "Importă (csv, vcf, vcard)"
ERROR_IMPORT_FILE = "Nu s-a putut importa (formatul fișierului este greșit)"
LIST_LOADING = "Se încarcă..."
EMPTY_LIST = "Agenda este goală"
EMPTY_SEARCH = "Nu am găsit nimic."
CLEAR_SEARCH = "Golește căutarea"
CONTACT_VIEW_DESC = "Selectați un contact pentru al vizualiza"
LABEL_DISPLAY_NAME = "Nume complet"
LABEL_EMAIL = "Adresa de eMail"
LABEL_PHONE = "Тelefon"
LINK_ADD_EMAIL = "Adugă Mail nou"
LINK_ADD_PHONE = "Adaugă un număr nou"
PLACEHOLDER_ENTER_DISPLAY_NAME = "Introduceți numele complet"
PLACEHOLDER_ENTER_LAST_NAME = "Prenume"
PLACEHOLDER_ENTER_FIRST_NAME = "Nume"
LABEL_READ_ONLY = "Doar pentru citire"
LABEL_SHARE = "Distribuie"
BUTTON_SHARE_NONE = "Nimic"
BUTTON_SHARE_ALL = "Toate"
[COMPOSE]
TITLE_FROM = "De la"
TITLE_TO = "Către"
TITLE_CC = "Copie"
TITLE_BCC = "Copie 2"
TITLE_REPLY_TO = "Răspune la"
TITLE_SUBJECT = "Subiect"
LINK_SHOW_INPUTS = "Extinde"
BUTTON_SEND = "Trimite"
BUTTON_SAVE = "Salvează"
BUTTON_DELETE = "Șterge"
BUTTON_CANCEL = "Anulează"
SAVED_TIME = "Salvat la %TIME%"
SAVED_ERROR_ON_SEND = "Mesajul a fost trimis, dar nu a fost slavat"
ATTACH_FILES = "Atașează fișiere"
ATTACH_DROP_FILES_DESC = "Puneți fișierele aici"
ATTACH_ITEM_CANCEL = "Anulează"
DROPBOX = "Dropbox"
GOOGLE_DRIVE = "Google Drive"
REPLY_MESSAGE_TITLE = "%DATETIME%, %EMAIL% a scris"
FORWARD_MESSAGE_TOP_TITLE = "-------- Mesajul original -------"
FORWARD_MESSAGE_TOP_FROM = "De la"
FORWARD_MESSAGE_TOP_TO = "Către"
FORWARD_MESSAGE_TOP_CC = "Copie"
FORWARD_MESSAGE_TOP_SENT = "Primit la"
FORWARD_MESSAGE_TOP_SUBJECT = "Subiect"
EMPTY_TO_ERROR_DESC = "Vă rugăm să specificați cel puțin un destinatar"
BUTTON_REQUEST_READ_RECEIPT = "Cere confirmare de citire"
[POPUPS_ASK]
BUTTON_YES = "Da"
BUTTON_NO = "Nu"
DESC_WANT_CLOSE_THIS_WINDOW = "Sigur doriți să închideți această fereastră?"
DESC_WANT_DELETE_MESSAGES = "Sigur doriți să ștergeți mesajul(e)?"
[POPUPS_LANGUAGES]
TITLE_LANGUAGES = "Limbă"
[POPUPS_ADD_ACCOUNT]
TITLE_ADD_ACCOUNT = "Adăugați un cont"
BUTTON_ADD_ACCOUNT = "Adaugă"
[POPUPS_IDENTITIES]
TITLE_ADD_IDENTITY = "Adăugați un profil"
TITLE_UPDATE_IDENTITY = "Actualizați profilul"
BUTTON_ADD_IDENTITY = "Adaăugați"
BUTTON_UPDATE_IDENTITY = "Actualizați"
LABEL_EMAIL = "eMail"
LABEL_NAME = "Nume"
LABEL_REPLY_TO = "Răspune la"
LABEL_BCC = "Copie"
[POPUPS_CREATE_FOLDER]
TITLE_CREATE_FOLDER = "Creați un dosar"
SELECT_NO_PARENT = ""
LABEL_NAME = "Nume"
LABEL_PARENT = "Dosar părinte"
BUTTON_CREATE = "Сrează"
BUTTON_CANCEL = "Anulează"
BUTTON_CLOSE = "Închide"
TITLE_CREATING_PROCESS = "Creez dosarul"
[POPUPS_CLEAR_FOLDER]
TITLE_CLEAR_FOLDER = "Goliți dosarul ?"
BUTTON_CLEAR = "Curăță"
BUTTON_CANCEL = "Anulează"
BUTTON_CLOSE = "Închide"
DANGER_DESC_WARNING = "Atenție!"
DANGER_DESC_HTML_1 = "Această acțiune va conduce la eliminarea completă a tuturor mesajelor din dosarul <strong>%FOLDER%</strong>."
DANGER_DESC_HTML_2 = "După începerea procesului de curățare <strong style=\"color:red\">nu mai puteți</strong> anula procesul."
TITLE_CLEARING_PROCESS = "Curăț dosarul..."
[POPUPS_SYSTEM_FOLDERS]
TITLE_SYSTEM_FOLDERS = "Selectați dosarul de sistem"
SELECT_CHOOSE_ONE = "Nu a fost încă selectat"
SELECT_UNUSE_NAME = "Nu uitilizați"
LABEL_SENT = "Trimise"
LABEL_DRAFTS = "Salvate"
LABEL_SPAM = "SPAM"
LABEL_TRASH = "Șterse"
BUTTON_CANCEL = "Anulează"
BUTTON_CLOSE = "Închide"
NOTIFICATION_SENT = "Вы еще не выбрали системную папку \"Отправленные\", в которую складываются все сообщения после отправки.
Если вы не хотите сохранять отправленные письма, пожалуйста, выберите пункт \"Не использовать\"."
NOTIFICATION_DRAFTS = "Вы еще не выбрали системную папку \"Черновики\", в которую складываются все сохраненые сообщения."
NOTIFICATION_SPAM = "Вы еще не выбрали системную папку \"Спам\", в которую складываются все спамовые сообщения.
Если же вы хотите удалять письма сразу, пожалуйста, выберите пункт \"Не использовать\"."
NOTIFICATION_TRASH = "Вы еще не выбрали системную папку \"Удаленные\", в которую складываются все сообщения после удаления.
Если же вы хотите удалять письма сразу, пожалуйста, выберите пункт \"Не использовать\"."
[TITLES]
LOADING = "Загрузка"
LOGIN = "Вход"
MAILBOX = "Почта"
SETTINGS = "Настройки"
COMPOSE = "Написать письмо"
[UPLOAD]
ERROR_FILE_IS_TOO_BIG = "Файл слишком большой"
ERROR_FILE_PARTIALLY_UPLOADED = "Файл не загрузился полностью"
ERROR_NO_FILE_UPLOADED = "Файл не был загружен"
ERROR_MISSING_TEMP_FOLDER = "Ошибка при сохранении файла"
ERROR_ON_SAVING_FILE = "Ошибка при сохранении файла"
ERROR_FILE_TYPE = "Неверный тип файла"
ERROR_UNKNOWN = "Ошибка загрузки файла"
[EDITOR]
TEXT_SWITCHER_PLAINT_TEXT = "Обычный текст"
TEXT_SWITCHER_RICH_FORMATTING = "Форматированный текст"
TEXT_SWITCHER_CONFIRM = "Форматирование текста и изображения будут потеряны. Вы уверены, что хотите продолжить?"
[SETTINGS_LABELS]
LABEL_PERSONAL_NAME = "Персональные"
LABEL_GENERAL_NAME = "Основные"
LABEL_CONTACTS_NAME = "Контакты"
LABEL_FOLDERS_NAME = "Папки"
LABEL_ACCOUNTS_NAME = "Аккаунты"
LABEL_IDENTITY_NAME = "Профиль"
LABEL_IDENTITIES_NAME = "Профили"
LABEL_SOCIAL_NAME = "Социальные"
LABEL_THEMES_NAME = "Темы"
LABEL_CHANGE_PASSWORD_NAME = "Пароль"
BUTTON_BACK = "Назад"
[SETTINGS_IDENTITY]
LEGEND_IDENTITY = "Настройки профиля"
LABEL_DISPLAY_NAME = "Имя"
LABEL_REPLY_TO = "Отвечать на"
LABEL_SIGNATURE = "Подпись"
LABEL_ADD_SIGNATURE_TO_ALL = "Add your signature to all the outgoing messages"
[SETTINGS_GENERAL]
LEGEND_GENERAL = "Основные Настройки"
LABEL_LANGUAGE = "Язык"
LABEL_EDITOR = "Редактор текста по умолчанию"
LABEL_EDITOR_HTML_AS_DEFAULT = "Форматированный"
LABEL_EDITOR_PLAIN_AS_DEFAULT = "Простой"
LABEL_ANIMATION = "Анимация интерфейса"
LABEL_ANIMATION_FULL = "Полная"
LABEL_ANIMATION_NORMAL = "Нормальная"
LABEL_ANIMATION_NONE = "Отсутствует"
LABEL_VIEW_OPTIONS = "Отображение"
LABEL_USE_PREVIEW_PANE = "Использовать трехколоночный режим отображения"
LABEL_USE_CHECKBOXES_IN_LIST = "Показывать чекбоксы в списках"
LABEL_USE_THREADS = "Сворачивать письма в переписках"
LABEL_REPLY_SAME_FOLDER = "Помещать ответы в ту же папку, где находится оригинал"
LABEL_SHOW_IMAGES = "Показывать внешние изображения в теле письма без предупреждения"
LABEL_SHOW_ANIMATION = "Использовать анимацию"
LABEL_MESSAGE_PER_PAGE = "сообщений на одной странице"
LABEL_CHROME_NOTIFICATION = "Уведомления"
LABEL_CHROME_NOTIFICATION_DESC = "Показывать уведомления о новых сообщениях в всплывающих подсказках"
LABEL_CHROME_NOTIFICATION_DESC_DENIED = "(Блокировано браузером)"
[SETTINGS_CONTACTS]
LEGEND_CONTACTS = "Контакты"
LEGEND_MOBILE_SYNC = "Мобильная Синхронизация"
LABEL_SYNC_SERVER = "Сервер"
LABEL_SYNC_USERNAME = "Пользователь"
LABEL_SYNC_PASSWORD = "Пароль"
LINK_HIDE = "спрятать"
LINK_SHOW = "показать"
LABEL_DESC_PAB = "Персональная адресная книга"
DESC_FULL_PAB_URL = "Если вашему приложению (например как Mozilla Thunderbird (SOGo Connector Thunderbird extension) или Evolution) необходим полный путь к CardDAV адресной книге, используйте URL ниже."
LABEL_CONTACTS_AUTOSAVE = "Автоматически добавлять получателей писем в адресную книгу"
[SETTINGS_THEMES]
LEGEND_THEMES = "Темы Оформления"
LEGEND_THEMES_CUSTOM = "Настройка Пользовательской Темы"
LABEL_CUSTOM_TYPE = "Тип Темы"
LABEL_CUSTOM_TYPE_LIGHT = "Светлая"
LABEL_CUSTOM_TYPE_DARK = "Темная"
LABEL_CUSTOM_BACKGROUND_IMAGE = "Картинка на фоне"
BUTTON_UPLOAD_BACKGROUND_IMAGE = "Загрузить фоновую картинку (JPG, PNG)"
ERROR_FILE_IS_TOO_BIG = "Файл слишком большой (1MB+)"
ERROR_FILE_TYPE_ERROR = "Неверный тип файла (только JPG и PNG)"
ERROR_UNKNOWN = "Ошибка загрузки файла"
[SETTINGS_SOCIAL]
LEGEND_GOOGLE = "Google"
BUTTON_GOOGLE_CONNECT = "Подключить Google аккаунт"
BUTTON_GOOGLE_DISCONNECT = "Отключить Google аккаунт"
MAIN_GOOGLE_DESC = "После подключения к Google вы сможете залогиниться в данный аккаунт, используя кнопку Google на экране логина."
LEGEND_FACEBOOK = "Facebook"
BUTTON_FACEBOOK_CONNECT = "Подключить Facebook аккаунт"
BUTTON_FACEBOOK_DISCONNECT = "Отключить Facebook аккаунт"
MAIN_FACEBOOK_DESC = "После подключения к Facebook вы сможете залогиниться в данный аккаунт, используя кнопку Facebook на экране логина."
LEGEND_TWITTER = "Twitter"
BUTTON_TWITTER_CONNECT = "Подключить Twitter аккаунт"
BUTTON_TWITTER_DISCONNECT = "Отключить Twitter аккаунт"
MAIN_TWITTER_DESC = "После подключения к Twitter вы сможете залогиниться в данный аккаунт, используя кнопку Twitter на экране логина."
[SETTINGS_FOLDERS]
LEGEND_FOLDERS = "Список Папок"
BUTTON_CREATE = "Создать Папку"
BUTTON_SYSTEM = "Назначить Системные Папки"
BUTTON_DELETE = "Удалить"
BUTTON_SUBSCRIBE = "Подписаться"
BUTTON_UNSUBSCRIBE = "Отписаться"
LOADING_PROCESS = "Обновление списка папок"
CREATING_PROCESS = "Cоздание папки"
DELETING_PROCESS = "Удаление папки"
RENAMING_PROCESS = "Переименование папки"
DELETING_ASK = "Точно?"
[SETTINGS_ACCOUNTS]
LEGEND_ACCOUNTS = "Список Аккаунтов"
BUTTON_ADD_ACCOUNT = "Добавить ещё аккаунт"
BUTTON_DELETE = "Удалить"
LOADING_PROCESS = "Обновление списка аккаунтов"
DELETING_ASK = "Точно?"
[SETTINGS_IDENTITIES]
LEGEND_IDENTITY = "Настройки основного профиля"
LEGEND_IDENTITIES = "Дополнительные профили"
LABEL_DISPLAY_NAME = "Имя"
LABEL_REPLY_TO = "Отвечать на"
LABEL_SIGNATURE = "Подпись"
LABEL_ADD_SIGNATURE_TO_ALL = "Добавлять свою подпись ко всем исходящим сообщениям"
BUTTON_ADD_IDENTITY = "Добавить профиль"
BUTTON_DELETE = "Удалить"
LOADING_PROCESS = "Обновление списка профилей"
DELETING_ASK = "Точно?"
[SETTINGS_CHANGE_PASSWORD]
LEGEND_CHANGE_PASSWORD = "Изменить Пароль"
LABEL_CURRENT_PASSWORD = "Текущий пароль"
LABEL_NEW_PASSWORD = "Новый пароль"
LABEL_REPEAT_PASSWORD = "Повторить"
BUTTON_UPDATE_PASSWORD = "Установить Новый Пароль"
[NOTIFICATIONS]
INVALID_TOKEN = "Неверный токен запроса"
AUTH_ERROR = "Не удалось авторизоваться"
ACCESS_ERROR = "Ошибка доступа"
CONNECTION_ERROR = "Ошибка соединения с сервером."
CAPTCHA_ERROR = "Неправильное проверочное слово."
SOCIAL_FACEBOOK_LOGIN_ACCESS_DISABLE = "К данному социальному пользователю еще не прикреплен почтовый аккаунт. Войдите в систему под своим почтовым аккаунтом и включите эту возможность в настройках."
SOCIAL_TWITTER_LOGIN_ACCESS_DISABLE = "К данному социальному пользователю еще не прикреплен почтовый аккаунт. Войдите в систему под своим почтовым аккаунтом и включите эту возможность в настройках."
SOCIAL_GOOGLE_LOGIN_ACCESS_DISABLE = "К данному социальному пользователю еще не прикреплен почтовый аккаунт. Войдите в систему под своим почтовым аккаунтом и включите эту возможность в настройках."
DOMAIN_NOT_ALLOWED = "Данный домен не разрешен"
ACCOUNT_NOT_ALLOWED = "Данный аккаунт не разрешен"
CANT_GET_MESSAGE_LIST = "Не могу получить список писем"
CANT_GET_MESSAGE = "Не могу получить письмо"
CANT_DELETE_MESSAGE = "Не могу удалить письмо"
CANT_MOVE_MESSAGE = "Не могу переместить письмо"
CANT_SAVE_MESSAGE = "Не могу сохранить письмо"
CANT_SEND_MESSAGE = "Не могу отправить письмо"
INVALID_RECIPIENTS = "Проверьте правильность ввода всех адресов."
CANT_CREATE_FOLDER = "Не могу создать папку"
CANT_RENAME_FOLDER = "Не могу переименовать папку"
CANT_DELETE_FOLDER = "Не могу удалить папку"
CANT_DELETE_NON_EMPTY_FOLDER = "Не могу удалить непустую папку"
CANT_SUBSCRIBE_FOLDER = "Не могу подписать папку"
CANT_UNSUBSCRIBE_FOLDER = "Не могу отписать папку"
CANT_SAVE_SETTINGS = "Не могу сохранить настройки"
CANT_SAVE_PLUGIN_SETTINGS = "Не могу сохранить настройки"
DOMAIN_ALREADY_EXISTS = "Домен уже существует"
CANT_INSTALL_PACKAGE = "Ошибка установки пакета"
CANT_DELETE_PACKAGE = "Ошибка удаления пакета"
INVALID_PLUGIN_PACKAGE = "Ошибка пакета плагина"
UNSUPPORTED_PLUGIN_PACKAGE = "Для работы плагина необходима полная поддержка сервера"
LICENSING_SERVER_IS_UNAVAILABLE = "Сервер подписок временно не доступен."
LICENSING_EXPIRED = "Подписка на данный домен устарела."
LICENSING_BANNED = "Подписка на данный домен заблокирована."
DEMO_SEND_MESSAGE_ERROR = "Демо аккаунту отправка писем на внешние почтовые адреса запрещена!"
ACCOUNT_ALREADY_EXISTS = "Аккаунт уже добавлен"
MAIL_SERVER_ERROR = "Ошибка доступа к почтовому серверу"
UNKNOWN_ERROR = "Неизвестная ошибка"
[STATIC]
BACK_LINK = "Обновить"
DOMAIN_LIST_DESC = "Список доменов, к которым разрешен доступ через веб почту."
PHP_EXSTENSIONS_ERROR_DESC = "Необходимые расширения PHP не установлены на вашем сервере!"
PHP_VERSION_ERROR_DESC = "Ваша версия PHP (%VERSION%) ниже требуемой 5.3.0!"
NO_SCRIPT_TITLE = "Для работы приложения необходим JavaScript."
NO_SCRIPT_DESC = "По-видимому, JavaScript либо не поддерживается вашим браузером, либо отключен.
Включите JavaScript, изменив настройки браузера, затем повторите попытку."
NO_COOKIE_TITLE = "Для работы приложения необходимы Cookie."
NO_COOKIE_DESC = "По-видимому, Cookie либо не поддерживаются вашим браузером, либо отключены.
Включите Cookie, изменив настройки браузера, затем повторите попытку."
BAD_BROWSER_TITLE = "Ваш браузер устарел."
BAD_BROWSER_DESC = "Чтобы использовать все возможности приложения,
загрузите и установите один из этих браузеров:"

View file

@ -1,3 +1,4 @@
(function() { (function() {
var var
@ -18,7 +19,7 @@
{ {
var var
sText = trim(arguments[1]) sText = trim(arguments[1])
.replace(/__bq__start__(.|[\s\S\n\r]*)__bq__end__/gm, convertBlockquote) .replace(/__bq__start__([\s\S\n\r]*)__bq__end__/gm, convertBlockquote)
; ;
sText = '\n' + sQuoteChar + trim(sText).replace(/\n/gm, '\n' + sQuoteChar) + '\n>\n'; sText = '\n' + sQuoteChar + trim(sText).replace(/\n/gm, '\n' + sQuoteChar) + '\n>\n';
@ -37,9 +38,10 @@
var sText = trim(arguments[1]); var sText = trim(arguments[1]);
if (0 < sText.length) if (0 < sText.length)
{ {
sText = sText.replace(/<div[^>]*>(.|[\s\S\r\n]*)<\/div>/gmi, convertDivs); sText = sText.replace(/<div[^>]*>([\s\S\r\n]*)<\/div>/gmi, convertDivs);
sText = '\n' + trim(sText) + '\n'; sText = '\n' + trim(sText) + '\n';
} }
return sText; return sText;
} }
@ -47,12 +49,8 @@
}, },
fixAttibuteValue = function () { fixAttibuteValue = function () {
if (arguments && 1 < arguments.length) return (arguments && 1 < arguments.length) ?
{ '' + arguments[1] + arguments[2].replace(/</g, '&lt;').replace(/>/g, '&gt;') : '';
return '' + arguments[1] + arguments[2].replace(/</g, '&lt;').replace(/>/g, '&gt;');
}
return '';
}, },
convertLinks = function () { convertLinks = function () {
@ -71,10 +69,10 @@
.replace(/<\/tr>/gi, '\n') .replace(/<\/tr>/gi, '\n')
.replace(/<hr[^>]*>/gmi, '\n_______________________________\n\n') .replace(/<hr[^>]*>/gmi, '\n_______________________________\n\n')
.replace(/<img [^>]*>/gmi, '') .replace(/<img [^>]*>/gmi, '')
.replace(/<div[^>]*>(.|[\s\S\r\n]*)<\/div>/gmi, convertDivs) .replace(/<div[^>]*>([\s\S\r\n]*)<\/div>/gmi, convertDivs)
.replace(/<blockquote[^>]*>/gmi, '\n__bq__start__\n') .replace(/<blockquote[^>]*>/gmi, '\n__bq__start__\n')
.replace(/<\/blockquote>/gmi, '\n__bq__end__\n') .replace(/<\/blockquote>/gmi, '\n__bq__end__\n')
.replace(/<a [^>]*>(.|[\s\S\r\n]*)<\/a>/gmi, convertLinks) .replace(/<a [^>]*>([\s\S\r\n]*?)<\/a>/gmi, convertLinks)
.replace(/&nbsp;/gi, ' ') .replace(/&nbsp;/gi, ' ')
.replace(/<[^>]*>/gm, '') .replace(/<[^>]*>/gm, '')
.replace(/&gt;/gi, '>') .replace(/&gt;/gi, '>')
@ -86,7 +84,7 @@
return sText return sText
.replace(/\n[ \t]+/gm, '\n') .replace(/\n[ \t]+/gm, '\n')
.replace(/[\n]{3,}/gm, '\n\n') .replace(/[\n]{3,}/gm, '\n\n')
.replace(/__bq__start__(.|[\s\S\r\n]*)__bq__end__/gm, convertBlockquote) .replace(/__bq__start__([\s\S\r\n]*)__bq__end__/gm, convertBlockquote)
.replace(/__bq__start__/gm, '') .replace(/__bq__start__/gm, '')
.replace(/__bq__end__/gm, '') .replace(/__bq__end__/gm, '')
; ;
@ -107,7 +105,7 @@
CKEDITOR.plugins.add('plain', { CKEDITOR.plugins.add('plain', {
lang: '', lang: '',
icons: 'plain', icons: 'plain',
hidpi: false, hidpi: true,
init: function(editor) init: function(editor)
{ {
if (editor.elementMode === CKEDITOR.ELEMENT_MODE_INLINE) if (editor.elementMode === CKEDITOR.ELEMENT_MODE_INLINE)
@ -135,7 +133,7 @@
textarea.setAttribute('dir', 'ltr'); textarea.setAttribute('dir', 'ltr');
textarea.addClass('cke_plain'); textarea.addClass('cke_plain');
contentsSpace.append( textarea ); contentsSpace.append(textarea);
var editable = editor.editable(new plainEditable(editor, textarea)); var editable = editor.editable(new plainEditable(editor, textarea));

View file

@ -2163,6 +2163,7 @@ img.mfp-img {
.flag.flag-nl, .flag.flag-nl-nl {background-position: -80px -110px} .flag.flag-nl, .flag.flag-nl-nl {background-position: -80px -110px}
.flag.flag-pl, .flag.flag-pl-pl {background-position: -32px -121px} .flag.flag-pl, .flag.flag-pl-pl {background-position: -32px -121px}
.flag.flag-ru, .flag.flag-ru-ru {background-position: -224px -121px} .flag.flag-ru, .flag.flag-ru-ru {background-position: -224px -121px}
.flag.flag-ro, .flag.flag-ro-ro {background-position: -192px -121px}
.flag.flag-ua, .flag.flag-ua-ua {background-position: -96px -154px} .flag.flag-ua, .flag.flag-ua-ua {background-position: -96px -154px}
.flag.flag-de, .flag.flag-de-de {background-position: -80px -33px} .flag.flag-de, .flag.flag-de-de {background-position: -80px -33px}
.flag.flag-it, .flag.flag-it-it {background-position: -208px -66px} .flag.flag-it, .flag.flag-it-it {background-position: -208px -66px}

File diff suppressed because one or more lines are too long

View file

@ -214,6 +214,7 @@ Globals.oHtmlEditorLangsMap = {
'pt-pt': 'pt', 'pt-pt': 'pt',
'pt-br': 'pt-br', 'pt-br': 'pt-br',
'ru': 'ru', 'ru': 'ru',
'ro': 'ro',
'zh': 'zh', 'zh': 'zh',
'zh-cn': 'zh-cn' 'zh-cn': 'zh-cn'
}; };

File diff suppressed because one or more lines are too long

View file

@ -214,6 +214,7 @@ Globals.oHtmlEditorLangsMap = {
'pt-pt': 'pt', 'pt-pt': 'pt',
'pt-br': 'pt-br', 'pt-br': 'pt-br',
'ru': 'ru', 'ru': 'ru',
'ro': 'ro',
'zh': 'zh', 'zh': 'zh',
'zh-cn': 'zh-cn' 'zh-cn': 'zh-cn'
}; };
@ -3736,7 +3737,7 @@ NewHtmlEditorWrapper.prototype.focus = function ()
{ {
if (this.editor) if (this.editor)
{ {
this.editor.focusManager.focus(); this.editor.focus();
} }
}; };
@ -8340,7 +8341,7 @@ PopupsComposeViewModel.prototype.onShow = function (sType, oMessageOrArray, aToE
}); });
sText = '<br /><br />' + sReplyTitle + ':' + sText = '<br /><br />' + sReplyTitle + ':' +
'<blockquote><br />' + sText + '</blockquote>'; '<blockquote><p>' + sText + '</p></blockquote>';
break; break;

File diff suppressed because one or more lines are too long

View file

@ -19,6 +19,7 @@
.flag.flag-nl, .flag.flag-nl-nl {background-position: -80px -110px} .flag.flag-nl, .flag.flag-nl-nl {background-position: -80px -110px}
.flag.flag-pl, .flag.flag-pl-pl {background-position: -32px -121px} .flag.flag-pl, .flag.flag-pl-pl {background-position: -32px -121px}
.flag.flag-ru, .flag.flag-ru-ru {background-position: -224px -121px} .flag.flag-ru, .flag.flag-ru-ru {background-position: -224px -121px}
.flag.flag-ro, .flag.flag-ro-ro {background-position: -192px -121px}
.flag.flag-ua, .flag.flag-ua-ua {background-position: -96px -154px} .flag.flag-ua, .flag.flag-ua-ua {background-position: -96px -154px}
.flag.flag-de, .flag.flag-de-de {background-position: -80px -33px} .flag.flag-de, .flag.flag-de-de {background-position: -80px -33px}
.flag.flag-it, .flag.flag-it-it {background-position: -208px -66px} .flag.flag-it, .flag.flag-it-it {background-position: -208px -66px}