public function accion_aceptarPedido() { //Comprobar que el cliente se ha logueado $usuario = sesion::get('usuario'); if ($usuario === null) { //No se ha logueado vista::redirigir('?a=clientes.login'); } else { //Copiar y modificar el método accion_crear de la clase pedidos.php $bien = false; $error = ''; $modelo = new pedido(); $modelo->fecha = date('Y-m-d'); $fecha = getdate(); $modelo->serie = date('Y'); $modelo->numero = $modelo->siguienteNumero($modelo->serie); $modelo->domEnvio = $usuario->domEnvio; $modelo->refCli = $usuario->referencia; $modelo->notas = "Pedido realizado desde el carro."; $modelo->lineas = array(); $miCarro = sesion::get('carro'); $orden = 1; foreach ($miCarro as $key => $value) { $linea = new pedidolin(); $linea->serie = $modelo->serie; $linea->numero = $modelo->numero; $linea->orden = $orden; $linea->refArt = $key; $linea->texto = "Artículo del carro."; $linea->cantidad = $value->cantidad; $linea->precio = $value->precio; $linea->iva = $value->iva; $linea->importeBase = $value->cantidad * $value->precio; $linea->cuotaIva = $linea->importeBase * $value->iva / 100; $linea->pedido = $modelo; $linea->articulo = $value; $modelo->lineas[] = $linea; $orden++; } $modelo->cliente = $usuario; //---------- //$pagina= (int)(isset($_GET['p']) ? $_GET['p'] : 0);//coger la pagina para poder volver //---------- //Si hay datos del formulario pedido, se intenta crear nuevo... if ($modelo !== null) { //Copiar los datos del formulario... //$modelo->llenar( $_POST['pedido']); //Intentar guardar validando antes el modelo... $bien = $modelo->guardar(); if ($bien) { $error = 'El pedido se ha guardado correctamente.'; } else { $error = 'No se ha podido guardar el pedido nuevo. ' . basedatos::$error; } } //if //---------- //Dar una respuesta segun el resultado del proceso. if ($bien) { //vista::redirigir( array('pedidos.editar'), array('id'=>$modelo->referencia, 'p'=>$pagina)); vista::generarPagina('ver', array('modelo' => $modelo, 'error' => $error)); } /*else { vista::generarPagina( 'crear', array( 'modelo'=>$modelo, 'error'=>$error, //'pagina'=>$pagina, )); }//if*/ //vista::redirigir('?a=pedidos.crear'); } }