|
Server : Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8e-fips-rhel5 DAV/2 PHP/5.2.17 System : Linux localhost 2.6.18-419.el5 #1 SMP Fri Feb 24 22:47:42 UTC 2017 x86_64 User : nobody ( 99) PHP Version : 5.2.17 Disable Function : NONE Directory : /home/queenjbs/www/test/facebook/ |
Upload File : |
/*!------------------------------------------------*
* Monochrome (www.monocr.com)
* Creater: Kim, Ki-hong (raindrop@monocr.com)
*-------------------------------------------------*/
;(function($){
/* get SNS */
$.getSocialNetworkMessage = function(){
//var TW_URI = 'http://search.twitter.com/search.json';
var TW_URI = 'http://api.twitter.com/1/lists/statuses.json';
var FB_URL = 'https://graph.facebook.com/';
var FB_TOKEN = '267611476638376|A8z7oZjGbknHu4FeCdrc2_Nyct8';
var $twitter = $('#twitter .timeline');
var $twitter2 = $('#twitter2 .timeline');
var $twitter3 = $('#twitter3 .timeline');
var $facebook = $('#facebook .timeline');
var FB_INFO;
var LOCALE;
var TW_KEYWORD;
/* date */
function datetostr(d,s){
var now = new Date();
var amount = now.getTime() - d.getTime();
var _return = "";
if(amount < 0){
_return = "일전";
}
else {
var days=0; var hours=0; var mins=0; var secs=0;
amount = Math.ceil(amount/1000);
days=Math.floor(amount/86400); //days
amount=amount%86400;
hours=Math.floor(amount/3600); //hours
amount=amount%3600;
mins=Math.ceil(amount/60); //minutes
amount=amount%60;
secs=Math.ceil(amount); //seconds
if( days >= 7 ) _return = ( d.getFullYear() + '-' + (d.getMonth()+1) + '-' + d.getDate() ); // �쇱<�� �댄썑
if( amount <= 86400 ) _return = days +'일전';
else if( amount <= 3600 ) _return = hours +'일전';
else if( amount <= 60 ) _return = hours +'';
else if( amount < 1 ) _return = hours +'';
else _return = '';
}
return _return;
}
// parse date
function parseDate(str,s){
var mon = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];
function in_array(a,v){
for(var i=0; i<a.length; i++){
if( a[i] == v )
break;
}
if( a.length == i )return false;
return i;
}
var d = new Date();
if( s == 'fb' ){
d.setUTCFullYear( str.substr(0,4) );
d.setUTCMonth( parseFloat( str.substr(5,2) ) -1 );
d.setUTCDate( str.substr(8,2) );
d.setUTCHours( str.substr(11,2) );
d.setUTCMinutes( str.substr(14,2) );
d.setUTCSeconds( str.substr(17,2) );
}else{
d.setUTCFullYear( str.substr(26,4) );
d.setUTCMonth( in_array( mon, str.substr(4,3) ) );
d.setUTCDate( str.substr(8,2) );
d.setUTCHours( str.substr(11,2) );
d.setUTCMinutes( str.substr(14,2) );
d.setUTCSeconds( str.substr(17,2) );
}
return d;
}
/* twitter */
var getTweet = function(){
/*var set = {
lang: LOCALE,
locale: LOCALE,
q: TW_KEYWORD
};*/
var set = {
list_id: '65343697',
owner_screen_name: 'cjesent'
};
$.getJSON(TW_URI+'?callback=?', set, function(data){
tweetRolling(data);
$twitter.removeClass('ajax');
$twitter2.removeClass('ajax');
$twitter3.removeClass('ajax');
});
};
/* facebook */
var getFBFeed = function(){
$.getJSON(FB_URL+'CJESJYJ?callback=?', {access_token: FB_TOKEN}, function(data){
FB_INFO = data;
$.getJSON(FB_URL+'CJESJYJ'+'/posts?callback=?', {limit: 10, access_token: FB_TOKEN}, function(data){
fbRolling(data);
$facebook.removeClass('ajax');
});
});
};
/* tweet rolling */
var tweetRolling = function(data){
var num = 4;
//var t = data.results;
var t = data;
var total = t.length;
var start = total - num;
var tweets = [];
function tweet(twt){
var linkRegExp = /((http|https|ftp):\/\/[\w?=&.\/-;#~%-]+(?![\w\s?&.\/;#~%=-]*>))/g;
var twtext = twt.text;
twtext = twtext.replace(linkRegExp,'<a href="$1" target="_blank">$1</a>');
twtext = twtext.replace(new RegExp("(@([A-Za-z0-9_]+))","g"),'<a href="http://twitter.com/$2" target="_blank">$1</a>');
twtext = twtext.replace(new RegExp("(#([A-Za-z0-9_]+))","g"),'<a href="http://twitter.com/search/%23$2" target="_blank">$1</a>');
return '<img src="' + twt.user.profile_image_url + '" alt="" />'
+ '<p><strong><a href="http://twitter.com/' + twt.user.screen_name + '" target="_blank">' + twt.user.name + '</a></strong>'
+ twtext
+ '<span data-created="' + twt.created_at + '">'
+ '<a href="http://twitter.com/' + twt.user.screen_name + '/status/' + twt.id_str + '" target="_blank">' + datetostr( parseDate( twt.created_at, 'tw' )) + '</a>'
+ '</span></p>';
}
for(var i=start; i<total; i++){
tweets.push( tweet(t[i]) );
}
$twitter.html('<ul><li>' + tweets.join('</li><li>') + '</li></ul>');
$twitter2.html('<ul><li>' + tweets.join('</li><li>') + '</li></ul>');
$twitter3.html('<ul><li>' + tweets.join('</li><li>') + '</li></ul>');
var ti = start;
setInterval(function(){
ti = (ti<=0)?(total-1):(ti-1);
$('<li>').html( tweet( t[ti] ) ).hide().prependTo( $('ul',$twitter) ).slideDown(500,function(){
$('ul li:last-child',$twitter).remove();
});
$('<li>').html( tweet( t[ti] ) ).hide().prependTo( $('ul',$twitter2) ).slideDown(500,function(){
$('ul li:last-child',$twitter2).remove();
});
$('<li>').html( tweet( t[ti] ) ).hide().prependTo( $('ul',$twitter3) ).slideDown(500,function(){
$('ul li:last-child',$twitter3).remove();
});
},6500);
};
/* fb rolling */
var fbRolling = function(data){
var num = 4;
var t = data.data;
var total = t.length;
var start = total - num;
var newsfeed = [];
function fbstatus(nf){
var permalink = nf.id.split('_');
var picture = FB_INFO.picture.replace('_s.','_q.');
return '<img src="' + picture + '" alt="" />'
+ '<p><strong><a href="' + FB_INFO.link + '" target="_blank">' + FB_INFO.name + '</a></strong>'
+ nf.message
+ '<span>'
+ '<a href="https://www.facebook.com/permalink.php?story_fbid=' + permalink[1] + '&id=' + permalink[0] + '" target="_blank" >' + datetostr(parseDate(nf.updated_time,'fb')) + '</a>'
+ '</span></p>';
}
for(var i=start; i<total; i++){
newsfeed.push( fbstatus(t[i]) );
}
$facebook.html('<ul><li>' + newsfeed.join('</li><li>') + '</li></ul>');
var ti = start;
setInterval(function(){
ti = (ti<=0)?(total-1):(ti-1);
$('<li>').html( fbstatus( t[ti] ) ).hide().prependTo( $('ul',$facebook) ).slideDown(500,function(){
$('ul li:last-child',$facebook).remove();
});
},6500);
};
if( $twitter.length )
getTweet();
//if( $facebook.length )
//getFBFeed();
}
})(jQuery);