3 var fs = require("fs");
4 var path = require("path");
5 var config = require('../config/environment');
6 var Sequelize = require("sequelize");
7 var moment = require('moment');
9 //Used to disable all warnings for Promise!
10 Sequelize.Promise.config({
11 // Enables all warnings except forgotten return statements.
13 wForgottenReturn: false
17 var sequelize = new Sequelize(config.db.database, config.db.username, config.db.password, {
20 timezone: moment().format("Z"),
24 collate: 'utf8_general_ci'
31 .readdirSync(__dirname)
32 .filter(function(file) {
33 return (fs.lstatSync(path.join(__dirname, file)).isFile()) &&
34 (file.indexOf(".") !== 0) && (file.indexOf('.spec.') === -1) && (file !== "index.js");
36 .forEach(function(file) {
37 var model = sequelize["import"](path.join(__dirname, file));
38 db[model.name] = model;
41 // Invoke associations on each of the models
42 Object.keys(db).forEach(function(modelName) {
43 if (db[modelName].options.hasOwnProperty('associate')) {
44 db[modelName].options.associate(db);
50 var sequelize_history = new Sequelize(config.db_history.database, config.db_history.username, config.db_history.password, {
51 host: config.db_history.host,
53 timezone: moment().format("Z"),
57 collate: 'utf8_general_ci'
62 .readdirSync(path.join(__dirname, 'history'))
63 .filter(function(file) {
64 return (fs.lstatSync(path.join(__dirname, 'history', file)).isFile()) &&
65 (file.indexOf(".") !== 0) && (file.indexOf('.spec.') === -1) && (file !== "index.js");
67 .forEach(function(file) {
68 var model = sequelize_history["import"](path.join(__dirname, 'history', file));
69 db.history[model.name] = model;
72 // Invoke associations on each of the models
73 Object.keys(db.history).forEach(function(modelName) {
74 if (db.history[modelName].options.hasOwnProperty('associate')) {
75 db.history[modelName].options.associate(db.history);
79 db.sequelize = sequelize;
80 db.sequelize_history = sequelize_history;
81 db.Sequelize = Sequelize;