MMCT TEAM
Server IP : 153.92.220.142  /  Your IP : 216.73.216.29
Web Server : LiteSpeed
System : Linux nl-srv-web513.main-hosting.eu 5.14.0-503.34.1.el9_5.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Mar 27 06:00:50 EDT 2025 x86_64
User : u444427800 ( 444427800)
PHP Version : 8.1.32
Disable Function : system, exec, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : OFF  |  Python : OFF
Directory (0755) :  /home/u444427800/domains/professorchaiwala.com/public_html/../../cbsglko.com/public_html/js/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home/u444427800/domains/professorchaiwala.com/public_html/../../cbsglko.com/public_html/js/main.js
//    loader

window.addEventListener("load", () => {
  if (localStorage.getItem("hasCodeRunBefore") === null) {
    localStorage.setItem("hasCodeRunBefore", true);
    document.getElementById("preloader").style.background = "#fff";
    setTimeout(() => {
      document.getElementById("preloader").style.visibility = "hidden";
      document.getElementById("preloader").style.opacity = 0;
      document.getElementById("preloader").style.scale = 2;
    }, 3000);
  } else {
    setTimeout(() => {
      document.getElementById("preloader").style.visibility = "hidden";
      document.getElementById("preloader").style.opacity = 0;
      document.getElementById("preloader").style.scale = 2;
      // document.getElementById("loader").parentElement.style.background = "#fff";
    }, 1000);
  }
});

$(".company-slider").slick({
  infinite: true,
  dots: false,
  slidesToShow: 2,
  slidesToScroll: 2,
  arrows: false,
  autoplay: true,
  autoplaySpeed: 2000,
  speed: 2000,
  responsive: [
    {
      breakpoint: 1024,
      settings: {
        slidesToShow: 1,
        slidesToScroll: 1,
        infinite: true,
        dots: false,
        arrows: false,
      },
    },
    {
      breakpoint: 767,
      settings: {
        slidesToShow: 1,
        slidesToScroll: 1,
        arrows: false,
      },
    },
  ],
});

const dots = document.querySelectorAll(".dots");
Array.from(dots).forEach((btn) => {
  btn.querySelector("span").addEventListener("click", () => {
    btn.querySelector(".dropdown-menu").classList.toggle("active");
  });
  document.addEventListener("click", (e) => {
    if (
      !btn.contains(e.target) &&
      !btn.querySelector(".dropdown-menu").contains(e.target)
    ) {
      btn.querySelector(".dropdown-menu").classList.remove("active");
    }
  });
});

// show hide password
function showhidepassword() {
  var x = document.getElementById("password");
  if (x.type === "password") {
    x.type = "text";
  } else {
    x.type = "password";
  }
}
function showhidepasswordone() {
  var x = document.getElementById("confirm-password");
  if (x.type === "password") {
    x.type = "text";
  } else {
    x.type = "password";
  }
}
function showhidepasswordtwo() {
  var x = document.getElementById("login-password");
  if (x.type === "password") {
    x.type = "text";
  } else {
    x.type = "password";
  }
}
// show hide password

// header fix code on scroll
// $(window).scroll(function () {
//   var sticky = $(".header-section"),
//     scroll = $(window).scrollTop();
//   if (scroll >= 200) sticky.addClass("fixed");
//   else sticky.removeClass("fixed");
// });

$(".accordian-section .ac-head").click(function () {
  $(this)
    .next(".ac-body")
    .slideToggle()
    .parents(".accordian")
    .siblings()
    .children(".ac-body")
    .slideUp();
});

$(".header-section").append(
  '<span class="toggle"><i class="fa-solid fa-bars"></i></span>'
);

$(".option").click(function () {
  $(".languages").toggleClass("active");
});
$(".emp").click(function () {
  $(".employed-input-field").addClass("active");
});
$(".fresher").click(function () {
  $(".employed-input-field").removeClass("active");
});
$(".toggle").click(function () {
  $(".navbar").slideToggle();
  $(this).toggleClass("active");
});

