-/*
- * Get the URL prefix to use for a short link
- */
-function shortlinkPrefix() {
- if (window.location.hostname.match(/^www\.openstreetmap\.org/i)) {
- return "http://osm.org";
- } else {
- return "";
- }
-}
-
-/*
- * Called to get the arguments from a URL as a hash.
- */
-function getArgs(url) {
- var args = {};
- var querystart = url.indexOf("?");
-
- if (querystart >= 0) {
- var querystring = url.substring(querystart + 1);
- var queryitems = querystring.split("&");
-
- for (var i = 0; i < queryitems.length; i++) {
- if (match = queryitems[i].match(/^(.*)=(.*)$/)) {
- args[unescape(match[1])] = unescape(match[2]);
- } else {
- args[unescape(queryitems[i])] = null;
- }
- }
- }
-
- return args;
-}
-
-/*
- * Called to set the arguments on a URL from the given hash.
- */
-function setArgs(url, args) {
- var queryitems = [];
-
- for (arg in args) {
- if (args[arg] == null) {
- queryitems.push(escape(arg));
- } else {
- queryitems.push(escape(arg) + "=" + escape(args[arg]));
- }
- }
-
- return url.replace(/\?.*$/, "") + "?" + queryitems.join("&");
-}
-
-/*
- * Called to interlace the bits in x and y, making a Morton code.
- */
-function interlace(x, y) {
- x = (x | (x << 8)) & 0x00ff00ff;
- x = (x | (x << 4)) & 0x0f0f0f0f;
- x = (x | (x << 2)) & 0x33333333;
- x = (x | (x << 1)) & 0x55555555;
-
- y = (y | (y << 8)) & 0x00ff00ff;
- y = (y | (y << 4)) & 0x0f0f0f0f;
- y = (y | (y << 2)) & 0x33333333;
- y = (y | (y << 1)) & 0x55555555;
-
- return (x << 1) | y;
+// generate a cookie-safe string of map state
+function cookieContent(map) {
+ var center = map.getCenter().wrap();
+ return [center.lng, center.lat, map.getZoom(), map.getLayersCode()].join('|');