function SceneVideoCallFullHD(options) {
	this.options = options;
    
    this.VideoCallFullHDView =null;

    this.CallDurationBgHDLabel =null;
    this.CallDurationTextHDLabel =null;
    this.CallDurationTimeHDLabel=null;
	this.CallQualityGaugeLabel=null;

    //this.YourThumbnailHDLabel=null;
    //this.MyThumbnailHDLabel=null;
    //this.MyFrameLabel=null;
    
    this.CallEndBtn=null;
	this.CameraOffBtn=null;
    this.MicVolumeBtn=null;
    this.TVModeBtn=null;
    this.TempBtn=null;
      
    this.HoldIconLabel = null;
	//this.HoldAniLabel = null;
    
    this.HDHelpBar=null;
    
    this.InfoArea = null;
    this.HideTimer = false;
    this.InfoAreaShowState = true;
}

SceneVideoCallFullHD.prototype.initialize = function () {
	alert("SceneVideoCallFullHD.initialize()");
	// this function will be called only once when the scene manager show this scene first time
	// initialize the scene controls and styles, and initialize your variables here 
	// scene HTML and CSS will be loaded before this function is called
    
   this.create();
}

SceneVideoCallFullHD.prototype.handleShow = function () {
	alert("SceneVideoCallFullHD.handleShow()");
	// this function will be called when the scene manager show this scene 
	this.closeVideoRect();
    this.update();
    
  	// window.addEventListener('click', $.sf.returnFocus); 
}

SceneVideoCallFullHD.prototype.handleHide = function () {
	alert("SceneVideoCallFullHD.handleHide()");
	// this function will be called when the scene manager hide this scene  
	this.highlight(null);
	
	this.hiddenView();
	// window.removeEventListener('click', $.sf.returnFocus);
}

SceneVideoCallFullHD.prototype.handleFocus = function () {
	alert("SceneVideoCallFullHD.handleFocus()");
	// this function will be called when the scene manager focus this scene
    var currentHighlight =  this.VideoCallFullHDView.getCurrentHighlight();
    if(currentHighlight ==null)
    {
        this.highlight(this.CallEndBtn);
    }
    else
    {
        this.highlight(currentHighlight);
    }
    
    if(this.InfoAreaShowState==true && this.HideTimer == false)
    {
    	this.startTimer();
    }
    
}

SceneVideoCallFullHD.prototype.handleBlur = function () {
	alert("SceneVideoCallFullHD.handleBlur()");
	// this function will be called when the scene manager move focus to another scene from this scene
	
	var currentHighlight =  this.VideoCallFullHDView.getCurrentHighlight();
     if(currentHighlight !=null)
    {
        currentHighlight.blur();
    }
    
    if(this.HideTimer==true)
	{
		this.stopTimer();
	}
}

