stalls/stores create update with human readable zones
This commit is contained in:
parent
820852e08b
commit
7eb0d13590
2 changed files with 47 additions and 34 deletions
|
|
@ -168,7 +168,7 @@ async def create_diagonalley_stall(
|
||||||
data.publickey,
|
data.publickey,
|
||||||
data.privatekey,
|
data.privatekey,
|
||||||
data.relays,
|
data.relays,
|
||||||
repr(data.shippingzones)),
|
data.shippingzones),
|
||||||
)
|
)
|
||||||
|
|
||||||
stall = await get_diagonalley_stall(stall_id)
|
stall = await get_diagonalley_stall(stall_id)
|
||||||
|
|
|
||||||
|
|
@ -221,7 +221,8 @@
|
||||||
label="Wallet *"
|
label="Wallet *"
|
||||||
>
|
>
|
||||||
</q-select>
|
</q-select>
|
||||||
<div class="row">
|
<!-- NOSTR -->
|
||||||
|
<!-- <div class="row">
|
||||||
<div class="col-5">
|
<div class="col-5">
|
||||||
<q-btn unelevated @onclick="generateKeys" color="primary">Generate keys</q-btn>
|
<q-btn unelevated @onclick="generateKeys" color="primary">Generate keys</q-btn>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -242,7 +243,7 @@
|
||||||
dense
|
dense
|
||||||
v-model.trim="stallDialog.data.privatekey"
|
v-model.trim="stallDialog.data.privatekey"
|
||||||
label="Private Key"
|
label="Private Key"
|
||||||
></q-input>
|
></q-input> -->
|
||||||
<q-select
|
<q-select
|
||||||
:options="zoneOptions"
|
:options="zoneOptions"
|
||||||
filled
|
filled
|
||||||
|
|
@ -251,7 +252,8 @@
|
||||||
v-model.trim="stallDialog.data.shippingzones"
|
v-model.trim="stallDialog.data.shippingzones"
|
||||||
label="Shipping Zones"
|
label="Shipping Zones"
|
||||||
></q-select>
|
></q-select>
|
||||||
<q-select
|
<!-- NOSTR -->
|
||||||
|
<!-- <q-select
|
||||||
:options="relayOptions"
|
:options="relayOptions"
|
||||||
filled
|
filled
|
||||||
dense
|
dense
|
||||||
|
|
@ -271,23 +273,24 @@
|
||||||
dense
|
dense
|
||||||
v-model.trim="stallDialog.data.nostrShops"
|
v-model.trim="stallDialog.data.nostrShops"
|
||||||
label="Nostr shop public keys (seperate by comma)"
|
label="Nostr shop public keys (seperate by comma)"
|
||||||
></q-input>
|
></q-input> -->
|
||||||
|
<p><strong><small>Nostr support coming soon!</small></strong></p>
|
||||||
<div class="row q-mt-lg">
|
<div class="row q-mt-lg">
|
||||||
<q-btn
|
<q-btn
|
||||||
v-if="stallDialog.data.id"
|
v-if="stallDialog.data.id"
|
||||||
unelevated
|
unelevated
|
||||||
color="primary"
|
color="primary"
|
||||||
type="submit"
|
type="submit"
|
||||||
>Update Stall</q-btn
|
>Update Store</q-btn
|
||||||
>
|
>
|
||||||
<q-btn
|
<q-btn
|
||||||
v-else
|
v-else
|
||||||
unelevated
|
unelevated
|
||||||
color="primary"
|
color="primary"
|
||||||
:disable="stallDialog.data.countries == null
|
:disable="stallDialog.data.wallet == null
|
||||||
|| stallDialog.data.cost == null"
|
|| stallDialog.data.shippingzones == null"
|
||||||
type="submit"
|
type="submit"
|
||||||
>Create Stall</q-btn
|
>Create Store</q-btn
|
||||||
>
|
>
|
||||||
<q-btn v-close-popup flat color="grey" class="q-ml-auto"
|
<q-btn v-close-popup flat color="grey" class="q-ml-auto"
|
||||||
>Cancel</q-btn
|
>Cancel</q-btn
|
||||||
|
|
@ -311,11 +314,11 @@
|
||||||
>+ Shipping Zone<q-tooltip> Create a shipping zone </q-tooltip></q-btn
|
>+ Shipping Zone<q-tooltip> Create a shipping zone </q-tooltip></q-btn
|
||||||
>
|
>
|
||||||
<q-btn unelevated v-if="zones.length > 0" color="primary" @click="openStallDialog()"
|
<q-btn unelevated v-if="zones.length > 0" color="primary" @click="openStallDialog()"
|
||||||
>+ Stall
|
>+ Store
|
||||||
<q-tooltip> Create a stall to list products on </q-tooltip></q-btn
|
<q-tooltip> Create a stall to list products on </q-tooltip></q-btn
|
||||||
>
|
>
|
||||||
<q-btn unelevated v-else color="primary" @click="errorMessage('First set shipping zone(s).')"
|
<q-btn unelevated v-else color="primary" @click="errorMessage('First set shipping zone(s).')"
|
||||||
>+ Stall
|
>+ Store
|
||||||
<q-tooltip> Create a stall to list products on </q-tooltip></q-btn
|
<q-tooltip> Create a stall to list products on </q-tooltip></q-btn
|
||||||
>
|
>
|
||||||
<q-btn unelevated color="primary" @click="shopDialog.show = true"
|
<q-btn unelevated color="primary" @click="shopDialog.show = true"
|
||||||
|
|
@ -469,12 +472,12 @@
|
||||||
</q-table>
|
</q-table>
|
||||||
</q-card-section>
|
</q-card-section>
|
||||||
</q-card>
|
</q-card>
|
||||||
|
<!-- STORES -->
|
||||||
<q-card>
|
<q-card>
|
||||||
<q-card-section>
|
<q-card-section>
|
||||||
<div class="row items-center no-wrap q-mb-md">
|
<div class="row items-center no-wrap q-mb-md">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<h5 class="text-subtitle1 q-my-none">Stalls</h5>
|
<h5 class="text-subtitle1 q-my-none">Stores</h5>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<q-btn flat color="grey" @click="exportStallsCSV"
|
<q-btn flat color="grey" @click="exportStallsCSV"
|
||||||
|
|
@ -528,7 +531,7 @@
|
||||||
</q-table>
|
</q-table>
|
||||||
</q-card-section>
|
</q-card-section>
|
||||||
</q-card>
|
</q-card>
|
||||||
|
<!-- ZONES -->
|
||||||
<q-card>
|
<q-card>
|
||||||
<q-card-section>
|
<q-card-section>
|
||||||
<div class="row items-center no-wrap q-mb-md">
|
<div class="row items-center no-wrap q-mb-md">
|
||||||
|
|
@ -964,7 +967,7 @@ new Vue({
|
||||||
LNbits.api
|
LNbits.api
|
||||||
.request(
|
.request(
|
||||||
'GET',
|
'GET',
|
||||||
'/diagonalley/api/v1/stalls?all_wallets',
|
'/diagonalley/api/v1/stalls?all_wallets=true',
|
||||||
self.g.user.wallets[0].adminkey
|
self.g.user.wallets[0].adminkey
|
||||||
)
|
)
|
||||||
.then(function (response) {
|
.then(function (response) {
|
||||||
|
|
@ -977,49 +980,59 @@ new Vue({
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
openStallDialog: function () {
|
openStallDialog: function () {
|
||||||
console.log(this.zones[0]['id'])
|
this.zoneOptions = this.zones.map(z => `${z.id} - ${z.countries}`)
|
||||||
for(let i = 0; i < this.zones.length; i ++){
|
//console.log(this.zones[0]['id'])
|
||||||
this.zoneOptions.push(this.zones[i]['id'])
|
//for(let i = 0; i < this.zones.length; i ++){
|
||||||
}
|
// this.zoneOptions.push(this.zones[i]['id'])
|
||||||
|
//}
|
||||||
this.stallDialog.show = true
|
this.stallDialog.show = true
|
||||||
},
|
},
|
||||||
openStallUpdateDialog: function (linkId) {
|
openStallUpdateDialog: function (linkId) {
|
||||||
var self = this
|
var self = this
|
||||||
var link = _.findWhere(self.stalls, {id: linkId})
|
var link = _.findWhere(self.stalls, {id: linkId})
|
||||||
for(let i = 0; i < this.zones.length; i ++){
|
this.zoneOptions = this.zones.map(z => `${z.id} - ${z.countries}`)
|
||||||
this.zoneOptions.push(this.stalls[i][0])
|
//for(let i = 0; i < this.zones.length; i ++){
|
||||||
}
|
// this.zoneOptions.push(this.stalls[i][0])
|
||||||
|
//}
|
||||||
this.stallDialog.data = _.clone(link._data)
|
this.stallDialog.data = _.clone(link._data)
|
||||||
|
let shippingzones = this.zoneOptions.filter(z => this.stallDialog.data.shippingzones.split(",").includes(z.split("-")[0].trim()))
|
||||||
|
|
||||||
|
this.stallDialog.data.shippingzones = shippingzones//this.stallDialog.data.shippingzones.split(",")
|
||||||
|
|
||||||
|
console.log(this.stallDialog.data)
|
||||||
|
//let zones = this.zoneOptions
|
||||||
|
// .filter(z => z.id == )
|
||||||
this.stallDialog.show = true
|
this.stallDialog.show = true
|
||||||
},
|
},
|
||||||
sendStallFormData: function () {
|
sendStallFormData: function () {
|
||||||
if (this.stallDialog.data.id) {
|
let data = {
|
||||||
} else {
|
name: this.stallDialog.data.name,
|
||||||
var data = {
|
wallet: this.stallDialog.data.wallet,
|
||||||
name: this.stallDialog.data.name,
|
publickey: this.stallDialog.data.publickey,
|
||||||
wallet: this.stallDialog.data.wallet,
|
privatekey: this.stallDialog.data.privatekey,
|
||||||
publickey: this.stallDialog.data.publickey,
|
relays: this.stallDialog.data.relays,
|
||||||
privatekey: this.stallDialog.data.privatekey,
|
shippingzones: this.stallDialog.data.shippingzones
|
||||||
relays: this.stallDialog.data.relays
|
.map(z => z.split("-")[0].trim())
|
||||||
}
|
.toString()
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.stallDialog.data.id) {
|
if (this.stallDialog.data.id) {
|
||||||
|
this.stallDialog.data = {...this.stallDialog.data, ...data}
|
||||||
this.updateStall(this.stallDialog.data)
|
this.updateStall(this.stallDialog.data)
|
||||||
} else {
|
} else {
|
||||||
this.createStall(data)
|
this.createStall(data)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
updateStall: function (data) {
|
updateStall: function (data) {
|
||||||
|
console.log(data)
|
||||||
var self = this
|
var self = this
|
||||||
LNbits.api
|
LNbits.api
|
||||||
.request(
|
.request(
|
||||||
'PUT',
|
'PUT',
|
||||||
'/diagonalley/api/v1/stalls' + data.id,
|
'/diagonalley/api/v1/stalls/' + data.id,
|
||||||
_.findWhere(self.g.user.wallets, {
|
_.findWhere(self.g.user.wallets, {
|
||||||
id: self.stallDialog.data.wallet
|
id: self.stallDialog.data.wallet
|
||||||
}).inkey,
|
}).inkey,
|
||||||
_.pick(data, 'name', 'wallet', 'publickey', 'privatekey')
|
data
|
||||||
)
|
)
|
||||||
.then(function (response) {
|
.then(function (response) {
|
||||||
self.stalls = _.reject(self.stalls, function (obj) {
|
self.stalls = _.reject(self.stalls, function (obj) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue