
//menu
/*

var timeout         = 500;
var closetimer		= 0;
var ddmenuitem      = 0;

function jsddm_open()
{	jsddm_canceltimer();
	jsddm_close();
	ddmenuitem = $(this).find('ul').eq(0).css('visibility', 'visible');}

function jsddm_close()
{	if(ddmenuitem) ddmenuitem.css('visibility', 'hidden');}

function jsddm_timer()
{	closetimer = window.setTimeout(jsddm_close, timeout);}

function jsddm_canceltimer()
{	if(closetimer)
	{	window.clearTimeout(closetimer);
		closetimer = null;}}


		$(document).ready(function()
{	
	if($('#jsddm')){
		$('#jsddm > li').bind('mouseover', jsddm_open);
		$('#jsddm > li').bind('mouseout',  jsddm_timer);
		$('#jsddm2 > li').bind('mouseover', jsddm_open);
		$('#jsddm2 > li').bind('mouseout',  jsddm_timer);
		$('#jsddm3 > li').bind('mouseover', jsddm_open);
		$('#jsddm3 > li').bind('mouseout',  jsddm_timer);
		$('#jsddm4 > li').bind('mouseover', jsddm_open);
		$('#jsddm4 > li').bind('mouseout',  jsddm_timer);
		$('#jsddm5 > li').bind('mouseover', jsddm_open);
		$('#jsddm5 > li').bind('mouseout',  jsddm_timer);
		$('#jsddm6 > li').bind('mouseover', jsddm_open);
		$('#jsddm6 > li').bind('mouseout',  jsddm_timer);
		$('#jsddm_lang > li').bind('mouseover', jsddm_open);
		$('#jsddm_lang > li').bind('mouseout',  jsddm_timer);
	}
	});

	document.onclick = jsddm_close;
	


jQuery().ready(function(){
		
		// simple accordion
		jQuery('#navigation').accordion({ 
		    header: 'div.title', 
		    active: false, 
		    alwaysOpen: false, 
			navigation: true, 
			event: 'mouseover',
		    animated: false, 
			
		    autoheight: false 
		});
		var accordions1 = jQuery('#navigation');
		
		jQuery('#homepage').accordion({
			header: 'div.title',
			navigation: true, 
			active: 'div.title.selected'
			
			});
		
		
		// bind to change event of select to control first and seconds accordion
		// similar to tab's plugin triggerTab(), without an extra method
		var accordions = jQuery('#homepage');
		accordions.accordion("activate", 0 );
		jQuery('#switch select').change(function() {
			
			accordions.accordion("activate", this.selectedIndex-1 );
		});
		jQuery('#close').click(function() {
			accordions.accordion("activate", -1);
		});
		jQuery('#switch2').change(function() {
			accordions.accordion("activate", this.value);
		});
		jQuery('#enable').click(function() {
			accordions.accordion("enable");
		});
		jQuery('#disable').click(function() {
			accordions.accordion("disable");
		});
		jQuery('#remove').click(function() {
			accordions.accordion("destroy");
			wizardButtons.unbind("click");
		});
		
		
		
	});

//fade scrollLeft curtainX shuffle
$(function() {

    $('#slideshow1').cycle({
        fx:     'fade', 
	    speed:  1000, 
	    next:   '#slideshow1', 
	    timeout: 3000,
		pause:   1
       
      
       
    });
	$('#slideshow2').cycle({
        fx:     'fade', 
	    speed:  1000, 
	    next:   '#slideshow2', 
	    timeout: 3000,
		pause:   1,
        prev:    '#prev',
        next:    '#next'
      
       
    });
	$('#slideshow3').cycle({
        fx:     'fade', 
	    speed:  1000, 
	    next:   '#slideshow3', 
	    timeout: 3000,
		pause:   1,
        prev:    '#prev',
        next:    '#next'
      
       
    });
});

function getTabHtml(url){
	$.ajax({
	  url: url,
	  cache: false,
	  success: function(html){
	    $("#tab_content").html(html);
	  }
});
}
*/



	
function reloadAntiSpam(){
	var url="antispam.php?time="+Math.floor(Math.random()*10000);
	
	document.getElementById("antispam").src=url;
	

}	



	// prepare the form when the DOM is ready 
