diff --git a/src/Controllers/WishlistController.php b/src/Controllers/WishlistController.php
index 6742b02fc876ebb14e762e5aba40f19a9fbc3570..e5bc4b9a09253422315d4814751ea976b8735ec2 100644
--- a/src/Controllers/WishlistController.php
+++ b/src/Controllers/WishlistController.php
@@ -10,6 +10,7 @@ use app\Forms\Number;
 use app\Forms\Phone;
 use app\Forms\Required;
 use app\Forms\Validation;
+use app\Models\Dorm;
 use app\Models\Owners;
 use app\Models\Wishlists;
 use app\Utils\Toast;
@@ -43,15 +44,29 @@ class WishlistController extends Controller
     // ]);
     $userId = Request::getUser()->user_id;
 
-    $wishlists = Wishlists::where(["user_id"=>$userId]);
+    $wishlists = Wishlists::where(["user_id" => $userId]);
     print_r($wishlists);
-    $this->render("wishlist/index",[
-        "wishlists" => $wishlists
+    $dormIds = array_reduce(
+      $wishlists,
+      function ($carry, $wishlist) {
+        $carry[] = $wishlist->dorm_id;
+        return $carry;
+      },
+      []
+    );
+    $result = Dorm::getInIds($dormIds);
+    $dorms = $result["dorms"];
+    $medias = $result["medias"];
+
+    $this->render("wishlist/index", [
+      "wishlists" => $wishlists,
+      "dorms" => $dorms,
+      "medias" => $medias,
     ]);
-    
   }
 
-  public function add($params){
+  public function add($params)
+  {
     $userId = Request::getUser()->user_id;
     // $form = new Validation([
     //   [new Field('dorm_id'), [new Number()]],
@@ -59,12 +74,12 @@ class WishlistController extends Controller
     $dormId = $params["dormId"];
 
     if (Request::getMethod() === "GET") {
-        $wishlist = Wishlists::toModel(["dorm_id"=>$dormId, "user_id"=>$userId]);
-        // $wishlist->user_id = $userId;
-        // var_dump($wishlist);
-        $wishlist->save();
-        Toast::success("Kos berhasil ditambahkan ke wishlist", true);
-        Response::redirect("/dorms/{$dormId}");
+      $wishlist = Wishlists::toModel(["dorm_id" => $dormId, "user_id" => $userId]);
+      // $wishlist->user_id = $userId;
+      // var_dump($wishlist);
+      $wishlist->save();
+      Toast::success("Kos berhasil ditambahkan ke wishlist", true);
+      Response::redirect("/dorms/{$dormId}");
     }
   }
   public function delete()
@@ -74,8 +89,8 @@ class WishlistController extends Controller
       [new Field('dorm_id'), [new Number()]],
     ]);
     if ($form->validate(Request::getBody())) {
-        $wishlist = Wishlists::where(["user_id"=>$userId, "dorm_id"=>$form->data["dorm_id"]]);
-        $wishlist[0]->delete();
+      $wishlist = Wishlists::where(["user_id" => $userId, "dorm_id" => $form->data["dorm_id"]]);
+      $wishlist[0]->delete();
     }
     Toast::success("Kos berhasil dihapus dari wishlist", true);
     Response::redirect("/wishlist");
