﻿var request = null;
var d = new Date();
var _headline = null;
var _teaser = null;
var _div = null;
var _link = null;
var _interval = null;

/**
This sets up the XMLHTTP object we're using for the dynamic lookups.
*/
function getXMLHTTP(){
  var A = null;
  
  try{
    A = new ActiveXObject("Msxml2.XMLHTTP");
  }catch(e){
    try{
      A = new ActiveXObject("Microsoft.XMLHTTP");
    } catch(oc){
      A = null;
    }
  }
  
  if(!A && typeof XMLHttpRequest != "undefined") {
    A = new XMLHttpRequest();
  }
  
  return A;
}

function setupPageRefresh(interval){
    _interval = setInterval("pageRefresh()", interval * 60000);
}

function pageRefresh(){
    window.location.reload(true);
}

function updateFeature(listItemId, headline, teaser, div, link){
    request = getXMLHTTP();
    _headline = headline;
    _teaser = teaser;
    _div = div;
    _link = link
    
    var url = "/includes/ajax.aspx";
    url += "?ListItemId=" + listItemId + "&time=" + d.getTime() + "&Source=module_feature";
        
    request.open("GET", url, true);
    request.onreadystatechange = updateFeatureCallback;
    request.send(null);
}//updateFeature

function updateFeatureCallback(){
    if(request.readyState == 4){
        if(request.status == 200){
            var text = request.responseText;
        
            //code for IE
            if (window.ActiveXObject){
                var doc = new ActiveXObject("Microsoft.XMLDOM");
                doc.async = "false";
                doc.loadXML(text);
            }
            //code for Mozilla, Firefox, Opera, etc.
            else{
                var parser = new DOMParser();
                var doc = parser.parseFromString(text, "text/xml");
            }
            
            //documentElement always represents the root node
            var root = doc.documentElement;
            
            var headline = root.getElementsByTagName("Headline")[0].childNodes[0].nodeValue;
            var teaser = root.getElementsByTagName("Teaser")[0].childNodes[0].nodeValue;
            var imagePath = root.getElementsByTagName("Path")[0].childNodes[0].nodeValue;
            var url = root.getElementsByTagName("URL")[0].childNodes[0].nodeValue;
            var newWindow = root.getElementsByTagName("NewWindow")[0].childNodes[0].nodeValue;
                      
            if(newWindow == 'true'){                
                document.getElementById(_headline).innerHTML = '<a href=' + url + ' target="_blank">' + headline + '</a>';
                document.getElementById(_link).href = url;
                document.getElementById(_link).target = "_blank";
            }else{
                document.getElementById(_headline).innerHTML = '<a href=' + url + ' target="_self">' + headline + '</a>';
                document.getElementById(_link).href = url;
                document.getElementById(_link).target = "_self";
            }            
            
            document.getElementById(_teaser).innerHTML = teaser;
            document.getElementById(_div).style.backgroundImage = "url(" + imagePath + ")";
            
        }//200
    }//4
}//updateFeatureCallback

function expandMonth(arrow, position, panel){
    if(document.getElementById(position).innerHTML == "0"){
        document.getElementById(arrow).src = '/images/arrow_open.gif';
        document.getElementById(position).innerHTML = "1";    
        document.getElementById(panel).style.display = "block";    
    }else{
        document.getElementById(arrow).src = '/images/arrow_closed.gif';
        document.getElementById(position).innerHTML = "0";
        document.getElementById(panel).style.display = "none";
    }
}