Skip to content

Instantly share code, notes, and snippets.

@afiqiqmal
Last active July 13, 2022 09:45
Show Gist options
  • Select an option

  • Save afiqiqmal/556f2169c49c4ebf207532bc3774ca9b to your computer and use it in GitHub Desktop.

Select an option

Save afiqiqmal/556f2169c49c4ebf207532bc3774ca9b to your computer and use it in GitHub Desktop.
Sample page for Captcha V3
<x-guest-layout>
<x-jet-authentication-card>
<x-slot name="logo">
<x-jet-authentication-card-logo />
</x-slot>
<div class="p-3">
<x-jet-validation-errors class="mb-4" />
@if (session('status'))
<div class="mb-4 font-medium text-sm text-green-600">
{{ session('status') }}
</div>
@endif
@if (session('message'))
<div class="mb-4 font-medium text-sm text-green-600">
{{ session('message') }}
</div>
@endif
<form id="login-form" method="POST" action="{{ route('login') }}" x-data="{
usePhoneNumber : false
}">
@csrf
<x-honeypot />
<div x-show="!usePhoneNumber">
<x-jet-label for="email" class="text-sm font-bold text-gray-700 tracking-wide" value="{{ __('Email') }}" />
<input id="email" class="w-full border-gray-300 focus:border-indigo-300 focus:ring focus:ring-indigo-200 focus:ring-opacity-50 rounded-md shadow-sm" name="email" type="email" placeholder="biru@gmail.com" :required="!usePhoneNumber" :disabled="usePhoneNumber">
<a class="text-xs font-display font-semibold text--black hover:text--black cursor-pointer" @click="usePhoneNumber = true">
Use phone number instead
</a>
</div>
<div x-show="usePhoneNumber" x-cloak>
<x-jet-label for="phone_number" class="text-sm font-bold text-gray-700 tracking-wide" value="{{ __('Phone Number') }}" />
<input id="phone_number" class="w-full border-gray-300 focus:border-indigo-300 focus:ring focus:ring-indigo-200 focus:ring-opacity-50 rounded-md shadow-sm" name="email" type="tel" placeholder="+60123485839" :required="usePhoneNumber" :disabled="!usePhoneNumber">
<a class="text-xs font-display font-semibold text--black hover:text--black cursor-pointer" @click="usePhoneNumber = false">
Use email instead
</a>
</div>
<div class="mt-8">
<div class="flex justify-between items-center">
<x-jet-label for="password" class="text-sm font-bold text-gray-700 tracking-wide" value="{{ __('Password') }}" />
@if (Route::has('password.request'))
<div>
<a class="text-xs font-display font-semibold text--black hover:text--black cursor-pointer"
href="{{ route('password.request') }}">
Forgot Password?
</a>
</div>
@endif
</div>
<input class="w-full border-gray-300 focus:border-indigo-300 focus:ring focus:ring-indigo-200 focus:ring-opacity-50 rounded-md shadow-sm" name="password" type="password" placeholder="Enter your password" required>
</div>
<div class="block mt-4">
<label for="remember_me" class="flex items-center">
<x-jet-checkbox id="remember_me" name="remember" />
<span class="ml-2 text-sm text-gray-600">{{ __('Remember me') }}</span>
</label>
</div>
<div class="mt-10">
<input type="hidden" name="g-recaptcha-response" id="g-recaptcha-response-hidden-input"/>
<button data-sitekey="{{ config('services.recaptcha.site_key') }}"
data-callback='onSubmit'
data-action='login'
class="g-recaptcha bg-black text-gray-100 p-3 w-full rounded-full tracking-wide font-semibold font-display focus:outline-none focus:shadow-outline hover:bg--black shadow-lg">
Log In
</button>
</div>
<div class="text-center text-xs mt-4 text-gray-600 mb-5">
Also you can login with
</div>
<div class="block flex items-center space-x-4 space-y-3 space-y-0">
<a href="{{ URL::signedRoute('connect-to-social-account', ['facebook']) }}" class="bg-[#4267B2] text-center text-white p-3 w-full rounded-full tracking-wide font-semibold focus:outline-none focus:shadow-outline drop-shadow-lg">
Facebook
</a>
<a href="{{ URL::signedRoute('connect-to-social-account', ['google']) }}" type="button" class="bg-[#DB4437] text-center text-white p-3 w-full rounded-full tracking-wide font-semibold focus:outline-none focus:shadow-outline drop-shadow-lg">
Google
</a>
</div>
</form>
</div>
</x-jet-authentication-card>
@push('scripts')
<script src="https://www.google.com/recaptcha/api.js"></script>
<script>
function onSubmit(token) {
console.log(token);
document.getElementById('g-recaptcha-response-hidden-input').value = token;
document.getElementById("login-form").submit();
}
</script>
@endpush
</x-guest-layout>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment