function asetaTekstinMuokkaus(toiminto,kohde){
	if(document.getElementById(kohde)){
	  	switch(toiminto){
	    	case 'b':
	    		insertAtCursor(document.getElementById(kohde),'[b]','[/b]');
	    	break;
	    	
	    	case 'i':
	    		insertAtCursor(document.getElementById(kohde),'[i]','[/i]');
	    	break;
	    	
	    	case 'url':
	    		insertAtCursor(document.getElementById(kohde),'[url]','[/url]');	    	
	    	break;

	    	case 'u':
	    		insertAtCursor(document.getElementById(kohde),'[u]','[/u]');
	    	break;
		}//end switch
	}//end if
}//end function


function insertAtCursor(myField, alku, loppu) {
	//IE support
	if (document.selection) {
		myField.focus();
		sel = document.selection.createRange();
		
		// The current selection
		var range = document.selection.createRange();
		// We'll use this as a 'dummy'
		var stored_range = range.duplicate();
		// Select all text
		stored_range.moveToElementText( myField );
		// Now move 'dummy' end point to end point of original range
		stored_range.setEndPoint( 'EndToEnd', range );
		// Now we can calculate start and end points
		myField.selectionStart = stored_range.text.length - range.text.length;
		myField.selectionEnd = myField.selectionStart + range.text.length;

		var startPos = myField.selectionStart;
		var endPos = myField.selectionEnd;

		myField.value = myField.value.substring(0, startPos)
		+ alku
		+ myField.value.substring(startPos, endPos)
		+ loppu
		+ myField.value.substring(endPos, myField.value.length);


		var paikka = endPos + alku.length + loppu.length;

		var str = myField.value.substring(0, paikka);

		var myArray = str.split('\n');

        var range = myField.createTextRange();
        range.move('character', paikka - myArray.length+1);
        range.select();

	}//end if
	
	//MOZILLA/NETSCAPE support
	else if (myField.selectionStart || myField.selectionStart == '0') {		
		var startPos = myField.selectionStart;
		var endPos = myField.selectionEnd;

		var scrollPos = myField.scrollTop;

		myField.value = myField.value.substring(0, startPos)
		+ alku
		+ myField.value.substring(startPos, endPos)
		+ loppu
		+ myField.value.substring(endPos, myField.value.length);
	  	
		var paikka = endPos + alku.length + loppu.length;	  	

		myField.focus();
		myField.setSelectionRange(paikka,paikka);	
		
		myField.scrollTop = scrollPos;	
       
	} else {
		myField.value += myValue;
	}//end if

}//end function

