if (typeof wincheck == 'undefined') {
	if (window.top==window.self) {
		window.top.location.href='index.php';
	}
}

function countdown(thisinput,max) {
	if (thisinput.value.length<max) {
			document.getElementById(thisinput.id+'N').innerHTML=max-thisinput.value.length-1;
			if (thisinput.value.length>(max-12)) {
				document.getElementById(thisinput.id+'N').style.color='yellow';
			} else {
				document.getElementById(thisinput.id+'N').style.color='black';
			}
	} else {
		document.getElementById(thisinput.id+'N').style.color='rgb(180,60,60)'; 
		thisinput.value=thisinput.value.substring(0,max-1);
	}
}

function countup(thisinput,min) {
	if (thisinput.value.length<min) {
			document.getElementById(thisinput.id+'N').innerHTML=min-thisinput.value.length;
			if (thisinput.value.length>(min/2).toFixed(0)) {
				document.getElementById(thisinput.id+'N').style.color='yellow';
			} else {
				document.getElementById(thisinput.id+'N').style.color='rgb(180,60,60)';
			}
	} else {
		document.getElementById(thisinput.id+'N').innerHTML=min+'+ OK';
		document.getElementById(thisinput.id+'N').style.color='black'; 
	}
}

function base(thisinput,basetype) {
//	if (basetype=='m') {
//		document.getElementById('Description').disabled=true;
//		document.getElementById('frame').src='base7.php?name='+thisinput.value+'&type='+basetype;
//	} else 
	if (thisinput.checked || basetype=='m') {
		document.getElementById('Description').disabled=true;
		document.getElementById('frame').src='base7.php?name='+thisinput.value+'&type='+basetype;
	}
}
function append(basedesc) {
	dump=parent.document.getElementById('Description');
	dump.value+=basedesc;
	parent.countup(dump,2000);
	dump.disabled=false;
	dump.scrollTop=dump.scrollHeight;
}

// from user page
function delsame() {
	delset=new Array ('Delivery_address','Delivery_suburb','Delivery_postcode','Delivery_state','Delivery_phone');
	if (document.form.deltick.checked) {
		onoff=true; delcol='rgb(200,200,200)';
	} else {
		onoff=false; delcol='rgb(0,0,0)';
	}
	x=0; while (x<delset.length) {
		document.getElementById(delset[x]).disabled=onoff;
		if (onoff) {document.getElementById(delset[x]).value='';}
		document.getElementById(delset[x]+'_desc').style.color=delcol;
		x++;
	}
}

