function l(w) {
    if (window.console.log)
        window.console.log(w);
}

if (typeof(App) == 'undefined') var App = {
    facebook: function(whereToAppend) {
        $.ajax({
            type: 'get',
            url: 'https://graph.facebook.com/me/feed?access_token=AAAAAAITEghMBAHZAudGs3zd8ix2iObC1nDrZBZCDmu9tsiWbT0QA9TU1Am5zdvfKKfQmgTUOfEtPOWe6P5BrZCMLjzFpALbrjRI8uzXeZBtNSick6gsGj',
            contentType: 'application/json; charset=utf-8',
            dataType: 'jsonp',
            success: function(data) {
                l(data);
                $('#loading_info').hide();
                var data = data.data;
                /*
                var str = '';
                $.each(data, function(i, item) {
                    str += '<div class="facebook"><p>';
                        str += item.message;
                    str += '</p>';
                        var tmp = new Array();
                        if (item.likes)
                            tmp.push('likes: <strong>' + item.likes.count + '</strong>');
                        if (item.comments)
                            tmp.push('comments: <strong>' + item.comments.count + '</strong>');
                        if (item.application)
                            tmp.push('via <strong>' + item.application.name + '</strong>');
                        if (item.created_time)
                            tmp.push('<em>' + item.created_time + '</em>');
                        if (tmp.length)
                            str += '<p class="status">' + tmp.join(', ') + '</p>';
                    str += '</div>';
                });
                whereToAppend.append(str);
                */
            },
            error: function(data) {
                l(data);
            }
        });
    },
    googlePlus: function(whereToAppend) {
        $.ajax({
            type: 'get',
            url: 'https://www.googleapis.com/plus/v1/people/' + Config.google_plus_id + '/activities/public?alt=json&pp=1&key=' + Config.google_api_key + '&callback=?',
            contentType: 'application/json; charset=utf-8',
            dataType: 'jsonp',
            success: function(data) {
                $('#loading_info').hide();
                var item = data.items;
                var str = '';
                $.each(item, function(i, item) {
                    str += '<div class="google_plus"><p>';
                        str += item.object.content;
                    str += '</p><p class="status">';
                        str += '+1: <strong>' + item.object.plusoners.totalItems + '</strong>, shared: <strong>' + item.object.resharers.totalItems + '</strong>, replies: <strong>' + item.object.replies.totalItems + '</strong>, via <strong>' + item.provider.title + '</strong>, <em>' + item.published + '</em>';
                    str += '</p></div>';
                });
                whereToAppend.append(str);
            }
        });
    },
    twitter: function(whereToAppend) {
        $.getJSON('http://twitter.com/status/user_timeline/' + Config.twitter_username + '.json?count=' + Config.twitter_max_posts +
'&callback=?', function(twitter_data) {
            $('#loading_info').hide();
            var str = '';
            $.each(twitter_data, function(i, item) {
                var date = new Date(strtotime(item.created_at) * 1000);
                str += '<div class="time__' + strtotime(item.created_at) + ' twitter"><p>';
                str += linkify(item.text) + '</p><p class="status">retweeted: <strong>' + item.retweet_count + '</strong>, via <strong>' + item.source + '</strong> ';
                str += '<em>' + date + '</em></p></div>';
            });
            whereToAppend.append(str);
        });
    },
    flickr: function(whereToAppend) {
        $.getJSON('http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=' + Config.flickr_api_key + '&user_id='
+ Config.flickr_user_id + '&per_page=' + Config.flickr_max_posts + '&format=json&jsoncallback=?', function(flickr_data) {
            var photo_obj = new Array();

            var asdx = 0;
            $.each(flickr_data.photos.photo, function(i, item) {
                $.getJSON('http://api.flickr.com/services/rest/?method=flickr.photos.getInfo&api_key=' + Config.flickr_api_key + '&photo_id='
+ item.id + '&format=json&jsoncallback=?', function(photo_detail) {
                    photo_obj.push(photo_detail);
                    asdx = asdx + 1;
                });
            });

            counter = window.setInterval(function() {
                if (asdx >= (Config.flickr_max_posts - 1)) {
                    if (typeof(photo_obj) == 'object') {
                        $('#loading_info').hide();
                        var str = '';
                        $.each(photo_obj, function(i, item) {
                            var p = item.photo;
                            var date = new Date(p.dateuploaded * 1000);
                            str += '<div class="time__' + p.dateuploaded + ' flickr">';
                            str += '<a href="http://farm' + p.farm + '.static.flickr.com/' + p.server + '/';
                            str += p.id + '_' + p.secret + '_b.jpg" title="' + p.title['_content'] + '" rel="lightbox">';
                            str += '<img src="http://farm' + p.farm + '.static.flickr.com/' + p.server + '/';
                            str += p.id + '_' + p.secret + '_s.jpg" title="' + p.title['_content'] + '">';
                            str += '</a><div class="flickr_wrapper"><p>' + p.title['_content'] + '</p>';
                            str += '<p class="status">' + date + '</p></div></div>';
                        });
                        whereToAppend.append(str);
                    }
                    window.clearTimeout(counter);
                }
            }, 200);
        });
    },
    init: function() {
        if ($('body').attr('id') == 'facebook')
            App.facebook($('#content'));

        if ($('body').attr('id') == 'twitter')
            App.twitter($('#content'));

        if ($('body').attr('id') == 'flickr')
            App.flickr($('#content'));

        if ($('body').attr('id') == 'google-plus')
            App.googlePlus($('#content'));

        if ($('body').attr('id') == 'index') {
            Config.twitter_max_posts = 5;
            Config.flickr_max_posts = 5;
            App.twitter($('.col2'));
            App.flickr($('.col3'));
        }
        $('h1, h1 a, h1 a img').attr('title', '');
        $('a[rel=lightbox]').live('click', function() {
            $.fn.colorbox({
                href: $(this).attr('href'),
                open: true,
                transition: 0,
                speed: 0,
                maxWidth: '95%',
                maxHeight: '95%',
                opacity: '0.8'
            });
            return false;
        });
    }
};

$(document).ready(function() {
    App.init();
});
