Aggiornamento a 0.6.1

This commit is contained in:
Surya Paolo
2023-04-07 17:14:51 +02:00
parent 6fad472211
commit 701e1f1968
24 changed files with 284 additions and 131 deletions

View File

@@ -1,4 +1,4 @@
APP_VERSION="0.5.85" APP_VERSION="0.6.1"
SERVICE_WORKER_FILE="service-worker.js" SERVICE_WORKER_FILE="service-worker.js"
APP_ID="13" APP_ID="13"
DIRECTORY_LOCAL="newfreeplanet" DIRECTORY_LOCAL="newfreeplanet"

View File

@@ -1,4 +1,4 @@
APP_VERSION="0.5.85" APP_VERSION="0.6.1"
SERVICE_WORKER_FILE="service-worker.js" SERVICE_WORKER_FILE="service-worker.js"
APP_ID="13" APP_ID="13"
DIRECTORY_LOCAL=newfreeplanet DIRECTORY_LOCAL=newfreeplanet

View File

@@ -1,4 +1,4 @@
APP_VERSION="0.5.85" APP_VERSION="0.6.1"
SERVICE_WORKER_FILE="service-worker.js" SERVICE_WORKER_FILE="service-worker.js"
APP_ID="13" APP_ID="13"
DIRECTORY_LOCAL=newfreeplanet DIRECTORY_LOCAL=newfreeplanet

View File

@@ -1,4 +1,4 @@
APP_VERSION="0.5.85" APP_VERSION="0.6.1"
SERVICE_WORKER_FILE="service-worker.js" SERVICE_WORKER_FILE="service-worker.js"
APP_ID="13" APP_ID="13"
DIRECTORY_LOCAL="newfreeplanet" DIRECTORY_LOCAL="newfreeplanet"

View File

@@ -1,4 +1,4 @@
APP_VERSION="0.5.85" APP_VERSION="0.6.1"
SERVICE_WORKER_FILE="service-worker.js" SERVICE_WORKER_FILE="service-worker.js"
APP_ID="13" APP_ID="13"
DIRECTORY_LOCAL=newfreeplanet DIRECTORY_LOCAL=newfreeplanet

View File

@@ -1,4 +1,4 @@
APP_VERSION="0.5.85" APP_VERSION="0.6.1"
SERVICE_WORKER_FILE="service-worker.js" SERVICE_WORKER_FILE="service-worker.js"
APP_ID="14" APP_ID="14"
DIRECTORY_LOCAL="newfreeplanet" DIRECTORY_LOCAL="newfreeplanet"

View File

@@ -19,7 +19,7 @@ if [[ $risposta == "Y" || $risposta == "y" ]]; then
echo "Sincronizzazione in remoto..." echo "Sincronizzazione in remoto..."
echo "Sincronizzazione in remoto $SERVERDIR_WEBSITE ..." echo "Sincronizzazione in remoto $SERVERDIR_WEBSITE ..."
sshpass -p $SERVERPW_WEBSITE rsync -e 'ssh -p 8855' -a dist/pwa/ ftpadmin@servereng:/var/www/$SERVERDIR_WEBSITE/ sshpass -p $SERVERPW_WEBSITE rsync -e 'ssh -p 8855' -a --exclude 'upload' dist/pwa/ ftpadmin@servereng:/var/www/$SERVERDIR_WEBSITE/
echo "Finito $SERVERDIR_WEBSITE " echo "Finito $SERVERDIR_WEBSITE "
fi fi

View File

@@ -19,7 +19,7 @@ sleep 1
npm run buildpwa npm run buildpwa
echo "Sincronizzazione $SERVERDIR_WEBSITE in remoto..." echo "Sincronizzazione $SERVERDIR_WEBSITE in remoto..."
sshpass -p $SERVERPW_WEBSITE rsync -e 'ssh -p 8855' -a dist/pwa/ ftpadmin@servereng:/var/www/$SERVERDIR_WEBSITE/ sshpass -p $SERVERPW_WEBSITE rsync -e 'ssh -p 8855' -a --exclude 'upload' dist/pwa/ ftpadmin@servereng:/var/www/$SERVERDIR_WEBSITE/
cp .env.prod.bak .env.production cp .env.prod.bak .env.production

View File

@@ -18,7 +18,7 @@ sleep 1
npm run buildpwa npm run buildpwa
echo "Sincronizzazione $SERVERDIR_WEBSITE in remoto..." echo "Sincronizzazione $SERVERDIR_WEBSITE in remoto..."
rsync -e 'ssh -p 5522' -a dist/pwa/ root@risosrv:/home/$SERVERDIR_WEBSITE rsync -e 'ssh -p 5522' -a --exclude 'upload' dist/pwa/ root@risosrv:/home/$SERVERDIR_WEBSITE
cp .env.prod.bak .env.production cp .env.prod.bak .env.production

View File

