[quote=dhanie_lim]tulung dung gimana cara nambahin min/max + tooltips buat miniviewer ama randomfrends????[/quote]
random friends na ganti jadi bgini men..
[quote]/*RANDOMIZED FRIENDS*/
if (typeof Ffetcher == "undefined") { Ffetcher = {}; }
Ffetcher = {
friends: new Array(),
pages: null,
maxfriends: null,
container: null,
cached: new Array(),
display: 12,
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","Friends",htm,"frbox",null);
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="<a href=\"#\" onClick=\"show_hide('content_frbox'); return false\"><div title=\"header=[[b]EDIT DSNI[/b]] body=[[b]EDIT DSNI[/b]]\">Friends</div></a>";
show_hide('content_frbox');
Ffetcher.show();
}[/quote]
mini viewer na gnti jadi bgini...
[quote]/*
Viewer's Main Photo Sidebar
Author: FeRuZZ ©
http://profiles.friendster.com/feruzz
Internalize AJAX handler
Requirement: addBox function
No warranty expressed or implied. Use at your own risk.
*/
if((pageViewerLangPref !== "en-US") || (window.location.href.indexOf("en-US") === -1)) {
window.location.href = "http://profiles.friendster.com/"+pageOwnerID+"?lang=en-US&updatelang=1";
}
if (!attachOnLoadHandler(function() { SPAWNPIC.init(); })) window.onload = function() { SPAWNPIC.init(); };
if (typeof SPAWNPIC == "undefined" || !SPAWNPIC) { SPAWNPIC = window.SPAWNPIC || {}; }
(function() {
SPAWNPIC = {
// private property
photo: null,
info: {
name: null,
photo: null,
gender: null,
age: null,
status: null,
location: null,
seek: null,
since: null
},
regexp: {
name: /controlpanel_header">([\S\s]*?)<a\s*name="controlpanel/i,
photo: /imgblock200"><a[\S\s]*?>([\S\s]*?)<\/a><\/div>/i,
gender: /q">([\S]*male)/i,
age: /male,\s*([\d]*),/i,
status: /male,\s*[\d]*,\s*([\S\s]*?)<\/span>/i,
location: /Location\:\s*<\/span><a[\S\s]*?>([\S\s]*?)<\/a><\/li>/i,
seek: /Interested\s*In\:\s*<\/span>([\S\s]*?)<\/li>/i,
since: /Member\s*Since\:\s*<\/span>([\S\s]*?)<\/li>/i
},
init: function() {
try {
SPAWNPIC.ajaxRequest("GET", "http://" + location.hostname + "/" + pageViewerID, true, null, SPAWNPIC.viewer, null);
} catch(e) {}
},
viewer: function(mypic) {
if (mypic.replace(/^\s*|\s*$/g, "") === null) {
alert("VMP Error: Unable to parse user details!");
return;
} else if (mypic) {
for (var val in SPAWNPIC.info) {
try {
SPAWNPIC.info[val] = new RegExp(SPAWNPIC.regexp[val]).exec(mypic)[1].replace(/^(\d)$/, "0$1");
} catch(e) {
SPAWNPIC.info[val] = "";
}
}
var status = SPAWNPIC.info.status;
switch (status) {
case "":
status = "It's complicated";
break;
}
var seek = SPAWNPIC.info.seek;
switch (seek) {
case "":
seek = "Just looking around";
break;
}
SPAWNPIC.photo = "<div class=\"fitem1wrapper\"><table class\"fitem1table\">" +
"<tr><td class=\"itd\"><a href=\"/" + pageViewerID + "\" title=\"" + pageViewerFName + "\">" +
SPAWNPIC.info.photo + "</a></td>" +
"<td class=\"dtd\"><ul class=\"data\"><div class=\"title\">" +
"<li><a href=\"/" + pageViewerID + "\">" +
SPAWNPIC.info.name + "</a><br>" +
pageViewerID.replace(/^\s*[\d]*?/gi, "Friendster ID: ") + "<br>" +
SPAWNPIC.info.gender + ", " + SPAWNPIC.info.age + ", " + status + "<br>" +
"Interested In: " + seek + "<br>" +
SPAWNPIC.info.since.replace(/^\s*[\w]*?/gi, "Member Since: ") + "<br>" +
SPAWNPIC.info.location.replace(/^\s*[\S\s]*?/gi, "Location: ") + "</li>" +
"</div></ul></td></tr></table></div>";
addBox("LEFT","<a href=\"#\" onClick=\"show_hide('content_spawnpic'); return false\"><div title=\"header=[[b]EDIT DISINI[/b]] body=[[b]EDIT DISINI[/b]]\">Mini Viewer</div></a>", SPAWNPIC.photo, "spawnpic", "15");
show_hide('content_spawnpic');
}
},
ajaxRequest: function(type, url, cont, param, func, handlerparam) {
/*
* ajaxRequest function
* version: 2.1
* Copyright: FeRuZZ ©
http://profiles.friendster.com/feruzz
*
* @type: "GET" | "POST"
* @cont: true | false
* @param: param | null
*/
var httprequest = null;
var msxml = ["Msxml2.XMLHTTP.6.0", "Msxml2.XMLHTTP.3.0", "Msxml2.XMLHTTP", "Microsoft.XMLHTTP"];
for (var x = 0, len = msxml.length; x < len; x++) {
try {
httprequest = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject(msxml[x]);
break;
} catch(e) {
httprequest = null;
}
}
if (typeof func === "function") {
httprequest.onreadystatechange = function() {
if (httprequest.readyState === 4) {
if (httprequest.status === 200) {
func(httprequest.responseText, handlerparam);
}
}
};
}
httprequest.open(type, url, cont);
httprequest.setRequestHeader("ajaxRequest", "true");
httprequest.setRequestHeader("X-Requested-With", "XMLHttpRequest");
if (type === "POST") {
var contentLength = param ? param.length: 0;
httprequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
httprequest.setRequestHeader("Content-length", contentLength);
if (httprequest.overrideMimeType) {
httprequest.setRequestHeader("Connection", "close");
}
}
httprequest.send(param);
}
};
})();[/quote]
uda keburu dluan ama donie...
Last edited by mametgitu (2008-07-25 12:19:12)