------------------------------------------------------------------------------*/ //Lib de 'Pedidos a Infoleg' require_once 'INFOLEG/Operador.php'; require_once 'INFOLEG/Solicitante.php'; require_once 'INFOLEG/Pedido.php'; require_once 'MECON/HTML/Tabla.php'; require_once 'HTML/Table.php'; require_once '../../../local_lib/HTML_DietMarco.php'; require_once 'MECON/HTML/QuickFormSimple.php'; require_once 'MECON/HTML/Image.php'; require_once 'DB.php'; if(!isset($_SESSION['documento'])){ header('Location: ../../servicios.php'); exit; } //Conexión a la BD //CAMBIAR POR INTRANET-DB $dbh = DB::connect("mysql://intranet:intranet@localhost/CDI", true); if (DB::isError($dbh)) { die ($dbh->getMessage()); } //Usuario que realiza el pedido $nrodoc = $_SESSION['documento']; $user = $_SESSION['usuario']; $solicitante =& new INFOLEG_Solicitante($dbh, $nrodoc, $user); //Imágenes $IMG_Viñeta =& new MECON_HTML_Image('../../images/servicios_flecha_naranja.gif', '>>'); $IMG_OK =& new MECON_HTML_Image('../../images/servicios_ok.gif', 'ok'); $IMG_Error =& new MECON_HTML_Image('/MECON/images/general_no_autorizado.gif', 'X'); //Marco de servicios en intranet $MARCO = new HTML_DietMarco('servicios', 'Pedidos a Infoleg'); $MARCO->addTitle('Pedidos a Infoleg'); $MARCO->addStyleSheet('../../css/servicios_infoleg.css'); if (! isset($_POST['pedido'])){ if (! INFOLEG_Operador::oprDisponibleIntranet($dbh)){ //No hay operador disponible para atender el pedido => mensaje de error $TABLA =& new HTML_Table(array('border'=>'0', 'width'=>'760')); $TABLA->addRow( array($IMG_Error->toHtml()), array('align'=>'center')); $TABLA->addRow( array('No hay operadores asignados para atender su pedido.'), array('align'=>'center', 'class'=>'txt_naranja')); $TABLA->addRow( array('Intente más tarde.'), array('align'=>'center', 'class'=>'txt_naranja')); $MARCO->addBodyContent($TABLA); } else{ //Datos del solicitante $datos = $solicitante->obtenerDatos(); //Elementos del Formulario $FORM =& new MECON_HTML_QuickFormSimple ('form', 'post', './pedido.php', '', 'onSubmit="return validar(this)"'); $nombre = (isset($datos['nombre']))?$datos['nombre']:''; $input_nombre =& $FORM->addElement ('text', 'nombre', 'nombre', array('size' => '20', 'maxlength'=>'30', 'value'=>$nombre)); $apellido = (isset($datos['apellido']))?$datos['apellido']:''; $input_apellido =& $FORM->addElement ('text', 'apellido', 'apellido', array('size' => '20', 'maxlength'=>'30', 'value'=>$apellido)); $tipodocs = array('CI'=>'CI', 'DU'=>'DNI', 'LC'=>'LC', 'LE'=>'LE', 'PS'=>'PS'); $select_tipodoc =& $FORM->addElement ('select', 'tipodoc', 'tipodoc', $tipodocs); if (isset($datos['tipodoc'])){ $select_tipodoc->setSelected($datos['tipodoc']); } $input_nrodoc =& $FORM->addElement ('hidden', 'nrodoc', 'nrodoc', array('value' => $nrodoc)); $institucion = (isset($datos['institucion']))?$datos['institucion']:'Ministerio de Economía'; $input_institucion =& $FORM->addElement ('text', 'institucion', 'institucion', array('size' => '20', 'maxlength'=>'50', 'value'=>$institucion)); $domicilio = (isset($datos['domicilio']))?$datos['domicilio']:''; $input_domicilio =& $FORM->addElement ('text', 'domicilio', 'domicilio', array('size' => '20', 'maxlength'=>'50', 'value'=>$domicilio)); $piso = (isset($datos['piso']))?$datos['piso']:''; $input_piso =& $FORM->addElement ('text', 'piso', 'piso', array('size' => '5', 'maxlength'=>'10', 'value'=>$piso)); $oficina = (isset($datos['oficina']))?$datos['oficina']:''; $input_oficina =& $FORM->addElement ('text', 'oficina', 'oficina', array('size' => '5', 'maxlength'=>'10', 'value'=>$oficina)); $interno = (isset($datos['interno']))?$datos['interno']:''; $input_interno =& $FORM->addElement ('text', 'interno', 'interno', array('size' => '5', 'maxlength'=>'10', 'value'=>$interno)); $telefono = (isset($datos['telefono']))?$datos['telefono']:''; $input_telefono =& $FORM->addElement ('text', 'telefono', 'telefono', array('size' => '10', 'maxlength'=>'20', 'value'=>$telefono)); $fax = (isset($datos['fax']))?$datos['fax']:''; $input_fax =& $FORM->addElement ('text', 'fax', 'fax', array('size' => '10', 'maxlength'=>'20', 'value'=>$fax)); $email = (isset($datos['email']))?$datos['email']:''; $input_email =& $FORM->addElement ('text', 'email', 'email', array('size' => '20', 'maxlength'=>'50', 'value'=>$email)); $textarea_pedido =& $FORM->addElement ('textarea', 'pedido', 'pedido', array('cols' => '45', 'rows'=>'5', 'wrap'=>'virtual')); $submit =& $FORM->addElement ('submit', 'Enviar', 'Enviar'); //Función para validar el formulario $script = <<addScriptDeclaration($script); //Tabla Pedido $TABLA =& new MECON_HTML_Tabla(array('width'=>'600', 'align'=>'center'), 'medio'); $TABLA->addRow( array($IMG_Viñeta->toHtml().'Datos Personales')); $TABLA->addRow( array('Nombre', $input_nombre->toHtml(), 'Apellido', '', $input_apellido->toHtml())); $TABLA->addRow( array('Documento', $select_tipodoc->tohtml().' '.$nrodoc.$input_nrodoc->toHtml(), 'Institución', '', $input_institucion->toHtml())); $TABLA->addRow( array('Domicilio', $input_domicilio->toHtml(), 'Piso', $input_piso->toHtml(), 'Oficina', $input_oficina->toHtml(), 'Interno', $input_interno->toHtml())); $TABLA->addRow( array('E-mail', $input_email->toHtml(), 'Fax', $input_fax->toHtml(), 'Teléfono', $input_telefono->toHtml())); $TABLA->addRow( array($IMG_Viñeta->toHtml().'Pedido')); $TABLA->addRow( array($textarea_pedido->toHtml())); $TABLA->addRow( array($submit->toHtml())); $TABLA->setColAttributes(0, 'titulo width="100" align="left"'); $TABLA->setColAttributes(1, 'comun width="200" align="left"'); $TABLA->setColAttributes(2, 'titulo width="50" align="left"'); $TABLA->setColAttributes(3, 'comun width="50" align="left"'); $TABLA->setColAttributes(4, 'titulo width="50" align="left"'); $TABLA->setColAttributes(5, 'comun width="50" align="left"'); $TABLA->setColAttributes(6, 'titulo width="50" align="left"'); $TABLA->setColAttributes(7, 'comun width="50" align="left"'); $TABLA->setCellAttributes(0, 0, 'cabecera colspan="8" align="left"'); $TABLA->setCellAttributes(1, 2, 'colspan="2" titulo align="left"'); $TABLA->setCellAttributes(2, 2, 'colspan="2" titulo align="left"'); $TABLA->setCellAttributes(5, 0, 'cabecera colspan="8" align="left"'); $TABLA->setCellAttributes(6, 0, 'comun colspan="8" align="center"'); $TABLA->setCellAttributes(7, 0, 'comun colspan="8" align="center"'); $TABLA->setCellAttributes(1, 4, 'colspan="4" comun align="left"'); $TABLA->setCellAttributes(2, 4, 'colspan="4" comun align="left"'); $TABLA->setCellAttributes(4, 5, 'colspan="3" comun align="left"'); //Contenido de la página $MARCO->addBodyContent($FORM->getBegin()); $MARCO->addBodyContent($TABLA); $MARCO->addBodyContent($FORM->getEnd()); } } else{ //Pedido Formulado $solicitante->_actualizarDatos($_POST); $operador_asignado = INFOLEG_Operador::obtenerOprIntranet($dbh); INFOLEG_Pedido::alta($dbh, $_POST['tipodoc'], $_POST['nrodoc'], $operador_asignado, $_POST['pedido']); $TABLA =& new HTML_Table(array('border'=>'0', 'width'=>'760')); $TABLA->addRow( array($IMG_OK->toHtml()), array('align'=>'center')); $TABLA->addRow( array('Su pedido ha sido registrado'), array('align'=>'center', 'class'=>'txt_negro')); $MARCO->addBodyContent($TABLA); } $MARCO->display(); ?>