/*
 * @package Component jVoteSystem for Joomla! 1.5
 * @projectsite www.joomess.de/projekte/18
 * @author Johannes Meßmer
 * @copyright (C) 2010- Johannes Meßmer
 * @license GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
*/
function jVoteBoxShowText(e) {
	e.style.display = 'none';
	var dataE = decodeURIComponent((e.getElementsByTagName("span")[0].innerHTML).replace(/\+/g, '%20'));
	e.parentNode.innerHTML = e.parentNode.innerHTML + dataE;
	var cells = e.getElementsByTagName("span");
	for (var i = 0; i < cells.length; i++) {
		e.removeChild(cells[i]);
	}
}
/*jQuery - scrollToAnchor*/
function jVoteBoxScrollToAnchor(trgt, id) {	
	if (typeof jQuery == 'undefined') return true;
	if(jVoteBoxSettings[id]["slide"] == 0) return true;
	jQuery('html, body').animate({
		scrollTop: jQuery("#" + trgt).offset().top - 20
	}, 500);
}

/*BBCode - Insert*/
function jVoteSystemInsertCode(textfieldID, insert) {
	var input = document.getElementById(textfieldID);
  input.focus();
  /* für Internet Explorer */
  if(typeof document.selection != 'undefined') {
    /* Einfügen des Formatierungscodes */
    var range = document.selection.createRange();
    var insText = range.text;
    range.text = insText + insert;
    /* Anpassen der Cursorposition */
    range = document.selection.createRange();
    if (insText.length == 0) {
      range.move('character', -insert.length);
    } else {
      range.moveStart('character', insText.length + insert.length);      
    }
    range.select();
  }
  /* für neuere auf Gecko basierende Browser */
  else if(typeof input.selectionStart != 'undefined')
  {
    /* Einfügen des Formatierungscodes */
    var start = input.selectionStart;
    var end = input.selectionEnd;
    var insText = input.value.substring(start, end);
    input.value = input.value.substr(0, start) + insText + insert + input.value.substr(end);
    /* Anpassen der Cursorposition */
    var pos;
    if (insText.length == 0) {
      pos = start + insert.length;
    } else {
      pos = start + insert.length + insText.length;
    }
    input.selectionStart = pos;
    input.selectionEnd = pos;
  }
  /* für die übrigen Browser */
  else
  {
    input.value = input.value + insert;
  }
}

function jVoteSystemInsertBBCode(textfieldID, editorCode, buttonInfo) {
	var tags = editorCode.split("{value}");
	var aTag = tags[0];
	var eTag = tags[1];
	
	var input = document.getElementById(textfieldID);
  input.focus();
  /* für Internet Explorer */
  if(typeof document.selection != 'undefined') {
    /* Einfügen des Formatierungscodes */
    var range = document.selection.createRange();
    var insText = range.text;
	if(insText == "") {
		insText = prompt(buttonInfo, "");
		if(insText == null) return false;
	}
    range.text = aTag + insText + eTag;
    /* Anpassen der Cursorposition */
    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();
  }
  /* für neuere auf Gecko basierende Browser */
  else if(typeof input.selectionStart != 'undefined')
  {
    /* Einfügen des Formatierungscodes */
    var start = input.selectionStart;
    var end = input.selectionEnd;
    var insText = input.value.substring(start, end);
	if(insText == "") {
		insText = prompt(buttonInfo, "");
		if(insText == null) return false;
	}
    input.value = input.value.substr(0, start) + aTag + insText + eTag + input.value.substr(end);
    /* Anpassen der Cursorposition */
    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;
  }
  /* für die übrigen Browser */
  else
  {
    var Check = prompt(buttonInfo, "");
	if(Check != "") {
		editorCode = editorCode.replace("{value}", Check);
		input.value = input.value + " " + editorCode + " ";
	}
  }
}
