IsNull($property))
{
$val = FormText::NullProperty;
return $val;
}
switch ($propertyType) {
case MgPropertyType::Boolean :
$val = $featureReader->GetBoolean($property);
break;
case MgPropertyType::Byte :
$val = $featureReader->GetByte($property);
break;
case MgPropertyType::DateTime :
$dateTimeVal = $featureReader->GetDateTime($property);
if($dateTimeVal != NULL)
$val = PrintDateTime($dateTimeVal);
else
$val = NULL;
break;
case MgPropertyType::Single :
$val = $featureReader->GetSingle($property);
break;
case MgPropertyType::Double :
$val = $featureReader->GetDouble($property);
break;
case MgPropertyType::Int16 :
$val = $featureReader->GetInt16($property);
break;
case MgPropertyType::Int32 :
$val = $featureReader->GetInt32($property);
break;
case MgPropertyType::Int64 :
$val = $featureReader->GetInt64($property);
break;
case MgPropertyType::String :
$val = $featureReader->GetString($property);
break;
default : $val = NULL;
}
return $val;
}
function PrintDateTime($dT)
{
$dateTimeString = '';
if($dT->GetYear() != -1)
{
$dateTimeString .= $dT->GetYear() . '-';
$dateTimeString .= $dT->GetMonth() . '-';
$dateTimeString .= $dT->GetDay() . ' ';
}
if($dT->GetHour() != -1)
{
$dateTimeString .= $dT->GetHour() . ':';
$dateTimeString .= $dT->GetMinute() . ':';
$dateTimeString .= $dT->GetSecond() . '.';
$dateTimeString .= $dT->GetMicrosecond();
}
return $dateTimeString;
}
function CreateLayerDef($factory, $featureClass, $featureName, $geomName, $geomType)
{
$typeStyle = "";
$geomTypes = explode(' ', $geomType);
for($i=0;$i<(sizeof($geomTypes)-1);$i++)
{
switch ($geomTypes[$i]) {
case "point":
// Create a point rule
$color = LayerDef::PointColor;
$pointRule = $factory->CreatePointRule($color);
$typeStyle .= $factory->CreatePointTypeStyle($pointRule);
break;
case "curve":
// Create a line rule
$color = LayerDef::CurveColor;
$lineRule = $factory->CreateLineRule($color);
// Create a line type style
$typeStyle .= $factory->CreateLineTypeStyle($lineRule);
break;
case "surface":
// Create three area rules for thress different scale ranges
$color = LayerDef::SurfaceColor;
$areaRule = $factory->CreateAreaRule($color);
// Create an area type style
$typeStyle .= $factory->CreateAreaTypeStyle($areaRule);
break;
}
}
// Create a scale range
$minScale = LayerDef::MinScale;
$maxScale = LayerDef::MaxScale;
$scaleRange = $factory->CreateScaleRange($minScale, $maxScale, $typeStyle);
$layerDefinition = $factory->CreateLayerDefinition($featureClass, $featureName, $geomName, $scaleRange);
return $layerDefinition;
}
function CreateMapDef($factory, $className, $resId, $coordinate, $minX, $maxX, $minY, $maxY)
{
// Inputs for Extents
$extents = $factory->CreateExtents($minX, $maxX, $minY, $maxY);
// Inputs for MapLayer
$layerName = $className;
$selectable = MapDef::Selectable;
$showLegend = MapDef::ShowLegend;
$legendLabel = $className;
$expandLegend = MapDef::ExpandLegend;
$visible = MapDef::Visible;
$groupName = MapDef::GroupName;
$mapLayer = $factory->CreateMapLayer($layerName, $resId, $selectable, $showLegend, $legendLabel, $expandLegend, $visible, $groupName);
// Inputs for MapLayerGroup
$groupName = MapDef::GroupName;
$visible = MapDef::Visible;
$showLegend = MapDef::ShowLegend;
$expandLegend = MapDef::ExpandLegend;
$legendLabel = MapDef::LegendLabel;
$mapLayerGroup = $factory->CreateMapLayerGroup($groupName, $visible, $showLegend, $expandLegend, $legendLabel);
// Inputs for MapDefinition
$mapName = MapDef::MapName;
$backgroundColor = MapDef::BgColor;
$mapDefinition = $factory->CreateMapDefinition($mapName, $coordinate, $extents, $backgroundColor, $mapLayer, $mapLayerGroup);
return $mapDefinition;
}
function CreateWebLay($factory, $resId, $useBasicViewer)
{
// Inputs for WebLayout
$layoutName = WebLay::LayoutName;
$webLayout = $factory->CreateWebLayout($layoutName, $resId, $useBasicViewer);
return $webLayout;
}
function DisplayPaging($index, $resName, $schemaName, $className, $sessionId, $maxEntries, $currentPage, $maxPage, $lastEntry)
{
// Display paging
if($index!=0)
{
echo '<<' . PageNavigation::First . '';
echo ' ';
echo '<' . PageNavigation::Prev . '';
}
else
echo '<<' . PageNavigation::First . '   <' . PageNavigation::Prev;
echo ' ' . sprintf(PageNavigation::Current, $currentPage, $maxPage) . ' ';
if($currentPage<$maxPage)
{
echo '' . PageNavigation::Next . '>';
echo ' ';
echo '' . PageNavigation::Last . '>>';
}
else
echo PageNavigation::Next . '> ' . PageNavigation::Last . '>>';
}
?>