diff --git a/src/Models/BaseModel.php b/src/Models/BaseModel.php
index bbc5385f6107a96cca34f96bfa23b6be77d61bcb..ad68ffbe7c23fd3115ae98885877a839e89bb93f 100644
--- a/src/Models/BaseModel.php
+++ b/src/Models/BaseModel.php
@@ -105,7 +105,7 @@ class BaseModel
 
   public function save()
   {
-    if (isset($this->{static::$primaryKey})) {
+    if (!is_array(static::$primaryKey) && isset($this->{static::$primaryKey})) {
       $this->update();
     } else {
       $this->insert();
@@ -115,13 +115,20 @@ class BaseModel
   private function insert()
   {
     $fields = get_object_vars($this);
-    $fields = array_filter($fields, function ($key) {
-      return $key != static::$primaryKey;
-    }, ARRAY_FILTER_USE_KEY);
+    if (!is_array(static::$primaryKey)) {
+      $fields = array_filter($fields, function ($key) {
+        return $key != static::$primaryKey;
+      }, ARRAY_FILTER_USE_KEY);
+    }
 
     $keys = array_keys($fields);
 
-    $sql = "INSERT INTO " . static::$table . " (" . implode(",", $keys) . ") VALUES (:" . implode(",:", $keys) . ") RETURNING " . static::$primaryKey . ";";
+
+    if (is_array(static::$primaryKey)) {
+      $sql = "INSERT INTO " . static::$table . " (" . implode(",", $keys) . ") VALUES (:" . implode(",:", $keys) . ") RETURNING " . implode(",", static::$primaryKey) . ";";
+    } else {
+      $sql = "INSERT INTO " . static::$table . " (" . implode(",", $keys) . ") VALUES (:" . implode(",:", $keys) . ") RETURNING " . static::$primaryKey . ";";
+    }
 
     $stmt = self::$db->prepare($sql);
 
@@ -131,7 +138,9 @@ class BaseModel
 
     $stmt->execute();
     $data = $stmt->fetch();
-    $this->{static::$primaryKey} = $data[static::$primaryKey];
+    if (!is_array(static::$primaryKey)) {
+      $this->{static::$primaryKey} = $data[static::$primaryKey];
+    }
   }
 
   private function update()
diff --git a/src/Models/Dorm.php b/src/Models/Dorm.php
index 1f5e2c167ad1ff256136398c809926cd3ce69654..25cbbf8f212f19a7f88f40b8c476895e64cf9eb6 100644
--- a/src/Models/Dorm.php
+++ b/src/Models/Dorm.php
@@ -59,6 +59,33 @@ class Dorm extends BaseModel
       return ["dorms" => [], "medias" => [], "totalPage" => 1];
     }
 
+    $medias = static::getMedias($dorms);
+
+    return ["dorms" => $dorms, "medias" => $medias, "totalPage" => $totalPage];
+  }
+
+  public static function getCities()
+  {
+    $stmt = self::$db->prepare("SELECT DISTINCT city FROM dorms ORDER BY city ASC");
+    $stmt->execute();
+    return $stmt->fetchAll(PDO::FETCH_COLUMN);
+  }
+
+  public static function getInIds(array $ids)
+  {
+    $in  = str_repeat('?,', count($ids) - 1) . '?';
+    $stmt = self::$db->prepare("SELECT * FROM dorms WHERE dorm_id IN ($in)");
+    $stmt->execute($ids);
+
+    $dorms =  self::toModelArray($stmt->fetchAll());
+    $medias = static::getMedias($dorms);
+
+    return ["dorms" => $dorms, "medias" => $medias];
+  }
+
+  private static function getMedias(array $dorms)
+  {
+    if (count($dorms) == 0) return array();
     $dormIds = array_map(fn ($dorm) => $dorm->dorm_id, $dorms);
 
     $stmt = self::$db->prepare("SELECT * FROM medias
@@ -72,14 +99,6 @@ class Dorm extends BaseModel
       $acc[$media->dorm_id] = $media;
       return $acc;
     }, []);
-
-    return ["dorms" => $dorms, "medias" => $medias, "totalPage" => $totalPage];
-  }
-
-  public static function getCities()
-  {
-    $stmt = self::$db->prepare("SELECT DISTINCT city FROM dorms ORDER BY city ASC");
-    $stmt->execute();
-    return $stmt->fetchAll(PDO::FETCH_COLUMN);
+    return $medias;
   }
 }
diff --git a/src/Views/index.php b/src/Views/index.php
index b4c2637a210fe659742390dd4e821cbec2ca6ee6..215710447aeaa4bf6ddb37399e87f8282addd3a1 100644
--- a/src/Views/index.php
+++ b/src/Views/index.php
@@ -11,20 +11,22 @@
   use app\Core\Request;
 
   if ($user->is_admin ?? false) : ?>
