Hi,
I was able to reproduce this bug, but i don't know how to debug it
The doble insert happens when is missing a required field and i click on save, after that comes the error message, i fill the missing field and do save, after that i have to entries in data base
my code:
public function capturarCarta(){
$date = date('Y-m-d');
$time = date('H:i:s');
$this->load->library('ajax_grocery_CRUD');
$crud = new ajax_grocery_CRUD();
$crud->set_theme($this->tema);
$crud->set_language('spanish');
$crud->set_subject('Carta de Instrucciones');
$crud->where('estatus_estatus_id =',1);
$crud->set_table('carta_instrucciones');
$crud->columns('carta_id','ruta_ruta_id', 'fecha', 'tipo_carta_carta_id', 'tipo_carga_tipo_carga_id','numero_contenedor' );
//$crud->add_fields('ruta_ruta_id', 'tipo_carga_tipo_carga_id', 'fecha', 'usuarios_idusuarios', 'tipo_carta_carta_id','clientes_cliente_id','proveedor_proveedor_id','patio_toma','comentarios_patio', 'fecha_posicionamiento','hora_posicionamiento','lugar_posicionamiento_lugar_posicionamiento_id','lugar_entrega','contacto_entrega','fecha_entrega','agente_aduanal','destino_final','booking','naviera_naviera_id', 'custodia', 'comentario_custodia','peso_maximo_permitido_peso_maximo_id');
$crud->add_fields( 'fecha', 'hora','usuarios_idusuarios', 'tipo_carta_carta_id','clientes_cliente_id','proveedor_proveedor_id','tipo_carga_tipo_carga_id','uni','class','numero_contenedor','comentarios_patio','naviera_naviera_id', 'peso_maximo_permitido_peso_maximo_id','volumen', 'patio_externo', 'booking','contacto_entrega','referencia_cliente','destino_final','lugar_entrega','fecha_posicionamiento','fecha_entrega');
$this->_set_relation($crud);
$this->_display_as($crud);
$this->_set_rules_edit($crud);
$crud->field_type('usuarios_idusuarios', 'hidden', $this->userid);
$crud->field_type('fecha', 'hidden', $date);
$crud->field_type('hora', 'hidden', $time);
$crud->field_type('carta_id', 'readonly');
$crud->field_type('tipo_carta_carta_id', 'hidden', 4);
$crud->unset_texteditor('comentarios_patio');
$crud->unset_delete();
$crud->unset_print();
$crud->unset_list();
$crud->unset_back_to_list();
$controller = 'cartamaritima';
$function = 'listaAbiertas';
$parameter = 'usuario';
$crud->set_lang_string('insert_success_message',
'La carta ha sido guardada exitosamente en la base de datos.<br/>Por favor espera a ser reditigido a la lista de Cartas Abiertas.
<script type="text/javascript">
window.location = "'.site_url($controller.'/'.$function.'/'.$parameter).'";
</script>
<div style="display:none">
'
);
try{
$output=$crud->render();
} catch(Exception $e) {
if($e->getCode() == 14) //The 14 is the code of the "You don't have permissions" error on grocery CRUD.
{
redirect(strtolower(__CLASS__).'/'.strtolower(__FUNCTION__).'/add');
}
else
{
show_error($e->getMessage());
}
}
$data= [];
$data['title_value'] = "Abiertas";
$data['title_name'] = "Carta de instrucciones ";
$data['title_href'] = "";
$output->data=$data;
$this->_example_output($output);
}