An open API service indexing awesome lists of open source software.

https://github.com/chenos/social-feed

Get feeds from different social networks
https://github.com/chenos/social-feed

Last synced: 5 months ago
JSON representation

Get feeds from different social networks

Awesome Lists containing this project

README

          

## Example

config/assets.php

'socail-feed' => array(
'src' => 'assets/js/socail-feed.js',
'deps' => array('jquery', 'wp-util', 'underscore')
)

social-feed.php


data-action="">
Loading...



<# for (var i = 0; i < data.streams.length; i++) {
var stream = data.streams[i]; #>
<div class="stream">
<div class="header">
<a class="username" href="{{ stream.url }}"><i class="icon-{{ stream.type }}"></i> {{ stream.username }}</a>
</div>
<# if (stream.thumbnail) { #>
<div class="thumbnail"><img src="{{ stream.thumbnail }}"></div>
<# } #>
<div class="text">
{{ stream.text }}
</div>
</div>
<# } #>


jQuery(document).ready(function($) {
var $social_feed = $('#social-feed');
wp.ajax.post($feed.data('action')).done(function(arr){
var template = wp.template('social-feed');
var per_page = Math.round($stream.data('per-page'));
var count = arr.length;
var page = 1;
var pages = Math.ceil(count/page);
var load_feed = function(paged) {
var streams = [];
var offset = per_page * (paged - 1);
for (i = offset; i < count; i++) {
if (i >= offset + per_page) {
break;
}
streams.push(arr[i]);
}
var html = template({streams: streams});
$social_feed.find('.content').html(html);
}
load_feed(page);
$social_feed.on('click', '.pagination .prev', function(event) {
event.preventDefault();
page = page - 1;
page = page < 1 ? 1 : page;
load_feed(page);
}).on('click', '.pagination .next', function(event) {
event.preventDefault();
page = page + 1;
page = page > pages ? pages : page;
load_feed(page);
});
}).fail( function() {
$social_feed.find('.content').html('Loaded fail!');
});
});