function remy(target) {
pattern = /(\b[A-Z].{0,2}|, .{0,3}) /g;
text = target.html();
target.html(text.replace(pattern, '$1 ')); // I actually put a non-breaking space charcter after $1! You don’t see it, but it’s there. This is to not have this value pop up in places.
}
$(document).ready(function() {
// COUNT ITEMS
words = $("#content").text().split(" ").length;
$("dl.meta").append("
Words" + words + "
");
characters = $("#content").text().split("").length;
$("dl.meta").append("Characters" + characters + "
");
images = $("#content img").length;
$("dl.meta").append("Images" + images + "
");
// ORPHANS AND WIDOWS
remy($("#content"));
// OFFSET ANCHOR BECAUSE OF FIXED MENU
$('a.footnote-ref, a.footnote-backref').click(function(e){
e.preventDefault();
href = $(this).attr("href").replace("#", "");
target = $("[id='" + href + "']");
$(".target").removeClass("target");
target.addClass("target");
$("html, body").scrollTop(target.offset().top - 100);
}
);
// Django gives us elements like:
// include-example.html
// in which we include the relevant pages
var included = $("#content .include").length - 1;
$("#content .include").each(function(i, el) {
var url = $(el).attr('href') + ' .middle';
console.log("trying to load!");
$(el).load(url, function( responseText, textStatus, jqXHR ) {
console.log('succesfully loaded ' + url);
if (i == included){
// DIV WRAPPER AROUND EACH H2
$("#content h2").each(function(){
h2 = $(this).attr('id');
$(this).nextUntil('h2').wrapAll('');
});
}
});
});
});
// make external links open in new window
var isExternal = function(href) {
/*
* isExternal("http://i.liketightpants.net/")
* true
* isExternal("/publications/")
* false
* isExternal("http://www.f-u-t-u-r-e.org/publications/")
* false
* isExternal("http://localhost:8000/publications/")
* false
* isExternal("http://127.0.0.1:8000/publications/")
* false
*/
if (href.indexOf("http") === -1 || href.indexOf(document.location.host) !== -1 || href.indexOf("localhost") !== -1 || href.indexOf("127.0.0.1") !== -1 ) {
return false;
}
return true;
};
$("a[href]").each(
function() {
if (isExternal($(this).attr('href')) ) {
$(this).attr('target', '_blank');
}
}
);
$(".logged-out a.write-button").click(function(e) {
e.preventDefault();
$(".popup-wrapper").removeClass("hidden");
});
$(".popup-wrapper").click(function(e) {
$(this).addClass("hidden");
});
$(".popup").click(function(e) {
e.stopPropagation();
});
$(document).keydown(function(e) {
if (e.keyCode == 27) {
$(".popup-wrapper").addClass("hidden");
}
});