//Global Vars
var panel_id = 1;
var panel_id_current = 1;
var stid = 0;

//Obtencion de los parametros desde el XML

if (window.DOMParser){
	parser=new DOMParser();
	xmlDoc=parser.parseFromString(panels_information_type_2,"text/xml");
}else{ // Internet Explorer
	xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
	xmlDoc.async="false";
	xmlDoc.loadXML(panels_information_type_2); 
}

var bpc_q = document.getElementById('banner-panels-content');
var bbcampaign = xmlDoc.getElementsByTagName("bbcampaign");
var att_bbcampaign = bbcampaign.item(0).attributes;
var hit = att_bbcampaign.getNamedItem("hit").value;
var token = att_bbcampaign.getNamedItem("token").value;
var tab = xmlDoc.getElementsByTagName("tab");
var att_tab = tab.item(0).attributes;
var tab_id_1 = att_tab.getNamedItem("banner_tab_id").value;
att_tab = tab.item(1).attributes;
var tab_id_2 = att_tab.getNamedItem("banner_tab_id").value;
att_tab = tab.item(2).attributes;
var tab_id_3 = att_tab.getNamedItem("banner_tab_id").value;
att_tab = tab.item(3).attributes;
var tab_id_4 = att_tab.getNamedItem("banner_tab_id").value;

var titles = xmlDoc.getElementsByTagName("title");
var description = xmlDoc.getElementsByTagName("description");
var target = xmlDoc.getElementsByTagName("target");
var link = xmlDoc.getElementsByTagName("link");
var transition_time = xmlDoc.getElementsByTagName("transition_time");
var image = xmlDoc.getElementsByTagName("image");

var image_panel_1 = '<img src="' + image[0].childNodes[0].nodeValue + '" width="527" height="248" />';
var image_panel_2 = '<img src="' + image[1].childNodes[0].nodeValue + '" width="527" height="248" />';
var image_panel_3 = '<img src="' + image[2].childNodes[0].nodeValue + '" width="527" height="248" />';
var image_panel_4 = '<img src="' + image[3].childNodes[0].nodeValue + '" width="527" height="248" />';

if (/Firefox[\/\s](\d+\.\d+)/.test(navigator.userAgent)) {
    image_panel_1 = '</a><img src="' + image[0].childNodes[0].nodeValue + '" width="527" height="248" /><a>';
    image_panel_2 = '</a><img src="' + image[1].childNodes[0].nodeValue + '" width="527" height="248" /><a>';
    image_panel_3 = '</a><img src="' + image[2].childNodes[0].nodeValue + '" width="527" height="248" /><a>';
    image_panel_4 = '</a><img src="' + image[3].childNodes[0].nodeValue + '" width="527" height="248" /><a>';
}

