Documentation ¶
Index ¶
- Constants
- Variables
- func ChainCheckIfExist(db *gorm.DB, ChainUID string, checkIfIsOpenToNewMembers bool) (chainID uint, found bool, err error)
- func ChainGetNamesByIDs(db *gorm.DB, chainIDs ...uint) ([]string, error)
- func UserChainCheckIfRelationExist(db *gorm.DB, ChainID uint, UserID uint, checkIfIsApproved bool) (userChainID uint, found bool, err error)
- func UserCheckEmail(db *gorm.DB, userEmail string) (userID uint, found bool, err error)
- func UserOnesignalDelete(db *gorm.DB, playerID string) error
- func UserOnesignalGetAllPlayerIDs(db *gorm.DB, userIDs []uint) ([]string, error)
- func UserOnesignalPut(db *gorm.DB, userID uint, onesignalID, playerID string) error
- func ValidateAllGenderEnum(arr []string) bool
- func ValidateAllRouteUserUIDs(db *gorm.DB, chainID uint, userUIDs []string) bool
- func ValidateAllSizeEnum(arr []string) bool
- type Bag
- type BulkyItem
- type Chain
- func (c *Chain) ClearAllLastNotifiedIsUnapprovedAt(db *gorm.DB) error
- func (c *Chain) Delete(db *gorm.DB) error
- func (c *Chain) GetRouteOrderByUserUID(db *gorm.DB) ([]string, error)
- func (c *Chain) GetTotals(db *gorm.DB) *ChainTotals
- func (c *Chain) GetUserContactData(db *gorm.DB) ([]UserContactData, error)
- func (c *Chain) RemoveUser(db *gorm.DB, userID uint) (err error)
- func (c *Chain) RemoveUserUnapproved(db *gorm.DB, userID uint) (err error)
- func (c *Chain) SetRouteOrderByUserUIDs(db *gorm.DB, userUIDs []string) error
- type ChainResponse
- type ChainTotals
- type Event
- type EventPrice
- type Mail
- type Newsletter
- type Payment
- type User
- func UserGetAllUsersByChain(db *gorm.DB, chainID uint) ([]User, error)
- func UserGetByEmail(db *gorm.DB, userEmail string) (*User, error)
- func UserGetByUID(db *gorm.DB, userUID string, checkEmailVerification bool) (*User, error)
- func UserOmitData(db *gorm.DB, chain *Chain, users []User, authUserID uint) ([]User, error)
- func (u *User) AcceptLegal(db *gorm.DB) error
- func (u *User) AddNotificationChainUIDs(db *gorm.DB) error
- func (u *User) AddUserChainsToObject(db *gorm.DB) error
- func (u *User) DeleteUserChainDependencies(db *gorm.DB, chainID uint) (err error)
- func (u *User) DeleteUserChainDependenciesAllChains(db *gorm.DB) (err error)
- func (u *User) FindLinkedEventByUID(db *gorm.DB, eventUID string) (e *Event, err error)
- func (u *User) IsAnyChainAdmin() (isAnyChainAdmin bool)
- func (u *User) IsPartOfChain(chainUID string) (ok, isChainAdmin bool)
- func (u *User) LastPokeTooRecent() bool
- func (u *User) SetAcceptedLegal()
- func (u *User) SetLastPokeToNow(db *gorm.DB) error
- type UserChain
- type UserContactData
- type UserOnesignal
- type UserToken
Constants ¶
View Source
const ( GenderEnumChildren = "1" GenderEnumWomen = "2" GenderEnumMen = "3" )
View Source
const ( MAIL_RETRY_NEVER = 0 MAIL_RETRY_NEXT_DAY = 1 MAIL_RETRY_TWO_DAYS = 2 )
View Source
const ( PaymentStatusEnumComplete = stripe.CheckoutSessionStatusComplete PaymentStatusEnumOpen = stripe.CheckoutSessionStatusOpen PaymentStatusEnumExpired = stripe.CheckoutSessionStatusExpired )
View Source
const ( SizeEnumBaby = "1" SizeEnum1_4YearsOld = "2" SizeEnum5_12YearsOld = "3" SizeEnumWomenSmall = "4" SizeEnumWomenMedium = "5" SizeEnumWomenLarge = "6" SizeEnumWomenPlusSize = "7" SizeEnumMenSmall = "8" SizeEnumMenMedium = "9" SizeEnumMenLarge = "A" SizeEnumMenPlusSize = "B" )
View Source
const ChainResponseSQLSelect = `` /* 203-byte string literal not displayed */
Selects chain; id, uid, name, description, address, latitude, longitude, radius, sizes, genders, published, open_to_new_members
View Source
const EventGetSql = `` /* 1061-byte string literal not displayed */
Variables ¶
View Source
var ErrAddUserChainsToObject = errors.New("Unable to add associated loops to user")
View Source
var ErrChainNotFound = errors.New("Chain not found")
View Source
var ErrGenderInvalid = errors.New("Invalid gender enum")
View Source
var ErrMailLastRetry = fmt.Errorf("Last failed attempt")
View Source
var ErrRouteInvalid = errors.New("Invalid route")
View Source
var ErrSizeInvalid = errors.New("Invalid size enum")
View Source
var ErrUserNotFound = errors.New("User not found")
View Source
var SizeLetters = map[string]string{ SizeEnumBaby: "Baby", SizeEnum1_4YearsOld: "≤4", SizeEnum5_12YearsOld: "5-12", SizeEnumWomenSmall: "(X)S", SizeEnumWomenMedium: "M", SizeEnumWomenLarge: "(X)L", SizeEnumWomenPlusSize: "XL≤", SizeEnumMenSmall: "(X)S", SizeEnumMenMedium: "M", SizeEnumMenLarge: "(X)L", SizeEnumMenPlusSize: "XL≤", }
Functions ¶
func ChainCheckIfExist ¶
func UserCheckEmail ¶
func UserOnesignalPut ¶
func ValidateAllGenderEnum ¶
func ValidateAllSizeEnum ¶
Types ¶
type Bag ¶
type Bag struct { ID uint `json:"id"` Number string `json:"number"` Color string `json:"color"` UserChainID uint `json:"-"` ChainUID string `json:"chain_uid" gorm:"-:migration;<-:false"` UserUID string `json:"user_uid" gorm:"-:migration;<-:false"` UpdatedAt time.Time `json:"updated_at"` LastNotifiedAt zero.Time `json:"-"` LastUserEmailToUpdate zero.String `json:"-"` }
type BulkyItem ¶
type BulkyItem struct { ID uint `json:"id"` Title string `json:"title"` Message string `json:"message"` ImageUrl string `json:"image_url"` UserChainID uint `json:"-"` ChainUID string `json:"chain_uid" gorm:"-:migration;<-:false"` UserUID string `json:"user_uid" gorm:"-:migration;<-:false"` CreatedAt time.Time `json:"created_at"` }
type Chain ¶
type Chain struct { ID uint UID string `gorm:"uniqueIndex"` FID zero.String `gorm:"column:fid"` Name string Description string Address string CountryCode string Latitude float64 Longitude float64 Radius float32 Published bool OpenToNewMembers bool RulesOverride string HeadersOverride string Sizes []string `gorm:"serializer:json"` Genders []string `gorm:"serializer:json"` UserChains []UserChain CreatedAt time.Time UpdatedAt time.Time DeletedAt zero.Time Theme string IsAppDisabled bool RoutePrivacy int LastAbandonedAt sql.NullTime LastAbandonedRecruitmentEmail sql.NullTime }
func (*Chain) ClearAllLastNotifiedIsUnapprovedAt ¶
func (*Chain) GetRouteOrderByUserUID ¶
func (*Chain) GetUserContactData ¶
func (c *Chain) GetUserContactData(db *gorm.DB) ([]UserContactData, error)
func (*Chain) RemoveUserUnapproved ¶
type ChainResponse ¶
type ChainResponse struct { UID string `json:"uid" gorm:"chains.uid"` Name string `json:"name" gorm:"chains.name"` Description string `json:"description" gorm:"chains.description"` Address string `json:"address" gorm:"chains.address"` Latitude float64 `json:"latitude" gorm:"chains.latitude"` Longitude float64 `json:"longitude" gorm:"chains.longitude"` Radius float32 `json:"radius" gorm:"chains.radius"` Sizes []string `json:"sizes" gorm:"chains.sizes;serializer:json"` Genders []string `json:"genders" gorm:"chains.genders;serializer:json"` Published bool `json:"published" gorm:"chains.published"` OpenToNewMembers bool `json:"open_to_new_members" gorm:"chains.open_to_new_members"` TotalMembers *int `json:"total_members,omitempty" gorm:"total_members"` TotalHosts *int `json:"total_hosts,omitempty" gorm:"total_hosts"` RulesOverride *string `json:"rules_override,omitempty" gorm:"chains.rules_override"` HeadersOverride *string `json:"headers_override,omitempty" gorm:"chains.headers_override"` Theme *string `json:"theme,omitempty" gorm:"chains.theme"` IsAppDisabled *bool `json:"is_app_disabled,omitempty" gorm:"chains.is_app_disabled"` RoutePrivacy *int `json:"route_privacy,omitempty" gorm:"chains.route_privacy"` }
type ChainTotals ¶
type Event ¶
type Event struct { ID uint `json:"-"` UID string `gorm:"uniqueIndex" json:"uid"` Name string `json:"name"` Description string `json:"description"` Latitude float64 `json:"latitude"` Longitude float64 `json:"longitude"` Address string `json:"address"` PriceValue float64 `json:"price_value"` PriceCurrency zero.String `json:"price_currency"` Link string `json:"link"` Date time.Time `json:"date"` DateEnd null.Time `json:"date_end"` Genders []string `gorm:"serializer:json" json:"genders"` ChainID zero.Int `json:"-"` ChainUID zero.String `json:"chain_uid" gorm:"-:migration;<-:false"` UserID uint `json:"-"` CreatedAt time.Time `json:"-"` UpdatedAt time.Time `json:"-"` UserUID zero.String `json:"user_uid" gorm:"-:migration;<-:false"` UserName zero.String `json:"user_name" gorm:"-:migration;<-:false"` UserEmail zero.String `json:"user_email" gorm:"-:migration;<-:false"` ImageUrl string `json:"image_url"` ImageDeleteUrl string `json:"-"` ChainName zero.String `json:"chain_name" gorm:"-:migration;<-:false"` }
type EventPrice ¶
type Mail ¶
type Newsletter ¶
type Newsletter struct { ID uint Email string `gorm:"uniqueIndex"` Name string Verified bool CreatedAt time.Time }
func (*Newsletter) CreateOrUpdate ¶
func (n *Newsletter) CreateOrUpdate(db *gorm.DB) error
This requires the following values to be populated: Email, Name, Verified
type User ¶
type User struct { ID uint `json:"-"` UID string `json:"uid" gorm:"uniqueIndex"` FID zero.String `json:"-" gorm:"column:fid"` Email zero.String `json:"email" gorm:"unique"` IsEmailVerified bool `json:"is_email_verified"` IsRootAdmin bool `json:"is_root_admin"` PausedUntil null.Time `json:"paused_until"` Name string `json:"name"` PhoneNumber string `json:"phone_number"` Address string `json:"address"` Sizes []string `json:"sizes" gorm:"serializer:json"` LastSignedInAt zero.Time `json:"-"` LastPokeAt zero.Time `json:"-"` UserToken []UserToken `json:"-"` Event []Event `json:"-"` Chains []UserChain `json:"chains"` UserOnesignal []UserOnesignal `json:"-"` CreatedAt time.Time `json:"-"` UpdatedAt time.Time `json:"-"` I18n string `json:"i18n"` JwtTokenPepper int `json:"-" ` Latitude float64 `json:"-"` Longitude float64 `json:"-"` AcceptedTOH bool `json:"-"` AcceptedDPA bool `json:"-"` AcceptedTOHJSON *bool `json:"accepted_toh,omitempty" gorm:"-:migration;<-:false"` AcceptedDPAJSON *bool `json:"accepted_dpa,omitempty" gorm:"-:migration;<-:false"` NotificationChainUIDs []string `json:"notification_chain_uids,omitempty" gorm:"-"` }
func UserGetAllUsersByChain ¶
func UserGetByUID ¶
Expects the userUID not to be empty
func UserOmitData ¶
func (*User) DeleteUserChainDependencies ¶
func (*User) DeleteUserChainDependenciesAllChains ¶
func (*User) FindLinkedEventByUID ¶
func (*User) IsAnyChainAdmin ¶
This required user to have run AddUserChainsToObject before this
func (*User) IsPartOfChain ¶
This required user to have run AddUserChainsToObject before this
func (*User) LastPokeTooRecent ¶
func (*User) SetAcceptedLegal ¶
func (u *User) SetAcceptedLegal()
type UserChain ¶
type UserChain struct { ID uint `json:"-"` UserID uint `json:"-" gorm:"index"` UserUID string `json:"user_uid" gorm:"-:migration;<-:false"` ChainID uint `json:"-"` ChainUID string `json:"chain_uid" gorm:"-:migration;<-:false"` IsChainAdmin bool `json:"is_chain_admin"` CreatedAt time.Time `json:"created_at"` IsApproved bool `json:"is_approved"` LastNotifiedIsUnapprovedAt zero.Time `json:"-"` RouteOrder int `json:"-"` IsPaused bool `json:"is_paused"` Bags []Bag `json:"-"` Bulky []BulkyItem `json:"-"` }
type UserContactData ¶
type UserContactData struct { Name string `gorm:"name"` Email zero.String `gorm:"email"` I18n string `gorm:"i18n"` ChainName string `gorm:"chain_name"` IsApproved bool `gorm:"is_approved"` }
func UserGetAdminsByChain ¶
func UserGetAdminsByChain(db *gorm.DB, chainId ...uint) ([]UserContactData, error)
type UserOnesignal ¶
Click to show internal directories.
Click to hide internal directories.