<?php /* geoserver is so suck fantastic that * we need to manually exclude some tilelayers we dont want stored these are them */ $excludeTilelayers = array('ca_zip_5_Type', 'liberty_feature_type_Type'); // lets get started require_once '../../kernel/setup_inc.php'; require_once '../geoserver_lib.php'; require_once GMAP_PKG_PATH . 'BitGmap.php'; $gContent = new BitGmap(); // user must be gmap admin $gContent->verifyAdminPermission(); // url to graphserver $tileLayersUrl = BIT_BASE_URI . GEOSERVER_PKG_URL . 'rest/csv/tileLayers'; // get tileLayers XML that has everything we need $tileLayersXML = geoserverGetXML($tileLayersUrl); // for each layer get title, google url, and style url $layers = $tileLayersXML->getElementsByTagName('Layer'); foreach ($layers as $layer) { $title = $layer->getElementsByTagName('Title')->item(0)->nodeValue; // make sure we should be storing this one if (!in_array($title, $excludeTilelayers)) { $styleUrl = BIT_BASE_URI . $layer->getElementsByTagName('StyleUrl')->item(0)->nodeValue; $tileUrl = $layer->getElementsByTagName('GoolgeUrl')->item(0)->nodeValue; // regex off the xyz $tileUrl = preg_replace('/&zoom={Z}&x={X}&y={Y}/', '', $tileUrl); // get the styles from which we will make a style key for the tilelayer $keyRows = array(); $styleXML = geoserverGetXML($styleUrl); $rules = $styleXML->getElementsByTagName('Rule');