$(".part-time-detail").click(function () {
  $(".individuals-range-option").addClass("active");
  $(".full-time").removeClass("active");
});
$(".full-time-detail").click(function () {
  $(".individuals-range-option").removeClass("active");
  $(".part-time-form").removeClass("active");
  $(".range-wise-date").removeClass("active");
  $(".full-time").addClass("active");
});

$(".individual-date-detail").click(function () {
  $(".part-time-form").addClass("active");
  $(".range-wise-date").removeClass("active");
});
$(".range-wise-detail").click(function () {
  $(".part-time-form").removeClass("active");
  $(".range-wise-date").addClass("active");
});
$(".open-set-date-time").click(function () {
  $(".set-date-time").addClass("active");
  $(".add-time-img").addClass("active");
});
$(".close-set-date-time").click(function () {
  $(".set-date-time").removeClass("active");
  $(".add-time-img").removeClass("active");
});

// $(".job-preferences").click(function () {
//   alert("Job preferences");
//   $(".job-preferences").addClass("active");
// });

$(".category").click(function () {
  // Hide all other category-items
  $(".category-items").not($(this).next()).slideUp();
  // Toggle the category-items that are next to the clicked category
  $(this).next(".category-items").slideToggle();
});

$(document).ready(function () {
  // Click event handler for the login button
  $("#view-cart").click(function (e) {
    $(".product-summary-modal").toggleClass("active");
    e.preventDefault();
  });
  $("#close").click(function (e) {
    $(".product-summary-modal").removeClass("active");
    e.preventDefault();
  });
});

jQuery.validator.addMethod(
  "alphabatewithspace",
  function (value, element) {
    return this.optional(element) || /^[a-zA-Z" "]+$/i.test(value);
  },
  "Only characters and space are allowed."
);

jQuery.validator.addMethod(
  "multicharacters",
  function (value, element) {
    return this.optional(element) || /^[a-zA-Z" "]+$/i.test(value);
  },
  "Enter valid address."
);
jQuery.validator.addMethod(
  "numwithspCharacter",
  function (value, element) {
    return (
      this.optional(element) ||
      /^[0-9!@#$%^&*()-_=+[\]{};:'",.<>?/\\|]*$/i.test(value)
    );
  },
  "Numeric & special character only."
);

jQuery.validator.addMethod(
  "gstwithalphanumeric",
  function (value, element) {
    return (
      this.optional(element) ||
      /^[0-9]{2}[A-Z]{5}[0-9]{4}[A-Z]{1}[1-9A-Z]{1}Z[0-9A-Z]{1}$/i.test(value)
    );
  },
  "Invalid GSTIN number."
);

jQuery.validator.addMethod(
  "regcodewithalphanumeric",
  function (value, element) {
    return this.optional(element) || /^[a-zA-Z0-9]+$/i.test(value);
  },
  "Only alphanumeric characters are allowed."
);

// Add a custom validation method for password matching
$.validator.addMethod(
  "passwordMatch",
  function (value, element) {
    // Define your password matching regular expression here
    var regex =
      /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*()-_=+{};:,<.>]).+$/;
    return this.optional(element) || regex.test(value);
  },
  "Password must contain at least one uppercase, one lowercase letter, one numeric digit, and one special character."
);

