diff --git a/src/_nav.js b/src/_nav.js
index ce19d4e..99eb936 100644
--- a/src/_nav.js
+++ b/src/_nav.js
@@ -25,6 +25,7 @@ import {
cilAlarm,
cilFeaturedPlaylist,
cilLocationPin,
+ cilSettings,
} from "@coreui/icons";
import { CNavGroup, CNavItem, CNavTitle, CTabContent } from "@coreui/react";
@@ -36,13 +37,13 @@ const _nav = [
icon: ,
group: "",
},
- // {
- // component: CNavItem,
- // name: "Customers",
- // icon: ,
- // to: "/customers-details",
- // group: "Customers",
- // },
+ {
+ component: CNavItem,
+ name: "Customers",
+ icon: ,
+ to: "/customers-details",
+ group: "Customers",
+ },
// {
// component: CNavGroup,
@@ -192,8 +193,8 @@ const _nav = [
// },
{
component: CNavGroup,
- name: "Website Settings",
- icon: ,
+ name: "Settings",
+ icon: ,
group: "",
items: [
@@ -202,28 +203,35 @@ const _nav = [
name: "Banner",
icon: ,
to: "/banner",
- group: "Website Settings",
+ group: "Settings",
},
+ // {
+ // component: CNavItem,
+ // name: "Register Image",
+ // icon: ,
+ // to: "/registerImage",
+ // group: "Settings",
+ // },
+ // {
+ // component: CNavItem,
+ // name: "Login Image",
+ // icon: ,
+ // to: "/loginImage",
+ // group: "Settings",
+ // },
+ // {
+ // component: CNavItem,
+ // name: "Shop Page Image",
+ // icon: ,
+ // to: "/shopImage",
+ // group: "Settings",
+ // },
{
component: CNavItem,
- name: "Register Image",
- icon: ,
- to: "/registerImage",
- group: "Website Settings",
- },
- {
- component: CNavItem,
- name: "Login Image",
- icon: ,
- to: "/loginImage",
- group: "Website Settings",
- },
- {
- component: CNavItem,
- name: "Shop Page Image",
- icon: ,
- to: "/shopImage",
- group: "Website Settings",
+ name: "Web Images",
+ icon: ,
+ to: "/web_images",
+ group: "Settings",
},
// {
// component: CNavItem,
@@ -253,7 +261,43 @@ const _nav = [
name: "Content ",
icon: ,
to: "/content",
- group: "Website Settings",
+ group: "Settings",
+ },
+ {
+ component: CNavItem,
+ name: "Social Media",
+ icon: ,
+ to: "/socialmedia",
+ group: "Settings",
+ },
+ {
+ component: CNavItem,
+ name: "Application Name",
+ icon: ,
+ to: "/application/name",
+ group: "Settings",
+ },
+
+ {
+ component: CNavItem,
+ name: "Address",
+ icon: ,
+ to: "/address",
+ group: "Settings",
+ },
+ {
+ component: CNavItem,
+ name: "Logos",
+ icon: ,
+ to: "/logo",
+ group: "Settings",
+ },
+ {
+ component: CNavItem,
+ name: "Copyright Message",
+ icon: ,
+ to: "/copyright/message",
+ group: "Settings",
},
// {
// component: CNavItem,
@@ -264,51 +308,16 @@ const _nav = [
// },
],
},
- {
- component: CNavGroup,
- name: "Configuration",
- icon: ,
- group: "",
+ // {
+ // component: CNavGroup,
+ // name: "Configuration",
+ // icon: ,
+ // group: "",
- items: [
- {
- component: CNavItem,
- name: "Social Media",
- icon: ,
- to: "/socialmedia",
- group: "Configuration",
- },
- {
- component: CNavItem,
- name: "Application Name",
- icon: ,
- to: "/application/name",
- group: "Configuration",
- },
+ // items: [
- {
- component: CNavItem,
- name: "Address",
- icon: ,
- to: "/address",
- group: "Configuration",
- },
- {
- component: CNavItem,
- name: "Logos",
- icon: ,
- to: "/logo",
- group: "Configuration",
- },
- {
- component: CNavItem,
- name: "Copyright Message",
- icon: ,
- to: "/copyright/message",
- group: "Configuration",
- },
- ],
- },
+ // ],
+ // },
//Affiliate start
// {
// component: CNavGroup,
diff --git a/src/routes.js b/src/routes.js
index fd32e9f..abbff4c 100644
--- a/src/routes.js
+++ b/src/routes.js
@@ -22,6 +22,7 @@ import Socialmedia from "./views/configuration/Socialmedia.js";
import Address from "./views/configuration/Address.js";
import Logo from "./views/configuration/Logo.js";
import Login from "./views/pages/login/Login";
+import Web_Images from "./views/configuration/Web_Images";
// Appointments
import Appointments from "./views/Appointments/Appointments";
@@ -436,6 +437,13 @@ const routes = [
element: RegisterImage,
navName: "Website Related",
},
+
+ {
+ path: "/web_images",
+ name: "Web Images",
+ element: Web_Images,
+ navName: "Settings",
+ },
{
path: "/loginImage",
name: "LoginImage",
diff --git a/src/views/Banner/banner.js b/src/views/Banner/banner.js
index 301f6b0..7e12ff4 100644
--- a/src/views/Banner/banner.js
+++ b/src/views/Banner/banner.js
@@ -595,6 +595,7 @@ const Banners = () => {
Banner Name |
Action |
+ Dimension |
@@ -675,6 +676,7 @@ const Banners = () => {
Delete
+ 1600 x 900 pixels |
))
)}
diff --git a/src/views/Images/LoginImage.js b/src/views/Images/LoginImage.js
index 27ccf09..534affe 100644
--- a/src/views/Images/LoginImage.js
+++ b/src/views/Images/LoginImage.js
@@ -2,13 +2,13 @@ import React, { useState, useEffect } from "react";
import axios from "axios";
import { isAutheticated } from "src/auth";
import {
- Button,
- Box,
- IconButton,
- Modal,
- Pagination,
- TextField,
- Typography,
+ Button,
+ Box,
+ IconButton,
+ Modal,
+ Pagination,
+ TextField,
+ Typography,
} from "@mui/material";
import CloseIcon from "@mui/icons-material/Close";
import { ClipLoader } from "react-spinners";
@@ -17,303 +17,303 @@ import CloudUploadIcon from "@mui/icons-material/CloudUpload";
import DeleteSharpIcon from "@mui/icons-material/DeleteSharp";
const style = {
- position: "absolute",
- top: "50%",
- left: "50%",
- transform: "translate(-50%, -50%)",
- width: 400,
- bgcolor: "background.paper",
- borderRadius: "0.5rem",
- boxShadow: 24,
- width: "500px",
+ position: "absolute",
+ top: "50%",
+ left: "50%",
+ transform: "translate(-50%, -50%)",
+ width: 400,
+ bgcolor: "background.paper",
+ borderRadius: "0.5rem",
+ boxShadow: 24,
+ width: "500px",
};
const Banners = () => {
- const token = isAutheticated();
- const [loading, setLoading] = useState(true);
- const [updating, setUpdating] = useState(true); // for loading state
- // const [isUpdate, setIsUpdate] = useState(false); // for edit state
- const [saveLoding, setSaveLoading] = useState(true);
- const [edit, setEdit] = useState(false);
- const [bannerName, setBannerName] = useState("");
- const [bannerImage, setBannerImage] = useState("");
- const [error, setError] = useState("");
- const [bannerId, setBannerId] = useState("");
- const [banner, setBanner] = useState([]);
- const [itemPerPage, setItemPerPage] = useState(10);
- const [page, setPage] = useState(1);
- const [open, setOpen] = useState(false);
- const [olderBannerName, setOlderBaannerName] = useState("");
- const [olderImage, setOlderImage] = useState("");
+ const token = isAutheticated();
+ const [loading, setLoading] = useState(true);
+ const [updating, setUpdating] = useState(true); // for loading state
+ // const [isUpdate, setIsUpdate] = useState(false); // for edit state
+ const [saveLoding, setSaveLoading] = useState(true);
+ const [edit, setEdit] = useState(false);
+ const [bannerName, setBannerName] = useState("");
+ const [bannerImage, setBannerImage] = useState("");
+ const [error, setError] = useState("");
+ const [bannerId, setBannerId] = useState("");
+ const [banner, setBanner] = useState([]);
+ const [itemPerPage, setItemPerPage] = useState(10);
+ const [page, setPage] = useState(1);
+ const [open, setOpen] = useState(false);
+ const [olderBannerName, setOlderBaannerName] = useState("");
+ const [olderImage, setOlderImage] = useState("");
- const handleOpen = () => setOpen(true);
- const handleClose = () => {
- setOpen(false);
- // setUpdating(false);
- setEdit(false);
+ const handleOpen = () => setOpen(true);
+ const handleClose = () => {
+ setOpen(false);
+ // setUpdating(false);
+ setEdit(false);
- setBannerName("");
+ setBannerName("");
+ setBannerId("");
+ setOlderImage("");
+ setBannerImage("");
+ };
+
+ const getBanner = async () => {
+ try {
+ const response = await axios.get("/api/loginImage/getImage", {
+ // headers: {
+ // Authorization: `Bearer ${token}`,
+ // },
+ });
+
+ if (response.status === 200) {
+ // console.log(response);
+ setBanner(response?.data?.image);
+ setLoading(false);
+ }
+ } catch (error) {
+ swal({
+ title: error,
+ text: " please login to access the resource ",
+ icon: "error",
+ button: "Retry",
+ dangerMode: true,
+ });
+ }
+ };
+
+ useEffect(() => {
+ getBanner();
+ }, []);
+ // }, [token, banner]);
+
+ const handleEditClick = (_id, bannerImage) => {
+ setOpen(true);
+ console.log("bannerImage", bannerImage);
+ setOlderImage(bannerImage);
+
+ setBannerId(_id);
+ setOlderBaannerName(bannerName);
+ setEdit(true);
+ // setUpdating(false);
+ };
+ // const bannerNamesArray = [];
+ // const setBannerNamesArray = () => {
+ // banner &&
+ // banner.map((banner) => {
+ // bannerNamesArray.push(banner.bannerName.toLowerCase());
+ // });
+ // };
+ // setBannerNamesArray();
+
+ const handleUpdate = () => {
+ // const filteredArrayNames = bannerNamesArray.filter(
+ // (item) => item !== olderBannerName.toLowerCase()
+ // );
+ // console.log(filteredArrayNames, "filter");
+ // const bannerExits = filteredArrayNames.includes(bannerName.toLowerCase());
+ // if (bannerExits) {
+ // swal({
+ // title: "Warning",
+ // text: "Banner already exists ",
+ // icon: "error",
+ // button: "Retry",
+ // dangerMode: true,
+ // });
+ // return;
+ // }
+
+ if (!bannerImage && !olderImage) {
+ swal({
+ title: "Warning",
+ text: "Please fill all the required fields!",
+ icon: "error",
+ button: "Retry",
+ dangerMode: true,
+ });
+ return;
+ }
+ setUpdating(false);
+ const formData = new FormData();
+
+ formData.append("bannerImage", bannerImage);
+
+ formData.append("olderImage", JSON.stringify(olderImage));
+
+ axios
+ .patch(`/api/loginImage/update/${bannerId}`, formData, {
+ headers: {
+ Authorization: `Bearer ${token}`,
+ },
+ })
+ .then((res) => {
+ // setUpdating(true);
+ // setIsUpdate(false);
+ handleClose();
setBannerId("");
+ setBannerName("");
+ setBannerImage("");
setOlderImage("");
- setBannerImage("");
- };
-
- const getBanner = async () => {
- try {
- const response = await axios.get("/api/loginImage/getImage", {
- // headers: {
- // Authorization: `Bearer ${token}`,
- // },
- });
-
- if (response.status === 200) {
- // console.log(response);
- setBanner(response?.data?.image);
- setLoading(false);
- }
- } catch (error) {
- swal({
- title: error,
- text: " please login to access the resource ",
- icon: "error",
- button: "Retry",
- dangerMode: true,
- });
- }
- };
-
- useEffect(() => {
- getBanner();
- }, []);
- // }, [token, banner]);
-
- const handleEditClick = (_id, bannerImage) => {
- setOpen(true);
- console.log("bannerImage", bannerImage);
- setOlderImage(bannerImage);
-
- setBannerId(_id);
- setOlderBaannerName(bannerName);
- setEdit(true);
- // setUpdating(false);
- };
- // const bannerNamesArray = [];
- // const setBannerNamesArray = () => {
- // banner &&
- // banner.map((banner) => {
- // bannerNamesArray.push(banner.bannerName.toLowerCase());
- // });
- // };
- // setBannerNamesArray();
-
- const handleUpdate = () => {
- // const filteredArrayNames = bannerNamesArray.filter(
- // (item) => item !== olderBannerName.toLowerCase()
- // );
- // console.log(filteredArrayNames, "filter");
- // const bannerExits = filteredArrayNames.includes(bannerName.toLowerCase());
- // if (bannerExits) {
- // swal({
- // title: "Warning",
- // text: "Banner already exists ",
- // icon: "error",
- // button: "Retry",
- // dangerMode: true,
- // });
- // return;
- // }
-
- if ((!bannerImage && !olderImage)) {
- swal({
- title: "Warning",
- text: "Please fill all the required fields!",
- icon: "error",
- button: "Retry",
- dangerMode: true,
- });
- return;
- }
- setUpdating(false);
- const formData = new FormData();
-
- formData.append("bannerImage", bannerImage);
-
- formData.append("olderImage", JSON.stringify(olderImage));
-
- axios
- .patch(`/api/loginImage/update/${bannerId}`, formData, {
- headers: {
- Authorization: `Bearer ${token}`,
- },
- })
- .then((res) => {
- // setUpdating(true);
- // setIsUpdate(false);
- handleClose();
- setBannerId("");
- setBannerName("");
- setBannerImage("");
- setOlderImage("");
- setUpdating(true);
- setEdit(false);
- swal({
- title: "Congratulations!!",
- text: "The banner was updated successfully!",
- icon: "success",
- button: "OK",
- });
- // getCategories(); // Refresh the category list after updating
- })
- .catch((err) => {
- // console.log(err);
- swal({
- title: "Sorry, please try again",
- text: err,
- icon: "error",
- button: "Retry",
- dangerMode: true,
- });
- setUpdating(true);
- });
- };
-
- const handleDelete = (_id) => {
+ setUpdating(true);
+ setEdit(false);
swal({
- title: "Are you sure?",
- icon: "error",
- buttons: {
- Yes: { text: "Yes", value: true },
- Cancel: { text: "Cancel", value: "cancel" },
- },
- }).then((value) => {
- if (value === true) {
- axios
- .delete(`/api/loginImage/delete/${_id}`, {
- headers: {
- Authorization: `Bearer ${token}`,
- },
- })
- .then((res) => {
- swal({
- title: "Congratulations!!",
- text: "The banner was deleted successfully!",
- icon: "success",
- button: "OK",
- });
- // getCategories(); // Refresh the category list after deleting
- })
- .catch((err) => {
- swal({
- title: "",
- text: "Something went wrong!",
- icon: "error",
- button: "Retry",
- dangerMode: true,
- });
- });
- }
+ title: "Congratulations!!",
+ text: "The banner was updated successfully!",
+ icon: "success",
+ button: "OK",
});
- };
-
- const handleSaveBanner = async () => {
- // const bannerExits = bannerNamesArray.includes(bannerName.toLowerCase());
- // if (bannerExits) {
- // swal({
- // title: "Warning",
- // text: "Banner Already exits.",
- // icon: "error",
- // button: "Retry",
- // dangerMode: true,
- // });
- // return;
- // }
- if (!bannerImage) {
- swal({
- title: "Warning",
- text: "Please fill all the required fields!",
- icon: "error",
- button: "Retry",
- dangerMode: true,
- });
- return;
- }
- setSaveLoading(false);
- setLoading(true);
- const formData = new FormData();
- formData.append("bannerName", bannerName);
- formData.append("bannerImage", bannerImage);
+ // getCategories(); // Refresh the category list after updating
+ })
+ .catch((err) => {
+ // console.log(err);
+ swal({
+ title: "Sorry, please try again",
+ text: err,
+ icon: "error",
+ button: "Retry",
+ dangerMode: true,
+ });
+ setUpdating(true);
+ });
+ };
+ const handleDelete = (_id) => {
+ swal({
+ title: "Are you sure?",
+ icon: "error",
+ buttons: {
+ Yes: { text: "Yes", value: true },
+ Cancel: { text: "Cancel", value: "cancel" },
+ },
+ }).then((value) => {
+ if (value === true) {
axios
- .post("/api/loginImage/add", formData, {
- headers: {
- Authorization: `Bearer ${token}`,
- "Content-Type": "multipart/formdata",
- },
- })
- .then((response) => {
- if (response.status === 201) {
- setOpen(false);
- setLoading(false);
- setSaveLoading(true);
- setBannerName("");
- setBannerImage("");
- setOlderImage("");
- swal({
- title: "Added",
- text: "New Banner added successfully!",
- icon: "success",
- button: "OK",
- });
- // getCategories(); // Refresh the category list after adding
- }
- })
- .catch((error) => {
- setSaveLoading(true);
- swal({
- title: error,
- text: "something went wrong",
- icon: "error",
- button: "Retry",
- dangerMode: true,
- });
+ .delete(`/api/loginImage/delete/${_id}`, {
+ headers: {
+ Authorization: `Bearer ${token}`,
+ },
+ })
+ .then((res) => {
+ swal({
+ title: "Congratulations!!",
+ text: "The banner was deleted successfully!",
+ icon: "success",
+ button: "OK",
});
- };
- // const getPageCount = () => {
- // return Math.max(1, Math.ceil(banner?.length / itemPerPage));
- // };
+ // getCategories(); // Refresh the category list after deleting
+ })
+ .catch((err) => {
+ swal({
+ title: "",
+ text: "Something went wrong!",
+ icon: "error",
+ button: "Retry",
+ dangerMode: true,
+ });
+ });
+ }
+ });
+ };
- const handleFileChange = (e) => {
- const files = e.target.files[0];
+ const handleSaveBanner = async () => {
+ // const bannerExits = bannerNamesArray.includes(bannerName.toLowerCase());
+ // if (bannerExits) {
+ // swal({
+ // title: "Warning",
+ // text: "Banner Already exits.",
+ // icon: "error",
+ // button: "Retry",
+ // dangerMode: true,
+ // });
+ // return;
+ // }
+ if (!bannerImage) {
+ swal({
+ title: "Warning",
+ text: "Please fill all the required fields!",
+ icon: "error",
+ button: "Retry",
+ dangerMode: true,
+ });
+ return;
+ }
+ setSaveLoading(false);
+ setLoading(true);
+ const formData = new FormData();
+ formData.append("bannerName", bannerName);
+ formData.append("bannerImage", bannerImage);
- // Check file types and append to selectedFiles
- const allowedTypes = ["image/jpeg", "image/png", "image/jpg"];
- if (allowedTypes.includes(files.type)) {
- setBannerImage(files);
+ axios
+ .post("/api/loginImage/add", formData, {
+ headers: {
+ Authorization: `Bearer ${token}`,
+ "Content-Type": "multipart/formdata",
+ },
+ })
+ .then((response) => {
+ if (response.status === 201) {
+ setOpen(false);
+ setLoading(false);
+ setSaveLoading(true);
+ setBannerName("");
+ setBannerImage("");
+ setOlderImage("");
+ swal({
+ title: "Added",
+ text: "New Banner added successfully!",
+ icon: "success",
+ button: "OK",
+ });
+ // getCategories(); // Refresh the category list after adding
}
- };
- const handeldeleteImage = () => {
- setBannerImage("");
- };
- return (
-
-
-
-
-
-
{
+ // return Math.max(1, Math.ceil(banner?.length / itemPerPage));
+ // };
+
+ const handleFileChange = (e) => {
+ const files = e.target.files[0];
+
+ // Check file types and append to selectedFiles
+ const allowedTypes = ["image/jpeg", "image/png", "image/jpg"];
+ if (allowedTypes.includes(files.type)) {
+ setBannerImage(files);
+ }
+ };
+ const handeldeleteImage = () => {
+ setBannerImage("");
+ };
+ return (
+
+
+
+
+
+
-
- Login Image
-
+ >
+
+ Login Image
+
-
- {/*
-
-
-
+ >
+ Close
+
+
+
+
+
+
+
+
-
-
-
-
-
-
- {/*
+
+
+
+
+
+
+ {/*
*/}
-
-
+
+
-
-
-
-
- Image |
+
+
+
+
+ Image |
-
- Action |
-
-
-
- {!loading && banner?.length === 0 && (
-
-
- {
- // navigate("/testimonial/new", { replace: true });
- // }}
- >
- Add New Image
-
- |
-
- )}
- {loading ? (
-
-
- Loading...
- |
-
- ) : (
- banner &&
- banner
- .map((item, i) => (
-
-
-
- {/* {item?.image} */}
- { }
- |
- {/*
+ | Action |
+ Dimension |
+
+
+
+ {!loading && banner?.length === 0 && (
+
+
+ {
+ // navigate("/testimonial/new", { replace: true });
+ // }}
+ >
+ Add New Image
+
+ |
+ Dimension |
+
+ )}
+ {loading ? (
+
+
+ Loading...
+ |
+
+ ) : (
+ banner &&
+ banner.map((item, i) => (
+
+
+
+ {/* {item?.image} */}
+ {}
+ |
+ {/*
{item.bannerName}
| */}
-
-
- handleEditClick(
- item._id,
- item.image
- )
- }
- >
- Edit
-
- {/*
+
+ handleEditClick(item._id, item.image)
+ }
+ >
+ Edit
+
+ {/* {
>
view
*/}
- |
-
- ))
- )}
-
-
-
+
+ 800 x 600 pixels |
+
+ ))
+ )}
+
+
+
- {/*
+ {/*
{
onChange={(event, value) => setPage(value)}
/>
*/}
-
-
-
-
+
+
- );
+
+
+ );
};
export default Banners;
diff --git a/src/views/Images/RegisterImage.js b/src/views/Images/RegisterImage.js
index f28ea65..b06baa6 100644
--- a/src/views/Images/RegisterImage.js
+++ b/src/views/Images/RegisterImage.js
@@ -518,6 +518,7 @@ const Banners = () => {
Image |
Action |
+
Dimension |
@@ -577,6 +578,7 @@ const Banners = () => {
Edit
+ 800 x 600 pixels |
))
)}
diff --git a/src/views/Images/ShopImage.js b/src/views/Images/ShopImage.js
index 6795464..2f42ef3 100644
--- a/src/views/Images/ShopImage.js
+++ b/src/views/Images/ShopImage.js
@@ -2,13 +2,13 @@ import React, { useState, useEffect } from "react";
import axios from "axios";
import { isAutheticated } from "src/auth";
import {
- Button,
- Box,
- IconButton,
- Modal,
- Pagination,
- TextField,
- Typography,
+ Button,
+ Box,
+ IconButton,
+ Modal,
+ Pagination,
+ TextField,
+ Typography,
} from "@mui/material";
import CloseIcon from "@mui/icons-material/Close";
import { ClipLoader } from "react-spinners";
@@ -17,303 +17,303 @@ import CloudUploadIcon from "@mui/icons-material/CloudUpload";
import DeleteSharpIcon from "@mui/icons-material/DeleteSharp";
const style = {
- position: "absolute",
- top: "50%",
- left: "50%",
- transform: "translate(-50%, -50%)",
- width: 400,
- bgcolor: "background.paper",
- borderRadius: "0.5rem",
- boxShadow: 24,
- width: "500px",
+ position: "absolute",
+ top: "50%",
+ left: "50%",
+ transform: "translate(-50%, -50%)",
+ width: 400,
+ bgcolor: "background.paper",
+ borderRadius: "0.5rem",
+ boxShadow: 24,
+ width: "500px",
};
const Banners = () => {
- const token = isAutheticated();
- const [loading, setLoading] = useState(true);
- const [updating, setUpdating] = useState(true); // for loading state
- // const [isUpdate, setIsUpdate] = useState(false); // for edit state
- const [saveLoding, setSaveLoading] = useState(true);
- const [edit, setEdit] = useState(false);
- const [bannerName, setBannerName] = useState("");
- const [bannerImage, setBannerImage] = useState("");
- const [error, setError] = useState("");
- const [bannerId, setBannerId] = useState("");
- const [banner, setBanner] = useState([]);
- const [itemPerPage, setItemPerPage] = useState(10);
- const [page, setPage] = useState(1);
- const [open, setOpen] = useState(false);
- const [olderBannerName, setOlderBaannerName] = useState("");
- const [olderImage, setOlderImage] = useState("");
+ const token = isAutheticated();
+ const [loading, setLoading] = useState(true);
+ const [updating, setUpdating] = useState(true); // for loading state
+ // const [isUpdate, setIsUpdate] = useState(false); // for edit state
+ const [saveLoding, setSaveLoading] = useState(true);
+ const [edit, setEdit] = useState(false);
+ const [bannerName, setBannerName] = useState("");
+ const [bannerImage, setBannerImage] = useState("");
+ const [error, setError] = useState("");
+ const [bannerId, setBannerId] = useState("");
+ const [banner, setBanner] = useState([]);
+ const [itemPerPage, setItemPerPage] = useState(10);
+ const [page, setPage] = useState(1);
+ const [open, setOpen] = useState(false);
+ const [olderBannerName, setOlderBaannerName] = useState("");
+ const [olderImage, setOlderImage] = useState("");
- const handleOpen = () => setOpen(true);
- const handleClose = () => {
- setOpen(false);
- // setUpdating(false);
- setEdit(false);
+ const handleOpen = () => setOpen(true);
+ const handleClose = () => {
+ setOpen(false);
+ // setUpdating(false);
+ setEdit(false);
- setBannerName("");
+ setBannerName("");
+ setBannerId("");
+ setOlderImage("");
+ setBannerImage("");
+ };
+
+ const getBanner = async () => {
+ try {
+ const response = await axios.get("/api/shopImage/getImage", {
+ // headers: {
+ // Authorization: `Bearer ${token}`,
+ // },
+ });
+
+ if (response.status === 200) {
+ // console.log(response);
+ setBanner(response?.data?.image);
+ setLoading(false);
+ }
+ } catch (error) {
+ swal({
+ title: error,
+ text: " please login to access the resource ",
+ icon: "error",
+ button: "Retry",
+ dangerMode: true,
+ });
+ }
+ };
+
+ useEffect(() => {
+ getBanner();
+ }, []);
+ // }, [token, banner]);
+
+ const handleEditClick = (_id, bannerImage) => {
+ setOpen(true);
+ console.log("bannerImage", bannerImage);
+ setOlderImage(bannerImage);
+
+ setBannerId(_id);
+ setOlderBaannerName(bannerName);
+ setEdit(true);
+ // setUpdating(false);
+ };
+ // const bannerNamesArray = [];
+ // const setBannerNamesArray = () => {
+ // banner &&
+ // banner.map((banner) => {
+ // bannerNamesArray.push(banner.bannerName.toLowerCase());
+ // });
+ // };
+ // setBannerNamesArray();
+
+ const handleUpdate = () => {
+ // const filteredArrayNames = bannerNamesArray.filter(
+ // (item) => item !== olderBannerName.toLowerCase()
+ // );
+ // console.log(filteredArrayNames, "filter");
+ // const bannerExits = filteredArrayNames.includes(bannerName.toLowerCase());
+ // if (bannerExits) {
+ // swal({
+ // title: "Warning",
+ // text: "Banner already exists ",
+ // icon: "error",
+ // button: "Retry",
+ // dangerMode: true,
+ // });
+ // return;
+ // }
+
+ if (!bannerImage && !olderImage) {
+ swal({
+ title: "Warning",
+ text: "Please fill all the required fields!",
+ icon: "error",
+ button: "Retry",
+ dangerMode: true,
+ });
+ return;
+ }
+ setUpdating(false);
+ const formData = new FormData();
+
+ formData.append("bannerImage", bannerImage);
+
+ formData.append("olderImage", JSON.stringify(olderImage));
+
+ axios
+ .patch(`/api/shopImage/update/${bannerId}`, formData, {
+ headers: {
+ Authorization: `Bearer ${token}`,
+ },
+ })
+ .then((res) => {
+ // setUpdating(true);
+ // setIsUpdate(false);
+ handleClose();
setBannerId("");
+ setBannerName("");
+ setBannerImage("");
setOlderImage("");
- setBannerImage("");
- };
-
- const getBanner = async () => {
- try {
- const response = await axios.get("/api/shopImage/getImage", {
- // headers: {
- // Authorization: `Bearer ${token}`,
- // },
- });
-
- if (response.status === 200) {
- // console.log(response);
- setBanner(response?.data?.image);
- setLoading(false);
- }
- } catch (error) {
- swal({
- title: error,
- text: " please login to access the resource ",
- icon: "error",
- button: "Retry",
- dangerMode: true,
- });
- }
- };
-
- useEffect(() => {
- getBanner();
- }, []);
- // }, [token, banner]);
-
- const handleEditClick = (_id, bannerImage) => {
- setOpen(true);
- console.log("bannerImage", bannerImage);
- setOlderImage(bannerImage);
-
- setBannerId(_id);
- setOlderBaannerName(bannerName);
- setEdit(true);
- // setUpdating(false);
- };
- // const bannerNamesArray = [];
- // const setBannerNamesArray = () => {
- // banner &&
- // banner.map((banner) => {
- // bannerNamesArray.push(banner.bannerName.toLowerCase());
- // });
- // };
- // setBannerNamesArray();
-
- const handleUpdate = () => {
- // const filteredArrayNames = bannerNamesArray.filter(
- // (item) => item !== olderBannerName.toLowerCase()
- // );
- // console.log(filteredArrayNames, "filter");
- // const bannerExits = filteredArrayNames.includes(bannerName.toLowerCase());
- // if (bannerExits) {
- // swal({
- // title: "Warning",
- // text: "Banner already exists ",
- // icon: "error",
- // button: "Retry",
- // dangerMode: true,
- // });
- // return;
- // }
-
- if ((!bannerImage && !olderImage)) {
- swal({
- title: "Warning",
- text: "Please fill all the required fields!",
- icon: "error",
- button: "Retry",
- dangerMode: true,
- });
- return;
- }
- setUpdating(false);
- const formData = new FormData();
-
- formData.append("bannerImage", bannerImage);
-
- formData.append("olderImage", JSON.stringify(olderImage));
-
- axios
- .patch(`/api/shopImage/update/${bannerId}`, formData, {
- headers: {
- Authorization: `Bearer ${token}`,
- },
- })
- .then((res) => {
- // setUpdating(true);
- // setIsUpdate(false);
- handleClose();
- setBannerId("");
- setBannerName("");
- setBannerImage("");
- setOlderImage("");
- setUpdating(true);
- setEdit(false);
- swal({
- title: "Congratulations!!",
- text: "The banner was updated successfully!",
- icon: "success",
- button: "OK",
- });
- // getCategories(); // Refresh the category list after updating
- })
- .catch((err) => {
- // console.log(err);
- swal({
- title: "Sorry, please try again",
- text: err,
- icon: "error",
- button: "Retry",
- dangerMode: true,
- });
- setUpdating(true);
- });
- };
-
- const handleDelete = (_id) => {
+ setUpdating(true);
+ setEdit(false);
swal({
- title: "Are you sure?",
- icon: "error",
- buttons: {
- Yes: { text: "Yes", value: true },
- Cancel: { text: "Cancel", value: "cancel" },
- },
- }).then((value) => {
- if (value === true) {
- axios
- .delete(`/api/shopImage/delete/${_id}`, {
- headers: {
- Authorization: `Bearer ${token}`,
- },
- })
- .then((res) => {
- swal({
- title: "Congratulations!!",
- text: "The banner was deleted successfully!",
- icon: "success",
- button: "OK",
- });
- // getCategories(); // Refresh the category list after deleting
- })
- .catch((err) => {
- swal({
- title: "",
- text: "Something went wrong!",
- icon: "error",
- button: "Retry",
- dangerMode: true,
- });
- });
- }
+ title: "Congratulations!!",
+ text: "The banner was updated successfully!",
+ icon: "success",
+ button: "OK",
});
- };
-
- const handleSaveBanner = async () => {
- // const bannerExits = bannerNamesArray.includes(bannerName.toLowerCase());
- // if (bannerExits) {
- // swal({
- // title: "Warning",
- // text: "Banner Already exits.",
- // icon: "error",
- // button: "Retry",
- // dangerMode: true,
- // });
- // return;
- // }
- if (!bannerImage) {
- swal({
- title: "Warning",
- text: "Please fill all the required fields!",
- icon: "error",
- button: "Retry",
- dangerMode: true,
- });
- return;
- }
- setSaveLoading(false);
- setLoading(true);
- const formData = new FormData();
- formData.append("bannerName", bannerName);
- formData.append("bannerImage", bannerImage);
+ // getCategories(); // Refresh the category list after updating
+ })
+ .catch((err) => {
+ // console.log(err);
+ swal({
+ title: "Sorry, please try again",
+ text: err,
+ icon: "error",
+ button: "Retry",
+ dangerMode: true,
+ });
+ setUpdating(true);
+ });
+ };
+ const handleDelete = (_id) => {
+ swal({
+ title: "Are you sure?",
+ icon: "error",
+ buttons: {
+ Yes: { text: "Yes", value: true },
+ Cancel: { text: "Cancel", value: "cancel" },
+ },
+ }).then((value) => {
+ if (value === true) {
axios
- .post("/api/shopImage/add", formData, {
- headers: {
- Authorization: `Bearer ${token}`,
- "Content-Type": "multipart/formdata",
- },
- })
- .then((response) => {
- if (response.status === 201) {
- setOpen(false);
- setLoading(false);
- setSaveLoading(true);
- setBannerName("");
- setBannerImage("");
- setOlderImage("");
- swal({
- title: "Added",
- text: "New Banner added successfully!",
- icon: "success",
- button: "OK",
- });
- // getCategories(); // Refresh the category list after adding
- }
- })
- .catch((error) => {
- setSaveLoading(true);
- swal({
- title: error,
- text: "something went wrong",
- icon: "error",
- button: "Retry",
- dangerMode: true,
- });
+ .delete(`/api/shopImage/delete/${_id}`, {
+ headers: {
+ Authorization: `Bearer ${token}`,
+ },
+ })
+ .then((res) => {
+ swal({
+ title: "Congratulations!!",
+ text: "The banner was deleted successfully!",
+ icon: "success",
+ button: "OK",
});
- };
- // const getPageCount = () => {
- // return Math.max(1, Math.ceil(banner?.length / itemPerPage));
- // };
+ // getCategories(); // Refresh the category list after deleting
+ })
+ .catch((err) => {
+ swal({
+ title: "",
+ text: "Something went wrong!",
+ icon: "error",
+ button: "Retry",
+ dangerMode: true,
+ });
+ });
+ }
+ });
+ };
- const handleFileChange = (e) => {
- const files = e.target.files[0];
+ const handleSaveBanner = async () => {
+ // const bannerExits = bannerNamesArray.includes(bannerName.toLowerCase());
+ // if (bannerExits) {
+ // swal({
+ // title: "Warning",
+ // text: "Banner Already exits.",
+ // icon: "error",
+ // button: "Retry",
+ // dangerMode: true,
+ // });
+ // return;
+ // }
+ if (!bannerImage) {
+ swal({
+ title: "Warning",
+ text: "Please fill all the required fields!",
+ icon: "error",
+ button: "Retry",
+ dangerMode: true,
+ });
+ return;
+ }
+ setSaveLoading(false);
+ setLoading(true);
+ const formData = new FormData();
+ formData.append("bannerName", bannerName);
+ formData.append("bannerImage", bannerImage);
- // Check file types and append to selectedFiles
- const allowedTypes = ["image/jpeg", "image/png", "image/jpg"];
- if (allowedTypes.includes(files.type)) {
- setBannerImage(files);
+ axios
+ .post("/api/shopImage/add", formData, {
+ headers: {
+ Authorization: `Bearer ${token}`,
+ "Content-Type": "multipart/formdata",
+ },
+ })
+ .then((response) => {
+ if (response.status === 201) {
+ setOpen(false);
+ setLoading(false);
+ setSaveLoading(true);
+ setBannerName("");
+ setBannerImage("");
+ setOlderImage("");
+ swal({
+ title: "Added",
+ text: "New Banner added successfully!",
+ icon: "success",
+ button: "OK",
+ });
+ // getCategories(); // Refresh the category list after adding
}
- };
- const handeldeleteImage = () => {
- setBannerImage("");
- };
- return (
-
-
-
-
-
-
{
+ // return Math.max(1, Math.ceil(banner?.length / itemPerPage));
+ // };
+
+ const handleFileChange = (e) => {
+ const files = e.target.files[0];
+
+ // Check file types and append to selectedFiles
+ const allowedTypes = ["image/jpeg", "image/png", "image/jpg"];
+ if (allowedTypes.includes(files.type)) {
+ setBannerImage(files);
+ }
+ };
+ const handeldeleteImage = () => {
+ setBannerImage("");
+ };
+ return (
+
+
+
+
+
+
-
- Shop Page Image
-
+ >
+
+ Shop Page Image
+
-
- {/*
+ {/* {
>
Add New Banner
*/}
-
-
- {/*
+
+
+ {/*
{
*/}
- {/*
*/}
- {/* */}
+ {/* {
)
}
/> */}
- {/* {bannerName ? (
+ {/* {bannerName ? (
<>
{25 - bannerName.length} characters left
@@ -376,190 +376,190 @@ const Banners = () => {
<>>
)} */}
-
-
+
+ {bannerImage && (
+
+
+ handeldeleteImage()}
+ fontSize="small"
+ sx={{
+ color: "white",
+ position: "absolute",
+ cursor: "pointer",
+ padding: "0.2rem",
+ background: "black",
+ borderRadius: "50%",
+ }}
+ />
+
+ )}
+ {olderImage && (
+
+
+ setOlderImage("")}
+ fontSize="small"
+ sx={{
+ color: "white",
+ position: "absolute",
+ cursor: "pointer",
+ padding: "0.2rem",
+ background: "black",
+ borderRadius: "50%",
+ }}
+ />
+
+ )}
+
- {error && {error}
}
-
- Upload jpg, jpeg and png only*
-
+ {error && {error}
}
+
+ Upload jpg, jpeg and png only*
+
-
- {!edit && (
- handleSaveBanner()}
- type="button"
- className="
+
+ {!edit && (
+ handleSaveBanner()}
+ type="button"
+ className="
btn btn-primary btn-sm
waves-effect waves-light
btn-table
mx-1
mt-1
"
- >
-
- {saveLoding && "Save"}
-
- )}
- {edit && (
- handleUpdate()}
- type="button"
- className="
+ >
+
+ {saveLoding && "Save"}
+
+ )}
+ {edit && (
+ handleUpdate()}
+ type="button"
+ className="
btn btn-primary btn-sm
waves-effect waves-light
btn-table
mx-1
mt-1
"
- >
-
- {updating && "update"}
-
- )}
- setOpen(false)}
- type="button"
- className="
+ >
+
+ {updating && "update"}
+
+ )}
+ setOpen(false)}
+ type="button"
+ className="
btn btn-sm
waves-effect waves-light
btn-table
mx-1
mt-1
"
- >
- Close
-
-
-
-
-
-
-
-
+ >
+ Close
+
+
+
+
+
+
+
+
-
-
-
-
-
-
- {/*
+
+
+
+
+
+
+ {/*
Show
*/}
-
-
+
+
-
-
-
-
- Image |
+
+
+
+
+ Image |
-
- Action |
-
-
-
- {!loading && banner?.length === 0 && (
-
-
- {
- // navigate("/testimonial/new", { replace: true });
- // }}
- >
- Add New Image
-
- |
-
- )}
- {loading ? (
-
-
- Loading...
- |
-
- ) : (
- banner &&
- banner
- .map((item, i) => (
-
-
-
- {/* {item?.image} */}
- { }
- |
- {/*
+ | Action |
+ Dimension |
+
+
+
+ {!loading && banner?.length === 0 && (
+
+
+ {
+ // navigate("/testimonial/new", { replace: true });
+ // }}
+ >
+ Add New Image
+
+ |
+
+ )}
+ {loading ? (
+
+
+ Loading...
+ |
+
+ ) : (
+ banner &&
+ banner.map((item, i) => (
+
+
+
+ {/* {item?.image} */}
+ {}
+ |
+ {/*
{item.bannerName}
| */}
-
-
- handleEditClick(
- item._id,
- item.image
- )
- }
- >
- Edit
-
- {/*
+
+ handleEditClick(item._id, item.image)
+ }
+ >
+ Edit
+
+ {/* {
>
view
*/}
- |
-
- ))
- )}
-
-
-
+
+ 1200 x 800 pixels |
+
+ ))
+ )}
+
+
+
- {/*
+ {/*
{
onChange={(event, value) => setPage(value)}
/>
*/}
-
-
-
-
+
+
- );
+
+
+ );
};
export default Banners;
diff --git a/src/views/configuration/Logo.js b/src/views/configuration/Logo.js
index 16dac52..4251782 100644
--- a/src/views/configuration/Logo.js
+++ b/src/views/configuration/Logo.js
@@ -98,7 +98,8 @@ function Logo() {
className="label-100 mt-3"
style={{ fontWeight: "bold" }}
>
- Header Logo for user Website
+ Header Logo for user Website(250 x 100
+ pixels)
{/* Logo htmlFor Website Footer(148 x 48 px) */}
- Footer logo for user Website
+ Footer logo for user Website(250 x 100
+ pixels)
{/* Logo htmlFor Admin Header(148 x 48 px) */}
- Logo for admin website
+ Logo for admin website(250 x 100 pixels){" "}
+
{
+ // async function getConfiguration() {
+ // const configDetails = await axios.get(`/api/config`, {
+ // headers: {
+ // Authorization: `Bearer ${token}`,
+ // },
+ // });
+
+ // console.log("configDetails.data.result", configDetails.data.result);
+ // configDetails.data.result.map((item) => {
+ // setRegisterImglogo(item?.logo[0]?.Adminlogo);
+ // setLoginImg(item?.logo[0]?.Footerlogo);
+ // setShopImg(item?.logo[0]?.Adminlogo);
+ // });
+ // }
+ const getRegisterImage = async () => {
+ const response = await axios.get("/api/registerImage/getImage", {
+ headers: {
+ Authorization: `Bearer ${token}`,
+ },
+ });
+ if (response.status === 200) {
+ setRegisterImglogo(response?.data?.image[0]?.image?.secure_url);
+ }
+ };
+ const getLoginImage = async () => {
+ const response = await axios.get("/api/loginImage/getImage", {
+ headers: {
+ Authorization: `Bearer ${token}`,
+ },
+ });
+ if (response.status === 200) {
+ setLoginImg(response?.data?.image[0]?.image?.secure_url);
+ }
+ };
+ const getShopImage = async () => {
+ const response = await axios.get("/api/shopImage/getImage", {
+ headers: {
+ Authorization: `Bearer ${token}`,
+ },
+ });
+ if (response.status === 200) {
+ setShopImg(response?.data?.image[0]?.image?.secure_url);
+ }
+ };
+
+ getRegisterImage();
+ getLoginImage();
+ getShopImage();
+ }, []);
+ // async function handelChange(e) {
+ // setDisplay(false);
+ // console.log(e.target.name === "Web_Images htmlFor Website RegisterImg(148 x 48 px)");
+ // if (e.target.name === "Web_Images htmlFor Website RegisterImg(148 x 48 px)") {
+ // console.log(e.target.files[0]);
+ // setRegisterImglogo(e.target.files[0]);
+ // } else if (e.target.name === "Web_Images htmlFor Website Footer(148 x 48 px)") {
+ // setLoginImg(e.target.files[0]);
+ // } else if (e.target.name === "Web_Images htmlFor Admin RegisterImg(148 x 48 px)") {
+ // setShopImg(e.target.files[0]);
+ // }
+ // }
+ const [Rloading, setRLoading] = useState(false);
+ async function handeRegister(e) {
+ e.preventDefault();
+ if (typeof RegisterImglogo !== "object" || RegisterImglogo === null) {
+ swal({
+ title: "Warning",
+ text: "Please select file",
+ icon: "warning",
+ button: "Ok",
+ dangerMode: true,
+ });
+ return;
+ }
+
+ const formdata = new FormData();
+ formdata.append("RegisterImglogo", RegisterImglogo);
+ setRLoading(true);
+ await axios
+ .post(`/api/registerImage/addmodify/`, formdata, {
+ headers: {
+ Authorization: `Bearer ${token}`,
+ "Content-Type": "multipart/formdata",
+ "Access-Control-Allow-Origin": "*",
+ },
+ })
+ .then((res) => {
+ setRLoading(false);
+ swal("Success!", res.data.message);
+ })
+ .catch((error) => {
+ setRLoading(false);
+ });
+ }
+ const [Lloading, setLLoading] = useState(false);
+
+ async function handeLogin(e) {
+ e.preventDefault();
+ if (typeof LoginImg !== "object" || LoginImg === null) {
+ swal({
+ title: "Warning",
+ text: "Please select file",
+ icon: "warning",
+ button: "Ok",
+ dangerMode: true,
+ });
+ return;
+ }
+
+ const formdata = new FormData();
+ formdata.append("LoginImg", LoginImg);
+ setLLoading(true);
+
+ await axios
+ .post(`/api/loginImage/addmodify/`, formdata, {
+ headers: {
+ Authorization: `Bearer ${token}`,
+ "Content-Type": "multipart/formdata",
+ "Access-Control-Allow-Origin": "*",
+ },
+ })
+ .then((res) => {
+ setLLoading(false);
+ swal("Success!", res.data.message);
+ })
+ .catch((error) => {
+ setLLoading(false);
+ });
+ }
+
+ const [Shoploading, setShoploading] = useState(false);
+ async function handeShopImage(e) {
+ e.preventDefault();
+ if (typeof ShopImg !== "object" || ShopImg === null) {
+ swal({
+ title: "Warning",
+ text: "Please select file",
+ icon: "warning",
+ button: "Ok",
+ dangerMode: true,
+ });
+ return;
+ }
+
+ const formdata = new FormData();
+ formdata.append("ShopImg", ShopImg);
+ setShoploading(true);
+ await axios
+ .post(`/api/shopImage/addmodify/`, formdata, {
+ headers: {
+ Authorization: `Bearer ${token}`,
+ "Content-Type": "multipart/formdata",
+ "Access-Control-Allow-Origin": "*",
+ },
+ })
+ .then((res) => {
+ setShoploading(false);
+ swal("Success!", res.data.message);
+ })
+ .catch((error) => {
+ setShoploading(false);
+ });
+ }
+
+ // async function handelSubmit() {
+ // setLoading(true);
+
+ // const formdata = new FormData();
+ // formdata.append("RegisterImglogo", RegisterImglogo);
+ // formdata.append("LoginImg", LoginImg);
+ // formdata.append("ShopImg", ShopImg);
+
+ // await axios
+ // .post(`/api/config/logo`, formdata, {
+ // headers: {
+ // Authorization: `Bearer ${token}`,
+ // "Content-Type": "multipart/formdata",
+ // "Access-Control-Allow-Origin": "*",
+ // },
+ // })
+ // .then((res) => {
+ // setLoading(false);
+ // swal("Success!", res.data.message, res.data.status);
+ // })
+ // .catch((error) => {
+ // setLoading(false);
+ // });
+ // }
+
+ return (
+
+ );
+}
+
+export default Web_Images;