No se por qué pones que es POO, pero se me ocurre que podría ser más simple, según lo que entendí.
Deberías tener un horario de inicio y un horario de finalizado... compararlo con la HORA ACTUAL y verificas si está en el rango.. prueba algo asi.. es solo un ejemplo, en este caso solo use la H de hora de la funcion DATE, sin tomar en cuenta los minutos, ni los segundos.. pero sabes que date() te permite usar H, m, s, Y, m, d. deberias solo ajustarte a tu necesidad
Código PHP:
<?php
$hInicio = '14'; // Está en 24 hrs
$hFin = '19';
$h = date("H"); // Hora actual en 24 hrs
if ($h >= $hInicio && $h <= $hFin){
// PERMITE VOTAR
}
else{
//NO PERMITE VOTAR
}
?>