controller

package
v0.0.0-...-914eb61 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 18, 2022 License: MIT Imports: 22 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// GoogleAuth is for google
	GoogleAuth uint8 = 1
	// FacebookAuth is for Facebook
	FacebookAuth uint8 = 2
)

Variables

This section is empty.

Functions

This section is empty.

Types

type APIJWTer

type APIJWTer interface {
	APIJWTIndexPostAction(ctx *gin.Context)
}

APIJWTer interface

type APILister

type APILister interface {
	APIListIndexAction(ctx *gin.Context)
	APIListIndex2Action(ctx *gin.Context)
}

APILister interface

type APIUser

type APIUser interface {
	APIUserListGetAction(ctx *gin.Context)
	APIUserInsertPostAction(ctx *gin.Context)
	APIUserGetAction(ctx *gin.Context)
	APIUserPutAction(ctx *gin.Context)
	APIUserDeleteAction(ctx *gin.Context)
	APIUserIDsGetAction(ctx *gin.Context)
}

APIUser interface

type Accounter

type Accounter interface {
	AccountIndexAction(ctx *gin.Context)
}

Accounter interface

type Adminer

type Adminer interface {
	AdminIndexAction(ctx *gin.Context)
}

Adminer interface

type Baser

type Baser interface {
	BaseIndexAction(ctx *gin.Context)
	BaseLoginGetAction(ctx *gin.Context)
	BaseLoginPostAction(ctx *gin.Context)
	BaseLogoutPostAction(ctx *gin.Context)
	BaseLogoutPutAction(ctx *gin.Context)
}

Baser interface

type Chater

type Chater interface {
	ChatIndexAction(ctx *gin.Context)
}

Chater interface

type Controller

Controller interface

func NewController

func NewController(
	logger *zap.Logger,
	userRepo repository.UserRepository,
	session ginsession.Sessioner,
	jwter jwts.JWTer,
	apiHeaderConf *config.Header,
	auth *config.Auth) Controller

NewController returns Controller

type Errorer

type Errorer interface {
	Error404Action(ctx *gin.Context)
	Error405Action(ctx *gin.Context)
}

Errorer interface

type FBPic

type FBPic struct {
	Data struct {
		IsSilhouette bool   `json:"is_silhouette"`
		URL          string `json:"url"`
	}
}

FBPic is structure of picture on facebook

type LoginRequest

type LoginRequest struct {
	Email string `valid:"nonempty,email,min=5,max=40" field:"email" dispName:"E-Mail"`
	Pass  string `valid:"nonempty,min=8,max=20" field:"pass" dispName:"Password"`
}

LoginRequest is login payload

type Loginer

type Loginer interface {
	// contains filtered or unexported methods
}

Loginer interface

type OAuther

type OAuther interface {
	OAuth2SignInGoogleAction(ctx *gin.Context)
	OAuth2SignInFacebookAction(ctx *gin.Context)
	OAuth2CallbackGoogleAction(ctx *gin.Context)
	OAuth2CallbackFacebookAction(ctx *gin.Context)
}

OAuther interface

type ResFacebook

type ResFacebook struct {
	ID            string `json:"id"`
	Email         string `json:"email"`
	VerifiedEmail bool   `json:"verified"`
	Name          string `json:"name"`       // full name
	FirstName     string `json:"first_name"` // first name
	LastName      string `json:"last_name"`  // last name
	Link          string `json:"link"`
	Picture       FBPic  `json:"picture"`
	Gender        string `json:"gender"`
	Locale        string `json:"locale"`
}

ResFacebook is for response data from facebook

type ResGoogle

type ResGoogle struct {
	ID            string `json:"id"`
	Email         string `json:"email"`
	VerifiedEmail bool   `json:"verified_email"`
	Name          string `json:"name"`        // full name
	FirstName     string `json:"given_name"`  // first name
	LastName      string `json:"family_name"` // last name
	Link          string `json:"link"`
	Picture       string `json:"picture"`
	Gender        string `json:"gender"`
	Locale        string `json:"locale"`
}

ResGoogle is for response data from google

type UserRequest

type UserRequest struct {
	FirstName string `valid:"nonempty,min=3,max=20" field:"first_name" dispName:"First Name" json:"firstName" form:"firstName"`
	LastName  string `valid:"nonempty,min=3,max=20" field:"last_name" dispName:"Last Name" json:"lastName" form:"lastName"`
	Email     string `valid:"nonempty,min=5,max=60" field:"email" dispName:"E-mail" json:"email" form:"email"`
	Password  string `valid:"nonempty,min=8,max=16" field:"password" dispName:"Password" json:"password" form:"password"`
}

UserRequest is expected request payload

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL