/* 入力エラー時のハイライト処理 ※メソッド引数をerror_inputs.argumentsで取得 */
function error_inputs(){for(var i = 0; i < error_inputs.arguments.length; i++) $("#"+error_inputs.arguments[i]).css("background-color","#FFFACD");}
function error_spans(){for(var i = 0; i < error_spans.arguments.length; i++) $("#"+error_spans.arguments[i]+" :input").css("background-color","#FFFACD");}

/* ajax送信 ※デフォルトsubmit先は$('#entry_form').attr('action') */
function ajax_submit(update_html, link_obj, process){if(process) $('#process').val(process);$('#entry_form').ajaxSubmit({target:update_html,url:$(link_obj).attr('href'),error:check_response});return false;}
function ajax_load(update_html, link_url){$.ajax({url:link_url,ifModified:true,error:check_response,success:function(data){$(update_html).html(data);}});}
function ajax_paging(update_html,submit_form){$('#process').val('paging');$(submit_form).ajaxSubmit({target:update_html,error:check_response});return false;}

/* Ajaxレスポンスをチェック */
function check_response(xmlHttpRequest)
{
	var identity = xmlHttpRequest.responseText.substring(29, 0);
	if(identity=='<!--ajax_admin_systm_error-->'){top.location.href = '/admin/maintenances/error';return false;}
	else if(identity=='<!--ajax_admin_login_error-->'){top.location.href = '/admin/maintenances/login';return false;}
	else if(identity=='<!--ajax_front_systm_error-->'){top.location.href = '/pages/system_error';return false;}
	else if(identity=='<!--ajax_front_login_error-->'){top.location.href = '/mypages/login';return false;}
	return true;
}
// iframeを利用したファイルの非同期アップロード
function ifupload(upload_field, field_alias)
{
	var accept = /\.png|\.gif|\.jpg|\.jpeg/i;
	var file_name = upload_field.value;
	if(file_name.search(accept) == -1){
		alert("アップロードは、gif, jpg, png のみ可能です");
		if($.browser.msie){
			$('#'+field_alias).remove();
			var file = document.createElement('input');
			file.type = 'file';
			file.name = 'input_'+field_alias;
			file.id = 'input_'+field_alias;
			file.onchange = function(){ifupload(this, field_alias)};
			$('#upload_'+field_alias).append(file);
		} else upload_field.value = '';
		return false;
	}
	var last_target = upload_field.form.target;
	var last_action = upload_field.form.action;
	upload_field.form.encoding = 'multipart/form-data';
	upload_field.form.target = 'iframe_'+field_alias;
	upload_field.form.action = '/files/upload/'+field_alias;
	upload_field.form.submit();
	upload_field.disabled = true;
	// 元に戻す
	upload_field.form.target = last_target;
	upload_field.form.action = last_action;
	return true;
}
/* アップロードした画像の削除 */
function delete_upload_file(field_alias, url){$('#upload_'+field_alias).load(url);$('#'+field_alias).val('');}

/* jquery.datepicker実行 */
function setup_datepicker_date(field_alias){$(function (){$('#'+field_alias).datepick({closeAtTop: false,showBigPrevNext: true,yearRange: '1960:'+get_year(3)});});}
function setup_datepicker_term(field_alias){$(function (){$('#'+field_alias+' :input').datepick({closeAtTop: false,showBigPrevNext: true,yearRange: '1960:'+get_year(3)});});}

/*日付計算*/
function get_year(yyyy){var d=new Date();d.setYear(d.getFullYear()+yyyy);return d.getFullYear();}

/* テキストエリアの拡張 */
function increaseNotesHeight(thisTextarea, add){
	if ($(thisTextarea)){
		newHeight = parseInt($(thisTextarea).height()) + add;
		$(thisTextarea).height(newHeight + "px");
	}
	if (document.getElementById('notes_height')){
		document.getElementById('notes_height').value = newHeight;
	}
}
/* テキストエリアの縮小 */
function decreaseNotesHeight(thisTextarea, subtract){
	if ($(thisTextarea)){
		if ((parseInt($(thisTextarea).height()) - subtract) > 30){
			newHeight = parseInt($(thisTextarea).height()) - subtract;
			$(thisTextarea).height(newHeight + "px");
		}
		else {
			newHeight = 30;
			$(thisTextarea).height("30px");
		}
	}
	if (document.getElementById('notes_height')){
		document.getElementById('notes_height').value = newHeight;
	}
}
