Need Kick/BAN Solution

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • naveenkraniwal
    New Member
    • Feb 2022
    • 1

    Need Kick/BAN Solution

    hi,

    I've purchased chatroom script from called Chatnet v1.8.1.
    chat script has many issues ...
    but the major issue is there's not user BAN solution...i can't ban users...


    Can someone please add BAN Solution in this Script ...

    Code:
    "use strict";
    
    function getIPLogs(){
        var log_table = $('#ip_logs').DataTable( {
            "processing": true,
            "serverSide": true,
            "ajax": {
            "url": "{{ url('dashboard-ip-logs-data') }}",
                "type": "POST",
                "data": function ( d ) {
                    d.csrftoken = '{{ csrf_token_ajax() }}',
                    d.log_type = $('.log_type').val();
                }
            },
           "columns": [
               { "data": "ip" },
               { "data": "country" },
               { "data": "device", orderable: false },
               { "data": "email" },
               { "data": "time" },
               { "data": "type" },
               { "data": "message" }
           ]
        });
    
        $('.log_type').change( function() {
            log_table.draw();
        });
    }
    
    function getFlagedContent(){
        var flaged_table = $('#flaged_content').DataTable( {
            "processing": true,
            "serverSide": true,
            "ajax": {
            "url": "{{ url('dashboard-flaged-content-data') }}",
                "type": "POST",
                "data": function ( d ) {
                    d.csrftoken = '{{ csrf_token_ajax() }}',
                    d.report_type = $('.report_type').val();
                    d.report_status = $('.report_status').val();
                }
            },
           "columns": [
                { "data": "id" },
                { "data": null, orderable: false, name: 'report_type', render: function ( data, type, row ) {
                    if(data.report_type == 1){
                        var report_type = "Chat";
                    }else if (data.report_type == 2) {
                        var report_type = "User";
                    }else if (data.report_type == 3) {
                        var report_type = "Room";
                    }else if (data.report_type == 4) {
                        var report_type = "Group";
                    }else {
                        var report_type = "";
                    }
                    return report_type;
                }},
                { "data": "title"},
                { "data": "reported_at" },
                { "data": null, orderable: false, name: 'status', render: function ( data, type, row ) {
                    var span_cls = 'flaged-'+data.id;
                    if(data.status == 1){
                        var status = '<span class="badge badge-danger '+span_cls+'">{{_("Reported")}}</span>';
                    }else {
                        var status = '<span class="badge badge-primary '+span_cls+'">{{_("Solved")}}</span>';
                    }
                    return status;
                }},
                { "data": null, orderable: false, render: function ( data, type, row ) {
                    var view_button = '<a class="btn btn-xs btn-success flaged-view" data-id="'+data.id+'" data-toggle="tooltip" data-placement="top" title="{{_("View Flaged")}}" >'
                                            +'<i class="fas fa-eye"></i>'
                                        +'</a>';
                   
                    return "<div class='nowrap'>"+view_button+"</div>";
                }},
           ],
           "order": [[0, 'desc']]
        });
    
        $('.report_type').change( function() {
            flaged_table.draw();
        });
    
        $('.report_status').change( function() {
            flaged_table.draw();
        });
    }
    
    function getUsers(){
        var user_list_table = $('#user_list').DataTable( {
            "processing": true,
            "serverSide": true,
            "ajax": {
            "url": "{{ url('dashboard-user-list-data') }}",
                "type": "POST",
                "data": function ( d ) {
                    d.csrftoken = '{{ csrf_token_ajax() }}';
                    d.user_type = $('.user_type').val();
                    d.available_status = $('.available_status').val();
                }
            },
           "columns": [
                { "data": null, name: 'id', orderable: false, render: function ( data, type, row ) {
                    if({{USER.id}} != data.id){
                        return '<input type="checkbox" class="user-selection" name="delete_user_list[]" id="'+data.id+'_user" value="'+data.id+'" >';
                    }else{
                        return "";
                    }
                }},
                { "data": null, orderable: false, render: function ( data, type, row ) {
                    if(data.avatar){
                        var user_avatar = '<div class="user-avatar">'
                                            +'<img class="img-profile mr-2" src="{{MEDIA_URL}}/avatars/'+data.avatar+'">'
                                            +'</div>';
                    }else{
                        var user_avatar = '<div class="user-avatar">'
                                            +'<img class="img-profile mr-2" src="{{STATIC_URL}}/img/user.png">'
                                            +'</div>';
                    }
                    return user_avatar;
                }},
                { "data": null, name: 'first_name', render: function ( data, type, row ) {
                    return data.first_name+" "+data.last_name;
                }},
                { "data": "user_name" },
                { "data": "email" },
                { "data": null, name: 'user_type', render: function ( data, type, row ) {
                    if(data.user_type == 1){
                        var user_type = "Admin";
                    }else if (data.user_type == 2) {
                        var user_type = "Member";
                    }else if (data.user_type == 4) {
                        var user_type = "Moderator";
                    }else {
                        var user_type = "Guest";
                    }
                    return user_type;
                }},
                { "data": null, name: 'available_status', render: function ( data, type, row ) {
                    if(data.available_status == 1){
                        var available_status = '<span class="badge badge-primary">{{_("Active")}}</span>';
                    }else {
                        var available_status = '<span class="badge badge-warning">{{_("Inactive")}}</span>';
                    }
                    return available_status;
                }},
                { "data": null, orderable: false, render: function ( data, type, row ) {
                    var button_list = '<a class="btn btn-xs btn-success" href="{{  url("dashboard-user-view") }}?user='+data.id+'"  data-toggle="tooltip" data-placement="top" title="{{_("View User")}}" >'
                                            +'<i class="fas fa-eye"></i>'
                                        +'</a>';
                    if({{USER.id}} != data.id){
                        button_list += ' <a class="btn btn-danger btn-xs delete-user" href="javascript:void(0)" data-id="'+data.id+'_user" data-toggle="tooltip" data-placement="top" title="{{_("Delete User")}}"  >'
                                            +'<i class="fas fa-trash"></i>'
                                        +'</a>';
                    }
                    return "<div class='nowrap'>"+button_list+"</div>";
                }},
           ]
        });
    
        $('.user_type').change( function() {
            user_list_table.draw();
        });
    
        $('.available_status').change( function() {
            user_list_table.draw();
        });
    }
    
    function getGuests(){
        var guest_list_table = $('#guest_list').DataTable( {
            "processing": true,
            "serverSide": true,
            "ajax": {
            "url": "{{ url('dashboard-guest-list-data') }}",
                "type": "POST",
                "data": function ( d ) {
                    d.csrftoken = '{{ csrf_token_ajax() }}';
                }
            },
           "columns": [
                { "data": null, name: 'id', orderable: false, render: function ( data, type, row ) {
                    if({{USER.id}} != data.id){
                        return '<input type="checkbox" class="user-selection" name="delete_user_list[]" id="'+data.id+'_guest" value="'+data.id+'" >';
                    }else{
                        return "";
                    }
                }},
    
                { "data": 'first_name'},
                { "data": "user_name" },
                { "data": "last_seen" },
                { "data": null, orderable: false, render: function ( data, type, row ) {
                    var button_list = '<a class="btn btn-xs btn-success" href="{{  url("dashboard-user-view") }}?user='+data.id+'"  data-toggle="tooltip" data-placement="top" title="{{_("View Guest")}}" >'
                                            +'<i class="fas fa-eye"></i>'
                                        +'</a>';
    
                        button_list += ' <a class="btn btn-danger btn-xs delete-user" href="javascript:void(0)" data-id="'+data.id+'_guest" data-toggle="tooltip" data-placement="top" title="{{_("Delete Guest")}}"  >'
                                            +'<i class="fas fa-trash"></i>'
                                        +'</a>';
    
                    return "<div class='nowrap'>"+button_list+"</div>";
                }},
           ]
        });
    
    }
    
    function messagePreview(obj){
        var msg_preview;
        if(obj.type == 1){
            msg_preview = obj.message;
        }else if(obj.type == 2){
            var images = JSON.parse(obj.message);
            if (images.length >= 2) {
                msg_preview = "<i class='fa fa-image'></i> "+images.length+" {{_('Images')}}";
            }else{
                msg_preview = "<i class='fa fa-image'></i> {{_('Image')}}";
            }
            
        }else if(obj.type == 3){
            msg_preview = "<i class='fa fa-image'></i> {{_('GIF')}} ";
        }else if(obj.type == 4){
            msg_preview = "<i class='fa fa-smile'></i> {{_('Sticker')}}";
        }else if(obj.type == 5){
            var json_msg = JSON.parse(obj.message);
            msg_preview = linkParse(json_msg.message);
        }else if(obj.type == 6){
            var files = JSON.parse(obj.message);
            if (files.length >= 2) {
                msg_preview = "<i class='fa fa-file-alt'></i> "+files.length+" {{_('Files')}}";
            }else{
                msg_preview = "<i class='fa fa-file-alt'></i> {{_('File')}}";
            }
            
        }else if(obj.type == 7){
            msg_preview = "<i class='fa microphone-alt'></i> {{_('Audio')}} ";
        }else if(obj.type == 8){
            msg_preview = "<i class='fa fa-reply'></i> {{_('Reply Message')}} ";
        }else if(obj.type == 9){
            msg_preview = "<i class='fa fa-share'></i> {{_('Forwarded Message')}} ";
        }
        return msg_preview;
    }
    
    function linkParse(inputText) {
        var replacedText, replacePattern1, replacePattern2, replacePattern3;
    
        //URLs starting with http://, https://, or ftp://
        replacePattern1 = /(\b(https?|ftp):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/gim;
        replacedText = inputText.replace(replacePattern1, '<a href="$1" target="_blank"><span class="chat-link"><i class="fa fa-link"></i> $1</span></a>');
    
        //URLs starting with "www." (without // before it, or it'd re-link the ones done above).
        replacePattern2 = /(^|[^\/])(www\.[\S]+(\b|$))/gim;
        replacedText = replacedText.replace(replacePattern2, '$1<a href="http://$2" target="_blank"><span class="chat-link"><i class="fa fa-link"></i> $2</span></a>');
    
        //Change email addresses to mailto:: links.
        replacePattern3 = /(([a-zA-Z0-9\-\_\.])+@[a-zA-Z\_]+?(\.[a-zA-Z]{2,6})+)/gim;
        replacedText = replacedText.replace(replacePattern3, '<a href="mailto:$1"><span class="chat-link"><i class="fa fa-link"></i> $1</span></a>');
    
        return replacedText;
    }
    
    
    $(document).ready(function() {
        // Initialize summernote wysiwyg editor
        $('.summernote').summernote();
        $(".dob").dateDropdowns();
        $('#dataTable').DataTable({
            stateSave: true
        });
    
        $(function () {
            $('[data-toggle="tooltip"]').tooltip()
        })
    
        //Init lazy Load
        $(function() {
            $('.lazy').Lazy();
        });
        var page_reload = false;
    
        // Whenever user click on Update button on settings page, call ajax with new settings
        $(".update-settings").on('click', function(e) {
            var update_type = $(this).val();
            var data = new FormData($('#'+$(this).val())[0]);
            data.append("update_type", $(this).val());
            {{ csrf_token }}
            if(update_type == "policy-settings"){
                data.set('terms_and_conditions', $('#terms_and_conditions').summernote('code'));
                data.set('privacy_policy', $('#privacy_policy').summernote('code'));
            }
            if(update_type == "about-settings"){
                data.set('about_us', $('#about_us').summernote('code'));
            }
            $('.settings-success').hide();
            $('.settings-error').hide();
            $.ajax({
                url: "{{ url('ajax-update-settings') }}",
                data: data,
                type: "POST",
                dataType: 'json',
                contentType: false,
                processData: false,
                enctype: 'multipart/form-data',
                beforeSend: function() {
                    loading(".card-"+update_type, "show");
                },
                success: function(data) {
                    page_reload = true;
                    $('.text-error').remove();
                    if(data.success) {
                        toastr["success"]("{{_('Successfully Updated')}}");
                    }else{
                        $.each( data.message, function( key, field_array ) {
                            $.each( field_array, function( field, error_list ) {
                                $.each( error_list, function( error_key, error_message ) {
                                    $('[name='+field+']').after(`<small class="form-text text-danger text-error">`+error_message+`</small>`);
                                });
                            });
                        });
                    }
                },complete: function(){
                    loading(".card-"+update_type, "hide");
                }
            });
    
        });
    
        // Generate image instant previews
        $(document).on("change",".upload-setting-image", function(){
            var uploadFile = $(this);
            var files = !!this.files ? this.files : [];
            if (!files.length || !window.FileReader) return; // no file selected, or no FileReader support
    
            if (/^image/.test( files[0].type)){ // only image file
                var reader = new FileReader(); // instance of the FileReader
                reader.readAsDataURL(files[0]); // read the local file
                reader.onloadend = function(){ // set image data as background of div
                    uploadFile.closest(".row").find(".setting-image-preview").html("");
                    uploadFile.closest(".row").find(".setting-image-preview").css("background-image", "url("+this.result+")");
    
                }
            }
        });
    
        // Update Chat Room information with ajax
        $(document).on("click", '.admin-update-chatroom', function(event) {
            var data = new FormData($('#admin-chatroom-info')[0]);
            $('.chatroom-success').hide();
            $('.chatroom-error').hide();
            $.ajax({
                url: "{{ url('ajax-update-chatroom') }}",
                data: data,
                type: "POST",
                dataType: 'json',
                contentType: false,
                processData: false,
                enctype: 'multipart/form-data',
                beforeSend: function() {
                    loading(".card-room-info", "show");
                },
                success: function(data) {
                    $('.text-error').remove();
                    if(data.success == "true") {
                        toastr.success(
                            "{{_('Successfully Updated')}}", '',
                            {
                                timeOut: 3000,
                                fadeOut: 3000,
                                onHidden: function () {
                                    window.location.href = "{{ url('dashboard-chatroom-list') }}";
                                }
                            }
                        );
                    }else{
                        $.each( data.message, function( key, field_array ) {
                            $.each( field_array, function( field, error_list ) {
                                $.each( error_list, function( error_key, error_message ) {
                                    $('[name='+field+']').after(`<small class="form-text text-danger text-error">`+error_message+`</small>`);
                                });
                            });
                        });
                    }
    
                },complete: function(){
                    loading(".card-room-info", "hide");
                }
            });
    
            $('a[data-toggle="pill"]').on('shown.bs.tab', function (e) {
    
                $('.chatroom-success').hide();
                $('.chatroom-error').hide();
            });
        });
    
        // Change cover image of chat room preveiw
        $(document).on("change",".upload-cover-image", function(){
            var uploadFile = $(this);
            var files = !!this.files ? this.files : [];
            if (!files.length || !window.FileReader) return; // no file selected, or no FileReader support
    
            if (/^image/.test( files[0].type)){ // only image file
                var reader = new FileReader(); // instance of the FileReader
                reader.readAsDataURL(files[0]); // read the local file
                reader.onloadend = function(){ // set image data as background of div
                    uploadFile.closest(".row").find(".room-coverimage-preview img").attr("src",this.result);
                }
            }
        });
    
        // Change bg  image of chat room preveiw
        $(document).on("change",".upload-background-image", function(){
            var uploadFile = $(this);
            var files = !!this.files ? this.files : [];
            if (!files.length || !window.FileReader) return; // no file selected, or no FileReader support
    
            if (/^image/.test( files[0].type)){ // only image file
                var reader = new FileReader(); // instance of the FileReader
                reader.readAsDataURL(files[0]); // read the local file
                reader.onloadend = function(){ // set image data as background of div
                    uploadFile.closest(".row").find(".room-bgimage-preview img").attr("src",this.result);
                }
            }
        });
    
        // Whenever user click on Update button on social login
        $(document).on("click",".update-social-login", function(e){
            var enable_social_login = $('#enable_social_login').val();
            var update_list = [];
            var delete_list = [];
            $('tr').not('.hidden-row, .delete-row').each(function(){
                var auth_provider = $(this).find('#name').val();
                if(auth_provider){
                    var auth_id = $(this).find('#id_key').val();
                    var auth_secret = $(this).find('#secret_key').val();
                    var auth_status = $(this).find('#status').val();
                    var each_auth = [auth_provider, auth_id, auth_secret, auth_status];
                    update_list.push(each_auth);
                }
            });
    
            $('.delete-row').each(function(){
                var auth_provider = $(this).find('#name').val();
                if(auth_provider){
                    delete_list.push(auth_provider);
                }
            });
    
            $.ajax({
                url: "{{ url('ajax-social-login-update') }}",
                data: {
                    csrftoken: '{{ csrf_token_ajax() }}',
                    update_list : JSON.stringify(update_list),
                    delete_list : JSON.stringify(delete_list),
                    enable_social_login : enable_social_login,
                },
                type: "POST",
                dataType: 'json',
                beforeSend: function() {
                    loading(".card-social-login-settings", "show");
                },
                success: function(data) {
                    $('.text-error').remove();
                    if(data.success) {
                        toastr["success"]("{{_('Successfully Updated')}}");
                    }else{
                        $.each( data.message, function( key, field_array ) {
                            $.each( field_array, function( field, error_list ) {
                                $.each( error_list, function( error_key, error_message ) {
                                    $('[name='+field+']').after(`<small class="form-text text-danger text-error">`+error_message+`</small>`);
                                });
                            });
                        });
                    }
                },complete: function(){
                    loading(".card-social-login-settings", "hide");
                }
            });
    
        });
    
        $(document).on("change",".upload-radio-icon", function(e){
            var myImageUrl = URL.createObjectURL(e.target.files[0]);
            var myImage = new Image();
            myImage.src = myImageUrl;
            var this_image = this;
    
            myImage.onload = function(){
                var myCanvas = document.createElement('canvas');
                $(myCanvas).prop('width', this.width).prop('height', this.height);
                var ctx = myCanvas.getContext('2d');
                ctx.drawImage(myImage, 0, 0);
                var mydataURL = myCanvas.toDataURL('image/jpg');
                $(this_image).parent().parent().find('.radio-icon').prop('src', mydataURL);
                $(this_image).data('image', mydataURL);
            }
        });
    
        // Whenever user click on Update button on social login
        $(document).on("click", ".update-radio", function(e){
            var enable_radio = $('#enable_radio').val();
            var update_list = [];
            var delete_list = [];
            $('tr').not('.hidden-row, .delete-row').each(function(){
                var radio_station_name = $(this).find('#name').val();
                if(radio_station_name){
                    var id = $(this).find('#id').val();
                    var description = $(this).find('#description').val();
                    var source = $(this).find('#source').val();
                    var status = $(this).find('#status').val();
                    var data_image = $(this).find(".upload-radio-icon").data('image');
                    var each_station = {id, radio_station_name, description, source, status, data_image};
                    update_list.push(each_station);
                }
            });
    
            $('.delete-row').each(function(){
                var radio_station = $(this).find('#id').val();
                if(radio_station){
                    delete_list.push(radio_station);
                }
            });
    
            var formData = new FormData();
            formData.append('csrftoken', '{{ csrf_token_ajax() }}');
            formData.append('update_list', JSON.stringify(update_list));
            formData.append('delete_list', JSON.stringify(delete_list));
            formData.append('radio', enable_radio);
    
            $.ajax({
                url: "{{ url('ajax-radio-update') }}",
                data: formData,
                contentType: false,
                processData: false,
                cache: false,
                type: "POST",
                dataType: 'json',
                beforeSend: function() {
                    loading(".card-radio-settings", "show");
                },
                success: function(data) {
                    $('.text-error').remove();
                    if(data.success) {
                        toastr.success(
                            "{{_('Successfully updated')}}", '',
                            {
                                timeOut: 1000,
                                fadeOut: 1000,
                                onHidden: function () {
                                    window.location.reload();
                                }
                            }
                        );
                    }else{
                        $.each( data.message, function( key, field_array ) {
                            $.each( field_array, function( field, error_list ) {
                                $.each( error_list, function( error_key, error_message ) {
                                    $('[name='+field+']').after(`<small class="form-text text-danger text-error">`+error_message+`</small>`);
                                });
                            });
                        });
                    }
                },complete: function(){
                    loading(".card-radio-settings", "hide");
                }
            });
    
        });
    
        // Update already created chat room
        $(document).on("click", ".edit-chatroom, .new-chatroom", function(){
            var edit_id = $(this).attr("data-edit-id");
            $.ajax({
                url: "{{ url('ajax-get-chatroom') }}",
                data: {
                    edit_room: edit_id,
                    csrftoken: '{{ csrf_token_ajax() }}'
                },
                type: "POST",
                beforeSend: function() {
                    loading(".card-room-users", "show");
                },
                success: function(data) {
                    $('.rooms-modal .modal-body').html(data);
                    $('.rooms-modal').modal('show');
                    $('#dataTable').DataTable();
                },
                complete: function(){
                    loading(".card-room-users", "hide");
                }
            });
        });
    
        // delete chatroom
        $(document).on('click', '.delete-chatroom', function(e) {
            var room_id = this.id;
            if (confirm('{{_("Are you sure you want to delete this room? This action can not be undone.")}}')) {
                $.ajax({
                    url: "{{ url('ajax-delete-chatroom') }}",
                    type: "POST",
                    dataType: 'json',
                    data: {
                        csrftoken: '{{ csrf_token_ajax() }}',
                        room_id: room_id
                    },
                    beforeSend: function() {
                        loading(".card-room-list","show");
                    },
                    success: function(data) {
                        if(data.success){
                            toastr["success"]("{{_('Successfully deleted')}}");
                            $('#dataTable').DataTable().row($('#'+room_id).closest('tr')).remove().draw();
                        }
                    },complete: function(){
                        loading(".card-room-list","hide");
                    }
    
                });
            }
        });
    
        // delete chats
        $(document).on('click', '.delete-chats', function(e) {
            var room_id = this.id;
            if (confirm('{{_("Are you sure you want to delete all chats on this room? This action can not be undone.")}}')) {
                $.ajax({
                    url: "{{ url('ajax-delete-chats') }}",
                    type: "POST",
                    dataType: 'json',
                    data: {
                        csrftoken: '{{ csrf_token_ajax() }}',
                        room_id: room_id
                    },
                    beforeSend: function() {
                        loading(".card-room-list","show");
                    },
                    success: function(data) {
                        if(data.success){
                            toastr["success"]("{{_('Successfully deleted')}}");
                        }
                    },complete: function(){
                        loading(".card-room-list","hide");
                    }
    
                });
            }
        });
    
        // Update and manage users in chat rooms (kick and unkick)
        $(document).on("click", ".chatroom-user-restriction", function(){
            var result = confirm("Are you sure?");
            if (result) {
                var current_row = $(this).closest('tr');
                var room_id = $(this).attr("data-room");
                var selected_user = $(this).attr("data-user");
                var restriction_type = $(this).attr("data-restriction-type");
                $.ajax({
                    url: "{{ url('ajax-chatroom-user-restriction') }}",
                    data: {room_id : room_id, selected_user : selected_user, restriction_type : restriction_type,
                    csrftoken: '{{ csrf_token_ajax() }}'
                    },
                    type: "POST",
                    beforeSend: function() {
                        loading(".card-room-users", "show");
                    },
                    success: function(data) {
                        if(restriction_type == "3"){
                            $(current_row).find('.kick-btn').css("display", "none");
                            $(current_row).find('.unkick-btn').css("display", "inline-block");
                        }else if (restriction_type == "1") {
                            $(current_row).find('.kick-btn').css("display", "inline-block");
                            $(current_row).find('.unkick-btn').css("display", "none");
                        }
    
                        if(data.success == "true") {
                            $('.chatroom-success').html(data.message);
                            $('.chatroom-success').show();
                        }else{
                            $('.chatroom-error').html(data.message);
                            $('.chatroom-error').show();
                        }
                    },
                    complete: function(){
                        loading(".card-room-users", "hide");
                    }
                });
            }
        });
    
        // Whenever user click on Update button on language page, call ajax with new settings
        $(document).on("click", ".update-language", function(){
            var data = new FormData($('#language-form')[0]);
            $('.language-error').hide();
            $.ajax({
                url: "{{ url('ajax-language-update') }}",
                data: data,
                type: "POST",
                cache: false,
                contentType: false,
                processData: false,
                beforeSend: function() {
                    loading(".card-language", "show");
                },
                success: function(data) {
                    page_reload = true;
                    $('.text-error').remove();
                    if(data.success) {
                        toastr.success(
                            "{{_('Successfully Updated')}}", '',
                            {
                                timeOut: 3000,
                                fadeOut: 3000,
                                onHidden: function () {
                                    window.location.href = "{{ url('dashboard-languages') }}";
                                }
                            }
                        );
                    }else{
                        $.each( data.message, function( key, field_array ) {
                            $.each( field_array, function( field, error_list ) {
                                $.each( error_list, function( error_key, error_message ) {
                                    $('[name='+field+']').after(`<small class="form-text text-danger text-error">`+error_message+`</small>`);
                                });
                            });
                        });
                    }
                },complete: function(){
                    loading(".card-language", "hide");
                }
            });
    
        });
    
        // Whenever user click on Update translation on translation page
        $(document).on("click", ".update-translation", function(){
            var data = new FormData($('#lang-translation')[0]);
            $.ajax({
                url: "{{ url('ajax-update-translation') }}",
                data: data,
                type: "POST",
                cache: false,
                contentType: false,
                processData: false,
                beforeSend: function() {
                    loading(".card-language", "show");
                },
                success: function(data) {
                    page_reload = true;
                    $('.text-error').remove();
                    if(data.success) {
                        toastr.success(
                            "{{_('Successfully Updated')}}", '',
                            {
                                timeOut: 3000,
                                fadeOut: 3000,
                            }
                        );
                    }else{
                        if ($.isArray(data.message)) {
                            $.each( data.message, function( key, field_array ) {
                                $.each( field_array, function( field, error_list ) {
                                    $.each( error_list, function( error_key, error_message ) {
                                        $('[name='+field+']').after(`<small class="form-text text-danger text-error">`+error_message+`</small>`);
                                    });
                                });
                            });
                        } else {
                            toastr["warning"](data.message);
                        }
                    }
                },complete: function(){
                    loading(".card-language", "hide");
                }
            });
    
        });
    
        // Update and manage users in chat rooms (kick and unkick)
        $(document).on("click", ".delete-language", function(){
            var result = confirm("Are you sure?");
            if (result) {
                var lang = $(this).attr("data-lang");
                $.ajax({
                    url: "{{ url('ajax-language-delete') }}",
                    data: {lang : lang, csrftoken: '{{ csrf_token_ajax() }}'},
                    type: "POST",
                    beforeSend: function() {
                        loading(".card-language-list", "show");
                    },
                    success: function(data) {
                        if(data.success == true) {
                            toastr.success(
                                "{{_('Successfully deleted')}}", '',
                                {
                                    timeOut: 3000,
                                    fadeOut: 3000,
                                    onHidden: function () {
                                        window.location.href = "{{ url('dashboard-languages') }}";
                                    }
                                }
                            );
                        }else{
                            $('.language-error').html(data.message);
                            $('.language-error').show();
                        }
                    },
                    complete: function(){
                        loading(".card-language-list", "hide");
                    }
                });
            }
        });
    
        $(document).on('change', '#is_protected', function() {
            if(this.checked) {
                $('.pin-area').show();
                $('.public-view-area').hide();
            }else{
                $('.pin-area').hide();
                $('.public-view-area').show();
            }
        });
    
        $(document).on('change', '#user_list_type', function() {
            if($(this).val() == 3) {
                $('.user-list-auth-roles').show();
            }else{
                $('.user-list-auth-roles').hide();
            }
        });
    
        $(document).on('change', '#single_room_mode', function() {
            if($(this).val() == 1) {
                $('.default-room-area').show();
            }else{
                $('.default-room-area').hide();
            }
        });
    
        $(document).on('change', '#enable_terms', function() {
            if($(this).val() == 1) {
                $('.enable-terms-area').show();
            }else{
                $('.enable-terms-area').hide();
            }
        });
    
        $(document).on('change', '#enable_privacy', function() {
            if($(this).val() == 1) {
                $('.enable-privacy-area').show();
            }else{
                $('.enable-privacy-area').hide();
            }
        });
    
        $(document).on('change', '#enable_about', function() {
            if($(this).val() == 1) {
                $('.enable-about-area').show();
            }else{
                $('.enable-about-area').hide();
            }
        });
    
        $(document).on('change', '#profanity_filter', function() {
            if($(this).val() == 1) {
                $('.enable-profanity-area').show();
            }else{
                $('.enable-profanity-area').hide();
            }
        });
    
        $(document).on('change', '#enable_files', function() {
            if($(this).val() == 1) {
                $('.enable-filelist-area').show();
            }else{
                $('.enable-filelist-area').hide();
            }
        });
    
        $(document).on('change', '#domain_filter', function() {
            if($(this).val() == 1) {
                $('.domain-filter-area').show();
            }else{
                $('.domain-filter-area').hide();
            }
        });
    
        $(document).on('change', '#sso_enabled', function() {
            if($(this).val() == 1) {
                $('.sso-setting-area').show();
            }else{
                $('.sso-setting-area').hide();
            }
        });
    
        $(document).on('change', '#cloud_storage', function() {
            if($(this).val() == 1) {
                $('.cloud-storage-area').show();
            }else{
                $('.cloud-storage-area').hide();
            }
        });
        
        $(document).on('change', '.auth-provider-name', function() {
            var selected_auth_src = "{{ STATIC_URL }}/img/auth_icons/"+$(this).val()+".png";
            $(this).parent().parent().find('.auth-provider-icon').attr('src', selected_auth_src);
        });
    
        $(document).on('change', '#enable_contact', function() {
            if($(this).val() == 1) {
                $('.enable-contact-area').show();
            }else{
                $('.enable-contact-area').hide();
            }
        });
    
        $(document).on('change', '#cookie_consent_popup', function() {
            if($(this).val() == 1) {
                $('.cookie-message-area').show();
            }else{
                $('.cookie-message-area').hide();
            }
        });
    
        $(document).on('change', '#theme', function() {
            if($(this).val() == 'custom') {
                $('.custom-colors').show();
            }else{
                $('.custom-colors').hide();
            }
        });
    
        $(document).on('change', '#push_notifications', function() {
            if($(this).val() == 1) {
                $('.push-notification-area').show();
            }else{
                $('.push-notification-area').hide();
            }
        });
    
        $(document).on('change', '#pwa_enabled', function() {
            if($(this).val() == 1) {
                $('.enable-pwa-area').show();
            }else{
                $('.enable-pwa-area').hide();
            }
        });
    
        $(document).on('change', '#enable_social_login', function() {
            if($(this).val() == 1) {
                $('.enable-social-login-area').show();
            }else{
                $('.enable-social-login-area').hide();
            }
        });
    
        $(document).on('change', '#enable_radio', function() {
            if($(this).val() == 1) {
                $('.enable-radio-area').show();
            }else{
                $('.enable-radio-area').hide();
            }
        });
    
        $(document).on('change', '#enable_recaptcha', function() {
            if($(this).val() == 1) {
                $('.recaptcha-area').show();
            }else{
                $('.recaptcha-area').hide();
            }
        });
    
        $(document).on('change', '#recaptcha_version', function() {
            if($(this).val() == 3) {
                $('.recaptcha_v3_pass_score_area').show();
            }else{
                $('.recaptcha_v3_pass_score_area').hide();
            }
        });
    
        $(document).on('change', '#reg_autodetect_country', function() {
            if($(this).val() == 1) {
                $('.geoip_api_endpoint_area').show();
            }else{
                $('.geoip_api_endpoint_area').hide();
            }
        });
    
        $(document).on('change', '#enable_ip_blacklist', function() {
            if($(this).val() == 1) {
                $('.ip-blacklist-area').show();
            }else{
                $('.ip-blacklist-area').hide();
            }
        });
    
        $(document).on('change', '#enable_multiple_languages', function() {
            $('.update-settings').click();
        });
    
        $(document).on('change', '#push_provider', function() {
            $('.push-provider-area').hide();
            $('.'+$(this).val()+'-area').show();
        });
    
        $(document).on('change', '.trans-lang-switch, .trans-section-switch', function() {
            var lang = $('.trans-lang-switch').val();
            var section = $('.trans-section-switch').val();
            window.location.href = "{{ url('dashboard-language-translation') }}?lang="+lang+"&section="+section;
        });
    
        $(document).on('change', '.check_all', function() {
            $('.user-selection, .check_all').prop('checked', this.checked);
        });
    
        $(document).on('click', '.delete-user', function(e) {
            var selected = $(this).attr('data-id');
            $('#'+selected).prop('checked', 'checked');
            $(".delete-selected-user").trigger("click");
        });
    
        $(document).on('click', '.delete-selected-user', function(e) {
            var result = confirm("Are you sure?");
            if (result) {
                var data = new FormData($('#user-list')[0]);
                var url = "{{url('ajax-delete-users')}}";
                $.ajax({
                    url: url,
                    data: data,
                    type: "POST",
                    dataType: 'json',
                    cache: false,
                    contentType: false,
                    processData: false,
                    success: function(data) {
                        if (data.success == true) {
                            toastr.success(
                                "{{_('Successfully deleted')}}", '',
                                {
                                    timeOut: 1500,
                                    fadeOut: 1500,
                                    onHidden: function () {
                                        window.location.reload();
                                    }
                                }
                            );
                        } else {
                            toastr["error"]("{{_('Something went wrong')}}");
                        }
                    },
                });
            }
        });
    
        $('.color-picker').on('input', function() {
            $(this).siblings("input[type=text]").val($(this).val());
        });
    
        $('.color-input').on('input', function() {
            $(this).siblings('.color-picker').val($(this).val());
        });
    
        $(".save-profile").on('click', function(e) {
            var data = new FormData($('#profile-form')[0]);
            var url = "{{url('ajax-save-profile')}}";
            $('.profile-error').hide();
            $.ajax({
                url: url,
                data: data,
                type: "POST",
                dataType: 'json',
                cache: false,
                contentType: false,
                processData: false,
                enctype: 'multipart/form-data',
                success: function(data) {
    
                    $('.text-error').remove();
                    if (data.success == true) {
                        toastr["success"]("{{_('Successfully Updated')}}");
                    } else {
                        if ($.isArray(data.message)) {
                            $.each(data.message, function(key, field_array) {
                                $.each(field_array, function(field, error_list) {
                                    $.each(error_list, function(error_key, error_message) {
                                        $('[name=' + field + ']').after(`<small class="form-text text-danger text-error">` + error_message + `</small>`);
                                    });
                                });
                            });
                        } else {
                            $('.profile-error').html(data.message);
                            $('.profile-error').show();
                        }
                    }
                },
            });
        });
    
        $(".add-profile").on('click', function(e) {
            var data = new FormData($('#profile-form')[0]);
            var url = "{{url('ajax-add-profile')}}";
            $('.profile-error').hide();
            $.ajax({
                url: url,
                data: data,
                type: "POST",
                dataType: 'json',
                cache: false,
                contentType: false,
                processData: false,
                enctype: 'multipart/form-data',
                success: function(data) {
    
                    $('.text-error').remove();
                    if (data.success == true) {
                        toastr.success(
                            "{{_('Successfully added')}}", '',
                            {
                                timeOut: 3000,
                                fadeOut: 3000,
                                onHidden: function () {
                                    window.location.href = "{{ url('dashboard-user-list') }}";
                                }
                            }
                        );
                    } else {
                        if ($.isArray(data.message)) {
                            $.each(data.message, function(key, field_array) {
                                $.each(field_array, function(field, error_list) {
                                    $.each(error_list, function(error_key, error_message) {
                                        $('[name=' + field + ']').after(`<small class="form-text text-danger text-error">` + error_message + `</small>`);
                                    });
                                });
                            });
                        } else {
                            $('.profile-error').html(data.message);
                            $('.profile-error').show();
                        }
                    }
                },
            });
        });
    
    
        // profile image upload
        $(document).on("change", ".upload-image", function() {
            var uploadFile = $(this);
            var files = !!this.files ? this.files : [];
            if (!files.length || !window.FileReader) return; // no file selected, or no FileReader support
    
            if (/^image/.test(files[0].type)) { // only image file
                var reader = new FileReader(); // instance of the FileReader
                reader.readAsDataURL(files[0]); // read the local file
                reader.onloadend = function() { // set image data as background of div
                    uploadFile.closest(".imgUp").find('.imagePreview').html("");
                    uploadFile.closest(".imgUp").find('.imagePreview').css("background-image", "url(" + this.result + ")");
                }
            }
        });
    
        $(document).on("click", ".add-new-auth-provider", function() {
            var $tr = $('.hidden-row').clone();
            $tr.removeClass('hidden-row');
            $('.auth-provider-list').append($tr);
        });
    
        $(document).on("click", ".delete-auth-provider", function() {
            $(this).closest('tr').addClass('delete-row');
        });
    
        $(document).on("click", ".add-new-radio", function() {
            var $tr = $('.hidden-row').clone();
            $tr.removeClass('hidden-row');
            $('.radio-list').append($tr);
        });
    
        $(document).on("click", ".delete-radio", function() {
            $(this).closest('tr').addClass('delete-row');
        });
    
        $('.select2').select2({
            theme: 'bootstrap4'
        });
    
        // Update and manage users in chat rooms (kick and unkick)
        $(document).on("click", ".chatroom-user-mod", function(){
            var result = confirm("Are you sure?");
            if (result) {
                var current_row = $(this).closest('tr');
                var room_id = $('#room_id').val();
                var selected_user = $(this).attr("data-user");
                var mod_type = $(this).attr("data-mod-type");
                $.ajax({
                    url: "{{ url('ajax-chatroom-user-mod') }}",
                    data: {
                        room_id : room_id,
                        selected_user : selected_user,
                        mod_type: mod_type,
                        csrftoken: '{{ csrf_token_ajax() }}'
                    },
                    type: "POST",
                    beforeSend: function() {
                        loading(".card-room-users", "show");
                    },
                    success: function(data) {
                        if(mod_type == "1"){
                            $(current_row).find('.add-mod').css("display", "none");
                            $(current_row).find('.remove-mod').css("display", "inline-block");
                        }else if (mod_type == "0") {
                            $(current_row).find('.add-mod').css("display", "inline-block");
                            $(current_row).find('.remove-mod').css("display", "none");
                        }
    
                        if(data.success == "true") {
                            toastr["success"](data.message);
                        }else{
                            toastr["error"](data.message);
                        }
                    },
                    complete: function(){
                        loading(".card-room-users", "hide");
                    }
                });
            }
        });
    
        // Update already created chat room
        $(document).on("click", ".flaged-view", function(){
            var flaged_id = $(this).attr("data-id");
            $.ajax({
                url: "{{ url('dashboard-flaged-view') }}",
                data: {
                    flaged_id: flaged_id,
                    csrftoken: '{{ csrf_token_ajax() }}'
                },
                type: "POST",
                beforeSend: function() {
                    loading(".flaged-view-html", "show");
                },
                success: function(data) {
                    if(data.report_type == 1){
                        var message_preview = messagePreview(data.flaged_for);
                        if(data.chat_type == 1){
                            if(data.flaged_for.user_1 == data.reported_by){
                                var to_user = data.flaged_for.user_2;
                            }else{
                                var to_user = data.flaged_for.user_1;
                            }
                            var chat_with = '&chat-with='+to_user;
                        }else{
                            var chat_with = "";
                        }
                         
                        var chat_view = ` <a class="btn btn-xs btn-success" onclick="window.open('{{  url('chat-room', {'chatroomslug':'`+data.flaged_for.slug+`'}) }}?view-as=`+data.reported_by+`&view-chat=`+data.flaged_for.id+chat_with+`','popUpWindow','height=768,width=1024,left=100,top=100,resizable=yes,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no, status=yes');" href="javascript:void(0)"  data-toggle="tooltip" data-placement="top" title="View Chats"  >
                                                {{_("View", 2)}}
                                            </a>`;
                        var report_section = message_preview + chat_view;
    
                        if(data.flaged_for.status == 3){
                            var delete_btn = ' <a href="javascript:void(0)" class="btn btn-sm btn-success disable" data-toggle="tooltip" data-placement="top" title="{{_("Message Deleted")}}" >'
                                                +'{{_("Message Deleted", 2)}}'
                                            +'</a>';
                        }else{
                            var delete_btn = ' <a href="javascript:void(0)" class="btn btn-sm btn-danger flaged-delete-chat" data-id="'+data.flaged_for.id+'" data-chat-type="'+data.chat_type+'" data-toggle="tooltip" data-placement="top" title="{{_("Delete Message")}}" >'
                                                +'{{_("Delete Message", 2)}}'
                                            +'</a>';
                        }
                    }else if(data.report_type == 2){
                        var user_view = ' <a class="btn btn-xs btn-success" target="_blank" href="{{  url("dashboard-user-view") }}?user='+data.flaged_for.id+'"  data-toggle="tooltip" data-placement="top" title="{{_("View User")}}" >'
                                            +'{{_("View", 2)}}'
                                        +'</a>';
                        var report_section = data.flaged_for.first_name + " " + data.flaged_for.last_name + user_view;
                        if(data.flaged_for.available_status == 2){
                            var delete_btn = ' <a href="javascript:void(0)" class="btn btn-sm btn-success disable" data-toggle="tooltip" data-placement="top" title="{{_("User Deactivated")}}" >'
                                                +'{{_("User Deactivated", 2)}}'
                                            +'</a>';
                        }else{
                            var delete_btn = ' <a  href="javascript:void(0)" class="btn btn-sm btn-danger flaged-delete-user" data-id="'+data.flaged_for.id+'" data-toggle="tooltip" data-placement="top" title="{{_("Deactivate User")}}" >'
                                                +'{{_("Deactivate User", 2)}}'
                                            +'</a>';
                        }
                        
                    }else if(data.report_type == 3){
                        var room_view = ' <a class="btn btn-xs btn-success" target="_blank" href="{{  url("dashboard-chatroom-edit") }}?edit_room='+data.flaged_for.id+'"  data-toggle="tooltip" data-placement="top" title="{{_("View Room")}}" >'
                                            +'{{_("View", 2)}}'
                                        +'</a>';
                        var report_section = data.flaged_for.name + room_view;
                        if(data.flaged_for.status == 2){
                            var delete_btn = ' <a href="javascript:void(0)" class="btn btn-sm btn-success disable" data-toggle="tooltip" data-placement="top" title="{{_("Room Deactivated")}}" >'
                                                +'{{_("Room Deactivated", 2)}}'
                                            +'</a>';
                        }else{
                            var delete_btn = ' <a href="javascript:void(0)" class="btn btn-sm btn-danger flaged-delete-room" data-id="'+data.flaged_for.id+'" data-toggle="tooltip" data-placement="top" title="{{_("Deactivate Room")}}" >'
                                                +'{{_("Deactivate Room", 2)}}'
                                            +'</a>';
                        }
                    }else if(data.report_type == 4){
                        var report_section = data.flaged_for.name;
                        var delete_btn = "";
                    }else{
                        var report_section = "";
                        var delete_btn = "";
                    }
    
                    if(data.status == 2){
                        var solve_btn = ' <a href="javascript:void(0)" class="btn btn-sm btn-info disable" data-toggle="tooltip" data-placement="top" title="{{_("Solved")}}" >'
                                            +'{{_("Solved", 2)}}'
                                        +'</a>';
                    }else{
                        var solve_btn = ' <a href="javascript:void(0)" class="btn btn-sm btn-primary flaged-resolve" data-flaged-id="'+data.id+'" data-toggle="tooltip" data-placement="top" title="{{_("Resolve")}}" >'
                                            +'{{_("Resolve", 2)}}'
                                        +'</a>';
                    }
    
                    $('.report-section-title').html(data.report_type_text);
                    $('.report-section').html(report_section);
                    $('.report-reason').html(data.report_reason_title);
                    $('.report-comment').html(data.report_comment);
                    $('.report-flaged-by').html(data.first_name + " " + data.last_name);
                    $('.report-flaged-at').html(data.reported_at);
                    $('.flaged-deactive').html(delete_btn);
                    $('.flaged-solve').html(solve_btn);
                    $('.report-head').html("#" + data.id + " - " + data.report_type_text + " " + "{{_('Flaged', 2)}}");
                    $('.flaged-view-html').show();
                },
                complete: function(){
                    loading(".flaged-view-html", "hide");
                }
            });
        });
    
        $(document).on("click", ".flaged-delete-chat", function(){
            if (confirm('{{_("Are you sure?", 2)}}')) {
                var chat_id = $(this).data('id');
                var chat_type = $(this).data('chat-type');
                if(chat_type == 1){
                    chat_type = "private";
                }else{
                    chat_type = "group";
                }
    
                $.ajax({
                    url: "{{ url('ajax-delete-message') }}",
                    type: "POST",
                    dataType: 'json',
                    data: {
                        csrftoken: '{{ csrf_token_ajax() }}',
                        message_id: chat_id,
                        chat_type: chat_type
                    },
                    beforeSend: function() {
                        loading(".flaged-delete-chat","show");
                    },
                    success: function(data) {
                        if(data.success){
                            $('.flaged-delete-chat').addClass('btn-success').addClass('disable').removeClass('btn-danger');
                            $('.flaged-delete-chat').html('{{_("Message Deleted", 2)}}');
                            $('.flaged-delete-chat').attr('title', '{{_("Message Deleted", 2)}}');
                        }else{
                            toastr.error(data.message);
                        }
                    },complete: function(){
                        loading(".flaged-delete-chat","hide");
                    }
    
                });
            }
        });
    
        $(document).on("click", ".flaged-delete-user", function(){
            if (confirm('{{_("Are you sure?", 2)}}')) {
                var user_id = $(this).data('id');
    
                $.ajax({
                    url: "{{ url('ajax-deactivate-user') }}",
                    type: "POST",
                    dataType: 'json',
                    data: {
                        csrftoken: '{{ csrf_token_ajax() }}',
                        user_id: user_id
                    },
                    beforeSend: function() {
                        loading(".flaged-delete-user","show");
                    },
                    success: function(data) {
                        if(data.success){
                            $('.flaged-delete-user').addClass('btn-success').addClass('disable').removeClass('btn-danger');
                            $('.flaged-delete-user').html('{{_("User Deactivated", 2)}}');
                            $('.flaged-delete-user').attr('title', '{{_("User Deactivated", 2)}}');
                        }else{
                            toastr.error(data.message);
                        }
                    },complete: function(){
                        loading(".flaged-delete-user","hide");
                    }
    
                });
            }
        });
    
        $(document).on("click", ".flaged-delete-room", function(){
            if (confirm('{{_("Are you sure?", 2)}}')) {
                var room_id = $(this).data('id');
    
                $.ajax({
                    url: "{{ url('ajax-deactivate-room') }}",
                    type: "POST",
                    dataType: 'json',
                    data: {
                        csrftoken: '{{ csrf_token_ajax() }}',
                        room_id: room_id
                    },
                    beforeSend: function() {
                        loading(".flaged-delete-room","show");
                    },
                    success: function(data) {
                        if(data.success){
                            $('.flaged-delete-room').addClass('btn-success').addClass('disable').removeClass('btn-danger');
                            $('.flaged-delete-room').html('{{_("Room Deactivated", 2)}}');
                            $('.flaged-delete-room').attr('title', '{{_("Room Deactivated", 2)}}');
                        }else{
                            toastr.error(data.message);
                        }
                    },complete: function(){
                        loading(".flaged-delete-room","hide");
                    }
    
                });
            }
        });
    
        $(document).on("click", ".flaged-resolve", function(){
            if (confirm('{{_("Are you sure?", 2)}}')) {
                var flaged_id = $(this).data('flaged-id');
    
                $.ajax({
                    url: "{{ url('dashboard-flaged-resolve') }}",
                    type: "POST",
                    dataType: 'json',
                    data: {
                        csrftoken: '{{ csrf_token_ajax() }}',
                        flaged_id: flaged_id
                    },
                    beforeSend: function() {
                        loading(".flaged-resolve","show");
                    },
                    success: function(data) {
                        if(data.success){
                            $('.flaged-resolve').addClass('btn-info').addClass('disable').removeClass('btn-primary');
                            $('.flaged-resolve').html('{{_("Solved", 2)}}');
                            $('.flaged-resolve').attr('title', '{{_("Solved", 2)}}');
    
                            $('.flaged-'+flaged_id).addClass('badge-primary').removeClass('badge-danger');
                            $('.flaged-'+flaged_id).html('{{_("Solved", 2)}}');
                            
                        }else{
                            toastr.error(data.message);
                        }
                    },complete: function(){
                        loading(".flaged-resolve","hide");
                    }
    
                });
            }
        });
    
        // remove chat room bg
        $(document).on("click", '.room-bgimage-remove', function() {
            var room_id = $('#room_id').val();
            $.ajax({
                url: "{{ url('ajax-chatroom-remove-bg') }}",
                data: {
                    room_id : room_id,
                    csrftoken: '{{ csrf_token_ajax() }}'
                },
                type: "POST",
                success: function(data) {
                    if(data.success){
                        toastr.success(data.message);
                        $('#background_image').val('');
                        $('.room-bgimage-preview img').attr('src', "{{STATIC_URL}}/img/chatbg.png");
                    }else{
                        toastr.error(data.message);
                    }
                }
            });
        });
    
        // remove setting
        $(document).on("click", '.remove-setting', function(e) {
            e.preventDefault();
            if (confirm('{{_("Are you sure?", 2)}}')) {
                var setting = $(this).data('setting');
                if (setting) {
                    $.ajax({
                        url: "{{ url('ajax-remove-setting') }}",
                        data: {
                            setting : setting,
                            csrftoken: '{{ csrf_token_ajax() }}'
                        },
                        type: "POST",
                        success: function(data) {
                            if(data.success){
                                toastr.success(
                                    "{{_('Successfully updated')}}", '',
                                    {
                                        timeOut: 1000,
                                        fadeOut: 1000,
                                        onHidden: function () {
                                            window.location.reload();
                                        }
                                    }
                                );
                                
                            }else{
                                toastr.error(
                                    data.message, '',
                                    {
                                        timeOut: 1000,
                                        fadeOut: 1000,
                                        onHidden: function () {
                                            window.location.reload();
                                        }
                                    }
                                );
                            }
                        }
                    });
                }
            }
        });
    
    });
  • dev7060
    Recognized Expert Contributor
    • Mar 2017
    • 656

    #2
    hi,

    I've purchased chatroom script from called Chatnet v1.8.1.
    chat script has many issues ...
    but the major issue is there's not user BAN solution...i can't ban users...


    Can someone please add BAN Solution in this Script ...
    Read the posting guidelines https://bytes.com/faq.php?faq=posting_guidelines

    Comment

    Working...