From c1afd52db3be8f052d683bcbf863006a173497cf Mon Sep 17 00:00:00 2001 From: Daniele Cinti Date: Tue, 13 Sep 2016 15:51:52 +0200 Subject: [PATCH] Built motion from commit 5fb560b.|0.0.141 --- release-notes/changelog_0.0.141.txt | 2 + server/api/mail_account/mail_account.controller.js | 1 - server/config/ami/acw.js | 3 +- server/config/ami/call.js | 1 - server/config/tools/user.js | 18 ++++++---- server/models/user.js | 35 ++++++++------------ 6 files changed, 29 insertions(+), 31 deletions(-) diff --git a/release-notes/changelog_0.0.141.txt b/release-notes/changelog_0.0.141.txt index f805e39..9e208ed 100644 --- a/release-notes/changelog_0.0.141.txt +++ b/release-notes/changelog_0.0.141.txt @@ -1,5 +1,7 @@ # xCALLY MOTION Changelog +- * 5fb560b - 2016-09-13: server side config/ami + config/tools update +- * 51d6d3e - 2016-09-13: server side update - * 9750695 - 2016-09-13: fix duplicate events - * 0cbc254 - 2016-09-13: server side models interval + user - * 0c84ddb - 2016-09-13: sever side update tools + app.js diff --git a/server/api/mail_account/mail_account.controller.js b/server/api/mail_account/mail_account.controller.js index fe294ee..31adb32 100644 --- a/server/api/mail_account/mail_account.controller.js +++ b/server/api/mail_account/mail_account.controller.js @@ -20,7 +20,6 @@ var Interval = require('../../models').Interval; // Get list of mailAccounts exports.index = function(req, res) { - console.log('index'); return MailAccount .scope('default') .findAndCountAll(Util.getQuery(req.query)) diff --git a/server/config/ami/acw.js b/server/config/ami/acw.js index 397d55f..b62591f 100644 --- a/server/config/ami/acw.js +++ b/server/config/ami/acw.js @@ -9,13 +9,14 @@ var VoiceQueue = require('../../models').VoiceQueue; var Agent = require('../../models').User; var Action = require('../../models').Action; var ReportAgent = require('../../models').ReportAgent; + var _voiceQueues; var _agents; var activeAcw = {}; function ACW(ami) { console.log('ACW Initialization...'); - return VoiceQueue + VoiceQueue .findAll() .then(function(voiceQueues) { _voiceQueues = voiceQueues; diff --git a/server/config/ami/call.js b/server/config/ami/call.js index addcd41..f655c32 100644 --- a/server/config/ami/call.js +++ b/server/config/ami/call.js @@ -22,7 +22,6 @@ function create(evt) { defaults: evt }) .spread(function(call, created) { - console.log('call', call); if (!created) { if (evt.answertime) { diff --git a/server/config/tools/user.js b/server/config/tools/user.js index dc22113..3ac3cce 100644 --- a/server/config/tools/user.js +++ b/server/config/tools/user.js @@ -23,33 +23,37 @@ function User() { }); emitter.on('User.beforeUpdate', function(doc, options) { - if (doc.changed('internal')) { + if (options.changed.internal) { throw new Error('You can\'t modify the internal of a User/Agent/Telephone'); } }); emitter.on('User.afterUpdate', function(doc, options) { - if (!doc.changed('status') && !doc.changed('queueStatus') && !doc.changed('callerid') && !doc.changed('lastLoginAt') && !doc.changed('online')) { + if (!options.changed.status && + !options.changed.queueStatus && + !options.changed.callerid && + !options.changed.lastLoginAt && + !options.changed.online) { return Promise .all([]) .then(createCallerID(doc, options)) .then(function() { - if ((doc.chanspy && doc.changed('chanspy'))) { + if (doc.chanspy && options.changed.chanspy) { return createChanspy(doc, options); } }) .then(function() { - if (doc.chanspy && !doc.changed('chanspy') && doc.changed('name')) { + if (doc.chanspy && !options.changed.chanspy && options.changed.name) { return deleteChanSpy(doc, options); } }) .then(function() { - if (doc.chanspy && !doc.changed('chanspy') && doc.changed('name')) { + if (doc.chanspy && !options.changed.chanspy && options.changed.name) { return createChanspy(doc, options); } }) .then(function() { - if (!doc.chanspy && doc.changed('chanspy')) { + if (!doc.chanspy && options.changed.chanspy) { return deleteChanSpy(doc, options); } }) @@ -141,7 +145,7 @@ function deleteChanSpy(doc, options) { function createCallerID(doc, options) { return function() { // devo aspettare che ci siano entrambi i campi - if (doc.fullname && doc.internal && doc.changed('fullname')) { + if (doc.fullname && doc.internal && options.changed.fullname) { console.log('Creating callerID...'); doc.callerid = util.format('"%s" <%s>', doc.fullname, doc.internal); return doc.save({ diff --git a/server/models/user.js b/server/models/user.js index 440a54a..3877344 100644 --- a/server/models/user.js +++ b/server/models/user.js @@ -744,17 +744,6 @@ module.exports = function(sequelize, DataTypes) { } }, { tableName: 'users', - hooks: { - afterCreate: function(doc) { - emitter.to(['master']).emit('User.afterCreate', doc); - }, - afterUpdate: function(doc) { - emitter.to(['master']).emit('User.afterUpdate', doc); - }, - afterDestroy: function(doc) { - emitter.to(['master']).emit('User.afterDestroy', doc); - } - }, instanceMethods: { /** * Authenticate - check if the passwords are the same @@ -1078,16 +1067,20 @@ module.exports = function(sequelize, DataTypes) { return scope; }); }, - afterCreate: function(doc, options) { - emitter.to(['master']).emit('User.afterCreate', doc, { - body: options.body - }); - }, - afterUpdate: function(doc, options) { - emitter.to(['master']).emit('User.afterUpdate', doc); - }, - afterDestroy: function(doc, options) { - emitter.to(['master']).emit('User.afterDestroy', doc); + hooks: { + afterCreate: function(doc, options) { + emitter.to(['master']).emit('User.afterCreate', doc, { + body: options.body + }); + }, + afterUpdate: function(doc, options) { + emitter.to(['master']).emit('User.afterUpdate', doc, { + changed: _.keyBy(doc.changed()) + }); + }, + afterDestroy: function(doc, options) { + emitter.to(['master']).emit('User.afterDestroy', doc); + } } }); -- 1.7.1