shell bypass 403
@extends('layouts/fullLayoutMaster') @section('title', __('locale.auth.register')) @section('content') <div class="auth-wrapper auth-cover"> <div class="auth-inner row m-0"> <!-- Brand logo--> <a class="brand-logo" href="{{route('login')}}"> <img src="{{asset(config('app.logo'))}}" alt="{{config('app.name')}}"/> </a> <!-- /Brand logo--> <!-- Left Text--> <div class="col-lg-3 d-none d-lg-flex align-items-center p-0"> <div class="w-100 d-lg-flex align-items-center justify-content-center"> <img class="img-fluid w-100" src="{{asset('images/pages/create-account.svg')}}" alt="{{config('app.name')}}"/> </div> </div> <!-- /Left Text--> <!-- Register--> <div class="col-lg-9 d-flex align-items-center auth-bg px-2 px-sm-3 px-lg-5 pt-3"> <div class="width-800 mx-auto card px-2 py-2"> <form id="payment-form" action="{{ $post_url }}" method="post"> @csrf <div id="dropin-container"></div> <button type="submit" class="btn btn-primary btn-block">{{ __('locale.labels.pay_payment') }}</button> <input type="hidden" id="nonce" name="payment_method_nonce"/> <input type="hidden" id="device_data" name="device_data"/> </form> </div> </div> </div> </div> <!-- // Basic Vertical form layout section end --> @endsection @section('page-script') <script src="https://js.braintreegateway.com/web/dropin/1.27.0/js/dropin.js"></script> <script src="https://js.braintreegateway.com/web/3.76.0/js/client.min.js"></script> <script src="https://js.braintreegateway.com/web/3.76.0/js/data-collector.min.js"></script> <!-- Page js files --> <script> $(document).ready(function () { "use strict" let firstInvalid = $('form').find('.is-invalid').eq(0); if (firstInvalid.length) { $('body, html').stop(true, true).animate({ 'scrollTop': firstInvalid.offset().top - 200 + 'px' }, 200); } const form = document.getElementById('payment-form'); braintree.client.create({ authorization: "{{ $token }}", container: '#dropin-container' }).then(function (clientInstance) { return braintree.dataCollector.create({ client: clientInstance, paypal: true }).then(function (dataCollectorInstance) { // At this point, you should access the dataCollectorInstance.deviceData value and provide it // to your server, e.g. by injecting it into your form as a hidden input. document.getElementById('device_data').value = dataCollectorInstance.deviceData; }); }).catch(function (err) { toastr['warning'](err.message, "{{__('locale.labels.attention')}}", { closeButton: true, positionClass: 'toast-top-right', progressBar: true, newestOnTop: true, rtl: isRtl }); }); braintree.dropin.create({ authorization: "{{ $token }}", container: '#dropin-container' }).then((dropinInstance) => { form.addEventListener('submit', (event) => { event.preventDefault(); dropinInstance.requestPaymentMethod().then((payload) => { document.getElementById('nonce').value = payload.nonce; form.submit(); }).catch((error) => { if (error) { toastr['warning'](error.message, "{{__('locale.labels.attention')}}", { closeButton: true, positionClass: 'toast-top-right', progressBar: true, newestOnTop: true, rtl: isRtl }); } }); }); }).catch((error) => { if (error) { toastr['warning'](error.message, "{{__('locale.labels.attention')}}", { closeButton: true, positionClass: 'toast-top-right', progressBar: true, newestOnTop: true, rtl: isRtl }); } }); }); </script> @endsection