diff --git a/setup/flavors/compose/mailu.env b/setup/flavors/compose/mailu.env index 29b1c124..bb500073 100644 --- a/setup/flavors/compose/mailu.env +++ b/setup/flavors/compose/mailu.env @@ -165,7 +165,10 @@ REJECT_UNLISTED_RECIPIENT={{ reject_unlisted_recipient }} # Database settings ################################### DB_FLAVOR={{ db_flavor }} -{% if postgresql == 'external' %} +{% if db_flavor == 'postgresql' and postgresql == 'internal' %} +DB_PW={{ secret(16) }} +{% endif %} +{% if postgresql == 'external' or db_flavor == 'mysql' %} DB_USER={{ db_user }} DB_PW={{ db_pw }} DB_URL={{ db_url }} diff --git a/setup/static/render.js b/setup/static/render.js index 2a265139..23afcbec 100644 --- a/setup/static/render.js +++ b/setup/static/render.js @@ -36,8 +36,10 @@ $(document).ready(function() { $(document).ready(function() { if ($("#database").val() == 'sqlite') { $("#postgres_db").hide(); - } else { + } else if ($("#database").val() == 'postgresql') { $("#postgres_db").show(); + } else if ($("#database").val() == 'mysql') { + $("#external_db").show(); } if ($('#external_psql').prop('checked')) { $("#external_db").show(); @@ -45,8 +47,18 @@ $(document).ready(function() { $("#database").click(function() { if (this.value == 'sqlite') { $("#postgres_db").hide(); - } else { + $("#external_db").hide(); + } else if (this.value == 'postgresql') { $("#postgres_db").show(); + $("#external_db").hide(); + $("#external_db").prop('checked', false); + } else if (this.value == 'mysql') { + $("#postgres_db").hide(); + $("#external_db").show(); + $("#db_user").prop('required',true); + $("#db_pw").prop('required',true); + $("#db_url").prop('required',true); + $("#db_name").prop('required',true); } }); $("#external_psql").change(function() { diff --git a/setup/templates/steps/database.html b/setup/templates/steps/database.html index 811be2e0..af5334cc 100644 --- a/setup/templates/steps/database.html +++ b/setup/templates/steps/database.html @@ -4,7 +4,7 @@
@@ -23,16 +23,17 @@
- + +