/**
  * Implements hook_field_attach_submit().
  */
 public function hook_field_attach_submit($entity, &$form, &$form_state)
 {
     // Call parent.
     parent::hook_field_attach_submit($entity, $form, $form_state);
     // Save paragraph item panelizer settings.
     if (!empty($form_state['panelizer has choice'])) {
         list($entity_id, $revision_id, $bundle) = entity_extract_ids($this->entity_type, $entity);
         foreach ($this->plugin['view modes'] as $view_mode => $view_mode_info) {
             if (isset($form['#parents']) && drupal_array_nested_key_exists($form_state['values'], $form['#parents'])) {
                 $values = drupal_array_get_nested_value($form_state['values'], $form['#parents']);
                 if (isset($values['panelizer'][$view_mode]['name'])) {
                     $entity->panelizer[$view_mode] = clone $this->get_default_panelizer_object($bundle . '.' . $view_mode, $values['panelizer'][$view_mode]['name']);
                     if (!empty($entity->panelizer[$view_mode])) {
                         $entity->panelizer[$view_mode]->did = NULL;
                         // Ensure original values are maintained, if they exist.
                         if (isset($form['panelizer'][$view_mode]['name'])) {
                             $entity->panelizer[$view_mode]->entity_id = $form['panelizer'][$view_mode]['name']['#entity_id'];
                             $entity->panelizer[$view_mode]->revision_id = $form['panelizer'][$view_mode]['name']['#revision_id'];
                         }
                     }
                 }
             }
         }
     }
 }