-$sOutputFormat = $oParams->getSet('format', array('html', 'xml', 'json', 'jsonv2'), 'html');
-
-// Show / use polygons
-if ($sOutputFormat == 'html') {
- $oGeocode->setIncludePolygonAsText($oParams->getBool('polygon'));
- $bAsText = false;
-} else {
- $bAsPoints = $oParams->getBool('polygon');
- $bAsGeoJSON = $oParams->getBool('polygon_geojson');
- $bAsKML = $oParams->getBool('polygon_kml');
- $bAsSVG = $oParams->getBool('polygon_svg');
- $bAsText = $oParams->getBool('polygon_text');
- $iWantedTypes = ($bAsGeoJSON?1:0) + ($bAsKML?1:0) + ($bAsSVG?1:0) + ($bAsText?1:0) + ($bAsPoints?1:0);
- if ($iWantedTypes > CONST_PolygonOutput_MaximumTypes) {
- if (CONST_PolygonOutput_MaximumTypes) {
- userError("Select only ".CONST_PolygonOutput_MaximumTypes." polgyon output option");
- } else {
- userError("Polygon output is disabled");
- }
- exit;
- }
- $oGeocode->setIncludePolygonAsPoints($bAsPoints);
- $oGeocode->setIncludePolygonAsText($bAsText);
- $oGeocode->setIncludePolygonAsGeoJSON($bAsGeoJSON);
- $oGeocode->setIncludePolygonAsKML($bAsKML);
- $oGeocode->setIncludePolygonAsSVG($bAsSVG);
-}
-
-// Polygon simplification threshold (optional)
-$oGeocode->setPolygonSimplificationThreshold($oParams->getFloat('polygon_threshold', 0.0));
+$sOutputFormat = $oParams->getSet('format', array('xml', 'json', 'jsonv2', 'geojson', 'geocodejson'), 'jsonv2');
+set_exception_handler_by_format($sOutputFormat);