protected NodeRevisionRevertTranslationForm::prepareRevertedRevision(NodeInterface $revision, FormStateInterface $form_state)
Prepares a revision to be reverted.
Parameters
\Drupal\node\NodeInterface $revision: The revision to be reverted.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
Return value
\Drupal\node\NodeInterface The prepared revision ready to be stored.
Overrides NodeRevisionRevertForm::prepareRevertedRevision
File
- core/modules/node/src/Form/NodeRevisionRevertTranslationForm.php, line 97
Class
- NodeRevisionRevertTranslationForm
- Provides a form for reverting a node revision for a single translation.
Namespace
Drupal\node\Form
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | protected function prepareRevertedRevision(NodeInterface $revision , FormStateInterface $form_state ) { $revert_untranslated_fields = $form_state ->getValue( 'revert_untranslated_fields' ); /** @var \Drupal\node\NodeInterface $default_revision */ $latest_revision = $this ->nodeStorage->load( $revision ->id()); $latest_revision_translation = $latest_revision ->getTranslation( $this ->langcode); $revision_translation = $revision ->getTranslation( $this ->langcode); foreach ( $latest_revision_translation ->getFieldDefinitions() as $field_name => $definition ) { if ( $definition ->isTranslatable() || $revert_untranslated_fields ) { $latest_revision_translation ->set( $field_name , $revision_translation ->get( $field_name )->getValue()); } } $latest_revision_translation ->setNewRevision(); $latest_revision_translation ->isDefaultRevision(TRUE); return $latest_revision_translation ; } |
Please login to continue.