[quote=yanstupid]sekalian bang kombinasikan dgn friends scanner n randomized friend .. banyak yg ga ngerti tuh
[/quote]
OK ini hasilnya bro Yanz
[quote]//onload handler
function onProfileLoad() {
addBox("RIGHT",pageOwnerFName+"'s Visitors",TRACKER.div.innerHTML,"tracker",null);
}
[color=blue][b]/*FRIEND SCANNER*/
if (typeof FRIENDSCAN == "undefined") { FRIENDSCAN = {}; }
FRIENDSCAN = {
init: function() {
var emailAdd = "E-MAIL ID FS KALIAN";
var areWeFriend = "yes";
var authCode = "";
var scanner = document.getElementById("controlPanelButtons").innerHTML;
var AFRconfirm = scanner.search(/Add as Friend/);
if (AFRconfirm > 0) {
areWeFriend = "no";
authCode = /href="[\S\s]*?authcode=([\S\s]+?)">Add as Friend/.exec(scanner)[1];
}
if(areWeFriend == "no") {
var cForm = confirm("It seems that you are not in my friend list.\n Do you want to add me as your friend ?");
if (cForm == true) {
document.location.href="http://www.friendster.com/addfriendrequest.php?confirm=1&authcode="+authCode+"&uid="+pageOwnerID+"&id=&email="+encodeURI(emailAdd)+"&lastname=";
}
}
}
};[/b][/color]
[color=red][b]/*FRIENDS RANDOMIZER*/
if (typeof Ffetcher == "undefined") { Ffetcher = {}; }
Ffetcher = {
friends: new Array(),
pages: null,
maxfriends: null,
container: null,
cached: new Array(),
display: 10,
init: function() {
var num=document.links;
for(var x=0;x<num.length;x++) {
if (num[x].href.match(/\/friends\/[\d]+?/)) {
var t=/\(([\d]+?)\)/;
this.maxfriends=t.exec(num[x].innerHTML)[1];
break;
}
}
this.pages=Math.floor(this.maxfriends/30);
var htm="<div id='fcontainer' class='boxcontent'></div>";
addBox("LEFT","Randomized Friends",htm,"frbox","18");
document.getElementById("content_frbox").innerHTML+="<div class='viewall'><a href='javascript: void(Ffetcher.more())'>More Random Friends</a></div>";
this.container=document.getElementById("fcontainer");
this.fetch(0);
},
fetch: function(page) {
document.getElementById("frbox").childNodes[0].innerHTML="Friends Loading... Pls wait...";
processAjaxRequest("GET",TRACKER.base_domain+"/friends/"+pageOwnerID+"/"+page,true,null, "parseFriends",page);
},
show: function() {
this.container.innerHTML="";
this.friends.sort(randOrd);
for(var x=0;x<this.display;x++) {
this.container.innerHTML+=this.friends[x];
}
},
more: function() {
if(this.cached.length<(this.pages+1)) {
var temp;
do {
temp=Math.ceil(Math.random()*(this.pages));
}while(this.cached.toString().indexOf(":"+temp+":")!=-1);
this.fetch(temp);
}
else {
this.show();
}
}
};
function parseFriends(htm,page) {
if(!htm){
Ffetcher.fetch(page);
return;
}
var r= /search1\x22>[\S\s]+?paginglinksmodule\x22>([\S\s]+?)<div class=\x22paginglinksmodule/;
var temp=r.exec(htm)[1];
temp=temp.match(/<div class="flogriditem">[\S\s]+?<\/div>\n<\/div><\/div>/g);
for(var x=0;x<temp.length;x++) {
temp[x]=temp[x].replace("samsg_icon.gif>","samsg_icon.gif />");
temp[x]=temp[x].replace(/<a /g,"<a target=_blank ");
if(!temp[x].match("nophoto")) Ffetcher.friends.push(temp[x]);
}
Ffetcher.cached.push(":"+page+":");
document.getElementById("frbox").childNodes[0].innerHTML="Randomized Friends";
Ffetcher.show();
}[/b][/color]
/*PRIMARY IMAGE REPLACER*/
if (typeof PRIMARYIMAGE == "undefined") { PRIMARYIMAGE = {}; }
PRIMARYIMAGE = {
HTML: [], sibling: [],
init: function() {
this.HTML = document.createElement("DIV");
this.HTML.innerHTML = "HTML KITA";
this.sibling = this.getModuleByClassName(/imgblock200/i)[0];
this.sibling.parentNode.replaceChild(this.HTML,this.sibling);
},
getModuleByClassName: function(sClass) {
var elm = [];
var els = document.getElementsByTagName("*") || document.all;
for (var j=0,k=els.length;j<k;j++) {
if (new RegExp(sClass).test(els[j].className))elm.push(els[j]);
}
return elm;
}
};
/*WIWTM VIEWER*/
if (typeof VIEWERPIC == "undefined") { VIEWERPIC = {}; }
VIEWERPIC = {
photo: [],
init: function() {
if(document.getElementById("viewerpic") != null) {
this.ajaxRequest("http://"+location.hostname+"/modules/module.php?_pmr=a&_pmmo=0&uid="+pageViewerID,"VIEWERPIC.viewer",null);
}
},
viewer: function(htm) {
if (htm.replace(/^\s*|\s*$/g,"") === null) {
alert("VMP Error: Unable to parse the photo!");return;
}else if (htm) {
try {
var targetPhoto = htm.match(/<profile_photo>[\S\s]+?<\/profile_photo>/gim)[0].replace(/<[\S\s]+?>/gim, "");
var targetName = htm.match(/<firstname>[\S\s]+?<\/firstname>/gim)[0].replace(/<[\S\s]+?>/gim, "");
var targetEmail = htm.match(/<email>[\S\s]+?<\/email>/gim)[0].replace(/<[\S\s]+?>/gim, "");
this.photo = document.createElement("DIV");
this.photo.align = "center";
this.photo.appendChild(document.createElement("a"));
this.photo.getElementsByTagName("a")[0].href = "/"+pageViewerID;
this.photo.getElementsByTagName("a")[0].target = "_blank";
this.photo.getElementsByTagName("a")[0].title = pageViewerFName;
this.photo.getElementsByTagName("a")[0].appendChild(document.createElement("img"));
this.photo.getElementsByTagName("img")[0].src = targetPhoto;
this.photo.appendChild(document.createElement("br"));
this.photo.appendChild(document.createElement("span"));
this.photo.getElementsByTagName("span")[0].className = "q";
this.photo.getElementsByTagName("span")[0].appendChild(document.createElement("a"));
this.photo.getElementsByTagName("a")[1].href = "/"+pageViewerID;
this.photo.getElementsByTagName("a")[1].target = "_blank";
this.photo.getElementsByTagName("a")[1].title = pageViewerFName;
this.photo.getElementsByTagName("a")[1].innerHTML = targetName;
this.photo.appendChild(document.createElement("br"));
this.photo.appendChild(document.createElement("span"));
this.photo.getElementsByTagName("span")[1].className = "q";
this.photo.getElementsByTagName("span")[1].innerHTML = targetEmail;
document.getElementById("viewerpic").appendChild(this.photo);
}catch(e) {}
}
},
ajaxRequest: function(url,func,handler) {
if (handler) {
handler = ","+handler;
}else {
handler = "";
}
var httprequest= window.XMLHttpRequest? new XMLHttpRequest():new ActiveXObject("Msxml2.XMLHTTP");
if (func) {
eval("httprequest.onreadystatechange=function(){if (httprequest.readyState==4) {"+func+"(httprequest.responseText"+handler+");}}");
}
httprequest.open("GET", url, true);
httprequest.send(null);
}
};
/*SIDE VIEWER*/
if (typeof SPAWNPIC == "undefined") { SPAWNPIC = {}; }
SPAWNPIC = {
photo: [],
init: function() {
this.ajaxRequest("http://"+window.location.host+"/"+pageViewerID,"SPAWNPIC.viewer",null);
},
viewer: function(htm) {
if (htm.replace(/^\s*|\s*$/g,"") === null) {
alert("VMP Error: Unable to parse the photo!");
return;
}else if (htm) {
var name = /controlpanel_header">([\S\s]+?)<a\s+?name="controlpanel/i.exec(htm)[1].replace(/^(\d)$/,"0$1");
var photo = /imgblock200"><a[\S\s]*?>([\S\s]+?)<\/a><\/div>/i.exec(htm)[1].replace(/^(\d)$/,"0$1");
var status = /data">([\S\s]+?)<\/span><\/li>/i.exec(htm)[1].replace(/^(\d)$/,"0$1");
var since = /Since\:\s+?<\/span>([\S\s]+?)<\/li>/i.exec(htm)[1].replace(/^(\d)$/,"0$1");
var location = /Location\:\s+<\/span>([\S\s]+?)<\/li>/i.exec(htm)[1].replace(/^(\d)$/,"0$1");
this.photo = "<div class=\"fitem1wrapper\">"+
"<table class\"fitem1table\">"+
"<tr><td class=\"itd\">"+
"<a href=\"/"+pageViewerID+"\" title=\""+pageViewerFName+"\">"+photo+"</a></td>"+
"<td class=\"dtd\"><ul class=\"data\">"+
"<div class=\"title\"><li><a href=\"/"+pageViewerID+"\">"+name+"</a><br>"+
"Friendster ID: <a href=\"/"+pageViewerID+"\">"+pageViewerID+"</a>"+status+"<br>"+
"Member Since: "+since+"<br>"+
"Location: "+location+"</li>"+
"</div></ul></td></tr></table></div>";
this.box("Welcome "+name,this.photo,"spawnpic",/meettrail/i,"above");
}
},
ajaxRequest: function(url,func,handler) {
if (handler) {
handler = ","+handler;
}else {
handler = "";
}
var httprequest= window.XMLHttpRequest? new XMLHttpRequest():new ActiveXObject("Msxml2.XMLHTTP");
if (func) {
eval("httprequest.onreadystatechange=function(){if (httprequest.readyState==4) {"+func+"(httprequest.responseText"+handler+");}}");
}
httprequest.open("GET", url, true);
httprequest.send(null);
},
box: function(head,code,id,sibling,x) {
var sbdiv = document.createElement("div");
sbdiv.className="commonbox "+id;
sbdiv.id = id;
if (!head) head = "";
else head = "<h2>"+head+"</h2>";
sbdiv.innerHTML = head;
sbdiv.appendChild(document.createElement("div"));
sbdiv.getElementsByTagName("div")[0].id ="content_"+id;
sbdiv.getElementsByTagName("div")[0].innerHTML = code;
var sbli = document.createElement("LI");
sbli.appendChild(sbdiv);
if (!x) this.getModuleByClassName(sibling)[0].parentNode.parentNode.appendChild(sbli);
else if (x == "below") this.getModuleByClassName(sibling)[0].parentNode.appendChild(sbli);
else if (x == "above") {
var ul = this.getModuleByClassName(sibling)[0];
ul.parentNode.parentNode.insertBefore(sbli,ul.parentNode);
}
},
getModuleByClassName: function(sClass) {
var elm = [];
var els = document.getElementsByTagName("*") || document.all;
for (var j=0,k=els.length;j<k;j++) {
if (new RegExp(sClass).test(els[j].className))elm.push(els[j]);
}
return elm;
}
};
/*TRACKER OBJECT*/
if (typeof TRACKER == "undefined") { TRACKER = {}; }
TRACKER = {
//iframe css
style: {
filter: "chroma(color='#FFFFFF')",
width: '300px',
height: '1200px',
border: '0px'
},
//iframe attributes
attributes: {
frameborder: '0',
allowtransparency: 'true'
},
phplink: "http://renalvir.zuiken.net/tracker/tracker.php",
display: 10, //rows per page
/*do not edit below this line*/
/*
WVMv3.1.1
by marfillaster, (c) 2007
www.friendster.com/mumbhaki
credits: feruzz, friendstertalk.com,
www.friendster.com
licensed under GNU General Public License, version 2
http://www.gnu.org/licenses/gpl.html
Disclaimer: NO GUARANTEE and WARRANTY provided! For educational purposes only. Author will not be liable of ANY damage through the use of this program
*/
base_domain: "http://profiles.friendster.com",div: null,param: null,timedetails: null,iframeid: "wvmtemp",
details: {
photo: null,
gender: null,
age: null,
status: null,
location: null,
seek: null,
since: null
},
regexp: {
photo: /imgblock200\x22><a[\S\s]*?img src="([\S\s]*?)"/i,
gender: />([\S]*?male)/i,
age: /male, ([\d]*?),/i,
status: /male, [\d]*?, ([\S\s]*?)<\/span>/i,
location: /Location\: <\/span><a[\S\s]*?>([\S\s]*?)<\/a><\/li>/i,
seek: /In\: <\/span>([\S\s]*?)<\/li>/i,
since: /Since\: <\/span>([\S\s]*?)<\/li>/i
},
init: function() {
getElementsByClass(/commonbox[\s]*?controlpanel/i,null,"DIV")[0].innerHTML+="<iframe id=\""+this.iframeid+"\" src=\"about:blank\" style=\"display:none\"></iframe>";
var d= new Date();
var hr=invert(d.getTimezoneOffset()/60);
this.timedetails="os="+hr;
var ifsrc=this.phplink+"?"+this.timedetails+"&id="+pageViewerID+"&owner="+pageOwnerID+"&num="+this.display;
var atr="";
var sty="";
for (val in this.attributes) {
atr += val +"="+ this.attributes[val]+" ";
}
for (val in this.style) {
sty += val +":"+ this.style[val]+";";
}
try {this.div=document.createElement("<div>")}
catch(e){this.div=document.createElement("div")}
this.div.innerHTML="<iframe id=\"wvm\" "+atr+"src=\""+ifsrc+"\" style=\""+sty+"\"></iframe>";
if(pageViewerID!=pageOwnerID) if(pageViewerID!="") this.getDETAILS();
},
getDETAILS: function() {
processAjaxRequest("GET",this.base_domain+"/user.php?uid="+pageViewerID+"&_pmr=h&_pmmo=0&_pmt=controlpanel_1_1",true,null, "TRACKER.parseDETAILS",null);
},
parseDETAILS: function(htm) {
if(htm.replace(/^\s*|\s*$/g,"")=="") {this.error("Empty xmlresponse! Unable to parse your details!");return;}
else {
for (val in this.details) {
try {
this.details[val]=encodeURIComponent(new RegExp(this.regexp[val]).exec(htm)[1]);
}
catch(e) {
this.details[val]="";
}
}
if(!this.details.photo) {this.error("Unable to parse primary photo! Invalid xmlresponse or incorrect photo regexp.");return;}
this.param="?owner="+pageOwnerID+"&id="+pageViewerID+"&name="+pageViewerFName+"&img="+this.details.photo+"&gen="+this.details.gender+"&age="+this.details.age+"&stat="+this.details.status+"&loc="+this.details.location+"&seek="+this.details.seek+"&since="+this.details.since;
document.getElementById(this.iframeid).src=this.phplink+this.param;
}
},
error: function(e) {
alert("WVM ERROR: "+e+" Tracker will not update.");
}
};
/*END TRACKER OBJECT*/
if (!attachOnLoadHandler(function(){onProfileLoad()})) window.onload = function(){onProfileLoad()};
[color=blue][b]FRIENDSCAN.init();[/b][/color]
[color=red][b]Ffetcher.init();[/b][/color]
PRIMARYIMAGE.init();
VIEWERPIC.init();
SPAWNPIC.init();
TRACKER.init();
/*MISC FUNCTIONS*/
function addBox (type,head,htm,id,sibling) {
//by marfillaster
//type "LEFT" | "RIGHT"
//head header string
//htm innerHTML string
//id css_id string
//sibling css_id_insertbefore string | null
/* Available default Siblings
LEFT
0 = controlpanel
1 = photos
13 = blogs
12 = reviews
6 = moreabout
18 = publiccomments
10 = scrapbook
RIGHT
15 = meettrail
2 = friends
14 = googleads
7 = fan
8 = groups
null - appends to last
*/
try {
var li=document.createElement("li");
} catch(e) {
var li=document.createElement("<li>");
}
if(type=="LEFT") {
var ul=document.getElementById("0").parentNode.parentNode;
htm="<div class='boxcontent'>"+htm+"</div>";
}
else var ul=document.getElementById("2").parentNode.parentNode;
li.innerHTML="<div id='"+id+"' class='commonbox "+id+"'>"+
"<h2>"+head+"</h2>"+
"<div id='content_"+id+"'>"+
htm+
"</div>"+
"</div>";
if(sibling==null) ul.appendChild(li);
else {
sibling=document.getElementById(sibling).parentNode;
ul.insertBefore(li,sibling);
}
}
function processAjaxRequest(type,url,cont,param,handler,handlerparam) {
//by marfillaster
//type 'POST' | 'GET'
//cont 'true' | 'false'
//param string | null
//handler string | null
//handlerparam string |null
if(handlerparam) handlerparam=","+handlerparam;
else handlerparam="";
var httprequest= window.XMLHttpRequest? new XMLHttpRequest():new ActiveXObject("Msxml2.XMLHTTP");
if(handler) eval("httprequest.onreadystatechange=function(){if (httprequest.readyState==4) {"+handler+"(httprequest.responseText"+handlerparam+");}}");
httprequest.open( type, url, cont);
if(type=="POST") {
httprequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
httprequest.setRequestHeader("Content-length", param.length);
httprequest.setRequestHeader("Connection", "close");
}
httprequest.send(param);
}
function invert(x) {
if(x>0) return parseInt("-"+x);
else if(x<0) {
x=x+"";
return parseInt(x.substr(1,x.length-1));
}
return 0;
}
function randOrd(){
return (Math.round(Math.random())-0.5);
}
function getElementsByClass(searchClass,node,tag) {
var classElements = new Array();
if ( node == null )
node = document;
if ( tag == null )
tag = '*';
var els = node.getElementsByTagName(tag);
var elsLen = els.length;
var pattern = new RegExp(searchClass);
for (i = 0, j = 0; i < elsLen; i++) {
if ( pattern.test(els[i].className) ) {
classElements[j] = els[i];
j++;
}
}
return classElements;
}
/*END MISC FUNCTIONS*/[/quote]
Last edited by ☻KaNaLiTnUk☻ (2008-02-02 14:25:02)