SceneVideoCallFullHD.prototype.handleKeyDown = function (keyCode) {
	alert("SceneVideoCallFullHD.handleKeyDown(" + keyCode + ")");
	// TODO : write an key event handler when this scene get focued
	
	PluginAPIMgr.PlayAudio(keyCode);
	if(ProcMgr.checkWidgetHighlight()==false){
		return;
	}
	/*if(this.HideTimer==false || this.InfoAreaShowState == false)
	{
		this.InfoArea.visibleObj();
		this.InfoAreaShowState= true;
		this.startTimer();
		 sf.key.block(event);
		return;
	}
	else
	{
		this.resetTimer();
	}*/
	
	if(this.ShowInfoArea())
	{
		return;
	}
	
	switch (keyCode) {
		case sf.key.LEFT:
            this.processLeftKey();
			break;
		case sf.key.RIGHT:
           this.processRightKey();
			break;
		case sf.key.UP:

			break;
		case sf.key.DOWN:

			break;

		case sf.key.ENTER:
        this.processEnterKey();
			break;
        case sf.key.GREEN:
            this.processGreenKey();
            break;
        
        case sf.key.VOL_DOWN:
        case sf.key.PANEL_VOL_DOWN:
		case sf.key.VOL_UP:
        case sf.key.PANEL_VOL_UP:
             this.processVolumeKey();
			break;
        
        case sf.key.N1:
        case sf.key.N2:
        case sf.key.N3:
        case sf.key.N4:
        case sf.key.N5:
        case sf.key.N6:
        case sf.key.N7:
        case sf.key.N8:
        case sf.key.N9:
        case 35:
		case 650: 
        case sf.key.N0:
        case 259:
            ProcMgr.SendDTMF(keyCode);
            break;
        
        case sf.key.RED:

			break;
         
        case sf.key.YELLOW:

            break;
			
		case sf.key.BLUE:
			this.processBlueKey();
			break;				

		case sf.key.TOOLS:
			alert("KEY_TOOLS");
			this.processToolKey();
			break;            
            
        case sf.key.RETURN:
           this.processReturnKey();
            sf.key.block(event);
            break;
            
         case sf.key.EXIT:
            this.processExitKey();
            sf.key.block(event);
			break;
            
         case 147:  //infolink
         case 261:  //contents
         case 115:  //wiselink
            ProcMgr.processInfolinkKey();
			break;
    
    		//Gesture recognition  >> Scroll
         case 40000002:
         case 40000003:
         case 40000004:
         case 40000005:
			break;
			
        default:
            ProcMgr.processBlockKey(keyCode);
            break;  
	}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////

SceneVideoCallFullHD.prototype.create = function(){
    alert("SceneVideoCallFullHD.create() ");
	
	var this_ = sf.scene.get("VideoCallFullHD");
	var clickCF =  function(obj){this_.processClickEvent(obj);};
	
    this.VideoCallFullHDView = new View("VideoCallFullHD");
    //this.VideoCallFullHDView.SetBgImage(WndMgr.Bg_VideoCallSD.src);
    this.VideoCallFullHDView.SetOnClickCallbackFunc(clickCF);
     
     this.InfoArea = new View("video_call_info_area");

    this.CallDurationBgHDLabel= new Label("call_duration_bg_hd", null);
    this.CallDurationBgHDLabel.SetBgImage(g_Image.IMAGE_VIDEO_CALL_DURATION_BG);

    this.CallDurationTextHDLabel = new Label(null,"call_duration_text_hd");
    this.CallDurationTextHDLabel.SetTextStyle("call_duration_full_text_style");
    this.AdjustDurationText(IDWS_MOIP_SKYPE_CALL_DURATION);

    this.CallDurationTimeHDLabel = new Label(null,"call_duration_time_hd");
    this.CallDurationTimeHDLabel.SetTextStyle("call_duration_time_hd_style");
    this.CallDurationTimeHDLabel.SetText("00:00:00");
	
	this.CallQualityGaugeLabel= new Label("call_quality_gauge_hd", null);
    this.CallQualityGaugeLabel.SetBgImage(g_Image.IMAGE_VIDEO_CALL_VIEW_QUALITY_GAUGE1);

    // this.YourThumbnailHDLabel= new Label("your_thumbnail_hd", null);
    // this.YourThumbnailHDLabel.SetBgImage(g_Image.IMAGE_VIDEO_CALL_VIEW_THUMBNAIL_HD_L);
    // this.YourThumbnailHDLabel.visibleObj();    

    // this.MyThumbnailHDLabel= new Label("my_thumbnail_hd", null);
    // this.MyThumbnailHDLabel.SetBgImage(g_Image.IMAGE_VIDEO_CALL_VIEW_THUMBNAIL_FULL_S);
    // this.MyThumbnailHDLabel.visibleObj();
    
    //this.MyFrameLabel= new Label("my_frame_hd", null);
    //this.MyFrameLabel.SetBgImage(g_Image.IMAGE_VIDEO_CALL_VIEW_MY_FRAME_FULL);

    this.TVModeBtn = new Button();
    this.TVModeBtn.SetImageObjId("video_call_tv_mode_btn");
    this.TVModeBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_IMG, g_Image.IMAGE_CALL_TV_MODE_BTN_NORMAL);
    this.TVModeBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_FOCUS_IMG, g_Image.IMAGE_CALL_TV_MODE_BTN_NORMALFOCUS);
	//this.TVModeBtn.SetBgImage(BtnImgIndex.BTN_DIM_IMG, g_Image.IMAGE_VIDEO_CALL_BTN_DIM);		
    this.TVModeBtn.SetOnClickCallbackFunc(clickCF); 
    
    this.CameraOffBtn = new Button();
    this.CameraOffBtn.SetImageObjId("video_call_camera_off_hd_btn");
    this.CameraOffBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_IMG, g_Image.IMAGE_VIDEO_CALL_CAMERA_BTN_NORMAL);
    this.CameraOffBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_FOCUS_IMG, g_Image.IMAGE_VIDEO_CALL_CAMERA_BTN_NORMALFOCUS);
	//this.CameraOffBtn.SetBgImage(BtnImgIndex.BTN_DIM_IMG, g_Image.IMAGE_VIDEO_CALL_BTN_DIM);	
    this.CameraOffBtn.SetOnClickCallbackFunc(clickCF); 
    
    this.MicVolumeBtn = new Button();
    this.MicVolumeBtn.SetImageObjId("video_call_mic_volume_hd_btn");
    this.MicVolumeBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_IMG, g_Image.IMAGE_CALL_MIC_BTN_NORMAL);
    this.MicVolumeBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_FOCUS_IMG, g_Image.IMAGE_CALL_MIC_BTN_NORMALFOCUS);
	//this.MicVolumeBtn.SetBgImage(BtnImgIndex.BTN_DIM_IMG, g_Image.IMAGE_VIDEO_CALL_BTN_DIM);
    this.MicVolumeBtn.SetOnClickCallbackFunc(clickCF);

	this.CallEndBtn = new Button();
    this.CallEndBtn.SetImageObjId("video_call_end_hd_btn");
    this.CallEndBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_IMG, g_Image.IMAGE_CALL_END_BTN_NORMAL);
    this.CallEndBtn.SetBgImage(BtnImgIndex.BTN_NORMAL_FOCUS_IMG, g_Image.IMAGE_CALL_END_BTN_NORMALFOCUS);
	//this.CallEndBtn.SetBgImage(BtnImgIndex.BTN_DIM_IMG, g_Image.IMAGE_VOICE_CALL_TO_VIDEO_CALL_BTN_DIM);	
    this.CallEndBtn.SetOnClickCallbackFunc(clickCF);

    /*this.TempBtn = new Button();
    this.TempBtn.SetImageObjId("video_call_hd_green_help");
    this.TempBtn.SetOnClickCallbackFunc(this_.processGreenKey); */  
       	
	// this.HoldAniLabel= new Label("video_call_hd_hold_animation", null);
	// this.HoldAniLabel.AppendFgImage("video_call_hd_hold_animation_icon","0px","0px","108px","108px");
    // this.HoldAniLabel.SetFgImage(WndMgr.Bg_LoadingGIF.src);
    
    this.HDHelpBar = new HelpBar(HelpBarIndex.VIDEO_CALL_FULL_HD_VIEW, "video_call_info_area",g_Image.IMAGE_VIDEO_CALL_FULL_VIEW_HELPBAR_BG );
    this.HDHelpBar.SetOnClickCallbackFunc(1, function(){this_.processGreenKey();});
    this.HDHelpBar.SetOnClickCallbackFunc(2, function(){this_.processBlueKey();});
    this.HDHelpBar.SetOnClickCallbackFunc(3, function(){this_.processToolKey();});
    this.HDHelpBar.SetOnClickCallbackFunc(4, function(){this_.processReturnKey();});
    
    this.TVModeBtn.registHelpBar( this.HDHelpBar);	
	this.CameraOffBtn.registHelpBar( this.HDHelpBar);
	this.MicVolumeBtn.registHelpBar( this.HDHelpBar);
	this.CallEndBtn.registHelpBar( this.HDHelpBar);
   
}

