(function($){
    $.extend({
        landing : {
    	 	label_1  : "문서보기",
    	 	label_2  : "문서변환",
    	 	label_3  : "파일 명 :",
    	 	label_4  : "파일 경로:",
    	 	label_5  : "내폴더 > ",
    	 	label_6  : "HWP 보기",
    	 		
    	 	msg_1  : "파일 변환이 완료되었습니다.",
    	 	msg_2  : "변환된 파일이 마이오피스에 저장되었습니다.",
    	 	
    	 	btn_1  : "문서 다운로드",
    	 	btn_2  : "마이 오피스로 이동",    	 
    	 	
            settings : function (sets){
            	this.label_1   = sets.label_1;
            	this.label_2   = sets.label_2;
            	this.label_3   = sets.label_3;
            	this.label_4   = sets.label_4;
            	this.label_5   = sets.label_5;
            	this.label_6   = sets.label_6;
            	this.msg_1   = sets.msg_1;
            	this.msg_2   = sets.msg_2;
            	this.btn_1   = sets.btn_1;
            	this.btn_2   = sets.btn_2;            	
        	} ,
    		
    		mock_url_ko : "http://member.thinkfree.com/enzyme/api/embed?apikey=fc69744c198ea1e332c2a75be5d6a7b0dbcee5d4&ts=20100425181515&nonce=daa497eba6e42756&sigalg=hmacsha1&sig=a1606a9d96e1e18aea3c7252c1f809bb7b067881&locale=ko&repotype=docs&repokey=1004/862995&doctype=pdf&checksum=862995&width=380&height=320&mode=mini" ,
    		
    		mock_url_en : "http://member.thinkfree.com/enzyme/api/embed?apikey=fc69744c198ea1e332c2a75be5d6a7b0dbcee5d4&ts=20100425181607&nonce=0ea1ff469e5f5690&sigalg=hmacsha1&sig=0507f6fe2b361986cd54325cbf2fb29f2bdab176&locale=ko&repotype=docs&repokey=1004/862994&doctype=pdf&checksum=862994&width=380&height=320&mode=mini" ,    		
    		
    		mock_covert_url : "http://f1.thinkfree.com/ezpx/default//9b/90/85be041a28eeb41797f2a86655d478f7a6fa/1b69bce68b73d52ac707550443b61bef/4dcf1a9c6bdc922873f17b27f1759aaa/1267001428907.pdf" ,
    	    
    	    banner_API_url : "http://www.thinkfree.com/views/jsp/manager/mainBanner/showMainBanner.jsp",
    	    
    	    board_API_url : "http://www.thinkfree.com/views/jsp/manager/mainBoard/showMainBoard.jsp",
    	    
    	    whatsnew_url : "http://www.thinkfree.com/views/jsp/manager/product/showMainArticle.jsp",
    
			slide : function(id){	
				$("#mainVisual .keyImg li.selected").removeClass("selected");
				$("#slide_"+id).addClass("selected");
				$("#mainVisual .nav a.selected").removeClass("selected");
				$("#slideBtn_"+id).addClass("selected");
			},
			
			viewer : function(mode,islogin,lang,base){
				var popHeight = 0;
				var init_url = "";
				
				if(lang == "ko"){ 
					if(islogin == "O"){ popHeight = 0; }else{ popHeight = 70; }
					init_url = $.landing.mock_url_ko;

				}else{
					if(islogin == "O"){ popHeight = 0; }else{ popHeight = 70; }
					init_url = $.landing.mock_url_en;

				}				
				
				if(mode == "hwp"){
					$("#dialog").dialog('option', 'title', this.label_6 );
				}else{
					$("#dialog").dialog('option', 'title', this.label_1 );
				}
				$("#dialog").load("landingViewer.action?login="+islogin,function(){
					$.uniPaper.request(init_url,"#tfUniPaper",false);
				});
				$("#dialog").dialog('option', 'height', 500 + popHeight);
				$('#dialog').dialog('open');
			},
			
			viewer_mode : function(mode){
				if(mode == "file"){
					$("#viewDocURL").hide();
					$("#viewDocFile").show();
				}else if(mode== "reset"){
					$("#uploadedFileInfo").hide();
					$("#viewDocURL").hide();
					$("#viewDocFile").show();
					$("#fileArea").html($("#fileArea").html());
					$("#fileName").val("");
				}else if(mode== "resetConvert"){
					$("#uploadedFileInfo").hide();
					$("#viewDocURL").hide();
					$("#viewDocFile").show();
					$("#fileArea").html($("#fileArea").html());
					$("#fileName").val("");
					$("#afterConvert").hide();
					$("#beforeConvert").show();					
				}else{
					$("#viewDocURL").show();
					$("#viewDocFile").hide();
				}	
				
			},

			validateFile : function(){
				var fileName = $('#filedata').val();
				fileName = fileName.substring(fileName.lastIndexOf("\\")+1);
				$("#fileName").val(fileName);
			},
						
			fileUpload : function(){
				var fileName = "";				
				if($('#fileName').val() == ""){
					return false;
				}else{
				    fileName = $('#fileName').val();	
				}
				
//				$("#loading").ajaxStart(function(){
//					
//				}).ajaxComplete(function(){
//					$("#loading").hide();
//				});
			    
				$("#loading").show();
				$.ajaxFileUpload({
					url:'upload.action',
					secureuri:false,
					fileElementId:'filedata',
					data: {"fileName" : fileName , "convertType" : "" , "storeType" : "" , "accountIndex": -1},
					dataType: 'json',
					success: function (data, status){
                        if(data.error > 0){
	                        alert(data.message);
	                    } else {
	                    	$("#tfUniPaper").empty();
							$.landing.uploadedFileInfo(data,true);							
	                    }
                        $("#loading").hide();
					},
					error: function (data){
						alert(data.message);
						$("#loading").hide();
					}
				});
				return false;
			},
			
			urlUpload : function(){
				if($('#srcURL').val() == ""){					
					return false;
				}					
				
				var srcURL = $.trim($("#srcURL").val());
				
				$.ajax({
					type : "POST",
					url : "upload.action",
					data : {"srcURL" : srcURL},
					dataType : "json",
					success: function(json){
						$.landing.uploadedFileInfo(json,true);
					},
					error: function (data){
						alert(data.message);
					}					
				});
			},
			
			convert : function(islogin, lang){	
				var popHeight = 0;
				
				if(islogin == "O"){ 
					popHeight = 0;
				}else{ 
					popHeight = 70; 
				}
				
				$("#dialog").dialog('option', 'title', this.label_2 );
//				$("#dialog").load("landingConvert.action");
				$.ajax({
					type: "GET",
					url: "landingConvert.action",
					dataType: 'html',
					cache: false,
					success: function(html){
						$("#dialog").html(html);		
					}
				});
				
				$("#dialog").dialog('option', 'height', 310 + popHeight);
				$('#dialog').dialog('open');
			},
			
			convertAction : function(){
				var convertType = $("#convertType").val();
				var storeType = $("#storeType input[@name='storeType']:checked").val();
				var accountIndex = $("#accountIndex").val();
				if($("#viewDocURL").is(':hidden')){
					if($('#filedata').val() == ""){
						return false;
					}else{
					    var fileName = $('#fileName').val();	
					}
					
//					$("#loading").ajaxStart(function(){
//						$(this).show();
//					}).ajaxComplete(function(){
//						$(this).hide();
//					});
					
					$("#loading").show();
					$.ajaxFileUpload({
						url:'convert.action',
						secureuri:false,
						fileElementId:'filedata',						
						data : {"fileName" : fileName, "convertType" : convertType , "storeType" : storeType , "accountIndex": accountIndex},
						dataType: 'json',
						success: function (data, status){
	                        if(data.error > 0){	                        	
		                        alert(data.message);
		                    }else {
		                    	$.landing.uploadedFileInfo(data,false);
		    					$.landing.convertCallBack(data);  					
		                    }
	                        $("#loading").hide();
						},
						error: function (data){							
							alert(data.message);
							$("#loading").hide();
						}
					});
					return false;					
					
				}else{
					var srcURL = $.trim($("#srcURL").val());

					$.ajax({
						type : "POST",
						url : "convert.action",
						data : {"srcURL" : srcURL , "convertType" : convertType , "storeType" : storeType, "accountIndex": accountIndex},
						dataType : "json",
						success: function(json){
							$.landing.uploadedFileInfo(json,false);
							$.landing.convertCallBack(json);
						},
						error: function (data){
							alert(data.message);
						}					
					});					
				}				
			},
			
			uploadedFileInfo : function(json ,isView){
				$("#viewDocURL").hide();
				$("#viewDocFile").hide();
				$("#uploadedFileInfo").show();
				
				var str = '<a href="#" onclick="javascript: return false;" >'+json.fileName+'</a>';
				$("#uploadedFileName").html(str);
				if(isView){
					$.uniPaper.request(json.requestUrl,"#tfUniPaper",false);
				}
			},
			
			convertCallBack : function (data){

				if(data.storeType == "local"){					
					var returnFileName = data.fileName.substring(0,data.fileName.lastIndexOf(".")) + "."+data.extension;
					var str = '<div class="msg">'+ this.msg_1 +'</div>'
					    + '<div class="result">'+ this.label_3 +' <span>'+ returnFileName +'</span></div>'
						+ '<div class="btn_box"><a href="'+data.requestUrl+'" target="_blank" class="buttonBig" >'+this.btn_1+'</a></div>';
				}else{
					var str = '<div class="msg">'+ this.msg_2 +'</div>'
				    + '<div class="result">'+ this.label_4 +' <span>'+ this.label_5 +' '+ data.fileName +'</span></div>'					
					+ '<div class="btn_box"><a href="/myoffice/goMyOffice.se" class="buttonBig" >'+this.btn_2+'</a></div>';
				}
				
				$("#beforeConvert").hide();
				$("#afterConvert").show();
				$("#afterConvert").html(str);
			},
			
			topBanner : function (lang) {	
    			$.ajax({
    				type: "GET",
    				url: this.banner_API_url,
    				data: {"location": 1, "lang_type":lang},
    				dataType: 'jsonp',
					jsonp: "mainBannerCallBack",
    				success: function(json){
    					var thisPage = "";
    					
    		    		function createNode() {		    			
    		    			var current = "<a href='"+this.link_url+"' target='"+this.link_target+"'>"
    			    				+ "<img src='"+this.image_path+"' />"
    			    				+ "</a>";
    		    			thisPage += current;
    		    		}	    		
    					$.each(json.files, createNode);    					
                        $('#topBanner').prepend(thisPage);		
    				}
    			});
			},
			bottomBanner : function (lang) {	
    			$.ajax({
    				type: "GET",
    				url: this.banner_API_url,
    				data: {"location": 2, "lang_type":lang},
    				dataType: 'jsonp',
					jsonp: "mainBannerCallBack",
    				success: function(json){
    					var thisPage = "";					
    		    		function createNode() {		    			
    		    			var current = "<a href='"+this.link_url+"' target='"+this.link_target+"'>"
    			    				+ "<img src='"+this.image_path+"' />"
    			    				+ "</a>";
    		    			thisPage += current;
    		    		}	    		
    					$.each(json.files, createNode);    					
                        $('#bottomBanner').html(thisPage);		
    				}
    			});
			},
						
			topMovie : function (lang) {
				$.ajax({
					type: "GET",
					url: this.board_API_url,
					data: {"lang_type":lang},
					dataType: 'jsonp',
					jsonp: "mainBoardCallBack",
					success: function(json){
						var move =json.content;
						$("#tfTopMovie").html(move);		
					}
				});
    		},
    		
    		whatsNew : function (lang) {
				$.ajax({
					type: "GET",
					url: this.whatsnew_url,
					data: {"lang_type":lang},
					dataType: 'jsonp',
					jsonp: "mainArticleCallBack",
					success: function(json){				
    		    		var items = $("<ul/>");
    		    		
    		    		function createNode() {    			
    		    			var current = $("<li/>").html(
    		    					  "<a href='"+this.title_link+"'>" 
    		    					+ this.title		    					
    		    					+ "</a>"
    		    					);

    		    			items.append(current);
    		    		}    		
    					$.each(json.files, createNode);
    					
                        $('#tfWhatsNew').append(items);
					}
				});
    		},
    		
    		idPwFocus : function () {
    			$("#smb_user").focus(function(){    				
    				if($(this).val() == "")	$.landing.idFocus(true);
    			});    			
    			$("#smb_user").blur(function(){
    				if($(this).val() == "")	$.landing.idFocus(false);
    			});
    			
    			$("#smb_password").focus(function(){
    				if($(this).val() == "") $.landing.pwFocus(true);			
    			});;
    			
    			$("#smb_password").blur(function(){
    				if($(this).val() == "") $.landing.pwFocus(false);	
    			})
    		}
    		,
    		idFocus : function (isFocus){
    			if(isFocus){
    				$("#smb_user").css("background-position","-1000px");
    			}else{
    				$("#smb_user").css("background-position","5px");
    			}    			
    		}
    		,
    		pwFocus : function (isFocus){
    			if(isFocus){
    				$("#smb_password").css("background-position","-1000px");
    			}else{
    				$("#smb_password").css("background-position","5px");
    			}    			
    		}
    		

        }
    });
})(jQuery);