$(document).ready(function() { 
   
    // bind to the form's submit event 
    $('#myForm').submit(function(e) { 
		
		e.stopPropagation();
		
		var res = this.getAttribute('action').split("?");
		if(res.length > 1)
			var action = this.getAttribute('action')+'&js_valid=1&time='+Math.floor(Math.random()*10000);
		else
			var action = this.getAttribute('action')+'?js_valid=1&time='+Math.floor(Math.random()*10000);
		
		
		
		var options = { 
	        target:        '#msg_warn',   // target element(s) to be updated with server response 
	        beforeSubmit:  showRequest,  // pre-submit callback 
	        success:       showResponse,  // post-submit callback 
	 
	        // other available options: 
			url:       action,         // override for form's 'action' attribute 
	        //type:      type        // 'get' or 'post', override for form's 'method' attribute 
	        //dataType:  null        // 'xml', 'script', or 'json' (expected server response type) 
	        //clearForm: true        // clear all form fields after successful submit 
	        //resetForm: true        // reset the form after successful submit 
	 
	        // $.ajax options can be used here too, for example: 
	        //timeout:   3000 
	    }; 
		
		
		// inside event callbacks 'this' is the DOM element so we first 
        // wrap it in a jQuery object and then invoke ajaxSubmit 
        $(this).ajaxSubmit(options); 
		
        // !!! Important !!! 
        // always return false to prevent standard browser submit and page navigation 
        return false; 
    }); 
	
	// bind to the form's submit event 
    $('#myForm2').submit(function(e) { 
         e.stopPropagation();

		var res = this.getAttribute('action').split("?");
		if(res.length > 1)
			var action = this.getAttribute('action')+'&js_valid=1&time='+Math.floor(Math.random()*10000);
		else
			var action = this.getAttribute('action')+'?js_valid=1&time='+Math.floor(Math.random()*10000);
		
		
		var options = { 
	        //target:        '#msg_warn',   // target element(s) to be updated with server response 
	        beforeSubmit:  showRequest,  // pre-submit callback 
	        success:       showResponse2,  // post-submit callback 
	 
	        // other available options: 
			url:       action         // override for form's 'action' attribute 
	        //type:      type        // 'get' or 'post', override for form's 'method' attribute 
	        //dataType:  null        // 'xml', 'script', or 'json' (expected server response type) 
	        //clearForm: true        // clear all form fields after successful submit 
	        //resetForm: true        // reset the form after successful submit 
	 
	        // $.ajax options can be used here too, for example: 
	        //timeout:   3000 
	    }; 
		
		
		// inside event callbacks 'this' is the DOM element so we first 
        // wrap it in a jQuery object and then invoke ajaxSubmit 
        $(this).ajaxSubmit(options); 
		
        // !!! Important !!! 
        // always return false to prevent standard browser submit and page navigation 
        return false; 
    }); 
	
}); 
 
// pre-submit callback 
function showRequest(formData, jqForm, options) { 
    // formData is an array; here we use $.param to convert it to a string to display it 
    // but the form plugin does this for you automatically when it submits the data 
    //var queryString = $.param(formData); 
 
    // jqForm is a jQuery object encapsulating the form element.  To access the 
    // DOM element for the form do this: 
    // var formElement = jqForm[0]; 
 
    //alert('About to submit: \n\n' + queryString); 
	//$('input').attr("disabled", true);
	
    // here we could return false to prevent the form from being submitted; 
    // returning anything other than false will allow the form submit to continue 
    return true; 
} 
 
