b040472489ef8632fc6dbc60a82a999a5aab52a0
[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 _0xaec9=['lodash','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../mysqldb','sendStatus','end','json','offset','undefined','count','Content-Range','apply','save','update','then','destroy','get','CmHopperAdditionalPhones','UserProfileResource','status','error','stack','name','send','index','map','CmHopperAdditionalPhone','fieldName','type','key','query','filters','model','attributes','fields','length','hasOwnProperty','nolimit','limit','sort','filter','merge','where','VIRTUAL','options','includeAll','include','findAll','catch','keys','rawAttributes','intersection','find','create','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','params','eml-format','rimraf','zip-dir','fast-json-patch','moment','util','to-csv','ejs'];(function(_0x2ba276,_0x480ec){var _0x718cf2=function(_0x37a4ed){while(--_0x37a4ed){_0x2ba276['push'](_0x2ba276['shift']());}};_0x718cf2(++_0x480ec);}(_0xaec9,0xe5));var _0x9aec=function(_0x5a7618,_0x3f44c2){_0x5a7618=_0x5a7618-0x0;var _0x12dc65=_0xaec9[_0x5a7618];return _0x12dc65;};'use strict';var emlformat=require(_0x9aec('0x0'));var rimraf=require(_0x9aec('0x1'));var zipdir=require(_0x9aec('0x2'));var jsonpatch=require(_0x9aec('0x3'));var rp=require('request-promise');var moment=require(_0x9aec('0x4'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x9aec('0x5'));var path=require('path');var sox=require('sox');var csv=require(_0x9aec('0x6'));var ejs=require(_0x9aec('0x7'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x9aec('0x8'));var squel=require('squel');var crypto=require(_0x9aec('0x9'));var jsforce=require(_0x9aec('0xa'));var deskjs=require(_0x9aec('0xb'));var toCsv=require(_0x9aec('0x6'));var querystring=require(_0x9aec('0xc'));var Papa=require('papaparse');var Redis=require(_0x9aec('0xd'));var authService=require(_0x9aec('0xe'));var qs=require(_0x9aec('0xf'));var as=require(_0x9aec('0x10'));var hardwareService=require(_0x9aec('0x11'));var logger=require(_0x9aec('0x12'))('api');var utils=require(_0x9aec('0x13'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x9aec('0x14'))['db'];function respondWithStatusCode(_0x8e5c92,_0x2311b9){_0x2311b9=_0x2311b9||0xcc;return function(_0x4c0be1){if(_0x4c0be1){return _0x8e5c92[_0x9aec('0x15')](_0x2311b9);}return _0x8e5c92['status'](_0x2311b9)[_0x9aec('0x16')]();};}function respondWithResult(_0x335b84,_0x475d61){_0x475d61=_0x475d61||0xc8;return function(_0x55e144){if(_0x55e144){return _0x335b84['status'](_0x475d61)[_0x9aec('0x17')](_0x55e144);}};}function respondWithFilteredResult(_0x4e475a,_0x215ef0){return function(_0x18b9bf){if(_0x18b9bf){var _0x5eb6fd=typeof _0x215ef0[_0x9aec('0x18')]===_0x9aec('0x19')&&typeof _0x215ef0['limit']==='undefined';var _0x33da49=_0x18b9bf[_0x9aec('0x1a')];var _0x388319=_0x5eb6fd?0x0:_0x215ef0['offset'];var _0x9e6858=_0x5eb6fd?_0x18b9bf[_0x9aec('0x1a')]:_0x215ef0[_0x9aec('0x18')]+_0x215ef0['limit'];var _0x50d69c;if(_0x9e6858>=_0x33da49){_0x9e6858=_0x33da49;_0x50d69c=0xc8;}else{_0x50d69c=0xce;}_0x4e475a['status'](_0x50d69c);return _0x4e475a['set'](_0x9aec('0x1b'),_0x388319+'-'+_0x9e6858+'/'+_0x33da49)[_0x9aec('0x17')](_0x18b9bf);}return null;};}function patchUpdates(_0x267a1a){return function(_0x4c1f6d){try{jsonpatch[_0x9aec('0x1c')](_0x4c1f6d,_0x267a1a,!![]);}catch(_0x113efe){return BPromise['reject'](_0x113efe);}return _0x4c1f6d[_0x9aec('0x1d')]();};}function saveUpdates(_0x2fdd02,_0x1d8310){return function(_0x4a13e2){if(_0x4a13e2){return _0x4a13e2[_0x9aec('0x1e')](_0x2fdd02)[_0x9aec('0x1f')](function(_0x5af35a){return _0x5af35a;});}return null;};}function removeEntity(_0xbd6ea7,_0x49e5c2){return function(_0xf94d69){if(_0xf94d69){return _0xf94d69[_0x9aec('0x20')]()['then'](function(){var _0x67ea29=_0xf94d69[_0x9aec('0x21')]({'plain':!![]});var _0x174b6a=_0x9aec('0x22');return db[_0x9aec('0x23')][_0x9aec('0x20')]({'where':{'type':_0x174b6a,'resourceId':_0x67ea29['id']}})[_0x9aec('0x1f')](function(){return _0xf94d69;});})[_0x9aec('0x1f')](function(){_0xbd6ea7[_0x9aec('0x24')](0xcc)['end']();});}};}function handleEntityNotFound(_0x21c3d9,_0x2090d7){return function(_0x4f6abf){if(!_0x4f6abf){_0x21c3d9[_0x9aec('0x15')](0x194);}return _0x4f6abf;};}function handleError(_0x100f4e,_0x5d1dcc){_0x5d1dcc=_0x5d1dcc||0x1f4;return function(_0x4d6b1d){logger[_0x9aec('0x25')](_0x4d6b1d[_0x9aec('0x26')]);if(_0x4d6b1d[_0x9aec('0x27')]){delete _0x4d6b1d[_0x9aec('0x27')];}_0x100f4e[_0x9aec('0x24')](_0x5d1dcc)[_0x9aec('0x28')](_0x4d6b1d);};}exports[_0x9aec('0x29')]=function(_0x5c029a,_0x1a143d){var _0x185d72={},_0x3f1235={},_0x1629ce={'count':0x0,'rows':[]};var _0x350776=_[_0x9aec('0x2a')](db[_0x9aec('0x2b')]['rawAttributes'],function(_0x4645c8){return{'name':_0x4645c8[_0x9aec('0x2c')],'type':_0x4645c8[_0x9aec('0x2d')][_0x9aec('0x2e')]};});_0x3f1235['model']=_[_0x9aec('0x2a')](_0x350776,_0x9aec('0x27'));_0x3f1235[_0x9aec('0x2f')]=_['keys'](_0x5c029a['query']);_0x3f1235[_0x9aec('0x30')]=_['intersection'](_0x3f1235[_0x9aec('0x31')],_0x3f1235[_0x9aec('0x2f')]);_0x185d72[_0x9aec('0x32')]=_['intersection'](_0x3f1235[_0x9aec('0x31')],qs['fields'](_0x5c029a[_0x9aec('0x2f')][_0x9aec('0x33')]));_0x185d72['attributes']=_0x185d72[_0x9aec('0x32')][_0x9aec('0x34')]?_0x185d72[_0x9aec('0x32')]:_0x3f1235[_0x9aec('0x31')];if(!_0x5c029a[_0x9aec('0x2f')][_0x9aec('0x35')](_0x9aec('0x36'))){_0x185d72[_0x9aec('0x37')]=qs[_0x9aec('0x37')](_0x5c029a[_0x9aec('0x2f')][_0x9aec('0x37')]);_0x185d72[_0x9aec('0x18')]=qs[_0x9aec('0x18')](_0x5c029a[_0x9aec('0x2f')]['offset']);}_0x185d72['order']=qs[_0x9aec('0x38')](_0x5c029a[_0x9aec('0x2f')][_0x9aec('0x38')]);_0x185d72['where']=qs[_0x9aec('0x30')](_['pick'](_0x5c029a[_0x9aec('0x2f')],_0x3f1235[_0x9aec('0x30')]),_0x350776);if(_0x5c029a[_0x9aec('0x2f')][_0x9aec('0x39')]){_0x185d72['where']=_[_0x9aec('0x3a')](_0x185d72[_0x9aec('0x3b')],{'$or':_[_0x9aec('0x2a')](_0x350776,function(_0x174f93){if(_0x174f93['type']!==_0x9aec('0x3c')){var _0x37268e={};_0x37268e[_0x174f93[_0x9aec('0x27')]]={'$like':'%'+_0x5c029a[_0x9aec('0x2f')][_0x9aec('0x39')]+'%'};return _0x37268e;}})});}_0x185d72=_[_0x9aec('0x3a')]({},_0x185d72,_0x5c029a[_0x9aec('0x3d')]);var _0x748c85={'where':_0x185d72[_0x9aec('0x3b')]};return db[_0x9aec('0x2b')][_0x9aec('0x1a')](_0x748c85)[_0x9aec('0x1f')](function(_0x59ac2f){_0x1629ce[_0x9aec('0x1a')]=_0x59ac2f;if(_0x5c029a[_0x9aec('0x2f')][_0x9aec('0x3e')]){_0x185d72[_0x9aec('0x3f')]=[{'all':!![]}];}return db[_0x9aec('0x2b')][_0x9aec('0x40')](_0x185d72);})[_0x9aec('0x1f')](function(_0x2a91c9){_0x1629ce['rows']=_0x2a91c9;return _0x1629ce;})[_0x9aec('0x1f')](respondWithFilteredResult(_0x1a143d,_0x185d72))[_0x9aec('0x41')](handleError(_0x1a143d,null));};exports['show']=function(_0x3d6cc3,_0x3cd7e1){var _0x106cc9={'raw':!![],'where':{'id':_0x3d6cc3['params']['id']}},_0x60aacc={};_0x60aacc['model']=_[_0x9aec('0x42')](db[_0x9aec('0x2b')][_0x9aec('0x43')]);_0x60aacc['query']=_['keys'](_0x3d6cc3[_0x9aec('0x2f')]);_0x60aacc[_0x9aec('0x30')]=_[_0x9aec('0x44')](_0x60aacc[_0x9aec('0x31')],_0x60aacc[_0x9aec('0x2f')]);_0x106cc9[_0x9aec('0x32')]=_[_0x9aec('0x44')](_0x60aacc[_0x9aec('0x31')],qs[_0x9aec('0x33')](_0x3d6cc3[_0x9aec('0x2f')][_0x9aec('0x33')]));_0x106cc9[_0x9aec('0x32')]=_0x106cc9[_0x9aec('0x32')][_0x9aec('0x34')]?_0x106cc9[_0x9aec('0x32')]:_0x60aacc['model'];if(_0x3d6cc3[_0x9aec('0x2f')][_0x9aec('0x3e')]){_0x106cc9[_0x9aec('0x3f')]=[{'all':!![]}];}_0x106cc9=_['merge']({},_0x106cc9,_0x3d6cc3[_0x9aec('0x3d')]);return db[_0x9aec('0x2b')][_0x9aec('0x45')](_0x106cc9)[_0x9aec('0x1f')](handleEntityNotFound(_0x3cd7e1,null))['then'](respondWithResult(_0x3cd7e1,null))['catch'](handleError(_0x3cd7e1,null));};exports[_0x9aec('0x46')]=function(_0x16cd84,_0x5bb726){return db['CmHopperAdditionalPhone'][_0x9aec('0x46')](_0x16cd84['body'],{})['then'](function(_0x568db2){var _0x294638=_0x16cd84[_0x9aec('0x47')][_0x9aec('0x21')]({'plain':!![]});if(!_0x294638)throw new Error(_0x9aec('0x48'));if(_0x294638['role']===_0x9aec('0x47')){var _0x4c240e=_0x568db2[_0x9aec('0x21')]({'plain':!![]});var _0x35eb40=_0x9aec('0x22');return db[_0x9aec('0x49')][_0x9aec('0x45')]({'where':{'name':_0x35eb40,'userProfileId':_0x294638[_0x9aec('0x4a')]},'raw':!![]})[_0x9aec('0x1f')](function(_0x17d821){if(_0x17d821&&_0x17d821[_0x9aec('0x4b')]===0x0){return db['UserProfileResource'][_0x9aec('0x46')]({'name':_0x4c240e['name'],'resourceId':_0x4c240e['id'],'type':_0x17d821[_0x9aec('0x27')],'sectionId':_0x17d821['id']},{})[_0x9aec('0x1f')](function(){return _0x568db2;});}else{return _0x568db2;}})[_0x9aec('0x41')](function(_0x25e95e){logger[_0x9aec('0x25')](_0x9aec('0x4c'),_0x25e95e);throw _0x25e95e;});}return _0x568db2;})[_0x9aec('0x1f')](respondWithResult(_0x5bb726,0xc9))['catch'](handleError(_0x5bb726,null));};exports[_0x9aec('0x1e')]=function(_0x375f09,_0x57722b){if(_0x375f09[_0x9aec('0x4d')]['id']){delete _0x375f09[_0x9aec('0x4d')]['id'];}return db[_0x9aec('0x2b')]['find']({'where':{'id':_0x375f09[_0x9aec('0x4e')]['id']}})[_0x9aec('0x1f')](handleEntityNotFound(_0x57722b,null))[_0x9aec('0x1f')](saveUpdates(_0x375f09[_0x9aec('0x4d')],null))[_0x9aec('0x1f')](respondWithResult(_0x57722b,null))['catch'](handleError(_0x57722b,null));};exports['destroy']=function(_0x28c14e,_0x2562b5){return db[_0x9aec('0x2b')]['find']({'where':{'id':_0x28c14e[_0x9aec('0x4e')]['id']}})[_0x9aec('0x1f')](handleEntityNotFound(_0x2562b5,null))[_0x9aec('0x1f')](removeEntity(_0x2562b5,null))['catch'](handleError(_0x2562b5,null));};