function OutputLayerInfo($layer, $resourceService, $featureService) { $mappings = GetLayerPropertyMappings($resourceService, $layer); if (!isset($_SESSION['property_mappings'])) { $_SESSION['property_mappings'] = array(); } $_SESSION['property_mappings'][$layer->GetObjectId()] = $mappings; $layerDefinition = $layer->GetLayerDefinition(); $aLayerTypes = GetLayerTypes($featureService, $layer); //echo '<pre>'; print_r($aLayerTypes); echo '</pre>'; exit; echo "propertyMappings:{"; $sep = ''; foreach ($mappings as $name => $value) { echo $sep . "'{$name}':'{$value}'"; $sep = ','; } echo "},"; echo "uniqueId:'" . $layer->GetObjectId() . "',"; echo "layerName:'" . addslashes($layer->GetName()) . "',"; echo 'layerTypes:['; $sep = ''; for ($j = 0; $j < count($aLayerTypes); $j++) { echo $sep . $aLayerTypes[$j]; $sep = ','; } echo '],'; echo "displayInLegend:" . BooleanToString($layer->GetDisplayInLegend()) . ","; echo "expandInLegend:" . BooleanToString($layer->GetExpandInLegend()) . ","; echo "resourceId:'" . $layerDefinition->ToString() . "',"; echo "parentGroup:"; echo $layer->GetGroup() ? "'" . $layer->GetGroup()->GetObjectId() . "'," : 'null,'; echo "legendLabel:'" . addslashes($layer->GetLegendLabel()) . "',"; echo "selectable:" . BooleanToString($layer->GetSelectable()) . ","; echo "visible:" . BooleanToString($layer->GetVisible()) . ","; echo "actuallyVisible:" . BooleanToString($layer->isVisible()) . ","; if (IsLayerEditable($resourceService, $layer)) { echo "editable:true,"; } else { echo "editable:false,"; } echo buildScaleRanges($layer); }
for ($i = 0; $i < $groups->GetCount(); $i++) { $group = $groups->GetItem($i); $layerDefinition = $layer->GetLayerDefinition(); echo '<group>'; echo '<groupname>' . htmlspecialchars($group->GetName()) . '</groupname>'; echo '<legendlabel>' . htmlspecialchars($group->GetLegendLabel()) . '</legendlabel>'; echo '<uniqueid>' . $group->GetObjectId() . '</uniqueid>'; echo '<displayinlegend>' . BooleanToString($group->GetDisplayInLegend()) . '</displayinlegend>'; echo '<expandinlegend>' . BooleanToString($group->GetExpandInLegend()) . '</expandinlegend>'; echo '<layergrouptype>' . $group->GetLayerGroupType() . '</layergrouptype>'; $parent = $group->GetGroup(); if ($parent) { echo '<parentuniqueid>' . $parent->GetObjectId() . '</parentuniqueid>'; } echo '<visible>' . BooleanToString($group->GetVisible()) . '</visible>'; echo '<actuallyvisible>' . BooleanToString($group->isVisible()) . '</actuallyvisible>'; echo '</group>'; } echo "</groupcollection>"; echo "</legend>"; function buildScaleRanges($layer) { global $resourceService; $resID = $layer->GetLayerDefinition(); $layerContent = $resourceService->GetResourceContent($resID); $xmldoc = new DOMDocument(); $xmldoc->loadXML(ByteReaderToString($layerContent)); $type = 0; $scaleRanges = $xmldoc->getElementsByTagName('VectorScaleRange'); if ($scaleRanges->length == 0) { $scaleRanges = $xmldoc->getElementsByTagName('GridScaleRange');