$val) { $_REQUEST[strtoupper($key)] = $val; } //validate request params if (!isset($_REQUEST['TYPE'])) { echo 'GET Parameter Type lacks'; die(); } if (isset($_REQUEST['TYPE']) and $_REQUEST['TYPE'] != "ALL") { echo 'validate: '.$_REQUEST['TYPE'].' is not valid.
'; die(); } $sql = "SELECT layer_id "; $sql .= "FROM ".$wmsView; //$sql .= "FROM layer WHERE layer_id IN (20203,20202)"; $v = array(); $t = array(); $res = db_prep_query($sql,$v,$t); $generatorScript = '/mapbender/php/mod_layerISOMetadata.php?'; $generatorScriptMetadata = '/mapbender/php/mod_dataISOMetadata.php?'; $generatorBaseUrl = 'http://'.$_SERVER['HTTP_HOST'].$generatorScript; $generatorBaseUrlMetadata = 'http://'.$_SERVER['HTTP_HOST'].$generatorScriptMetadata; $countLayer = 0; $countMetadataURL = 0; echo date('Y-m-d - H:i:s', time())."
"; //remove files from METADATA_DIR! if ($handle = opendir(METADATA_DIR)) { echo "Delete files from temporary metadata folder:
"; /* This is the correct way to loop over the directory. */ while (false !== ($file = readdir($handle))) { //check if file name begin with "mapbender"; $pos = strpos($file, "mapbender"); if ($pos !== false) { //delete file with unlink unlink(METADATA_DIR."/".$file); echo METADATA_DIR."/".$file." has been deleted!
"; } else { echo "$file will not be deleted!
"; } } closedir($handle); } echo "Begin to create new metadata: ".date('Y-m-d - H:i:s', time())."
"; while($row = db_fetch_array($res)){ $generatorUrl = $generatorBaseUrl."SERVICE=WMS&outputFormat=iso19139&id=".$row['layer_id']; echo "URL requested : ".$generatorUrl."
"; $generatorInterfaceObject = new connector($generatorUrl); $ISOFile = $generatorInterfaceObject->file; $layerId = $row['layer_id']; echo "File for layer ".$layerId." will be generated
"; //generate temporary files under tmp if($h = fopen(METADATA_DIR."/mapbenderServiceMetadata_".$layerId."_iso19139.xml","w")){ if(!fwrite($h,$ISOFile)){ $e = new mb_exception("mod_exportISOMetadata.php: cannot write to file: ".METADATA_DIR."/mapbenderLayerMetadata_".$row['layer_id']."_iso19139.xml"); } echo "Service metadata file for layer ".$layerId." written to ".METADATA_DIR."
"; fclose($h); } //get all connected metadata for this layer and save it too $sql = <<URL requested : ".$generatorUrlMetadata."
"; $generatorInterfaceObject = new connector($generatorUrlMetadata); $ISOFile = $generatorInterfaceObject->file; echo "Metadata uuid: ".$row_metadata['uuid']."
"; //generate temporary files under tmp if($h = fopen(METADATA_DIR."/mapbenderDataMetadata_".$layerId."_".$row_metadata['uuid']."_iso19139.xml","w")){ if(!fwrite($h,$ISOFile)){ $e = new mb_exception("mod_exportISOMetadata.php: cannot write to file: ".METADATA_DIR."/metadata/mapbenderMetadata_".$layerId."_".$row_metadata['uuid']."_iso19139.xml"); } echo "Data metadate file for layer ".$row['layer_id']." and metadata ".$row_metadata['uuid']." written to ".METADATA_DIR."
"; fclose($h); $countMetadataURL++; } } $countLayer++; } echo "Number of generated Service Metadata Records (one for each layer): ".$countLayer."
"; echo "Number of generated Data Metadata Records (multiple for each layer): ".$countMetadataURL."
"; echo date('Y-m-d - H:i:s', time())."
";