1735 lines
39 KiB
TypeScript
1735 lines
39 KiB
TypeScript
|
|
import { translation } from '@store/Modules/translation'
|
||
|
|
import {
|
||
|
|
IEvents, IPathFile, Privacy, TipoVisu,
|
||
|
|
} from '@model'
|
||
|
|
|
||
|
|
import { lists } from '@store/Modules/lists'
|
||
|
|
import { costanti } from '@store/Modules/costanti'
|
||
|
|
import { date, Screen, useQuasar } from 'quasar'
|
||
|
|
|
||
|
|
import { toolsext } from '@store/Modules/toolsext'
|
||
|
|
import { preloadedimages, static_data } from '@src/db/static_data'
|
||
|
|
import { useGlobalStore } from '@store/globalStore'
|
||
|
|
import globalroutines from '@src/boot/globalroutines'
|
||
|
|
import { useI18n } from '@src/boot/i18n'
|
||
|
|
import { RouteNames } from '@src/router/route-names'
|
||
|
|
|
||
|
|
export interface INotify {
|
||
|
|
color?: string | 'primary'
|
||
|
|
textColor?: string
|
||
|
|
icon?: string | ''
|
||
|
|
}
|
||
|
|
|
||
|
|
export const tools = {
|
||
|
|
CAN_EDIT: 'q-ce',
|
||
|
|
TABBED_DASHBOARD: 't-db',
|
||
|
|
TABBED_HOME: 't-home',
|
||
|
|
TABBED_NAVE: 't-nave',
|
||
|
|
|
||
|
|
getprefCountries: ['it', 'es', 'us'],
|
||
|
|
|
||
|
|
APORTADOR_NONE: '------',
|
||
|
|
|
||
|
|
TYPECONF_ZOOM: 'zoom',
|
||
|
|
TYPECONF_JITSI: 'jitsi',
|
||
|
|
|
||
|
|
APORTADOR_SOLIDARIO: 'apsol',
|
||
|
|
|
||
|
|
IDAPP_AYNI: '7',
|
||
|
|
IDAPP_SIP: '9',
|
||
|
|
IDAPP_CNM: '10',
|
||
|
|
|
||
|
|
TipoMsg: {
|
||
|
|
SEND_LINK_CHAT_DONATORI: 1,
|
||
|
|
SEND_MSG: 2,
|
||
|
|
SEND_MSG_SINGOLO: 3,
|
||
|
|
SEND_TO_ALL: 10,
|
||
|
|
SEND_MSG_EFFETTUA_IL_DONO: 1000,
|
||
|
|
SEND_MSG_SOLLECITO_DONATORI_NO_DONO: 1005,
|
||
|
|
SEND_MSG_A_MEDIATORI: 1010,
|
||
|
|
SEND_MSG_A_SOGNATORE: 1020,
|
||
|
|
SEND_MSG_A_UTENTE_SOSTITUITO: 1030,
|
||
|
|
SEND_MSG_DONO_RICEVUTO_CORRETTAMENTE: 1040,
|
||
|
|
},
|
||
|
|
|
||
|
|
listBestColor: [
|
||
|
|
'blue',
|
||
|
|
'green',
|
||
|
|
'purple',
|
||
|
|
'deep-purple',
|
||
|
|
'indigo',
|
||
|
|
'light-blue',
|
||
|
|
'cyan',
|
||
|
|
'teal',
|
||
|
|
'lime',
|
||
|
|
'orange',
|
||
|
|
'deeporange',
|
||
|
|
'grey',
|
||
|
|
'blue-gray',
|
||
|
|
'yellow',
|
||
|
|
],
|
||
|
|
|
||
|
|
MAX_CHARACTERS: 60,
|
||
|
|
projects: 'projects',
|
||
|
|
todos: 'todos',
|
||
|
|
EMPTY: 0,
|
||
|
|
CALLING: 10,
|
||
|
|
OK: 20,
|
||
|
|
|
||
|
|
TYPE_AUDIO: 1,
|
||
|
|
|
||
|
|
NUMSEC_CHECKUPDATE: 20000,
|
||
|
|
|
||
|
|
FIRST_PROJ: '5ca8f17fcd40dc5012f53346',
|
||
|
|
|
||
|
|
WHAT_NOTHING: 0,
|
||
|
|
WHAT_TODO: 1,
|
||
|
|
WHAT_PROJECT: 2,
|
||
|
|
|
||
|
|
languageid: 5,
|
||
|
|
|
||
|
|
peopleWhere: {
|
||
|
|
participants: 1,
|
||
|
|
lunch: 2,
|
||
|
|
dinner: 3,
|
||
|
|
dinnerShared: 4,
|
||
|
|
},
|
||
|
|
|
||
|
|
Priority: {
|
||
|
|
PRIORITY_HIGH: 2,
|
||
|
|
PRIORITY_NORMAL: 1,
|
||
|
|
PRIORITY_LOW: 0,
|
||
|
|
},
|
||
|
|
|
||
|
|
Status: {
|
||
|
|
NONE: 0,
|
||
|
|
OPENED: 1,
|
||
|
|
COMPLETED: 10,
|
||
|
|
},
|
||
|
|
|
||
|
|
SelectHours: [
|
||
|
|
{
|
||
|
|
id: 0,
|
||
|
|
label: '0',
|
||
|
|
value: 0,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
label: '0.5',
|
||
|
|
value: 0.5,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
label: '1',
|
||
|
|
value: 1,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 15,
|
||
|
|
label: '1.5',
|
||
|
|
value: 1.5,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 20,
|
||
|
|
label: '2',
|
||
|
|
value: 2,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 25,
|
||
|
|
label: '2.5',
|
||
|
|
value: 2.5,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 30,
|
||
|
|
label: '3',
|
||
|
|
value: 3,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 35,
|
||
|
|
label: '3.5',
|
||
|
|
value: 3.5,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 40,
|
||
|
|
label: '4',
|
||
|
|
value: 4,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 45,
|
||
|
|
label: '4.5',
|
||
|
|
value: 4.5,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 50,
|
||
|
|
label: '5',
|
||
|
|
value: 5,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 60,
|
||
|
|
label: '6',
|
||
|
|
value: 6,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 70,
|
||
|
|
label: '7',
|
||
|
|
value: 7,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 80,
|
||
|
|
label: '8',
|
||
|
|
value: 8,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 90,
|
||
|
|
label: '9',
|
||
|
|
value: 9,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 100,
|
||
|
|
label: '10',
|
||
|
|
value: 10,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 110,
|
||
|
|
label: '11',
|
||
|
|
value: 11,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 120,
|
||
|
|
label: '12',
|
||
|
|
value: 12,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
|
||
|
|
SelectMetodiPagamento: [
|
||
|
|
{
|
||
|
|
id: 0,
|
||
|
|
label: '[Nessuno]',
|
||
|
|
value: 0,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 1,
|
||
|
|
label: 'Bonifico Bancario',
|
||
|
|
value: 1,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 2,
|
||
|
|
label: 'Paypal',
|
||
|
|
value: 2,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
label: 'In Contanti alla CNM',
|
||
|
|
value: 3,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
|
||
|
|
SelectListNumPeople: [
|
||
|
|
{
|
||
|
|
id: 0,
|
||
|
|
label: '0',
|
||
|
|
value: 0,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 1,
|
||
|
|
label: '1',
|
||
|
|
value: 1,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 2,
|
||
|
|
label: '2',
|
||
|
|
value: 2,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
label: '3',
|
||
|
|
value: 3,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 4,
|
||
|
|
label: '4',
|
||
|
|
value: 4,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
label: '5',
|
||
|
|
value: 5,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 6,
|
||
|
|
label: '6',
|
||
|
|
value: 6,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 7,
|
||
|
|
label: '7',
|
||
|
|
value: 7,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 8,
|
||
|
|
label: '8',
|
||
|
|
value: 8,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 9,
|
||
|
|
label: '9',
|
||
|
|
value: 9,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
label: '10',
|
||
|
|
value: 10,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
|
||
|
|
selectPhase: {
|
||
|
|
it: [
|
||
|
|
{
|
||
|
|
id: 1,
|
||
|
|
label: `${translation.it.fase} 0`,
|
||
|
|
value: 0,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 2,
|
||
|
|
label: `${translation.it.fase} 1`,
|
||
|
|
value: 1,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
label: `${translation.it.fase} 2`,
|
||
|
|
value: 2,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 4,
|
||
|
|
label: `${translation.it.fase} 3`,
|
||
|
|
value: 3,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
es: [
|
||
|
|
{
|
||
|
|
id: 1,
|
||
|
|
label: `${translation.es.fase} 0`,
|
||
|
|
value: 0,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 2,
|
||
|
|
label: `${translation.es.fase} 1`,
|
||
|
|
value: 1,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
label: `${translation.es.fase} 2`,
|
||
|
|
value: 2,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 4,
|
||
|
|
label: `${translation.es.fase} 3`,
|
||
|
|
value: 3,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
enUs: [
|
||
|
|
{
|
||
|
|
id: 1,
|
||
|
|
label: `${translation.enUs.fase} 0`,
|
||
|
|
value: 0,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 2,
|
||
|
|
label: `${translation.enUs.fase} 1`,
|
||
|
|
value: 1,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
label: `${translation.enUs.fase} 2`,
|
||
|
|
value: 2,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 4,
|
||
|
|
label: `${translation.enUs.fase} 3`,
|
||
|
|
value: 3,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
},
|
||
|
|
|
||
|
|
selectPrivacy: {
|
||
|
|
it: [
|
||
|
|
{
|
||
|
|
id: 1,
|
||
|
|
label: translation.it.privacy.all,
|
||
|
|
value: Privacy.all,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 2,
|
||
|
|
label: translation.it.privacy.friends,
|
||
|
|
value: Privacy.friends,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
label: translation.it.privacy.mygroup,
|
||
|
|
value: Privacy.mygroup,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 4,
|
||
|
|
label: translation.it.privacy.onlyme,
|
||
|
|
value: Privacy.onlyme,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
label: translation.it.privacy.inherited,
|
||
|
|
value: Privacy.inherited,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
es: [
|
||
|
|
{
|
||
|
|
id: 1,
|
||
|
|
label: translation.es.privacy.all,
|
||
|
|
value: Privacy.all,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 2,
|
||
|
|
label: translation.es.privacy.friends,
|
||
|
|
value: Privacy.friends,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
label: translation.es.privacy.mygroup,
|
||
|
|
value: Privacy.mygroup,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 4,
|
||
|
|
label: translation.es.privacy.onlyme,
|
||
|
|
value: Privacy.onlyme,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
label: translation.es.privacy.inherited,
|
||
|
|
value: Privacy.inherited,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
enUs: [
|
||
|
|
{
|
||
|
|
id: 1,
|
||
|
|
label: translation.enUs.privacy.all,
|
||
|
|
value: Privacy.all,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 2,
|
||
|
|
label: translation.enUs.privacy.friends,
|
||
|
|
value: Privacy.friends,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
label: translation.enUs.privacy.mygroup,
|
||
|
|
value: Privacy.mygroup,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 4,
|
||
|
|
label: translation.enUs.privacy.onlyme,
|
||
|
|
value: Privacy.onlyme,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
label: translation.enUs.privacy.inherited,
|
||
|
|
value: Privacy.inherited,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
},
|
||
|
|
|
||
|
|
selectTipoVisu: {
|
||
|
|
it: [
|
||
|
|
{
|
||
|
|
id: 1,
|
||
|
|
label: translation.it.privacy.inherited,
|
||
|
|
value: TipoVisu.inherited,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 2,
|
||
|
|
label: translation.it.tipovisu.simplelist,
|
||
|
|
value: TipoVisu.simplelist,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
label: translation.it.tipovisu.taskProgress,
|
||
|
|
value: TipoVisu.taskProgress,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 4,
|
||
|
|
label: translation.it.tipovisu.responsabili,
|
||
|
|
value: TipoVisu.responsabili,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
},
|
||
|
|
|
||
|
|
selectStatus: {
|
||
|
|
it: [
|
||
|
|
{
|
||
|
|
id: 1,
|
||
|
|
label: 'Nessuno',
|
||
|
|
value: 0, // Status.NONE
|
||
|
|
icon: 'expand_less',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 2,
|
||
|
|
label: 'Aperto',
|
||
|
|
value: 1, // Status.OPENED
|
||
|
|
icon: 'expand_less',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
label: 'Completato',
|
||
|
|
value: 10, // Status.COMPLETED
|
||
|
|
icon: 'expand_less',
|
||
|
|
},
|
||
|
|
],
|
||
|
|
es:
|
||
|
|
[
|
||
|
|
{
|
||
|
|
id: 1,
|
||
|
|
label: 'Ninguno',
|
||
|
|
value: 0, // Status.NONE
|
||
|
|
icon: 'expand_less',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 2,
|
||
|
|
label: 'Abierto',
|
||
|
|
value: 1, // Status.OPENED
|
||
|
|
icon: 'expand_less',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
label: 'Completado',
|
||
|
|
value: 10, // Status.COMPLETED
|
||
|
|
icon: 'expand_less',
|
||
|
|
},
|
||
|
|
],
|
||
|
|
enUs:
|
||
|
|
[
|
||
|
|
{
|
||
|
|
id: 1,
|
||
|
|
label: 'None',
|
||
|
|
value: 0, // Status.NONE
|
||
|
|
icon: 'expand_less',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 2,
|
||
|
|
label: 'Opened',
|
||
|
|
value: 1, // Status.OPENED
|
||
|
|
icon: 'expand_less',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
label: 'Completed',
|
||
|
|
value: 10, // Status.COMPLETED
|
||
|
|
icon: 'expand_less',
|
||
|
|
},
|
||
|
|
],
|
||
|
|
|
||
|
|
},
|
||
|
|
|
||
|
|
INDEX_MENU_DELETE: 4,
|
||
|
|
|
||
|
|
menuPopupTodo:
|
||
|
|
{
|
||
|
|
it: [
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
disable: false,
|
||
|
|
label: 'Taglia',
|
||
|
|
value: lists.MenuAction.CUT,
|
||
|
|
icon: 'undo',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: 'Modifica',
|
||
|
|
value: lists.MenuAction.EDIT,
|
||
|
|
icon: 'create',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 11,
|
||
|
|
disable: false,
|
||
|
|
label: 'Elimina',
|
||
|
|
value: lists.MenuAction.DELETE,
|
||
|
|
icon: 'delete',
|
||
|
|
checked: false,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 12,
|
||
|
|
disable: false,
|
||
|
|
label: '',
|
||
|
|
value: lists.MenuAction.PROGRESS_BAR,
|
||
|
|
icon: 'rowing',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 20,
|
||
|
|
disable: false,
|
||
|
|
label: 'Imposta Priorità',
|
||
|
|
value: lists.MenuAction.PRIORITY,
|
||
|
|
icon: 'rowing',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectPriority.it,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 21,
|
||
|
|
disable: false,
|
||
|
|
label: translation.it.proj.themecolor,
|
||
|
|
value: lists.MenuAction.THEME,
|
||
|
|
icon: 'format_color_text',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectTheme,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 22,
|
||
|
|
disable: false,
|
||
|
|
label: translation.it.proj.themebgcolor,
|
||
|
|
value: lists.MenuAction.THEMEBG,
|
||
|
|
icon: 'format_color_fill',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectTheme,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 30,
|
||
|
|
disable: false,
|
||
|
|
label: 'Completato',
|
||
|
|
value: lists.MenuAction.COMPLETED,
|
||
|
|
icon: 'check_circle',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 40,
|
||
|
|
disable: false,
|
||
|
|
label: 'Imposta Scadenza',
|
||
|
|
value: lists.MenuAction.TOGGLE_EXPIRING,
|
||
|
|
icon: 'date_range',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
es:
|
||
|
|
[
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
disable: false,
|
||
|
|
label: 'Cortar',
|
||
|
|
value: lists.MenuAction.CUT,
|
||
|
|
icon: 'undo',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 7,
|
||
|
|
disable: false,
|
||
|
|
label: 'Editar',
|
||
|
|
value: lists.MenuAction.EDIT,
|
||
|
|
icon: 'create',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 8,
|
||
|
|
disable: false,
|
||
|
|
label: 'Borrar',
|
||
|
|
value: lists.MenuAction.DELETE,
|
||
|
|
icon: 'delete',
|
||
|
|
checked: false,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: '',
|
||
|
|
value: lists.MenuAction.PROGRESS_BAR,
|
||
|
|
icon: 'rowing',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 20,
|
||
|
|
disable: false,
|
||
|
|
label: 'Establecer Prioridad',
|
||
|
|
value: lists.MenuAction.PRIORITY,
|
||
|
|
icon: 'rowing',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectPriority.es,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 21,
|
||
|
|
disable: false,
|
||
|
|
label: translation.es.proj.themecolor,
|
||
|
|
value: lists.MenuAction.THEME,
|
||
|
|
icon: 'format_color_text',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectTheme,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 22,
|
||
|
|
disable: false,
|
||
|
|
label: translation.es.proj.themebgcolor,
|
||
|
|
value: lists.MenuAction.THEMEBG,
|
||
|
|
icon: 'format_color_fill',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectTheme,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 30,
|
||
|
|
disable: false,
|
||
|
|
label: 'Completado',
|
||
|
|
value: lists.MenuAction.COMPLETED,
|
||
|
|
icon: 'check_circle',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 40,
|
||
|
|
disable: false,
|
||
|
|
label: 'Establecer expiración',
|
||
|
|
value: lists.MenuAction.TOGGLE_EXPIRING,
|
||
|
|
icon: 'date_range',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
enUs:
|
||
|
|
[
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
disable: false,
|
||
|
|
label: 'Cut',
|
||
|
|
value: lists.MenuAction.CUT,
|
||
|
|
icon: 'undo',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 7,
|
||
|
|
disable: false,
|
||
|
|
label: 'Edit',
|
||
|
|
value: lists.MenuAction.EDIT,
|
||
|
|
icon: 'create',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 8,
|
||
|
|
disable: false,
|
||
|
|
label: 'Delete',
|
||
|
|
value: lists.MenuAction.DELETE,
|
||
|
|
icon: 'trash',
|
||
|
|
checked: false,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: '',
|
||
|
|
value: lists.MenuAction.PROGRESS_BAR,
|
||
|
|
icon: 'check_circle',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 20,
|
||
|
|
disable: false,
|
||
|
|
label: 'Set Priority',
|
||
|
|
value: lists.MenuAction.PRIORITY,
|
||
|
|
icon: 'high_priority',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectPriority.enUs,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 21,
|
||
|
|
disable: false,
|
||
|
|
label: translation.enUs.proj.themecolor,
|
||
|
|
value: lists.MenuAction.THEME,
|
||
|
|
icon: 'format_color_text',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectTheme,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 22,
|
||
|
|
disable: false,
|
||
|
|
label: translation.enUs.proj.themebgcolor,
|
||
|
|
value: lists.MenuAction.THEMEBG,
|
||
|
|
icon: 'format_color_fill',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectTheme,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 30,
|
||
|
|
disable: false,
|
||
|
|
label: 'Completed',
|
||
|
|
value: lists.MenuAction.COMPLETED,
|
||
|
|
icon: 'check_circle',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 40,
|
||
|
|
disable: false,
|
||
|
|
label: 'Set Expiring',
|
||
|
|
value: lists.MenuAction.TOGGLE_EXPIRING,
|
||
|
|
icon: 'date_range',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
},
|
||
|
|
|
||
|
|
menuPopupProj: {
|
||
|
|
it: [
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
disable: false,
|
||
|
|
label: 'Taglia',
|
||
|
|
value: lists.MenuAction.CUT,
|
||
|
|
icon: 'undo',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: 'Modifica',
|
||
|
|
value: lists.MenuAction.EDIT,
|
||
|
|
icon: 'create',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 11,
|
||
|
|
disable: false,
|
||
|
|
label: 'Elimina',
|
||
|
|
value: lists.MenuAction.DELETE,
|
||
|
|
icon: 'delete',
|
||
|
|
checked: false,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 40,
|
||
|
|
disable: false,
|
||
|
|
label: 'Imposta Scadenza',
|
||
|
|
value: lists.MenuAction.TOGGLE_EXPIRING,
|
||
|
|
icon: 'date_range',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 45,
|
||
|
|
disable: false,
|
||
|
|
label: translation.it.proj.themecolor,
|
||
|
|
value: lists.MenuAction.THEME,
|
||
|
|
icon: 'format_color_text',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectTheme,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 46,
|
||
|
|
disable: false,
|
||
|
|
label: translation.it.proj.themebgcolor,
|
||
|
|
value: lists.MenuAction.THEMEBG,
|
||
|
|
icon: 'format_color_fill',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectTheme,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
es:
|
||
|
|
[
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
disable: false,
|
||
|
|
label: 'Cortar',
|
||
|
|
value: lists.MenuAction.CUT,
|
||
|
|
icon: 'undo',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: 'Editar',
|
||
|
|
value: lists.MenuAction.EDIT,
|
||
|
|
icon: 'create',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 11,
|
||
|
|
disable: false,
|
||
|
|
label: 'Borrar',
|
||
|
|
value: 100, // DELETE
|
||
|
|
icon: 'delete',
|
||
|
|
checked: false,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 40,
|
||
|
|
disable: false,
|
||
|
|
label: 'Establecer expiración',
|
||
|
|
value: lists.MenuAction.TOGGLE_EXPIRING,
|
||
|
|
icon: 'date_range',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 45,
|
||
|
|
disable: false,
|
||
|
|
label: translation.es.proj.themecolor,
|
||
|
|
value: lists.MenuAction.THEME,
|
||
|
|
icon: 'format_color_text',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectTheme,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 46,
|
||
|
|
disable: false,
|
||
|
|
label: translation.es.proj.themebgcolor,
|
||
|
|
value: lists.MenuAction.THEMEBG,
|
||
|
|
icon: 'format_color_fill',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectTheme,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
enUs:
|
||
|
|
[
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
disable: false,
|
||
|
|
label: 'Cut',
|
||
|
|
value: 71, // CUT
|
||
|
|
icon: 'undo',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: 'Edit',
|
||
|
|
value: lists.MenuAction.EDIT,
|
||
|
|
icon: 'create',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 40,
|
||
|
|
disable: false,
|
||
|
|
label: 'Set Expiring',
|
||
|
|
value: 101, // TOGGLE_EXPIRING
|
||
|
|
icon: 'date_range',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 45,
|
||
|
|
disable: false,
|
||
|
|
label: translation.enUs.proj.themecolor,
|
||
|
|
value: lists.MenuAction.THEME,
|
||
|
|
icon: 'format_color_text',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectTheme,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 46,
|
||
|
|
disable: false,
|
||
|
|
label: translation.enUs.proj.themebgcolor,
|
||
|
|
value: lists.MenuAction.THEMEBG,
|
||
|
|
icon: 'format_color_fill',
|
||
|
|
checked: false,
|
||
|
|
arrlista: lists.selectTheme,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 50,
|
||
|
|
disable: false,
|
||
|
|
label: 'Delete',
|
||
|
|
value: 100, // DELETE
|
||
|
|
icon: 'trash',
|
||
|
|
checked: false,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
},
|
||
|
|
|
||
|
|
menuPopupConfigTodo: {
|
||
|
|
it: [
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: 'Mostra Task',
|
||
|
|
value: 150, // SHOW_TASK
|
||
|
|
icon: 'rowing',
|
||
|
|
},
|
||
|
|
],
|
||
|
|
es:
|
||
|
|
[
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: 'Mostrar Tareas',
|
||
|
|
value: 150,
|
||
|
|
icon: 'rowing',
|
||
|
|
},
|
||
|
|
],
|
||
|
|
enUs:
|
||
|
|
[
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: 'Show Task',
|
||
|
|
value: 150,
|
||
|
|
icon: 'rowing',
|
||
|
|
},
|
||
|
|
],
|
||
|
|
},
|
||
|
|
|
||
|
|
menuPopupConfigProject: {
|
||
|
|
it: [
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
disable: false,
|
||
|
|
label: translation.it.action.paste,
|
||
|
|
value: 72, // Action.PASTE
|
||
|
|
icon: 'file_copy',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
disable: false,
|
||
|
|
label: translation.it.proj.newsubproj,
|
||
|
|
value: 200, // ADD_PROJECT
|
||
|
|
icon: 'next_week',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: translation.it.task.showtask,
|
||
|
|
value: 150, // SHOW_TASK
|
||
|
|
icon: 'rowing',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 15,
|
||
|
|
disable: false,
|
||
|
|
label: translation.it.task.showposiz,
|
||
|
|
value: 155, // SHOW_POSIZ
|
||
|
|
icon: 'rowing',
|
||
|
|
},
|
||
|
|
],
|
||
|
|
es:
|
||
|
|
[
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
disable: false,
|
||
|
|
label: translation.es.action.paste,
|
||
|
|
value: 72, // Action.PASTE
|
||
|
|
icon: 'file_copy',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
disable: false,
|
||
|
|
label: translation.es.proj.newsubproj,
|
||
|
|
value: 200, // ADD_PROJECT
|
||
|
|
icon: 'next_week',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: translation.es.task.showtask,
|
||
|
|
value: 150,
|
||
|
|
icon: 'rowing',
|
||
|
|
},
|
||
|
|
],
|
||
|
|
enUs:
|
||
|
|
[
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
disable: false,
|
||
|
|
label: translation.enUs.action.paste,
|
||
|
|
value: 72, // Action.PASTE
|
||
|
|
icon: 'file_copy',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
disable: false,
|
||
|
|
label: translation.enUs.proj.newsubproj,
|
||
|
|
value: 200, // ADD_PROJECT
|
||
|
|
icon: 'next_week',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: translation.enUs.task.showtask,
|
||
|
|
value: 150,
|
||
|
|
icon: 'rowing',
|
||
|
|
},
|
||
|
|
],
|
||
|
|
},
|
||
|
|
|
||
|
|
menuPopupConfigMAINProject: {
|
||
|
|
it: [
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
disable: false,
|
||
|
|
label: translation.it.action.paste,
|
||
|
|
value: 72, // Action.PASTE
|
||
|
|
icon: 'file_copy',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
disable: false,
|
||
|
|
label: translation.it.proj.newproj,
|
||
|
|
value: 200, // ADD_PROJECT
|
||
|
|
icon: 'next_week',
|
||
|
|
},
|
||
|
|
],
|
||
|
|
es:
|
||
|
|
[
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
disable: false,
|
||
|
|
label: translation.es.action.paste,
|
||
|
|
value: 72, // Action.PASTE
|
||
|
|
icon: 'file_copy',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
disable: false,
|
||
|
|
label: translation.es.proj.newproj,
|
||
|
|
value: 200, // ADD_PROJECT
|
||
|
|
icon: 'next_week',
|
||
|
|
},
|
||
|
|
],
|
||
|
|
enUs:
|
||
|
|
[
|
||
|
|
{
|
||
|
|
id: 3,
|
||
|
|
disable: false,
|
||
|
|
label: translation.enUs.action.paste,
|
||
|
|
value: 72, // Action.PASTE
|
||
|
|
icon: 'file_copy',
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 5,
|
||
|
|
disable: false,
|
||
|
|
label: translation.enUs.proj.newproj,
|
||
|
|
value: 200, // ADD_PROJECT
|
||
|
|
icon: 'next_week',
|
||
|
|
},
|
||
|
|
],
|
||
|
|
},
|
||
|
|
|
||
|
|
listOptionShowTask: {
|
||
|
|
it: [
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: 'Mostra gli ultimi N completati',
|
||
|
|
value: costanti.ShowTypeTask.SHOW_LAST_N_COMPLETED,
|
||
|
|
icon: 'rowing',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 20,
|
||
|
|
disable: false,
|
||
|
|
label: 'Compiti da Completare',
|
||
|
|
value: costanti.ShowTypeTask.SHOW_ONLY_TOCOMPLETE,
|
||
|
|
icon: 'rowing',
|
||
|
|
checked: false,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 30,
|
||
|
|
disable: false,
|
||
|
|
label: 'Tutti i compiti',
|
||
|
|
value: costanti.ShowTypeTask.SHOW_ALL,
|
||
|
|
icon: 'check_circle',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
es:
|
||
|
|
[
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: 'Mostrar los ultimos N completados',
|
||
|
|
value: costanti.ShowTypeTask.SHOW_LAST_N_COMPLETED,
|
||
|
|
icon: 'rowing',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 20,
|
||
|
|
disable: false,
|
||
|
|
label: 'Tareas para completar',
|
||
|
|
value: costanti.ShowTypeTask.SHOW_ONLY_TOCOMPLETE,
|
||
|
|
icon: 'rowing',
|
||
|
|
checked: false,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 30,
|
||
|
|
disable: false,
|
||
|
|
label: 'Todos las Tareas',
|
||
|
|
value: costanti.ShowTypeTask.SHOW_ALL,
|
||
|
|
icon: 'check_circle',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
enUs:
|
||
|
|
[
|
||
|
|
{
|
||
|
|
id: 10,
|
||
|
|
disable: false,
|
||
|
|
label: 'Show last N Completed',
|
||
|
|
value: costanti.ShowTypeTask.SHOW_LAST_N_COMPLETED,
|
||
|
|
icon: 'rowing',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 20,
|
||
|
|
disable: false,
|
||
|
|
label: 'Task to complete',
|
||
|
|
value: costanti.ShowTypeTask.SHOW_ONLY_TOCOMPLETE,
|
||
|
|
icon: 'rowing',
|
||
|
|
checked: false,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
id: 30,
|
||
|
|
disable: false,
|
||
|
|
label: 'All Tasks',
|
||
|
|
value: costanti.ShowTypeTask.SHOW_ALL,
|
||
|
|
icon: 'check_circle',
|
||
|
|
checked: true,
|
||
|
|
},
|
||
|
|
],
|
||
|
|
},
|
||
|
|
|
||
|
|
getTitlePriority(priority: number): string {
|
||
|
|
let cl = ''
|
||
|
|
|
||
|
|
if (priority === this.Priority.PRIORITY_HIGH) {
|
||
|
|
cl = 'high_priority'
|
||
|
|
} else if (priority === this.Priority.PRIORITY_NORMAL) {
|
||
|
|
cl = 'medium_priority'
|
||
|
|
} else if (priority === this.Priority.PRIORITY_LOW) {
|
||
|
|
cl = 'low_priority'
|
||
|
|
}
|
||
|
|
|
||
|
|
return `${cl} titlePriority`
|
||
|
|
},
|
||
|
|
|
||
|
|
getItemLS(item: any): any {
|
||
|
|
let ris = localStorage.getItem(item)
|
||
|
|
if ((ris == null) || (ris === '') || (ris === 'null') || !ris) {
|
||
|
|
ris = ''
|
||
|
|
}
|
||
|
|
|
||
|
|
return ris
|
||
|
|
},
|
||
|
|
|
||
|
|
isLoggedToSystem(): boolean {
|
||
|
|
const tok = this.getItemLS(toolsext.localStorage.token)
|
||
|
|
return !!tok
|
||
|
|
},
|
||
|
|
|
||
|
|
|
||
|
|
addDays(mydate: Date, days: number) {
|
||
|
|
return date.addToDate(mydate, { days })
|
||
|
|
},
|
||
|
|
|
||
|
|
addMinutes(mydate: Date, minutes: number) {
|
||
|
|
return date.addToDate(mydate, { minutes })
|
||
|
|
},
|
||
|
|
|
||
|
|
jsonCopy(src: any): any {
|
||
|
|
return JSON.parse(JSON.stringify(src))
|
||
|
|
},
|
||
|
|
|
||
|
|
askfornotification($q: any) {
|
||
|
|
const { t } = useI18n();
|
||
|
|
console.log('askfornotification', $q)
|
||
|
|
this.showNotif($q, t('notification.waitingconfirm'), { color: 'positive', icon: 'notifications' })
|
||
|
|
|
||
|
|
Notification.requestPermission((result) => {
|
||
|
|
console.log('User Choice', result)
|
||
|
|
if (result === 'granted') {
|
||
|
|
this.showNotif($q, t('notification.confirmed'), { color: 'positive', icon: 'notifications' })
|
||
|
|
} else {
|
||
|
|
this.showNotif($q, t('notification.denied'), { color: 'negative', icon: 'notifications' })
|
||
|
|
|
||
|
|
// displayConfirmNotification();
|
||
|
|
}
|
||
|
|
})
|
||
|
|
},
|
||
|
|
|
||
|
|
isMobile(): boolean {
|
||
|
|
return (Screen.width < 450)
|
||
|
|
},
|
||
|
|
|
||
|
|
getimgbysize(dir: string, file: string): string {
|
||
|
|
const myimage = dir + file
|
||
|
|
// console.log('includes = ', static_data.preLoadImages.map((a) => a.imgname).includes(myimage), myimage)
|
||
|
|
let ris = ''
|
||
|
|
// @ts-ignore
|
||
|
|
if (this.isMobile() && (preloadedimages().map((a) => a.imgname).includes(myimage))) {
|
||
|
|
ris = `${dir}mobile/${file}`
|
||
|
|
} else {
|
||
|
|
ris = myimage
|
||
|
|
}
|
||
|
|
|
||
|
|
// console.log('getimgbysize', ris)
|
||
|
|
|
||
|
|
return ris
|
||
|
|
},
|
||
|
|
|
||
|
|
getaltimg(dir: string, file: string, alt?: string): string {
|
||
|
|
const myimage = dir + file
|
||
|
|
const myrec = static_data.preLoadImages.find((rec) => rec.imgname === myimage)
|
||
|
|
if (myrec) return (myrec) ? myrec.alt : 'my image'
|
||
|
|
return alt || ''
|
||
|
|
},
|
||
|
|
|
||
|
|
getimgFullpathbysize(fileimg: string): IPathFile {
|
||
|
|
if (!fileimg) return { path: '', file: fileimg }
|
||
|
|
const ind = fileimg.lastIndexOf('/')
|
||
|
|
if (ind > 0) {
|
||
|
|
return { path: fileimg.substring(0, ind + 1), file: fileimg.substring(ind + 1) }
|
||
|
|
}
|
||
|
|
return { path: '', file: fileimg }
|
||
|
|
},
|
||
|
|
|
||
|
|
showPositiveNotif(q: any, msg: string) {
|
||
|
|
this.showNotif(q, msg, { color: 'positive', icon: 'notifications' })
|
||
|
|
},
|
||
|
|
|
||
|
|
showNegativeNotif(q: any, msg: string) {
|
||
|
|
this.showNotif(q, msg, { color: 'negative', icon: 'notifications' }, 10000)
|
||
|
|
},
|
||
|
|
|
||
|
|
showNeutralNotif(q: any, msg: string) {
|
||
|
|
this.showNotif(q, msg, { color: 'info', icon: 'notifications' }, 10000)
|
||
|
|
},
|
||
|
|
|
||
|
|
showNotif(q: any, msg: string, data ?: INotify | null, time?: number) {
|
||
|
|
let myicon = data ? data.icon : 'ion-add'
|
||
|
|
if (!myicon) {
|
||
|
|
myicon = 'ion-add'
|
||
|
|
}
|
||
|
|
let mycolor = data ? data.color : 'primary'
|
||
|
|
if (!mycolor) {
|
||
|
|
mycolor = 'primary'
|
||
|
|
}
|
||
|
|
q.notify({
|
||
|
|
// group: '',
|
||
|
|
message: msg,
|
||
|
|
icon: myicon,
|
||
|
|
classes: 'my-notif-class',
|
||
|
|
color: mycolor,
|
||
|
|
timeout: time || 4000,
|
||
|
|
})
|
||
|
|
},
|
||
|
|
|
||
|
|
isBitActive(bit: any, whattofind: any) {
|
||
|
|
if (whattofind > 0) {
|
||
|
|
return ((bit & whattofind) === whattofind)
|
||
|
|
}
|
||
|
|
return false
|
||
|
|
},
|
||
|
|
|
||
|
|
SetBit(myval: any, bit: any) {
|
||
|
|
// tslint:disable-next-line:no-bitwise
|
||
|
|
let myvalout = myval
|
||
|
|
myvalout |= bit
|
||
|
|
return myvalout
|
||
|
|
},
|
||
|
|
|
||
|
|
UnSetBit(myval: any, bit: any) {
|
||
|
|
// tslint:disable-next-line:no-bitwise
|
||
|
|
let myvalout = myval
|
||
|
|
myvalout &= ~bit
|
||
|
|
return myvalout
|
||
|
|
},
|
||
|
|
|
||
|
|
getUnique(arr: any, comp: any) {
|
||
|
|
const unique = arr
|
||
|
|
// @ts-ignore
|
||
|
|
.map(e => e[comp])
|
||
|
|
|
||
|
|
// store the keys of the unique objects
|
||
|
|
// @ts-ignore
|
||
|
|
.map((e, i, final) => final.indexOf(e) === i && i)
|
||
|
|
|
||
|
|
// eliminate the dead keys & store unique objects
|
||
|
|
// @ts-ignore
|
||
|
|
.filter(e => arr[e]).map(e => arr[e])
|
||
|
|
|
||
|
|
return unique
|
||
|
|
},
|
||
|
|
|
||
|
|
async createNewRecord($q: any, table: string, data: any, withnotif = true) {
|
||
|
|
const mydata = {
|
||
|
|
table,
|
||
|
|
data,
|
||
|
|
}
|
||
|
|
|
||
|
|
const globalStore = useGlobalStore()
|
||
|
|
const { t } = useI18n()
|
||
|
|
|
||
|
|
return globalStore.saveTable(mydata)
|
||
|
|
.then((record) => {
|
||
|
|
if (withnotif) {
|
||
|
|
if (record) {
|
||
|
|
this.showPositiveNotif($q, t('db.recupdated'))
|
||
|
|
} else {
|
||
|
|
this.showNegativeNotif($q, t('db.recfailed'))
|
||
|
|
}
|
||
|
|
}
|
||
|
|
return record
|
||
|
|
})
|
||
|
|
},
|
||
|
|
|
||
|
|
isObject(anything: any) {
|
||
|
|
// Object.create(null) instanceof Object → false
|
||
|
|
return Object(anything) === anything
|
||
|
|
},
|
||
|
|
|
||
|
|
isDebug() {
|
||
|
|
return process.env.DEV
|
||
|
|
},
|
||
|
|
|
||
|
|
isTest() {
|
||
|
|
return process.env.ISTEST === '1'
|
||
|
|
},
|
||
|
|
|
||
|
|
notshowPwd(payload: any) {
|
||
|
|
const mypay = { ...payload }
|
||
|
|
try {
|
||
|
|
if (mypay.password) {
|
||
|
|
mypay.password = '**********'
|
||
|
|
}
|
||
|
|
} catch (e) {
|
||
|
|
console.log('error', e)
|
||
|
|
}
|
||
|
|
return mypay
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrDate(mytimestamp: Date | number | string | undefined) {
|
||
|
|
// console.log('getstrDate', mytimestamp)
|
||
|
|
if (mytimestamp) return date.formatDate(mytimestamp, 'DD/MM/YYYY')
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrDateLong(mytimestamp: Date | number | string | undefined) {
|
||
|
|
// console.log('getstrDate', mytimestamp)
|
||
|
|
const dayofweek = this.getDayOfWeek(mytimestamp)
|
||
|
|
if (mytimestamp) return `${dayofweek} ${date.formatDate(mytimestamp, 'DD/MM/YYYY')}`
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrshortDate(mytimestamp: Date | number | string | undefined) {
|
||
|
|
// console.log('getstrDate', mytimestamp)
|
||
|
|
if (mytimestamp) return date.formatDate(mytimestamp, 'DD/MM')
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrshortDateTime(mytimestamp: Date | number | string | undefined) {
|
||
|
|
// console.log('getstrDate', mytimestamp)
|
||
|
|
if (mytimestamp) return date.formatDate(mytimestamp, 'DD/MM HH:mm')
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrshortDayDateTime(mytimestamp: Date | number | string | undefined) {
|
||
|
|
// console.log('getstrDate', mytimestamp)
|
||
|
|
if (mytimestamp) return date.formatDate(mytimestamp, 'DD HH:mm')
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrTime(mytimestamp: Date | number | string | undefined) {
|
||
|
|
// console.log('getstrDate', mytimestamp)
|
||
|
|
if (mytimestamp) return date.formatDate(mytimestamp, 'HH:mm')
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrShortDate(mydate: Date | number | string | undefined) {
|
||
|
|
const DateFormatter = new Intl.DateTimeFormat(toolsext.getLocale() || void 0, {
|
||
|
|
weekday: 'long',
|
||
|
|
day: 'numeric',
|
||
|
|
month: 'short',
|
||
|
|
year: 'numeric',
|
||
|
|
// timeZone: 'UTC'
|
||
|
|
})
|
||
|
|
try {
|
||
|
|
if (DateFormatter) {
|
||
|
|
// @ts-ignore
|
||
|
|
const date1 = new Date(mydate)
|
||
|
|
return DateFormatter.format(date1)
|
||
|
|
}
|
||
|
|
return mydate
|
||
|
|
} catch (e) {
|
||
|
|
return ''
|
||
|
|
}
|
||
|
|
},
|
||
|
|
getstrVeryShortDate(mydate: Date | number | string | undefined) {
|
||
|
|
const DateFormatter = new Intl.DateTimeFormat(toolsext.getLocale() || void 0, {
|
||
|
|
weekday: 'short',
|
||
|
|
day: 'numeric',
|
||
|
|
month: 'short',
|
||
|
|
// timeZone: 'UTC'
|
||
|
|
})
|
||
|
|
try {
|
||
|
|
if (DateFormatter) {
|
||
|
|
// @ts-ignore
|
||
|
|
const date1 = new Date(mydate)
|
||
|
|
return DateFormatter.format(date1)
|
||
|
|
}
|
||
|
|
return mydate
|
||
|
|
} catch (e) {
|
||
|
|
return ''
|
||
|
|
}
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrVeryVeryShortDate(mydate: Date) {
|
||
|
|
const DateFormatter = new Intl.DateTimeFormat(toolsext.getLocale() || void 0, {
|
||
|
|
weekday: 'long',
|
||
|
|
day: 'numeric',
|
||
|
|
// timeZone: 'UTC'
|
||
|
|
})
|
||
|
|
try {
|
||
|
|
if (DateFormatter) {
|
||
|
|
const date1 = new Date(mydate)
|
||
|
|
return DateFormatter.format(date1)
|
||
|
|
}
|
||
|
|
return mydate
|
||
|
|
} catch (e) {
|
||
|
|
return ''
|
||
|
|
}
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrDateTimeEventShort(myevent: IEvents) {
|
||
|
|
let mystr = ''
|
||
|
|
// is same day?
|
||
|
|
if (this.getstrShortDate(myevent.dateTimeStart) === this.getstrShortDate(myevent.dateTimeEnd)) {
|
||
|
|
mystr = `${this.getstrVeryShortDate(myevent.dateTimeStart)}
|
||
|
|
h. ${this.getstrTime(myevent.dateTimeStart)}`
|
||
|
|
} else {
|
||
|
|
mystr = `${this.getstrVeryShortDate(myevent.dateTimeStart)} - ${this.getstrVeryShortDate(myevent.dateTimeEnd)}`
|
||
|
|
}
|
||
|
|
|
||
|
|
return mystr
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrDateTime(mytimestamp: Date | number | string | undefined) {
|
||
|
|
// console.log('getstrDate', mytimestamp)
|
||
|
|
if (mytimestamp) return date.formatDate(mytimestamp, 'DD/MM/YYYY HH:mm')
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrDateTimeAll(mytimestamp: Date | number | string | undefined) {
|
||
|
|
// console.log('getstrDate', mytimestamp)
|
||
|
|
if (mytimestamp) return date.formatDate(mytimestamp, 'DD/MM/YYYY HH:mm:ss')
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrTimeAll(mytimestamp: Date | number | string | undefined) {
|
||
|
|
// console.log('getstrDate', mytimestamp)
|
||
|
|
if (mytimestamp) return date.formatDate(mytimestamp, 'HH:mm:ss')
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrDateTimeShort(mytimestamp: Date | number | string | undefined) {
|
||
|
|
// console.log('getstrDate', mytimestamp)
|
||
|
|
if (mytimestamp) return date.formatDate(mytimestamp, 'DD/MM HH:mm')
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrDateMonthTimeShort(mytimestamp: Date | number | string | undefined) {
|
||
|
|
// console.log('getstrDate', mytimestamp)
|
||
|
|
if (mytimestamp) return date.formatDate(mytimestamp, 'DD MMM HH:mm')
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrDateMonthWeekTimeShort(mytimestamp: Date | number | string | undefined) {
|
||
|
|
// console.log('getstrDate', mytimestamp)
|
||
|
|
if (mytimestamp) return `${this.getDayOfWeek(mytimestamp)} ${date.formatDate(mytimestamp, 'DD MMM - HH:mm')}`
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrDateEmailTime(mytimestamp: Date | number | string | undefined) {
|
||
|
|
// console.log('getstrDate', mytimestamp)
|
||
|
|
const { t } = useI18n()
|
||
|
|
if (mytimestamp) return `${date.formatDate(mytimestamp, 'DD/MM/YYYY')} ${t('cal.starttime')} ${date.formatDate(mytimestamp, 'HH:mm')}`
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
getstrMMMDate(mytimestamp: Date | number | string | undefined) {
|
||
|
|
// console.log('getstrDate', mytimestamp)
|
||
|
|
if (mytimestamp) return date.formatDate(mytimestamp, 'DD MMM YYYY')
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
getstrYYMMDDDate(mytimestamp: Date | number | string | undefined) {
|
||
|
|
return date.formatDate(mytimestamp, 'YYYY-MM-DD')
|
||
|
|
},
|
||
|
|
getstrYYMMDDDateTime(mytimestamp: Date | number | string | undefined) {
|
||
|
|
return date.formatDate(mytimestamp, 'YYYY-MM-DD HH:mm')
|
||
|
|
},
|
||
|
|
|
||
|
|
getstrYYMMDDDateTimeAll(mytimestamp: Date | number | string | undefined) {
|
||
|
|
return date.formatDate(mytimestamp, 'YYYY-MM-DD HH:mm:ss')
|
||
|
|
},
|
||
|
|
|
||
|
|
gettimestampstrDate(mydatestr: Date | number | string | undefined) {
|
||
|
|
if (mydatestr) {
|
||
|
|
const mydate = new Date(mydatestr)
|
||
|
|
if (mydate) return mydate.getTime()
|
||
|
|
}
|
||
|
|
return 0
|
||
|
|
},
|
||
|
|
|
||
|
|
// mystrdate "26.04.2013"
|
||
|
|
convertstrtoDate(mystrdate: string) {
|
||
|
|
if (mystrdate.length < 10) {
|
||
|
|
return null
|
||
|
|
}
|
||
|
|
|
||
|
|
console.log('mystrdate', mystrdate)
|
||
|
|
|
||
|
|
const pattern = /(\d{2})\/(\d{2})\/(\d{4})/
|
||
|
|
const strdate = mystrdate.replace(pattern, '$3-$2-$1')
|
||
|
|
let mydate = null
|
||
|
|
if (date.isValid(strdate)) {
|
||
|
|
mydate = new Date(strdate)
|
||
|
|
} else {
|
||
|
|
return null
|
||
|
|
}
|
||
|
|
// console.log('mystrdate', mystrdate, strdate, mydate)
|
||
|
|
return mydate
|
||
|
|
},
|
||
|
|
|
||
|
|
capitalize(value: any) {
|
||
|
|
if (!value) {
|
||
|
|
return ''
|
||
|
|
}
|
||
|
|
const myval = value.toString()
|
||
|
|
return myval.charAt(0).toUpperCase() + myval.slice(1)
|
||
|
|
},
|
||
|
|
|
||
|
|
firstchars(value: any, numchars = 200) {
|
||
|
|
if (!value) {
|
||
|
|
return ''
|
||
|
|
}
|
||
|
|
try {
|
||
|
|
let mycar = value.substring(0, numchars)
|
||
|
|
if (value.length > numchars) mycar += '...'
|
||
|
|
return mycar
|
||
|
|
} catch (e) {
|
||
|
|
return value
|
||
|
|
}
|
||
|
|
},
|
||
|
|
|
||
|
|
getDateNow() {
|
||
|
|
const mydate = new Date()
|
||
|
|
return mydate
|
||
|
|
},
|
||
|
|
|
||
|
|
isDateArrived(mydate: Date | number | string | undefined) {
|
||
|
|
const datenow = this.getDateNow()
|
||
|
|
const diff = date.getDateDiff(datenow, mydate)
|
||
|
|
// console.log('diff = ' + diff)
|
||
|
|
if (diff >= -1) {
|
||
|
|
return true
|
||
|
|
}
|
||
|
|
return false
|
||
|
|
},
|
||
|
|
|
||
|
|
getDayOfWeek(mydate: Date | number | string | undefined) {
|
||
|
|
// @ts-ignore
|
||
|
|
const dayOfWeek = new Date(mydate).getDay()
|
||
|
|
|
||
|
|
const mylang = toolsext.getLocale()
|
||
|
|
|
||
|
|
const myday: any = {
|
||
|
|
it: ['Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato'],
|
||
|
|
enUs: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
|
||
|
|
fr: ['Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi'],
|
||
|
|
es: ['Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'],
|
||
|
|
pt: ['Domingo', 'Segunda', 'Terça', 'Quarta', 'Quinta', 'Sexta', 'Sábado'],
|
||
|
|
de: ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag'],
|
||
|
|
si: ['Nedelja', 'Ponedeljek', 'Torek', 'Sreda', 'četrtek', 'Petek', 'Sobota'],
|
||
|
|
}
|
||
|
|
|
||
|
|
return Number.isNaN(dayOfWeek) ? '' : myday[mylang][dayOfWeek].substring(0, 3)
|
||
|
|
},
|
||
|
|
|
||
|
|
isSunday(mydate: Date | number | string | undefined) {
|
||
|
|
// @ts-ignore
|
||
|
|
const dayOfWeek = new Date(mydate).getDay()
|
||
|
|
return dayOfWeek === 0
|
||
|
|
},
|
||
|
|
|
||
|
|
getDateNowEvent() {
|
||
|
|
return this.addMinutes(this.getDateNow(), -60 * 4)
|
||
|
|
},
|
||
|
|
getDateNull() {
|
||
|
|
return new Date(0)
|
||
|
|
},
|
||
|
|
|
||
|
|
getTimeNow() {
|
||
|
|
return new Date().getTime()
|
||
|
|
},
|
||
|
|
getTimestampsNow() {
|
||
|
|
return new Date().valueOf()
|
||
|
|
},
|
||
|
|
|
||
|
|
gettimestampByDate(mydate: Date) {
|
||
|
|
return mydate.toString()
|
||
|
|
},
|
||
|
|
|
||
|
|
isMainProject(idproj: string) {
|
||
|
|
return idproj === process.env.PROJECT_ID_MAIN
|
||
|
|
},
|
||
|
|
|
||
|
|
getUrlByTipoProj(tipoproj: string, name ?: string) {
|
||
|
|
if (name) return `/${name}/`
|
||
|
|
return `/${tipoproj}/`
|
||
|
|
},
|
||
|
|
|
||
|
|
getprivacyreadbytipoproj(tipoproj: string) {
|
||
|
|
if (tipoproj === RouteNames.myprojects) return Privacy.inherited
|
||
|
|
return Privacy.all
|
||
|
|
},
|
||
|
|
|
||
|
|
getprivacywritebytipoproj(tipoproj: string) {
|
||
|
|
return Privacy.inherited
|
||
|
|
},
|
||
|
|
|
||
|
|
notifyarraychanged(array: any) {
|
||
|
|
if (array.length > 0) {
|
||
|
|
array.splice(array.length - 1, 1, array[array.length - 1])
|
||
|
|
}
|
||
|
|
},
|
||
|
|
|
||
|
|
getModulesByTable(nametable: string) {
|
||
|
|
if (nametable === 'todos') {
|
||
|
|
// return Todos
|
||
|
|
} else if (nametable === 'projects') {
|
||
|
|
// return Projects
|
||
|
|
}
|
||
|
|
|
||
|
|
return null
|
||
|
|
},
|
||
|
|
|
||
|
|
getlang() {
|
||
|
|
return toolsext.getLocale()
|
||
|
|
},
|
||
|
|
|
||
|
|
getappname(short: boolean) {
|
||
|
|
const { t } = useI18n()
|
||
|
|
if (short) {
|
||
|
|
return t('ws.siteshortname')
|
||
|
|
}
|
||
|
|
return t('ws.sitename')
|
||
|
|
},
|
||
|
|
|
||
|
|
getimglogo() {
|
||
|
|
return `images/${process.env.LOGO_REG}`
|
||
|
|
},
|
||
|
|
|
||
|
|
getproc() {
|
||
|
|
return 'Testo: ' + process.env.LOGO_REG
|
||
|
|
},
|
||
|
|
|
||
|
|
consolelogpao(strlog: string, strlog2: any = '', strlog3: any = '') {
|
||
|
|
// @ts-ignore
|
||
|
|
globalroutines(null, 'log', `${strlog} ${strlog2} ${strlog3}`, null)
|
||
|
|
},
|
||
|
|
|
||
|
|
addRoute(myarr: any, values: any) {
|
||
|
|
myarr.push(values)
|
||
|
|
},
|
||
|
|
|
||
|
|
getCellForWhatsapp(numbercell: string) {
|
||
|
|
if (!numbercell) return ''
|
||
|
|
let mynum = numbercell.replace(/-/g, '')
|
||
|
|
const globalStore = useGlobalStore()
|
||
|
|
const intcode = globalStore.getValueSettingsByKey('INT_CODE', false)
|
||
|
|
if (numbercell.substring(0, 1) !== '+') mynum = intcode + mynum
|
||
|
|
else mynum = mynum.substring(1)
|
||
|
|
|
||
|
|
return mynum
|
||
|
|
},
|
||
|
|
|
||
|
|
getHttpForWhatsapp(numbercell: string) {
|
||
|
|
if (!numbercell) return ''
|
||
|
|
const mynum = this.getCellForWhatsapp(numbercell)
|
||
|
|
if (mynum) return `https://wa.me/${mynum}`
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
|
||
|
|
getHttpForTelegram(usertelegram: string) {
|
||
|
|
if (usertelegram) return `https://t.me/${usertelegram}`
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
getsuffisso() {
|
||
|
|
if (this.isTest()) return 'TEST: '
|
||
|
|
return ''
|
||
|
|
},
|
||
|
|
|
||
|
|
}
|