var Wistlet = { init : function () { var o = document.getElementsByTagName('body').item(0); //var text = (typeof(document.selection == 'undefined') ) ? getSelection() : document.selection.createRange().text; function getSel() { var txt = ''; if (window.getSelection) { txt = window.getSelection(); } else if (document.getSelection) { txt = document.getSelection(); } else if (document.selection) { txt = document.selection.createRange().text; } else { return; } return txt; } var s = '' + '
'+ ''+ ''+ ''+ ''+ ''+ '
'+ '
'+ '
'+ '

Click on the most appropriate image below to create a thumbnail image for your bookmark:

'+ '
\n'; var x = this.scrape_images(); if (x == 0) { location = 'http://www.wists.com/s.php?c=&r='+location+'&title='+document.title; return true; } s += x + '
\n'+ '

Don\'t like any of these images? Create a thumbnail screenshot instead!

'+ '
'; o.innerHTML = s; this.strip_document(); this.style_document(); return true; }, make_thumbnail : function (r) { var s = '' + '
'+ ''+ '
\n'; return s; }, submit_form : function (r) { var f = document.getElementById('f'); if (!f) return false; var u = document.getElementById('u'); if (!u) return false; u.setAttribute("value", r); f.submit(); return false; }, get_background : function (o) { var s = ''; if (window.getComputedStyle) s = window.getComputedStyle(o,null).getPropertyValue("background-image"); if (o.currentStyle) s = o.currentStyle.backgroundImage; if (s == "none") s = ""; return s; }, scrape_images : function () { var a = document.getElementsByTagName('*'); var s = ''; var n = 0; var l = []; for (var i=0; i < a.length; i++) { var o = a[i]; if (o.tagName == "IMG" && o.src != "") { n++; if (!l[o.src]) { l[o.src] = "1"; s += this.make_thumbnail(o.src); } } else { var x = /url\(["']?(.+[^'"])["']?\)/gi.exec(this.get_background(o)); if (x && x != "" && x.length > 1) { n++; if (!l[x[1]]) { l[x[1]] = "1"; s += this.make_thumbnail(x[1]); } } } } if (n > 0) { return s } else { return n; } }, strip_document : function () { var a = document.getElementsByTagName('*'); for (var i=0; i < a.length; i++) { var o = a[i]; if (o.tagName == "LINK" || o.tagName == "STYLE") { this.destroy_element(o); } else if (o.tagName == "IMG") { if (o.offsetWidth <= 10 || o.offsetHeight <= 10) { // this.destroy_element(o.parentNode); } } } return true; }, style_document : function () { var x = document.getElementsByTagName('head').item(0); var o = document.createElement('link'); if (typeof o != 'object') o = document.standardCreateElement('link'); o.setAttribute('href','http://www.wists.com/wistlet.css?x=' + Math.floor(Math.random() * 9999)); o.setAttribute('rel','stylesheet'); o.setAttribute('type','text/css'); x.appendChild(o); return true; }, destroy_element : function (o) { while (o.childNodes.length > 0) { o.removeChild(o.childNodes[0]); } o.parentNode.removeChild(o); } } function resizeImage(img) { var img_width = img.offsetWidth; var img_height = img.offsetHeight; var img_aspect_ratio = Math.round((img_width / img_height) * 100) / 100; var max_width = 120; var max_height = 90; var max_aspect_ratio = Math.round((max_width / max_height) * 100) / 100; // alert("orig image size is " + img_width + "x" + img_height + "\n" + "aspect ratio is " + img_aspect_ratio + "\n\n" + "max image size is " + max_width + "x" + max_height + "\n" + "max aspect ratio is " + max_aspect_ratio); var new_img_width = 0; var new_img_height = 0; var new_aspect_ratio = 0; // if no resize needed if (img_width < 120 && img_height < 90) { new_img_width = img_width; new_img_height = img_height; // if wider } else if (img_aspect_ratio > max_aspect_ratio) { new_img_width = max_width; new_img_height = Math.round(new_img_width / img_aspect_ratio); // if taller } else if (img_aspect_ratio < max_aspect_ratio) { new_img_height = max_height; new_img_width = Math.round(new_img_height * img_aspect_ratio); // equal } else { new_img_width = max_width; new_img_height = max_height; } img.style.width = new_img_width + "px"; img.style.height = new_img_height + "px"; new_aspect_ratio = Math.round((new_img_width / new_img_height) * 100) / 100; // alert("new image size is " + new_img_width + "x" + new_img_height + "\n" + "new aspect ratio is " + new_aspect_ratio); } var sociable_old_onload = window.onload; window.onload = function () { imgs = document.getElementsByTagName("img"); for(var i = 0; i < imgs.length; i++) { var img = imgs[i]; if (img.className == 'sociable-hovers sociable_wists') { img.onclick = function() { Wistlet.init(); return false; } } } if (sociable_old_onload) sociable_old_onload(); };