Created
December 2, 2016 09:34
-
-
Save timiwahalahti/1017a9e0f9db8bdf7d29397af2c7d681 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
( function( $ ) { | |
// ****************************** | |
// * facebook.js | |
// * | |
// * @author Digitoimisto Dude Oy | |
// * @version 03.11.2016 | |
// ****************************** | |
$(document).ready(function() { | |
// Facebook feed | |
function cutString(s, n){ | |
var cut= s.indexOf(' ', n); | |
if(cut== -1) return s; | |
return s.substring(0, cut) + '...' | |
} | |
$.ajax({ | |
type:"GET", | |
url: "https://graph.facebook.com/<FBID>/feed?locale=fi_FI", // http://findmyfbid.com/ | |
dataType: "jsonp", | |
contentType: "text/json; charset=utf-8", | |
data: { | |
access_token: '<SOVELLUSKOODI>|<SALAUSKOODI>', // Sovelluskoodi ja salauskoodi peräkkäin: https://developers.facebook.com/apps/1642487816006596/dashboard/ | |
since: '2016-01-01', | |
date_format: 'U' | |
}, | |
}) | |
.error(function(w,t,f) { | |
}) | |
.done(function( result ) { | |
var data = result.data; | |
$('.facebook-feed').each(function() { | |
for( i in data ) { | |
if(i >= 2) { // Amount of updates shown | |
return false; | |
} | |
// Filter: | |
// if( !data[i].story ) continue; | |
// Get real ID of the Facebook update | |
var id = data[i].id; | |
getId = id.split('_'); | |
realid = getId[1]; | |
if(data[i].likes == undefined) { | |
var likes_count = 0; | |
var likes_text = 'Ei tykkäyksiä'; | |
} else { | |
var likes = data[i].likes.data; | |
var likes_count = likes.length; | |
var likes_text = likes_count + ' tykkäsi lukemastaan'; | |
} | |
if(data[i].message == undefined) { | |
if(data[i].description == undefined) { | |
var message = '<p><span class="fb-icon"></span> <p>' + cutString(data[i].story, 400) + ' — <b>' + data[i].name + '</b></p>'; | |
} else { | |
var message = '<p><p><span class="fb-icon"></span> ' + cutString(data[i].description, 400) + '</p>'; | |
} | |
} else { | |
var message = '<p><p><span class="fb-icon"></span> ' + cutString(data[i].message, 400) + '</p>'; | |
} | |
if(data[i].created_time == undefined) { | |
var date = ''; | |
var meta = ''; | |
} else { | |
var date = data[i].created_time; | |
} | |
if(data[i].created_time != undefined && data[i].likes != undefined) { | |
var meta = ''; | |
} else { | |
var meta = formatDate( date*1000 ) + '. ' + likes_text + '. '; | |
} | |
var newFeedElem = '<div class="vintagebox-container"><div class="vintagebox-header"></div><div class="vintagebox"><div class="col-md-12"><div class="update"><div class="status-update col-sm-12">' + message + '<p class="facebook-meta">' + meta + '<a href="https://www.facebook.com/<FBPAGENAME>/posts/' + realid + '">Käy tykkäämässä.</a></p></div><!--/.status-update--></div></div></div><!--/.vintagebox--><div class="vintagebox-footer"></div></div>'; | |
$( this ).append( newFeedElem ); | |
} | |
}); | |
}); | |
function formatDate( date ) { | |
var d = new Date( date ); | |
var months = [ | |
'tammikuu', | |
'helmikuu', | |
'maaliskuu', | |
'huhtikuu', | |
'toukokuu', | |
'kesäkuu', | |
'heinäkuu', | |
'elokuu', | |
'syyskuu', | |
'lokakuu', | |
'marraskuu', | |
'joulukuu' | |
]; | |
var curr_date = d.getDate(); | |
var curr_month = d.getMonth() + 1; //Months are zero based | |
var curr_year = d.getFullYear(); | |
return (curr_date + ". " + months[curr_month-1] + "ta, " + curr_year); | |
} | |
function convertDate(t) { | |
var dateRE = /(\d+)-(\d+)-(\d+)T(\d+):(\d+):(\d+)([+\-]\d+):(\d+)/; | |
var match = t.match(dateRE); | |
var nums = [], item, date; | |
if (match) { | |
for (var i = 1; i < match.length; i++) { | |
nums.push(parseInt(match[i], 10)); | |
} | |
if (nums[7] < 0) { | |
nums[8] *= -1; | |
} | |
return(new Date(nums[0], nums[1] - 1, nums[2], nums[3] - nums[6], nums[4] - nums[7], nums[5])); | |
} | |
} | |
}); | |
} )( jQuery ); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment