Просмотр исходного кода

fixed namespace uri for feature.xsd, fixed getCapabilities return value, added missing default objects

Piotr Labudda 9 лет назад
Родитель
Сommit
f6149806a1
1 измененных файлов с 13 добавлено и 25 удалено
  1. 13 25
      SE/se-lib/Api/WfsServerBase.php

+ 13 - 25
SE/se-lib/Api/WfsServerBase.php

@@ -3,6 +3,7 @@
 Lib::loadClass('Api_WfsException');
 Lib::loadClass('Api_WfsGeomTypeConverter');
 Lib::loadClass('Api_WfsNs');
+Lib::loadClass('Request');
 
 class Api_WfsServerBase {
 
@@ -435,6 +436,7 @@ class Api_WfsServerBase {
   </ogc:Filter_Capabilities>
 </WFS_Capabilities>
 		<?php
+		exit;
 	}
 
 	public function _getXmlSchemaLocation() {
@@ -606,34 +608,20 @@ class Api_WfsServerBase {
 			$featureTypes[$tblName] = $featureType;
 		}
 
-		{// add p5_objects:File
-			Lib::loadClass('FileStorage');
+		function __generateObjectFeatureType($name) {
 			$featureType = array();
 			$featureType['ns'] = "p5_objects";
-			$featureType['Title'] = "Pliki";
-			$featureType['Abstract'] = "Pliki";
-			$featureType['Keywords'] = "Pliki";
+			$featureType['Title'] = $name;
+			$featureType['Abstract'] = $name;
+			$featureType['Keywords'] = $name;
 			$featureType['SRS'] = "EPSG:4326";
-			$featureTypes['File'] = $featureType;
-		}
-		{// add p5_objects:File
-			$featureType = array();
-			$featureType['ns'] = "p5_objects";
-			$featureType['Title'] = "TestPerms";
-			$featureType['Abstract'] = "TestPerms";
-			$featureType['Keywords'] = "TestPerms";
-			$featureType['SRS'] = "EPSG:4326";
-			$featureTypes['TestPerms'] = $featureType;
-		}
-		{// add p5_objects:File
-			$featureType = array();
-			$featureType['ns'] = "p5_objects";
-			$featureType['Title'] = "Korespondencja";
-			$featureType['Abstract'] = "Korespondencja";
-			$featureType['Keywords'] = "Korespondencja";
-			$featureType['SRS'] = "EPSG:4326";
-			$featureTypes['Korespondencja'] = $featureType;
+			return $featureType;
 		}
+		$featureTypes['AccessOwner'] = __generateObjectFeatureType("AccessOwner");
+		$featureTypes['AccessGroup'] = __generateObjectFeatureType("AccessGroup");
+		$featureTypes['File'] = __generateObjectFeatureType("Pliki");
+		$featureTypes['Korespondencja'] = __generateObjectFeatureType("Korespondencja");
+		$featureTypes['TestPerms'] = __generateObjectFeatureType("TestPerms");
 		/*
 			<FeatureType>
 				<Name>ppr06:AMBITIPAESAGGIO</Name>
@@ -1395,7 +1383,7 @@ if($DBG){echo 'L.' . __LINE__ . ' $validateConvertedTransactionXsdString:';print
 			$elNode = $dom->createElementNS('http://www.w3.org/2001/XMLSchema', 'xsd:import');
 			$rootNode->appendChild($elNode);
 			$elNode->setAttribute('namespace', "http://www.opengis.net/gml");
-			$elNode->setAttribute('schemaLocation', $this->getBaseUri() . "/../../../schema/gml/2.1.2/feature.xsd");
+			$elNode->setAttribute('schemaLocation', Request::getPathUri() . "schema/gml/2.1.2/feature.xsd");
 		}
 
 		foreach ($typeNames as $typeNameEx) {