forked from apxtri/apxtrib
87 lines
2.6 KiB
JSON
Executable File
87 lines
2.6 KiB
JSON
Executable File
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "nationchains/schema/pagans",
|
|
"title":"Pagan definition",
|
|
"description": "A pagan is an uuid to manage identity by deliver a way to its owner to proof he owns from a privatekey in the socialworld of apXtrib and manage access keys deliver by druid or mayor to interact physical ressource (CRUD on it).",
|
|
"type": "objects",
|
|
"properties":{
|
|
"paganId":{
|
|
"description": "|Pagans|paganiddesc",
|
|
"apxdesclong": "|Pagans|paganiddesclong"
|
|
"apxinfo":"|Pagans|paganidinfo",
|
|
"type": "string",
|
|
"apxtype":"uuidv4"
|
|
},
|
|
"login":{
|
|
"description": "|Pagans|logindesc",
|
|
"type": "string",
|
|
"pattern":"^[a-z0-9]*$",
|
|
"apxinfo": "|Pagans|logininfo"
|
|
},
|
|
"password":{
|
|
"description": "|Pagans|pswdesc",
|
|
"type": "string"
|
|
},
|
|
"townId":{
|
|
"description":"",
|
|
"type":"string",
|
|
"$apxenumkey": "socialworld/objects/nations/searchindex/towns_townId_all.json"
|
|
},
|
|
"tribeId":{
|
|
"description":"",
|
|
"type":"string",
|
|
"$apxenumkey": "tribes/objects/tribes/searchindex/tribes_tribeId_all.json"
|
|
},
|
|
"publicKey":{
|
|
"description": "|Pagans|publickeydesc",
|
|
"type":"string",
|
|
"apxinfo": "|Pagans|publickeyinfo"
|
|
},
|
|
"biography":{
|
|
"description": "|Pagans|biographydesc",
|
|
"type":"string",
|
|
"pattern":"^.{O,150}$"
|
|
},
|
|
"imgavatar":{
|
|
"description": "|Pagans|imgavatardesc",
|
|
"apxinfo": "|Pagans|imgavatarinfo",
|
|
"type":"string",
|
|
"apxtype":"file"
|
|
},
|
|
"emailrecup":{
|
|
"description":"|Pagans|emaildesc",
|
|
"tpl": "input",
|
|
"type": "email",
|
|
"check": ["emailadress", "unique"],
|
|
},
|
|
"dtcreate":{
|
|
"description": "|Pagans|dtcreatedesc",
|
|
"type":"string",
|
|
"pattern":"^[0-9]{4}-(0?[1-9]|1[012])-(0?[1-9]|[12][0-9]|3[01])$",
|
|
"default": "moment(new Date()).format('YYYY-MM-DD')"
|
|
},"dtupdate": {
|
|
"description": "|Pagans|dtupdatedesc",
|
|
"type":"string",
|
|
"pattern":"^[0-9]{4}-(0?[1-9]|1[012])-(0?[1-9]|[12][0-9]|3[01])$",
|
|
"default": "moment(new Date()).format('YYYY-MM-DD')"
|
|
},"dtlastlogin" {
|
|
"description": "|Pagans|dtlastlogindesc",
|
|
"type":"string",
|
|
"pattern":"^[0-9]{4}-(0?[1-9]|1[012])-(0?[1-9]|[12][0-9]|3[01])$",
|
|
"default": "moment(new Date()).format('YYYY-MM-DD')"
|
|
},"accessrights": {
|
|
"description": "|Pagans|accessrightsdesc",
|
|
"type":"object",
|
|
"$ref":"socialworld/schema/accessright.json"
|
|
}
|
|
},
|
|
"required": ["paganId","login","townId", "tribeId"],
|
|
"apxprimarykey": "paganId",
|
|
"apxunique":["login"],
|
|
"apxsearchindex": [
|
|
{ "key": "login", "value": "paganId" },
|
|
{ "key": "email", "value": "paganId" },
|
|
{ "key": "token", "value": "paganId" }
|
|
]
|
|
}
|