CDateTime - CGallery

This commit is contained in:
Paolo Arena
2021-10-01 19:42:21 +02:00
parent 2384e485a5
commit bf7dcf20a6
16 changed files with 188 additions and 158 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

View File

@@ -7,7 +7,7 @@ export default defineComponent({
name: 'CDate', name: 'CDate',
props: { props: {
mydate: { mydate: {
type: Object as PropType<Date>, type: String,
required: true, required: true,
}, },
label: { label: {
@@ -62,11 +62,11 @@ export default defineComponent({
const mystyleicon = ref('font-size: 1.5rem;') const mystyleicon = ref('font-size: 1.5rem;')
watch(() => props.mydate, (value, oldval) => { watch(() => props.mydate, (value, oldval) => {
valueInternal.value = value valueInternal.value = tools.getstrdateToDate(value)
}) })
function created() { function created() {
valueInternal.value = props.mydate valueInternal.value = tools.getstrdateToDate(props.mydate)
if (props.data_class !== '') { if (props.data_class !== '') {
mystyleicon.value = 'font-size: 1rem;' mystyleicon.value = 'font-size: 1rem;'

View File

@@ -1,7 +1,7 @@
import { defineComponent, onMounted, PropType, ref, toRef, watch } from 'vue' import { defineComponent, ref, toRef, watch } from 'vue'
import { tools } from '@src/store/Modules/tools' import { tools } from '@src/store/Modules/tools'
import { date, useQuasar } from 'quasar' import { useQuasar } from 'quasar'
import { useCalendarStore } from '@store/CalendarStore' import { useCalendarStore } from '@store/CalendarStore'
import { useI18n } from '@/boot/i18n' import { useI18n } from '@/boot/i18n'
import { toolsext } from '@store/Modules/toolsext' import { toolsext } from '@store/Modules/toolsext'
@@ -10,14 +10,14 @@ export default defineComponent({
name: 'CDate', name: 'CDate',
props: { props: {
value: { value: {
type: Object as PropType<Date>, type: String,
required: false, required: false,
default: null, default: '',
}, },
valueDate: { valueDate: {
type: Object as PropType<Date>, type: String,
required: false, required: false,
default: null, default: '',
}, },
data_class: { data_class: {
type: String, type: String,
@@ -67,9 +67,9 @@ export default defineComponent({
const showDateTimeScroller = ref(false) const showDateTimeScroller = ref(false)
const saveit = ref(false) const saveit = ref(false)
const myvalue = ref(new Date()) const myvalue = ref('')
const valueprec = ref(new Date()) const valueprec = ref('')
const myvalueDate = toRef(props, 'valueDate') // const myvalueDate = toRef(props, 'valueDate')
function getclass() { function getclass() {
return 'calendar_comp ' + props.data_class return 'calendar_comp ' + props.data_class
@@ -79,9 +79,9 @@ export default defineComponent({
// console.log('Opening', 'myvalue', myvalue, 'value', value) // console.log('Opening', 'myvalue', myvalue, 'value', value)
saveit.value = false saveit.value = false
valueprec.value = myvalue.value valueprec.value = myvalue.value
if (myvalue.value === undefined) { if (myvalue.value === '') {
myvalueDate.value = new Date() // myvalueDate.value = tools.getstrYYMMDDDateTime(new Date())
myvalue.value = tools.getstrYYMMDDDateTime(myvalueDate.value) myvalue.value = tools.getstrYYMMDDDateTime(new Date())
} }
// console.log('Opening', myvalueDate, myvalue) // console.log('Opening', myvalueDate, myvalue)
emit('show') emit('show')
@@ -97,9 +97,10 @@ export default defineComponent({
} }
} }
watch(() => myvalueDate.value, (value, oldval) => { watch(() => props.value, (value, oldval) => {
if (myvalueDate.value) { if (value) {
myvalue.value = tools.getstrYYMMDDDateTime(myvalueDate.value) myvalue.value = tools.getstrYYMMDDDateTime(value)
// myvalueDate.value = myvalue.value
console.log('myvalue Date = ', myvalue.value) console.log('myvalue Date = ', myvalue.value)
} }
@@ -109,7 +110,7 @@ export default defineComponent({
// console.log('Close') // console.log('Close')
saveit.value = true saveit.value = true
showDateTimeScroller.value = false showDateTimeScroller.value = false
emit('savetoclose', myvalue, valueprec) emit('savetoclose', myvalue.value, valueprec.value)
} }
function scrollerPopupStyle280() { function scrollerPopupStyle280() {
@@ -128,10 +129,9 @@ export default defineComponent({
} }
function created() { function created() {
if (props.value !== null) if (props.value !== null) {
myvalue.value = props.value myvalue.value = tools.getstrYYMMDDDateTime(props.value)
else }
myvalue.value = tools.getstrYYMMDDDateTime(myvalueDate.value)
// console.log('created myvalue', myvalue) // console.log('created myvalue', myvalue)
} }
@@ -139,6 +139,8 @@ export default defineComponent({
function changeval(newval: Date) { function changeval(newval: Date) {
// console.log('changeval', newval, 'value=', value, 'myvalue=', myvalue) // console.log('changeval', newval, 'value=', value, 'myvalue=', myvalue)
emit('update:value', newval) emit('update:value', newval)
saveit.value = true
emit('savetoclose', myvalue.value, valueprec.value)
} }
function mystyle() { function mystyle() {

View File

@@ -1,5 +1,5 @@
<template> <template>
<div class="" :style="mystyle"> <div class="" :style="mystyle()">
<q-input <q-input
v-model="myvalue" v-model="myvalue"
v-show="false" v-show="false"
@@ -14,7 +14,7 @@
mask="####-##-## ##:##" mask="####-##-## ##:##"
debounce="500" debounce="500"
@input="changeval" @input="changeval"
:input-class="getclass" :input-class="getclass()"
> >
</q-input> </q-input>
@@ -27,11 +27,11 @@
color="blue-6" color="blue-6"
:bg-color="bgcolor" :bg-color="bgcolor"
debounce="500" debounce="500"
:input-class="getclass"> :input-class="getclass()">
<template v-slot:control> <template v-slot:control>
<div style=""> <div style="">
<div class="self-center full-width no-outline" :style="mystyle" tabindex="0"> <div class="self-center full-width no-outline" :style="mystyle()" tabindex="0">
{{ getstrDate(myvalue) }} {{ getstrDate(myvalue) }}
</div> </div>
</div> </div>
@@ -39,6 +39,20 @@
<template v-slot:append> <template v-slot:append>
<q-icon v-if="canEdit" name="event" class="cursor-pointer"> <q-icon v-if="canEdit" name="event" class="cursor-pointer">
<q-popup-proxy v-model="showDateTimeScroller" @before-show="Opening" @before-hide="Closing"> <q-popup-proxy v-model="showDateTimeScroller" @before-show="Opening" @before-hide="Closing">
<div class="q-gutter-md row items-start">
<q-date
v-model="myvalue" mask="YYYY-MM-DD HH:mm" color="purple"
@update:model-value="changeval"
@close="() => { savetoclose(); }"
/>
<q-time
v-model="myvalue" mask="YYYY-MM-DD HH:mm" color="purple"
@update:model-value="changeval"
@close="() => { savetoclose(); }"
/>
</div>
<!-- <!--
<q-input <q-input
v-model="myvalue" v-model="myvalue"

View File

@@ -19,7 +19,7 @@ export default defineComponent({
required: true, required: true,
}, },
listimages: { listimages: {
type: Object as PropType<IImgGallery[]>, type: Object as PropType<IImgGallery[] | null>,
required: true, required: true,
}, },
}, },
@@ -31,14 +31,16 @@ export default defineComponent({
const globalStore = useGlobalStore() const globalStore = useGlobalStore()
const mygall = ref(<IGallery>{}) const mygall = ref(<IGallery>{})
const mylistimages = ref(<IImgGallery[]>[]) const mylistimages = ref(<IImgGallery[] | null>[])
watch(() => props.gall, (newval, oldval) => { watch(() => props.gall, (newval, oldval) => {
mygall.value = props.gall mygall.value = props.gall
}) })
watch(() => props.listimages, (newval, oldval) => { watch(() => props.listimages, (newval, oldval) => {
mylistimages.value = props.listimages if (props.listimages) {
mylistimages.value = props.listimages
}
}) })
function created() { function created() {
@@ -83,69 +85,72 @@ export default defineComponent({
return return
} }
const draggedId = e.dataTransfer.getData('text') if (mylistimages.value) {
let dragout = ''
try {
dragout = e.target.parentNode.parentNode.id
} catch (e) {
dragout = ''
}
const draggedEl = document.getElementById(draggedId)
console.log('draggedId', draggedId, 'draggedEl', draggedEl)
console.log('dragout', dragout)
// check if original parent node const draggedId = e.dataTransfer.getData('text')
if (draggedEl!.parentNode === e.target) { let dragout = ''
try {
dragout = e.target.parentNode.parentNode.id
} catch (e) {
dragout = ''
}
const draggedEl = document.getElementById(draggedId)
console.log('draggedId', draggedId, 'draggedEl', draggedEl)
console.log('dragout', dragout)
// check if original parent node
if (draggedEl!.parentNode === e.target) {
e.target.classList.remove('drag-enter')
return
}
const myindex = mylistimages.value.findIndex((rec) => rec._id === draggedId)
const myrec: IImgGallery = mylistimages.value[myindex]
let myrecprec: IImgGallery
let myrecout: IImgGallery
const myindexout = mylistimages.value.findIndex((rec) => rec._id === dragout)
myrecout = mylistimages.value[myindexout]
let myindexprec = myindexout - 1
if (myindexprec < 0)
myindexprec = 0
if (myindex === myindexout)
return
myrecprec = mylistimages.value[myindexprec]
console.log('myrec', myrec, 'myrecprec', myrecout)
if (myrec && myrecout)
console.log('myrec', myrec, 'myrecprec', myrecout, 'ord1', myrec.order, 'myrecout', myrecout.order)
if (myrecout) {
let diff = 0
const ord2 = myrecprec.order
const ord1 = myrecout.order
diff = Math.round((ord1! - ord2!) / 2)
if (diff <= 0)
diff++
console.log('diff', diff)
let mynum = 0
mynum = myrecprec.order! + diff
console.log('mynum', mynum)
myrec.order = mynum
} else {
myrec.order = Math.round(myrec.order!) - 1
}
console.log('myrec.order', myrec.order)
// make the exchange
// draggedEl.parentNode.removeChild(draggedEl)
// e.target.appendChild(draggedEl)
e.target.classList.remove('drag-enter') e.target.classList.remove('drag-enter')
return
save()
} }
const myindex = mylistimages.value.findIndex((rec) => rec._id === draggedId)
const myrec: IImgGallery = mylistimages.value[myindex]
let myrecprec: IImgGallery
let myrecout: IImgGallery
const myindexout = mylistimages.value.findIndex((rec) => rec._id === dragout)
myrecout = mylistimages.value[myindexout]
let myindexprec = myindexout - 1
if (myindexprec < 0)
myindexprec = 0
if (myindex === myindexout)
return
myrecprec = mylistimages.value[myindexprec]
console.log('myrec', myrec, 'myrecprec', myrecout)
if (myrec && myrecout)
console.log('myrec', myrec, 'myrecprec', myrecout, 'ord1', myrec.order, 'myrecout', myrecout.order)
if (myrecout) {
let diff = 0
const ord2 = myrecprec.order
const ord1 = myrecout.order
diff = Math.round((ord1! - ord2!) / 2)
if (diff <= 0)
diff++
console.log('diff', diff)
let mynum = 0
mynum = myrecprec.order! + diff
console.log('mynum', mynum)
myrec.order = mynum
} else {
myrec.order = Math.round(myrec.order!) - 1
}
console.log('myrec.order', myrec.order)
// make the exchange
// draggedEl.parentNode.removeChild(draggedEl)
// e.target.appendChild(draggedEl)
e.target.classList.remove('drag-enter')
save()
} }
function getclass() { function getclass() {
@@ -157,41 +162,47 @@ export default defineComponent({
} }
function getlastord() { function getlastord() {
let myord = 0 if (mylistimages.value) {
for (const file of mylistimages.value) { let myord = 0
if (file.order! > myord) for (const file of mylistimages.value) {
myord = file.order! if (file.order! > myord)
} myord = file.order!
}
return myord + 10 return myord + 10
}
} }
function uploaded(info: any) { function uploaded(info: any) {
console.log(info) console.log(info)
for (const file of info.files) { if (mylistimages.value) {
mylistimages.value.push({ imagefile: file.name, order: getlastord() }) for (const file of info.files) {
} mylistimages.value.push({ imagefile: file.name, order: getlastord() })
}
save() save()
}
} }
function deleted(rec: any) { function deleted(rec: any) {
// console.table(mylistimages) // console.table(mylistimages)
const index = mylistimages.value.findIndex((elem) => elem.imagefile === rec.imagefile) if (mylistimages.value) {
if (index > -1) { const index = mylistimages.value.findIndex((elem) => elem.imagefile === rec.imagefile)
mylistimages.value.splice(index, 1) if (index > -1) {
mylistimages.value.splice(index, 1)
}
// mylistimages = mylistimages.pop((elem) => elem.imagefile !== rec.imagefile)
// console.table(mylistimages)
save()
} }
// mylistimages = mylistimages.pop((elem) => elem.imagefile !== rec.imagefile)
// console.table(mylistimages)
save()
} }
function getfullname(rec: any) { function getfullname(rec: any) {
return 'statics/upload/' + mygall.value.directory + '/' + rec.imagefile return 'upload/' + mygall.value.directory + '/' + rec.imagefile
} }
function copytoclipboard(rec: any) { function copytoclipboard(rec: any) {
@@ -217,9 +228,9 @@ export default defineComponent({
function getsrcimg(mygallery: any) { function getsrcimg(mygallery: any) {
if (tools.getextfile(mygallery.imagefile) === 'pdf') if (tools.getextfile(mygallery.imagefile) === 'pdf')
return 'statics/images/images/pdf.jpg' return 'images/images/pdf.jpg'
else else
return 'statics/upload/' + mygall.value.directory + '/' + mygallery.imagefile return 'upload/' + mygall.value.directory + '/' + mygallery.imagefile
} }
created() created()

View File

@@ -110,7 +110,7 @@
<q-uploader <q-uploader
label="Aggiungi Immagine o PDF" label="Aggiungi Immagine o PDF"
accept=".jpg, image/*, .pdf" accept=".jpg, image/*, .pdf"
:url="tools.geturlupload()+`/` + gall.directory" :url="tools.geturlupload()+`/` + gall.directory + '/' + tools.getvers()"
:headers="tools.getheaders()" :headers="tools.getheaders()"
:max-file-size="2000000" :max-file-size="2000000"
multiple multiple

View File

@@ -21,6 +21,7 @@
</div> </div>
<div :class="getclassCol(col) + ` q-ma-sm q-pa-sm col-grow rounded-borders`" style="border: 1px solid #bbb"> <div :class="getclassCol(col) + ` q-ma-sm q-pa-sm col-grow rounded-borders`" style="border: 1px solid #bbb">
<div v-if="type === costanti.FieldType.date"> <div v-if="type === costanti.FieldType.date">
Date10:
<CDateTime <CDateTime
:label="col.label" :label="col.label"
class="cursor-pointer" class="cursor-pointer"
@@ -32,6 +33,7 @@
</CDateTime> </CDateTime>
</div> </div>
<div v-else-if="type === costanti.FieldType.onlydate"> <div v-else-if="type === costanti.FieldType.onlydate">
Date11:
<CDateTime <CDateTime
:label="col.label" :label="col.label"
class="cursor-pointer" class="cursor-pointer"

View File

@@ -199,6 +199,7 @@ export default defineComponent({
newVal = true newVal = true
myvalueprec.value = myvalue.value myvalueprec.value = myvalue.value
myvalue.value = newVal myvalue.value = newVal
} }
// console.log('DOPO myvalue', myvalue, newVal, myvalueprec) // console.log('DOPO myvalue', myvalue, newVal, myvalueprec)
} }
@@ -289,7 +290,8 @@ export default defineComponent({
return '' return ''
} }
} }
function selectcountry({ name, iso2, dialCode }: { name: string, iso2: string, dialCode: string}) {
function selectcountry({ name, iso2, dialCode }: {name: string, iso2: string, dialCode: string}) {
// console.log(name, iso2, dialCode) // console.log(name, iso2, dialCode)
myvalueprec.value = myvalue.value myvalueprec.value = myvalue.value
myvalue.value = iso2 myvalue.value = iso2

View File

@@ -16,7 +16,7 @@
<CDateTime <CDateTime
:label="col.label" :label="col.label"
class="cursor-pointer" class="cursor-pointer"
:valueDate="myvalue" v-model:value="myvalue"
:readonly="false" :readonly="false"
:minuteinterval="minuteinterval" :minuteinterval="minuteinterval"
:dense="true" :dense="true"
@@ -84,7 +84,7 @@
</div> </div>
<div v-else-if="col.fieldtype === costanti.FieldType.listimages"> <div v-else-if="col.fieldtype === costanti.FieldType.listimages">
<CGallery <CGallery
:gall="row" :listimages="myvalue" :edit="isviewfield" :gall="row" :listimages="myvalue" :edit="isviewfield()"
@showandsave="Savedb" @showandsave="Savedb"
@input="changevalRec" @input="changevalRec"
> >
@@ -93,7 +93,7 @@
</div> </div>
<div v-else-if="col.fieldtype === costanti.FieldType.image"> <div v-else-if="col.fieldtype === costanti.FieldType.image">
<CGallery <CGallery
:gall="row" :listimages="myvalue" :edit="isviewfield" :gall="row" :listimages="myvalue" :edit="isviewfield()"
@input="changevalRec" @input="changevalRec"
@showandsave="Savedb"> @showandsave="Savedb">
@@ -147,14 +147,14 @@
<div v-else> <div v-else>
<div v-if="col.fieldtype === costanti.FieldType.listimages"> <div v-if="col.fieldtype === costanti.FieldType.listimages">
<CGallery <CGallery
:gall="row" :listimages="myvalue" :edit="isviewfield" :gall="row" :listimages="myvalue" :edit="isviewfield()"
@showandsave="Savedb"> @showandsave="Savedb">
</CGallery> </CGallery>
</div> </div>
<div v-else-if="col.fieldtype === costanti.FieldType.image"> <div v-else-if="col.fieldtype === costanti.FieldType.image">
<CGallery <CGallery
:gall="row" :listimages="myvalue" :edit="isviewfield" :gall="row" :listimages="myvalue" :edit="isviewfield()"
@showandsave="Savedb"> @showandsave="Savedb">
</CGallery> </CGallery>
@@ -173,9 +173,10 @@
<!-- Edit Value --> <!-- Edit Value -->
<span v-if="col.fieldtype === costanti.FieldType.date"> <span v-if="col.fieldtype === costanti.FieldType.date">
<CDateTime <CDateTime
v-if="myvalue"
:label="col.label" :label="col.label"
class="cursor-pointer" class="cursor-pointer"
:valueDate="myvalue" v-model:value="myvalue"
:readonly="false" :readonly="false"
:minuteinterval="minuteinterval" :minuteinterval="minuteinterval"
:dense="true" :dense="true"
@@ -185,10 +186,12 @@
</CDateTime> </CDateTime>
</span> </span>
<span v-else-if="col.fieldtype === costanti.FieldType.onlydate"> <span v-else-if="col.fieldtype === costanti.FieldType.onlydate">
Data4:
<CDateTime <CDateTime
:label="col.label" :label="col.label"
class="cursor-pointer" class="cursor-pointer"
:valueDate="myvalue" :valueDate="myvalue"
v-model:value="myvalue"
:readonly="false" :readonly="false"
:minuteinterval="minuteinterval" :minuteinterval="minuteinterval"
:dense="true" :dense="true"

View File

@@ -15,7 +15,7 @@ const functionality: IFunctionality = {
SHOW_NEWSLETTER: false, SHOW_NEWSLETTER: false,
SHOW_ONLY_POLICY: false, SHOW_ONLY_POLICY: false,
ENABLE_TODOS_LOADING: true, ENABLE_TODOS_LOADING: true,
ENABLE_PROJECTS_LOADING: true, ENABLE_PROJECTS_LOADING: false,
SHOW_IF_IS_SERVER_CONNECTION: false, SHOW_IF_IS_SERVER_CONNECTION: false,
SHOW_MESSAGES: false, SHOW_MESSAGES: false,
BOOKING_EVENTS: false, BOOKING_EVENTS: false,
@@ -319,7 +319,9 @@ const baseroutes: IListRoutes[] = [
}, },
*/ */
{
/*
<{
active: true, active: true,
order: 7, order: 7,
path: '/c', path: '/c',
@@ -333,6 +335,7 @@ const baseroutes: IListRoutes[] = [
solotitle: true, solotitle: true,
infooter: true, infooter: true,
}, },
*/
{ {
active: true, active: true,
order: 2000, order: 2000,

View File

@@ -32,46 +32,29 @@
:header-inset-level="child2.level_child" :header-inset-level="child2.level_child"
:duration="300" :duration="300"
:icon="child2.materialIcon" :icon="child2.materialIcon"
expand-icon="none"
active-class="my-menu-active" active-class="my-menu-active"
expand-icon-class="my-menu-icon-none" expand-icon-class="my-menu-icon-none"
:class="`item item-link drawer-closer cursor-pointer ` + clBase" :class="`item item-link drawer-closer cursor-pointer ` + clBase"
:label="tools.getLabelByItem(child2)"> :label="tools.getLabelByItem(child2)">
<template v-slot:header> <q-item-section avatar>
<q-item-section avatar>
<q-avatar v-if="child2.img"> <q-avatar v-if="child2.img">
<div :icon="`img:`+child2.img" class="imgicon" font-size="2rem"></div> <div :icon="`img:`+child2.img" class="imgicon" style="font-size:2rem;"></div>
</q-avatar> </q-avatar>
<div v-else> <div v-else>
<q-avatar <q-avatar
:icon="child2.materialIcon" color="primary" class="clicon" :icon="child2.materialIcon" color="primary" class="clicon"
text-color="white"> text-color="white">
</q-avatar> </q-avatar>
</div> </div>
</q-item-section> </q-item-section>
<q-item-section> <q-item-section>
{{ tools.getLabelByItem(child2) }} {{ tools.getLabelByItem(child2) }}
</q-item-section> </q-item-section>
</template>
<div v-for="(child3, index) in child2.routes2" :key="index">
<q-expansion-item
v-if="!!child2.routes2 && child3.active"
:to="getroute(child3)"
:header-inset-level="child3.level_child"
:duration="300"
:icon="child3.materialIcon"
:expand-icon="child3.icon"
expand-icon-class="my-menu-separat"
active-class="my-menu-active"
:class="`item item-link drawer-closer cursor-pointer ` + clBase"
:label="tools.getLabelByItem(child3)">
</q-expansion-item>
</div>
</q-expansion-item> </q-expansion-item>
<q-expansion-item <q-expansion-item
v-else v-else
@@ -82,6 +65,7 @@
expand-icon-class="my-menu-separat" expand-icon-class="my-menu-separat"
:header-class="getmymenuclass(child2)" :header-class="getmymenuclass(child2)"
active-class="my-menu-active"> active-class="my-menu-active">
AA5:
<div v-for="(child3, index) in child2.routes2" :key="index"> <div v-for="(child3, index) in child2.routes2" :key="index">
<div v-if="child3.active"> <div v-if="child3.active">
<q-expansion-item <q-expansion-item
@@ -139,6 +123,7 @@
</span> </span>
</div> </div>
</q-slide-transition> </q-slide-transition>
</div> </div>
</div> </div>
</div> </div>
@@ -152,5 +137,5 @@
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@import './menuOne.scss'; @import './menuOne.scss';
</style> </style>

View File

@@ -4,7 +4,7 @@
<q-uploader <q-uploader
label="Galleria Home" label="Galleria Home"
accept=".jpg, image/*" accept=".jpg, image/*"
:url="tools.geturlupload()+`/gallery_home`" :url="tools.geturlupload()+`/gallery_home/${tools.getvers()}`"
:headers="tools.getheaders()" :headers="tools.getheaders()"
:max-file-size="2000000" :max-file-size="2000000"
multiple multiple
@@ -14,7 +14,7 @@
<q-uploader <q-uploader
label="Immagini" label="Immagini"
accept=".jpg, image/*" accept=".jpg, image/*"
:url="tools.geturlupload()+`/img`" :url="tools.geturlupload()+`/img/${tools.getvers()}`"
:headers="tools.getheaders()" :headers="tools.getheaders()"
:max-file-size="1000000" :max-file-size="1000000"
multiple multiple
@@ -24,7 +24,7 @@
<q-uploader <q-uploader
label="Invia PDF" label="Invia PDF"
accept=".pdf" accept=".pdf"
:url="tools.geturlupload()+`/pdf`" :url="tools.geturlupload()+`/pdf/${tools.getvers()}`"
:headers="tools.getheaders()" :headers="tools.getheaders()"
multiple multiple
style="max-width: 300px" style="max-width: 300px"

View File

@@ -2404,6 +2404,11 @@ export const tools = {
return date.formatDate(mytimestamp, 'YYYY-MM-DD HH:mm:ss') return date.formatDate(mytimestamp, 'YYYY-MM-DD HH:mm:ss')
}, },
getstrdateToDate(strdate: string) {
let mydate = new Date(strdate)
return mydate
},
gettimestampstrDate(mydatestr: Date | number | string | undefined) { gettimestampstrDate(mydatestr: Date | number | string | undefined) {
if (mydatestr) { if (mydatestr) {
const mydate = new Date(mydatestr) const mydate = new Date(mydatestr)
@@ -3357,6 +3362,9 @@ export const tools = {
geturlupload() { geturlupload() {
return process.env.MONGODB_HOST + '/upload' return process.env.MONGODB_HOST + '/upload'
}, },
getvers() {
return process.env.APP_VERSION
},
getheaders() { getheaders() {
const userStore = useUserStore() const userStore = useUserStore()
return [{ name: 'x-auth', value: userStore.x_auth_token }] return [{ name: 'x-auth', value: userStore.x_auth_token }]

Binary file not shown.

After

Width:  |  Height:  |  Size: 381 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 138 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB