diff --git a/data/.~lock.user.csv# b/data/.~lock.user.csv# new file mode 100644 index 0000000..00777a3 --- /dev/null +++ b/data/.~lock.user.csv# @@ -0,0 +1 @@ +,ov,d4,16.05.2023 12:44,file:///home/ov/.config/libreoffice/4; \ No newline at end of file diff --git a/data/appUser.db b/data/appUser.db index b9e61c8..1a865a4 100644 Binary files a/data/appUser.db and b/data/appUser.db differ diff --git a/src/pages/api/editUser.js b/src/pages/api/editUser.js new file mode 100644 index 0000000..f961a47 --- /dev/null +++ b/src/pages/api/editUser.js @@ -0,0 +1,44 @@ +export default function handler(req, res) { + const sqlite3 = require('sqlite3').verbose(); + + console.log(req.body) + // Open a new database connection + let uname, status, type, start_month, start_date, end_date, klas, lang, phone, pass, anual, early_start_programme, toddlers, interakto, email, country, state, city, address, school=""; + + if(req.body.uname) uname =req.body.uname; + if(req.body.status) status =req.body.status; + if(req.body.type) type =req.body.type; + if(req.body.start_date) start_date =req.body.start_date; + if(req.body.end_date) end_date =req.body.end_date; + if(req.body.klas) klas =req.body.klas; + if(req.body.lang) lang =req.body.lang; + if(req.body.lang) lang =req.body.lang; + if(req.body.phone) phone =req.body.phone; + if(req.body.pass) pass =req.body.pass; + if(req.body.anual) anual =req.body.anual; + if(req.body.early_start_programme) early_start_programme =req.body.early_start_programme; + if(req.body.toddlers) toddlers =req.body.toddlers; + if(req.body.interakto) interakto =req.body.interakto; + if(req.body.email) email =req.body.email; + if(req.body.country) country =req.body.country; + if(req.body.state) state =req.body.state; + if(req.body.city) city =req.body.city; + if(req.body.address) address =req.body.address; + if(req.body.school) school =req.body.school; + const db = new sqlite3.Database('data/appUser.db'); + console.log(req.body.userId) + db.run(`UPDATE user SET uname = ?, status = ?, type = ?, start_month = ?, start_date = ?, end_date = ?, klas = ?, lang = ?, phone = ?, anual = ?, early_start_programme = ?, toddlers = ?, interakto = ?, email = ?, country = ?, state = ?, city = ?, address = ?, school = ? WHERE id = ? `, [ uname, status, type, start_month, start_date, end_date, klas, lang, phone, anual, early_start_programme, toddlers, interakto, email, country, state, city, address, school, req.body.userId], + function(err) { + if (err) { + res.status(400).json({ msg: 'Err400D' }); + return console.log(err.message); + } + res.status(200).json({ msg: 'ok' }); + } + ); + db.close(); + + + + } + \ No newline at end of file diff --git a/src/pages/edit-user.jsx b/src/pages/edit-user.jsx index 0b4c406..8b695a7 100644 --- a/src/pages/edit-user.jsx +++ b/src/pages/edit-user.jsx @@ -6,20 +6,20 @@ import { useRouter } from 'next/router' export default function editUser() { const router = useRouter(); - const updateUserData = async (event) => { - const body = new FormData(); - body.append("file", agreement.files[0]); - body.append("fName", `${router.query.school}.pdf`); - const response = await fetch("/api/updateUserDetails", { - method: "POST", - body - }); - }; + // const updateUserData = async (event) => { + // const body = new FormData(); + // body.append("file", agreement.files[0]); + // body.append("fName", `${router.query.school}.pdf`); + // const response = await fetch("/api/updateUserDetails", { + // method: "POST", + // body + // }); + // }; const [user, setUser] = useState({}); useEffect(()=>{ - console.log(router.query); + // console.log(router.query); // if(router.query.school<1) { // const { sid } = router.query; // setSchool(sid) @@ -27,34 +27,38 @@ export default function editUser() { fetch(`/api/getUserDetails?user=${router.query.user}`) .then(res => res.json()) .then(data => { - console.log(router.query.user); - setUser(data) + // console.log(data); + setUser(data[0]) + // console.log(user) }) } - }, [router.query.school]); + }, [router.query.user]); - const handleSubmit = async (event) => { + const updateUserData = async (event) => { event.preventDefault() const data = { - "status":"published", - name: event.target.schoolName.value, + userId: router.query.user, + type: event.target.type.value, + status: event.target.status.value, + uname: event.target.uname.value, country: event.target.country.value, state: event.target.state.value, - cities: event.target.cities.value, + city: event.target.city.value, + address: event.target.address.value, + start_date: event.target.start_date.value, + end_date: event.target.end_date.value, + school: event.target.school.value, anual: event.target.anual.value, toddlers: event.target.toddlers.value, early_start_programme: event.target.early_start_programme.value, - interakto: event.target.interakto.value, - agreement_expiry_date: event.target.agreement_expiry_date.value, - school_agreement: event.target.school_agreement.value, - school_contact_number: event.target.school_contact_number.value, - school_email_id: event.target.school_email_id.value, - + email: event.target.email.value, + phone: event.target.phone.value, + klas: event.target.klas.value } const JSONdata = JSON.stringify(data) console.log(data) - const endpoint = 'https://management.beanstalkedu.com/items/school' + const endpoint = '/api/editUser' const options = { method: 'POST', headers: { @@ -66,7 +70,7 @@ export default function editUser() { const result = await response.json() // alert(`Is this your full name: ${result.data}`) - alert(`School Saved`) + alert(`User data updated`) } return ( @@ -83,37 +87,73 @@ export default function editUser() {
- - - + setUser(e.target.value)} type="text" name="type" className=' bg-white border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' />
- + setUser(e.target.value)} type="text" name="uname" className=' border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' /> +
+
+ + setUser(e.target.value)} type="text" name="status" className=' border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' /> +
+
+ + setUser(e.target.value)} type="text" name="start_date" className=' border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' /> +
+
+ + setUser(e.target.value)} type="text" name="end_date" className=' border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' />
- + setUser(e.target.value)} type="email" name="email" placeholder='ex. xyz@email.com' className=' border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]'/> +
+
+ + setUser(e.target.value)} type="text" name="phone" className=' bg-white border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' />
- + setUser(e.target.value)} type="text" name="country" className=' bg-white border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' /> +
+
+ + setUser(e.target.value)} type="text" name="state" className=' bg-white border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' /> +
+
+ + setUser(e.target.value)} type="text" name="city" className=' bg-white border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' />
- - + + setUser(e.target.value)} type="text" name="address" className=' bg-white border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' />
- - + + setUser(e.target.value)} type="text" name="school" className=' border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' />
- - + + setUser(e.target.value)} type="text" name="klas" className=' border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' /> +
+
+ + setUser(e.target.value)} type="text" name="anual" className=' border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' /> +
+
+ + setUser(e.target.value)} type="text" name="early_start_programme" className=' border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' /> +
+
+ + setUser(e.target.value)} type="text" name="toddlers" className=' border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' /> +
+
+ + setUser(e.target.value)} type="text" name="interakto" className=' border-2 border-[#FE4501] p-2 rounded-md focus:outline-none focus:border-2 focus:border-[#F2B705]' />
-