mirror of
https://github.com/lemeow125/StudE-Frontend.git
synced 2024-11-17 06:19:25 +08:00
Code cleanup
This commit is contained in:
parent
a9d7188c67
commit
b0345dc2b7
4 changed files with 11 additions and 20 deletions
|
@ -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 {
|
||||||
|
|
|
@ -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();
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
Loading…
Reference in a new issue