417e9fe05952580bba79a03d235fb3206cda5903
[motion2.git] / server / components / interaction / utils.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0xba15=['../../config/logger','openchannel-interactions','mail-interactions','sms-interactions','chat-interactions','capitalize','chat','Website','Account','InteractionId','upperFirst','accounts','_interaction_has_tags','_messages','_interactions','isArray','toUpperCase','role','stringify','null','Interaction','findOne','then','update','info','catch','lodash','../../mysqldb'];(function(_0x342a26,_0x252831){var _0x2e2ea6=function(_0x4be522){while(--_0x4be522){_0x342a26['push'](_0x342a26['shift']());}};_0x2e2ea6(++_0x252831);}(_0xba15,0x1da));var _0x5ba1=function(_0xaf9389,_0x458ea4){_0xaf9389=_0xaf9389-0x0;var _0x4ff445=_0xba15[_0xaf9389];return _0x4ff445;};'use strict';var _=require(_0x5ba1('0x0'));var db=require(_0x5ba1('0x1'))['db'];var loggers={'openchannel':require(_0x5ba1('0x2'))(_0x5ba1('0x3')),'mail':require(_0x5ba1('0x2'))(_0x5ba1('0x4')),'fax':require(_0x5ba1('0x2'))('fax-interactions'),'sms':require(_0x5ba1('0x2'))(_0x5ba1('0x5')),'chat':require(_0x5ba1('0x2'))(_0x5ba1('0x6')),'whatsapp':require(_0x5ba1('0x2'))('whatsapp-interactions')};function getAccountFK(_0x1fe7c0){return _[_0x5ba1('0x7')](_0x1fe7c0)+(_0x1fe7c0===_0x5ba1('0x8')?_0x5ba1('0x9'):_0x5ba1('0xa'))+'Id';}function getInteractionFK(_0x267429){return _[_0x5ba1('0x7')](_0x267429)+_0x5ba1('0xb');}function getInteractionId(_0xc7cb4b,_0x5e9b56,_0x3e09e4){if(_0xc7cb4b&&_0xc7cb4b[_[_0x5ba1('0xc')](_0x3e09e4)+_0x5ba1('0xb')]){return _0xc7cb4b[_[_0x5ba1('0xc')](_0x3e09e4)+_0x5ba1('0xb')];}else if(_0xc7cb4b&&_0xc7cb4b['id']){return _0xc7cb4b['id'];}else if(_0x5e9b56&&_0x5e9b56['id']){return _0x5e9b56['id'];}else{return'unknown';}}function getInteractionsTables(_0x1cd306){return{'accounts':_0x1cd306+'_'+(_0x1cd306==='chat'?'websites':_0x5ba1('0xd')),'interactions':_0x1cd306+'_interactions','interactionsTags':_0x1cd306+_0x5ba1('0xe'),'messages':_0x1cd306+_0x5ba1('0xf'),'userInteractions':'user_has_'+_0x1cd306+_0x5ba1('0x10')};}function getSelectedTags(_0x2a4b06){var _0x3f6349=[];if(_0x2a4b06){_0x3f6349=Array[_0x5ba1('0x11')](_0x2a4b06)?_0x2a4b06:[_0x2a4b06];}return _0x3f6349;}function log(_0x244dd9,_0x4da14f,_0x567edd,_0x16a7ae,_0x34e5b3,_0x274c44){loggers[_0x34e5b3['toLowerCase']()][_0x244dd9]('[%s]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x274c44[_0x5ba1('0x12')](),_0x4da14f?_0x4da14f['id']:null,_0x4da14f?_0x4da14f['name']:null,_0x4da14f?_0x4da14f[_0x5ba1('0x13')]:null,getInteractionId(_0x567edd,_0x16a7ae,_0x34e5b3),_0x567edd?JSON[_0x5ba1('0x14')](_0x567edd):_0x5ba1('0x15'));}function updateUser(_0x56294d,_0x47d03c,_0x2aecc7,_0x26dd05,_0x58377e){db[_['upperFirst'](_0x26dd05)+_0x5ba1('0x16')][_0x5ba1('0x17')]({'where':{'id':getInteractionId(_0x47d03c,_0x2aecc7,_0x26dd05)}})[_0x5ba1('0x18')](function(_0xbe5c7c){if(_0xbe5c7c){return _0xbe5c7c[_0x5ba1('0x19')]({'UserId':_0x56294d?_0x56294d['id']:null});}})[_0x5ba1('0x18')](function(_0x4b5aef){if(_0x4b5aef){log(_0x5ba1('0x1a'),_0x56294d,_0x47d03c,_0x2aecc7,_0x26dd05,_0x58377e);}})[_0x5ba1('0x1b')](function(){log('error',_0x56294d,_0x47d03c,_0x2aecc7,_0x26dd05,_0x58377e);});}module['exports']={'getAccountFK':getAccountFK,'getInteractionFK':getInteractionFK,'getInteractionsTables':getInteractionsTables,'getSelectedTags':getSelectedTags,'updateUser':updateUser};