Files
PVM/public_html/classes/AziendaUtils.class.php
2021-10-20 16:32:11 +02:00

84 lines
3.0 KiB
PHP

<?php
class AziendaUtils {
public static function getLogo($profileDB) {
$logoAziendaConfig = Config::get_logoAzienda($profileDB);
$aziendaMain = Config::get_azienda($profileDB);
if (is_null($logoAziendaConfig)) {
$profileDB = Config::get_azienda();
}
$azienda = $profileDB;
$fileName = if_null(Config::get_logoAzienda($azienda), "logo_azienda.png");
$filePath = str_replace(DIRECTORY_SEPARATOR, "/", self::getPathHome($aziendaMain, "images") . "/" . $fileName);
return file_exists($filePath) ? $filePath : null;
}
public static function getPathHome($azienda, $fileName = "") {
$azienda = is_null($azienda) ? Config::get_azienda() : $azienda;
return "config_aziende" . DIRECTORY_SEPARATOR . strtoupper($azienda) . DIRECTORY_SEPARATOR . $fileName;
}
public static function getModuli($azienda = null) {// echopre(debug_backtrace());
$arr_moduliAzienda = self::getModuliFromConfig($azienda);
$arr_moduliStandard = PVM\ModuloUtils::getModuliStandard();
foreach ($arr_moduliStandard as $moduloStandard) { // evito il ripetersi di eventuali gestioni gia definite
$idModulo = $moduloStandard["name"];
$result = from($arr_moduliAzienda)->where(function ($x) use ($idModulo) {
return $x["name"] == $idModulo;
})->count();
if ($result == 0) {
$arr_moduliAzienda[] = $moduloStandard;
}
}
return $arr_moduliAzienda;
}
public static function getModulo($idModulo, $azienda = null) {
$arr_moduli = self::getModuli($azienda);
foreach ($arr_moduli as $modulo) {
if ($modulo["name"] === $idModulo) {
return $modulo;
}
}
return null;
}
public static function getIdModuliFromConfig($azienda = null) {
return array_column(self::getModuliFromConfig($azienda), "name");
}
public static function getModuliFromConfig($azienda = null) {
$azienda = is_null($azienda) ? Config::get_azienda() : $azienda;
if (!is_null($azienda)) {
$idx = "moduliAzienda{$azienda}";
if (!isset($GLOBALS[$idx])) {
$ret = array();
$moduleConfigFileAzienda = AziendaUtils::getPathHome($azienda, "gestioni.json");
if (file_exists($moduleConfigFileAzienda)) {
$ret = json_decode(file_get_contents($moduleConfigFileAzienda), true);
}
//$ret[] = array("name" => "messenger", "group" => "NULL");
$GLOBALS[$idx] = $ret;
}
return $GLOBALS[$idx];
}
return array();
}
/*
public static function getModuloFromConfig($idModulo, $azienda = null){
$arr_moduli = self::getModuliFromConfig($azienda);
foreach($arr_moduli as $modulo){
if($modulo["name"]===$idModulo){
return $modulo;
}
}
return null;
}*/
}