<script>
mostrarCargaImg = function(){ $('#s_ImagenLoad')[0].style.display = 'inline'; }
ocultarCargaImg = function(){ $('#s_ImagenLoad')[0].style.display = 'none'; }

mostrarMensajeError = function( s_MensajeError )
{
    $( "#resultContent" ).html( '<div id="mensaje_error_content" class="error">' + s_MensajeError + '</div>' );
    setTimeout( function(){ $( "#mensaje_error_content" ).fadeOut( 800 ).fadeIn( 800 ).fadeOut( 500 ).fadeIn( 500 ).fadeOut( 300 ); }, 4000 );
}
</script>
<script>
ejecutarGuardar = function()
{
    x = confirm( "Esta seguro de realizar la Transaccion?" );
    if( x )
    {
    	mostrarCargaImg();
    	var strFormSerialize = $( 'form' ).serialize();
        executeAjaxJson( 
                            "<?php echo buildUrl( 'transacciones/saveAddEdit' ) ?>", 
                            strFormSerialize,
                            function( o_json )
                            {
                                console.log( o_json );
                                ocultarCargaImg();
                                if( o_json.error )
                                {
                                    mostrarMensajeError( o_json.mensaje_error );
                                    return false;
                                }
                                window.open( '<?=buildUrl( 'transacciones/reporte', "i_Id=" )?>' + o_json.id );
                                switch ( o_json.type_sub )
                                {
                                    case "0":
                                        location.href = "<?=buildUrl( 'transacciones/detail', "s_TipoProc=upd&i_Id=")?>" + o_json.id;
                                    break;
                                    case "1":
                                        location.href = "<?=buildUrl( 'transacciones/list' )?>";
                                    break;
                                }
                            } 
                       );
    }
}
</script>

<script type="text/javascript">
eventoTipoTransaccion = function( elm )
{
    $('#IdTipoDocumento').val( '' ); 
    $('#IdTipoDocumentoValor').html( '&nbsp;' ); 
    executeAjaxJson
    (
        '<?php echo buildUrl( 'transacciones/request' ) ?>', 
        $( 'form' ).serialize() + '&TipoProc=IdTipoDocumento', 
        function( json )
        {
            $( '#IdTipoDocumento' ).val( json.IdTipoDocumento ); 
            $( '#IdTipoDocumentoValor' ).html( json.Descripcion ); 
        }
    );
    //aqui se agrega procedimiento para identificar las busqueda por proveedor o empleado. 2020-02-24
    $( "#lblProvEmpleado" ).html( "Proveedor" );
    $( "#TipoBus" ).val( "prov" );
    if( $( "#IdTransaccionOperacion_2:checked" ) )
    {
        if( elm.value == "SXC" )
        {
            $( "#lblProvEmpleado" ).html( "Empleado" );
            $( "#TipoBus" ).val( "emp" );
        }
    }
}
</script>

