mirror of https://github.com/docker/docs.git
53 lines
1.7 KiB
JavaScript
Executable File
53 lines
1.7 KiB
JavaScript
Executable File
var getConfigVars = function ($form) {
|
|
var configVars = {};
|
|
$form.find('.env-var-pair').each(function () {
|
|
var envKey = $(this).find('.env-var-key').data('key');
|
|
var envVal = $(this).find('.env-var-value').data('value');
|
|
if (envKey) {
|
|
configVars[envKey] = envVal;
|
|
}
|
|
});
|
|
return configVars;
|
|
};
|
|
|
|
Template.dashboard_apps_settings.events({
|
|
'click .btn-delete-var': function (e) {
|
|
var $button = $(e.currentTarget);
|
|
$button.attr("disabled", "disabled");
|
|
var $form = $button.parents('.form-env-vars');
|
|
var appId = $button.data('app-id');
|
|
var envKey = $button.data('key');
|
|
var configVars = getConfigVars($form);
|
|
delete configVars[envKey];
|
|
Meteor.call('configVar', appId, configVars, function () {
|
|
$button.removeAttr('disabled');
|
|
});
|
|
},
|
|
'submit .form-env-vars': function (e) {
|
|
var $form = $(e.currentTarget);
|
|
var appId = this._id;
|
|
var configVars = getConfigVars($form);
|
|
var newKey = $form.find('input[name="env-var-key"]').val().trim();
|
|
var newVal = $form.find('input[name="env-var-value"]').val().trim();
|
|
if (newKey && newVal) {
|
|
configVars[newKey] = newVal;
|
|
Meteor.call('configVar', appId, configVars, function () {
|
|
$form.find('input[name="env-var-key"]').val('');
|
|
$form.find('input[name="env-var-value"]').val('');
|
|
});
|
|
}
|
|
e.preventDefault();
|
|
e.stopPropagation();
|
|
return false;
|
|
},
|
|
'click .btn-delete-app': function () {
|
|
var result = confirm("Are you sure you want to delete this app?");
|
|
if (result === true) {
|
|
Meteor.call('deleteApp', this._id, function (err) {
|
|
if (err) { throw err; }
|
|
});
|
|
Router.go('dashboard_apps');
|
|
}
|
|
}
|
|
});
|