function edituserval() {
	df=document.form;
	if (df.Email.value.length<6 || df.Email.value.lastIndexOf('@')<2 || (df.Email.value.length-df.Email.value.lastIndexOf('@'))<6 || (df.Email.value.length-df.Email.value.lastIndexOf('.'))<3) {alert('Please enter your email address correctly.'); df.Email.focus(); return false;};
	if (df.elements[1].value=='') {alert('Please enter your Master Locksmiths Licence Number.'); df.elements[1].focus(); return false;};
	if (df.Level) {
		if (df.Level.value=='') {alert('Please select the user`s access level.'); df.Level.focus(); return false;};
	}
	if (df.Title.value=='') {alert('Please select your title.'); df.Title.focus(); return false;};
	if (df.Name.value.length<2) {alert('Please enter your name.'); df.Name.focus(); return false;} else {df.Name.value=df.Name.value.toLowerCase().replace(/\b(\w)/g,
function (w, p1) {return p1.toUpperCase(); });}; //capitalise
	if (df.Surname.value.length<2) {alert('Please enter your surname.'); df.Surname.focus(); return false;} else {df.Surname.value=df.Surname.value.toLowerCase().replace(/\b(\w)/g,
function (w, p1) {return p1.toUpperCase(); });}; //capitalise
	if (df.Business.value.length<3) {alert('Please enter your business name.'); df.Business.focus(); return false;} else {df.Business.value=df.Business.value.replace(/\b(\w)/g,
function (w, p1) {return p1.toUpperCase(); });}; //capitalise
//	if (df.Nature.value.length<15 && (df.Nature.value.indexOf(' ')<0 && df.Nature.value.indexOf(',')<0 && df.Nature.value.indexOf('-')<0 && df.Nature.value.indexOf('/')<0)) {alert('Please use A FEW WORDS to describe the nature of your business.'); df.Nature.focus(); return false;} else {df.Nature.value=df.Nature.value.substring(0,1).toUpperCase()+df.Nature.value.substring(1).toLowerCase();}; // cap first letter
//	if (df.Nature.value=='') {alert('Please select the nature of your business.'); df.Nature.focus(); return false;}
// add up the interested_in value
/*	df.Interested_in.value=''; // needed to clear incase of re-validating
	iix=0; while (document.getElementById('Interested_in'+iix)) {
		if (df.Interested_in.value=='') {icomma='';} else {icomma=',';}; 
		if (document.getElementById('Interested_in'+iix).checked) {df.Interested_in.value=df.Interested_in.value+icomma+document.getElementById('Interested_in'+iix).value;};
		iix++;
	}
	if (df.Other.value!='') {df.Interested_in.value=df.Interested_in.value+icomma+'Other: '+df.Other.value;}
// check the interested_in value
	if (df.Interested_in.value=='') {alert('Please select what type of products you are interested in.'); df.Interested_in0.focus(); return false;} */
	if (df.Referred_by.value=='') {alert('Please select how you heard about us.'); df.Referred_by.focus(); return false;}
	if (df.Website.value!='') {
		df.Website.value=df.Website.value.replace('http://','');
	}
	df.ABN.value=df.ABN.value.replace(/\D/g,'');
if (df.Office_state.value!='NZ') {
	if (df.ABN.value.length!=11) {alert('Please enter your ABN correctly.'); df.ABN.focus(); return false;} else {df.ABN.value=df.ABN.value.substr(0,2)+' '+df.ABN.value.substr(2,3)+' '+df.ABN.value.substr(5,3)+' '+df.ABN.value.substr(8,3);};
}
	if (df.Office_address.value.length<7) {alert('Please enter your Office address.'); df.Office_address.focus(); return false;} else {df.Office_address.value=df.Office_address.value.replace(/\b(\w)/g,
function (w, p1) {return p1.toUpperCase(); });}; //capitalise
	if (df.Office_suburb.value.length<3) {alert('Please enter your Office address suburb.'); df.Office_suburb.focus(); return false;} else {df.Office_suburb.value=df.Office_suburb.value.toUpperCase();}; // caps
	df.Office_postcode.value=df.Office_postcode.value.replace(/\D/g,'');
	if (df.Office_postcode.value.length!=4) {alert('Please enter 4-digit Office address postcode.'); df.Office_postcode.focus(); return false;};
	if (df.Office_state.value=='') {alert('Please select your Office address state.'); df.Office_state.focus(); return false;};
	df.Office_phone.value=df.Office_phone.value.replace(/\D/g,'');
	df.Office_mobile.value=df.Office_mobile.value.replace(/\D/g,'');
	if (df.Office_phone.value!='') {
		if (
			(df.Office_phone.value.length!=9 && df.Office_phone.value.length!=10 && df.Office_state.value=='NZ') || 
			(df.Office_phone.value.length!=10 && df.Office_state.value!='NZ') || 
			(df.Office_phone.value.substr(0,1)!='0' && df.Office_phone.value.substr(0,1)!='1')
		) {alert('Please enter your office phone number correctly (including area code).\n\nIf there is no office phone number available leave it blank.'); df.Office_phone.focus(); return false;} else {if(df.Office_phone.value.length==9){mid=3,last=5;} else {mid=4,last=6;};df.Office_phone.value=df.Office_phone.value.substr(0,2)+' '+df.Office_phone.value.substr(2,mid)+' '+df.Office_phone.value.substr(last);};
	}
	if (df.Office_mobile.value!='') { ///XXX here
		if (
			(df.Office_mobile.value.length!=9 && df.Office_mobile.value.length!=10 && df.Office_state.value=='NZ') || 
			(df.Office_mobile.value.length!=10 && df.Office_state.value!='NZ') || 
			(df.Office_mobile.value.substr(0,2)!='04' && df.Office_state.value!='NZ') || 
			(df.Office_mobile.value.substr(0,2)!='02' && df.Office_state.value=='NZ')
		) {alert('Please enter your mobile number correctly (including area code).\n\nIf there is no mobile number available leave it blank.'); df.Office_mobile.focus(); return false;} else {if(df.Office_mobile.value.length==9){first=3;mid=3,last=6;} else {first=4;mid=4;last=7;};df.Office_mobile.value=df.Office_mobile.value.substr(0,first)+' '+df.Office_mobile.value.substr(mid,3)+' '+df.Office_mobile.value.substr(last);};
	}
	if (df.Office_phone.value=='' && df.Office_mobile.value=='') {alert('Please enter either an office phone or office mobile number (including area code).'); df.Office_phone.focus(); return false;};
	if (df.Office_fax.value!='') {
		df.Office_fax.value=df.Office_fax.value.replace(/\D/g,''); 
		if (
			(df.Office_fax.value.length!=9 && df.Office_fax.value.length!=10 && df.Office_state.value=='NZ') || 
			(df.Office_fax.value.length!=10 && df.Office_state.value!='NZ') || 
			(df.Office_fax.value.substr(0,1)!='0' && df.Office_fax.value.substr(0,1)!='1')
		) {alert('Please enter your fax number correctly (including area code).\n\nIf there is no fax number available leave it blank.'); df.Office_fax.focus(); return false;} else {if(df.Office_fax.value.length==9){mid=3,last=5;} else {mid=4,last=6;};df.Office_fax.value=df.Office_fax.value.substr(0,2)+' '+df.Office_fax.value.substr(2,mid)+' '+df.Office_fax.value.substr(last);};
	};
	if (document.getElementById('deltick').checked) { // copy office details
		df.Delivery_address.value=df.Office_address.value; df.Delivery_suburb.value=df.Office_suburb.value; df.Delivery_postcode.value=df.Office_postcode.value; df.Delivery_state.value=df.Office_state.value;
		if (df.Office_mobile.value!='') {df.Delivery_phone.value=df.Office_mobile.value} else {df.Delivery_phone.value=df.Office_phone.value};
		x=0; while (x<delset.length) {// enable so passes values
			document.getElementById(delset[x]).disabled=false;
			x++;
		}
	} else { // validate
		if (df.Delivery_address.value.length<7) {alert('Please enter your Delivery address.\n\nYou can change delivery address at the time of each order if necessary.'); df.Delivery_address.focus(); return false;} else {df.Delivery_address.value=df.Delivery_address.value.replace(/\b(\w)/g,
	function (w, p1) {return p1.toUpperCase(); });}; //capitalise
		if (df.Delivery_suburb.value.length<3) {alert('Please enter your Delivery address suburb.\n\nYou can change delivery address at the time of each order if necessary.'); df.Delivery_suburb.focus(); return false;} else {df.Delivery_suburb.value=df.Delivery_suburb.value.toUpperCase();};
		df.Delivery_postcode.value=df.Delivery_postcode.value.replace(/\D/g,'');
		if (df.Delivery_postcode.value.length!=4) {alert('Please enter 4-digit Delivery address postcode.\n\nYou can change delivery address at the time of each order if necessary.'); df.Delivery_postcode.focus(); return false;};
		if (df.Delivery_state.value=='') {alert('Please select your Delivery address state.\n\nYou can change delivery address at the time of each order if necessary.'); df.Delivery_state.focus(); return false;};
		df.Delivery_phone.value=df.Delivery_phone.value.replace(/\D/g,'');
		if (
			(df.Delivery_phone.value.length!=9 && df.Office_phone.value.length!=10 && df.Office_state.value=='NZ') || 
			(df.Delivery_phone.value.length!=10 && df.Delivery_phone.value!='NZ') || 
			(df.Delivery_phone.value.substr(0,1)!='0' && df.Delivery_phone.value.substr(0,1)!='1')
		) {alert('Please enter your Delivery phone number correctly (including area code).\n\nMobile or site phone is acceptable.'); df.Delivery_phone.focus(); return false;} else {if(df.Delivery_phone.value.length==9){mid=3,last=5;} else {mid=4,last=6;};df.Delivery_phone.value=df.Delivery_phone.value.substr(0,2)+' '+df.Delivery_phone.value.substr(2,mid)+' '+df.Delivery_phone.value.substr(last);};
	}
	return true;
}

