Built motion from commit b0a9a629.|2.6.33
[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 _0x3d6f=['autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','eml-format','zip-dir','fast-json-patch','moment','bluebird','mustache','util','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','get','UserProfileResource','error','stack','map','CmHopperAdditionalPhone','rawAttributes','fieldName','type','key','query','keys','filters','intersection','attributes','model','fields','order','sort','where','pick','filter','merge','VIRTUAL','name','options','includeAll','include','findAll','rows','catch','show','params','length','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','UserProfileSection','find','userProfileId'];(function(_0x45e0f4,_0x357d06){var _0x2176d2=function(_0x4be810){while(--_0x4be810){_0x45e0f4['push'](_0x45e0f4['shift']());}};_0x2176d2(++_0x357d06);}(_0x3d6f,0xfb));var _0xf3d6=function(_0x24431a,_0x52459a){_0x24431a=_0x24431a-0x0;var _0x454ec7=_0x3d6f[_0x24431a];return _0x454ec7;};'use strict';var emlformat=require(_0xf3d6('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xf3d6('0x1'));var jsonpatch=require(_0xf3d6('0x2'));var rp=require('request-promise');var moment=require(_0xf3d6('0x3'));var BPromise=require(_0xf3d6('0x4'));var Mustache=require(_0xf3d6('0x5'));var util=require(_0xf3d6('0x6'));var path=require('path');var sox=require('sox');var csv=require(_0xf3d6('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xf3d6('0x8'));var _=require(_0xf3d6('0x9'));var squel=require(_0xf3d6('0xa'));var crypto=require(_0xf3d6('0xb'));var jsforce=require(_0xf3d6('0xc'));var deskjs=require(_0xf3d6('0xd'));var toCsv=require(_0xf3d6('0x7'));var querystring=require(_0xf3d6('0xe'));var Papa=require('papaparse');var Redis=require(_0xf3d6('0xf'));var authService=require(_0xf3d6('0x10'));var qs=require(_0xf3d6('0x11'));var as=require(_0xf3d6('0x12'));var hardwareService=require(_0xf3d6('0x13'));var logger=require(_0xf3d6('0x14'))('api');var utils=require(_0xf3d6('0x15'));var config=require(_0xf3d6('0x16'));var licenseUtil=require(_0xf3d6('0x17'));var db=require(_0xf3d6('0x18'))['db'];function respondWithStatusCode(_0x24689c,_0x29f7fb){_0x29f7fb=_0x29f7fb||0xcc;return function(_0x3ce2fc){if(_0x3ce2fc){return _0x24689c[_0xf3d6('0x19')](_0x29f7fb);}return _0x24689c['status'](_0x29f7fb)[_0xf3d6('0x1a')]();};}function respondWithResult(_0x282520,_0x5d5d16){_0x5d5d16=_0x5d5d16||0xc8;return function(_0x1a97ee){if(_0x1a97ee){return _0x282520[_0xf3d6('0x1b')](_0x5d5d16)[_0xf3d6('0x1c')](_0x1a97ee);}};}function respondWithFilteredResult(_0x3b248e,_0x221ee5){return function(_0xaa50d7){if(_0xaa50d7){var _0x5484ba=typeof _0x221ee5[_0xf3d6('0x1d')]===_0xf3d6('0x1e')&&typeof _0x221ee5[_0xf3d6('0x1f')]===_0xf3d6('0x1e');var _0x40c16c=_0xaa50d7[_0xf3d6('0x20')];var _0x5c42ca=_0x5484ba?0x0:_0x221ee5['offset'];var _0x9e7810=_0x5484ba?_0xaa50d7[_0xf3d6('0x20')]:_0x221ee5[_0xf3d6('0x1d')]+_0x221ee5['limit'];var _0x2a66a8;if(_0x9e7810>=_0x40c16c){_0x9e7810=_0x40c16c;_0x2a66a8=0xc8;}else{_0x2a66a8=0xce;}_0x3b248e[_0xf3d6('0x1b')](_0x2a66a8);return _0x3b248e[_0xf3d6('0x21')](_0xf3d6('0x22'),_0x5c42ca+'-'+_0x9e7810+'/'+_0x40c16c)[_0xf3d6('0x1c')](_0xaa50d7);}return null;};}function patchUpdates(_0x187b0a){return function(_0x228673){try{jsonpatch[_0xf3d6('0x23')](_0x228673,_0x187b0a,!![]);}catch(_0x51c320){return BPromise[_0xf3d6('0x24')](_0x51c320);}return _0x228673[_0xf3d6('0x25')]();};}function saveUpdates(_0x254dc9,_0x369575){return function(_0x56bcea){if(_0x56bcea){return _0x56bcea[_0xf3d6('0x26')](_0x254dc9)[_0xf3d6('0x27')](function(_0x8a2bca){return _0x8a2bca;});}return null;};}function removeEntity(_0x1d09d4,_0x479167){return function(_0x14cc8b){if(_0x14cc8b){return _0x14cc8b[_0xf3d6('0x28')]()[_0xf3d6('0x27')](function(){var _0x4d93cd=_0x14cc8b[_0xf3d6('0x29')]({'plain':!![]});var _0x577291='CmHopperAdditionalPhones';return db[_0xf3d6('0x2a')]['destroy']({'where':{'type':_0x577291,'resourceId':_0x4d93cd['id']}})['then'](function(){return _0x14cc8b;});})[_0xf3d6('0x27')](function(){_0x1d09d4['status'](0xcc)[_0xf3d6('0x1a')]();});}};}function handleEntityNotFound(_0x3718b8,_0x25a5b2){return function(_0x554671){if(!_0x554671){_0x3718b8[_0xf3d6('0x19')](0x194);}return _0x554671;};}function handleError(_0x39b4ae,_0x10fddf){_0x10fddf=_0x10fddf||0x1f4;return function(_0x3cd555){logger[_0xf3d6('0x2b')](_0x3cd555[_0xf3d6('0x2c')]);if(_0x3cd555['name']){delete _0x3cd555['name'];}_0x39b4ae[_0xf3d6('0x1b')](_0x10fddf)['send'](_0x3cd555);};}exports['index']=function(_0x5e8bc0,_0x15dbd7){var _0x3661cd={},_0x12e8f2={},_0x21fdf5={'count':0x0,'rows':[]};var _0x3410bd=_[_0xf3d6('0x2d')](db[_0xf3d6('0x2e')][_0xf3d6('0x2f')],function(_0x596f11){return{'name':_0x596f11[_0xf3d6('0x30')],'type':_0x596f11[_0xf3d6('0x31')][_0xf3d6('0x32')]};});_0x12e8f2['model']=_[_0xf3d6('0x2d')](_0x3410bd,'name');_0x12e8f2[_0xf3d6('0x33')]=_[_0xf3d6('0x34')](_0x5e8bc0[_0xf3d6('0x33')]);_0x12e8f2[_0xf3d6('0x35')]=_[_0xf3d6('0x36')](_0x12e8f2['model'],_0x12e8f2[_0xf3d6('0x33')]);_0x3661cd[_0xf3d6('0x37')]=_['intersection'](_0x12e8f2[_0xf3d6('0x38')],qs[_0xf3d6('0x39')](_0x5e8bc0[_0xf3d6('0x33')][_0xf3d6('0x39')]));_0x3661cd[_0xf3d6('0x37')]=_0x3661cd[_0xf3d6('0x37')]['length']?_0x3661cd['attributes']:_0x12e8f2[_0xf3d6('0x38')];if(!_0x5e8bc0[_0xf3d6('0x33')]['hasOwnProperty']('nolimit')){_0x3661cd[_0xf3d6('0x1f')]=qs[_0xf3d6('0x1f')](_0x5e8bc0[_0xf3d6('0x33')][_0xf3d6('0x1f')]);_0x3661cd['offset']=qs[_0xf3d6('0x1d')](_0x5e8bc0['query'][_0xf3d6('0x1d')]);}_0x3661cd[_0xf3d6('0x3a')]=qs[_0xf3d6('0x3b')](_0x5e8bc0['query'][_0xf3d6('0x3b')]);_0x3661cd[_0xf3d6('0x3c')]=qs[_0xf3d6('0x35')](_[_0xf3d6('0x3d')](_0x5e8bc0[_0xf3d6('0x33')],_0x12e8f2['filters']),_0x3410bd);if(_0x5e8bc0[_0xf3d6('0x33')][_0xf3d6('0x3e')]){_0x3661cd[_0xf3d6('0x3c')]=_[_0xf3d6('0x3f')](_0x3661cd[_0xf3d6('0x3c')],{'$or':_[_0xf3d6('0x2d')](_0x3410bd,function(_0x598073){if(_0x598073[_0xf3d6('0x31')]!==_0xf3d6('0x40')){var _0x500a7a={};_0x500a7a[_0x598073[_0xf3d6('0x41')]]={'$like':'%'+_0x5e8bc0[_0xf3d6('0x33')]['filter']+'%'};return _0x500a7a;}})});}_0x3661cd=_[_0xf3d6('0x3f')]({},_0x3661cd,_0x5e8bc0[_0xf3d6('0x42')]);var _0x704d4c={'where':_0x3661cd['where']};return db['CmHopperAdditionalPhone']['count'](_0x704d4c)[_0xf3d6('0x27')](function(_0x477fe2){_0x21fdf5[_0xf3d6('0x20')]=_0x477fe2;if(_0x5e8bc0[_0xf3d6('0x33')][_0xf3d6('0x43')]){_0x3661cd[_0xf3d6('0x44')]=[{'all':!![]}];}return db[_0xf3d6('0x2e')][_0xf3d6('0x45')](_0x3661cd);})['then'](function(_0x2c77ff){_0x21fdf5[_0xf3d6('0x46')]=_0x2c77ff;return _0x21fdf5;})['then'](respondWithFilteredResult(_0x15dbd7,_0x3661cd))[_0xf3d6('0x47')](handleError(_0x15dbd7,null));};exports[_0xf3d6('0x48')]=function(_0x372644,_0x288baa){var _0x415cd4={'raw':!![],'where':{'id':_0x372644[_0xf3d6('0x49')]['id']}},_0x453367={};_0x453367[_0xf3d6('0x38')]=_[_0xf3d6('0x34')](db['CmHopperAdditionalPhone'][_0xf3d6('0x2f')]);_0x453367['query']=_['keys'](_0x372644['query']);_0x453367[_0xf3d6('0x35')]=_[_0xf3d6('0x36')](_0x453367['model'],_0x453367['query']);_0x415cd4[_0xf3d6('0x37')]=_[_0xf3d6('0x36')](_0x453367[_0xf3d6('0x38')],qs[_0xf3d6('0x39')](_0x372644[_0xf3d6('0x33')][_0xf3d6('0x39')]));_0x415cd4['attributes']=_0x415cd4[_0xf3d6('0x37')][_0xf3d6('0x4a')]?_0x415cd4['attributes']:_0x453367['model'];if(_0x372644[_0xf3d6('0x33')][_0xf3d6('0x43')]){_0x415cd4[_0xf3d6('0x44')]=[{'all':!![]}];}_0x415cd4=_['merge']({},_0x415cd4,_0x372644['options']);return db[_0xf3d6('0x2e')]['find'](_0x415cd4)[_0xf3d6('0x27')](handleEntityNotFound(_0x288baa,null))[_0xf3d6('0x27')](respondWithResult(_0x288baa,null))['catch'](handleError(_0x288baa,null));};exports[_0xf3d6('0x4b')]=function(_0x4acd55,_0x6d1039){return db[_0xf3d6('0x2e')][_0xf3d6('0x4b')](_0x4acd55[_0xf3d6('0x4c')],{})[_0xf3d6('0x27')](function(_0xef5d6d){var _0x58687b=_0x4acd55['user'][_0xf3d6('0x29')]({'plain':!![]});if(!_0x58687b)throw new Error(_0xf3d6('0x4d'));if(_0x58687b['role']==='user'){var _0x12f513=_0xef5d6d[_0xf3d6('0x29')]({'plain':!![]});var _0x4aee31='CmHopperAdditionalPhones';return db[_0xf3d6('0x4e')][_0xf3d6('0x4f')]({'where':{'name':_0x4aee31,'userProfileId':_0x58687b[_0xf3d6('0x50')]},'raw':!![]})['then'](function(_0x311217){if(_0x311217&&_0x311217[_0xf3d6('0x51')]===0x0){return db[_0xf3d6('0x2a')][_0xf3d6('0x4b')]({'name':_0x12f513[_0xf3d6('0x41')],'resourceId':_0x12f513['id'],'type':_0x311217['name'],'sectionId':_0x311217['id']},{})[_0xf3d6('0x27')](function(){return _0xef5d6d;});}else{return _0xef5d6d;}})['catch'](function(_0x38a0f7){logger[_0xf3d6('0x2b')](_0xf3d6('0x52'),_0x38a0f7);throw _0x38a0f7;});}return _0xef5d6d;})['then'](respondWithResult(_0x6d1039,0xc9))['catch'](handleError(_0x6d1039,null));};exports[_0xf3d6('0x26')]=function(_0x574339,_0x496584){if(_0x574339[_0xf3d6('0x4c')]['id']){delete _0x574339['body']['id'];}return db['CmHopperAdditionalPhone'][_0xf3d6('0x4f')]({'where':{'id':_0x574339[_0xf3d6('0x49')]['id']}})[_0xf3d6('0x27')](handleEntityNotFound(_0x496584,null))[_0xf3d6('0x27')](saveUpdates(_0x574339['body'],null))[_0xf3d6('0x27')](respondWithResult(_0x496584,null))[_0xf3d6('0x47')](handleError(_0x496584,null));};exports[_0xf3d6('0x28')]=function(_0x1d6bc2,_0x2a5989){return db[_0xf3d6('0x2e')][_0xf3d6('0x4f')]({'where':{'id':_0x1d6bc2['params']['id']}})['then'](handleEntityNotFound(_0x2a5989,null))[_0xf3d6('0x27')](removeEntity(_0x2a5989,null))['catch'](handleError(_0x2a5989,null));};