itu sozluk oto sevgi pınarı

By togisama Last update May 29, 2009 — Installed 45 times. Daily Installs: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

There are 1 previous version of this script.

// ==UserScript==
// @name           itu sozluk oto sevgi pınarı
// @namespace      http://www.itusozluk.com/userinfo.php?user=togisama 
// @description    sevgi pınarındaki başlıkları renklendiren
// @include        http://www.itusozluk.com/listele*
// ==/UserScript==

var xmlHttp;

getMyBinars();

function createXMLHttpRequest() {

	if (window.ActiveXObject) 
		xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");

	else if (window.XMLHttpRequest)
		xmlHttp = new XMLHttpRequest();
	
}

function getMyBinars(){
	createXMLHttpRequest();
	var url = "http://www.itusozluk.com/listele.php?liste=au";

	xmlHttp.open("GET", url, true);
	xmlHttp.overrideMimeType('text/html; charset=iso-8859-9')
	xmlHttp.onreadystatechange = handleBinar;
	xmlHttp.send(null);
}

function handleBinar() {

	if(xmlHttp.readyState == 4) 
		if(xmlHttp.status == 200) 
			parseBinar();
}

function parseBinar() {

	var myBinar=getBinars(xmlHttp.responseText);
	var giriler,giri;
	var sil=-1;
        var giriCol,backCol;

	giriler=document.getElementById('lst');

	for(var i=0;i<giriler.childNodes.length;i++)
	{
		if(!giriler.childNodes[i].firstChild)
			sil=i;
		else
		{
			giri=giriler.childNodes[i].firstChild.firstChild.childNodes[1].firstChild.firstChild;

			if(contains(myBinar,giri.firstChild.nodeValue))
			{
				giriCol=getFontColor(giri);
				
				backCol=getBackColor();
	
				setFontColor(giri,giriCol,backCol,100,-30);
			}
		}
	}

	if(sil>=0)
		giriler.removeChild(giriler.childNodes[sil-1]);
}

function contains(myArr,myVal)
{
	for(var i=0;i<myArr.length;i++)
		if(myArr[i]==myVal)
			return myVal;

	return null;
}

function getBinars(binarstext)
{
	var binars = new Array();
	
	while(binarstext.indexOf('<a target=\"ana\"')>=0)
	{
		binarstext=binarstext.substring(binarstext.indexOf('<a target=\"ana\"')+15,binarstext.length);
		binars.push(binarstext.substring(binarstext.indexOf('\">')+2,binarstext.indexOf('<')));
		binarstext=binarstext.substring(binarstext.indexOf('<a target=\"ana\"')+15,binarstext.length);
	}
	
	return binars;
}

function setFontColor(giri,giriCol,backCol,delta,grad)
{
	var r,g,b;
	var indelta=delta;
	var yeniCol = new Array();

	for(var i=0;i<3;i++)
	{
		indelta=indelta+grad;
		if(giriCol[i]<backCol[i])
		{
			yeniCol[i]=(giriCol[i]-indelta);
			if(yeniCol[i]<0)
				yeniCol[i]=giriCol[i]+indelta;
		}
		else
		{
			yeniCol[i]=(giriCol[i]+indelta);
			if(yeniCol[i]>255)
				yeniCol[i]=giriCol[i]-indelta;
		}

		

	}

	giri.style.color="rgb("+ yeniCol[0] +","+ yeniCol[1] +","+ yeniCol[2] +")";

}

function getFontColor(giri)
{
	var rgbVal = new Array();
	var giriColor=document.defaultView.getComputedStyle(giri,'').getPropertyValue("color");

	rgbVal.push(parseInt(giriColor.substring(giriColor.indexOf('(')+1,giriColor.indexOf(','))));
	
	var g= giriColor.substring(giriColor.indexOf(',')+1,giriColor.length);
	rgbVal.push(parseInt(g.substring(g.indexOf(',')+1,g.indexOf(')'))));
	rgbVal.push(parseInt(g.substring(0,g.indexOf(','))));

	return rgbVal;
}

function getBackColor()
{
	var rgbVal = new Array();

	var backColor=document.bgColor.toString();

	rgbVal.push(HexToR(backColor));
	rgbVal.push(HexToG(backColor));
	rgbVal.push(HexToB(backColor));

	return rgbVal;
}

function HexToR(h) {return parseInt((cutHex(h)).substring(0,2),16)}
function HexToG(h) {return parseInt((cutHex(h)).substring(2,4),16)}
function HexToB(h) {return parseInt((cutHex(h)).substring(4,6),16)}
function cutHex(h) {return (h.charAt(0)=="#") ? h.substring(1,7):h}