Built motion from commit 639a1a7f.|2.6.19
[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 _0xb609=['sort','where','pick','filter','merge','VIRTUAL','includeAll','include','findAll','catch','show','params','options','find','create','body','user','role','UserProfileSection','userProfileId','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','to-csv','lodash','squel','jsforce','desk.js','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','set','reject','save','update','destroy','then','get','CmHopperAdditionalPhones','error','stack','name','send','index','CmHopperAdditionalPhone','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order'];(function(_0x2a5099,_0x329e92){var _0x2802f1=function(_0x53f99b){while(--_0x53f99b){_0x2a5099['push'](_0x2a5099['shift']());}};_0x2802f1(++_0x329e92);}(_0xb609,0x14f));var _0x9b60=function(_0x16d9eb,_0x20c50f){_0x16d9eb=_0x16d9eb-0x0;var _0x48c4c7=_0xb609[_0x16d9eb];return _0x48c4c7;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x9b60('0x0'));var jsonpatch=require(_0x9b60('0x1'));var rp=require(_0x9b60('0x2'));var moment=require(_0x9b60('0x3'));var BPromise=require(_0x9b60('0x4'));var Mustache=require(_0x9b60('0x5'));var util=require('util');var path=require('path');var sox=require('sox');var csv=require(_0x9b60('0x6'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x9b60('0x7'));var squel=require(_0x9b60('0x8'));var crypto=require('crypto');var jsforce=require(_0x9b60('0x9'));var deskjs=require(_0x9b60('0xa'));var toCsv=require(_0x9b60('0x6'));var querystring=require('querystring');var Papa=require(_0x9b60('0xb'));var Redis=require('ioredis');var authService=require(_0x9b60('0xc'));var qs=require(_0x9b60('0xd'));var as=require(_0x9b60('0xe'));var hardwareService=require(_0x9b60('0xf'));var logger=require('../../config/logger')('api');var utils=require(_0x9b60('0x10'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x9b60('0x11'))['db'];function respondWithStatusCode(_0x274bee,_0x58a8b5){_0x58a8b5=_0x58a8b5||0xcc;return function(_0x27d972){if(_0x27d972){return _0x274bee[_0x9b60('0x12')](_0x58a8b5);}return _0x274bee[_0x9b60('0x13')](_0x58a8b5)[_0x9b60('0x14')]();};}function respondWithResult(_0xcb99cd,_0x4b2d42){_0x4b2d42=_0x4b2d42||0xc8;return function(_0x4ef581){if(_0x4ef581){return _0xcb99cd[_0x9b60('0x13')](_0x4b2d42)[_0x9b60('0x15')](_0x4ef581);}};}function respondWithFilteredResult(_0x480216,_0x38ff93){return function(_0x350861){if(_0x350861){var _0x2282e5=typeof _0x38ff93[_0x9b60('0x16')]===_0x9b60('0x17')&&typeof _0x38ff93[_0x9b60('0x18')]===_0x9b60('0x17');var _0x421368=_0x350861['count'];var _0x136f30=_0x2282e5?0x0:_0x38ff93['offset'];var _0x399ac2=_0x2282e5?_0x350861[_0x9b60('0x19')]:_0x38ff93[_0x9b60('0x16')]+_0x38ff93[_0x9b60('0x18')];var _0x2f91ec;if(_0x399ac2>=_0x421368){_0x399ac2=_0x421368;_0x2f91ec=0xc8;}else{_0x2f91ec=0xce;}_0x480216[_0x9b60('0x13')](_0x2f91ec);return _0x480216[_0x9b60('0x1a')]('Content-Range',_0x136f30+'-'+_0x399ac2+'/'+_0x421368)['json'](_0x350861);}return null;};}function patchUpdates(_0x372af6){return function(_0x1ed93f){try{jsonpatch['apply'](_0x1ed93f,_0x372af6,!![]);}catch(_0x2e4442){return BPromise[_0x9b60('0x1b')](_0x2e4442);}return _0x1ed93f[_0x9b60('0x1c')]();};}function saveUpdates(_0x22967b,_0x1bf2f7){return function(_0x13b1a5){if(_0x13b1a5){return _0x13b1a5[_0x9b60('0x1d')](_0x22967b)['then'](function(_0x34894c){return _0x34894c;});}return null;};}function removeEntity(_0x3b9e99,_0x5e470e){return function(_0x5ac5cb){if(_0x5ac5cb){return _0x5ac5cb[_0x9b60('0x1e')]()[_0x9b60('0x1f')](function(){var _0x48f574=_0x5ac5cb[_0x9b60('0x20')]({'plain':!![]});var _0xbf4f8b=_0x9b60('0x21');return db['UserProfileResource'][_0x9b60('0x1e')]({'where':{'type':_0xbf4f8b,'resourceId':_0x48f574['id']}})[_0x9b60('0x1f')](function(){return _0x5ac5cb;});})[_0x9b60('0x1f')](function(){_0x3b9e99[_0x9b60('0x13')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2c6aed,_0x1cbfe6){return function(_0xcd96a9){if(!_0xcd96a9){_0x2c6aed['sendStatus'](0x194);}return _0xcd96a9;};}function handleError(_0x462aa6,_0x2184a7){_0x2184a7=_0x2184a7||0x1f4;return function(_0x1a5fec){logger[_0x9b60('0x22')](_0x1a5fec[_0x9b60('0x23')]);if(_0x1a5fec[_0x9b60('0x24')]){delete _0x1a5fec[_0x9b60('0x24')];}_0x462aa6[_0x9b60('0x13')](_0x2184a7)[_0x9b60('0x25')](_0x1a5fec);};}exports[_0x9b60('0x26')]=function(_0x37a96e,_0x4a59c2){var _0x1ff43b={},_0x564083={},_0x5422f={'count':0x0,'rows':[]};var _0x1a9a8e=_['map'](db[_0x9b60('0x27')][_0x9b60('0x28')],function(_0x213963){return{'name':_0x213963[_0x9b60('0x29')],'type':_0x213963[_0x9b60('0x2a')][_0x9b60('0x2b')]};});_0x564083[_0x9b60('0x2c')]=_['map'](_0x1a9a8e,_0x9b60('0x24'));_0x564083[_0x9b60('0x2d')]=_[_0x9b60('0x2e')](_0x37a96e[_0x9b60('0x2d')]);_0x564083[_0x9b60('0x2f')]=_[_0x9b60('0x30')](_0x564083['model'],_0x564083[_0x9b60('0x2d')]);_0x1ff43b[_0x9b60('0x31')]=_[_0x9b60('0x30')](_0x564083[_0x9b60('0x2c')],qs[_0x9b60('0x32')](_0x37a96e[_0x9b60('0x2d')][_0x9b60('0x32')]));_0x1ff43b['attributes']=_0x1ff43b[_0x9b60('0x31')][_0x9b60('0x33')]?_0x1ff43b[_0x9b60('0x31')]:_0x564083[_0x9b60('0x2c')];if(!_0x37a96e[_0x9b60('0x2d')][_0x9b60('0x34')](_0x9b60('0x35'))){_0x1ff43b[_0x9b60('0x18')]=qs[_0x9b60('0x18')](_0x37a96e[_0x9b60('0x2d')]['limit']);_0x1ff43b['offset']=qs['offset'](_0x37a96e[_0x9b60('0x2d')][_0x9b60('0x16')]);}_0x1ff43b[_0x9b60('0x36')]=qs['sort'](_0x37a96e[_0x9b60('0x2d')][_0x9b60('0x37')]);_0x1ff43b[_0x9b60('0x38')]=qs[_0x9b60('0x2f')](_[_0x9b60('0x39')](_0x37a96e[_0x9b60('0x2d')],_0x564083[_0x9b60('0x2f')]),_0x1a9a8e);if(_0x37a96e[_0x9b60('0x2d')][_0x9b60('0x3a')]){_0x1ff43b[_0x9b60('0x38')]=_[_0x9b60('0x3b')](_0x1ff43b[_0x9b60('0x38')],{'$or':_['map'](_0x1a9a8e,function(_0x25a051){if(_0x25a051[_0x9b60('0x2a')]!==_0x9b60('0x3c')){var _0x141821={};_0x141821[_0x25a051[_0x9b60('0x24')]]={'$like':'%'+_0x37a96e[_0x9b60('0x2d')][_0x9b60('0x3a')]+'%'};return _0x141821;}})});}_0x1ff43b=_[_0x9b60('0x3b')]({},_0x1ff43b,_0x37a96e['options']);var _0x40deac={'where':_0x1ff43b[_0x9b60('0x38')]};return db['CmHopperAdditionalPhone']['count'](_0x40deac)[_0x9b60('0x1f')](function(_0xc68c7b){_0x5422f[_0x9b60('0x19')]=_0xc68c7b;if(_0x37a96e[_0x9b60('0x2d')][_0x9b60('0x3d')]){_0x1ff43b[_0x9b60('0x3e')]=[{'all':!![]}];}return db['CmHopperAdditionalPhone'][_0x9b60('0x3f')](_0x1ff43b);})[_0x9b60('0x1f')](function(_0x3152f7){_0x5422f['rows']=_0x3152f7;return _0x5422f;})[_0x9b60('0x1f')](respondWithFilteredResult(_0x4a59c2,_0x1ff43b))[_0x9b60('0x40')](handleError(_0x4a59c2,null));};exports[_0x9b60('0x41')]=function(_0x5957e8,_0x2399c9){var _0x195e70={'raw':!![],'where':{'id':_0x5957e8[_0x9b60('0x42')]['id']}},_0xbafa75={};_0xbafa75[_0x9b60('0x2c')]=_[_0x9b60('0x2e')](db[_0x9b60('0x27')][_0x9b60('0x28')]);_0xbafa75[_0x9b60('0x2d')]=_[_0x9b60('0x2e')](_0x5957e8[_0x9b60('0x2d')]);_0xbafa75[_0x9b60('0x2f')]=_[_0x9b60('0x30')](_0xbafa75['model'],_0xbafa75[_0x9b60('0x2d')]);_0x195e70['attributes']=_[_0x9b60('0x30')](_0xbafa75[_0x9b60('0x2c')],qs['fields'](_0x5957e8['query'][_0x9b60('0x32')]));_0x195e70[_0x9b60('0x31')]=_0x195e70['attributes'][_0x9b60('0x33')]?_0x195e70[_0x9b60('0x31')]:_0xbafa75[_0x9b60('0x2c')];if(_0x5957e8['query'][_0x9b60('0x3d')]){_0x195e70[_0x9b60('0x3e')]=[{'all':!![]}];}_0x195e70=_['merge']({},_0x195e70,_0x5957e8[_0x9b60('0x43')]);return db[_0x9b60('0x27')][_0x9b60('0x44')](_0x195e70)['then'](handleEntityNotFound(_0x2399c9,null))['then'](respondWithResult(_0x2399c9,null))['catch'](handleError(_0x2399c9,null));};exports[_0x9b60('0x45')]=function(_0x228bdc,_0x53ed97){return db['CmHopperAdditionalPhone'][_0x9b60('0x45')](_0x228bdc[_0x9b60('0x46')],{})[_0x9b60('0x1f')](function(_0x1bd3d6){var _0x10f078=_0x228bdc[_0x9b60('0x47')][_0x9b60('0x20')]({'plain':!![]});if(!_0x10f078)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x10f078[_0x9b60('0x48')]==='user'){var _0x360098=_0x1bd3d6[_0x9b60('0x20')]({'plain':!![]});var _0x5753b8=_0x9b60('0x21');return db[_0x9b60('0x49')][_0x9b60('0x44')]({'where':{'name':_0x5753b8,'userProfileId':_0x10f078[_0x9b60('0x4a')]},'raw':!![]})[_0x9b60('0x1f')](function(_0x43998e){if(_0x43998e&&_0x43998e[_0x9b60('0x4b')]===0x0){return db[_0x9b60('0x4c')]['create']({'name':_0x360098[_0x9b60('0x24')],'resourceId':_0x360098['id'],'type':_0x43998e[_0x9b60('0x24')],'sectionId':_0x43998e['id']},{})[_0x9b60('0x1f')](function(){return _0x1bd3d6;});}else{return _0x1bd3d6;}})[_0x9b60('0x40')](function(_0x77b6b3){logger[_0x9b60('0x22')](_0x9b60('0x4d'),_0x77b6b3);throw _0x77b6b3;});}return _0x1bd3d6;})[_0x9b60('0x1f')](respondWithResult(_0x53ed97,0xc9))[_0x9b60('0x40')](handleError(_0x53ed97,null));};exports[_0x9b60('0x1d')]=function(_0x47cc29,_0x19705d){if(_0x47cc29['body']['id']){delete _0x47cc29[_0x9b60('0x46')]['id'];}return db[_0x9b60('0x27')]['find']({'where':{'id':_0x47cc29[_0x9b60('0x42')]['id']}})['then'](handleEntityNotFound(_0x19705d,null))[_0x9b60('0x1f')](saveUpdates(_0x47cc29['body'],null))[_0x9b60('0x1f')](respondWithResult(_0x19705d,null))[_0x9b60('0x40')](handleError(_0x19705d,null));};exports['destroy']=function(_0xf1bec0,_0x4b34fc){return db[_0x9b60('0x27')][_0x9b60('0x44')]({'where':{'id':_0xf1bec0[_0x9b60('0x42')]['id']}})[_0x9b60('0x1f')](handleEntityNotFound(_0x4b34fc,null))['then'](removeEntity(_0x4b34fc,null))[_0x9b60('0x40')](handleError(_0x4b34fc,null));};