123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162 |
- window.addEventListener('DOMContentLoaded', () => {
- $('#loglevel').change(function() {
- $.post(OC.generateUrl('/settings/admin/log/level'), { level: $(this).val() }, () => {
- OC.Log.reload()
- })
- })
- $('#mail_smtpauth').change(function() {
- if (!this.checked) {
- $('#mail_credentials').addClass('hidden')
- } else {
- $('#mail_credentials').removeClass('hidden')
- }
- })
- $('#mail_smtpmode').change(function() {
- if ($(this).val() !== 'smtp') {
- $('#setting_smtpauth').addClass('hidden')
- $('#setting_smtphost').addClass('hidden')
- $('#mail_smtpsecure_label').addClass('hidden')
- $('#mail_smtpsecure').addClass('hidden')
- $('#mail_credentials').addClass('hidden')
- $('#mail_sendmailmode_label, #mail_sendmailmode').removeClass('hidden')
- } else {
- $('#setting_smtpauth').removeClass('hidden')
- $('#setting_smtphost').removeClass('hidden')
- $('#mail_smtpsecure_label').removeClass('hidden')
- $('#mail_smtpsecure').removeClass('hidden')
- if ($('#mail_smtpauth').is(':checked')) {
- $('#mail_credentials').removeClass('hidden')
- }
- $('#mail_sendmailmode_label, #mail_sendmailmode').addClass('hidden')
- }
- })
- const changeEmailSettings = function() {
- if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
- OC.PasswordConfirmation.requirePasswordConfirmation(changeEmailSettings)
- return
- }
- OC.msg.startSaving('#mail_settings_msg')
- $.ajax({
- url: OC.generateUrl('/settings/admin/mailsettings'),
- type: 'POST',
- data: $('#mail_general_settings_form').serialize(),
- success: () => {
- OC.msg.finishedSuccess('#mail_settings_msg', t('settings', 'Saved'))
- },
- error: (xhr) => {
- OC.msg.finishedError('#mail_settings_msg', xhr.responseJSON)
- },
- })
- }
- const toggleEmailCredentials = function() {
- if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
- OC.PasswordConfirmation.requirePasswordConfirmation(toggleEmailCredentials)
- return
- }
- OC.msg.startSaving('#mail_settings_msg')
- $.ajax({
- url: OC.generateUrl('/settings/admin/mailsettings/credentials'),
- type: 'POST',
- data: $('#mail_credentials_settings').serialize(),
- success: () => {
- OC.msg.finishedSuccess('#mail_settings_msg', t('settings', 'Saved'))
- },
- error: (xhr) => {
- OC.msg.finishedError('#mail_settings_msg', xhr.responseJSON)
- },
- })
- }
- $('#mail_general_settings_form').change(changeEmailSettings)
- $('#mail_credentials_settings_submit').click(toggleEmailCredentials)
- $('#mail_smtppassword').click(() => {
- if (this.type === 'text' && this.value === '********') {
- this.type = 'password'
- this.value = ''
- }
- })
- $('#sendtestemail').click((event) => {
- event.preventDefault()
- OC.msg.startAction('#sendtestmail_msg', t('settings', 'Sending…'))
- $.ajax({
- url: OC.generateUrl('/settings/admin/mailtest'),
- type: 'POST',
- success: () => {
- OC.msg.finishedSuccess('#sendtestmail_msg', t('settings', 'Email sent'))
- },
- error: (xhr) => {
- OC.msg.finishedError('#sendtestmail_msg', xhr.responseJSON)
- },
- })
- })
- const setupChecks = () => {
- // run setup checks then gather error messages
- $.when(
- OC.SetupChecks.checkSetup(),
- ).then((messages) => {
- const $el = $('#postsetupchecks')
- $('#security-warning-state-loading').addClass('hidden')
- let hasMessages = false
- const $errorsEl = $el.find('.errors')
- const $warningsEl = $el.find('.warnings')
- const $infoEl = $el.find('.info')
- for (let i = 0; i < messages.length; i++) {
- switch (messages[i].type) {
- case OC.SetupChecks.MESSAGE_TYPE_INFO:
- $infoEl.append('<li>' + messages[i].msg + '</li>')
- break
- case OC.SetupChecks.MESSAGE_TYPE_WARNING:
- $warningsEl.append('<li>' + messages[i].msg + '</li>')
- break
- case OC.SetupChecks.MESSAGE_TYPE_ERROR:
- default:
- $errorsEl.append('<li>' + messages[i].msg + '</li>')
- }
- }
- if ($errorsEl.find('li').length > 0) {
- $errorsEl.removeClass('hidden')
- hasMessages = true
- }
- if ($warningsEl.find('li').length > 0) {
- $warningsEl.removeClass('hidden')
- hasMessages = true
- }
- if ($infoEl.find('li').length > 0) {
- $infoEl.removeClass('hidden')
- hasMessages = true
- }
- if (hasMessages) {
- $('#postsetupchecks-hint').removeClass('hidden')
- if ($errorsEl.find('li').length > 0) {
- $('#security-warning-state-failure').removeClass('hidden')
- } else {
- $('#security-warning-state-warning').removeClass('hidden')
- }
- } else {
- const securityWarning = $('#security-warning')
- if (securityWarning.children('ul').children().length === 0) {
- $('#security-warning-state-ok').removeClass('hidden')
- } else {
- $('#security-warning-state-failure').removeClass('hidden')
- }
- }
- })
- }
- if (document.getElementById('security-warning') !== null) {
- setupChecks()
- }
- })
|