Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Add LoadSidebar event
Signed-off-by: John Molakvoæ (skjnldsv) <[email protected]>
  • Loading branch information
skjnldsv authored and danxuliu committed Oct 29, 2019
commit d88b93c919b6bf7db1853ec91a68996e07a75ba4
1 change: 1 addition & 0 deletions apps/files/composer/composer/autoload_classmap.php
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
'OCA\\Files\\Controller\\ApiController' => $baseDir . '/../lib/Controller/ApiController.php',
'OCA\\Files\\Controller\\ViewController' => $baseDir . '/../lib/Controller/ViewController.php',
'OCA\\Files\\Event\\LoadAdditionalScriptsEvent' => $baseDir . '/../lib/Event/LoadAdditionalScriptsEvent.php',
'OCA\\Files\\Event\\LoadSidebar' => $baseDir . '/../lib/Event/LoadSidebar.php',
'OCA\\Files\\Helper' => $baseDir . '/../lib/Helper.php',
'OCA\\Files\\Listener\\LegacyLoadAdditionalScriptsAdapter' => $baseDir . '/../lib/Listener/LegacyLoadAdditionalScriptsAdapter.php',
'OCA\\Files\\Service\\TagService' => $baseDir . '/../lib/Service/TagService.php',
Expand Down
1 change: 1 addition & 0 deletions apps/files/composer/composer/autoload_static.php
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ class ComposerStaticInitFiles
'OCA\\Files\\Controller\\ApiController' => __DIR__ . '/..' . '/../lib/Controller/ApiController.php',
'OCA\\Files\\Controller\\ViewController' => __DIR__ . '/..' . '/../lib/Controller/ViewController.php',
'OCA\\Files\\Event\\LoadAdditionalScriptsEvent' => __DIR__ . '/..' . '/../lib/Event/LoadAdditionalScriptsEvent.php',
'OCA\\Files\\Event\\LoadSidebar' => __DIR__ . '/..' . '/../lib/Event/LoadSidebar.php',
'OCA\\Files\\Helper' => __DIR__ . '/..' . '/../lib/Helper.php',
'OCA\\Files\\Listener\\LegacyLoadAdditionalScriptsAdapter' => __DIR__ . '/..' . '/../lib/Listener/LegacyLoadAdditionalScriptsAdapter.php',
'OCA\\Files\\Service\\TagService' => __DIR__ . '/..' . '/../lib/Service/TagService.php',
Expand Down
9 changes: 7 additions & 2 deletions apps/files/js/filelist.js
Original file line number Diff line number Diff line change
Expand Up @@ -636,9 +636,14 @@
fileName = ''
}

// this is the old (terrible) way of getting the context.
// don't use it anywhere else. Just provide the full path
// of the file to the sidebar service
var tr = this.findFileEl(fileName)
var model = this.getModelForFile(tr)
var path = model.attributes.path + '/' + model.attributes.name

// open sidebar and set file
const dir = `${this.dirInfo.path}/${this.dirInfo.name}`
const path = `${dir}/${fileName}`
OCA.Files.Sidebar.file = path.replace('//', '/')
},

Expand Down
4 changes: 4 additions & 0 deletions apps/files/lib/Controller/ViewController.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
* @author Thomas Müller <[email protected]>
* @author Vincent Petry <[email protected]>
* @author Felix Nüsse <[email protected]>
* @author John Molakvoæ <[email protected]>
*
* @license AGPL-3.0
*
Expand All @@ -30,6 +31,7 @@

use OCA\Files\Activity\Helper;
use OCA\Files\Event\LoadAdditionalScriptsEvent;
use OCA\Files\Event\LoadSidebar;
use OCP\AppFramework\Controller;
use OCP\AppFramework\Http\ContentSecurityPolicy;
use OCP\AppFramework\Http\RedirectResponse;
Expand Down Expand Up @@ -269,6 +271,8 @@ public function index($dir = '', $view = '', $fileid = null, $fileNotFound = fal
$event = new LoadAdditionalScriptsEvent();
$this->eventDispatcher->dispatch(LoadAdditionalScriptsEvent::class, $event);

$this->eventDispatcher->dispatch(LoadSidebar::class, new LoadSidebar());

$params = [];
$params['usedSpacePercent'] = (int) $storageInfo['relative'];
$params['owner'] = $storageInfo['owner'];
Expand Down
31 changes: 31 additions & 0 deletions apps/files/lib/Event/LoadSidebar.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
<?php
declare(strict_types=1);
/**
* @copyright Copyright (c) 2019, Roeland Jago Douma <[email protected]>
*
* @author Roeland Jago Douma <[email protected]>
*
* @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\Event;

use OCP\EventDispatcher\Event;

class LoadSidebar extends Event {

}
31 changes: 1 addition & 30 deletions apps/files_sharing/src/share.js
Original file line number Diff line number Diff line change
Expand Up @@ -209,37 +209,8 @@
}
})

// register share breadcrumbs component
var shareTab = new OCA.Sharing.ShareTabView('sharing', {order: -20})
// // detect changes and change the matching list entry
// shareTab.on('sharesChanged', function(shareModel) {
// var fileInfoModel = shareModel.fileInfoModel
// var $tr = fileList.findFileEl(fileInfoModel.get('name'))

// // We count email shares as link share
// var hasLinkShares = shareModel.hasLinkShares();
// shareModel.get('shares').forEach(function (share) {
// if (share.share_type === OC.Share.SHARE_TYPE_EMAIL) {
// hasLinkShares = true;
// }
// })

// OCA.Sharing.Util._updateFileListDataAttributes(fileList, $tr, shareModel);
// if (!OCA.Sharing.Util._updateFileActionIcon($tr, shareModel.hasUserShares(), hasLinkShares)) {
// // remove icon, if applicable
// OC.Share.markFileAsShared($tr, false, false)
// }

// // FIXME: this is too convoluted. We need to get rid of the above updates
// // and only ever update the model and let the events take care of rerendering
// fileInfoModel.set({
// shareTypes: shareModel.getShareTypes(),
// // in case markFileAsShared decided to change the icon,
// // we need to modify the model
// // (FIXME: yes, this is hacky)
// icon: $tr.attr('data-icon')
// })
// })
// fileList.registerTabView(shareTab)

var breadCrumbSharingDetailView = new OCA.Sharing.ShareBreadCrumbView({ shareTab: shareTab })
fileList.registerBreadCrumbDetailView(breadCrumbSharingDetailView)
Expand Down