function editlogval() {
	df=document.loginForm;
	if (df.LogEmail.value.length<6 || df.LogEmail.value.lastIndexOf('@')<2 || (df.LogEmail.value.length-df.LogEmail.value.lastIndexOf('@'))<6 || (df.LogEmail.value.length-df.LogEmail.value.lastIndexOf('.'))<3) {alert('Please enter your email address correctly.'); df.LogEmail.focus(); return false;};
	if (df.elements[1].value=='') {alert('Please enter your Master Locksmiths Licence Number.'); df.elements[1].focus(); return false;};
	return true;
}



// MASSIVE JS_QUICKTAGS SCRIPTING... EDITED DOWN BY ME
var edButtons = new Array();
var edLinks = new Array();
var edOpenTags = new Array();

function edButton(id, display, tagStart, tagEnd, access, open) {
	this.id = id;				// used to name the toolbar button
	this.display = display;		// label on button
	this.tagStart = tagStart; 	// open tag
	this.tagEnd = tagEnd;		// close tag
	this.access = access;			// set to -1 if tag does not need to be closed
	this.open = open;			// set to -1 if tag does not need to be closed
}

edButtons.push(
	new edButton(
		'ed_bold'
		,'BOLD'
		,' [BOLD] '
		,'[/BOLD]'
		,'b'
	)
);

