function evt__generar() { //Genero PDF $this->generar_pdf(); //Genero XMLs $xml_juegos = toba::proyecto()->get_path_temp() . '/entrada_juegos.xml'; $xml = new toba_xml_tablas(); $xml->set_tablas($this->s__datos_juegos, "juegos"); $xml->guardar($xml_juegos); $xml_deportes = toba::proyecto()->get_path_temp() . '/entrada_deportes.xml'; $xml = new toba_xml_tablas(); $xml->set_tablas($this->s__datos_deportes, "deportes"); $xml->guardar($xml_deportes); //Agrego XMLs a PDF toba_firma_digital::pdf_add_attachments($this->s__pdf['path'], array($xml_juegos, $xml_deportes)); $this->set_pantalla("pant_firma"); }
function generar_pdf() { $datos = $this->get_datos_persona(); $temp = rand(); $datos_persona = array(); $datos_persona['id'] = $datos['id']; $datos_persona['nombre'] = $datos['nombre']; $datos_persona['fecha_nac'] = $datos['fecha_nac']; //Generar PDF require_once toba_dir() . '/php/3ros/ezpdf/class.ezpdf.php'; $pdf = new Cezpdf(); $pdf->selectFont(toba_dir() . '/php/3ros/ezpdf/fonts/Helvetica.afm'); $pdf->ezText('Ejemplo Firma Digital. Tiene un attachment XML', 14); $pdf->ezText(''); $pdf->ezText("ID: {$datos['id']}", 14); $pdf->ezText("Nombre: {$datos['nombre']}", 14); $pdf->ezText("Fecha Nacimiento: {$datos['fecha_nac']}", 14); //Guardarlo en un archivo temporal $pdf_persona = toba::proyecto()->get_path_temp() . "/{$temp}.pdf"; file_put_contents($pdf_persona, $pdf->ezOutput(0)); //Generar XML $xml_persona = toba::proyecto()->get_path_temp() . "/{$temp}.xml"; $xml = new toba_xml_tablas(); $xml->set_tablas($datos_persona, "persona"); $xml->guardar($xml_persona); //Agrego XMLs a PDF toba_firma_digital::pdf_add_attachments($pdf_persona, array($xml_persona)); //Actualizo tabla $this->guardar_pdf_en_tabla($pdf_persona, false); //Retorno PDF y borro temporales $retorno = file_get_contents($pdf_persona); unlink($pdf_persona); unlink($xml_persona); return $retorno; }
function exportar_perfiles_produccion() { $dir_perfiles = $this->get_dir_permisos_produccion(); //-- Borra los perfiles anteriormente guardados, si existen if (file_exists($dir_perfiles)) { toba_manejador_archivos::eliminar_directorio($dir_perfiles); } //-- Perfiles Funcionales toba_logger::instancia()->debug("Exportación a xml de perfiles funcionales '{$this->identificador}'"); toba_manejador_archivos::crear_arbol_directorios($dir_perfiles); $items = array(); //-- Util para recuperar la descripción asociada al item (si es que la tiene) en las siguientes etapas $tablas = $this->get_lista_tablas_perfil_funcional(); $proyecto = $this->db->quote($this->identificador); foreach ($this->get_indice_grupos_acceso() as $permiso) { toba_logger::instancia()->debug("PERFIL {$permiso}"); $where = "usuario_grupo_acc IN (SELECT gc.usuario_grupo_acc FROM apex_usuario_grupo_acc AS gc WHERE gc.proyecto = {$proyecto} AND gc.usuario_grupo_acc = '{$permiso}' AND gc.permite_edicion = 1)"; $datos = array(); foreach ($tablas as $tabla) { $contenido = $this->get_contenido_tabla_datos($tabla, $where); if (!empty($contenido)) { $datos[$tabla] = $contenido; } } if (!empty($datos)) { $archivo = $dir_perfiles . "/perfil_{$permiso}.xml"; $xml = new toba_xml_tablas(); $xml->set_tablas($datos); $xml->guardar($archivo); $items = array_merge($items, $datos['apex_usuario_grupo_acc_item']); } unset($datos); $this->manejador_interface->progreso_avanzar(); } //-- Se guarda la descripción de las operaciones del proyecto $items = $this->get_descripcion_items($items); $archivo = $this->get_dir_instalacion_proyecto() . "/items.xml"; $xml = new toba_xml_tablas(); $xml->set_tablas($items, 'items'); $xml->guardar($archivo); //--- Perfiles de datos toba_logger::instancia()->debug("Exportación a xml de perfiles de datos '{$this->identificador}'"); $tablas = $this->get_lista_tablas_perfil_datos(); $datos = array(); foreach ($tablas as $tabla) { $contenido = $this->get_contenido_tabla_datos($tabla); if (!empty($contenido)) { $datos[$tabla] = $contenido; } } if (!empty($datos)) { $archivo = $dir_perfiles . "/perfiles_datos.xml"; $xml = new toba_xml_tablas(); $xml->set_tablas($datos); $xml->guardar($archivo); } unset($datos); $this->manejador_interface->progreso_avanzar(); //--- Restricciones Funcionales toba_logger::instancia()->debug("Exportación a xml de restricciones funcionales '{$this->identificador}'"); $tablas = $this->get_lista_tablas_restricciones(); $datos = array(); $where = "restriccion_funcional IN (SELECT res.restriccion_funcional FROM apex_restriccion_funcional AS res WHERE res.permite_edicion = 1)"; foreach ($tablas as $tabla) { $contenido = $this->get_contenido_tabla_datos($tabla, $where); if (!empty($contenido)) { $datos[$tabla] = $contenido; } } if (!empty($datos)) { $archivo = $dir_perfiles . "/restricciones_funcionales.xml"; $xml = new toba_xml_tablas(); $xml->set_tablas($datos); $xml->guardar($archivo); } unset($datos); $this->manejador_interface->progreso_avanzar(); //-- Configuración de Menues toba_logger::instancia()->debug("Exportación a xml de menues de aplicacion '{$this->identificador}'"); $tablas = $this->get_lista_tablas_menu(); $datos = array(); foreach ($tablas as $tabla) { $contenido = $this->get_contenido_tabla($tabla); if (!empty($contenido)) { $datos[$tabla] = $contenido; } } if (!empty($datos)) { $archivo = $dir_perfiles . '/menues_aplicacion.xml'; $xml = new toba_xml_tablas(); $xml->set_tablas($datos); $xml->guardar($archivo); } unset($datos); $this->manejador_interface->progreso_avanzar(); }