// JavaScript Document
var aide=null;

function insert_smiley(the_text,f) {
  ajouter_txt(the_text,f);
  return;
}

function ajouter_txt(id,txt)
{
	var obj = document.getElementById(id), sel;
	  obj.focus();
	  if(document.selection && document.selection.createRange)
	  {
	  sel = document.selection.createRange();
	  if (sel.parentElement()==obj)//si sel est dans obj
		sel.text = sel.text+txt;
	  }
	
	else if(String(typeof obj.selectionStart)!="undefined"){
	sel = obj.selectionStart;
	obj.value = (obj.value).substring(0,sel) + txt + (obj.value).substring(sel,obj.value.length);
	}
	else obj.value+=txt;
	  obj.focus();
  
}

function add_txt(cur,ID,sItem)
{
	if(aide==null)
	{
			if(cur.value.charAt(0)=='/'){
			cur.value=sItem.toUpperCase();	
			sItem="/"+sItem;
		}
		 else
			cur.value='/'+ cur.value;
	}
	return ajouter_txt(ID,"["+sItem+"]");
}

function insert(cur,ID, sItem) {
	var sStr;
	if (window.getSelection)
	{
		var sStr = window.getSelection();
	}
	else if (document.selection && document.selection.createRange)
	{
		var range = document.selection.createRange();
		var sStr = range.text;
	} 
	// Mozilla + Opera Browsers ====================================
	if (navigator.userAgent.indexOf('Gecko')>= 0)
	{ 
		var objTextArea = document.getElementById(ID);
		var ss = objTextArea.selectionStart;
		var st = objTextArea.scrollTop;
		var es = objTextArea.selectionEnd;
		if (es <= 2){ es = objTextArea.textLength; }
		var start  = (objTextArea.value).substring(0, ss);
		var middle = (objTextArea.value).substring(ss, es);
		var end    = (objTextArea.value).substring(es, objTextArea.textLength);
		
		if (objTextArea.selectionEnd - objTextArea.selectionStart > 0){
			middle = "[" + sItem + "]" + middle + "[/" + sItem + "]";
		}
		else 
			 return add_txt(cur,ID, sItem);

		objTextArea.value = start + middle + end;
		return;
	} 
/*
	else if(navigator.userAgent.indexOf('Opera')>= 0)
	{ 
		return alert("Sorry, unable to insert the HTML [" + sItem + "] tag.  \n\nOpera browsers are not supported at this time."); 
	}
*/
	//=====================================================
	if (sStr == '')
		return add_txt(cur,ID, sItem);

   	sStr = sStr.replace(/\r\n/g, '<BR>');
   	sStr = sStr.replace(/\n/g, '<BR>');
   	sStr = sStr.replace(/\r/g, '<BR>');

	doInsert("[" + sItem + "]" + sStr + "[/" + sItem + "]", "", false)
	 return;
}

function doInsert(ibTag, ibClsTag, isSingle)
{
var isClose = false;
var sel = document.selection;
var rng = sel.createRange();
rng.colapse;
	if((sel.type == "Text" || sel.type == "None") && rng != null){
		if(ibClsTag != "" && rng.text.length > 0)
			ibTag += rng.text + ibClsTag;
		else if(isSingle)

		isClose = true;
		rng.text = ibTag;
	}
return isClose;
}	

function change_aide(id_form)
{
	aide=aide!=null?null:id_form;
}

function bbcode(cur,the_text,code)
{
	var affichage='',ok=true;
	if(aide==the_text)
	{
		if(code=='url')
		{
			var url= prompt(' URL of the link ', 'http://' );
				if(url!='' && url!='http://' && url!=null)
					return ajouter_txt(the_text,affichage='['+ code.toLowerCase() +']'+ url + '[/'+code.toLowerCase()+']');
			ok=false;
		}
		else if(code=='quote')
		{
			var name= prompt(' User to quote ', '' );
			var message= prompt(' Message to quote ', '' );
			if(name!='' && message!='' && message!=null && name!=null)
				return ajouter_txt(the_text,'['+ code.toLowerCase()+'='+name+']'+ message + '[/'+code.toLowerCase()+']');
			ok=false;
		}
		else if(code=='img')
		{
			var url= prompt(' Image URL', 'http://' );				
			if(url!='' && url!='http://' && url!=null)
				return ajouter_txt(the_text,'['+code.toLowerCase()+']'+ url + '[/'+code.toLowerCase()+']');
			ok=false;
		}
		else{
			var txt= prompt(' Enter Text', '' );				
			if(txt!='' && txt!=null)
			return ajouter_txt(the_text,'['+code.toLowerCase()+']'+ txt + '[/'+code.toLowerCase()+']');
			ok=false;
		}
	}
	if(ok)
		return insert(cur,the_text,code);
			
}

function insert_with_option(cur,form,code)
{
	if(aide==form)
	{
		var txt= prompt('Enter Text', '' );				
		if(txt!='' && txt!=null)
		return ajouter_txt(form,affichage='['+ code.toLowerCase()+'='+ cur.options[cur.selectedIndex].value + ']'+ txt +' [/'+code.toLowerCase()+']');
	}
	else
		return ajouter_txt(form,affichage='['+ code.toLowerCase()+'='+ cur.options[cur.selectedIndex].value + '] [/'+code.toLowerCase()+']');
}


/* TEST */
function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	
	return curleft;
	
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}
function moveobject(obj,layer)
{
	var newX = findPosX(obj);
	var newY = findPosY(obj);
	var object=document.getElementById(layer);
	if(object.style.visibility!="visible")
	{
		object.style.visibility="visible";
		object.style.top=(newY-110)+ 'px' ;
		object.style.left=(newX-175)+ 'px' ;
	}
	else
		object.style.visibility="hidden";
}
/*TEST*/

/*
function smiley_hide(textareaname)
{
	/*cur.style.display='none'; // cache le lien 
	document.getElementById(textareaname+"_hs").style.display='none';
	document.getElementById(textareaname+"_ds").style.display='block'; 
	document.getElementById(textareaname+"_simages").style.display='none'; // cache les smileys
}

function smiley_unhide(textareaname)
{
	document.getElementById(textareaname+"_hs").style.display='block';
	document.getElementById(textareaname+"_ds").style.display='none'; // affiche le lien pour rendre visible les smileys
	document.getElementById(textareaname+"_simages").style.display='block'; //affiche les images
}
*/
function display_hide_div(id)
{
	var object=document.getElementById(id);
	if(object.style.display=='none')
		object.style.display='block';
	else
		object.style.display="none";
}
function hide(id)
{
	var object=document.getElementById(id);
	object.style.display="none";
}


function change_class(id, newClass) 
{
/*identity=document.getElementById(id);
identity.className=newClass;*/
    if (typeof(document.getElementsByTagName) != 'undefined') {
        theCells = theRow.getElementsByTagName('td');
    }
    else if (typeof(theRow.cells) != 'undefined') {
        theCells = theRow.cells;
    }
    else {
        return false;
    }

}


