﻿if (!window['twitterstream']) { window['twitterstream'] = {}; }
if (!window['twitterstream']['twitterStatuses']) { window['twitterstream']['twitterStatuses'] = {}; }
twitterstream.twitterStatuses = {
    elementId: 'twitterstream',
    tweetCount: 2,
    filterReplies: true,
    filterRetweets: true,
    showIcon: true,

    twitterCallback: function (obj) {
        var id = obj[0].user.id;
        var statuses_html = '';
        var isEven = false;
        var maxTweets = twitterstream.twitterStatuses.tweetCount;
        var tweetCount = 0;

        statuses_html += "<p>";

        for (var i = 0; i < obj.length && tweetCount < maxTweets; i++) {
            var tweet_text = obj[i].text;

            if (!twitterstream.twitterStatuses.filterReplies || (tweet_text.match(/^@[A-Z0-9_]+/gi) == null)) {
                tweetCount++;

                tweet_text = tweet_text.replace(/((http|https|ftp):\/\/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(\/*)(:(\d+))?([A-Z0-9_\/.?~-]*))/gi, '<a href="$1" target="_blank">$1</a>');
                tweet_text = tweet_text.replace(/(@([A-Z0-9_]+))/gi, '@<a class="reply" title="$2 on twitter" href="http://twitter.com/$2" target="_blank">$2</a>');
                tweet_text = tweet_text.replace(/(#([A-Z0-9_]+))/gi, '<a class="hashtag" href="http://twitter.com/search?q=%23$2" target="_blank">#$2</a>');

                statuses_html += tweet_text;
                statuses_html += "<br><br>";

                isEven = !isEven;
            }
        }
        statuses_html = statuses_html.substring(0,statuses_html.length - 4); // Remove the last empty line
        statuses_html += '<div style="text-align: right;"><a href="https://twitter.com/MV_Media_NL" target="_blank">bekijk alle tweets...</a></div></p>';

        document.getElementById(twitterstream.twitterStatuses.elementId).innerHTML = statuses_html;
    }
}

// Depricated, but kept for backwards compatibility with 0.5 and earlier... for now
var twitterstreamStatusesFilterReplies = false;
function twitterstreamCallback(obj) { twitterstream.twitterStatuses.twitterCallback(obj); }

