private ArrayList parseExportedStatus(object filename, Hashtable meta, string msg)
{
ArrayList arrStatus = new ArrayList();
// get status
bool status = (filename is string ? true : false);
// add notices
if (notices.Trim() != "") arrStatus.Add("notice=" + notices.Trim());
// DOMId of the chart
arrStatus.Add("DOMId=" + (meta["DOMId"]==null? DOMId : meta["DOMId"].ToString()));
// add width and height
// provide 0 as width and height on failure
if (meta["width"] == null) meta["width"] = "0";
if (meta["height"] == null) meta["height"] = "0";
arrStatus.Add("height=" + (status ? meta["height"].ToString() : "0"));
arrStatus.Add("width=" + (status ? meta["width"].ToString() : "0"));
// add file URI
arrStatus.Add("fileName=" + (status ? (Regex.Replace(HTTP_URI, @"([^\/]$)", "${1}/") + filename) : ""));
arrStatus.Add("statusMessage=" + (msg.Trim() != "" ? msg.Trim() : (status ? "Success" : "Failure")));
arrStatus.Add("statusCode=" + (status ? "1" : "0"));
return arrStatus;
}