/*
 ########################################################################
#                                                         #
#                          BBCode v2                                #
#            Copyright 2008 by stibe-productions.ch                #
#                                                                        #
 ########################################################################
*/
// function addRow() ** this adds a new row to the table, containing mapname, mapresult_home, mapresult_opponent

function addRow(action)

{

   var theAction = action;

  var table = document.getElementById('maplist');

  var theRows = table.rows.length;

  var inkrement = theRows;

  var row = table.insertRow(theRows);

   

   // gibt nen text wie "map #1" aus

   var cell0 = row.insertCell(0);

   var textNode = document.createTextNode('map #' + inkrement);

   if(theAction=='edit') {

      var ele0 = document.createElement('input');

         ele0.setAttribute('type', 'hidden');

         ele0.setAttribute('name', 'map_id[]');

         ele0.setAttribute('value', inkrement);

      cell0.appendChild(ele0);

   }

   cell0.appendChild(textNode);

   // mapname

  var cell1 = row.insertCell(1);

  var ele1 = document.createElement('input');

      ele1.setAttribute('type', 'text');

      ele1.setAttribute('name', 'map_name[]');

      ele1.setAttribute('id', 'map_name_' + inkrement);

      ele1.setAttribute('size', '35');

      ele1.className='form_off';

  cell1.appendChild(ele1);

   // results: home

  var cell2 = row.insertCell(2);

  var ele2 = document.createElement('input');

      ele2.setAttribute('type', 'text');

      ele2.setAttribute('name', 'map_result_home[]');

      ele2.setAttribute('id', 'map_result_home_' + inkrement);

      ele2.setAttribute('size', '3');

      ele2.className='form_off';

   cell2.appendChild(ele2);

   // results: opponent

   var cell3 = row.insertCell(3);

   var ele3 = document.createElement('input');

      ele3.setAttribute('type', 'text');

      ele3.setAttribute('name', 'map_result_opp[]');

      ele3.setAttribute('id', 'map_result_opp_' + inkrement);

      ele3.setAttribute('size', '3');

      ele3.className='form_off';

   cell3.appendChild(ele3);

   // create delete-selection for edit-function

   if(theAction=='edit') {

      var cell4 = row.insertCell(4);

      var ele4 = document.createElement('input');

         ele4.setAttribute('type', 'checkbox');

         ele4.setAttribute('name', 'delete[]');

         ele4.setAttribute('value', inkrement);

         ele4.className='form_off';

      cell4.appendChild(ele4);

   } else {

      var cell4 = row.insertCell(4);

   }

}



// function removeRow() ** removes the last row of a table

function removeRow()

{

  var table = document.getElementById('maplist');

  var theRows = table.rows.length;

  if (theRows != 1) table.deleteRow(theRows - 1);

}



function MM_jumpMenu(targ,selObj,restore){ //v3.0

  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");

  if (restore) selObj.selectedIndex=0;

}



function MM_findObj(n, d) { //v4.01

  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {

    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}

  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];

  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);

  if(!x && d.getElementById) x=d.getElementById(n); return x;

}



function MM_jumpMenuGo(selName,targ,restore){ //v3.0

  var selObj = MM_findObj(selName); if (selObj) MM_jumpMenu(targ,selObj,restore);

}



function MM_confirm(msg, url) { //v1.0

  if(confirm(msg)) location.replace(url);

}



function MM_openBrWindow(theURL,winName,features) { 

  window.open(theURL,winName,features);

}



function MM_goToURL() { //v3.0

  var i, args=MM_goToURL.arguments; document.MM_returnValue = false;

  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");

}



function SelectAll() {

   for(var x=0;x<document.form.elements.length;x++) {

      var y=document.form.elements[x];

      if(y.name!='ALL') y.checked=document.form.ALL.checked;

   }

}



function MM_swapImgRestore() { //v3.0

  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;

}



