@ -1,13 +1,16 @@
< script >
< script >
import { Layout , Heading , Body , Button , notifications } from "@budibase/bbui"
import { Layout , Heading , Body , Button , notifications } from "@budibase/bbui"
import { goto , params } from "@roxi/routify"
import { goto , params } from "@roxi/routify"
import { users } from "stores/portal"
import { users , organisation } from "stores/portal"
import PasswordRepeatInput from "components/common/users/PasswordRepeatInput.svelte"
import PasswordRepeatInput from "components/common/users/PasswordRepeatInput.svelte"
import Logo from "assets/bb-emblem.svg"
import Logo from "assets/bb-emblem.svg"
import { onMount } from "svelte"
const inviteCode = $params["?code"]
const inviteCode = $params["?code"]
let password, error
let password, error
$: company = $organisation.company || "Budibase"
async function acceptInvite() {
async function acceptInvite() {
try {
try {
await users.acceptInvite(inviteCode, password)
await users.acceptInvite(inviteCode, password)
@ -17,16 +20,24 @@
notifications.error(error.message)
notifications.error(error.message)
}
}
}
}
onMount(async () => {
try {
await organisation.init()
} catch (error) {
notifications.error("Error getting org config")
}
})
< / script >
< / script >
< section >
< section >
< div class = "container" >
< div class = "container" >
< Layout >
< Layout >
< img src = { Logo } alt="logo" />
< img alt = "logo" src = { $organisation . logoUrl || Logo } / >
< Layout gap = "XS" justifyItems = "center" noPadding >
< Layout gap = "XS" justifyItems = "center" noPadding >
< Heading size = "M" > Accept Invitation< / Heading >
< Heading size = "M" > Invitation to { company } < /Heading >
< Body textAlign = "center" size = "M" >
< Body textAlign = "center" size = "M" >
Please enter a password to set up your user .
Please enter a password to get started .
< / Body >
< / Body >
< / Layout >
< / Layout >
< PasswordRepeatInput bind:error bind:password / >
< PasswordRepeatInput bind:error bind:password / >
@ -46,7 +57,7 @@
}
}
.container {
.container {
margin: 0 auto;
margin: 0 auto;
width: 26 0px;
width: 30 0px;
display: flex;
display: flex;
flex-direction: column;
flex-direction: column;
justify-content: flex-start;
justify-content: flex-start;