/** * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ import $ from 'jquery' import { translate as t } from '@nextcloud/l10n' import { getToken } from './OC/requesttoken.js' import getURLParameter from './Util/get-url-parameter.js' import './jquery/showpassword.js' import 'jquery-ui/ui/widgets/button.js' import 'jquery-ui/themes/base/theme.css' import 'jquery-ui/themes/base/button.css' import 'strengthify' import 'strengthify/strengthify.css' window.addEventListener('DOMContentLoaded', function() { const dbtypes = { sqlite: !!$('#hasSQLite').val(), mysql: !!$('#hasMySQL').val(), postgresql: !!$('#hasPostgreSQL').val(), oracle: !!$('#hasOracle').val(), } $('#selectDbType').buttonset() // change links inside an info box back to their default appearance $('#selectDbType p.info a').button('destroy') if ($('#hasSQLite').val()) { $('#use_other_db').hide() $('#use_oracle_db').hide() } else { $('#sqliteInformation').hide() } $('#adminlogin').change(function() { $('#adminlogin').val($.trim($('#adminlogin').val())) }) $('#sqlite').click(function() { $('#use_other_db').slideUp(250) $('#use_oracle_db').slideUp(250) $('#sqliteInformation').show() $('#dbname').attr('pattern', '[0-9a-zA-Z$_-]+') }) $('#mysql,#pgsql').click(function() { $('#use_other_db').slideDown(250) $('#use_oracle_db').slideUp(250) $('#sqliteInformation').hide() $('#dbname').attr('pattern', '[0-9a-zA-Z$_-]+') }) $('#oci').click(function() { $('#use_other_db').slideDown(250) $('#use_oracle_db').show(250) $('#sqliteInformation').hide() $('#dbname').attr('pattern', '[0-9a-zA-Z$_-.]+') }) $('#showAdvanced').click(function(e) { e.preventDefault() $('#datadirContent').slideToggle(250) $('#databaseBackend').slideToggle(250) $('#databaseField').slideToggle(250) }) $('form').submit(function() { // Save form parameters const post = $(this).serializeArray() // Show spinner while finishing setup $('.float-spinner').show(250) // Disable inputs $('input[type="submit"]').attr('disabled', 'disabled').val($('input[type="submit"]').data('finishing')) $('input', this).addClass('ui-state-disabled').attr('disabled', 'disabled') // only disable buttons if they are present if ($('#selectDbType').find('.ui-button').length > 0) { $('#selectDbType').buttonset('disable') } $('.strengthify-wrapper, .tipsy') .css('filter', 'alpha(opacity=30)') .css('opacity', 0.3) // Create the form const form = $('