SceneVideoCallFullHD.prototype.update=function()
{  
	this.InfoArea.visibleObj();
	this.VideoCallFullHDView.DisableOnClick();
	this.InfoAreaShowState = true;
	
     if(g_Data.GetCallLocalHold() == true)
     {
        this.LocalHold();
     }
     else if(g_Data.GetCallRemoteHold() == true)
     {
        this.RemoteHold();
     }
     else
     {
	 	if(ProcMgr.callHoldTimer == true)
		{
			this.StartLocalHoldWait();
		}
		else
		{
			this.StopLocalHoldWait();
		}
		
        this.Resume();
     }
     
	 this.UpdateCallQuality();	
     this.toggleCameraOffBtnEnable();
     this.toggleYourVideo();
     this.toggleMyVideo();
     
	this.visibleView();     
}

SceneVideoCallFullHD.prototype.updateCallDuration = function(time)
{
     this.CallDurationTimeHDLabel.SetText(time);
}

SceneVideoCallFullHD.prototype.UpdateCallQuality= function()
{
	var level = g_Data.GetCallQualityGauge();
    alert("SceneVideoCallFullHD.UpdateCallQuality() " + level);
	
    if(level ==1)
    {
        this.CallQualityGaugeLabel.SetBgImage(g_Image.IMAGE_VIDEO_CALL_VIEW_QUALITY_GAUGE1);
    }
    
    if(level ==2)
    {
        this.CallQualityGaugeLabel.SetBgImage(g_Image.IMAGE_VIDEO_CALL_VIEW_QUALITY_GAUGE2);
    }
    
    if(level ==3)
    {
        this.CallQualityGaugeLabel.SetBgImage(g_Image.IMAGE_VIDEO_CALL_VIEW_QUALITY_GAUGE3);
    }
    
    if(level ==4)
    {
        this.CallQualityGaugeLabel.SetBgImage(g_Image.IMAGE_VIDEO_CALL_VIEW_QUALITY_GAUGE4);
    }
    
    if(level ==5)
    {
        this.CallQualityGaugeLabel.SetBgImage(g_Image.IMAGE_VIDEO_CALL_VIEW_QUALITY_GAUGE5);
    }    
}

