HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux ip-172-31-42-149 5.15.0-1084-aws #91~20.04.1-Ubuntu SMP Fri May 2 07:00:04 UTC 2025 aarch64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/vhost/disk-apps/comfama.sports-crowd.com/public/js/subcategories.js
function saveImage(id) {
    var fImage = document.getElementById("image");
    fImage = fImage.files[0];
    if (fImage) {
        var formData = new FormData();
        formData.append("id", id);
        formData.append("image", fImage);

        $.ajax({
            type: 'POST',
            dataType: 'json',
            processData: false,
            contentType: false,
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            },
            data: formData,
            url: '/subcategories/saveImage',
            success: function (r) {
                if (r.r) {
                    swal(r.m, {
                        icon: "success",
                        buttons: {
                            Ok: true,
                        }
                    }).then((val) => {
                        if (val == "Ok") {
                            $(location).attr('href', '/subcategories/' + localStorage.getItem("storeType"));
                        }
                    });

                } else {
                    swal("Error", Lang.get('messagesClient.screen_add_subcategories_tag1'), "error");
                    $("#btn-create-subcategory").prop("disabled", false);
                }
            }
        });
    }
    else {
        swal("Ok", "Subcategoría creada sin archivo.", {
            icon: "success",
            buttons: {
                Ok: true,
            }
        }).then((val) => {
            if (val == "Ok") {
                $(location).attr('href', '/subcategories/' + localStorage.getItem("storeType"));
            }
        });

    }
}

function updateImage(id) {

    var fImage = document.getElementById("image");
    fImage = fImage.files[0];
    if (fImage) {
        var formData = new FormData();
        formData.append("id", id);
        formData.append("image", fImage);

        $.ajax({
            type: 'POST',
            dataType: 'json',
            processData: false,
            contentType: false,
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            },
            data: formData,
            url: '/subcategories/updateImage',
            success: function (r) {
                if (r.r) {
                    swal(r.m,
                        {
                            icon: "success",
                            buttons: {
                                Ok: true,
                            }
                        }).then((val) => {
                            if (val == "Ok") {
                                $(location).attr('href', '/subcategories/' + localStorage.getItem("storeType"));
                            }
                        });
                } else {
                    swal("Error", r.m, "error");
                }
            }
        });
    }
    else {
        swal("Ok", "Subcategoría actualizada sin archivo.", {
            icon: "success",
            buttons: {
                Ok: true,
            }
        }).then((val) => {
            if (val == "Ok") {
                $(location).attr('href', '/subcategories/' + localStorage.getItem("storeType"));
            }
        });
    }
}

/**
 * Esta función obtiene los datos de la vista y los envía a la capa de lógica
 * para la creacion de una línea de negocio
 * @version 2018/05/20
 */
function createSubcategory() {

    $('#createSubcategory').validator('update');
    $("#createSubcategory").validator('update').on('submit', function (e) {

        if (e.isDefaultPrevented()) { } else {

            e.preventDefault();
            $("#btn-create-subcategory").prop("disabled", true);

            var name = $(" #createSubcategory input[name='name']").val();
            var priority = $(" #createSubcategory input[name='priority']").val();
            var category = $(" #createSubcategory  select[name='subcategory_id']").val();

            if (name == '' || priority == '' || category == "") {
                swal("warning", Lang.get('messagesClient.screen_add_subcategories_tag2'), "error");
                $("#btn-create-subcategory").prop("disabled", false);

            } else {

                var info = {
                    "name": name,
                    "priority": priority,
                    "category": category
                };

                swal(Lang.get('messagesClient.screen_add_subcategories_tag3'),
                    {
                        icon: "warning",
                        buttons: {
                            cancel: "No",
                            Ok: true,
                        }

                    }).then((val) => {
                        if (val == "Ok") {
                            createSubcategory(info);
                        } else {
                            $("#btn-create-subcategory").prop("disabled", false);
                        }
                    });

            }
        }
    });

    /**
     * Esta función hace un llamado AJAX y envia un json creando un nuevo registro de categoría
     * @param info el json con la informacion de la vista
     * @version 2018/05/20
     */
    function createSubcategory(info) {
        $.ajax({
            url: "/subcategories/create",
            type: "POST",
            contentType: 'application/json',
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content'),
                'Content-Type': 'application/json'
            },
            data: JSON.stringify(info),
            success: function (r) {
                if (r.r) {
                    var id_subcategory = r.d.id;
                    var img = document.getElementById("image");
                    if (img != null) {
                        saveImage(id_subcategory);
                    } else {
                        swal(r.m, {
                            icon: "success",
                            buttons: {
                                Ok: true,
                            }
                        }).then((val) => {
                            if (val == "Ok") {
                                $(location).attr('href', '/subcategories/' + localStorage.getItem("storeType"));
                            }
                        });
                    }
                } else {
                    swal("Error", Lang.get('messagesClient.screen_add_subcategories_tag4'), "error");
                    $("#btn-create-subcategory").prop("disabled", false);
                }
            }, error: function (e) {
                swal("Error", Lang.get('messagesClient.screen_add_subcategories_tag4'), "error");
                $("#btn-create-subcategory").prop("disabled", false);
            }
        });
    }
}

/*
 * En caso de que se haga clic en el icono de editar
 * se redirecciona a la vista de edición de categoría
 */