-    <div class="cta-admin">
-      <a href="/dorms/create" class="btn btn-primary">Tambah Kos</a>
-    </div>
+  <div class="cta-admin">
+    <a href="/dorms/create" class="btn btn-primary">Tambah Kos</a>
+  </div>
   <? endif; ?>
   <div class="inputs">
     <form class="search-wrapper">
-      <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" aria-hidden="true" stroke-width="1.5" stroke="currentColor" width="16" height="16">
-        <path stroke-linecap="round" stroke-linejoin="round" d="M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607z" />
+      <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" aria-hidden="true" stroke-width="1.5"
+        stroke="currentColor" width="16" height="16">
+        <path stroke-linecap="round" stroke-linejoin="round"
+          d="M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607z" />
       </svg>
       <input class="search-input" placeholder="Cari Kos" value="<?= Request::getQuery()["q"] ?? "" ?>" />
     </form>
     <div class="input-group">
       <label for="sort">Urutkan</label>
-      <select name="sort" class="sort-select">
+      <select name="sort" id="sort" class="sort-select">
         <option selected value="">Urutkan</option>
         <option value="price ASC">Harga Terendah</option>
         <option value="price DESC">Harga Tertinggi</option>
@@ -32,16 +34,16 @@
     </div>
     <div class="input-group">
       <label for="city">Kota</label>
-      <select name="city" class="city-select">
+      <select name="city" id="city" class="city-select">
         <option selected value="">Semua</option>
         <? foreach ($cities as $city) : ?>
-          <option value="<?= $city ?>"><?= $city ?></option>
+        <option value="<?= $city ?>"><?= $city ?></option>
         <? endforeach; ?>
       </select>
     </div>
     <div class="input-group">
       <label for="price">Harga</label>
-      <select name="price" class="price-select">
+      <select name="price" id="price" class="price-select">
         <option selected value="">Semua</option>
         <option value="price <= 1000000">Rp0 - Rp1.000.000</option>
         <option value="price >= 1000000 AND price <= 2000000">Rp1.000.000 - Rp2.000.000</option>
diff --git a/src/Views/layouts/base.php b/src/Views/layouts/base.php
index 75b2ff36e3d8e416da33867ece08ba9ab3edc8fd..6c24ec3f56a13034ad19b4713d8cabad6107a100 100644
--- a/src/Views/layouts/base.php
+++ b/src/Views/layouts/base.php
@@ -5,6 +5,7 @@
   <meta charset="UTF-8" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <title><?= $__title ?></title>
+  <meta name="description" content="Website untuk mencari kos-kosan terbaik" />
   <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
   <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
   <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
@@ -13,9 +14,7 @@
   <link rel="stylesheet" href="/static/styles/main.css" />
   <link rel="preconnect" href="https://fonts.googleapis.com" />
   <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
-  <link
-    href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,300;0,400;0,700;0,900;1,300;1,400;1,700;1,900&display=swap"
-    rel="stylesheet" />
+  <link href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,300;0,400;0,700;0,900;1,300;1,400;1,700;1,900&display=swap" rel="stylesheet" />
   <?= $__head ?>
 </head>
 
@@ -27,8 +26,7 @@
           <img src="/favicon.png" alt="MyKos Logo" width="20" />MyKos</a>
       </div>
       <button class="nav_btn" aria-label="Open the menu" type="button">
-        <svg width="28" height="28" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"
-          aria-hidden="true">
+        <svg width="28" height="28" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
           <path d="M20 7L4 7" stroke="#757575" stroke-width="1.5" stroke-linecap="round" />
           <path d="M20 12L4 12" stroke="#757575" stroke-width="1.5" stroke-linecap="round" />
           <path d="M20 17L4 17" stroke="#757575" stroke-width="1.5" stroke-linecap="round" />
