Check for duplicates before saving them on database

The rest you will have to improve by your own…
Take a look onto console and try to inspect your own code.
Follow the logical console-infos…
Add your own console-logs, to inspect and understand your own code even better.

import wixData from 'wix-data';
import wixUsers from 'wix-users';

$w.onReady(function() {console.log("Page-Ready!")
  let user = wixUsers.currentUser; console.log("USER: ", user);
  user.getPricingPlans() 
  .then((pricingPlans)=> {console.log("Pricing-Plans: ", pricingPlans);
    let firstPlan = pricingPlans[0];  console.log("First-Plan: ", firstPlan);
    let  planName = firstPlan.name;   console.log("Plan-Name: ", planName);

    if (planName == '7 DAY FREE TRIAL $0'){  
      $w('#text30, #text31').show();
      $w('#dropdown1, #emailInput, #button1').show();
      //searchForDuplicityFreePlan();
      
      $w("#dataset1").onBeforeSave(async()=> {
        let checkEmailFreeOk = await checkDatabase('RegionSelectionQuizFree', 'email', $w("#emailInput").value);
        let fieldCheck = $w("#dropdown1").value;

        if(checkEmailFreeOk === false){
                $w("#text32").text = "An error occurred. You have already submitted this form";
            return false     
        }
        if(fieldCheck === ""){
              $w("#text32").text = "An error occurred. Please select your region of interest";
            return false       
        }
      });
    }
    

    if(planName == 'BASIC'){
      $w('#text30, #text31, #emailInput2, #button2').show();
      $w('#dropdown2, #dropdown3, #dropdown4').show();
      //searchForDuplicityBasicPlan();


      $w("#dataset2").onBeforeSave(async() => {
        let checkEmailBasicOk = await checkDatabase('RegionSelectionQuizBasic', 'email', $w("#emailInput2").value);
        let region1 = $w("#dropdown2").value;
        let region2 = $w("#dropdown3").value;
        let region3 = $w("#dropdown4").value;

        const regions = new Set();
        regions.add(region1);
        regions.add(region2);
        regions.add(region3);                
        regions.delete(""); 
        
        if(checkEmailBasicOk === false){
          $w("#text34").text = "An error occurred. You have already submitted this form";
          return false     
        } 

        if (regions.size !== 3) {
          $w("#text34").text = "An error occurred. Please select 3 different regions of interest";
          return false             
        }
      })
    }        
  }); 
});



function checkDatabase(collection, dbField, value) {
  wixData.query(collection)
  .eq(dbField, value)
  .find()
  .then((res)=>{console.log("RESULTS: ", res);
    if(res.items.length>0)  {return false} 
    else {return true}
  }).catch((err)=>{console.log(err);});
}