var _tweetlen = true;

function div_box_windows_center(str_div_id){
    
    var obj = $('#'+str_div_id);
    var iHeight = ($(window).height() / 2) - obj.height() / 2 + $(document).scrollTop();
    var iWidth = ($(window).width() / 2) - obj.width() / 2 + $(document).scrollLeft();
    obj.css({
        position: 'absolute'
        , display:'block'
        , top: iHeight
        , left: iWidth
    });
    
}

function twitter_link(){
    
    div_box_windows_center('account');
}

function chklen(obj_textarea, int_chklen, signboxid)
{
    var magStr = $(obj_textarea).val();
    var calcuLen = int_chklen - magStr.length;

    if(calcuLen < 0){
        $('#'+signboxid).html("<font color='#FF0000'>"+calcuLen+"</font>");
        _tweetlen=false;

    }else if(calcuLen < 10){
        $('#'+signboxid).html("<font color='#FF0000'>"+calcuLen+"</font>");
        _tweetlen=true;

    }else if(calcuLen < 20){
        $('#'+signboxid).html("<font color='#000000'>"+calcuLen+"</font>");
        _tweetlen=true;

    }else{
        $('#'+signboxid).html(calcuLen);
        _tweetlen=true;
    }


    $(obj_textarea).keypress(function(e){
        var this_obj_id = $(obj_textarea).attr('id');
        var this_parent_id = this_obj_id.replace('_msg','');

        if($('#'+this_parent_id).css('display')=='block'){
            //alert(e.keyCode);
            if(e.keyCode==27) {
                $('#'+this_parent_id).hide();
            }
        }
    });

}

function len_over_msg(tw_type){
    var len = $('#'+tw_type+'_msg').val().length;
    
    var msg = '내용을 줄여주세요. 트위터는 140자 이내의 메시지만 작성할 수 있습니다 (현재 <font color=\'#FF0000\'>'+len+'</font>자)';
    show_and_fadeout_status(msg, _duration);
}

function retweet(_twid,_screen_name)
{	
    div_box_windows_center('retweet');
    
	var retweet_msg = document.getElementById('retweet_msg');

    retweet_msg
    //&quot;
        
	retweet_msg.value = "";
    retweet_msg.value = "RT @"+_screen_name+" "+retweet_msg.value;
    
	var msg = document.getElementById('retweet_content_'+_twid).value;
	retweet_msg.value=retweet_msg.value+msg;
    
    retweet_msg.focus();
    
    chklen(retweet_msg, 140,'retweet_char_textarea');
    
}

function retweet_send()
{
    if (_tweetlen) {
        var msg = Base64.URLEncode(document.getElementById('retweet_msg').value);
        var url = "/twitter/write/?msg=" + msg;
        
        $.getJSON(url, function(data){
            //정상
            if(data.error==0){
                retweet_comp();
                
            //에러
            }else{

                var params = new Array();
                params['req'] = msg;
                params['wm'] = 'retweet';
                //params['reply_status_tmp'] = _reply_status_tmp;

                post_to_url('/twitter',params);
        
            }
        });
        
    }else{
        len_over_msg('retweet');
    }
}

function retweet_comp()
{
	var retweetbox=document.getElementById('retweet');
	document.getElementById('retweet_msg').value="";
	retweetbox.style.display="none";
    
    show_and_fadeout_status("Retweet 했습니다", _duration);

    //auto_refresh_user();
}


var _reply_status_tmp = $('#reply_status_tmp').val();

function reply(_scname, _status)
{
    div_box_windows_center('reply');
	var reply_msg = document.getElementById('reply_msg');
	reply_msg.value="";
	
    if(_status){
        _reply_status_tmp = _status;
        reply_msg.value="@"+_scname+" ";
        
    }else{
        _reply_status_tmp = 0;
        reply_msg.value= _scname;
        
    }
    
    reply_msg.focus();

    chklen(reply_msg, 140,'reply_char_textarea');

}

function reply_send(){
    
    if (_tweetlen) {
        var msg = Base64.URLEncode(document.getElementById('reply_msg').value);
        //httpcall("/twitter/write/" + _reply_status_tmp + "/?msg=" + msg, reply_comp);
        var url = "/twitter/write/" + _reply_status_tmp + "/?msg=" + msg;
        $.getJSON(url, function(data){
            //정상
            if(data.error==0){
                reply_comp();

            //에러
            }else{
                
                var params = new Array();
                params['req'] = msg;
                params['wm'] = 'reply';
                params['reply_status_tmp'] = _reply_status_tmp;

                post_to_url('/twitter',params);
                
            }
        });
        
    }
    else {        
        len_over_msg('reply');
    }
}

function reply_comp()
{
	var replybox=document.getElementById('reply');
	document.getElementById('reply_msg').value="";
	replybox.style.display="none";
    $('#reply_status_tmp').val('');
	_reply_status_tmp='';
    
    show_and_fadeout_status("Reply 했습니다", _duration);
    
    //auto_refresh_user();
}

function tweet_status_send(_obj_id){
    if (_tweetlen) {
        
        var msg = Base64.URLEncode($('#'+_obj_id+'_msg').val());
        window.open('http://twitter.com/home?status=' + msg);
        $('#'+_obj_id).hide();
        
    }else{
        len_over_msg(_obj_id);
    }
}

function tweet_link_send(_obj_id){
    
    if (_tweetlen) {        
        var params = new Array();
        params['req'] = $('#'+_obj_id+'_msg').val();
        params['wm'] = _obj_id;
        params['reply_status_tmp'] = _reply_status_tmp;
        
        post_to_url('/twitter',params);

    }else{
        len_over_msg(_obj_id);
    }
    
}

function tweet_login_send(_obj_id){
    
    if (_tweetlen) {

        var msg = Base64.URLEncode($('#'+_obj_id+'_msg').val()+'&wm='+_obj_id);
        location_login_page(msg);

    }else{
        len_over_msg(_obj_id);
    }
    
}

function init_send(_obj_id, _content)
{
    div_box_windows_center(_obj_id);
    $('#'+_obj_id+'_msg').val(_content);
    $('#'+_obj_id+'_msg').focus();

    //alert(_reply_status_tmp);
    
    chklen($('#'+_obj_id+'_msg'), 140, _obj_id+'_char_textarea');
}

function auto_refresh_user(){
    var screen_name = $('.name').filter('.user > a').text();
    var url = '/ajax/refresh_user/?screen_name=' + screen_name;
    $.getJSON(url, function(data){
        if(data.http_code!=200){
            auto_refresh_user();
        }
    });
}