code: protected function handleSaveCallback($field, $widget, $value)
      {
          $newValue = $value;
  
          if (isset($field['save_callback']) && is_array($field['save_callback'])) {
              foreach ($field['save_callback'] as $callback) {
                  $this->import($callback[0]);
  
                  try {
                      $newValue = $this->{$callback[0]}->{$callback[1]}($newValue, $this);
                  } catch (Exception $e) {
                      $widget->addError($e->getMessage());
                      $this->blnSubmitInput = false;
  
                      return $value;
                  }
              }
          }
  
          return $newValue;
      }
docs: Handle the onsave_callback for a widget.
  
  @param array  $field  The field DCA.
  
  @param Widget $widget The widget to validate.
  
  @param mixed  $value  The value.
  
  @return mixed