@@ -36,47 +34,38 @@
       </button>
       <div class="nav_container">
         <button class="nav_btn_close" aria-label="Close the menu" type="button">
-          <svg width="20" height="20" viewBox="-0.5 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg"
-            aria-hidden="true">
-            <path d="M3 21.32L21 3.32001" stroke="#757575" stroke-width="2" stroke-linecap="round"
-              stroke-linejoin="round" />
-            <path d="M3 3.32001L21 21.32" stroke="#757575" stroke-width="2" stroke-linecap="round"
-              stroke-linejoin="round" />
+          <svg width="20" height="20" viewBox="-0.5 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
+            <path d="M3 21.32L21 3.32001" stroke="#757575" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
+            <path d="M3 3.32001L21 21.32" stroke="#757575" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
           </svg>
         </button>
         <div class="nav_items">
           <? if ($user) : ?>
-          <? if ($user->is_admin) : ?>
-          <a href="/owners" class="nav_link">
-            <svg aria-hidden="true" width="16" height="16" class="nav_link_icon" xmlns="http://www.w3.org/2000/svg"
-              fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor">
-              <path stroke-linecap="round" stroke-linejoin="round"
-                d="M9 12h3.75M9 15h3.75M9 18h3.75m3 .75H18a2.25 2.25 0 002.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48.424 48.424 0 00-1.123-.08m-5.801 0c-.065.21-.1.433-.1.664 0 .414.336.75.75.75h4.5a.75.75 0 00.75-.75 2.25 2.25 0 00-.1-.664m-5.8 0A2.251 2.251 0 0113.5 2.25H15c1.012 0 1.867.668 2.15 1.586m-5.8 0c-.376.023-.75.05-1.124.08C9.095 4.01 8.25 4.973 8.25 6.108V8.25m0 0H4.875c-.621 0-1.125.504-1.125 1.125v11.25c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V9.375c0-.621-.504-1.125-1.125-1.125H8.25zM6.75 12h.008v.008H6.75V12zm0 3h.008v.008H6.75V15zm0 3h.008v.008H6.75V18z" />
-            </svg>
-            Pemilik
-          </a>
-          <? endif; ?>
-          <? if (!$user->is_admin) : ?>
-          <a href="/wishlist" class="nav_link">
-            <svg aria-hidden="true" width="16" height="16" class="nav_link_icon" xmlns="http://www.w3.org/2000/svg"
-              fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor">
-              <path stroke-linecap="round" stroke-linejoin="round"
-                d="M9 12h3.75M9 15h3.75M9 18h3.75m3 .75H18a2.25 2.25 0 002.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48.424 48.424 0 00-1.123-.08m-5.801 0c-.065.21-.1.433-.1.664 0 .414.336.75.75.75h4.5a.75.75 0 00.75-.75 2.25 2.25 0 00-.1-.664m-5.8 0A2.251 2.251 0 0113.5 2.25H15c1.012 0 1.867.668 2.15 1.586m-5.8 0c-.376.023-.75.05-1.124.08C9.095 4.01 8.25 4.973 8.25 6.108V8.25m0 0H4.875c-.621 0-1.125.504-1.125 1.125v11.25c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V9.375c0-.621-.504-1.125-1.125-1.125H8.25zM6.75 12h.008v.008H6.75V12zm0 3h.008v.008H6.75V15zm0 3h.008v.008H6.75V18z" />
-            </svg>
-            Wishlist
-          </a>
-          <? endif; ?>
-          <a href="/account/edit" class="nav_link">
-            <svg aria-hidden="true" width="16" height="16" class="nav_link_icon" xmlns="http://www.w3.org/2000/svg"
-              fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="black">
-              <path stroke-linecap="round" stroke-linejoin="round"
-                d="M15.75 6a3.75 3.75 0 11-7.5 0 3.75 3.75 0 017.5 0zM4.501 20.118a7.5 7.5 0 0114.998 0A17.933 17.933 0 0112 21.75c-2.676 0-5.216-.584-7.499-1.632z" />
-            </svg>
+            <? if ($user->is_admin) : ?>
+              <a href="/owners" class="nav_link">
+                <svg aria-hidden="true" width="16" height="16" class="nav_link_icon" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor">
+                  <path stroke-linecap="round" stroke-linejoin="round" d="M9 12h3.75M9 15h3.75M9 18h3.75m3 .75H18a2.25 2.25 0 002.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48.424 48.424 0 00-1.123-.08m-5.801 0c-.065.21-.1.433-.1.664 0 .414.336.75.75.75h4.5a.75.75 0 00.75-.75 2.25 2.25 0 00-.1-.664m-5.8 0A2.251 2.251 0 0113.5 2.25H15c1.012 0 1.867.668 2.15 1.586m-5.8 0c-.376.023-.75.05-1.124.08C9.095 4.01 8.25 4.973 8.25 6.108V8.25m0 0H4.875c-.621 0-1.125.504-1.125 1.125v11.25c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V9.375c0-.621-.504-1.125-1.125-1.125H8.25zM6.75 12h.008v.008H6.75V12zm0 3h.008v.008H6.75V15zm0 3h.008v.008H6.75V18z" />
+                </svg>
+                Pemilik
+              </a>
+            <? endif; ?>
+            <? if (!$user->is_admin) : ?>
+              <a href="/wishlist" class="nav_link">
+                <svg aria-hidden="true" width="16" height="16" class="nav_link_icon" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor">
+                  <path stroke-linecap="round" stroke-linejoin="round" d="M9 12h3.75M9 15h3.75M9 18h3.75m3 .75H18a2.25 2.25 0 002.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48.424 48.424 0 00-1.123-.08m-5.801 0c-.065.21-.1.433-.1.664 0 .414.336.75.75.75h4.5a.75.75 0 00.75-.75 2.25 2.25 0 00-.1-.664m-5.8 0A2.251 2.251 0 0113.5 2.25H15c1.012 0 1.867.668 2.15 1.586m-5.8 0c-.376.023-.75.05-1.124.08C9.095 4.01 8.25 4.973 8.25 6.108V8.25m0 0H4.875c-.621 0-1.125.504-1.125 1.125v11.25c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V9.375c0-.621-.504-1.125-1.125-1.125H8.25zM6.75 12h.008v.008H6.75V12zm0 3h.008v.008H6.75V15zm0 3h.008v.008H6.75V18z" />
+                </svg>
+                Wishlist
+              </a>
+            <? endif; ?>
+            <a href="/account/edit" class="nav_link">
+              <svg aria-hidden="true" width="16" height="16" class="nav_link_icon" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="black">
+                <path stroke-linecap="round" stroke-linejoin="round" d="M15.75 6a3.75 3.75 0 11-7.5 0 3.75 3.75 0 017.5 0zM4.501 20.118a7.5 7.5 0 0114.998 0A17.933 17.933 0 0112 21.75c-2.676 0-5.216-.584-7.499-1.632z" />
+              </svg>
 