@@ -1,6 +1,6 @@
{ {
"name": "riso", "name": "riso",
"version": "0.5.3", "version": "0.6.1",
"description": "Siamo la Rete Italiana di Scambio Orizzontale, abbiamo creato questa piattaforma per metterla al servizio di chi vuole riscoprire il valore della condivisione e della cooperazione. Valori semplici e profondi che ci aiutano a ritrovare il Senso della Vita, perduto in questa società consumista, e riporti quei Sani Pricìpi Naturali ed Umani di Fratellanza che intere popolazioni antiche conoscevano bene.", "description": "Siamo la Rete Italiana di Scambio Orizzontale, abbiamo creato questa piattaforma per metterla al servizio di chi vuole riscoprire il valore della condivisione e della cooperazione. Valori semplici e profondi che ci aiutano a ritrovare il Senso della Vita, perduto in questa società consumista, e riporti quei Sani Pricìpi Naturali ed Umani di Fratellanza che intere popolazioni antiche conoscevano bene.",
"productName": "Riso", "productName": "Riso",
"author": "Paolo Arena", "author": "Paolo Arena",
@@ -22,48 +22,48 @@
"generate-sw": "workbox generateSW workbox-config.js" "generate-sw": "workbox generateSW workbox-config.js"
}, },
"dependencies": { "dependencies": {
"@quasar/extras": "^1.15.8", "@quasar/extras": "^1.16.2",
"@quasar/quasar-ui-qcalendar": "^4.0.0-beta.13", "@quasar/quasar-ui-qcalendar": "^4.0.0-beta.16",
"@vue-leaflet/vue-leaflet": "^0.7.0", "@vue-leaflet/vue-leaflet": "^0.9.0",
"@vue/compat": "^3.2.45", "@vue/compat": "^3.2.47",
"@vue/compiler-sfc": "^3.2.45", "@vue/compiler-sfc": "^3.2.47",
"@vue/eslint-config-standard": "7.0.0", "@vue/eslint-config-standard": "7.0.0",
"@vuelidate/core": "^2.0.0", "@vuelidate/core": "^2.0.2",
"@vuelidate/validators": "^2.0.0", "@vuelidate/validators": "^2.0.2",
"acorn": "^8.8.1", "acorn": "^8.8.2",
"animate.css": "^4.1.1", "animate.css": "^4.1.1",
"autoprefixer": "^10.4.13", "autoprefixer": "^10.4.14",
"axios": "^1.2.1", "axios": "^1.3.5",
"bcryptjs": "^2.4.3", "bcryptjs": "^2.4.3",
"chart.js": "3.9.1", "chart.js": "3.9.1",
"core-js": "^3.26.1", "core-js": "^3.30.0",
"crypto": "^1.0.1", "crypto": "^1.0.1",
"date-fns": "^2.29.3", "date-fns": "^2.29.3",
"dotenv": "^16.0.3", "dotenv": "^16.0.3",
"echarts": "5.3.3", "echarts": "5.4.2",
"eslint-plugin-quasar": "^1.1.0", "eslint-plugin-quasar": "^1.1.0",
"eslint-plugin-standard": "^5.0.0", "eslint-plugin-standard": "^5.0.0",
"graphql": "^16.6.0", "graphql": "^16.6.0",
"graphql-tag": "^2.12.6", "graphql-tag": "^2.12.6",
"gsap": "^3.11.3", "gsap": "^3.11.5",
"jquery": "^3.6.2", "jquery": "^3.6.4",
"js-cookie": "^3.0.1", "js-cookie": "^3.0.1",
"localforage": "^1.10.0", "localforage": "^1.10.0",
"lodash": "^4.17.21", "lodash": "^4.17.21",
"normalize.css": "^8.0.1", "normalize.css": "^8.0.1",
"npm": "^9.2.0", "npm": "^9.6.4",
"nprogress": "^0.2.0", "nprogress": "^0.2.0",
"pinia": "^2.0.28", "pinia": "^2.0.33",
"prerender-spa-plugin": "^3.4.0", "prerender-spa-plugin": "^3.4.0",
"quasar": "^2.11.0", "quasar": "^2.11.10",
"quasar-extras": "^2.0.9", "quasar-extras": "^2.0.9",
"register-service-worker": "^1.7.2", "register-service-worker": "^1.7.2",
"vee-validate": "^4.7.3", "vee-validate": "^4.8.4",
"vue": "^3.2.45", "vue": "^3.2.47",
"vue-chart-3": "^3.1.8", "vue-chart-3": "^3.1.8",
"vue-class-component": "^8.0.0-rc.1", "vue-class-component": "^8.0.0-rc.1",
"vue-country-code": "^1.1.3", "vue-country-code": "^1.1.3",
"vue-echarts": "^6.3.1", "vue-echarts": "^6.5.4",
"vue-i18n": "^9.2.2", "vue-i18n": "^9.2.2",
"vue-idb": "^0.2.0", "vue-idb": "^0.2.0",
"vue-loader": "^17.0.1", "vue-loader": "^17.0.1",
@@ -82,56 +82,47 @@
"@types/bcryptjs": "^2.4.2", "@types/bcryptjs": "^2.4.2",
"@types/dotenv": "^8.2.0", "@types/dotenv": "^8.2.0",
"@types/googlemaps": "^3.43.3", "@types/googlemaps": "^3.43.3",
"@types/jest": "^29.2.4", "@types/jest": "^29.5.0",
"@types/js-cookie": "^3.0.2", "@types/js-cookie": "^3.0.3",
"@types/node": "18.11.16", "@types/node": "18.15.11",
"@types/nprogress": "^0.2.0", "@types/nprogress": "^0.2.0",
"@types/vue-tel-input": "^2.1.2", "@types/vue-tel-input": "^2.1.2",
"@types/vuelidate": "^0.7.15", "@types/vuelidate": "^0.7.16",
"@typescript-eslint/eslint-plugin": "^5.46.1", "@typescript-eslint/eslint-plugin": "^5.57.1",
"@typescript-eslint/parser": "^5.46.1", "@typescript-eslint/parser": "^5.57.1",
"eslint": "^8.30.0", "eslint": "^8.37.0",
"eslint-config-prettier": "^8.5.0", "eslint-config-prettier": "^8.8.0",
"eslint-plugin-import": "^2.26.0", "eslint-plugin-import": "^2.27.5",
"eslint-plugin-node": "^11.1.0", "eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^6.1.1", "eslint-plugin-promise": "^6.1.1",
"eslint-plugin-vue": "^9.8.0", "eslint-plugin-vue": "^9.10.0",
"file-loader": "^6.2.0", "file-loader": "^6.2.0",
"html-webpack-plugin": "^5.5.0", "html-webpack-plugin": "^5.5.0",
"http-proxy-middleware": "^2.0.6", "http-proxy-middleware": "^2.0.6",
"jest": "^29.3.1", "jest": "^29.5.0",
"json-loader": "^0.5.7", "json-loader": "^0.5.7",
"node-sass": "7.0.1", "node-sass": "7.0.0",
"npm-check-updates": "^16.6.0", "npm-check-updates": "^16.10.7",
"optimize-css-assets-webpack-plugin": "^6.0.1", "optimize-css-assets-webpack-plugin": "^6.0.1",
"postcss": "^8.4.20", "postcss": "^8.4.21",
"postcss-loader": "^7.0.2", "postcss-loader": "^7.2.4",
"sass-loader": "^13.2.0", "sass-loader": "^13.2.2",
"strip-ansi": "=7.0.1", "strip-ansi": "=7.0.1",
"ts-jest": "^29.0.3", "ts-jest": "^29.1.0",
"ts-loader": "^9.4.2", "ts-loader": "^9.4.2",
"tslint": "^6.1.3", "tslint": "^6.1.3",
"tslint-config-standard": "^9.0.0", "tslint-config-standard": "^9.0.0",
"tslint-loader": "^3.5.4", "tslint-loader": "^3.5.4",
"typescript": "^4.9.4", "typescript": "^5.0.3",
"vue-cli-plugin-element-ui": "^1.1.4", "vue-cli-plugin-element-ui": "^1.1.4",
"vueify": "^9.4.1", "vueify": "^9.4.1",
"webpack": "^5.75.0", "webpack": "^5.78.0",
"workbox-webpack-plugin": "^6.5.4" "workbox-webpack-plugin": "^6.5.4"
}, },
"browser": { "browser": {
"crypto": false "crypto": false
}, },
"browserslist": [ "browserslist": [
"last 40 Chrome versions",
"last 40 Firefox versions",
"last 10 Edge versions",
"last 35 Safari versions",
"last 60 Android versions",
"last 250 ChromeAndroid versions",
"last 60 FirefoxAndroid versions",
"last 30 iOS versions",
"last 10 Opera versions",
"> 0.05%", "> 0.05%",
"not dead" "not dead"
], ],

