docbrown/app/javascript/packs/articleModerationTools.js
Arit Amana a78ccf2310
[deploy] [ModCenter] Fix "FlagUser" Modal functionality (#8995)
* Make FlagUserModal show up on click

* Explain extra div

* Make sure "Vomit All" reaction fires accurately

* Make test-file comment clearer

* Fix bug when 2 articles are open and the FlagUser modal does not open for the first article

* Still working it out ...

* Tests broken; need help

* Get rid of debugging alerts

* Fixed broken tests for <SingleArticle />

* Write tests for ModerationArticles component

* Complete tests for ModerationArticles component

* Employ safer Preact testing techniques

* Query all articles using "data-testid"

* Revert changes

* Got it working with portals for non-iframe implementation.

* wip tests

* Got mod tools flag user modal wprking on article page again.

* Added some documentation the code.

* Now confirm is disabled until you select an item in the flag user modal.

* Revert "wip tests"

This reverts commit fb7a0825039fd377cad04d9dedad9d1146b03978.

* test prep

* Fixed broken test.

* Refactored to use useRef hook.

* Rename a variable

* remove unnecessary comments

Co-authored-by: Nick Taylor <nick@dev.to>
2020-07-15 13:54:52 -04:00

31 lines
967 B
JavaScript

/* eslint-disable no-restricted-globals */
/* eslint-disable no-undef */
const user = userData();
const { authorId: articleAuthorId, path } = document.getElementById(
'article-show-container',
).dataset;
const initializeModerationsTools = async () => {
const { default: initializeActionsPanel } = await import(
'../actionsPanel/initializeActionsPanelToggle'
);
const { initializeFlagUserModal } = await import('./flagUserModal');
// article show page
if (
user.trusted &&
user.id !== articleAuthorId &&
!top.document.location.pathname.endsWith('/mod')
) {
initializeActionsPanel(user, path);
initializeFlagUserModal(articleAuthorId);
// dev.to/mod
} else if (user.trusted && top.document.location.pathname.endsWith('/mod')) {
initializeActionsPanel(user, path);
initializeFlagUserModal(articleAuthorId);
}
};
initializeModerationsTools();
/* eslint-enable no-restricted-globals */
/* eslint-enable no-undef */