/* statick class to create an okRating object */
function getOkTwitterSearchTimeLine(params)
{
    return getOkTwitterSearchTimeLine.initialize(params);
}
getOkTwitterSearchTimeLine.timelines = []
getOkTwitterSearchTimeLine.initialize = function(params)
{
    if (typeof(params)=='undefined') params = {};
    params.name = 'getOkTwitterSearchTimeLine.timelines['+getOkTwitterSearchTimeLine.timelines.length+']';
    return getOkTwitterSearchTimeLine.timelines[getOkTwitterSearchTimeLine.timelines.length] = new okTwitterSearchTimeLine(params);
}
/* -------------------------------------------------------------------------- */

function okTwitterSearchTimeLine(params) 
{
    this.initialize(params);
}

okTwitterSearchTimeLine.names = [];
okTwitterSearchTimeLine.prototype = {
    name                : "okTwitterSearchTimeLine",
    apiURL              : "/api",
    query               : '',
    containerId         : '',
    excludeUser         : '',
    count               : 20,

    
    initialize : function (params)
    {
        this.params = params;

        okTwitterSearchTimeLine.names[params.name] = this;
        if(typeof(params.name) != 'undefined')              { this.name             = params.name;              }
        if(typeof(params.excludeUser) != 'undefined')       { this.excludeUser      = params.excludeUser;       }
        if(typeof(params.query) != 'undefined')             { this.query            = params.query;             }
        if(typeof(params.count) != 'undefined')             { this.count            = params.count;             }
        if(typeof(params.containerId) != 'undefined')       { this.containerId      = params.containerId;       }
    },
    getSearchTimeLine : function()
    {
        queryString = "excludeUser="+this.excludeUser+"count="+this.count+"&query="+escape(this.query);
        loadJSON(this.apiURL,'method=Twitter.searchTimeline&callback='+this.name+".display&"+queryString,'script');
    },
    display : function(data)
    {
    },
    prepText : function(text)
    {
        text = this.prepUrl(text);
        text = this.prepUname(text);
        return text;
    },
    prepUname : function(text)
    {
        var re = /@([-_a-zA-Z0-9]+)/g;
        return text.replace(re, "<a target=\"blank\" href=\"http://www.twitter.com/$1\">@$1</a>");
    },
    prepUrl : function(text)
    {
        var re = /(http:\/\/[-_\.\/a-zA-Z0-9\?]+)/gi;
        return text.replace(re,"<a target=\"blank\" href=\"$1\">$1</a>");
    }
}
