From a1efa12d27889c765a8276edc2e89b105f7d2248 Mon Sep 17 00:00:00 2001 From: "Steinar H. Gunderson" Date: Tue, 22 Jan 2013 17:17:48 +0100 Subject: [PATCH 1/1] Initial checkin for move to Git (no prior version history available). --- ebay-timezone.user.js | 49 +++++++++++++++++++++++++++++++++++++++++++ xkcd.user.js | 35 +++++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+) create mode 100644 ebay-timezone.user.js create mode 100644 xkcd.user.js diff --git a/ebay-timezone.user.js b/ebay-timezone.user.js new file mode 100644 index 0000000..5d660c1 --- /dev/null +++ b/ebay-timezone.user.js @@ -0,0 +1,49 @@ +// ==UserScript== +// @name eBay timezone fix +// @namespace http://bzr.sesse.net/greasemonkey-scripts/ +// @description Changes all eBay times to be in your local time zone +// @include http://ebay.com/* +// @include http://*.ebay.com/* +// @include https://ebay.com/* +// @include https://*.ebay.com/* +// ==/UserScript== + +function nf(x) +{ + if (x < 10) { + return "0" + x; + } else { + return x; + } +} + +function getTextNodes(oNode, aText) +{ + for (var i = 0; i < oNode.childNodes.length; i++) { + var oChild = oNode.childNodes.item(i); + switch(oChild.nodeType) { + case 1: + getTextNodes(oChild, aText); + break; + case 3: + aText.push(oChild); + break; + } + } +} + +var text = []; +getTextNodes(document, text); +for (var i = 0; i < text.length; i++) { + var elem = text[i]; + var str = elem.nodeValue; + + var foo = str.match(/(\S\S\S)-(\d\d)-(\d\d)(\s+|\s+at\s+)(\d\d:\d\d:\d\d)\s+PST/); + if (foo != null) { + var d = new Date(foo[1] + ' ' + foo[2] + ' 20' + foo[3] + ' ' + foo[5] + " PST"); + var tzinfo = d.toString().match(/\((\S+)\)/); + var dstr = d.getFullYear() + '-' + nf(d.getMonth() + 1) + '-' + nf(d.getDate()) + ' ' + nf(d.getHours()) + ':' + nf(d.getMinutes()) + ':' + nf(d.getSeconds()) + " " + tzinfo[1]; + elem.nodeValue = str.replace(foo[0], dstr); + } +} + diff --git a/xkcd.user.js b/xkcd.user.js new file mode 100644 index 0000000..f36a08e --- /dev/null +++ b/xkcd.user.js @@ -0,0 +1,35 @@ +// ==UserScript== +// @namespace http://xkcd.org/ +// @name xkcd titles - hidden so you need to hover to see it +// @author riddle, improved by sesse +// @include http://xkcd.*/* +// @include http://www.xkcd.*/* +// ==/UserScript== + +function insertAfter(newElement, targetElement) { + var parent = targetElement.parentNode; + if (parent.lastChild == targetElement) { + parent.appendChild(newElement); + } else { + parent.insertBefore(newElement, targetElement.nextSibling); + } +} + +var mc = document.getElementById("middleContent"); +if (mc) { + var img = mc.getElementsByTagName("img")[0]; + if (img && img.title) { + var style = document.createElement("style"); + style.appendChild(document.createTextNode("a.secret { color: white; font-variant: normal; font-weight: normal; text-decoration: none; } a.secret:hover { color: black; }")); + insertAfter(style, img); + + var desc = document.createElement("div"); + var a = document.createElement("a"); + a.setAttribute("class", "secret"); + a.appendChild(document.createTextNode(img.title)); + img.title = null; + desc.appendChild(a); + + insertAfter(desc, style); + } +} -- 2.39.2