// js_util.js
//

var UNDEF = 'undefined';
var JS = window;

if (typeof console == 'undefined'){
 if (typeof loadFirebugConsole == 'function') loadFirebugConsole();
 else console = new Object();
}
if (typeof console.log == 'undefined') console.log = function(){ /* noop */}


function writeEl(htm,id,win)
{
	if (typeof win == UNDEF) win = window;
	var el = win.document.getElementById(id);
	if (el) el.innerHTML = htm.join('');
	else win.alert('cannot find id='+id);
}


var winpref = 'toolbar=0,status=0,scrollbars=1,resizable=1,width=700,height=500';
var winprefSmall = 'toolbar=0,status=0,scrollbars=1,resizable=1,width=300,height=400';

var winArr = new Array();

function writeWin(htm,win,wp)
{
        if (typeof win == UNDEF || !win || win.closed) {

        	if (typeof wp == UNDEF) wp = winpref;

		var win = window.open('','_blank',winpref);
		winArr.push(win);

		window.onbeforeunload = cleanupWin;
		window.onunload = cleanupWin;

	}
        var doc = win.document;
        doc.open();
        var buf = new Array();

        buf.push( 
	'<head>',
	'<link rel="stylesheet" type="text/css" href="http://beachwatchers.org/bw/island/vhdev/bw_style.css">',
	'<script>',
        '\nvar JS = opener;',

        '\n</script>',

        '</head>',
        '<body>'

        //'<div align=right><form name=F id=F>',

        //' <input name=B id=B type=button value=" CLOSE " onClick=JS.closeWin(window)>',
        //' </form>'
        //' </div>'
	
        );

	doc.write(buf.join(''));
	doc.write(htm.join(''));
	doc.close();

	return win;
}


function cleanupWin()
{
	for (var i=0; i<winArr.length; i++){
		var win = winArr[i];
		if (win && !win.closed) win.close();
	}
}


// ==================================================================
// FOR ON THE FLY CSS OR JS


// ========================
function loadjs(filename,win){
  if (typeof win == UNDEF) win  = window;
  var el=win.document.createElement('script')
  el.setAttribute("type","text/javascript")
  el.setAttribute("src", filename)
  JS.headAttach(win,el);
}
function loadcss(filename,win){
  if (typeof win == UNDEF) win  = window;
  var el=win.document.createElement("link")
  el.setAttribute("rel", "stylesheet")
  el.setAttribute("type", "text/css")
  el.setAttribute("href", filename)
  headAttach(win,el)
}
function headAttach(win,el)
{
 if (typeof win == UNDEF) win  = window;
 if (typeof el != UNDEF)
  win.document.getElementsByTagName("head")[0].appendChild(el)
 else win.alert('error attaching js or css to this window');
}


	
// ==================================================================
// FORM SUBMISSIONS ISSUES 

function disableEnterKey(e)
{
	// ref http://www.arraystudio.com/as-workshop/
	//		disable-form-submit-on-enter-keypress.html

	// usage <input type=text
	//	onKeyPres="return disableEenterKey(event)">

	var key;
	if (window.event)
		key = window.event.keyCode; //IE
	else
		key = e.which;	// firefox

	if (key == 13) return false;
	else return true;
}