$(document).ready(function () {
  $('form[name="checkout_Form"]').validate({
    rules: {
      name: {
        required: true,
        alphabatewithspace: true,
        minlength: 2,
      },
      address: {
        required: true,
        alphabatewithspace: true,
        minlength: 2,
      },

      email: {
        required: true,
        email: true,
      },
      mobile: {
        required: true,
        number: true,
        minlength: 10,
        maxlength: 10,
      },
      alternate_mobile: {
        required: true,
        number: true,
        minlength: 10,
        maxlength: 10,
      },
      house_No: {
        required: true,
      },
      apartment_Name: {
        required: true,
        alphabatewithspace: true,
        minlength: 2,
      },
      apartment_Name: {
        required: true,
        alphabatewithspace: true,
        minlength: 2,
      },
      near_Place: {
        required: true,
        alphabatewithspace: true,
        minlength: 2,
      },
      country: {
        required: true,
      },
      state: {
        required: true,
      },
      district: {
        required: true,
      },
      address_Category: {
        required: true,
      },
      pincode: {
        required: true,
        number: true,
        minlength: 6,
        maxlength: 6,
      },
    },
    messages: {
      name: {
        required: "Name required",
        minlength: "Please enter, at least 2 characters",
      },

      email: {
        required: "Email address required.",
        minlength: "Please enter a valid email address.",
      },

      mobile: {
        required: "Mobile number required",
        minlength: "Please enter a valid mobile address.",
      },
      alternate_mobile: {
        required: "Mobile number required",
        minlength: "Please enter a valid mobile address.",
      },
      house_No: {
        required: "House number required",
      },
      apartment_Name: {
        required: "Apartment / Village / City required",
        minlength: "Please enter, at least 2 characters",
      },
      near_Place: {
        required: "Near by place required",
        minlength: "Please enter, at least 2 characters",
      },
      name: {
        required: "Name required",
        minlength: "Please enter, at least 2 characters",
      },
      country: {
        required: "Select at least one country",
      },
      state: {
        required: "Select at least one state",
      },
      district: {
        required: "Select at least one district",
      },
      address_Category: {
        required: "Select at least one category",
      },
      pincode: {
        required: "Pincode required",
      },
    },

    submitHandler: function (form) {
      // This function is called when the form is valid and submitted
      console.log("Form data submitted:");
      console.log($(form).serialize());
      return false; // Prevents the form from actually submitting
    },
  });
});

$(document).ready(function () {
  $('form[name="login_Form"]').validate({
    rules: {
      mobile: {
        required: true,
        number: true,
        minlength: 10,
        maxlength: 10,
      },
    },
    messages: {
      mobile: {
        required: "Mobile number required",
        minlength: "Please enter a valid mobile address.",
      },
    },

    submitHandler: function (form) {},
  });
});

$(document).ready(function () {
  $('form[name="login_Form"]').validate({
    rules: {
      mobile: {
        required: true,
        number: true,
        minlength: 10,
        maxlength: 10,
      },
    },
    messages: {
      mobile: {
        required: "Mobile number required",
        minlength: "Please enter a valid mobile address.",
      },
    },

    submitHandler: function (form) {},
  });
});

$(document).ready(function () {
  $('form[name="subscribe_Form"]').validate({
    rules: {
      email: {
        required: true,
        email: true,
      },
    },
    messages: {
      email: {
        required: "Email address required.",
        minlength: "Please enter a valid email address.",
      },
    },

    submitHandler: function (form) {},
  });
});

function toggle_multi_options() {
  var selectElement = document.getElementById("multi_options");
  var inputElement = document.getElementById("identity-name");
  var selectedOption = selectElement.options[selectElement.selectedIndex].value;

  // Toggle the visibility of the input field based on the selected option
  inputElement.style.display = selectedOption == "Others" ? "block" : "none";
}

function showHideDiv(selectId, className) {
  var selectElement = document.getElementById(selectId);
  var inputElements = document.getElementsByClassName(className);
  var selectedOption = selectElement.options[selectElement.selectedIndex].value;

  for (var i = 0; i < inputElements.length; i++) {
    inputElements[i].style.display = selectedOption === "Y" ? "block" : "none";
  }
}

