$xRec = new cReciboDeOperacion(false, false, $recibo);
$xRec->init();
$DRec = $xRec->getDatosInArray();
$idsocio = $xRec->getCodigoDeSocio();
// $DRec["numero_socio"];
$numero_de_socio = $xRec->getCodigoDeSocio();
//$DRec["numero_socio"];
$afectaCaja = $arrQ[$DRec["afectacion_en_flujo_efvo"]];
//datos del socio
$cSoc = new cSocio($numero_de_socio);
$DSoc = $cSoc->getDatosInArray();
$numero_caja_local = $DSoc["cajalocal"];
$cCL = new cCajaLocal($numero_caja_local);
$caja_local = $cCL->getNombre();
$variable_nombre_del_socio = $idsocio == DEFAULT_SOCIO ? $DRec["cadena_distributiva"] : $cSoc->getNombreCompleto();
$tipo_de_pago = $xRec->getTipoDePago();
//$variable_nombre_del_cajero
//
$tipoderecibo = $DRec["tipo_docto"];
$docto = $xRec->getCodigoDeDocumento();
$origen = $xRec->getOrigen();
$variable_tipo_de_recibo = $xRec->getOTipoRecibo()->getNombre();
$totaloperacion = $xRec->getTotal();
//<------------- Verificar Si existe El Pago ----------------
$xCaja = new cCaja();
$TesMontoPagado = $xCaja->getReciboEnCorte($recibo);
$eventOnLoad = "";
$scripts = "";
//TODO: Resolver ajuste y permisos de ajuste
if (MODULO_CAJA_ACTIVADO == true and $xRec->isPagable() == true) {
    if ($TesMontoPagado < $totaloperacion) {
 function add($persona, $tipo, $fecha, $valor, $documento, $tipo_de_documento = false, $usuario = false, $hora = false, $instrumento = false, $tipo_de_operacion = false, $tercero_relacionado = DEFAULT_SOCIO, $mensajes = "", $inmediato = false)
 {
     $hora = $hora == false ? date("Hi") : $hora;
     $usuario = $usuario == false ? getUsuarioActual() : $usuario;
     $tipo_de_documento = $tipo_de_documento == false ? iDE_RECIBO : $tipo_de_documento;
     $instrumento = setNoMenorQueCero($instrumento);
     if ($instrumento <= 0 or setNoMenorQueCero($tipo_de_operacion) <= 0) {
         switch ($tipo_de_documento) {
             case iDE_RECIBO:
                 $EqOps = new cSistemaEquivalencias(TOPERACIONES_RECIBOSTIPOS);
                 $EqTes = new cSistemaEquivalencias(TTESORERIA_TIPOS_DE_PAGO);
                 $xRec = new cReciboDeOperacion(false, false, $documento);
                 $instrumento = $EqTes->get($xRec->getTipoDePago());
                 $tipo_de_operacion = $EqOps->get($xRec->getTipoDeRecibo());
                 if ($xRec->isDivisaExtranjera() == true) {
                     $instrumento = AML_OPERACIONES_CLAVE_DIVISA;
                 }
                 if ($tipo_de_operacion == null) {
                     $tipo_de_operacion = "01";
                 }
                 break;
         }
     }
     if ($inmediato == true) {
         $inmediato = 1;
     }
     $inmediato = setNoMenorQueCero($inmediato);
     $xPR = new cAml_risk_register();
     $xPR->clave_de_riesgo($xPR->query()->getLastID());
     $xPR->escore($valor);
     $xPR->fecha_de_reporte($fecha);
     $xPR->hora_de_reporte($hora);
     $xPR->persona_relacionada($persona);
     $xPR->tipo_de_riesgo($tipo);
     $xPR->usuario_de_origen($usuario);
     $xPR->tipo_de_documento($tipo_de_documento);
     $xPR->documento_relacionado($documento);
     $xPR->estado_de_envio(SYS_UNO);
     $xPR->fecha_de_envio(0);
     $xPR->estado_de_envio(0);
     $xPR->fecha_de_checking(0);
     $xPR->oficial_de_checking(AML_OFICIAL_DE_CUMPLIMIENTO);
     $xPR->monto_total_relacionado(0);
     //cargar datos del recibo
     $xPR->instrumento_financiero($instrumento);
     //mejorar segun catalogo CNBV
     $xPR->tipo_de_operacion($tipo_de_operacion);
     $xPR->tercero_relacionado($tercero_relacionado);
     $xPR->mensajes_del_sistema($mensajes);
     $xPR->reporte_inmediato($inmediato);
     $ql = $xPR->query()->insert();
     $ql->save();
     $this->mMessages .= $ql->getMessages(OUT_TXT);
 }
 function add($cuenta, $Operacion, $DoctoDeSoporte, $recibo, $beneficiario, $monto, $persona = false, $fecha = false, $autorizo = false, $descuento = 0, $cuenta_de_origen = false, $tipo_de_exhibicion = "", $moneda = AML_CLAVE_MONEDA_LOCAL)
 {
     $xF = new cFecha();
     $cuenta = setNoMenorQueCero($cuenta);
     $recibo = setNoMenorQueCero($recibo);
     $cuenta_de_origen = setNoMenorQueCero($cuenta_de_origen);
     $monto = setNoMenorQueCero($monto);
     $DoctoDeSoporte = setNoMenorQueCero($DoctoDeSoporte);
     $persona = setNoMenorQueCero($persona) == 0 ? DEFAULT_SOCIO : setNoMenorQueCero($persona);
     $autorizo = setNoMenorQueCero($autorizo);
     $id = 0;
     if ($recibo > 0 and $persona <= DEFAULT_SOCIO) {
         $xRec = new cReciboDeOperacion(false, false, $recibo);
         if ($xRec->init() == true) {
             $persona = $persona <= DEFAULT_SOCIO ? $xRec->getCodigoDeSocio() : $persona;
             $tipo_de_exhibicion = $tipo_de_exhibicion == "" ? $xRec->getTipoDePago() : $tipo_de_exhibicion;
             $fecha = $fecha == false ? $xRec->getFechaDeRecibo() : $fecha;
             if (trim($beneficiario) == "") {
                 if ($xRec->getOPersona() != null) {
                     $beneficiario = $xRec->getOPersona()->getNombreCompleto(OUT_TXT);
                 }
             }
         }
     }
     $fecha = $xF->getFechaISO($fecha);
     $tipo_de_exhibicion = $tipo_de_exhibicion == "" ? "transferencia" : $tipo_de_exhibicion;
     if ($cuenta > 0 and $monto > 0) {
         $xOp = new cBancos_operaciones();
         $xOp->idcontrol($xOp->query()->getLastID());
         $xOp->beneficiario($beneficiario);
         $xOp->clave_de_conciliacion(0);
         $xOp->clave_de_moneda($moneda);
         $xOp->cuenta_bancaria($cuenta);
         $xOp->cuenta_de_origen($cuenta_de_origen);
         $xOp->eacp(EACP_CLAVE);
         $xOp->estatus($this->AUTORIZADO);
         $xOp->fecha_expedicion($fecha);
         $xOp->idusuario(getUsuarioActual());
         $xOp->monto_descontado($descuento);
         $xOp->monto_real($monto);
         $xOp->numero_de_documento($DoctoDeSoporte);
         $xOp->numero_de_socio($persona);
         $xOp->recibo_relacionado($recibo);
         $xOp->sucursal(getSucursal());
         $xOp->tipo_de_exhibicion($tipo_de_exhibicion);
         $xOp->tipo_operacion($Operacion);
         $xOp->usuario_autorizo($autorizo);
         $id = $xOp->query()->insert()->save();
     }
     return $id;
 }
 function setPolizaPorRecibo($recibo, $generador = false)
 {
     $sucess = false;
     $QL = new MQL();
     $xLogg = new cCoreLog();
     //$arrEquivEfvo			=
     //if (GENERAR_CONTABILIDAD == true){
     $xLogg->add("=======\tGENERAR POLIZA POR RECIBO NUM {$recibo}\r\n", $xLogg->DEVELOPER);
     $xT = new cCatalogoOperacionesDeCaja();
     $centro_de_costo = DEFAULT_CENTRO_DE_COSTO;
     //($generador == GENERAR_POLIZAS_AL_CIERRE) AND
     if (setNoMenorQueCero($recibo) > 0) {
         $xRec = new cReciboDeOperacion(false, false, $recibo);
         if ($xRec->init() == true) {
             $sucess = true;
             //Obten datos del recibo para la Poliza
             $sqlRec = "SELECT\r\n\t\t\t\t\t\t\t`operaciones_recibos`.*,\r\n\t\t\t\t\t\t\t`operaciones_recibostipo`.`tipo_poliza_generada`,\r\n\t\t\t\t\t\t`operaciones_recibostipo`.`afectacion_en_flujo_efvo`\r\n\t\t\t\t\t\tFROM\r\n\t\t\t\t\t\t\t`operaciones_recibos` `operaciones_recibos`\r\n\t\t\t\t\t\t\t\tINNER JOIN `operaciones_recibostipo`\r\n\t\t\t\t\t\t\t\t`operaciones_recibostipo`\r\n\t\t\t\t\t\t\t\tON `operaciones_recibos`.`tipo_docto` =\r\n\t\t\t\t\t\t\t\t`operaciones_recibostipo`.\r\n\t\t\t\t\t\t\t\t`idoperaciones_recibostipo`\r\n\t\t\t\t\t\tWHERE\r\n\t\t\t\t\t\t\t(`operaciones_recibos`.`idoperaciones_recibos` = {$recibo})\r\n\t\t\t\t\t\tLIMIT 0,1 ";
             $dRec = obten_filas($sqlRec);
             $tipo_de_pago = $xRec->getTipoDePago();
             //Corrige los cargos de la PolizaS
             $total_poliza = 0;
             $SQLSumCargos = "SELECT SUM(monto) AS 'total' FROM contable_polizas_proforma\r\n\t\t\t\t\t\t\t\t\t\t\t\tWHERE contable_operacion = '" . TM_CARGO . "'\r\n\t\t\t\t\t\t\t\t\t\t\t\tAND numero_de_recibo={$recibo} ";
             $TMPCargos = mifila($SQLSumCargos, "total");
             $SQLSumAbonos = "SELECT SUM(monto) AS 'total' FROM contable_polizas_proforma\r\n\t\t\t\t\t\t\t\t\t\t\t\tWHERE contable_operacion = '" . TM_ABONO . "'\r\n\t\t\t\t\t\t\t\t\t\t\t\tAND numero_de_recibo={$recibo} ";
             $TMPAbonos = mifila($SQLSumAbonos, "total");
             if ($TMPCargos > $TMPAbonos) {
                 $diferencia = $TMPAbonos - $TMPCargos;
                 $diferencia = $diferencia < 0 ? $diferencia * -1 : $diferencia;
                 $total_poliza = $TMPCargos;
                 setPolizaProforma($recibo, $xT->getTipoOperacionByTipoPago($tipo_de_pago), $diferencia, 1, 1, TM_ABONO);
                 $xLogg->add("OK\tCUADRAR\tABONO\tOperacion Agregada por DESCUADRE en {$tipo_de_pago} por {$diferencia}\r\n", $xLogg->DEVELOPER);
                 //$xLogg->add( , $xLogg->DEVELOPER);
             } elseif ($TMPCargos < $TMPAbonos) {
                 $diferencia = $TMPCargos - $TMPAbonos;
                 $diferencia = $diferencia < 0 ? $diferencia * -1 : $diferencia;
                 $total_poliza = $TMPAbonos;
                 setPolizaProforma($recibo, $xT->getTipoOperacionByTipoPago($tipo_de_pago), $diferencia, 1, 1, TM_CARGO);
                 $xLogg->add("OK\tCUADRAR\tCARGOS\tOperacion Agregada por DESCUADRE en {$tipo_de_pago} por {$diferencia}\r\n", $xLogg->DEVELOPER);
             } else {
                 $total_poliza = $TMPCargos;
             }
             //tipos de Poliza 1=ingreso, 2=egreso, 3 Diario, 4=orden 5
             $xD = new cFecha(0, $xRec->getFechaDeRecibo());
             $numero_de_recibo = $recibo;
             $tipo_de_poliza = $xRec->getOTipoRecibo()->getTipoPolizaContable();
             $fecha_de_poliza = $xRec->getFechaDeRecibo();
             $ejercicio_de_poliza = $xD->anno();
             $periodo_de_poliza = $xD->mes();
             $recibo_fiscal = strlen($xRec->getReciboFiscal()) > 2 ? ";RF:" . $xRec->getReciboFiscal() : "";
             $observacion_recibo = $xRec->getObservaciones();
             $cheque = strlen($xRec->getNumeroDeCheque()) > 2 ? ";Ch:" . $xRec->getNumeroDeCheque() : "";
             $concepto_poliza = substr("R:" . $numero_de_recibo . $recibo_fiscal . $cheque . ";" . $xRec->getObservaciones(), 0, 80);
             $flujo_efectivo = $xRec->getOTipoRecibo()->getAfectacionEnEfvo();
             $socio = $xRec->getCodigoDeSocio();
             $propietario = $xRec->getCodigoDeUsuario();
             $xLogg->add("=====\tRECIBO TIPO: " . $xRec->getTipoDeRecibo() . " SUMA: " . $xRec->getTotal() . " \r\n", $xLogg->DEVELOPER);
             //------------------ Agregar Poliza
             $xPol = new cPoliza($tipo_de_poliza, false, $ejercicio_de_poliza, $periodo_de_poliza);
             $xPol->add($concepto_poliza, $fecha_de_poliza, false, 0, 0, $propietario, $centro_de_costo, $recibo);
             $numero_de_poliza = $xPol->get();
             $xLogg->add("=====\tPOLIZA NUM: {$numero_de_poliza} | TIPO: {$tipo_de_poliza} | EJERCICIO: {$ejercicio_de_poliza} | PERIODO: {$periodo_de_poliza}\r\n", $xLogg->DEVELOPER);
             $sucess = $xPol->mRaiseError == true ? false : true;
             //------------------ Leer la PROFORMA
             $sqlMvtosToPoliza = "SELECT\r\n\t\t\t\t\t`contable_polizas_proforma`.*,\r\n\t\t\t\t\t`operaciones_tipos`.*\r\n\t\t\r\n\t\t\t\t\tFROM\r\n\t\t\t\t\t`operaciones_tipos` `operaciones_tipos`\r\n\t\t\t\t\t\tINNER JOIN `contable_polizas_proforma`\r\n\t\t\t\t\t\t`contable_polizas_proforma`\r\n\t\t\t\t\t\tON `operaciones_tipos`.`idoperaciones_tipos` =\r\n\t\t\t\t\t\t`contable_polizas_proforma`.`tipo_de_mvto`\r\n\t\t\t\t\t\tAND `contable_polizas_proforma`.`numero_de_recibo` = {$numero_de_recibo}\r\n\t\t\t\t\tORDER BY\r\n\t\t\t\t\t\t`contable_polizas_proforma`.`contable_operacion` DESC,\r\n\t\t\t\t\t\t`contable_polizas_proforma`.`socio`,\r\n\t\t\t\t\t\t`contable_polizas_proforma`.`tipo_de_mvto`\t\t\t\t\r\n\t\t\t\t\t";
             if ($sucess == true) {
                 $rs = $QL->getDataRecord($sqlMvtosToPoliza);
                 foreach ($rs as $rw) {
                     $cuenta = CUENTA_DE_CUADRE;
                     $nombre = "";
                     $socio = $rw["socio"];
                     if (CONTABLE_CUENTAS_POR_SOCIO == true) {
                         $xSoc = new cSocio($socio, true);
                         $nombre = $xSoc->getNombreCompleto();
                     }
                     $documento = $rw["documento"];
                     $monto_movimiento = $rw["monto"];
                     $tipoOp = $rw["tipo_de_mvto"];
                     $tipo_movimiento = $rw["contable_operacion"];
                     $RecUsr = $rw["idusuario"];
                     $cuenta_bancaria = $rw["banco"];
                     $cargo_movimiento = 0;
                     $abono_movimiento = 0;
                     if ($tipo_movimiento == TM_CARGO) {
                         $cargo_movimiento = $monto_movimiento;
                         $abono_movimiento = 0;
                     } else {
                         $cargo_movimiento = 0;
                         $abono_movimiento = $monto_movimiento;
                     }
                     $formula = $rw["cuenta_contable"];
                     //Corregir de urgencia: OK: 06Oct2011
                     $sForms = new cValorarFormulas();
                     $cuenta = $sForms->getCuentaContable($socio, $documento, $formula, $RecUsr, $xRec->getNumeroDeCheque(), $cuenta_bancaria);
                     $xLogg->add($sForms->getMessages(), $xLogg->DEVELOPER);
                     //tipo de cuenta es Abonos a efectivo
                     if ($cuenta != "NO_CONTABILIZAR") {
                         $xCuenta = new cCuentaContable($cuenta);
                         $xCuenta->init();
                         $cuenta = $xCuenta->get();
                         //Carga los datos del Oficial
                         if ($xCuenta->getEsCuentaDeCirculante() == true) {
                             $xOf = new cSystemUser($RecUsr);
                             $xOf->init();
                             $nombre = $xOf->getNombreCompleto();
                             $xLogg->add("OK\tCUENTA_ADD\tLa Cuenta {$cuenta} de Carga por Usuario [ {$nombre} ]\r\n", $xLogg->DEVELOPER);
                         } else {
                             $xLogg->add("OK\tCUENTA\tLa Cuenta de Trabajo es {$cuenta} Originado del Socio {$socio}\r\n", $xLogg->DEVELOPER);
                         }
                         //verifica para dar de alta a la cuenta
                         $Existentes = $xCuenta->getCountCuenta();
                         if ($Existentes == false) {
                             $xLogg->add("WARN\tCUENTA_ADD\tLa Cuenta de Trabajo {$cuenta} NO EXISTE, se AGREGA\r\n", $xLogg->DEVELOPER);
                             $cuenta = $xCuenta->add($nombre);
                             if ($xCuenta->mRaiseError == true) {
                                 //$msg				.= "ERROR\tLa Cuenta de Trabajo $cuenta NO EXISTE\r\n";
                                 //$msg		= $xCuenta->getMessages();
                             }
                         }
                         $xCuenta->init();
                         $xPol->addMovimiento($cuenta, $cargo_movimiento, $abono_movimiento, "{$socio}", "{$documento}:{$tipoOp}", false, $fecha_de_poliza);
                         //$xLogg->add("WARN\tNO_CONT\tAGREGAR $cuenta, $cargo_movimiento, $abono_movimiento\r\n" , $xLogg->DEVELOPER);
                         $xLogg->add($xCuenta->getMessages(), $xLogg->DEVELOPER);
                     } else {
                         $xLogg->add("WARN\tNO_CONT\tEl Movimiento de {$socio} | {$documento} | {$tipoOp} de Monto {$monto_movimiento} se OMITE\r\n", $xLogg->DEVELOPER);
                     }
                 }
                 $xPol->setFinalizar();
             }
             //sucess
             $xLogg->add($xPol->getMessages(), $xLogg->DEVELOPER);
             $this->mIDDePoliza = $xPol->getCodigo();
         }
     }
     //END VALUE.- GENERAR AL FINAL
     //}		//END VALUE.- GENERAR CONTABILIDAD
     $this->mMessages .= $xLogg->getMessages();
     return $xLogg->getMessages();
 }
 // CP de la sucursal
 $docto_relacionado = $OAEc == null ? $OAEc->getNumeroDeSeguridadSocial() : $xRisk->documento_relacionado()->v();
 //($xRec->getCodigoDeDocumento() == DEFAULT_CREDITO) ? $xRec->getCodigoDeRecibo() : $xRec->getCodigoDeDocumento();
 $fecha_de_op = $xF->getFechaByInt($xRisk->fecha_de_reporte()->v());
 $instrumento = $xRisk->instrumento_financiero()->v();
 $tipo_de_op = $xRisk->tipo_de_operacion()->v();
 $total = $xRisk->monto_total_relacionado()->v();
 $moneda = AML_CLAVE_MONEDA_LOCAL;
 //TODO: Agregar soporte para captación y colocación
 switch ($tipo_de_obj) {
     case iDE_RECIBO:
         $xRec = new cReciboDeOperacion(false, false, $recibo);
         if ($xRec->init() == true) {
             if ($xRec->getCodigoDeSocio() == $tercero) {
                 $tipo_de_op = $xEquivOps->get($xRec->getTipoDeRecibo());
                 $instrumento = $xEquivInst->get($xRec->getTipoDePago());
                 $moneda = $xRec->getMoneda();
                 $total = $xRec->getTotal();
             } else {
                 $msg .= "ERROR\tLa persona {$tercero} no es misma del recibo {$recibo}- " . $xRec->getCodigoDeSocio() . "\r\n";
                 $totalerrores++;
             }
         } else {
             $msg .= "ERROR\tRecibo no existe {$recibo}\r\n";
             $totalerrores++;
         }
         break;
     case iDE_CREDITO:
         break;
     case iDE_CAPTACION:
         break;
 $cont[1] = $xLayout->getClave();
 $cont[2] = $FechaExtraccion;
 $cont[3] = $operaciones == 0 ? 1 : $operaciones;
 $cont[4] = "01" . $xT->cSerial(3, $supervisor);
 //clave nacional de entidad supervisora 1002 = CNBV
 $cont[5] = $casfin;
 $cont[6] = $xLoc->DomicilioLocalidadClave();
 // cambiar por la UIF
 $cont[7] = $xLoc->DomicilioCodigoPostal();
 // CP de la sucursal
 $xRec = new cReciboDeOperacion(false, false, $recibo);
 $xRec->init();
 $docto_relacionado = $xRec->getCodigoDeDocumento() == DEFAULT_CREDITO ? $xRec->getCodigoDeRecibo() : $xRec->getCodigoDeDocumento();
 $cont[8] = $xEquivOps->get($xRec->getTipoDeRecibo());
 // Tipo de Operacion 01 deposito 02 retiro 03 compra divisas 04 venta divisas
 $cont[9] = $xEquivInst->get($xRec->getTipoDePago());
 //TODO: Instrumento monetario
 $cont[10] = $docto_relacionado;
 $cont[11] = $xRec->getTotal();
 $cont[12] = $xRec->getMoneda();
 $cont[13] = $xRec->getFechaDeRecibo();
 $cont[14] = $fechaDetec;
 //inusuales
 $cont[15] = $nac;
 $cont[16] = $tp;
 $nombresujeto = $xT->getCSV($xSoc->getNombre());
 $cont[17] = $tp == SYS_UNO ? "" : $nombresujeto;
 $cont[18] = $tp == SYS_UNO ? $nombresujeto : "";
 $cont[19] = $tp == SYS_UNO ? $xT->getCSV($xSoc->getApellidoPaterno()) : "";
 $cont[20] = $tp == SYS_UNO ? $xT->getCSV($xSoc->getApellidoMaterno()) : "";
 $cont[21] = $xSoc->getRFC(true);
 function render()
 {
     $xRec = new cReciboDeOperacion(false, false, $this->mClave);
     $html = "";
     $recibo = $this->mClave;
     if ($xRec->init() == true) {
         $scripts = "";
         $xCaja = $xRec->getOCaja();
         //TODO: Resolver ajuste y permisos de ajuste
         if (MODULO_CAJA_ACTIVADO == true and $xRec->isPagable() == true) {
             $totaloperacion = $xRec->getTotal();
             $TesMontoPagado = $xRec->getSaldoEnCaja();
             $forma = $xRec->getURI_Formato();
             if ($TesMontoPagado > 0) {
                 $xFRM = new cHForm("frmrecibo");
                 $arrTPag = $xFRM->getAFormsDeTipoPago();
                 $frm = $arrTPag[$xRec->getTipoDePago()];
                 //si la caja de tesoreria esta abierta, proceder, si no cerrar
                 if ($xCaja->getEstatus() == TESORERIA_CAJA_CERRADA) {
                     $scripts = "<script>alert('El Recibo {$recibo} no ha sido SALDADO({$TesMontoPagado}) en su totalidad({$totaloperacion}),\\n No se puede efectuar operaciones en Caja Cerrada\\nNecesita Autorizar una Sesion de Caja'); document.location = '../404.php?i=7001';</script>";
                 } else {
                     $scripts = "<script> TINY.box.show({iframe:'../frmtesoreria/{$frm}?r={$recibo}',boxid:'frameless',width:400,height:540,fixed:false,maskid:'bluemask',maskopacity:40,closejs:function(){ jsRevalidarRecibo() }})</script>";
                 }
             } else {
                 $scripts = "<script>window.print();</script>";
             }
             //$html.= $xRec->getMessages(OUT_HTML);
             $xForms = new cFormato($this->mForma);
             //$xForms->init();
             $xForms->setRecibo($this->mClave);
             $xForms->setProcesarVars();
             $html .= $xForms->get();
             $html .= "<script>function jsRevalidarRecibo(){document.location = \"{$forma}\"; }</script>";
             $html .= $scripts;
         }
     }
     return $html;
 }