model

package module
v0.0.80 Latest Latest
Warning

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

Go to latest
Published: Dec 12, 2023 License: MIT Imports: 3 Imported by: 42

README

Estructuras que utilizo con frecuencia en proyectos escritos en Go

ejemplo de uso en un objeto

func MedicalHistory() model.Object {
	return model.Object{
		Name:           "medicalhistory",
		PrincipalFieldsName: []string{"service_name"},
		Fields: []model.Field{
			{Name: "id_medicalhistory", Legend: "id", Input: unixid.InputPK()},
			{Name: "id_patient", Legend: "paciente", Input: unixid.InputPK()},

			{Name: "staff_id", Legend: "Id", Input: unixid.InputPK()},
			{Name: "staff_name", Legend: "Atendido por", Input: input.Text()},
			{Name: "staff_ocupation", Legend: "Especialidad", Input: input.Text()},
			{Name: "staff_area", Legend: "Area", Input: input.Check(Area{})},

			{Name: "service_id", Legend: "Prestación", Input: unixid.InputPK()},

			{Name: "day_attention", Legend: "Dia Atención", Input: input.Date()},
			{Name: "hour_attention", Legend: "Hora", Input: input.Hour(`min="08:15"`, `max="20:15"`)},

			{Name: "reason", Legend: "Motivo Consulta, Servicio o Procedimiento", Input: input.TextArea()},
			{Name: "diagnostic", Legend: "Diagnostico (Descripción)", Input: input.TextArea()},
			{Name: "prescription", Legend: "Prescripción (Conclusion)", Input: input.TextArea()},

			{Name: "last_print_file", Legend: "Ultima Impresión en Archivo", Input: input.Text()},
		},
	}
}

Documentation

Index

Constants

View Source
const INPUT_PATTERN = `input\.(\w+)\([^)]*\)`
View Source
const PREFIX_ID_NAME = "id_"

Variables

This section is empty.

Functions

func GetFieldNamesFrom added in v0.0.68

func GetFieldNamesFrom(struct_in interface{}) (field_names []string)

Types

type AfterClicked added in v0.0.52

type AfterClicked interface {
	// data del objeto que fue cliqueado por el usuario
	UserClicked(data map[string]string)
}

type AfterCreate added in v0.0.46

type AfterCreate interface {
	SetObjectInDomAfterCreate(data ...map[string]string) (err string)
}

type AfterDelete added in v0.0.46

type AfterDelete interface {
	SetObjectInDomAfterDelete(data ...map[string]string) (err string)
}

type AfterRead added in v0.0.49

type AfterRead interface {
	SetObjectInDomAfterRead(data ...map[string]string) (err string)
}

type AfterUpdate added in v0.0.46

type AfterUpdate interface {
	SetObjectInDomAfterUpdate(data ...map[string]string) (err string)
}

type AlternativeValidateAdapter added in v0.0.69

type AlternativeValidateAdapter interface {
	ValidateData(its_new, its_update_or_delete bool, all_data ...map[string]string) (err string)
}

type AppInfo added in v0.0.67

type AppInfo struct {
	App_name         string
	Business_name    string
	Business_address string
	Business_phone   string
}

func (AppInfo) AppVersion added in v0.0.78

func (AppInfo) AppVersion() string

func (AppInfo) GoVersion added in v0.0.78

func (AppInfo) GoVersion() string

func (AppInfo) TinyGoVersion added in v0.0.78

func (AppInfo) TinyGoVersion() string

type AuthBackendAdapter added in v0.0.77

type AuthBackendAdapter interface {
	// params ej: r *http
	BackendCheckUser(r_http any) (u *User, err string)
	AuthHandlerAdapter
}

type AuthFrontendAdapter added in v0.0.77

type AuthFrontendAdapter interface {
	FrontendCheckUser(result func(u *User, err string))
	AuthHandlerAdapter
}

type AuthHandlerAdapter added in v0.0.77

type AuthHandlerAdapter interface {
	NameOfAuthHandler() string
	UserAuthNumber
}

type BackendBootDataUser added in v0.0.76

type BackendBootDataUser interface {
	BackendLoadBootData(u *User) (out, err string)
}

type BackendHandler added in v0.0.46

type BackendHandler struct {
	BootResponse

	CreateApi
	ReadApi
	UpdateApi
	DeleteApi
}

type BeforeAction added in v0.0.78

type BeforeAction interface {
	ExecuteBeforeAction(h *Handlers)
}

type BootPageData added in v0.0.74

