Участник:Iluvatar/Tineye.js

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
// Взято с Викисклада и подправлено для рувики.
// Список авторов на страние истории оригинальной страницы: http://commons.wikimedia.org/w/index.php?title=MediaWiki:Gadget-Tineye.js&action=history
// CC-BY-SA

$(document).ready( function() {
 if (mw.config.get('wgNamespaceNumber') != 6 || mw.config.get('wgAction') != "view") return;
 var $link = $('.fullImageLink a[class!="mw-thumbnail-link"]');
 var $image = $link.find('img');
 var imageurl = $link.attr('href');
 if (typeof imageurl == 'undefined' || $image.length < 1) return; // No preview image, e.g. for large PNGs or video
 
 if ($image.width() <= 300) {
   imageurl = $image.attr('src'); //Image smaller than 300px width
 } else { //Get thumb url
   var n = imageurl.indexOf("/ru/");
   imageurl = imageurl.substring(0, n + ("/ru/").length) + "thumb/" + imageurl.substring(n + ("/ru/").length);
 
   n = imageurl.lastIndexOf('/') + 1;
   imageurl = imageurl + "/300px-" + imageurl.substring(n); 
 }
 if (imageurl.substring(0, 2) == '//') // Protocol relative url, tineye fails with "Whoops! It looks like you are searching for keywords instead of pointing TinEye to a specific image."
   imageurl = 'http:' + imageurl;
 mw.util.addPortletLink('p-cactions', 'http://tineye.com/search?url=' + encodeURIComponent(imageurl) + '&sort=size&order=desc', 'Поиск через TinEye', 'ca-tineye', null);
});