edButtons.push(
	new edButton(
		'ed_italic'
		,'ITALIC'
		,' [ITALIC] '
		,'[/ITALIC]'
		,'i'
	)
);

edButtons.push(
	new edButton(
		'ed_strike'
		,'CROSS'
		,' [CROSS] '
		,'[/CROSS]'
	)
);

edButtons.push(
	new edButton(
		'ed_li'
		,'BULLET'
		,' [BULLET] '
		,'[/BULLET]'
		,'p'
	)
);

edButtons.push(
	new edButton(
		'ed_h1'
		,'XLRG'
		,' [XLRG] '
		,'[/XLRG]'
		,'1'
	)
);

edButtons.push(
	new edButton(
		'ed_h3'
		,'LRG'
		,' [LRG] '
		,'[/LRG]'
		,'3'
	)
);

edButtons.push(
	new edButton(
		'ed_link'
		,'LINK'
		,''
		,'[/LINK]'
		,'a'
	)
); // special case

edButtons.push(
	new edButton(
		'ed_img'
		,'IMAGE'
		,''
		,''
		,'m'
		,-1
	)
); // special case

edButtons.push(
	new edButton(
		'ed_L'
		,'LEFT'
		,' [LEFT] '
		,'[/LEFT]\n'
		,'l'
	)
);

edButtons.push(
	new edButton(
		'ed_C'
		,'CENTER'
		,' [CENTER] '
		,'[/CENTER]\n'
		,'c'
	)
);

edButtons.push(
	new edButton(
		'ed_R'
		,'RIGHT'
		,' [RIGHT] '
		,'[/RIGHT]\n'
		,'r'
	)
);

edButtons.push(
	new edButton(
		'ed_BLUE'
		,'BLUE'
		,' [BLUE] '
		,'[/BLUE]'
		,-1
	)
);

edButtons.push(
	new edButton(
		'ed_RED'
		,'RED'
		,' [RED] '
		,'[/RED]'
		,-1
	)
);

edButtons.push(
	new edButton(
		'ed_GREEN'
		,'GREEN'
		,' [GREEN] '
		,'[/GREEN]'
		,-1
	)
);

