Autor Zpráva
jDanek
Profil *
Dobrý večer, mám takovou technickou otázečku... Šlo by tohle nějak zjednodušit?

_get() je systémová fce SL CMS

// akce
$section = (_get('s') ? strval(_get('s')) : null);
$m_actions = (_get('a') ? strval(_get('a')) : null);
$m_module = (_get('mod') ? strval(_get('mod')) : null);

// Instance trid MediMaxu
$mediMod = MediModules::getInstance();
$mediCfg = MediConfig::getInstance()->getAllConfigs();

// kontrola zda je volany modul v poli
if ($mediMod->isModules($section)) {
    require $mediCfg['modules_dir'] . $section . DIRECTORY_SEPARATOR . "script.php";
} else {
    require __DIR__ . DIRECTORY_SEPARATOR . 'overview.php';
}

// kontrola get parametru pro akce
if (
        isset($m_module, $m_actions)
        && $mediMod->isModules($m_module) //kontrola zda modul existuje
) {
    switch ($m_actions) {
        case 'i':
            if ($mediMod->allowInstall($m_module))  // kontrola uzivatelskeho pristupu
                $mediMod->installDB($m_module, $mediCfg['plugin_base']);
            break;
        case 'u':
            if ($mediMod->allowUnInstall($m_module))  // kontrola uzivatelskeho pristupu
                $mediMod->unInstallDB($m_module, $mediCfg['plugin_base']);
            break;
        default:
            break;
    }
}
Tori
Profil
Když už jste dal odkaz na API, tak místo $section = (_get('s') ? strval(_get('s')) : null); stačí jen $section = _get('s'); nebo $section = _get('s', null, false);(v GET je vždy řetězec nebo pole, ostatní hodnoty jsou výchozí).

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: