From 0e2a08daf37695891f148e361ccb1b027a21140c Mon Sep 17 00:00:00 2001 From: snsd0805 Date: Fri, 9 Jun 2023 22:56:44 +0800 Subject: [PATCH] feat: add cookie after registering import vue-cookie to log whether the user logined. --- package-lock.json | 22 ++++++++++++++++++++++ package.json | 2 ++ src/components/PageNavbar.vue | 33 ++++++++++++++++++++++++++++----- src/main.js | 2 ++ src/views/LinkSBTView.vue | 4 ++++ 5 files changed, 58 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index e12043a..f382aff 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,8 +9,10 @@ "version": "0.0.0", "dependencies": { "@metamask/detect-provider": "^2.0.0", + "html5-qrcode": "^2.3.8", "pinia": "^2.0.36", "vue": "^3.3.2", + "vue-cookies": "^1.8.3", "vue-router": "^4.2.0", "web3": "^1.8.2" }, @@ -3350,6 +3352,11 @@ "minimalistic-crypto-utils": "^1.0.1" } }, + "node_modules/html5-qrcode": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/html5-qrcode/-/html5-qrcode-2.3.8.tgz", + "integrity": "sha512-jsr4vafJhwoLVEDW3n1KvPnCCXWaQfRng0/EEYk1vNcQGcG/htAdhJX0be8YyqMoSz7+hZvOZSTAepsabiuhiQ==" + }, "node_modules/http-cache-semantics": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", @@ -5825,6 +5832,11 @@ "@vue/shared": "3.3.4" } }, + "node_modules/vue-cookies": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/vue-cookies/-/vue-cookies-1.8.3.tgz", + "integrity": "sha512-VBRsyRMVdahBgFfh389TMHPmDdr4URDJNMk4FKSCfuNITs7+jitBDhwyL4RJd3WUsfOYNNjPAkfbehyH9AFuoA==" + }, "node_modules/vue-eslint-parser": { "version": "9.3.0", "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.3.0.tgz", @@ -8823,6 +8835,11 @@ "minimalistic-crypto-utils": "^1.0.1" } }, + "html5-qrcode": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/html5-qrcode/-/html5-qrcode-2.3.8.tgz", + "integrity": "sha512-jsr4vafJhwoLVEDW3n1KvPnCCXWaQfRng0/EEYk1vNcQGcG/htAdhJX0be8YyqMoSz7+hZvOZSTAepsabiuhiQ==" + }, "http-cache-semantics": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", @@ -10593,6 +10610,11 @@ "@vue/shared": "3.3.4" } }, + "vue-cookies": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/vue-cookies/-/vue-cookies-1.8.3.tgz", + "integrity": "sha512-VBRsyRMVdahBgFfh389TMHPmDdr4URDJNMk4FKSCfuNITs7+jitBDhwyL4RJd3WUsfOYNNjPAkfbehyH9AFuoA==" + }, "vue-eslint-parser": { "version": "9.3.0", "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.3.0.tgz", diff --git a/package.json b/package.json index 696f0e8..9c56e6f 100644 --- a/package.json +++ b/package.json @@ -9,8 +9,10 @@ }, "dependencies": { "@metamask/detect-provider": "^2.0.0", + "html5-qrcode": "^2.3.8", "pinia": "^2.0.36", "vue": "^3.3.2", + "vue-cookies": "^1.8.3", "vue-router": "^4.2.0", "web3": "^1.8.2" }, diff --git a/src/components/PageNavbar.vue b/src/components/PageNavbar.vue index 06717ee..23869a9 100644 --- a/src/components/PageNavbar.vue +++ b/src/components/PageNavbar.vue @@ -1,6 +1,24 @@ @@ -31,10 +49,15 @@ export default { diff --git a/src/main.js b/src/main.js index fda1e6e..1c06428 100644 --- a/src/main.js +++ b/src/main.js @@ -3,10 +3,12 @@ import { createPinia } from 'pinia' import App from './App.vue' import router from './router' +import VueCookies from 'vue-cookies' const app = createApp(App) app.use(createPinia()) app.use(router) +app.use(VueCookies, { expires: '7d'}) app.mount('#app') diff --git a/src/views/LinkSBTView.vue b/src/views/LinkSBTView.vue index 8b6e92b..4e20956 100644 --- a/src/views/LinkSBTView.vue +++ b/src/views/LinkSBTView.vue @@ -42,6 +42,10 @@ export default { try { await this.bank.methods.register(this.number).send({ from: this.clientAddr }) this.successModalStatus = true + this.$cookies.set('linked', true) + this.$cookies.set('SBTNumber', returnNumber) + this.$cookies.set('address', this.clientAddr) + this.link = '/signup/credit' this.msg = '註冊成功!' } catch (error) {