// ==UserScript==
// @name           NGCEventLinkChanger
// @namespace      http://home.384.jp/evidence/lab/ngc/
// @description    Change the link of Ukagaka event banner at Nanika Ghost Center
// @include        http://ngc.sherry.jp/
// ==/UserScript==
(function(){
var clist = [
{
"xpath":"//a[contains(@href,\"http://ukaniva.skr.jp/\")]",
"attribute":"href",
"before":"http://ukaniva.skr.jp/",
"after":"http://www.24river.net/nanka/"
},
{
"xpath":"//img[contains(@src,\"http://ukaniva.skr.jp.nyud.net:8090/2007/banner_s0.png\")]",
"attribute":"src",
"before":"http://ukaniva.skr.jp.nyud.net:8090/2007/banner_s0.png",
"after":"http://www.24river.net/nanka/east_ban_b1.jpg"
},
{
"xpath":"//img[contains(@alt,\"&#12454;&#12459;&#12460;&#12459;&#12540;&#12491;&#12496;&#12523;\")]",
"attribute":"alt",
"before":"&#12454;&#12459;&#12460;&#12459;&#12540;&#12491;&#12496;&#12523;",
"after":"&#12394;&#12435;&#12363;&#65312;&#26481;&#20596;"
}
];

for (var i = 0; i < clist.length; i ++) {
    rewriteElem(clist[i]['xpath'], clist[i]['attribute'], clist[i]['before'], clist[i]['after']);
}

function rewriteElem(xpath, attribute, before, after) {
    var nodesSnapshot = document.evaluate(
        xpath, document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
    if (nodesSnapshot.snapshotLength) {
        var item = nodesSnapshot.snapshotItem(0);
        var atrb = item.attributes.getNamedItem(attribute);
        atrb.nodeValue = atrb.nodeValue.replace(before, after);
    }
}

// Cut the ad banner of header
/*
var resHref = document.evaluate('/html/body/table/tbody/tr/td[2]',
    document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null );
if(resHref.snapshotLength){
    var linkElem = resHref.snapshotItem(0);
    linkElem.parentNode.removeChild(linkElem);
}
*/
})();

