PDA

View Full Version : Your new YouTube hompage


rubenbuhr
04-15-2010, 05:40 AM
You tube has RSS feeds on any member name. I wrote this for IE only, because.
It might become outdated soon with HTML5 but see what you think?
The screen drags to different size, load all your favorites on line 19 var users.
uploaded as .txt below

<HTML>
<HEAD><TITLE>IEYouTube</TITLE>
<META http-equiv=Content-Type content="text/html; charset=UTF-8">
<STYLE type=text/CSS>
body{margin:2px;background:#556677}
A:link { font-size:8px; COLOR: black; TEXT-DECORATION: none;BACKGROUND-COLOR: silver;width:120px;height:80px;overflow:hidden;}
A:visited { COLOR: silver; FONT-FAMILY: comic sans ms; TEXT-DECORATION: none;width:30px;height:20px;overflow:hidden;border:3px solid #cc0099;}
A:active { TEXT-DECORATION: none}
A:hover { font-size:12px; COLOR: red; BACKGROUND-COLOR: silver; TEXT-DECORATION: none;}
.times{font-weight:bold;background:white;font-size:12px}
.links{background-position:center center;}
FIELDSET{width:100%;height:100%;overflow:hidden;border:0px solid black;cursor:pointer;background-position:center center;}
input{width:105px;background:slategray;font-size:12px}
#buttz{margin:3px}
form{margin:0px}
</STYLE>
<SCRIPT type="text/javascript">
var users='KingHillerX,MrTycoonCashflow,TNAwrestling,AlJazeeraEnglish,ReutersVideo,AssociatedPress,foxne wschannel,CBSNewsOnline,ABCNews,PBS,failblog,KATUCommunities';

users=users.split(',')
var rs=new Array();
rs[rs.length]='Recently Added~http://gdata.youtube.com/feeds/base/standardfeeds/most_recent?client=ytapi-youtube-browse&alt=rss';
rs[rs.length]='Recently Featured~http://gdata.youtube.com/feeds/base/standardfeeds/recently_featured?client=ytapi-youtube-browse&alt=rss';
var term; var d = new Date(); d=d.getDay();
function ReplaceStuff(OLD,NEW,string){ var rx=new RegExp(OLD,"g"); var z=string.replace(rx, NEW); return z}
function bkColor(x){return Math.round(Math.random()*75)+x}
function aRanColor(x){return 'rgb('+bkColor(x)+','+bkColor(x)+','+bkColor(x)+')'}

function def(h,x,ao){
var q=x.split('<title>');
var p=x.split('<link>');
var n=x.split('Time:');
var m=x.split('More in&lt;/span&gt;'); //http://www.youtube.com/watch?v=_tR8bORL91A
var f=x.split('&lt;img alt="" src="'); //var w='watch'; var wp='watch_popup';
var kolor=aRanColor(150);
var z=new Array();

for(i=1,j=3,k=0;i<p.length;i++,j++,k++){ z[k]='';
if(n[i]){z[k]+='<span style="display:none">'+n[i].substring(86,91)+'</span>'; tim='<span class="times">'+n[i].substring(86,91)+'</span>'}
if(m[i]){ tit='<span style="color:black">'+m[i].substring(62,m[i].indexOf("&lt;/a"))+'</span>'}
if(f[i]){ bkim=f[i].substring(0,f[i].indexOf('"&gt;'));}
if(p[j]){ var pLink=ReplaceStuff('watch','watch_popup',p[j].substring(0,p[j].indexOf('<')))
z[k]+='<a class="links" target="iWin" href="'+pLink+'" style="background-image:url('+bkim+')" onmouseover="this.style.backgroundImage=\'url(none)\'" onmouseout="this.style.backgroundImage=\'url('+bkim+')\'" onclick="this.style.border=\'3px solid red\'">';}
if(q[j]){ //descript=''+tim+'<p>'+tit+''
z[k]+='<FIELDSET onclick="document.getElementById(\'des\').innerHTML=this.alt; " style="width:110px;text-align:left" alt="'+q[j].substring(0,q[j].indexOf('<'))+'" onmouseover="capts(this.alt,this)"><LEGEND style="font-size:10px;background:ivory;color:black;text-decoration:none">'+tim+'</LEGEND>'+tit+'hello</FIELDSET></a> ';}
}
z.sort();z.splice(0,0,''+h+'');
var zy=new Array()
for(i=0,j=0;i<z.length;i++){if(z[i]){zy[j]=z[i];j++}} z=zy
var t=''
for(i=1,j=0;i<26;i++,j++){ z[i]=ReplaceStuff('&amp;amp;','&',z[i]); z[i]=ReplaceStuff(';','',z[i]);

t+=''+z[i]+'';
}
if(ao){ allof+=t+' '+h+' '; allOfEm() }
else{ document.getElementById('zframe').innerHTML=t+'';}
}
var hiColor="#cc6666"; var visKolor="#999999"; var vK=new Array()
function atr(){ var b='';
for(i=0;i<users.length;i++){
b+='<input type=button style="width:50px" onclick="vK['+i+']=\'#333333\';srcUser(\'http://gdata.youtube.com/feeds/base/users/'+users[i]+'/uploads\');formButts(this)" value="'+users[i]+'"> '}
for(i=0,j=users.length;i<rs.length;i++,j++){
a=rs[i].substring(0,rs[i].indexOf('~')); url=rs[i].substring(rs[i].indexOf('~')+1,rs[i].length);
if(i>1){b+='<input type=button onclick="vK['+j+']=\'#333333\';getSrcFile(\''+a+'\',\''+url+'\',this,'+i+')" value="'+a+term+'"> '}
else{b+='<input type=button onclick="vK['+j+']=\'#333333\';getSrcFile(\''+a+'\',\''+url+'\',this,'+i+')" value="'+a+'"> '}}
b+='<br>';
var cus=['query~http://gdata.youtube.com/feeds/base/videos?q=*&client=ytapi-youtube-search&v=2',
'user~http://gdata.youtube.com/feeds/base/users/*/uploads'];
for(j=0;j<cus.length;j++){
var aa=cus[j].substring(cus[j].indexOf('~')+1,cus[j].indexOf('*') ); var bb=cus[j].substring(cus[j].indexOf('*')+1,cus[j].length );
var cc=cus[j].substring(0,cus[j].indexOf('~') );
}

document.getElementById('buttz').innerHTML=b +''
for(i=0;i<document.forms[0].elements.length;i++){vK[i]=visKolor;}
}
var qa='m';var qb='t';var qc='z'; var allof=''; var ao=0;


function getSrcFile(a,url,ao){if(isNaN(ao)){formButts(ao);}
oxmlhttp = null;
try{ oxmlhttp = new XMLHttpRequest(); oxmlhttp.overrideMimeType("text/xml"); }
catch(e){
try{ oxmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); }
catch(e){ return null; }
}
if(!oxmlhttp) return null;
try{ oxmlhttp.open("GET",url,false); oxmlhttp.send(null); }
catch(e){ return null; }
if(isNaN(ao)){def(a,oxmlhttp.responseText)}
else {def(a,oxmlhttp.responseText,ao)}

}

</SCRIPT>
<META content="MSHTML 6.00.2900.2963" name=GENERATOR></HEAD>
<BODY scroll="auto" onload="atr()">
<table border=0 cellpadding=1 style="width:100%;border-collapse:collapse;position:relative">
<tr>
<td id="afr" vAlign="top" style="width:590px"><TABLE BORDER=0 style="position:relative;border-collapse:collapse">
<TR>
<TD id="iFr" style="height:400px;width:580px"><IFRAME name="iWin" style="height:100%;width:100%" frameborder=no src=""></IFRAME>

</TD><TD>&nbsp;</TD></TR><TR><TD><div id="des" onmouseover="capts(this.innerHTML,this)" onmouseout="document.getElementById('cap1').style.display='none'" style="background:#000000;color:#11FF11;width:99%;height:20px;overflow:hidden">description</div></TD><TD class="dIf" style="position:absolute;top:400px;left:585px;background:pink;cursor:pointer;font-size:20px;font-weight:bold">O</TD>
</TR>
</TABLE>

<form id="buttz" onSubmit="window.open(qa+qb+qc); return false"></form>
</td>
<td vAlign="top"><div id="zframe" style="position:relative" onmouseout="document.getElementById('cap1').style.display='none'">&nbsp;</div>
</td>
</tr>
</table>
<SCRIPT type="text/javascript">
var raw;

function srcUser(url){ oxmlhttp = null;
try{ oxmlhttp = new XMLHttpRequest(); oxmlhttp.overrideMimeType("text/xml"); }
catch(e){ try{ oxmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); }
catch(e){ return null; }
}
if(!oxmlhttp) return null;
try{ oxmlhttp.open("GET",url,false); oxmlhttp.send(null); }
catch(e){ return null; }
raw=ReplaceStuff('&gt;','>',oxmlhttp.responseText)
raw=ReplaceStuff('&lt;','<',raw)
raw=ReplaceStuff('&amp;#39;',"'",raw)
//raw=ReplaceStuff('&amp;quot;','"',raw)
var imga=''; var linq=new Array(); var titl=new Array(); var des=new Array(); //var tim=new Array()
var imgs=raw.split('<img');
for(i=1;i<imgs.length;i++){if(imgs[i].indexOf('11x11')==-1){imga+=''+imgs[i].substring(0,imgs[i].indexOf('>')-1)+','}}
imga=ReplaceStuff(' alt="" src="','',imga); imga=imga.split(','); imga.length--;

var linqs=raw.split('<a ');
for(i=1,j=0;i<linqs.length;i++){ lq=linqs[i].substring(0,linqs[i].indexOf('</a>'))+'';
if(lq.indexOf('<img')==-1 && lq.indexOf('categories_portal')==-1 && lq.indexOf('profile?')==-1){linq[j]=lq;j++}}
for(i=0;i<linq.length;i++){ titl[i]=linq[i].substring(linq[i].indexOf('>')+1,linq[i].length)
linq[i]=linq[i].substring(linq[i].indexOf('href="')+6,linq[i].indexOf('>')-1);
linq[i]=ReplaceStuff('watch','watch_popup',linq[i].toString())
}
var desc=raw.split('<span>')
for(j=1,i=0;j<desc.length;j++,i++){des[i]=desc[j].substring(0,desc[j].indexOf('</span>')+'\n');
des[i]=ReplaceStuff('&amp;quot;',' ',des[i])}

var tims=raw.split('<td>')
for(i=1;i<tims.length;i++){tims[i-1]=tims[i].substring(tims[i].indexOf('</td>')-12,tims[i].indexOf('</td>')-7)} tims.length--

var showIt='';
for(i=0;i<linq.length;i++){
showIt+='<a class="links" href="'+linq[i]+'" target="iWin" style="background-image:url('+imga[i]+');" onclick="this.style.border=\'3px solid red\'"><FIELDSET style="width:110px;position:relative;text-align:center;" alt="'+des[i]+'" onmouseover="capts(this.alt,this)" onclick="document.getElementById(\'des\').innerHTML=this.alt;"><LEGEND style="font-size:10px;background:ivory;color:black;text-decoration:none">'+tims[i]+'</LEGEND>';
showIt+='</FIELDSET></a> '}
document.getElementById('zframe').innerHTML=''+showIt+'';
}
function formButts(y){for(i=0;i<document.forms[0].elements.length;i++){document.forms[0].elements[i].style.backgroundColor=vK[i]} y.style.backgroundColor=hiColor}
var dragapproved=false; var zz,xx,yy;
function move(){
if(event.button==1&&dragapproved){
zz.style.pixelLeft=temp1+event.clientX-xx; zz.style.pixelTop=temp2+event.clientY-yy;
document.getElementById('iFr').style.width=zz.style.pixelLeft;
document.getElementById('afr').style.width=zz.style.pixelLeft+20+'px';
document.getElementById('iFr').style.height=zz.style.pixelTop;
return false;}
}
function drags(){
if(event.srcElement.className=="dIf"){
dragapproved=true; zz=event.srcElement; temp1=zz.style.pixelLeft; temp2=zz.style.pixelTop; xx=event.clientX;yy=event.clientY;document.onmousemove=move;
}
}

function capts(x,y){ var c=document.getElementById('cap1'); c.innerHTML=' '+x; var s=document.body.scrollTop;
c.style.top=event.clientY+s;c.style.left=event.clientX+10;
c.style.display='block'}
document.onmousedown=drags;
document.onmouseup=new Function("dragapproved=false");

</SCRIPT>
<div id="cap1" style="position:absolute;background:white;padding:3px;display:none">c</div>
</BODY></HTML>