Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
 
 
 

117 righe
4.2 KiB

<?php
require_once "IDataClass.php";
/**
* Description of BandoSetup
* Classe di gestione della Configurazione (tabella: BANDI)
* @author Anselmo
*/
class BandoSetup extends DataClass {
const TABLE_NAME = "BANDI";
const FNZ_ = "CONTROLLOPERIODO";
public $ID = 0;
public $INIZIO_PREPARAZIONE = null;
public $FINE_PREPARAZIONE = null;
public $INIZIO_CLICKDAY = null;
public $FINE_CLICKDAY = null;
public $INIZIO_EROGAZIONE = null;
public $FINE_EROGAZIONE = null;
public $INIZIO_DEROGA = null;
public $FINE_DEROGA = null;
public function __construct ($src = null)
{
global $con;
if ($src == null)
return;
if (is_array($src))
{
$this->_loadByRow($src, $stripSlashes);
}elseif (is_numeric($src)) {
// Carichiamo tramite ID
$sql = "SELECT ID, "
. "TO_CHAR(INIZIO_PREPARAZIONE,'dd-mm-yyyy hh24:mi:ss') AS INIZIO_PREPARAZIONE, "
. "TO_CHAR(FINE_PREPARAZIONE,'dd-mm-yyyy hh24:mi:ss') AS FINE_PREPARAZIONE, "
. "TO_CHAR(INIZIO_CLICKDAY,'dd-mm-yyyy hh24:mi:ss') AS INIZIO_CLICKDAY, "
. "TO_CHAR(FINE_CLICKDAY,'dd-mm-yyyy hh24:mi:ss') AS FINE_CLICKDAY, "
. "TO_CHAR(INIZIO_EROGAZIONE,'dd-mm-yyyy hh24:mi:ss') AS INIZIO_EROGAZIONE, "
. "TO_CHAR(FINE_EROGAZIONE,'dd-mm-yyyy hh24:mi:ss') AS FINE_EROGAZIONE, "
. "TO_CHAR(INIZIO_DEROGA,'dd-mm-yyyy hh24:mi:ss') AS INIZIO_DEROGA, "
. "TO_CHAR(FINE_DEROGA,'dd-mm-yyyy hh24:mi:ss') AS FINE_DEROGA "
. " FROM " . self::TABLE_NAME . " WHERE ID = :id";
$query = $con->prepare($sql);
$query->bindParam(":id", $src);
try {
$query->execute();
$it = $query->fetchAll(PDO::FETCH_ASSOC);
Utils::FillObjectFromRow($this, $it[0]);
} catch (Exception $exc) {
$exc->getMessage();
}
}
}
public function ControllaPeriodoDeroga()
{
return false;
}
public static function ControllaPeriodoPreparazione() {
$oggi = new DateTime();
$dt_prep_Start = new DateTime(DATA_PREPARAZIONE_INIZIO);
$dt_prep_End = new DateTime(DATA_PREPARAZIONE_FINE);
$start_prep = Utils::DateDiff('s', $oggi->format('Y-m-d H:i:s'), $dt_prep_Start->format('Y-m-d H:i:s'), false, false);
$end_prep = Utils::DateDiff('s', $dt_prep_End->format('Y-m-d H:i:s'), $oggi->format('Y-m-d H:i:s'), false, false);
$preparazione = 0;
if ($start_prep < 0 && $end_prep < 0) {
$preparazione = 1;
} else {
$preparazione = 0;
}
return $preparazione;
}
public static function ControllaPeriodoClickDay() {
$oggi = new DateTime();
$dt_pres_Start = new DateTime(DATA_PRESENTAZIONE_INIZIO);
$dt_pres_End = new DateTime(DATA_PRESENTAZIONE_FINE);
$start_pres = Utils::DateDiff('s', $oggi->format('Y-m-d H:i:s'), $dt_pres_Start->format('Y-m-d H:i:s'), false, false);
$end_pres = Utils::DateDiff('s', $dt_pres_End->format('Y-m-d H:i:s'), $oggi->format('Y-m-d H:i:s'), false, false);
$presentazione = 0;
if ($start_pres < 0 && $end_pres < 0) {
$presentazione = 1;
} else {
$presentazione = 0;
}
return $presentazione;
}
public static function ControllaPeriodoAttestati() {
$oggi = new DateTime();
$dt_pres_Start = new DateTime(DATA_ATTESTATI_INIZIO);
$dt_pres_End = new DateTime(DATA_ATTESTATI_FINE);
$start_pres = Utils::DateDiff('s', $oggi->format('Y-m-d H:i:s'), $dt_pres_Start->format('Y-m-d H:i:s'), false, false);
$end_pres = Utils::DateDiff('s', $dt_pres_End->format('Y-m-d H:i:s'), $oggi->format('Y-m-d H:i:s'), false, false);
$presentazione = 0;
if ($start_pres < 0 && $end_pres < 0) {
$presentazione = 1;
} else {
$presentazione = 0;
}
return $presentazione;
}
public function ControllaPeriodoErogazione()
{
return false;
}
}