document.addEventListener("DOMContentLoaded", function () {
  const form = document.getElementById("multi_Step_Form");
  const step = form.querySelectorAll(".step");
  let currentStep = 0;

  function showStep(stepIndex) {
    step.forEach((step, index) => {
      step.style.display = index === stepIndex ? "block" : "none";
    });
  }

  function validateStep() {
    // Implement validation logic for each step if needed
    return true;
  }

  function handleNext() {
    if (validateStep()) {
      currentStep++;
      showStep(currentStep);
    }
  }

  function handlePrevious() {
    currentStep--;
    showStep(currentStep);
  }

  function handleSubmit() {
    // Implement form submission logic
    form.submit();
  }

  // Add event listeners to buttons
  form.querySelectorAll(".next-btn").forEach((btn) => {
    btn.addEventListener("click", handleNext);
  });

  form.querySelectorAll(".prev-btn").forEach((btn) => {
    btn.addEventListener("click", handlePrevious);
  });

  form.addEventListener("submit", function (e) {
    e.preventDefault();
    handleSubmit();
  });

  // Show the first step initially
  showStep(currentStep);
});

$(document).ready(function () {
  $(".open-current-salary-popup").click(function () {
    $(".current-salary-popup").fadeIn();
  });
  $(".close-current-salary").click(function () {
    $(".current-salary-popup").fadeOut();
  });
  $(".open-notice-period-popup").click(function () {
    $(".notice-period-popup").fadeIn();
  });
  $(".close-notice-period").click(function () {
    $(".notice-period-popup").fadeOut();
  });
  $(".open-total-exp-popup").click(function () {
    $(".total-year-exp").fadeIn();
  });
  $(".close-total-year-exp").click(function () {
    $(".total-year-exp").fadeOut();
  });
  $(".open-add-exp-popup").click(function () {
    $(".add-exp-popup").fadeIn();
  });
  $(".close-add-exp-popup").click(function () {
    $(".add-exp-popup").fadeOut();
  });
  $(".open-add-edu-popup").click(function () {
    $(".add-education-popup").fadeIn();
  });
  $(".close-add-edu-popup").click(function () {
    $(".add-education-popup").fadeOut();
  });
  $(".open-highest-edu-popup").click(function () {
    $(".highest-education-popup").fadeIn();
  });
  $(".close-highest-education").click(function () {
    $(".highest-education-popup").fadeOut();
  });

  console.log()
  $(".open-language-popup").click(function () {
    $(".language-popup").fadeIn();
  });
  $(".close-language-popup").click(function () {
    $(".language-popup").fadeOut();
  });
  $(".open-other-detail-popup").click(function () {
    $(".other-detail-popup").fadeIn();
  });
  $(".close-other-detail").click(function () {
    $(".other-detail-popup").fadeOut();
  });
  $(".open-personal-info-popup").click(function () {
    $(".personal-info-popup").fadeIn();
  });
  $(".close-personal-info").click(function () {
    $(".personal-info-popup").fadeOut();
  });

  $(".open-edit-photo-popup").click(function () {
    $(".edit-photo-popup").fadeIn();
  });

  $(".close-edit-photo").click(function () {
    $(".edit-photo-popup").fadeOut();
  });
  $(".open-edit-schedule-popup").click(function () {
    $(".edit-schedule-popup").fadeIn();
  });

  $(".close-schedule-popup").click(function () {
    $(".edit-schedule-popup").fadeOut();
  });
});

// calendar

flatpickr("#rangeDate", {
  altInput: true,
  altFormat: "F j, Y",
  dateFormat: "d-m-Y",
  minDate: "today",
  mode: "range",
});

var datepickerCount = 1; // Initial count for unique IDs

function addRow() {
  var dateSectionClone = $(".individual-date:first").clone();
  datepickerCount++;

  // Set unique IDs for cloned datepicker elements
  dateSectionClone.attr("id", "individualDate" + datepickerCount);
  dateSectionClone
    .find("input[type=text]")
    .attr("id", "datepicker" + datepickerCount);

  dateSectionClone.find("input[type=text]").val(""); // Clear input values
  dateSectionClone.find(".delete-btn").show(); // Show delete button
  $(".individual-date").append(dateSectionClone);

  // Initialize flatpickr for the new datepicker
  $("#datepicker" + datepickerCount).flatpickr({
    altInput: true,
    altFormat: "F j, Y",
    dateFormat: "d-m-Y",
    minDate: "today",
  });
}

