PLT-3237 Update displayed config values in admin console after saving (#3506)

* Reloaded admin console data when settings are saved

* Fixed attempting to save an invalid config setting overwriting the stored config
Этот коммит содержится в:
Harrison Healey
2016-07-06 16:07:56 -04:00
коммит произвёл GitHub
родитель b1520d0b94
Коммит b114062c1b
30 изменённых файлов: 327 добавлений и 256 удалений

Просмотреть файл

@@ -24,27 +24,6 @@ export default class SamlSettings extends AdminSettings {
this.renderSettings = this.renderSettings.bind(this);
this.uploadCertificate = this.uploadCertificate.bind(this);
this.removeCertificate = this.removeCertificate.bind(this);
const settings = props.config.SamlSettings;
this.state = Object.assign(this.state, {
enable: settings.Enable,
verify: settings.Verify,
encrypt: settings.Encrypt,
idpUrl: settings.IdpUrl,
idpDescriptorUrl: settings.IdpDescriptorUrl,
assertionConsumerServiceURL: settings.AssertionConsumerServiceURL,
idpCertificateFile: settings.IdpCertificateFile,
publicCertificateFile: settings.PublicCertificateFile,
privateKeyFile: settings.PrivateKeyFile,
firstNameAttribute: settings.FirstNameAttribute,
lastNameAttribute: settings.LastNameAttribute,
emailAttribute: settings.EmailAttribute,
usernameAttribute: settings.UsernameAttribute,
nicknameAttribute: settings.NicknameAttribute,
localeAttribute: settings.LocaleAttribute,
loginButtonText: settings.LoginButtonText
});
}
getConfigFromState(config) {
@@ -68,6 +47,29 @@ export default class SamlSettings extends AdminSettings {
return config;
}
getStateFromConfig(config) {
const settings = config.SamlSettings;
return {
enable: settings.Enable,
verify: settings.Verify,
encrypt: settings.Encrypt,
idpUrl: settings.IdpUrl,
idpDescriptorUrl: settings.IdpDescriptorUrl,
assertionConsumerServiceURL: settings.AssertionConsumerServiceURL,
idpCertificateFile: settings.IdpCertificateFile,
publicCertificateFile: settings.PublicCertificateFile,
privateKeyFile: settings.PrivateKeyFile,
firstNameAttribute: settings.FirstNameAttribute,
lastNameAttribute: settings.LastNameAttribute,
emailAttribute: settings.EmailAttribute,
usernameAttribute: settings.UsernameAttribute,
nicknameAttribute: settings.NicknameAttribute,
localeAttribute: settings.LocaleAttribute,
loginButtonText: settings.LoginButtonText
};
}
uploadCertificate(id, file, callback) {
Client.uploadCertificateFile(
file,