diff --git a/apps/dav/lib/CalDAV/Schedule/IMipPlugin.php b/apps/dav/lib/CalDAV/Schedule/IMipPlugin.php
index 7035d3c780f5e29e0b6adb0232b04dac0f65d520..56b3ab04ddc5981b2be600ea1fa56432455459fe 100644
--- a/apps/dav/lib/CalDAV/Schedule/IMipPlugin.php
+++ b/apps/dav/lib/CalDAV/Schedule/IMipPlugin.php
@@ -249,28 +249,26 @@ class IMipPlugin extends SabreIMipPlugin {
 			** nextcloud server, to recipients who can access the nextcloud server via
 			** their internet/intranet.  Issue #12156
 			**
+			** The app setting is stored in the appconfig database table.
+			**
 			** For nextcloud servers accessible to the public internet, the default
-			** "dav.invitation_link_recipients" value "true" (all recipients) is appropriate.
+			** "invitation_link_recipients" value "yes" (all recipients) is appropriate.
 			**
 			** When the nextcloud server is restricted behind a firewall, accessible
 			** only via an internal network or via vpn, you can set "dav.invitation_link_recipients"
-			** to the email address or email domain, or array of addresses or domains,
+			** to the email address or email domain, or comma separated list of addresses or domains,
 			** of recipients who can access the server.
 			**
-			** To deliver URL's always, set invitation_link_recipients to boolean "true".
-			** To suppress URL's entirely, set invitation_link_recipients to boolean "false".
+			** To always deliver URLs, set invitation_link_recipients to "yes".
+			** To suppress URLs entirely, set invitation_link_recipients to boolean "no".
 			*/
 
 			$recipientDomain = substr(strrchr($recipient, "@"), 1);
-			$invitationLinkRecipients = $this->config->getSystemValue('dav.invitation_link_recipients', true);
-			if (is_array($invitationLinkRecipients)) {
-				$invitationLinkRecipients = array_map('strtolower', $invitationLinkRecipients); // for case insensitive in_array
-			}
-			if ($invitationLinkRecipients === true
-				 || (is_string($invitationLinkRecipients) && strcasecmp($recipient, $invitationLinkRecipients) === 0)
-				 || (is_string($invitationLinkRecipients) && strcasecmp($recipientDomain, $invitationLinkRecipients) === 0)
-				 || (is_array($invitationLinkRecipients) && in_array(strtolower($recipient), $invitationLinkRecipients))
-				 || (is_array($invitationLinkRecipients) && in_array(strtolower($recipientDomain), $invitationLinkRecipients))) {
+			$invitationLinkRecipients = explode(',', preg_replace('/\s+/', '', strtolower($this->config->getAppValue('dav', 'invitation_link_recipients', 'yes'))));
+
+			if (strcmp('yes', $invitationLinkRecipients[0]) === 0
+				 || in_array(strtolower($recipient), $invitationLinkRecipients)
+				 || in_array(strtolower($recipientDomain), $invitationLinkRecipients)) {
 				$this->addResponseButtons($template, $l10n, $iTipMessage, $lastOccurrence);
 			}
 		}
diff --git a/apps/dav/tests/unit/CalDAV/Schedule/IMipPluginTest.php b/apps/dav/tests/unit/CalDAV/Schedule/IMipPluginTest.php
index 84da1d2727c0f070aad16fc265a01cd6c5a22a18..967f3a514816f47798668f5a0a589b1391354311 100644
--- a/apps/dav/tests/unit/CalDAV/Schedule/IMipPluginTest.php
+++ b/apps/dav/tests/unit/CalDAV/Schedule/IMipPluginTest.php
@@ -96,9 +96,9 @@ class IMipPluginTest extends TestCase {
 
 	public function testDelivery() {
 		$this->config
-			->method('getSystemValue')
-			->with('dav.invitation_link_recipients', true)
-			->willReturn(true);
+			->method('getAppValue')
+			->with('dav', 'invitation_link_recipients', 'yes')
+			->willReturn('yes');
 
 		$message = $this->_testMessage();
 		$this->_expectSend();
@@ -108,9 +108,9 @@ class IMipPluginTest extends TestCase {
 
 	public function testFailedDelivery() {
 		$this->config
-			->method('getSystemValue')
-			->with('dav.invitation_link_recipients', true)
-			->willReturn(true);
+			->method('getAppValue')
+			->with('dav', 'invitation_link_recipients', 'yes')
+			->willReturn('yes');
 
 		$message = $this->_testMessage();
 		$this->mailer
@@ -127,9 +127,9 @@ class IMipPluginTest extends TestCase {
 	public function testNoMessageSendForPastEvents($veventParams, $expectsMail) {
 
 		$this->config
-			->method('getSystemValue')
-			->with('dav.invitation_link_recipients', true)
-			->willReturn(true);
+			->method('getAppValue')
+			->with('dav', 'invitation_link_recipients', 'yes')
+			->willReturn('yes');
 
 		$message = $this->_testMessage( $veventParams );
 
@@ -167,8 +167,8 @@ class IMipPluginTest extends TestCase {
 
 		$this->_expectSend($recipient, true, $has_buttons);
 		$this->config
-			->method('getSystemValue')
-			->with('dav.invitation_link_recipients', true)
+			->method('getAppValue')
+			->with('dav', 'invitation_link_recipients', 'yes')
 			->willReturn($config_setting);
 
 		$this->plugin->schedule($message);
@@ -178,13 +178,13 @@ class IMipPluginTest extends TestCase {
 	public function dataIncludeResponseButtons() {
 		return [
 			// dav.invitation_link_recipients, recipient, $has_buttons
-			[ true, 'joe@internal.com', true],
+			[ 'yes', 'joe@internal.com', true],
 			[ 'joe@internal.com', 'joe@internal.com', true],
 			[ 'internal.com', 'joe@internal.com', true],
-			[ ['pete@otherinternal.com', 'internal.com'], 'joe@internal.com', true],
-			[ false, 'joe@internal.com', false],
+			[ 'pete@otherinternal.com,internal.com', 'joe@internal.com', true],
+			[ 'no', 'joe@internal.com', false],
 			[ 'internal.com', 'joe@external.com', false],
-			[ ['jane@otherinternal.com', 'internal.com'], 'joe@otherinternal.com', false],
+			[ 'jane@otherinternal.com,internal.com', 'joe@otherinternal.com', false],
 		];
 	}
 
diff --git a/config/config.sample.php b/config/config.sample.php
index d5f4bb5f43742f734daac12dce4c114c035c78cc..9c3cc470995f11f0050243493b398a48eb853793 100644
--- a/config/config.sample.php
+++ b/config/config.sample.php
@@ -1696,33 +1696,6 @@ $CONFIG = array(
 	'/^Microsoft-WebDAV-MiniRedir/', // Windows webdav drive
 ),
 
-/**
-* The caldav server sends invitation emails to invitees, attaching the ICS
-* file for the invitation.  It also may include, in the body of the e-mail,
-* invitation accept/reject web links referencing URL's that point to the nextcloud server.
-*
-* Although any recipient can read and reply to the ICS file via the iMip protocol,
-* we must only present the web links to recipients who can access the nextcloud
-* web server via their internet/intranet.
-*
-* When your nextcloud server is restricted behind a firewall, accessible
-* only via an internal network or via vpn, you can set "dav.invitation_link_recipients"
-* to the email address or email domain, or array of addresses or domains,
-* of recipients who can access the server. Only those recipients will get web links. External
-* users can accept/reject invitations by emailing back ICS files containing appropriate
-* messages, using the iMip protocol. Many mail clients support this functionality.
-*
-* To suppress iMip web links entirely, set dav.invitation_link_recipients to false.
-* To deliver iMip web links always, set dav.invitation_link_recipients to true.
-*
-* Examples:
-*   'dav.invitation_link_recipients' => 'internal.example.com',
-*   'dav.invitation_link_recipients' => array( 'internal.example.com', 'pat@roadwarrior.example.com' ),
-*   'dav.invitation_link_recipients' => false,
-*
-*/
-'dav.invitation_link_recipients' => true, // always include accept/reject server links in iMip emails
-
 /**
  * By default there is on public pages a link shown that allows users to
  * learn about the "simple sign up" - see https://nextcloud.com/signup/