Files
newfreeplanet_OLD/src/model/GlobalStore.ts
paoloar77 dedf35c659 La foto non si carica bene sul server.
L'immagine della Bacheca metterla in fondo.
Creare un'area LAVORO ed un'area BACHECA.
Poter contattare la persona dalla pagina che si apre.
Riscritto visualizzazione della Card Competenza
2022-02-17 00:44:52 +01:00

711 lines
13 KiB
TypeScript
Executable File

import { IAction } from '@src/model/Projects'
import { IMyGroup, IPaymentType } from '@src/model/UserStore'
import {
IDepartment, IProducer, IShareWithUs, IStorehouse,
} from '@src/model/Products'
export interface IPost {
title: string
}
export interface IConnData {
downloading_server: number
downloading_indexeddb: number
uploading_server: number
uploading_indexeddb: number
}
export interface ICfgServer {
chiave: string
idapp: string
userId: string
valore: string
}
export interface ICfgData {
_id?: string
lang?: string
token?: string
userId?: string
}
export interface ITemplEmail {
_id?: string
subject?: string
content?: string
options?: ISettings[]
}
export interface ISettings {
_id?: string
idapp?: string
key?: string
type?: number
value_str?: string
value_date?: Date,
value_num?: number
value_bool?: boolean
serv?: boolean
crypted?: boolean
}
export interface ITeachUname {
username?: string
}
export interface IInternalPage {
path?: string
}
export interface IResp {
_id?: string
username?: string
name?: string
surname?: string
}
export interface IMyBot {
_id?: string
page?: number
index?: number
riga?: number
active?: boolean
main?: boolean
label?: string
type?: number
value?: string
visibility?: number
date_updated?: Date
}
export interface IMyPage {
_id?: string
author_username?: string
lang?: string
title?: string
icon?: string
order?: number
path?: string
keywords?: string
description?: string
img1?: string
content?: string
video1?: string
ratio1?: string
img2?: string
content2?: string
video2?: string
ratio2?: string
img3?: string
content3?: string
video3?: string
ratio3?: string
content4?: string
active?: boolean
inmenu?: boolean
color?: string
onlyif_logged?: boolean
only_residenti?: boolean
only_consiglio?: boolean
submenu?: boolean
l_par?: number,
l_child?: number,
infooter?: boolean
internalpage?: boolean
}
export interface ISites {
_id?: string
attiva?: boolean
idapp?: string
name?: string
adminemail?: string
manageremail?: string
replyTo?: string
host?: string
host_test?: string
portapp?: string
dir?: string
email_from?: string
email_pwd?: string
telegram_key?: string
telegram_bot_name?: string
telegram_key_test?: string
telegram_bot_name_test?: string
pathreg_add?: string
}
export interface INewsToSent {
_id: string
idapp?: string
label?: string
templemail_str?: string
numemail_tot?: number
numemail_sent?: number
datetoSent?: Date
datestartJob?: Date
datefinishJob?: Date
lastemailsent_Job?: Date
starting_job?: boolean
finish_job?: boolean
error_job?: string
}
export interface ICalZoom {
lang?: string
title?: string
typeconf?: string
date_start?: string
date_end?: Date
id_conf_zoom?: number
note?: string
}
export interface IGroup {
_id?: any
descr?: string
}
export interface IMailinglist {
name?: string
surname?: string
email: string
lastid_newstosent?: string
}
export interface IDiscipline {
typol_code?: string
order?: number
label?: string
description?: string
linkpage?: string
color?: string
icon?: string
img_small?: string
showinhome?: boolean
showinnewsletter?: boolean
img?: string
teachers?: ITeachUname[]
}
export interface ITestp1 {
contatore: number
mioarray: ICfgServer[]
}
export type StateConnection = 'online' | 'offline'
export interface IConfig {
_id: string,
key?: string,
value: string
}
export interface IMetaTags {
title?: string
keywords?: string
description?: string
}
export interface IGlobalState {
finishLoading: boolean
conta: number
wasAlreadySubOnDb: boolean
wasAlreadySubscribed: boolean
isLoginPage: boolean
layoutNeeded: boolean
mobileMode: boolean
menuCollapse: boolean
leftDrawerOpen: boolean
rightDrawerOpen: boolean
rightCartOpen: boolean
category: string
stateConnection: string
networkDataReceived: boolean
clickcmd?: string
cfgServer: ICfgServer[]
testp1: ITestp1
connData: IConnData
posts: IPost[]
menulinks: {}
listatodo: IMenuList[]
arrConfig: IConfig[]
lastaction: IAction
serv_settings: ISettings[],
settings: ISettings[],
disciplines: IDiscipline[],
paymenttypes: IPaymentType[],
newstosent: INewsToSent[],
gallery: IGallery[],
mypage: IMyPage[],
templemail: ITemplEmail[],
opzemail: ISettings[],
mailinglist: IMailinglist[],
calzoom: ICalZoom[],
producers: IProducer[],
storehouses: IStorehouse[],
departments: IDepartment[],
sharewithus: IShareWithUs[],
groups: IGroup[],
resps: IResp[],
workers: IResp[],
autoplaydisc: number
TIMER: any
TIMEOUT: any
CUT: any
TIMER_STATE: number
URL_RITORNA: string
URL_RESTORE: string
levels: ILevel[],
adtypes: IAdType[],
skills: ISkill[],
subSkills: ISubSkill[],
statusSkills: IStatusSkill[],
sectors: ISector[],
catgrps: ICatGrp[],
cities: ICity[],
}
export interface IMenuList {
nametranslate: string
description?: string
idelem?: string
icon?: string
name?: string
level_parent?: number
level_child?: number
urlroute?: string
routes2?: IMenuList[]
}
export interface IPathFile {
path: string
file: string
}
export interface IListRoutes {
active?: boolean
order: number
path: string
name: string
lang?: string
materialIcon?: string
component?: any
children?: any
reqauth?: boolean
isseparator?: boolean
inmenu?: boolean
solotitle?: boolean
infooter?: boolean
submenu?: boolean
onlyAdmin?: boolean
onlyif_logged?: boolean
onlyManager?: boolean
onlySocioResidente?: boolean
onlyConsiglio?: boolean
onlyNotSoci?: boolean
onlyDepartment?: boolean
onlyTutor?: boolean
color?: string
onlyEditor?: boolean
extraclass?: string
meta?: any
idelem?: string
urlroute?: string
img?: string
// ------------------------
faIcon?: string
text?: string
routes2?: IListRoutes[]
level_parent?: number
level_child?: number
separator?: boolean
}
export interface IOperators {
username: string
name: string
surname: string
email?: string
qualification?: string
disciplines?: string
certifications?: string
img?: string
cell?: string
usertelegram?: string
paginaweb?: string
paginafb?: string
intro?: string
info?: string
vario?: string
tab?: string
}
export interface IPreloadImages {
imgname: string
alt: string
mobile: boolean
}
export interface ILang {
label: string
icon: string
value: string
image: string
short: string
}
export interface IAllLang {
es?: string
enUs?: string
fr?: string
de?: string
it?: string
}
export interface ITimeLineEntry {
date: string
title: string
description: IAllLang
description2?: IAllLang
description3?: IAllLang
icon: string
image: string
image2?: string
image3?: string
image4?: string
video?: string
side: string
link_url?: string
link_url_lang?: IAllLang
link_text?: IAllLang
ingallery?: boolean
}
export interface ITimeLineMain {
titlemain: IAllLang | any
body: ITimeLineEntry[]
}
export interface IImgGallery {
_id?: string
imagefile: string
// order?: number
alt?: string
description?: string
}
export interface IGallery {
_id?: string
author_username?: string
title?: string
directory?: string
list?: IImgGallery[]
}
export interface IColl {
title: IAllLang | any
date?: string
subtitle?: IAllLang | any
img: string
img2?: string
linkagg?: string
linkagg_type?: number
width?: number
height?: number
ingallery?: boolean
inexibitions?: boolean
}
export interface ICollaborations {
withwhom_title: IAllLang | any
list: IColl[]
}
export interface IParamDialog {
param1?: any
param2?: any
param3?: any
}
export interface IFunctionality {
PWA?: boolean
ENABLE_REGISTRATION?: boolean
SHOW_REG_BUTTON?: boolean
SHOW_PROFILE?: boolean
SHOW_USER_MENU?: boolean
SHOW_IF_IS_SERVER_CONNECTION?: boolean
ENABLE_TODOS_LOADING?: boolean
ENABLE_PROJECTS_LOADING?: boolean
ENABLE_ECOMMERCE?: boolean
SHOW_NEWSLETTER?: boolean
SHOW_ONLY_POLICY?: boolean
SHOW_MESSAGES?: boolean
BOOKING_EVENTS?: boolean
ENABLE_REG_AYNI?: boolean
ENABLE_REG_CNM?: boolean
ENABLE_REG_ISP?: boolean
SHOW_NAMESURNAME?: boolean
ENABLE_GROUPS?: boolean
}
export interface IParLookup {
lk_tab?: string,
af_objId_tab?: string,
lk_LF?: string,
lk_FF?: string,
lk_as?: string,
lk_proj?: string,
}
export interface IParamsPickup {
table: string
search: string
}
export interface IParamsQuery {
table: string
startRow: number
endRow: number
filter: string
filterand: string
sortBy: string
descending: number
userId: string
codeId?: string
filtersearch: string
filtersearch2: string
filtercustom: string
lookup1?: IParLookup
lookup2?: IParLookup
lookup3?: IParLookup
lookup4?: IParLookup
options?: number
}
export interface IColGridTable {
name: string
subfield?: string
required?: boolean
label?: string
label_trans?: string
visibleif?: number
visib_field?: string
visib_value?: any
align?: string
field?: string
sortable?: boolean
disable?: boolean
titlepopupedit?: string
visible?: boolean
icon?: string
action?: any
askaction?: string
foredit?: boolean
fieldtype?: number
field_outtype?: number
noshowlabel?: boolean
tipovisu?: number
link?: string
jointable?: string
addall?: boolean
filter?: any
resultjoin?: string[]
tablesel?: string
notsave?: boolean
showWhen?: number
maxlength?: number
allowchar?: number
filter_table?: string
filter_field?: string
remote_table?: string
remote_key?: string
remote_field?: string
field_extra1?: string
subfield_extra1?: string
allowNewValue?: boolean
showpicprofile_ifnotset?: boolean
}
export interface ITableRec {
label: string
value: string
columns: IColGridTable[]
colkey: string
collabel: string
colicon?: string
onlyAdmin?: boolean
noshow: boolean
remote?: boolean
}
export interface ISearchList {
label: string
table: string
key: string
arrvalue: any[]
value: any
type: number
filter: any
param1?: any
useinput: boolean
notinsearch?: boolean
addall?: boolean
showcount?: boolean
tablesel?: string
icon?: string
filteradv?: boolean
}
export interface IFilter {
label: string
value: string
hide?: boolean
default?: boolean
}
export interface IDataPass {
id: string
table: string
fieldsvalue: any
}
export interface IDataToSet {
id?: string | null
username?: string
table?: string
fieldsvalue?: any
unset?: any,
notifBot?: any | null
tipomsg?: number
invitante_username?: string
ind_order?: any
num_tess?: number
data?: any
myfunc?: any
inviaemail?: any
}
export interface INewsState {
lastnewstosent: INewsToSent | null
nextnewstosent: INewsToSent | null
totemail: number
totsubscribed: number
totunsubscribed: number
totsentlastid: number
}
export const DefaultNewsState: INewsState = {
lastnewstosent: null,
nextnewstosent: null,
totemail: 0,
totsubscribed: 0,
totunsubscribed: 0,
totsentlastid: 0,
}
export interface IPagination {
sortBy: string,
descending: boolean
rowsNumber: number
page: number,
rowsPerPage: number // specifying this determines pagination is server-side
}
export interface ISkill {
_id: number
descr: string
idSector: number[]
icon?: string
img?: string
}
export interface ISubSkill {
_id: number
descr: string
idSkill: number
icon?: string
img?: string
}
export interface IStatusSkill {
_id: number
descr: string
color: string
theme: string
}
export interface ISector {
_id: number
descr: string
idSector?: number
icon?: string
img?: string
color: string
theme: string
}
export interface ICatGrp {
_id: number
descr: string
idCatGrp?: number
icon?: string
img?: string
color: string
theme: string
}
export interface ILevel {
_id: number
descr: string
color: string
theme: string
years_of_exp: number
}
export interface IAdType {
_id: number
descr: string
}
export interface ICity {
_id: number
istat: string
comune: string
prov: string
}
export interface IMySkill {
_id: number
idSector: number
idSkill: number
idSubSkill: number[]
idStatusSkill: number[]
idContribType: string[]
idCity: number[]
photos: IGallery[]
NumLevel: number
adType: number
note: string
descr: string
date_created?: Date,
date_updated?: Date,
}
export interface IMyBacheca {
_id: number
idSector: number
idSkill: number
idSubSkill: number[]
idStatusSkill: number[]
idContribType: string[]
idCity: number[]
photos: IGallery[]
NumLevel: number
adType: number
note: string
descr: string
date_created?: Date,
date_updated?: Date,
}