function checksize(pictocheck,sizetocheck)
{
	if (pictocheck.width > sizetocheck) pictocheck.width = sizetocheck;
	if (pictocheck.height > sizetocheck) pictocheck.height = sizetocheck;
}

function InsertBB(elemId, open, end, inspoint)
	 {   
		var tArea = document.getElementById(elemId);
		var isIE = (document.all)? true : false;
		var open = (open)? open : "";
		var end = (end)? end : "";
		if(isIE)
		{
			tArea.focus();
			var curSelect = document.selection.createRange();
			copiedtext=curSelect.text;
			curSelect.text = open + copiedtext + end;
			IEWorkaround(elemId);
			curpos=tArea.selectionEnd - countInstances(tArea.value.substr(0,tArea.selectionEnd),"\r"); //glitch fix - un-counts cr's

			if (inspoint)    //after opening tag (before closing bracket), at property
			{
				setCaretPosition(elemId,curpos-end.length-copiedtext.length-1);
			}
			else  			//between tags, at end of existing text
			{
				setCaretPosition(elemId,curpos-end.length);
			}

		}
		else if(!isIE && typeof tArea.selectionStart != "undefined")
		{    
			curpos=0;
			var selStart = tArea.value.substr(0, tArea.selectionStart);   
			var selEnd = tArea.value.substr(tArea.selectionEnd, tArea.value.length);   
			var copiedtext = tArea.value.replace(selStart, '').replace(selEnd, '');      
			tArea.value = selStart + open + copiedtext;
			curpos=tArea.value.length;
			tArea.value += end + selEnd;   

			if (inspoint)
			{
				setCaretPosition(elemId,curpos-copiedtext.length-1);
			}
			else
			{
				setCaretPosition(elemId,curpos);
			}
		}
		else
		{     
			tArea.value += open + end;  
		} 

	
	} 
	 
	function IEWorkaround(elemId)	//emulates selectionStart and selectionEnd in IE
	{
		var element = document.getElementById(elemId);
		if( document.selection )
		{
			var range = document.selection.createRange();
			var stored_range = range.duplicate();
			stored_range.moveToElementText( element );
			stored_range.setEndPoint( 'EndToEnd', range );
			element.selectionStart = stored_range.text.length - range.text.length;
			element.selectionEnd = element.selectionStart + range.text.length;
		}
	}


	function setCaretPosition(elemId, caretPos)	//positions the cursor in a textbox
	{

		var elem = document.getElementById(elemId);

		if(elem != null)
		{
			if(elem.createTextRange)  //ie
			{
				var range = elem.createTextRange();
				range.move('character', caretPos);
				range.select();
			}
			else
			{
				if(elem.selectionStart)		//moz
				{
					elem.focus();
					elem.setSelectionRange(caretPos, caretPos);
				}
				else
					elem.focus();
			}
		}
	}
	function countInstances(string, word)
	{
		var substrings = string.split(word);
		return substrings.length - 1;
	}
	function IBB1(elemIdNum,tag,inspoint)
	{
		var tagequal = (inspoint)? "=":"";
		var elemId="ppost"+elemIdNum;
		InsertBB(elemId, '['+tag+tagequal+']', '[/'+tag+']',inspoint)
	}