imgur updater
by Michael Dibbets
JavaScript
+function(){
$('.load-more').trigger('click');
window.setTimeout(function() {
var StorageObject = function(image,title) {
this.image = image;
this.time = new Date().getTime();
this.title = title;
}
var ultimateStorage = sessionStorage.getItem('ultimate');
if(typeof ultimateStorage !== 'string') {
ultimateStorage = {};
}
else {
try {
ultimateStorage = JSON.parse(ultimateStorage);
}
catch(e) {
ultimateStorage = {};
console.log('storage erased!');
}
}
var run = function() {
jQuery('.post-images').each(function(useless,container){
var $container = $(container);
var containeritems = $container.find('.post-image-container');
if(containeritems.length == 0) {
window.stoptimoutstsch();
}
containeritems.each(function(useless,postitem) {
var $postitem = $(postitem);
var identifier = $postitem.attr('id');
var imagecontainer = $postitem.find('.post-image');
var basicimage = imagecontainer.find('img');
if(basicimage.length > 0){
var image = basicimage.attr('src');
}
else {
var image = 'http://imgur.com/'+identifier+'.gifv';
}
var title = $postitem.find('.post-image-title').text();
var source = document.location.href;
if(typeof ultimateStorage[source] == 'undefined') {
ultimateStorage[source] = {};
}
if(typeof ultimateStorage[source][identifier] == 'undefined') {
ultimateStorage[source][identifier] = new StorageObject(image,title);
}
});
});
}
var height = document.body.getBoundingClientRect().bottom;
var start = 0;
var increase = 25;
var timeoutsregistered = [];
var doit = function(scrollTo,timeout) {
timeoutsregistered.push(window.setTimeout(function() {
console.log("iterating "+(scrollTo/increase)+" of "+(height/increase));
window.scrollBy(0,scrollTo);
run();
},timeout));
...