JSFiddle - React, Tailwind, and code Playground

by John Doe

HTML

<script src="https://code.jquery.com/ui/1.11.1/jquery-ui.min.js"></script>
<div class="delivery-date">
  <p>
    <label for="date">Select a date for delivery below:</label>
    <input id="date" type="text" name="properties[delivery-date]" readonly="readonly" style="background:white; width:30%" class="required" data-error="Please choose a delivery date." />
  </p>
    <div id="log"></div>
</div>

JavaScript

jQuery(function() {
  jQuery("#date").datepicker( { 
    // minDate: new Date(((new Date).getTime() + 49 * 60 * 60 * 1000) ), 
    minDate: checkBeforeBook(),
    maxDate: "+2M", // show up to 2 months
    dateFormat: 'dd/mm/yy'
    //foreShowDay: available_dates
  } );
});
  

/*==========  check time  ==========*/

// if time before 12pm, offer next day delivery

function checkBeforeBook(nextDayBook){

  var startTime = '10:00 PM';
  var endTime = '10:00 AM';

  var curr_time = getval();


  if (get24Hr(curr_time) > get24Hr(startTime) && get24Hr(curr_time) < get24Hr(endTime)) {
      // before 12pm - next day delivery available
      var nextDayBook = '+1d';
       $("#log").html('Next day available before 10pm');

  } else {
     // after 12pm - next day delivery unavailable
     var nextDayBook = '+2d';
      $("#log").html('Next day Booking not available! It is already past 10pm :( ');
  }
   
    return nextDayBook;
}
  function get24Hr(time){
      var hours = Number(time.match(/^(\d+)/)[1]);
      var AMPM = time.match(/\s(.*)$/)[1];
      if(AMPM == "PM" && hours<12) hours = hours+12;
      if(AMPM == "AM" && hours==12) hours = hours-12;
      
      var minutes = Number(time.match(/:(\d+)/)[1]);
      hours = hours*100+minutes;
      console.log(time +" - "+hours);
      return hours;
  }

  function getval() {
      var currentTime = new Date()
      var hours = currentTime.getHours()
      var minutes = currentTime.getMinutes()

      if (minutes < 10) minutes = "0" + minutes;

      var suffix = "AM";
      if (hours >= 12) {
          suffix = "PM";
          hours = hours - 12;
      }
      if (hours == 0) {
          hours = 12;
      }
      var current_time = hours + ":" + minutes + " " + suffix;

      return current_time;
			console.log(time +" - "+hours);
  
  
}