common

package
v0.0.0-...-f28940e Latest Latest
Warning

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

Go to latest
Published: Sep 28, 2022 License: MIT Imports: 17 Imported by: 0

Documentation

Overview

- メールアドレスの存在チェック - IPアドレスがブロックリストに存在するかチェック

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AdminOnly

func AdminOnly(ctx context.Context, db *database.Database, userId string) error

func ChaeckBlock

func ChaeckBlock(ctx context.Context, db *database.Database, ip string, mail string) (bool, error)

IPアドレス、メールアドレスがブロックリストに存在しているのかを確認する 存在している場合、trueが返る

func CheckAdminMail

func CheckAdminMail(mail string) bool

メールアドレスがadminで定義したメールアドレスかをチェックします

func CheckExistMail

func CheckExistMail(ctx context.Context, db *database.Database, mail string) (bool, error)

certification内に同じメールアドレスが存在するかチェックします 存在している場合、そのメールアドレスを使用しているユーザがいることになります

同じメールアドレスで複数のアカウントを持つことはできません

func CheckExpired

func CheckExpired(entry *models.Period) bool

有効期限切れかどうかを調べます。 期限切れの場合、trueが返る

func CheckOTP

func CheckOTP(passcode string, cert *models.Certification, secret *string) (bool, bool)

OTPが正しいかをチェックします

func CheckUsername

func CheckUsername(ctx context.Context, db *database.Database, userName string) (bool, error)

ユーザ名が存在するかチェックする

func GetMailByUserID

func GetMailByUserID(ctx context.Context, db *database.Database, userID string) (string, error)

ユーザIDからメールアドレスを取得する

func ParseUserData

func ParseUserData(r *http.Request) ([]byte, error)

func ProOnly

func ProOnly(ctx context.Context, db *database.Database, userId string) error

Pro以上のユーザのみ

func UACHToJson

func UACHToJson(r *http.Request) ([]byte, error)

func UserAgentToJson

func UserAgentToJson(userAgent string) ([]byte, error)

userAgentを解析し、json形式で返します

Types

type Cert

type Cert struct {
	Writer  http.ResponseWriter
	Request *http.Request

	SessionToken string
	RefreshToken string

	UserId string

	AccessID string

	Ip string
}

func NewCert

func NewCert(w http.ResponseWriter, r *http.Request) *Cert

func (*Cert) AddUser

func (c *Cert) AddUser() *Cert

func (*Cert) Login

func (c *Cert) Login(ctx context.Context, db *database.Database) error

func (*Cert) NewLogin

func (c *Cert) NewLogin(ctx context.Context, db *database.Database, userId string) error

新しくログインする

func (*Cert) RefreshLogin

func (c *Cert) RefreshLogin(ctx context.Context, db *database.Database) error

refresh tokenからログインする

func (*Cert) SetCookie

func (c *Cert) SetCookie()

ログイン用のcookieをセットする

type UserAgent

type UserAgent struct {
	Name      string `json:"name"`
	Version   string `json:"version"`
	OS        string `json:"os"`
	OSVersion string `json:"os_version"`
	Device    string `json:"device"`
	Mobile    bool   `json:"mobile"`
	Tablet    bool   `json:"tablet"`
	Desktop   bool   `json:"desktop"`
	Bot       bool   `json:"bot"`
	URL       string `json:"url"`
	String    string `json:"string"`
}

func ParseUserAgentJson

func ParseUserAgentJson(target []byte) (*UserAgent, error)

UserAgentToJsonのjsonを構造体に戻します

Jump to

Keyboard shortcuts

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