shell bypass 403
@extends('backend.master') @section('mainContent') {!! generateBreadcrumb() !!} <section class="mb-20 student-details"> <div class="container-fluid p-0"> <div class="row"> <div class="col-lg-12"> <div class="payment_getway_tab "> <ul class="nav nav-tabs no-bottom-border mt-sm-md-20 mb-10 ml-3" role="tablist"> <li class="nav-item m-1"> <a class="nav-link active" href="#lmsKey" role="tab" data-toggle="tab">{{__('setting.LMS Key')}}</a> </li> <li class="nav-item m-1"> <a class="nav-link " href="#googleMap" role="tab" data-toggle="tab">{{__('setting.Google')}} {{__('setting.Map')}}</a> </li> <li class="nav-item m-1"> <a class="nav-link" href="#fixer" role="tab" data-toggle="tab">{{__('setting.Fixer')}}</a> </li> <li class="nav-item m-1"> <a class="nav-link" href="#fcm" role="tab" data-toggle="tab">{{__('setting.FCM')}}</a> </li> </ul> </div> <!-- Tab panes --> <div class="tab-content"> <div role="tabpanel" class="tab-pane fade active show " id="lmsKey"> @if (permissionCheck('save.api.setting')) <form class="form-horizontal" action="{{route('api-key.setting')}}" method="POST" enctype="multipart/form-data"> @csrf <div class="white-box"> <div class="col-md-12 "> <div class="row mb-30"> <div class="col-md-12"> <div class="row"> <div class="col-lg-10 "> <div class="primary_input mb-15"> <label class="primary_input_label" for="">{{__('setting.App Key')}}</label> <input class="primary_input_field " type="text" name="api_key" id="inputKey" autocomplete="off" value="{{Settings('api_key')}}"> </div> </div> <div class="col-lg-2 mb-30"> <button type="button" id="generateNewKey" class="primary-btn small fix-gr-bg mt-40"> <span class="ti-plus pr-2"></span> {{__('setting.Generate')}} </button> </div> </div> </div> </div> <div class="row mt-40"> <div class="col-lg-12 text-center"> <button type="button" id="confirmBtn" class="primary-btn fix-gr-bg"> <span class="ti-check"></span> {{__('common.Update')}} </button> </div> </div> </div> </div> </form> @endif </div> <div role="tabpanel" class="tab-pane fade " id="googleMap"> @if (permissionCheck('save.api.setting')) <form class="form-horizontal" action="{{route('save.api.setting')}}" method="POST" enctype="multipart/form-data"> @endif @csrf <div class="white-box"> <div class="col-md-12 "> <div class="row mb-30"> <div class="col-md-12"> <div class="row"> <div class="col-lg-12 mb-30"> <div class="input-effect"> <input class="primary-input form-control " type="text" name="gmap_key" autocomplete="off" value="{{Settings('gmap_key')}}"> <label>{{__('setting.Google Map API Key')}} <span></span> </label> <span class="focus-border"></span> <span class="text-danger">{{$errors->first('gmap_key')}}</span> </div> </div> <div class="col-lg-4 mb-30"> <div class="input-effect"> <input class="primary-input form-control" type="number" name="zoom_level" id="zoom_level" autocomplete="off" value="{{Settings('zoom_level')}}"> <label>{{__('setting.Zoom Level')}} <span></span> </label> <span class="focus-border"></span> <span class="text-danger">{{$errors->first('zoom_level')}}</span> </div> </div> <div class="col-lg-4 mb-30"> <div class="input-effect"> <input class="primary-input form-control " type="text" name="lat" autocomplete="off" value="{{Settings('lat')}}"> <label>{{__('setting.Latitude')}} <span></span> </label> <span class="focus-border"></span> <span class="text-danger">{{$errors->first('lat')}}</span> </div> </div> <div class="col-lg-4 mb-30"> <div class="input-effect"> <input class="primary-input form-control" type="text" name="lng" id="lng" autocomplete="off" value="{{Settings('lng')}}"> <label>{{__('setting.Longitude')}} <span></span> </label> <span class="focus-border"></span> <span class="text-danger">{{$errors->first('lng')}}</span> </div> </div> <div class="col-lg-12"> <code><a target="_blank" title="Google map api key" href="https://developers.google.com/maps/documentation/javascript/get-api-key">{{__('setting.Click Here to Get Google Map Api Key')}}</a></code> </div> </div> </div> </div> <div class="row mt-40"> <div class="col-lg-12 text-center"> <button class="primary-btn fix-gr-bg"> <span class="ti-check"></span> {{__('common.Update')}} </button> </div> </div> </div> </div> </form> </div> <div role="tabpanel" class="tab-pane fade" id="fixer"> @if (permissionCheck('paymentmethodsetting.payment_method_setting_update')) <form class="form-horizontal" action="{{route('save.api.setting')}}" method="POST" enctype="multipart/form-data"> @endif @csrf <div class="white-box"> <div class="col-md-12 "> <div class="row mb-30"> <div class="col-md-12"> <div class="row"> <div class="col-lg-12 mb-10"> <div class="input-effect"> <input class="primary-input form-control" type="text" name="fixer_key" autocomplete="off" value="{{Settings('fixer_key')}}"> <label>{{__('setting.Fixer Key')}} <span></span> </label> <span class="focus-border"></span> <span class="modal_input_validation red_alert"></span> </div> </div> <div class="col-lg-12"> <code><a target="_blank" title="Foreign exchange rates and currency conversion" href="https://fixer.io/">{{__('setting.Click Here to Get Fixer Api Key')}}</a></code> </div> </div> </div> </div> <div class="row mt-40"> <div class="col-lg-12 text-center"> <button class="primary-btn fix-gr-bg"> <span class="ti-check"></span> {{__('common.Update')}} </button> </div> </div> </div> </div> </form> </div> <div role="tabpanel" class="tab-pane fade" id="fcm"> @if (permissionCheck('paymentmethodsetting.payment_method_setting_update')) <form class="form-horizontal" action="{{route('save.api.setting')}}" method="POST" enctype="multipart/form-data"> @endif @csrf <div class="white-box"> <div class="col-md-12 "> <div class="row mb-30"> <div class="col-md-12"> <div class="row"> <div class="col-lg-12 mb-10"> <div class="input-effect"> <input class="primary-input form-control" type="text" name="fcm_key" autocomplete="off" va value="{{Settings('fcm_key')}}"> <label>{{__('setting.FCM Secret key')}} <span></span> </label> <span class="focus-border"></span> <span class="modal_input_validation red_alert"></span> </div> </div> <div class="col-lg-12"> <code><a target="_blank" title="" href="https://console.firebase.google.com/">{{__('setting.Click Here to Get Firebase Cloud Messaging(FCM) Api Secret Key')}}</a></code> </div> </div> </div> </div> <div class="row mt-40"> <div class="col-lg-12 text-center"> <button class="primary-btn fix-gr-bg"> <span class="ti-check"></span> {{__('common.Update')}} </button> </div> </div> </div> </div> </form> </div> </div> </div> </div> </div> </section> <div class="modal fade admin-query" id="AppKeyModal"> <div class="modal-dialog modal-dialog-centered"> <div class="modal-content"> <div class="modal-header"> <h4 class="modal-title">@lang('common.Confirmation')</h4> <button type="button" class="close" data-dismiss="modal"><i class="ti-close"></i></button> </div> <div class="modal-body"> <div class="text-center"> <strong>{{__('common.Update')}} {{__('setting.API Key')}}</strong> <h4>@lang('setting.are_you_sure_to_change_api_key')</h4> </div> <div class="mt-40 justify-content-between"> <form id="activate_form" action="{{route('api-key.setting')}}" method="POST"> @csrf <input type="hidden" id="appKeyUpdateInput" name="api_key" value=""> <div class="row"> <div class="col-lg-12"> <div class="primary_input mb-25"> <label class="primary_input_label" for="title">{{__('common.Enter Password')}} <span class="text-danger">*</span></label> <input required type="password" id="password" class="primary_input_field" name="password" autocomplete="off" value="" placeholder="{{__('common.Enter Password')}} "> </div> </div> </div> <div class="row justify-content-center"> <div class="primary_input"> <button type="submit" class="primary-btn fix-gr-bg" id="save_button_parent">{{ __('common.Confirm') }}</button> </div> </div> </form> </div> </div> </div> </div> </div> @endsection @push('scripts') <script> $(document).on("click", "#confirmBtn", function (e) { e.preventDefault(); let key = $('#inputKey').val(); $('#appKeyUpdateInput').val(key); $('#AppKeyModal').modal('show'); }); $("#generateNewKey").click(function () { let key = $('#inputKey'); let possible = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'; let generate_key = ''; for (let i = 0; i < 64; i++) { generate_key += possible.charAt(Math.floor(Math.random() * possible.length)); } key.val(generate_key) }); </script> @endpush