Built motion from commit (unavailable).|2.5.31
[motion2.git] / server / api / cmContactHasPhone / cmContactHasPhone.controller.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 _0x0d67=['index','map','CmContactHasPhone','fieldName','type','key','model','query','intersection','attributes','fields','order','sort','where','filters','filter','VIRTUAL','include','findAll','rows','catch','show','params','rawAttributes','keys','length','includeAll','options','find','create','body','user','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','rimraf','zip-dir','moment','bluebird','mustache','util','sox','to-csv','ejs','lodash','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','status','json','offset','limit','undefined','count','set','Content-Range','apply','reject','save','update','then','destroy','get','CmContactHasPhones','UserProfileResource','error','stack','name','send','render','merge','contact','message','agent','interaction','account'];(function(_0x47e7cb,_0x4c1b8d){var _0x2a8874=function(_0x36498f){while(--_0x36498f){_0x47e7cb['push'](_0x47e7cb['shift']());}};_0x2a8874(++_0x4c1b8d);}(_0x0d67,0x7c));var _0x70d6=function(_0x1acb27,_0x346885){_0x1acb27=_0x1acb27-0x0;var _0x3fbad9=_0x0d67[_0x1acb27];return _0x3fbad9;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x70d6('0x0'));var zipdir=require(_0x70d6('0x1'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x70d6('0x2'));var BPromise=require(_0x70d6('0x3'));var Mustache=require(_0x70d6('0x4'));var util=require(_0x70d6('0x5'));var path=require('path');var sox=require(_0x70d6('0x6'));var csv=require(_0x70d6('0x7'));var ejs=require(_0x70d6('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x70d6('0x9'));var squel=require('squel');var crypto=require(_0x70d6('0xa'));var jsforce=require(_0x70d6('0xb'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x70d6('0xc'));var Papa=require(_0x70d6('0xd'));var Redis=require('ioredis');var authService=require(_0x70d6('0xe'));var qs=require(_0x70d6('0xf'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x70d6('0x10'));var logger=require(_0x70d6('0x11'))(_0x70d6('0x12'));var utils=require(_0x70d6('0x13'));var config=require(_0x70d6('0x14'));var licenseUtil=require('../../config/license/util');var db=require(_0x70d6('0x15'))['db'];function respondWithStatusCode(_0x53096e,_0x4325f5){_0x4325f5=_0x4325f5||0xcc;return function(_0x5ae9d6){if(_0x5ae9d6){return _0x53096e[_0x70d6('0x16')](_0x4325f5);}return _0x53096e['status'](_0x4325f5)[_0x70d6('0x17')]();};}function respondWithResult(_0x2c0679,_0x354af8){_0x354af8=_0x354af8||0xc8;return function(_0x1a882f){if(_0x1a882f){return _0x2c0679[_0x70d6('0x18')](_0x354af8)[_0x70d6('0x19')](_0x1a882f);}};}function respondWithFilteredResult(_0x2e8e3a,_0x580ff9){return function(_0x191cc5){if(_0x191cc5){var _0x2a5418=typeof _0x580ff9[_0x70d6('0x1a')]==='undefined'&&typeof _0x580ff9[_0x70d6('0x1b')]===_0x70d6('0x1c');var _0x476f0b=_0x191cc5['count'];var _0x50024d=_0x2a5418?0x0:_0x580ff9[_0x70d6('0x1a')];var _0x31a296=_0x2a5418?_0x191cc5[_0x70d6('0x1d')]:_0x580ff9[_0x70d6('0x1a')]+_0x580ff9[_0x70d6('0x1b')];var _0x3727f9;if(_0x31a296>=_0x476f0b){_0x31a296=_0x476f0b;_0x3727f9=0xc8;}else{_0x3727f9=0xce;}_0x2e8e3a[_0x70d6('0x18')](_0x3727f9);return _0x2e8e3a[_0x70d6('0x1e')](_0x70d6('0x1f'),_0x50024d+'-'+_0x31a296+'/'+_0x476f0b)[_0x70d6('0x19')](_0x191cc5);}return null;};}function patchUpdates(_0x313360){return function(_0x1265cf){try{jsonpatch[_0x70d6('0x20')](_0x1265cf,_0x313360,!![]);}catch(_0x1157c4){return BPromise[_0x70d6('0x21')](_0x1157c4);}return _0x1265cf[_0x70d6('0x22')]();};}function saveUpdates(_0x49f8f1,_0x1bf52c){return function(_0x42da7b){if(_0x42da7b){return _0x42da7b[_0x70d6('0x23')](_0x49f8f1)[_0x70d6('0x24')](function(_0x41eef1){return _0x41eef1;});}return null;};}function removeEntity(_0x510188,_0x1645fd){return function(_0x2bfba6){if(_0x2bfba6){return _0x2bfba6[_0x70d6('0x25')]()[_0x70d6('0x24')](function(){var _0x42ce68=_0x2bfba6[_0x70d6('0x26')]({'plain':!![]});var _0x47b657=_0x70d6('0x27');return db[_0x70d6('0x28')][_0x70d6('0x25')]({'where':{'type':_0x47b657,'resourceId':_0x42ce68['id']}})[_0x70d6('0x24')](function(){return _0x2bfba6;});})['then'](function(){_0x510188[_0x70d6('0x18')](0xcc)[_0x70d6('0x17')]();});}};}function handleEntityNotFound(_0x546fcd,_0x350573){return function(_0x194a90){if(!_0x194a90){_0x546fcd[_0x70d6('0x16')](0x194);}return _0x194a90;};}function handleError(_0x9edf6f,_0x67066b){_0x67066b=_0x67066b||0x1f4;return function(_0x353d3f){logger[_0x70d6('0x29')](_0x353d3f[_0x70d6('0x2a')]);if(_0x353d3f['name']){delete _0x353d3f[_0x70d6('0x2b')];}_0x9edf6f['status'](_0x67066b)[_0x70d6('0x2c')](_0x353d3f);};}function getMustacheRender(_0x4a75fc,_0x489d51){return Mustache[_0x70d6('0x2d')](_0x4a75fc,_[_0x70d6('0x2e')](_0x489d51['body'],{'contact':_0x489d51[_0x70d6('0x2f')],'message':_0x489d51[_0x70d6('0x30')],'agent':_0x489d51[_0x70d6('0x31')],'interaction':_0x489d51[_0x70d6('0x32')],'account':_0x489d51[_0x70d6('0x33')]}))||'';}exports[_0x70d6('0x34')]=function(_0x275465,_0x1d8ee1){var _0x153757={},_0xb4301f={},_0x32f808={'count':0x0,'rows':[]};var _0x554137=_[_0x70d6('0x35')](db[_0x70d6('0x36')]['rawAttributes'],function(_0x44143b){return{'name':_0x44143b[_0x70d6('0x37')],'type':_0x44143b[_0x70d6('0x38')][_0x70d6('0x39')]};});_0xb4301f[_0x70d6('0x3a')]=_[_0x70d6('0x35')](_0x554137,_0x70d6('0x2b'));_0xb4301f[_0x70d6('0x3b')]=_['keys'](_0x275465[_0x70d6('0x3b')]);_0xb4301f['filters']=_[_0x70d6('0x3c')](_0xb4301f[_0x70d6('0x3a')],_0xb4301f['query']);_0x153757[_0x70d6('0x3d')]=_[_0x70d6('0x3c')](_0xb4301f[_0x70d6('0x3a')],qs[_0x70d6('0x3e')](_0x275465[_0x70d6('0x3b')][_0x70d6('0x3e')]));_0x153757['attributes']=_0x153757[_0x70d6('0x3d')]['length']?_0x153757[_0x70d6('0x3d')]:_0xb4301f[_0x70d6('0x3a')];if(!_0x275465[_0x70d6('0x3b')]['hasOwnProperty']('nolimit')){_0x153757[_0x70d6('0x1b')]=qs[_0x70d6('0x1b')](_0x275465[_0x70d6('0x3b')][_0x70d6('0x1b')]);_0x153757['offset']=qs[_0x70d6('0x1a')](_0x275465['query'][_0x70d6('0x1a')]);}_0x153757[_0x70d6('0x3f')]=qs[_0x70d6('0x40')](_0x275465[_0x70d6('0x3b')]['sort']);_0x153757[_0x70d6('0x41')]=qs[_0x70d6('0x42')](_['pick'](_0x275465[_0x70d6('0x3b')],_0xb4301f[_0x70d6('0x42')]),_0x554137);if(_0x275465['query'][_0x70d6('0x43')]){_0x153757[_0x70d6('0x41')]=_[_0x70d6('0x2e')](_0x153757[_0x70d6('0x41')],{'$or':_['map'](_0x554137,function(_0x5187bd){if(_0x5187bd['type']!==_0x70d6('0x44')){var _0x58c114={};_0x58c114[_0x5187bd[_0x70d6('0x2b')]]={'$like':'%'+_0x275465[_0x70d6('0x3b')]['filter']+'%'};return _0x58c114;}})});}_0x153757=_[_0x70d6('0x2e')]({},_0x153757,_0x275465['options']);var _0x4c8617={'where':_0x153757[_0x70d6('0x41')]};return db[_0x70d6('0x36')][_0x70d6('0x1d')](_0x4c8617)[_0x70d6('0x24')](function(_0x946ffc){_0x32f808['count']=_0x946ffc;if(_0x275465[_0x70d6('0x3b')]['includeAll']){_0x153757[_0x70d6('0x45')]=[{'all':!![]}];}return db[_0x70d6('0x36')][_0x70d6('0x46')](_0x153757);})[_0x70d6('0x24')](function(_0x2a1cd9){_0x32f808[_0x70d6('0x47')]=_0x2a1cd9;return _0x32f808;})[_0x70d6('0x24')](respondWithFilteredResult(_0x1d8ee1,_0x153757))[_0x70d6('0x48')](handleError(_0x1d8ee1,null));};exports[_0x70d6('0x49')]=function(_0x21de8e,_0x3bb2dc){var _0x3d555e={'raw':!![],'where':{'id':_0x21de8e[_0x70d6('0x4a')]['id']}},_0x116d6c={};_0x116d6c[_0x70d6('0x3a')]=_['keys'](db[_0x70d6('0x36')][_0x70d6('0x4b')]);_0x116d6c[_0x70d6('0x3b')]=_[_0x70d6('0x4c')](_0x21de8e[_0x70d6('0x3b')]);_0x116d6c[_0x70d6('0x42')]=_[_0x70d6('0x3c')](_0x116d6c[_0x70d6('0x3a')],_0x116d6c[_0x70d6('0x3b')]);_0x3d555e[_0x70d6('0x3d')]=_['intersection'](_0x116d6c[_0x70d6('0x3a')],qs[_0x70d6('0x3e')](_0x21de8e[_0x70d6('0x3b')]['fields']));_0x3d555e[_0x70d6('0x3d')]=_0x3d555e[_0x70d6('0x3d')][_0x70d6('0x4d')]?_0x3d555e[_0x70d6('0x3d')]:_0x116d6c['model'];if(_0x21de8e[_0x70d6('0x3b')][_0x70d6('0x4e')]){_0x3d555e[_0x70d6('0x45')]=[{'all':!![]}];}_0x3d555e=_['merge']({},_0x3d555e,_0x21de8e[_0x70d6('0x4f')]);return db[_0x70d6('0x36')][_0x70d6('0x50')](_0x3d555e)[_0x70d6('0x24')](handleEntityNotFound(_0x3bb2dc,null))[_0x70d6('0x24')](respondWithResult(_0x3bb2dc,null))['catch'](handleError(_0x3bb2dc,null));};exports[_0x70d6('0x51')]=function(_0x57f283,_0xd4116d){return db[_0x70d6('0x36')][_0x70d6('0x51')](_0x57f283[_0x70d6('0x52')],{})[_0x70d6('0x24')](function(_0x1d36d2){var _0x1842db=_0x57f283[_0x70d6('0x53')]['get']({'plain':!![]});if(!_0x1842db)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x1842db['role']===_0x70d6('0x53')){var _0x25c61b=_0x1d36d2['get']({'plain':!![]});var _0x353e62='CmContactHasPhones';return db[_0x70d6('0x54')][_0x70d6('0x50')]({'where':{'name':_0x353e62,'userProfileId':_0x1842db[_0x70d6('0x55')]},'raw':!![]})[_0x70d6('0x24')](function(_0x1f65fc){if(_0x1f65fc&&_0x1f65fc[_0x70d6('0x56')]===0x0){return db[_0x70d6('0x28')][_0x70d6('0x51')]({'name':_0x25c61b[_0x70d6('0x2b')],'resourceId':_0x25c61b['id'],'type':_0x1f65fc['name'],'sectionId':_0x1f65fc['id']},{})[_0x70d6('0x24')](function(){return _0x1d36d2;});}else{return _0x1d36d2;}})['catch'](function(_0x5a2fc6){logger[_0x70d6('0x29')](_0x70d6('0x57'),_0x5a2fc6);throw _0x5a2fc6;});}return _0x1d36d2;})[_0x70d6('0x24')](respondWithResult(_0xd4116d,0xc9))['catch'](handleError(_0xd4116d,null));};exports[_0x70d6('0x23')]=function(_0x43fd33,_0x2864d3){if(_0x43fd33['body']['id']){delete _0x43fd33[_0x70d6('0x52')]['id'];}return db['CmContactHasPhone'][_0x70d6('0x50')]({'where':{'id':_0x43fd33[_0x70d6('0x4a')]['id']}})[_0x70d6('0x24')](handleEntityNotFound(_0x2864d3,null))['then'](saveUpdates(_0x43fd33['body'],null))[_0x70d6('0x24')](respondWithResult(_0x2864d3,null))[_0x70d6('0x48')](handleError(_0x2864d3,null));};exports[_0x70d6('0x25')]=function(_0x3c31a2,_0x2fae8c){return db[_0x70d6('0x36')][_0x70d6('0x50')]({'where':{'id':_0x3c31a2[_0x70d6('0x4a')]['id']}})[_0x70d6('0x24')](handleEntityNotFound(_0x2fae8c,null))[_0x70d6('0x24')](removeEntity(_0x2fae8c,null))[_0x70d6('0x48')](handleError(_0x2fae8c,null));};