diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/WeeklyMenuController.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/WeeklyMenuController.java
index 54d341ba926db90192a38c876d21bb9697157565..f7e4e753ffd86cd5465fa96232b849f4100aff76 100644
--- a/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/WeeklyMenuController.java
+++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/WeeklyMenuController.java
@@ -18,10 +18,10 @@ import ntnu.idatt2016.v233.SmartMat.service.WeeklyMenuService;
 public class WeeklyMenuController {
     
     private WeeklyMenuService weeklyMenuService;
-
-    @GetMapping("/getWeeklyMenu/{fridgeId}")
+    
+    @GetMapping("/{fridgeId}")
     public ResponseEntity<List<WeeklyMenuResponse>> getWeeklyMenu(@PathVariable("fridgeId") Long fridgeId) {
-        List<WeeklyMenuResponse> weeklyMenu = weeklyMenuService.getTop5RecipesWithProducts(fridgeId);
+        List<WeeklyMenuResponse> weeklyMenu = weeklyMenuService.getWeeklyMenu(fridgeId);
         
         if (weeklyMenu.isEmpty()) {
             return ResponseEntity.notFound().build();
diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/dto/response/WeeklyMenuResponse.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/dto/response/WeeklyMenuResponse.java
index 76cd0abf85ae6b4116c99e51ae73d447e0a8114d..109e337e00229e68a6678390276de9a4559a02af 100644
--- a/src/main/java/ntnu/idatt2016/v233/SmartMat/dto/response/WeeklyMenuResponse.java
+++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/dto/response/WeeklyMenuResponse.java
@@ -16,9 +16,7 @@ public class WeeklyMenuResponse {
 
     private Integer recipeId;
     private String recipeName;
-    private Long ean;
-    private String itemName;
-    private String itemDescription;
-    private boolean inFridge;
+    private String recipeDescription;
+    private long matchingProducts;
     
 } 
\ No newline at end of file
diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/RecipeRepository.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/RecipeRepository.java
index cbaf75044630bd95366a4554a64a18a59e0315b4..41208c0bc9a4ef0c0f3e071f3f6638bb3a66de15 100644
--- a/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/RecipeRepository.java
+++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/repository/RecipeRepository.java
@@ -1,9 +1,7 @@
 package ntnu.idatt2016.v233.SmartMat.repository;
 
 import java.util.List;
-import java.util.stream.Collectors;
 
-import ntnu.idatt2016.v233.SmartMat.dto.response.WeeklyMenuResponse;
 import ntnu.idatt2016.v233.SmartMat.entity.Recipe;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.Query;
@@ -78,5 +76,16 @@ public interface RecipeRepository extends JpaRepository<Recipe, Long> {
             p.ean;
         """, nativeQuery = true)
     List<Object[]> findTop5RecipesWithProductsRaw(@Param("fridgeId") long fridgeId);
+        
+    @Query( value = """
+        SELECT r.recipe_id, r.recipe_name,r.recipe_description, COUNT(fp.ean) as product_count
+        FROM recipe r
+        LEFT JOIN recipe_product rp ON r.recipe_id = rp.recipe_id
+        LEFT JOIN fridge_product fp ON rp.ean = fp.ean AND fp.fridge_id = :fridgeId
+        GROUP BY r.recipe_id, r.recipe_name
+        ORDER BY product_count DESC
+        LIMIT 5;
+        """, nativeQuery = true)
+    List<Object[]> findWeeklyMenu(@Param("fridgeId") long fridgeId);
     
 }
diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/service/WeeklyMenuService.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/WeeklyMenuService.java
index eb1101ef864b282cffe818c3972677a940aef1b4..870b355345307ddf7c590960c34793f9b6f4a9e9 100644
--- a/src/main/java/ntnu/idatt2016/v233/SmartMat/service/WeeklyMenuService.java
+++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/WeeklyMenuService.java
@@ -21,18 +21,6 @@ public class WeeklyMenuService {
     @Autowired
     RecipeRepository recipeRepository;
 
-     /**
-     * Retrieves the top 5 recipes with products that have a match with items in the given fridge.
-     * Returns a list of Object arrays, where each array contains the recipe details and product information.
-     *
-     * @param groupId the ID of the fridge to use for matching products
-     * @return a list of Object arrays with recipe and product details
-     */    
-    /*
-    public List<Object[]> getTop5RecipesWithProducts(long groupId) {
-        return recipeRepository.findTop5RecipesWithProducts(groupId);
-    }
-    */
 
      /**
      * Retrieves the top 5 recipes with products that have a match with items in the given fridge.
@@ -41,21 +29,20 @@ public class WeeklyMenuService {
      * @param groupId the ID of the fridge to use for matching products
      * @return a list of RecipeWithProductsDTO objects with recipe and product details
      */    
-    public List<WeeklyMenuResponse> getTop5RecipesWithProducts(long groupId) {
-
-        List<Object[]> rawData = recipeRepository.findTop5RecipesWithProductsRaw(groupId);
+    public List<WeeklyMenuResponse> getWeeklyMenu(long fridgeId) {
+    
+        List<Object[]> rawData = recipeRepository.findWeeklyMenu(fridgeId);
 
         List<WeeklyMenuResponse> result = rawData.stream()
             .map(row -> new WeeklyMenuResponse(
                 (Integer) row[0],
                 (String) row[1],
-                (Long) row[2],
-                (String) row[3],
-                (String) row[4],
-                (Boolean) row[5]
+                (String) row[2],
+                (long) row[3]
             ))
             .collect(Collectors.toList());
             
                 return result;
             }
-}
+    
+}
\ No newline at end of file