function MM_preloadImages() { //v3.0

  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();

    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)

    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}

}
// fügt den [Toggle] tag hinzu
function AddToggle() {
   inserttext = prompt("Enter toggle name:" + "\n[toggle=xxx][/toggle]");
      inserttext1 = prompt("Enter text:" + "\nxxxx");
   if ((inserttext != "") && (inserttext1 != "") && (inserttext != null) && (inserttext1 != null)) addtext = " [toggle="+inserttext+"]" + inserttext1 + "[/toggle] ";
   else addtext="";

   AddText(addtext);
}
// toggle function - read more
function Toggle(id, multi) {

  spanid1 = "ToggleRow_"+id;
  spanid2 = "ToggleImg_"+id;

  if(multi == true) {

	elements = document.getElementsByName(spanid1);
	val = document.getElementsByName(spanid1)[0].style.display;
	for (var i=0;i<elements.length;i++) {
	  if (val == "none") elements[i].style.display = "inline";
	  else elements[i].style.display = "none";
	}
  }
  else {

	  if (/MSIE/.test(navigator.userAgent)){
	  	images = document.getElementById(spanid1).getElementsByTagName('img');
	    anz = images.length
	    for(i=0;i<anz;i++){
	    	elem = images[i];
	        if(typeof elem.onload == "function") elem.onload();
	    }
	  }
	  val = document.getElementById(spanid1).style.display;
	  if (val == "none")
	  {
	    document.getElementById(spanid1).style.display = "block";
	    document.getElementById(spanid2).src = "images/icons/collapse.gif";
	    document.getElementById(spanid2).alt = "hide";
		 document.getElementById(spanid2).title = "hide";
	  }
	  else
	  {
	    document.getElementById(spanid1).style.display = "none";
	    document.getElementById(spanid2).src = "images/icons/expand.gif"
	    document.getElementById(spanid2).alt = "read more";
		 document.getElementById(spanid2).title = "read more";
	  }
  }
}
// fügt code eines anderen fensters ein
function AddCodeFromWindow(thecode) {
   opener.document.post.message.value += thecode + " ";
   opener.post.message.focus();
}

function MM_findObj(n, d) { //v4.01

  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {

    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}

  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];

  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);

  if(!x && d.getElementById) x=d.getElementById(n); return x;

}



function MM_swapImage() { //v3.0

  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)

   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}

}
// Fuegt nurmale Tags ein
function InsertBBCode(aTag, eTag) {
  var input = document.post.message;
  input.focus();
  if(typeof document.selection != 'undefined') {
    var range = document.selection.createRange();
   var insText = range.text;
    range.text = aTag + insText + eTag;
    range = document.selection.createRange();
    if (insText.length == 0) {
      range.move('character', -eTag.length);
    }
   else {
      range.moveStart('character', aTag.length + insText.length + eTag.length);      
    }
    range.select();
  }
  else if(typeof input.selectionStart != 'undefined') {
    var start = input.selectionStart;
    var end = input.selectionEnd;
    var insText = input.value.substring(start, end);
    input.value = input.value.substr(0, start) + aTag + insText + eTag + input.value.substr(end);
    var pos;
    if (insText.length == 0) {
      pos = start + aTag.length;
    }
   else {
      pos = start + aTag.length + insText.length + eTag.length;
    }
    input.selectionStart = pos;
    input.selectionEnd = pos;
  }
  else {
    var pos;
    var re = new RegExp('^[0-9]{0,3}$');
    while(!re.test(pos)) {
      pos = prompt("Einfuegen an Position (0.." + input.value.length + "):", "0");
    }
    if(pos > input.value.length) {
      pos = input.value.length;
    }
    var insText = prompt("Bitte gib den zu formatierenden Text ein:");
    input.value = input.value.substr(0, pos) + aTag + insText + eTag + input.value.substr(pos);
  }
}

function InsertList(type) {
   if ((type == "a") || (type == "1")) {
      list = "<ol type=" + type + "]\n";
      listend = "</ol>";
   }
   else {
      list = "<ul>\n";
      listend = "</ul>";
   }
   entry = "start";
   while ((entry != "") && (entry != null)) {
      entry = prompt("Gib einen Listenpunkt ein.\nGib nichts ein oder klick auf 'Cancel' um die Liste zu schliessen.", "");
      if ((entry != "") && (entry != null)) list = list + "<li>" + entry + "</li>\n";
   }
   InsertBBCode(list, listend);
}

