diff --git a/web/zm_lang_ru_ru.php b/web/zm_lang_ru_ru.php
index 4e242000c..d021b57be 100644
--- a/web/zm_lang_ru_ru.php
+++ b/web/zm_lang_ru_ru.php
@@ -76,10 +76,10 @@ $zmSlangActual = '
$zmSlangAddNewMonitor = 'Добавить монитор';
$zmSlangAddNewUser = 'Добавить пользователя';
$zmSlangAddNewZone = 'Добавить зону';
-$zmSlangAlarm = 'Тревога';
$zmSlangAlarmBrFrames = 'Кадры
тревоги';
$zmSlangAlarmFrame = 'Кадр тревоги';
$zmSlangAlarmLimits = 'Гран. зоны трев.';
+$zmSlangAlarm = 'Тревога';
$zmSlangAlarmPx = 'Пкс трев.';
$zmSlangAlert = 'Настороже';
$zmSlangAll = 'Все';
@@ -112,8 +112,8 @@ $zmSlangBlobs = '
$zmSlangBlobSizes = 'Размер объектов';
$zmSlangBrightness = 'Яркость';
$zmSlangBuffers = 'Буферы';
-$zmSlangCancel = 'Отменить';
$zmSlangCancelForcedAlarm = 'Отменить форсированную тревогу';
+$zmSlangCancel = 'Отменить';
$zmSlangCaptureHeight = 'Размер по Y';
$zmSlangCapturePalette = 'Режим захвата';
$zmSlangCaptureWidth = 'Размер по X';
@@ -148,8 +148,8 @@ $zmSlangErrorBrackets = '
$zmSlangError = 'Ошибка';
$zmSlangErrorValidValue = 'Ошибка: проверьте что все термы имеют действительное значение';
$zmSlangEtc = 'и т.д.';
-$zmSlangEvent = 'Событие';
$zmSlangEventFilter = 'Фильтр событий';
+$zmSlangEvent = 'Событие';
$zmSlangEvents = 'События';
$zmSlangExclude = 'Исключить';
$zmSlangFeed = 'Feed';
@@ -168,6 +168,7 @@ $zmSlangFunc = '
$zmSlangFunction = 'Функция';
$zmSlangGenerateVideo = 'Генерировать видео';
$zmSlangGeneratingVideo = 'Генерируется видео';
+$zmSlangGoToZoneMinder = 'Перейти на ZoneMinder.com';
$zmSlangGrey = 'ч/б';
$zmSlangHighBW = 'Широкий канал';
$zmSlangHigh = 'широкий';
@@ -191,12 +192,17 @@ $zmSlangLowBW = '
$zmSlangLow = 'узкий';
$zmSlangMark = 'Метка';
$zmSlangMaxBrScore = 'Макс.
оценка';
-$zmSlangMaximumFPS = 'Ограничение скорости записи (к/с)';
$zmSlangMax = 'Макс.';
+$zmSlangMaximumFPS = 'Ограничение скорости записи (к/с)';
$zmSlangMediumBW = 'Обычный канал';
$zmSlangMedium = 'средний';
$zmSlangMinAlarmGeMinBlob = 'Мин. количество пикселей тревоги должно быть больше или равно мин. количеству пикселей объекта';
$zmSlangMinAlarmGeMinFilter = 'Мин. количество пикселей тревоги должно быть больше или равно мин. количеству пикселей после фильтрации';
+$zmSlangMinAlarmPixelsLtMax = 'Минимальное кол-во пикселей тревоги должно быть меньше максимального кол-ва пикселей тревоги';
+$zmSlangMinBlobAreaLtMax = 'Минимальная площадь объекта должна быть меньше чем максимальная площадь объекта';
+$zmSlangMinBlobsLtMax = 'Минимальное число объектов должно быть меньше чем максимальное число объектов';
+$zmSlangMinFilterPixelsLtMax = 'Минимальное число пикселей после фильтрации должно быть меньше чем максимальное число пикселей фильтрации';
+$zmSlangMinPixelThresLtMax = 'Нижний порог кол-ва пикселей должен быть ниже верхнего порога кол-ва пикселей';
$zmSlangMisc = 'Разное';
$zmSlangMonitorIds = 'Id Мониторов';
$zmSlangMonitor = 'Монитор';
@@ -216,15 +222,15 @@ $zmSlangNewState = '
$zmSlangNewUser = 'Новый пользователь';
$zmSlangNext = 'След.';
$zmSlangNoFramesRecorded = 'Это событие не содежит кадров';
+$zmSlangNo = 'Нет';
$zmSlangNoneAvailable = 'не доступны';
$zmSlangNone = 'отсутствует';
-$zmSlangNo = 'Нет';
$zmSlangNormal = 'Нормальная';
$zmSlangNoSavedFilters = 'нет сохраненных фильтров';
$zmSlangNoStatisticsRecorded = 'Статистика по этому событию/кадру не записана';
$zmSlangOpEq = 'равно';
-$zmSlangOpGtEq = 'больше либо равно';
$zmSlangOpGt = 'больше';
+$zmSlangOpGtEq = 'больше либо равно';
$zmSlangOpLtEq = 'меньше или равно';
$zmSlangOpLt = 'меньше';
$zmSlangOpNe = 'не равно';
@@ -258,8 +264,8 @@ $zmSlangRemote = '
$zmSlangRename = 'Переименовать';
$zmSlangReplay = 'Проиграть';
$zmSlangResetEventCounts = 'Обнулить счетчик событий';
-$zmSlangRestarting = 'Перезапускается';
$zmSlangRestart = 'Перезапустить';
+$zmSlangRestarting = 'Перезапускается';
$zmSlangRestrictedCameraIds = 'Id запрещенных камер';
$zmSlangRotateLeft = 'Повернуть влево';
$zmSlangRotateRight = 'Повернуть вправо';
@@ -285,17 +291,17 @@ $zmSlangState = '
$zmSlangStats = 'Статистика';
$zmSlangStatus = 'Статус';
$zmSlangStills = 'Стоп-кадры';
-$zmSlangStopped = 'Остановлен';
$zmSlangStop = 'Остановить';
+$zmSlangStopped = 'Остановлен';
$zmSlangStream = 'Поток';
$zmSlangSystem = 'Система';
$zmSlangTimeDelta = 'Относительное время';
+$zmSlangTime = 'Время';
+$zmSlangTimestamp = 'Метка времени';
+$zmSlangTimeStamp = 'Метка времени';
$zmSlangTimestampLabelFormat = 'Формат метки';
$zmSlangTimestampLabelX = 'X-координата метки';
$zmSlangTimestampLabelY = 'Y-координата метки';
-$zmSlangTimestamp = 'Метка времени';
-$zmSlangTimeStamp = 'Метка времени';
-$zmSlangTime = 'Время';
$zmSlangTools = 'Инструменты';
$zmSlangTotalBrScore = 'Сумм.
оценка';
$zmSlangTriggers = 'Триггеры';
@@ -303,20 +309,28 @@ $zmSlangType = '
$zmSlangUnarchive = 'Уд. из архива';
$zmSlangUnits = 'Ед. измерения';
$zmSlangUnknown = 'Unknown';
+$zmSlangUpdateAvailable = 'Доступно обновление ZoneMinder';
+$zmSlangUpdateNotNecessary = 'Обновление не требуется';
+$zmSlangUseFilter = 'Использовать фильтр';
$zmSlangUseFilterExprsPost = ' выражений для фильтра'; // This is used at the end of the phrase 'use N filter expressions'
$zmSlangUseFilterExprsPre = 'Испол. '; // This is used at the beginning of the phrase 'use N filter expressions'
-$zmSlangUseFilter = 'Использовать фильтр';
+$zmSlangUser = 'Пользователь';
$zmSlangUsername = 'Имя пользователя';
$zmSlangUsers = 'Пользователи';
-$zmSlangUser = 'Пользователь';
$zmSlangValue = 'Значение';
-$zmSlangVideoGenFailed = 'Ошибка генерации видео!';
-$zmSlangVideoGenParms = 'Video Generation Parameters';//$zmSlangVideoGenParms = 'Параметры генерации видео';
-$zmSlangVideoSize = 'Размер изображения';
+$zmSlangVersion = 'Версия';
+$zmSlangVersionIgnore = 'Игнорировать эту версию';
+$zmSlangVersionRemindDay = 'Напомнить через день';
+$zmSlangVersionRemindHour = 'Напомнить через час';
+$zmSlangVersionRemindNever = 'Не говорить о новых версиях';
+$zmSlangVersionRemindWeek = 'Напомнить через неделю';
$zmSlangVideo = 'Видео';
+$zmSlangVideoGenFailed = 'Ошибка генерации видео!';
+$zmSlangVideoGenParms = 'Параметры генерации видео';
+$zmSlangVideoSize = 'Размер изображения';
$zmSlangViewAll = 'Просм. все';
-$zmSlangViewPaged = 'Просм. постранично';
$zmSlangView = 'Просмотр';
+$zmSlangViewPaged = 'Просм. постранично';
$zmSlangWarmupFrames = 'Кадры разогрева';
$zmSlangWatch = 'Watch';
$zmSlangWeb = 'Интерфейс';
@@ -335,12 +349,14 @@ $zmSlangZoneMaxAlarmedArea = '
$zmSlangZoneMaxBlobArea = 'Макс. площадь объекта';
$zmSlangZoneMaxBlobs = 'Макс. кол-во объектов';
$zmSlangZoneMaxFilteredArea = 'Макc. площадь после фильтрации';
+$zmSlangZoneMaxPixelThres = 'Верхний порог кол-ва пикселей (0>=?<=255)';
$zmSlangZoneMaxX = 'Макс. X координата (правый край)';
$zmSlangZoneMaxY = 'Mакс. Y координата (нижний край)';
$zmSlangZoneMinAlarmedArea = 'Мин. площадь тревоги';
$zmSlangZoneMinBlobArea = 'Мин. площадь объекта';
$zmSlangZoneMinBlobs = 'Мин. кол-во объектов';
$zmSlangZoneMinFilteredArea = 'Мин. площадь после фильтрации';
+$zmSlangZoneMinPixelThres = 'Нижний порог кол-ва пикселей (0>=?<=255)';
$zmSlangZoneMinX = 'Мин. X координата (левый край)';
$zmSlangZoneMinY = 'Mин. Y координата (верхний край)';
$zmSlangZones = 'Зоны';
@@ -350,8 +366,10 @@ $zmSlangZone = '
$zmClangCurrentLogin = 'Текущий пользователь: \'%1$s\'';
$zmClangEventCount = '%1$s %2$s'; // For example '37 Events' (from Vlang below)
$zmClangLastEvents = 'Последние %1$s %2$s'; // For example 'Last 37 Events' (from Vlang below)
+$zmClangLatestRelease = 'Последняя версия: v%1$s, у Вас установлена: v%2$s.';
$zmClangMonitorCount = '%1$s %2$s'; // For example '4 Monitors' (from Vlang below)
$zmClangMonitorFunction = 'Функция монитора %1$s';
+$zmClangRunningRecentVer = 'У вас установлена новейшая версия ZoneMinder, v%s.';
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated