2014-06-17 16:03:08 -04:00
|
|
|
c = require './../schemas'
|
|
|
|
|
|
|
|
UserRemarkSchema = c.object {
|
2014-06-30 22:16:26 -04:00
|
|
|
title: 'Remark'
|
|
|
|
description: 'Remarks on a user, point of contact, tasks.'
|
2014-06-17 16:03:08 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
_.extend UserRemarkSchema.properties,
|
2014-06-30 22:16:26 -04:00
|
|
|
user: c.objectId links: [{rel: 'extra', href: '/db/user/{($)}'}]
|
|
|
|
contact: c.objectId links: [{rel: 'extra', href: '/db/user/{($)}'}]
|
2014-06-17 16:03:08 -04:00
|
|
|
created: c.date title: 'Created', readOnly: true
|
|
|
|
history: c.array {title: 'History', description: 'Records of our interactions with the user.'},
|
|
|
|
c.object {title: 'Record'}, {date: c.date(title: 'Date'), content: {title: 'Content', type: 'string', format: 'markdown'}}
|
|
|
|
tasks: c.array {title: 'Tasks', description: 'Task entries: when to email the contact about something.'},
|
|
|
|
c.object {title: 'Task'}, {date: c.date(title: 'Date'), action: {title: 'Action', type: 'string'}}
|
|
|
|
|
|
|
|
# denormalization
|
2014-06-30 22:16:26 -04:00
|
|
|
userName: {title: 'Player Name', type: 'string'}
|
|
|
|
contactName: {title: 'Contact Name', type: 'string'} # Not actually our usernames
|
2014-06-17 16:03:08 -04:00
|
|
|
|
|
|
|
c.extendBasicProperties UserRemarkSchema, 'user.remark'
|
|
|
|
|
|
|
|
module.exports = UserRemarkSchema
|