diff options
Diffstat (limited to 'models/org.js')
-rw-r--r-- | models/org.js | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/models/org.js b/models/org.js new file mode 100644 index 00000000..cdbcbafc --- /dev/null +++ b/models/org.js @@ -0,0 +1,121 @@ +Org = new Mongo.Collection('org'); + +/** + * A Organization in wekan + */ +Org.attachSchema( + new SimpleSchema({ + id: { + /** + * the organization id + */ + type: Number, + optional: true, + // eslint-disable-next-line consistent-return + autoValue() { + if (this.isInsert && !this.isSet) { + return incrementCounter('counters', 'org_id', 1); + } + }, + }, + version: { + /** + * the version of the organization + */ + type: Number, + optional: true, + }, + name: { + /** + * name of the organization + */ + type: String, + optional: true, + max: 190, + }, + address1: { + /** + * address1 of the organization + */ + type: String, + optional: true, + max: 255, + }, + address2: { + /** + * address2 of the organization + */ + type: String, + optional: true, + max: 255, + }, + city: { + /** + * city of the organization + */ + type: String, + optional: true, + max: 255, + }, + state: { + /** + * state of the organization + */ + type: String, + optional: true, + max: 255, + }, + zip_code: { + /** + * zip_code of the organization + */ + type: String, + optional: true, + max: 50, + }, + country: { + /** + * country of the organization + */ + type: String, + optional: true, + max: 255, + }, + billing_email: { + /** + * billing_email of the organization + */ + type: String, + optional: true, + max: 255, + }, + createdAt: { + /** + * creation date of the organization + */ + type: Date, + // eslint-disable-next-line consistent-return + autoValue() { + if (this.isInsert) { + return new Date(); + } else { + this.unset(); + } + }, + }, + modifiedAt: { + type: Date, + denyUpdate: false, + // eslint-disable-next-line consistent-return + autoValue() { + if (this.isInsert || this.isUpsert || this.isUpdate) { + return new Date(); + } else { + this.unset(); + } + }, + }, + }), +); + +export default Org; |