/* トランジション時間(ms) */
var CONTACT_FX_TIME = 500;

/* トランジション用不透明度の開始、終了値 */
var CONTACT_OPACITY_MAX = 0.999; /* 何故か 1 では不具合あり(MacのFireFoxで文字が一瞬太くなる) */
var CONTACT_OPACITY_MIN = 0.001; /* 何故か 0 では不具合あり */

/* コンタクトコントロールオブジェクト */
var ContactControl = {

	/* startファンクション */
	start: function(){

		/* JavaScriptON時用のアンカーを無効化
		*********************************/

		var unit = document.getElements('#email_anchor a');
		unit[0].href = "javascript:;";

		/* 背景のフェードイン画像設定
		*********************************/


		/* トランジション用オブジェクト配列初期化 */
		var ContactFX = [];

		/* CONTACTのリスト数を取得 */
		var anchor = document.getElements('.contact_anchor');

		/* イメージのID名と背景画像 */
		var divname;
		var CONTACT_MOUSEOVER_IMG;

		/* CONTACTのリスト数でループ */
		for (var i=0 ; i<anchor.length ; i++) {
			/* 図のID名を変数にセット(ID名は任意の名前でOK、ただしcontact_anchor内の構造を変更した場合はココも変更が必要) */
			if (i == 0) {
				divname = 'email';
				CONTACT_MOUSEOVER_IMG = "/images/img-04_contact_hover.gif"; /* コンタクト背景画像 */
			}
			if (i == 1) {
				divname = 'skype';
				CONTACT_MOUSEOVER_IMG = "/images/img-04_skype_hover.gif"; /* SKYPE背景画像 */
			}

			/* 図のID名からトランジション用オブジェクト作成         */
			/* また、図のindexに配列の添え字を格納(イベント内で使用) */
			ContactFX[i] = new Fx.Styles(divname, {wait: false, duration: CONTACT_FX_TIME,transition: Fx.Transitions.Quart.easeOut});
			$(divname).index = i; // イベント内で配列を特定するための添え字を保存

			/* とりあえず図はフェードアウトしておく */
			$(divname).effect('opacity', {duration: CONTACT_FX_TIME, transition:Fx.Transitions.linear}).start(CONTACT_OPACITY_MIN);

			/* メニュー背景画像設定(html上にはspacer.gifを配置してあり、それを置き換えます(JavaScriptOFF対策)) */
			$(divname).src = CONTACT_MOUSEOVER_IMG;

			/* マウスオーバーイベントハンドラ設定 */
			$(divname).addEvent('mouseover', function() {

				/* フェードイン */
				ContactFX[this.index].stop();
				ContactFX[this.index].start({ 'opacity': CONTACT_OPACITY_MAX });

				/* 任意のメニューをフェードインしたタイミングで、その他を強制フェードアウト(Safari & IE6用) */
				if (navigator.userAgent.match("Safari/(\\d+(\\.\\d+)*)")
				//|| navigator.userAgent.match("MSIE") && document.appendChild
				){
					for (var i=0 ; i<anchor.length ; i++) {
						if (i != this.index) {
							ContactFX[i].start({ 'opacity': CONTACT_OPACITY_MIN });
						}
					}
				}
			});

			/* マウスアウトイベントハンドラ設定 */
			$(divname).addEvent('mouseout', function() {
			
				/* フェードアウト */
				ContactFX[this.index].stop();
				ContactFX[this.index].start({ 'opacity': CONTACT_OPACITY_MIN });
			});

		}


		/* メーラー起動設定
		*********************************/

		$("email_anchor").addEvent('mousedown', function() {
			eval(String.fromCharCode(108,111,99,97,116,105,111,110,46,104,114,101,102,32,61,32,39,109,97,105,108,116,111,58) + "xe-que design works" + String.fromCharCode(60,105,110,102,111,64,120,101,45,113,117,101,46,99,111,109,62,63,115,117,98,106,101,99,116,61) + "" + "'");
		});

	}
}

/* documentロードのタイミングで関数起動 */
window.addEvent('domready', ContactControl.start);

