// ==UserScript==
// @name          	Smiliescript by Klaas Cuvelier
// @description   	Snel icons van andere websites plaatsen
// @include		  	http://*ep2*
// ==/UserScript==

/*
	gemaakt door Klaas Cuvelier
	cuvelierklaas@gmail.com
	http://www.cuvedev.net
*/

var boxID = Array('message', 'message_new');
//var boxID = 'message';


function addSmiliesToTextarea()
{
	if(isArray(boxID)) for(i = 0; i < boxID.length; i++) addSmiliesTo(boxID[i]);
	else addSmiliesTo(boxID);
}

function addSmiliesTo(bid)
{
	box = document.getElementById(bid) != null ? document.getElementById(bid) : findBox(bid);
	if(box == null) return;
	
	bar = document.createElement("div");
	mwdt = box.offsetWidth;
	bar.setAttribute("style", "width: "+mwdt+"px; height: auto;");
	
	smilies = getSmilies();
	wdt = 0;
	for(i = 0; i < smilies.length; i++) 
	{
		if(smilies[i] == undefined) continue;
		
		smilie = document.createElement("div");
		hiddens = document.createElement("img");
		
		hiddens.setAttribute("src", smilies[i]);
		smilie.setAttribute("style", "cursor: pointer; display: inline-block; margin: 3px 3px; width: "+hiddens.width+"px; height: "+hiddens.height+"px; background: url("+smilies[i]+") bottom left no-repeat;");
		smilie.setAttribute("onClick", "box = document.getElementById('"+bid+"'); cp = box.selectionStart; box.value = box.value.substring(0, cp) + '[img]"+smilies[i]+"[/img]' + box.value.substring(cp); box.focus(); box.setSelectionRange(cp+('[img]"+smilies[i]+"[/img]').length, cp+('[img]"+smilies[i]+"[/img]').length)+1;");

		wdt += smilie.width + 6;
		if(wdt > mwdt)
		{
			wdt = smilie.width + 6;
			bar.appendChild(getBrClearBoth());
		}
		
		bar.appendChild(smilie);
		
	}
	bar.appendChild(getBrClearBoth());
	
	box.parentNode.insertBefore(bar, box);
	box.parentNode.insertBefore(getBrClearBoth(), box);
}

function findBox(bi)
{
	return null;
}

function getSmilies() 
{
	var smilies = new Array();
	
	smilies[1] = "http://media.cuvedev.net/fokkies/biggrin.gif";
	smilies[2] = "http://media.cuvedev.net/fokkies/sadley.gif";
	smilies[3] = "http://media.cuvedev.net/fokkies/heart.gif";
	smilies[4] = "http://media.cuvedev.net/fokkies/puh.gif";
	smilies[5] = "http://media.cuvedev.net/fokkies/yummie.gif"
	smilies[6] = "http://media.cuvedev.net/fokkies/koffie.gif"
	smilies[7] = "http://media.cuvedev.net/fokkies/loveit.gif";
	smilies[8] = "http://media.cuvedev.net/fokkies/coool.gif";
	smilies[9] = "http://media.cuvedev.net/fokkies/shadey.gif";
	smilies[10] = "http://media.cuvedev.net/fokkies/michel.gif";
	smilies[11] = "http://media.cuvedev.net/fokkies/loveys.gif";
	smilies[12] = "http://media.cuvedev.net/fokkies/marrysmile.gif";
	smilies[13] = "http://media.cuvedev.net/fokkies/rc5.gif";
	smilies[14] = "http://media.cuvedev.net/fokkies/clown.gif";
	smilies[15] = "http://media.cuvedev.net/fokkies/bloos.gif";
	smilies[16] = "http://media.cuvedev.net/fokkies/spinsmile.gif";
	smilies[17] = "http://media.cuvedev.net/fokkies/emo.gif";
	smilies[18] = "http://media.cuvedev.net/fokkies/hypocrite.gif";
	smilies[19] = "http://media.cuvedev.net/fokkies/yes_new.gif";
	smilies[20] = "http://media.cuvedev.net/fokkies/nooo.gif";
	smilies[21] = "http://media.cuvedev.net/fokkies/shutup.gif";
	smilies[22] = "http://media.cuvedev.net/fokkies/sm_eerie.gif";
	smilies[23] = "http://media.cuvedev.net/fokkies/chicksmiley.gif";
	smilies[24] = "http://media.cuvedev.net/fokkies/yawnee.gif";
	smilies[25] = "http://media.cuvedev.net/fokkies/sleephappy.gif";
	smilies[26] = "http://media.cuvedev.net/fokkies/thumbsup.gif";
	smilies[27] = "http://media.cuvedev.net/fokkies/vork.gif";
	smilies[28] = "http://media.cuvedev.net/fokkies/we.gif";
	smilies[29] = "http://media.cuvedev.net/fokkies/worshippy.gif";
	smilies[30] = "http://media.cuvedev.net/fokkies/schater.gif";
	smilies[31] = "http://media.cuvedev.net/fokkies/bye.gif";
	smilies[32] = "http://media.cuvedev.net/fokkies/nopompom.gif";
	smilies[33] = "http://media.cuvedev.net/fokkies/static.gif";
	smilies[34] = "http://media.cuvedev.net/fokkies/sbatje.gif";
	smilies[35] = "http://media.cuvedev.net/fokkies/swhip.gif";
	smilies[36] = "http://media.cuvedev.net/fokkies/santa.gif";
	smilies[37] = "http://media.cuvedev.net/fokkies/santabaard.gif";
	smilies[38] = "http://media.cuvedev.net/fokkies/rudolf.gif";
	smilies[39] = "http://media.cuvedev.net/smilies/loser.png";
	smilies[40] = "http://media.cuvedev.net/smilies/dans.gif";
	smilies[41] = "http://media.cuvedev.net/smilies/badger.gif";
	
	return smilies;
}

function getBrClearBoth()
{
	ebr = document.createElement("br");
	ebr.setAttribute("style", "clear: both");
	return ebr;
}

function isArray(obj) {
	return (obj.constructor.toString().indexOf("Array") == -1) ? false: true;
}


addSmiliesToTextarea();
