File Editor
Directories:
.. (Back)
Files:
Modal.js
ModalControl.js
ModalData.js
Create New File
Create
Edit File: Modal.js
import { __ } from '@wordpress/i18n'; import * as rsssl_api from "../utils/api"; import Icon from "../utils/Icon"; import useModal from "./ModalData"; import {useState} from '@wordpress/element'; const Modal = (props) => { const {handleModal, modalData, setModalData, showModal, setIgnoredItemId, setFixedItemId, item} = useModal(); const [buttonsDisabled, setButtonsDisabled] = useState(false); const dismissModal = () => { handleModal(false, null, null); } const handleFix = (e, type) => { //set to disabled let action = modalData.action; setButtonsDisabled(true); rsssl_api.runTest(action, 'refresh', modalData ).then( ( response ) => { let data = {...modalData}; data.description = response.msg; data.subtitle = ''; setModalData(data); setButtonsDisabled(false); if (response.success) { if (type==='ignore' && item !==false ) { setIgnoredItemId(item.id); } else { setFixedItemId(item.id); } handleModal(false, null); } }); } if (!showModal) { return (<></>); } let disabled = buttonsDisabled ? 'disabled' : ''; let description = modalData.description; if ( !Array.isArray(description) ) { description = [description]; } return ( <div> <div className="rsssl-modal-backdrop" onClick={ (e) => dismissModal(e) }> </div> <div className="rsssl-modal" id="{id}"> <div className="rsssl-modal-header"> <h2 className="modal-title"> {modalData.title} </h2> <button type="button" className="rsssl-modal-close" data-dismiss="modal" aria-label="Close" onClick={ (e) => dismissModal(e) }> <Icon name='times' /> </button> </div> <div className="rsssl-modal-content"> { modalData.subtitle && <div className="rsssl-modal-subtitle">{modalData.subtitle}</div>} { Array.isArray(description) && description.map((s, i) => <div key={"modalDescription-"+i} className="rsssl-modal-description">{s}</div>) } </div> <div className="rsssl-modal-footer"> { modalData.edit && <a href={modalData.edit} target="_blank" rel="noopener noreferrer" className="button button-secondary">{__("Edit", "really-simple-ssl")}</a>} { modalData.help && <a href={modalData.help} target="_blank" rel="noopener noreferrer" className="button rsssl-button-help">{__("Help", "really-simple-ssl")}</a>} { (!modalData.ignored && modalData.action==='ignore_url') && <button disabled={disabled} className="button button-primary" onClick={ (e) => handleFix(e, 'ignore') }>{ __("Ignore", "really-simple-ssl")}</button>} { modalData.action!=='ignore_url' && <button disabled={disabled} className="button button-primary" onClick={ (e) => handleFix(e, 'fix') }>{__("Fix", "really-simple-ssl")}</button> } </div> </div> </div> ) } export default Modal;
Save Changes
Rename File
Rename