type BootPageData struct {
	JsonBootActions string
}

type BootResponse added in v0.0.45

type BootResponse interface {
	AddBootResponse(u *User) (r []Response, err string)
}

type CipherAdapter added in v0.0.76

type CipherAdapter interface {
	Encrypt(content []byte) (out, err string)
	Decrypt(content string) (out, err string)
}

type ContainerViewAdapter added in v0.0.70

type ContainerViewAdapter interface {
	BuildContainerView(id, field_name string, allow_skip_completed bool) string
}

todo el contenido html por defecto del objeto

type CookieExpiration added in v0.0.78

type CookieExpiration struct {
	OneHour bool
	OneDay  bool
	Forever bool
}

default 2 minutes

type CreateApi added in v0.0.31

type CreateApi interface {
	Create(u *User, data ...map[string]string) (err string)
}

type CutData added in v0.0.19

type CutData struct {

	// ej Modelo Objeto: usuario := Object{Name: "Usuario",Fields: []Field{
	// 		{Name: "name"}, //0
	// 		{Name: "email"},//1
	// 		{Name: "phone"},//2
	// 	},}
	// ej data normal con todos los campos: {"name":"John Doe","email":"johndoe@example.com","phone":"555"}
	// version recortada Data: {"John Doe","johndoe@example.com","555"}
	// Index Objeto al codificar = {"0:0","1:1","2:2"}
	// ej no mail: {"marcel", "777"}
	// Index al codificar = {"0:0","1:2"}
	Index map[int8]int8 `json:"i"`
	//Data ej en mapa: "Data":[{"id":"222","name":"manzana","valor":"1200"}]
	// ahora: "Data":["222","manzana","1200"]
	Data []string `json:"d"`
}

type CutResponse added in v0.0.19

type CutResponse struct {
	//Action,Object,Module,Message
	//ej: ["create","user","ModuleUsers","ok"]
	CutOptions []string  `json:"o,omitempty"`
	CutData    []CutData `json:"d,omitempty"`
}

func (*CutResponse) CutResponseDecode added in v0.0.21

func (cr *CutResponse) CutResponseDecode(data []map[string]string) (out Response)

type DataBaseAdapter added in v0.0.35

type DataBaseAdapter interface {
	IdHandler
	RunOnClientDB() bool //verdadero corren en el cliente ej browser. por defecto falso corre en el servidor
	// items support in server db: []map[string]string, map[string]string
	CreateObjectsInDB(table_name string, backup_required bool, items any) (err string)

	// from_tables ej: "users,products" or: public.reservation, public.patient"
	// params: map[string]string ej:{
	// LIMIT: 10, 5, 100. note: Postgres y MySQL: "LIMIT 10", SQLite: "LIMIT 10 OFFSET 0" OR "" no limit
	// ORDER_BY: name,phone,address
	// SELECT: "name, phone, address" default *
	// WHERE: "patient.id_patient = reservation.id_patient AND reservation.id_staff = '2'"
	// ARGS: "1,4,33"
	// }
	ReadSyncDataDB(from_tables string, params ...map[string]string) (result []map[string]string, err string)
	//params: callback fun ej: fun([]map[string]string,error)
	// "ORDER_BY": "patient_name", "SORT":"DESC" DEFAULT "ASC"
	ReadAsyncDataDB(p ReadParams, callback func(r ReadResult))

	UpdateObjectsInDB(table_name string, data ...map[string]string) (err string)
	DeleteObjectsInDB(table_name string, data ...map[string]string) (err string)

	CreateTablesInDB(objects []*Object, result func(err string))

	BackupDataBase(callback func(err string))
	ClearAllTableDataInDB(tables ...string) (err string)
}

type DataConverter added in v0.0.68

type DataConverter interface {
	EncodeStruct(in any) (result []byte, err string)
	// &out is a pointer
	DecodeStruct(in []byte, out any) (err string)
	//map_in ej []map[string]string or map[string]string
	EncodeMaps(map_in any, object_name ...string) (out []byte, err string)
	DecodeMaps(in []byte, object_name ...string) (out []map[string]string, err string)

	EncodeResponses(requests ...Response) (out []byte, err string)
	DecodeResponses(data []byte) (out []Response, err string)
}

si nombre del objeto no se ingresa se codifica a json de forma normal

type DeleteApi added in v0.0.31

type DeleteApi interface {
	Delete(u *User, data ...map[string]string) (err string)
}

type DomAdapter added in v0.0.47

