var meaContainer = null;
var meaItem = "";

DisplayMEA();

function DisplayMEA()
{
	meaContainer = document.getElementById("mea-container");

	if (meaContainer != null)
	{
		meaItem = meaContainer.innerHTML;

		meaContainer.innerHTML = "Chargement en cours...";

		var host = "";
		var scripts = document.getElementsByTagName("script");
		for (var i = 0; i < scripts.length; i++)
		{
			var src = scripts[i].src;
			if (src.indexOf("mea.js") != -1)
			{
				host = src.replace("http://", "").split("/")[0];
			}
		}

		if (host != "")
		{
			var s = document.createElement("script"); 
			s.src = "http://" + host + "/services/mea?jsoncallback=ParseMEA";
			s.type = "text/javascript";
			
			document.body.appendChild(s);
		}
	}
	else
	{
		alert("mea container not found!");
	}
}
function ParseMEA(json)
{
	var data = json.d;

	if (data.length > 0)
	{
		meaContainer.innerHTML = "";

		var regex = /%(.+?)%/g;
		var match = regex.exec(meaItem);

		var fields = "";
		if (match != null)
		{
			fields = match[1].toLowerCase();

			while (match != null)
			{
				match = regex.exec(meaItem);
			
				if (match != null)
				{
					var name = match[1].toLowerCase();
					if (fields.indexOf(name) == -1)
					{
						fields += "," + match[1].toLowerCase();
					}
				}
			}

			fields = fields.split(",");
		}

		var html = "";
		for (var i = 0; i < data.length; i++)
		{
			var newHtml = meaItem;

			for (var j = 0; j < fields.length; j++)
			{
				var name = fields[j];
				var value = eval("data[i]." + name);

				var regex = new RegExp("%" + name + "%", "gi");

				newHtml = newHtml.replace(regex, value);
			}

			html += newHtml;
		}

		meaContainer.innerHTML = html;
	}
}
