updated the add address code

This commit is contained in:
print-signs 2023-12-01 18:50:02 +05:30
parent 28a12730fc
commit d7dcbb3c43
2 changed files with 234 additions and 205 deletions

View File

@ -76,16 +76,21 @@ function Address() {
contact, contact,
email, email,
}; };
let res = await axios.post(`/api/config/address`, data, { let res = await axios.post(`/api/config/address`, data, {
headers: { headers: {
Authorization: `Bearer ${token}`, Authorization: `Bearer ${token}`,
}, },
}); });
console.log(res);
if (res) { if (res) {
setLoading(false); setLoading(false);
console.log(res);
swal("Success!", res.data.message, res.data.status); swal("Success!", res.data.message);
} else {
setLoading(false);
swal("something went wrong!", res.data.message);
} }
} }

View File

@ -1,222 +1,246 @@
import React, { useEffect, useState } from 'react' import React, { useEffect, useState } from "react";
import swal from 'sweetalert' import swal from "sweetalert";
import ClipLoader from 'react-spinners/ClipLoader' import ClipLoader from "react-spinners/ClipLoader";
import { Link } from 'react-router-dom' import { Link } from "react-router-dom";
import axios from 'axios' import axios from "axios";
import { isAutheticated } from 'src/auth' import { isAutheticated } from "src/auth";
function Logo() { function Logo() {
const [loading, setLoading] = useState(false) const [loading, setLoading] = useState(false);
const [Headerlogo, setHeaderlogo] = useState('') const [Headerlogo, setHeaderlogo] = useState("");
const [Footerlogo, setFooterlogo] = useState('') const [Footerlogo, setFooterlogo] = useState("");
const [Adminlogo, setAdminlogo] = useState('') const [Adminlogo, setAdminlogo] = useState("");
const [display, setDisplay] = useState(true) const [display, setDisplay] = useState(true);
const token = isAutheticated() const token = isAutheticated();
// urlcreated images // urlcreated images
const [HeaderlogoUrl, setHeaderlogoUrl] = useState('') const [HeaderlogoUrl, setHeaderlogoUrl] = useState("");
const [FooterlogoUrl, setFooterlogoUrl] = useState('') const [FooterlogoUrl, setFooterlogoUrl] = useState("");
const [AdminlogoUrl, setAdminlogoUrl] = useState('') const [AdminlogoUrl, setAdminlogoUrl] = useState("");
useEffect(() => { useEffect(() => {
async function getConfiguration() { async function getConfiguration() {
const configDetails = await axios.get(`/api/config`, { const configDetails = await axios.get(`/api/config`, {
headers: { headers: {
Authorization: `Bearer ${token}`, Authorization: `Bearer ${token}`,
}, },
}) });
configDetails.data.result.map((item) => { configDetails.data.result.map((item) => {
setHeaderlogo(item?.logo[0]?.Headerlogo) setHeaderlogo(item?.logo[0]?.Headerlogo);
setFooterlogo(item?.logo[0]?.Footerlogo) setFooterlogo(item?.logo[0]?.Footerlogo);
setAdminlogo(item?.logo[0]?.Adminlogo) setAdminlogo(item?.logo[0]?.Adminlogo);
}) });
}
getConfiguration()
}, [])
// async function handelChange(e) {
// setDisplay(false);
// console.log(e.target.name === "Logo htmlFor Website Header(148 x 48 px)");
// if (e.target.name === "Logo htmlFor Website Header(148 x 48 px)") {
// console.log(e.target.files[0]);
// setHeaderlogo(e.target.files[0]);
// } else if (e.target.name === "Logo htmlFor Website Footer(148 x 48 px)") {
// setFooterlogo(e.target.files[0]);
// } else if (e.target.name === "Logo htmlFor Admin Header(148 x 48 px)") {
// setAdminlogo(e.target.files[0]);
// }
// }
async function handelSubmit() {
setLoading(true)
const formdata = new FormData()
formdata.append('Headerlogo', Headerlogo)
formdata.append('Footerlogo', Footerlogo)
formdata.append('Adminlogo', Adminlogo)
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 => {
console.log(error)
})
} }
getConfiguration();
}, []);
return ( // async function handelChange(e) {
<div> // setDisplay(false);
<div className="main-content"> // console.log(e.target.name === "Logo htmlFor Website Header(148 x 48 px)");
<div className="page-content"> // if (e.target.name === "Logo htmlFor Website Header(148 x 48 px)") {
<div className="container-fluid"> // console.log(e.target.files[0]);
<div className="row"> // setHeaderlogo(e.target.files[0]);
// } else if (e.target.name === "Logo htmlFor Website Footer(148 x 48 px)") {
// setFooterlogo(e.target.files[0]);
// } else if (e.target.name === "Logo htmlFor Admin Header(148 x 48 px)") {
// setAdminlogo(e.target.files[0]);
// }
// }
async function handelSubmit() {
setLoading(true);
const formdata = new FormData();
formdata.append("Headerlogo", Headerlogo);
formdata.append("Footerlogo", Footerlogo);
formdata.append("Adminlogo", Adminlogo);
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) => {
console.log(error);
});
}
return (
<div>
<div className="main-content">
<div className="page-content">
<div className="container-fluid">
<div className="row">
<div className="col-lg-12">
<div className="card">
<div className="card-body">
<div className="row">
<div className="col-md-12 col-lg-6 col-xl-6">
<h1 className="text-left head-small">Logo</h1>
<form>
<div className="row">
<div className="col-lg-12"> <div className="col-lg-12">
<div className="card"> <div className="form-group">
<div className="card-body"> <>
<div className="row"> <label
<div className="col-md-12 col-lg-6 col-xl-6"> htmlFor="basicpill-phoneno-input"
<h1 className="text-left head-small">Logo</h1> className="label-100 mt-3"
>
{/* Logo htmlFor Website Header(148 x 48 px) */}
</label>
<div>
<input
type="file"
name="Logo htmlFor Website Header(148 x 48 px)"
onChange={(e) => {
setHeaderlogo(e.target.files[0]);
if (
e.target.files &&
e.target.files[0]
) {
setHeaderlogoUrl({
image: URL.createObjectURL(
e.target.files[0]
),
});
console.log(setHeaderlogoUrl);
}
}}
className="form-control input-field mb-3 col-md-6 d-inline-block"
id="basicpill-phoneno-input"
/>
{display ? (
<img
className="ms-1"
style={{ width: "100px" }}
src={
HeaderlogoUrl.image
? HeaderlogoUrl.image
: Headerlogo
}
alt="header logo"
/>
) : (
""
)}
</div>
<label
htmlFor="basicpill-phoneno-input"
className="label-100 mt-3"
>
{/* Logo htmlFor Website Footer(148 x 48 px) */}
</label>
<input
type="file"
name="Logo htmlFor Website Footer(148 x 48 px)"
onChange={(e) => {
setFooterlogo(e.target.files[0]);
<form> if (e.target.files && e.target.files[0]) {
<div className="row"> setFooterlogoUrl({
<div className="col-lg-12"> image: URL.createObjectURL(
<div className="form-group"> e.target.files[0]
<> ),
<label });
htmlFor="basicpill-phoneno-input" }
className="label-100 mt-3" }}
> className="form-control input-field mt-1 col-md-6 d-inline-block"
{/* Logo htmlFor Website Header(148 x 48 px) */} id="basicpill-phoneno-input"
</label> />{" "}
<div> {display ? (
<input <img
type="file" style={{ width: "100px" }}
name="Logo htmlFor Website Header(148 x 48 px)" src={
onChange={(e) => { FooterlogoUrl.image
setHeaderlogo(e.target.files[0]) ? FooterlogoUrl.image
if (e.target.files && e.target.files[0]) { : Footerlogo
setHeaderlogoUrl({ }
image: URL.createObjectURL(e.target.files[0]), alt="Footer logo"
}) />
console.log(setHeaderlogoUrl) ) : (
} ""
}} )}
className="form-control input-field mb-3 col-md-6 d-inline-block" <label
id="basicpill-phoneno-input" htmlFor="basicpill-phoneno-input"
/> className="label-100 mt-2 row ms-1"
{display ? ( >
<img className='ms-1' {/* Logo htmlFor Admin Header(148 x 48 px) */}
style={{ width: '100px' }} </label>
src={HeaderlogoUrl.image ? HeaderlogoUrl.image : Headerlogo} <input
alt="header logo" type="file"
/> name="Logo htmlFor Admin Header(148 x 48 px)"
) : ( onChange={(e) => {
'' setAdminlogo(e.target.files[0]);
)}
</div>
<label
htmlFor="basicpill-phoneno-input"
className="label-100 mt-3"
>
{/* Logo htmlFor Website Footer(148 x 48 px) */}
</label>
<input
type="file"
name="Logo htmlFor Website Footer(148 x 48 px)"
onChange={(e) => {
setFooterlogo(e.target.files[0])
if (e.target.files && e.target.files[0]) { if (e.target.files && e.target.files[0]) {
setFooterlogoUrl({ setAdminlogoUrl({
image: URL.createObjectURL(e.target.files[0]), image: URL.createObjectURL(
}) e.target.files[0]
} ),
}} });
className="form-control input-field mt-1 col-md-6 d-inline-block" }
id="basicpill-phoneno-input" }}
/>{' '} className="form-control input-field col-md-6 d-inline-block"
{display ? ( id="basicpill-phoneno-input"
<img />{" "}
style={{ width: '100px' }} {display ? (
src={FooterlogoUrl.image ? FooterlogoUrl.image : Footerlogo} <img
alt="Footer logo" style={{ width: "100px" }}
/> src={
) : ( AdminlogoUrl.image
'' ? AdminlogoUrl.image
)} : Adminlogo
<label }
htmlFor="basicpill-phoneno-input" alt="Admin logo"
className="label-100 mt-2 row ms-1" />
> ) : (
{/* Logo htmlFor Admin Header(148 x 48 px) */} ""
</label> )}
<input </>
type="file" </div>
name="Logo htmlFor Admin Header(148 x 48 px)"
onChange={(e) => {
setAdminlogo(e.target.files[0])
if (e.target.files && e.target.files[0]) {
setAdminlogoUrl({
image: URL.createObjectURL(e.target.files[0]),
})
}
}}
className="form-control input-field col-md-6 d-inline-block"
id="basicpill-phoneno-input"
/>{' '}
{display ? (
<img
style={{ width: '100px' }}
src={AdminlogoUrl.image ? AdminlogoUrl.image : Adminlogo}
alt="Admin logo"
/>
) : (
''
)}
</>
</div>
</div>
</div>
<div className="row">
<div className="col-lg-12">
<div className="form-group text-left">
<button
type="button"
onClick={handelSubmit}
className="btn btn-success btn-login waves-effect waves-light mr-3 pt-2 pb-2 pr-4 pl-4"
>
<ClipLoader loading={loading} size={18} />
{!loading && 'Save'}
</button>
</div>
</div>
</div>
</form>
</div>
</div>
{/* <!-- end table-responsive --> */}
</div>
</div>
</div> </div>
</div> </div>
<div className="row">
<div className="col-lg-12">
<div className="form-group text-left">
<button
type="button"
onClick={handelSubmit}
className="btn btn-success btn-login waves-effect waves-light mr-3 pt-2 pb-2 pr-4 pl-4"
>
<ClipLoader loading={loading} size={18} />
{!loading && "Save"}
</button>
</div>
</div>
</div>
</form>
</div>
</div> </div>
{/* <!-- container-fluid --> */}
{/* <!-- end table-responsive --> */}
</div>
</div> </div>
{/* <!-- End Page-content --> */} </div>
</div> </div>
</div>
{/* <!-- container-fluid --> */}
</div> </div>
) {/* <!-- End Page-content --> */}
</div>
</div>
);
} }
export default Logo export default Logo;