5 module.exports = function(sequelize, DataTypes) {
7 var Contact = sequelize.define('Contact', {
9 type: DataTypes.STRING,
14 lastName: DataTypes.STRING,
16 type: DataTypes.STRING,
19 if (this.getDataValue('tags')) {
20 tags = this.getDataValue('tags').split(';');
21 if (tags.length > 1) {
24 tags = []; //if the length is 1 the value is still in the format of the old tags, with comma separator. So I return an empty array since the old format is obsolete and invalid
32 this.setDataValue('tags', val && val.length ? val.join(';') + ';' : null);
35 street: DataTypes.STRING,
36 postalCode: DataTypes.STRING,
37 city: DataTypes.STRING,
38 country: DataTypes.STRING,
39 dateOfBirth: DataTypes.STRING,
40 description: DataTypes.TEXT,
41 phone: DataTypes.STRING,
42 mobile: DataTypes.STRING,
43 fax: DataTypes.STRING,
44 email: DataTypes.STRING,
45 url: DataTypes.STRING,
46 planningtime: DataTypes.DATE
48 tableName: 'cm_contacts',
49 associate: function(models) {
50 Contact.belongsTo(models.Company);
51 Contact.belongsTo(models.User);
52 Contact.belongsTo(models.List);
53 Contact.addScope('list', {
54 include: [models.List]
56 Contact.addScope('company', {
57 include: [models.Company]
59 Contact.addScope('user', {
60 include: [models.User]
62 Contact.addScope('company_list_filter', function(query) {
66 if (query.CompanyId) {
67 scope.where.CompanyId = query.CompanyId;
70 scope.where.ListId = query.ListId;