diff --git a/.babelrc b/.babelrc
index 671ce3f..b8f7eab 100644
--- a/.babelrc
+++ b/.babelrc
@@ -22,15 +22,6 @@
"loose": false,
"useBuiltIns": "usage"
}
- ],
- [
- "@babel/preset-stage-2",
- {
- "modules": false,
- "loose": false,
- "useBuiltIns": true,
- "decoratorsLegacy": true
- }
]
],
"plugins": [
diff --git a/.env.development b/.env.development
index e032ebc..211e8d9 100644
--- a/.env.development
+++ b/.env.development
@@ -1,4 +1,4 @@
-APP_VERSION="DEV 0.0.27"
+APP_VERSION="0.0.47"
SERVICE_WORKER_FILE='service-worker.js'
APP_ID='1'
APP_URL='https://freeplanet.app'
@@ -7,8 +7,10 @@ LANG_DEFAULT='it'
PAO_APP_ID='KKPPAA5KJK435J3KSS9F9D8S9F8SD98F9SDF'
MASTER_KEY='KKPPSS5KJK435J3KSS9F9D8S9F8SD3CR3T'
MONGODB_HOST='http://localhost:3000'
-LOGO_REG='freeplanet-logo-full.svg'
+LOGO_REG="freeplanet-logo-full.svg"
TEST_EMAIL='paolo.arena77@gmail.com'
TEST_USERNAME='paoloar77'
TEST_PASSWORD='mypassword@1A'
PUBLICKEY_PUSH='BGxRrFWnPoa_ImUaWXmeEOFVI9VNKVKaAPsvsM1XY6wn24yxp9MyOQ4crNYCJKxSXV65Y1GblW5_VLoamedcZ1I'
+IN_CONSTRUCTION='0'
+DEBUG='1'
diff --git a/.gitignore b/.gitignore
index b327f0b..de79285 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,6 +2,7 @@
.DS_Store
.thumbs.db
.env
+.env.development
.env.production
.env.production.bak
.env.prod.bak
@@ -12,7 +13,6 @@ node_modules
/src-cordova/platforms
/src-cordova/plugins
/src-cordova/www
-/src-pwa
/src-ssr
npm-debug.log*
yarn-debug.log*
@@ -34,3 +34,8 @@ deploy.sh
deploy_on_production.sh
deploy_on_test_server.sh
send_to_production.sh
+compileandserve.sh
+deploy_all.sh
+deploy_frontend.sh
+mongodb_delete_pc_locale_paolo.sh
+serve_on_localhost.sh
diff --git a/docs/docs.txt b/docs/docs.txt
index a795997..4f522d8 100644
--- a/docs/docs.txt
+++ b/docs/docs.txt
@@ -4,3 +4,31 @@ md 992px Medium-sized window
lg 1200px Large sized window
xl Infinite Extra large sized window
+
+--------------------------------------------------------
+https://alligator.io/vuejs/progressive-image-rendering/
+--- lOADING LAZY IMAGES:
+--------------------------------------------------------
+
+
+
+
+
+
+
+
diff --git a/src/components/admin/cfgServer/cfgServer.scss b/src/components/admin/cfgServer/cfgServer.scss
new file mode 100644
index 0000000..e69de29
diff --git a/src/components/admin/cfgServer/cfgServer.ts b/src/components/admin/cfgServer/cfgServer.ts
new file mode 100644
index 0000000..148fb25
--- /dev/null
+++ b/src/components/admin/cfgServer/cfgServer.ts
@@ -0,0 +1,73 @@
+import Vue from 'vue'
+import { Component } from 'vue-property-decorator'
+
+import { GlobalStore } from '@store'
+
+
+@Component({})
+export default class CfgServer extends Vue {
+ public loading: boolean = false
+ public paginationControl: {
+ page: number,
+ rowsPerPage: number // specifying this determines pagination is server-side
+ } = { page: 1, rowsPerPage: 20 }
+
+ public pagination: {
+ page: number
+ } = {page: 1 }
+
+ public serverData: any [] = GlobalStore.state.cfgServer.slice() // [{ chiave: 'chiave1', valore: 'valore 1' }]
+ public columns: any[] = [
+ {
+ name: 'chiave',
+ required: true,
+ label: 'Chiave',
+ align: 'left',
+ field: 'chiave',
+ sortable: true
+ },
+ { name: 'userid', label: 'UserId', field: 'userid', sortable: false },
+ { name: 'valore', label: 'Valore', field: 'valore', sortable: false }
+ ]
+
+ public visibleColumns: ['chiave', 'userid', 'valore']
+ public separator: 'horizontal'
+ public filter: string = ''
+ public selected: any[] = []
+ public dark: boolean = true
+
+ public keysel: string = ''
+ public userIdsel: string = ''
+
+
+ get tableClass () {
+ if (this.dark) {
+ return 'bg-black'
+ }
+ }
+
+ selItem(item) {
+ console.log('item', item)
+ this.keysel = item.chiave
+ this.userIdsel = item.userid
+ console.log('this.keysel', this.keysel)
+ }
+
+ SaveValue(newVal, valinitial) {
+ console.log('SaveValue', newVal, 'selected', this.selected)
+
+ const mydata = {
+ chiave: this.keysel,
+ userId: this.userIdsel,
+ valore: newVal
+ }
+ // Save on Server
+ GlobalStore.actions.saveCfgServerKey(mydata)
+ }
+
+ created() {
+ this.serverData = GlobalStore.state.cfgServer.slice() // [{ chiave: 'chiave1', valore: 'valore 1' }]
+ // this.serverData = GlobalStore.state.cfgServer.slice()
+ }
+
+}
diff --git a/src/components/admin/cfgServer/cfgServer.vue b/src/components/admin/cfgServer/cfgServer.vue
new file mode 100644
index 0000000..16d0873
--- /dev/null
+++ b/src/components/admin/cfgServer/cfgServer.vue
@@ -0,0 +1,40 @@
+
+
+
+
+ {{ props.row.chiave }}
+
+
+
+
+
+
+
+ {{ props.row.userId }}
+
+
+
+
+
+
+
+ {{ props.row.valore }}
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/admin/cfgServer/index.ts b/src/components/admin/cfgServer/index.ts
new file mode 100644
index 0000000..c9864b2
--- /dev/null
+++ b/src/components/admin/cfgServer/index.ts
@@ -0,0 +1 @@
+export {default as cfgServer} from './cfgServer.vue'
diff --git a/src/components/admin/testp1/index.ts b/src/components/admin/testp1/index.ts
new file mode 100644
index 0000000..25a1d53
--- /dev/null
+++ b/src/components/admin/testp1/index.ts
@@ -0,0 +1 @@
+export {default as testp1} from './testp1.vue'
diff --git a/src/components/admin/testp1/testp1.scss b/src/components/admin/testp1/testp1.scss
new file mode 100644
index 0000000..e69de29
diff --git a/src/components/admin/testp1/testp1.ts b/src/components/admin/testp1/testp1.ts
new file mode 100644
index 0000000..699e5a2
--- /dev/null
+++ b/src/components/admin/testp1/testp1.ts
@@ -0,0 +1,95 @@
+import Vue from 'vue'
+import { Component, Watch } from 'vue-property-decorator'
+
+import { GlobalStore, UserStore } from '@store'
+import { Getter } from "vuex-class"
+import { ICfgServer, IGlobalState, ITodo, ITodosState } from '@src/model'
+
+const namespace: string = 'GlobalModule'
+
+@Component({})
+export default class Testp1 extends Vue {
+ public myvar:number = 5
+ public paramcategory: string = ''
+ public mioobj: any
+
+ // @Getter('todos_dacompletare', { namespace })
+ // public todos_dacompletare: (state: ITodosState, category: string) => ITodo[]
+
+ @Getter('testpao1_getter_contatore', { namespace })
+ public testpao1: (state: IGlobalState, param1: number) => number
+
+ @Getter('testpao1_getter_array', { namespace })
+ public testpao1_array: (state: IGlobalState, miorec: ICfgServer) => ICfgServer[]
+
+ @Watch('GlobalStore.state.testp1.mioarray', { immediate: true, deep: true })
+ array_changed() {
+ console.log('*** array_changed *** ', GlobalStore.state.testp1.mioarray[GlobalStore.state.testp1.mioarray.length - 1])
+ }
+
+ @Watch('$route.params.category') changecat() {
+ // this.mytypetransgroup = ''
+ console.log('PRIMA this.paramcategory', this.paramcategory)
+ this.paramcategory = this.$route.params.category
+ console.log('DOPO this.paramcategory', this.paramcategory)
+ }
+
+ created() {
+ this.mioobj = {
+ arr1: [{chiave: 'key1', userId: 'ALL', valore: 'val1'}],
+ arr2: [{chiave: 'key2', userId: 'ALL', valore: 'val2'}]
+ }
+ }
+
+ get getarr1 () {
+ // return this.mioobj.arr1
+ return this.mioobj['arr1']
+ }
+
+ get prova2() {
+ return GlobalStore.state.testp1.contatore
+ }
+
+ get provagetter() {
+ return GlobalStore.getters.testpao1_getter_contatore(130)
+ }
+
+ get provagetterarray() {
+ return GlobalStore.getters.testpao1_getter_array(GlobalStore.state.testp1.contatore)
+ }
+
+
+ TestBtnCambioaParamPassing () {
+ this.paramcategory += 's'
+ }
+
+ TestBtn() {
+ GlobalStore.state.testp1.contatore++
+ }
+
+ TestBtn2() {
+ GlobalStore.state.testp1.mioarray.push({chiave: 'pippo2', userId: UserStore.state.userId, valore: GlobalStore.state.testp1.contatore.toString() })
+ }
+
+ TestBtnModify() {
+ // GlobalStore.state.testp1.mioarray[GlobalStore.state.testp1.mioarray.length - 1] = GlobalStore.state.testp1.mioarray[GlobalStore.state.testp1.mioarray.length - 1] + 1
+ GlobalStore.mutations.setPaoArray({chiave: 'pippo', userId: UserStore.state.userId, valore: '20' } )
+
+ }
+
+ TestBtnCambiaTutto() {
+ // GlobalStore.state.testp1.mioarray[GlobalStore.state.testp1.mioarray.length - 1] = GlobalStore.state.testp1.mioarray[GlobalStore.state.testp1.mioarray.length - 1] + 1
+ GlobalStore.mutations.NewArray([{chiave: 'nuovorec1', userId: UserStore.state.userId, valore: '1' }, {chiave: 'nuovorec2', userId: UserStore.state.userId, valore: '2' }] )
+
+ }
+
+ TestBtnAction() {
+ GlobalStore.actions.prova()
+ }
+
+ TestBtnDelete() {
+ // GlobalStore.state.testp1.mioarray[GlobalStore.state.testp1.mioarray.length - 1] = GlobalStore.state.testp1.mioarray[GlobalStore.state.testp1.mioarray.length - 1] + 1
+ GlobalStore.mutations.setPaoArray_Delete()
+ }
+
+}
diff --git a/src/components/admin/testp1/testp1.vue b/src/components/admin/testp1/testp1.vue
new file mode 100644
index 0000000..437d701
--- /dev/null
+++ b/src/components/admin/testp1/testp1.vue
@@ -0,0 +1,43 @@
+
+
+ CATEGORY: {{ paramcategory }}
+
+
+
+
+ GETTER CONTATORE:
+ {{ testpao1(300) }}
+ ARRAY:
+ {{ testpao1_array(300) }}
+
+ TEST OBJECT {{ mioobj }}
+ ARR1 {{ getarr1 }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/categories/category/category.ts b/src/components/categories/category/category.ts
index eec08f6..5278fcd 100644
--- a/src/components/categories/category/category.ts
+++ b/src/components/categories/category/category.ts
@@ -121,7 +121,7 @@ export default class Category extends Vue {
async deleteCategory(myarrobj) {
- await myarrobj.forEach(myobj => {
+ for (const myobj of myarrobj) {
if (myobj.id !== undefined) {
console.log('KEY = ', myobj.id)
@@ -141,7 +141,7 @@ export default class Category extends Vue {
return deleteCount
}
}
- })
+ }
}
diff --git a/src/components/categories/tabledata/tabledata.ts b/src/components/categories/tabledata/tabledata.ts
index b27f197..b04297c 100644
--- a/src/components/categories/tabledata/tabledata.ts
+++ b/src/components/categories/tabledata/tabledata.ts
@@ -2,6 +2,7 @@ import Vue from 'vue'
import { Component, Watch } from 'vue-property-decorator'
import { ICategory } from '@src/model'
+import globalroutines from "@src/globalroutines"
@Component({
})
@@ -116,7 +117,7 @@ export default class Tabledata extends Vue {
async deleteCategory(myarrobj) {
- await myarrobj.forEach(myobj => {
+ for (const myobj of myarrobj) {
if (myobj.id !== undefined) {
console.log('KEY = ', myobj.id)
@@ -136,7 +137,7 @@ export default class Tabledata extends Vue {
return deleteCount
}
}
- })
+ }
}
diff --git a/src/components/logo/logo.scss b/src/components/logo/logo.scss
index 5307147..ec2591e 100644
--- a/src/components/logo/logo.scss
+++ b/src/components/logo/logo.scss
@@ -1,9 +1,11 @@
-.svgclass{
+
+.svgclass {
color: white;
transform: translateY(0px);
}
+
.svgclass_animate {
transform: translateY(-70px);
color: red;
@@ -14,16 +16,24 @@
}
-@keyframes gravity{
- 0%{
+#logoimg {
+ height: 150px;
+ width: auto;
+ @media screen and (max-width: 600px) {
+ }
+}
+
+@keyframes gravity {
+ 0% {
transform: rotateY(0deg);
}
- 100%{
+ 100% {
transform: rotateY(360deg);
}
}
-#smile{
+#smile {
opacity: 0.1 !important;
fill: red;
}
+
diff --git a/src/components/offline/offline.ts b/src/components/offline/offline.ts
index c76d173..1a3cd52 100644
--- a/src/components/offline/offline.ts
+++ b/src/components/offline/offline.ts
@@ -13,7 +13,7 @@ export default class Offline extends Vue {
logoimg: string = ''
created() {
- this.logoimg = 'statics/images/' + process.env.LOGO_REG
+ this.logoimg = '/statics/images/' + process.env.LOGO_REG
this.animate()
}
diff --git a/src/components/offline/offline.vue b/src/components/offline/offline.vue
index 21c6646..471a9ec 100644
--- a/src/components/offline/offline.vue
+++ b/src/components/offline/offline.vue
@@ -1,6 +1,6 @@
- Offline Page !
+ TableOnlyView Page !
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
+