Integrated user's name in dashboard with email (#154)

* integrated User name in dashboard with email

* changed brand name in dashboard

* changed username to name in state in reg.jsx
This commit is contained in:
Anirban Pratihar 2022-05-18 12:39:40 +05:30 committed by GitHub
parent 6ac076f7bc
commit ef76047a10
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 14 additions and 9 deletions

View File

@ -2,14 +2,14 @@ const User = require('../models/user')
const { customAlphabet } = require('nanoid') const { customAlphabet } = require('nanoid')
const nanoid = customAlphabet('1234567890abcdefghijklmnopqrstuvwxyz', 25) const nanoid = customAlphabet('1234567890abcdefghijklmnopqrstuvwxyz', 25)
module.exports.register = async ({ body: { email, password } }, res) => { module.exports.register = async ({ body: { email, password,name } }, res) => {
try { try {
if (!email || !password) return res.sendStatus(400) if (!email || !password) return res.sendStatus(400)
let oldUser = await User.findOne({ email }).catch((err) => { let oldUser = await User.findOne({ email }).catch((err) => {
console.error(err) console.error(err)
}) })
if (oldUser) return res.status(400).send('Already Exists') if (oldUser) return res.status(400).send('Already Exists')
let user = new User({ email }) let user = new User({ email,name })
user.setPassword(password) user.setPassword(password)
let validationError = false let validationError = false
await user.save().catch((err) => { await user.save().catch((err) => {

View File

@ -51,6 +51,7 @@ UsersSchema.methods.generateJWT = function () {
return jwt.sign( return jwt.sign(
{ {
name : this.name,
email: this.email, email: this.email,
hash: this.hash, hash: this.hash,
id: this._id, id: this._id,

View File

@ -27,20 +27,23 @@ function changePageContent(e){
} }
function Sidebar1() { function Sidebar1() {
const {user:{name,email}} = useContext(UserAuth)
return ( return (
<div className="sidebar"> <div className="sidebar">
<CloseIcon className="close_icon" onClick={toggleSidebar1} /> <CloseIcon className="close_icon" onClick={toggleSidebar1} />
<ul> <ul>
<div className="nav-item mb-2 brand-name"> <div className="nav-item mb-2 brand-name">
<h1>Brand Name</h1> <h1>URL Minify</h1>
</div> </div>
<div className="profile"> <div className="profile">
<div className="profile-image"> <div className="profile-image">
<img src="https://png.pngtree.com/png-vector/20190307/ourlarge/pngtree-vector-edit-profile-icon-png-image_760869.jpg" /> <img src="https://png.pngtree.com/png-vector/20190307/ourlarge/pngtree-vector-edit-profile-icon-png-image_760869.jpg" />
</div> </div>
<p className="name">Hayat</p> <p className="name">{name}</p>
<p className="profession">Product Designer</p> <p className="profession">{email}</p>
</div> </div>
<div className="creatButton"> <div className="creatButton">
<button>Create Link</button> <button>Create Link</button>

View File

@ -11,7 +11,7 @@ function Reg() {
const router = useRouter() const router = useRouter()
const context = useContext(UserAuth) const context = useContext(UserAuth)
const [userData, setUserData] = useState({ const [userData, setUserData] = useState({
username: '', name: '',
email: '', email: '',
password: '', password: '',
repassword: '', repassword: '',
@ -45,10 +45,10 @@ function Reg() {
</div> </div>
<input <input
className="reg-input" className="reg-input"
name="username" name="name"
autoComplete="off" autoComplete="off"
type="text" type="text"
value={userData.username} value={userData.name}
onChange={handleInput} onChange={handleInput}
placeholder="Full Name" placeholder="Full Name"
/> />

View File

@ -80,6 +80,7 @@ const UserAuthProvider = ({ children }) => {
url: '/user/me', url: '/user/me',
}) })
.then((user) => { .then((user) => {
console.log(user);
setUser(user.data) setUser(user.data)
}) })
.catch((err) => { .catch((err) => {
@ -94,7 +95,7 @@ const UserAuthProvider = ({ children }) => {
setJwt(null) setJwt(null)
storeJWT(null) storeJWT(null)
} }
const context = { jwt, user, mode, login, logout, createAcc, handleLightMode, handleDarkMode } const context = { jwt, user, mode, login, logout, createAcc, handleLightMode, handleDarkMode,fetchUser }
useEffect(() => { useEffect(() => {
let jwt = fetchJWT() let jwt = fetchJWT()
if (jwt) { if (jwt) {