$namespace = $gBitSystem->getConfig('geoserver_namespace', 'map4change'); if ($_SERVER['REQUEST_METHOD'] == 'POST') { $args = $_POST; } else { $args = $_GET; } // Remove the query from the arguments unset($args['request']); if (empty($args['typename'])) { $args['typename'] = 'liberty'; } switch ($_REQUEST['request']) { case 'GetFeature': if (strstr($args['typename'], 'liberty')) { // Validate the namespace if ($args['typename'] != 'liberty' && substr($args['typename'], 0, strlen($namespace) + 1) != $namespace . ':') { geoserver_exception('Permision denied while trying to request type name: "' . $args['typename'] . '" namespace:' . $namespace); } else { geoserver_fetch($url, 'GetFeature', $args, 'wfs_liberty_filter.tpl'); } } else { geoserver_fetch($url, 'GetFeature', $args); } break; case 'DescribeFeatureType': case 'GetCapabilities': geoserver_fetch($url, $_REQUEST['request']); break; default: geoserver_exception('Invalid request specified: ' . $_REQUEST['request']); }
curl_setopt($ch, CURLOPT_HEADER, false); if ($_SERVER['REQUEST_METHOD'] == 'POST') { curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); } $result = curl_exec($ch); if (!$result) { geoserver_exception(curl_error($ch)); } $header = curl_getinfo($ch, CURLINFO_CONTENT_TYPE); if (!empty($header)) { // Hack for geoserver stupidity. if (strstr($header, 'xml')) { header('Content-Type: application/xml'); } else { header('Content-Type: ' . $header); } } curl_close($ch); // Trick out any URLs in the result $result = str_replace('http://localhost:8080/geoserver/', '/geoserver/', $result); echo $result; } $url = 'http://localhost:8080/geoserver/wms'; if ($_SERVER['REQUEST_METHOD'] == 'POST') { $args = $_POST; } else { $args = $_GET; } geoserver_fetch($url, $args);