|
|
|
@ -12,6 +12,7 @@ export interface IComponentState{ |
|
|
|
|
isBlank: boolean; |
|
|
|
|
prjID: string | number; |
|
|
|
|
isPerm: boolean; |
|
|
|
|
noPermDiv: any; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
export default class SummaryWebPart extends React.Component<ISummaryWebPartProps, IComponentState > { |
|
|
|
@ -20,11 +21,13 @@ export default class SummaryWebPart extends React.Component<ISummaryWebPartProps |
|
|
|
|
isLoaded: false, |
|
|
|
|
isBlank: false, |
|
|
|
|
prjID: '', |
|
|
|
|
isPerm: false |
|
|
|
|
isPerm: false, |
|
|
|
|
noPermDiv: <div></div> |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
componentDidMount(){ |
|
|
|
|
const {requestUrl, context } = this.props; |
|
|
|
|
|
|
|
|
|
let relUrl = context.pageContext.web.serverRelativeUrl; |
|
|
|
|
let projectCode = relUrl ? relUrl.split('/')[relUrl.split('/').length - 1] : ''; |
|
|
|
|
|
|
|
|
@ -34,6 +37,11 @@ export default class SummaryWebPart extends React.Component<ISummaryWebPartProps |
|
|
|
|
thisWeb.lists.getByTitle('CustomPerm').items.get().then(e => { |
|
|
|
|
if(e.length){ |
|
|
|
|
this.setState({ isPerm: true }) |
|
|
|
|
}else{ |
|
|
|
|
this.setState({ |
|
|
|
|
noPermDiv: <MessageBar messageBarType={MessageBarType.error} isMultiline={false} dismissButtonAriaLabel="Close"> |
|
|
|
|
{'Отсутствует доступ к странице'} |
|
|
|
|
</MessageBar>}) |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
@ -55,7 +63,8 @@ export default class SummaryWebPart extends React.Component<ISummaryWebPartProps |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public render(): React.ReactElement<ISummaryWebPartProps> { |
|
|
|
|
const { pageData, isLoaded, isBlank, isPerm } = this.state; |
|
|
|
|
const { pageData, isLoaded, isBlank, isPerm, noPermDiv } = this.state; |
|
|
|
|
|
|
|
|
|
return isPerm ? isLoaded ? ( |
|
|
|
|
<div style={{ display: "flex", flexDirection: "column" }}> |
|
|
|
|
<div style={{ display: "flex", justifyContent: "flex-end" }}> |
|
|
|
@ -78,8 +87,6 @@ export default class SummaryWebPart extends React.Component<ISummaryWebPartProps |
|
|
|
|
ariaLive="assertive" |
|
|
|
|
size={SpinnerSize.large} |
|
|
|
|
/> |
|
|
|
|
) : <MessageBar messageBarType={MessageBarType.error} isMultiline={false} dismissButtonAriaLabel="Close"> |
|
|
|
|
{'Отсутствует доступ к странице'} |
|
|
|
|
</MessageBar> |
|
|
|
|
) : noPermDiv |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|