1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-01 23:20:51 +00:00

update readonly toolbar effect (#4605)

This commit is contained in:
杨顺强
2020-06-24 18:35:38 +08:00
committed by GitHub
parent 2adc0540a9
commit 66300cf07b
4 changed files with 39 additions and 33 deletions

View File

@@ -162,10 +162,6 @@ class DirOperationToolbar extends React.Component {
render() {
let { path, repoName, userPerm } = this.props;
if (userPerm !== 'rw' && userPerm !== 'admin') {
return '';
}
let itemType = path === '/' ? 'library' : 'dir';
let itemName = path == '/' ? repoName : Utils.getFolderName(path);
@@ -197,28 +193,30 @@ class DirOperationToolbar extends React.Component {
return (
<Fragment>
<div className="dir-operation">
<div className="operation">
{content}
{(userPerm === 'rw' || userPerm === 'admin') && (
<div className="dir-operation">
<div className="operation">
{content}
</div>
{this.state.isUploadMenuShow && (
<ul className="menu dropdown-menu" style={this.state.operationMenuStyle}>
<li className="dropdown-item" onClick={this.onUploadFile}>{gettext('Upload Files')}</li>
<li className="dropdown-item" onClick={this.onUploadFolder}>{gettext('Upload Folder')}</li>
</ul>
)}
{this.state.isCreateMenuShow && (
<ul className="menu dropdown-menu" style={this.state.operationMenuStyle}>
<li className="dropdown-item" onClick={this.onCreateFolderToggle}>{gettext('New Folder')}</li>
<li className="dropdown-item" onClick={this.onCreateFileToggle}>{gettext('New File')}</li>
<li className="dropdown-divider"></li>
<li className="dropdown-item" onClick={this.onCreateMarkdownToggle}>{gettext('New Markdown File')}</li>
<li className="dropdown-item" onClick={this.onCreateExcelToggle}>{gettext('New Excel File')}</li>
<li className="dropdown-item" onClick={this.onCreatePPTToggle}>{gettext('New PowerPoint File')}</li>
<li className="dropdown-item" onClick={this.onCreateWordToggle}>{gettext('New Word File')}</li>
</ul>
)}
</div>
{this.state.isUploadMenuShow && (
<ul className="menu dropdown-menu" style={this.state.operationMenuStyle}>
<li className="dropdown-item" onClick={this.onUploadFile}>{gettext('Upload Files')}</li>
<li className="dropdown-item" onClick={this.onUploadFolder}>{gettext('Upload Folder')}</li>
</ul>
)}
{this.state.isCreateMenuShow && (
<ul className="menu dropdown-menu" style={this.state.operationMenuStyle}>
<li className="dropdown-item" onClick={this.onCreateFolderToggle}>{gettext('New Folder')}</li>
<li className="dropdown-item" onClick={this.onCreateFileToggle}>{gettext('New File')}</li>
<li className="dropdown-divider"></li>
<li className="dropdown-item" onClick={this.onCreateMarkdownToggle}>{gettext('New Markdown File')}</li>
<li className="dropdown-item" onClick={this.onCreateExcelToggle}>{gettext('New Excel File')}</li>
<li className="dropdown-item" onClick={this.onCreatePPTToggle}>{gettext('New PowerPoint File')}</li>
<li className="dropdown-item" onClick={this.onCreateWordToggle}>{gettext('New Word File')}</li>
</ul>
)}
</div>
)}
{Utils.isDesktop() && <ViewModeToolbar currentMode={this.props.currentMode} switchViewMode={this.props.switchViewMode} />}
{this.state.isCreateFileDialogShow && (
<ModalPortal>

View File

@@ -327,20 +327,22 @@ class MultipleDirOperationToolbar extends React.Component {
const dirent = this.props.selectedDirentList[0];
let direntPath = this.getDirentPath(dirent);
if (userPerm !== 'rw' && userPerm !== 'admin') {
return '';
}
return (
<Fragment>
<div className="dir-operation">
<div className="d-flex">
<ButtonGroup className="flex-row group-operations">
<Button className="secondary group-op-item action-icon sf2-icon-move" title={gettext('Move')} onClick={this.onMoveToggle}></Button>
<Button className="secondary group-op-item action-icon sf2-icon-copy" title={gettext('Copy')} onClick={this.onCopyToggle}></Button>
<Button className="secondary group-op-item action-icon sf2-icon-delete" title={gettext('Delete')} onClick={this.onItemsDelete}></Button>
<Button className="secondary group-op-item action-icon sf2-icon-download" title={gettext('Download')} onClick={this.onItemsDownload}></Button>
{(userPerm === 'rw' || userPerm === 'admin') && (
<Fragment>
<Button className="secondary group-op-item action-icon sf2-icon-move" title={gettext('Move')} onClick={this.onMoveToggle}></Button>
<Button className="secondary group-op-item action-icon sf2-icon-copy" title={gettext('Copy')} onClick={this.onCopyToggle}></Button>
<Button className="secondary group-op-item action-icon sf2-icon-delete" title={gettext('Delete')} onClick={this.onItemsDelete}></Button>
</Fragment>
)}
{(userPerm === 'rw' || userPerm === 'admin' || userPerm === 'r') && (
<Button className="secondary group-op-item action-icon sf2-icon-download" title={gettext('Download')} onClick={this.onItemsDownload}></Button>
)}
{this.props.selectedDirentList.length === 1 &&
<ItemDropdownMenu
tagName={'button'}

View File

@@ -5,6 +5,7 @@
display: flex;
flex: 1;
align-items: center;
height: 32px;
}
.border-left-show:before {

View File

@@ -54,6 +54,11 @@ const propTypes = {
class LibContentToolbar extends React.Component {
render() {
if (!this.props.userPerm) {
return <div className="cur-view-toolbar"></div>
}
if (this.props.isViewFile) {
return (
<Fragment>