nl_tokens: Adds numbers to a base name until it finds a unique database key
pl_tokens: function generateUsername ( base ) { base = base . toLowerCase ( ) ; var entries = [ ] ; var finalName ; return userDB . allDocs ( { startkey : base , endkey : base + '\uffff' , include_docs : false } ) . then ( function ( <mask> ) { if ( results . rows . length === 0 ) { return BPromise . resolve ( base ) ; } for ( var i = 0 ; i < results . rows . length ; i ++ ) { entries . push ( results . rows [ i ] . id ) ; } if ( entries . indexOf ( base ) === - 1 ) { return BPromise . resolve ( base ) ; } var num = 0 ; while ( ! finalName ) { num ++ ; if ( entries . indexOf ( base + num ) === - 1 ) { finalName = base + num ; } } return BPromise . resolve ( finalName ) ; } ) ; }