import ScillaComponent from "scilla-components/src/base/ScillaComponent";
import { engine, Entity } from "scilla/src";
import { initEnv } from "./common/BuriedPoint";
import Toast from "./common/Toast";
import Popup from "./popup/Popup";

export default class MainController extends ScillaComponent {
	Popup: Entity;//PopupContainer 弹窗容器
	Toast: Entity;//toast 实体

	private _toast: Toast;
	private _popup: Popup;

	onAwake() {
		super.onAwake();

		engine.dataCenter.set('CFG', window['CFG']);

		this._toast = this.Toast.getComponent(Toast);
		this._popup = this.Popup.getComponent(Popup);

		initEnv();

		console.log('游戏刷新了...');
		// const limit = localStorage.getItem('')
	}

	

	// onGotAjaxElement() {
	// 	setTimeout(() => {
	// 		this.broadcast('initGameStage');
	// 	}, 1000);
	// }

	// onGotAjaxElementError(e) {
	// 	console.log(e);

	// 	// if (typeof e === 'string') {
	// 	// 	switch (e) {
	// 	// 		case '0100016': //活动未开始
	// 	// 		case '0100014': //活动已结束
	// 	// 		case '0100017': //活动已关闭
	// 	// 			this.showErrorToast(e);
	// 	// 			break;
	// 	// 		default:
	// 	// 			this.showNetError();
	// 	// 	}
	// 	// } else {
	// 	// 	this.showNetError();
	// 	// }
	// }

	// showErrorToast(e) {
	// 	// switch (e) {
	// 	// 	case '0100016': //活动未开始
	// 	// 		this.showToast('活动未开始，暂时无法参与');
	// 	// 		break;
	// 	// 	case '0100014': //活动已结束
	// 	// 	case '0100017': //活动已关闭
	// 	// 		this.showToast('活动已结束，无法参与');
	// 	// 		break;
	// 	// }
	// }

	showToast(content, duration?) {
		this._toast.show({
			content,
			duration,
		})
	}

	showDialog(name, data?, callback?) {
		this._popup.showDialog(name, data, callback);
	}

	showNetError(action?) {
		// this.showDialog('Alert', { title: '网络异常', content: '请检查网络后重试!', button: '重新加载', showCloseButton: false }, () => {
		// 	if (typeof action === 'function') {
		// 		action();
		// 	} else {
		// 		action = action || 'refresh';
		// 		switch (action) {
		// 			case 'back':
		// 				history.back();
		// 				break;
		// 			case 'refresh':
		// 				location.reload();
		// 				break;
		// 		}
		// 	}
		// })
	}
}
