//---------------------------------------------------------------------------------
// (c) 2008 Eyegate Inc
// sitaxe: .../midiaLins.js - 
// AJAX que atualiza detalhes da midia especificada (imagem)
// Historico:
//   set08:Om: inicio
//---------------------------------------------------------------------------------
    // global flag
    var isIE = false;

    // global request and XML document objects
    var req;
    var feedURL="midiaLinksXML.php?idMid=";  //data page name


    var LIdMidia; 
    var LUserName;
    var updCount=1;

// retrieve XML document (reusable generic function);
// parameter is URL string (relative or complete) to
// an .xml file whose Content-Type is a valid XML
// type, such as text/xml; XML source must be from
// same domain as HTML file

function loadXMLDoc(url) {       // branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.onreadystatechange = processReqChange;
        req.open("GET", url, true);
        req.send(null);
    } else if (window.ActiveXObject) {    // branch for IE/Windows ActiveX version
        isIE = true;
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
            req.onreadystatechange = processReqChange;
            req.open("GET", url, true);
            req.send();
        }
    }
}

function showStatus(aStatus) {
  document.getElementById("updating").innerHTML = aStatus;
}

// handle onreadystatechange event of req object
function processReqChange() {
    // only if req shows "loaded"
    if (req.readyState == 4)  {         //4=complete. Ignora outros estados
       if (req.status == 200) {     	// use only if "200 OK"
          var items = req.responseXML.getElementsByTagName("row"); //pega rows
          var S = '';
         if (items.length > 0) {
	          S += '<table class="Table_gray"><tr><td valign="top">';
			  S += '<span class="style1">Links for this Image:</span><br>';
	         //if (items.length == 0) { S += "<span class='style1'>no links for this image</span>"; }
	          for (var i = 0; i < items.length; i++) {
	            var item = items[i];
				if (i!=0) { S += '<span class="style5"> , '; }
				S += '<span class="style5">';
				Z0 = unescape (item.getAttribute("link"))
				Z1 = unescape (item.getAttribute("name"))
	            S += '<a href="'+Z0+'" target="new">'+Z1+'</a></span>';
	          }
	          S += '</td></tr></table><img src="gif5x5.gif" width="5" height="2" /><br>';
          }
		  var items = req.responseXML.getElementsByTagName("gal"); //pega rows
		  if (items.length > 0) {
			  S += '<table class="Table_gray"><tr><td valign="top">';
			  S += '<span class="style1">Other galleries featuring this image:</span><br>';
			  //if (items.length==0) { S += "<span class='style1'>no other gallery uses this image</span>"; }
	          for (var i = 0; i < items.length; i++) {
	            var item = items[i];
				if (i!=0) { S += '<span class="style5"> , '; }
	            S += '<span class="style5">';
				//if (i!=0) { S += ", "; }
				Z2 = unescape (item.getAttribute("displayname"))
				S += '<a href="./showgal.php?id='+item.getAttribute("idgal")+'">'+Z2+'</a>';
				S += '</span>';
	          }
			  S += '</td></tr><tr><td>';
			  
	          var items = req.responseXML.getElementsByTagName("intro"); //pega rows
	          for (var i = 0; i < items.length; i++) {
	            var item = items[i];
	            Z3 = unescape (item.getAttribute("filename"))
	            S += "<a href='./showgal.php?id="+item.getAttribute("idgal")+"'><img border='0' src='./img/60/"+Z3+"' alt=\".name.\" ></a>&nbsp;";
				//if (i=1) { S += "<br>";}
				//if (i>=2) break; //limit number of galleru to disply intros
	          }
			  S += '</td></tr></table><img src="gif5x5.gif" width="5" height="2" /><br />';
		  }
		  
		  S += '<table class="Table_gray"><tr>';
		  S += '<td width="10%" align="left">';
		  S += '<input class="eyebutton" name="AddFavImg" type="button" value="+" onClick="goGetAddFavourite('+LIdMidia+',\''+LUserName+'\',\'mid\')"/><span class="style1"> Add Image to MyGallery</span>'; 
		  S += '</td>';
		  S += '</tr></table>'; // table (end)
		  
          document.getElementById("midiaLinksSpan").innerHTML = S;
		  showStatus("atualizada :"+updCount);
       } else { showStatus("download error: "+req.status); }
    }
}

function clearImageLinks() {
document.getElementById("midiaLinksSpan").innerHTML = '<table class="Table_gray"><tr><td><span class="style1">wait...</span></td></tr></table>'; 
//document.getElementById("midiaLinksSpan").innerHTML = '<table class="Table_gray"><TR><TD>wait...</TD></TR></table>';   
}

// solicita lista de links via ajax e  retorna no elemento de id="midiaLinksSpan"
function goGetMidiaLinks(aIdMidia,aIdGal,aUserName) {
  LIdMidia = aIdMidia;   //salva dados pra construir link de addFavourite()
  LUserName = aUserName;
  var url = feedURL + aIdMidia+"&idGal="+aIdGal; //fica tipo '/midialinksXML.php?idMid=8924&idGal=215'
  showStatus("updating.."+updCount);
  clearImageLinks();
  loadXMLDoc(url);   //go get it
  updCount += 1;
}

