Built motion from commit 013e4bb4.|2.6.18
[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 _0x334b=['name','send','index','map','CmHopperAdditionalPhone','rawAttributes','fieldName','key','model','keys','query','filters','intersection','attributes','fields','length','nolimit','limit','order','sort','where','pick','merge','VIRTUAL','filter','options','includeAll','include','findAll','catch','show','create','body','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','find','userProfileId','params','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','status','offset','undefined','count','set','Content-Range','json','apply','reject','save','update','then','destroy','CmHopperAdditionalPhones','UserProfileResource','error'];(function(_0x3b632f,_0x453380){var _0x10e788=function(_0x2228a4){while(--_0x2228a4){_0x3b632f['push'](_0x3b632f['shift']());}};_0x10e788(++_0x453380);}(_0x334b,0x189));var _0xb334=function(_0x149dc4,_0x521346){_0x149dc4=_0x149dc4-0x0;var _0x13233e=_0x334b[_0x149dc4];return _0x13233e;};'use strict';var emlformat=require(_0xb334('0x0'));var rimraf=require(_0xb334('0x1'));var zipdir=require(_0xb334('0x2'));var jsonpatch=require(_0xb334('0x3'));var rp=require(_0xb334('0x4'));var moment=require(_0xb334('0x5'));var BPromise=require(_0xb334('0x6'));var Mustache=require(_0xb334('0x7'));var util=require(_0xb334('0x8'));var path=require(_0xb334('0x9'));var sox=require(_0xb334('0xa'));var csv=require(_0xb334('0xb'));var ejs=require(_0xb334('0xc'));var fs=require('fs');var fs_extra=require(_0xb334('0xd'));var _=require(_0xb334('0xe'));var squel=require(_0xb334('0xf'));var crypto=require(_0xb334('0x10'));var jsforce=require(_0xb334('0x11'));var deskjs=require(_0xb334('0x12'));var toCsv=require('to-csv');var querystring=require(_0xb334('0x13'));var Papa=require(_0xb334('0x14'));var Redis=require('ioredis');var authService=require(_0xb334('0x15'));var qs=require(_0xb334('0x16'));var as=require(_0xb334('0x17'));var hardwareService=require(_0xb334('0x18'));var logger=require(_0xb334('0x19'))('api');var utils=require(_0xb334('0x1a'));var config=require(_0xb334('0x1b'));var licenseUtil=require('../../config/license/util');var db=require(_0xb334('0x1c'))['db'];function respondWithStatusCode(_0x334750,_0xc5360b){_0xc5360b=_0xc5360b||0xcc;return function(_0x14be19){if(_0x14be19){return _0x334750[_0xb334('0x1d')](_0xc5360b);}return _0x334750['status'](_0xc5360b)[_0xb334('0x1e')]();};}function respondWithResult(_0x48e1fa,_0x5a3cf3){_0x5a3cf3=_0x5a3cf3||0xc8;return function(_0x3c06ed){if(_0x3c06ed){return _0x48e1fa[_0xb334('0x1f')](_0x5a3cf3)['json'](_0x3c06ed);}};}function respondWithFilteredResult(_0x4f2990,_0x326843){return function(_0x16bc67){if(_0x16bc67){var _0x3bee56=typeof _0x326843[_0xb334('0x20')]===_0xb334('0x21')&&typeof _0x326843['limit']===_0xb334('0x21');var _0x4cc0ba=_0x16bc67[_0xb334('0x22')];var _0x3706a7=_0x3bee56?0x0:_0x326843[_0xb334('0x20')];var _0x517e8f=_0x3bee56?_0x16bc67[_0xb334('0x22')]:_0x326843[_0xb334('0x20')]+_0x326843['limit'];var _0x244b06;if(_0x517e8f>=_0x4cc0ba){_0x517e8f=_0x4cc0ba;_0x244b06=0xc8;}else{_0x244b06=0xce;}_0x4f2990['status'](_0x244b06);return _0x4f2990[_0xb334('0x23')](_0xb334('0x24'),_0x3706a7+'-'+_0x517e8f+'/'+_0x4cc0ba)[_0xb334('0x25')](_0x16bc67);}return null;};}function patchUpdates(_0x4bd6f6){return function(_0x5bb026){try{jsonpatch[_0xb334('0x26')](_0x5bb026,_0x4bd6f6,!![]);}catch(_0x4dc01e){return BPromise[_0xb334('0x27')](_0x4dc01e);}return _0x5bb026[_0xb334('0x28')]();};}function saveUpdates(_0x40645e,_0x34ea43){return function(_0x5e9ed5){if(_0x5e9ed5){return _0x5e9ed5[_0xb334('0x29')](_0x40645e)[_0xb334('0x2a')](function(_0x1d1ed0){return _0x1d1ed0;});}return null;};}function removeEntity(_0x5e5b05,_0x4afca5){return function(_0x5a766c){if(_0x5a766c){return _0x5a766c[_0xb334('0x2b')]()['then'](function(){var _0x34a96a=_0x5a766c['get']({'plain':!![]});var _0x2942d6=_0xb334('0x2c');return db[_0xb334('0x2d')][_0xb334('0x2b')]({'where':{'type':_0x2942d6,'resourceId':_0x34a96a['id']}})['then'](function(){return _0x5a766c;});})[_0xb334('0x2a')](function(){_0x5e5b05['status'](0xcc)[_0xb334('0x1e')]();});}};}function handleEntityNotFound(_0x3855e4,_0x4c4a93){return function(_0x2339a6){if(!_0x2339a6){_0x3855e4[_0xb334('0x1d')](0x194);}return _0x2339a6;};}function handleError(_0x351e37,_0x5d16e6){_0x5d16e6=_0x5d16e6||0x1f4;return function(_0x52097f){logger[_0xb334('0x2e')](_0x52097f['stack']);if(_0x52097f[_0xb334('0x2f')]){delete _0x52097f['name'];}_0x351e37[_0xb334('0x1f')](_0x5d16e6)[_0xb334('0x30')](_0x52097f);};}exports[_0xb334('0x31')]=function(_0x440c79,_0x3c9550){var _0x2fa9b1={},_0x13f4b4={},_0x1f35a6={'count':0x0,'rows':[]};var _0x4b4da0=_[_0xb334('0x32')](db[_0xb334('0x33')][_0xb334('0x34')],function(_0x54c3ba){return{'name':_0x54c3ba[_0xb334('0x35')],'type':_0x54c3ba['type'][_0xb334('0x36')]};});_0x13f4b4[_0xb334('0x37')]=_['map'](_0x4b4da0,_0xb334('0x2f'));_0x13f4b4['query']=_[_0xb334('0x38')](_0x440c79[_0xb334('0x39')]);_0x13f4b4[_0xb334('0x3a')]=_[_0xb334('0x3b')](_0x13f4b4['model'],_0x13f4b4[_0xb334('0x39')]);_0x2fa9b1[_0xb334('0x3c')]=_['intersection'](_0x13f4b4[_0xb334('0x37')],qs[_0xb334('0x3d')](_0x440c79[_0xb334('0x39')][_0xb334('0x3d')]));_0x2fa9b1[_0xb334('0x3c')]=_0x2fa9b1[_0xb334('0x3c')][_0xb334('0x3e')]?_0x2fa9b1[_0xb334('0x3c')]:_0x13f4b4['model'];if(!_0x440c79[_0xb334('0x39')]['hasOwnProperty'](_0xb334('0x3f'))){_0x2fa9b1[_0xb334('0x40')]=qs[_0xb334('0x40')](_0x440c79[_0xb334('0x39')][_0xb334('0x40')]);_0x2fa9b1[_0xb334('0x20')]=qs['offset'](_0x440c79[_0xb334('0x39')][_0xb334('0x20')]);}_0x2fa9b1[_0xb334('0x41')]=qs[_0xb334('0x42')](_0x440c79[_0xb334('0x39')]['sort']);_0x2fa9b1[_0xb334('0x43')]=qs[_0xb334('0x3a')](_[_0xb334('0x44')](_0x440c79[_0xb334('0x39')],_0x13f4b4['filters']),_0x4b4da0);if(_0x440c79[_0xb334('0x39')]['filter']){_0x2fa9b1[_0xb334('0x43')]=_[_0xb334('0x45')](_0x2fa9b1[_0xb334('0x43')],{'$or':_[_0xb334('0x32')](_0x4b4da0,function(_0x16ff08){if(_0x16ff08['type']!==_0xb334('0x46')){var _0xbdbce8={};_0xbdbce8[_0x16ff08[_0xb334('0x2f')]]={'$like':'%'+_0x440c79[_0xb334('0x39')][_0xb334('0x47')]+'%'};return _0xbdbce8;}})});}_0x2fa9b1=_[_0xb334('0x45')]({},_0x2fa9b1,_0x440c79[_0xb334('0x48')]);var _0x3f611f={'where':_0x2fa9b1['where']};return db[_0xb334('0x33')][_0xb334('0x22')](_0x3f611f)[_0xb334('0x2a')](function(_0x2904d4){_0x1f35a6[_0xb334('0x22')]=_0x2904d4;if(_0x440c79[_0xb334('0x39')][_0xb334('0x49')]){_0x2fa9b1[_0xb334('0x4a')]=[{'all':!![]}];}return db['CmHopperAdditionalPhone'][_0xb334('0x4b')](_0x2fa9b1);})['then'](function(_0x32071f){_0x1f35a6['rows']=_0x32071f;return _0x1f35a6;})[_0xb334('0x2a')](respondWithFilteredResult(_0x3c9550,_0x2fa9b1))[_0xb334('0x4c')](handleError(_0x3c9550,null));};exports[_0xb334('0x4d')]=function(_0x37b771,_0x3e7d7d){var _0x447af4={'raw':!![],'where':{'id':_0x37b771['params']['id']}},_0xab7df2={};_0xab7df2['model']=_[_0xb334('0x38')](db[_0xb334('0x33')][_0xb334('0x34')]);_0xab7df2[_0xb334('0x39')]=_['keys'](_0x37b771[_0xb334('0x39')]);_0xab7df2[_0xb334('0x3a')]=_[_0xb334('0x3b')](_0xab7df2[_0xb334('0x37')],_0xab7df2[_0xb334('0x39')]);_0x447af4[_0xb334('0x3c')]=_[_0xb334('0x3b')](_0xab7df2[_0xb334('0x37')],qs[_0xb334('0x3d')](_0x37b771[_0xb334('0x39')][_0xb334('0x3d')]));_0x447af4[_0xb334('0x3c')]=_0x447af4[_0xb334('0x3c')][_0xb334('0x3e')]?_0x447af4[_0xb334('0x3c')]:_0xab7df2['model'];if(_0x37b771[_0xb334('0x39')][_0xb334('0x49')]){_0x447af4[_0xb334('0x4a')]=[{'all':!![]}];}_0x447af4=_['merge']({},_0x447af4,_0x37b771[_0xb334('0x48')]);return db[_0xb334('0x33')]['find'](_0x447af4)[_0xb334('0x2a')](handleEntityNotFound(_0x3e7d7d,null))[_0xb334('0x2a')](respondWithResult(_0x3e7d7d,null))['catch'](handleError(_0x3e7d7d,null));};exports[_0xb334('0x4e')]=function(_0x3102c5,_0x3c601d){return db[_0xb334('0x33')][_0xb334('0x4e')](_0x3102c5[_0xb334('0x4f')],{})[_0xb334('0x2a')](function(_0x5bf2c6){var _0x483300=_0x3102c5[_0xb334('0x50')][_0xb334('0x51')]({'plain':!![]});if(!_0x483300)throw new Error(_0xb334('0x52'));if(_0x483300[_0xb334('0x53')]===_0xb334('0x50')){var _0x4ac653=_0x5bf2c6[_0xb334('0x51')]({'plain':!![]});var _0x16659b=_0xb334('0x2c');return db[_0xb334('0x54')][_0xb334('0x55')]({'where':{'name':_0x16659b,'userProfileId':_0x483300[_0xb334('0x56')]},'raw':!![]})[_0xb334('0x2a')](function(_0x4b01c7){if(_0x4b01c7&&_0x4b01c7['autoAssociation']===0x0){return db['UserProfileResource']['create']({'name':_0x4ac653[_0xb334('0x2f')],'resourceId':_0x4ac653['id'],'type':_0x4b01c7['name'],'sectionId':_0x4b01c7['id']},{})[_0xb334('0x2a')](function(){return _0x5bf2c6;});}else{return _0x5bf2c6;}})[_0xb334('0x4c')](function(_0x3511e7){logger[_0xb334('0x2e')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x3511e7);throw _0x3511e7;});}return _0x5bf2c6;})[_0xb334('0x2a')](respondWithResult(_0x3c601d,0xc9))[_0xb334('0x4c')](handleError(_0x3c601d,null));};exports[_0xb334('0x29')]=function(_0x15a83c,_0x123f5f){if(_0x15a83c[_0xb334('0x4f')]['id']){delete _0x15a83c[_0xb334('0x4f')]['id'];}return db['CmHopperAdditionalPhone'][_0xb334('0x55')]({'where':{'id':_0x15a83c[_0xb334('0x57')]['id']}})[_0xb334('0x2a')](handleEntityNotFound(_0x123f5f,null))[_0xb334('0x2a')](saveUpdates(_0x15a83c[_0xb334('0x4f')],null))[_0xb334('0x2a')](respondWithResult(_0x123f5f,null))[_0xb334('0x4c')](handleError(_0x123f5f,null));};exports['destroy']=function(_0x30ee04,_0x544b9c){return db[_0xb334('0x33')]['find']({'where':{'id':_0x30ee04[_0xb334('0x57')]['id']}})[_0xb334('0x2a')](handleEntityNotFound(_0x544b9c,null))['then'](removeEntity(_0x544b9c,null))[_0xb334('0x4c')](handleError(_0x544b9c,null));};