<?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');