@ -152,11 +152,13 @@
< div class = "flex" @ click = "sendToTrustroots = !sendToTrustroots" >
< input type = "checkbox" class = "mr-2" v -model = " sendToTrustroots " / >
< label > Send to Trustroots < / label >
< fa icon = "circle-info" class = "text-blue-500 ml-2 cursor-pointer" @click.stop ="showNostrPartnerInfo" / >
< / div >
<!--
< div class = "flex" @ click = "sendToTripHopping = !sendToTripHopping" >
< input type = "checkbox" class = "mr-2" v -model = " sendToTripHopping " / >
< label > Send to TripHopping < / label >
< fa icon = "circle-info" class = "text-blue-500 ml-2 cursor-pointer" @click.stop ="showNostrPartnerInfo" / >
< / div >
-- >
< / div >
@ -408,13 +410,26 @@ export default class NewEditProjectView extends Vue {
delete vcClaim . image ;
}
if ( this . includeLocation ) {
vcClaim . location = {
geo : {
"@type" : "GeoCoordinates" ,
latitude : this . latitude ,
longitude : this . longitude ,
} ,
} ;
if ( ! this . latitude || ! this . longitude ) {
this . $notify (
{
group : "alert" ,
type : "danger" ,
title : "Location Error" ,
text : "The location was invalid so it was not set." ,
} ,
5000 ,
) ;
delete vcClaim . location ;
} else {
vcClaim . location = {
geo : {
"@type" : "GeoCoordinates" ,
latitude : this . latitude ,
longitude : this . longitude ,
} ,
} ;
}
} else {
delete vcClaim . location ;
}
@ -431,7 +446,7 @@ export default class NewEditProjectView extends Vue {
{
group : "alert" ,
type : "danger" ,
title : "Error" ,
title : "Date Error" ,
text : "The date was invalid so it was not set." ,
} ,
5000 ,
@ -455,26 +470,40 @@ export default class NewEditProjectView extends Vue {
const projectPath = encodeURIComponent ( resp . data . success . handleId ) ;
let signedPayload : VerifiedEvent | undefined ; / / s i g n s o m e t h i n g t o p r o v e o w n e r s h i p o f p u b k e y
if ( this . sendToTrustroots ) {
signedPayload = await this . signPayload ( ) ;
this . sendToNostrPartner (
"NOSTR-EVENT-TRUSTROOTS" ,
"Trustroots" ,
resp . data . success . claimId ,
signedPayload ,
) ;
}
if ( this . sendToTripHopping ) {
if ( ! signedPayload ) {
signedPayload = await this . signPayload ( ) ;
if ( this . sendToTrustroots || this . sendToTripHopping ) {
if ( this . latitude && this . longitude ) {
let signedPayload : VerifiedEvent | undefined ; / / s i g n s o m e t h i n g t o p r o v e o w n e r s h i p o f p u b k e y
if ( this . sendToTrustroots ) {
signedPayload = await this . signPayload ( ) ;
this . sendToNostrPartner (
"NOSTR-EVENT-TRUSTROOTS" ,
"Trustroots" ,
resp . data . success . claimId ,
signedPayload ,
) ;
}
if ( this . sendToTripHopping ) {
if ( ! signedPayload ) {
signedPayload = await this . signPayload ( ) ;
}
this . sendToNostrPartner (
"NOSTR-EVENT-TRIPHOPPING" ,
"TripHopping" ,
resp . data . success . claimId ,
signedPayload ,
) ;
}
} else {
this . $notify (
{
group : "alert" ,
type : "danger" ,
title : "Partner Error" ,
text : "A partner was selected but the location was not set, so it was not sent to any partner." ,
} ,
5000 ,
) ;
}
this . sendToNostrPartner (
"NOSTR-EVENT-TRIPHOPPING" ,
"TripHopping" ,
resp . data . success . claimId ,
signedPayload ,
) ;
}
( this . $router as Router ) . push ( { path : "/project/" + projectPath } ) ;
@ -689,5 +718,17 @@ export default class NewEditProjectView extends Vue {
public onCancelClick ( ) {
( this . $router as Router ) . back ( ) ;
}
public showNostrPartnerInfo ( ) {
this . $notify (
{
group : "alert" ,
type : "info" ,
title : "About Nostr Events" ,
text : "This will cause a submission to a partner on the nostr network. It will contain your public key data which may allow correlation, so don't allow this if you're not comfortable with that." ,
} ,
7000 ,
) ;
}
}
< / script >