Files
lucent-laravel/front/js/svelte/account/Profile.svelte
T
2023-10-02 23:10:49 +03:00

82 lines
2.3 KiB
Svelte

<script>
import ErrorAlert from "../common/ErrorAlert.svelte";
import SpinnerButton from "../common/SpinnerButton.svelte";
import Nav from "./Nav.svelte";
import Avatar from "./Avatar.svelte";
import {getContext} from "svelte";
const user = getContext("user");
let name = user.name;
let email = user.email;
let errorMessage = "";
function saveName(e) {
e.preventDefault();
errorMessage = "";
axios
.post("/account/update-name", {
name: name,
})
.then((response) => {
// window.reload();
})
.catch((error) => {
errorMessage = error.response?.data.error;
console.log({errorMessage});
});
}
function saveEmail(e) {
e.preventDefault();
errorMessage = "";
axios
.post("/account/update-email", {
email: email,
})
.then((response) => {
// window.reload();
})
.catch((error) => {
errorMessage = error.response?.data.error;
console.log({errorMessage});
});
}
</script>
<Nav active="Account"/>
<div class="wrapper-tiny">
<ErrorAlert message={errorMessage}/>
<h3 class="header-small mb-5">
<Avatar name={user.name}/>
</h3>
<form on:submit={saveName}>
<div class="input-group mb-3">
<input
type="text"
bind:value={name}
class="form-control"
placeholder="Name"
/>
<SpinnerButton label="Update"/>
</div>
</form>
<!-- <form on:submit={saveEmail}>-->
<!-- <div class="input-group mb-3">-->
<!-- <input-->
<!-- type="text"-->
<!-- bind:value={email}-->
<!-- class="form-control"-->
<!-- placeholder="Email"-->
<!-- />-->
<!-- <SpinnerButton label="Update" />-->
<!-- </div>-->
<!-- </form>-->
<div class="list-group">
<a class="list-group-item list-group-item-action" href="/logout">Logout from this device</a>
</div>
</div>