/** * Checks if enough rights. */ function checkRights(&$action, $oikeudet) { // Jos julkista haetaan niin kaikilla on oikeudet if ($oikeudet[4] === 'x' and (isset($_SESSION['oikeudet']) and $_SESSION['oikeudet'] != '')) { /* print '<pre>'; print($oikeudet); print '</pre>'; */ return TRUE; } if ($action->LOGGED_IN or !isset($_SESSION['oikeudet']) or $_SESSION['oikeudet'] = '') { $vaaditutOikeudet = parsiOikeudet($oikeudet); $taulut = array('yllapitooikeudet', 'omattiedotoikeudet', 'joukkueenalueoikeudet', 'lisaamuokkaaoikeudet'); $tunnus =& $_SESSION['nimi']; $q1 = "select tunnus from yllapitooikeudet where tunnus = '{$tunnus}'"; require_once 'tietokanta.php'; $kayttajanOikeudet = '-----'; $_SESSION['oikeudet'] = '-----'; $db = new Tietokanta(); $db->open(); $i = 0; foreach ($taulut as $k) { $q = "select tunnus from {$k} where tunnus = '{$tunnus}'"; $kayttajanOikeudet[$i] = haeOikeustieto($db->doQuery($q)); $_SESSION['oikeudet'][$i] = $kayttajanOikeudet[$i]; $i++; } //print $_SESSION['oikeudet']; $db->commit(); $db->close(); D('<pre>'); D($kayttajanOikeudet) . ":"; D($oikeudet); D('</pre>'); // ylikäyttäjä if ($kayttajanOikeudet[0] === 'x') { return TRUE; } for ($i = 0; $i < 5; $i++) { if ($kayttajanOikeudet[$i] === 'x' and $oikeudet[$i] === 'x') { return TRUE; } } } // public sivu if ($oikeudet[4] === 'x') { return TRUE; } return FALSE; }