View File

@@ -5,7 +5,7 @@ source .env.test.risosrv
cp .env.test.risosrv .env.production cp .env.test.risosrv .env.production
echo "Sincronizzazione in remoto $SERVERDIR_WEBSITE ..." echo "Sincronizzazione in remoto $SERVERDIR_WEBSITE ..."
rsync -e 'ssh -p 5522' -a dist/pwa/ root@risosrv:/home/$SERVERDIR_WEBSITE/ rsync -e 'ssh -p 5522' -a --exclude 'upload' dist/pwa/ root@risosrv:/home/$SERVERDIR_WEBSITE/
echo "Finito $SERVERDIR_WEBSITE" echo "Finito $SERVERDIR_WEBSITE"
cp .env.prod.bak .env.production cp .env.prod.bak .env.production

View File

@@ -5,7 +5,7 @@ source ./.env.test
cp .env.test .env.production cp .env.test .env.production
echo "Sincronizzazione in remoto $SERVERDIR_WEBSITE ..." echo "Sincronizzazione in remoto $SERVERDIR_WEBSITE ..."
sshpass -p $SERVERPW_WEBSITE rsync -e 'ssh -p 8855' -a dist/pwa/ ftpadmin@servereng:/var/www/$SERVERDIR_WEBSITE/ sshpass -p $SERVERPW_WEBSITE rsync -e 'ssh -p 8855' -a --exclude 'upload' dist/pwa/ ftpadmin@servereng:/var/www/$SERVERDIR_WEBSITE/
echo "Finito $SERVERDIR_WEBSITE" echo "Finito $SERVERDIR_WEBSITE"
cp .env.prod.bak .env.production cp .env.prod.bak .env.production

