// JavaScript Document/*
/*
新月日計算
引数  　julian  ユリウス通日
戻り値  与えられたユリウス通日に対する直前の新月日(ユリウス日)
*/
function getNewMoon(julian) {
	var k     = Math.floor((julian - 2451550.09765) / 29.530589);
	var t     = k / 1236.85;
	var nmoon = 2451550.09765
		 + 29.530589  * k
		 +  0.0001337 * t * t
		 -  0.40720   * Math.sin((201.5643 + 385.8169 * k) * 0.017453292519943)
		 +  0.17241   * Math.sin((2.5534 +  29.1054 * k) * 0.017453292519943);
	return (nmoon);         // julian - nmoonが現在時刻の月齢
}


/*
ユリウス通日計算
引数　　時刻(Dateオブジェクト)
戻り値　ユリウス通日(浮動小数点数)
*/
function getJulian(date) {
	return date.getTime() / 86400000.0+2440587.5;
}


/* 桁数統一*/
function numdigits(num){
	if (num < 10){
		return '0' + num;
	} else {
		return num;
	}
}


/*計算処理*/
var nowDate   = new Date();
julian = getJulian(nowDate);

var year    = nowDate.getYear(); //年
if(year < 2000){ year += 1900; }
var month  = nowDate.getMonth() + 1; //月
var day    = nowDate.getDate(); //日
var week   = (new Array('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'))[nowDate.getDay()]; //曜日
var hour   = nowDate.getHours(); //時
var minute = nowDate.getMinutes(); //分

var nmoon = getNewMoon(julian);
if (nmoon > julian) { nmoon = getNewMoon(julian - 1.0); }

var age = julian - nmoon; //現在時刻の月齢


//age=5; //Debug



/*表示処理*/
var moonage = age;
var moonage_view;
var moon_name;
var moon_test;
var image;
var imagedir = "http://www.ichijyo-shinya.com/tpl/images/moonage/"; // イメージファイルディレクトリURL

if (age >= 0) {
	moonage = moonage + ".0";
	if (moonage.charAt(0) == ".") {moonage = "0" + moonage;}
	
	if(age >= 10) {
		moonage = moonage.substring(0,4);
	} else {
		moonage = moonage.substring(0,3);
	}
	
	image   = imagedir + numdigits(Math.floor(moonage)) + ".jpg";
	
	//月名前フラグ
	//moon_test　=　12;
	//var name_flag = moon_test;
	moon_test = moonage * 10;
	var name_flag = Math.floor(moon_test);
	if(name_flag<10 && name_flag>=0){
		moon_name = "";
	}else if(name_flag<20 && name_flag>=10){
		moon_name = "";
	}else if(name_flag<70 && name_flag>=20){
		moon_name = "";
	}else if(name_flag<150 && name_flag>=70){
		moon_name = "";
	}else if(name_flag<160 && name_flag>=140){
		moon_name = "";
	}else if(name_flag<170 && name_flag>=160){
		moon_name = "";
	}else if(name_flag<180 && name_flag>=170){
		moon_name = "";
	}else if(name_flag<190 && name_flag>=180){
		moon_name = "";
	}else if(name_flag<200 && name_flag>=190){
		moon_name = "";
	}else if(name_flag<210 && name_flag>=200){
		moon_name = "";
	}else if(name_flag<220 && name_flag>=210){
		moon_name = "";
	}else if(name_flag<300 && name_flag>=290){
		moon_name = "";
	}else{
		moon_name = "&nbsp;";
	}
	
	var date_view = year + "." + month + "." + day + "［" + week + "］";
	var time_view = numdigits(hour) + "：" + numdigits(minute);
	
	moonage_view = "<span class=\"moom_age\">" + date_view  + time_view + "<br>MoonAge：" + moonage + "</span>"+ moon_name + "<br><img src=\"" + image + "\" width=90 height=90 border=0>";
}
