import React, { useState, useContext } from "react";
import { View, Text, StyleSheet } from "react-native";
import { dimensions } from "../config/dimensions";
import colors from "../config/colors";
import Button from "../components/Button";
import { MaterialCommunityIcons } from "@expo/vector-icons";
import { AuthContext } from "../auth/context";
import authStorage from "../auth/storage";
import {
Form,
SubmitButton,
FormField,
ErrorMessage,
} from "../components/forms";
import { KeyboardAwareScrollView } from "react-native-keyboard-aware-scroll-view";
import ConfirmationModal from "../components/ConfirmationModal";
import { userActivation } from "../api/auth";
function Header() {
return (
Ativar instituição
);
}
function Institution({ user }) {
const institutionMap = {
E: "Escola",
D: "Defesa Civil",
N: "Não governamental",
O: "Outra",
N: "Nenhuma",
};
const roleMap = {
ROLE_CLIENT: "Não responsável",
ROLE_INSTITUTION: "Responsável",
}
return (
Tipo de instituição:
{user.institutiontype ? institutionMap[user.institutiontype] : "Não informado"}
Nome da instituição:
{user.institution ? user.institution : "Não informado"}
Vínculo institucional:
{roleMap[user?.roles[0]]}
);
}
function ValidateCode({ user }) {
return (
Código de ativação:
);
}
async function processOnSubmit(navigation, form, instRole, setShowLog) {
const response = await userActivation(form.code);
console.log("==============================================================================")
console.log(response)
if (instRole == "Não responsável") {
if (response.ok) {
setShowLog({ show: true, message: true });
} else {
setShowLog({ show: true, message: false });
}
} else if (response.ok) {
navigation.navigate("ActivateInstitutionShowCode");
} else {
setShowLog({ show: true, message: false });
}
// navigation.navigate("ActivateInstitutionShowCode", { code: form.code });
}
export default function ActivateInstitutionCode({ navigation }) {
const { user, _ } = useContext(AuthContext);
// FIXME: wpdAuth has errors while giving /me data for ROLE_INSTITUTION
// user.role = "ROLE_CLIENT"
// console.log(user)
const initialState = { show: false, message: true };
const [showLog, setShowLog] = useState(initialState);
return (
);
}
const styles = StyleSheet.create({
label: {
fontSize: dimensions.text.secondary,
marginBottom: 12,
fontWeight: "bold",
textAlign: "left",
color: colors.secondary,
},
subText: {
color: colors.subText,
fontSize: 16,
alignSelf: "center",
fontWeight: "500",
paddingLeft: 16,
},
title: {
fontSize: 18,
fontWeight: "bold",
textAlign: "center",
color: colors.primary,
},
labelStyle: {
fontSize: dimensions.text.secondary,
fontWeight: "bold",
textAlign: "left",
color: colors.secondary,
marginBottom: 12,
marginTop: 48,
},
iconField: {
justifyContent: "center",
alignItems: "center",
flexDirection: "row",
marginBottom: 24,
},
});