= time()) { return false; } } $this->cron_id = time() . ' ' . unique_id(); $sql = 'UPDATE ' . CONFIG_TABLE . " SET config_value = '" . $db->sql_escape($this->cron_id) . "' WHERE config_name = 'cron_lock' AND config_value = '" . $db->sql_escape($config['cron_lock']) . "'"; $db->sql_query($sql); // another cron process altered the table between script start and UPDATE query so exit if ($db->sql_affectedrows() != 1) { return false; } return true; } function unlock() { global $db; $sql = 'UPDATE ' . CONFIG_TABLE . " SET config_value = '0' WHERE config_name = 'cron_lock' AND config_value = '" . $db->sql_escape($this->cron_id) . "'"; $db->sql_query($sql); } }