var winwidth;
var winheight;

function getElement(sID) {
    if(document.getElementById)
        return document.getElementById(sID);
    else if(document.all)
        return document.all(sID);
    return null;
}

function HideorShow(event_srcElement_id) {
    var vParEle = document.getElementById(event_srcElement_id); //event.srcElement;
    var vChild = document.getElementById(vParEle.getAttribute("child"));
    var vImg = document.getElementById(vParEle.getAttribute("imgDir"));
    var vType = vParEle.getAttribute("sectType");
    var openedgif=(vType=='section')?"img/arr_down.gif":"img/minus.gif";
    var closedgif=(vType=='section')?"img/arr_right.gif":"img/plus.gif";

    if (vChild.style.display == "none") {
        vImg.src = openedgif;
        vParEle.title = "click here to collapse";
        vChild.style.display = "block";
    } else {
        vImg.src = closedgif;
        vParEle.title = "click here to expand";
        vChild.style.display = "none";
    }
}

function loadFile(xmlFile, mode) {
    var xslFile = "pic_list_view.xsl";
    if(mode=="view") {
          xslFile = "pic_list_view.xsl";
    }
    if (mode=="edit") {
          xslFile = "pic_list_edit.xsl";
    }
document.getElementById("contentbox").src="http://www.berat.com/photos/album/skins/xmltransform.php?xml=../" + xmlFile + "&xsl=" + xslFile;
}

function loadFile1(file) {
        document.getElementById("contentbox").src=file;        
}
    
function showImageData(imgUrl,imgName,imgDescription,event_srcElement_id) {

   document.getElementById("pic").src=imgUrl;
   document.getElementById("imgName").innerText=imgName;
   document.getElementById("imgDescription").innerText=imgDescription;
   
   resize_pic_info();
   
   document.getElementById("pic").style.visibility="visible";
   document.getElementById("zoomer").style.visibility="visible";
   document.getElementById("imgName").style.visibility="visible";
   document.getElementById("imgDescription").style.visibility="visible";
      
/*
   statusFlush();
   status("function params");   
   status("\nimgurl: " + imgUrl);
   status("\nimgurl: " + imgName);
   status("\nimgurl: " + imgDescription);
   status("\nimgurl: " + event_srcElement_id);   
   status("\n\nsrc: " + document.getElementById("pic").src);
   status("\nvisiblity of pic: " + document.getElementById("pic").style.visibility);
   status("\nvisiblity of zoomer: " + document.getElementById("zoomer").style.visibility);   
   status("\nimgName: " + document.getElementById("imgName").innerText);
   status("\nimgDesc: " + document.getElementById("imgDescription").innerText);
*/      
   selTD(event_srcElement_id);
}

/*
function resizePic(pic) {
    var ratio1 = 1.00;
    var ratio2 = 1.00;

    if (document.getElementById("pic").width > winwidth) {
        ratio1 = winwidth/document.getElementById("pic").width;
    }

    if (document.getElementById("pic").height > winheight) {
        ratio2 = winheight/document.getElementById("pic").height;
    }

    if (ratio1 < ratio2)
        document.getElementById("pic").width = document.getElementById("pic").width*ratio1;
    else
        document.getElementById("pic").height = document.getElementById("pic").height*ratio2;
}
*/

var selcdTD = null;
function selTD(event_srcElement_id) {
    if(selcdTD!=null) {
        document.getElementById(selcdTD).style.background = 'url(img/bg.gif)';
    }
    var oTD = "td"+event_srcElement_id;
    document.getElementById(oTD).style.background = 'url(img/bg_sel.gif)';
    selcdTD = oTD;
}

function rolloverTD(event_srcElement_id) {
    var oTD = "td"+event_srcElement_id;
    document.getElementById(oTD).style.background = 'url(img/bg_rollover.gif)';
}

function rolloutTD(event_srcElement_id) {
    var oTD = "td"+event_srcElement_id;

    if (oTD==selcdTD)
        document.getElementById(oTD).style.background = 'url(img/bg_sel.gif)';
    else
        document.getElementById(oTD).style.background = 'url(img/bg.gif)'; 
}

var scrollstep = 20;
function doScroll1(direction){
   var moveDirection = (direction=="left")?1:-1;
   curpos = parseInt(document.getElementById("filmstrip").style.left);
   newpos = curpos + scrollstep*moveDirection;
   document.getElementById("filmstrip").style.left = newpos;   
}

function doScroll(direction){
   var moveDirection = (direction=="left")?1:-1;
   curpos = parseInt(document.getElementById("filmstrip").style.left);
   stripwidth = parseInt(document.getElementById("filmTable").clientWidth);
   scrollstep = document.body.clientWidth;
   newpos = curpos + scrollstep*moveDirection;
   if ((newpos>0) || (newpos<stripwidth*-1)){
   } else {
         document.getElementById("filmstrip").style.left = newpos;
    }
}