<table width="100%">
    <tr>
        <td width="100%" valign="top" >
            <fieldset class="formGen" style="margin-top:0px">
                <table border="0" cellspacing="6" cellpadding="0" style="margin-left: 20px; width:100%;">
                    <tr>
                        <td nowrap="nowrap" width="20%" class="cabecera"><label class="label req" for="FechaDocumento" >Fecha</label></td>
                        <td nowrap="nowrap">
                            <input type="text" class="text" name="FechaDocumento" id="FechaDocumento" size="10px" value="<?=date( "Y-m-d" )?>" style="text-align:center;" readonly /> 
                            <script type="text/javascript">
                            //$( "#FechaDocumento" ).datepicker( { dateFormat: "yy-mm-dd", changeYear:true, yearRange: "-100:+0", changeMonth: true, onClose: function (){ this.focus(); } } );
                            </script>                                                                                
                        </td>
                        
                        <td nowrap="nowrap" width="10%">&nbsp;</td>
                        
                        <td nowrap="nowrap" width="20%" class="cabecera"><label class="label req" for="IdAlmacen" >Moneda</label></td>
                        <td nowrap="nowrap" width="20%">
                            <select class="combo required" id="MonedaCod" name="MonedaCod">
                                <?php foreach ( GSS_MonedaMastFN::getArratMoneda() as $i_Key => $o_GSS_MonedaMastBN ){ ?>
                                <option value="<?=$o_GSS_MonedaMastBN->getIdMoneda()?>" > <?=$o_GSS_MonedaMastBN->getDescripcion()?> </option>
                                    <?php break; ?>
                                <?php } ?>
                            </select>
                        </td>
                        <td nowrap="nowrap" width="10%">&nbsp;</td>
                    </tr>
	                <tr>
	                    <td nowrap="nowrap" class="cabecera"><label class="label req" for="">Documento a Generar</label></td>
	                    <td nowrap="nowrap">
	                        <?php $i = 1 ?>
                            <?php foreach ( $a_TipoTransaccion as $s_Key => $s_Valor ){ ?>
                                <?php if( $s_Key != ALM_TransaccionCabeceraBN::TIPO_TRANSFERENCIA ){ ?>
                            <input type="radio" name="IdTransaccionOperacion" id="IdTransaccionOperacion_<?=$i?>" value="<?=$s_Key?>" <?php if( $s_Key==$o_ALM_TransaccionCabeceraBN->getIdTransaccionOperacion() ){ echo "CHECKED"; } ?>><label class="label req" for="IdTransaccionOperacion_<?=$i?>"><?=$s_Valor?></label>
                                    <?php $i++ ?>
                                <?php } ?>
                            <?php } ?>
	                        <script>
	                        $( "input[name='IdTransaccionOperacion']" ).click
	                        (
                                function( elm )
                                {
                                    cargarListaTransaccion();
                                    mostarOcultarAlmacen();
                                    limpiarDetalle();
                                }
                            );
	                        cargarTodoAlmacenOrigen = function()
                            {
                            	executeAjaxJson
                            	(
                            	    '<?php echo buildUrl( 'transf/request' ) ?>', 
                            	    'TipoProc=cargarAlmacenOrigen&IdSucursalOrigen=' + $( "#IdSucursalOrigen" ).val(), 
                            	    function( o_json )
                            	    {
                            	    	$( '#IdAlmacen' )[0].options.length = 1;
                            	        console.log( o_json );
                            	        updateElementOption( "IdAlmacen", o_json );
                            	        $( '#IdAlmacen option:eq(1)' ).prop( 'selected', true );
                            	    }
                            	);
                            }
	                        </script>
	                    </td>
                        
	                    <td nowrap="nowrap" >&nbsp;</td>
	                    
	                    <td nowrap="nowrap" class="cabecera"><label class="label req" for="IdAlmacen" >Almacen Origen</label></td>
	                    <td nowrap="nowrap">
                            <select class="combo required" id="IdSucursalOrigen" name="IdSucursalOrigen" onchange="cargarTodoAlmacenOrigen();" style="width: 150px;">
                                <option value=""> - Sucursal - </option>
                                <?php foreach ( GSS_SucursalFN::selectActivos() as $o_GSS_SucursalBN ){ ?>
                                <option value="<?=$o_GSS_SucursalBN->getIdSucursal()?>"  > <?=$o_GSS_SucursalBN->getDescripcion()?> </option>
                                <?php } ?>
                            </select>
                            
                            <select class="combo required" id="IdAlmacen" name="IdAlmacen" style="width: 150px;" onchange="limpiarDetalle();">
                                <option value=""> - Seleccione - </option>
                            </select>
                            
                            
                        </td>
                        <td nowrap="nowrap" class="cabecera">&nbsp;</td>
	                </tr>
	                <tr>
	                    <td nowrap="nowrap" class="cabecera"><label class="label req" for="IdTransaccion" >Tipo Transacci&oacute;n</label></td>
	                    <td nowrap="nowrap">
	                        <select class="combo requerid" id="IdTransaccion" 
                                    name="IdTransaccion" style="width: 95%;"
                                    onchange="eventoTipoTransaccion( this );">
	                            <option value=""> - Seleccione - </option>
	                            <?php if( $o_ALM_TransaccionCabeceraBN->getIdTransaccionOperacion() ){ ?>
	                                <?php foreach ( $a_ALM_TransaccionMast as $i_Key => $o_ALM_TransaccionMastBN ){ ?>
	                            <option value="<?=$o_ALM_TransaccionMastBN->getIdTransaccion()?>" > <?=utf8_encode( $o_ALM_TransaccionMastBN->getDescripcionLocal() )?> </option>
	                                <?php } ?>
	                            <?php } ?>
	                        </select>
	                    </td>
	                    <td nowrap="nowrap" >&nbsp;</td>
	                    
	                    <td nowrap="nowrap" class="cabecera">
                            <label class="label req" for="" id="lblProvEmpleado">Proveedor</label>
                        </td>
	                    <td nowrap="nowrap">
                            <input type="hidden" name="TipoBus" id="TipoBus" value="prov">
                            <input type="hidden" name="IdProveedor" id="IdProveedor" value="">
                            <input class="text" readonly type="text" name="NombreProveedor" id="NombreProveedor" size="40" value=""/>
                            &nbsp;
                            <input type="button" value="..." class="button" id="btnProveedor">
                            <script>
                            $( "#btnProveedor" )
                            .click
                            (
                                function()
                                {
                                    var id_Transaccion = $( "#IdTransaccion" ).val();
                                    var tipo_busqueda  = $( "#TipoBus" ).val();
                                    $( '#myIframe' ).attr( 'src', '<?=buildUrl( 'oc/prov', '' )?>' + 'IdTransaccion/' + id_Transaccion + '/tipobus/' + tipo_busqueda );
                                    $( '#dialog' ).dialog( 'open' );
                                }
                            )
                            </script>
                            <script>
                            asignarProveedor = function( IdProveedor, NombreProveedor, Contacto )
                            {
                                $( "#IdProveedor" ).val( IdProveedor );
                                $( "#NombreProveedor" ).val( NombreProveedor );
                                $( "#NumeroInterno" ).val( Contacto );
                            }
                            </script>
                        </td>
                        <td nowrap="nowrap" >&nbsp;</td>
	                </tr>
	                <tr>
	                    <td nowrap="nowrap" class="cabecera"><label class="label req" for="" >Documento a Generar</label></td>
	                    <td nowrap="nowrap">
	                        <input type="hidden" name="IdTipoDocumento" id="IdTipoDocumento" value="">
	                        <label class="label" id="IdTipoDocumentoValor" style="font-weight: bold;">&nbsp;</label>
	                    </td>
	                    <td nowrap="nowrap" >&nbsp;</td>
	                    
	                    <td nowrap="nowrap" class="cabecera"><label class="label req" for="ReferenciaTipoDocumento" >Tipo Referencia</label></td>
	                    <td nowrap="nowrap" colspan="2">
                            <select class="combo required" id="ReferenciaTipoDocumento" name="ReferenciaTipoDocumento" style="width:90%" onchange="activarReferenciaParaNotaCred();">
                                <option value=""> - Seleccione - </option>
                                <?php foreach ( VTA_TipoDocumentoFN::buscarDocParaLogistica() as $o_VTA_TipoDocumentoBN ) { ?>
                                <option value="<?=$o_VTA_TipoDocumentoBN->getIdTipoDocumento()?>" > <?=$o_VTA_TipoDocumentoBN->getDescripcionLocal()?> </option>
                                <?php } ?>
                            </select>
                            &nbsp;
                            <div style="display: inline;" >
                                <div id="DivReferenciaSerie" style="margin-top: 5px;"> 
                                    <label class="label req" >Serie</label>
                                    <input type="text" class="text" size="10" name="ReferenciaSerieDocumento" id="ReferenciaSerieDocumento" style="text-align:center;" value="1" onfocus="this.select();"  autocomplete="off">
                                    &nbsp;&nbsp;
                                    <label class="label req" >N&uacute;mero</label>
                                    <input type="text" class="text required" id="ReferenciaNumeroDocumento" name="ReferenciaNumeroDocumento" value="1" style="text-align:center;"  onfocus="this.select();"  autocomplete="off">
                                </div>
                                <div style="display: inline-block; margin-top: 5px;">
                                    <label class="label req" >Fecha</label>
                                    <input type="text" class="text required" id="ReferenciaFechaDocumento" name="ReferenciaFechaDocumento" value="<?=date( "Y-m-d" )?>" style="text-align:center;"  onfocus="this.select();"  autocomplete="off">
                                    <script type="text/javascript">
                                    $( "#ReferenciaFechaDocumento" ).datepicker( { dateFormat: "yy-mm-dd", changeYear:true, yearRange: "-1:+1", changeMonth: true, onClose: function (){ this.focus(); } } );
                                    </script>
                                </div>
                            </div>
                            &nbsp;
                            <div style="display: none;" id="content_documentoref" >
                                <div id="DivReferenciaNotaCred" style="margin-top: 5px;"> 
                                    <label class="label req" >Documento Referencia</label>
                                    <input type="hidden" name="IdOrdenGuia" id="IdOrdenGuia" value="">
                                    <input type="text" readonly="readonly" class="text text0" size="25" name="ReferenciaDocumentoParaNotaCred" id="ReferenciaDocumentoParaNotaCred" style="text-align:center;" value="">
                                    &nbsp;
                                    <input type="button" value="..." class="button" id="btnParaNotaCred">
                                </div>
                            </div>
                            <script>
                            $( "#btnParaNotaCred" )
                            .click
                            (
                                function()
                                {
                                	var IdProveedor = $( "#IdProveedor" ).val();
                                    $( '#myIframe' ).attr( 'src', '<?=buildUrl( 'asoguias/docrefList', '' )?>' + 'IdProveedor/' + IdProveedor );
                                    $( '#dialog' ).dialog( 'open' );
                                }
                            )
                            </script>
                            <script>
                            asignarReferenciaParaNotaCred = function( IdOrdenGuia, ReferenciaDocumentoParaNotaCred )
                            {
                                //pr( arguments );
                                $( "#IdOrdenGuia" ).val( IdOrdenGuia );
                                $( "#ReferenciaDocumentoParaNotaCred" ).val( ReferenciaDocumentoParaNotaCred );
                                $( '#dialog' ).dialog( 'close' );
                                
                                //ahora se agrega los detalles
                                executeAjaxJson
                                (
                                    '<?php echo buildUrl( 'transacciones/request' ) ?>', 
                                    'TipoProc=getDetallesTrxPorIdGuia&IdOrdenGuia=' + IdOrdenGuia, 
                                    function( json )
                                    {
                                        if( json.length > 0 )
                                        {
                                        	$.each
                                            (
                                                json, function( index, obj )
                                                {
                                        	       agregarLineaTrx( obj.IdItem, obj.Cantidad, obj.CostoConIGV );
                                        	    }
                                           );
                                        }
                                    }
                                );
                            }
                            activarReferenciaParaNotaCred = function()
                            {
                                if( $( "#ReferenciaTipoDocumento" ).val() == "NC" )
                                {
                                    $( "#content_documentoref" ).show();
                                }
                                else
                                {
                                	$( "#content_documentoref" ).hide();
                                    $( "#IdOrdenGuia" ).val( "" );
                                    $( "#ReferenciaDocumentoParaNotaCred" ).val( "" );
                                }
                            }
                            </script>
                        </td>
                        <td nowrap="nowrap" >&nbsp;</td>
	                </tr>

                    <tr>
                        <td nowrap="nowrap" class="cabecera"><label class="label req" for="Descripcion" >Descripcion</label></td>
                        <td nowrap="nowrap" >
                            <input type="text" class="text" name="Descripcion" id="Descripcion" style="width:99%" autocomplete="off" ></input>
                        </td>
                        <td nowrap="nowrap" class="cabecera"><label class="label req" for="" >&nbsp;</label></td>
                        <td nowrap="nowrap">
                            <label class="label" for="RegistroKardexFlag">Sin Registro al Kardex</label>
                        </td>
                        <td nowrap="nowrap" ><input type="checkbox" class="" id="RegistroKardexFlag" name="RegistroKardexFlag" value="1"></td>
                        <td nowrap="nowrap" >&nbsp;</td>
                    </tr>
                    <tr>
                         <td nowrap="nowrap" class="cabecera"><label class="label req" for="Comentario" >Comentario</label></td>
                         <td nowrap="nowrap" >
                             <textarea class=""  name="Comentario" id="Comentario" style="width:99%" rows="2"></textarea>
                         </td>
                         <td nowrap="nowrap" class="cabecera"></td>
                         <td nowrap="nowrap">

                         </td>
                         <td nowrap="nowrap" ></td>
                         <td nowrap="nowrap" >&nbsp;</td>
                    </tr>
                </table>
            </fieldset>
        </td>
    </tr>
