You are here

function cms_content_sync_draggableviews_views_submit in CMS Content Sync 2.1.x

Same name and namespace in other branches
  1. 8 modules/cms_content_sync_draggableviews/cms_content_sync_draggableviews.module \cms_content_sync_draggableviews_views_submit()
  2. 2.0.x modules/cms_content_sync_draggableviews/cms_content_sync_draggableviews.module \cms_content_sync_draggableviews_views_submit()

Submit handler.

1 string reference to 'cms_content_sync_draggableviews_views_submit'
cms_content_sync_draggableviews_form_alter in modules/cms_content_sync_draggableviews/cms_content_sync_draggableviews.module
Implements hook_form_alter().

File

modules/cms_content_sync_draggableviews/cms_content_sync_draggableviews.module, line 37

Code

function cms_content_sync_draggableviews_views_submit(&$form, FormStateInterface $form_state) {
  $input = $form_state
    ->getUserInput();

  /** @var \Drupal\views\ViewExecutable $view */
  $view = $form_state
    ->getBuildInfo()['args'][0];
  $entity_type = $view
    ->getBaseEntityType();
  if (!$entity_type) {
    return;
  }
  $storage = Drupal::entityTypeManager()
    ->getStorage($entity_type
    ->id());
  $operations = PushEntities::create(Drupal::getContainer());
  $operations
    ->skipUnpushed();
  foreach ($input['draggableviews'] as $item) {
    $entity = $storage
      ->load($item['id']);
    $operations
      ->addEntity($entity);
  }
  $operations
    ->showSkipped();
  if ($operations
    ->isEmpty()) {
    return;
  }
  $operations
    ->setCallback('cms_content_sync_draggableviews_batch_pushed');
  $operations
    ->start();
}