function InsertEmail(insert) {
   if(insert == 0) {
      document.getElementById("insert").style.display = 'block';
      document.getElementById("insert").innerHTML = '<input type="text" id="email" style="width:50%;color: #ffffff; font-size: 12px; background-color: #555555; border: 1px solid #664a1a;" value="Email-Adresse" onFocus=this.value=""><br /><input type="text" id="linkname" style="width:50%; color: #ffffff; font-size: 12px; background-color: #555555;    border: 1px solid #664a1a;" value="Linkname" onFocus=this.value=""><br /><input type="button" value="Email-Adresse hinzuf&uuml;gen" class="button" onclick="InsertEmail(\'1\');" />';
   }
   else {
      InsertBBCode('[email=' + document.getElementById('email').value + ']', '' + document.getElementById('linkname').value + '[/email]');
      document.getElementById("insert").style.display = 'none';
   }
}

function InsertLink(insert) {
   if(insert == 0) {
      document.getElementById("insert").style.display = 'block';
      document.getElementById("insert").innerHTML = '<input type="text" id="url" style="width:50%;color: #ffffff; font-size: 12px; background-color: #555555; border: 1px solid #664a1a;" value="http://" onFocus=this.value=""><br /><input type="text" id="linkname" style="width:50%; color: #ffffff; font-size: 12px; background-color: #555555;    border: 1px solid #664a1a;" value="Wort zum Klicken hinzuf&uuml;gen" onFocus=this.value=""><br /><input type="button" value="Link hinzuf&uuml;gen" class="button" onclick="InsertLink(\'1\');"/>';
   }
   else {
      InsertBBCode('[url=' + document.getElementById('url').value + ']', '' + document.getElementById('linkname').value + '[/url]');
      document.getElementById("insert").style.display = 'none';
   }
}

function InsertImage(insert) {
   if(insert == 0) {
      document.getElementById("insert").style.display = 'block';
      document.getElementById("insert").innerHTML = 'Link zum Bild: <input type="text" id="url" style="width:50%;color: #ffffff; font-size: 12px; background-color: #555555; border: 1px solid #664a1a;" value="http://" onFocus=this.value=""><br /><input type="button" value="Bild hinzuf&uuml;gen" class="button" onclick="InsertImage(\'1\');" />';
   }
   else {
      InsertBBCode('[img]', '' + document.getElementById('url').value + '[/img]');
      document.getElementById("insert").style.display = 'none';
   }
}

function InsertToggle(insert) {
   if(insert == 0) {
      document.getElementById("insert").style.display = 'block';
      document.getElementById("insert").innerHTML = '<input type="text" id="title" style="width:50%;color: #ffffff; font-size: 12px; background-color: #555555; border: 1px solid #664a1a;" value="Titel des Klapptextes" onFocus=this.value=""><br /><textarea id="toggletext" style="width:99%; height:100px;">Text des Klapptextes</textarea><br /><input type="button" value="Klapptext hinzuf&uuml;gen" class="button" onclick="InsertToggle(\'1\');" />';
   }
   else {
      InsertBBCode(' [toggle=' + document.getElementById('title').value + ']', '' + document.getElementById('toggletext').value + '[/toggle] ');
      document.getElementById("insert").style.display = 'none';
   }
}

function InsertVidYoutube(insert) {
   if(insert == 0) {
      document.getElementById("insert").style.display = 'block';
      document.getElementById("insert").innerHTML = 'http://www.youtube.com/watch?v= <input type="text" id="url" style="width:50%;color: #ffffff; font-size: 12px; background-color: #555555; border: 1px solid #664a1a;" value="Video-ID" onFocus=this.value=""><br /><input type="button" value="Video hinzuf&uuml;gen" class="button" onclick="InsertVidYoutube(\'1\');" />';
   }
   else {
      InsertBBCode('[youtube]', '' + document.getElementById('url').value + '[/youtube]');
      document.getElementById("insert").style.display = 'none';
   }
}

