diff --git a/share/jupyter/static/js/jhapi.js b/share/jupyter/static/js/jhapi.js index 9770d736..1e7cf0f1 100644 --- a/share/jupyter/static/js/jhapi.js +++ b/share/jupyter/static/js/jhapi.js @@ -45,9 +45,7 @@ define(['jquery', 'utils'], function ($, utils) { JHAPI.prototype.start_server = function (user, options) { options = options || {}; - options.update({ - type: 'POST', - }); + options = update(options, {type: 'POST', dataType: null}); this.api_request( utils.url_path_join('users', user, 'server'), options @@ -55,9 +53,8 @@ define(['jquery', 'utils'], function ($, utils) { }; JHAPI.prototype.stop_server = function (user, options) { - options = update(options || {}, { - type: 'DELETE', - }); + options = options || {}; + options = update(options, {type: 'DELETE', dataType: null}); this.api_request( utils.url_path_join('users', user, 'server'), options @@ -75,10 +72,37 @@ define(['jquery', 'utils'], function ($, utils) { ); }; - JHAPI.prototype.delete_user = function (user, options) { - options = update(options || {}, { - type: 'DELETE', + JHAPI.prototype.add_user = function (user, userinfo, options) { + options = options || {}; + options = update(options, { + type: 'POST', + dataType: null, + data: JSON.stringify(userinfo) }); + + this.api_request( + utils.url_path_join('users', user), + options + ); + }; + + JHAPI.prototype.edit_user = function (user, userinfo, options) { + options = options || {}; + options = update(options, { + type: 'PATCH', + dataType: null, + data: JSON.stringify(userinfo) + }); + + this.api_request( + utils.url_path_join('users', user), + options + ); + }; + + JHAPI.prototype.delete_user = function (user, options) { + options = options || {}; + options = update(options, {type: 'DELETE', dataType: null}); this.api_request( utils.url_path_join('users', user), options diff --git a/share/jupyter/templates/admin.html b/share/jupyter/templates/admin.html index 6a8a700c..3a8cd30e 100644 --- a/share/jupyter/templates/admin.html +++ b/share/jupyter/templates/admin.html @@ -3,11 +3,113 @@ {% block main %}
Users | +|||
---|---|---|---|
{{user.name}} | +{% if user.admin %}admin{% endif %} | ++ {% if user.server %} + stop server + {% else %} + start server + {% endif %} + | ++ edit + delete + | +
+ Add User + | +