

//「編集する」を押したときの挙動
function plugin_free_text_top_edit () {
	// 現在のテキストを得て、キャッシュしておく
	var text = $('#plugin_free_text_top_text').html();
	$('#plugin_free_text_top').data('text', text);

	// 現在のタイトルを得て、キャッシュしておく
	var title = $('#A_top_title_FreeTextTop').html();
	$('#plugin_free_text_top').data('title', title);

	// 値をエスケープする
	text  = text.replace(/<br[^>]*>\n?/ig, "\n");
	title = title.replace(/<br[^>]*>\n?/ig, "\n");

	// フォームを描画する
	$('#plugin_free_text_top_text').empty().append('<div class="plugin_free_text_top_form_label">タイトル</div><input type="text" id="plugin_free_text_top_form_title" value="' + title + '"><div class="plugin_free_text_top_form_label">本文</div><textarea id="plugin_free_text_top_form_text">' + text + '</textarea>');

	// ボタンを描画する
	$('#plugin_free_text_top_button_edit').hide();
	$('#plugin_free_text_top_button_save').show();
	$('#plugin_free_text_top_button_cancel').show();

	// スクロールする
	var offset = $('#plugin_free_text_top').offset().top - 50;		// だいたいの位置でOK
	$('html,body').animate({ scrollTop: offset }, 'slow');

	// 終わり
	return false;
}

//「キャンセル」を押したときの挙動
function plugin_free_text_top_cancel () {
	// キャッシュを取り出す
	var text  = $('#plugin_free_text_top').data('text');
	var title = $('#plugin_free_text_top').data('title');

	// テキストを描画する
	$('#plugin_free_text_top_text').empty().append( text );

	// タイトルを描画する
	$('#A_top_title_FreeTextTop').empty().append( title );

	// ボタンを描画する
	$('#plugin_free_text_top_button_edit').show();
	$('#plugin_free_text_top_button_save').hide();
	$('#plugin_free_text_top_button_cancel').hide();

	// 終わり
	return false;
}

//「OK」を押したときの挙動
function plugin_free_text_top_save () {
	// 保存する値
	var title = $('#plugin_free_text_top_form_title').val();
	var text  = $('#plugin_free_text_top_form_text').val();

	// 保存する
	$.ajax({
		type: 'POST',
		url: '/appli/plugin/FreeTextTop/save/',
		data: {
			title: title,
			text: text
		},
		dataType: 'json',
		success: function( res ){
			// 成功したら
			if( res.success ) {
				var ent = { '<' : '&lt;', '>' : '&gt;', '&' : '&amp;', '"' : '&quot;' };

				// テキストを描画する
				text = text.replace(/[<>&"]/g, function(_){ return ent[_] }).replace(/\r?\n/g, '<br />');
				$('#plugin_free_text_top_text').empty().append( text );

				// タイトルを描画する
				title = title.replace(/[<>&"]/g, function(_){ return ent[_] }).replace(/\r?\n/g, '<br />');
				$('#A_top_title_FreeTextTop').empty().append( title );

				// ボタンを描画する
				$('#plugin_free_text_top_button_edit').show();
				$('#plugin_free_text_top_button_save').hide();
				$('#plugin_free_text_top_button_cancel').hide();

			// 失敗したら
			} else {
				// アラートを表示して
				alert( '保存できませんでした' );
				// 元に戻す
				plugin_free_text_top_cancel();
			}
		}
	});
}


