/***********************************************
* Cool DHTML tooltip script- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code

* di edit oleh hmaxf
* use this javascript with :

* <div id="dhtmltooltip"></div>
* <script type="text/javascript" src="fungsiTooltip.js"></script>

* inside the <body> section of your page
***********************************************/

var offsetxpoint=-60 //Customize x offset of tooltip
var offsetypoint=20 //Customize y offset of tooltip
var ie=document.all
var ns6=document.getElementById && !document.all
var enabletip=false

if (ie||ns6)
	var tipobj=document.all? document.all["dhtmltooltip"] : document.getElementById? document.getElementById("dhtmltooltip") : ""

function ietruebody(){
	return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

function ddrivetip(thetext_ori, thecolor, thewidth){

	// == wrapper to replace newline with space, replace \' and replace \"
	var thetext = thetext_ori;
	// === selesai fungsi wrapper
	
	if (ns6||ie){
		if (typeof thewidth!="undefined")
			tipobj.style.width=thewidth+"px"
		if (typeof thecolor!="undefined" && thecolor!="")
			tipobj.style.backgroundColor=thecolor
		
		// Berikan tanda newline (<br>) jika suatu line terlalu panjang, kasih batas 50 huruf.
		// dan dipisahkan menurut spasi
		var text_array = thetext.split("<br>");
		var final_text = "";
		var max_char = 50;
		for(i = 0; i < text_array.length; i++)
		{
			if(text_array[i].length > max_char)
			{
				var current_text_array = text_array[i].split(" ");	// split by white-space
				var current_index = 0;
				var total_index = current_text_array.length;
				var current_line = "";				
				
				for(j = 0; j < current_text_array.length; j++)
				{
					if(current_line.length + current_text_array[j].length > max_char)
					{
						if(current_line.length == 0)
							final_text += current_text_array[j];	// "kata" ini terlalu panjang
						else
							final_text += current_line;	// kalimatnya sudah penuh
							
						final_text += "<br>";	// tambah newline						
						current_line = ""; // reset, lalu current_text_array[j] dan spasi akan ditambahkan di bawah
					}

					current_line += current_text_array[j] + " ";
				}
				
				// tambahkan yang terakhir
				if(current_line.length > 0)
					final_text += (current_line + "<br>");	// tambah newline
			}
			else
			{
				final_text += (text_array[i] + "<br>");
			}
		}
		// === selesai script tambahan		
		
		tipobj.innerHTML=final_text;//thetext
		enabletip=true

		return false
	}
}

function positiontip(e){
	if (enabletip){
		var curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
		var curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;
		//Find out how close the mouse is to the corner of the window
		var rightedge=ie&&!window.opera? ietruebody().clientWidth-event.clientX-offsetxpoint : window.innerWidth-e.clientX-offsetxpoint-20
		var bottomedge=ie&&!window.opera? ietruebody().clientHeight-event.clientY-offsetypoint : window.innerHeight-e.clientY-offsetypoint-20
	
		var leftedge=(offsetxpoint<0)? offsetxpoint*(-1) : -1000

		//if the horizontal distance isn't enough to accomodate the width of the context menu
		if (rightedge<tipobj.offsetWidth)
			//move the horizontal position of the menu to the left by it's width
			tipobj.style.left=ie? ietruebody().scrollLeft+event.clientX-tipobj.offsetWidth+"px" : window.pageXOffset+e.clientX-tipobj.offsetWidth+"px"
		else if (curX<leftedge)
			tipobj.style.left="5px"
		else
			//position the horizontal position of the menu where the mouse is positioned
			tipobj.style.left=curX+offsetxpoint+"px"

		//same concept with the vertical position
		if (bottomedge<tipobj.offsetHeight)
			tipobj.style.top=ie? ietruebody().scrollTop+event.clientY-tipobj.offsetHeight-offsetypoint+"px" : window.pageYOffset+e.clientY-tipobj.offsetHeight-offsetypoint+"px"
		else
			tipobj.style.top=curY+offsetypoint+"px"

		tipobj.style.visibility="visible"
	}
}

function hideddrivetip(){
	if (ns6||ie){
		enabletip=false
		tipobj.style.visibility="hidden"
		tipobj.style.left="-1000px"
		tipobj.style.backgroundColor=''
		tipobj.style.width=''
	}
}

document.onmousemove=positiontip
