diff --git a/modules/imgur/imgur.js b/modules/imgur/imgur.js index 507e6f2..b412d4c 100644 --- a/modules/imgur/imgur.js +++ b/modules/imgur/imgur.js @@ -4,7 +4,8 @@ */ var _ = require('underscore')._, - request = require('request'); + request = require('request'), + crypto = require('crypto'); var imgur = function(dbot) { this.db = dbot.db.imgur; @@ -50,7 +51,8 @@ var imgur = function(dbot) { // 492 is body.length of a removed image if(!error && response.statusCode == 200 && body.length != 492) { this.db.totalImages += 1; - callback(testUrl, testSlug); + var hash = crypto.createHash('md5').update(body).digest("hex"); + callback(testUrl, testSlug,hash); } else { this.api.getRandomImage(callback); } diff --git a/public/imgurr.css b/public/imgurr.css index f2bbb11..37d6fc7 100644 --- a/public/imgurr.css +++ b/public/imgurr.css @@ -106,3 +106,15 @@ html,body { overflow:auto; padding:0; } +#count2 { + bottom:25px; + position:absolute; + border-radius:5px; + display:none; + margin;5px; + padding:5px; + right:25px; + background-color:#3b5998; + color:white; + font-family:'Freight Sans Bold','Lucida Grande',verdana,arial,sans-serif; +} diff --git a/public/imgurr.js b/public/imgurr.js new file mode 100644 index 0000000..5c03f60 --- /dev/null +++ b/public/imgurr.js @@ -0,0 +1,76 @@ +function giveMessage(msg) { + $('
  • '+msg+'
  • ').prependTo('#history').hide().slideDown(); +} + +var lock = false; +var highscore = 10 + 1; +var score = highscore; +var count = 0; +var count2 = 0; + +$('#count').text(score); + +function getNewImage() { + count += 1; + lock = true; + $('#loading').fadeIn(); + $('#loading').text('Loading image ' + count + '...'); + document.title = 'random imgur (' + count + ')'; + $('#loading').fadeIn(); + $('#image').load(function(){}); + $.get("/api/imgur/getRandomImage", function(d) { + $('#image').attr('src', d.data[0]); + lock = false; + score -= 1; + $('#count').text(score); + $('#details').text("Fetching info..."); + giveMessage('' + d.data[0] + ''); + $.get("/api/imgur/getImageInfoString", { 'slug': d.data[1] }, function(info) { + if(info.data[0].indexOf('undefined') == -1) { + $("#details").text(count + ': ' + info.data[0]); + $('#details').show(); + } else { + $("#details").hide(); + } + $('#loading').fadeOut(); + }, "json"); + console.log(d.data[2]); + if(d.data[2] == "e49e686582ce3f60cb51d00c10924861") { // 3Tt6N fb guy + count2 += 1; + if (count2 == 1){ + $('#count2').text("+ " + count2 + " Facebook Monopoly Man"); + } else { + $('#count2').text("+ " + count2 + " Facebook Monopoly Men"); + } + $('#count2').fadeIn(); + } + }, "json"); +} + +$(getNewImage()); + +$(document).on('keydown', function(e){ + switch(e.which){ + case 82: // r + score = highscore; + $('#count').text(highscore); + giveMessage("Score reset."); + case 13: // enter + case 32: // space + if (lock) { + $('#loading').text(function(index, text){ + return text.replace(/.(?=[^.]*$)/, "!"); + }); + } else { + getNewImage(); + } + break; + case 67: + $('#count').fadeToggle(); + $('#count2').fadeToggle(); + break; + case 83: // s + $('body').toggleClass('crop'); + giveMessage("Toggled scrollbars.") + }; +}); diff --git a/views/imgur/imgurr.jade b/views/imgur/imgurr.jade index b3e4436..41d27fe 100644 --- a/views/imgur/imgurr.jade +++ b/views/imgur/imgurr.jade @@ -3,73 +3,17 @@ html(lang='en') head meta(charset='utf-8') script(type="text/javascript", src="//ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js") + script(type="text/javascript", src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/md5.js") + script(type="text/javascript", src="/imgurr.js") link(rel="stylesheet", href="/imgurr.css") title random imgur - script - var count = 0; - function giveMessage(msg) { - $('
  • '+msg+'
  • ').prependTo('#history').hide().slideDown(); - } - var lock = false - var highscore = #{highscore} + 1; - var score = highscore; - $('#count').text(score); - function getNewImage() { - count += 1; - lock = true; - $('#loading').fadeIn(); - $('#loading').text('Loading image ' + count + '...'); - document.title = 'random imgur (' + count + ')'; - $('#loading').fadeIn(); - $('#image').load(function(){}); - $.get("/api/imgur/getRandomImage", function(d) { - $('#image').attr('src', d.data[0]); - lock = false; - score -= 1; - $('#count').text(score); - $('#details').text("Fetching info..."); - giveMessage('' + d.data[0] + ''); - $.get("/api/imgur/getImageInfoString", { 'slug': d.data[1] }, function(info) { - if(info.data[0].indexOf('undefined') == -1) { - $("#details").text(count + ': ' + info.data[0]); - $('#details').show(); - } else { - $("#details").hide(); - } - $('#loading').fadeOut(); - }, "json"); - }, "json"); - } - $(getNewImage()); - $(document).on('keydown', function(e){ - switch(e.which){ - case 82: // r - score = highscore; - $('#count').text(highscore); - giveMessage("Score reset."); - case 13: // enter - case 32: // space - if (lock) { - $('#loading').text(function(index, text){ - return text.replace(/\.(?=[^.]*$)/, "!"); - }); - } else { - getNewImage(); - } - break; - case 67: - $('#count').fadeToggle(); - break; - case 83: // s - $('body').toggleClass('crop'); - giveMessage("Toggled scrollbars.") - }; - }); body div#loading Loading image 1... div#details Press [SPACE] to load a new image div#count #{highscore} + div#count2 + ΓΈ ul#history li Press [SPACE] for next div#container