// Flash-Video hinzugefügt am 07.04.2009
function InsertVidFlash(insert) {
   if(insert == 0) {
      document.getElementById("insert").style.display = 'block';
      document.getElementById("insert").innerHTML = '<input type="text" id="url" style="width:50%;color: #ffffff; font-size: 12px; background-color: #555555; border: 1px solid #664a1a;" value="http://www.domain.de/pfad/zur/datei/video.flv" onFocus=this.value=""><br /><small>Nur *.flv*- und *.swf*-Dateien sind abspielbar.<br />Den absoluten Pfad zur Datei, z.B. www.jesters-clan.net/pfad/datei.flv.</small><br /><input type="button" value="Flash-Video hinzuf&uuml;gen" class="button" onclick="InsertVidFlash(\'1\');" />';
   }
   else {
      InsertBBCode('[flash]', '' + document.getElementById('url').value + '[/flash]');
      document.getElementById("insert").style.display = 'none';
   }
}

// WindowsMedia-Video hinzugefügt am 02.06.2009
function InsertVidWindowsMedia(insert) {
   if(insert == 0) {
      document.getElementById("insert").style.display = 'block';
      document.getElementById("insert").innerHTML = '<input type="text" id="url" style="width:50%;color: #ffffff; font-size: 12px; background-color: #555555; border: 1px solid #664a1a;" value="http://www.domain.de/pfad/zur/datei/video.wmv" onFocus=this.value=""><br /><small>Nur die *.wmv*-Datei ist abspielbar.<br />Den absoluten Pfad zur Datei, z.B. www.jesters-clan.net/pfad/datei..wmv.</small><br /><input type="button" value="WindowsMedia-Video hinzuf&uuml;gen" class="button" onclick="InsertVidWindowsMedia(\'1\');" />';
   }
   else {
      InsertBBCode('[windowsmedia]', '' + document.getElementById('url').value + '[/windowsmedia]');
      document.getElementById("insert").style.display = 'none';
   }
}

function InsertVidMyvideo(insert) {
   if(insert == 0) {
      document.getElementById("insert").style.display = 'block';
      document.getElementById("insert").innerHTML = 'http://www.myvideo.de/watch/<input type="text" id="url" style="width:50%;color: #ffffff; font-size: 12px; background-color: #555555; border: 1px solid #664a1a;" value="Video-ID" onFocus=this.value=""><br /><input type="button" value="Video hinzuf&uuml;gen" class="button" onclick="InsertVidMyvideo(\'1\');" />';
   }
   else {
      InsertBBCode('[myvideo]', '' + document.getElementById('url').value + '[/myvideo]');
      document.getElementById("insert").style.display = 'none';
   }
}

function InsertVidGoogle(insert) {
   if(insert == 0) {
      document.getElementById("insert").style.display = 'block';
      document.getElementById("insert").innerHTML = 'http://video.google.de/videoplay?docid=<input type="text" id="url" style="width:50%;color: #ffffff; font-size: 12px; background-color: #555555; border: 1px solid #664a1a;" value="docid" onFocus=this.value=""><br /><small>Nur die <b>docid</b> eingeben.<br /><input type="button" value="Video hinzuf&uuml;gen" class="button" onclick="InsertVidGoogle(\'1\');" />';
   }
   else {
      InsertBBCode('[google]', '' + document.getElementById('url').value + '[/google]');
      document.getElementById("insert").style.display = 'none';
   }
}

function InsertResImage() {
   name = prompt("Bitte geben Sie einen Namen fuer das Bild ein", "");
    linkurl = prompt("Geben Sie eine URL fuer das grosse Bild ein", "http://");
    inserttext = prompt("geben Sie eine URL fuer das kleine Bild ein", "http://");
   
   if ((linkurl && inserttext != "http://") && (linkurl && inserttext != "") && (linkurl && inserttext != null)) {
      addtext = "[resimage="+linkurl+"][name]"+name+"[/name][pic]" + inserttext + "[/pic][/resimage]";
   }
   else addtext="";
   
   InsertBBCode(addtext, '');
}

//no comment ;)

function AddCode(thecode) {
	AddText(thecode);
}

// speichert den text im message feld
function AddText(addtext) {
	var current = document.post.message.value;
	var newtext = current + addtext;
	document.post.message.value = newtext;
	document.post.message.focus();
	document.post.message.value +='';
}



