Update stuff
This commit is contained in:
parent
0254e42b9c
commit
553ba9db9a
40 changed files with 7343 additions and 717 deletions
|
@ -3,13 +3,11 @@ export default function (sequelize, DataTypes) {
|
|||
id: { type: DataTypes.UUID, defaultValue: DataTypes.UUIDV4, primaryKey: true },
|
||||
activatedAt: { type: DataTypes.DATE },
|
||||
email: DataTypes.STRING,
|
||||
}, {
|
||||
classMethods: {
|
||||
associate: (models) => {
|
||||
Activation.belongsTo(models.user);
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
Activation.associate = function associate(models) {
|
||||
Activation.belongsTo(models.user);
|
||||
};
|
||||
|
||||
return Activation;
|
||||
}
|
||||
|
|
|
@ -29,21 +29,24 @@ export default function (sequelize, DataTypes) {
|
|||
fields: ['userId'],
|
||||
},
|
||||
],
|
||||
classMethods: {
|
||||
accessed: (id) => sequelize.query(`
|
||||
UPDATE files
|
||||
SET "downloads" = downloads + 1, "accessedAt" = NOW()
|
||||
WHERE "id" = :id`,
|
||||
{
|
||||
replacements: { id },
|
||||
type: sequelize.QueryTypes.UPDATE,
|
||||
}),
|
||||
associate: (models) => {
|
||||
File.belongsTo(models.user);
|
||||
File.hasOne(models.malware);
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
File.accessed = function accessed(id) {
|
||||
sequelize.query(`
|
||||
UPDATE files
|
||||
SET "downloads" = downloads + 1, "accessedAt" = NOW()
|
||||
WHERE "id" = :id`,
|
||||
{
|
||||
replacements: { id },
|
||||
type: sequelize.QueryTypes.UPDATE,
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
File.associate = function associate(models) {
|
||||
File.belongsTo(models.user);
|
||||
File.hasOne(models.malware);
|
||||
};
|
||||
|
||||
return File;
|
||||
}
|
||||
|
|
|
@ -3,12 +3,14 @@ import path from 'path';
|
|||
import Sequelize from 'sequelize';
|
||||
|
||||
import debugname from 'debug';
|
||||
|
||||
const debug = debugname('hostr:models');
|
||||
|
||||
const config = {
|
||||
dialect: 'postgres',
|
||||
protocol: 'postgres',
|
||||
logging: debug,
|
||||
quoteIdentifiers: true,
|
||||
logging: false,
|
||||
};
|
||||
|
||||
const sequelize = new Sequelize(process.env.DATABASE_URL, config);
|
||||
|
@ -16,7 +18,7 @@ const db = {};
|
|||
|
||||
fs
|
||||
.readdirSync(__dirname)
|
||||
.filter((file) => (file.indexOf('.') !== 0) && (file !== 'index.js'))
|
||||
.filter(file => (file.indexOf('.') !== 0) && (file !== 'index.js'))
|
||||
.forEach((file) => {
|
||||
const model = sequelize.import(path.join(__dirname, file));
|
||||
db[model.name] = model;
|
||||
|
|
|
@ -9,12 +9,11 @@ export default function (sequelize, DataTypes) {
|
|||
fields: ['ip'],
|
||||
},
|
||||
],
|
||||
classMethods: {
|
||||
associate: (models) => {
|
||||
Login.belongsTo(models.user);
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
Login.associate = function associate(models) {
|
||||
Login.belongsTo(models.user);
|
||||
};
|
||||
|
||||
return Login;
|
||||
}
|
||||
|
|
|
@ -3,13 +3,11 @@ export default function (sequelize, DataTypes) {
|
|||
fileId: { type: DataTypes.STRING(12), primaryKey: true }, // eslint-disable-line new-cap
|
||||
positives: DataTypes.INTEGER,
|
||||
virustotal: DataTypes.JSON,
|
||||
}, {
|
||||
classMethods: {
|
||||
associate: (models) => {
|
||||
Malware.belongsTo(models.file);
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
Malware.associate = function associate(models) {
|
||||
Malware.belongsTo(models.file);
|
||||
};
|
||||
|
||||
return Malware;
|
||||
}
|
||||
|
|
|
@ -1,13 +1,11 @@
|
|||
export default function (sequelize, DataTypes) {
|
||||
const Remember = sequelize.define('remember', {
|
||||
id: { type: DataTypes.UUID, defaultValue: DataTypes.UUIDV4, primaryKey: true },
|
||||
}, {
|
||||
classMethods: {
|
||||
associate: (models) => {
|
||||
Remember.belongsTo(models.user);
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
Remember.associate = function associate(models) {
|
||||
Remember.belongsTo(models.user);
|
||||
};
|
||||
|
||||
return Remember;
|
||||
}
|
||||
|
|
|
@ -1,13 +1,11 @@
|
|||
export default function (sequelize, DataTypes) {
|
||||
const Reset = sequelize.define('reset', {
|
||||
id: { type: DataTypes.UUID, defaultValue: DataTypes.UUIDV4, primaryKey: true },
|
||||
}, {
|
||||
classMethods: {
|
||||
associate: (models) => {
|
||||
Reset.belongsTo(models.user);
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
Reset.associate = function associate(models) {
|
||||
Reset.belongsTo(models.user);
|
||||
};
|
||||
|
||||
return Reset;
|
||||
}
|
||||
|
|
|
@ -12,12 +12,11 @@ export default function (sequelize, DataTypes) {
|
|||
fields: ['userId'],
|
||||
},
|
||||
],
|
||||
classMethods: {
|
||||
associate: (models) => {
|
||||
Transaction.belongsTo(models.user);
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
Transaction.associate = function associate(models) {
|
||||
Transaction.belongsTo(models.user);
|
||||
};
|
||||
|
||||
return Transaction;
|
||||
}
|
||||
|
|
|
@ -16,14 +16,13 @@ export default function (sequelize, DataTypes) {
|
|||
fields: ['email'],
|
||||
},
|
||||
],
|
||||
classMethods: {
|
||||
associate: (models) => {
|
||||
User.hasMany(models.file);
|
||||
User.hasMany(models.transaction);
|
||||
User.hasOne(models.activation);
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
User.associate = function associate(models) {
|
||||
User.hasMany(models.file);
|
||||
User.hasMany(models.transaction);
|
||||
User.hasOne(models.activation);
|
||||
};
|
||||
|
||||
return User;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue