function getobj(eid) {
    if (document.all)
        return (typeof eid=='string') ? document.all[eid] : eid;
    else if (document.getElementById)
        return (typeof eid=='string') ? document.getElementById(eid) : eid;
}

function getFirstTagByClass(tag, clazz) {
    var elms = document.getElementsByTagName(tag);
    var len = elms.length;
    if (len == 0) return null;
    else if (len == 1) return elms[0];
    else if (len > 1 && clazz.length > 0) {
        for (var i = 0; i < len; ++i) {
            if (elms[i].className && elms[i].className==clazz)
                return elms[i];
        }
    }
    return null;
}

function makeBackLink() {
    if (document.referrer && document.referrer.length > 0)
        window.location.href = document.referrer;
    var backLevel = arguments.length == 1 ? parseInt(arguments[0]) : -1;
    if (isNaN(backLevel) || backLevel == 0) backLevel = -1;
    else if (backLevel > 0) backLevel = -backLevel;
    history.go(backLevel);
}

function doSearch(frm) { location.href=location.pathname+'?p=/ricerca.php&q='+escape(frm.q.value); }

var HOVERTX_CURRENT='';
var HOVERTX_CONTAINER='';
var HOVERTX_BOXPREFIX='';

function hovertx_show() {
    var container='';
    var prefix='';
    var areaobj=null;
    if (arguments.length==3) {
        container=arguments[0];
        prefix=arguments[1];
        areaobj=arguments[2];
    } else {
        container=HOVERTX_CONTAINER;
        prefix=HOVERTX_BOXPREFIX;
        areaobj=arguments[0];
    }
    if (HOVERTX_CURRENT.length > 0)
        getobj(prefix+HOVERTX_CURRENT).style.display='none';
    HOVERTX_CURRENT=(typeof areaobj=='string')?''+areaobj:areaobj.alt.toLowerCase();
    getobj(prefix+HOVERTX_CURRENT).style.display='';
    getobj(container).style.display='';
}

function hovertx_hide(){
    var box=arguments.length==1?arguments[0]:HOVERTX_CONTAINER;
    getobj(box).style.display='none';
}

function getLocationParam(loc,paramName){var query=loc.search.substring(1);var pairs=query.split('&');
for(var i=0;i<pairs.length;i++){var pos=pairs[i].indexOf('=');if(pos<0)continue;
if(pairs[i].substring(0,pos)==paramName)return decodeURIComponent(pairs[i].substring(pos+1));}return '';}

var NEWSBC_MAXLEN=80;  // lunghezza max titolo notizia nella breadcrumb, 0 = ignorato

function news_bc(start, containerTagDef) {
    // 1. individua dove si debba andare a scrivere l'HTML risultante
    var useID = false;
    var tagIdentifier = null;
    var found = true;
    var pos = -1;
    if ((pos = containerTagDef.indexOf('.')) > 0) {
        useID = false;
        tagIdentifier = new Array(containerTagDef.substring(0, pos),
            containerTagDef.substring(pos + 1));
    }
    else if ((pos = containerTagDef.indexOf('#')) > 0) {
        useID = true;
        tagIdentifier = containerTagDef.substring(pos + 1);
    }
    else found = false;
    if (!found) return;
    // 2. cerca il tag H1 contenente il titolo
    var artTitleTag = getFirstTagByClass('h1', '');
    if (artTitleTag==null) return;
    var artTitle=artTitleTag.innerHTML;
    // 3. tronca il titolo
    if (NEWSBC_MAXLEN > 0) {
        if (artTitle.length > NEWSBC_MAXLEN)
            artTitle = artTitle.substring(0, NEWSBC_MAXLEN)+'...';
    }
    // 4. legge il percorso dell'articolo corrente
    var artpath = getLocationParam(window.location, 'a');
    if (artpath.length==0) return;
    var html = start + ' <a href="news.php">News</a> &gt; ';
    var category = artpath.substring(0, artpath.indexOf('/'));
    html += '<a href="news.php?p=/newslist.php&c='+category+'">';
    html += NEWSBC_CATEGORIES[category]+'</a> &gt; ';
    html += '<a href="'+location.href+'">'+artTitle+'</a>';
    var o = null;
    if (useID) o = getobj(tagIdentifier);
    else o = getFirstTagByClass(tagIdentifier[0], tagIdentifier[1]);
    if (o == null) return;
    o.innerHTML = '';
    o.innerHTML = html;
    o.style.display = '';
}
