diff --git a/apps/files_sharing/appinfo/app.php b/apps/files_sharing/appinfo/app.php index 8d4b511c26593e89c2e4863c006587a5703095d3..f49f93494943034e346b817420dcfe9ac1dc07d3 100644 --- a/apps/files_sharing/appinfo/app.php +++ b/apps/files_sharing/appinfo/app.php @@ -36,85 +36,4 @@ use OCA\Files_Sharing\AppInfo\Application; \OC\Share\Share::registerBackend('file', File::class); \OC\Share\Share::registerBackend('folder', Folder::class, 'file'); -$application = \OC::$server->query(Application::class); -$application->registerMountProviders(); -$application->register(); - -$eventDispatcher = \OC::$server->getEventDispatcher(); -$eventDispatcher->addListener( - 'OCA\Files::loadAdditionalScripts', - function() { - \OCP\Util::addScript('files_sharing', 'dist/additionalScripts'); - \OCP\Util::addStyle('files_sharing', 'icons'); - } -); -\OC::$server->getEventDispatcher()->addListener('\OCP\Collaboration\Resources::loadAdditionalScripts', function () { - \OCP\Util::addScript('files_sharing', 'dist/collaboration'); -}); - -$config = \OC::$server->getConfig(); -$shareManager = \OC::$server->getShareManager(); -$userSession = \OC::$server->getUserSession(); -$l = \OC::$server->getL10N('files_sharing'); - -if ($config->getAppValue('core', 'shareapi_enabled', 'yes') === 'yes') { - - $sharingSublistArray = []; - - if (\OCP\Util::isSharingDisabledForUser() === false) { - array_push($sharingSublistArray, [ - 'id' => 'sharingout', - 'appname' => 'files_sharing', - 'script' => 'list.php', - 'order' => 16, - 'name' => $l->t('Shared with others'), - ]); - } - - array_push($sharingSublistArray, [ - 'id' => 'sharingin', - 'appname' => 'files_sharing', - 'script' => 'list.php', - 'order' => 15, - 'name' => $l->t('Shared with you'), - ]); - - if (\OCP\Util::isSharingDisabledForUser() === false) { - // Check if sharing by link is enabled - if ($config->getAppValue('core', 'shareapi_allow_links', 'yes') === 'yes') { - array_push($sharingSublistArray, [ - 'id' => 'sharinglinks', - 'appname' => 'files_sharing', - 'script' => 'list.php', - 'order' => 17, - 'name' => $l->t('Shared by link'), - ]); - } - } - - array_push($sharingSublistArray, [ - 'id' => 'deletedshares', - 'appname' => 'files_sharing', - 'script' => 'list.php', - 'order' => 19, - 'name' => $l->t('Deleted shares'), - ]); - - // show_Quick_Access stored as string - $user = $userSession->getUser(); - $defaultExpandedState = true; - if ($user instanceof \OCP\IUser) { - $defaultExpandedState = $config->getUserValue($userSession->getUser()->getUID(), 'files', 'show_sharing_menu', '0') === '1'; - } - - \OCA\Files\App::getNavigationManager()->add([ - 'id' => 'shareoverview', - 'appname' => 'files_sharing', - 'script' => 'list.php', - 'order' => 18, - 'name' => $l->t('Shares'), - 'classes' => 'collapsible', - 'sublist' => $sharingSublistArray, - 'expandedState' => 'show_sharing_menu' - ]); -} +\OC::$server->query(Application::class); diff --git a/apps/files_sharing/composer/composer/autoload_classmap.php b/apps/files_sharing/composer/composer/autoload_classmap.php index d73838c07df21222b899da98b9682cc2eb1f215f..af60a18718c7f6ac1f9d978c605a5470f95d0e53 100644 --- a/apps/files_sharing/composer/composer/autoload_classmap.php +++ b/apps/files_sharing/composer/composer/autoload_classmap.php @@ -45,6 +45,8 @@ return array( 'OCA\\Files_Sharing\\Helper' => $baseDir . '/../lib/Helper.php', 'OCA\\Files_Sharing\\Hooks' => $baseDir . '/../lib/Hooks.php', 'OCA\\Files_Sharing\\ISharedStorage' => $baseDir . '/../lib/ISharedStorage.php', + 'OCA\\Files_Sharing\\Listener\\LoadAdditionalListener' => $baseDir . '/../lib/Listener/LoadAdditionalListener.php', + 'OCA\\Files_Sharing\\Listener\\LoadSidebarListener' => $baseDir . '/../lib/Listener/LoadSidebarListener.php', 'OCA\\Files_Sharing\\Middleware\\OCSShareAPIMiddleware' => $baseDir . '/../lib/Middleware/OCSShareAPIMiddleware.php', 'OCA\\Files_Sharing\\Middleware\\ShareInfoMiddleware' => $baseDir . '/../lib/Middleware/ShareInfoMiddleware.php', 'OCA\\Files_Sharing\\Middleware\\SharingCheckMiddleware' => $baseDir . '/../lib/Middleware/SharingCheckMiddleware.php', diff --git a/apps/files_sharing/composer/composer/autoload_static.php b/apps/files_sharing/composer/composer/autoload_static.php index 4cdf874b9ee6f26f73a4af89db97f19ec30a804b..67f8ce47f724fea8a76d3cde3fbf8d0023fdd1df 100644 --- a/apps/files_sharing/composer/composer/autoload_static.php +++ b/apps/files_sharing/composer/composer/autoload_static.php @@ -60,6 +60,8 @@ class ComposerStaticInitFiles_Sharing 'OCA\\Files_Sharing\\Helper' => __DIR__ . '/..' . '/../lib/Helper.php', 'OCA\\Files_Sharing\\Hooks' => __DIR__ . '/..' . '/../lib/Hooks.php', 'OCA\\Files_Sharing\\ISharedStorage' => __DIR__ . '/..' . '/../lib/ISharedStorage.php', + 'OCA\\Files_Sharing\\Listener\\LoadAdditionalListener' => __DIR__ . '/..' . '/../lib/Listener/LoadAdditionalListener.php', + 'OCA\\Files_Sharing\\Listener\\LoadSidebarListener' => __DIR__ . '/..' . '/../lib/Listener/LoadSidebarListener.php', 'OCA\\Files_Sharing\\Middleware\\OCSShareAPIMiddleware' => __DIR__ . '/..' . '/../lib/Middleware/OCSShareAPIMiddleware.php', 'OCA\\Files_Sharing\\Middleware\\ShareInfoMiddleware' => __DIR__ . '/..' . '/../lib/Middleware/ShareInfoMiddleware.php', 'OCA\\Files_Sharing\\Middleware\\SharingCheckMiddleware' => __DIR__ . '/..' . '/../lib/Middleware/SharingCheckMiddleware.php', diff --git a/apps/files_sharing/js/dist/additionalScripts.js b/apps/files_sharing/js/dist/additionalScripts.js index fbffbf8343983a593f5cfebfe975dd633bd2ddd5..6c8e60d09c110fc99fcd71a461e7fa0603520924 100644 Binary files a/apps/files_sharing/js/dist/additionalScripts.js and b/apps/files_sharing/js/dist/additionalScripts.js differ diff --git a/apps/files_sharing/js/dist/additionalScripts.js.map b/apps/files_sharing/js/dist/additionalScripts.js.map index 0aa21c13eed36561244367e414a616aa13b1a0b4..45d207f470a2d88aba9eb933a44a9109325e0917 100644 Binary files a/apps/files_sharing/js/dist/additionalScripts.js.map and b/apps/files_sharing/js/dist/additionalScripts.js.map differ diff --git a/apps/files_sharing/js/dist/files_sharing.js b/apps/files_sharing/js/dist/files_sharing.js index fbc11b2181132260add7fc069f80f7461fe648b2..b8c19e4a8407063acfa8e76378c67456522931fc 100644 Binary files a/apps/files_sharing/js/dist/files_sharing.js and b/apps/files_sharing/js/dist/files_sharing.js differ diff --git a/apps/files_sharing/js/dist/files_sharing.js.map b/apps/files_sharing/js/dist/files_sharing.js.map index 07e1802b39374f6f7e86eebeb8e88bbf6e9a013c..4c96b89123b6e15c0bc4ff8e6fb4105a71222c10 100644 Binary files a/apps/files_sharing/js/dist/files_sharing.js.map and b/apps/files_sharing/js/dist/files_sharing.js.map differ diff --git a/apps/files_sharing/js/dist/files_sharing_tab.js b/apps/files_sharing/js/dist/files_sharing_tab.js index 724c903cd85794ee4bf8a98bba47b341a9e98caa..c7a7387958f4994551159cb97e3079dcb4cdcf5e 100644 Binary files a/apps/files_sharing/js/dist/files_sharing_tab.js and b/apps/files_sharing/js/dist/files_sharing_tab.js differ diff --git a/apps/files_sharing/js/dist/files_sharing_tab.js.map b/apps/files_sharing/js/dist/files_sharing_tab.js.map index 64acacdd900b7d0a1c1967bad9cccc58882a8910..40bda83585c5b42da95fe3843784e685dec71e54 100644 Binary files a/apps/files_sharing/js/dist/files_sharing_tab.js.map and b/apps/files_sharing/js/dist/files_sharing_tab.js.map differ diff --git a/apps/files_sharing/js/dist/main.js b/apps/files_sharing/js/dist/main.js new file mode 100644 index 0000000000000000000000000000000000000000..eaff364433db280c4dcf62cc638861bb0ca42071 Binary files /dev/null and b/apps/files_sharing/js/dist/main.js differ diff --git a/apps/files_sharing/js/dist/main.js.map b/apps/files_sharing/js/dist/main.js.map new file mode 100644 index 0000000000000000000000000000000000000000..f381cb011f2458688572cf451f35b0372c8226b2 Binary files /dev/null and b/apps/files_sharing/js/dist/main.js.map differ diff --git a/apps/files_sharing/lib/AppInfo/Application.php b/apps/files_sharing/lib/AppInfo/Application.php index a9060763a2b14ae68e2d73e1c33fb587edebd576..e5829389a46bcd46fdbba70fa2c7f014f7fd7c08 100644 --- a/apps/files_sharing/lib/AppInfo/Application.php +++ b/apps/files_sharing/lib/AppInfo/Application.php @@ -34,29 +34,45 @@ use OCA\Files_Sharing\Capabilities; use OCA\Files_Sharing\Controller\ExternalSharesController; use OCA\Files_Sharing\Controller\ShareController; use OCA\Files_Sharing\External\Manager; +use OCA\Files_Sharing\Listener\LoadAdditionalListener; +use OCA\Files_Sharing\Listener\LoadSidebarListener; use OCA\Files_Sharing\Middleware\OCSShareAPIMiddleware; use OCA\Files_Sharing\Middleware\ShareInfoMiddleware; use OCA\Files_Sharing\Middleware\SharingCheckMiddleware; use OCA\Files_Sharing\MountProvider; use OCA\Files_Sharing\Notification\Listener; use OCA\Files_Sharing\Notification\Notifier; +use OCA\Files\Event\LoadAdditionalScriptsEvent; +use OCA\Files\Event\LoadSidebar; use OCP\AppFramework\App; use OCP\AppFramework\Utility\IControllerMethodReflector; use OCP\Defaults; +use OCP\EventDispatcher\IEventDispatcher; use OCP\Federation\ICloudIdManager; +use OCP\Files\Config\IMountProviderCollection; use OCP\IContainer; use OCP\IGroup; use OCP\IServerContainer; +use OCP\Util; use Symfony\Component\EventDispatcher\GenericEvent; class Application extends App { - public function __construct(array $urlParams = array()) { - parent::__construct('files_sharing', $urlParams); + + const APP_ID = 'files_sharing'; + + public function __construct(array $urlParams = []) { + parent::__construct(self::APP_ID, $urlParams); $container = $this->getContainer(); + /** @var IServerContainer $server */ $server = $container->getServer(); + /** @var IEventDispatcher $dispatcher */ + $dispatcher = $container->query(IEventDispatcher::class); + $mountProviderCollection = $server->getMountProviderCollection(); + $notifications = $server->getNotificationManager(); + /** * Controllers */ @@ -164,26 +180,37 @@ class Application extends App { ); }); - /* + /** * Register capabilities */ $container->registerCapability(Capabilities::class); - /** @var \OCP\Notification\IManager $notifications */ - $notifications = $container->query(\OCP\Notification\IManager::class); $notifications->registerNotifierService(Notifier::class); + + $this->registerMountProviders($mountProviderCollection); + $this->registerEventsScripts($dispatcher); + $this->setupSharingMenus(); + + /** + * Always add main sharing script + */ + Util::addScript(self::APP_ID, 'dist/main'); } - public function registerMountProviders() { - /** @var \OCP\IServerContainer $server */ - $server = $this->getContainer()->query('ServerContainer'); - $mountProviderCollection = $server->getMountProviderCollection(); + protected function registerMountProviders(IMountProviderCollection $mountProviderCollection) { $mountProviderCollection->registerProvider($this->getContainer()->query('MountProvider')); $mountProviderCollection->registerProvider($this->getContainer()->query('ExternalMountProvider')); } - public function register(): void { - $dispatcher = $this->getContainer()->getServer()->getEventDispatcher(); + protected function registerEventsScripts(IEventDispatcher $dispatcher) { + // sidebar and files scripts + $dispatcher->addServiceListener(LoadAdditionalScriptsEvent::class, LoadAdditionalListener::class); + $dispatcher->addServiceListener(LoadSidebar::class, LoadSidebarListener::class); + $dispatcher->addListener('\OCP\Collaboration\Resources::loadAdditionalScripts', function() { + \OCP\Util::addScript('files_sharing', 'dist/collaboration'); + }); + + // notifications api to accept incoming user shares $dispatcher->addListener('OCP\Share::postShare', function(GenericEvent $event) { /** @var Listener $listener */ $listener = $this->getContainer()->query(Listener::class); @@ -195,4 +222,66 @@ class Application extends App { $listener->userAddedToGroup($event); }); } + + protected function setupSharingMenus() { + $config = \OC::$server->getConfig(); + $l = \OC::$server->getL10N('files_sharing'); + + if ($config->getAppValue('core', 'shareapi_enabled', 'yes') !== 'yes') { + return; + } + + $sharingSublistArray = []; + + if (\OCP\Util::isSharingDisabledForUser() === false) { + array_push($sharingSublistArray, [ + 'id' => 'sharingout', + 'appname' => 'files_sharing', + 'script' => 'list.php', + 'order' => 16, + 'name' => $l->t('Shared with others'), + ]); + } + + array_push($sharingSublistArray, [ + 'id' => 'sharingin', + 'appname' => 'files_sharing', + 'script' => 'list.php', + 'order' => 15, + 'name' => $l->t('Shared with you'), + ]); + + if (\OCP\Util::isSharingDisabledForUser() === false) { + // Check if sharing by link is enabled + if ($config->getAppValue('core', 'shareapi_allow_links', 'yes') === 'yes') { + array_push($sharingSublistArray, [ + 'id' => 'sharinglinks', + 'appname' => 'files_sharing', + 'script' => 'list.php', + 'order' => 17, + 'name' => $l->t('Shared by link'), + ]); + } + } + + array_push($sharingSublistArray, [ + 'id' => 'deletedshares', + 'appname' => 'files_sharing', + 'script' => 'list.php', + 'order' => 19, + 'name' => $l->t('Deleted shares'), + ]); + + // show_Quick_Access stored as string + \OCA\Files\App::getNavigationManager()->add([ + 'id' => 'shareoverview', + 'appname' => 'files_sharing', + 'script' => 'list.php', + 'order' => 18, + 'name' => $l->t('Shares'), + 'classes' => 'collapsible', + 'sublist' => $sharingSublistArray, + 'expandedState' => 'show_sharing_menu' + ]); + } } diff --git a/apps/files_sharing/lib/Listener/LoadAdditionalListener.php b/apps/files_sharing/lib/Listener/LoadAdditionalListener.php new file mode 100644 index 0000000000000000000000000000000000000000..793140e211f00cc0daaabfe9a064bcb4ba9ca3b8 --- /dev/null +++ b/apps/files_sharing/lib/Listener/LoadAdditionalListener.php @@ -0,0 +1,44 @@ +<?php +declare(strict_types=1); +/** + * @copyright Copyright (c) 2019, Roeland Jago Douma <roeland@famdouma.nl> + * + * @author Roeland Jago Douma <roeland@famdouma.nl> + * @author John Molakvoæ <skjnldsv@protonmail.com> + * + * @license GNU AGPL version 3 or any later version + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ + +namespace OCA\Files_Sharing\Listener; + +use OCA\Files_Sharing\AppInfo\Application; +use OCA\Files\Event\LoadAdditionalScriptsEvent; +use OCP\EventDispatcher\Event; +use OCP\EventDispatcher\IEventListener; +use OCP\Util; + +class LoadAdditionalListener implements IEventListener { + public function handle(Event $event): void { + if (!($event instanceof LoadAdditionalScriptsEvent)) { + return; + } + + Util::addScript(Application::APP_ID, 'dist/files_sharing'); + Util::addScript(Application::APP_ID, 'dist/additionalScripts'); + Util::addStyle(Application::APP_ID, 'icons'); + } +} diff --git a/apps/files_sharing/lib/Listener/LoadSidebarListener.php b/apps/files_sharing/lib/Listener/LoadSidebarListener.php new file mode 100644 index 0000000000000000000000000000000000000000..a84d48cf5993cd578f23bde2e001745f0a743d6a --- /dev/null +++ b/apps/files_sharing/lib/Listener/LoadSidebarListener.php @@ -0,0 +1,43 @@ +<?php +declare(strict_types=1); +/** + * @copyright Copyright (c) 2019, Roeland Jago Douma <roeland@famdouma.nl> + * + * @author Roeland Jago Douma <roeland@famdouma.nl> + * @author John Molakvoæ <skjnldsv@protonmail.com> + * + * @license GNU AGPL version 3 or any later version + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ + +namespace OCA\Files_Sharing\Listener; + +use OCA\Files_Sharing\AppInfo\Application; +use OCA\Files\Event\LoadSidebar; +use OCP\EventDispatcher\Event; +use OCP\EventDispatcher\IEventListener; +use OCP\Util; + +class LoadSidebarListener implements IEventListener { + public function handle(Event $event): void { + if (!($event instanceof LoadSidebar)) { + return; + } + + Util::addScript(Application::APP_ID, 'dist/files_sharing_tab'); + } + +} diff --git a/apps/files_sharing/list.php b/apps/files_sharing/list.php index 5517c39971f30e62050d8f555ae49f8a1ce8da49..fdff5d36c76a76e859e71cd1335d1cf7873c7cbe 100644 --- a/apps/files_sharing/list.php +++ b/apps/files_sharing/list.php @@ -19,10 +19,14 @@ * along with this program. If not, see <http://www.gnu.org/licenses/> * */ +use OCA\Files\Event\LoadAdditionalScriptsEvent; +use OCA\Files\Event\LoadSidebar; + // Check if we are a user OCP\User::checkLoggedIn(); $config = \OC::$server->getConfig(); $userSession = \OC::$server->getUserSession(); +$eventDispatcher = \OC::$server->getEventDispatcher(); $showgridview = $config->getUserValue($userSession->getUser()->getUID(), 'files', 'show_grid', false); $isIE = \OCP\Util::isIE(); @@ -32,8 +36,9 @@ $tmpl = new OCP\Template('files_sharing', 'list', ''); // gridview not available for ie $tmpl->assign('showgridview', $showgridview && !$isIE); -OCP\Util::addScript('files_sharing', 'dist/files_sharing'); -OCP\Util::addScript('files_sharing', 'dist/files_sharing_tab'); -\OC::$server->getEventDispatcher()->dispatch('\OCP\Collaboration\Resources::loadAdditionalScripts'); +// fire script events +$eventDispatcher->dispatch('\OCP\Collaboration\Resources::loadAdditionalScripts'); +$eventDispatcher->dispatch(LoadAdditionalScriptsEvent::class, new LoadAdditionalScriptsEvent()); +$eventDispatcher->dispatch(LoadSidebar::class, new LoadSidebar()); $tmpl->printPage(); diff --git a/apps/files_sharing/src/index.js b/apps/files_sharing/src/index.js new file mode 100644 index 0000000000000000000000000000000000000000..cc2e1c6e69842b3733e17ab58cc44020c2a1c71e --- /dev/null +++ b/apps/files_sharing/src/index.js @@ -0,0 +1,36 @@ +/** + * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com> + * + * @author John Molakvoæ <skjnldsv@protonmail.com> + * + * @license GNU AGPL version 3 or any later version + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ + +// register default shares types +Object.assign(OC, { + Share: { + SHARE_TYPE_USER: 0, + SHARE_TYPE_GROUP: 1, + SHARE_TYPE_LINK: 3, + SHARE_TYPE_EMAIL: 4, + SHARE_TYPE_REMOTE: 6, + SHARE_TYPE_CIRCLE: 7, + SHARE_TYPE_GUEST: 8, + SHARE_TYPE_REMOTE_GROUP: 9, + SHARE_TYPE_ROOM: 10 + } +}) diff --git a/apps/files_sharing/src/share.js b/apps/files_sharing/src/share.js index a59cfda4b12c920cef8e32a9417bd92ef78aeb21..07c367fddab7953baacfd7ebaaf1bf0ce4762fb4 100644 --- a/apps/files_sharing/src/share.js +++ b/apps/files_sharing/src/share.js @@ -21,18 +21,6 @@ OCA.Sharing = {} } - OC.Share = _.extend(OC.Share || {}, { - SHARE_TYPE_USER: 0, - SHARE_TYPE_GROUP: 1, - SHARE_TYPE_LINK: 3, - SHARE_TYPE_EMAIL: 4, - SHARE_TYPE_REMOTE: 6, - SHARE_TYPE_CIRCLE: 7, - SHARE_TYPE_GUEST: 8, - SHARE_TYPE_REMOTE_GROUP: 9, - SHARE_TYPE_ROOM: 10 - }) - /** * @namespace */ diff --git a/apps/files_sharing/tests/TestCase.php b/apps/files_sharing/tests/TestCase.php index ce5ceb1f6428dde9583723c21a3e61a404f34acc..cc207429e7b873e90b5d42c0d0b357ae5ef65acc 100644 --- a/apps/files_sharing/tests/TestCase.php +++ b/apps/files_sharing/tests/TestCase.php @@ -71,9 +71,8 @@ abstract class TestCase extends \Test\TestCase { public static function setUpBeforeClass(): void { parent::setUpBeforeClass(); - $application = new Application(); - $application->registerMountProviders(); - + new Application(); + // reset backend \OC_User::clearBackends(); \OC::$server->getGroupManager()->clearBackends(); diff --git a/apps/files_sharing/webpack.js b/apps/files_sharing/webpack.js index 43a34559d415ec6774d6e45035d2097b5222f125..70759a684df16bef9d67ca8b05350052a1a09675 100644 --- a/apps/files_sharing/webpack.js +++ b/apps/files_sharing/webpack.js @@ -3,9 +3,10 @@ const path = require('path'); module.exports = { entry: { 'additionalScripts': path.join(__dirname, 'src', 'additionalScripts.js'), - 'files_sharing': path.join(__dirname, 'src', 'files_sharing.js'), - 'files_sharing_tab': path.join(__dirname, 'src', 'files_sharing_tab.js'), 'collaboration': path.join(__dirname, 'src', 'collaborationresourceshandler.js'), + 'files_sharing_tab': path.join(__dirname, 'src', 'files_sharing_tab.js'), + 'files_sharing': path.join(__dirname, 'src', 'files_sharing.js'), + 'main': path.join(__dirname, 'src', 'index.js'), }, output: { path: path.resolve(__dirname, './js/dist/'), diff --git a/apps/files_trashbin/tests/TrashbinTest.php b/apps/files_trashbin/tests/TrashbinTest.php index 9e5b029d9dc33cadaa67a5a23900195375fc73d6..35a5a957186adf0d21f2bd7abe8a48f9c3ceeab6 100644 --- a/apps/files_trashbin/tests/TrashbinTest.php +++ b/apps/files_trashbin/tests/TrashbinTest.php @@ -28,6 +28,7 @@ */ use OCA\Files_Trashbin\Tests; +use OCA\Files_Sharing\AppInfo\Application; /** * Class Test_Encryption @@ -67,8 +68,9 @@ class TrashbinTest extends \Test\TestCase { // clear share hooks \OC_Hook::clear('OCP\\Share'); \OC::registerShareHooks(); - $application = \OC::$server->query(\OCA\Files_Sharing\AppInfo\Application::class); - $application->registerMountProviders(); + + // init files sharing + new Application(); //disable encryption \OC::$server->getAppManager()->disableApp('encryption'); diff --git a/apps/files_versions/tests/VersioningTest.php b/apps/files_versions/tests/VersioningTest.php index 3f51f619629cff9923c952326fea3761a4b0e2a9..cc326b18928734a7a6627c90c5e37e4175b12de4 100644 --- a/apps/files_versions/tests/VersioningTest.php +++ b/apps/files_versions/tests/VersioningTest.php @@ -60,7 +60,6 @@ class VersioningTest extends \Test\TestCase { parent::setUpBeforeClass(); $application = new \OCA\Files_Sharing\AppInfo\Application(); - $application->registerMountProviders(); // create test user self::loginHelper(self::TEST_VERSIONS_USER2, true); diff --git a/tests/karma.config.js b/tests/karma.config.js index fb460ad850d5217b0553671dcee2303c0eaec02c..06503bf9bf8b8b9816659816b26f2640d27ae915 100644 --- a/tests/karma.config.js +++ b/tests/karma.config.js @@ -53,10 +53,14 @@ module.exports = function(config) { // only test these files, others are not ready and mess // up with the global namespace/classes/state 'apps/files_sharing/js/app.js', - 'apps/files_sharing/js/sharedfilelist.js', 'apps/files_sharing/js/dist/additionalScripts.js', - 'apps/files_sharing/js/public.js', + 'apps/files_sharing/js/dist/files_sharing_tab.js', + 'apps/files_sharing/js/dist/files_sharing.js', + 'apps/files_sharing/js/dist/main.js', + 'apps/files_sharing/js/dist/sidebar.js', 'apps/files_sharing/js/files_drop.js', + 'apps/files_sharing/js/public.js', + 'apps/files_sharing/js/sharedfilelist.js', 'apps/files_sharing/js/templates.js', ], testFiles: ['apps/files_sharing/tests/js/*.js'] diff --git a/tests/lib/Files/EtagTest.php b/tests/lib/Files/EtagTest.php index acda220d01f12778d8b3274959119935a98dc88d..554812253f3117cbc04d94bd18803ef3b2cfd492 100644 --- a/tests/lib/Files/EtagTest.php +++ b/tests/lib/Files/EtagTest.php @@ -10,6 +10,7 @@ namespace Test\Files; use OC\Files\Filesystem; use OCP\Share; +use OCA\Files_Sharing\AppInfo\Application; /** * Class EtagTest @@ -32,8 +33,9 @@ class EtagTest extends \Test\TestCase { parent::setUp(); \OC_Hook::clear('OC_Filesystem', 'setup'); - $application = new \OCA\Files_Sharing\AppInfo\Application(); - $application->registerMountProviders(); + // init files sharing + new Application(); + \OC\Share\Share::registerBackend('file', 'OCA\Files_Sharing\ShareBackend\File'); \OC\Share\Share::registerBackend('folder', 'OCA\Files_Sharing\ShareBackend\Folder', 'file');