</table>

<input type="hidden" name="IdCompania" id="IdCompania" value="<?=myUser::getUser()->getIdBusiness()?>">

<script>
cargarListaTransaccion = function()
{
    $('#IdTransaccion')[0].options.length = 1;
    $('#IdTipoDocumento').val( '' );
    $('#IdTipoDocumentoValor').html( '&nbsp;' );
    publicForSelectAjaxJSON
    ( 
        '<?php echo buildUrl( 'transacciones/request' ) ?>', 
        $( 'form' ).serialize() + '&TipoProc=IdTransaccion', 
        'IdTransaccion', 
        function()
        {
            if( $( "#IdTransaccionOperacion_1" ).is(':checked') )
            {
                $( "#IdTransaccion" ).val( "CPN" );
                $( "#ReferenciaTipoDocumento" ).val( "FC" );
            }
            if( $( "#IdTransaccionOperacion_2" ).is(':checked') )
            {
                $( "#IdTransaccion" ).val( "DRO" );
                $( "#ReferenciaTipoDocumento" ).val( "NC" );
            }
            $( "#IdTransaccion" ).change();

            activarReferenciaParaNotaCred();
        } 
    );
}

mostarOcultarAlmacen = function()
{
    var elm = $( '#IdTransaccionOperacion_1' );
    console.log( elm.is( ':checked' ) );
    /*
    $( "#lblAlmacenDestino" ).show();
    $( "#dvAlmacenDestino" ).show();
            
    if ( !$( '#IdTransaccionOperacion_3' ).is( ':checked' ) ) 
    {
        $( "#lblAlmacenDestino" ).hide();
        $( "#dvAlmacenDestino" ).hide();
    }
    */
}
</script>

<script>
validacionExtra = function()
{
    var b_Control = true;
    if( $( "#IdAlmacen" ).val() == $( "#AlmacenTraslado" ).val() )
    {
        alert( "Los Almacenes de Origen y Destino tienen que ser diferentes" );
        b_Control = false;
    }
    if( $( "#ReferenciaTipoDocumento" ).val() == "NC" )
    {
        if( $( "#IdOrdenGuia" ).val() == "" )
        {
        	alert( "Para la Nota de Credito es necesario el Documento de Referencia." );
        	b_Control = false;
        }
    }
    b_Control = validacionDetalles();
    console.log( b_Control );
    return b_Control;
}

$.validator.setDefaults
(
    {
        submitHandler: function( form ) 
        {
            if( validacionExtra() )
            {
                ejecutarGuardar();
            }
        }
    }
);
$( "#form1" ).validate();
</script>