diff --git a/Containers/talk-recording/Dockerfile b/Containers/talk-recording/Dockerfile index 2b49ad291a6..26d568b14ad 100644 --- a/Containers/talk-recording/Dockerfile +++ b/Containers/talk-recording/Dockerfile @@ -17,6 +17,7 @@ RUN set -ex; \ git \ wget \ shadow \ + pulseaudio \ openssl; \ # chromium chromium-chromedriver? apk add --no-cache geckodriver --repository http://dl-cdn.alpinelinux.org/alpine/edge/testing; \ @@ -28,13 +29,14 @@ RUN set -ex; \ python3 -m pip install /src/recording/src; \ rm -rf /src; \ chown recording:recording -R \ - /tmp; \ + /tmp /etc/recording.conf; \ apk del --no-cache \ git \ wget \ shadow \ openssl; +WORKDIR /tmp USER recording ENTRYPOINT ["/start.sh"] CMD ["python", "-m", "nextcloud.talk.recording", "--config", "/etc/recording.conf"] diff --git a/php/public/automatic_reload.js b/php/public/automatic_reload.js index c8201c64c08..2fef31a699c 100644 --- a/php/public/automatic_reload.js +++ b/php/public/automatic_reload.js @@ -1,7 +1,7 @@ if (document.hasFocus()) { // hide reload button if the site reloads automatically - var list = document.getElementsByClassName("reload button"); - for (var i = 0; i < list.length; i++) { + let list = document.getElementsByClassName("reload button"); + for (let i = 0; i < list.length; i++) { // list[i] is a node with the desired class name list[i].style.display = 'none'; } diff --git a/php/public/disable-clamav.js b/php/public/disable-clamav.js index ae2d003c8a1..18b080811cc 100644 --- a/php/public/disable-clamav.js +++ b/php/public/disable-clamav.js @@ -1,5 +1,5 @@ document.addEventListener("DOMContentLoaded", function(event) { // Clamav - var clamav = document.getElementById("clamav"); + let clamav = document.getElementById("clamav"); clamav.disabled = true; }); \ No newline at end of file diff --git a/php/public/disable-collabora.js b/php/public/disable-collabora.js index d6a4ce02d0c..3064ef518ff 100644 --- a/php/public/disable-collabora.js +++ b/php/public/disable-collabora.js @@ -1,5 +1,5 @@ document.addEventListener("DOMContentLoaded", function(event) { // Collabora - var collabora = document.getElementById("collabora"); + let collabora = document.getElementById("collabora"); collabora.disabled = true; }); \ No newline at end of file diff --git a/php/public/disable-fulltextsearch.js b/php/public/disable-fulltextsearch.js index de614bf52e0..d3ca21feccc 100644 --- a/php/public/disable-fulltextsearch.js +++ b/php/public/disable-fulltextsearch.js @@ -1,5 +1,5 @@ document.addEventListener("DOMContentLoaded", function(event) { // Fulltextsearch - var fulltextsearch = document.getElementById("fulltextsearch"); + let fulltextsearch = document.getElementById("fulltextsearch"); fulltextsearch.disabled = true; }); \ No newline at end of file diff --git a/php/public/disable-imaginary.js b/php/public/disable-imaginary.js index 0f7787c9fa8..9cdec5fa471 100644 --- a/php/public/disable-imaginary.js +++ b/php/public/disable-imaginary.js @@ -1,5 +1,5 @@ document.addEventListener("DOMContentLoaded", function(event) { // Imaginary - var imaginary = document.getElementById("imaginary"); + let imaginary = document.getElementById("imaginary"); imaginary.disabled = true; }); \ No newline at end of file diff --git a/php/public/disable-onlyoffice.js b/php/public/disable-onlyoffice.js index f9c7eebc66b..834823391be 100644 --- a/php/public/disable-onlyoffice.js +++ b/php/public/disable-onlyoffice.js @@ -1,6 +1,6 @@ document.addEventListener("DOMContentLoaded", function(event) { // OnlyOffice - var onlyoffice = document.getElementById("onlyoffice"); + let onlyoffice = document.getElementById("onlyoffice"); if (onlyoffice) { onlyoffice.disabled = true; } diff --git a/php/public/disable-talk.js b/php/public/disable-talk.js index 7b4a871954a..c37d72af4ca 100644 --- a/php/public/disable-talk.js +++ b/php/public/disable-talk.js @@ -1,5 +1,5 @@ document.addEventListener("DOMContentLoaded", function(event) { // Talk - var talk = document.getElementById("talk"); + let talk = document.getElementById("talk"); talk.disabled = true; }); \ No newline at end of file diff --git a/php/public/forms.js b/php/public/forms.js index 52555929988..28c46a77cfc 100644 --- a/php/public/forms.js +++ b/php/public/forms.js @@ -1,6 +1,6 @@ "use strict"; (function (){ - var lastError; + let lastError; function showError(message) { const body = document.getElementsByTagName('body')[0] @@ -45,7 +45,7 @@ if (lastError) { lastError.remove() } - var xhr = new XMLHttpRequest(); + let xhr = new XMLHttpRequest(); xhr.addEventListener('load', handleEvent); xhr.addEventListener('error', () => showError("Failed to talk to server.")); xhr.addEventListener('error', () => disableSpinner()); diff --git a/php/public/options-form-submit.js b/php/public/options-form-submit.js index 1b2262ce660..cbd55fbabf4 100644 --- a/php/public/options-form-submit.js +++ b/php/public/options-form-submit.js @@ -1,9 +1,10 @@ function makeOptionsFormSubmitVisible() { - var optionsFormSubmit = document.getElementById("options-form-submit"); + let optionsFormSubmit = document.getElementById("options-form-submit"); optionsFormSubmit.style.display = 'block'; } -function handleTalkVisibility(talk) { +function handleTalkVisibility() { + let talk = document.getElementById("talk"); let talkRecording = document.getElementById("talk-recording") if (talk.checked) { talkRecording.disabled = false @@ -15,40 +16,40 @@ function handleTalkVisibility(talk) { document.addEventListener("DOMContentLoaded", function(event) { // handle submit button for options form - var optionsFormSubmit = document.getElementById("options-form-submit"); + let optionsFormSubmit = document.getElementById("options-form-submit"); optionsFormSubmit.style.display = 'none'; // Clamav - var clamav = document.getElementById("clamav"); + let clamav = document.getElementById("clamav"); clamav.addEventListener('change', makeOptionsFormSubmitVisible); // OnlyOffice - var onlyoffice = document.getElementById("onlyoffice"); + let onlyoffice = document.getElementById("onlyoffice"); if (onlyoffice) { onlyoffice.addEventListener('change', makeOptionsFormSubmitVisible); } // Collabora - var collabora = document.getElementById("collabora"); + let collabora = document.getElementById("collabora"); collabora.addEventListener('change', makeOptionsFormSubmitVisible); // Talk - var talk = document.getElementById("talk"); + let talk = document.getElementById("talk"); talk.addEventListener('change', makeOptionsFormSubmitVisible); talk.addEventListener('change', handleTalkVisibility); // Talk-recording - var talkRecording = document.getElementById("talk-recording"); + let talkRecording = document.getElementById("talk-recording"); talkRecording.addEventListener('change', makeOptionsFormSubmitVisible); if (!talk.checked) { talkRecording.disabled = true } // Imaginary - var imaginary = document.getElementById("imaginary"); + let imaginary = document.getElementById("imaginary"); imaginary.addEventListener('change', makeOptionsFormSubmitVisible); // Fulltextsearch - var fulltextsearch = document.getElementById("fulltextsearch"); + let fulltextsearch = document.getElementById("fulltextsearch"); fulltextsearch.addEventListener('change', makeOptionsFormSubmitVisible); }); diff --git a/php/templates/containers.twig b/php/templates/containers.twig index dde85fb4035..855108ae03f 100644 --- a/php/templates/containers.twig +++ b/php/templates/containers.twig @@ -545,9 +545,9 @@

{% endif %} {% if is_talk_recording_enabled == true %} -
+
{% else %} -
+
{% endif %} {% if is_onlyoffice_enabled == true %}
@@ -557,7 +557,7 @@ - Minimal system requirements: When any optional addon is enabled, at least 2GB RAM, a dual-core CPU and 40GB system storage are required. When enabling ClamAV, Talk Recording or Fulltextsearch, at least 3GB RAM are required. When enabling everything, at least 5GB RAM are required. Recommended are at least 1GB more RAM than the minimal requirement. For further advices and recommendations see this documentation

+ Minimal system requirements: When any optional addon is enabled, at least 2GB RAM, a dual-core CPU and 40GB system storage are required. When enabling ClamAV, Nextcloud Talk Recording-server or Fulltextsearch, at least 3GB RAM are required. For Talk Recording-server additional 2 vCPUs are required. When enabling everything, at least 5GB RAM and a quad-core CPU are required. Recommended are at least 1GB more RAM than the minimal requirement. For further advices and recommendations see this documentation

{% if isAnyRunning == true or is_x64_platform == false %} {% endif %}