//Url Base
export const baseUrl = document.getElementById('baseFullPath').getAttribute('href');
export const baseUrlRel = document.getElementById('baseRelativePath').getAttribute('href');

//Controllers Web API po menu

const loginController = 'API/Login';
const menuController = 'API/Menu';
const seguridad = 'API/Seguridad';
const Reporte = 'Reporte';


//Routes

export const LoginRutas = {
    //CheckSession: `${baseUrl}${loginController}/CheckSession`,
    Cambiar_Contrasena: `${baseUrl}${loginController}/Cambiar_Contrasena`,
    Login: `${baseUrl}${loginController}/Login`,
    Login_Token: `${baseUrl}${loginController}/Login_Token`,
    //ObtenerSessionTimeout: `${baseUrl}${loginController}/Get_Session_Timeout`,
    RemoveSession: `${baseUrl}${loginController}/Remove_Session`, 
    CerrarSesion: `${baseUrl}${loginController}/CerrarSesion`, 
};

export const MenuRutas = {
    Obtener_Menu: `${baseUrl}${menuController}/Obtener_Menu`,
    Obtener_MenuOpciones: `${baseUrl}${menuController}/Obtener_MenuOpciones`,
    Obtener_MenuNombre: `${baseUrl}${menuController}/Obtener_MenuNombre`,
    Menu_Validar_Opcion: `${baseUrl}${menuController}/Menu_Validar_Opcion`,
    Get_Description_Report: `${baseUrl}${menuController}/Get_Description_Report`,
    SegMenuOpciones_Lista: `${baseUrl}${menuController}/SegMenuOpciones_Lista`,
    Seg_Usuario_Validar_Opcion:`${baseUrl}${menuController}/Seg_Usuario_Validar_Opcion`,
};

export const ReporteRutas = {
    //Get_Description_Report : `${baseUrl}${Reporte}/Get_Description_Report`,
    SetParametrosReporte: `${baseUrl}${Reporte}/SetParametrosReporte`,
}

export const Seguridad = {
    Empresa_Lista: `${baseUrl}${seguridad}/Empresa_Lista`,
    Empresa_Consulta: `${baseUrl}${seguridad}/Empresa_Consulta`,
    Organigrama_Lista: `${baseUrl}${seguridad}/Organigrama_Lista`,
    InactivarBloquear_Usuario: `${baseUrl}${seguridad}/InactivarBloquear_Usuario`,
    Modulo_ListarModuloUsuario: `${baseUrl}${seguridad}/Modulo_ListarModuloUsuario`,
    SegModuloFavorito_Consulta: `${baseUrl}${seguridad}/SegModuloFavorito_Consulta`,
    SegModuloFavorito_Listar:`${baseUrl}${seguridad}/SegModuloFavorito_Listar`,
    SegModuloFavorito_Guardar:`${baseUrl}${seguridad}/SegModuloFavorito_Guardar`,
    SegModuloFavorito_Modificar:`${baseUrl}${seguridad}/SegModuloFavorito_Modificar`,
    SegModuloFavorito_Eliminar: `${baseUrl}${seguridad}/SegModuloFavorito_Eliminar`,
    Seg_Usuario_Encriptar_Llave: `${baseUrl}${seguridad}/Seg_Usuario_Encriptar_Llave`,
    SegSistema_Consulta: `${baseUrl}${seguridad}/SegSistema_Consulta`,
    SegSistema_Listar: `${baseUrl}${seguridad}/SegSistema_Listar`,
    SegSistema_Guardar: `${baseUrl}${seguridad}/SegSistema_Guardar`,
    SegSistema_Modificar: `${baseUrl}${seguridad}/SegSistema_Modificar`,
    SegSistema_Eliminar:`${baseUrl}${seguridad}/SegSistema_Eliminar`,

    Tipo_Sistema: `${baseUrl}${seguridad}/Consultar_TipoSistema`,
    
}


//Url Routes for Components ALPHABET ORDER
export const SiteRutas = {
    Base: '/',
    Home: '/Home',

    CambiarContrasena: `/cambiarContrasena`,
    //CambiarContrasena: '/CambiarContrasena',

    Login: '/Login',
    //    mantenimientoEmpleado: `${baseUrl}home/mantenimientoEmpleado`,
    InterfazModulos:'/InterfazModulos',
};