-            Akun</a>
-          <a href="/logout" class="btn btn-danger">Keluar</a>
+              Akun</a>
+            <a href="/logout" class="btn btn-danger">Keluar</a>
           <? else : ?>
-          <a href="/login" class="btn btn-outlined">Masuk</a>
+            <a href="/login" class="btn btn-outlined">Masuk</a>
           <? endif; ?>
         </div>
       </div>
@@ -87,31 +76,28 @@
   </main>
 
   <? if (isset($toast)) : ?>
-  <div class="toast toast-<?= $toast["type"] ?>">
-    <? if ($toast["type"] === "success") : ?>
-    <svg viewBox="0 0 24 24" width="24" height="24" fill="var(--color-primary)">
-      <path
-        d="M12 0a12 12 0 1012 12A12.014 12.014 0 0012 0zm6.927 8.2l-6.845 9.289a1.011 1.011 0 01-1.43.188l-4.888-3.908a1 1 0 111.25-1.562l4.076 3.261 6.227-8.451a1 1 0 111.61 1.183z">
-      </path>
-    </svg>
-    <? elseif ($toast["type"] === "error") : ?>
-    <svg viewBox="0 0 24 24" width="24" height="24" fill="var(--color-danger)">
-      <path
-        d="M11.983 0a12.206 12.206 0 00-8.51 3.653A11.8 11.8 0 000 12.207 11.779 11.779 0 0011.8 24h.214A12.111 12.111 0 0024 11.791 11.766 11.766 0 0011.983 0zM10.5 16.542a1.476 1.476 0 011.449-1.53h.027a1.527 1.527 0 011.523 1.47 1.475 1.475 0 01-1.449 1.53h-.027a1.529 1.529 0 01-1.523-1.47zM11 12.5v-6a1 1 0 012 0v6a1 1 0 11-2 0z">
-      </path>
-    </svg>
-    <? endif; ?>
-    <span>
-      <?= $toast["message"] ?>
-    </span>
-    <span class="toast-progress"></span>
-    <button class="toast-close">
-      <svg xmlns="http://www.w3.org/2000/svg" fill="none" width="12" height="12" viewBox="0 0 24 24" stroke-width="2"
-        stroke="currentColor">
-        <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12" />
-      </svg>
-    </button>
-  </div>
+    <div class="toast toast-<?= $toast["type"] ?>">
+      <? if ($toast["type"] === "success") : ?>
+        <svg viewBox="0 0 24 24" width="24" height="24" fill="var(--color-primary)">
+          <path d="M12 0a12 12 0 1012 12A12.014 12.014 0 0012 0zm6.927 8.2l-6.845 9.289a1.011 1.011 0 01-1.43.188l-4.888-3.908a1 1 0 111.25-1.562l4.076 3.261 6.227-8.451a1 1 0 111.61 1.183z">
+          </path>
+        </svg>
+      <? elseif ($toast["type"] === "error") : ?>
+        <svg viewBox="0 0 24 24" width="24" height="24" fill="var(--color-danger)">
+          <path d="M11.983 0a12.206 12.206 0 00-8.51 3.653A11.8 11.8 0 000 12.207 11.779 11.779 0 0011.8 24h.214A12.111 12.111 0 0024 11.791 11.766 11.766 0 0011.983 0zM10.5 16.542a1.476 1.476 0 011.449-1.53h.027a1.527 1.527 0 011.523 1.47 1.475 1.475 0 01-1.449 1.53h-.027a1.529 1.529 0 01-1.523-1.47zM11 12.5v-6a1 1 0 012 0v6a1 1 0 11-2 0z">
+          </path>
+        </svg>
+      <? endif; ?>
+      <span>
+        <?= $toast["message"] ?>
+      </span>
+      <span class="toast-progress"></span>
+      <button class="toast-close">
+        <svg xmlns="http://www.w3.org/2000/svg" fill="none" width="12" height="12" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor">
+          <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12" />
+        </svg>
+      </button>
+    </div>
   <? endif ?>
 
   <script src="/static/scripts/request.js"></script>
