<?php
namespace App\Rules;
use App\Cache\Cache;
use App\User;
use Illuminate\Contracts\Validation\Rule;
class UUID implements Rule
{
/**
* Create a new rule instance.
*
* @return void
*/
public function __construct()
//
}
* Determine if the validation rule passes.
* @param string $attribute
* @param mixed $value
* @return bool
public function passes($attribute, $value)
$uuid = Cache::getUUID($value);
if(empty($uuid))
return false;
if($uuid === $value)
$user = User::where('uuid', '=', $uuid)->first();
return empty($user);
* Get the validation error message.
* @return string
public function message()
return 'Username: :value is incorrect or already in use';