edButtons.push(
	new edButton(
		'ed_ORANGE'
		,'ORANGE'
		,' [ORANGE] '
		,'[/ORANGE]'
		,-1
	)
);

edButtons.push(
	new edButton(
		'ed_D_GREY'
		,'D. GREY'
		,' [DGREY] '
		,'[/DGREY]'
		,-1
	)
);

edButtons.push(
	new edButton(
		'ed_D_GREY'
		,'GREY'
		,' [GREY] '
		,'[/GREY]'
		,-1
	)
);

edButtons.push(
	new edButton(
		'ed_L_GREY'
		,'L. GREY'
		,' [LGREY] '
		,'[/LGREY]'
		,-1
	)
);

edButtons.push(
	new edButton(
		'ed_BLUE_BOX'
		,'BLUE BOX'
		,' [BLUE_BOX] '
		,'[/BLUE_BOX]'
		,-1
	)
);

edButtons.push(
	new edButton(
		'ed_GREY_BOX'
		,'GREY BOX'
		,' [GREY_BOX] '
		,'[/GREY_BOX]'
		,-1
	)
);

function edLink(display, TITLE, URL, newWin) {
	this.display = display;
	this.URL = URL;
	this.TITLE = TITLE;
	if (!newWin) {
		newWin = 0;
	}
	this.newWin = newWin;
}

edLinks[edLinks.length] = new edLink('Surface Industries Home Page'
									,'Surface Industries'
                                    ,'www.surfaceindustries.com.au'
                                    );

function edShowButton(button, i) {
	if (button.access) {
		var accesskey = ' accesskey = "' + button.access + '"'
	}
	else {
		var accesskey = '';
	}
	switch (button.id) {
		case 'ed_img':
			document.write('<input type="button" id="' + button.id + '" ' + accesskey + ' class="ed_button" onclick="edInsertImage(edCanvas);" value="' + button.display + '" />');
			break;
		case 'ed_link':
			document.write('<input type="button" id="' + button.id + '" ' + accesskey + ' class="ed_button" onclick="edInsertLink(edCanvas, ' + i + ');" value="' + button.display + '" />');
			break;
		case 'ed_link':
			document.write('<input type="button" id="' + button.id + '" ' + accesskey + ' class="ed_button" onclick="edInsertLink(edCanvas, ' + i + ');" value="' + button.display + '" />');
			break;
		case 'ed_li':
			document.write('<input type="button" id="' + button.id + '" ' + accesskey + ' class="ed_button" onclick="edInsertTag(edCanvas, ' + i + ');" value="' + button.display + '" style="width: 44px;" />');
			break;
		case 'ed_strike':
			document.write('<input type="button" id="' + button.id + '" ' + accesskey + ' class="ed_button" onclick="edInsertTag(edCanvas, ' + i + ');" value="' + button.display + '" style="width: 44px;" />');
			break;
		default:
			document.write('<input type="button" id="' + button.id + '" ' + accesskey + ' class="ed_button" onclick="edInsertTag(edCanvas, ' + i + ');" value="' + button.display + '" />');
			break;
	}
}

function edShowLinks() {
	var tempStr = '<select class="ql" onchange="edQuickLink(this.options[this.selectedIndex].value, this);"><option class="ed" value="-1" selected>(Quick Links)</option>';
	for (i = 0; i < edLinks.length; i++) {
		tempStr += '<option class="ed" value="' + i + '">' + edLinks[i].display + '</option>';
	}
	tempStr += '</select>';
	document.write(tempStr);
}

function edAddTag(button) {
	if (edButtons[button].tagEnd != '') {
		edOpenTags[edOpenTags.length] = button;
		document.getElementById(edButtons[button].id).value = '/' + document.getElementById(edButtons[button].id).value;
	}
}

function edRemoveTag(button) {
	for (i = 0; i < edOpenTags.length; i++) {
		if (edOpenTags[i] == button) {
			edOpenTags.splice(i, 1);
			document.getElementById(edButtons[button].id).value = 	document.getElementById(edButtons[button].id).value.replace('/', '');
		}
	}
}

