89 lines
2.3 KiB
PHP
89 lines
2.3 KiB
PHP
|
<?php
|
||
|
use Carbon\Carbon;
|
||
|
use Incoviba\old\Proyecto\Proyecto;
|
||
|
use App\Contract\Auth;
|
||
|
|
||
|
include_once dirname(__DIR__) . '/bootstrap/autoload.php';
|
||
|
|
||
|
header("Access-Control-Allow-Origin: *");
|
||
|
|
||
|
if (config('app.debug') == true) {
|
||
|
if (config('app.benchmark') == true) {
|
||
|
$benchmark = (object) ['time' => microtime(true)];
|
||
|
}
|
||
|
}
|
||
|
|
||
|
Carbon::setLocale(config('app.locale'));
|
||
|
setlocale(LC_TIME, 'es_ES');
|
||
|
|
||
|
sanitize();
|
||
|
|
||
|
try {
|
||
|
Auth::isIn();
|
||
|
} catch (PDOException $e) {
|
||
|
header('Location: install');
|
||
|
die();
|
||
|
}
|
||
|
if (Auth::isIn()) {
|
||
|
if ((get('p') !== false or get('page') !== false or get('m') !== false or get('module') !== false)) {
|
||
|
if (($route = route()) !== false) {
|
||
|
echo $route;
|
||
|
} else {
|
||
|
echo view('construccion');
|
||
|
}
|
||
|
} else {
|
||
|
$proyectos = model(Proyecto::class)->findMany();
|
||
|
$dias = [];
|
||
|
$cierres = [];
|
||
|
$pendientes = 0;
|
||
|
$hoy = 0;
|
||
|
foreach ($proyectos as $proyecto) {
|
||
|
$pendientes += $proyecto->cuotasPendientes();
|
||
|
$hoy += $proyecto->cuotasHoy();
|
||
|
foreach ($proyecto->cuotasMes() as $cuota) {
|
||
|
$f = $cuota->pago()->fecha();
|
||
|
if ($f->isoWeekday() == 6 or $f->isoWeekDay() == 7) {
|
||
|
$f = $f->copy()->addDays(2)->startOfWeek();
|
||
|
}
|
||
|
$dia = $f->format('Y-m-d');
|
||
|
if (!isset($dias[$dia])) {
|
||
|
$dias[$dia] = [$proyecto->descripcion => 0];
|
||
|
}
|
||
|
if (!isset($dias[$dia][$proyecto->descripcion])) {
|
||
|
$dias[$dia][$proyecto->descripcion] = 0;
|
||
|
}
|
||
|
$dias[$dia][$proyecto->descripcion] ++;
|
||
|
}
|
||
|
if (count($proyecto->cierres()) > 0) {
|
||
|
$cierres[$proyecto->descripcion] = (object) ['total' => count($proyecto->cierres()),'vigentes' => $proyecto->cierres(3), 'rechazados' => $proyecto->cierres(-1), 'pendientes' => $proyecto->cierres(2)];
|
||
|
}
|
||
|
}
|
||
|
uksort($dias, function($a, $b) {
|
||
|
return strcmp($a, $b);
|
||
|
});
|
||
|
uksort($cierres, function($a, $b) {
|
||
|
return strcmp($a, $b);
|
||
|
});
|
||
|
echo view('home', compact('pendientes', 'hoy', 'dias', 'cierres'));
|
||
|
}
|
||
|
} elseif (get('p') == 'auth' or get('page') == 'auth') {
|
||
|
$route = route();
|
||
|
if ($route !== false) {
|
||
|
echo $route;
|
||
|
} else {
|
||
|
echo view('guest');
|
||
|
}
|
||
|
} else {
|
||
|
echo view('guest');
|
||
|
}
|
||
|
|
||
|
if (config('app.debug') == 'true') {
|
||
|
if (config('app.benchmark') == 'true') {
|
||
|
$benchmark->time = microtime(true) - $benchmark->time;
|
||
|
if (get('ajax') != '1' and get('p') != 'ajax' and get('p') != 'informes') {
|
||
|
echo view('benchmark', compact('benchmark'));
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
?>
|