2e3189e45d50cf639774308ff4aa74a87e068459
[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 _0xfdb6=['lodash','squel','crypto','jsforce','desk.js','to-csv','papaparse','ioredis','../../components/auth/service','api','../../config/utils','status','end','json','count','offset','limit','Content-Range','apply','reject','save','update','then','destroy','CmHopperAdditionalPhones','UserProfileResource','sendStatus','error','name','send','map','CmHopperAdditionalPhone','rawAttributes','fieldName','key','keys','query','attributes','intersection','model','fields','hasOwnProperty','nolimit','order','sort','filters','filter','where','merge','type','VIRTUAL','options','findAll','rows','catch','params','length','include','find','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','create','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','html-pdf','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox'];(function(_0x2a8c21,_0x163576){var _0x5f3061=function(_0x4dc8eb){while(--_0x4dc8eb){_0x2a8c21['push'](_0x2a8c21['shift']());}};_0x5f3061(++_0x163576);}(_0xfdb6,0x1cb));var _0x6fdb=function(_0x229060,_0x54534b){_0x229060=_0x229060-0x0;var _0x46d71b=_0xfdb6[_0x229060];return _0x46d71b;};'use strict';var pdf=require(_0x6fdb('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x6fdb('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x6fdb('0x2'));var rp=require(_0x6fdb('0x3'));var moment=require(_0x6fdb('0x4'));var BPromise=require(_0x6fdb('0x5'));var Mustache=require(_0x6fdb('0x6'));var util=require('util');var path=require(_0x6fdb('0x7'));var sox=require(_0x6fdb('0x8'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var _=require(_0x6fdb('0x9'));var squel=require(_0x6fdb('0xa'));var crypto=require(_0x6fdb('0xb'));var jsforce=require(_0x6fdb('0xc'));var deskjs=require(_0x6fdb('0xd'));var toCsv=require(_0x6fdb('0xe'));var querystring=require('querystring');var Papa=require(_0x6fdb('0xf'));var Redis=require(_0x6fdb('0x10'));var authService=require(_0x6fdb('0x11'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x6fdb('0x12'));var utils=require(_0x6fdb('0x13'));var config=require('../../config/environment');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x516a24,_0x4d8f24){_0x4d8f24=_0x4d8f24||0xcc;return function(_0x2bfb34){if(_0x2bfb34){return _0x516a24['sendStatus'](_0x4d8f24);}return _0x516a24[_0x6fdb('0x14')](_0x4d8f24)[_0x6fdb('0x15')]();};}function respondWithResult(_0x53aff5,_0xdf4496){_0xdf4496=_0xdf4496||0xc8;return function(_0x4263c2){if(_0x4263c2){return _0x53aff5[_0x6fdb('0x14')](_0xdf4496)[_0x6fdb('0x16')](_0x4263c2);}};}function respondWithFilteredResult(_0x157e9d,_0x10cfc6){return function(_0x16e79f){if(_0x16e79f){var _0x511977=_0x16e79f[_0x6fdb('0x17')],_0x3b9eee=_0x10cfc6[_0x6fdb('0x18')],_0x1b8fe2=_0x10cfc6[_0x6fdb('0x18')]+_0x10cfc6[_0x6fdb('0x19')],_0x98cb7c;if(_0x1b8fe2>=_0x511977){_0x1b8fe2=_0x511977;_0x98cb7c=0xc8;}else{_0x98cb7c=0xce;}_0x157e9d[_0x6fdb('0x14')](_0x98cb7c);return _0x157e9d['set'](_0x6fdb('0x1a'),_0x3b9eee+'-'+_0x1b8fe2+'/'+_0x511977)[_0x6fdb('0x16')](_0x16e79f);}return null;};}function patchUpdates(_0x2b82ac){return function(_0x48d61d){try{jsonpatch[_0x6fdb('0x1b')](_0x48d61d,_0x2b82ac,!![]);}catch(_0x176902){return BPromise[_0x6fdb('0x1c')](_0x176902);}return _0x48d61d[_0x6fdb('0x1d')]();};}function saveUpdates(_0x56dd7c,_0xac0da9){return function(_0x1d1bb9){if(_0x1d1bb9){return _0x1d1bb9[_0x6fdb('0x1e')](_0x56dd7c)[_0x6fdb('0x1f')](function(_0x1a712f){return _0x1a712f;});}return null;};}function removeEntity(_0x119dae,_0x5d1872){return function(_0x5741e1){if(_0x5741e1){return _0x5741e1[_0x6fdb('0x20')]()['then'](function(){var _0x848388=_0x5741e1['get']({'plain':!![]});var _0x42b662=_0x6fdb('0x21');return db[_0x6fdb('0x22')][_0x6fdb('0x20')]({'where':{'type':_0x42b662,'resourceId':_0x848388['id']}})[_0x6fdb('0x1f')](function(){return _0x5741e1;});})[_0x6fdb('0x1f')](function(){_0x119dae[_0x6fdb('0x14')](0xcc)['end']();});}};}function handleEntityNotFound(_0x101961,_0x34be0e){return function(_0x49cba4){if(!_0x49cba4){_0x101961[_0x6fdb('0x23')](0x194);}return _0x49cba4;};}function handleError(_0x4d3d43,_0x2a14d1){_0x2a14d1=_0x2a14d1||0x1f4;return function(_0x1cd1cc){logger[_0x6fdb('0x24')](_0x1cd1cc['stack']);if(_0x1cd1cc[_0x6fdb('0x25')]){delete _0x1cd1cc[_0x6fdb('0x25')];}_0x4d3d43[_0x6fdb('0x14')](_0x2a14d1)[_0x6fdb('0x26')](_0x1cd1cc);};}exports['index']=function(_0x53f3c0,_0x306b52){var _0x28316f={},_0x257d58={},_0x592547={'count':0x0,'rows':[]};var _0x4505d3=_[_0x6fdb('0x27')](db[_0x6fdb('0x28')][_0x6fdb('0x29')],function(_0x3c9924){return{'name':_0x3c9924[_0x6fdb('0x2a')],'type':_0x3c9924['type'][_0x6fdb('0x2b')]};});_0x257d58['model']=_[_0x6fdb('0x27')](_0x4505d3,_0x6fdb('0x25'));_0x257d58['query']=_[_0x6fdb('0x2c')](_0x53f3c0['query']);_0x257d58['filters']=_['intersection'](_0x257d58['model'],_0x257d58[_0x6fdb('0x2d')]);_0x28316f[_0x6fdb('0x2e')]=_[_0x6fdb('0x2f')](_0x257d58[_0x6fdb('0x30')],qs[_0x6fdb('0x31')](_0x53f3c0[_0x6fdb('0x2d')][_0x6fdb('0x31')]));_0x28316f[_0x6fdb('0x2e')]=_0x28316f['attributes']['length']?_0x28316f['attributes']:_0x257d58[_0x6fdb('0x30')];if(!_0x53f3c0[_0x6fdb('0x2d')][_0x6fdb('0x32')](_0x6fdb('0x33'))){_0x28316f[_0x6fdb('0x19')]=qs[_0x6fdb('0x19')](_0x53f3c0['query'][_0x6fdb('0x19')]);_0x28316f['offset']=qs[_0x6fdb('0x18')](_0x53f3c0[_0x6fdb('0x2d')][_0x6fdb('0x18')]);}_0x28316f[_0x6fdb('0x34')]=qs[_0x6fdb('0x35')](_0x53f3c0['query']['sort']);_0x28316f['where']=qs[_0x6fdb('0x36')](_['pick'](_0x53f3c0['query'],_0x257d58[_0x6fdb('0x36')]),_0x4505d3);if(_0x53f3c0['query'][_0x6fdb('0x37')]){_0x28316f[_0x6fdb('0x38')]=_[_0x6fdb('0x39')](_0x28316f['where'],{'$or':_['map'](_0x4505d3,function(_0x828aa9){if(_0x828aa9[_0x6fdb('0x3a')]!==_0x6fdb('0x3b')){var _0x590159={};_0x590159[_0x828aa9[_0x6fdb('0x25')]]={'$like':'%'+_0x53f3c0[_0x6fdb('0x2d')][_0x6fdb('0x37')]+'%'};return _0x590159;}})});}_0x28316f=_[_0x6fdb('0x39')]({},_0x28316f,_0x53f3c0[_0x6fdb('0x3c')]);var _0x4eed26={'where':_0x28316f['where']};return db[_0x6fdb('0x28')][_0x6fdb('0x17')](_0x4eed26)['then'](function(_0x1c51b0){_0x592547[_0x6fdb('0x17')]=_0x1c51b0;if(_0x53f3c0[_0x6fdb('0x2d')]['includeAll']){_0x28316f['include']=[{'all':!![]}];}return db[_0x6fdb('0x28')][_0x6fdb('0x3d')](_0x28316f);})[_0x6fdb('0x1f')](function(_0x6850db){_0x592547[_0x6fdb('0x3e')]=_0x6850db;return _0x592547;})[_0x6fdb('0x1f')](respondWithFilteredResult(_0x306b52,_0x28316f))[_0x6fdb('0x3f')](handleError(_0x306b52,null));};exports['show']=function(_0x4c2601,_0x5e1fd3){var _0x27806a={'raw':!![],'where':{'id':_0x4c2601[_0x6fdb('0x40')]['id']}},_0x3559e8={};_0x3559e8[_0x6fdb('0x30')]=_['keys'](db[_0x6fdb('0x28')][_0x6fdb('0x29')]);_0x3559e8[_0x6fdb('0x2d')]=_['keys'](_0x4c2601[_0x6fdb('0x2d')]);_0x3559e8[_0x6fdb('0x36')]=_[_0x6fdb('0x2f')](_0x3559e8[_0x6fdb('0x30')],_0x3559e8[_0x6fdb('0x2d')]);_0x27806a[_0x6fdb('0x2e')]=_[_0x6fdb('0x2f')](_0x3559e8['model'],qs[_0x6fdb('0x31')](_0x4c2601[_0x6fdb('0x2d')][_0x6fdb('0x31')]));_0x27806a[_0x6fdb('0x2e')]=_0x27806a[_0x6fdb('0x2e')][_0x6fdb('0x41')]?_0x27806a[_0x6fdb('0x2e')]:_0x3559e8[_0x6fdb('0x30')];if(_0x4c2601[_0x6fdb('0x2d')]['includeAll']){_0x27806a[_0x6fdb('0x42')]=[{'all':!![]}];}_0x27806a=_[_0x6fdb('0x39')]({},_0x27806a,_0x4c2601['options']);return db['CmHopperAdditionalPhone'][_0x6fdb('0x43')](_0x27806a)['then'](handleEntityNotFound(_0x5e1fd3,null))['then'](respondWithResult(_0x5e1fd3,null))[_0x6fdb('0x3f')](handleError(_0x5e1fd3,null));};exports['create']=function(_0x2476ea,_0x15090b){return db[_0x6fdb('0x28')]['create'](_0x2476ea['body'],{})[_0x6fdb('0x1f')](function(_0x146ecd){var _0x58f590=_0x2476ea[_0x6fdb('0x44')][_0x6fdb('0x45')]({'plain':!![]});if(!_0x58f590)throw new Error(_0x6fdb('0x46'));if(_0x58f590[_0x6fdb('0x47')]==='user'){var _0x4c0f48=_0x146ecd['get']({'plain':!![]});var _0x538e95='CmHopperAdditionalPhones';return db[_0x6fdb('0x48')]['find']({'where':{'name':_0x538e95,'userProfileId':_0x58f590[_0x6fdb('0x49')]},'raw':!![]})['then'](function(_0x52b7c4){if(_0x52b7c4&&_0x52b7c4[_0x6fdb('0x4a')]===0x0){return db[_0x6fdb('0x22')][_0x6fdb('0x4b')]({'name':_0x4c0f48['name'],'resourceId':_0x4c0f48['id'],'type':_0x52b7c4[_0x6fdb('0x25')],'sectionId':_0x52b7c4['id']},{})[_0x6fdb('0x1f')](function(){return _0x146ecd;});}else{return _0x146ecd;}})[_0x6fdb('0x3f')](function(_0x1bb494){logger[_0x6fdb('0x24')](_0x6fdb('0x4c'),_0x1bb494);throw _0x1bb494;});}return _0x146ecd;})['then'](respondWithResult(_0x15090b,0xc9))[_0x6fdb('0x3f')](handleError(_0x15090b,null));};exports[_0x6fdb('0x1e')]=function(_0x5e7428,_0x47238c){if(_0x5e7428[_0x6fdb('0x4d')]['id']){delete _0x5e7428[_0x6fdb('0x4d')]['id'];}return db[_0x6fdb('0x28')][_0x6fdb('0x43')]({'where':{'id':_0x5e7428[_0x6fdb('0x40')]['id']}})[_0x6fdb('0x1f')](handleEntityNotFound(_0x47238c,null))[_0x6fdb('0x1f')](saveUpdates(_0x5e7428[_0x6fdb('0x4d')],null))[_0x6fdb('0x1f')](respondWithResult(_0x47238c,null))['catch'](handleError(_0x47238c,null));};exports['destroy']=function(_0x2e8d2d,_0x55c125){return db[_0x6fdb('0x28')]['find']({'where':{'id':_0x2e8d2d[_0x6fdb('0x40')]['id']}})[_0x6fdb('0x1f')](handleEntityNotFound(_0x55c125,null))[_0x6fdb('0x1f')](removeEntity(_0x55c125,null))[_0x6fdb('0x3f')](handleError(_0x55c125,null));};