function edCheckOpenTags(button) {
	var tag = 0;
	for (i = 0; i < edOpenTags.length; i++) {
		if (edOpenTags[i] == button) {
			tag++;
		}
	}
	if (tag > 0) {
		return true; // tag found
	}
	else {
		return false; // tag not found
	}
}	

function edCloseAllTags() {
	var count = edOpenTags.length;
	for (o = 0; o < count; o++) {
		edInsertTag(edCanvas, edOpenTags[edOpenTags.length - 1]);
	}
}

function edQuickLink(i, thisSelect) {
	edSaveUndo(edCanvas); // this is my function that saves an undo before inserting
	if (i > -1) {
		var newWin = '';
		if (edLinks[i].newWin == 1) {
			newWin = ' target="_blank"';
		}
		var tempStr = ' [LINK--' + edLinks[i].TITLE + '--http://' + edLinks[i].URL + '] ' 
		            + edLinks[i].display
		            + '[/LINK]';
		thisSelect.selectedIndex = 0;
		edInsertContent(edCanvas, tempStr);
		rp(); // this is my function that refreshes the preview
	}
	else {
		thisSelect.selectedIndex = 0;
	}
}

function edSpell(myField) {
	var word = '';
	if (document.selection) {
		myField.focus();
	    var sel = document.selection.createRange();
		if (sel.text.length > 0) {
			word = sel.text;
		}
	}
	else if (myField.selectionStart || myField.selectionStart == '0') {
		var startPos = myField.selectionStart;
		var endPos = myField.selectionEnd;
		if (startPos != endPos) {
			word = myField.value.substring(startPos, endPos);
		}
	}
	if (word == '') {
		word = prompt('Enter a word to look up:', '');
	}
	if (word != '') {
		window.open('http://www.answers.com/' + escape(word));
	}
}

function edToolbar() {
	document.write('<div id="ed_toolbar" style="clear: both;">');
	for (i = 0; i < edButtons.length; i++) {
		edShowButton(edButtons[i], i);
	}
	document.write(
		'<input type="button" id="ed_close" class="ed_button" onclick="edCloseAllTags();" value="Close Any Open" />'
		+ '<input type="button" id="ed_spell" class="ed_button" onclick="edSpell(edCanvas);" value="Spell word" />'
		+ '<input type="button" id="ed_undo" class="ed_button" onclick="edUndo(edCanvas);" value="Undo" />'
	);
	edShowLinks();
	document.write(
		'</div>'
	);
}

function edSaveUndo(myField) {
	previous=myField.value;
}

function edUndo(myField) {
	if (typeof previous!='undefined') {
		current=myField.value;
		myField.value=previous;
		previous=current;
		myField.focus();
		rp();
	}
}

// insertion code

function edInsertTag(myField, i) {
	edSaveUndo(myField); // this is my function that saves an undo before inserting
	//IE support
	if (document.selection) {
		myField.focus();
	    sel = document.selection.createRange();
		if (sel.text.length > 0) {
			sel.text = edButtons[i].tagStart + sel.text + edButtons[i].tagEnd;
		}
		else {
			if (!edCheckOpenTags(i) || edButtons[i].tagEnd == '') {
				sel.text = edButtons[i].tagStart;
				edAddTag(i);
			}
			else {
				sel.text = edButtons[i].tagEnd;
				edRemoveTag(i);
			}
		}
		myField.focus();
	}
	//MOZILLA/NETSCAPE support
	else if (myField.selectionStart || myField.selectionStart == '0') {
		var startPos = myField.selectionStart;
		var endPos = myField.selectionEnd;
		var cursorPos = endPos;
		var scrollTop = myField.scrollTop;
		if (startPos != endPos) {
			myField.value = myField.value.substring(0, startPos)
			              + edButtons[i].tagStart
			              + myField.value.substring(startPos, endPos) 
			              + edButtons[i].tagEnd
			              + myField.value.substring(endPos, myField.value.length);
			cursorPos += edButtons[i].tagStart.length + edButtons[i].tagEnd.length;
		}
		else {
			if (!edCheckOpenTags(i) || edButtons[i].tagEnd == '') {
				myField.value = myField.value.substring(0, startPos) 
				              + edButtons[i].tagStart
				              + myField.value.substring(endPos, myField.value.length);
				edAddTag(i);
				cursorPos = startPos + edButtons[i].tagStart.length;
			}
			else {
				myField.value = myField.value.substring(0, startPos) 
				              + edButtons[i].tagEnd
				              + myField.value.substring(endPos, myField.value.length);
				edRemoveTag(i);
				cursorPos = startPos + edButtons[i].tagEnd.length;
			}
		}
		myField.focus();
		myField.selectionStart = cursorPos;
		myField.selectionEnd = cursorPos;
		myField.scrollTop = scrollTop;
	}
	else {
		if (!edCheckOpenTags(i) || edButtons[i].tagEnd == '') {
			myField.value += edButtons[i].tagStart;
			edAddTag(i);
		}
		else {
			myField.value += edButtons[i].tagEnd;
			edRemoveTag(i);
		}
		myField.focus();
	}
	rp(); // this is my function that refreshes the preview
}

