diff --git a/services/web/app/coffee/models/Project.coffee b/services/web/app/coffee/models/Project.coffee index 70d4a7bea4..f59581bd69 100644 --- a/services/web/app/coffee/models/Project.coffee +++ b/services/web/app/coffee/models/Project.coffee @@ -7,6 +7,13 @@ sanitize = require('sanitizer') concreteObjectId = require('mongoose').Types.ObjectId Errors = require "../Features/Errors/Errors" +generateToken = (length) -> + tokenAlpha = 'bcdfghjkmnpqrstvwxyz' + result = '' + for _n in [1..length] + i = Math.floor(Math.floor(Math.random() * tokenAlpha.length)) + result += tokenAlpha[i] + return result Schema = mongoose.Schema ObjectId = Schema.ObjectId @@ -34,8 +41,14 @@ ProjectSchema = new Schema imageName : { type: String } track_changes : { type: Object } tokens : - readOnly : { type: String } - readAndWrite : { type: String } + readOnly : { + type: String, + default: generateToken(14) + } + readAndWrite : { + type: String, + default: Math.random().toString().slice(2, 10) + generateToken(12) + } tokenAccessReadOnly_refs : [ type:ObjectId, ref:'User' ] tokenAccessReadAndWrite_refs : [ type:ObjectId, ref:'User' ] overleaf :