Pending Appointments

Try to code this way… & also try to use more console-logs!
CONSOLE = your BEST-FRIEND !!!

Sorry → i did cut off some parts to simplify code…

// Import the wix-data module for working with collections.
import wixData from "wix-data";
import wixBookings from 'wix-bookings';
// Import the wix-location module for sending emails for dismissed appointments.
import wixLocation from "wix-location";


// ----------------- USER-INTERFACE----------------------
var requestRepeater = "#requestsRepeater"
var requestDataset = "#pendingRequestsDataset"
// ----------------- USER-INTERFACE----------------------

//-------------Page Setup-------------//
$w.onReady(function () {
 // When the pending requests dataset is ready:
  $w(requestDataset).onReady(() => {console.log("Dataset is READY!")
    $w(REPEATER).onItemReady(($item, itemData, index)=>{   
     // Populate the date field with the slot's start date.
      $item("#date").text = new Date();
      $item("#email").text = "Email-text here"
      // Set the dismiss button to dismiss the appointment request when clicked.
      
      $item("#dismissButton").onClick(async()=> {console.log("Dismiss-Button clicked!");
        $item("#dismissButton, #approveButton").disable();
        console.log("Item-Data: ", itemData); console.log("Index: ", index);
        itemData.status = "DISMISSED"; console.log("Status: ", itemData.status)
        wixData.update("Customers", itemData)
        .then((res)=>{console.log("RESULTS: ", res); refreshData();});
     });

     $item("#emailButton").onClick(()=> {console.log("Email-Button clicked!");
       const subject = "Thanks For Getting in Touch";
       wixLocation.to(`mailto:${itemData.email}?subject=${subject}`);
     });

    // Set the approve button to approve the appointment request when clicked.
     $item("#approveButton").onClick(async()=> {console.log("Approve-Button clicked!");
       console.log("Item-Data: ", itemData); console.log("Index: ", index);
       $item("#dismissButton, #approveButton").disable();
       itemData.status = "APPROVED"; console.log("Status: ", itemData.status)
       wixData.update("Customers", itemData)
       .then((res)=>{console.log("RESULTS: ", res); refreshData();});          
     });

        $item("#emailButton2").onClick(() => {console.log("Email-Button2 clicked!");
          const subject = "Thank you for Booking";
          wixLocation.to(`mailto:${itemData.email}?subject=${subject}`);
        });
      });

        if ($w(requestDataset).getTotalCount()===0) {
          $w("#noPendingRequests").show();
        }
        else {console.log("Do something else!")
          $w("#noPendingRequests").hide();
        }
    });
});


//-------------Page Update-------------//
function refreshData() {
    $w(requestDataset).refresh()
    $w("#dismissedRequestsDataset").refresh();
    $w("#approvedRequestsDataset").refresh();
}