if (ErrorsInitFlag!=1) {

var ErrorDB=new Array();
var ErrorIdx=new Array();
var ErrorCount=0;
var ErrorsInitFlag=0;
var DefaultError="";
function SetDefaultError(df)
	{
	DefaultError=df;
	}
function AddMLErrorString(ID,LANG,TEXT)
	{
	if (ErrorIdx[ID]!=1)
		{
		ErrorDB[ID]=new Array();
		ErrorIdx[ID]=1;
	}
	ErrorDB[ID][LANG]=TEXT;
	ErrorCount++;
	}

// VALUES format: "%a=price,%n=125"

function GetMLError(ID,LANG,VALUES)
	{

	InitErrors();
	try
		{
		
				
		
		if (DefaultError!="" && LANG=="")
		{
			LANG=DefaultError;
		}
		if (LANG=="") LANG="english";
		var err=ErrorDB[ID][LANG];
                if (String(err)=="undefined")
                                {
                                LANG="english";
                                var err=ErrorDB[ID][LANG];
                                }
                if (VALUES!="")
			{
			var pair=VALUES.split(",");
			var s="";
			var name="";
			var value="";
			for (j=0;j<pair.length;j++)
				{
				var s=pair[j].split("=");
				name=s[0];
				value=s[1];
				err=err.replace(name,value);
				}
			}

		return err;
		}
	catch(e)
		{

		var err=ErrorDB[ID]["english"];
		if (VALUES!="")
			{
			var pair=VALUES.split(",");
			var s="";
			var name="";
			var value="";
			for (j=0;j<pair.length;j++)
				{
				var s=pair[j].split("=");
				name=s[0];
				value=s[1];
				err=err.replace(name,value);

				}
			err=err.replace("`","'");
			}
		return err;
		}

	}
function InitErrors()
	{
	if (ErrorsInitFlag==1) return;
	//english

	AddMLErrorString(0,"english","You must select one of the following choices");
	AddMLErrorString(1,"english","At least %n item(s) must be selected");
	AddMLErrorString(2,"english","You can only select a maximum of  %n item(s)");
	AddMLErrorString(3,"english","All selected items must be answered");
	AddMLErrorString(4,"english","You must type an answer in the text box");
	AddMLErrorString(5,"english","Your answer must be at least %n characters long");
	AddMLErrorString(6,"english","Your answer must be numeric");
	AddMLErrorString(7,"english","That selection requires a text response");
	AddMLErrorString(8,"english","%a  must be <= %n");
	AddMLErrorString(9,"english","%a  must be >= %n");
	AddMLErrorString(10,"english","%a can not be equal to %n");
	AddMLErrorString(11,"english","You must select a day");
	AddMLErrorString(12,"english","All Items must be rated");
	AddMLErrorString(13,"english","At least one answer must be checked");
	AddMLErrorString(14,"english","Every cell must be answered");
	AddMLErrorString(15,"english","At least one cell must be answered");
	AddMLErrorString(16,"english","All Items must be clicked");
	AddMLErrorString(17,"english","You must answer this question");
	AddMLErrorString(18,"english","At least one item must be selected");
	AddMLErrorString(19,"english","At least %n rows must be answered");
	AddMLErrorString(20,"english","At least %n columns must be answered");
	AddMLErrorString(21,"english","Every row must be answered");
	AddMLErrorString(22,"english","You cannot answer more than %n item(s) ");
	AddMLErrorString(23,"english","Your answer must be at least %n");
	AddMLErrorString(24,"english","Your answer must be no greater than %n");
	AddMLErrorString(25,"english","The total must be equal to 100%");
	AddMLErrorString(26,"english","The total cannot be greater than 100");
	AddMLErrorString(27,"english","At least %n item(s) must be ranked");
	AddMLErrorString(28,"english","Ranks attributed to items must be consecutive");
	AddMLErrorString(29,"english","You can only select a maximum of %n item(s)");
	AddMLErrorString(30,"english","All items must be rated");
	AddMLErrorString(31,"english","The total must be equal to %n");
	AddMLErrorString(32,"english","You must find the correct picture");
	AddMLErrorString(33,"english","You must select one of the following choices");
	AddMLErrorString(34,"english","You took too long! Please click the 'Next' button");
	AddMLErrorString(35,"english","You must watch the entire movie before proceeding");
	AddMLErrorString(36,"english","Your answer must be at least %n");
	AddMLErrorString(37,"english","At least one item must be rated");
	AddMLErrorString(38,"english","Wrong answer! Please try again");
	AddMLErrorString(39,"english","Correct! Please click the 'Next' button");
	AddMLErrorString(40,"english","Back");
	AddMLErrorString(41,"english","Next");
	AddMLErrorString(42,"english","Survey progress");
	AddMLErrorString(43,"english","Quit & continue later");

	//french

	AddMLErrorString(0,"french","Vous devez selectionner l'une des options suivantes");
	AddMLErrorString(1,"french","Au moins %n option(s) doit etre selectionne");
	AddMLErrorString(2,"french","Vous ne pouvez selectionner un maximum de %n option(s)");
	AddMLErrorString(3,"french","Tous les elements selectionnes doivent recevoir une reponse");
	AddMLErrorString(4,"french","Vous devez taper une reponse dans la zone de texte");
	AddMLErrorString(5,"french","Votre reponse doit etre d'au moins %n caractere(s)");
	AddMLErrorString(6,"french","votre reponse doit etre numerique");
	AddMLErrorString(7,"french","Vous ne pouvez pas laisser un vide de texte");
	AddMLErrorString(8,"french","%a  doit etre  <= %n");
	AddMLErrorString(9,"french","%a  doit etre >= %n");
	AddMLErrorString(10,"french","%a ne peut pas etre egal a %n");
	AddMLErrorString(11,"french","Vous devez selectionner un jour");
	AddMLErrorString(12,"french","Toutes les options doivent etre evaluees");
	AddMLErrorString(13,"french","Au moins une reponse doit etre selectionne");
	AddMLErrorString(14,"french","Chaque case doit etre repondu");
	AddMLErrorString(15,"french","Au moins une case doit etre repondu");
	AddMLErrorString(16,"french","Toutes les options doivent etre clique");
	AddMLErrorString(17,"french","Vous devez repondre a cette question");
	AddMLErrorString(18,"french","Au moins une option doit etre selectionne");
	AddMLErrorString(19,"french","Vous devez repondre a au moins %n ligne(s)");
	AddMLErrorString(20,"french","Vous devez repondre a au moins %n colonne(s)");
	AddMLErrorString(21,"french","Chaque ligne doit etre repondu");
	AddMLErrorString(22,"french","Vous ne pouvez pas repondre a plus de %n option(s) ");
	AddMLErrorString(23,"french","votre reponse doit etre d'au moins %n");
	AddMLErrorString(24,"french","Votre reponse ne doit pas etre superieure a %n ");
	AddMLErrorString(25,"french","Le montant total doit etre egal a 100%");
	AddMLErrorString(26,"french","Le montant total ne peut pas etre superieure a 100%");
	AddMLErrorString(27,"french","Au moins %n options doivent etre classees");
	AddMLErrorString(28,"french","Classement doit etre consecutif");
	AddMLErrorString(29,"french","Vous ne pouvez selectionner qu'un maximum de %n option(s)");
	AddMLErrorString(30,"french","Chaque option doit etre evaluees");
	AddMLErrorString(31,"french","Le total doit etre egal a %n");
	AddMLErrorString(32,"french","Vous devez trouver la bonne image");
	AddMLErrorString(33,"french","Vous devez selectionner l'une des options suivantes");
	AddMLErrorString(34,"french","Vous avez pris trop de temps! S'il vous plait cliquez sur le bouton ≪Next≫");
	AddMLErrorString(35,"french","Vous devez regarder tout le film avant de continuer");
	AddMLErrorString(36,"french","Votre reponse doit etre d'au moins %n");
	AddMLErrorString(37,"french","Au moins un element doit etre evalue");
	AddMLErrorString(38,"french","Mauvaise reponse! S'il vous plait essayer a nouveau");
	AddMLErrorString(39,"french","Bonne reponse! S'il vous plait cliquez sur le bouton ≪Next≫");
	AddMLErrorString(40,"english","Back");
	AddMLErrorString(41,"english","Next");
	AddMLErrorString(42,"english","Survey progress");
	AddMLErrorString(43,"english","Quit & continue later");
	//Chinese	

	AddMLErrorString(0,"chinese simplified","???一个最?用的答案");
	AddMLErrorString(1,"chinese simplified","???最少 %n 个??");
	AddMLErrorString(2,"chinese simplified","?最多?? %n 个??");
	AddMLErrorString(3,"chinese simplified","所有??都必?作答");
	AddMLErrorString(4,"chinese simplified","?必?在文字框里写上答案");
	AddMLErrorString(5,"chinese simplified","?的答案最少要有 %n 个字");
	AddMLErrorString(6,"chinese simplified","?的答案必?是一个数字");
	AddMLErrorString(7,"chinese simplified","?不可以把文字框漏空不填写的");
	AddMLErrorString(8,"chinese simplified","%a必?要少于或等于 %n");
	AddMLErrorString(9,"chinese simplified","%a必?要大于或等于 %n");
	AddMLErrorString(10,"chinese simplified","%a 不能等于%n");
	AddMLErrorString(11,"chinese simplified","?必?要??一个日子");
	AddMLErrorString(12,"chinese simplified","?个?目都必??分");
	AddMLErrorString(13,"chinese simplified","最少要??一个答案");
	AddMLErrorString(14,"chinese simplified","?个格子里都必?写上答案");
	AddMLErrorString(15,"chinese simplified","最少要在一个格子里写上答案");
	AddMLErrorString(16,"chinese simplified","所有?像都必?要点按");
	AddMLErrorString(17,"chinese simplified","?必?要回答?道?");
	AddMLErrorString(18,"chinese simplified","最少要勾?一个答案");
	AddMLErrorString(19,"chinese simplified","最少要回答%n 行");
	AddMLErrorString(20,"chinese simplified","最少要回答%n ?");
	AddMLErrorString(21,"chinese simplified","?一行都必?作答");
	AddMLErrorString(22,"chinese simplified","?不能???超? %n 个答案 ");
	AddMLErrorString(23,"chinese simplified","?的答案最少是 %n");
	AddMLErrorString(24,"chinese simplified","?的答案不能多大于 %n ");
	AddMLErrorString(25,"chinese simplified","?数一定要等于100");
	AddMLErrorString(26,"chinese simplified","?数不能超?100");
	AddMLErrorString(27,"chinese simplified","最少 %n 个??需要排序");
	AddMLErrorString(28,"chinese simplified","?必?按着?序排列");
	AddMLErrorString(29,"chinese simplified","?最多只可以?? %n 个??");
	AddMLErrorString(30,"chinese simplified","所有的??一定要?分");
	AddMLErrorString(31,"chinese simplified","?数一定要等于 %n");
	AddMLErrorString(32,"chinese simplified","?務必找到正?的?像");
	AddMLErrorString(33,"chinese simplified","?只??其中一个");
	AddMLErrorString(34,"chinese simplified","?花的??太?了! ?按 'Next' ?");
	AddMLErrorString(35,"chinese simplified","?必?看完整段短片才??");
	AddMLErrorString(36,"chinese simplified","?的答案最少是 %n");
	AddMLErrorString(37,"chinese simplified","?必?要回答?道?");
	AddMLErrorString(38,"chinese simplified","??的答案！?稍后再?");
	AddMLErrorString(39,"chinese simplified","很好的回答！ ?按 'Next' ?");
	AddMLErrorString(40,"english","Back");
	AddMLErrorString(41,"english","Next");
	AddMLErrorString(42,"english","Survey progress");
	AddMLErrorString(43,"english","Quit & continue later");

	//Japanese

        AddMLErrorString(0,"japanese","必ず１つ選択して下さい。");
	AddMLErrorString(1,"japanese","必ず%nつは項目を選択して下さい。");
	AddMLErrorString(2,"japanese","最大%nつしか選択できません。");
	AddMLErrorString(3,"japanese","空欄に回答をご記入下さい。");
	AddMLErrorString(4,"japanese","選択したアイテム全てにお答え下さい。");
	AddMLErrorString(5,"japanese","回答は%n文字以上でお願い致します。");
	AddMLErrorString(6,"japanese","数値でお答え下さい。");
	AddMLErrorString(7,"japanese","必ず空欄に回答をご記入下さい。");
	AddMLErrorString(8,"japanese","必ず%aは%n以下でお願いします。");
	AddMLErrorString(9,"japanese","必ず%aは%n以上でお願いします。");
	AddMLErrorString(10,"japanese","%aと%nは違う数値でお答え下さい。");
	AddMLErrorString(11,"japanese","日付をを選択して下さい。");
	AddMLErrorString(12,"japanese","全てのアイテムにお答え下さい。");
	AddMLErrorString(13,"japanese","必ず１つは回答を選択下さい。");
	AddMLErrorString(14,"japanese","全てにお答え下さい。");
	AddMLErrorString(15,"japanese","必ず１つにはお答え下さい。");
	AddMLErrorString(16,"japanese","全てのアイテムを選択して下さい。");
	AddMLErrorString(17,"japanese","この設問には必ずお答え下さい。");
	AddMLErrorString(18,"japanese","必ず１つのアイテムを選択下さい。");
	AddMLErrorString(19,"japanese","必ず%n行に回答下さい。");
	AddMLErrorString(20,"japanese","必ず%nつの列全てにご回答下さい。");
	AddMLErrorString(21,"japanese","全ての行に関してお答え下さい。");
	AddMLErrorString(22,"japanese","%n個以上は回答できません。");
	AddMLErrorString(23,"japanese","回答は必ず%nはお答え下さい。");
	AddMLErrorString(24,"japanese","回答は%n以下でお願いします。");
	AddMLErrorString(25,"japanese","合計が１００％になるようご記入下さい。");
	AddMLErrorString(26,"japanese","合計が１００以下になるようご記入下さい。");
	AddMLErrorString(27,"japanese","必ず%nのアイテムを順位づけて下さい。");
	AddMLErrorString(28,"japanese","");
	AddMLErrorString(29,"japanese","選択できる回答は最大%nまでです。");
	AddMLErrorString(30,"japanese","全てのアイテムにお答え下さい。");
	AddMLErrorString(31,"japanese","合計が%nとなるようにご記入下さい。");
	AddMLErrorString(32,"japanese","該当する画像を必ずお選び下さい。");
	AddMLErrorString(33,"japanese","下記の選択肢から必ず１つお選び下さい。");
	AddMLErrorString(34,"japanese","制限時間を過ぎました。次へをクリックして下さい。");
	AddMLErrorString(35,"japanese","映像を最後まで見てからご回答下さい。");
	AddMLErrorString(36,"japanese","最低%nでお答え下さい。");
	AddMLErrorString(37,"japanese","回答は%n文字以上でお願いします。");
	AddMLErrorString(38,"japanese","間違った回答です。もう一度入力して下さい。");
	AddMLErrorString(39,"japanese","正しい回答です。’次へ’をクリックして下さい。");
	AddMLErrorString(40,"japanese","<<戻る");
	AddMLErrorString(41,"japanese","次へ>>");
	AddMLErrorString(42,"japanese","アンケート進行状況");
	AddMLErrorString(43,"japanese","一時中止して後で続ける");
	ErrorsInitFlag=1;

	}
}



// last changed on the 17/10/2009




























