// ==UserScript== // @name Breed Bootloader Russian Translation // @description Перевод загрузчика Breed для Xiaomi Mi Router 3G // @namespace breed_mi_r3g_ru // @version 20190307.1 // @author LESHIY_ODESSA, dartraiden // @include http*://192.168.1.1/* // @downloadURL none // ==/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 секунды", "单击按钮备份相应的数据":"Нажмите кнопку для создания резервной копии соответствующих данных.", "按钮以重启路由":"для перезагрузки устройства.", "正在擦除 编程器固件":"Стирание", "正在擦除 固件设置":"Стирание", "正在擦除 固件":"Стирание", "正在擦除 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); })();