function getFechaDeAviso($periocidad = false, $fecha = false, $periodoInit = false, $periodoEnd = false)
 {
     $xF = new cFecha();
     $dias = explode(",", strtoupper($this->mDiasDeAviso));
     $diasSem = $xF->getDiasDeSemanaInArray();
     $periocidad = $periocidad == false ? $this->getPeriocidadPref() : $periocidad;
     $fecha = $fecha == false ? fechasys() : $fecha;
     $result = null;
     $items = 1;
     foreach ($diasSem as $numero => $nombre) {
         /*if(isset($dias[$nombre]) ){
         			unset($dias[$nombre]);
         			$dias[$numero]
         		}*/
     }
     foreach ($dias as $id => $dia) {
     }
     foreach ($dias as $id => $dia) {
         //limpiar
         if ($periocidad != CREDITO_TIPO_PERIOCIDAD_SEMANAL) {
             foreach ($diasSem as $numero => $nombre) {
                 if ($dia == $nombre) {
                     unset($dias[$id]);
                 }
             }
             if (setNoMenorQueCero($dia) > $xF->getDiasDelMes() or setNoMenorQueCero($dia) == 0) {
                 unset($dias[$id]);
             }
             switch ($periocidad) {
                 case CREDITO_TIPO_PERIOCIDAD_DECENAL:
                     if ($id > 3) {
                         unset($dias[$id]);
                     }
                     break;
                 case CREDITO_TIPO_PERIOCIDAD_CATORCENAL:
                     if ($id > 2) {
                         unset($dias[$id]);
                     }
                     break;
                 case CREDITO_TIPO_PERIOCIDAD_QUINCENAL:
                     if ($id > 2) {
                         unset($dias[$id]);
                     }
                     break;
                 case CREDITO_TIPO_PERIOCIDAD_MENSUAL:
                     if ($id > 1) {
                         unset($dias[$id]);
                     }
                     break;
             }
         } else {
             //convertir dias
             foreach ($diasSem as $numero => $nombre) {
                 if ($dia == $nombre) {
                     $dias[$id] = $numero;
                 }
             }
             if (setNoMenorQueCero($dia) > 7 or setNoMenorQueCero($dia) == 0) {
                 unset($dias[$id]);
             }
             if ($id > 1) {
                 unset($dias[$id]);
             }
         }
     }
     //$items		= count($dias);
     //encontrar el periodo cero
     switch ($periocidad) {
         case CREDITO_TIPO_PERIOCIDAD_DECENAL:
             break;
         case CREDITO_TIPO_PERIOCIDAD_CATORCENAL:
             break;
         case CREDITO_TIPO_PERIOCIDAD_QUINCENAL:
             break;
         case CREDITO_TIPO_PERIOCIDAD_MENSUAL:
             $xF1 = new cFecha(0, $fecha);
             $result = $xF1->anno() . "-" . $xF1->mes() . "-" . $dias[0];
             break;
         case CREDITO_TIPO_PERIOCIDAD_SEMANAL:
             //$fechaInicial	= $xF->setFechaPorSemana();
             $xF1 = new cFecha(0, $fecha);
             $buscar = 1;
             foreach ($dias as $id => $cnt) {
                 $buscar = $cnt;
             }
             $semana = date("W", $xF1->getInt());
             $result = $xF1->setFechaPorSemana($semana, $buscar);
             /*
              $first_day_of_week = date('m-d-Y', strtotime('Last Monday', time()));
             $last_day_of_week = date('m-d-Y', strtotime('Next Sunday', time()));
             */
             break;
     }
     return $result;
 }