/*
 * Change title attr into box js style (prettier)
 *
 * By Baptiste "Talus" Clavié
 */

const X_PLUS = 30;
const Y_PLUS = -10;

const idBox = 'box';
const classBox = 'boxify';

var x,y;
var box = document.getElementById(idBox);
var elts = document.getElementsByClassName(classBox);

document.onmousemove = function (e){
        x = (navigator.appName.substring(0,3) == "Net") ? e.pageX : event.x + (document.body.scrollLeft);
        y = (navigator.appName.substring(0,3) == "Net") ? e.pageY : event.y + (document.body.scrollTop);

        if (box.style.display == 'block'){
            box.style.left = (x + X_PLUS) + 'px';
            box.style.top = (y + Y_PLUS) + 'px';
        }
    };

var makeBox = function (e){
        if (!e) e = window.event;

        var parent = navigator.appName.substring(0,3) == "Net" ? e.target : event.srcElement;
        
        while(!hasClassName(parent, classBox)) parent = parent.parentNode;

        box.style.left = (x + X_PLUS) + 'px';
        box.style.top = (y + Y_PLUS) + 'px';

        box.innerHTML = parent.saveTitle;
        box.style.display = 'block';
    };

var killBox = function (e){
        box.style.display = 'none';
    };

for (var i in elts){
    if (elts[i].title != ''){
        elts[i].saveTitle = elts[i].title;
        
        elts[i].onmouseover = makeBox;
        elts[i].onmouseout = killBox;
        
        elts[i].title = '';
    }
}