[:space:]]+[[:alnum:]/]", "\\0", $string);
$string = mb_eregi_replace("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@([0-9a-z](-?[0-9a-z])*\.)+[a-z]{2}([zmuvtg]|fo|me)?$", "\\0", $string);
$string = mb_eregi_replace("\n", "
", $string);
return $string;
}
function getEpsgByLayerId ($layer_id) { // from merge_layer.php
$epsg_list = "";
$sql = "SELECT DISTINCT epsg FROM layer_epsg WHERE fkey_layer_id = $1";
$v = array($layer_id);
$t = array('i');
$res = db_prep_query($sql, $v, $t);
while($row = db_fetch_array($res)){
$epsg_list .= $row['epsg'] . " ";
}
return trim($epsg_list);
}
$metadataStr = "";
$metadataStr .= '' .
'
' .
'Metadaten' .
''.
'' .
''.
''.
''.
''.
''.
'' .
'' .
''.
'';
$layer_id = htmlentities($_GET['id'], ENT_QUOTES);
$wms_getmap = urldecode($_GET['wms']);
$layer_name = urldecode($_GET['name']);
if ($layer_id) {
$sql = "SELECT ";
$sql .= "layer.layer_id, layer.layer_title, layer.layer_abstract, layer.layer_pos, layer.layer_parent, ";
$sql .= "layer.layer_minscale, layer.layer_maxscale, layer_dataurl, layer_metadataurl, ";
$sql .= "wms.wms_title, wms.wms_abstract, wms.wms_id, wms.fees, wms.accessconstraints, wms.contactperson, ";
$sql .= "wms.contactposition, wms.contactorganization, wms.address, wms.city, wms_timestamp, wms_owner, ";
$sql .= "wms.stateorprovince, wms.postcode, wms.contactvoicetelephone, wms.contactfacsimiletelephone, ";
$sql .= "wms.contactelectronicmailaddress, wms.country ";
$sql .= "FROM layer, wms WHERE layer.layer_id = $1 AND layer.fkey_wms_id = wms.wms_id LIMIT 1";
$v = array($layer_id);
$t = array('i');
}
else if ($wms_getmap && $layer_name) {
$sql = "SELECT ";
$sql .= "layer.layer_id, layer.layer_title, layer.layer_abstract, layer.layer_pos, layer.layer_parent, ";
$sql .= "layer.layer_minscale, layer.layer_maxscale, layer_dataurl, layer_metadataurl, ";
$sql .= "wms.wms_title, wms.wms_abstract, wms.wms_id, wms.fees, wms.accessconstraints, wms.contactperson, ";
$sql .= "wms.contactposition, wms.contactorganization, wms.address, wms.city, wms_timestamp, wms_owner, ";
$sql .= "wms.stateorprovince, wms.postcode, wms.contactvoicetelephone, wms.contactfacsimiletelephone, ";
$sql .= "wms.contactelectronicmailaddress, wms.country ";
$sql .= "FROM layer, wms WHERE layer.layer_pos <> 0 AND layer.layer_name = $1 AND layer.fkey_wms_id = wms.wms_id AND wms.wms_getmap LIKE $2 LIMIT 1";
$v = array($layer_name, $wms_getmap."%");
$t = array('s', 's');
}
else die("layer not specified!");
$res = db_prep_query($sql,$v,$t);
$metadataStr .= db_error();
$layer = array();
$row = db_fetch_array($res);
$layer_id = $row['layer_id'];
$sql_dep = "SELECT mb_group_name FROM mb_group AS a, mb_user AS b, mb_user_mb_group AS c WHERE b.mb_user_id = $1 AND b.mb_user_id = c.fkey_mb_user_id AND c.fkey_mb_group_id = a.mb_group_id AND b.mb_user_department = a.mb_group_description LIMIT 1";
$v_dep = array($row['wms_owner']);
$t_dep = array('i');
$res_dep = db_prep_query($sql_dep, $v_dep, $t_dep);
$row_dep = db_fetch_array($res_dep);
$layer['ID'] = $row['layer_id'];
$layer['Titel'] = $row['layer_title'];
$layer['Zusammenfassung'] = $row['layer_abstract'];
if ($row['layer_pos'] || $row['layer_parent']) {
if ($row['layer_minscale'] > 0)
{
$layer['Minscale'] = "1 : ". $row['layer_minscale'];
}
else
{$layer['Minscale'] = "-";}
if ($row['layer_maxscale'] > 0)
{
$layer['Maxscale'] = "1 : ". $row['layer_maxscale'];
}
else
{$layer['Maxscale'] = "-";}
}
$layer['Koordinatensysteme'] = preg_replace("/ /", ", ", getEpsgByLayerId($row['layer_id']));
// $layer['Capabilities-Dokument'] = "Capabilities-Dokument";
if ($row['wms_timestamp']) {
$layer['Datum der Registrierung'] = date("d.m.Y",$row['wms_timestamp']);
}
else {
$layer['Datum der Registrierung'] = "Keine Angabe";
}
$layer['Registrierende Stelle'] = $row_dep['mb_group_name'];
$layer['WMS ID'] = $row['wms_id'];
$layer['WMS Titel'] = $row['wms_title'];
$layer['WMS Zusammenfassung'] = $row['wms_abstract'];
$layer['Gebühren'] = $row['fees'];
$layer['Zugriffsbeschränkung'] = $row['accessconstraints'];
$layer['Ansprechpartner'] = $row['contactperson'];
$layer['Organisation'] = $row['contactorganization'];
$layer['Adresse'] = $row['address'];
$layer['Stadt'] = $row['city'];
$layer['Bundesland'] = $row['stateorprovince'];
$layer['PLZ'] = $row['postcode'];
$layer['Telefon'] = $row['contactvoicetelephone'];
$layer['Fax'] = $row['contactfacsimiletelephone'];
$layer['E-Mail'] = $row['contactelectronicmailaddress'];
$layer['Land'] = $row['country'];
$layer['Metadaten'] = $row['layer_metadataurl'];
$metadataUrl = $row['layer_metadataurl'];
if ($layer['Metadaten'] && $redirectToMetadataUrl) {
header("Location: " . $layer['Metadaten']);
}
else {
$metadataStr .= "\n";
$t_a = "\t\n\t\t\n\t\t\t";
$t_b = "\n\t\t | \n\t\t\n\t\t\t";
$t_c = "\n\t\t | \n\t
\n";
$keys = array_keys($layer);
for ($j=0; $j 0";
$v = array($wms_id);
$t = array('i');
$res = db_prep_query($sql,$v,$t);
$i=0;
$layer = array();
while ($row = db_fetch_array($res)) {
$layer[$i] = array();
$layer[$i]['Titel'] = $row['layer_title'];
$layer[$i]['id'] = $row['layer_id'];
$i++;
}
$metadataStr .= "Ebenen | ";
for ($i=0; $i0) $metadataStr .= ", ";
$metadataStr .= "" . $layer[$i]['Titel'] . "";
}
}
$metadataStr .= " |
---|
\n";
$metadataStr .= '';
echo $metadataStr;
}
?>