1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-17 07:41:26 +00:00

Merge pull request #3336 from haiwen/fix-delete-tag-bug

fix delete file tag
This commit is contained in:
Daniel Pan
2019-04-22 16:17:28 +08:00
committed by GitHub
6 changed files with 18 additions and 2 deletions

View File

@@ -123,6 +123,7 @@ class DirTool extends React.Component {
onClose={this.onCloseRepoTagDialog}
toggleCancel={this.onUpdateRepoTagToggle}
onDeleteRepoTag={this.props.onDeleteRepoTag}
updateUsedRepoTags={this.props.updateUsedRepoTags}
/>
)}

View File

@@ -46,14 +46,15 @@ class TagListItem extends React.Component {
render() {
let color = this.props.item.color;
let drakColor = Utils.getDarkColor(color);
const fileCount = this.props.item.fileCount;
let fileTranslation = (fileCount === 1 || fileCount === 0) ? gettext('file') : gettext('files');
return (
<li className="tag-list-item">
<div className="tag-demo" style={{backgroundColor:color}} onMouseOver={this.onMouseOver} onMouseOut={this.onMouseOut}>
<span className={`${this.state.showSelectedTag ? 'show-tag-selected': ''}`} style={{backgroundColor: drakColor}}></span>
<span className="tag-name">{this.props.item.name}</span>
<span className="tag-files" onClick={this.onListTaggedFiles}>
{/* todo 0 file 2 files */}
{this.props.item.fileCount}{' '}{'files'}
{fileCount}{' '}{fileTranslation}
</span>
</div>
<i className="tag-edit fa fa-pencil-alt" onClick={this.onTagUpdate}></i>

View File

@@ -12,6 +12,7 @@ const propTypes = {
toggleCancel: PropTypes.func.isRequired,
onClose: PropTypes.func.isRequired,
updateUsedRepoTags: PropTypes.func.isRequired,
onFileTagChanged: PropTypes.func,
};
class ListTaggedFilesDialog extends React.Component {
@@ -23,12 +24,20 @@ class ListTaggedFilesDialog extends React.Component {
};
}
onFileTagChanged = (TaggedFile) => {
const path = TaggedFile.parent_path;
const dirent = {name: TaggedFile.filename};
let direntPath = path === '/' ? path + TaggedFile.filename : path + '/' + TaggedFile.filename;
this.props.onFileTagChanged(dirent, direntPath);
}
onDeleteTaggedFile = (taggedFile) => {
let repoID = this.props.repoID;
let fileTagID = taggedFile.file_tag_id;
seafileAPI.deleteFileTag(repoID, fileTagID).then(res => {
this.getTaggedFiles();
this.props.updateUsedRepoTags();
if (this.props.onFileTagChanged) this.onFileTagChanged(taggedFile);
});
}

View File

@@ -9,6 +9,7 @@ const propTypes = {
repoID: PropTypes.string.isRequired,
toggleCancel: PropTypes.func.isRequired,
onDeleteRepoTag: PropTypes.func.isRequired,
updateUsedRepoTags: PropTypes.func.isRequired,
onClose: PropTypes.func.isRequired
};
@@ -48,6 +49,7 @@ class UpdateTagDialog extends React.Component {
let repoID = this.props.repoID;
seafileAPI.updateRepoTag(repoID, tag_id, name, color).then(() => {
this.props.toggleCancel();
this.props.updateUsedRepoTags();
});
}

View File

@@ -64,6 +64,7 @@ class DirListView extends React.Component {
draftCounts={this.props.draftCounts}
usedRepoTags={this.props.usedRepoTags}
updateUsedRepoTags={this.props.updateUsedRepoTags}
onFileTagChanged={this.props.onFileTagChanged}
/>
)}
<DirentListView

View File

@@ -16,6 +16,7 @@ const propTypes = {
readmeMarkdown: PropTypes.object,
draftCounts: PropTypes.number,
updateUsedRepoTags: PropTypes.func.isRequired,
onFileTagChanged: PropTypes.func.isRequired,
};
class RepoInfoBar extends React.Component {
@@ -107,6 +108,7 @@ class RepoInfoBar extends React.Component {
onClose={this.onCloseDialog}
toggleCancel={this.onListTaggedFiles}
updateUsedRepoTags={this.props.updateUsedRepoTags}
onFileTagChanged={this.props.onFileTagChanged}
/>
</ModalPortal>
)}