Example #1
0
 private function changeDateFieldsFormatForSave(&$dbArray)
 {
     if (is_array($this->date_fields)) {
         foreach ($dbArray as $key => $value) {
             if (in_array($key, $this->date_fields)) {
                 $dbArray[$key] = dataParaGravacao($value);
             }
         }
     }
 }
 /**
  * Compara duas datas, verificando se uma é maior ou igual que a outra
  * Usa a classe DateTime para isso
  * php >= 5.2.2 é possível comparar duas instâncias de datetime com operadores de comparação
  *
  * @param $str       data base no formato de exibição dd/mm/yyyy
  * @param $compareTo data no formato de exibição dd/mm/yyyy
  */
 public function date_greater_equals_than($str, $compareTo)
 {
     $valid = true;
     if (isset($_POST[$compareTo])) {
         $valueToCompare = $_POST[$compareTo];
         if (dataValida($str) && dataValida($valueToCompare)) {
             $data1 = new DateTime(dataParaGravacao($str));
             $data2 = new DateTime(dataParaGravacao($valueToCompare));
             $valid = $data1 >= $data2;
         }
     }
     return $valid;
 }
Example #3
0
function dataCalcularProximoVencimento($diaVencimento, $idPeriodicidade)
{
    $ci =& get_instance();
    $ci->load->model('periodicidade_model');
    $diaVencimento = dataParaGravacao($diaVencimento);
    $diasPeriodicidade = $ci->periodicidade_model->get_by_id($idPeriodicidade);
    if ($diasPeriodicidade->numeroDias < 30) {
        $proximoVencimento = dataAddDias($diasPeriodicidade->numeroDias, $diaVencimento);
    } else {
        $mesesPeriodicidade = $diasPeriodicidade->numeroDias / 30;
        $proximoVencimento = new DateTime($diaVencimento);
        $proximoVencimento->setDate($proximoVencimento->format("Y"), $proximoVencimento->format("m"), dataParaExibicao($diaVencimento, 'd'));
        if ($proximoVencimento) {
            $proximoVencimento = dataAddMes($mesesPeriodicidade, $proximoVencimento->format("Y-m-d"));
        }
    }
    return $proximoVencimento;
}