mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-10 11:21:29 +00:00
@@ -14,7 +14,8 @@ const propTypes = {
|
||||
docPerm: PropTypes.string.isRequired,
|
||||
isStarred: PropTypes.bool.isRequired,
|
||||
toggleStar: PropTypes.func.isRequired,
|
||||
unmarkDraft: PropTypes.func.isRequired
|
||||
unmarkDraft: PropTypes.func.isRequired,
|
||||
onNewNotification: PropTypes.func.isRequired
|
||||
};
|
||||
|
||||
class ExternalOperations extends React.Component {
|
||||
@@ -34,8 +35,9 @@ class ExternalOperations extends React.Component {
|
||||
this.unsubscribeStar = eventBus.subscribe(EXTERNAL_EVENT.TOGGLE_STAR, this.toggleStar);
|
||||
this.unsubscribeUnmark = eventBus.subscribe(EXTERNAL_EVENT.UNMARK_AS_DRAFT, this.unmark);
|
||||
this.unsubscribeShare = eventBus.subscribe(EXTERNAL_EVENT.SHARE_SDOC, this.onShareToggle);
|
||||
this.unsubscribeShare = eventBus.subscribe(EXTERNAL_EVENT.FREEZE_DOCUMENT, this.onFreezeDocument);
|
||||
this.unsubscribeShare = eventBus.subscribe(EXTERNAL_EVENT.UNFREEZE, this.unFreeze);
|
||||
this.unsubscribeFreezeDocument = eventBus.subscribe(EXTERNAL_EVENT.FREEZE_DOCUMENT, this.onFreezeDocument);
|
||||
this.unsubscribeUnfreeze = eventBus.subscribe(EXTERNAL_EVENT.UNFREEZE, this.unFreeze);
|
||||
this.unsubscribeNewNotification = eventBus.subscribe(EXTERNAL_EVENT.NEW_NOTIFICATION, this.onNewNotification);
|
||||
}
|
||||
|
||||
componentWillUnmount() {
|
||||
@@ -43,6 +45,9 @@ class ExternalOperations extends React.Component {
|
||||
this.unsubscribeStar();
|
||||
this.unsubscribeUnmark();
|
||||
this.unsubscribeShare();
|
||||
this.unsubscribeFreezeDocument();
|
||||
this.unsubscribeUnfreeze();
|
||||
this.unsubscribeNewNotification();
|
||||
}
|
||||
|
||||
onInternalLinkToggle = (options) => {
|
||||
@@ -107,6 +112,10 @@ class ExternalOperations extends React.Component {
|
||||
});
|
||||
};
|
||||
|
||||
onNewNotification = () => {
|
||||
this.props.onNewNotification();
|
||||
};
|
||||
|
||||
render() {
|
||||
const { repoID, docPath, docName, docPerm } = this.props;
|
||||
const { isShowInternalLinkDialog, isShowShareDialog, internalLink } = this.state;
|
||||
|
@@ -15,9 +15,7 @@ export default class SdocEditor extends React.Component {
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
const { docName } = window.seafile;
|
||||
const fileIcon = Utils.getFileIconUrl(docName, 192);
|
||||
document.getElementById('favicon').href = fileIcon;
|
||||
this.onSetFavicon();
|
||||
}
|
||||
|
||||
toggleStar = (isStarred) => {
|
||||
@@ -28,6 +26,19 @@ export default class SdocEditor extends React.Component {
|
||||
this.setState({isDraft: false});
|
||||
};
|
||||
|
||||
onSetFavicon = (suffix) => {
|
||||
let { docName } = window.seafile;
|
||||
if (suffix) {
|
||||
docName = docName + suffix;
|
||||
}
|
||||
const fileIcon = Utils.getFileIconUrl(docName, 192);
|
||||
document.getElementById('favicon').href = fileIcon;
|
||||
};
|
||||
|
||||
onNewNotification = () => {
|
||||
this.onSetFavicon('_notification');
|
||||
};
|
||||
|
||||
render() {
|
||||
const { repoID, docPath, docName, docPerm } = window.seafile;
|
||||
const { isStarred, isDraft } = this.state;
|
||||
@@ -42,6 +53,7 @@ export default class SdocEditor extends React.Component {
|
||||
isStarred={isStarred}
|
||||
toggleStar={this.toggleStar}
|
||||
unmarkDraft={this.unmarkDraft}
|
||||
onNewNotification={this.onNewNotification}
|
||||
/>
|
||||
</Fragment>
|
||||
);
|
||||
|
@@ -106,6 +106,7 @@ export const Utils = {
|
||||
// default
|
||||
'default' : 'file.png',
|
||||
'sdoc': 'sdoc.png',
|
||||
'sdoc_notification': 'sdoc_notification.ico'
|
||||
},
|
||||
|
||||
// check if a file is an image
|
||||
|
BIN
media/img/file/192/sdoc_notification.ico
Normal file
BIN
media/img/file/192/sdoc_notification.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.2 KiB |
Reference in New Issue
Block a user