public function registerAsset() { parent::registerAsset(); $this->view->registerJs(<<<JS (function(sx, \$, _) { sx.classes.GridEditSettings = sx.classes.Component.extend({ _init: function() { var self = this; this.Window = new sx.classes.Window(this.get('url')); this.Window.bind('close', function(e, data) { self.reload(); }); this.Window.open(); }, reload: function() { if (this.get('enabledPjax')) { var id = null; var pjax = this.get('pjax'); if (pjax.options) { id = pjax.options.id; } if (id) { \$.pjax.reload('#' + id, {}); return this; } } window.location.reload(); return this; }, _onDomReady: function() {}, _onWindowReady: function() {} }); })(sx, sx.\$, sx._); JS ); }