Files
salvato.newfreeplanet/src/model/Calendar.ts

133 lines
2.5 KiB
TypeScript
Executable File

import { IInternalPage, IMyPage, IOperators } from '@src/model/GlobalStore'
export interface IEvents {
_id?: any
typol?: string
short_tit?: string
title?: string
details?: string
bodytext?: string
dateTimeStart?: Date
dateTimeEnd?: Date
side?: string
bgcolor?: string
icon?: string
img?: string
img_small?: string
wherecode?: string
contribtype?: string
price?: number
infoafterprice?: string
teacher?: string
teacher2?: string
teacher3?: string
teacher4?: string
infoextra?: string
linkpage?: string
pagefooter?: IInternalPage[]
linkpdf?: string
nobookable?: boolean
lunchAvailable?: boolean
dinnerAvailable?: boolean
dinnerSharedAvailable?: boolean
lunchType?: number
dinnerType?: number
lunchPrice?: number
dinnerPrice?: number
internal?: boolean
note?: string
news?: boolean
facebook?: string
canceled?: boolean
deleted?: boolean
dupId?: any
modified?: boolean
}
export interface IBookedEvent {
_id?: any
userId: string
username: string
id_bookedevent?: any
tableType?: number
numpeople: number
numpeopleLunch?: number
numpeopleDinner?: number
numpeopleDinnerShared?: number
infoevent: string
msgbooking: string
datebooked?: Date
modified: boolean
booked: boolean
}
export interface IWheres {
code: string
placename: string
whereicon: string
}
export interface IContribtype {
_id: any
label: string
showprice: boolean
color: string
}
export interface ILabelValue {
_id: any
label: string
value: number
}
export interface ILabelValueStr {
label: string
value: string
}
export interface IValue {
value: number
}
export enum EState {
None, Creating, Modifying,
}
export interface IBookedEventPage {
show: boolean
bookedevent: IBookedEvent
state: EState
}
export interface ICalendarState {
editable: boolean
eventlist: IEvents[]
bookedevent: IBookedEvent[]
operators: IOperators[]
internalpages: IMyPage[]
wheres: IWheres[]
contribtype: IContribtype[]
// ---------------
titlebarHeight: number
locale: string,
maxDays: number,
fiveDayWorkWeek: boolean,
shortMonthLabel: boolean,
showDayOfYearLabel: boolean,
shortWeekdayLabel: boolean,
shortIntervalLabel: boolean,
hour24Format: boolean,
hideHeader: boolean,
noScroll: boolean,
showMonthLabel: boolean,
showWorkWeeks: boolean,
intervalRange: { min: number, max: number },
intervalRangeStep: number,
intervalHeight: number,
resourceHeight: number,
resourceWidth: number,
dayHeight: number,
enableThemes: boolean,
theme: any,
}