in reply to PerlMonks meets Twitter Bootstrap
But I noticed that http://buzzword.org.uk/2014/pm/pm2.js is not reachable for me.
Does someone have a copy and is please able to post it here within a code block?
Just to keep it archived for the future and linkable.
Cheers Rolf
(addicted to the Perl Programming Language and ☆☆☆☆ :)
Je suis Charlie!
It's back online, but here a copy.
Please note you can also link to it directly.
update: under construction need a real computer to fix this*
(darn when copying from my tablet \n got lost, this plus tab indentation makes it unreadable, and probably even broken)
Update: tried my best to reconstruct a decent formatting (god bless emacs)
/* <script type="text/javascript" src="//code.jquery.com/jquery-1.11.1. +min.js"></script> <script type="text/javascript" src="//maxcdn.bootstrapcdn.com/bootst +rap/3.2.0/js/bootstrap.min.js"></script> <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs +/highlight.js/8.2/highlight.min.js"></script> <script type="text/javascript" src="//buzzword.org.uk/2014/pm/pm2.js +"></script> */ (function($) { $(function () { // Collect content to keep // var main_content = $(".main_content").html(); var attribution = $(".titlechooser .attribution").html(); var footer = $("#footer").html(); var title = $("title").html(); var userlink = $("#titlebar-top .topnavmenu li:nth-child(2)"). +html(); var nodelets = []; var userid = userlink.match(/node_id=([0-9]+)/)[0].substr(8); $(".nodelet").each(function(ix,e) { if (e.id == "Free_Nodelet") return; var nodelet_title = $(e).find("th.nodelet_head span.title" +).html(); var nodelet_body = $(e).find("td.nodelet_body").html(); nodelets.push({ title: nodelet_title, body: nodelet_body } +); }); var PM_NAVBAR = '' + '<div class="navbar navbar-default" role="navigation">' + '<div class="container-fluid">' + '<div class="navbar-header">' + '<button type="button" class="navbar-toggle collapsed" dat +a-toggle="collapse" data-target=".navbar-collapse">' + '<span class="sr-only">Toggle navigation</span>' + '<span class="icon-bar"></span>' + '<span class="icon-bar"></span>' + '<span class="icon-bar"></span>' + '</button>' + '<a class="navbar-brand" href="/">PerlMonks</a>' + '</div>' + '<div class="navbar-collapse collapse">' + '<ul class="nav navbar-nav">' + '<li><a href="/?node=Newest+Nodes"><i class="glyphicon gly +phicon-star"></i> Newest Nodes</a></li>' + '<li><a href="?node=Recently+Active+Threads"><i class="gly +phicon glyphicon-list-alt"></i> Recent Threads</a></li>' + '<li class="dropdown">' + '<a href="#" class="dropdown-toggle" data-toggle="dropdown +"><i class="glyphicon glyphicon-list"></i> Sections <span class="care +t"></span></a>' + '<ul class="dropdown-menu" role="menu">' + '<li><a href="?node=Seekers%20of%20Perl%20Wisdom">Seekers& +nbsp;of Perl Wisdom</a></li>' + '<li><a href="?node=Meditations">Meditations</a></li>' + '<li><a href="?node=Perl%20Monks%20Discussion">PerlMonks&n +bsp;Discussion</a></li>' + '<li><a href="?node=Obfuscated%20Code">Obfuscation</a></li +>' + '<li><a href="?node=Reviews">Reviews</a></li>' + '<li><a href="?node=Cool%20Uses%20for%20Perl">Cool Us +es For Perl</a></li>' + '<li><a href="?node=Perl%20News">Perl News</a></li>' ++ '<li><a href="?node=Categorized%20Questions%20and%20Answer +s">Q&A</a></li>' + '<li><a href="?node=Tutorials">Tutorials</a></li>' + '<li><a href="?node=Perl%20Poetry">Poetry</a></li>' + '<li><a href="?node=Recently%20Active%20Threads">Recent&nb +sp;Threads</a></li>' + '<li><a href="?node=Tidings">What\'s New</a></li>' + '<li class="divider"></li>' + '<li><a href="?node_id=596792">Last Hour of CB</a></li>' + '</ul>' + '</li>' + '</ul>' + '<form class="nav navbar-form navbar-left" role="search" m +ethod="post" action="/" style="padding-top:4px">' + '<div class="input-group input-group-sm">' + '<input type="hidden" name="node_id" value="3989" /><input + type="hidden" name="n0" value="948999" /><input type="hidden" name=" +BH" value="1" /><input type="hidden" name="nf" value="1" /><input typ +e="hidden" name="go" value="Search" />' + '<input type="text" class="form-control" placeholder="Sear +ch" name="BIT" id="srch-term">' + '<span class="input-group-btn">' + '<button type="submit" class="btn btn-default">' + '<i class="glyphicon glyphicon-search"></i>' + '</button>' + '</span>' + '</div>' + '</form>' + '<ul class="nav navbar-nav navbar-right">' + '<li class="dropdown">' + '<a href="#" class="dropdown-toggle" data-toggle="dropdown +"><i class="glyphicon glyphicon-user"></i> You <span class="caret"></ +span></a>' + '<ul class="dropdown-menu" role="menu">' + '<li>' + userlink + '</li>' + '<li><a href="/?node=Message+Inbox;srch_folder=0">Inbox</a +></li>' + '<li><a href="/?node_id=6364;user=' + userid + '">Nodes yo +u wrote</a></li>' + '<li class="divider"></li>' + '<li class="dropdown-header">Tools</li>' + '<li><a href="/?node_id=1072">Settings</a></li>' + '<li><a href="/?node_id=109;op=logout">Log out</a></li>' + '</ul>' + '</li>' + '</ul>' + '</div><!--/.nav-collapse -->' + '</div><!--/.container-fluid -->' + '</div>'; // Clean sweep and rebuild document skeleton // $("head, body").empty(); $("head").append("<title />"); $("head title").html( title ); $("head").append("<link rel='stylesheet' type='text/css' href= +'//buzzword.org.uk/2014/pm/bootstrap.min.css' />"); $("head").append("<link rel='stylesheet' type='text/css' href= +'//buzzword.org.uk/2014/pm/highlight.css' />"); $("head").append("<link rel='stylesheet' type='text/css' href= +'//buzzword.org.uk/2014/pm/pm2.css' />"); $("body").append( "<nav />" + "<header class='container'>" + "<div class='row'><h1 class='col-sm-12'/></div>" + "</header>" + "<div class='container'>" + "<div class='row'>" + "<article class='col-sm-9'><p id='main_attribution' ro +le='contentinfo' /></article>" + "<aside class='col-sm-3' />" + "</div>" + "<div class='row'>" + "<footer class='col-sm-12' />" + "</div>" + "</div>" ); $("body header h1").html( title ); $("body nav").html( PM_NAVBAR ); if (attribution) $("#main_attribution").html( '<span class="attribution">'+ +attribution+'</span>' ); $("body article").append( main_content ); for (var i in nodelets) { $("body aside").append("<section />"); var section = $("body aside > section:last"); section.append("<h1 />"); section.find("h1").html( nodelets[i].title ); section.append("<div />"); section.find("div").html( nodelets[i].body ); } $("body footer").html( footer ); $("#writeups").addClass("table").addClass("table-striped").add +Class("table-condensed").find('tr').each(function (i,e) { var row = $(e); var rep = row.find("td:nth-child(3)").text(); if (rep >= 30) row.addClass("success"); }); $("body#id-3628 article table").addClass("table").addClass("ta +ble-striped").addClass("table-condensed"); var url = window.location; $('header nav a').filter(function() { return this.href == url; + }).parent().addClass('active').closest(".dropdown").addClass("dropdo +wn-with-active"); $('p.code').each(function (i, c) { var code = $(c).find('tt.codetext').text().replace(/\u00a0 +/g,' ').replace(/\s+$/,''); var dl = $(c).find('span.embed-code-dl'); var pre = $( '<pre class="blockcode"><code>' + $('<div/>').text(code).html() + '</code></pre>' ); var footer = $('<div style="text-align:right"><small></sma +ll></div>'); if (dl.html()) footer.find('small').append(dl.html()); $(c).after(footer); $(c).replaceWith(pre); }); $('.adjunct-links a').each(function (i, e) { var $e = $(e); var t = $e.text(); var label = t.substr(1, t.length-2); if (label == "/msg") { label = "<i class='glyphicon glyphi +con-envelope'></i>"; } else if (label == "reply") { label = "<i class='glyphicon +glyphicon-share-alt'></i>"; } else if (label == "d/l") { label = "<i class='glyphicon gl +yphicon-download-alt'></i>"; } else if (label == "select") { label = "<i class='glyphicon + glyphicon-check'></i>"; } $e.addClass("btn").addClass("btn-default").html(label).att +r("title", t).css({padding:"4px",margin:"4px"}); }); hljs.configure({ languages: ["perl", "bash", "css", "xml", "di +ff", "json", "javascript", "sql", "ini", "apache", "cpp", "makefile"] + }); $('pre.blockcode code').each(function(i, block) { hljs.highlig +htBlock(block); }); function supports_html5_storage() { try { return 'localStorage' in window && window['localStorag +e'] !== null; } catch (e) { return false; } } var avatar_cache = supports_html5_storage() ? localStorage : { + "Anonymous Monk": "/images/userincoming/Anonymous_Monk.jpeg" }; $('span.attribution').each(function (i,e) { var $attrib = $(e); function render_avatar (name) { if ( avatar_cache[name] == "..." ) { window.setTimeout( function () { render_avatar(name); }, 1000 ); } else if ( avatar_cache[name] != "-" ) { $attrib.closest("td,#main_attribution").prepend( "<img src='"+avatar_cache[name]+"' class='img +img-avatar'>" ); } } var name = $attrib.find("a").text().trim(); if ( avatar_cache[name] ) { render_avatar(name); } else { avatar_cache[name] = '...'; var url = $attrib.find('a')[0].href + "&displaytype=xm +l"; $.get(url, function (data) { var imgsrc = $(data).find('field[name="imgsrc"]'). +text().trim(); if (imgsrc.match(/[0-9]+/)) { avatar_cache[name] = "/?node_id=" + imgsrc; } else if (imgsrc) { avatar_cache[name] = "/" + imgsrc; } else { avatar_cache[name] = "-"; } render_avatar(name); }); } }); }); })(jQuery);
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: PerlMonks meets Twitter Bootstrap (copy?) (updated)
by choroba (Cardinal) on Dec 22, 2016 at 09:36 UTC | |
by LanX (Saint) on Dec 22, 2016 at 18:02 UTC | |
|
Re^2: PerlMonks meets Twitter Bootstrap (copy?)
by LanX (Saint) on Dec 19, 2016 at 01:48 UTC | |
by LanX (Saint) on Jan 01, 2017 at 19:32 UTC | |
by choroba (Cardinal) on Jun 18, 2018 at 10:01 UTC | |
by Your Mother (Archbishop) on Jun 18, 2018 at 16:36 UTC | |
by choroba (Cardinal) on Jun 18, 2018 at 17:01 UTC | |
by LanX (Saint) on Jun 18, 2018 at 11:00 UTC |