Update events page, crypto exchanges guide, footer, and add event
parent
0dea6bccdb
commit
3d225bf37b
1
app.vue
1
app.vue
|
@ -9,6 +9,7 @@
|
||||||
{ rel: 'icon', sizes: '16x16', href: '/favicon-16x16.png' },
|
{ rel: 'icon', sizes: '16x16', href: '/favicon-16x16.png' },
|
||||||
{ rel: 'manifest', href: '/site.webmanifest' },
|
{ rel: 'manifest', href: '/site.webmanifest' },
|
||||||
{ rel: 'mask-icon', href: '/safari-pinned-tab.svg', color: '#5bbad5' },
|
{ rel: 'mask-icon', href: '/safari-pinned-tab.svg', color: '#5bbad5' },
|
||||||
|
{ rel: 'stylesheet', href: 'https://i.icomoon.io/public/870f1d17ba/crbtcorg/style.css' },
|
||||||
],
|
],
|
||||||
meta: [
|
meta: [
|
||||||
{ name: 'msapplication-TileColor', content: '#f59428' },
|
{ name: 'msapplication-TileColor', content: '#f59428' },
|
||||||
|
|
|
@ -13,11 +13,11 @@ $hr: #d30012; // hr
|
||||||
|
|
||||||
$btn-color: #faf1e5; // button
|
$btn-color: #faf1e5; // button
|
||||||
$btnh-color: #f5ece0; // button hover
|
$btnh-color: #f5ece0; // button hover
|
||||||
|
$link: #308fe7; // link
|
||||||
$i-color: #494949; // input
|
$i-color: #494949; // input
|
||||||
|
|
||||||
// Font Colors
|
// Font Colors
|
||||||
$f-color: #ffffff; // primary
|
$f-color: #ffffff; // primary
|
||||||
$fs-color: #ffffff; // secondary
|
$fs-color: #ffffff; // secondary
|
||||||
$fh-color: #f7931a; // hover
|
$fh-color: #f7931a; // hover
|
||||||
$btc: #f7931a; // btc
|
$btc: #f7931a; // btc
|
||||||
$link: #3182ce; // link
|
|
|
@ -16,9 +16,11 @@
|
||||||
&:hover { text-decoration: underline }
|
&:hover { text-decoration: underline }
|
||||||
}
|
}
|
||||||
|
|
||||||
.heart {
|
.icon-btc {
|
||||||
position: relative;
|
position: relative;
|
||||||
margin: 0 1px;
|
top: .2rem;
|
||||||
|
font-size: 1.1rem;
|
||||||
|
margin: 0 .1rem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
header {
|
header {
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-template-columns: 6.5rem calc(100% - 15.5rem) 9rem;
|
grid-template-columns: 2fr 4fr 2fr;
|
||||||
grid-template-rows: 2fr 1fr;
|
grid-template-rows: 2fr 1fr;
|
||||||
max-width: 60rem;
|
max-width: 60rem;
|
||||||
padding: 2rem 4rem;
|
padding: 2rem 4rem;
|
||||||
|
@ -9,14 +9,24 @@ header {
|
||||||
.logo {
|
.logo {
|
||||||
grid-row: 1/3;
|
grid-row: 1/3;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
border: .2rem solid $w-color;
|
height: 6.25rem;
|
||||||
padding: .5rem 1rem .5rem .5rem;
|
//border: .2rem solid $w-color;
|
||||||
|
//padding: .5rem 1rem .5rem .5rem;
|
||||||
|
|
||||||
h1 {
|
h1 {
|
||||||
color: $w-color;
|
color: $w-color;
|
||||||
font-size: 1.2rem;
|
font-size: 1.2rem;
|
||||||
line-height: 1.2rem;
|
line-height: 1.2rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
display: inline-block;
|
||||||
|
height: 6.25rem;
|
||||||
|
|
||||||
|
img {
|
||||||
|
max-width: 6.5rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav,
|
.nav,
|
||||||
|
@ -37,6 +47,8 @@ header {
|
||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&:hover { cursor: pointer }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@ body {
|
||||||
|
|
||||||
main {
|
main {
|
||||||
max-width: 60rem;
|
max-width: 60rem;
|
||||||
min-height: calc(100vh - 220px);
|
min-height: calc(100vh - 224px);
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
padding: 0 4rem;
|
padding: 0 4rem;
|
||||||
}
|
}
|
||||||
|
@ -19,6 +19,7 @@ main {
|
||||||
|
|
||||||
html {
|
html {
|
||||||
scroll-behavior: smooth;
|
scroll-behavior: smooth;
|
||||||
|
color-scheme: dark;
|
||||||
}
|
}
|
||||||
|
|
||||||
*, *:after, *:before {
|
*, *:after, *:before {
|
||||||
|
@ -54,6 +55,7 @@ a {
|
||||||
@import 'components/footer';
|
@import 'components/footer';
|
||||||
@import 'pages/index';
|
@import 'pages/index';
|
||||||
@import 'pages/pages';
|
@import 'pages/pages';
|
||||||
|
@import 'pages/event';
|
||||||
@import 'pages/guide';
|
@import 'pages/guide';
|
||||||
@import 'pages/auth';
|
@import 'pages/auth';
|
||||||
@import 'pages/404';
|
@import 'pages/404';
|
|
@ -1,7 +1,7 @@
|
||||||
.login,
|
.login,
|
||||||
.register {
|
.register {
|
||||||
max-width: 24rem;
|
max-width: 24rem;
|
||||||
padding: 2rem 2rem;
|
padding: 2rem;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
|
|
||||||
h3 {
|
h3 {
|
||||||
|
@ -35,6 +35,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
.input {
|
.input {
|
||||||
|
margin: 0 0 .5rem 0;
|
||||||
|
|
||||||
label {
|
label {
|
||||||
display: block;
|
display: block;
|
||||||
font-size: .9rem;
|
font-size: .9rem;
|
||||||
|
@ -45,11 +47,17 @@
|
||||||
font-size: 1rem;
|
font-size: 1rem;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
padding: .5rem 1rem;
|
padding: .5rem 1rem;
|
||||||
margin: .25rem 0 .75rem 0;
|
margin: .25rem 0;
|
||||||
border: 1px solid $i-color;
|
border: 1px solid $i-color;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
span {
|
||||||
|
color: $error;
|
||||||
|
font-family: $p-font;
|
||||||
|
font-size: .75rem;
|
||||||
|
}
|
||||||
|
|
||||||
button {
|
button {
|
||||||
font-size: .9rem;
|
font-size: .9rem;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
|
|
|
@ -0,0 +1,55 @@
|
||||||
|
.event {
|
||||||
|
padding: 4rem 8rem;
|
||||||
|
|
||||||
|
.hero {
|
||||||
|
h3 {
|
||||||
|
font-size: 2.5rem;
|
||||||
|
padding: 0 0 .5rem 0
|
||||||
|
}
|
||||||
|
|
||||||
|
h4 {
|
||||||
|
font-size: 1rem;
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
width: 100%;
|
||||||
|
padding: 4rem 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.details {
|
||||||
|
padding: 1rem 0;
|
||||||
|
|
||||||
|
h2 a {
|
||||||
|
color: $f-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
h4 {
|
||||||
|
padding: 1rem 0;
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: $f-color;
|
||||||
|
font-size: 1.25rem;
|
||||||
|
font-weight: 600;
|
||||||
|
&:hover { cursor: text }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
font-size: 1.05rem;
|
||||||
|
padding: .5rem 0;
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
cursor: pointer;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
width: 100%;
|
||||||
|
padding: 1rem 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -17,11 +17,11 @@
|
||||||
|
|
||||||
.content {
|
.content {
|
||||||
|
|
||||||
p {
|
h2 a {
|
||||||
font-size: 1.05rem;
|
color: $f-color;
|
||||||
padding: .5rem 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
h4 {
|
h4 {
|
||||||
padding: 1rem 0;
|
padding: 1rem 0;
|
||||||
|
|
||||||
|
@ -32,6 +32,16 @@
|
||||||
&:hover { cursor: text }
|
&:hover { cursor: text }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
font-size: 1.05rem;
|
||||||
|
padding: .5rem 0;
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
cursor: pointer;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
img {
|
img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="footer">
|
<div class="footer">
|
||||||
<div class="who">
|
<div class="who">
|
||||||
<p>Made with <span class="heart">❤️</span> by <NuxtLink to="https://ryanmoon.com" target="_blank">Ryan Moon</NuxtLink></p>
|
<p>Made with <span class="icon-btc"><span class="path1"></span><span class="path2"></span></span> by <NuxtLink to="https://ryanmoon.com" target="_blank">Ryan Moon</NuxtLink></p>
|
||||||
</div>
|
</div>
|
||||||
<ul class="links">
|
<ul class="links">
|
||||||
<li><NuxtLink to="/privacy">Privacy Policy</NuxtLink></li>
|
<li><NuxtLink to="/privacy">Privacy Policy</NuxtLink></li>
|
||||||
|
|
|
@ -4,17 +4,22 @@
|
||||||
const user = useDirectusUser();
|
const user = useDirectusUser();
|
||||||
const { logout } = useDirectusAuth()
|
const { logout } = useDirectusAuth()
|
||||||
|
|
||||||
console.log(user)
|
/* <NuxtLink to="/" class="logo"><h1>Capital <br/>Region <br/>Bitcoin <br/>Network</h1></NuxtLink> */
|
||||||
|
/* <a @click="logout" ><h2>Logout</h2></a> */
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<header>
|
<header>
|
||||||
<NuxtLink to="/" class="logo"><h1>Capital <br/>Region <br/>Bitcoin <br/>Network</h1></NuxtLink>
|
<div class="logo">
|
||||||
|
<NuxtLink to="/">
|
||||||
|
<img src="/img/logo.png" alt="Capital Region Bitcoin Network">
|
||||||
|
</NuxtLink>
|
||||||
|
</div>
|
||||||
<div class="nav" >
|
<div class="nav" >
|
||||||
<NuxtLink to="/about"><h2>About</h2></NuxtLink>
|
<NuxtLink to="/about"><h2>About</h2></NuxtLink>
|
||||||
<NuxtLink to="/#guides"><h2>Guides</h2></NuxtLink>
|
<NuxtLink to="/#guides"><h2>Guides</h2></NuxtLink>
|
||||||
<NuxtLink to="/#events" ><h2>Events</h2></NuxtLink>
|
<NuxtLink to="/#events" ><h2>Events</h2></NuxtLink>
|
||||||
<NuxtLink to="/members" v-if="isDesktopOrTablet" ><h2>Members</h2></NuxtLink>
|
<NuxtLink to="/" v-if="isDesktopOrTablet" ><h2>Members</h2></NuxtLink>
|
||||||
</div>
|
</div>
|
||||||
<div class="auth" v-if="isDesktopOrTablet">
|
<div class="auth" v-if="isDesktopOrTablet">
|
||||||
<div class="links" v-if="!user">
|
<div class="links" v-if="!user">
|
||||||
|
@ -22,8 +27,7 @@
|
||||||
<NuxtLink to="/login"><h2>Sign in</h2></NuxtLink>
|
<NuxtLink to="/login"><h2>Sign in</h2></NuxtLink>
|
||||||
</div>
|
</div>
|
||||||
<div class="user" v-if="user">
|
<div class="user" v-if="user">
|
||||||
<p >{{user.first_name}}</p>
|
<NuxtLink :to="'/u/' + user.external_identifier"><h2>{{user.first_name}}</h2></NuxtLink>
|
||||||
<p @click="logout" >Logout</p>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
|
|
|
@ -12,4 +12,5 @@ and wanting to create a local community around Bitcoin.
|
||||||
The first meetup was held on Thursday, May 11th 2023. Meetups allow for open discussion
|
The first meetup was held on Thursday, May 11th 2023. Meetups allow for open discussion
|
||||||
about Bitcoin news and common questions surrounding the currency.
|
about Bitcoin news and common questions surrounding the currency.
|
||||||
|
|
||||||
View the schedule of <a href="/#events">upcoming events</a> and see if you can make it to the next one.
|
Follow us on <a href="https://twitter.com/UpstateNYBTC" target="_BLANK">Twitter</a> and view
|
||||||
|
the schedule of <a href="/#events">upcoming events</a> to see if you can make it to the next one.
|
|
@ -3,7 +3,7 @@ title: Monthly Meetup
|
||||||
slug: monthly-meetup-7-26-2023
|
slug: monthly-meetup-7-26-2023
|
||||||
date: 2023-07-26
|
date: 2023-07-26
|
||||||
published: 2023-07-16
|
published: 2023-07-16
|
||||||
location: Druthers Brewing Company
|
location: Druther's Brewing Company
|
||||||
address: 221 Harborside Drive, Schenectady
|
address: 221 Harborside Drive, Schenectady
|
||||||
time: 6:00 PM
|
time: 6:00 PM
|
||||||
meetup: 294822271
|
meetup: 294822271
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
---
|
||||||
|
title: Monthly Meetup
|
||||||
|
slug: monthly-meetup-8-23-2023
|
||||||
|
date: 2023-08-23
|
||||||
|
published: 2023-08-11
|
||||||
|
location: Druther's Brewing Company
|
||||||
|
address: 221 Harborside Drive, Schenectady
|
||||||
|
time: 6:00 PM
|
||||||
|
meetup: 295386867
|
||||||
|
---
|
||||||
|
|
||||||
|
## Details
|
||||||
|
|
||||||
|
Looking forward to seeing everyone at the August meetup!
|
||||||
|
|
||||||
|
Our monthly Bitcoin meetup! This is a Bitcoin only event. Whether you are interested in learning about Bitcoin, or are a seasoned pleb, come and hang out! We will have learning materials for those who are just starting out.
|
||||||
|
|
||||||
|
We would like to finalize some upcoming workshop ideas and dates at this event.
|
||||||
|
Hope you all can make it! Feel free to bring a friend or two to orange pill :-). Appetizers and first round of drinks will be provided.
|
|
@ -5,7 +5,7 @@ slug: crypto-exchanges
|
||||||
thumbnail: crypto-exchanges.svg
|
thumbnail: crypto-exchanges.svg
|
||||||
date: 07-29-2023
|
date: 07-29-2023
|
||||||
published: July 29th, 2023
|
published: July 29th, 2023
|
||||||
updated: July 29th, 2023
|
updated: August 11th, 2023
|
||||||
length: 2
|
length: 2
|
||||||
tags: Exchanges give you the opportunity to purchase crypto and store your purchase in a hot wallet.
|
tags: Exchanges give you the opportunity to purchase crypto and store your purchase in a hot wallet.
|
||||||
excerpt: Exchancges
|
excerpt: Exchancges
|
||||||
|
@ -15,72 +15,24 @@ priority: 3
|
||||||
|
|
||||||
## Crypto Exchanges
|
## Crypto Exchanges
|
||||||
|
|
||||||
|
<a href="https://www.etoro.com/en-us/" target="_BLANK">eToro</a> - eToro NY
|
||||||
|
|
||||||
|
<a href="https://www.gemini.com/" target="_BLANK">Gemini</a> - Gemini Trust Company
|
||||||
|
|
||||||
Apex Crypto LLC
|
<a href="https://www.bitstamp.net/" target="_BLANK">Bitstamp</a> - Bitstamp USA
|
||||||
|
|
||||||
Bakkt Marketplace, LLC
|
<a href="https://coincafe.com/" target="_BLANK">Coincafe</a> - Coin Cafe
|
||||||
|
|
||||||
Bakkt Trust Company LLC
|
<a href="https://www.sofi.com/invest/buy-cryptocurrency/" target="_BLANK">Sofi</a> - SoFi Digital Assets
|
||||||
|
|
||||||
bitFlyer USA, Inc.
|
<a href="https://www.coinbase.com/" target="_BLANK">Coinbase</a> - Coinbase
|
||||||
|
|
||||||
BitGo New York Trust Company LLC
|
<br/>
|
||||||
|
|
||||||
BitOoda Digital, LLC
|
## Bitcoin ATM's
|
||||||
|
|
||||||
Bitpay, Inc.
|
<a href="https://coinsource.net/" target="_BLANK">Coinsource</a> - coinsource
|
||||||
|
|
||||||
Bitstamp USA, Inc.
|
<br/>
|
||||||
|
|
||||||
Block, Inc., f/k/a Square, Inc.
|
View the full list of registered <a href="https://www.dfs.ny.gov/virtual_currency_businesses" target="_BLANK">crypto businesses in New York</a>
|
||||||
|
|
||||||
Cboe Clear Digital, LLC
|
|
||||||
|
|
||||||
Circle Internet Financial, LLC
|
|
||||||
|
|
||||||
Coin Cafe
|
|
||||||
|
|
||||||
Coinbase Custody Trust
|
|
||||||
|
|
||||||
Coinbase, Inc.
|
|
||||||
|
|
||||||
Coinsource
|
|
||||||
|
|
||||||
Cottonwood Vending
|
|
||||||
|
|
||||||
eToro NY LLC
|
|
||||||
|
|
||||||
Fidelity Digital Asset Services, LLC
|
|
||||||
|
|
||||||
Gemini Trust Company, LLC
|
|
||||||
|
|
||||||
Genesis Global Trading, Inc.
|
|
||||||
|
|
||||||
GMO-Z.com Trust Company, Inc.
|
|
||||||
|
|
||||||
LibertyX/Moon Inc.
|
|
||||||
|
|
||||||
NYDIG Execution LLC
|
|
||||||
|
|
||||||
NYDIG Trust Company LLC
|
|
||||||
|
|
||||||
Paxos Trust Company, LLC (f/k/a itBit Trust Company, LLC)
|
|
||||||
|
|
||||||
PayPal, Inc.
|
|
||||||
|
|
||||||
Provenance Technologies, Inc.
|
|
||||||
|
|
||||||
Ripple Markets DE LLC (f/k/a XRP II LLC)
|
|
||||||
|
|
||||||
Robinhood Crypto
|
|
||||||
|
|
||||||
SoFi Digital Assets
|
|
||||||
|
|
||||||
Standard Custody & Trust Company, LLC
|
|
||||||
|
|
||||||
|
|
||||||
Zero Hash Liquidity Services, LLC
|
|
||||||
|
|
||||||
|
|
||||||
Zero Hash LLC
|
|
|
@ -10,7 +10,8 @@ export default defineNuxtConfig({
|
||||||
],
|
],
|
||||||
|
|
||||||
directus: {
|
directus: {
|
||||||
url: 'https://cms.crbtc.org',
|
url: process.env.DIRECTUS_URL,
|
||||||
|
token: process.env.DIRECTUS_TOKEN,
|
||||||
autoFetch: true,
|
autoFetch: true,
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
@ -35,10 +35,10 @@
|
||||||
<div class="event" :id="data.slug">
|
<div class="event" :id="data.slug">
|
||||||
<div class="hero">
|
<div class="hero">
|
||||||
<h3>{{ data.title }}</h3>
|
<h3>{{ data.title }}</h3>
|
||||||
<h4>Location: {{ data.location}}</h4>
|
<h4><b>Location</b>: {{ data.location}}</h4>
|
||||||
<h4>Address: {{ data.address }}</h4>
|
<h4><b>Address</b>: {{ data.address }}</h4>
|
||||||
<h4>Date: {{ data.date }} · {{ data.time }}</h4>
|
<h4><b>Date</b>: {{ data.date }} · {{ data.time }}</h4>
|
||||||
<!-- <EventDate :date="data.date" :time="data.time" /> -->
|
|
||||||
</div>
|
</div>
|
||||||
|
<ContentDoc class="details" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
|
@ -20,7 +20,8 @@
|
||||||
<div class="hero">
|
<div class="hero">
|
||||||
<h3>{{ data.title }}</h3>
|
<h3>{{ data.title }}</h3>
|
||||||
<h4>Written by: {{ data.author }}</h4>
|
<h4>Written by: {{ data.author }}</h4>
|
||||||
<h4>Published: {{ data.published }}</h4>
|
<h4 v-if="data.updated < data.published">Updated: {{ data.updated }}</h4>
|
||||||
|
<h4 v-if="data.published <= data.updated">Published: {{ data.published }}</h4>
|
||||||
<img :src="'/img/guide/' + data.thumbnail" :alt="data.title + ' Thumbnail'" />
|
<img :src="'/img/guide/' + data.thumbnail" :alt="data.title + ' Thumbnail'" />
|
||||||
</div>
|
</div>
|
||||||
<ContentDoc class="content" />
|
<ContentDoc class="content" />
|
||||||
|
|
|
@ -9,54 +9,8 @@
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
|
|
||||||
import { Field, Form } from 'vee-validate';
|
|
||||||
|
|
||||||
function required(value) {
|
|
||||||
return value ? true : 'This field is required';
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const { login } = useDirectusAuth();
|
|
||||||
const router = useRouter();
|
|
||||||
|
|
||||||
const onSubmit = async (values) => {
|
|
||||||
|
|
||||||
console.log(values.email);
|
|
||||||
try {
|
|
||||||
await login({
|
|
||||||
email: values.email,
|
|
||||||
password: values.password
|
|
||||||
});
|
|
||||||
} catch (e) {}
|
|
||||||
};
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="login">
|
|
||||||
<h3>Sign in to your account</h3>
|
|
||||||
<h4 class="policy">By continuing, you agree to our <NuxtLink href="terms">Terms of
|
|
||||||
use</NuxtLink> and <NuxtLink href="privacy">Privacy policy</NuxtLink>.</h4>
|
|
||||||
|
|
||||||
<Form v-slot="{ errors }" @submit="onSubmit" >
|
|
||||||
<div class="input">
|
|
||||||
<label>Email</label>
|
|
||||||
<Field name="email" :rules="required" placeholder="Enter your email" />
|
|
||||||
|
|
||||||
<span>{{ errors.field }}</span>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="input">
|
|
||||||
<label>Password</label>
|
|
||||||
<Field name="password" :rules="required" placeholder="********" type="password" />
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<button>Sign in</button>
|
|
||||||
</Form>
|
|
||||||
|
|
||||||
<p class="newbie">Don't have an account? <NuxtLink href="/register">Create account</NuxtLink></p>
|
|
||||||
<p class="reset">Forgot password? <NuxtLink href="/reset">Reset password</NuxtLink></p>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
|
@ -9,51 +9,8 @@
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
|
|
||||||
import { Field, Form } from 'vee-validate';
|
|
||||||
|
|
||||||
function required(value) {
|
|
||||||
return value ? true : 'This field is required';
|
|
||||||
}
|
|
||||||
|
|
||||||
const { createUser } = useDirectusAuth();
|
|
||||||
|
|
||||||
const onSubmit = async (values) => {
|
|
||||||
try {
|
|
||||||
const newUser = await createUser({
|
|
||||||
email: values.email,
|
|
||||||
password: values.password
|
|
||||||
});
|
|
||||||
} catch (e) {}
|
|
||||||
};
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="register">
|
|
||||||
<h3>Create your account</h3>
|
|
||||||
<h4 class="policy">By continuing, you agree to our <NuxtLink href="terms">Terms of
|
|
||||||
use</NuxtLink> and <NuxtLink href="privacy">Privacy policy</NuxtLink>.</h4>
|
|
||||||
|
|
||||||
<Form v-slot="{ errors }" @submit="onSubmit" >
|
|
||||||
<div class="input">
|
|
||||||
<label>Username</label>
|
|
||||||
<Field name="username" placeholder="Choose a username" />
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="input">
|
|
||||||
<label>Email</label>
|
|
||||||
<Field name="email" placeholder="Enter your email" />
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="input">
|
|
||||||
<label>Password</label>
|
|
||||||
<Field name="password" placeholder="********" type="password" />
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<button>Create account</button>
|
|
||||||
</form>
|
|
||||||
|
|
||||||
<p class="newbie">Already have an account? <NuxtLink href="/login">Sign in</NuxtLink></p>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
|
@ -0,0 +1 @@
|
||||||
|
<template></template>
|
File diff suppressed because it is too large
Load Diff
Before Width: | Height: | Size: 67 KiB After Width: | Height: | Size: 67 KiB |
Binary file not shown.
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 4.1 KiB |
Loading…
Reference in New Issue