remove the 'shareapi_allow_mail_notification' setting

Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
pull/1978/head
Bjoern Schiessle 8 years ago
parent f556c58c22
commit d235c4833f
No known key found for this signature in database
GPG Key ID: 2378A753E2BF04F6

@ -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>

@ -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());
}

@ -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);
@ -110,6 +115,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
*

@ -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)
);
}
}

@ -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);

Loading…
Cancel
Save