﻿/*
* UKFeedback - 1.0
*
* Copyright (c) 2009-01-13 Hikin Yao
*
* Dual licensed under the MIT and GPL licenses:
*   http://www.opensource.org/licenses/mit-license.php
*   http://www.gnu.org/licenses/gpl.html
*
*
*/
$(document).ready(function() {
		function feedbackAlert(message){
		$('#feedback_alert').empty();
	    $('#feedback_alert').html(message);
		$('#feedback_alert').fadeIn("slow"); 
	};
	function feedbackUnAlert(time){
	    var waitTime = 5000;
	    if(time!=null&&time>0){
			waitTime = time;
		}
		setTimeout(function(){
				$('#feedback_alert').fadeOut("slow"); 
			},waitTime);

	}
	function checkEmail(email) {
	emailStr = email;
	if (emailStr.length == 0) {
		return false;
	}	
	var rx = /^(([^\(\)\.\,\;\:\s\@\"\\]+(\.[^\(\)\.\,\;\:\s\@\"\\]+)*)|(\".+\"))@(([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})|([a-zA-Z0-9][a-zA-Z0-9\-]*(\.[a-zA-Z0-9\_\-]+)*\.(([a-zA-Z]{2,})|([a-zA-Z\>\]]{3,}))))$/;
	if(!rx.test(emailStr)) {
		return false;
	} else {
		var emailPat=/^(.+)@(.+)$/;
		var ipDomainPat=/^(\d{1,3})[.](\d{1,3})[.](\d{1,3})[.](\d{1,3})$/;
		var matchArray=emailStr.match(emailPat);
		var user=matchArray[1];
		var domain=matchArray[2];
		var IPArray = domain.match(ipDomainPat);
		if (IPArray != null) {
			for (var i = 1; i <= 4; i++) {
			  	if (IPArray[i] > 255) {
			     	return false;
			  	}
			}
		}
		return true;
	}
	};
	function checkInputForm(email,content,subject){
        	if (content == "")
        	{
            	feedbackAlert('邮件内容不能为空，请输入您的意见和建议.');
				feedbackUnAlert();
            	$('#feedback_content').focus();
            	return false;
        	}
        	if (subject == "")
        	{
            	feedbackAlert('邮件标题不能为空，请输入.');
				feedbackUnAlert();
            	$('#feedback_subject').focus();
            	return false;
        	}
			var loginFlag = $('#login_flag').val();
			if(loginFlag=='false'){
		
        		if (email == "" ) {
            		feedbackAlert('请输入您的邮箱，方便我们与您联系.');
            		feedbackUnAlert();
					$('#feedback_email').focus();
            		return false;
        		}else{
					var emailValid = checkEmail($('#feedback_email').val()); 
					if(!emailValid){
						feedbackAlert('您的邮箱地址格式不正确，请重新输入.');
						feedbackUnAlert();
						$('#feedback_email').focus();
						return false;
					}
				}
			}
			return true;
	};

	$('#feedBack').hide();
	
	function navMousePosition(ev) {
    if (ev.pageX || ev.pageY) {
        return {x:ev.pageX, y:ev.pageY};
    }
    return {
        x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,
        y:ev.clientY + document.body.scrollTop - document.body.clientTop
    };
	}
	
	$('#feedBack').jqm({
			overlay: 20,
			overlayClass:'feedback_overLay_bg',
			modal:true,
			toTop:true,
			onShow: function(h) {
				/* callback executed when a trigger click. Show notice */
				var pos=$('#feedback_id').offset();
				$('#feedBack').css({"top":pos.top+235,"left":pos.left-100,width: "10px"}); 
				var top = pos.top-200;
				var left = pos.left-450;
    			//$('#feedBack').css({"top":top,"left":left}); 
				h.w.width(0).animate( {width: "2",top:top,left:left,opacity: "show"}, 300 ).animate({width: "2"},200)
.height(0).animate({width: "450"},200).animate( {top:top-50,height: "270"}, 600 );
				$('#feedback_content').focus();
				},
			onHide: function(h) {
				/* callback executed on window hide. Hide notice, overlay. */
				h.w.animate( {height: "0"}, 600 )
				.animate( {width: "0",opacity: 'hide',left:0}, 300,function() { if(h.o) h.o.remove(); });
				$("#feedback_content").val('');
				$('#feedback_email').val('');
			}
			}).jqDrag('.jqDrag');
	$('#feedBack').jqmAddTrigger('#feedback_id');
	$('#feedBack').jqmAddClose('#cancel_button'); 
	$('#send_button').click(function(){
		var loginFlag = $('#login_flag').val();
		var content = $("#feedback_content").val();
		var subject = $("#feedback_subject").val();
		var email = $('#feedback_email').val();
		var formUrl=document.URL;
		var url=rootPath+'json/save_user_feedback.html';
		if(loginFlag=='false'){
			var data= {email:email,content:content,formUrl:formUrl,subject:subject};
		}else{
			var data= {content:content,formUrl:formUrl,subject:subject};
		}
        var couldSendMessage = checkInputForm(email,content, subject);
		if(couldSendMessage==true){
			//feedbackAlert('正在发送...');
			$.post(
				url,
				data,
				function(rs){
					$('#feedback_alert').empty();
					if(rs != null && rs.message == 'success'){
						  $('#feedback_alert').html('发送成功.');
						  feedbackUnAlert(100);
						  $('#feedBack').jqmHide();
  					}else{
					    $('#feedback_alert').html('发送失败.');
						feedbackUnAlert(100);
					}
				},'json');
			}
		});
	
})
