##// END OF EJS Templates
Move js donc into function themselves....
Move js donc into function themselves. Then it is possible in the browser js console to get the documentation interactively.

File last commit:

r18878:463c49d0
r19102:aeda5b0e
Show More
config.js
67 lines | 1.9 KiB | application/javascript | JavascriptLexer
Thomas Kluyver
Add JS config API
r18866 // Copyright (c) IPython Development Team.
// Distributed under the terms of the Modified BSD License.
define([
'jquery',
'base/js/utils',
],
function($, utils) {
var ConfigSection = function(section_name, options) {
this.section_name = section_name;
this.base_url = options.base_url;
this.data = {};
var that = this;
/* .loaded is a promise, fulfilled the first time the config is loaded
* from the server. Code can do:
* conf.loaded.then(function() { ... using conf.data ... });
*/
this._one_load_finished = false;
this.loaded = new Promise(function(resolve, reject) {
that._finish_firstload = resolve;
});
};
ConfigSection.prototype.api_url = function() {
Thomas Kluyver
Fix some other bugs
r18878 return utils.url_join_encode(this.base_url, 'api/config', this.section_name);
Thomas Kluyver
Add JS config API
r18866 };
ConfigSection.prototype._load_done = function() {
if (!this._one_load_finished) {
this._one_load_finished = true;
this._finish_firstload();
}
};
ConfigSection.prototype.load = function() {
Thomas Kluyver
Fix some other bugs
r18878 var that = this;
Thomas Kluyver
Use promising_ajax in config API
r18868 return utils.promising_ajax(this.api_url(), {
cache: false,
type: "GET",
dataType: "json",
}).then(function(data) {
Thomas Kluyver
Fix some other bugs
r18878 that.data = data;
that._load_done();
Thomas Kluyver
Use promising_ajax in config API
r18868 return data;
Thomas Kluyver
Add JS config API
r18866 });
};
ConfigSection.prototype.update = function(newdata) {
Thomas Kluyver
Fix some other bugs
r18878 var that = this;
Thomas Kluyver
Use promising_ajax in config API
r18868 return utils.promising_ajax(this.api_url(), {
processData: false,
type : "PATCH",
data: JSON.stringify(newdata),
dataType : "json",
contentType: 'application/json',
}).then(function(data) {
Thomas Kluyver
Fix some other bugs
r18878 that.data = data;
that._load_done();
Thomas Kluyver
Use promising_ajax in config API
r18868 return data;
Thomas Kluyver
Add JS config API
r18866 });
};
Thomas Kluyver
Actually define the module...
r18876
return {ConfigSection: ConfigSection};
Thomas Kluyver
Add JS config API
r18866
});