var subnav; var last_log; var reg_logid = new RegExp(' id=\"log([0-9]*)\"'); var spy_bins = ""; var light; var loginwin; var regwin; var fbreqwin; var extras = []; var isIE6 = /msie|MSIE 6/.test(navigator.userAgent); var topicalUsers; var comment; var minispy; var minicache=false; var instance_prefix=""; var fbSharePush=false; var fbSharePushAsked=false; var fbSharePostAsked=false; var fbLoginUrl="#"; var frameLinks = false; Array.prototype.indexOf=function(o,i){for(var j=this.length,i=i<0?i+j<0?0:i+j:i||0;i=0){ e.style.display="block"; el.className="drop up"; el.innerHTML="Dölj mer ▲"; }else{ e.style.display="none"; el.className="drop down"; el.innerHTML="Visa mer ▼"; } return false; } function getCaretPos(obj){ if(obj.selectionStart){ return obj.selectionStart; }else if(document.selection && document.selection.createRange){ obj.focus(); var sel = document.selection.createRange(); var dup = sel.duplicate(); var c = "\001"; sel.text=c; dup.moveToElementText(obj); var pos = dup.text.indexOf(c); sel.moveStart('character',-1); sel.text=""; return pos; }else{ return -1; } } function setSelRange(inputEl, selStart, selEnd){ if (inputEl.setSelectionRange){ inputEl.focus(); inputEl.setSelectionRange(selStart, selEnd); }else if(inputEl.createTextRange){ var range = inputEl.createTextRange(); range.collapse(true); range.moveEnd('character', selEnd); range.moveStart('character', selStart); range.select(); } } function getKey(str,keys){ keys=arr_uniq(keys);//keys.unique(); var matches=[]; //new Array(); for(var i=0; i1){ var common = 0; var tryAnother=true; while(tryAnother){ var chr = matches[0].charAt(common); for(var i=1; i pushad"; if(fbSharePush){ spreadFacebook(response[0],'pushat'); } } } },"text/html") return false; } function logout(){ ajaxCall("/loggaut","ajax=true",function(http_request){},"text/html"); } var drop = function(){ this.blur(); var e = document.getElementById(this.getAttribute('rel')); if(e.style.display=="inline"){ e.style.display="none"; }else{ e.style.display="inline"; } //var old_body_click = document.body.onclick; document.body.onclick=function(){ //old_body_click(); document.body.onclick = function(){ e.style.display="none"; //document.body.onclick=old_body_click; } } return false; } function showVideo(){ var id = this.getAttribute('rel'); ajaxCall("/getvideo.php","id="+id,function(http_request){ if(http_request.responseText!="" && http_request.responseText!="notvideo"){ var viddiv = document.getElementById("video"+id); viddiv.style.display = "block"; viddiv.innerHTML = http_request.responseText; var showvideo = document.getElementById("show_video"+id); showvideo.innerHTML = 'Dölj video'; var hide = function(){ viddiv.style.display = "none"; showvideo.innerHTML = 'Visa video'; showvideo.getElementsByTagName('A')[0].onclick=function(){ viddiv.style.display = "block"; showvideo.innerHTML = 'Dölj video'; showvideo.getElementsByTagName('A')[0].onclick=hide; return false; }; return false; }; showvideo.getElementsByTagName('A')[0].onclick=hide; } },"text/xml"); return false; } function showImage(){ var id = this.getAttribute('rel'); ajaxCall("/getimage.php","id="+id,function(http_request){ if(http_request.responseText!="" && http_request.responseText!="notimage"){ var imgdiv = document.getElementById("image"+id); imgdiv.style.display = "block"; imgdiv.innerHTML = http_request.responseText; var showimage = document.getElementById("show_image"+id); showimage.innerHTML = 'Dölj bild'; var hide = function(){ imgdiv.style.display = "none"; showimage.innerHTML = 'Visa bild'; showimage.getElementsByTagName('A')[0].onclick=function(){ imgdiv.style.display = "block"; showimage.innerHTML = 'Dölj bild'; showimage.getElementsByTagName('A')[0].onclick=hide; return false; }; return false; }; showimage.getElementsByTagName('A')[0].onclick=hide; } },"text/xml"); return false; } function showPoll(){ var id = this.getAttribute('rel'); ajaxCall("/getvideo.php","id="+id,function(http_request){ if(http_request.responseText!="" && http_request.responseText!="notvideo"){ var viddiv = document.getElementById("video"+id); viddiv.style.display = "block"; viddiv.innerHTML = http_request.responseText; var showvideo = document.getElementById("show_video"+id); showvideo.innerHTML = 'Dölj omröstning'; var hide = function(){ viddiv.style.display = "none"; showvideo.innerHTML = 'Visa omröstning'; showvideo.getElementsByTagName('A')[0].onclick=function(){ viddiv.style.display = "block"; showvideo.innerHTML = 'Dölj omröstning'; showvideo.getElementsByTagName('A')[0].onclick=hide; return false; }; return false; }; showvideo.getElementsByTagName('A')[0].onclick=hide; } },"text/xml"); return false; } function showList(){ var id = this.getAttribute('rel'); ajaxCall("/getvideo.php","id="+id,function(http_request){ if(http_request.responseText!="" && http_request.responseText!="notvideo"){ var viddiv = document.getElementById("video"+id); viddiv.style.display = "block"; viddiv.innerHTML = http_request.responseText; var showvideo = document.getElementById("show_video"+id); showvideo.innerHTML = 'Dölj lista'; var hide = function(){ viddiv.style.display = "none"; showvideo.innerHTML = 'Visa lista'; showvideo.getElementsByTagName('A')[0].onclick=function(){ viddiv.style.display = "block"; showvideo.innerHTML = 'Dölj lista'; showvideo.getElementsByTagName('A')[0].onclick=hide; return false; }; return false; }; showvideo.getElementsByTagName('A')[0].onclick=hide; } },"text/xml"); return false; } function report(){ var id = this.getAttribute('rel'); ajaxCall("/report.php","link="+id,function(http_request){ if(http_request.responseText!=""){ var response = http_request.responseText; if (response=="offline"){ login("Logga in för att rapportera!"); }else{ document.getElementById('link'+response).className += " reported"; //document.getElementById('report'+response).className = "report"; document.getElementById('report'+response).innerHTML = ""; document.getElementById('dupereport'+response).innerHTML = ""; } } },"text/html"); return false; } function dupereport(){ var id = this.getAttribute('rel'); ajaxCall("/dupereport.php","link="+id,function(http_request){ if(http_request.responseText!=""){ var response = http_request.responseText; if (response=="offline"){ login("Logga in för att rapportera!"); }else{ document.getElementById('link'+response).className += " reported"; //document.getElementById('report'+response).className = "dupereport"; document.getElementById('report'+response).innerHTML = ""; document.getElementById('dupereport'+response).innerHTML = ""; } } },"text/html"); return false; } function deleteLink(){ var id = this.getAttribute('rel'); ajaxCall("/delete.php","link="+id,function(http_request){ if(http_request.responseText!=""){ var response = http_request.responseText; if (response=="offline"){ login("Logga in för att radera!"); }else{ //document.getElementById('delete'+response).className = "delete"; document.getElementById('link'+response).className += " deleted"; document.getElementById('delete'+response).innerHTML = ""; } } },"text/html"); return false; } function reportComment(){ var id = this.getAttribute('rel'); var parent = this.parentNode; ajaxCall("/report_comment.php","comment="+id,function(http_request){ if(http_request.responseText!=""){ var response = http_request.responseText; if (response=="offline"){ login("Logga in för att rapportera!"); }else{ document.getElementById('comment-'+id).className += " reported"; parent.innerHTML='Rapporterad'; } } },"text/html"); return false; } function addLinkToTopic(){ var what = this.getAttribute('rel'); var link = what.split(":")[0]; var topic = what.split(":")[1]; var displayName = what.split(":")[2]; ajaxCall("/addLinkToTopic.php","link="+link+"&topic="+topic,function(http_request){ if(http_request.responseText!=""){ var response = http_request.responseText; if (response=="offline"){ login("Logga in för att rapportera!"); }else{ var linkDiv = document.getElementById('link'+link); var linkHtml = linkDiv.innerHTML; var splitHtml = linkHtml.split(" i "); var host = window.location.host.replace(/^([a-z0-9]){1,20}./, ''); linkDiv.innerHTML = splitHtml[0] + ' i ' + displayName + ', ' + splitHtml[1]; initLinks(); } } },"text/html"); this.parentNode.removeChild(this); return false; } function click(id){ ajaxCall("/click.php","link="+id,function(http_request){},"text/html") } function initLinks(){ var pushbuttons = getElementsByClass("push",document.getElementById("main"),"p"); for(var i=0; i'+infoText+'

'; document.getElementsByTagName('BODY')[0].appendChild(fbreqwin); extras.push(fbreqwin); document.getElementById("fbPostTrue").onclick = function(){ closeExtras(); true_function(); } document.getElementById("fbPostFalse").onclick = function(){ closeExtras(); false_function(); } }else{ fbreqwin.style.display = "block"; } } function spreadFacebook(linkid,verb){ var fbSpreadCall = function(){ ajaxCall("/spreadfacebook.php","linkid="+linkid+"&verb="+verb,function(http_request){},"text/xml"); } FB.Facebook.apiClient.users_hasAppPermission("publish_stream",function(publish_stream){ var asked = false; if(verb=="postat") asked = fbSharePostAsked; if(verb=="pushat") asked = fbSharePushAsked; if(publish_stream && asked){ fbSpreadCall(); }else{ showFbPostRequest( function(){ FB.Connect.showPermissionDialog('publish_stream', function(permissions){ if(permissions.indexOf('publish_stream')>=0){ fbSpreadCall(); } } ); }, function(){ ajaxCall("/fb_turnoffspread.php","verb="+verb,function(http_request){},"text/xml"); fbSharePush=false; }, verb ); } }); } function showRegister(){ if(isIE6) return true; closeExtras(); modularWin(); if(!regwin){ regwin = document.createElement('div'); regwin.id = "regwin"; extra_message = '
Om du har ett konto på Facebook kan du enkelt logga in via det utan att skapa ett konto på Pusha, klicka bara på knappen nedan.

'; regwin.innerHTML = '

Stäng

Bli medlem

'+extra_message+'

Acceptera vårt användaravtal.

'; document.getElementsByTagName('BODY')[0].appendChild(regwin); extras.push(regwin); //parseFbml(); }else{ regwin.style.display = "block"; } document.register.username.focus(); //document.getElementById("username").focus(); return false; } /* function showLogin(){ showLogin("",""); } function showLogin(message){ showLogin(message,""); } */ function showLogin(message,ref){ if(typeof message === 'undefined') message=""; if(typeof ref === 'undefined') ref=""; if(isIE6) return true; closeExtras(); modularWin(); if(!loginwin){ loginwin = document.createElement('div'); loginwin.id = "loginwin"; var whole=""; if(typeof message!="string") message=""; var extra_title = ""; var extra_message = ""; if(message!=""){ extra_title = " för att pusha"; extra_message = '

Ny på Pusha? Bli medlem gratis eller anslut med ditt befintliga Facebook-konto genom att klicka på knappen nedan.

'; } if(typeof ref!="string") ref=""; if(ref==""){ whole = ''; }else{ ref = ''; } var fullhtml = '

Stäng

Logga in'+extra_title+'

'+extra_message+''+ref+whole+'

Kom ihåg mig | Glömt ditt lösenord?

'; loginwin.innerHTML = fullhtml; document.getElementsByTagName('BODY')[0].appendChild(loginwin); extras.push(loginwin); //parseFbml(); }else{ loginwin.style.display = "block"; } document.login.username.focus(); //document.getElementById("username").focus(); return false; } function initModular(){ var login = document.getElementById("login"); if(login) login.onclick = showLogin; var register = document.getElementById("signup"); if(register) register.onclick = showRegister; var submit = document.getElementById("post"); var online = document.getElementById("logout"); if(submit && !online) submit.onclick=function(){return showLogin('

Logga in för posta länkar!

Eller bli medlem gratis om du inte redan är det.

','/posta');}; } function addLoadEvent(func) { var oldonload = window.onload; if (typeof window.onload != 'function') { window.onload = func; } else { window.onload = function() { if (oldonload) { oldonload(); } func(); } } } function getElementsByClass(className,node,tag) { var classElements = new Array(); if (node == null) node = document; if (tag == null) tag = '*'; var els = node.getElementsByTagName(tag); var elsLen = els.length; for(var i=0, j=0; i-1){ classElements[j] = els[i]; j++; } } return classElements; } function getMiniSpyCached(){ sc = document.getElementById("getminiscript"); if(sc){ document.body.removeChild(sc) } var script = document.createElement("script"); script.setAttribute("src","http://cache.pusha.se/"+instance_prefix+"minispy?nocache="+Math.random()); script.setAttribute("type","text/javascript"); script.setAttribute("id","getminiscript"); document.body.appendChild(script); } function gotMiniSpy(logs){ newlogs = []; for(var i=0; ilast_log){ newlogs.push(logs.logs[i]); } } addMini(newlogs); } function addMini(logs){ if(logs.length>0){ var log = logs.pop(); loghtml = '
'; loghtml += '
'+log.avatar+''; loghtml += '
'+log.title+'
'; loghtml += '
'+log.action+' av '+log.username+'
'; loghtml += '
'; minispy.innerHTML = loghtml + minispy.innerHTML; var dls = minispy.getElementsByTagName("DL"); minispy.removeChild(dls[dls.length-1]); //parseFbml(); last_log=log.id; setTimeout(function(){addMini(logs)},500); } } function NewTips(){} NewTips.init = function(){ NewTips.layer = document.getElementById("newtips"); if(NewTips.layer){ NewTips.container = document.getElementById("newtipcontainer"); document.getElementById("yeslink").onclick=NewTips.yes; document.getElementById("nolink").onclick=NewTips.no; //NewTips.test(); NewTips.dupes = new Array(); NewTips.dupes[0] = parseInt(document.getElementById("newtiplink").rel); ajaxCall("/get_newtips.php","",function(http_request){ if(http_request.responseText!=""){ NewTips.links = eval('(' + http_request.responseText + ')'); //alert(NewTips.links[0].title); } },"text/html"); } } NewTips.scrollTo = function(target,callback){ if(parseInt(NewTips.layer.style.top)!=target){ var curr = (NewTips.layer.style.top=="")? 0 : parseInt(NewTips.layer.style.top); var dist = curr-target; NewTips.layer.style.top = (curr-Math.ceil(dist/5.0))+"px"; setTimeout('NewTips.scrollTo('+target+','+callback+')',10); }else{ if(target!=0){ NewTips.layer.style.top = "50px"; callback(); NewTips.scrollTo(0,callback); } } } NewTips.next = function(){ NewTips.scrollTo(-50,function(){ NewTips.dupes.push(parseInt(document.getElementById("newtiplink").rel)); var newLink = NewTips.links.shift(); while (newLink!=null && NewTips.dupes.indexOf(newLink.id)>=0){ newLink = NewTips.links.shift(); } if(newLink==null){ //no more links NewTips.layer.innerHTML = '
Inga fler nya länkar'; setTimeout('NewTips.close()',1000); }else{ //switch link document.getElementById("newtiplink").innerHTML = newLink.title; document.getElementById("newtiplink").href = (frameLinks)? newLink.frameUrl : newLink.url; document.getElementById("newtiplink").rel = newLink.id; document.getElementById("newtiplink").title = newLink.url; //alert("old: "+document.getElementById("yeslink").rel); document.getElementById("yeslink").rel = "h="+newLink.h+"&link="+newLink.id; document.getElementById("nolink").rel = "h="+newLink.h+"&link="+newLink.id; document.getElementById("newtipcomment").href = newLink.permaUrl; document.getElementById("newtipcomment").innerHTML = "("+((newLink.nrOfComments==0)? "Kommentera)" : newLink.nrOfComments+" kommentar"+((newLink.nrOfComments==1)? ")" : "er)")); //alert("new: "+document.getElementById("yeslink").rel); } }); } NewTips.test = function(){ setInterval('NewTips.next()',4000); } NewTips.close = function(){ if(NewTips.container.style.display!="none"){ if(parseInt(NewTips.container.style.height)>0||NewTips.container.style.height==""){ if(NewTips.container.style.height==""){ NewTips.container.style.display="block"; NewTips.container.style.height="30px"; }else{ NewTips.container.style.height=(parseInt(NewTips.container.style.height)-2)+"px"; } setTimeout('NewTips.close()',10); }else{ NewTips.container.style.height="0"; NewTips.container.style.display="none"; } } } NewTips.yes = function(){ //alert(this.rel); ajaxCall("/save.php",this.rel,function(http_request){ if(http_request.responseText!=""){ if (http_request.responseText=="offline"){ login("pusha"); }else if(http_request.responseText=="notallowed"){ //alert("Något gick fel, prova att ladda om sidan"); }else{ var response = http_request.responseText.split(" "); if(fbSharePush){ spreadFacebook(response[0],'pushat'); } } } },"text/html"); NewTips.next(); return false; } NewTips.no = function(){ //alert("no"); ajaxCall("/no.php",this.rel,function(http_request){ if(http_request.responseText!=""){ if (http_request.responseText=="offline"){ login("pusha"); }else if(http_request.responseText=="notallowed"){ alert("fel: "+http_request.responseText); }else{ //noed } } },"text/html"); NewTips.next(); return false; } addLoadEvent(initSearch); addLoadEvent(initLinks); addLoadEvent(initSubNav); addLoadEvent(initMiniSpy); addLoadEvent(initSpy); addLoadEvent(initModular); addLoadEvent(NewTips.init);