
var Folder=0;
var MapDate="120215pg";


var po = org.polymaps;

var map = po.map()
    .container(document.getElementById("map").appendChild(po.svg("svg")))
    .zoomRange([1, 8])
    .zoom(1)
	.tileSize({
		x: 512,
		y: 512
	})
//	.centerRange([{lat:-90, lon:-180},{lat:+90, lon:+550}])
	.center({lat:0, lon:0})
    .add(po.image().url(tilestache("{D}/IMG/z{Z}_{Y}_{X}.jpg")))
    .add(po.interact()) 
    .add(po.compass())
	.add(po.wheel())
	.add(po.hash());

/** Returns a TileStache URL template given a string. */
function tilestache(template) {
	
function getargs() {
var args =new Object();
var query =location.search.substring(1);
    
var pairs =query.split("&");
     
    for(var i = 0; i < pairs.length; i++) {
 	var pos = pairs[i].indexOf('='); 
    	if (pos == -1) continue;
		 
   	var argname = pairs[i].substring(0,pos); 
   	var value = pairs[i].substring(pos+1);
    	args[argname] = unescape(value); 
    }
    return args; 
}	

  function getFolder() {
  	if( Folder == 0 ){
		var args = getargs();
		if( args.m ) MapDate = args.m;

		if( args.f ) 
			Folder = "http://dl2.pilotplates.com/"+MapDate+"/"+args.f;
		else 
			Folder = "http://dl2.pilotplates.com/"+MapDate+"/SLSC";
	}
	return( Folder );
  }

  /** Pads the specified string to length n with character c. */
  function pad(s, n, c) {
    var m = n - s.length;
    return (m < 1) ? s : new Array(m + 1).join(c) + s;
  }

  /** Formats the specified number per TileStache. */
  function format(i) {
  	return( i + '' );
    var s = pad(String(i), 6, "0");
	  return s.substr(0, 3) + "/" + s.substr(3);
  }

  return function(c) {
	var args=getargs();
//    var max = 1 << c.zoom, column = c.column % max;
//    if (column < 0) column += max;
    return template.replace(/{(.)}/g, function(s, v) {
      switch (v) {
	  	case "D": return( getFolder() );
        case "Z": return Math.pow( 2, 8-c.zoom);
        case "X": return format(c.column);
        case "Y": return format(c.row);
      }
      return v;
    });
  };
}