// post-submit callback 
function showResponse(responseText, statusText)  { 
    // for normal html responses, the first argument to the success callback 
    // is the XMLHttpRequest object's responseText property 
 
    // if the ajaxSubmit method was passed an Options Object with the dataType 
    // property set to 'xml' then the first argument to the success callback 
    // is the XMLHttpRequest object's responseXML property 
 
    // if the ajaxSubmit method was passed an Options Object with the dataType 
    // property set to 'json' then the first argument to the success callback 
    // is the json data object returned by the server 
 
    //alert('status: ' + statusText + '\n\nresponseText: \n' + responseText + 
    //    '\n\nThe output div should have already been updated with the responseText.'); 
	
	//$('input').attr("disabled", false);
	
		responseText = responseText.replace(/<br>/ig, "\n");
		
	 if(responseText.length == 0){
		 $("#myForm").unbind('submit');
		 $("#myForm").submit();
		 $("#myForm").trigger("submit");
	}else{
		
		$("#msg_warn").show();
		responseText = responseText.replace(/<br>/ig, "\n");
		alert(responseText);
	}
	return false;
} 
function showResponse2(responseText, statusText)  { 
    // for normal html responses, the first argument to the success callback 
    // is the XMLHttpRequest object's responseText property 
 
    // if the ajaxSubmit method was passed an Options Object with the dataType 
    // property set to 'xml' then the first argument to the success callback 
    // is the XMLHttpRequest object's responseXML property 
 
    // if the ajaxSubmit method was passed an Options Object with the dataType 
    // property set to 'json' then the first argument to the success callback 
    // is the json data object returned by the server 
 
    //alert('status: ' + statusText + '\n\nresponseText: \n' + responseText + 
    //    '\n\nThe output div should have already been updated with the responseText.'); 
	
	$('input').attr("disabled", false);
	if(responseText.length == 0){
		$("#myForm2").unbind('submit');
		//$("#myForm2").submit();
		$("#myForm2").trigger("submit");
	}else{
		responseText = responseText.replace(/<br>/ig, "\n");
		alert(responseText);//$("#msg_warn").show();
		
	}	
	
}
function checkAccount(account){
	var url = "checkAccount.php?account="+account;
	$.ajax({
	  url: url,
	  cache: false,
	  success: function(html){
		alert(html);
	  }
});
}
function selectMusicTool(){
	var url = "selectMusicTool.php";
	$.ajax({
	  url: url,
	  cache: false,
	  success: function(html){
		$('#music_tool_data').html(html);
	  }
});
}

function addMusicTool(){
	var url = "selectMusicTool.php?func=add";
	$.ajax({
	  url: url,
	  cache: false,
	  success: function(html){
		$('#music_tool_data').html(html);
	  }
});
}
function editMusicTool(id,music_tool,ability){
	var url = "selectMusicTool.php?func=edit&id="+id+"&music_tool="+music_tool+"&ability="+ability;
	$.ajax({
	  url: url,
	  cache: false,
	  success: function(html){
		$('#music_tool_data').html(html);
	  }
});
}
function delMusicTool(id){
	var url = "selectMusicTool.php?func=del&id="+id;
	$.ajax({
	  url: url,
	  cache: false,
	  success: function(html){
		$('#music_tool_data').html(html);
	  }
});
}


function sendVerifyCode(mobile){
	$("#ss_auth_area").show();
	
	$("#verify_area").hide();
	$("#verify_sending").show();
	$('input').attr("disabled", true);
	$('button').attr("disabled", true);
	document.getElementById("verify_msg").innerHTML = "";
	
	var url = "sendVerifyCode.php?mobile="+mobile;
	
	$.ajax({
	  url: url,
	  cache: false,
	  error: function(xhr) {
		$("#verify_sending").hide();
        alert('發生錯誤');
      },
	  success: function(html){
		
		 $("#verify_sending").hide();
		 res = html.split(":");
		
		 switch(res[0])
		{
			case "0"://failure
				
				if(res[1].length > 0){
						
					
					
					document.getElementById("verify_msg").innerHTML = res[1];
					
					
				}else{
					alert("回傳資料有問題!");      		
				}
				break;
			case "1"://success 
				
				document.getElementById("verify_msg").innerHTML = res[1];
				$("#verify_area").show();
				break;
			case "2": //success location href
				
				window.location.href=res[1];
				break;	
			default:
				alert("回傳資料有問題!");
				break;
				
		}
		
		
		
		
		
	  }
});

$('input').attr("disabled", false);
$('button').attr("disabled", false);

}


function checkVerifyCode(mobile,code){
	
	$("#verify_sending").show();
	$('input').attr("disabled", true);
	$('button').attr("disabled", true);
	document.getElementById("verify_msg").innerHTML = "";
	
	var url = "checkVerifyCode.php?mobile="+mobile+"&code="+code;
	
	$.ajax({
	  url: url,
	  cache: false,
	  error: function(xhr) {
		$("#verify_sending").hide();
        alert('發生錯誤');
      },
	  success: function(html){
		
		 $("#verify_sending").hide();
		 res = html.split(":");
		
		 switch(res[0])
		{
			case "0"://failure
				
				if(res[1].length > 0){
						
					
					
					document.getElementById("verify_status").innerHTML = res[1];
					
					
				}else{
					alert("回傳資料有問題!");      		
				}
				break;
			case "1"://success 
				
				document.getElementById("verify_status").innerHTML = res[1];
				$("#verify_area").hide();
				break;
			case "2": //success location href
				
				window.location.href=res[1];
				break;	
			default:
				alert("回傳資料有問題!");
				break;
				
		}
		
		
		
		
		
	  }
});

$('input').attr("disabled", false);
$('button').attr("disabled", false);

}






