diff --git a/typo3/sysext/backend/Classes/Form/Element/AbstractFormElement.php b/typo3/sysext/backend/Classes/Form/Element/AbstractFormElement.php index 2d0540992f8de26b8d59ec36267cb43923034005..a3dcdf6bf886bd661358d856edd987ba4e50c66c 100644 --- a/typo3/sysext/backend/Classes/Form/Element/AbstractFormElement.php +++ b/typo3/sysext/backend/Classes/Form/Element/AbstractFormElement.php @@ -355,10 +355,10 @@ abstract class AbstractFormElement extends AbstractNode { $params = array(); $params['fieldConfig'] = $fieldConfig; $params['field'] = $field; + $params['table'] = $table; $params['flexFormPath'] = $flexFormPath; $params['md5ID'] = $md5ID; $params['itemName'] = $itemName; - $params['fieldChangeFunc'] = $fieldChangeFunc; $params['wConf'] = $wizardConfiguration; $params['row'] = $row; diff --git a/typo3/sysext/backend/Classes/Form/Wizard/ValueSliderWizard.php b/typo3/sysext/backend/Classes/Form/Wizard/ValueSliderWizard.php index 1deb726633190b69dde13cd8a7314106ab4500dd..c99e90d069050b50f2e5034c1cbaf8730eb776c2 100644 --- a/typo3/sysext/backend/Classes/Form/Wizard/ValueSliderWizard.php +++ b/typo3/sysext/backend/Classes/Form/Wizard/ValueSliderWizard.php @@ -80,8 +80,7 @@ class ValueSliderWizard { $step = 1; $value = $index; } - $callback = $params['fieldChangeFunc']['TBE_EDITOR_fieldChanged']; - $getField = $params['fieldChangeFunc']['typo3form.fieldGet']; + $callbackParams = [ $params['table'], $params['row']['uid'], $params['field'], $params['itemName'] ]; $id = 'slider-' . $params['md5ID']; $content = '<div' @@ -94,8 +93,7 @@ class ValueSliderWizard { . ' data-slider-value-type="' . htmlspecialchars($type) . '"' . ' data-slider-item-name="' . htmlspecialchars($itemName) . '"' . ' data-slider-element-type="' . htmlspecialchars($elementType) . '"' - . ' data-slider-field="' . htmlspecialchars($getField) . '"' - . ' data-slider-callback="' . htmlspecialchars($callback) . '"' + . ' data-slider-callback-params="' . htmlspecialchars(json_encode($callbackParams)) . '"' . ' style="width: ' . $width . 'px;"' . '></div>'; diff --git a/typo3/sysext/backend/Resources/Public/JavaScript/ValueSlider.js b/typo3/sysext/backend/Resources/Public/JavaScript/ValueSlider.js index 9964359b02953c4da0341a3c2f32c9c5a2fcd2c3..226442adb86ee3dc917a9759addcb2c18ec92725 100644 --- a/typo3/sysext/backend/Resources/Public/JavaScript/ValueSlider.js +++ b/typo3/sysext/backend/Resources/Public/JavaScript/ValueSlider.js @@ -47,7 +47,7 @@ define('TYPO3/CMS/Backend/ValueSlider', ['jquery', 'twbs/bootstrap-slider'], fun $foreignField = $('[data-formengine-input-name="' + $slider.data('sliderItemName') + '"]'), elementType = $slider.data('sliderElementType'), sliderField = $slider.data('sliderField'), - sliderCallback = $slider.data('sliderCallback'); + sliderCallbackParams = $slider.data('sliderCallbackParams'); switch (elementType) { case 'input': @@ -58,13 +58,7 @@ define('TYPO3/CMS/Backend/ValueSlider', ['jquery', 'twbs/bootstrap-slider'], fun break; } - if (sliderField) { - eval(sliderField); - } - - if (sliderCallback) { - eval(sliderCallback); - } + TBE_EDITOR.fieldChanged.apply(sliderCallbackParams); }; /** @@ -74,7 +68,7 @@ define('TYPO3/CMS/Backend/ValueSlider', ['jquery', 'twbs/bootstrap-slider'], fun */ ValueSlider.renderTooltipValue = function(value) { var renderedValue, - $slider = $('[data-slider-id="' + $(this).get(0).id + '"]'), + $slider = $('[data-slider-id="' + this.id + '"]'), data = $slider.data(); switch (data.sliderValueType) { case 'array':