*/ public static function all() { $value = get_option(self::OPTION, array()); return is_array($value) ? $value : array(); } /** * @param mixed $default * @return mixed */ public static function get($key, $default = null) { $all = self::all(); return array_key_exists($key, $all) ? $all[$key] : $default; } /** * @param array $values */ public static function merge(array $values) { $all = array_merge(self::all(), $values); update_option(self::OPTION, $all, false); } public static function forget() { delete_option(self::OPTION); } public static function token() { $token = self::get('token'); return is_string($token) && $token !== '' ? $token : null; } public static function isConnected() { return self::token() !== null; } }