%PDF- %PDF-
Server IP : 37.220.80.31 / Your IP : 18.117.74.41 Web Server : Apache/2.4.52 (Ubuntu) System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64 User : www-root ( 1010) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/www-root/data/www/dev.artlot24.ru/bitrix/js/report/js/visualconstructor/ |
Upload File : |
;(function(){ "use strict"; BX.namespace("BX.Report.VisualConstructor.Field"); BX.Report.VisualConstructor.Field.Base = function(options) { this.form = options.form || null; this.events = options.events || []; this.behaviours = options.behaviours || []; this.fieldScope = options.fieldScope || null; if (this.fieldScope) { this.form = BX.findParent(this.fieldScope, { tag: 'form' }); } for (var b = 0; b < this.behaviours.length; b++) { var behaviour = this.behaviours[b]; BX.addCustomEvent(this.fieldScope, behaviour['eventName'], this.baseEventHandler.bind(this, behaviour)); } BX.Report.VisualConstructor.Field.InitFieldRepository.add(this); }; BX.Report.VisualConstructor.Field.Base.prototype = { baseEventHandler: function(event, ownerElement, optionsFromEvent) { var currentFieldDomeElement = this.getForm().querySelector(event['behaviorOwnerSelector']); var options = { action: event['handlerParams']['action'], currentField: currentFieldDomeElement, ownerField: ownerElement.fieldScope, additionalParams: event['handlerParams']['additionalParams'] || [], currentFieldObject: this.findElementInRenderedElementsRepository(currentFieldDomeElement), ownerFieldObject: ownerElement, optionsFromEvent: optionsFromEvent }; var eventHandler = null; if (event.handlerParams.class) { var callbackClass = BX.Report.VC.Core.getClass(event.handlerParams.class); if (callbackClass) { eventHandler = new callbackClass(options); eventHandler.process(); } else { throw "Class with name: " + event.handlerParams.class + " not exist"; } } else { eventHandler = new BX.Report.VisualConstructor.Field.BaseHandler(options); eventHandler.process(); } }, findElementInRenderedElementsRepository: function(domElement) { return BX.Report.VisualConstructor.Field.InitFieldRepository.getByDomElement(domElement); }, getForm: function() { return this.form; } }; BX.Report.VisualConstructor.Field.BaseHandler = function(options) { this.action = options.action || ''; this.currentField = options.currentField || {}; this.currentFieldObject = options.currentFieldObject || {}; this.ownerField = options.ownerField || {}; this.ownerFieldObject = options.ownerFieldObject || {}; this.additionalParams = options.additionalParams || {}; this.optionsFromEvent = options.optionsFromEvent || {}; }; BX.Report.VisualConstructor.Field.BaseHandler.prototype = { //TODO: refactor to map @important process: function() { switch (this.action) { case 'setValue': this.setValue(); break; } }, setValue: function() { this.currentField.value = this.additionalParams.value; } }; BX.Report.VisualConstructor.Field.InitFieldRepository = { fields: [], add: function(field) { this.fields.push(field) }, getByDomElement: function(element) { for (var i in this.fields) { if (this.fields[i].fieldScope === element) { return this.fields[i]; } } return null; } } })();