var KeyHandler = {
    tvKey : null,
    splashAnchor : null,
    listAnchor : null,
    contentsAnchor : null,
    keyBlockerAnchor : null
}

KeyHandler.create = function() {
    this.splashAnchor = document.getElementById("Splash_Anchor");
    this.listAnchor = document.getElementById("List_Anchor");
    this.contentsAnchor = document.getElementById("Contents_Anchor");
    this.keyBlockerAnchor = document.getElementById("KeyBlocker_Anchor");
    this.tvKey = new Common.API.TVKeyValue();
}

KeyHandler.listKeyDown = function() {
    var listKeyCode = event.keyCode;
    
    alert("UIList KeyCode = " + listKeyCode);
    
    switch(listKeyCode) {
        case this.tvKey.KEY_LEFT:
			if(document.getElementById('UISplash').style.display=='block'){
				DataMgr.issueLeft();
			} else if (document.getElementById('info_image').style.display=='none'){
                NewsController.request(NewsController.LIST_CATEGORY_LEFT);
            }
            break;
        case this.tvKey.KEY_RIGHT:
			if(document.getElementById('UISplash').style.display=='block'){
				DataMgr.issueRight();
			} else if (document.getElementById('info_image').style.display=='none'){
                NewsController.request(NewsController.LIST_CATEGORY_RIGHT);
            }			
            break;
        case this.tvKey.KEY_UP:
            if (document.getElementById('info_image').style.display=='none'&&document.getElementById('UISplash').style.display=='none'){
                NewsController.request(NewsController.LIST_ARTICLE_UP);
            }
            break;
        case this.tvKey.KEY_DOWN:
            if (document.getElementById('info_image').style.display=='none'&&document.getElementById('UISplash').style.display=='none'){
                NewsController.request(NewsController.LIST_ARTICLE_DOWN);
            }
            break;
        case this.tvKey.KEY_ENTER:
			if (document.getElementById('UISelector').style.display=='block'){
				document.getElementById('UISplash').style.display='none';				
				DataMgr.enterIssue();
			} else if (document.getElementById('info_image').style.display=='none' ){
				NewsController.request(NewsController.LIST_START_CONTENTS);
			}
            break;
        case this.tvKey.KEY_RETURN:
            if(document.getElementById('UISplash').style.display=='none'){
				widgetAPI.blockNavigation(event);
			}
            if (document.getElementById('info_image').style.display=='block'){
                    document.getElementById('info_image').style.display='none';
             } else {
                if(document.getElementById('UISplash').style.display=='none'){
                    document.getElementById('UISplash').style.display='block';
					DataMgr.drawIssueSelector();
                }             
            }
            break;
        case 31:
            if(document.getElementById('UISplash').style.display=='none'){
                NewsController.request(NewsController.SHOW_INFO);
            }
            break;      
	}
}



KeyHandler.splashKeyDown = function() {
    var listKeyCode = event.keyCode;
    
    alert("UIList KeyCode = " + listKeyCode);
    
    switch(listKeyCode) {
        case this.tvKey.KEY_RETURN:
                    UIList.refresh();
            break;
    }
}

KeyHandler.contentsKeyDown = function() {
    var contentsKeyCode = event.keyCode;

//    alert("UIContents KeyCode = " + contentsKeyCode);
    
    switch(contentsKeyCode) {
        case this.tvKey.KEY_LEFT:
			//NewsController.request(NewsController.CONTENTS_ARTICLE_LEFT);
            break;
        case this.tvKey.KEY_RIGHT:
			//NewsController.request(NewsController.CONTENTS_ARTICLE_RIGHT);
            break;
        case this.tvKey.KEY_UP:
			NewsController.request(NewsController.CONTENTS_SCROLL_UP);
            break;
        case this.tvKey.KEY_DOWN:
			NewsController.request(NewsController.CONTENTS_SCROLL_DOWN);
            break;
        case this.tvKey.KEY_GREEN:
            break;
        case this.tvKey.KEY_ENTER:
            break;
        case this.tvKey.KEY_RETURN:
            widgetAPI.blockNavigation(event);
            NewsController.request(NewsController.CONTENTS_RETURN);
            break;
    }
}

KeyHandler.keyBlocker = function() {
    var keyBlockerKeyCode = event.keyCode;
//    alert("keyBlockerKeyCode = " + keyBlockerKeyCode);
}

KeyHandler.focusToList = function() {
    this.listAnchor.focus();
}

KeyHandler.focusToContents = function() {
//    this.contentsAnchor.focus();
    document.getElementById("UIContentsDescriptionAnchor").focus();
}

KeyHandler.focusToKeyBlocker = function() {
    this.keyBlockerAnchor.focus();
}









