| Server IP : 195.130.67.5 / Your IP : 216.73.217.154 Web Server : Microsoft-IIS/10.0 System : Windows NT WEBSERVER1 10.0 build 17763 (Windows Server 2016) i586 User : IUSR ( 0) PHP Version : 7.4.19 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /Old Sites/ict/wp-content/plugins/really-simple-ssl/settings/src/Settings/ |
Upload File : |
import Hyperlink from "../utils/Hyperlink";
import * as rsssl_api from "../utils/api";
import useFields from "./FieldsData";
import Icon from "../utils/Icon";
import {useState} from "@wordpress/element";
/**
* Render a help notice in the sidebar
*/
const Button = (props) => {
const {addHelpNotice} = useFields();
const [processing, setProcessing] = useState(false);
const {fields} = useFields();
const onClickHandler = async (action) => {
let data = {};
setProcessing(true);
data.fields = fields;
await rsssl_api.doAction(action, data).then((response) => {
let label = response.success ? 'success' : 'warning';
let title = response.title;
let text = response.message;
setProcessing(false);
addHelpNotice(props.field.id, label, text, title, false);
});
}
let is_disabled = !!props.field.disabled;
return (
<>
{ props.field.url &&
<Hyperlink className={"button button-default"} disabled={is_disabled} text={props.field.button_text} url={props.field.url}/>
}
{ props.field.action &&
<button onClick={ () => onClickHandler( props.field.action ) } className="button button-default" disabled={is_disabled}>
{props.field.button_text}
{processing && <Icon name = "loading" color = 'grey' />}
</button>
}
</>
);
}
export default Button