SceneVideoCallFullHD.prototype.toggleCameraOffBtnEnable=function()
{
    alert("SceneVideoCallFullHD.toggleCameraOffBtnEnable() ");
    
    var camera_state = PluginAPIMgr.GetCameraState();
    
    if(camera_state == ENUM_CAM_STATE.CAM_STATE_DISCONNECTED || camera_state == ENUM_CAM_STATE.CAM_STATE_CONNECTING)
    {
        alert("SceneVideoCallFullHD.toggleCameraOffBtnEnable() Dim : true ->  camera_state : "+ camera_state );

         var currentHighlight =  this.VideoCallFullHDView.getCurrentHighlight();
        if(currentHighlight ==  this.CameraOffBtn)
        {
            if(this.CameraOffBtn.flag_highlight == true)
            {
                this.highlight(this.CallEndBtn);
            }
            else
            {
                this.highlight(null);
            }
        }
        
        this.CameraOffBtn.SetFlagDim(true);
        
        if(currentHighlight ==  this.MicVolumeBtn)
        {
             if(this.MicVolumeBtn.flag_highlight == true)
            {
                this.highlight(this.CallEndBtn);
            }
            else
            {
                this.highlight(null);
            }
        }
        this.MicVolumeBtn.SetFlagDim(true);
    }
    else
    {
        alert("SceneVideoCallFullHD.toggleCameraOffBtnEnable() Dim :  false ");
        if(PluginAPIMgr.IsInCall()==1)
		{
			PluginAPIMgr.StartRecord();
		}
		
		if(this.CameraOffBtn.GetFlagDim()==true)
		{
			if(g_Data.GetCallLocalHold() !=true && g_Data.GetCallRemoteHold() !=true)
			{
				this.CameraOffBtn.SetFlagDim(false);
			}				
		}
		
		if(this.MicVolumeBtn.GetFlagDim() == true)
		{
			this.MicVolumeBtn.SetFlagDim(false);
		}
    }    
}