//IMAGENES
export const ImagenesRutas = {
    Fondo_Login: `${baseUrl}Content/Images/login-bg-min.jpg`,
    Fondo_Login2: `${baseUrl}Content/Images/sistemas/login-bg-min.png`,
    
    Logo: `${baseUrl}Content/Images/logo.png`,
    Logo_Fas: `${baseUrl}Content/Images/logo-fas.png`,
    Logo_LD_Blanco: `${baseUrl}Content/Images/ld-blanco.png`,
    Logo_LD: `${baseUrl}Content/Images/logo-ld.png`,
    Main_LD: `${baseUrl}Content/Images/login-bg.jpg`,
    Ping: `${baseUrl}Content/Images/map_marker.png`,
    PicDefault: `${baseUrl}Content/Images/default.png`,
    FotosEmpleadosUbicacion: `${baseUrl}Content/Images/`,
    UserIcon: `${baseUrl}Content/Images/user-icon.png`,
    Parametros: `${baseUrl}Content/Images/parametros.png`,
    userMenu: `${baseUrl}Content/Images/user.png`,

    imgLDCOM: `${baseUrl}Content/Images/sistemas/ICONOS LDCOM/`,
    imgLDFAS: `${baseUrl}Content/Images/sistemas/ICONOS FAS/`,
    iconosSistemas: `${baseUrl}Content/Images/sistemas/Iconos Sistemas/`,
    loginFAS: `${baseUrl}Content/Images/sistemas/login_FAS.webp`,
    loginLDCOM:`${baseUrl}Content/Images/sistemas/LOGIN_LDCOM.webp`,
    LDFASLogo:`${baseUrl}Content/Images/sistemas/LDFAS LOGO.webp`,
    LDCOMLogo:`${baseUrl}Content/Images/sistemas/LDCOM LOGO.webp`,
    LogoRuta:`${baseUrl}Content/Images/sistemas/`,
    fondoRuta:`${baseUrl}Content/Images/sistemas/`,
    fondoLDFAS:`${baseUrl}Content/Images/sistemas/FONDO_LD_FAS_2.webp`,
    fondoLDCOM:`${baseUrl}Content/Images/sistemas/FONDO_LDCOM_2.webp`, 
};

//Request Header
export const GetHeaderRequest = pToken => {

    return {
        'Content-Type': 'application/json',
        'Authorization': `Bearer ${pToken}`
    }
};


export const GetHeaderRequestFormData = pToken => {
    return {
        'Authorization': `Bearer ${pToken}`
    }
};


export const GetResponseBody = pResponse => {
//    console.log(`GetResponseBody ${JSON.stringify(pResponse)}`);
    const contentType = pResponse.headers["content-type"];
    if (contentType && contentType.indexOf("application/json") !== -1) {
        return pResponse.data;
    } else {
        switch (pResponse.status) {
            case 401:
                return { Exitoso: false, Mensaje: 'Sesión expiró.', CodigoError: 2 };
            case 500:
                return { Exitoso: false, Mensaje: 'Ocurrió un error en el servidor.', CodigoError: 999 };
            default:
                return { Exitoso: false, Mensaje: 'Ocurrió un error realizando la acción.', CodigoError: 999 };
        }
    }
};

export const GetResponseBodyFetch = pResponse => {

    const contentType = pResponse.headers.get("content-type");

    return pResponse.json();

};

export const GetResponseBodyError = pResponse => {
    //console.log(`GetResponseBodyError ${JSON.stringify(pResponse)}`);
    //console.log(`GetResponseBodyError status ${pResponse.status}`);
            switch (pResponse.status) {
                case 401:
                    return { Exitoso: false, Mensaje: 'Sesión expiró.', CodigoError: 2 };
                case 500:
                    return { Exitoso: false, Mensaje: 'Ocurrió un error en el servidor.', CodigoError: 999 };
                default:
                    return { Exitoso: false, Mensaje: 'Ocurrió un error realizando la acción.', CodigoError: 999 };
            }
        
    };


