Con esta clase podemos ver en un dialogo modal, documentos pdf de dos maneras :
1- muestra un archivo pdf que este en el disco de cualquier equipo o servidor.
2- la posibilidad de mostrar un campo blob o mediumtext de una tabla que guarde el contenido de un archivo pdf.
Codigo del ejemplo :
Código: Seleccionar todo
<?php
include( "config.php" );
include( TWEB_PATH . 'core.php' );
include( TWEB_PATH . 'core.pdfview.php' );
include( TWEB_PATH . 'core.modal.php' );
$oWeb = new TWeb('TEST TDATATABLE');
$oWeb->lAwesome = true;
$oWeb->SetIcon( IMAGE_PATH . 'tweb.png' );
$oWeb->Activate();
$oWnd = new TWindow( 'main', 10, '10%', '80%', '80%', 'white' );
$oBar = new TBar( $oWnd );
$oBar->SetBackColor("#c8e3f8");
$oBtn = $oBar->AddButton( 'bPrint', 'Imprimir', 'DoPrint()' , IMAGE_PATH . 'pdf-black-16.png', 'Imprimir' );
$oBtn->nWidth = 60;
$oBtn->SetColor("white", "#007bff");
$oBtn->SetColorhover("white", "#cbc8df");
$oBtn = $oBar->AddButton( 'bSalir', 'Salir', 'DoExit()' , IMAGE_PATH . 'logout-black-16.png', 'Salir' );
$oBtn->nWidth = 60;
$oBtn->SetColor("white", "#fa5959");
$oBtn->SetColorhover("white", "#cbc8df");
$oTable = new TDataTable( $oWnd, 'myTable' );
$oTable->AddCol( 'codigo', 'Codigo' );
$oTable->AddCol( 'descripcion', 'Descripcion' );
$oTable->PageLength( 12 );
$oTable->Paging( true );
$oTable->ScrollY( "280px" );
$oTable->ScrollX( true );
$oTable->BtnsExportHide();
PdfView(); // Dialogo para PDF View
$oWnd->Activate();
$oWeb->End();
//--------------------------------------
function PdfView() {
$oFrame = new TPDFView( 'xframe', 'TEST TXFRAME TWEB PLUS' );
$oFrame->nWidth = 900;
$oFrame->textBtn = 'Salir';
$oFrame->Activate();
}
?>
<!--- CODIGO Javascript TEST-XFRAME2.PHP -->
<script>
var oTable;
var oFrame;
$(function() {
var oCtrl = new TControl();
oTable = oCtrl.GetControl( "myTable" );
oFrame = oCtrl.GetControl( "xframe" );
var param = {};
param.action = "load";
MsgServer( "./srv_xframe.php", doLoad, param, "Recibiendo Datos" );
function doLoad( respond, msg ) {
if ( respond.result ) {
var oCtrl = new TControl();
var oGrid = oCtrl.GetControl( 'myTable' );
oGrid.SetData( respond.data );
MsgNotify( msg, 'success' );
} else {
MsgNotify("No se encontraron Registros", "error");
}
}
});
//------------------------------------------------
function DoPrint() {
var oCtrl = new TControl();
var oTable = oCtrl.GetControl( 'myTable' );
var data = oTable.GetRow();
if ( data ) {
var param = {};
param.action = 'pdf';
param.codigo = data.codigo;
console.log("data.codigo", data.codigo);
oFrame.loadFromBase64( "./srv_xframe.php", param );
oFrame.show();
} else {
JMsgInfo("Seleccione una fila");
}
}
//------------------------------------------------
function DoExit() {
JMsgYesNo("Salir del Test ?", doExit, "regresando al foro");
function doExit( msg ) {
MsgNotify(msg, "success");
location.href = 'http://avcsistemas.com/foro';
}
}
</script>