//=================== BBcode einfügen ===================
function addtext( tag, color, a_form, a_textarea, a_opener ){
 if(a_opener){
  textarea = opener.window.document.forms[a_form].elements[a_textarea];
 }
 else{
  textarea = window.document.forms[a_form].elements[a_textarea];
 }
 var start = 0;
 var end   = 0;
 var insText = '';
 var mode = 0;
 var insTextNull = 0;
 var aTag = '';
 var eTag = '';
 var anweisung = '';

 if(typeof textarea.selectionStart != 'undefined'){
  start = textarea.selectionStart;
  end = textarea.selectionEnd;
  insText = textarea.value.substring(start, end);
 }
 else if(typeof document.selection != 'undefined'){
  textarea.focus();
  var range = '';
  if(a_opener)
   range = opener.document.selection.createRange();
  else{
   range = document.selection.createRange();
  }
  insText = range.text;
  mode = 1;
 }
 else{
  mode = 2;
 }

 if( tag == 'url' ){
  var urlurl = prompt( 'Geben Sie bitte die URL des Links ein.' , "http://");
  if(!insText){
   var urlname = prompt( 'Geben Sie bitte den Namen des Links ein.' );
  }
  if(urlurl && urlname){
   aTag = '[url="' + urlurl +'"]' + urlname + '[/url]';
  }
  else if(urlurl && insText){
   aTag = '[url="' + urlurl +'"]' + insText + '[/url]';
  }
  else{
   aTag = insText;
  }
  eTag = '';
  insText = '';
  insTextNull = 1;
 }
 else if( tag == 'mail' ){
  var urlurl = prompt( 'Geben Sie bitte die Adresse des Empfängers ein.' );
  if(!insText){
   var urlname = prompt( 'Geben Sie bitte den Namen des Links ein.' );
  }
  if(urlurl && urlname){
   aTag = '[url="mailto:' + urlurl +'"]' + urlname + '[/url]';
  }
  else if(urlurl && insText){
   aTag = '[url="mailto:' + urlurl +'"]' + insText + '[/url]';
  }
  else{
   aTag = insText;
  }
  eTag = '';
  insText = '';
  insTextNull = 1;
 }
 else if( tag == 'img' ){
  aTag = '[img]'+ color + '[/img]';
  eTag = '';
  anweisung='';
  insTextNull=1;
 }
 else if( tag == 'b' ){
  aTag = '[b]';
  eTag = '[/b]';
  anweisung = 'Geben Sie bitte denn fett geschriebenen Text ein:';
 }
 else if( tag == 'i' ){
  aTag = '[i]';
  eTag = '[/i]';
  anweisung = 'Geben Sie bitte denn kursiv geschriebenen Text ein:';
 }
 else if( tag == 'u' ){
  aTag = '[u]';
  eTag = '[/u]';
  anweisung = 'Geben Sie bitte denn unterstrichenen Text ein:';
 }
 else if( tag == 'size' ){
  aTag = '[' + color + ']';
  eTag = '[/' + color + ']';
  anweisung = 'Geben Sie den größenveränderten Text ein:';
/*  if(a_opener){
   opener.window.document.forms[a_form].elements['size'].value = 0;
  }
  else{*/
   window.document.forms[a_form].elements['size'].value = 0;
//  }
 }
 else if( tag == 'color' ){
  aTag = '[' + color + ']';
  eTag = '[/' + color + ']';
  anweisung = 'Geben Sie den gefärbten Text ein:';
/*  if(a_opener){
   opener.window.document.forms[a_form].elements['color'].value = 0;
  }
  else{*/
   window.document.forms[a_form].elements['color'].value = 0;
//  }
 }
 else{
  aTag = insText + tag;
  eTag = '';
  insText = '';
  insTextNull = 1;
 }

 if( mode == 0 ){
  insert( aTag, eTag, insText, anweisung, start, end, 0, insTextNull, a_form, a_textarea, a_opener );
 }
 else if( mode == 1 ){
  insert( aTag, eTag, insText, anweisung, range, '', 1, insTextNull, a_form, a_textarea, a_opener );
 }
 else{
  b_old = prompt( anweisung );
  textarea.value += aTag + b_old + eTag;
 }
}
function insert( aTag, eTag, insText, anweisung, start, end, mode, insTextNull, a_form,  a_textarea, a_opener ){
 if(a_opener){
  textarea = opener.window.document.forms[a_form].elements[a_textarea];
 }
 else{
  textarea = window.document.forms[a_form].elements[a_textarea];
 }
 if( mode == 0 ){
  if((insText=='') && (insTextNull!=1) && anweisung){
   insText = prompt( anweisung );
  }
  if(((insText) && (insText!='null')) || (insTextNull==1)){
   textarea.value = textarea.value.substr(0, start) + aTag + insText + eTag + textarea.value.substr(end);
  }
 }
 else{
  textarea.focus();
  if( (insText == '') && (insTextNull!=1) ){
   insText = prompt( anweisung );
   if((insText) && insText!='null'){
    start.text = aTag + insText + eTag;
   }
  }
  else{
   start.text = aTag + insText + eTag;
   start.select();
  }
 }
 if(a_opener){
  opener.window.document.forms[a_form].elements[a_textarea].focus();
 }
 else{
  window.document.forms[a_form].elements[a_textarea].focus();
 }
}

function selectContent( element ) {
 element.select();
}