SceneVideoCallFullHD.prototype.toggleYourVideo = function()
{
    var is_receiving_video =    ProcMgr.IsReceivingVideo(); 
    
    if(is_receiving_video == true)
    {
        //this.YourThumbnailHDLabel.hiddenObj();
    }
    else
    {
        //this.YourThumbnailHDLabel.visibleObj();
    }
}

SceneVideoCallFullHD.prototype.toggleMyVideo = function()
{
    var is_sending_video = PluginAPIMgr.IsSendingVideo(); 
    
    if(is_sending_video == 1)
    {
        //this.CameraOffBtn.SetText(COM_IDS_STR_STOP_VIDEO_KR_OFF_CAMERA);
        //this.MyThumbnailHDLabel.hiddenObj();
    }
    else
    {
        //this.CameraOffBtn.SetText(TV_SID_START_VIDEO_KR_ON_CAMERA);
        //this.MyThumbnailHDLabel.visibleObj();
    }
	
	if(this.CameraOffBtn.flag_highlight == true)
	{
		this.CameraOffBtn.changeHelpBar( this.HDHelpBar);
	}		
}

SceneVideoCallFullHD.prototype.toggleCameraOnOff= function()
{
    var is_sending_video = PluginAPIMgr.IsSendingVideo(); 
    
    if(is_sending_video == 1)
    {
        ProcMgr.StopSendVideo();
    }
    else
    {       
        ProcMgr.StartSendVideo();
    }
}

SceneVideoCallFullHD.prototype.closeVideoRect= function()
{
    $("#VideoCallFullHD").css('background-color' , 'rgb(0,0,0)');
    
     //this.YourThumbnailHDLabel.visibleObj();
     //this.MyThumbnailHDLabel.visibleObj();
}

SceneVideoCallFullHD.prototype.openVideoRect= function()
{
    $("#VideoCallFullHD").css('background-color' , 'transparent');
}

SceneVideoCallFullHD.prototype.highlight=function(obj)
{
    this.VideoCallFullHDView.setCurrenHighlight(obj);
}

SceneVideoCallFullHD.prototype.processLeftKey=function()
{
    alert("SceneVideoCallFullHD.processLeftKey() ");
    var currentHighlight =  this.VideoCallFullHDView.getCurrentHighlight();
    
    switch(currentHighlight)
    {
        case this.CallEndBtn:
            this.highlight(this.HoldBtn);
            break;
         case this.CameraOffBtn:
            this.highlight(this.CallEndBtn);
            break;
        case this.MicVolumeBtn:        
               if( this.CameraOffBtn.GetFlagDim() ==true)
             {
                this.highlight(this.CallEndBtn);
             }
             else
             {
               this.highlight(this.CameraOffBtn);
             }
            break; 

         case this.HoldBtn:

		 	if( this.MicVolumeBtn.GetFlagDim()==true)
			{
				this.highlight(this.CallEndBtn);
			}
			else
			{
				this.highlight(this.MicVolumeBtn);
			}                
            break;                       
    }
}

SceneVideoCallFullHD.prototype.processRightKey=function()
{
    alert("SceneVideoCallFullHD.processRightKey() ");
    var currentHighlight =  this.VideoCallFullHDView.getCurrentHighlight();
    
    switch(currentHighlight)
    {
        case this.CallEndBtn:
             if( this.CameraOffBtn.GetFlagDim() ==true )
             {
			 	if(this.MicVolumeBtn.GetFlagDim() ==true)
				{
				 	this.highlight(this.HoldBtn);	
				}
				else
				{
					this.highlight(this.MicVolumeBtn);
				}            
             }
             else
             {
               this.highlight(this.CameraOffBtn);
             }
            break;
         case this.CameraOffBtn:
            this.highlight(this.MicVolumeBtn);
            break;
        case this.MicVolumeBtn:
            this.highlight(this.HoldBtn);
            break; 

         case this.HoldBtn:
            this.highlight(this.CallEndBtn);
            break;                       
    }
}

