#!/usr/bin/env php ' . PHP_EOL; exit(1); } require_once('include/cli_startup.php'); cli_startup(); $helpArgs = getopt('h', array('help')); if (count($helpArgs) === 1) { echo <<<'EndOfOutput' adds, removes, or lists admins Usage: util/admins util/admins list util/admins add util/admins remove EndOfOutput; return; } if($argc == 1) { $r = q("select account_id, account_roles, account_email from account"); if($r) { foreach($r as $rr) { echo sprintf('%4u %s %s', $rr['account_id'], $rr['account_email'],(($rr['account_roles'] & 4096) ? '*' : '')) . PHP_EOL; } } } if($argc > 1 && $argv[1] === 'list') { $r = q("select account_id, account_roles, account_email from account where (account_roles & 4096) > 0"); if($r) { foreach($r as $rr) { echo sprintf('%4u %s %s', $rr['account_id'], $rr['account_email'],(($rr['account_roles'] & 4096) ? '*' : '')) . PHP_EOL; } } } if($argc > 2 && $argv[1] === 'add' && intval($argv[2])) { $r = q("update account set account_roles = (account_roles | 4096) where account_id = %d", intval($argv[2]) ); } if($argc > 2 && $argv[1] === 'remove' && intval($argv[2])) { $r = q("update account set account_roles = (account_roles - 4096) where account_id = %d and (account_roles & 4096) > 0", intval($argv[2]) ); }