Skip to content

Commit

Permalink
Merge pull request #174 from rkozyak/Brian
Browse files Browse the repository at this point in the history
Linked item to challenge details, implemented challenge details, chal…
  • Loading branch information
awang652 authored Jul 26, 2024
2 parents abdcbc2 + ca5d8bb commit 2e09d07
Show file tree
Hide file tree
Showing 17 changed files with 714 additions and 30 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ public void testAddWorkoutInvalidData() throws InterruptedException {
public void testAddChallenge() throws InterruptedException {
ArrayList<WorkoutPlan> workoutPlans = new ArrayList<>();
workoutPlans.add(new WorkoutPlan("1", "Test Workout Plan", 100, 3, 10, 30, "Test Notes"));
CommunityChallenge challenge = new CommunityChallenge("1", "Test Challenge", workoutPlans, 31, 12, 2024);
CommunityChallenge challenge = new CommunityChallenge("1", "Test Challenge", workoutPlans, 31, 12, 2024, "notes");
CountDownLatch latch = new CountDownLatch(1);
DatabaseReference.CompletionListener listener = (error, ref) -> {
assertNotNull(ref);
Expand All @@ -144,7 +144,7 @@ public void testAddChallenge() throws InterruptedException {
public void testAddChallengeInvalidInfo() throws InterruptedException {
ArrayList<WorkoutPlan> workoutPlans = new ArrayList<>();
workoutPlans.add(new WorkoutPlan("1", "Test Workout Plan", 100, 3, 10, 30, "Test Notes"));
CommunityChallenge challenge = new CommunityChallenge("1", "Test Challenge", workoutPlans, 31, 12, 2024);
CommunityChallenge challenge = new CommunityChallenge("1", "Test Challenge", workoutPlans, 31, 12, 2024, "notes");
CountDownLatch latch = new CountDownLatch(1);
DatabaseReference.CompletionListener listener = (error, ref) -> {
assertNotNull(ref);
Expand Down
4 changes: 4 additions & 0 deletions HealthTrack/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,10 @@
android:name=".view.AddWorkoutCommunity"
android:exported="false"/>

<activity
android:name=".view.ChallengeDetails"
android:exported="false"/>

<meta-data
android:name="preloaded_fonts"
android:resource="@array/preloaded_fonts" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@

public class CommunityChallenge {
private List<Observer> observers = new ArrayList<>();
private String notes;
private String challengeStatus;
private String userId;
private String name;
Expand All @@ -18,13 +19,14 @@ public CommunityChallenge() {
}

public CommunityChallenge(String userId, String name, ArrayList<WorkoutPlan> workoutPlans,
int deadlineDay, int deadlineMonth, int deadlineYear) {
int deadlineDay, int deadlineMonth, int deadlineYear, String notes) {
this.userId = userId;
this.name = name;
this.workoutPlans = workoutPlans;
this.deadlineDay = deadlineDay;
this.deadlineMonth = deadlineMonth;
this.deadlineYear = deadlineYear;
this.notes = notes;
participants = new ArrayList<String>();
}

Expand Down Expand Up @@ -59,6 +61,8 @@ public ArrayList<String> getParticipants() {
public void addParticipant(String userId) {
participants.add(userId);
}

public String getNotes() { return notes; }

public void addObserver(Observer observer) {
observers.add(observer);
Expand All @@ -78,8 +82,4 @@ public void setChallengeStatus(String status) {
this.challengeStatus = status;
notifyObservers();
}

public String getChallengeName() {
return name;
}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,17 @@
package com.example.healthtrack.model;

import androidx.annotation.NonNull;

import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.ValueEventListener;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;

public class NameSortStrategy implements SortingStrategy {
private String name;
Expand All @@ -20,6 +31,16 @@ public ArrayList<WorkoutPlan> sort(ArrayList<WorkoutPlan> list) {
return newList;
}

public ArrayList<String> challengeSort(ArrayList<String> list) {
ArrayList<String> newList = new ArrayList<>();
for (int i = 0; i < list.size(); i++) {
if (list.get(i).contains(this.name)) {
newList.add(list.get(i));
}
}
return newList;
}

public void setName(String name) {
this.name = name;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,9 @@ public ArrayList<WorkoutPlan> sort(ArrayList<WorkoutPlan> list) {
Collections.shuffle(list);
return list;
}

public ArrayList<String> challengeSort(ArrayList<String> list) {
Collections.shuffle(list);
return list;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,8 @@ public static ArrayList<WorkoutPlan> filter(SortingStrategy strategy,
ArrayList<WorkoutPlan> list) {
return strategy.sort(list);
}

public static ArrayList<String> challengeFilter(SortingStrategy strategy, ArrayList<String> list) {
return strategy.challengeSort(list);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,5 @@

public interface SortingStrategy {
public ArrayList<WorkoutPlan> sort(ArrayList<WorkoutPlan> list);
public ArrayList<String> challengeSort(ArrayList<String> list);
}
Loading

0 comments on commit 2e09d07

Please sign in to comment.