var _is_popout_page = false;
var popout_flag = false;
var popWinObj = null;
var lastCall = new Object();
lastCall.ref_title = "";
lastCall.ref_body = "";
lastCall.ref_url = "";


var opener_flag = true;

function popout()
{
/*	_m_client._root_window.sso_service_edit_win.style.display = "none";
	_m_client._root_window.sso_service_register_win.style.display = "none";
	_m_client._root_window.sso_register_win.style.display = "none";
	_m_client._root_window.sso_register_edit_win.style.display = "none";
*/
	if(!_is_popout_safe){
        //alert("Complete add buddy task to popout.");
        _m_client._create_alert_window(_alert_message_list[_current_language][43][0], _alert_message_list[_current_language][43][1], _alert_message_list[_current_language][43][2]);
        return;
    }
	for( var idb in _m_client._buddy_request_window )
	 {
	    var service_val = _m_client._login_list._get_service_index(_m_client._buddy_request_window[idb].service);
		if(idb.indexOf("buddy_request") == 0 && service_val >=0 && _m_client._buddy_request_window[idb].isOpen)
		{
		 	_m_client._create_alert_window(_alert_message_list[_current_language][64][0], _alert_message_list[_current_language][64][1], _alert_message_list[_current_language][64][2]);
			return;
		}
	}

    if(_is_popout_safe_1 == 1) {
        _m_client._create_alert_window(_alert_message_list[_current_language][48][0], _alert_message_list[_current_language][48][1], _alert_message_list[_current_language][48][2]);
        return;
    } else if(_is_popout_safe_1 == 2) {
        _m_client._create_alert_window(_alert_message_list[_current_language][50][0], _alert_message_list[_current_language][50][1], _alert_message_list[_current_language][50][2]);
        return;
    }

    if( popWinObj && ( !popWinObj.closed ) )
    {
        return;
    }

    if(!_m_client._con.is_popout_safe()) {
        _m_client._root_window.set_processbar_text("Popout", "Popout in progress...");
        _m_client._root_window.show_processbar(true);
        setTimeout("popout()", 200);
        return;
    }
    _m_client._root_window.show_processbar(false);

    if(typeof(_m_client)!= "undefined" && _m_client._root_window && _m_client._view != "login" && !_window_control.is_referring)
    {    
        var windowW=800; // wide
        var windowH=600; // high
        var windowX = 200; // from left
        var windowY = 100; // from top
        var urlPop = "popout.html";
        var title =  "Mundu IM";
        var autoclose = true;
           
        var sess_id = ReadCookie("SESSMUNDU").replace("+", "");
        if(!browser.isIE)
		{
			popWinObj = window.open(urlPop,"imPopoutWindow"+sess_id,"location=no, menubar=no, titlebar=no, statusbar=no, toolbar=no, resizable=yes");
			popWinObj.resizeTo(windowW,windowH);
			popWinObj.moveTo(windowX,windowY);
		}
		else
		{
			popWinObj = window.open(urlPop,"imPopoutWindow"+sess_id,"location=no,menubar=no, titlebar=no, statusbar=no, toolbar=no, resizable=yes , width="+windowW+",height="+windowH+",left="+windowX+" ,top="+windowY);
		}
    }
};

function popout_on_load()
{
    __popout = true;
    popWinObj.__popout = true;
    popWinObj._current_language = _current_language;
    if(typeof(youReferred) != "undefined") {
        var pos = youReferred.refer.length - 1;
        if(pos >= 0)
            popWinObj.youReferred.refer.push(new Array(youReferred.refer[pos][0], youReferred.refer[pos][1], youReferred.refer[pos][2]));
        else
            popWinObj.youReferred.refer.push(new Array(document.title, "", window.location.href));
    }
    if( lastCall.type == "chat" ) { 
        popWinObj.IMChat();
        popWinObj.updateLastCall( lastCall );
    }
    else
    {
        popWinObj.IMRefer( lastCall.ref_title, lastCall.ref_body, lastCall.ref_url);
        popWinObj.updateLastCall( lastCall );
    }

    popWinObj.positionRootWindow();
    popWinObj.openChatWindows(_m_client._buddy_list._im_object._chat_windows);

    __popout = false;
    popWinObj.__popout = false;
};

function openChatWindows( objChatWins )
{
    for( var i in objChatWins )
    {
        var buddyDtls = i.split(":");
        var service = buddyDtls[0];
        var username = buddyDtls[1];
        var buddyname = buddyDtls[2];
        var status = objChatWins[i][4].state;
        _m_client._buddy_list._im_object.new_window( service, username, buddyname, status );

        //For closed windows
        if( objChatWins[i][3].isOpen == false )
        {
            _m_client._buddy_list._im_object._chat_windows[i][3].close();
        }
        //For minimized windows
        else if( objChatWins[i][3].isMinimized == true )
            _m_client._buddy_list._im_object._chat_windows[i][3].minimize();
            
        _m_client._buddy_list._im_object._chat_windows[i][4].history.innerHTML = objChatWins[i][4].history.innerHTML;
        _m_client._buddy_list._im_object._chat_windows[i][4].textarea.value = objChatWins[i][4].textarea.value;
    }
};

function openAddBuddyWindow( objABWin )
{
    _m_client._create_add_buddy_window();
    if( objABWin.isOpen == false )
        _m_client._add_buddy_window.close();

    if( objABWin.isMinimized == true )
        _m_client._add_buddy_window.minimize();
};

function openRemoveBuddyWindow( objRBWin )
{
    _m_client._create_remove_buddy_window();
    if( objRBWin.isOpen == false )
        _m_client._remove_buddy_window.close();

    if( objRBWin.isMinimized == true )
        _m_client._remove_buddy_window.minimize();
};

function openIMAnyoneWindow( objIMAWin )
{
    _m_client._create_im_anyone_window();

    if( objIMAWin.isOpen == false )
        _m_client._im_anyone_window.close();

    if( objIMAWin.isMinimized == true )
        _m_client._im_anyone_window.minimize();
};

function Refer( ref_title, ref_body, ref_url )
{
    lastCall.type = "refer";
    lastCall.ref_title = ref_title;
    lastCall.ref_body = ref_body;
    lastCall.ref_url = ref_url;
    IMRefer( ref_title, ref_body, ref_url );
};

function Chat()
{
    lastCall.type = "chat";
    IMChat();
};

