function prepareDates() { var month = $('input[name=month]').val(); var year = $('input[name=year]').val(); if (month !== undefined && year !== undefined) { Meteor.call('getInstagramMedia', +("20"+year), +month, function(error, results) { // console.log('Instagram response', results.data); if (results.data.data.length > 0) { var photos = _.sortBy(results.data.data, function(p) { return p.created_time; }); Session.set('date', { month: month, year: year }); Session.set('photos', photos); Meteor.call('getInstagramUsername', function (err, res) { Session.set('username', res); }); $('form.dates div.error').hide(); $('form.dates button.next').show(); } else { $('form.dates button.next').hide(); $('form.dates div.error').show(); } }); } } function animate() { var delay = 0; // load $('li#step1').addClass('active'); var photos = $('div.photo'); photos.each(function(i) { var self = this; _.delay(function () { $(self).show(); }, 400 * i); }); delay += 400 * photos.length; // pixelate _.delay(function () { $('li#step1').removeClass('active'); $('li#step2').addClass('active'); _.each(Session.get('photos'), function(x, i) { _.delay(function() { Effects.pixelate(x.id); $('#img-'+x.id).hide(); $('#canvas-'+x.id).show(); }, 400 * i); }); }, delay + 2000); delay += 400 * photos.length; delay += 2000; // colorize _.delay(function() { $('li#step2').removeClass('active'); $('li#step3').addClass('active'); _.each(Session.get('photos'), function(x, i) { _.delay(function () { Effects.colorize(x.id); $('#img-'+x.id).hide(); $('#canvas-'+x.id).show(); }, 400 * i); }); }, delay + 2000); delay += 400 * photos.length; delay += 2000; _.delay(function() { $('li#step3').removeClass('active'); $('li#step4').addClass('active'); $('div.photos').hide(); var palette = Effects.average(); $('div#dominant1').css('background', 'rgba(' + palette[0][0] + ',' + palette[0][1] + ',' + palette[0][2] + ',1)'); $('div#dominant2').css('background', 'rgba(' + palette[1][0] + ',' + palette[1][1] + ',' + palette[1][2] + ',1)'); $('ol#dominant1 li.r').text('R-' + palette[0][0].toString(16).toUpperCase()); $('ol#dominant1 li.g').text('G-' + palette[0][1].toString(16).toUpperCase()); $('ol#dominant1 li.b').text('B-' + palette[0][2].toString(16).toUpperCase()); $('ol#dominant2 li.r').text('R-' + palette[1][0].toString(16).toUpperCase()); $('ol#dominant2 li.g').text('G-' + palette[1][1].toString(16).toUpperCase()); $('ol#dominant2 li.b').text('B-' + palette[1][2].toString(16).toUpperCase()); Session.set('dominant1hex', palette[0][0].toString(16).toUpperCase() + palette[0][1].toString(16).toUpperCase() + palette[0][2].toString(16).toUpperCase()); Session.set('dominant2hex', palette[1][0].toString(16).toUpperCase() + palette[1][1].toString(16).toUpperCase() + palette[1][2].toString(16).toUpperCase()); $('div.dominants').show(); }, delay + 2000); } function animate2() { var delay = 0; var photos = $('div.photo'); _.delay(function() { $('li#step4').removeClass('active'); $('li#step5').addClass('active'); $('div.dominants').hide(); $('div.photos').show(); _.each(Session.get('photos'), function(x, i) { _.delay(function () { Effects.averageColor(x.id); }, 400 * i); }); }, delay + 2000); delay += 400 * photos.length; delay += 2000; _.delay(function() { $('li#step5').removeClass('active'); $('li#step6').addClass('active'); $('div.photos').hide(); $('div.final').show(); Effects.drawFinal(); }, delay + 2000); delay += 400 * photos.length; delay += 2000; _.delay(function() { var matrix = Effects.drawFinalIcon(); Session.set('final_matrix', matrix); }, delay + 2000); delay += 400 * photos.length; delay += 2000; var canvas = document.getElementById('canvas-final'); var dataUrl = canvas.toDataURL(); $('a.share-save').attr('href', dataUrl); $('a.share-save').attr('download', new Date().getTime()); _.delay(function() { $('h2.title').html('Done!