diff --git a/src/Views/wishlist/index.php b/src/Views/wishlist/index.php
index d1995504d62d3d96da8c87766aedf436d404c1ff..966b4ed6906a890c1880d5e86f81787bbd25a54d 100644
--- a/src/Views/wishlist/index.php
+++ b/src/Views/wishlist/index.php
@@ -1,18 +1,12 @@
 @extends('layouts/base')
 @@head
-<link rel="stylesheet" href="/static/styles/owner.css" />
+<link rel="stylesheet" href="/static/styles/home.css">
 @@endhead
 
 
 <h1 class="hero-title">Wishlist</h1>
 <ul class="dorm_list">
-  <? use app\Models\Dorm;
-  $dorms = array();
-  print_r($wishlists);
-  foreach ($wishlists as $wishlist) :
-    $dorms[]= Dorm::findById($wishlist->dorm_id);
-  endforeach;
-
+  <?
   foreach ($dorms as $dorm) : ?>
     <li class="dorm_item">
       <a href="/dorms/<?= $dorm->dorm_id ?>">
@@ -30,43 +24,23 @@
           </p>
         </div>
         <form method="POST">
-            <button type="button" class="btn btn-danger dialog-btn action-btn"
-            data-dialog="delete-<?= $dorm->dorm_id ?>"><svg xmlns="http://www.w3.org/2000/svg" fill="none"
-            viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="20" height="20">
-            <path stroke-linecap="round" stroke-linejoin="round"
-            d="M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0" />
+          <button type="button" class="btn btn-danger dialog-btn action-btn" data-dialog="delete-<?= $dorm->dorm_id ?>"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" width="20" height="20">
+              <path stroke-linecap="round" stroke-linejoin="round" d="M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0" />
             </svg>
