From 91645d08932a6616b80d6975f0f8d639e9a35b52 Mon Sep 17 00:00:00 2001 From: SrGooglo Date: Mon, 19 Jun 2023 19:21:40 +0000 Subject: [PATCH] added nfc endpoint handler --- packages/app/constants/routes.js | 5 +++ packages/app/src/pages/nfc/[tag_id].jsx | 44 +++++++++++++++++++++++++ 2 files changed, 49 insertions(+) create mode 100644 packages/app/src/pages/nfc/[tag_id].jsx diff --git a/packages/app/constants/routes.js b/packages/app/constants/routes.js index 670872ad..b4390386 100755 --- a/packages/app/constants/routes.js +++ b/packages/app/constants/routes.js @@ -48,5 +48,10 @@ export default [ path: "/landing/*", useLayout: "blank", public: true + }, + { + path: "/nfc/*", + useLayout: "blank", + public: true } ] \ No newline at end of file diff --git a/packages/app/src/pages/nfc/[tag_id].jsx b/packages/app/src/pages/nfc/[tag_id].jsx new file mode 100644 index 00000000..f4434b0e --- /dev/null +++ b/packages/app/src/pages/nfc/[tag_id].jsx @@ -0,0 +1,44 @@ +import React from "react" +import NFCModel from "comty.js/models/nfc" +import { Icons } from "components/Icons" + +export default (props) => { + const { tag_id } = props.params + + const execution = async () => { + const result = await NFCModel.getTagById(tag_id) + .catch((err) => { + console.log(err) + app.message.error("NFC Tag not found") + return false + }) + + if (!result) { + return false + } + + console.log(result) + + switch (result.behavior.type) { + case "url": { + return window.location.href = result.behavior.value + } + case "profile": { + return app.navigation.goToAccount(result.behavior.value) + } + } + } + + React.useEffect(() => { + execution() + }, []) + + return
+ +
+} \ No newline at end of file