<template>
  <div class="column is-4">
    <h3 class="is-size-4 mb-4">Administrador</h3>

    <BotonDesactivar
      :disabled="
        !carrito.id_carrito || operador.tipoUsuario.id_tipo_usuario === 2
      "
      :activarDesactivar="activarDesactivar"
      :row="carrito"
      :msjWarning="`¿Estas segur@ de querer ${
        carrito.activo ? 'desactivar' : 'activar'
      } este carrito?`"
      labelDisabled
    />

    <!-- <b-field
      label="Cambiar nombre del carrito"
      v-if="carrito.tipoCarrito.id_tipo_carrito"
    >
      <b-input
        icon="list-status"
        v-model="nuevoNombreCarrito"
        placeholder="Nuevo nombre del carrito"
        rounded
      />
    </b-field>

    <BotonGuardar
      :disabled="dominio || diasMultaRetraso || tiempoPrestamo ? false : true"
      :guardar="actualizarDatos"
      msjWarning="¿Estas segur@ de querer guardar estos cambios?"
    /> -->
  </div>
</template>

<script>
import axios from 'axios'
import BotonDesactivar from '@/components/botones/BotonDesactivar'
import BotonGuardar from '@/components/botones/BotonGuardar'

export default {
  components: { BotonDesactivar, BotonGuardar },
  props: {
    buscar: { type: Function, required: true },
    updateIsLoading: { type: Function, required: true },
    carrito: { type: Object, required: true },
    operador: { type: Object, required: true },
  },
  data() {
    return { nuevoNombreCarrito: '' }
  },
  methods: {
    activarDesactivar() {
      const data = {
        id_carrito: this.carrito.id_carrito,
        activo: !this.carrito.activo,
      }

      this.updateIsLoading(true)
      axios
        .put(`${process.env.api}/carrito`, data, this.$getToken.token())
        .then((res) => {
          this.buscar()
          this.updateIsLoading(false)
          this.$alertsGenericos.imprimirMensaje(this.$buefy, res.data.message)
        })
        .catch((err) => {
          this.updateIsLoading(false)
          this.$alertsGenericos.imprimirError(this.$buefy, err.response.data)
        })
    },
    guradar() {
      const data = {
        id_carrito: this.carrito.id_carrito,
      }

      this.updateIsLoading(true)
      if (this.nuevoNombreCarrito) data.carrito = this.this.nuevoNombreCarrito
      axios
        .put(`${process.env.api}/carrito`, data, this.$getToken.token())
        .then((res) => {
          this.this.nuevoNombreCarrito = ''
          this.buscar()
          this.updateIsLoading(false)
          this.$alertsGenericos.imprimirMensaje(this.$buefy, res.data.message)
        })
        .catch((err) => {
          this.updateIsLoading(false)
          this.$alertsGenericos.imprimirError(this.$buefy, err.response.data)
        })
    },
  },
}
</script>

<style></style>
