forked from trent_larson/crowd-funder-for-time-pwa
add nostr Trustroots partner as an option when submitting a project
This commit is contained in:
@@ -145,6 +145,16 @@
|
|||||||
</l-map>
|
</l-map>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div v-if="showGeneralAdvanced" class="flex items-center mb-4">
|
||||||
|
<input
|
||||||
|
type="checkbox"
|
||||||
|
class="mr-2"
|
||||||
|
v-model="sendToTrustroots"
|
||||||
|
@click="sendToTrustroots = !sendToTrustroots"
|
||||||
|
/>
|
||||||
|
<label for="sendToTrustroots">Send to Trustroots</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="mt-8">
|
<div class="mt-8">
|
||||||
<div class="grid grid-cols-1 sm:grid-cols-2 gap-2">
|
<div class="grid grid-cols-1 sm:grid-cols-2 gap-2">
|
||||||
<button
|
<button
|
||||||
@@ -224,6 +234,8 @@ export default class NewEditProjectView extends Vue {
|
|||||||
numAccounts = 0;
|
numAccounts = 0;
|
||||||
projectId = "";
|
projectId = "";
|
||||||
projectIssuerDid = "";
|
projectIssuerDid = "";
|
||||||
|
sendToTrustroots = false;
|
||||||
|
showGeneralAdvanced = false;
|
||||||
startDateInput?: string;
|
startDateInput?: string;
|
||||||
startTimeInput?: string;
|
startTimeInput?: string;
|
||||||
zoneName = DateTime.local().zoneName;
|
zoneName = DateTime.local().zoneName;
|
||||||
@@ -236,6 +248,7 @@ export default class NewEditProjectView extends Vue {
|
|||||||
const settings = await retrieveSettingsForActiveAccount();
|
const settings = await retrieveSettingsForActiveAccount();
|
||||||
this.activeDid = settings.activeDid || "";
|
this.activeDid = settings.activeDid || "";
|
||||||
this.apiServer = settings.apiServer || "";
|
this.apiServer = settings.apiServer || "";
|
||||||
|
this.showGeneralAdvanced = !!settings.showGeneralAdvanced;
|
||||||
|
|
||||||
this.projectId = (this.$route as Router).query["projectId"] || "";
|
this.projectId = (this.$route as Router).query["projectId"] || "";
|
||||||
|
|
||||||
@@ -418,9 +431,42 @@ export default class NewEditProjectView extends Vue {
|
|||||||
try {
|
try {
|
||||||
const resp = await this.axios.post(url, payload, { headers });
|
const resp = await this.axios.post(url, payload, { headers });
|
||||||
if (resp.data?.success?.handleId) {
|
if (resp.data?.success?.handleId) {
|
||||||
|
console.log("Saved project with data", resp.data.success);
|
||||||
this.errorMessage = "";
|
this.errorMessage = "";
|
||||||
|
|
||||||
const projectPath = encodeURIComponent(resp.data.success.handleId);
|
const projectPath = encodeURIComponent(resp.data.success.handleId);
|
||||||
|
|
||||||
|
if (this.sendToTrustroots) {
|
||||||
|
const trustrootsUrl = "http://localhost:3000/api/partner/link";
|
||||||
|
const trustrootsParams = new URLSearchParams({
|
||||||
|
jwtId: resp.data.success.claimId,
|
||||||
|
linkCode: "NOSTR-EVENT-TRUSTROOTS",
|
||||||
|
inputJson: JSON.stringify("localhost " + resp.data.success.claimId),
|
||||||
|
});
|
||||||
|
const fullTrustrootsUrl =
|
||||||
|
trustrootsUrl + "?" + trustrootsParams.toString();
|
||||||
|
const headers = await getHeaders(issuerDid);
|
||||||
|
try {
|
||||||
|
const linkResp = await this.axios.post(
|
||||||
|
fullTrustrootsUrl,
|
||||||
|
{},
|
||||||
|
{ headers },
|
||||||
|
);
|
||||||
|
console.log("Sent to Trustroots with data!!!!", linkResp.data);
|
||||||
|
} catch (error) {
|
||||||
|
console.error("Error sending to Trustroots", error);
|
||||||
|
this.$notify(
|
||||||
|
{
|
||||||
|
group: "alert",
|
||||||
|
type: "danger",
|
||||||
|
title: "Error Sending to Trustroots",
|
||||||
|
text: "There was an error sending to Trustroots.",
|
||||||
|
},
|
||||||
|
5000,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
(this.$router as Router).push({ path: "/project/" + projectPath });
|
(this.$router as Router).push({ path: "/project/" + projectPath });
|
||||||
} else {
|
} else {
|
||||||
console.error(
|
console.error(
|
||||||
|
|||||||
Reference in New Issue
Block a user