Greasy Fork is available in English.

BREED bootloader Russian translation

Перевод загрузчика BREED для Xiaomi Mi Router 3G

// ==UserScript==
// @name		BREED bootloader Russian translation
// @description	Перевод загрузчика BREED для Xiaomi Mi Router 3G
// @namespace	breed_mi_r3g_ru
// @version		20191018.1
// @author		LESHIY_ODESSA, dartraiden
// @include		http://192.168.1.1/*
// ==/UserScript==

(function () {

	function findAndReplace(searchText, replacement, searchNode) {
		if (!searchText || typeof replacement === 'undefined') {
			// Throw error here if you want...
			return;
		}
		var regex = typeof searchText === 'string' ? new RegExp(searchText, 'g') : searchText,
			childNodes = (searchNode || document.body).childNodes,
			cnLength = childNodes.length;
		excludes = 'html,head,style,title,link,meta,script,object,iframe';
		while (cnLength--) {
			var currentNode = childNodes[cnLength];
			if (currentNode.nodeType === 1 && (',' + excludes + ',').indexOf(',' + currentNode.nodeName.toLowerCase() + ',') === -1) {
				arguments.callee(searchText, replacement, currentNode);
			}
			if (currentNode.nodeType !== 3 || !regex.test(currentNode.data) ) {
				continue;
			}
			var parent = currentNode.parentNode,
				frag = (function(){
					var html = currentNode.data.replace(regex, replacement),
						wrap = document.createElement('div'),
						frag = document.createDocumentFragment();
					wrap.innerHTML = html;
					while (wrap.firstChild) {
						frag.appendChild(wrap.firstChild);
					}
					return frag;
				})();
			parent.insertBefore(frag, currentNode);
			parent.removeChild(currentNode);
		}
	}

	function translate() {
		var ts = {
		// Порядок имеет значение — чем короче строка, тем ниже она располагается, в противном случае короткие строки будут иметь приоритет, если встретятся в составе длинных
		"如果超频后无法开机,请按住复位键再通电,系统将以默认频率启动":"Если после разгона не включается питание, зажмите и удерживайте кнопку перезагрузки при запуске, чтобы система запустилась с частотой по умолчанию",
		"设置当前刷入固件的类型,以便于在启动固件时设置特定的参数":"Выберите тип текущей прошивки, чтобы применить при запуске определённые настройки.",
		"本产品仅供个人免费使用,禁止用于商业目的":"Этот продукт предназначен только для личного использования, а не для использования в коммерческих целях.",
		"请选择正确的固件类型,错误选择可能损坏固件。":"Внимательно выберите тип прошивки. Неправильный выбор может повредить прошивку.",
		"本页面不会自动刷新,请自行检查是否重启成功。":"Эта страница не обновляется автоматически, самостоятельно проверьте, перезагрузилось ли устройство",
		"同一时间只允许有一个备份任务":"Одновременно разрешена лишь одна задача резервного копирования.",
		// По неизвестной причине строка не переводится, если в ней содержится значение, которому должен быть кратен размер EEPROM, поэтому она разбита на две части
		"EEPROM 大小是":"Размер EEPROM должен быть кратен",
		" 的整倍数":"",
		"以恢复出厂设置。":"для сброса к заводским настройкам.",
		"更新完成,设备正在重启。本页面不会刷新,请手动检查设备状态。":"Перезагрузка. Самостоятельно проверьте состояние устройства",
		"正在更新固件,请耐心等待至进度条完成":"Обновляется прошивка, подождите, пока индикатор выполнения не заполнится.",
		"警告:在操作进行过程中请不要断开电源":"ПРЕДУПРЕЖДЕНИЕ: не отключайте питание во время работы.",
		"更新完成,2 秒后跳转到系统信息页面。":"Успешно завершено, переход на страницу «Сведения о системе» через 2 секунды",
		"操作完成,2 秒后跳转到系统信息页面。":"Завершено, переход на страницу «Сведения о системе» через 2 секунды",
		"作完成,2 秒后跳转到系统信息页面。":"Завершено, переход на страницу «Сведения о системе» через 2 секунды",
		"请选择一个有效的Firmware type":"Неправильно выбран тип прошивки.",
		"当前固件不是一个有效的 Padavan 固件。":"Установленная прошивка не похожа на Padavan.",
		"当前Firmware不是一个有效的 Padavan Firmware.":"Установленная прошивка не похожа на Padavan.",
		"单击按钮备份相应的数据":"Нажмите кнопку для создания резервной копии соответствующих данных.",
		"按钮以重启路由":"для перезагрузки устройства.",
		"正在擦除 编程器固件":"Стирание",
		"正在擦除 固件设置":"Стирание",
		"正在擦除 固件":"Стирание",
		"正在擦除 Bootloader":"Стирание",
		"正在擦除 EEPROM":"Стирание",
		"正在校验 编程器固件 擦除块":"Проверка стёртых блоков",
		"正在校验 固件 擦除块":"Проверка стёртых блоков",
		"正在校验 Bootloader 擦除块":"Проверка стёртых блоков",
		"正在校验 EEPROM 擦除块":"Проверка стёртых блоков",
		"正在写入 编程器固件":"Запись",
		"正在写入 固件":"Запись",
		"正在写入 Bootloader":"Запись",
		"正在写入 EEPROM":"Запись",
		"正在校验 编程器固件 数据":"Проверка записанных данных",
		"正在校验 固件 数据":"Проверка записанных данных",
		"正在校验 Bootloader 数据":"Проверка записанных данных",
		"正在校验 EEPROM 数据":"Проверка записанных данных",
		"MAC 地址已经被成功修改":"MAC-адреса успешно изменены",
		"上传的 Bootloader 无效":"Неправильный или повреждённый загрузчик.",
		"此固件不是小米 R3G 固件":"Прошивка не подходит для этой модели.",
		"编程器固件大小不合法,不能判定为有效的编程器固件。":"Размер дампа не соответствует ожидаемому.",
		"无法判断固件类型":"Не удалось определить тип прошивки.",
		"文件已上传,请确认下方列出的信息":"Файл загружен, проверьте указанные ниже сведения.",
		"小米路由器 3G 原厂固件":"Стоковая",
		"MAC 地址修改":"MAC-адреса",
		"恢复出厂设置":"Сброс",
		"文件未找到":"Не найдено",
		"请求的页面不存在。":"Запрошенная страница не существует.",
		"浏览器不支持 Ajax!":"Ваш браузер не поддерживает AJAX!",
		"Breed 内部错误!":"Внутренняя ошибка Breed!",
		"校验失败,请重试!":"Проверка не удалась, повторите попытку!",
		"擦除操作正在进行,请耐心等待至进度条完成":"Выполняется сброс, подождите, пока индикатор выполнения не заполнится.",
		"您选择的操作正在进行":"Выполняется выбранная вами операция.",
		"保留现有 Bootloader":"Сохранить существующий загрузчик",
		"保留现有 EEPROM":"Сохранить существующий EEPROM",
		"环境变量编辑":"Переменные",
		"Breed Web 恢复控制台":"Консоль восстановления Breed Web",
		"通信错误":"Ошибка соединения",
		"小米路由器 3G 固件 1":"Раздел 1",
		"小米路由器 3G 固件 2":"Раздел 2",
		"小米 R3G 设置":"Настройки",
		"配置已被成功更新。":"Настройки успешно обновлены",
		"环境变量已被成功更新。":"Переменные успешно обновлены",
		"Bdata 已被成功更新。":"Bdata успешно обновлена",
		"系统信息":"Сведения о системе",
		"固件更新":"Перепрошивка",
		"更新确认":"Подтвердите обновление",
		"路由正在重启,请耐心等待。":"Подождите, устройство перезагружается.",
		"路由正在重启":"Перезагрузка устройства",
		"固件启动设置":"Настройки при запуске",
		"常规固件":"Обычная прошивка",
		"编程器固件":"Полный дамп",
		"小米 R3G Bdata":"Bdata",
		"自动重启":"Автоматическая перезагрузка",
		"正在等待":"Ожидание",
		"闪存布局":"Разметка",
		"RT6855/RT6856/MT7621 独立参数":" Независимые параметры RT6855/RT6856/MT7621",
		"固件类型":"Тип прошивки",
		"频率设置":"Разгон",
		"固件备份":"Резервная копия",
		"操作正在进行":"Операция выполняется",
		"内存":"Память",
		"单击":"Нажмите кнопку",
		"以太网":"Ethernet",
		"时钟频率":"Частота",
		"编译日期":"Сборка",
		"文件名":"Имя файла",
		"大小":"Размер",
		"MD5 校验":"MD5-сумма",
		"版本":"Версия",
		"类型":"Тип",
		"固件":"Прошивка",
		"上传":"Загрузить",
		"执行":"Выполнить",
		"字段":"Поле",
		"值":"Значение",
		"删除":"Удалить",
		"添加":"Добавить",
		"保存":"Сохранить",
		"修改":"Изменить",
		"重启":"Перезагрузка",
		"关于":"О Breed",
		"修订号":"Ревизия",
		"联系作者":"Связаться с автором",
		"更新:":"Последняя версия: ",
		"更新":"Обновить",
		"错误":"Ошибка",
		"提示":"Подсказка",
		"返回":"Назад",
		"。":".",
		};
		for(var t in ts) {
			findAndReplace(t,ts[t]);
		}
		setTimeout(translate, 500);
	}

	setTimeout(translate, 500);

})();