KittenEvil.github.com / opac enhancer

// ==UserScript==
// @name        opac enhancer
// @namespace   Andy
// @description Add download button to opac
// @include     http://opac.*.ru/elcir/viewer.aspx*
// @require     http://code.jquery.com/jquery-2.2.4.min.js
// @version     2016.07.17.03
// @grant       unsafeWindow
// @run-at      document-end
// ==/UserScript==
console.log('opac enhancer started');
setTimeout(function () {
  function main() {
    lPad = function (size, char, str) {
      while (str.length < size) {
        str = char.toString() + str;
      }
      return str;
    }
    downloadThis = function () { //загрузка текущей
      var img = $('img[src*="ImgHandler"]')[0].src;
      var name = jQuery('#lblPage').text().replace(/Страница (.*) из .*/, '$1');
      var link = document.createElement('a');
      link.href = img;
      link.download = lPad(3, 0, name) + '.jpg';
      document.body.appendChild(link);
      link.click();
      document.body.removeChild(link);
    };
    downloadAll = function () { //загрузка всех
      var re = /Страница (\d*) из (\d*)/i;
      var found = jQuery('#lblPage').text().match(re);
      console.log('found='.found);
      downloadThis();
      //      if ((found[1] < found[2]) && confirm('Скачать следующие?')) {
      if (parseInt(found[1]) < parseInt(found[2])) {
        jQuery('#btnNext').click();
        setTimeout('downloadAll()', 3000);
      } 
      else alert('Последняя страница!');
    };
  }
  var script = document.createElement('script');
  script.appendChild(document.createTextNode('(' + main + ')();'));
  (document.body || document.head || document.documentElement).appendChild(script);
  jQuery('#imgslides').load(function () { //добавляем наши кнопки
    if (jQuery('#download').length) {
      jQuery('#download').remove();
    }
    jQuery('#hlEBook').after('<span id="download">'+
    '&nbsp;<a href="javascript:downloadThis()">Скачать</a>' +
    '&nbsp;<a href="javascript:downloadAll()">Скачать все</a>' +
    '&nbsp<a href="javascript:void(0)" onclick="javascript:alert(\''+
        'Кнопка Скачать загружает текущую страницу по имени номер_страницы.jpg. '+
        'Чтобы не нужно было нажимать Save каждый раз, в свойствах браузера можно отключить запрос. '+
        'В FireFox при загрузке файла - выберите Сохранить и поставьте галочку Автоматически. '+
        'В Chrome - Настройки, Показать дополнительные настройки, Автоматическая загрузка. Кнопка Скачать Все скачивает все от текущей до последней'+
        '.\')">Скачать - помощь</a>'+
        '</span>');
  });
}, 1000);