if(typeof $ != 'function') function $(id){return document.getElementById(id);}

function w(s){document.write(s);}
function c(t){return document.createElement(t);}
function tfind_in(e) {if($('topsearch').value==caption_search) {$('topsearch').value='';$('topsearch').style.color='black';}}
function tfind_out(e){if($('topsearch').value=='') {$('topsearch').value=caption_search;$('topsearch').style.color='#999'; }}
function shareUrl(u) {if(u != '-') window.open(u);}
function expand_element(id)  {$(id).style.height='auto';}
function shrink_element(id,h){$(id).style.height=h+'px';}
function show_busy_image(h,s){return show_and_hide(s,h);}
function show_and_hide(s,h)  {$(h).style.display='none';$(s).style.display='inline';return false;}
function show_busy_block(h,s){$(h).style.display='none';$(s).style.display='block'; return false;}

function update_char_count(t,lb,mx,s) {
 var l=$(t).value.length;$(lb).innerHTML=l;
 if(l > mx) { $(lb).style.color='#d01f3c';$(s).disabled=true; }
 else { $(lb).style.color='inherit';$(s).disabled=(l==0); }
}
function shareUrl_writeList(pu) {
 var iP='http://static.hangar18.cc/v3/i/bookmark/',s=new Object(),u=encodeURIComponent(pu);
 s['Digg']=['digg.png','digg.com/submit/?url='+u];
 s['reddit']=['reddit.png','reddit.com/submit?url='+u];
 s['delicious']=['delicious.png','delicious.com/save?url='+u];
 s['ma.gnolia']=['magnolia.png','ma.gnolia.com/bookmarklet/marker/add?url='+u];
 s['BlinkList']=['blinklist.png','www.blinklist.com/index.php?Action=Blink/addblink.php&Url='+u];
 s['StumbleUpon']=['stumbleupon.png','www.stumbleupon.com/submit?url='+u];
 s['men&eacute;ame']=['meneame.png','meneame.net/submit.php?url='+u];
 w(shareUrl_labelShare + '<select class="share_url" onchange="shareUrl(this.value)"><optgroup><option value="-" selected="selected">' + shareUrl_selectSite + '</option></optgroup>');
 for(var n in s){ w('<optgroup style="background-image:url(\''+iP+s[n][0]+'\');"><option value="http://'+s[n][1]+'">'+n+'</option></optgroup>'); }
 w('</select>');
}
function postForm(to,p) {
 var f=c('form');f.method='post';f.action=to;
 for(var k in p) { var i=c('textarea'); i.setAttribute('name',k); i.innerHTML=p[k]; f.appendChild(i); }
 document.body.appendChild(f);f.submit();document.body.removeChild(f);
}
function lw_confirm(b,d,t) { var u='/bands/'+b+'/discs/'+d+'/'+t+'/edit'; postForm(u,{lyricedit:$("lw_bb").innerHTML, save:'1'}); }
function lw_search(a,s) {
 var j=c('script'); j.type='text/javascript';
 j.onload=function(){ lw_display(); };
 j.onreadystatechange=function(){ if(j.readyState=='complete' || j.readyState=='loaded') lw_display(); }; //IE
 j.src="http://lyricwiki.org/api.php?artist=" + a + "&song=" + s + "&fmt=json";
 document.getElementsByTagName("head")[0].appendChild(j);
}
function lw_display() { var l=song.lyrics,t=song.song,a=song.artist;
 $("lw_txt").innerHTML=$("lw_bb").innerHTML=''; if(l.toLowerCase() == 'not found') return;
 if(l.toLowerCase() == '{{instrumental}}') { $("lw_bb").innerHTML='[i](Instrumental)[/i]';l='<em>(Instrumental)</em>'; }
 l=l.replace(/\[solo\]/gi,'(Solo)'); if($("lw_bb").innerHTML == ''){ $("lw_bb").innerHTML=l; } l=l.replace(/\n/g,'<br/>');
 $("lw_txt").innerHTML=l; show_busy_block('msgnolyric','lw');
}
document.getElementsByClassName = function(cl) {
 var retnode=[],myclass=new RegExp('\\b'+cl+'\\b'),elem=this.getElementsByTagName('*');
 for (var i = 0; i < elem.length; i++) { var classes=elem[i].className; if (myclass.test(classes)) retnode.push(elem[i]); }
 return retnode;
};
function addLoadEvent(func) {
  var old = window.onload;
  if (typeof window.onload != 'function') { window.onload = func; }
  else { window.onload = function() { if (old) { old(); } func(); } }
}