import React from "react";
import  Modal from  "./Modal";
import ReactDOM from 'react-dom';


function message(config) {
  let div = document.createElement('div');
  document.body.appendChild(div);
  let {title, size = 'sm', message, cancelBtn, cancel, success} = config;

  function onCancel() {
    ReactDOM.unmountComponentAtNode(div);
    if (cancel && cancel instanceof Function) {
      cancel();
    }
  }

  function onOK() {
    ReactDOM.unmountComponentAtNode(div);
    if (success && success instanceof Function) {
      success();
    }
  }

  ReactDOM.render(
    <Modal title={title} size={size} closebtn={true} show={true} onHide={onCancel}>
      <div className="modal-body">
        {message}
      </div>
      <div className="modal-footer">
        <button type="button" className="btn btn-primary" onClick={onOK}>确定</button>
        {cancelBtn ? < button type="button" className="btn btn-default" onClick={onCancel}>取消</button> : null}
      </div>
    </Modal>
    , div)
}

exports.alert = function (config) {
  message(config);
};

exports.confirm = function (config) {
  message(Object.assign(config, {cancelBtn: true}))
};
