This is a set of ideas for how an forms2accounts module could work that uses accountdown and is meant to facilitate the creation and updates of accounts from a form. Primary usage would be on the server.
or some similar package name.
forms2accountsis available, though
server.accountdown: an accountdown instance for updating and storing accountsaccount: An associative array defining the schema of the accounts. Each field is mapped to either a boolean describing whether the field is required, or a default value when the field is not provided. If the default value is a boolean, then it is listed in quotes. Here is an example that uses the accountdown-basic module as the credentials plugin while supplying a customizedvalueattribute with three required fields (email,username, anduuid), one non-required field (favorite-food) and two optional fields with default values (adminandcolor):
var account = {
login: {
basic: {
username: true,
password: true
}
},
value: {
admin: 'false',
color: randomColor(),
favorite-food: false,
email: true,
username: true,
uuid: true
}
};
options: TBD
req,res: Parses thereqandresobjects using the body'sbody/formmodule, and creates an account
Internally, all accounts are created with the key generated from uuid, version 1.
callbackprovideserrorargument
-
req,res: Parses thereqandresobjects using the body'sbody/formmodule, and creates an account -
callbackprovides anerrorargument.
uuid: string key that identifies the account that will be removed
Internally, this function is just a convenience wrapper for the accountdown.remove function
callbackprovides anerrorargument.
Returns a stream of all accounts
Internally, this function is just a convenience wrapper for the accountdown.list function
uuid: string key that identifies the account that will be retrieved
Internally, this function is just a convenience wrapper for the accountdown.get function
callbackprovideserrorargument
Maybe it really only needs the
createandupdatemethods? Then we would use theaccountdowninstance like normal for things likelist,remove, &get.