Built motion from commit 06eb8eb0.|2.6.31
[motion2.git] / server / api / cmHopperAdditionalPhone / cmHopperAdditionalPhone.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 _0x5d54=['include','findAll','params','keys','catch','create','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','UserProfileSection','userProfileId','update','body','find','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','destroy','then','get','status','end','sendStatus','error','stack','name','index','CmHopperAdditionalPhone','rawAttributes','type','key','model','map','filters','intersection','query','attributes','fields','length','hasOwnProperty','nolimit','sort','where','pick','filter','merge','includeAll'];(function(_0x321bb2,_0x202794){var _0x9c12ed=function(_0x263dd3){while(--_0x263dd3){_0x321bb2['push'](_0x321bb2['shift']());}};_0x9c12ed(++_0x202794);}(_0x5d54,0x14e));var _0x45d5=function(_0xcd3753,_0x5f170f){_0xcd3753=_0xcd3753-0x0;var _0x4831f1=_0x5d54[_0xcd3753];return _0x4831f1;};'use strict';var emlformat=require(_0x45d5('0x0'));var rimraf=require(_0x45d5('0x1'));var zipdir=require(_0x45d5('0x2'));var jsonpatch=require(_0x45d5('0x3'));var rp=require(_0x45d5('0x4'));var moment=require(_0x45d5('0x5'));var BPromise=require(_0x45d5('0x6'));var Mustache=require(_0x45d5('0x7'));var util=require(_0x45d5('0x8'));var path=require(_0x45d5('0x9'));var sox=require(_0x45d5('0xa'));var csv=require(_0x45d5('0xb'));var ejs=require(_0x45d5('0xc'));var fs=require('fs');var fs_extra=require(_0x45d5('0xd'));var _=require(_0x45d5('0xe'));var squel=require('squel');var crypto=require(_0x45d5('0xf'));var jsforce=require(_0x45d5('0x10'));var deskjs=require('desk.js');var toCsv=require(_0x45d5('0xb'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x45d5('0x11'));var qs=require(_0x45d5('0x12'));var as=require(_0x45d5('0x13'));var hardwareService=require(_0x45d5('0x14'));var logger=require('../../config/logger')(_0x45d5('0x15'));var utils=require(_0x45d5('0x16'));var config=require(_0x45d5('0x17'));var licenseUtil=require(_0x45d5('0x18'));var db=require(_0x45d5('0x19'))['db'];function respondWithStatusCode(_0x3f6e23,_0x339e27){_0x339e27=_0x339e27||0xcc;return function(_0x27cc4c){if(_0x27cc4c){return _0x3f6e23['sendStatus'](_0x339e27);}return _0x3f6e23['status'](_0x339e27)['end']();};}function respondWithResult(_0xf736a8,_0x329849){_0x329849=_0x329849||0xc8;return function(_0x9bd7c9){if(_0x9bd7c9){return _0xf736a8['status'](_0x329849)[_0x45d5('0x1a')](_0x9bd7c9);}};}function respondWithFilteredResult(_0x123e50,_0x4a0c40){return function(_0x3f15f4){if(_0x3f15f4){var _0x5378dc=typeof _0x4a0c40[_0x45d5('0x1b')]===_0x45d5('0x1c')&&typeof _0x4a0c40[_0x45d5('0x1d')]===_0x45d5('0x1c');var _0x52a60b=_0x3f15f4[_0x45d5('0x1e')];var _0x5db259=_0x5378dc?0x0:_0x4a0c40[_0x45d5('0x1b')];var _0x1204ff=_0x5378dc?_0x3f15f4[_0x45d5('0x1e')]:_0x4a0c40[_0x45d5('0x1b')]+_0x4a0c40[_0x45d5('0x1d')];var _0x5123ee;if(_0x1204ff>=_0x52a60b){_0x1204ff=_0x52a60b;_0x5123ee=0xc8;}else{_0x5123ee=0xce;}_0x123e50['status'](_0x5123ee);return _0x123e50[_0x45d5('0x1f')](_0x45d5('0x20'),_0x5db259+'-'+_0x1204ff+'/'+_0x52a60b)['json'](_0x3f15f4);}return null;};}function patchUpdates(_0x4b06ee){return function(_0x294b47){try{jsonpatch[_0x45d5('0x21')](_0x294b47,_0x4b06ee,!![]);}catch(_0xb5924d){return BPromise[_0x45d5('0x22')](_0xb5924d);}return _0x294b47[_0x45d5('0x23')]();};}function saveUpdates(_0x1c1e6d,_0xc51856){return function(_0x18e353){if(_0x18e353){return _0x18e353['update'](_0x1c1e6d)['then'](function(_0x1ac511){return _0x1ac511;});}return null;};}function removeEntity(_0x427818,_0x4721f0){return function(_0x365d72){if(_0x365d72){return _0x365d72[_0x45d5('0x24')]()[_0x45d5('0x25')](function(){var _0x58f278=_0x365d72[_0x45d5('0x26')]({'plain':!![]});var _0x2da742='CmHopperAdditionalPhones';return db['UserProfileResource'][_0x45d5('0x24')]({'where':{'type':_0x2da742,'resourceId':_0x58f278['id']}})[_0x45d5('0x25')](function(){return _0x365d72;});})[_0x45d5('0x25')](function(){_0x427818[_0x45d5('0x27')](0xcc)[_0x45d5('0x28')]();});}};}function handleEntityNotFound(_0x2edf4e,_0x3b6aa6){return function(_0x4a5b13){if(!_0x4a5b13){_0x2edf4e[_0x45d5('0x29')](0x194);}return _0x4a5b13;};}function handleError(_0x76082a,_0x488369){_0x488369=_0x488369||0x1f4;return function(_0x321a7d){logger[_0x45d5('0x2a')](_0x321a7d[_0x45d5('0x2b')]);if(_0x321a7d['name']){delete _0x321a7d[_0x45d5('0x2c')];}_0x76082a[_0x45d5('0x27')](_0x488369)['send'](_0x321a7d);};}exports[_0x45d5('0x2d')]=function(_0x593f72,_0x329d60){var _0x4bc61e={},_0x421f83={},_0x342fd7={'count':0x0,'rows':[]};var _0x49f958=_['map'](db[_0x45d5('0x2e')][_0x45d5('0x2f')],function(_0x37a2ca){return{'name':_0x37a2ca['fieldName'],'type':_0x37a2ca[_0x45d5('0x30')][_0x45d5('0x31')]};});_0x421f83[_0x45d5('0x32')]=_[_0x45d5('0x33')](_0x49f958,_0x45d5('0x2c'));_0x421f83['query']=_['keys'](_0x593f72['query']);_0x421f83[_0x45d5('0x34')]=_[_0x45d5('0x35')](_0x421f83['model'],_0x421f83[_0x45d5('0x36')]);_0x4bc61e[_0x45d5('0x37')]=_[_0x45d5('0x35')](_0x421f83[_0x45d5('0x32')],qs[_0x45d5('0x38')](_0x593f72[_0x45d5('0x36')][_0x45d5('0x38')]));_0x4bc61e[_0x45d5('0x37')]=_0x4bc61e[_0x45d5('0x37')][_0x45d5('0x39')]?_0x4bc61e[_0x45d5('0x37')]:_0x421f83[_0x45d5('0x32')];if(!_0x593f72[_0x45d5('0x36')][_0x45d5('0x3a')](_0x45d5('0x3b'))){_0x4bc61e[_0x45d5('0x1d')]=qs[_0x45d5('0x1d')](_0x593f72[_0x45d5('0x36')][_0x45d5('0x1d')]);_0x4bc61e[_0x45d5('0x1b')]=qs[_0x45d5('0x1b')](_0x593f72[_0x45d5('0x36')][_0x45d5('0x1b')]);}_0x4bc61e['order']=qs[_0x45d5('0x3c')](_0x593f72[_0x45d5('0x36')][_0x45d5('0x3c')]);_0x4bc61e[_0x45d5('0x3d')]=qs[_0x45d5('0x34')](_[_0x45d5('0x3e')](_0x593f72[_0x45d5('0x36')],_0x421f83[_0x45d5('0x34')]),_0x49f958);if(_0x593f72[_0x45d5('0x36')][_0x45d5('0x3f')]){_0x4bc61e[_0x45d5('0x3d')]=_['merge'](_0x4bc61e[_0x45d5('0x3d')],{'$or':_['map'](_0x49f958,function(_0x27547d){if(_0x27547d[_0x45d5('0x30')]!=='VIRTUAL'){var _0x1375ec={};_0x1375ec[_0x27547d['name']]={'$like':'%'+_0x593f72['query'][_0x45d5('0x3f')]+'%'};return _0x1375ec;}})});}_0x4bc61e=_[_0x45d5('0x40')]({},_0x4bc61e,_0x593f72['options']);var _0x1dbe6f={'where':_0x4bc61e['where']};return db['CmHopperAdditionalPhone'][_0x45d5('0x1e')](_0x1dbe6f)[_0x45d5('0x25')](function(_0x521272){_0x342fd7[_0x45d5('0x1e')]=_0x521272;if(_0x593f72[_0x45d5('0x36')][_0x45d5('0x41')]){_0x4bc61e[_0x45d5('0x42')]=[{'all':!![]}];}return db['CmHopperAdditionalPhone'][_0x45d5('0x43')](_0x4bc61e);})[_0x45d5('0x25')](function(_0xedac3){_0x342fd7['rows']=_0xedac3;return _0x342fd7;})['then'](respondWithFilteredResult(_0x329d60,_0x4bc61e))['catch'](handleError(_0x329d60,null));};exports['show']=function(_0x1ef453,_0x573725){var _0x5d2787={'raw':!![],'where':{'id':_0x1ef453[_0x45d5('0x44')]['id']}},_0x16c5f1={};_0x16c5f1[_0x45d5('0x32')]=_[_0x45d5('0x45')](db[_0x45d5('0x2e')][_0x45d5('0x2f')]);_0x16c5f1[_0x45d5('0x36')]=_[_0x45d5('0x45')](_0x1ef453[_0x45d5('0x36')]);_0x16c5f1[_0x45d5('0x34')]=_['intersection'](_0x16c5f1[_0x45d5('0x32')],_0x16c5f1[_0x45d5('0x36')]);_0x5d2787['attributes']=_[_0x45d5('0x35')](_0x16c5f1['model'],qs[_0x45d5('0x38')](_0x1ef453[_0x45d5('0x36')]['fields']));_0x5d2787[_0x45d5('0x37')]=_0x5d2787[_0x45d5('0x37')][_0x45d5('0x39')]?_0x5d2787['attributes']:_0x16c5f1[_0x45d5('0x32')];if(_0x1ef453['query'][_0x45d5('0x41')]){_0x5d2787['include']=[{'all':!![]}];}_0x5d2787=_[_0x45d5('0x40')]({},_0x5d2787,_0x1ef453['options']);return db['CmHopperAdditionalPhone']['find'](_0x5d2787)[_0x45d5('0x25')](handleEntityNotFound(_0x573725,null))[_0x45d5('0x25')](respondWithResult(_0x573725,null))[_0x45d5('0x46')](handleError(_0x573725,null));};exports['create']=function(_0x5896ae,_0x348fd6){return db[_0x45d5('0x2e')][_0x45d5('0x47')](_0x5896ae['body'],{})['then'](function(_0x63fb66){var _0x4979fa=_0x5896ae['user'][_0x45d5('0x26')]({'plain':!![]});if(!_0x4979fa)throw new Error(_0x45d5('0x48'));if(_0x4979fa[_0x45d5('0x49')]===_0x45d5('0x4a')){var _0x542b3b=_0x63fb66[_0x45d5('0x26')]({'plain':!![]});var _0x563401='CmHopperAdditionalPhones';return db[_0x45d5('0x4b')]['find']({'where':{'name':_0x563401,'userProfileId':_0x4979fa[_0x45d5('0x4c')]},'raw':!![]})[_0x45d5('0x25')](function(_0x262006){if(_0x262006&&_0x262006['autoAssociation']===0x0){return db['UserProfileResource'][_0x45d5('0x47')]({'name':_0x542b3b[_0x45d5('0x2c')],'resourceId':_0x542b3b['id'],'type':_0x262006[_0x45d5('0x2c')],'sectionId':_0x262006['id']},{})[_0x45d5('0x25')](function(){return _0x63fb66;});}else{return _0x63fb66;}})[_0x45d5('0x46')](function(_0x5413ab){logger[_0x45d5('0x2a')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x5413ab);throw _0x5413ab;});}return _0x63fb66;})[_0x45d5('0x25')](respondWithResult(_0x348fd6,0xc9))[_0x45d5('0x46')](handleError(_0x348fd6,null));};exports[_0x45d5('0x4d')]=function(_0x539f00,_0x4fc288){if(_0x539f00['body']['id']){delete _0x539f00[_0x45d5('0x4e')]['id'];}return db[_0x45d5('0x2e')][_0x45d5('0x4f')]({'where':{'id':_0x539f00[_0x45d5('0x44')]['id']}})['then'](handleEntityNotFound(_0x4fc288,null))[_0x45d5('0x25')](saveUpdates(_0x539f00['body'],null))[_0x45d5('0x25')](respondWithResult(_0x4fc288,null))[_0x45d5('0x46')](handleError(_0x4fc288,null));};exports[_0x45d5('0x24')]=function(_0x282390,_0x9efbe8){return db[_0x45d5('0x2e')][_0x45d5('0x4f')]({'where':{'id':_0x282390[_0x45d5('0x44')]['id']}})[_0x45d5('0x25')](handleEntityNotFound(_0x9efbe8,null))['then'](removeEntity(_0x9efbe8,null))[_0x45d5('0x46')](handleError(_0x9efbe8,null));};