function main()
{
    // start process watch
    $parentProcessId = getmypid();
    if ($parentProcessId == false || $parentProcessId == 0) {
        _Logging::appLog("Parent process couldnt get pid");
    }
    $userProcessId = 0;
    $monitorProcessesId = 0;
    $mysql = new _MySQL();
    // control
    while (true) {
        try {
            $mysql->connect(Setup::$connectionArray);
            if (!Utilities::is_process_running($userProcessId)) {
                $userCheck = $mysql->runQueryReturnVar("select username from users where beenChecked = 0");
                if ($userCheck !== false) {
                    $cmd = 'php ' . dirname(__FILE__) . '/userJob.php -i ' . $parentProcessId;
                    $userProcessId = Utilities::run_in_background($cmd);
                }
            }
        } catch (Exception $e) {
            _Logging::appLog($e->getMessage());
        }
        if (!Utilities::is_process_running($monitorProcessesId)) {
            $cmd = 'php ' . dirname(__FILE__) . '/blacklistmonitor.php -p monitorProcessWatch -i ' . $parentProcessId;
            $monitorProcessesId = Utilities::run_in_background($cmd);
        }
        sleep(15);
        //15 seconds
    }
}
 public static function ensureGroupExists($groupName)
 {
     $mysql = new _MySQL();
     $mysql->connect(Setup::$connectionArray);
     $id = $mysql->runQueryReturnVar("select id from monitorGroup where groupName = '" . $mysql->escape($groupName) . "'");
     if ($id === false) {
         $mysql->runQuery("insert into monitorGroup set groupName = '" . $mysql->escape($groupName) . "'");
         $id = $mysql->identity;
     }
     $mysql->close();
     return $id;
 }