SceneVideoCallFullHD.prototype.processEnterKey=function()
{
    alert("SceneVideoCallFullHD.processEnterKey() ");
    var currentHighlight =  this.VideoCallFullHDView.getCurrentHighlight();
    
    switch(currentHighlight)
    {
        case this.CallEndBtn:
            this.closeVideoRect();
            ProcMgr.DisconnectCall();
            break;
			
         case this.CameraOffBtn:
           this.toggleCameraOnOff();
            break;
			
        case this.MicVolumeBtn:
             StateMgr.Start_Volume_Mic_State();
            break;
			 	
         case this.HoldBtn:
             ProcMgr.ToggleLocalHold(); 
            break;                      
    }
}
/*
SceneVideoCallFullHD.prototype.ProcessEndCallBtn = function()
{
    alert("SceneVideoCallFullHD.ProcessEndCallBtn() ");
    
	var this_ = sf.scene.get("VideoCallFullHD");
	
	this_.highlight(this_.CallEndBtn);
    this_.closeVideoRect();
    ProcMgr.DisconnectCall();
}

SceneVideoCallFullHD.prototype.ProcessCameraOffBtn = function()
{
    alert("SceneVideoCallFullHD.ProcessCameraOffBtn() ");
    
	var this_ = sf.scene.get("VideoCallFullHD");
	
	this_.highlight(this_.CameraOffBtn);
    this_.toggleCameraOnOff();
}

SceneVideoCallFullHD.prototype.ProcessMicVolumeBtn = function()
{
    alert("SceneVideoCallFullHD.ProcessMicVolumeBtn() ");
    
	var this_ = sf.scene.get("VideoCallFullHD");
	
	this_.highlight(this_.MicVolumeBtn);
    StateMgr.Start_Volume_Mic_State();
}

SceneVideoCallFullHD.prototype.ProcessHoldBtn = function()
{
    alert("SceneVideoCallFullHD.ProcessHoldBtn() ");
    
	var this_ = sf.scene.get("VideoCallFullHD");
	
	this_.highlight(this_.HoldBtn);
    ProcMgr.ToggleLocalHold();
}*/

SceneVideoCallFullHD.prototype.processReturnKey = function(){
    alert("SceneVideoCallFullHD.processReturnKey() ");
    
    if(ProcMgr.isGenoaS==false)
	{
		StateMgr.Start_Main_State();
	}
	else
	{
		StateMgr.Start_Call_Switch_State(); 
	}       
}

SceneVideoCallFullHD.prototype.processExitKey = function(){
    alert("SceneVideoCallFullHD.processExitKey() ");
   
   StateMgr.Start_Exit_State(false);
}

SceneVideoCallFullHD.prototype.processGreenKey=function()
{
    alert("SceneVideoCallFullHD.processGreenKey() ");

	this.closeVideoRect();
    $("#VideoCallFullHD").css('background-color' , 'rgb(0,0,0)');

	WndMgr.ChangeVideoCallScreen();      
}

SceneVideoCallFullHD.prototype.processVolumeKey=function()
{
    alert("SceneVideoCallFullHD.processVolumeKey() ");
    StateMgr.Start_Volume_Speaker_State();
}

SceneVideoCallFullHD.prototype.processBlueKey = function(){
    alert("SceneVideoCallFullHD.processBlueKey() ");
    
	if(ProcMgr.isGenoaS==false)
	{
		StateMgr.Start_Live_Contact_List_State();
	}	
}

SceneVideoCallFullHD.prototype.processToolKey=function()
{
    alert("SceneVideoCallFullHD.processToolKey() ");
	
	StateMgr.Start_List_Tools_State(TOOL_MENU_LIST_TYPE.VIDEO_CALL);    
}

SceneVideoCallFullHD.prototype.StartLocalHoldWait=function()
{
	alert("SceneVideoCallFullHD.StartLocalHoldWait() "); 
	//this.HoldAniLabel.visibleObj();
	
	var currentHighlight =  this.VideoCallFullHDView.getCurrentHighlight();
	if(currentHighlight ==  this.CameraOffBtn)
    {
        if(this.CameraOffBtn.flag_highlight == true)
        {
            this.highlight(this.CallEndBtn);
        }
        else
        {
            this.highlight(null);
        }
    }
	this.CameraOffBtn.SetFlagDim(true);  
}

