diff --git a/_ALL_SITES/arcadei.it/quasar.conf.js b/_ALL_SITES/arcadei.it/quasar.conf.js
index ae5241a1..de675575 100755
--- a/_ALL_SITES/arcadei.it/quasar.conf.js
+++ b/_ALL_SITES/arcadei.it/quasar.conf.js
@@ -37,7 +37,9 @@ module.exports = configure((ctx) => ({
// --> boot files are part of "main.js"
// https://v2.quasar.dev/quasar-cli/boot-files
// boot: ['vue-i18n', 'vue-meta', 'axios', 'vee-validate', 'myconfig', 'local-storage', 'error-handler', 'globalroutines', 'vue-idb', 'dragula', 'guard'],
- boot: ['i18n', 'axios', 'vee-validate', 'myconfig', 'local-storage', 'error-handler', 'globalroutines', 'calendar'],
+ boot: ['i18n', 'axios', 'vee-validate',
+ 'myconfig', 'local-storage', 'error-handler', 'globalroutines',
+ 'calendar'],
// https://v2.quasar.dev/quasar-cli/quasar-conf-js#Property%3A-css
css: [
@@ -97,7 +99,7 @@ module.exports = configure((ctx) => ({
chainWebpack(chain, { isServer, isClient }) {
chain.resolve.alias
- // .set('myalias', path.resolve(__dirname, './src/somefolder'))
+ // .set('myalias', path.resolve(__dirname, './src/somefolder'))
.set('@', helpers.root('src'))
.set('@components', helpers.root('src/components/index.ts'))
.set('@boot', helpers.root('src/boot/*'))
diff --git a/src/App.ts b/src/App.ts
index eaa86c33..c6d813c3 100755
--- a/src/App.ts
+++ b/src/App.ts
@@ -11,6 +11,8 @@ import { computed } from 'vue'
import { CProvaPao } from '@/components/CProvaPao'
import { tools } from '@store/Modules/tools'
+import 'animate.css';
+
export default {
components: {
appHeader: MyHeader,
diff --git a/src/common/shared_vuejs.ts b/src/common/shared_vuejs.ts
index 761a7526..adb66b8b 100755
--- a/src/common/shared_vuejs.ts
+++ b/src/common/shared_vuejs.ts
@@ -1248,10 +1248,6 @@ export const shared_consts = {
value: 110,
label: 'Carosello Immagini',
},
- {
- value: 90,
- label: 'Footer',
- },
{
value: 100,
label: 'Check Email',
@@ -1280,7 +1276,6 @@ export const shared_consts = {
CALENDAR: 70,
CAROUSEL_IDISCIPLINE: 80,
CAROUSEL_HOME: 85,
- FOOTER: 90,
CHECK_EMAIL: 100,
CAROUSEL_IMGS: 110,
OPENSTREETMAP: 120,
@@ -1302,7 +1297,6 @@ export const shared_consts = {
UP_LEFT: 5,
},
-
getStatusStr(status: number) {
const trovatorec = this.OrderStatusStr.find((rec) => rec.value === status)
return (trovatorec) ? trovatorec.label : ''
diff --git a/src/components/CMyEditElem/CMyEditElem.ts b/src/components/CMyEditElem/CMyEditElem.ts
index 072234c8..f9c331ea 100755
--- a/src/components/CMyEditElem/CMyEditElem.ts
+++ b/src/components/CMyEditElem/CMyEditElem.ts
@@ -19,6 +19,7 @@ import { CEventsCalendar } from '@src/components/CEventsCalendar'
import { CMyEditor } from '@src/components/CMyEditor'
import { CMyFieldRec } from '@src/components/CMyFieldRec'
import { CSelectImage } from '@src/components/CSelectImage'
+import { CSelectAnimation } from '@src/components/CSelectAnimation'
import { CSelectColor } from '@src/components/CSelectColor'
import { CSelectFontSize } from '@src/components/CSelectFontSize'
@@ -35,7 +36,7 @@ export default defineComponent({
components: {
CImgTitle, CTitle, LandingFooter, CEventsCalendar,
CCardCarousel, COpenStreetMap, CMyPage, CMyPageIntro, CMyEditor, CMyFieldRec,
- CSelectColor, CSelectFontSize, CSelectImage, CImgPoster
+ CSelectColor, CSelectFontSize, CSelectImage, CImgPoster, CSelectAnimation
},
emits: ['saveElem'],
props: {
@@ -247,6 +248,7 @@ export default defineComponent({
return (myel.value.type === shared_consts.ELEMTYPE.IMAGE)
|| (myel.value.type === shared_consts.ELEMTYPE.IMGTITLE)
|| (myel.value.type === shared_consts.ELEMTYPE.TEXT)
+ || (myel.value.type === shared_consts.ELEMTYPE.CARD)
|| (myel.value.type === shared_consts.ELEMTYPE.HTML)
|| (myel.value.type === shared_consts.ELEMTYPE.CAROUSEL_IMGS)
}
diff --git a/src/components/CMyEditElem/CMyEditElem.vue b/src/components/CMyEditElem/CMyEditElem.vue
index 4da2e2a4..6b59d5f3 100755
--- a/src/components/CMyEditElem/CMyEditElem.vue
+++ b/src/components/CMyEditElem/CMyEditElem.vue
@@ -182,22 +182,12 @@
>
-
-
-
-
+
+
-
-
-
-
+
+
{{ rec.alt }}
-
+
-
-
+
Pagina: {{myel.container}}
diff --git a/src/components/CMyPageElem/CMyPageElem.ts b/src/components/CMyPageElem/CMyPageElem.ts
index 79f70ca1..289bcd6e 100755
--- a/src/components/CMyPageElem/CMyPageElem.ts
+++ b/src/components/CMyPageElem/CMyPageElem.ts
@@ -8,6 +8,7 @@ import { useGlobalStore } from '@store/globalStore'
import { LandingFooter } from '@/components/LandingFooter'
import { CMyElem } from '@/components/CMyElem'
import { CMyEditElem } from '@/components/CMyEditElem'
+import { CMyPageElem2 } from '@/components/CMyPageElem2'
import { CImgTitle } from '../CImgTitle/index'
import { CTitle } from '../CTitle/index'
@@ -19,7 +20,7 @@ import objectId from '@src/js/objectId'
export default defineComponent({
name: 'CMyPageElem',
- components: { LandingFooter, CImgTitle, CTitle, CMyElem, CMyEditElem },
+ components: { LandingFooter, CImgTitle, CTitle, CMyElem, CMyEditElem, CMyPageElem2 },
props: {
title: String,
mypath: {
@@ -79,6 +80,7 @@ export default defineComponent({
function load() {
// console.log('load', mypathin.value)
+
if (mypathin.value !== '') {
globalStore.loadPage('/' + mypathin.value, 'cmypageelem').then(ris => {
rec.value = ris
diff --git a/src/components/CMyPageElem/CMyPageElem.vue b/src/components/CMyPageElem/CMyPageElem.vue
index ec723f98..5401a133 100755
--- a/src/components/CMyPageElem/CMyPageElem.vue
+++ b/src/components/CMyPageElem/CMyPageElem.vue
@@ -34,16 +34,10 @@
round
color="white"
icon="close"
- @click="
- visuEditor = false;
- "
+ @click="visuEditor = false"
>
-
+
@@ -81,16 +75,21 @@
+
diff --git a/src/components/CMyPageElem2/CMyPageElem2.scss b/src/components/CMyPageElem2/CMyPageElem2.scss
new file mode 100755
index 00000000..e69de29b
diff --git a/src/components/CMyPageElem2/CMyPageElem2.ts b/src/components/CMyPageElem2/CMyPageElem2.ts
new file mode 100755
index 00000000..53352c3e
--- /dev/null
+++ b/src/components/CMyPageElem2/CMyPageElem2.ts
@@ -0,0 +1,145 @@
+import {
+ computed,
+ defineComponent, onMounted, ref, toRef, watch,
+} from 'vue'
+
+import { IMyElem, IMyPage } from '@src/model'
+import { useGlobalStore } from '@store/globalStore'
+import { LandingFooter } from '@/components/LandingFooter'
+import { CMyElem } from '@/components/CMyElem'
+import { CMyEditElem } from '@/components/CMyEditElem'
+
+import { CImgTitle } from '../CImgTitle/index'
+import { CTitle } from '../CTitle/index'
+import { tools } from '@store/Modules/tools'
+import { useQuasar } from 'quasar'
+import { useI18n } from '@/boot/i18n'
+import { shared_consts } from '@/common/shared_vuejs'
+import objectId from '@src/js/objectId'
+
+export default defineComponent({
+ name: 'CMyPageElem2',
+ components: { LandingFooter, CImgTitle, CTitle, CMyElem, CMyEditElem },
+ props: {
+ title: String,
+ mypath: {
+ type: String,
+ required: true,
+ },
+ img: {
+ type: String,
+ required: false,
+ default: '',
+ },
+ imgbackground: {
+ type: String,
+ required: false,
+ default: '',
+ },
+ sizes: {
+ type: String,
+ required: false,
+ default: '',
+ },
+ styleadd: {
+ type: String,
+ required: false,
+ default: '',
+ },
+ nofooter: {
+ type: Boolean,
+ required: false,
+ default: false,
+ },
+ },
+
+ setup(props) {
+ const rec = ref
(null)
+ const mypathin = toRef(props, 'mypath')
+
+ const $q = useQuasar()
+
+ const { t } = useI18n()
+ const globalStore = useGlobalStore()
+
+ const editOn = ref(false)
+ const visuEditor = ref(false)
+ const addOn = ref(false)
+ const myelemVoid = ref({ _id: objectId(), active: true, type: shared_consts.ELEMTYPE.TEXT, container: '...', path: mypathin.value } as IMyElem)
+
+
+ const selElem = ref(globalStore.selElem)
+
+ const myelems = computed(() => {
+ if (mypathin.value)
+ return globalStore.getMyElems(mypathin.value)
+ else
+ return null
+ })
+
+ function load() {
+ // console.log('load', mypathin.value)
+
+ if (mypathin.value !== '') {
+ globalStore.loadPage('/' + mypathin.value, 'cmypageelem').then(ris => {
+ rec.value = ris
+ })
+ }
+
+ if (tools.isManager()) {
+ editOn.value = tools.getCookie('EDITPAGES', '0') === '-1' ? true : false
+ console.log('getcookie: ', editOn.value, mypathin.value)
+ }
+ }
+
+ watch(() => props.mypath, (to: string, from: string) => {
+ console.log('... load', mypathin.value, props.mypath)
+ selElem.value = {}
+ load()
+ })
+
+ watch(
+ () => editOn.value,
+ () => {
+ if (!editOn.value) {
+ selElem.value = {}
+ }
+ })
+
+ function selElemClick(myelem: IMyElem) {
+ console.log('mypageelem selElemClick', myelem)
+ selElem.value = myelem
+ visuEditor.value = !!myelem
+ }
+
+ function mounted() {
+ load()
+ }
+
+ function saveElem(myelem: IMyElem) {
+ //
+ }
+
+ function changeVisuDrawer(path: string, edit: boolean) {
+ globalStore.changeVisuDrawer(path, edit)
+ }
+
+ onMounted(mounted)
+
+ return {
+ rec, myelems,
+ mypathin,
+ editOn,
+ visuEditor,
+ addOn,
+ tools,
+ shared_consts,
+ myelemVoid,
+ selElemClick,
+ selElem,
+ saveElem,
+ changeVisuDrawer,
+ }
+ },
+
+})
diff --git a/src/components/CMyPageElem2/CMyPageElem2.vue b/src/components/CMyPageElem2/CMyPageElem2.vue
new file mode 100755
index 00000000..ea999047
--- /dev/null
+++ b/src/components/CMyPageElem2/CMyPageElem2.vue
@@ -0,0 +1,135 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ Editor
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/CMyPageElem2/index.ts b/src/components/CMyPageElem2/index.ts
new file mode 100755
index 00000000..73031517
--- /dev/null
+++ b/src/components/CMyPageElem2/index.ts
@@ -0,0 +1 @@
+export { default as CMyPageElem2 } from './CMyPageElem2.vue'
diff --git a/src/components/CSelectAnimation/CSelectAnimation.scss b/src/components/CSelectAnimation/CSelectAnimation.scss
new file mode 100755
index 00000000..e69de29b
diff --git a/src/components/CSelectAnimation/CSelectAnimation.ts b/src/components/CSelectAnimation/CSelectAnimation.ts
new file mode 100755
index 00000000..0bd7521d
--- /dev/null
+++ b/src/components/CSelectAnimation/CSelectAnimation.ts
@@ -0,0 +1,60 @@
+import { defineComponent, onMounted, ref } from 'vue'
+
+import { tools } from '@src/store/Modules/tools'
+import { shared_consts } from '@src/common/shared_vuejs'
+import { emit } from 'process'
+
+export default defineComponent({
+ name: 'CSelectAnimation',
+ emits: ['update:modelValue'],
+ props: {
+ modelValue: {
+ type: String,
+ required: true,
+ default: '',
+ },
+ label: {
+ type: String,
+ required: false,
+ default: '',
+ },
+ },
+
+ setup(props, { emit }) {
+
+ const myclass = ref('')
+ const animType = ref('')
+ const animSpeed = ref('')
+ const animDelay = ref('')
+
+ function updateClass() {
+
+ let mycl = ''
+
+ myclass.value = 'animate__animated ' + animType.value + ' ' + animSpeed.value + ' ' + animDelay.value
+
+ emit('update:modelValue', myclass.value)
+ }
+
+ function mounted() {
+
+ const myarr = props.modelValue.split(' ')
+
+ animType.value = tools.findFirstElemInCommon(tools.SelectListAnimation, myarr)
+ animSpeed.value = tools.findFirstElemInCommon(tools.SelectListSpeed, myarr)
+ animDelay.value = tools.findFirstElemInCommon(tools.SelectListDelay, myarr)
+
+ }
+
+ onMounted(mounted)
+
+ return {
+ tools,
+ updateClass,
+ animType,
+ animSpeed,
+ animDelay,
+ }
+ },
+
+})
diff --git a/src/components/CSelectAnimation/CSelectAnimation.vue b/src/components/CSelectAnimation/CSelectAnimation.vue
new file mode 100755
index 00000000..28bb5b06
--- /dev/null
+++ b/src/components/CSelectAnimation/CSelectAnimation.vue
@@ -0,0 +1,52 @@
+
+
+ {{label}}
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/CSelectAnimation/index.ts b/src/components/CSelectAnimation/index.ts
new file mode 100755
index 00000000..5de09283
--- /dev/null
+++ b/src/components/CSelectAnimation/index.ts
@@ -0,0 +1 @@
+export { default as CSelectAnimation } from './CSelectAnimation.vue'
diff --git a/src/model/Calendar.ts b/src/model/Calendar.ts
index 297358b3..5012d7c5 100755
--- a/src/model/Calendar.ts
+++ b/src/model/Calendar.ts
@@ -77,6 +77,11 @@ export interface ILabelValue {
value: number
}
+export interface ILabelValueStr {
+ label: string
+ value: string
+}
+
export interface IValue {
value: number
}
diff --git a/src/model/GlobalStore.ts b/src/model/GlobalStore.ts
index 811c3562..733dc9ef 100755
--- a/src/model/GlobalStore.ts
+++ b/src/model/GlobalStore.ts
@@ -190,6 +190,8 @@ export interface IMyPage {
infooter?: boolean
internalpage?: boolean
extraclass?: string
+ loadFirst?: boolean
+ showFooter?: boolean
}
export interface IOption {
diff --git a/src/store/Modules/fieldsTable.ts b/src/store/Modules/fieldsTable.ts
index df90fa4a..9ec87261 100755
--- a/src/store/Modules/fieldsTable.ts
+++ b/src/store/Modules/fieldsTable.ts
@@ -237,6 +237,8 @@ export const colmypage = [
AddCol({ name: 'l_par', label_trans: 'pages.l_par', fieldtype: costanti.FieldType.number }),
AddCol({ name: 'l_child', label_trans: 'pages.l_child', fieldtype: costanti.FieldType.number }),
AddCol({ name: 'internalpage', label_trans: 'pages.internalpage', fieldtype: costanti.FieldType.boolean }),
+ AddCol({ name: 'loadFirst', label_trans: 'pages.loadFirst', fieldtype: costanti.FieldType.boolean }),
+ AddCol({ name: 'showFooter', label_trans: 'pages.showFooter', fieldtype: costanti.FieldType.boolean }),
AddCol({ name: 'iconsize', label_trans: 'pages.iconsize', fieldtype: costanti.FieldType.string }),
AddCol({ name: 'extraclass', label_trans: 'pages.extraclass', fieldtype: costanti.FieldType.string }),
AddCol(DeleteRec),
diff --git a/src/store/Modules/tools.ts b/src/store/Modules/tools.ts
index d67b93ca..231d6a93 100644
--- a/src/store/Modules/tools.ts
+++ b/src/store/Modules/tools.ts
@@ -12,7 +12,7 @@ import {
ITodo,
IUserFields,
Privacy,
- TipoVisu, IGroup, IMySkill, IMyBacheca, IImgGallery, IMsgGlobParam, IUserExport, ISpecialField, IAccount, IMyCircuit, ISendCoin, IMovement, IMovVisu, INotif, IMyElem, IMyCard,
+ TipoVisu, IGroup, IMySkill, IMyBacheca, IImgGallery, IMsgGlobParam, IUserExport, ISpecialField, IAccount, IMyCircuit, ISendCoin, IMovement, IMovVisu, INotif, IMyElem, IMyCard, ILabelValue, ILabelValueStr,
} from '@model'
import { fieldsTable } from '@store/Modules/fieldsTable'
@@ -593,19 +593,257 @@ export const tools = {
},
],
+ SelectListSpeed: [
+ {
+ label: '[Nessuna]',
+ value: '',
+ },
+ {
+ label: 'Slow 2s',
+ value: 'animate__slow',
+ },
+ {
+ label: 'Slower 3s',
+ value: 'animate__slower',
+ },
+ {
+ label: 'Fast .8s',
+ value: 'animate__fast',
+ },
+ {
+ label: 'Faster .5s',
+ value: 'animate__faster',
+ },
+ ],
+
+ SelectListDelay: [
+ {
+ label: '[Nessuna]',
+ value: '',
+ },
+ {
+ label: 'Delay 2s',
+ value: 'animate__delay-2s',
+ },
+ {
+ label: 'Delay 3s',
+ value: 'animate__delay-3s',
+ },
+ {
+ label: 'Delay 4s',
+ value: 'animate__delay-4s',
+ },
+ {
+ label: 'Delay 5s',
+ value: 'animate__delay-5s',
+ },
+
+ ],
+
+
SelectListAnimation: [
{
label: '[Nessuna]',
value: '',
},
{
- label: 'Dal basso verso l\'alto',
- value: 'anim_toBottom',
+ label: 'HeartBeat',
+ value: 'animate__heartBeat',
},
{
- label: 'Da sinistra verso Destra',
- value: 'anim_toRight',
+ label: 'Jello',
+ value: 'animate__jello',
},
+ {
+ label: 'Pulse',
+ value: 'animate__pulse',
+ },
+ {
+ label: 'slideIn Left',
+ value: 'animate__slideInLeft',
+ },
+ {
+ label: 'slideIn Right',
+ value: 'animate__slideInRight',
+ },
+ {
+ label: 'slideIn Up',
+ value: 'animate__slideInUp',
+ },
+ {
+ label: 'slideIn Down',
+ value: 'animate__slideInDown',
+ },
+ {
+ label: 'slideOut Left',
+ value: 'animate__slideOutLeft',
+ },
+ {
+ label: 'slideOut Right',
+ value: 'animate__slideOutRight',
+ },
+ {
+ label: 'slideOut Up',
+ value: 'animate__slideOutUp',
+ },
+ {
+ label: 'slideOut Down',
+ value: 'animate__slideOutDown',
+ },
+ {
+ label: 'zoomIn Left',
+ value: 'animate__zoomInLeft',
+ },
+ {
+ label: 'zoomIn Right',
+ value: 'animate__zoomInRight',
+ },
+ {
+ label: 'zoomIn Up',
+ value: 'animate__zoomInUp',
+ },
+ {
+ label: 'zoomIn Down',
+ value: 'animate__zoomInDown',
+ },
+ {
+ label: 'zoomOut Left',
+ value: 'animate__zoomOutLeft',
+ },
+ {
+ label: 'zoomOut Right',
+ value: 'animate__zoomOutRight',
+ },
+ {
+ label: 'zoomOut Up',
+ value: 'animate__zoomOutUp',
+ },
+ {
+ label: 'zoomOut Down',
+ value: 'animate__zoomOutDown',
+ },
+ {
+ label: 'FadeIn Left',
+ value: 'animate__fadeInLeft',
+ },
+ {
+ label: 'FadeIn Right',
+ value: 'animate__fadeInRight',
+ },
+ {
+ label: 'FadeIn Up',
+ value: 'animate__fadeInUp',
+ },
+ {
+ label: 'FadeIn Up Big',
+ value: 'animate__fadeInUpBig',
+ },
+ {
+ label: 'FadeIn Down',
+ value: 'animate__fadeInDown',
+ },
+ {
+ label: 'FadeIn Down Big',
+ value: 'animate__fadeInDownBig',
+ },
+ {
+ label: 'FadeOut Left',
+ value: 'animate__fadeOutLeft',
+ },
+ {
+ label: 'FadeOut Right',
+ value: 'animate__fadeOutRight',
+ },
+ {
+ label: 'FadeOut Up',
+ value: 'animate__fadeOutUp',
+ },
+ {
+ label: 'FadeOut Down',
+ value: 'animate__fadeOutDown',
+ },
+ {
+ label: 'bounceIn Left',
+ value: 'animate__bounceInLeft',
+ },
+ {
+ label: 'bounceIn Right',
+ value: 'animate__bounceInRight',
+ },
+ {
+ label: 'bounceIn Up',
+ value: 'animate__bounceInUp',
+ },
+ {
+ label: 'bounceIn Down',
+ value: 'animate__bounceInDown',
+ },
+ {
+ label: 'bounceOut Left',
+ value: 'animate__bounceOutLeft',
+ },
+ {
+ label: 'bounceOut Right',
+ value: 'animate__bounceOutRight',
+ },
+ {
+ label: 'bounceOut Up',
+ value: 'animate__bounceOutUp',
+ },
+ {
+ label: 'bounceOut Down',
+ value: 'animate__bounceOutDown',
+ },
+ {
+ label: 'backIn Left',
+ value: 'animate__backInLeft',
+ },
+ {
+ label: 'backIn Right',
+ value: 'animate__backInRight',
+ },
+ {
+ label: 'backIn Up',
+ value: 'animate__backInUp',
+ },
+ {
+ label: 'backIn Down',
+ value: 'animate__backInDown',
+ },
+ {
+ label: 'backOut Left',
+ value: 'animate__backOutLeft',
+ },
+ {
+ label: 'backOut Right',
+ value: 'animate__backOutRight',
+ },
+ {
+ label: 'backOut Up',
+ value: 'animate__backOutUp',
+ },
+ {
+ label: 'backOut Down',
+ value: 'animate__backOutDown',
+ },
+ {
+ label: 'lightSpeedIn Left',
+ value: 'animate__lightSpeedInLeft',
+ },
+ {
+ label: 'lightSpeedIn Right',
+ value: 'animate__lightSpeedInRight',
+ },
+ {
+ label: 'lightSpeedOut Left',
+ value: 'animate__lightSpeedOutLeft',
+ },
+ {
+ label: 'lightSpeedOut Right',
+ value: 'animate__lightSpeedOutRight',
+ },
+
+
],
@@ -6900,6 +7138,18 @@ export const tools = {
}
},
+ findFirstElemInCommon(arr1: ILabelValueStr[], arr2: string[]) {
+ for (let i = 0; i < arr1.length; i++) {
+ for (let j = 0; j < arr2.length; j++) {
+ if (arr1[i].value == arr2[j] && arr1[i].value !== '') {
+ return arr1[i].value
+ }
+ }
+ }
+
+ return ''
+ }
+
// getLocale() {
// if (navigator.languages && navigator.languages.length > 0) {
// return navigator.languages[0]
diff --git a/src/store/globalStore.ts b/src/store/globalStore.ts
index 49b89fad..4d462cca 100644
--- a/src/store/globalStore.ts
+++ b/src/store/globalStore.ts
@@ -917,7 +917,7 @@ export const useGlobalStore = defineStore('GlobalStore', {
const mypage = this.getPage(`/${path}`)
// Controlla se l'ho giĆ caricato
- if (!!mypage && !!mypage.content) {
+ if (!!mypage && (!!mypage.content || mypage.loadFirst)) {
return mypage
}