var zIsMacIE = false;
var zIsSafari = false;
if(navigator.appName.toLowerCase().indexOf('msie') != -1 && navigator.appName.toLowerCase().indexOf('mac') != -1){
    zIsMacIE = true;
}

//if(navigator.appVersion.toLowerCase().indexOf("safari") != -1 && parseInt(navigator.appVersion.substring(navigator.appVersion.length - 3)) < 130)
if(navigator.appVersion.toLowerCase().indexOf("safari") != -1)
{
    zIsSafari = true;
}

// document.getElementById(whichLayer).display = '';
function toggleLayer(whichLayer)
{
	if (document.getElementById)
	{
		// this is the way the standards work
		var style2 = document.getElementById(whichLayer).style;
		style2.display == 'block' ? style2.display = 'none':style2.display = 'block';
	}
	else if (document.all)
	{
		// this is the way old msie versions work
		var style2 = document.all[whichLayer].style;
		style2.display == 'block' ? style2.display = 'none':style2.display = 'block';
	}
	else if (document.layers)
	{
		// this is the way nn4 works
		var style2 = document.layers[whichLayer].style;
		style2.display == 'block' ? style2.display = 'none':style2.display = 'block';
	}
}

function cssStyleMod(selItem,style,val) {
  if (document.getElementById)
	{
		// this is the way the standards work
		eval("document.getElementById('"+selItem+"').style."+style+"='"+val+"'");
	}
	else if (document.all)
	{
		// this is the way old msie versions work
		eval("document.all['"+selItem+"'].style."+style+"='"+val+"'");
	}
	else if (document.layers)
	{
		// this is the way nn4 works
		eval("document.layers['"+selItem+"'].style."+style+"='"+val+"'");
	}
}

