MediaWiki:Common.js: відмінності між версіями
Wiki (обговорення | внесок) Немає опису редагування Мітка: Скасовано |
Wiki (обговорення | внесок) Немає опису редагування Мітка: Скасовано |
||
| Рядок 143: | Рядок 143: | ||
e.preventDefault(); | e.preventDefault(); | ||
return false; | return false; | ||
} | |||
}); | |||
// Перехватываем зум и открытие оригинального изображения | |||
mw.hook('mmv.loaded').add(function(viewer) { | |||
// Сохраняем оригинальный метод | |||
var originalOpenImage = viewer.openImage; | |||
// Переопределяем метод открытия изображения | |||
viewer.openImage = function(title) { | |||
// Всегда открываем в MediaViewer, никогда не переходим по прямой ссылке | |||
return originalOpenImage.call(this, title); | |||
}; | |||
// Отключаем функционал открытия оригинального изображения | |||
viewer.ui.$element.find('.mw-mmv-download-button').remove(); | |||
viewer.ui.$element.find('.mw-mmv-reuse-button').remove(); | |||
// Перехватываем зум | |||
var originalZoomIn = viewer.zoomIn; | |||
viewer.zoomIn = function() { | |||
// Ограничиваем максимальный зум | |||
if (this.getZoomLevel() < 3) { | |||
return originalZoomIn.call(this); | |||
} | |||
}; | |||
}); | |||
// Блокировка открытия в новой вкладке | |||
window.addEventListener('beforeunload', function(e) { | |||
// Если пытаются уйти со страницы при открытом MediaViewer | |||
if (window.mw && window.mw.mmv && window.mw.mmv.viewer && | |||
window.mw.mmv.viewer.isOpen) { | |||
// Для некоторых браузеров можно показать предупреждение | |||
return "Изображение открыто в просмотрщике. Закройте его перед выходом."; | |||
} | } | ||
}); | }); | ||