Viewing File: /home/ubuntu/btcthrottle-backend/resources/views/layouts/admin/script.blade.php

<script src="{{asset('vuexy-assets/vendor/libs/jquery/jquery.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/popper/popper.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/js/bootstrap.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/node-waves/node-waves.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/perfect-scrollbar/perfect-scrollbar.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/hammer/hammer.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/i18n/i18n.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/typeahead-js/typeahead.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/js/menu.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/datatables-bs5/datatables-bootstrap5.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/moment/moment.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/flatpickr/flatpickr.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/bootstrap-select/bootstrap-select.js')}}"></script>
<script src="{{asset('vuexy-assets/js/main.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/toastr/toastr.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/bs-stepper/bs-stepper.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/select2/select2.js')}}"></script>
<script src="{{asset('vuexy-assets/js/form-wizard-icons.js')}}"></script>
<script src="{{asset('vuexy-assets/js/form-layouts.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/cleavejs/cleave.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/cleavejs/cleave-phone.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/quill/katex.js')}}"></script>
<script src="{{asset('vuexy-assets/vendor/libs/quill/quill.js')}}"></script>

<script type="text/javascript"> 

function notifier(message, type) {

    toastr.options = {

      "closeButton": true,

      "debug": false,

      "newestOnTop": true,

      "progressBar": true,

      "positionClass": "toast-top-right",

      "preventDuplicates": true,

      "onclick": null,

      "showDuration": "300",

      "hideDuration": "1000",

      "timeOut": "5000",

      "extendedTimeOut": "1000",

      "showEasing": "swing",

      "hideEasing": "linear",

      "showMethod": "fadeIn",

      "hideMethod": "fadeOut"

    }

    switch(type) {

        case "success":

            toastr.success(message, "{{ Setting::get('site_name') }}", {"iconClass": 'toast-success-background'});

        break;

        case "error":

            toastr.error(message, "{{ Setting::get('site_name') }}", {"iconClass": 'toast-error-background'});

        break;

    }

}

if ($('#quill-editor').length) {
    var quill_editor = new Quill("#quill-editor", {
        bounds: "#quill-editor",
        placeholder: "Add Content here...",
        modules: {
            formula: !0,
            toolbar: [
                [{
                    font: []
                }, {
                    size: []
                }],
                ["bold", "italic", "underline", "strike"],
                [{
                    color: []
                }, {
                    background: []
                }],
                [{
                    script: "super"
                }, {
                    script: "sub"
                }],
                [{
                    header: "1"
                }, {
                    header: "2"
                }, "blockquote", "code-block"],
                [{
                    list: "ordered"
                }, {
                    list: "bullet"
                }, {
                    indent: "-1"
                }, {
                    indent: "+1"
                }],
                [{
                    direction: "rtl"
                }],
                ["link", "formula"],
                ["clean"]
            ]
        },
        theme: "snow"
    });
}

if($("#scroll-bar").length) {
    document.addEventListener('DOMContentLoaded', function() {
        new PerfectScrollbar('#scroll-bar');
    });
}

if($('#checkAll').length && $('.checkSingle').length) {
    $('#checkAll').click(function () {
       $('.checkSingle').prop('checked', $(this).prop('checked'));
    });

    $('.checkSingle').click(function () {
       var checked = $('.checkSingle:checked').length == $('.checkSingle').length;
       $('#checkAll').prop('checked', checked);
    });

    $('.bulkAction').click(function() {

        var model_ids = $('.bulkModelId input:checkbox:checked').map(function () {
            return $(this).data('model-id');
        }).get();

        if(!model_ids.length) {
          notifier("Please select any rows to perform the bulk action.", "error");
          return false;
        }

        var actionType = $(this).data('action-type');
        var actionText = $(this).data('action-text');

        $('#modelIds').val(model_ids);
        $('#actionType').val(actionType);
        var confirmation =  confirm(actionText);
        if(confirmation) {
            $("#bulkActionForm").submit();
        }
    });
}

@php $guard = Auth::getDefaultDriver(); @endphp