SceneVideoCallFullHD.prototype.StopLocalHoldWait=function()
{
	alert("SceneVideoCallFullHD.StopLocalHoldWait() "); 
	//this.HoldAniLabel.hiddenObj();
}

SceneVideoCallFullHD.prototype.LocalHold=function()
{
    alert("SceneVideoCallFullHD.LocalHold() "); 
	this.StopLocalHoldWait();  
    //this.HoldIconLabel.visibleObj();
    //this.HoldBtn.SetText(SID_RESUME);
    this.AdjustDurationText(IDWS_MOIP_CALL_ON_HOLD);
	
	var currentHighlight =  this.VideoCallFullHDView.getCurrentHighlight();
	if(currentHighlight ==  this.CameraOffBtn)
    {
        if(this.CameraOffBtn.flag_highlight == true)
        {
            this.highlight(this.CallEndBtn);
        }
        else
        {
            this.highlight(null);
        }
    }
	this.CameraOffBtn.SetFlagDim(true);    
}

SceneVideoCallFullHD.prototype.RemoteHold=function()
{
    alert("SceneVideoCallFullHD.RemoteHold() ");
	this.StopLocalHoldWait();  
    //this.HoldIconLabel.visibleObj();
    //this.HoldBtn.SetText(IDWS_MOIP_SKYPE_HOLD);
    this.AdjustDurationText(TV_SID_YOU_ARE_ON_HOLD); 
	
	var currentHighlight =  this.VideoCallFullHDView.getCurrentHighlight();
    if(currentHighlight ==  this.CameraOffBtn)
    {
        if(this.CameraOffBtn.flag_highlight == true)
        {
            this.highlight(this.CallEndBtn);
        }
        else
        {
            this.highlight(null);
        }
    }
    
    this.CameraOffBtn.SetFlagDim(true);
}

SceneVideoCallFullHD.prototype.Resume=function()
{
    alert("SceneVideoCallFullHD.Resume() ");  
    //this.HoldIconLabel.hiddenObj();
	//this.HoldBtn.SetText(IDWS_MOIP_SKYPE_HOLD);
    this.AdjustDurationText(IDWS_MOIP_SKYPE_CALL_DURATION); 
	
	var camera_state = PluginAPIMgr.GetCameraState();
    if(camera_state != ENUM_CAM_STATE.CAM_STATE_DISCONNECTED && camera_state != ENUM_CAM_STATE.CAM_STATE_CONNECTING)
	{
		//this.CameraOffBtn.SetFlagDim(false);
	}
}

SceneVideoCallFullHD.prototype.startTimer = function()
{
    alert("SceneVideoCallFullHD.startTimer() ");
	
	this.HideTimer = true;
	PluginAPIMgr.StartOSDTimer("10000" , function() { sf.scene.get('VideoCallFullHD').hideTimerCallback();}, ENUM_TIMER_TYPE.VIDEO_CALL_INFO_HIDE);
}

SceneVideoCallFullHD.prototype.resetTimer = function()
{
    alert("SceneVideoCallFullHD.resetTimer() ");

	if(this.HideTimer == true)
	{
		PluginAPIMgr.RestartOSDTimer("10000" ,ENUM_TIMER_TYPE.VIDEO_CALL_INFO_HIDE);
	}
}

SceneVideoCallFullHD.prototype.stopTimer = function()
{
    alert("SceneVideoCallFullHD.stopTimer() ");
	
	this.HideTimer = false;
	PluginAPIMgr.StopOSDTimer(ENUM_TIMER_TYPE.VIDEO_CALL_INFO_HIDE);
}

SceneVideoCallFullHD.prototype.hideTimerCallback = function()
{
   alert("SceneVideoCallFullHD.hideTimerCallback() ");
   if(this.HideTimer==false)
   {
   	return
   }
   
   this.stopTimer();
   this.InfoArea.hiddenObj();
   
   this.VideoCallFullHDView.EnableOnClick();
   this.InfoAreaShowState= false;
}


