//
// SImgU -- simple image utilities
// Copyright (c) 2006 Mackley F. Pexton.  All rights reserved.
//
  
rotate = function(img,angle,maxwidth,maxheight) {
	var m = SImgU.get(img);
	m.angle += angle;
	m.render(maxwidth,maxheight);
}
magnify = function(img,factor,maxwidth,maxheight) {
	var m = SImgU.get(img);
	m.magnification *= factor;
	m.render(maxwidth,maxheight);
}

// SImgU control object
SImgU.ServerProg = 'simgu.php';	// location of server-side helper program
function SImgU(img) {
	this.img = SImgU.ref(img);
	this.origSrc = img.src;
	this.angle = 0;
	this.magnification = 1.0;
}
SImgU.get = function(img) {
	// Return control object for image (stored in image object).
	img = SImgU.ref(img);
	if (! img.SImgU) { img.SImgU = new SImgU(img); }
	return img.SImgU;
}
SImgU.ref = function(e) {
	return (typeof e == "string") ? document.getElementById(e) : e;
}
SImgU.prototype.render = function(maxwidth,maxheight) {
	// Render image by replacing it's src attribute
	var url = SImgU.ServerProg + '?src=' + encodeURI(this.origSrc);
	if (this.angle) { url += '&rotate=' + this.angle; }
	if (this.magnification) { url += '&magnify=' + this.magnification; }
	if (maxwidth) { url += '&maxwidth=' + maxwidth; }
	if (maxheight) { url += '&maxheight=' + maxheight; }
	this.img.src = url;
}

