var pocketTrace_timerid;
var pocketTrace_checkobj = false;
var jwd_pktsearch_kks_log = function(p, ptn, t, s)
{
    var tmp_img = new Image();
    var b_url = 'http://download.jword.jp/pub/kks/jwd_ad_kks.htm';
    b_url += '?type=kks';
    b_url += '&partner=' + p;
    b_url += '&name=' + t;
    b_url += ':';
    b_url += ptn;
    b_url += ':fltad:';
    b_url += s;
    tmp_img.src = b_url;
};
document.body.onmouseup = function(e) {
    var urlbase = 'http://pocket.jword.jp/trace/pocketTrace_sb.php?q=%s&p=';
    urlbase += pocketTrace_partner;
    var slc = '';
    var po = {};
    var pp = 'pocketTrace_popup';
    var ppl = 'pocketTrace_popup_link';
    var ppk = 'pocketTrace_popup_keyword';
    var ppf = 'pocketTrace_popup_f';
    var psrc = '';
    var d = document;
    var $  = function(i) {return d.getElementById(i);};
    var $c = function(t) {return d.createElement(t);};
    var $s = function(s) {return d.createTextNode(s);};
    var $ca = function(s) {return d.createAttribute(s);};
    var $dw = function(s) {d.write(s);};

    /**
     * Functions
     */
    var $ = function (s) {
        return d.getElementById(s);
    };
    var getLeft = function (e, ofst) {
        var pmin = (d.body.scrollLeft || d.documentElement.scrollLeft);
        var pmax = 0;
        var pleft = 0;
        var sbar = 20;
        var slds = -20;
        if (window.opera) {
            pmax = pmin + innerWidth - ofst - sbar;
            pleft = pmin + e.clientX;
        } else if(d.all) {
            pmax = pmin - ofst
                + (d.documentElement.clientWidth || d.body.clientWidth);
            pleft = pmin + event.clientX;
        } else if(d.layers || d.getElementById) {
            pmax = pmin + innerWidth - ofst - sbar;
            pleft = e.pageX;
        }
        pleft += slds;
        if (pmax <= pleft) {
            pleft = pmax;
        }
        if (pleft <= pmin) {
            pleft = pmin;
        }
        return pleft;
    };
    var getTop = function (e, ofst) {
        var pmin = (d.body.scrollTop || d.documentElement.scrollTop);
        var pmax = 0;
        var ptop = 0;
        var sbar = 20;
        var slds = 5;
        if (window.opera) {
            pmax = pmin + innerHeight - ofst - sbar;
            ptop = pmin + e.clientY;
        } else if (d.all) {
            pmax = pmin - ofst
                + (d.documentElement.clientHeight || d.body.clientHeight);
            ptop = pmin + event.clientY;
        } else if (d.layers || d.getElementById){
            pmax = pmin + innerHeight - ofst - sbar;
            ptop = e.pageY;
        }
        ptop += slds;
        if (pmax <= ptop) {
            ptop = pmax;
        }
        if (ptop <= pmin) {
            ptop = pmin;
        }
        return ptop;
    };
    var isEffective = function (e) {
        if (!e) {
            e = event;
        }
        var el;
        if (e.srcElement) {
            el = e.srcElement;
        } else {
            el = e.target;
        }
        if (el.id == ppl || el.id == ppk) {
            return false;
        } else if (navigator.userAgent.indexOf('Safari') != -1
            && !el.id && el.parentNode && el.parentNode.id == ppl) {
            return false;
        }
        return true;
    };
    var htmlspecialchars = function (str) {
        if (str != '') {
            str = str.replace('&', '&amp;');
            str = str.replace('>', '&gt;');
            str = str.replace('<', '&lt;');
            str = str.replace('"', '&quot;');
            str = str.replace("'", '&#039;');
        }
        return str;
    };
    var strLen = function (str) {
        var len = 0;
        for (var j = 0; j < str.length; j++) {
            var c = str.charCodeAt(j);
            if ((c >= 0x0 && c < 0x81)
             || (c == 0xf8f0)
             || (c >= 0xff61 && c < 0xffa0)
             || (c >= 0xf8f1 && c < 0xf8f4)) {
                len++;
            } else {
                len += 2;
            }
        }
        return len;
    };
    var close = function () {
    };

    /**
     *
     */
    if (pocketTrace_checkobj) {
        pocketTrace_checkobj = false;
        return;
    } else if (!isEffective(e) && $(pp).style.display == 'block') {
        return;
    } else if (!window.getSelection && !d.getSelection) {
        po = d.selection.createRange();
        var cname = '';
        if (typeof po.parentElement().className != 'undefined') {
            cname = po.parentElement().className;
        }
        if (po.parentElement().tagName == 'TEXTAREA'
            || po.parentElement().tagName == 'INPUT'
            || cname == 'trackback-url') {
            return;
        }
    }
    pocketTrace_checkobj=false;
    if (typeof(pocketTrace_partner) == 'undefined') {
        pocketTrace_partner = '';
    }

    if (typeof window.getSelection != 'undefined') {
        slc = '' + window.getSelection();
    } else if (typeof d.getSelection != 'undefined') {
        slc = '' + d.getSelection();
    } else {
        slc = d.selection.createRange().text;
    }
    if (typeof slc != 'string') {
        return;
    }
    slc = slc.replace(/^\s+|\s+$/g, '');
    if (strLen(slc) > 0 && strLen(slc) < 512) {
        if (18 < strLen(slc)) {
            slc = slc.substring(0, 18);
        }
        $(pp).style.top = '0px';
        $(pp).style.left = '0px';

        $(pp).style.top = getTop(e, $(pp).offsetHeight + 20) + 'px';
        $(pp).style.left = getLeft(e, $(pp).offsetWidth + 6) + 'px';

        $(pp).style.display = 'block';

        psrc = urlbase.replace('%s', encodeURIComponent(slc));

        var sb = $c('iframe');
        if ($(ppf).hasChildNodes() && $(ppf).lastChild.tagName == 'IFRAME') {
            $(ppf).removeChild($(ppf).lastChild);
        }
        sb.id = ppl;
        sb.name = ppl;
        sb.src = psrc;
        sb.width = 282;
        sb.height = 149;
        if (pocketTrace_partner == 'petitmall') {
            sb.width = 316;
        }
        sb.frameborder = '0';
        sb.framespacing = '0';
        var atr = $ca('frameborder');
        atr.nodeValue = '0';
        sb.setAttributeNode(atr);
        atr = $ca('allowtransparency');
        atr.nodeValue = 'true';
        sb.setAttributeNode(atr);
        $(ppf).appendChild(sb);
        jwd_pktsearch_kks_log(pocketTrace_partner, 'tsearch001', 'pkttrsrh', 'adview');

        if (pocketTrace_timerid != '') {
            //clearTimeout(pocketTrace_timerid);
        }
        /*
        pocketTrace_timerid = setTimeout(
            function() {
                $(pp).style.visibility = 'hidden';
                pocketTrace_checkobj=false;},
            5000);
        */
    } else {
        if ($(pp).style.display == 'block') {
            $(pp).style.display = 'none';
            pocketTrace_checkobj = false;
            jwd_pktsearch_kks_log(pocketTrace_partner, 'tsearch001', 'pkttrsrh', 'autoclose');
        }
    }
}
document.getElementById('pocketTrace_popup').onmouseup = function() {
    pocketTrace_checkobj = true;
    if (pocketTrace_timerid != '') {
        clearTimeout(pocketTrace_timerid);
    }
}
document.getElementById('pocketTrace_popup_close').onclick = function() {
    if (pocketTrace_timerid != '') {
        clearTimeout(pocketTrace_timerid);
    }
    document.getElementById('pocketTrace_popup').style.display = 'none';
    pocketTrace_checkobj=false;
    jwd_pktsearch_kks_log(pocketTrace_partner, 'tsearch001', 'pkttrsrh', 'clkclose');
    return false;
}
document.getElementById('pocketTrace_popup_help').onclick = function() {
    jwd_pktsearch_kks_log(pocketTrace_partner, 'tsearch001', 'pkttrsrh', 'clkhelp');
    return true;
}