window.addEvent('domready', function () {


    $('banner-panels-menu-title-1').setText(titles[0].childNodes[0].nodeValue);

    if (isset(description[0].childNodes[0])) {
        $('banner-panels-menu-description-1').setText(description[0].childNodes[0].nodeValue);
    }
    if (isset(target[0].childNodes[0])) {
        $('banner-panels-menu-link-1').setAttribute('target', target[0].childNodes[0].nodeValue);
    } else {
        $('banner-panels-menu-link-1').setAttribute('target', '_self');
    }
    if (isset(link[0].childNodes[0])) {
        $('banner-panels-menu-link-1').setAttribute('href', link[0].childNodes[0].nodeValue);
    } else {
        $('banner-panels-menu-link-1').setAttribute('href', 'javascript:void(0);');
    }

    panel_time_1 = transition_time[0].childNodes[0].nodeValue;
    //$('banner-panels-content').setHTML(image_panel_1);
    bpc_q.innerHTML= image_panel_1;
    
    if (isset(link[1].childNodes[0])) {
        $('banner-panels-content-link').setAttribute('href', link[1].childNodes[0].nodeValue);
    } else {
        $('banner-panels-content-link').setAttribute('href', '#');
    }
    if (isset(target[1].childNodes[0])) {
        $('banner-panels-content-link').setAttribute('target', target[1].childNodes[0].nodeValue);
    } else {
        $('banner-panels-content-link').setAttribute('target', '_self');
    }

    $('banner-panels-menu-link-1').setAttribute('onclick', 'return registerHit(2, ' + tab_id_1 + ');');

    $('banner-panels-menu-title-2').setText(titles[1].childNodes[0].nodeValue);
    
    if (isset(description[1].childNodes[0])) {
        $('banner-panels-menu-description-2').setText(description[1].childNodes[0].nodeValue);
    }    
    if (isset(target[2].childNodes[0])) {
        $('banner-panels-menu-link-2').setAttribute('target', target[2].childNodes[0].nodeValue);
    } else {
        $('banner-panels-menu-link-2').setAttribute('target', '_self');
    }
    if (isset(link[2].childNodes[0])) {
        $('banner-panels-menu-link-2').setAttribute('href', link[2].childNodes[0].nodeValue);
    } else {
        $('banner-panels-menu-link-2').setAttribute('href', 'javascript:void(0);');
    }

    panel_time_2 = transition_time[1].childNodes[0].nodeValue;
    $('banner-panels-menu-link-2').setAttribute('onclick', 'return registerHit(2, ' + tab_id_2 + ')');

    $('banner-panels-menu-title-3').setText(titles[2].childNodes[0].nodeValue);
    
    if (isset(description[2].childNodes[0])) {
        $('banner-panels-menu-description-3').setText(description[2].childNodes[0].nodeValue);
    }    
    if (isset(target[4].childNodes[0])) {
        $('banner-panels-menu-link-3').setAttribute('target', target[4].childNodes[0].nodeValue);
    } else {
        $('banner-panels-menu-link-3').setAttribute('target', '_self');
    }
    if (isset(link[4].childNodes[0])) {
        $('banner-panels-menu-link-3').setAttribute('href', link[4].childNodes[0].nodeValue);
    } else {
        $('banner-panels-menu-link-3').setAttribute('href', 'javascript:void(0);');
    }

    panel_time_3 = transition_time[2].childNodes[0].nodeValue;
    $('banner-panels-menu-link-3').setAttribute('onclick', 'return registerHit(2, ' + tab_id_3 + ')');

    $('banner-panels-menu-title-4').setText(titles[3].childNodes[0].nodeValue);

    if (isset(description[3].childNodes[0])) {
        $('banner-panels-menu-description-4').setText(description[3].childNodes[0].nodeValue);
    }    
    if (isset(target[6].childNodes[0])) {
        $('banner-panels-menu-link-4').setAttribute('target', target[6].childNodes[0].nodeValue);
    } else {
        $('banner-panels-menu-link-4').setAttribute('target', '_self');
    }

    if (isset(link[6].childNodes[0])) {
        $('banner-panels-menu-link-4').setAttribute('href', link[6].childNodes[0].nodeValue);
    } else {
        $('banner-panels-menu-link-4').setAttribute('href', 'javascript:void(0);');
    }

    panel_time_4 = transition_time[3].childNodes[0].nodeValue;
    $('banner-panels-menu-link-4').setAttribute('onclick', 'return registerHit(2, ' + tab_id_4 + ')');

    
    //Inicializa el Timer
    timeUp();

    //Panel Hover
    
    $('banner-panels-menu-item-1').set({
        events: {
            mouseover: function () {
                showIcon(1, panel_id_current);

                $('banner-panels-menu-item-2').removeClass('banner-panels-menu-item-over');
                $('banner-panels-menu-item-3').removeClass('banner-panels-menu-item-over');
                $('banner-panels-menu-item-4').removeClass('banner-panels-menu-item-over');
                this.addClass('banner-panels-menu-item-over');
                //$('banner-panels-content').setHTML( image_panel_1);
                bpc_q.innerHTML = image_panel_1;

                if (isset(link[1].childNodes[0])) {
                    $('banner-panels-content-link').setAttribute('href', link[1].childNodes[0].nodeValue);
                } else {
                    $('banner-panels-content-link').setAttribute('href', '#');
                }
                if (isset(target[1].childNodes[0])) {
                    $('banner-panels-content-link').setAttribute('target', target[1].childNodes[0].nodeValue);
                } else {
                    $('banner-panels-content-link').setAttribute('target', '_self');
                }

                    $('banner-panels-content-link').setAttribute('onclick', 'return registerHit(3, ' + tab_id_1 + ');');
                panel_id = 2;
                panel_id_current = 1;
                clearTimeout(stid);
            },
            mouseleave: function () {
                stid = setTimeout('timeUp()', panel_time_1);
            }
        }
    });
    
    $('banner-panels-menu-item-2').set({
        events: {
            mouseover: function () {
                showIcon(2, panel_id_current);

                $('banner-panels-menu-item-1').removeClass('banner-panels-menu-item-over');
                $('banner-panels-menu-item-3').removeClass('banner-panels-menu-item-over');
                $('banner-panels-menu-item-4').removeClass('banner-panels-menu-item-over');
                this.addClass('banner-panels-menu-item-over');
                //$('banner-panels-content').setHTML(image_panel_2);
                bpc_q.innerHTML = image_panel_2;

                if (isset(link[3].childNodes[0])) {
                    $('banner-panels-content-link').setAttribute('href', link[3].childNodes[0].nodeValue);
                } else {
                    $('banner-panels-content-link').setAttribute('href', '#');
                }
                if (isset(target[3].childNodes[0])) {
                    $('banner-panels-content-link').setAttribute('target', target[3].childNodes[0].nodeValue);
                } else {
                    $('banner-panels-content-link').setAttribute('target', '_sel');
                }

                $('banner-panels-content-link').setAttribute('onclick', 'return registerHit(3, ' + tab_id_2 + ')');
                panel_id = 3;
                panel_id_current = 2;
                clearTimeout(stid);
            },
            mouseleave: function () {
                stid = setTimeout('timeUp()', panel_time_2);
            }
        }
    });

    $('banner-panels-menu-item-3').set({
        events: {
            mouseover: function () {
                showIcon(3, panel_id_current);

                $('banner-panels-menu-item-1').removeClass('banner-panels-menu-item-over');
                $('banner-panels-menu-item-2').removeClass('banner-panels-menu-item-over');
                $('banner-panels-menu-item-4').removeClass('banner-panels-menu-item-over');
                this.addClass('banner-panels-menu-item-over');
                //$('banner-panels-content').setHTML(image_panel_3);
                bpc_q.innerHTML = image_panel_3;

                if (isset(link[5].childNodes[0])) {
                $('banner-panels-content-link').setAttribute('href', link[5].childNodes[0].nodeValue);
                } else {
                $('banner-panels-content-link').setAttribute('href', '#');
                }
                if (isset(target[5].childNodes[0])) {
                $('banner-panels-content-link').setAttribute('target', target[5].childNodes[0].nodeValue);
                } else {
                $('banner-panels-content-link').setAttribute('target', '_sel');
                }
                $('banner-panels-content-link').setAttribute('onclick', 'return registerHit(3, ' + tab_id_3 + ')');
                panel_id = 4;
                panel_id_current = 3;
                clearTimeout(stid);
            },
            mouseleave: function () {
                stid = setTimeout('timeUp()', panel_time_3);
            }
        }
    });
    $('banner-panels-menu-item-4').set({
        events: {
            mouseover: function () {
                showIcon(4, panel_id_current);

                $('banner-panels-menu-item-1').removeClass('banner-panels-menu-item-over');
                $('banner-panels-menu-item-2').removeClass('banner-panels-menu-item-over');
                $('banner-panels-menu-item-3').removeClass('banner-panels-menu-item-over');
                this.addClass('banner-panels-menu-item-over');
                //$('banner-panels-content').setHTML(image_panel_4);
                bpc_q.innerHTML = image_panel_4;

                if (isset(link[7].childNodes[0])) {
                $('banner-panels-content-link').setAttribute('href', link[7].childNodes[0].nodeValue);
                } else {
                $('banner-panels-content-link').setAttribute('href', '#');
                }
                if (isset(target[7].childNodes[0])) {
                $('banner-panels-content-link').setAttribute('target', target[7].childNodes[0].nodeValue);
                } else {
                $('banner-panels-content-link').setAttribute('target', '_sel');
                }

                $('banner-panels-content-link').setAttribute('onclick', 'return registerHit(3, ' + tab_id_4 + ')');
                panel_id = 1;
                panel_id_current = 4;
                clearTimeout(stid);
            },
            mouseleave: function () {
                stid = setTimeout('timeUp()', panel_time_4);
            }
        }
    });
    $('banner-panels-content').set({
        events: {
            mouseover: function () {
                clearTimeout(stid);
            },
            mouseleave: function () {
                switch (panel_id_current) {
                case 1: panel_time = panel_time_1;
                break;
                case 2: panel_time = panel_time_2;
                break;
                case 3: panel_time = panel_time_3;
                break;
                case 4: panel_time = panel_time_4;
                break;
                }
                stid = setTimeout('timeUp()', panel_time);
            }
        }
    });

});

