![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /var/www/html/libs/absol-form/js/blocks/ |
Upload File : |
import {AssemblerInstance} from "../core/Assembler"; import BaseBlock from "../core/BaseBlock"; import inheritComponentClass from "../core/inheritComponentClass"; import YesNoQuestionDialog from "absol-acomp/js/YesNoQuestionDialog"; import {_} from "../core/FCore"; /*** * @extends BaseBlock * @constructor */ function YesNoQuestion() { BaseBlock.call(this); } inheritComponentClass(YesNoQuestion, BaseBlock); YesNoQuestion.prototype.tag = 'YesNoQuestion'; YesNoQuestion.prototype.menuIcon = 'span.mdi.mdi-chat-question-outline'; YesNoQuestion.prototype.exec = function () { var self = this; if (window.ModalElement && window.ModalElement.question) { ModalElement.question({ title: this.attributes.title, message: this.attributes.message, onclick: function (buttonIdx) { self.resolve(buttonIdx == 0); } }); } else { this.executeBuildInModal(); } }; YesNoQuestion.prototype.executeBuildInModal = function () { var self = this; var modal = _({ tag: 'modal', child: { tag: YesNoQuestionDialog.tag, props: { dialogTitle: this.attributes.title, message: this.attributes.message }, on: { action: function (event) { modal.remove(); self.resolve(event.action === 'yes'); } } } }).addTo(document.body); }; YesNoQuestion.prototype.resolve = function (val) { this.result = val; this.pinFire('result'); }; YesNoQuestion.prototype.pinHandlers.signal = { receives: function (value) { if (value) this.exec(); }, descriptor: { type: "bool" } }; YesNoQuestion.prototype.pinHandlers.result = { get: function () { return this.result; }, descriptor: { type: 'bool' } }; AssemblerInstance.addClass(YesNoQuestion); export default YesNoQuestion;