You are here

function slickgrid_clone_form_submit in Slickgrid 7.2

Submit function for the clone of entities.

File

includes/slickgrid.form.inc, line 97

Code

function slickgrid_clone_form_submit($form, &$form_state) {
  $commands = array();
  if ($form_state['values']['op'] == $form_state['values']['do']) {

    //entity_delete_multiple($form_state['values']['entity_type'], $form_state['values']['entity_ids']);
    module_load_include('ui.inc', 'entity', 'includes/entity');
    $entities_to_clone = entity_load($form_state['values']['entity_type'], $form_state['values']['entity_ids']);
    foreach ($entities_to_clone as $entity_to_clone) {
      $new_entity = _slickgrid_clone_entity($form_state['values']['entity_type'], $entity_to_clone);
      entity_save($form_state['values']['entity_type'], $new_entity);
    }
    $commands[] = ajax_command_invoke('', 'slickgrid_messages', array(
      array(
        array(
          'type' => 'status',
          'message' => format_plural(count($form_state['values']['entity_ids']), t('Cloned the selected row'), t('Cloned the @num selected rows', array(
            '@num' => count($form_state['values']['entity_ids']),
          ))),
        ),
      ),
    ));
    $commands[] = ajax_command_invoke('', 'slickgrid_refresh');
  }
  $commands[] = ajax_command_remove('#' . $form_state['values']['form_id'] . ' ~ div');
  $form_state['slickgrid_commands'] = $commands;
}