Proyectos de Subversion LeadersLinked - Backend

Rev

Autoría | Ultima modificación | Ver Log |

import React, { useState } from "react";
import {axios} from "../../../utils";
import Spinner from "../../../shared/loading-spinner/Spinner";

import styles from "./groupSettings.module.scss";

const GroupSettings = (props) => {
  const { onOpenMembersTab, group, onOpenAddMemberTab, onClose } = props;

  const {
    url_add_user_to_group,
    url_delete,
    url_get_contact_group_list,
    // url_get_contacts_availables_for_group,
    url_leave,
  } = group;

  const [loading, setLoading] = useState(false);

  const handleDeleteGroup = async (url) => {
    setLoading(true);
    const response = await axios.post(url);
    const resData = response.data;
    if (!resData.success) {
      setLoading(false);
      return  (resData);
    }
    setLoading(false);
    onClose();
  };

  return (
    <div className={styles.groupSettings}>
      <ul>
        {url_get_contact_group_list && (
          <li className={styles.setting} onClick={onOpenMembersTab}>
            Integrantes
          </li>
        )}
        {url_add_user_to_group && (
          <li className={styles.setting} onClick={onOpenAddMemberTab}>
            Agregar Contactos
          </li>
        )}
        {url_delete && (
          <li
            className={`${styles.setting} ${styles.danger}`}
            onClick={() => handleDeleteGroup(url_delete)}
          >
            Eliminar Grupo
            <i className="fa fa-trash"></i>
          </li>
        )}
        {url_leave && (
          <li
            className={`${styles.setting} ${styles.danger}`}
            onClick={() => handleDeleteGroup(url_leave)}
          >
            Dejar Grupo <i className="fa fa-user-times"></i>
          </li>
        )}
      </ul>
      {loading && (
        <div className="spinner-container">
          <Spinner />
        </div>
      )}
    </div>
  );
};

export default GroupSettings;