type DomAdapter interface {
	BuildFrontendUI() (err string)
	InnerHTML(querySelector, html_content string) (err string)
	InsertAfterBegin(querySelector, html_content string) (err string)
	InsertBeforeEnd(querySelector, html_content string) (err string)
	// querySelector ej: "a[name='xxx']"
	ElementClicking(querySelector string) (err string)
	//ej: querySelector "meta[name='JsonBootTests']"
	// get_content: "content"
	SelectContent(querySelector, get_content string) (content, err string)

	CallFunction(functionName string, args ...any) (err string)
}

type FetchAdapter added in v0.0.68

type FetchAdapter interface {
	//method ej: GET,POST
	// endpoint ej: http://localhost/upload
	// object ej: imagen
	// body_rq any ej: []map[string]string, map[string]string
	SendOneRequest(method, endpoint, object string, body_rq any, response func(result []map[string]string, err string))
	// only POST method
	SendAllRequests(endpoint string, body_rq []Response, response func(result []Response, err string))
}

type Field

type Field struct {
	// si el campo comienza com id_ se considera como único y perteneciente a una tabla específica ej: id_user su tabla es user
	// otros ej: id_usuario, apellido, address, city etc
	Name          string
	Legend        string //como se mostrara al usuario el campo en el encabezado ej: "name" por "Nombre Usuario"
	SourceTable   string // tabla origen ej: patient,user,product
	NotRenderHtml bool   // si no se necesita en formulario html

	*Input

	SkipCompletionAllowed bool //se permite que el campo no este completado. por defecto siempre sera requerido

	Unique                   bool //campo único e inalterable en db
	NotRequiredInDB          bool // campo no requerido en base de datos al crear tabla
	Encrypted                bool // si estará encriptado su almacenamiento o no
	NotClearValueOnFormReset bool // no borrar el valor del campo al resetear el formulario
}

func (Field) IsPrimaryKey added in v0.0.35

func (f Field) IsPrimaryKey(o *Object) bool

type FileApi added in v0.0.33

type FileApi interface {
	// FileAddUploadApi(h *Handlers, source *Object, file_settings any) error
	//backend file_request ej: r *http.Request, w http.ResponseWriter
	//frontend file_request ej: blob file js.Value
	FileUpload(object_name, area_file string, file_request ...any) (out []map[string]string, err string)
	//params ej: id:123
	FilePath(params map[string]string) (file_path, area string, err string)
}

type FileDiskRW added in v0.0.68

type FileDiskRW interface {
	FileGet(path string) (item any, err string)

	FileDelete(path string) (err string)
}

type FormAdapter added in v0.0.66

type FormAdapter interface {
	FormReset(object_name string) (err string)
	FormAutoFill(object_name string) (err string)
	//validate valida después de completar,auto_grow hacer crecer los campos según el contenido
	FormComplete(object_name string, data map[string]string, validate, auto_grow bool) (err string)
}

type FrontendBootDataUser added in v0.0.76

type FrontendBootDataUser interface {
	FrontendLoadBootData(data string) (err string)
}

type Handlers added in v0.0.60

func (*Handlers) AddModules added in v0.0.68

func (h *Handlers) AddModules(new_modules ...*Module)

func (*Handlers) AddObjects added in v0.0.68

func (h *Handlers) AddObjects(new_objects ...*Object)

func (Handlers) CheckInterfaces added in v0.0.68

func (h Handlers) CheckInterfaces(pkg_name string, struct_in interface{}) (err string)

func (Handlers) GetModuleByName added in v0.0.68

func (h Handlers) GetModuleByName(module_name string) (m *Module, err string)

func (Handlers) GetModules added in v0.0.68

func (h Handlers) GetModules() []*Module

func (Handlers) GetObjectByName added in v0.0.68

func (h Handlers) GetObjectByName(object_name string) (o *Object, err string)

func (Handlers) GetObjects added in v0.0.68

func (h Handlers) GetObjects() []*Object
type Header struct {
	Name    string // ej: Content-Type, Auth
	Content string
}

type HeaderAuthenticationAdapter added in v0.0.80

type HeaderAuthenticationAdapter interface {
	AddHeaderAuthentication() Header
}

type HtmlAdapter added in v0.0.70

type HtmlAdapter interface {
	// retorna un elemento html del tipo js.Value
	GetHtmlModule(module_name string) (jsValue any, err string)
}

type Icon added in v0.0.28

