var LW = LW || {};
LW.error = {
	formatters: {
		'LW::Exception::Input::Multiple': function (e) {
			var msgs = [];
			for (var i in e.errors) {
				msgs[msgs.length]= LW.error.format(e.errors[i]);
			}

			return msgs;
		},
		'LW::Exception::Input::Required': function (e) {
			return e.field + " is a required field.";
		},
		'LW::Exception::Input::Validation': function (e) {
			return e.field + " did not pass validation.";
		},
		'LW::Exception::Input::Unknown': function (e) {
			return e.field + " is not a valid field."
		}
	},
	format: function (e) {
		if (LW.error.formatters[e.error_class]) {
			return LW.error.formatters[e.error_class](e);
		}
		else if (e.full_error) {
			return e.full_error;
		}
		return "An unknown error has occured.  Please contact support if this persists.";
	}
};

