Code cleanup

This commit is contained in:
Keannu Bernasol 2023-10-01 15:56:01 +08:00
parent a9d7188c67
commit b0345dc2b7
4 changed files with 11 additions and 20 deletions

View file

@ -3,11 +3,7 @@ import { View } from "react-native";
import * as BackgroundFetch from "expo-background-fetch"; import * as BackgroundFetch from "expo-background-fetch";
import * as TaskManager from "expo-task-manager"; import * as TaskManager from "expo-task-manager";
import * as Notifications from "expo-notifications"; import * as Notifications from "expo-notifications";
import { import { GetStudentStatus, GetStudyGroupListFiltered } from "../Api/Api";
GetStudentStatus,
GetStudyGroupListFiltered,
GetUserInfo,
} from "../Api/Api";
import { StudyGroupType } from "../../interfaces/Interfaces"; import { StudyGroupType } from "../../interfaces/Interfaces";
const FETCH_STUDENT_STATUS = "STUDENT_STATUS_TASK"; const FETCH_STUDENT_STATUS = "STUDENT_STATUS_TASK";
@ -47,6 +43,7 @@ TaskManager.defineTask(FETCH_STUDENT_STATUS, async () => {
}); });
const BackgroundComponent = () => { const BackgroundComponent = () => {
const notification_debug = true;
const [isRegistered, setIsRegistered] = React.useState(false); const [isRegistered, setIsRegistered] = React.useState(false);
const [status, setStatus] = React.useState<any>(); const [status, setStatus] = React.useState<any>();
const checkStatusAsync = async () => { const checkStatusAsync = async () => {
@ -64,7 +61,7 @@ const BackgroundComponent = () => {
await checkStatusAsync(); await checkStatusAsync();
if (!isRegistered) { if (!isRegistered) {
await BackgroundFetch.registerTaskAsync(FETCH_STUDENT_STATUS, { await BackgroundFetch.registerTaskAsync(FETCH_STUDENT_STATUS, {
minimumInterval: 5, // seconds, minimumInterval: notification_debug ? 5 : 60 * 3, // Check every 5 seconds in dev & every 3 minutes in production builds
}); });
console.log("Task registered"); console.log("Task registered");
} else { } else {

View file

@ -27,12 +27,12 @@ import { PatchStudentStatus } from "../Api/Api";
import { useToast } from "react-native-toast-notifications"; import { useToast } from "react-native-toast-notifications";
export default function CustomDrawerContent(props: {}) { export default function CustomDrawerContent(props: {}) {
const debug = true;
const navigation = useNavigation<RootDrawerParamList>(); const navigation = useNavigation<RootDrawerParamList>();
const status = useSelector((state: RootState) => state.status); const status = useSelector((state: RootState) => state.status);
const dispatch = useDispatch(); const dispatch = useDispatch();
const queryClient = useQueryClient(); const queryClient = useQueryClient();
const toast = useToast(); const toast = useToast();
const debug_disable_clear_on_logout = true;
const stop_studying_logout = useMutation({ const stop_studying_logout = useMutation({
mutationFn: async (info: StudentStatusPatchType) => { mutationFn: async (info: StudentStatusPatchType) => {
const data = await PatchStudentStatus(info); const data = await PatchStudentStatus(info);
@ -78,7 +78,8 @@ export default function CustomDrawerContent(props: {}) {
<DrawerButton <DrawerButton
onPress={async () => { onPress={async () => {
if (debug_disable_clear_on_logout) { // We don't clear student statuses when logging out on debug
if (!debug) {
queryClient.clear(); queryClient.clear();
dispatch(logout()); dispatch(logout());
await AsyncStorage.clear(); await AsyncStorage.clear();
@ -141,7 +142,8 @@ export default function CustomDrawerContent(props: {}) {
</DrawerButton> </DrawerButton>
<DrawerButton <DrawerButton
onPress={async () => { onPress={async () => {
if (debug_disable_clear_on_logout) { // We don't clear student statuses when logging out on debug
if (!debug) {
queryClient.clear(); queryClient.clear();
dispatch(logout()); dispatch(logout());
await AsyncStorage.clear(); await AsyncStorage.clear();

View file

@ -34,14 +34,6 @@ import { useToast } from "react-native-toast-notifications";
import { useQueryClient } from "@tanstack/react-query"; import { useQueryClient } from "@tanstack/react-query";
import AnimatedContainer from "../../components/AnimatedContainer/AnimatedContainer"; import AnimatedContainer from "../../components/AnimatedContainer/AnimatedContainer";
type ConversationType = {
id: number;
user: string;
message_content: string;
study_group: string;
color: string;
};
export default function ConversationPage() { export default function ConversationPage() {
const toast = useToast(); const toast = useToast();
// Student Status // Student Status

View file

@ -38,7 +38,7 @@ import CaretUpIcon from "../../icons/CaretUpIcon/CaretUpIcon";
export default function Home() { export default function Home() {
// Switch this condition to see the main map when debugging // Switch this condition to see the main map when debugging
const map_debug = true; const map_distance_override = true;
const navigation = useNavigation<RootDrawerParamList>(); const navigation = useNavigation<RootDrawerParamList>();
const [location, setLocation] = useState<RawLocationType | null>(null); const [location, setLocation] = useState<RawLocationType | null>(null);
const [dist, setDist] = useState<number | null>(null); const [dist, setDist] = useState<number | null>(null);
@ -100,7 +100,7 @@ export default function Home() {
let dist = GetDistanceFromUSTP(location.coords); let dist = GetDistanceFromUSTP(location.coords);
setDist(dist); setDist(dist);
// Deactivate student status if too far away // Deactivate student status if too far away
if (dist >= 2 && !map_debug) if (dist >= 2 && !map_distance_override)
stop_studying.mutate({ stop_studying.mutate({
active: false, active: false,
}); });
@ -345,7 +345,7 @@ export default function Home() {
function CustomMap() { function CustomMap() {
if (dist && location) { if (dist && location) {
if (dist <= 2 || map_debug) { if (dist <= 2 || map_distance_override) {
return ( return (
<> <>
<MapView <MapView