function cssInnerHTML(selItem,val) {
  if (document.getElementById)
	{
		// this is the way the standards work
		eval("document.getElementById('"+selItem+"').innerHTML='"+val+"';");
	}
	else if (document.all)
	{
		// this is the way old msie versions work
		eval("document.all['"+selItem+"'].innerHTML='"+val+"';");
	}
	else if (document.layers)
	{
		// this is the way nn4 works
		eval("document.layers['"+selItem+"'].innerHTML='"+val+"';");
	}
		// so early in the morning
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function hideDtls() {
  if (document.getElementById)
	{
		// this is the way the standards work
		document.getElementById("zSearchResults_ImageDetail").style.width='0px';
		document.getElementById("zSearchResults_ImageDetail").style.display='none';
//		document.getElementById("zSearchResults_LeftBox").style.verticalAlign='top';
//		document.getElementById("zSearchResults_LeftBox").style.display='block';
	}
	else if (document.all)
	{
		// this is the way old msie versions work
		document.all["zSearchResults_ImageDetail"].style.width='0px';
		document.all["zSearchResults_ImageDetail"].style.display='none';
//		document.all["zSearchResults_LeftBox"].style.verticalAlign='top';
//		document.all["zSearchResults_LeftBox"].style.display='block';
	}
	else if (document.layers)
	{
		// this is the way nn4 works
		document.layers["zSearchResults_ImageDetail"].style.width='0px';
		document.layers["zSearchResults_ImageDetail"].style.display='none';
//		document.layers["zSearchResults_LeftBox"].style.verticalAlign='top';
//		document.layers["zSearchResults_LeftBox"].style.display='block';
	}
}

var z000000='black';
var zCCCCCC='lightgray';
var zececec='#ececec';
var z999999='gray';
var zFFFFFF='white';
var zFF9900='orange';
var zFF0000='red';
var z0000FF='blue';
var z00FF00='green';
var zBLANK='';

function switchBGColor(newBGColor) {
	document.bgColor=newBGColor;
}

function statusBGColor(newBGColor) {
	window.status='Click to switch background color to '+newBGColor+'.';
}

function checkAll(theForm) {
    for (i=0,n=theForm.elements.length;i<n;i++)
        if (theForm.elements[i].name.indexOf('chk_') !=-1)
            theForm.elements[i].checked = true;
}

function unCheckAll(theForm) {
    for (i=0,n=theForm.elements.length;i<n;i++)
        if (theForm.elements[i].name.indexOf('chk_') !=-1)
            theForm.elements[i].checked = false;
}

function photoDetail(zAT,zUT,zObjNum,zPageStart,zPageEnd,zPrevPageLink,zNextPageLink) {

    if (zzLoaded) {
        var zD='';
	var NULL = '';
        if (zAT == NULL || zAT == 'NULL') {
            zAT = '';
            zUT = '';
        }
        zD += '<div id="zImageDetail_Page">';
        zD += '  <div id="zImageDetail_Preview">';

        zD += '    <table width="435" cellspacing="3" cellpadding="0" align="center" valign="top">';
        zD += '      <tr>';
        zD += '        <td colspan="3" align="center" valign="top">';

        zD += '          <img src="'+zImageInfo[zObjNum].pre_longpath+'"';
        zD += ' id="zImageDetail_PreviewImg"';
        zD += ' style="border:1pt solid #666;"';
        zD += ' alt="ZUMA Image Detail"';
        zD += ' width="'+zImageInfo[zObjNum].previewdl_width+'"';
        zD += ' height="'+zImageInfo[zObjNum].previewdl_height+'"/>';
        zD += ' <br />';

        zD += '        </td>';
        zD += '      </tr>';
        zD += '      <tr>';
        zD += '        <td align="left" style="width:100px;">';

//  zD += 'zObjNum='+zObjNum;
//  zD += 'zImageInfo[zObjNum].length='+zImageInfo[zObjNum].length;

// Prev Page
        if (zObjNum-1 >= 0) {
            zD += '          <a href="javascript:photoDetail(zAT,zUT,'
            + (zObjNum-1)+','+zPageStart+','
            + zPageEnd+',\''+zPrevPageLink+'\',\''
            + zNextPageLink+'\');"'
            + ' style="color:#fff;font-size:small;">'
            + '<img src="/graphics/buttons/previous.gif"'
            + ' width="9" height="9" alt="ZUMA ~ previous image"'
            + ' style="border:none;margin-right:4px;"></a>'
            + '<a href="javascript:photoDetail(zAT,zUT,'
            + (zObjNum-1)+','+zPageStart+','
            + zPageEnd+',\''+zPrevPageLink+'\',\''
            + zNextPageLink+'\');"'
            + ' style="color:#fff;font-size:small;">'
            + 'previous'
            + '</a>';
        } else if (zObjNum-1 < 0 && curPage != 0) {
            zD += '          <a href="'+zPrevPageLink+'" style="color:#fff;font-size:small;">&lt;&lt; previous page</a>';
        }

        zD += '        </td>';
        zD += '        <td align="center">';

        if(zLN != 'Guest' && zAT != 'temp') {
            zD += '          <div style="font-size:small;">';
            zD += '            add to lightbox';
            zD += '            <input type="checkbox"';
            zD += ' name="chk_ADDTOLIGHTBOX[]"';
            zD += ' value="'+zImageInfo[zObjNum].object_name+'" />';
            zD += '          </div>';
        }

        if(zLN != 'Guest' && zAT != 'temp') {
            zD += '          <strong>download</strong><br />';

            var dwnldHiLnk='/zpdwnld/';
              dwnldHiLnk+=zImageInfo[zObjNum].object_name+'?type=hires"';
            var dwnldLoLnk='/zpdwnld/';
              dwnldLoLnk+=zImageInfo[zObjNum].object_name+'?type=lores"';

            if (zAT != 'screenres' || zAT != 'demo' || zAT != 'temp') {
                zD += '          <a href="'+dwnldHiLnk;
                zD += ' title="ZUMA ~ download HIGH res image">';
                zD += '<img src="/graphics/buttons/highres.gif"';
                zD += ' width="74" height="19"';
                zD += ' alt="ZUMA ~ download HIGH res image"';
                zD += ' style="border:none;margin-right:5px;" /></a> ';
                zD += '&nbsp; ';
	    }

            zD += '          <a href="'+dwnldLoLnk;
            zD += ' title="ZUMA ~ download LOW res image">';
            zD += '<img src="/graphics/buttons/lowres.gif"';
            zD += ' width="74" height="19"';
            zD += ' alt="ZUMA ~ download LOW res image"';
            zD += ' style="border:none;margin-right:5px;" /></a>';
        }

        zD += '        </td>';
        zD += '        <td align="right" style="width:100px;">';

//  alert(zImageInfo[zObjNum].object_name);

// Next Page
        if (parseInt(zObjNum)+1 < zPageEnd) {
            zD += '          <a href="javascript:photoDetail(zAT,zUT,'
            + (parseInt(zObjNum)+1)+','+zPageStart+','+zPageEnd
            + ',\''+zPrevPageLink+'\',\''+zNextPageLink+'\');"'
            + ' style="color:#fff;font-size:small;">'
            + 'next'
            + '</a> '
            + '<a href="javascript:photoDetail(zAT,zUT,'
            + (parseInt(zObjNum)+1)+','+zPageStart+','+zPageEnd
            + ',\''+zPrevPageLink+'\',\''+zNextPageLink+'\');"'
            + ' style="color:#fff;font-size:small;">'
            + '<img src="/graphics/buttons/next.gif"'
            + ' width="9" height="9" alt="ZUMA ~ next image"'
            + ' style="border:none;margin-right:5px;" /></a>';
        } else if (parseInt(zObjNum)+1 == zPageEnd && curPage < lastPage) {
            zD += '          <a href="'+zNextPageLink+'" style="color:#fff;font-size:small;">next page &gt;&gt;</a>';
        }

//  alert(zD);

        zZS = 'zSearchResults_ImageDetail';
        zZL = 'zSearchResults_LeftBox';

        zD += '        </td>';
        zD += '      </tr>';

        if(!zIsSafari)
        {
            zD += '      <tr>';
            zD += '        <td colspan="3" align="center" valign="top">';
            zD += '          <a href="#'+zImageInfo[zObjNum].object_name+'"';
            zD += ' style="color:#fff;font-size:small;"';
            zD += ' onclick="hideDtls();"';
            zD += '>return to grid</a><br />';
            zD += '        </td>';
            zD += '      </tr>';
        }
        zD += '    </table>';


        zD += '    <div style="text-align:center;">';
        zD += '      By downloading this image you agree to the terms';
        zD += '      of the <a href="http://www.zumapress.com/aboutzuma/license.html"';
        zD += ' target="_blank" style="color:#fff;">';
        zD += 'ZUMA Press license</a>.';
        zD += '    </div>';
        zD += '  </div>';
        zD += '  <div id="zImageDetail_Info">';
        zD += '    <div id="zImageDetail_Info_Headline" style="padding-bottom:6px;">';
        zD += '      <a href="/search_results.html?HEADLINE='+zImageInfo[zObjNum].headline+'">'+zImageInfo[zObjNum].headline+'</a>';
        if(zIsSafari)
        {
            zD += '      <br /><span style="font-size:.7em;font-weight:normal;">(click headline to hide image details)</span>';
				}
        zD += '    </div>';

        zD += '  <div style="padding-bottom:6px;">';
        zD += '    <b>Caption:</b> ';
        zD += zImageInfo[zObjNum].caption;
        zD += '  </div>';
        if (zUT == 'employee') {
            zD += '  <div style="padding-bottom:6px;">';
            zD += '    <b>Date:</b> '+zImageInfo[zObjNum].photodate;
            zD += '  </div>';
        }
        zD += '  <div style="padding-bottom:6px;">';
        zD += '    <b>Photographer:</b> ';
        zD += '&copy; '+zImageInfo[zObjNum].creatorname;
        zD += '  </div>';
        if (zUT == 'employee') {
            zD += '  <div style="padding-bottom:6px;">';
            zD += '    <b>Source:</b> '+zImageInfo[zObjNum].source;
            zD += '  </div>';
            zD += '  <div style="padding-bottom:6px;">';
            zD += '    <b>Credit:</b> '+zImageInfo[zObjNum].credit;
            zD += '  </div>';
            zD += '  <div style="padding-bottom:6px;">';
            zD += '    <b>City:</b> '+zImageInfo[zObjNum].city;
            zD += '  </div>';
            zD += '  <div style="padding-bottom:6px;">';
            zD += '    <b>State/Prov.:</b> '+zImageInfo[zObjNum].state;
            zD += '  </div>';
            zD += '  <div style="padding-bottom:6px;">';
            zD += '    <b>Country:</b> '+zImageInfo[zObjNum].country;
            zD += '  </div>';
        }

        var zImageFileSize = '';
        var zImageWidth = '';
        var zImageHeight = '';
        if (zAT != 'screenres' || zAT != 'demo' || zAT != 'temp') {
            zImageFileSize = zImageInfo[zObjNum].high_filesize + 'KB ~ HIGH res ~';
            zImageWidth = zImageInfo[zObjNum].high_width;
            zImageHeight = zImageInfo[zObjNum].high_height;
        } else {
            zImageFileSize = zImageInfo[zObjNum].previewdl_size + 'KB ~ LOW res ~';
            zImageWidth = zImageInfo[zObjNum].previewdl_width;
            zImageHeight = zImageInfo[zObjNum].previewdl_height;
        }

        zD += '  <div style="padding-bottom:6px;">';
        zD += '    <font color="#990000"><b>Restrictions: ';
        zD += '</b>'+zImageInfo[zObjNum].special_instruc+'</font>';
        zD += '';
        zD += '  </div>';
        zD += '  <div style="padding-bottom:6px;">';
        zD += '    <b>File Size:</b> ';
        zD += zImageFileSize+' ('+zImageWidth+' X '+zImageHeight+') ';
        zD += '';
        zD += '  </div>';
        zD += '  <div style="padding-bottom:6px;">';
        zD += '    <b>Image Number:</b>   '+zImageInfo[zObjNum].object_name;
        zD += '  </div>';
        zD += '  <div style="padding-bottom:6px;">';
        zD += '    <b>ZUMA Keywords:</b>  '+zImageInfo[zObjNum].keyword;
        zD += '  </div>';
        zD += '  <div style="padding-bottom:6px;">';
        zD += '    <b>Category:</b>  '+zImageInfo[zObjNum].category;
        zD += '  </div>';
        zD += '  <div style="padding-bottom:6px;">';
        zD += '    <b>Supp. Cats:</b>  ';
        zD += zImageInfo[zObjNum].sup_category;
        zD += '  </div>';
        if (zUT == 'employee') {
            zD += '  <div style="padding-bottom:6px;">';
            zD += '    <b>Uploaded:</b> ';
            zD += zImageInfo[zObjNum].date_import+' - ';
            zD += zImageInfo[zObjNum].time_import+' (PST)';
            zD += '  </div>';
            zD += '  <div style="padding-bottom:6px;">';
            zD += '    <b>Captioned by:</b>  '+zImageInfo[zObjNum].caption_writer;
        }

        zD += '  </div>';
        zD += '</div>';

  // write image details
        document.getElementById("zSearchResults_ImageDetail").style.display='block';
        document.getElementById("zSearchResults_ImageDetail").style.width='400px';
        document.getElementById("zSearchResults_LeftBox").style.display='none';
        document.getElementById("zSearchResults_ImageDetail").innerHTML=zD;
        if(navigator.appVersion.match("Safari") && 
          navigator.appVersion.substring(navigator.appVersion.length - 3) < 130)
        {
            if(document.location.hash != '#zImageDetail_Page') {
                document.location.hash='zImageDetail_Page';
            }
        } else {
            document.location.hash='zImageDetail_Page';
        }

//        this.style.borderColor='#ff8500';
//        this.style.borderStyle='dotted';
//        this.style.borderWidth='2pt';
//        cssMod(zImageInfo[zObjNum].object_name,"borderColor","#ff8500");
    }
}

function photoDetailNEW(zObjNum,zPageStart,zPageEnd,zPrevPageLink,zNextPageLink,prevLink,nextLink,curPage,lastPage,parentType) {

    //if (zzLoaded) {
        var zD='';
    //}

//  zD += 'zObjNum='+zObjNum;
//  zD += 'zImageInfo[zObjNum].length='+zImageInfo[zObjNum].length;

// Prev Page
	//alert(zPrevPageLink);
	//alert(zNextPageLink);
	//alert(zPageEnd);
	//alert(curPage);

	//zPrevPageLink = zPrevPageLink.replace("\'","\\%27");
	//zNextPageLink = zNextPageLink.replace("\'","\\%27");
		//zPrevPageLink = zPrevPageLink.replace("\'","\\%27");
	//zNextPageLink = zNextPageLink.replace("\'","\\%27");
	//alert(zPrevPageLink);
	//alert(zNextPageLink);
	zD+='<td align=\"center\" width=\"350\"><table width=\"100%\"><tr><td align=\"left\">';
        if (zObjNum-1 >= 0) { //CASE NOT FIRST OBJECT
            zD += '<a href="zpdtl.html?IMG='
            + prevLink + '&CNT=' +(zObjNum-1) + '&TYPE=' +parentType+ '"'
            + ' style="color:#fff;font-size:small;">'
            + '<img src="/graphics/buttons/previous.gif"'
            + ' width="9" height="9" alt="ZUMA ~ previous image"'
            + ' style="border:none;margin-right:4px;"></a>'
            + '<a href="zpdtl.html?IMG='
            + prevLink + '&CNT=' +(zObjNum-1) + '&TYPE=' +parentType+ '"'
            + ' style="color:#fff;font-size:small;">'
            + 'previous'
            + '</a>';
        } else if (zObjNum-1 < 0 && curPage != 0) { //CASE IS FIRST AND IS NOT FIRST PAGE
        	zPrevPageLink = zPrevPageLink.replace(/%27/g,"\\%27");
			zPrevPageLink = replaceAll(zPrevPageLink,"\'","\\%27");
            zD += '<a href="javascript:goNextPrevPage('+"'"+zPrevPageLink+"'"+',0,'+parentType+')" style="color:#fff;font-size:small;">&lt;&lt; previous page</a>';
        }

        zD += '</td><td align=\"right\">';

        
//  alert(zImageInfo[zObjNum].object_name);

// Next Page
		//alert(zPageEnd);
		//alert(zObjNum+1);
		//alert(curPage);
		//alert(lastPage);
		//alert(zNextPageLink);
		//alert(zPrevPageLink);
		//if (curPage < lastPage)
			//alert("curPage=" +curPage+ "lastpage=" + lastPage);
	
        if (parseInt(zObjNum)+1 < zPageEnd) {
            zD += '<a href="zpdtl.html?IMG='
            + nextLink + '&CNT=' +(zObjNum+1) + '&TYPE=' +parentType+ '"'
            + ' style="color:#fff;font-size:small;">'
            + 'next'
            + '</a> '
            + '<a href="zpdtl.html?IMG='
            + nextLink + '&CNT=' +(zObjNum+1) + '&TYPE=' +parentType+ '"'
            + ' style="color:#fff;font-size:small;">'
            + '<img src="/graphics/buttons/next.gif"'
            + ' width="9" height="9" alt="ZUMA ~ next image"'
            + ' style="border:none;margin-right:5px;" /></a>';
        } else if ((zObjNum+1 == zPageEnd) && curPage != lastPage && zPageEnd != 1 && lastPage != 0 && !(parentType==2 && lastPage <= 1) ) {
        	//alert("NEXT!");
        	zNextPageLink = zNextPageLink.replace(/%27/g,"\\%27");
			zNextPageLink = replaceAll(zNextPageLink,"\'","\\%27");
            zD += '<a href="javascript:goNextPrevPage('+"'"+zNextPageLink+"'"+',1,'+parentType+')" style="color:#fff;font-size:small;">next page &gt;&gt;</a>';
        }
		zD += '</td></tr></table></td>';
		  return zD;
//        this.style.borderColor='#ff8500';
//        this.style.borderStyle='dotted';
//        this.style.borderWidth='2pt';
//        cssMod(zImageInfo[zObjNum].object_name,"borderColor","#ff8500");
}

function replaceAll(oldStr,findStr,repStr) {
  var srchNdx = 0;  // srchNdx will keep track of where in the whole line
                    // of oldStr are we searching.
  var newStr = "";  // newStr will hold the altered version of oldStr.
  while (oldStr.indexOf(findStr,srchNdx) != -1)  
                    // As long as there are strings to replace, this loop
                    // will run. 
  {
    newStr += oldStr.substring(srchNdx,oldStr.indexOf(findStr,srchNdx));
                    // Put it all the unaltered text from one findStr to
                    // the next findStr into newStr.
    newStr += repStr;
                    // Instead of putting the old string, put in the
                    // new string instead. 
    srchNdx = (oldStr.indexOf(findStr,srchNdx) + findStr.length);
                    // Now jump to the next chunk of text till the next findStr.           
  }
  newStr += oldStr.substring(srchNdx,oldStr.length);
                    // Put whatever's left into newStr.             
  return newStr;
}

