
/* All associated graphics and scripts copyright 2007, Paul Vincent Farrell, endlessness.org / moonmilk.org 

 IMPORTANT  

A number of the scripts here are custom designed as part of online web-based artworks. You may not reproduce them elsewhere without the written permission of Paul Vincent Farrell at moonmilk.org. However, feel free to study the scripts and use techniques you learn from them elsewhere.   */

/* -------------------------------------------------------------------- */
   
/* ## Image Preload Script ## */

userAgent = window.navigator.userAgent;
browserVers = parseInt(userAgent.charAt(userAgent.indexOf("/")+1),10);
function newImage(arg) {
	if (document.images) {
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}

function findElement(n,ly) {
	if (browserVers < 4)		return document[n];
	var curDoc = ly ? ly.document : document;
	var elem = curDoc[n];
	if (!elem) {
		for (var i=0;i<curDoc.layers.length;i++) {
			elem = findElement(n,curDoc.layers[i]);
			if (elem) return elem;
		}
	}
	return elem;
}

function changeImages() {
	if (document.images && (preloadFlag == true)) {
		var img;
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			img = null;
			if (document.layers) {
				img = findElement(changeImages.arguments[i],0);
			}
			else {
				img = document.images[changeImages.arguments[i]];
			}
			if (img) {
				img.src = changeImages.arguments[i+1];
			}
		}
	}
}

var preloadFlag = false;
function preloadImages() {
	if (document.images) {
/*		jenglishtag_over = newImage("menuimages/jenglishtag_over.gif");  */
		preloadFlag = true;
	}
}

/* ## end Image Preload Script ## */
/* -------------------------------------------------------------------- */

/* ## email variables ## */

var em1="contact";
var em2="@";
var em3="moonmilk";
var em4=".org";
var em5="?subject=website comment";
var fullem=em1+em2+em3+em4;
/* -------------------------------------------------------------------- */

/* ## new window parameters ## */

var contactparams="toolbar=0,status=0,location=0,menubar=0,width=500,height=380,scrollbars=yes";
var downparams="toolbar=0,status=0,location=0,menubar=0,width=600,height=550,scrollbars=no";
var otocoverparams="toolbar=0,status=0,location=0,menubar=0,width=400,height=400,scrollbars=no,background=#000000";
otodownparams="toolbar=0,status=0,location=0,menubar=0,width=200,height=20,scrollbars=no,background=#000000";
var placeparams="toolbar=0,status=0,location=0,menubar=0,width=800,height=600,scrollbars=no";
var
mosaicparamsh="toolbar=0,status=0,location=0,menubar=0,width=700,height=500,scrollbars=no";
var
mosaicparamsv="toolbar=0,status=0,location=0,menubar=0,width=500,height=700,scrollbars=no";
var
twisparams="toolbar=0,status=0,location=0,menubar=0,width=700,height=500,scrollbars=yes";
var dogparams="toolbar=0,status=0,location=0,menubar=0,width=360,height=288,scrollbars=no, controller=true";
var mistparams="toolbar=0,status=0,location=0,menubar=0,width=360,height=288,scrollbars=no, controller=false";
var
pdfdownparams="toolbar=0,status=0,location=0,menubar=0,width=200,height=20,scrollbars=no,background=#000000";
/* -------------------------------------------------------------------- */

/* ## generic window opening script ## */

function OpenInWindow(theURL,winName,features) {
  var NewWin = window.open(theURL,winName,features);
  NewWin.document.getElementsByTagName("body")[0].style.backgroundColor="#cccccc";
  NewWin.focus();
}
/* -------------------------------------------------------------------- */

/* ## open artwork Place  ## */

function OpenPlace(theURL) {
  var scrw = screen.availWidth;
  var scrh = screen.availHeight; scrh = scrh/1;
  var PlaceWin = window.open(theURL,'placewindow',placeparams);
  PlaceWin.moveTo(0,0);
  PlaceWin.resizeTo(scrw,scrh);
  PlaceWin.focus();
}
/* -------------------------------------------------------------------- */

/* ## Image Window - open image files and resize window to fit  ## */

var imgWin = null;

function imgPop(imageURL)
{
	closeIfwin();
	if (document.getElementById && navigator.userAgent.toLowerCase().indexOf('opera') == -1)
	{
			imgWin = window.open('about:blank','imgWin','width=200, height=200, left=100, top=100');

		with (imgWin.document)
		{
			writeln('<html><head><title>Loading...</title>');
			writeln('<style type="text/css">/* body { margin: 0px; } */</style></head>');
			writeln('<body bgcolor="#000000" onload="self.focus();"><img id="pic" style="display:none" /></body></html>');
			close();		
		}

		var img = new Image();
		img.onload = function() { sizeImgWin(imgWin, img); };
		img.src = imageURL;
	}
	else window.open(imageURL);
}
	
function sizeImgWin(win, img)
{
   	var new_w = img.width;
	var new_h = img.height;
	var old_w = win.innerWidth || win.document.body.offsetWidth;
	var old_h = win.innerHeight || win.document.body.offsetHeight;

	if (!new_w) { new_w = old_w; }
	if (!new_h) { new_h = old_h; }

	new_w -= old_w-20; new_h -= old_h-20;
	win.resizeBy(new_w,new_h);
	win.document.title = img.src.substring(img.src.lastIndexOf("/")+1);
	var pic = win.document.getElementById('pic');
	pic.src = img.src;
	pic.style.display = 'block';

	sw=screen.width;
	sh=screen.height;

	var leftPos=((sw-new_w)/2)-100; // Exactly centered.
	var topPos=((sh-new_h)/2)-(100+(((sh-new_h)/2)*0.62)); // Centered, then moved up 62%
	win.moveTo(leftPos, topPos);
}

function closeIfwin() {
  if (imgWin && imgWin.open && !imgWin.closed) imgWin.close();
}

/* ## end Image Window script  ## */
/* -------------------------------------------------------------------- */

var mmcredittext='&lt;span style="font-size: 11px; font-family: Verdana, Arial, Helvetica, sans-serif; font-style: normal; font-weight: normal; text-transform: none; line-height: 110%; text-align: left; color: #9999aa;"&gt;image from &lt;a href="http://www.moonmilk.org" target="_blank"&gt;&lt;span style="font-weight: bold"&gt;&nbsp;&nbsp;moonmilk.org&nbsp;&nbsp;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;';
