Styled loader and modal
This commit is contained in:
		@@ -5,18 +5,20 @@
 | 
			
		||||
 * @param {number} duration - Duration in ms.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
function showLoader(text = "Building...") {
 | 
			
		||||
// --- Loader helpers ---
 | 
			
		||||
function showLoader(text = "Uploading...") {
 | 
			
		||||
  const loader = document.getElementById("global-loader");
 | 
			
		||||
  if (loader) {
 | 
			
		||||
    loader.style.display = "flex";
 | 
			
		||||
    loader.classList.add("active");
 | 
			
		||||
    document.getElementById("loader-text").textContent = text;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
function hideLoader() {
 | 
			
		||||
  const loader = document.getElementById("global-loader");
 | 
			
		||||
  if (loader) loader.style.display = "none";
 | 
			
		||||
  if (loader) loader.classList.remove("active");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// --- Toast helpers ---
 | 
			
		||||
function showToast(message, type = "success", duration = 3000) {
 | 
			
		||||
  const container = document.getElementById("toast-container");
 | 
			
		||||
  if (!container) return;
 | 
			
		||||
 
 | 
			
		||||
@@ -16,13 +16,13 @@ function showToast(message, type = "success", duration = 3000) {
 | 
			
		||||
function showLoader(text = "Uploading...") {
 | 
			
		||||
  const loader = document.getElementById("global-loader");
 | 
			
		||||
  if (loader) {
 | 
			
		||||
    loader.style.display = "flex";
 | 
			
		||||
    loader.classList.add("active");
 | 
			
		||||
    document.getElementById("loader-text").textContent = text;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
function hideLoader() {
 | 
			
		||||
  const loader = document.getElementById("global-loader");
 | 
			
		||||
  if (loader) loader.style.display = "none";
 | 
			
		||||
  if (loader) loader.classList.remove("active");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
document.addEventListener("DOMContentLoaded", () => {
 | 
			
		||||
 
 | 
			
		||||
@@ -35,15 +35,16 @@ function showToast(message, type = "success", duration = 3000) {
 | 
			
		||||
function showLoader(text = "Uploading...") {
 | 
			
		||||
  const loader = document.getElementById("global-loader");
 | 
			
		||||
  if (loader) {
 | 
			
		||||
    loader.style.display = "flex";
 | 
			
		||||
    loader.classList.add("active");
 | 
			
		||||
    document.getElementById("loader-text").textContent = text;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
function hideLoader() {
 | 
			
		||||
  const loader = document.getElementById("global-loader");
 | 
			
		||||
  if (loader) loader.style.display = "none";
 | 
			
		||||
  if (loader) loader.classList.remove("active");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// --- Color Picker
 | 
			
		||||
function setupColorPicker(colorId, btnId, textId, initial) {
 | 
			
		||||
  const colorInput = document.getElementById(colorId);
 | 
			
		||||
  const colorBtn = document.getElementById(btnId);
 | 
			
		||||
 
 | 
			
		||||
@@ -2,13 +2,13 @@
 | 
			
		||||
function showLoader(text = "Uploading...") {
 | 
			
		||||
  const loader = document.getElementById("global-loader");
 | 
			
		||||
  if (loader) {
 | 
			
		||||
    loader.style.display = "flex";
 | 
			
		||||
    loader.classList.add("active");
 | 
			
		||||
    document.getElementById("loader-text").textContent = text;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
function hideLoader() {
 | 
			
		||||
  const loader = document.getElementById("global-loader");
 | 
			
		||||
  if (loader) loader.style.display = "none";
 | 
			
		||||
  if (loader) loader.classList.remove("active");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// --- Upload gallery images ---
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user