@if(in_array($guard, ['admin']))

    function updateStatus(id, type) {

        switch(type) {
            case "{{ tr('static_page') }}":
                var route = "{{route('admin.static_pages.status', 'MODEL_ID')}}";
                var route = route.replace("MODEL_ID", id);
                var data = {};
            break;

            case "{{ tr('user') }}":
                var route = "{{route('admin.users.status', 'MODEL_ID')}}";
                var route = route.replace("MODEL_ID", id);
                var data = {};
            break;

            case "{{ tr('admin_crypto_account') }}":
                var route = "{{route('admin.admin_crypto_accounts.status', 'MODEL_ID')}}";
                var route = route.replace("MODEL_ID", id);
                var data = {};
            break;
        }

        if(!route || !data) {
          notifier("{{ tr('someting_went_wrong') }}", "error");
          $('#statusSwitch' + id).prop("checked", !$('#statusSwitch' + id).is(":checked"));
          return false;
        }

        $('#statusSwitch' + id).prop("disabled", true);

        $.ajaxSetup({
            headers: {
              'X-CSRF-TOKEN': "{{ csrf_token() }}"
            }
        });

        $.ajax({
            url: route,
            type: "PUT",
            data: data,
            success: (result) => {
              notifier(result.message, result.success ? "success" : "error");
              if(!result.success) {
                $('#statusSwitch' + id).prop("checked", !$('#statusSwitch' + id).is(":checked"));
                return false;
              }
              var addClass = result.status != "{{ tr('declined') }}" ? "badge bg-label-success" : "badge bg-label-danger";
              var removeClass = result.status != "{{tr('declined') }}" ? "bg-label-danger" : "bg-label-success";
              $('#statusText' + id).addClass(addClass).removeClass(removeClass);
              $('#statusText' + id).text(result.status);
              if(type == "{{ tr('bank_account')}}"){
                if($('#statusText2-' + id).length) {
                    $('#statusText2-' + id).text(result.status != "{{tr('declined') }}" ? "{{tr('decline')}}" : "{{tr('approve')}}");
                }
                    if(result.status == "{{tr('approved') }}"){
                        $('#defaultField'+id).show();
                        $('#defaultText' + id).hide();
                    }else{
                        $('#defaultField'+id).hide();
                        $('#defaultText' + id).show();
                    }
              }
            },
            error: (result) => {
              var response = JSON.parse(result.responseText);
              notifier(response.message, "error");
              $('#statusSwitch' + id).prop("checked", !$('#statusSwitch' + id).is(":checked"));
            }
        });

        $('#statusSwitch' + id).prop("disabled", false);
    }

    function validatePassword(password) {
        if(!password) {
            $("#password").addClass("is-invalid");
            notifier("{{ tr('password_required') }}", "error");
            return false;
        }else{
            $("#password").removeClass("is-invalid");
        };

        var data = {'password': password};

        $.ajax({
            url: '{{route("admin.validate_password")}}',
            data: data,
            type: "GET",
            headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') },
            success: function(result){
              if(!result.success) {
                notifier(result.error, "error");
                $("#password").addClass("is-invalid");
                return false;
              }
              notifier(result.message, "success");
              $("#password").val(null);
              $("#closeModal").click();
              document.getElementById('exportForm').submit();
            },
            error: (result) => {
              var response = JSON.parse(result.responseText);
              notifier(response.error, "error");
            }
        });
    }
@endif

@if(session('flash_error'))
    notifier("{{ session('flash_error') }}", "error") 
@endif
 
@if(session('flash_success'))
    notifier("{{ session('flash_success') }}", "success")
@endif

@if($errors->any() && (!session('card_transaction_store_error') && !session('bank_transaction_store_error')))
    @foreach($errors->all() as $key => $error)
        notifier("{{ $error }}", "error")
    @endforeach
@endif

@if(isset($page))
    $('#' + "{{ $page }}").addClass("active open");
@endif

@if(isset($sub_page))
    $('#' + "{{ $sub_page }}").addClass("active");
@endif

const dropdowns = document.querySelectorAll('.dropdown-toggle')
const dropdown = [...dropdowns].map((dropdownToggleEl) => new bootstrap.Dropdown(dropdownToggleEl, {
    popperConfig(defaultBsPopperConfig) {
        return { ...defaultBsPopperConfig, strategy: 'fixed' };
    }
}));

if($(".copy-button").length) {
    const copyButtons = document.querySelectorAll('.copy-button');
    copyButtons.forEach(button => {
      button.addEventListener('click', function() {
          const textToCopy = this.getAttribute('data-copy');
          copyTextToClipboard(textToCopy);
      });
    });

    function copyTextToClipboard(text) {
        const textArea = document.createElement('textarea');
        textArea.value = text;
        document.body.appendChild(textArea);
        textArea.select();
        document.execCommand('copy');
        notifier("{{tr('copied_success')}}", "success");
        textArea.remove();
    }
}

$('input:password').keypress(function(e) {
    if(e.keyCode == 32) {
        notifier("{{ tr('password_regex_error') }}", "error")
        return false;
    }
});

function handleFormSubmitBtn(id, text) {
    $('#' + id).attr('disabled', true);
    $('#' + id).text(text);
    $('#' + id).append(`<div class="spinner-border text-white mx-1" role="status"></div>`);
}
</script>
Back to Directory File Manager