type Icon struct {
	Id      string   //ej: icon-search, icon-btn-save, icon-btn-new
	ViewBox string   //ej: "0 0 16 16", "0 0 448 512"
	Paths   []string //ej: m11.51 11..,m7.051..,m3.267 15...
}

type IdHandler added in v0.0.56

type IdHandler interface {
	GetNewID() string
}

type Input added in v0.0.5

type Input struct {
	InputName string

	Minimum int
	Maximum int

	Tag
	ItemViewAdapter
	ResetViewAdapter
	Validate

	TestData
}

type ItemViewAdapter added in v0.0.70

type ItemViewAdapter interface {
	BuildItemsView(all_data ...map[string]string) (html string)
}

type Logger added in v0.0.60

type Logger interface {
	// retorno una interfaz solo para simplificar funciones de tipo syscall/js
	Log(message ...any) interface{}
}

type MessageAdapter added in v0.0.69

type MessageAdapter interface {
	UserMessage(message ...any) interface{}
}

type Module

type Module struct {
	//nombre modulo ej: chat,patient,user
	ModuleName string
	//Titulo que vera el usuario ej: "Modulo Fotografía"
	Title string
	// id icono para utilizar en sprite svg ej: icon-info
	IconID string

	//interfaz usuario modulo
	UI

	//areas soportadas por el modulo ej: 'a','t','x'
	Areas map[string]string
	// objetos o componentes que contiene el modulo ej: patient,user,datalist,search....
	Objects []*Object

	// tipo de entradas usadas en el modulo
	Inputs []*Input

	*Handlers
}

func (*Module) AddInputs added in v0.0.56

func (m *Module) AddInputs(new_inputs []*Input, from string) (err string)

from ej: file, user

func (Module) ModuleSupports added in v0.0.74

func (m Module) ModuleSupports(area string) bool

type ModuleHandler added in v0.0.68

type ModuleHandler interface {
	GetModules() []*Module
	GetModuleByName(module_name string) (m *Module, err string)
}

type NotifyBootData added in v0.0.50

type NotifyBootData interface {
	NotifyBootDataIsLoaded()
}

type NotifyFormComplete added in v0.0.74

type NotifyFormComplete interface {
	NotifyFormIsOK()
}

type Object

type Object struct {
	// ej: module.client, client.search_footer,user.datalist
	ObjectName string
	Table      string //tabla origen db ej: users

	PrincipalFieldsName []string //campos mas representativos ej: name, address, phone
	NoAddObjectInDB     bool
	Fields              []Field //campos

	*Module // módulo origen

	BackHandler BackendHandler

	FrontHandler FrontendHandler

	PrinterHandler

	FormData map[string]string // data temporal formulario

	AlternativeValidateAdapter
}

func (Object) CallJsFunctionObject added in v0.0.70

func (o Object) CallJsFunctionObject(func_name string, enable bool, params ...map[string]interface{}) (err string)

func (Object) ClickMenuModule added in v0.0.71

func (o Object) ClickMenuModule() (err string)

func (Object) ClickObjectElement added in v0.0.71

func (o Object) ClickObjectElement(query_element string) (err string)

func (Object) ClickingID added in v0.0.70

func (o Object) ClickingID(id string) (err string)

func (Object) Columns

func (o Object) Columns() (columns []string)

func (Object) DataDecode added in v0.0.19

func (o Object) DataDecode(cut_data ...CutData) (decoded_data []map[string]string, err string)

func (Object) DataEncode added in v0.0.19

func (o Object) DataEncode(all_data ...map[string]string) (out []CutData, err string)

DataEncode quita los nombres de los campos de la data según modelo del objeto

func (Object) FieldExist added in v0.0.16

func (o Object) FieldExist(field_name string) (Field, bool)

func (Object) FieldsToFormValidate added in v0.0.66

func (o Object) FieldsToFormValidate() (fiels_out []Field)

func (Object) FilterRemoveFields

func (o Object) FilterRemoveFields(namesToRemove ...string) (fiels_out []Field)

func (Object) GetFieldsByNames added in v0.0.50

func (o Object) GetFieldsByNames(required_names ...string) (fiels_out []Field, err string)

func (Object) GetID

func (o Object) GetID(data_search map[string]string) string

func (Object) GetRepresentativeTextField

func (o Object) GetRepresentativeTextField(data_element map[string]string) (values string)

func (Object) GetTablesNames added in v0.0.50

func (o Object) GetTablesNames() (out []string)

func (Object) JoinFieldNames added in v0.0.48

