//////////////////////////////////////////
//
// 機能     メッセージ管理

//
//////////////////////////////////////////



//////////////////////////////////////////
// 機能     エラーメッセージを返却する
// 引数
//          msgIndex     エラーメッセージ番号
//          
// 返却値   var
//          メッセージ番号に対するエラーメッセージ
//////////////////////////////////////////
function getErrorMessage(msgIndex) {

	// エラーメッセージ番号が0以下の場合は、該当無しのメッセージを返却する
	if (msgIndex < 0) {
		return NOT_MSG;
	}
	// エラーメッセージ番号が最大以上の場合は、該当無しのメッセージを返却する
	if (msgIndex >= E_MSG.length) {
		return NOT_MSG;
	}
	return E_MSG[msgIndex];
}

//////////////////////////////////////////
// 機能     対応方法メッセージを返却する
// 引数
//          msgIndex     対応方法メッセージ番号
//          
// 返却値   var
//          メッセージ番号に対する対応方法メッセージ
//////////////////////////////////////////
function getSolutionMessage(msgIndex) {

	// 対応方法メッセージ番号が0以下の場合は、該当無しのメッセージを返却する
	if (msgIndex < 0) {
		return NOT_MSG;
	}
	// 対応方法メッセージ番号が最大以上の場合は、該当無しのメッセージを返却する
	if (msgIndex >= S_MSG.length) {
		return NOT_MSG;
	}
	return S_MSG[msgIndex];
}

//////////////////////////////////////////
// 機能     確認メッセージを返却する
// 引数
//          msgIndex     確認メッセージ番号
//          
// 返却値   var
//          メッセージ番号に対する確認メッセージ
//////////////////////////////////////////
function getConfirmationMessage(msgIndex) {

	// 確認メッセージ番号が0以下の場合は、該当無しのメッセージを返却する
	if (msgIndex < 0) {
		return NOT_MSG;
	}
	// 確認メッセージ番号が最大以上の場合は、該当無しのメッセージを返却する
	if (msgIndex >= C_MSG.length) {
		return NOT_MSG;
	}
	return C_MSG[msgIndex];
}

//////////////////////////////////////////
// 機能     エラーメッセージを編集して返却する
// 引数
//          msgIndex     エラーメッセージ番号
//          repString    置換文字列
//          
// 返却値   var
//          編集後のメッセージ
//////////////////////////////////////////
function getFormatErrorMessage() {

	// 引数の数を取得する

	var argCount = arguments.length;
	
	// 引数が0の場合は、該当無しのメッセージを返却する
	if (argCount == 0) {
		return NOT_MSG;
	}
	
	// メッセージ番号を取得する

	msgIndex = arguments[0];
	
	// エラーメッセージを取得する

	var orgString = getErrorMessage(msgIndex);
	var newString = "";
	
	// 引数の数が1の場合は、エラーメッセージを取得して返却する
	if (argCount == 1) {
		return orgString;
	}
	// 引数の数が1以上の場合は、エラーメッセージを編集する

	else {
		for (idx = 1; idx < argCount; idx++) {
			// メッセージを編集する

			newString = replaceMessage(orgString, arguments[idx]);
			orgString = newString;
		}
	}
	return orgString;
}

//////////////////////////////////////////
// 機能     対応方法メッセージを返却する
// 引数
//          solIndex     対応方法メッセージ番号
//          repString    置換文字列
//          
// 返却値   var
//          メッセージ番号に対する対応方法メッセージ
//////////////////////////////////////////
function getFormatSolutionMessage() {

	// 引数の数を取得する

	var argCount = arguments.length;
	
	// 引数が0の場合は、該当無しのメッセージを返却する
	if (argCount == 0) {
		return NOT_MSG;
	}
	
	// 対応方法メッセージ番号を取得する

	msgIndex = arguments[0];
	
	// 対応方法メッセージを取得する

	var orgString = getSolutionMessage(msgIndex);
	var newString = "";
	
	// 引数の数が1の場合は、対応方法メッセージを取得して返却する
	if (argCount == 1) {
		return orgString;
	}
	// 引数の数が1以上の場合は、対応方法メッセージを編集する

	else {
		for (idx = 1; idx < argCount; idx++) {
			// メッセージを編集する

			newString = replaceMessage(orgString, arguments[idx]);
			orgString = newString;
		}
	}
	return orgString;
}
//////////////////////////////////////////
// 機能     メッセージを編集する

// 引数
//          orgString     メッセージ
//          repString     置換文字列
//          
// 返却値   var
//          編集後のメッセージ
//////////////////////////////////////////
function replaceMessage(orgString, repString) {
	var rgexp = new RegExp("%s");
	var newString = orgString.replace(rgexp, repString);
	return newString;
}

var NOT_MSG = "該当のメッセージがありません。";

var E_MSG = new Array();
E_MSG[0] = "%sを入力してください。";
E_MSG[1] = "%sの値が不正です。";
E_MSG[2] = "%sを選択してください。";
E_MSG[3] = "%sまでしか選択できません。";
E_MSG[4] = "地域を選択してください。又はコース名を入力してください。";
E_MSG[5] = "%sは300文字以内で入力してください。";
E_MSG[6] = "%sは100文字以内で入力してください。";	// mycourse_current_market_input.php
E_MSG[7] = "%sは150文字以内で入力してください。";	// estimation_request.php
E_MSG[8] = "%sは50文字以内で入力してください。";
E_MSG[9] = "%sの選択が不正です。";
E_MSG[10] = "%sは20文字以内で入力してください。";	// news_information.php
E_MSG[11] = "%sに同一値があります。";
E_MSG[12] = "%sは半角数字で入力してください。";
var S_MSG = new Array();
S_MSG[0] = "対象のコースの選択欄にチェック後に、%sボタンを押してください。";
S_MSG[1] = "削除対象のコースのお気に入り相場表の削除欄にチェック後に、お気に入り相場表の削除ボタンを押してください。";
S_MSG[2] = "申込対象のコースの時価評価申込欄にチェック後に、時価評価申し込みボタンを押してください。";
S_MSG[3] = "50～3000万円以内で入力してください。";
S_MSG[4] = "50～500万円以内で入力してください。";
S_MSG[5] = "30～300万円以内で入力してください。";
var C_MSG = new Array();
C_MSG[0] = "ログアウトを行います。よろしいですか？";
C_MSG[1] = "お気に入り相場表の登録を行います。よろしいですか？";
C_MSG[2] = "お気に入り相場表の削除を行います。よろしいですか？";
C_MSG[3] = "マイコースの解約を行います。よろしいですか？";
C_MSG[4] = "ユーザ登録の解約を行います。よろしいですか？";