function clickEditSubcategory(value) {
    _table = $("#example2").DataTable();
    index = _table.page();
    localStorage.setItem("productsTableIndex", index);
    $(location).attr('href', '/subcategories/' + localStorage.getItem("storeType") + '/edit/' + value);
};


/**
 * Esta función obtiene los datos de la vista de edtitar y los envía a la capa de lógica
 * para la actualización de los datos de una línea de negocio
 * @version 2018/10/02
 */
function editSubcategory() {

    $('#editSubcategory').validator('update');
    $("#editSubcategory").validator('update').on('submit', function (e) {

        if (e.isDefaultPrevented()) { } else {

            $("#btn-edit-subcategory").prop("disabled", true);
            e.preventDefault();

            var name = $(" #editSubcategory input[name='name']").val();
            var priority = $(" #editSubcategory input[name='priority']").val();
            var category = $(" #editSubcategory select[name='category_id'] ").val();

            if (name == '' || priority == '' || category == '') {
                swal("Error", Lang.get('messagesClient.screen_edit_subcategories_tag1'), "warning");
                $("#btn-edit-subcategory").prop("disabled", false);
            } else {
                var info = {
                    "id": $(" #editSubcategory input[name='id']").val(),
                    "name": name,
                    "priority": priority,
                    "category_id": category
                };

                swal(Lang.get('messagesClient.screen_edit_subcategories_tag2'), {
                    buttons: {
                        cancel: "No",
                        Ok: true,

                    }
                }).then((val) => {
                    if (val == "Ok") {
                        updateCategory(info);
                    } else {
                        $("#btn-edit-subcategory").prop("disabled", false);
                    }
                });

            }
        }
    });
}

/**
 * Esta función hace un llamado AJAX y envia un json actualizando un registro de linea de negocio
 * @param info el json con la informacion de la vista
 * @version 2018/05/20
 */
function updateCategory(info) {
    $.ajax({
        url: "/subcategories/update",
        type: "PUT",
        contentType: 'application/json',
        headers: {
            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content'),
            'Content-Type': 'application/json'
        },
        data: JSON.stringify(info),
        success: function (r) {
            if (r.r) {
                var id_subcategory = r.d.id;
                var img = document.getElementById("image");
                if (img != null) {
                    updateImage(id_subcategory);
                } else {
                    swal(Lang.get('messagesClient.screen_edit_subcategories_tag3'), {
                        icon: "success",
                        buttons: {
                            Ok: true,
                        }
                    }).then((val) => {
                        if (val == "Ok") {
                            localStorage.setItem("setPageTable", true);
                            $(location).attr('href', '/subcategories/' + localStorage.getItem("storeType"));
                        }
                    });
                }
            } else {
                swal(Lang.get('messagesClient.screen_edit_subcategories_tag4'), "error");
                $("#btn-create-subcategory").prop("disabled", false);
            }
        }, error: function (e) {
            swal(Lang.get('messagesClient.screen_edit_subcategories_tag4'), "error");
            $('#btn-edit-subcategory').prop('disabled', false);
        }
    });
}

function setPageTable() {
    localStorage.setItem("setPageTable", true);
    $(location).attr('href', '/subcategories/' + localStorage.getItem("storeType"));
}

function chkSubcategory(value) {

    var state;

    if ($('#Checkactive' + value).is(':checked')) {
        state = 1;
    } else {
        state = 0;
    }

    var info = {
        "id": value,
        "state": state
    };

    $.ajax({
        url: "/subcategories/active",
        type: "POST",
        contentType: 'application/json',
        headers: {
            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content'),
            'Content-Type': 'application/json'
        },
        data: JSON.stringify(info),
        success: function (r) {
            if (r.r) {
                swal("Ok", r.m);
            } else {
                swal("Error", Lang.get('messagesClient.screen_edit_subcategories_tag5'), "error");
            }
        },
        error: function (e) {
            swal("Error", Lang.get('messagesClient.screen_edit_subcategories_tag5'), "error");
        }
    });

};


//eliminar subcategoría
function clickDeleteSubcategory(value) {

    var info = {
        "id": value
    };
    swal(Lang.get('messagesClient.screen_delete_subcategories_tag1'), {
        buttons: {
            cancel: "No",
            Ok: true,
        }
    }).then((val) => {
        if (val == "Ok") {
            deleteCategory(info);
        }
    });
};


//funcion eliminar linea de negocio
function deleteCategory(info) {
    $.ajax({
        url: "/subcategories/delete",
        type: "POST",
        contentType: 'application/json',
        headers: {
            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content'),
            'Content-Type': 'application/json'
        },
        data: JSON.stringify(info),
        success: function (r) {
            if (r.r) {
                swal(r.m, {
                    icon: "success",
                    buttons: {
                        Ok: true,
                    }
                }).then((val) => {
                    if (val == "Ok") {
                        $(location).attr('href', '/subcategories/' + localStorage.getItem("storeType"));
                    }
                });
            } else {
                swal("Error", Lang.get('messagesClient.screen_delete_subcategories_tag2'), "error");
            }
        },
        error: function (e) {
            swal("Error", Lang.get('messagesClient.screen_delete_subcategories_tag2'), "error");
        }
    });

}