var c=0;
function reposition_Elements() {

   winwidth = document.body.clientWidth;
   winheight = document.body.clientHeight;

   document.getElementById("rightArr").style.left=winwidth-25;
   
   var clipTop = 0;
   var clipWidth = winwidth;
   var clipBottom = 102;
   var clipLeft = 0;
   
   document.getElementById("filmContainer").style.clip = 'rect('+clipTop+'px,'+clipWidth+'px,'+clipBottom+'px,'+clipLeft+')';
   document.getElementById("zoomer").style.top = clipBottom;
   document.getElementById("pic_info").style.left = clipLeft;
   document.getElementById("pic_info").style.top = clipBottom;
   document.getElementById("pic_info").style.width = winwidth;
   document.getElementById("pic_info").style.height = winheight- clipBottom - 1;
   

   // do not resize the pic_info the very first time the page is loaded (ie resized)
   // as the browser does not know the size of document.body.clientHeight yet.
   if (c==0) {
      c=1;
   } else {
      resize_pic_info();
   }
   //statusFlush();
   //status("ending reposition_rightArr()");        
}
    
function resize_pic_info() {
document.getElementById("pic_info").style.height=document.body.clientHeight-document.getElementById("filmstrip").offsetHeight+48;
}
    
var prevratio = 1.0;
function zoom(ratio) {
   if (document.getElementById("pic").style.visibility=="visible") {
      if(prevratio != ratio) {      
         document.getElementById("pic").height = document.getElementById("pic").height * (ratio/prevratio);
         
         var prevTD = document.getElementById("tdz"+prevratio);
         var newTD  = document.getElementById("tdz"+ratio);
         
         prevTD.bgColor="#FFFFFF";
         newTD.bgColor="#9E9E9E";

         prevratio = ratio;
      }
   }         
}

function zoom1(ratio) {
   if (document.getElementById("pic").style.visibility=="visible") {
      //alert("h:"+ document.getElementById("pic").height + "nh:"+ EXIF.getTag(document.getElementById("pic"), "PixelXDimension") * ratio);
alert(EXIF.getTag(document.getElementById("pic"), "ExifVersion"));
      if(prevratio != ratio) {      
         document.getElementById("pic").height = document.getElementById("pic").height * (ratio/prevratio);
         
         var prevTD = document.getElementById("tdz"+prevratio);
         var newTD  = document.getElementById("tdz"+ratio);
         
         prevTD.bgColor="#FFFFFF";
         newTD.bgColor="#9E9E9E";

         prevratio = ratio;
      }
   }      
}

function status(msg) {
    //document.getElementById("status").value+=msg;
}

function statusFlush() {
    //document.getElementById("status").value="";
}

function generateXML(txtbxId) {
     var str="";
     var curChk;
     var order=0;
     
     //str   = "<?xml version='1.0' encoding='windows-1252' ?>\n";
     //str += "<?xml:stylesheet type='text/xsl' href='pic_list.xsl'?>\n";
     str += "<PhotoGallery>\n";
     str += "  <FileName>"+getElement("filename").value +"</FileName>\n";
     str += "  <Name>Sample Photo Gallery</Name>\n";
     str += "  <Description>Misc. photos from my collection.</Description>\n";
     str += "  <Date>2001.08.01</Date>\n\n";
     str += "    <Photos>\n";

     var datatable = getElement("datatable");

     for (var i=1;i<datatable.rows.length;i++) {
         var row = datatable.rows[i];
         var order, name, imgURL, thumbURL, desc, display,width,height;

         str += "    <Photo>\n";
         for (var j=0;j<row.cells.length;j++) {
              var cell  = row.cells[j];
              var ctrl = cell.childNodes[0];
              switch(ctrl.id.substr(0,3)) {
                   case "ord": order = getElement(ctrl.id).value;
                            break;
                   case "nam": name = getElement(ctrl.id).value;
                            break;
                   case "img": imgURL = getElement(ctrl.id).value;
                            break;
                   case "thu": thumbURL = getElement(ctrl.id).src;
                            break;
                   case "des": desc = getElement(ctrl.id).value;
                            break;
                   case "chk": display = getElement(ctrl.id).checked?"yes":"no";
                            break;
                   case "wid": width = getElement(ctrl.id).value;
                            break;
                   case "hei": height = getElement(ctrl.id).value;
                            break;

              }
         }

         str += "      <Order>" + order + "</Order>\n";
         str += "      <Name>" + name + "</Name>\n";
         str += "      <ImageURL>" + imgURL + "</ImageURL>\n";
         str += "      <ThumbURL>" + thumbURL + "</ThumbURL>\n";
         str += "      <Description>" + desc + "</Description>\n";
         str += "      <Display>" + display + "</Display>\n";
         str += "      <ShowSizeWidth>" + width + "</ShowSizeWidth>\n";
         str += "      <ShowSizeHeight>" + height + "</ShowSizeHeight>\n";
         str += "      <Dated></Dated>\n";
         str += "      <Copyright>\n";
         str += "        <Year></Year>\n";
         str += "        <Name></Name>\n";
         str += "      </Copyright>\n";
         str += "      <Credit></Credit>\n";
         str += "      <Camera>\n";
         str += "        <Name></Name>\n";
         str += "      </Camera>\n";
         str += "    </Photo>\n\n\n";
     }
     str += "    </Photos>\n";
     str += "</PhotoGallery>\n";	

    var txtbx = getElement(txtbxId);
    txtbx.value=str;
}

function clearTxtBox(txtbxId) {
    getElement(txtbxId).value="";
}

function picsperRow(elmCount) {
     var elmWidth = 150;
     var screenWidth = document.body.clientWidth;
     var elmperRow = screenWidth/elmWidth;	

     if (elmCount%elmperRow < 1)     
          document.write("</tr><tr>");
}


function createNewRow() {
     document.write("</tr><td height='10'></td><tr>");
}