function timeUp(){
	$('banner-panels-menu-item-1').removeClass('banner-panels-menu-item-over');
	$('banner-panels-menu-item-2').removeClass('banner-panels-menu-item-over');
	$('banner-panels-menu-item-3').removeClass('banner-panels-menu-item-over');
	$('banner-panels-menu-item-4').removeClass('banner-panels-menu-item-over');
	
	switch(panel_id){
	    case 1:
	        showIcon(1, 4);
	        $('banner-panels-menu-item-1').addClass('banner-panels-menu-item-over');
	        //$('banner-panels-content').setHTML(image_panel_1);
	        bpc_q.innerHTML = image_panel_1;

	        if (isset(link[1].childNodes[0])) {
	            $('banner-panels-content-link').setAttribute('href', link[1].childNodes[0].nodeValue);
	        } else {
	            $('banner-panels-content-link').setAttribute('href', '#');
	        }
	        if (isset(target[1].childNodes[0])) {
	            $('banner-panels-content-link').setAttribute('target', target[1].childNodes[0].nodeValue);
	        } else {
	            $('banner-panels-content-link').setAttribute('target', '_sel');
	        }

	        $('banner-panels-content-link').setAttribute('onclick', 'return registerHit(3, ' + tab_id_1 + ');');
	        panel_id = 2;
	        panel_id_current = 1;
	        time_stop = panel_time_1;
	        break;
	    case 2:
	        showIcon(2, 1);
	        $('banner-panels-menu-item-2').addClass('banner-panels-menu-item-over');
	        //$('banner-panels-content').setHTML(image_panel_2);
	        bpc_q.innerHTML = image_panel_2;

	        if (isset(link[3].childNodes[0])) {
	            $('banner-panels-content-link').setAttribute('href', link[3].childNodes[0].nodeValue);
	        } else {
	            $('banner-panels-content-link').setAttribute('href', '#');
	        }
	        if (isset(target[3].childNodes[0])) {
	            $('banner-panels-content-link').setAttribute('target', target[3].childNodes[0].nodeValue);
	        } else {
	            $('banner-panels-content-link').setAttribute('target', '_sel');
	        }

	        $('banner-panels-content-link').setAttribute('onclick', 'return registerHit(3, ' + tab_id_2 + ');');
	        panel_id = 3;
	        panel_id_current = 2;
	        time_stop = panel_time_2;
	        break;
		case 3:
		        showIcon(3, 2);
				$('banner-panels-menu-item-3').addClass('banner-panels-menu-item-over');
				//$('banner-panels-content').setHTML(image_panel_3);
				bpc_q.innerHTML = image_panel_3;

				if (isset(link[5].childNodes[0])) {
				    $('banner-panels-content-link').setAttribute('href', link[5].childNodes[0].nodeValue);
				} else {
				    $('banner-panels-content-link').setAttribute('href', '#');
				}
				if (isset(target[5].childNodes[0])) {
				    $('banner-panels-content-link').setAttribute('target', target[5].childNodes[0].nodeValue);
				} else {
				    $('banner-panels-content-link').setAttribute('target', '_sel');
				}

				$('banner-panels-content-link').setAttribute('onclick', 'return registerHit(3, ' + tab_id_3 + ');');
				panel_id = 4;
				panel_id_current = 3;
				time_stop = panel_time_3;
			break;
		case 4:
		        showIcon(4, 3);
				$('banner-panels-menu-item-4').addClass('banner-panels-menu-item-over');
				//$('banner-panels-content').setHTML(image_panel_4);
				bpc_q.innerHTML = image_panel_4;

				if (isset(link[7].childNodes[0])) {
				    $('banner-panels-content-link').setAttribute('href', link[7].childNodes[0].nodeValue);
				} else {
				    $('banner-panels-content-link').setAttribute('href', '#');
				}
				if (isset(target[7].childNodes[0])) {
				    $('banner-panels-content-link').setAttribute('target', target[7].childNodes[0].nodeValue);
				} else {
				    $('banner-panels-content-link').setAttribute('target', '_sel');
				}

				$('banner-panels-content-link').setAttribute('onclick', 'return registerHit(3, ' + tab_id_4 + ');');
				panel_id = 1;
				panel_id_current = 4;
				time_stop = panel_time_4;
			break;
	}
	stid = setTimeout('timeUp()', time_stop);
    
}

function showIcon(panel_id, panel_id_prev) {
    $('banner-panels-icon-' + panel_id_prev).effect('right', { duration: 200, transition: Fx.Transitions.linear }).start(-32, 0);
    $('banner-panels-icon-' + panel_id).effect('right', { duration: 200, transition: Fx.Transitions.linear }).start(0, -32);
}

function registerHit(inc, tab) {
    var query_string = 'token=' + token + '&inc=' + inc + '&tab=' + tab;
    var mooXHR = new XHR({
        method: 'post',
        async: false
    });

    mooXHR.send(hit, query_string);
    return true;
}

function isset(variable_name) {
    try {
        if (typeof (eval(variable_name)) != 'undefined')
            if (eval(variable_name) != null)
                return true;
    } catch (e) { }
    return false;
}
