//--------------------------------------------------------------------------------------------------------------------
// MarkHiddenThumbs puts a red X on thumbnails in the Smugmug view that are hidden
//
// Installation and support is here: http://www.dgrin.com/showthread.php?t=143433.
//--------------------------------------------------------------------------------------------------------------------
if (typeof(JLF) == "undefined") var JLF = new Object;
if (typeof(JLF.HiddenMarkers) == "undefined") JLF.HiddenMarkers = new Object;

JLF.HiddenMarkers.oldHidePhoto = "";

JLF.HiddenMarkers.newHidePhoto = function(status, ImageID, ImageKey)
{
	var retVal = JLF.HiddenMarkers.oldHidePhoto.apply(this, arguments);
	var thumb = YD.get("photoBox_" + ImageID);
	if (thumb)
	{
		JLF.HiddenMarkers.MarkSingleHiddenThumb(thumb);
	}
	return(retVal);
}

if (typeof(hidePhoto) == "function")
{
	JLF.HiddenMarkers.oldHidePhoto = hidePhoto;
	hidePhoto = JLF.HiddenMarkers.newHidePhoto;
}

JLF.HiddenMarkers.SetStyleString = function(element, str)
{
	var styles = str.split(/\s*;\s*/);
	for (var i in styles)
	{
		var pieces = styles[i].split(/\s*:\s*/);
		if (pieces.length > 1)
		{
			YD.setStyle(element, pieces[0], pieces[1]);
		}
	}
}

JLF.HiddenMarkers.MarkSingleHiddenThumb = function(element)
{
	try
	{
		// get existing marker if here
		var markers = YD.getElementsByClassName("hiddenMarker", "div", element);
		var imageID = element.id.substr(9);		// strip off "photoBox_" off the id to get just the id
		if (photoInfo[imageID].Status == "Hidden")
		{
			// if there is no marker yet, add one
			if (!markers || (markers.length == 0))
			{
				var links = element.getElementsByTagName("a");
				var imgs = links[0].getElementsByTagName("img");
				var newDiv = document.createElement("div");
				newDiv.className = "hiddenMarker";
				JLF.HiddenMarkers.SetStyleString(newDiv, "position: absolute; top:1px; left:5px; z-index:10; color: #F00; font-size: 14pt; font-weight: bold; font-family: Arial;");
				newDiv.innerHTML = "X";
				imgs[0].parentNode.insertBefore(newDiv, imgs[0]);
			}
		}
		else	// not hidden now
		{
			// if there's a hidden marker, then remove it
			if (markers && (markers.length != 0))
			{
				markers[0].parentNode.removeChild(markers[0]);		// remove it
			}
		}
	} catch (e) {}
}


JLF.HiddenMarkers.MarkAllHiddenThumbs = function()
{
	
	if (YD.hasClass(document.body, "loggedIn") && YD.hasClass(document.body, "smugmug"))
	{
		YD.getElementsByClassName("photo", "div", YD.get("thumbnails"), JLF.HiddenMarkers.MarkSingleHiddenThumb);
	}
}

onPhotoShow.subscribe(JLF.HiddenMarkers.MarkAllHiddenThumbs);

// --------------------------------------
// End of MarkHiddenThumbs code
// --------------------------------------
