diff --git a/Containers/talk-recording/Dockerfile b/Containers/talk-recording/Dockerfile
index 2b49ad29..26d568b1 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 c8201c64..2fef31a6 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 ae2d003c..18b08081 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 d6a4ce02..3064ef51 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 de614bf5..d3ca21fe 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 0f7787c9..9cdec5fa 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 f9c7eebc..83482339 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 7b4a8719..c37d72af 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 52555929..28c46a77 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 1b2262ce..cbd55fba 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 dde85fb4..855108ae 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 %}