/**
 * Copyright 2007 SK Communications. All rights reserved
 * @since 
 * @author 
 *
 * 사용자가 관리자에게 보내는 메일 다디얼로그 정의
 */
Event.observe(window, 'load', function() {
	new Modal.InquiryDlg('inquiry_dialog');
});

Object.extend(Modal, {
	inquiry: function() {
		if(Modal.current && Modal.current.inquiry) {
			Modal.current.inquiry();
		}
	},

	onComplete: function() {
		if(Modal.current && Modal.current.onComplete) {
			Modal.current.onComplete();
		}
	},

	done: function() {
		if(Modal.current && Modal.current.done) {
			Modal.current.done();
		}
	}, 

	selectType: function(type) {
		if(Modal.current && Modal.current.selectType) {
			Modal.current.selectType(type);
		}
	} 
});


Modal.InquiryDlg = Class.create();
Object.extend(Modal.InquiryDlg.prototype, {
	isLoaded	: false,

	focusedColor: '#333333',

	URL_NOTICE		: 'http://',
	CONTENT_NOTICE	: '문의하실 내용을 최대한 상세히 알려주세요.'+
					' 확인작업에 따라 회신에는 1-3일이 소요될 수 있습니다.',

	initialize: function(_dialogID, _options) {
		Modal.close();
		this.dialogID		= _dialogID;
		this.dialog			= $(this.dialogID);
		this.form			= $("inquiryForm");
		this.dialogBody		= $('dialog_body');
		this.dialogBodyHtml = this.dialogBody.innerHTML;
		this.dialogFooter	= $('dialog_footer');
		this.dialogFooterHtml= this.dialogFooter.innerHTML;

		this.isLoaded	= Modal.addDialog(this);
		
		this.noticeList = {
			'1' : '오류가 나는 페이지 url, 증상(오류 시 뜨는 문구), 사용하시는 컴퓨터의 브라우저, os 사양을 상세히 알려주세요.',
			'2' : '본인의 아이디나 블로그 주소를 꼭 입력해주시고, 본인 확인 요청을 하시는 분은 신분증 사본을 함께 첨부해주세요.',
			'3' : '비밀번호 확인 요청을 하시는 분은 신분증 사본을 함께 첨부해주세요.',
			'4' : '신고할 포스트 URL과 사유(명예훼손, 저작권 침해, 초상권 침해 등)를 입력해주시고, 신고하시는 분께서 권리를 침해 당한 당사자라는 것을 증명할 수 있는 서류를 첨부해주세요.',
			'5' : '제안하실 내용을 상세히 입력해주세요.',
			'6' : '신고할 블로그 url과 사유를 입력해주세요.',
			'7' : '문의하실 내용을 상세히 입력해주세요.'
		};
	},
	
	open: function(_params) {

        var w = ( document.documentElement.clientWidth / 2 ) - 280;
        var rightWidth = w + 'px';

		this.dialog.setStyle({'zIndex': 9901, 'top': '220px', 'right': rightWidth});
		this.dialog.show();
	},
	
	close: function() {
		this.form.reset();
		this.dialogFooter.innerHtml	= this.dialogFooterHtml;
		this.dialog.hide();
	},

	onComplete: function() {
		this.dialogBody.innerHTML	= this.dialogBodyHtml;
		this.dialogFooter.innerHTML	= this.dialogFooterHtml;
		this.dialog.hide();
	},
	
	inquiry: function() {
		var name	= $("i_name");
		var email	= $("i_email");
		var blogurl	= $("i_blogurl");
		var reasons	= document.getElementsByName("i_reason");
		var content	= $("i_content");
		var userok	= $("i_userok");

		if( name.value == "" ) {
			alert("이름을 입력해주세요.");
			name.focus();
			return false;
		}

		if( email.value == "" ) {
			alert("이메일을 입력해주세요.");
			email.focus();
			return false;
		}
		
		var reason	= "";
		for( var i=0; i<reasons.length; i++ ) {
			if(reasons[i].checked) {
				reason	= reasons[i].value;
			}
		}
		if( reason == "" ) {
			alert("구분을 선택해주세요.");
			return false;
		}

		var errflag	= 0;
		var str		= content.value;
		str 		= str.replace(/^(\s|&nbsp;)+|(\s|&nbsp;)+$/g, ""); 
		for( var i = 0; i < 7; i++ ) {
			if( str == this.noticeList[i] ) {
				errflag = 1;
				break;
			}
		}
		if( str == "" || str == this.CONTENT_NOTICE || errflag == 1) {
			alert("사유를 입력해주세요.");
			content.focus();
			return false;
		}

		if( userok.checked == false) {
			alert("개인정보 수집, 이용에 동의해 주셔야 합니다");
			userok.focus();
			return false;
		}

		this.form.target 	= 's_target';
		$("s_target").onload= this.done;
		this.form.submit();

	},
	
	done: function() {
		var errmsg = {'0': "문의 접수 실패했습니다. 잠시 후 다시 시도해주세요."};
		var ret = frames['s_target'].document.getElementsByTagName("body")[0].innerHTML;
		if( ret.isJSON() ) {
			var retArr = ret.evalJSON();
			if( retArr.result == "1" ) {
				$('dialog_body').innerHTML = '<table style="width:439px; height:349px; border:0px; padding:0px;">' + 
				'<tr>' +
				'	<td align="center"><span style="font-size:12pt; text-align:center; line-height:150%"><b>정상적으로 접수 완료되었습니다.</b></span><br />' +
				'<span style="font-size:10pt; line-height:150%">회신은 입력하신 이메일로 보내지며,<br />' + 
				'문의 내용에 따라 1~3일(주말 제외) 정도 소요됩니다.</span><br />' + 
				'<span style="color:#999999; font-size:10pt; line-height:150%">(스팸신고에 대한 답변은 따로 드리지 않습니다.)</span><br />'+
				'<span style="font-size:10pt; line-height:150%">감사합니다.</span></td>' + 
				'</tr>' +
				'</table>';
			
				$('dialog_footer').innerHTML = '<input class="button btn24 btn_bold" onclick="Modal.onComplete();" value="닫기" type="button" />';
			} else {
				alert(retArr.message);
			}
		} else {
		}
	}, 

	selectType: function(type) {
		var content = $("i_content");
		content.value = this.noticeList[type];
	},

	textFocus: function() {
		var content = $("i_content");
		if( content.value == this.CONTENT_NOTICE ) {
			content.value = "";
		} else {
			for( var i = 0; i <= 7; i++) {
				if( content.value == this.noticeList[i] ) {
					content.value = "";
					break;
				}
			}
		}
	}

});


