Example #1
0
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);
}
Example #2
0
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');