Мобильная версия ruTorrent

/www/pages/modesco/ubuntovod

Меня частенько ругают в комментариях, что я часто делаю репосты статей с других источников (хотя чаще благодарят за это), поэтому стараюсь делать это реже. Сейчас удержаться не смог и публикую статью про мобильную версию для связки rTorrent + ruTorrent с Хабрахабра от юзера zebraxxl.

У меня дома стоит мини-сервер сделанный из старого ноутбука. Одно из основных предназначений - торренты. В качестве клиента используется rTorrent + ruTorrent. В такой связке меня всё устраивало кроме одного: невозможность использовать rutorrent со смартфона. Причин на это две:

  • Сильная зависимость от правой кнопки мыши. Лечится при помощи плагина ipad, но как можно сделать вывод из названия плагина, этот вариант подходит только для планшетов из-за второй причины
  • Неприспособленность интерфейса к маленьким дисплеям. Пример можно увидеть на выше

Немного помучившись, почитав официальный форум, я понял что разработчики поддержку мобильных устройств добавлять пока не собираются и я решил исправить ситуацию самостоятельно.

Одно из преимуществ rutorrent – расширяемость при помощи плагинов. Собственно мной и был написан плагин полностью меняющий интерфейс под мобильные устройства. Вот что получилось:

Если вас заинтересовал данный плагин то вот ссылка на архив с последней версией. Текущая разрабатываемая версия доступна на github.com.

Как видно на скриншотах интерфейс был полностью переделан для удобства использования на маленьких дисплеях. Старый естественно никуда не исчезает. Плагин сам определяет по "User Agent" когда надо включатся, или вы можете сами включать-выключать мобильный интерфейс, изменяя URL. Подробности в разделе "использование".

Для создания интерфейса был использован Twitter Bootstrap. Для автоопределения использован скрипт с сайта detectmobilebrowser.com.

Возможности

Мобильная версия не полностью реализует функционал стандартной версии. Вот список доступных функций:

  • Просмотр текущих торрентов (с фильтрацией на скачивающиеся и законченные), их состояния и детальной информации о них
  • Просмотр и редактирование меток
  • Изменение глобальных ограничений скорости на скачивание и отдачу
  • Список трекеров торрента и браузер файлов
  • Добавление новых торрентов как файлом, так и по magnet ссылкам
  • Удаление торрентов (в том числе вместе с данными)

Установка

Всё как обычно для плагинов rutorrent: просто скопировать папку с плагином в папку rutorrent/plugins/.

Если вы хотите удалять торренты вместе с данными, то так же необходимо установить плагин erasedata, который можно скачать с официальной страницы rutorrent.

Настройка

Все настройки хранятся в файле init.js. Всего на данный момент всего два параметра для изменения:

  1. plugin.enableAutodetect – автоопределение браузера (мобильный или нет). Если отключить то мобильный интерфейс можно будет включить только изменяя URL
  2. plugin.eraseWithDataDefault – "удалить вместе с данными", значение по умолчанию. Возможно три значения:
  • undefined – в первый раз данные не удалять. В последующих сохраняется предыдущее значение до первой перезагрузки страницы.
  • false (по умолчанию) – по умолчанию всегда не удалять
  • true – по умолчанию всегда удалять.

Если в настройках rutorrent отключено подтверждение удаление торрента, то мобильная версия будет вести себя так же. Решение об удалении данных принимается в зависимости от параметра plugin.eraseWithDataDefault.

Использование

Если включено автоопределение браузера, то плагин начинает работать автоматически при загрузке страницы. Так же можно принудительно запустить мобильную версию путём добавления "?mobile=1" в конце адреса.

Послесловие

Вообще плагин создавался в первую очередь для себя, так что были добавлены те функции, которые необходимы мне, однако я готов доработать плагин таким образом, что бы он приносил пользу не только мне. В комментариях жду предложения, сообщения об ошибках и просто отзывы, а то в теме на официальном форуме обсуждение как-то не идёт.

Хотите уехать на Украину? Требуется аренда квартир в дарницком районе киев? Тогда зайдите на сайт kiev.krysha.ua.