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/agile-selling-mia/public/js/subcategories.js
/**
 * metodo para crear Banner
 * @diegoDuque
*/

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');
              }
            });

          }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');
            }
        });

    }
  }

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") {
                        console.log('creado');
                        $(location).attr('href',  '/subcategories');
                      }
                    });
          }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');
            }
        });
    }
}


/**
 * 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');
                            }
                        });

                    }

                } 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/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');
                            }
                        });

                    }

                } 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');
      }

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 categorí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');
                    }
                });
            } else {
                swal("Error",Lang.get('messagesClient.screen_delete_subcategories_tag2'), "error");
            }
        },
        error: function (e) {

            swal("Error",Lang.get('messagesClient.screen_delete_subcategories_tag2'), "error");

        }
    });

}