SceneVideoCallFullHD.prototype.processClickEvent = function(obj){
	alert("SceneVideoCallFullHD.processClickEvent() ");
	
	if(obj==this.VideoCallFullHDView)
	{
		this.ShowInfoArea();
		return;
	}
	
	this.resetTimer();
	
	var currentHighlight =  this.VideoCallFullHDView.getCurrentHighlight();
    if(currentHighlight != obj)
    {
    	this.highlight(obj);
    }
	
	if(event.button==2)
	{
		alert("SceneVideoCallFullHD.processClickEvent() -> right button ");
		this.processToolKey();
	}
	else
	{
		alert("SceneVideoCallFullHD.processClickEvent() -> left button ");
		this.processEnterKey();
	}
}

SceneVideoCallFullHD.prototype.ShowInfoArea = function(obj){
	alert("SceneVideoCallFullHD.ShowInfoArea() ");
	
	if(this.HideTimer==false || this.InfoAreaShowState == false)
	{
		this.InfoArea.visibleObj();
		this.VideoCallFullHDView.DisableOnClick();
		this.InfoAreaShowState= true;
		this.startTimer();
		 sf.key.block(event);
		return true;
	}
	else
	{
		this.resetTimer();
	}
	
	return false;
}

SceneVideoCallFullHD.prototype.AdjustDurationText = function(text)
{
	
	this.CallDurationTextHDLabel.SetText(text); 
	
	var CurLangID = ResMgr.GetCurLanguage();
	
	if(text == IDWS_MOIP_SKYPE_CALL_DURATION)
	{
	 	if(CurLangID == ENUM_TV_LANGUAGE.VIE)
	 	{
			$("#call_duration_text_hd").css('top', "23px" );
			$("#call_duration_text_hd").css('font-size', "16px" );
	   	}
	   	else
	   	{
			$("#call_duration_text_hd").css('top', "23px" );
			$("#call_duration_text_hd").css('font-size', "17px" );
	   	}
	}
	else if(text == TV_SID_YOU_ARE_ON_HOLD)
	{
		if(CurLangID == ENUM_TV_LANGUAGE.RUS || CurLangID == ENUM_TV_LANGUAGE.HUN || CurLangID == ENUM_TV_LANGUAGE.MAY)
		{
			$("#call_duration_text_hd").css('top', "15px" );
			$("#call_duration_text_hd").css('font-size', "16px" );
		}
		else if(CurLangID == ENUM_TV_LANGUAGE.ROM)
		{
			$("#call_duration_text_hd").css('top', "23px" );
			$("#call_duration_text_hd").css('font-size', "16px" );		
		}
		else
		{
			$("#call_duration_text_hd").css('top', "23px" );
			$("#call_duration_text_hd").css('font-size', "17px" );
		}
	}
	else if(text == IDWS_MOIP_CALL_ON_HOLD)
	{
	 	if(CurLangID == ENUM_TV_LANGUAGE.LTU || CurLangID == ENUM_TV_LANGUAGE.POL || CurLangID == ENUM_TV_LANGUAGE.FIN || CurLangID == ENUM_TV_LANGUAGE.AMH)
	 	{
			$("#call_duration_text_hd").css('top', "15px" );
			$("#call_duration_text_hd").css('font-size', "16px" );
	   	}
	   	else
	   	{
			$("#call_duration_text_hd").css('top', "23px" );
			$("#call_duration_text_hd").css('font-size', "17px" );
	   	}
	}
}

SceneVideoCallFullHD.prototype.visibleView = function(obj){
	alert("SceneVideoCallFullHD.visiblePreview() ");
	
	$('#window_video_call').css('opacity', '1.0');
	$('#window_video_call').css('display','block');
	
}

SceneVideoCallFullHD.prototype.hiddenView = function(obj){
	alert("SceneVideoCallFullHD.hiddenView() ");
	
	$('#window_video_call').css('opacity','0.0');
	$('#window_video_call').css('display','none');
	
}