function edInsertContent(myField, myValue) {
	//IE support
	if (document.selection) {
		myField.focus();
		sel = document.selection.createRange();
		sel.text = myValue;
		myField.focus();
	}
	//MOZILLA/NETSCAPE support
	else if (myField.selectionStart || myField.selectionStart == '0') {
		var startPos = myField.selectionStart;
		var endPos = myField.selectionEnd;
		var scrollTop = myField.scrollTop;
		myField.value = myField.value.substring(0, startPos)
		              + myValue 
                      + myField.value.substring(endPos, myField.value.length);
		myField.focus();
		myField.selectionStart = startPos + myValue.length;
		myField.selectionEnd = startPos + myValue.length;
		myField.scrollTop = scrollTop;
	} else {
		myField.value += myValue;
		myField.focus();
	}
}

function edInsertLink(myField, i, defaultValue) {
	if (!defaultValue) {
		defaultValue = 'http://';
	}
	if (!edCheckOpenTags(i)) {
		var URL = prompt('Enter the web page address (you can copy/paste from address bar to here)' ,defaultValue);
		if (URL) {var title = prompt('Enter a short description of the linked page ',' ');};
		if (URL && title) {
			edButtons[i].tagStart = ' [LINK--' + title + '--' + URL + '] ';
			edInsertTag(myField, i);
		}
	}
	else {
		edInsertTag(myField, i);
	}
}

function edInsertImage(myField) {
	webimage=confirm('OK to use an image already on the web?\n\n(Click Cancel to upload a new image)');
	if (webimage) {
		var myValue = prompt('Enter the URL of the image', 'http://');
		if (myValue) {var title = prompt('Enter a short description of the image', ' ');};
		if (title) {var Float = prompt('Enter left, right, center or nothing for image alignment', ' ');};
		if (myValue && title && Float) {
			edSaveUndo(edCanvas); // save the undo
			myValue = ' [IMAGE--' 
					+ title + '--'
					+ Float.toLowerCase() + '--'
					+ myValue 
					+ '] ';
			edInsertContent(myField, myValue);
			rp(); // refesh the preview
		}
	} else { // set and upload a new image
		var myValue = 'http://210.56.82.23/newsletters/'+window.previewframe.nextimage+'.jpg';
		var title = prompt('Enter a short description of the image', ' ');
		if (title) {var Float = prompt('Enter left, right, center or nothing for image alignment', ' ');};
		if (title && Float) {
			edSaveUndo(edCanvas); // save the undo
			myValue = ' [IMAGE--' 
					+ title + '--'
					+ Float.toLowerCase() + '--'
					+ myValue 
					+ '] ';
			edInsertContent(myField, myValue);
			window.previewframe.scroll(0,500); window.previewframe.document.form.rx.focus();
			// rp(); // refesh the preview when they submit
		}
	}
}

function countInstances(string, substr) {
	var count = string.split(substr);
	return count.length - 1;
}

