App\Http\Controllers\TextureController::avatar PHP Method

avatar() public method

public avatar ( $base64_email, $size = 128, UserRepository $users )
$users App\Services\Repositories\UserRepository
    public function avatar($base64_email, $size = 128, UserRepository $users)
    {
        $user = $users->get(base64_decode($base64_email), 'email');
        if ($user) {
            $tid = $user->getAvatarId();
            if ($t = Texture::find($tid)) {
                if (Storage::disk('textures')->has($t->hash)) {
                    $responses = Event::fire(new GetAvatarPreview($t, $size));
                    if (isset($responses[0]) && $responses[0] instanceof \Symfony\Component\HttpFoundation\Response) {
                        return $responses[0];
                    } else {
                        $filename = storage_path("textures/{$t->hash}");
                        $png = Minecraft::generateAvatarFromSkin($filename, $size);
                        imagepng($png);
                        imagedestroy($png);
                        return Response::png();
                    }
                }
            }
        }
        $png = imagecreatefromstring(base64_decode("iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAIAAABMXPacAAACSElEQVR4nO3csUpbcQBGca/epBDTFio0KCLiC/QNRJBCod10LkUwfQq7uYhDKa5Ondri4NLRoX2GLl1EVGqhQcVEiYnSZ/jAy8lwfvN3r5LDf7lXU7yYfzqWGNzdR/vaxHil9x8Oh9E+VZZlpffPPh09OAPADAAzAMwAMAPADAAzAMwAMAPADAAzAMwAMAPADAAr0+fvqarfH0w1G9E+1eneVnp/TwDMADADwAwAMwDMADADwAwAMwDMADADwAwAMwDMADADwOI/ft9afxftG416+iNGyr/Lq2i/+flLtPcEwAwAMwDMADADwAwAMwDMADADwAwAMwDMADADwAwAMwCs+LrRji5o1B5F++tBv9L7n12cR/uFmVa0P/z9K9qnPAEwA8AMADMAzAAwA8AMADMAzAAwA8AMADMAzAAwA8AMACvT5++vNz5F+5XFrWi/9vIk2qfP93f2n0f7vR/b0f7bh/fR3hMAMwDMADADwAwAMwDMADADwAwAMwDMADADwAwAMwDMALBit/0quuBxay7ap+8bvh/8jPap1TfL0T79/4A/nU609wTADAAzAMwAMAPADAAzAMwAMAPADAAzAMwAMAPADAAzAKz4+HYpuqBeFNH+6Lgb7UfN9OxktO/2etHeEwAzAMwAMAPADAAzAMwAMAPADAAzAMwAMAPADAAzAMwAsPL0b/b9+71+9j5gZqoW7VOX3dto/+xJM9rf3Ayiffr7eAJgBoAZAGYAmAFgBoAZAGYAmAFgBoAZAGYAmAFgBoAZAPYfTCpLwD1OEBAAAAAASUVORK5CYII="));
        imagepng($png);
        imagedestroy($png);
        return Response::png();
    }