/*
	newpopup.js
	simplified version based on:
	http://www.alistapart.com/d/popuplinks/popup.js
	
	allows specification of width and height
	
	todo: make defaults for different popup types, as in,
	resourcePopup should get it's own defaults. Use structure
	for defaults/min/max dimensions.
*/

var _DEFAULT_WIDTH  = 420;
var _DEFAULT_HEIGHT = 500;

var	_MIN_WIDTH	= 200;
var _MAX_WIDTH	= 1000;
var _MIN_HEIGHT	= 200;
var _MAX_HEIGHT	= 800;

var _POPUP_FEATURES  = 'scrollbars=1,resizable=1,menubar=1';
	
var _POPUP_TARGET = '_blank';

function isUndefined(v) {
    var undef;
    return v===undef;
}

function raw_popup(url,width,height) {
	if (isUndefined(width)) width = _DEFAULT_WIDTH;
	if (isUndefined(height)) height = _DEFAULT_HEIGHT;
	if ( width < _MIN_WIDTH || width > _MAX_WIDTH ) width = _DEFAULT_WIDTH;
	if ( height < _MIN_HEIGHT || height > _MAX_HEIGHT ) height = _DEFAULT_HEIGHT;
	var features = 'width=' + width + ',height=' + height + ',' + _POPUP_FEATURES;
	var target = _POPUP_TARGET;
	var thePopup = window.open(url, target, features);
	thePopup.focus();
	return thePopup;
}

function newpopup(src, width, height) {
	_POPUP_TARGET - '_blank' ;
    return raw_popup(src.getAttribute('href'),width,height);
}


