reuse existing custom profile file in editing session by passing id in URL
This commit is contained in:
parent
973d8bab75
commit
3c0765547c
3 changed files with 23 additions and 4 deletions
|
|
@ -52,6 +52,17 @@ BR.RoutingOptions = BR.Control.extend({
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
getCustomProfile: function() {
|
||||||
|
var select = L.DomUtil.get('profile'),
|
||||||
|
option = select.options[0],
|
||||||
|
profile = null;
|
||||||
|
|
||||||
|
if (!option.disabled) {
|
||||||
|
profile = option.value;
|
||||||
|
}
|
||||||
|
return profile;
|
||||||
|
},
|
||||||
|
|
||||||
_getChangeHandler: function() {
|
_getChangeHandler: function() {
|
||||||
return L.bind(function(evt) {
|
return L.bind(function(evt) {
|
||||||
this.fire('update', {options: this.getOptions()});
|
this.fire('update', {options: this.getOptions()});
|
||||||
|
|
|
||||||
|
|
@ -114,7 +114,8 @@
|
||||||
elevation = new BR.Elevation();
|
elevation = new BR.Elevation();
|
||||||
profile = new BR.Profile();
|
profile = new BR.Profile();
|
||||||
profile.on('update', function(evt) {
|
profile.on('update', function(evt) {
|
||||||
router.uploadProfile(evt.profileText, function(profile) {
|
var profileId = routingOptions.getCustomProfile();
|
||||||
|
router.uploadProfile(profileId, evt.profileText, function(profile) {
|
||||||
routingOptions.setCustomProfile(profile);
|
routingOptions.setCustomProfile(profile);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -92,9 +92,16 @@ L.BRouter = L.Class.extend({
|
||||||
return this.getRoute([l1, l2], cb);
|
return this.getRoute([l1, l2], cb);
|
||||||
},
|
},
|
||||||
|
|
||||||
uploadProfile: function(profileText, cb) {
|
uploadProfile: function(profileId, profileText, cb) {
|
||||||
var xhr = new XMLHttpRequest();
|
var url = L.BRouter.URL_PROFILE_UPLOAD;
|
||||||
xhr.open('POST', L.BRouter.URL_PROFILE_UPLOAD, true);
|
xhr = new XMLHttpRequest();
|
||||||
|
|
||||||
|
// reuse existing profile file
|
||||||
|
if (profileId) {
|
||||||
|
url += '/' + profileId;
|
||||||
|
}
|
||||||
|
|
||||||
|
xhr.open('POST', url, true);
|
||||||
xhr.onload = L.bind(this._handleProfileResponse, this, xhr, cb);
|
xhr.onload = L.bind(this._handleProfileResponse, this, xhr, cb);
|
||||||
|
|
||||||
// send profile text only, as text/plain;charset=UTF-8
|
// send profile text only, as text/plain;charset=UTF-8
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue