/**
 * fechform
 * in seminary entry page, this will get seminar form via ajax.
 * put the form asynchronous.
 */
document.write('<div id="js_quickAttend"></div>');
jQuery(function($){

	var DEBUG = (location.href.indexOf('DEBUG')>-1) ? true : false;

	var container = $('#js_quickAttend');
	var hd = $('#area_bd-bd-main .entry-hd').eq(0);
	var attendanceAvailable = hd.find('div.byline p.status img.attendanceAvailable').size() ? true : false;
	var date = hd.find('span.scheduledDate').text();
	var entryMonth = getMonth(date);
	var entryDay = getDay(date);

	if(!attendanceAvailable || !date){
		return;
	}

	$.ajax({

		dataType: 'html',
		url: '/seminar/mailform.php',
		success: function(data){

			var html = $(data);
			var form = html.find('#entryform');

			if(DEBUG){ alert('メールフォームの取得に成功'); }

			var hset = $('\
				<h4 class="mod_articleH1">経営者勉強会参加お申込み</h4>\
				<p class="mod_p">参加を希望する方は、以下のお申込みフォームにて必要事項をご記入の上、ご送信下さい。</p>\
			');
			var note = form.prev().css('margin-top','-25px');
			var tr = form.find('#seminarForm_seminarChoose');
			var td = tr.find('td');

			/*
				make associated radio clicked.
			*/
			var found = false;
			td.find('li').each(function(){
				var radio = $(this).find('input').eq(0);
				var date = radio.val();
				var currentMonth = getMonth(date);
				var currentDay = getDay(date);
				var same = (currentMonth===entryMonth) && (currentDay===entryDay);
				if(same){
					found = true;
					radio.get(0).checked = true;
					if(DEBUG){
						alert('対応するセミナーを発見しました');
					}
					return false;
				}
			});
			if(!found){
				if(DEBUG){
					alert('対応するセミナーが存在しません');
				}
				return;
			}

			/*
				adjust form parts
			*/
			tr.hide();
			form.find('#mail_text').width('390px');
			form.find('#msgResizer').width('392px');

			hset.appendTo(container);
			note.appendTo(container);
			form.appendTo(container);
			
			execOnloadSetup();

		}
	});

	/**
	 * execOnloadSetup
	 */
	function execOnloadSetup(){
		$.inPageDialog.register({
			opener: "a.js_dialogOpen_ajax",
			type: "ajax",
			extraClass: "mod_textDialog",
			useTitleAsDialogTitle: true
		});
		$.textareaResizer.register({
			resizer: "#msgResizer",
			textarea: "#mail_text"
		});
		new $.mailformHelper(true);
	}

	/**
	 * string manipulation funcs
	 */
	function getMonth(str){
		var res = str.match(/([0-9]+)月/);
		return (res && res.length>1) ? parseInt(res[1]) : null;
	}
	function getDay(str){
		var res = str.match(/([0-9]+)日/);
		return (res && res.length>1) ? parseInt(res[1]) : null;
	}

});

