/** * @param User $user * @return Page[] */ public static function getPages(User $user) { global $mysqli; $pages = array(); $query = $mysqli->query("SELECT * FROM pages ORDER BY id"); while ($result = $query->fetch_array()) { if ($result['clearance'] > 0 && $user->getClearance() && $user->getClearance()->getClearance() >= $result['clearance'] || ($result['admin'] > 0 && $result['team'] != 0 && ($user->getAdmin() && $user->getAdmin()->getAdminLevel() >= $result['admin'] && in_array(new Division($result['team']), $user->getAdmin()->getTeams()) || $user->getAdmin() && $user->getAdmin()->getAdminLevel() > $result['admin'] + 1) || $user->getAdmin() && $user->getAdmin()->getAdminLevel() > 3) || $user->getAdmin() && $user->getAdmin()->getAdminLevel() >= $result['admin'] && $result['team'] == 0 || $result['clearance'] == 0 && $result['admin'] == 0) { $pages[] = new self($result['name'], $result['desc'], $result['title'], $result['page']); } } return $pages; }
/** * @param User $user * @param bool $override * @return User[] */ public static function getUsers(User $user, $override = false) { global $mysqli; $users = array(); $query = $mysqli->query("SELECT * FROM users ORDER BY id"); while ($result = $query->fetch_array()) { $other = new User($result['id']); if ($other->getID() != 0 && ($user->getAdmin() && $other->getAdmin() && $user->getAdmin()->getAdminLevel() >= $other->getAdmin()->getAdminLevel() || $user->getClearance()->getClearance() >= $other->getClearance()->getClearance())) { $users[] = $other; } else { if ($override && $other->getID() != 0) { $users[] = $other; } } } return $users; }
<td><?php echo $user->getName(); ?> </td> </tr> <tr> <th>Rank:</th> <td><?php echo $user->getRank()->getName(); ?> </td> </tr> <tr> <th>Clearance: </th> <td><?php echo $user->getClearance()->getClearanceName(); ?> </td> </tr> <tr> <th><label for="merits">Merits</label></th> <td><input type="number" id="merits" name="merits" value="<?php echo $user->getMerits(); ?> " required /></td> </tr> <tr> <td colspan=2><button id="edit" name="edit" class="btn btn-primary" type="button" onclick="editMerits()">Edit</button></td> </tr> </table> </form>
} else { echo '<option value=' . $division->getDivision() . '>' . $division->getName() . '</option>'; } } ?> </select> </td> </tr> <tr> <th><label for="clearance">Clearance:</label></th> <td> <select id="clearance" name="clearance"> <?php foreach (SecurityClearance::getAllClearances() as $val => $clearance) { if ($val != 0) { if ($user->getClearance()->getClearance() == $val) { echo '<option value=' . $val . ' selected>' . $clearance . '</option>'; } else { echo '<option value=' . $val . '>' . $clearance . '</option>'; } } } ?> </select> </td> </tr> <tr> <th><label for="name">Name:</label></th> <td><input type="text" id="name" name="name" value="<?php echo $user->getName(); ?>
/** * Check if the user has the proper clearance to view the document. * @param User $user * @return boolean */ public function checkClearance(User $user) { if ($this->clearance->getClearance() > $user->getClearance()->getClearance()) { return false; } return true; }