summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjoern Schiessle <bjoern@schiessle.org>2016-11-02 12:03:52 +0100
committerBjoern Schiessle <bjoern@schiessle.org>2016-11-02 21:17:05 +0100
commitd235c4833f8fb8bb0b077276e2819cfbd2918313 (patch)
treec120bdc814fd95fd517f563c80c5594b09c994d0
parentf556c58c22405945263bc6debfa6a424e2c601cb (diff)
downloadnextcloud-server-d235c4833f8fb8bb0b077276e2819cfbd2918313.tar.gz
nextcloud-server-d235c4833f8fb8bb0b077276e2819cfbd2918313.zip
remove the 'shareapi_allow_mail_notification' setting
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
-rw-r--r--apps/files_sharing/appinfo/info.xml2
-rw-r--r--apps/files_sharing/appinfo/update.php6
-rw-r--r--apps/files_sharing/lib/Migration.php15
-rw-r--r--apps/files_sharing/tests/MigrationTest.php28
-rw-r--r--core/js/tests/specs/sharedialogviewSpec.js1
5 files changed, 47 insertions, 5 deletions
diff --git a/apps/files_sharing/appinfo/info.xml b/apps/files_sharing/appinfo/info.xml
index 133119feabd..cc97f65a5e6 100644
--- a/apps/files_sharing/appinfo/info.xml
+++ b/apps/files_sharing/appinfo/info.xml
@@ -10,7 +10,7 @@ Turning the feature off removes shared files and folders on the server for all s
<licence>AGPL</licence>
<author>Michael Gapczynski, Bjoern Schiessle</author>
<default_enable/>
- <version>1.1.0</version>
+ <version>1.1.1</version>
<types>
<filesystem/>
</types>
diff --git a/apps/files_sharing/appinfo/update.php b/apps/files_sharing/appinfo/update.php
index d53d878881e..ed0d7732b37 100644
--- a/apps/files_sharing/appinfo/update.php
+++ b/apps/files_sharing/appinfo/update.php
@@ -26,7 +26,11 @@ $installedVersion = \OC::$server->getConfig()->getAppValue('files_sharing', 'ins
// Migration OC8.2 -> OC9
if (version_compare($installedVersion, '0.9.1', '<')) {
- $m = new Migration(\OC::$server->getDatabaseConnection());
+ $m = new Migration(\OC::$server->getDatabaseConnection(), \OC::$server->getConfig());
$m->removeReShares();
$m->updateInitiatorInfo();
}
+
+if (version_compare($installedVersion, '1.1.1', '<')) {
+ $m = new Migration(\OC::$server->getDatabaseConnection(), \OC::$server->getConfig());
+}
diff --git a/apps/files_sharing/lib/Migration.php b/apps/files_sharing/lib/Migration.php
index 9c971bf7f49..605a11fd22c 100644
--- a/apps/files_sharing/lib/Migration.php
+++ b/apps/files_sharing/lib/Migration.php
@@ -27,6 +27,7 @@ namespace OCA\Files_Sharing;
use Doctrine\DBAL\Connection;
use OCP\ICache;
+use OCP\IConfig;
use OCP\IDBConnection;
use OC\Cache\CappedMemoryCache;
@@ -41,14 +42,18 @@ class Migration {
/** @var IDBConnection */
private $connection;
+ /** @var IConfig */
+ private $config;
+
/** @var ICache with all shares we already saw */
private $shareCache;
/** @var string */
private $table = 'share';
- public function __construct(IDBConnection $connection) {
+ public function __construct(IDBConnection $connection, IConfig $config) {
$this->connection = $connection;
+ $this->config = $config;
// We cache up to 10k share items (~20MB)
$this->shareCache = new CappedMemoryCache(10000);
@@ -111,6 +116,14 @@ class Migration {
}
/**
+ * this was dropped for Nextcloud 11 in favour of share by mail
+ */
+ public function removeSendMailOption() {
+ $this->config->deleteAppValue('core', 'shareapi_allow_mail_notification');
+ $this->config->deleteAppValue('core', 'shareapi_allow_public_notification');
+ }
+
+ /**
* find the owner of a re-shared file/folder
*
* @param array $share
diff --git a/apps/files_sharing/tests/MigrationTest.php b/apps/files_sharing/tests/MigrationTest.php
index 7d6ca7840ed..572f64da743 100644
--- a/apps/files_sharing/tests/MigrationTest.php
+++ b/apps/files_sharing/tests/MigrationTest.php
@@ -39,6 +39,9 @@ class MigrationTest extends TestCase {
/** @var \OCP\IDBConnection */
private $connection;
+ /** @var \OCP\IConfig */
+ private $config;
+
/** @var Migration */
private $migration;
@@ -48,7 +51,8 @@ class MigrationTest extends TestCase {
parent::setUp();
$this->connection = \OC::$server->getDatabaseConnection();
- $this->migration = new Migration($this->connection);
+ $this->config = \OC::$server->getConfig();
+ $this->migration = new Migration($this->connection, $this->config);
$this->cleanDB();
}
@@ -351,4 +355,26 @@ class MigrationTest extends TestCase {
$stmt->closeCursor();
$this->assertEquals(1001, $i);
}
+
+ /**
+ * test that we really remove the "shareapi_allow_mail_notification" setting only
+ */
+ public function testRemoveSendMailOption() {
+ $this->config->setAppValue('core', 'shareapi_setting1', 'dummy-value');
+ $this->config->setAppValue('core', 'shareapi_allow_mail_notification', 'no');
+ $this->config->setAppValue('core', 'shareapi_allow_public_notification', 'no');
+
+ $this->migration->removeSendMailOption();
+
+ $this->assertNull(
+ $this->config->getAppValue('core', 'shareapi_allow_mail_notification', null)
+ );
+ $this->assertNull(
+ $this->config->getAppValue('core', 'shareapi_allow_public_notification', null)
+ );
+
+ $this->assertSame('dummy-value',
+ $this->config->getAppValue('core', 'shareapi_setting1', null)
+ );
+ }
}
diff --git a/core/js/tests/specs/sharedialogviewSpec.js b/core/js/tests/specs/sharedialogviewSpec.js
index 8acaf62e2e7..6e86cb8eff7 100644
--- a/core/js/tests/specs/sharedialogviewSpec.js
+++ b/core/js/tests/specs/sharedialogviewSpec.js
@@ -41,7 +41,6 @@ describe('OC.Share.ShareDialogView', function() {
beforeEach(function() {
// horrible parameters
$('#testArea').append('<input id="allowShareWithLink" type="hidden" value="yes">');
- $('#testArea').append('<input id="mailPublicNotificationEnabled" name="mailPublicNotificationEnabled" type="hidden" value="yes">');
$container = $('#shareContainer');
/* jshint camelcase:false */
oldAppConfig = _.extend({}, oc_appconfig.core);