function deleteRow(element) {
  $(element).closest(".individual-date").remove();
}

// Hide delete button initially
$(document).ready(function () {
  $(".delete-btn").hide();
});

$(document).ready(function () {
  $(".datepicker").flatpickr({
    altInput: true,
    altFormat: "F j, Y",
    dateFormat: "d-m-Y",
    minDate: "today",
  });
});

$(document).ready(function () {
  $(".timepicker").mdtimepicker();
});

// function updateEndTime() {
//   const startTimeInput = $("#start-time");
//   const endTimeInput = $("#end-time");

//   // Get the selected start time
//   const startTime = new Date("2000-01-01 " + startTimeInput.val());

//   // Calculate end time by adding 8 hours
//   const endTime = new Date(startTime.getTime() + 8 * 60 * 60 * 1000);

//   // Format the end time as a string with AM/PM
//   const formattedEndTime = formatAMPM(endTime);

//   // Set the value of the end time input
//   endTimeInput.val(formattedEndTime);
// }

// function formatAMPM(date) {
//   let hours = date.getHours();
//   let minutes = date.getMinutes();
//   const ampm = hours >= 12 ? "PM" : "AM";

//   hours = hours % 12;
//   hours = hours ? hours : 12; // Handle midnight (00:00)

//   const formattedTime =
//     ("0" + hours).slice(-2) + ":" + ("0" + minutes).slice(-2) + " " + ampm;

//   return formattedTime;
// }

$(".specialization").multiSelect({});

$(document).ready(function () {
  $(".job-preferences ").click(function () {
    var tabId = $(this).data("tab");
    $(".time-filter").removeClass("active");
    $(".job-preferences").removeClass("active");
    $("#" + tabId).addClass("active");
    $(this).addClass("active");
  });
});
$(document).ready(function () {
  // Set the first tab link as active
  $(".job-preferences:first").addClass("tab-active");

  // Set the first tab content as active
  $(".tab-content .time-filter:first").addClass("active");

  $(".job-preferences").click(function () {
    var tabId = $(this).data("tab");
    $(".tab-content .time-filter").removeClass("active");
    $(".job-preferences").removeClass("tab-active");
    $("#" + tabId).addClass("active");
    $(this).addClass("tab-active");
  });
});

// pagination

const itemsPerPage = 3; // Number of items to show per page
const partTimeItems = document.querySelectorAll(
  "#filter-part-time .part-time-doctor"
);
const fullTimeItems = document.querySelectorAll(
  "#filter-full-time .part-time-doctor"
);
const partTimePaginationContainer = document.querySelector(
  "#filter-part-time .paginationContainer"
);
const fullTimePaginationContainer = document.querySelector(
  "#filter-full-time .paginationContainer"
);
const partTimePaginationControls = document.querySelector(
  "#filter-part-time .paginationControls"
);
const fullTimePaginationControls = document.querySelector(
  "#filter-full-time .paginationControls"
);
const partTimePageNumbersContainer = document.querySelector(
  "#filter-part-time .page-numbers"
);
const fullTimePageNumbersContainer = document.querySelector(
  "#filter-full-time .page-numbers"
);
let partTimeCurrentPage = 1;
let fullTimeCurrentPage = 1;

// Function to display items based on the current page
function displayItems(items, currentPage, paginationContainer) {
  const startIndex = (currentPage - 1) * itemsPerPage;
  const endIndex = startIndex + itemsPerPage;
  items.forEach((item, index) => {
    if (index >= startIndex && index < endIndex) {
      item.style.display = "block";
    } else {
      item.style.display = "none";
    }
  });
  paginationContainer.style.display = "block"; // Ensure pagination container is displayed
}

