protected function private_core() { $this->pais = new pais(); $this->proveedor = new proveedor(); if (isset($_GET['delete'])) { $proveedor = $this->proveedor->get($_GET['delete']); if ($proveedor) { if (FS_DEMO) { $this->new_error_msg('En el modo demo no se pueden eliminar proveedores. Otros usuarios podrían necesitarlos.'); } else { if ($proveedor->delete()) { $this->new_message('Proveedor eliminado correctamente.'); } else { $this->new_error_msg('Ha sido imposible borrar el proveedor.'); } } } else { $this->new_message('Proveedor no encontrado.'); } } else { if (isset($_POST['cifnif'])) { $proveedor = new proveedor(); $proveedor->codproveedor = $proveedor->get_new_codigo(); $proveedor->nombre = $_POST['nombre']; $proveedor->razonsocial = $_POST['nombre']; $proveedor->tipoidfiscal = $_POST['tipoidfiscal']; $proveedor->cifnif = $_POST['cifnif']; $proveedor->acreedor = isset($_POST['acreedor']); if ($proveedor->save()) { $dirproveedor = new direccion_proveedor(); $dirproveedor->codproveedor = $proveedor->codproveedor; $dirproveedor->descripcion = "Principal"; $dirproveedor->codpais = $_POST['pais']; $dirproveedor->provincia = $_POST['provincia']; $dirproveedor->ciudad = $_POST['ciudad']; $dirproveedor->codpostal = $_POST['codpostal']; $dirproveedor->direccion = $_POST['direccion']; if ($dirproveedor->save()) { /// forzamos crear la subcuenta $proveedor->get_subcuenta($this->empresa->codejercicio); /// redireccionamos a la página del proveedor header('location: ' . $proveedor->url()); } else { $this->new_error_msg("¡Imposible guardar la dirección el proveedor!"); } } else { $this->new_error_msg("¡Imposible guardar el proveedor!"); } } } $this->mostrar = 'todo'; if (isset($_GET['mostrar'])) { $this->mostrar = $_GET['mostrar']; } $this->offset = 0; if (isset($_GET['offset'])) { $this->offset = intval($_GET['offset']); } if ($this->query != '') { $this->resultados = $this->proveedor->search($this->query, $this->offset); } else { if ($this->mostrar == 'acreedores') { $this->resultados = $this->proveedor->all($this->offset, TRUE); } else { $this->resultados = $this->proveedor->all($this->offset); } } }