<?php

class updatePruebaAction extends sfAction{

 public function handleError(){

    // Reversar paso del wizard
    $sv = new sessionValidate($this);
    $sv->setSessionAtt('solicitud', 'solicitud_cheque', 300);

    $this->forward('solicitud_cheque', 'editPrueba');

  }
  
  
  // pao aqui
  
  
  public function validate(){
      
      
         
      
  
    // Parámetros a validar
    
    $monto = $this->getRequestParameter('monto');
    $fecha_entrega = $this->getRequestParameter('fecha_entrega');
    $num_transaccion_debito = $this->getRequestParameter('num_transaccion_debito');
    
    // Constantes YML
    $constantes = sfYaml::load(sfConfig::get('sf_root_dir').'/config/const.yml');

    // init de retorno
    $retorno = true;


  
    // Objeto BeneficiarioBeneficio
    $beneficiario_beneficio = BeneficiarioBeneficioPeer::retrieveByPk($beneficiario_beneficio_id);


    $hoyf = date('d/m/Y');
    
    
    /* list($d, $m, $y) = sfI18N::getDateForCulture($fecha_entrega, $this->getUser()->getCulture());
    $fecha_entregaf = "$y-$m-$d";
	if($fecha_entregaf=="--"){$fecha_entregaf="";}else{$fecha_entregaf=$fecha_entregaf;}

    list($d, $m, $y) = sfI18N::getDateForCulture($fecha_emision, $this->getUser()->getCulture());
    $fecha_emisionf = "$y-$m-$d";

    list($d, $m, $y) = sfI18N::getDateForCulture($fecha, $this->getUser()->getCulture());
    $fechaf = "$y-$m-$d";*/
	
    
      /*print_r($fecha_entrega . '   A   ');
    print_r($hoyf . '     B    ');
    die;*/
    
    
if($fecha_entrega<>''){

      if ($fecha_entrega > $hoyf){

        $this->getRequest()->setError('fecha_entrega','Esta fecha no puede ser futura.');

 	$retorno = false;

      }
      
      if ($fecha_entrega < $hoyf){

        $this->getRequest()->setError('fecha_entrega','Esta fecha no puede ser pasada.');

 	$retorno = false;

      }

    }    
    
    
      if (!$num_transaccion_debito){


        $this->getRequest()->setError('num_transaccion_debito','Esta campo es obligatorio.');

 	$retorno = false;
      }

    // Validaciones de las fechas
    
      if (!$fecha_entrega ){


        $this->getRequest()->setError('fecha_entrega','Esta fecha es obligatoria.');

 	$retorno = false;
      }
    


    return $retorno;

  }
  
  
  // hasta aqui
  
    public function execute(){

    // Ahora estamos en el paso 420
    $sv = new sessionValidate($this);
    $sv->setSessionAtt('solicitud', 'solicitud_cheque', 420);

    // parametros de la forma
    $solicitud_solicitud_id = $this->getRequestParameter('solicitud_solicitud_id');
    $beneficiario_beneficio_id = $this->getRequestParameter('beneficiario_beneficio_id');
    $nombre = $this->getRequestParameter('nombre');
    $fecha_entrega = $this->getRequestParameter('fecha_entrega');
    $num_transaccion_debito = $this->getRequestParameter('num_transaccion_debito');
    $banco = $this->getRequestParameter('banco');
    $num_cuenta = $this->getRequestParameter('num_cuenta');
    $monto = $this->getRequestParameter('monto');
    $hoyf = date('d-m-Y');
    $fecha_entrega = date('d-m-Y');

    // Se formatea el monto sustituyendo la coma por el punto
     $m = explode(".", $monto);
    $m1 = $m[0];//tomamos el mes
    $m2 = $m[1];//tomamos el año
       $monto_t = $m1.''.$m2;
       
     $monto_t = str_replace(',','.',$monto_t);
     
    
    // Fechas formateadas en inglés
//    list($d, $m, $y) = sfI18N::getDateForCulture($fecha_entrega, $this->getUser()->getCulture());
//    $fecha_entregaf = "$y-$m-$d";
//	if($fecha_entregaf=="--"){$fecha_entregaf=NULL;}else{$fecha_entregaf=$fecha_entregaf;}

//    list($d, $m, $y) = sfI18N::getDateForCulture($fecha_emision, $this->getUser()->getCulture());
//    $fecha_emisionf = "$y-$m-$d";
//
//    list($d, $m, $y) = sfI18N::getDateForCulture($fecha, $this->getUser()->getCulture());
//    $fechaf = "$y-$m-$d";

    // Objeto BeneficiarioCheque
//    if (!$beneficiario_cheque_id) {  5339362 ced 4684558
//
//      $beneficiario_cheque = new BeneficiarioCheque();
//
//    }
//    else {
//
//      $beneficiario_cheque = BeneficiarioChequePeer::retrieveByPk($beneficiario_cheque_id);
//
//    }

    //**************************************
    // ACTUALIZACIÓN DE BENEFICIARIO_CHEQUE
    //**************************************
    
    
 

    $beneficiario_cheque = new BeneficiarioCheque();
    
    $beneficiario_cheque->setBeneficiarioBeneficioId($beneficiario_beneficio_id);

    $beneficiario_cheque->setNumCheque();

    $beneficiario_cheque->setNombreBeneficiarioCheque($nombre);

    $beneficiario_cheque->setMontoCheque($monto_t);

    $beneficiario_cheque->setFechaEntrega($fecha_entrega);
    
    
    $beneficiario_cheque->setFecha(date('d-m-Y'));
    
    
    
	$c = new Criteria();
	$c->add(SolicitudSolicitudPeer::ID,$solicitud_solicitud_id);
        $tipo_pago= SolicitudSolicitudPeer::doSelectOne($c);
        $c->clear();

    $tip = $tipo_pago->getTransferencia();
    
    if ($tip  == 1) {
        
       $beneficiario_cheque->setFormaPago('T'); 
    }   
       else {
           
          $beneficiario_cheque->setFormaPago('C'); 
    
       
       }
    //die;
    
    
   // $beneficiario_cheque->setFormaPago('T');
   // $beneficiario_cheque->setFormaPago('C');

    $beneficiario_cheque->setNumTransaccionDebito($this->getRequestParameter('num_transaccion_debito'));
    

    $beneficiario_cheque->save();
    

    

    // Se redirecciona a la lista de cheques
    return $this->redirect('solicitud_cheque/listTransferencia?solicitud_solicitud_id='.$solicitud_solicitud_id.'&beneficiario_beneficio_id='.$beneficiario_beneficio_id);

  }


}
