Comments: Fixed JS error when lacking commenting permissions
The page comments component would throw an error due to references to form elements/content, when form elements may not exist due to permisisons. For #4531
This commit is contained in:
parent
15da4b98ef
commit
99eb3e5f71
1 changed files with 6 additions and 8 deletions
|
@ -27,16 +27,12 @@ export class PageComments extends Component {
|
|||
|
||||
// Internal State
|
||||
this.parentId = null;
|
||||
this.formReplyText = this.formReplyLink.textContent;
|
||||
this.formReplyText = this.formReplyLink?.textContent || '';
|
||||
|
||||
this.setupListeners();
|
||||
}
|
||||
|
||||
setupListeners() {
|
||||
this.removeReplyToButton.addEventListener('click', this.removeReplyTo.bind(this));
|
||||
this.hideFormButton.addEventListener('click', this.hideForm.bind(this));
|
||||
this.addCommentButton.addEventListener('click', this.showForm.bind(this));
|
||||
|
||||
this.elem.addEventListener('page-comment-delete', () => {
|
||||
this.updateCount();
|
||||
this.hideForm();
|
||||
|
@ -47,6 +43,9 @@ export class PageComments extends Component {
|
|||
});
|
||||
|
||||
if (this.form) {
|
||||
this.removeReplyToButton.addEventListener('click', this.removeReplyTo.bind(this));
|
||||
this.hideFormButton.addEventListener('click', this.hideForm.bind(this));
|
||||
this.addCommentButton.addEventListener('click', this.showForm.bind(this));
|
||||
this.form.addEventListener('submit', this.saveComment.bind(this));
|
||||
}
|
||||
}
|
||||
|
@ -123,9 +122,8 @@ export class PageComments extends Component {
|
|||
this.showForm();
|
||||
this.parentId = commentLocalId;
|
||||
this.replyToRow.toggleAttribute('hidden', false);
|
||||
const replyLink = this.replyToRow.querySelector('a');
|
||||
replyLink.textContent = this.formReplyText.replace('1234', this.parentId);
|
||||
replyLink.href = `#comment${this.parentId}`;
|
||||
this.formReplyLink.textContent = this.formReplyText.replace('1234', this.parentId);
|
||||
this.formReplyLink.href = `#comment${this.parentId}`;
|
||||
}
|
||||
|
||||
removeReplyTo() {
|
||||
|
|
Loading…
Reference in a new issue