View File

@@ -18,7 +18,7 @@ import { CacheableResponsePlugin } from 'workbox-cacheable-response'
import { ExpirationPlugin } from 'workbox-expiration' import { ExpirationPlugin } from 'workbox-expiration'
console.log( console.log(
' [ VER-0.5.4 ] _---------________------ PAO: this is my custom service worker') ' [ VER-0.6.1 ] _---------________------ PAO: this is my custom service worker')
importScripts('js/idb.js') importScripts('js/idb.js')
importScripts('js/storage.js') importScripts('js/storage.js')
@@ -36,7 +36,7 @@ let port = 3000
if (self.location.hostname.startsWith('test')) { if (self.location.hostname.startsWith('test')) {
port = 3001 port = 3001
} }
console.log('SW- app ver 0.5.4') console.log('SW- app ver 0.6.1')
const cfgenv = { const cfgenv = {
serverweb: `${self.location.protocol}//${self.location.hostname}:${port}`, serverweb: `${self.location.protocol}//${self.location.hostname}:${port}`,

View File

@@ -541,6 +541,14 @@ export const shared_consts = {
value: 23, value: 23,
label: 'Asciugacapelli', label: 'Asciugacapelli',
}, },
{
value: 24,
label: 'Riscaldamento a legna',
},
{
value: 25,
label: 'Riscaldamento a gas',
},
], ],
Regions: [ Regions: [

View File

@@ -30,7 +30,7 @@ export default defineComponent({
title: String, title: String,
mylist: { mylist: {
type: [Array, String, undefined, null] as PropType<IAccomodation[] | string | undefined | null>, type: [Array, String, undefined, null] as PropType<IAccomodation[] | string | undefined | null>,
required: true, required: false,
}, },
}, },
emits: ['showandsave'], emits: ['showandsave'],
@@ -68,7 +68,7 @@ export default defineComponent({
}) })
function created() { function created() {
// console.log('created CAccomodation', props.mylist) console.log('created CAccomodation', props.mylist)
if (isValid(props.mylist)) { if (isValid(props.mylist)) {
// @ts-ignore // @ts-ignore
let myarr: any = props.mylist let myarr: any = props.mylist

View File

@@ -3,10 +3,6 @@
<div class=""> <div class="">
<q-btn
v-if="isInModif"
rounded label="Aggiungi Letti" color="positive" @click="add_newbed()">
</q-btn>
<div v-for="(myaccom, index) in getlist()" :key="index"> <div v-for="(myaccom, index) in getlist()" :key="index">
<div v-if="isInModif" class="row justify-center bordo_stondato_small"> <div v-if="isInModif" class="row justify-center bordo_stondato_small">
@@ -17,6 +13,8 @@
v-model:value="myaccom.num" v-model:value="myaccom.num"
optval="value" optval="value"
optlab="label" optlab="label"
style="min-width:80px;"
:sola_lettura="!isInModif" :sola_lettura="!isInModif"
:options="shared_consts.People" :useinput="false" :options="shared_consts.People" :useinput="false"
> >
@@ -58,6 +56,10 @@
</div> </div>
</div> </div>
</div> </div>
<q-btn
v-if="isInModif"
rounded label="Aggiungi Letti" color="positive" @click="add_newbed()">
</q-btn>
</div> </div>
</div> </div>
</template> </template>

View File

@@ -1104,13 +1104,7 @@
:prop_myrec="myrecdialog" :prop_myrec="myrecdialog"
> >
</CMyCardCircuitPopup> </CMyCardCircuitPopup>
<CMyCardService v-else-if="mytable === 'myskills'" <CMyCardService v-else-if="shared_consts.TABLES_FAVORITE_BOOKMARK.includes(mytable)"
:table="mytable" :prop_myrec="myrecdialog">
</CMyCardService>
<CMyCardService v-else-if="mytable === 'mygoods'"
:table="mytable" :prop_myrec="myrecdialog">
</CMyCardService>
<CMyCardService v-else-if="mytable === 'myhosps'"
:table="mytable" :prop_myrec="myrecdialog"> :table="mytable" :prop_myrec="myrecdialog">
</CMyCardService> </CMyCardService>
<CMyCardPopup v-else :table="mytable" :prop_myrec="myrecdialog"> <CMyCardPopup v-else :table="mytable" :prop_myrec="myrecdialog">

View File

@@ -95,11 +95,11 @@
v-model="mytab" v-model="mytab"
inline-label inline-label
dense dense
class="text-black shadow-2" class="shadow-2"
> >
<q-tab name="my" icon="far fa-user" /> <q-tab name="my" icon="far fa-user" />
<q-tab name="favorite" icon="far fa-heart" /> <q-tab name="favorite" icon="favorite" content-class="text-red" />
<q-tab name="bookmark" icon="far fa-bookmark" /> <q-tab name="bookmark" icon="bookmark" content-class="text-teal" />
</q-tabs> </q-tabs>
<q-tab-panels <q-tab-panels

View File

@@ -137,10 +137,10 @@ export default defineComponent({
} }
function clicca(tipo: any, set: any, title: string) { function clicca(tipo: any, set: any, title: string) {
if (set && myrec.value.username !== userStore.my.username && tipo === costanti.TIPOFAVBOOK.FAVORITE) { if (set && tipo === costanti.TIPOFAVBOOK.FAVORITE) {
userStore.setFavorite($q, t, myrec.value._id, props.table, myrec.value); userStore.setFavorite($q, t, myrec.value._id, props.table, myrec.value);
} }
if (set && myrec.value.username !== userStore.my.username && tipo === costanti.TIPOFAVBOOK.BOOKMARK) { if (set && tipo === costanti.TIPOFAVBOOK.BOOKMARK) {
userStore.setBookmark($q, t, myrec.value._id, props.table, myrec.value); userStore.setBookmark($q, t, myrec.value._id, props.table, myrec.value);
} }

View File

@@ -14,9 +14,9 @@
<q-btn <q-btn
flat flat
round round
:color="userStore.isFavorite(myrec._id, table) ? 'red' : ''" color="red"
icon="favorite" :icon="userStore.isFavorite(myrec._id, table) ? 'favorite' : 'far fa-heart'"
@click="clicca(costanti.TIPOFAVBOOK.FAVORITE, true)" @click="clicca(costanti.TIPOFAVBOOK.FAVORITE, true, '')"
> >
<q-badge <q-badge
v-if="myrec.myfav" v-if="myrec.myfav"
@@ -31,9 +31,9 @@
<q-btn <q-btn
flat flat
round round
:color="userStore.isBookmarked(myrec._id, table) ? 'teal' : ''" color="teal"
icon="bookmark" :icon="userStore.isBookmarked(myrec._id, table) ? 'bookmark' : 'far fa-bookmark'"
@click="clicca(costanti.TIPOFAVBOOK.BOOKMARK, true)" @click="clicca(costanti.TIPOFAVBOOK.BOOKMARK, true, '')"
> >
<q-badge <q-badge
v-if="myrec.mybook" v-if="myrec.mybook"
@@ -56,7 +56,19 @@
<div> <div>
<q-btn flat round icon="fas fa-ellipsis-h"> <q-btn flat round icon="fas fa-ellipsis-h">
<q-menu> <q-menu>
<q-list v-if="true" style="min-width: 150px"> <q-list v-if="true" style="min-width: 200px">
<q-item
v-if="myrec.profile.username_telegram"
clickable
v-close-popup
>
<q-item-section avatar>
<q-icon color="blue" name="far fa-comment" />
</q-item-section>
<q-item-section>
<a :href="tools.getHttpForTelegram(myrec.profile.username_telegram)" target="_blank">{{ $t('dialog.contact') }} - {{tools.getNomeUtenteByRecUser(myrec)}}</a>
</q-item-section>
</q-item>
<q-item <q-item
v-if="!nopopup" v-if="!nopopup"
clickable clickable
@@ -78,7 +90,7 @@
clicca( clicca(
costanti.TIPOFAVBOOK.FAVORITE, costanti.TIPOFAVBOOK.FAVORITE,
false, false,
$t('cmd.favorite') $t('cmd.favorite', {num: myrec.myfav ? myrec.myfav.length : 0})
) )
" "
> >
@@ -86,7 +98,7 @@
<q-icon color="red" name="favorite" /> <q-icon color="red" name="favorite" />
</q-item-section> </q-item-section>
<q-item-section> <q-item-section>
{{ $t('cmd.favorite') }} {{ $t('cmd.favorite', {num: myrec.myfav ? myrec.myfav.length : 0}) }}
</q-item-section> </q-item-section>
</q-item> </q-item>
<q-item <q-item
@@ -96,7 +108,7 @@
clicca( clicca(
costanti.TIPOFAVBOOK.BOOKMARK, costanti.TIPOFAVBOOK.BOOKMARK,
false, false,
$t('cmd.bookmark') $t('cmd.bookmark', {num: myrec.mybook ? myrec.mybook.length : 0})
) )
" "
> >
@@ -104,7 +116,7 @@
<q-icon color="teal" name="bookmark" /> <q-icon color="teal" name="bookmark" />
</q-item-section> </q-item-section>
<q-item-section> <q-item-section>
{{ $t('cmd.bookmark') }} {{ $t('cmd.bookmark', {num: myrec.mybook ? myrec.mybook.length : 0}) }}
</q-item-section> </q-item-section>
</q-item> </q-item>
</q-list> </q-list>
@@ -142,6 +154,29 @@
</q-item-section> </q-item-section>
</q-item> </q-item>
<q-item v-if="myrec.dateTimeStart">
<q-item-section avatar>
<q-icon color="green" name="far fa-calendar-alt" />
</q-item-section>
<q-item-section>
<q-item-label>
<span>{{tools.getstrDateMonthTimeLong(myrec.dateTimeStart)}}</span>
</q-item-label>
</q-item-section>
</q-item>
<q-item v-if="myrec.dateTimeEnd">
<q-item-section avatar>
<q-icon color="red" name="far fa-calendar-alt" />
</q-item-section>
<q-item-section>
<q-item-label>
<span>{{tools.getstrDateMonthTimeLong(myrec.dateTimeEnd)}}</span>
</q-item-label>
</q-item-section>
</q-item>
<q-item v-if="getSectorByRec(myrec)"> <q-item v-if="getSectorByRec(myrec)">
<q-item-section avatar> <q-item-section avatar>
<q-icon color="blue" name="category" /> <q-icon color="blue" name="category" />
@@ -371,7 +406,7 @@
</q-card-actions> </q-card-actions>
</q-card> </q-card>
<div <div
v-if="!$q.screen.gt.sm || !nopopup" v-if="!$q.screen.gt.sm && !nopopup"
class="row absolute-bottom text-shadow custom-caption q-px-md buttons_bottom" class="row absolute-bottom text-shadow custom-caption q-px-md buttons_bottom"
> >
<q-btn <q-btn

View File

@@ -1,77 +1,177 @@
<!--suppress ALL --> <!--suppress ALL -->
<template> <template>
<div class="q-py-xs centermydiv cardrec" <div
:style="`max-width: `+ (tools.getwidth($q) - 20) +`px; ` + ($q.screen.lt.sm ? (`min-width: `+ (tools.getwidth($q) - (20 + margin_right)) +`px;`) : ``)"> class="q-py-xs centermydiv cardrec"
<q-item v-if="myrec" clickable v-ripple :class="`shadow-2 q-btn--rounded ` + ($q.dark.isActive ? `bg-black`: `bg-teal-1`)"> :style="
`max-width: ` +
(tools.getwidth($q) - 20) +
`px; ` +
<q-item-section v-if="(shared_consts.TABLES_VISU_IMG.includes(table)) && (myrec.photos && myrec.photos.length > 0)" avatar ($q.screen.lt.sm
@click="cmdExt(costanti.CMD_SHOW_PAGE, myrec)"> ? `min-width: ` + (tools.getwidth($q) - (20 + margin_right)) + `px;`
<q-badge v-if="showBadge()" class="q-my-xs self-center" :color="fieldsTable.getColByAdType(myrec.adType)"> : ``)
"
>
<q-item v-if="myrec" clickable v-ripple :class="`shadow-2 butt_rounded `">
<q-item-section
v-if="
shared_consts.TABLES_VISU_IMG.includes(table) &&
myrec.photos &&
myrec.photos.length > 0
"
avatar
@click="cmdExt(costanti.CMD_SHOW_PAGE, myrec)"
>
<q-badge
v-if="showBadge()"
class="q-my-xs self-center"
:color="fieldsTable.getColByAdType(myrec.adType)"
>
{{ fieldsTable.getValByTabAndId(table, 'adType', myrec.adType) }} {{ fieldsTable.getValByTabAndId(table, 'adType', myrec.adType) }}
<q-icon :name="fieldsTable.getIconByAdType(myrec.adType)" color="white" <q-icon
class="q-ml-xs"/> :name="fieldsTable.getIconByAdType(myrec.adType)"
color="white"
class="q-ml-xs"
/>
</q-badge> </q-badge>
<q-avatar size="60px"> <q-avatar size="60px">
<q-img :src="tools.getFullFileName(myrec.photos, table, myrec.username, '')" :alt="myrec.descr" <q-img
img-class="imgprofile" height="60px"/> :src="
tools.getFullFileName(myrec.photos, table, myrec.username, '')
"
:alt="myrec.descr"
img-class="imgprofile"
height="60px"
/>
</q-avatar> </q-avatar>
</q-item-section> </q-item-section>
<q-item-section v-else avatar @click="naviga(`/my/` + myrec.username)"> <q-item-section v-else avatar @click="naviga(`/my/` + myrec.username)">
<q-badge
<q-badge v-if="showBadge()" class="q-my-xs self-center" :color="fieldsTable.getColByAdType(myrec.adType)"> v-if="showBadge()"
class="q-my-xs self-center"
:color="fieldsTable.getColByAdType(myrec.adType)"
>
{{ fieldsTable.getValByTabAndId(table, 'adType', myrec.adType) }} {{ fieldsTable.getValByTabAndId(table, 'adType', myrec.adType) }}
<q-icon :name="fieldsTable.getIconByAdType(myrec.adType)" color="white" <q-icon
class="q-ml-xs"/> :name="fieldsTable.getIconByAdType(myrec.adType)"
color="white"
class="q-ml-xs"
/>
</q-badge> </q-badge>
<q-avatar size="60px"> <q-avatar size="60px">
<q-img :src="getImgUser(myrec)" :alt="myrec.username" img-class="imgprofile" height="60px"/> <q-img
:src="getImgUser(myrec)"
:alt="myrec.username"
img-class="imgprofile"
height="60px"
/>
</q-avatar> </q-avatar>
</q-item-section> </q-item-section>
<q-item-section @click="navigaExt(myrec)"> <q-item-section @click="navigaExt(myrec)">
<q-item-label lines="2" class="full-width" > <q-item-label lines="2" class="full-width">
<span v-for="(rec, ind) of tools.getArrSubSector(table, myrec)" :key="ind"> <span
<q-chip dense class="text-center shadow-5 glossy text-white bg-green">{{ rec.descr }}</q-chip> v-for="(rec, ind) of tools.getArrSubSector(table, myrec)"
:key="ind"
>
<q-chip
dense
class="text-center shadow-5 glossy text-white bg-green"
>{{ rec.descr }}</q-chip
>
</span> </span>
<span> <span>
<span v-for="(rec, ind) of tools.getArrSector(table, myrec)" :key="ind"> <span
<q-chip dense class="text-center shadow-5 glossy text-white bg-blue">{{ rec.descr }}</q-chip></span> v-for="(rec, ind) of tools.getArrSector(table, myrec)"
:key="ind"
>
<q-chip
dense
class="text-center shadow-5 glossy text-white bg-blue"
>{{ rec.descr }}</q-chip
></span
>
</span> </span>
<!--<span class="dateevent" v-if="myrec.dateTimeStart">dal <span class="datainizio">{{tools.getstrVeryShortDate(myrec.dateStart) }}</span> al <span class="datafine">{{ tools.getstrVeryShortDate(myrec.dateEnd) }}</span> <!--<span class="dateevent" v-if="myrec.dateTimeStart">dal <span class="datainizio">{{tools.getstrVeryShortDate(myrec.dateStart) }}</span> al <span class="datafine">{{ tools.getstrVeryShortDate(myrec.dateEnd) }}</span>
</span>--> </span>-->
</q-item-label> </q-item-label>
<q-item-label lines="4" v-if="myrec.descr">{{ myrec.descr }}<br> <q-item-label lines="4" v-if="myrec.descr"
>{{ myrec.descr }}<br />
</q-item-label> </q-item-label>
<q-item-label lines="2" style="text-align: right" class="text_user_city"> <q-item-label lines="1" style="" class="text_user_city">
<span class="text-weight-bold">{{ tools.getNameToShow(myrec) }}</span> - <div class="row justify-between">
<span v-for="(rec, ind) of myrec.mycities" :key="ind"><span v-if="ind > 0">, </span>{{ rec.comune }} ({{ rec.prov }})</span> <div class="text-weight-bold text-italic">
{{ tools.getNameToShow(myrec) }}
</div>
<div class="q-mx-sm">
(<span class="">{{ myrec.myfav.length }}</span>
<span class="q-mx-xxs"
><q-icon
dense
color="red"
:name="
userStore.isFavorite(myrec._id, table)
? 'favorite'
: 'far fa-heart'
"
/>
</span>
<span class="q-mx-xxs">&nbsp;</span
><span class="">{{ myrec.mybook.length }}</span>
<span class="q-mx-xxs"
><q-icon
dense
color="teal"
:name="
userStore.isBookmarked(myrec._id, table)
? 'bookmark'
: 'far fa-bookmark'
"
/>
</span>
)
</div>
</div>
</q-item-label> </q-item-label>
<q-item-label
lines="1"
style="text-align: right"
class="text_user_city"
>
<span v-for="(rec, ind) of myrec.mycities" :key="ind"
><span v-if="ind > 0">, </span>{{ rec.comune }} ({{
rec.prov
}})</span
>
</q-item-label>
</q-item-section> </q-item-section>
<q-item-section side v-if="tools.canModifyThisRec(myrec) || editOn"> <q-item-section side v-if="tools.canModifyThisRec(myrec) || editOn">
<q-item-label> <q-item-label>
<q-btn rounded dense icon="fas fa-pencil-alt"> <q-btn rounded dense icon="fas fa-pencil-alt">
<q-menu> <q-menu>
<q-list style="min-width: 150px"> <q-list style="min-width: 150px">
<q-item clickable v-close-popup <q-item
@click="cmdExt(costanti.CMD_MODIFY, myrec._id)"> clickable
v-close-popup
@click="cmdExt(costanti.CMD_MODIFY, myrec._id)"
>
<q-item-section side> <q-item-section side>
<q-icon name="fas fa-pencil-alt"/> <q-icon name="fas fa-pencil-alt" />
</q-item-section> </q-item-section>
<q-item-section>{{ $t('reg.edit') }}</q-item-section> <q-item-section>{{ $t('reg.edit') }}</q-item-section>
</q-item> </q-item>
</q-list> </q-list>
<q-list style="min-width: 150px"> <q-list style="min-width: 150px">
<q-item clickable v-close-popup @click="cmdExt(costanti.CMD_DELETE, myrec._id)"> <q-item
clickable
v-close-popup
@click="cmdExt(costanti.CMD_DELETE, myrec._id)"
>
<q-item-section side> <q-item-section side>
<q-icon name="fas fa-trash-alt"/> <q-icon name="fas fa-trash-alt" />
</q-item-section> </q-item-section>
<q-item-section>{{ $t('reg.elimina') }}</q-item-section> <q-item-section>{{ $t('reg.elimina') }}</q-item-section>
</q-item> </q-item>
@@ -80,11 +180,9 @@
</q-btn> </q-btn>
</q-item-label> </q-item-label>
</q-item-section> </q-item-section>
</q-item> </q-item>
<q-separator inset="item"/> <q-separator inset="item" />
</div> </div>
</template> </template>
<script lang="ts" src="./CMyRecCard.ts"> <script lang="ts" src="./CMyRecCard.ts">

View File

@@ -1770,3 +1770,21 @@ h3 {
color: grey; color: grey;
font-size: 0.8rem; font-size: 0.8rem;
} }
.butt_rounded{
border-radius: 12px;
}
.body--light {
.butt_rounded{
background-color: rgb(234, 241, 244);
}
}.body--dark {
.butt_rounded{
background-color: black;
}
}
.q-mx-xxs {
margin-left: 2px;
}

View File

@@ -1489,8 +1489,8 @@ const msg_it = {
favorite_unset: 'Rimosso dai Preferiti', favorite_unset: 'Rimosso dai Preferiti',
bookmark_set: 'Aggiunto ai Segnalibri', bookmark_set: 'Aggiunto ai Segnalibri',
bookmark_unset: 'Rimosso dai Segnalibri', bookmark_unset: 'Rimosso dai Segnalibri',
favorite: 'Utenti Favoriti', favorite: 'Piace a {num} utenti',
bookmark: 'Utenti Segnalibri', bookmark: 'Salvato da {num} utenti',
}, },
}, },

View File

@@ -3115,10 +3115,16 @@ export const tools = {
${$t('cal.endtime')} ${this.getstrTime(myevent.dateTimeEnd)}` ${$t('cal.endtime')} ${this.getstrTime(myevent.dateTimeEnd)}`
} }
} else { } else {
if (withhtml) {
mystr = `<span class="cal__where-content">${this.getstrDateLong(myevent.dateTimeStart)}</span> mystr = `<span class="cal__where-content">${this.getstrDateLong(myevent.dateTimeStart)}</span>
<span class="cal__hours-content">${$t('cal.starttime')} ${this.getstrTime(myevent.dateTimeStart)} </span> <span class="cal__hours-content">${$t('cal.starttime')} ${this.getstrTime(myevent.dateTimeStart)} </span>
${$t('cal.enddate')} ${this.getstrDateLong(myevent.dateTimeEnd)} ${$t('cal.enddate')} ${this.getstrDateLong(myevent.dateTimeEnd)}
<span class="cal__hours-content">${$t('cal.endtime')} ${this.getstrTime(myevent.dateTimeEnd)} </span>` <span class="cal__hours-content">${$t('cal.endtime')} ${this.getstrTime(myevent.dateTimeEnd)} </span>`
} else {
mystr = `${this.getstrDateLong(myevent.dateTimeStart)}
${$t('cal.starttime')} ${this.getstrTime(myevent.dateTimeStart)}
${this.getstrDateLong(myevent.dateTimeEnd)}: ${$t('cal.endtime')} ${this.getstrTime(myevent.dateTimeEnd)}`
}
} }
if (myevent.infoextra) { if (myevent.infoextra) {
@@ -6964,6 +6970,7 @@ export const tools = {
visibile: true, visibile: true,
typeHosp: tools.getSelectionByTable(toolsext.TABTYPEHOSP, 2), typeHosp: tools.getSelectionByTable(toolsext.TABTYPEHOSP, 2),
idContribType: tools.getSelectionByTable('contribtypes', []), idContribType: tools.getSelectionByTable('contribtypes', []),
accomodation: [],
idCity: this.getCitySel(), idCity: this.getCitySel(),
pub_to_share: tools.getSelectionByTable('pub_to_share', shared_consts.PUBTOSHARE.ALL, true), pub_to_share: tools.getSelectionByTable('pub_to_share', shared_consts.PUBTOSHARE.ALL, true),
photos: [], photos: [],