gestione gare pubbliche
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.
 
 
 
 
 

77 righe
2.2 KiB

<?php
class Modulo {
public static function getTipologieModuli($filters = []) {
$tmpModuli = Modulo::getModuli($filters);
if (count($tmpModuli) > 0) {
foreach($tmpModuli AS $id_modulo => $modulo) {
if (!isset($moduli[$modulo["tipo"]])) { $moduli[$modulo["tipo"]] = []; }
$moduli[$modulo["tipo"]][$id_modulo] = $modulo;
}
return $moduli;
}
return [];
}
public static function getTipologie() {
global $config;
return jsonToArray($config["jsonFolder"]."/moduli-tipologie.json");
}
public static function getModuli($filters=null) {
global $config;
$moduli = [];
$path = $config["jsonFolder"]."/moduli/";
if (file_exists($path) && $handle = opendir($path)) {
while (false !== ($file = readdir($handle))) {
if (is_file($path.$file))
{
$modulo = jsonToArray($path.$file);
if (isset($modulo["id"])) {
$moduli[$modulo["id"]] = $modulo;
}
}
}
}
if ($filters===null) { $filters["attivo"] = true; }
if (is_array($filters) && !empty($filters)) {
$tmp = [];
foreach($moduli AS $id_modulo => $modulo) {
$insert = true;
foreach($filters AS $key => $value) {
if ($modulo[$key] !== $value) { $insert = false; }
}
if ($insert) { $tmp[$id_modulo] = $modulo; }
}
$moduli = $tmp;
}
return $moduli;
}
public static function getInfo($radice) {
$return = false;
if (!empty($radice)) {
$moduli = self::getModuli(false);
if (!empty($moduli[$radice])) {
$return = $moduli[$radice];
$return["titolo"] = __($return["titolo"]);
$return["descrizione"] = __($return["descrizione"]);
}
}
return $return;
}
public static function header($radice, $subtitle = false) {
$return = false;
$modulo = Modulo::getInfo($radice);
if (!empty($modulo)) {
ob_start();
include __DIR__ . "/views/modulo-header.php";
$return = ob_get_clean();
}
return $return;
}
}