func (o Object) JoinFieldNames(add_prefix_table_name bool) (out string)

ej: id_patient,patient_name,patient_run - add_prefix_table_name: true = patient.id_patient,patient.patient_name,patient.patient_run

func (Object) MainName

func (o Object) MainName() string

func (Object) OnlyRequiredDbFieldsThisObject added in v0.0.63

func (o Object) OnlyRequiredDbFieldsThisObject() (db_field []Field)

solo campos requeridos en la base de datos. NOTA: puntero []*Field no funciona con slice

func (Object) PrimaryKeyName

func (o Object) PrimaryKeyName(options ...string) string

ej: "id_client", options: "add_prefix_table_name" = "client.id_client"

func (Object) RenderFields

func (o Object) RenderFields() (fiels_out []Field)

func (Object) RequiredFields

func (o Object) RequiredFields() (fiels_out []Field)

func (*Object) ResetFormValues added in v0.0.74

func (o *Object) ResetFormValues(reset_input_view bool) (err string)

setear valores del formulario

func (Object) Response added in v0.0.35

func (o Object) Response(data []map[string]string, options ...string) Response

options ej: update,delete,"mensaje a enviar" default action: create

func (Object) TestData added in v0.0.39

func (o Object) TestData(required_objects int, skip_id, wrong_data bool) (out []map[string]string, err string)

func (Object) ValidateData added in v0.0.16

func (o Object) ValidateData(its_new, its_update_or_delete bool, all_data ...map[string]string) (err string)

validar data objeto

func (Object) Where added in v0.0.50

func (o Object) Where(data map[string]string) (out string)

ej: reservation.id_patient = patient.id_patient AND reservation.id_staff = '1635574887' AND reservation.reservation_day = '29'

type ObjectsHandler added in v0.0.68

type ObjectsHandler interface {
	AddObjects(o ...*Object)
	GetObjects() []*Object
	GetObjectByName(object_name string) (o *Object, err string)
}

type Package added in v0.0.35

type Package struct {
	SkipMeInResponse bool     `json:"-"` //  saltarme al difundir
	Recipients       []string `json:"-"` // lista de ip, token o ids según app para el reenvió al finalizar solicitud
	TargetArea       bool     `json:"-"` // si es falso el destino por defecto es publico de lo contrario sera para todos quines tengan la misma area del usuario solicitante
	Response
}

type Page added in v0.0.33

type Page struct {
	StyleSheet string // url ej style.css

	AppName    string
	AppVersion string

	SpriteIcons string

	Menu string

	UserName string
	UserArea string
	Message  string

	Modules string

	Script string // ej main.js

	// JsonBootActions string //index ej <meta name="JsonBootActions" content="{{.JsonBootActions}}">
	// JsonBootTests   string
	BootPageData
}

index.html ej: {{.StyleSheet}} {{.AppName}} {{.AppVersion}} {{.SpriteIcons}} {{.Menu}} {{.Message}} {{.UserName}} {{.UserArea}} {{.Modules}} {{.Script}} {{.Data}}

type Permission

type Permission struct {
	Read  bool
	Write bool
}

type PrinterHandler added in v0.0.66

type PrinterHandler interface {
	PrintFormObject()
}

type ReadApi added in v0.0.31

type ReadApi interface {
	Read(u *User, data ...map[string]string) (out []map[string]string, err string)
}

type ReadData added in v0.0.69

type ReadData interface {
	ReadByID(id string) (out []map[string]string, err string)
}

type ReadParams added in v0.0.77

type ReadParams struct {
	FROM_TABLE      string
	ID              string   // unique search
	WHERE           []string //
	SEARCH_ARGUMENT string
	ORDER_BY        string
	SORT_DESC       bool //default ASC
	RETURN_ANY      bool // default string return []map[string]string, any = []map[string]interface{}

}

type ReadResult added in v0.0.77

type ReadResult struct {
	DataString []map[string]string
	DataAny    []map[string]any
	Error      string
}

type Request

type Request struct {
	//usuario que ejecuta la solicitud
	*User
	// paquetes de solicitud y respuesta
	Packages []Package
}

type ResetViewAdapter added in v0.0.70

type ResetViewAdapter interface {
	ResetAdapterView() (err string)
}

type ResetViewObjectAdapter added in v0.0.70

type ResetViewObjectAdapter interface {
	ResetObjectView() (err string)
}

type Response