-            </button>
-            <input type="hidden" name="dorm_id" value="<?= $dorm->dorm_id ?>" />
-            <input type="hidden" name="_method" value="DELETE" />
-            <div class="dialog-wrapper delete-<?= $dorm->dorm_id ?>">
-                <div class="dialog-content">
-                <h4 class="confirm-title">Apakah Anda yakin ingin menghapus dorm ini dari wishlist Anda?</h4>
-                <div class="confirm-action">
-                    <button type="button" class="btn btn-outlined dialog-btn"
-                    data-dialog="delete-<?= $dorm->dorm_id ?>">Batal</button>
-                    <button type="submit" class="btn btn-danger">Hapus</button>
-                </div>
-                </div>
+          </button>
+          <input type="hidden" name="dorm_id" value="<?= $dorm->dorm_id ?>" />
+          <input type="hidden" name="_method" value="DELETE" />
+          <div class="dialog-wrapper delete-<?= $dorm->dorm_id ?>">
+            <div class="dialog-content">
+              <h4 class="confirm-title">Apakah Anda yakin ingin menghapus dorm ini dari wishlist Anda?</h4>
+              <div class="confirm-action">
+                <button type="button" class="btn btn-outlined dialog-btn" data-dialog="delete-<?= $dorm->dorm_id ?>">Batal</button>
+                <button type="submit" class="btn btn-danger">Hapus</button>
+              </div>
             </div>
+          </div>
         </form>
       </a>
     </li>
   <? endforeach; ?>
-</ul>
-<!-- <div class="pagination">
-  <? if ($page > 1) : ?>
-    <a href="/?page=<?= $page - 1 ?>" class="pagination_item">
-      <span aria-hidden="true">&laquo;</span>
-      <span class="sr-only">Previous</span></a>
-  <? endif; ?>
-  <? for ($i = 1; $i <= $totalPage; $i++) : ?>
-    <a href="/?page=<?= $i ?>" class="pagination_item <?= $i == $page ? 'active' : '' ?>"><?= $i ?></a>
-  <? endfor; ?>
-
-  <? if ($page < $totalPage) : ?>
-    <a href="/?page=<?= $page + 1 ?>" class="pagination_item">
-      <span aria-hidden="true">&raquo;</span>
-      <span class="sr-only">Next</span></a>
-  <? endif; ?>
-</div> -->
\ No newline at end of file
+</ul>
\ No newline at end of file
diff --git a/src/public/static/scripts/dorm-list.js b/src/public/static/scripts/dorm-list.js
index f935adc70d0f38fd966ba57187cd181c4de25e8d..75fccf38ce15ef63a336ff0287a784ec20882bd6 100644
--- a/src/public/static/scripts/dorm-list.js
+++ b/src/public/static/scripts/dorm-list.js
@@ -28,6 +28,7 @@ const debounceSearch = debounce((e) => {
 searchBar.addEventListener("input", debounceSearch);
 
 const sortSelect = document.querySelector(".sort-select");
+console.log(sortSelect);
 sortSelect.addEventListener("change", (e) => {
   const sort = e.target.value;
   changeParam("sort", sort);