1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-03 16:10:26 +00:00

custom share permission (#4967)

* custom share permission

* remove path field

* add permission manager ui

* optimize custom permission manager style

* add permission setting

* add normalize_custom_permission_name

* optimize repo custom permission

* delete useless code

* optimize code

* optimize code

* optimize markdown file page

* fix a few bugs

* add permission control

* repair modify permission

* optimize style

* optimize copyright

* add try-except

* optimize code

* move file&folder

* batch operation item

* repair batch move item

* update copyright

* optimize move permission control

* optimize code

* optimize code

* optimize code & fix code wranning

* optimize code

* delete unsupport permission

* optimize code

* repair code bug

* add pro limit

* optimize code

* add permission handle for permission editor

* repair new file&folder bug

* optimize file uploader code

* custom permission user can not visit custom permission module

* optimize code

* forbid comment&detail module

* optimize code

* optimize modify/preview permission

* optimize custom permission share perm

* optimize view file module: file-toolbar

* optimize custom drag move operation

* repair column view bug

* optimize drag operation code

* repair code bug

* optimize code

Co-authored-by: shanshuirenjia <978987373@qq.com>
This commit is contained in:
王健辉
2021-09-13 10:37:07 +08:00
committed by GitHub
parent 1f68680257
commit 07df610e43
60 changed files with 1965 additions and 287 deletions

View File

@@ -1,6 +1,6 @@
import React, { Fragment } from 'react';
import PropTypes from 'prop-types';
import {gettext, isPro, siteRoot} from '../../utils/constants';
import { gettext, isPro } from '../../utils/constants';
import { Button } from 'reactstrap';
import { seafileAPI } from '../../utils/seafile-api.js';
import { Utils } from '../../utils/utils';
@@ -49,7 +49,7 @@ class UserItem extends React.Component {
render() {
let item = this.props.item;
let currentPermission = item.is_admin ? 'admin' : item.permission;
let currentPermission = Utils.getSharedPermission(item);
const { isUserDetailsPopoverOpen } = this.state;
return (
<tr onMouseEnter={this.onMouseEnter} onMouseLeave={this.onMouseLeave}>
@@ -79,6 +79,7 @@ class UserItem extends React.Component {
</td>
<td>
<SharePermissionEditor
repoID={this.props.repoID}
isTextMode={true}
isEditIconShow={this.state.isOperationShow}
currentPermission={currentPermission}
@@ -110,6 +111,7 @@ class UserList extends React.Component {
<UserItem
key={index}
item={item}
repoID={this.props.repoID}
permissions={this.props.permissions}
deleteShareItem={this.props.deleteShareItem}
onChangeUserPermission={this.props.onChangeUserPermission}
@@ -127,6 +129,7 @@ const propTypes = {
itemType: PropTypes.string.isRequired,
repoID: PropTypes.string.isRequired,
isRepoOwner: PropTypes.bool.isRequired,
onAddCustomPermissionToggle: PropTypes.func,
};
class ShareToUser extends React.Component {
@@ -333,11 +336,14 @@ class ShareToUser extends React.Component {
</td>
<td>
<SharePermissionEditor
repoID={this.props.repoID}
isTextMode={false}
isEditIconShow={false}
currentPermission={this.state.permission}
permissions={this.permissions}
onPermissionChanged={this.setPermission}
enableAddCustomPermission={isPro}
onAddCustomPermissionToggle={this.props.onAddCustomPermissionToggle}
/>
</td>
<td>
@@ -365,6 +371,7 @@ class ShareToUser extends React.Component {
<table className="table-thead-hidden w-xs-200">
{thead}
<UserList
repoID={this.props.repoID}
items={sharedItems}
permissions={this.permissions}
deleteShareItem={this.deleteShareItem}