type Response struct {
	Action  string              `json:"a,omitempty"` //acción a realizar con la solicitud: create, read, update, delete o error
	Object  string              `json:"o,omitempty"` //nombre de la tabla u objeto controlador hacia donde va la solicitud
	Message string              `json:"g,omitempty"` //mensaje para el usuario de la solicitud
	Data    []map[string]string `json:"d,omitempty"` //data entrada y respuesta json
}

type Responses added in v0.0.72

type Responses struct {
	NoCut []Response    `json:"n,omitempty"` // normal
	Cut   []CutResponse `json:"c,omitempty"` //re cortada
}

type SourceData added in v0.0.44

type SourceData interface {
	SourceData() map[string]string
}

type Tag added in v0.0.26

type Tag interface {
	HtmlName() string
	ContainerViewAdapter
}

type TemplateModuleConfig added in v0.0.74

type TemplateModuleConfig struct {
	Module *Module
	// ej:	`<div class="target-module">
	// 	<select name="select">
	// 		<option value="value1">Value 1</option>
	// 		<option value="value2" selected>Value 2</option>
	// 	</select>
	// </div>`
	HeaderInputTarget string
	Form              *Object
	AsideList         ContainerViewAdapter
	ButtonLogin       bool
	ButtonPrint       bool
}

type TestData added in v0.0.10

type TestData interface {
	GoodTestData() (out []string)
	WrongTestData() (out []string)
}

type ThemeAdapter added in v0.0.47

type ThemeAdapter interface {
	// MenuButtonTemplate ej: <li class="navbar-item"><a href="#` + module_name + `" tabindex="` + index + `" class="navbar-link" name="` + module_name + `">
	// <svg aria-hidden="true" focusable="false" class="fa-primary"><use xlink:href="#` + icon_id + `" /></svg>
	// <span class="link-text">` + title + `</span></a></li>
	MenuButtonTemplate(module_name, index, icon_id, title string) string
	MenuClassName() string // ej: .menu-container
	MenuItemClass() string // ej: navbar-item

	ModuleClassName() string //ej: slider_panel

	ModuleTemplate(*TemplateModuleConfig) string

	FunctionMessageName() string // ej: ShowMessageToUser
	// ej query: "div#"+o.ModuleName+" [data-id='"+o.ObjectName+"']"
	QuerySelectorMenuModule(module_name string) string
	QuerySelectorModule(module_name string) string
	QuerySelectorObject(module_name, object_name string) string
	QuerySelectorUserName() string
	QuerySelectorUserArea() string
}

type TimeAdapter added in v0.0.47

type TimeAdapter interface {
	TimeNow
	TimeWeek
	UnixTimeHandler

	//esperar en milliseconds ej: 500, 2000 ..
	WaitFor(milliseconds int, callback func())

	// new_date ej: 2003-11-22 o "" para volver al estado normal
	SetDate(new_date string)
}

type TimeNow added in v0.0.52

type TimeNow interface {
	//ej: 2006-01-02
	DateToDay() string
	//ej: 2006-01-02 15:04:05
	DateToDayHour() string
}

type TimeWeek added in v0.0.52

type TimeWeek interface {
	//date ej: 2006-01-02,  0 para Domingo, 1 para Lunes, etc.
	WeekDayNumber(date_in string) (n int, err string)
}

type UI added in v0.0.26

type UI interface {
	UserInterface(options ...string) string
}

type UnixTimeHandler added in v0.0.56

type UnixTimeHandler interface {
	UnixNano() int64
}

ej: time.Now()

type UpdateApi added in v0.0.31

type UpdateApi interface {
	Update(u *User, data ...map[string]string) (err string)
}

type User

type User struct {
	Token          string // token de sesión solicitante
	Id             string // id usuario
	Ip             string
	Name           string
	Area           string // valor de carácter ej: a,s,p... key "" sin area
	AreaName       string // nombre del area
	AccessLevel    string // aquí valor numérico 0 a 255
	LastConnection string //time.Time

}

type UserAuthNumber added in v0.0.51

type UserAuthNumber interface {
	// ej: 1 or 2 or 34 or 400.....
	UserAuthNumber() (number string, err string)
}

type Validate added in v0.0.5

type Validate interface {
	//options html ej: data-option="ch_doc"
	ValidateField(data_in string, skip_validation bool, options ...string) (err string)
}

type ViewAdapter added in v0.0.70

type ViewAdapter interface {
	NameViewAdapter() string
	ContainerViewAdapter
	ItemViewAdapter
	ResetViewAdapter
}

Jump to

Keyboard shortcuts

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