﻿function ths_subst(keyword) {
    keyword = keyword.replace(/^\s*/, ''); 
    var newword = '';
    while (keyword.length) {
        var myArray = /^\S*/.exec(keyword);
        var temp = myArray[0];
        var subword = '';
        var conj = ',';
        var isNeg = /^-/.test(temp);
        if (isNeg) {
            temp = temp.replace(/^-/, '');
            conj = ' OR -';
        }
        if (!(/^#/.test(temp))) // 
        {
            var sflag2 = false;
            while (temp.length > 0) {
                if (/^\w+:\S+/.test(temp)) break;

                var myar = /^[\u3131-\u318e\uac00-\ud7a3]\w+/.exec(temp); 
                var sflag = false;
                if (myar) {
                    sflag = true;
                    if (subword.length) subword += conj;
                    subword += myar[0];
                    temp = temp.replace(/^[\u3131-\u318e\uac00-\ud7a3]/, '');
                }
                else if (myvar = /^[\u3131-\u318e\uac00-\ud7a3]+/.exec(temp))
                {
                    var hangul = myvar[0];
                    if (hangul.length > 2) 
                    {
                        for (var i = 0; i < hangul.length - 2; i++) {
                            if (subword.length) subword += conj;
                            subword += hangul.charAt(i) + hangul.charAt(i + 1) + ' , ' + hangul.charAt(i + 1) + hangul.charAt(i + 2);
                        }
                    }
                    else if (!sflag2) {
                        if (subword.length) subword += conj;
                        subword += hangul;
                    }
                    temp = temp.replace(/^[\u3131-\u318e\uac00-\ud7a3]+/, '');
                }

                sflag2 = false;
                if (temp.length == 0) break;

                if (myvar = /^\w+[\u3131-\u318e\uac00-\ud7a3]{1,2}/.exec(temp))
                {
                    sflag2 = true;
                    if (subword.length) subword += conj;
                    subword += myvar[0];
                    temp = temp.replace(/^\w+/, '');
                }
                else if (myvar = /^\w+/.exec(temp)) 
                {
                    if (!sflag) {
                        if (subword.length) subword += conj;
                        subword += myvar[0];
                    }
                    temp = temp.replace(/^\w+/, '');
                }
                else if (myvar = /^@\w+/.exec(temp)) 
                {
                    if (subword.length) subword += conj;
                    subword += myvar[0];
                    temp = temp.replace(/^@\w+/, '');
                }
                else if (myvar = /^[^A-Za-z0-9_\u3131-\u318e\uac00-\ud7a3]+/.exec(temp)) 
                {
                    if (subword.length) subword += conj;
                    subword += myvar[0];
                    temp = temp.replace(/^[^A-Za-z0-9_\u3131-\u318e\uac00-\ud7a3]+/, '');
                }
                else 
                {
                    if (subword.length) subword += conj;
                    subword += temp;
                    temp = '';
                }
            }
        }
        if (newword.length) newword += ' ';
        newword += myArray[0];

        if (subword.length && myArray[0] != subword) {
            if (isNeg)
                newword += ' -' + subword;
            else
                newword += ' OR ' + subword;
        }

        keyword = keyword.replace(/^\S*\s*/, '');
    }
    return newword;
}




String.prototype.linkify=function(){
	return this.replace(/[A-Za-z]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&;\?\/.=]+/g,function(m){
		return m.link(m);
	});
};
String.prototype.linkuser=function(){
	return this.replace(/[@]+[A-Za-z0-9-_]+/g,function(u){
		return u.link("http://twitter.com/"+u.replace("@",""));
	});
};
String.prototype.linktag=function(){
	return this.replace(/[]+[A-Za-z0-9-_]+/,function(t){
		return t;
	});
};




function fetch_tweets(elem) {
        elem = $(elem);
        searchword =  elem.attr('title');
		tnum = 10;
		 pnum = 1;
		newkeyword = searchword;
          
		  
		  var url = "http://search.twitter.com/search.json?q=" + encodeURIComponent(newkeyword) + "&rpp=" + tnum + "&page=" + pnum + "&result_type=recent";
		  
		  
	  	
  
		$.ajax({ url: url, dataType: 'jsonp', success: function(json){
  
          
		  $(json.results).each(function() {
                var tTime = new Date(Date.parse(this.created_at));
                var cTime = new Date();
                var sinceMin = Math.round((cTime - tTime) / 60000);
                if (sinceMin == 0) {
                    var sinceSec = Math.round((cTime - tTime) / 1000);
                    if (sinceSec < 10)
                        var since = '약 10 초전';
                    else if (sinceSec < 20)
                        var since = '약 20 초전';
                    else
                        var since = '30 초전 ';
                }
                else if (sinceMin == 1) {
                    var sinceSec = Math.round((cTime - tTime) / 1000);
                    if (sinceSec == 30)
                        var since = '30 초전';
                    else if (sinceSec < 60)
                        var since = '약 1 분전';
                    else
                        var since = '1 분전';
                }
                else if (sinceMin < 45)
                    var since = sinceMin + ' 분전';
                else if (sinceMin > 44 && sinceMin < 60)
                    var since = '약 1시간전';
                else if (sinceMin < 1440) {
                    var sinceHr = Math.round(sinceMin / 60);
                    if (sinceHr == 1)
                        var since = '약 1시간전';
                    else
                        var since = '약 ' + sinceHr + ' 시간전';
                }
                else if (sinceMin > 1439 && sinceMin < 2880)
                    var since = '1 일전';
                else {
                    var sinceDay = Math.round(sinceMin / 1440);
                    var since = sinceDay + ' 일전';
                }
                
					
					 
					if (this.metadata.result_type == 'popular')  
					var tweetkind = ' &middot; <font color="navy">' + this.metadata.recent_retweets +' 리트윗</font>';
					else {
					var tweetkind = '';
					}
					 
					 var tweetBy = '<a class="tweet-user" href="http://twitter.com/' + this.from_user + '" alt="실시간 트위터 검색결과">@' + this.from_user + '</a> <span class="tweet-time">' + since + '</span>'+ tweetkind;
					 
					 
                if (showTweetLinks.indexOf('reply') != -1)
                    tweetBy = tweetBy + ' &middot; <a class="tweet-reply" href="http://twitter.com/?status=@' + this.from_user + ' &in_reply_to_status_id=' + this.id + '&in_reply_to=' + this.from_user + '" alt="실시간 트위터 검색결과">리플라이</a>';
                
				if(showTweetLinks.indexOf('rt')!=-1)
			
			tweetBy=tweetBy+' &middot; <a class="tweet-rt" href="http://twitter.com/?status=RT @'+this.from_user+' '+encodeURIComponent(this.text.replace(/&quot;/g,'"'))+'&in_reply_to_status_id='+this.id+'&in_reply_to='+this.from_user+'">리트윗</a>' + ' &middot; <a class="tweet-rt" href="http://twitter.com/' + this.from_user + '">팔로우</a>'; 
			
                var tweet = '<div class="tweet"><div class="tweet-left"><a href="http://twitter.com/' + this.from_user + '" alt="실시간 트위터 검색결과"><img width="48" height="48" src="' + this.profile_image_url + '" /></a></div><div class="tweet-right"><p class="text">' + this.text.linkify().linkuser().linktag() + '<br />' + tweetBy + '</p></div><br style="clear: both;" /></div>';
           
				elem.append(tweet);
       })}});
	   
	   

    }




function fetch_tweets2(elem){
	elem=$(elem);
	searchword=elem.attr('title');
	num=elem.attr('class').split(' ').slice(-1);
	page=elem.attr('class').split(' ').slice(-2);
	nsword=searchword;
	
	
	
	var url="http://search.twitter.com/search.json?q="+encodeURIComponent(nsword)+ "&rpp="+num+"&page="+page+"&result_type=recent";


		$.ajax({ url: url, dataType: 'jsonp', success: function(json){
  
         
		 $(json.results).each(function() {
                var tTime = new Date(Date.parse(this.created_at));
                var cTime = new Date();
                var sinceMin = Math.round((cTime - tTime) / 60000);
                if (sinceMin == 0) {
                    var sinceSec = Math.round((cTime - tTime) / 1000);
                    if (sinceSec < 10)
                        var since = '약 10 초전';
                    else if (sinceSec < 20)
                        var since = '약 20 초전';
                    else
                        var since = '30 초전';
                }
                else if (sinceMin == 1) {
                    var sinceSec = Math.round((cTime - tTime) / 1000);
                    if (sinceSec == 30)
                        var since = '30 초전';
                    else if (sinceSec < 60)
                        var since = '약 1 분전';
                    else
                        var since = '1 분전';
                }
                else if (sinceMin < 45)
                    var since = sinceMin + ' 분전';
                else if (sinceMin > 44 && sinceMin < 60)
                    var since = '약  1 시간전';
                else if (sinceMin < 1440) {
                    var sinceHr = Math.round(sinceMin / 60);
                    if (sinceHr == 1)
                        var since = '약 1 시간전';
                    else
                        var since = '약 ' + sinceHr + ' 시간전';
                }
                else if (sinceMin > 1439 && sinceMin < 2880)
                    var since = '1 일전';
                else {
                    var sinceDay = Math.round(sinceMin / 1440);
                    var since = sinceDay + ' 일전';
                }
                
	        	  
				  	if (this.metadata.result_type == 'popular')  
					var tweetkind = ' &middot; <font color="navy">' + this.metadata.recent_retweets +' 리트윗</font>';
					else {
					var tweetkind = '';
					}
				
	      
                var tweetBy = '<a class="tweet-user" href="http://twitter.com/' + this.from_user + '" alt="실시간 트위터 검색결과">@' + this.from_user + '</a> <span class="tweet-time">' + since + '</span>'+ tweetkind;
                if (showTweetLinks.indexOf('reply') != -1)
                    tweetBy = tweetBy + ' &middot; <a class="tweet-reply" href="http://twitter.com/?status=@' + this.from_user + ' &in_reply_to_status_id=' + this.id + '&in_reply_to=' + this.from_user + '" alt="실시간 트위터 검색결과">리플라이</a>';
            
			if(showTweetLinks.indexOf('rt')!=-1)
				tweetBy=tweetBy+' &middot; <a class="tweet-rt" href="http://twitter.com/?status=RT @'+this.from_user+' '+encodeURIComponent(this.text.replace(/&quot;/g,'"'))+'&in_reply_to_status_id='+this.id+'&in_reply_to='+this.from_user+'">리트윗</a>'+ ' &middot; <a class="tweet-rt" href="http://twitter.com/' + this.from_user + '">팔로우</a>'; 
				
                var tweet = '<div class="tweet"><div class="tweet-left"><a href="http://twitter.com/' + this.from_user + '" alt="실시간 트위터 검색결과"><img width="48" height="48" src="' + this.profile_image_url + '" /></a></div><div class="tweet-right"><p class="text">' + this.text.linkify().linkuser().linktag() + '<br />' + tweetBy + '</p></div><br style="clear: both;" /></div>';
                elem.append(tweet);
		      
			  })}});
	


}

var pnum= 0;
var tnum= 0;

function fetch_tweets3(elem) {
       
		elem = $(elem);
        searchword =  elem.attr('title');
		tnum = 10;
        pnum = pnum + 1;
		newkeyword = searchword;
      
        var url = "http://search.twitter.com/search.json?q=" + encodeURIComponent(newkeyword) + "&rpp=" + tnum + "&page=" + pnum + "&result_type=recent";
       
	  
		$.ajax({ url: url, dataType: 'jsonp', success: function(json){
  
			$(json.results).each(function() {
                var tTime = new Date(Date.parse(this.created_at));
                var cTime = new Date();
                var sinceMin = Math.round((cTime - tTime) / 60000);
                if (sinceMin == 0) {
                    var sinceSec = Math.round((cTime - tTime) / 1000);
                    if (sinceSec < 10)
                        var since = '약 10 초전';
                    else if (sinceSec < 20)
                        var since = '약 20 초전';
                    else
                        var since = '30 초전 ';
                }
                else if (sinceMin == 1) {
                    var sinceSec = Math.round((cTime - tTime) / 1000);
                    if (sinceSec == 30)
                        var since = '30 초전';
                    else if (sinceSec < 60)
                        var since = '약 1 분전';
                    else
                        var since = '1 분전';
                }
                else if (sinceMin < 45)
                    var since = sinceMin + ' 분전';
                else if (sinceMin > 44 && sinceMin < 60)
                    var since = '약 1시간전';
                else if (sinceMin < 1440) {
                    var sinceHr = Math.round(sinceMin / 60);
                    if (sinceHr == 1)
                        var since = '약 1시간전';
                    else
                        var since = '약 ' + sinceHr + ' 시간전';
                }
                else if (sinceMin > 1439 && sinceMin < 2880)
                    var since = '1 일전';
                else {
                    var sinceDay = Math.round(sinceMin / 1440);
                    var since = sinceDay + ' 일전';
                }
                
					
					 
					if (this.metadata.result_type == 'popular')  
					var tweetkind = ' &middot; <font color="navy">' + this.metadata.recent_retweets +' 리트윗</font>';
					else {
					var tweetkind = '';
					}
					 
					 var tweetBy = '<a class="tweet-user" href="http://twitter.com/' + this.from_user + '" alt="실시간 트위터 검색결과">@' + this.from_user + '</a> <span class="tweet-time">' + since + '</span>'+ tweetkind;
					 
					 
                if (showTweetLinks.indexOf('reply') != -1)
                    tweetBy = tweetBy + ' &middot; <a class="tweet-reply" href="http://twitter.com/?status=@' + this.from_user + ' &in_reply_to_status_id=' + this.id + '&in_reply_to=' + this.from_user + '" alt="실시간 트위터 검색결과">리플라이</a>';
                
				if(showTweetLinks.indexOf('rt')!=-1)
			
			tweetBy=tweetBy+' &middot; <a class="tweet-rt" href="http://twitter.com/?status=RT @'+this.from_user+' '+encodeURIComponent(this.text.replace(/&quot;/g,'"'))+'&in_reply_to_status_id='+this.id+'&in_reply_to='+this.from_user+'">리트윗</a>'+ ' &middot; <a class="tweet-rt" href="http://twitter.com/' + this.from_user + '">팔로우</a>'; 
			
                var tweet = '<div class="tweet"><div class="tweet-left"><a href="http://twitter.com/' + this.from_user + '" alt="실시간 트위터 검색결과"><img width="48" height="48" src="' + this.profile_image_url + '" /></a></div><div class="tweet-right"><p class="text">' + this.text.linkify().linkuser().linktag() + '<br />' + tweetBy + '</p></div><br style="clear: both;" /></div>';
           
				elem.append(tweet);
        
		       })}});
		
    
    }




    showTweetLinks = 'rt, reply';

    $(function(){
        showTweetLinks = showTweetLinks.toLowerCase();
        if (showTweetLinks.indexOf('all') != -1)
            showTweetLinks = 'reply,rt';
        $('.twitStream2').each(function() {
        
        	fetch_tweets(this);
        

        });

    });
	
	

    