// Function to generate page numbers with dots
function generatePageNumbers(totalItems, currentPage, pageNumbersContainer) {
  const totalPages = Math.ceil(totalItems.length / itemsPerPage);
  pageNumbersContainer.innerHTML = "";

  let currentPageIndex = currentPage;
  const maxVisiblePages = 5; // Maximum number of visible page numbers

  for (let i = 1; i <= totalPages; i++) {
    if (
      i === 1 ||
      i === totalPages ||
      Math.abs(i - currentPageIndex) < Math.ceil(maxVisiblePages / 2) ||
      (i >= currentPageIndex - Math.floor(maxVisiblePages / 2) &&
        i <= currentPageIndex + Math.floor(maxVisiblePages / 2))
    ) {
      const button = document.createElement("button");
      button.textContent = i;
      button.addEventListener("click", () => {
        currentPage = i;
        displayItems(totalItems, currentPage, pageNumbersContainer.parentNode);
        updatePaginationButtons();
      });
      if (i === currentPage) {
        button.classList.add("active");
      }
      pageNumbersContainer.appendChild(button);
    } else if (pageNumbersContainer.lastChild.textContent !== "...") {
      const dot = document.createElement("span");
      dot.textContent = "...";
      pageNumbersContainer.appendChild(dot);
    }
  }
}

// Function to update pagination button states
function updatePaginationButtons() {
  const partTimePrevPageButton = document.querySelector(
    "#filter-part-time .prevPage"
  );
  const partTimeNextPageButton = document.querySelector(
    "#filter-part-time .nextPage"
  );
  const fullTimePrevPageButton = document.querySelector(
    "#filter-full-time .prevPage"
  );
  const fullTimeNextPageButton = document.querySelector(
    "#filter-full-time .nextPage"
  );

  partTimePrevPageButton.disabled = partTimeCurrentPage === 1;
  partTimeNextPageButton.disabled =
    partTimeCurrentPage === Math.ceil(partTimeItems.length / itemsPerPage);
  fullTimePrevPageButton.disabled = fullTimeCurrentPage === 1;
  fullTimeNextPageButton.disabled =
    fullTimeCurrentPage === Math.ceil(fullTimeItems.length / itemsPerPage);

  generatePageNumbers(
    partTimeItems,
    partTimeCurrentPage,
    partTimePageNumbersContainer
  );
  generatePageNumbers(
    fullTimeItems,
    fullTimeCurrentPage,
    fullTimePageNumbersContainer
  );
}

// Event listeners for previous and next buttons
document
  .querySelector("#filter-part-time .prevPage")
  .addEventListener("click", () => {
    if (partTimeCurrentPage > 1) {
      partTimeCurrentPage--;
      displayItems(
        partTimeItems,
        partTimeCurrentPage,
        partTimePaginationContainer
      );
      updatePaginationButtons();
    }
  });

document
  .querySelector("#filter-part-time .nextPage")
  .addEventListener("click", () => {
    if (partTimeCurrentPage < Math.ceil(partTimeItems.length / itemsPerPage)) {
      partTimeCurrentPage++;
      displayItems(
        partTimeItems,
        partTimeCurrentPage,
        partTimePaginationContainer
      );
      updatePaginationButtons();
    }
  });

document
  .querySelector("#filter-full-time .prevPage")
  .addEventListener("click", () => {
    if (fullTimeCurrentPage > 1) {
      fullTimeCurrentPage--;
      displayItems(
        fullTimeItems,
        fullTimeCurrentPage,
        fullTimePaginationContainer
      );
      updatePaginationButtons();
    }
  });

document
  .querySelector("#filter-full-time .nextPage")
  .addEventListener("click", () => {
    if (fullTimeCurrentPage < Math.ceil(fullTimeItems.length / itemsPerPage)) {
      fullTimeCurrentPage++;
      displayItems(
        fullTimeItems,
        fullTimeCurrentPage,
        fullTimePaginationContainer
      );
      updatePaginationButtons();
    }
  });

// Initialize pagination
displayItems(partTimeItems, partTimeCurrentPage, partTimePaginationContainer);
displayItems(fullTimeItems, fullTimeCurrentPage, fullTimePaginationContainer);
updatePaginationButtons();

MMCT - 2023