store state in hash
This commit is contained in:
parent
e8c2d4d85f
commit
a24f01eba0
29
index.html
29
index.html
@ -118,7 +118,25 @@
|
|||||||
var torqueLayer;
|
var torqueLayer;
|
||||||
var ui;
|
var ui;
|
||||||
var editor;
|
var editor;
|
||||||
var DEFAULT_CARTOCSS = $('#default-style').html();
|
var state = location.hash ? JSON.parse(atob(location.hash.substring(1))): {};
|
||||||
|
var DEFAULT_CARTOCSS = state.cartocss || $('#default-style').html();
|
||||||
|
|
||||||
|
function saveState() {
|
||||||
|
location.hash = btoa(JSON.stringify({
|
||||||
|
cartocss: editor.getValue(),
|
||||||
|
options: _.pick(torqueLayer.options,
|
||||||
|
'user',
|
||||||
|
'table',
|
||||||
|
'column',
|
||||||
|
'is_time',
|
||||||
|
'countby',
|
||||||
|
'resolution',
|
||||||
|
'steps',
|
||||||
|
'animationDuration'
|
||||||
|
)
|
||||||
|
}))
|
||||||
|
}
|
||||||
|
|
||||||
function init_torque(map, options) {
|
function init_torque(map, options) {
|
||||||
// init torque layer
|
// init torque layer
|
||||||
torqueLayer = new torque.GMapsTorqueLayer(_.extend({
|
torqueLayer = new torque.GMapsTorqueLayer(_.extend({
|
||||||
@ -190,6 +208,7 @@
|
|||||||
torqueLayer = null;
|
torqueLayer = null;
|
||||||
}
|
}
|
||||||
init_torque(map, TorqueOptions);
|
init_torque(map, TorqueOptions);
|
||||||
|
saveState();
|
||||||
}
|
}
|
||||||
}, 'update');
|
}, 'update');
|
||||||
|
|
||||||
@ -199,7 +218,8 @@
|
|||||||
editor = CodeMirror.fromTextArea(textarea, { mode: "text/css" });
|
editor = CodeMirror.fromTextArea(textarea, { mode: "text/css" });
|
||||||
editor.on('change', _.debounce(function() {
|
editor.on('change', _.debounce(function() {
|
||||||
window.torqueLayer.setCartoCSS(editor.getValue());
|
window.torqueLayer.setCartoCSS(editor.getValue());
|
||||||
}, 250))
|
saveState();
|
||||||
|
}, 500))
|
||||||
}
|
}
|
||||||
editor
|
editor
|
||||||
|
|
||||||
@ -234,6 +254,7 @@
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
function initialize() {
|
function initialize() {
|
||||||
|
|
||||||
// initialise the google map
|
// initialise the google map
|
||||||
@ -256,7 +277,9 @@
|
|||||||
map.setMapTypeId(google.maps.MapTypeId.ROADMAP);
|
map.setMapTypeId(google.maps.MapTypeId.ROADMAP);
|
||||||
map.setOptions({ styles: gmaps_style });
|
map.setOptions({ styles: gmaps_style });
|
||||||
|
|
||||||
init_torque(map);
|
|
||||||
|
|
||||||
|
init_torque(map, state.options);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user