There are 12 previous versions of this script.
// ==UserScript==
// @name itu sozluk renklensin
// @namespace http://www.itusozluk.com/userinfo.php?user=togisama
// @description Yazarların kendi girilerini ve kankalarının girilerini farklı renkte gormesini saglayan bir betik
// @include http://www.itusozluk.com/*
// ==/UserScript==
var xmlHttp;
getMyName();
function createXMLHttpRequest() {
if (window.ActiveXObject)
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
else if (window.XMLHttpRequest)
xmlHttp = new XMLHttpRequest();
}
function getMyName() {
createXMLHttpRequest();
var url = "http://www.itusozluk.com/user.php";
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.send(null);
}
function getMyFriends() {
var url = "http://www.itusozluk.com/ben.php?op=kanka";
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = handleFriendsChange;
xmlHttp.send(null);
}
function handleStateChange() {
if(xmlHttp.readyState == 4)
if(xmlHttp.status == 200)
parseResults();
}
function handleFriendsChange() {
if(xmlHttp.readyState == 4)
if(xmlHttp.status == 200)
parseFriends();
}
function parseFriends() {
var myFriends=getFriends(xmlHttp.responseText);
var giriler;
var giriCol,backCol;
for(var i=0;i<myFriends.length;i++)
{
giriler=getUserEntries(myFriends[i]);
if(giriler.length>0)
{
giriCol=getFontColor(giriler[0].firstChild);
backCol=getBackColor();
for(var j=0;j<giriler.length;j++)
setFontColor(giriler[j].firstChild,giriCol,backCol,200,-60);
}
}
}
function getFriends(friendstext)
{
var friends = new Array();
friendstext=friendstext.substring(friendstext.indexOf('knk'),friendstext.length);
while(friendstext.indexOf(';knk')>=0)
{
friendTemp= friendstext.substring(friendstext.indexOf('\',')+2,friendstext.indexOf('\'\)\;'));
friends.push(friendTemp.substring(friendTemp.indexOf('\',')+3,friendTemp.length));
friendstext=friendstext.substring(friendstext.indexOf(';knk')+4,friendstext.length);
}
friendTemp= friendstext.substring(friendstext.indexOf('\',')+2,friendstext.indexOf('\'\)\;'));
friends.push(friendTemp.substring(friendTemp.indexOf('\',')+3,friendTemp.length));
return friends;
}
function parseResults() {
var username=getUserName(xmlHttp.responseText);
var giriler=getUserEntries(username);
var giriCol,backCol;
if(giriler.length>0)
{
giriCol=getFontColor(giriler[0].firstChild);
backCol=getBackColor();
for(var i=0;i<giriler.length;i++)
setFontColor(giriler[i].firstChild,giriCol,backCol,40,40);
}
getMyFriends();
}
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 getUserName(response)
{
var uname = response.substring(xmlHttp.responseText.indexOf("userinfo.php?user=")+18,xmlHttp.responseText.indexOf("userinfo.php?user=")+51);
uname=uname.substring(0,uname.indexOf("',"));
return uname;
}
function getUserEntries(uname)
{
var entries = new Array();
var authname;
var allEntries=document.getElementsByTagName("li");
for(var i=0; i<allEntries.length; i++)
{
authname=allEntries[i].childNodes[1].childNodes[0].childNodes[1].childNodes[0].nodeValue;
if(uname.toString()==authname.toString())
entries.push(allEntries[i]);
}
return entries;
}
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}
