/** Programmd by kobito_lab Twitter : @kobito_lab **/

var ua = navigator.userAgent;       // ユーザーエージェント
var ie7Hit = ua.indexOf("MSIE 7.0");     // 合致した部分の先頭文字の添え字 
var ie6Hit = ua.indexOf("MSIE 6.0");

var IE7 = (ie7Hit >=  0);  
var IE6 = (ie6Hit >=  0);  

//IEとモダンブラウザのウィンドウの高さを取得。

$.fn.measur=function(f) {
    var o = this,ret;
    var hide = o.is(":hidden");
    if(hide)o.show();
    ret = f();	
    if(hide)this.hide();
    return ret;
}
$.fn.exClientHeight = function(){
    var o = (this[0] == window?$j('html'):this)
    return o.attr('clientHeight');
}
$.fn.exClientWidth = function(){
    var o=(this[0] == window?$j('html'):this)
    var s=o.measur(function(){return o.attr('clientWidth')});
    if(o.attr('tagName') != 'HTML')return s;
    if(jQuery.browser.msie && jQuery.browser.version == 7)
	return o.width();
    return s;
}

$(function() {

	if(IE7){
		$("#for_IE7").css("display", "block");
	}
	
	if(IE6){
		$("#for_IE6").css("display", "block");
	}


    var positionTop = $(document).width()/2 - $("body").exClientWidth()/2;
    var positionLeft = $(document).height()/2 - $("body").exClientHeight()/2;
    var each_contents = "#shibaraku-content, #contact-content, #magazine-content, #message-content, #center-content";
    var each_container = "#shibaraku, #contact, #magazine, #message";
	var r = 117;
	var radB = -215.0;
	var radG = -35.0;
	var radP = -125.0;
	var radO = -305.0;
	var target_id, top_value, left_value, solid_position, rad, starting_solid_position;
	var contact_link = "contact_form.php";
	

	
	var element_array = new Array(4);
	element_array['contact'] = -345;
	element_array['magazine'] = -285;
	element_array['shibaraku'] = -165;
	element_array['message'] = -105;
    
    window.onresize = function() {
    	
        positionTop = $(document).width()/2 - $("body").exClientWidth()/2;
        positionLeft = $(document).height()/2 - $("body").exClientHeight()/2;
        $('#center-switch').smoothAnchor({easing : 'easeOutQuart',speed : 1000,target: '#' + positionTop + ',' + positionLeft});
    }
    
	$(document).ready(function(){
	    var positionLeft = $(document).width() / 2 - $('body').exClientWidth() / 2;
	    var positionTop = $(document).height() / 2 - $('body').exClientHeight() / 2;
	    smoothAnchor({
	        easing : 'easeOutQuart',
	        speed : 1000,
	        target : '#' + positionLeft + ',' + positionTop
	    });
	    move_center_links('center');
	});
	
    $('#center-switch').smoothAnchor({easing : 'easeOutQuart',speed : 1000,target: '#' + positionTop + ',' + positionLeft});

    $(".move-content").click(function(){
    	if(!IE7){
	    	$(each_container).css("overflow-y", "visible");
	    }
    	target_id = $(this).attr("name").replace("-switch", "");
        $(each_contents).fadeOut(500);
        $("#" + target_id + "-content").fadeIn(500);
        move_center_links(target_id);
        
        if(!IE7){
    		setTimeout(function(){ $(each_container).css("overflow-y", "auto"); }, 500);
    	}
    });

	
	function move_center_links(selected_content){
	
		if(selected_content == "center"){
	    	starting_solid_position = -300;
		}else{
			starting_solid_position = element_array[selected_content];
		}

    	for(element in element_array){
    		each_moves(element, selected_content, starting_solid_position);
    		if(selected_content == "center"){
    			starting_solid_position += 90;
    		}else{
    			starting_solid_position += 30;
    		}
    	}
	}
	

	function each_moves(element, selected_content, starting_solid_position){
		
		if(element == "contact"){
			rad = radO;
		}else if(element == "magazine"){
			rad = radB;
		}else if(element == "shibaraku"){
			rad = radP;
		}else if(element == "message"){
			rad = radG;
		}
		
		element_id = "#" + element + "-link";
		rad = repeat_move(element, element_id, rad, starting_solid_position);
			
	}

    function repeat_move(element, element_id,rad, starting_solid_position){

 
    	if(rad !== starting_solid_position){
    		if(rad < -360){ rad = 0.0; }		
			rad -= 5;				
   	    	top_value = calc_x(rad);
    		left_value = calc_y(rad);
			$(element_id).css("top", top_value + "px");
    		$(element_id).css("left", left_value + "px");
    		setTimeout(function(){ repeat_move(element, element_id, rad, starting_solid_position);}, 5);
		}else{
	    	if(element == "contact"){
				radO = rad;
			}else if(element == "magazine"){
				radB = rad;
			}else if(element == "shibaraku"){
				radP = rad;
			}else if(element == "message"){
				radG = rad;
			}
		
		}
    }
    
    function calc_x (radx) { return r * Math.cos(radx / 180 * Math.PI) + r; }
	function calc_y (rady) { return r * Math.sin(rady / 180 * Math.PI) + r; }

	$("#message-content-left-bottom").css("top", $(document).height()/2 - 290);
	$("#contact-content-right-bottom").css("top", $(document).height()/2 - 302);
	
	$('.bottom_title_image').css("top", $(document).height()/2 - 116);
	
	$(".inner_links_top_bottom").css("top", $(document).height()/2 - 60);
	$(each_contents).css("height", $(document).height()/2 -70);
	$("#center").css("height", 0);
	
	$('.unfinished').click(function(){
			alert("ただいま準備中です。");
			return false;
	});
	
	if(IE7){
		
		$("html").css("overflow", "auto");
		
		$(each_container).css("overflow-y", "visible");
	
	}
	
	var contact_html_default = $('#contact-form').html();
	var contact_html = contact_html_default;
	var contact_name_value;
	var contact_address_value;
	var contact_title_value;
	var contact_content_value;
	
	$("#contact_submit").live('click', function () { 
	
		contact_html = $('#contact-form').html();
		contact_name_value = $('#contact_name').val();
		contact_address_value = $('#contact_address').val();
		contact_content_value = $('#contact_content').val();
		
		if(contact_content_value == ""){
			alert("お問い合わせ内容が入力されていません。");
			return false;
		}
		
		/*
		if(check_mail_address(contact_address_value) == 2){
			alert("「" + contact_address_value + "」は有効なメードアドレスではありません。");
			return false;
		}*/

		var html = "以下の内容で送信します。";
		html += "<p class='contact_title'>お名前</p><p id='contact_name_pre'>" + escape(contact_name_value) + "</p>";
		html += "<p class='contact_title'>アドレス</p><p id='contact_address_pre'>" + escape(contact_address_value) + "</p>";
		html += "<p class='contact_title'>お問い合わせ内容</p><p id='contact_content_pre'>" + escape(contact_content_value) + "</p>";
		html += "<div id='contact_buttons'><input id='contact_return' type='button' value='編集画面に戻る'>";
		html += "<input id='contact_confirm' type='button' value='送信'></div></form>";
		
		$('#contact-form').html(html);
	});
	
	$("#contact_return").live('click', function () { 
		$('#contact-form').html(contact_html);
		$('#contact_name').val(contact_name_value);
		$('#contact_address').val(contact_address_value);
		$('#contact_content').val(contact_content_value);
	});
	
	$("#contact_confirm").live('click', function () { 
		
		contact_name_value = $('#contact_name_pre').html();
		contact_address_value = $('#contact_address_pre').html();
		contact_content_value = $('#contact_content_pre').html();

		jQuery.post(
			"contact_form.php",
			{
			'name':contact_name_value,
			'address':contact_address_value,
			'title':contact_title_value,
			'content':contact_content_value
			},
			contact_preconfirm
		);
	});
	/*
	function check_mail_address(address){
		check = address.match(/.+@.+\..+/);
		if(check == null){
        	return 2;
    	}else{
        	return 1;
        }
	}*/
	
	function contact_preconfirm(json_data){
		if(json_data == ""){
			$('#contact-form').html("送信しました。<br>" + contact_html_default);
		}
	}
	
	function escape(val){
        return $("<div/>").text(val).html();
	}
	
});


