Built motion from commit 351e7f9c.|2.6.31
[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 _0x74ca=['key','query','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','pick','filter','where','merge','includeAll','include','findAll','catch','show','params','keys','find','create','body','user','role','CmHopperAdditionalPhones','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','squel','crypto','jsforce','desk.js','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','sendStatus','json','offset','limit','undefined','count','status','Content-Range','update','then','destroy','UserProfileResource','end','error','name','index','map','CmHopperAdditionalPhone','rawAttributes','fieldName','type'];(function(_0x14a0a0,_0x45d0cf){var _0x56b651=function(_0x1fae09){while(--_0x1fae09){_0x14a0a0['push'](_0x14a0a0['shift']());}};_0x56b651(++_0x45d0cf);}(_0x74ca,0x1ab));var _0xa74c=function(_0xa4c371,_0x401043){_0xa4c371=_0xa4c371-0x0;var _0x3f0791=_0x74ca[_0xa4c371];return _0x3f0791;};'use strict';var emlformat=require(_0xa74c('0x0'));var rimraf=require(_0xa74c('0x1'));var zipdir=require(_0xa74c('0x2'));var jsonpatch=require(_0xa74c('0x3'));var rp=require(_0xa74c('0x4'));var moment=require(_0xa74c('0x5'));var BPromise=require(_0xa74c('0x6'));var Mustache=require(_0xa74c('0x7'));var util=require(_0xa74c('0x8'));var path=require(_0xa74c('0x9'));var sox=require(_0xa74c('0xa'));var csv=require(_0xa74c('0xb'));var ejs=require(_0xa74c('0xc'));var fs=require('fs');var fs_extra=require(_0xa74c('0xd'));var _=require('lodash');var squel=require(_0xa74c('0xe'));var crypto=require(_0xa74c('0xf'));var jsforce=require(_0xa74c('0x10'));var deskjs=require(_0xa74c('0x11'));var toCsv=require(_0xa74c('0xb'));var querystring=require('querystring');var Papa=require(_0xa74c('0x12'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0xa74c('0x13'));var as=require(_0xa74c('0x14'));var hardwareService=require(_0xa74c('0x15'));var logger=require(_0xa74c('0x16'))(_0xa74c('0x17'));var utils=require(_0xa74c('0x18'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xa74c('0x19'))['db'];function respondWithStatusCode(_0x191bcb,_0x1550f2){_0x1550f2=_0x1550f2||0xcc;return function(_0x3faec0){if(_0x3faec0){return _0x191bcb[_0xa74c('0x1a')](_0x1550f2);}return _0x191bcb['status'](_0x1550f2)['end']();};}function respondWithResult(_0x4e45cb,_0x4bb261){_0x4bb261=_0x4bb261||0xc8;return function(_0xd89420){if(_0xd89420){return _0x4e45cb['status'](_0x4bb261)[_0xa74c('0x1b')](_0xd89420);}};}function respondWithFilteredResult(_0x13d3a7,_0x3464ef){return function(_0x4e669c){if(_0x4e669c){var _0x2f2e23=typeof _0x3464ef[_0xa74c('0x1c')]==='undefined'&&typeof _0x3464ef[_0xa74c('0x1d')]===_0xa74c('0x1e');var _0x1c8171=_0x4e669c[_0xa74c('0x1f')];var _0x4d2f28=_0x2f2e23?0x0:_0x3464ef['offset'];var _0x1862c8=_0x2f2e23?_0x4e669c[_0xa74c('0x1f')]:_0x3464ef[_0xa74c('0x1c')]+_0x3464ef['limit'];var _0x286b0d;if(_0x1862c8>=_0x1c8171){_0x1862c8=_0x1c8171;_0x286b0d=0xc8;}else{_0x286b0d=0xce;}_0x13d3a7[_0xa74c('0x20')](_0x286b0d);return _0x13d3a7['set'](_0xa74c('0x21'),_0x4d2f28+'-'+_0x1862c8+'/'+_0x1c8171)[_0xa74c('0x1b')](_0x4e669c);}return null;};}function patchUpdates(_0x4d81e5){return function(_0x5eaeed){try{jsonpatch['apply'](_0x5eaeed,_0x4d81e5,!![]);}catch(_0x209de4){return BPromise['reject'](_0x209de4);}return _0x5eaeed['save']();};}function saveUpdates(_0x370cb3,_0x55e693){return function(_0x541469){if(_0x541469){return _0x541469[_0xa74c('0x22')](_0x370cb3)[_0xa74c('0x23')](function(_0x3d9af3){return _0x3d9af3;});}return null;};}function removeEntity(_0x4de187,_0x2439cb){return function(_0x538936){if(_0x538936){return _0x538936[_0xa74c('0x24')]()[_0xa74c('0x23')](function(){var _0x38fb4a=_0x538936['get']({'plain':!![]});var _0x248c64='CmHopperAdditionalPhones';return db[_0xa74c('0x25')]['destroy']({'where':{'type':_0x248c64,'resourceId':_0x38fb4a['id']}})[_0xa74c('0x23')](function(){return _0x538936;});})['then'](function(){_0x4de187[_0xa74c('0x20')](0xcc)[_0xa74c('0x26')]();});}};}function handleEntityNotFound(_0x13b581,_0x11b726){return function(_0x3c8409){if(!_0x3c8409){_0x13b581[_0xa74c('0x1a')](0x194);}return _0x3c8409;};}function handleError(_0x13b0c4,_0x206b4b){_0x206b4b=_0x206b4b||0x1f4;return function(_0x87a5bc){logger[_0xa74c('0x27')](_0x87a5bc['stack']);if(_0x87a5bc[_0xa74c('0x28')]){delete _0x87a5bc[_0xa74c('0x28')];}_0x13b0c4[_0xa74c('0x20')](_0x206b4b)['send'](_0x87a5bc);};}exports[_0xa74c('0x29')]=function(_0x4b80a3,_0x4e2c1d){var _0x5e09c9={},_0x4edd5b={},_0x54c5bc={'count':0x0,'rows':[]};var _0x762818=_[_0xa74c('0x2a')](db[_0xa74c('0x2b')][_0xa74c('0x2c')],function(_0x2644e9){return{'name':_0x2644e9[_0xa74c('0x2d')],'type':_0x2644e9[_0xa74c('0x2e')][_0xa74c('0x2f')]};});_0x4edd5b['model']=_['map'](_0x762818,_0xa74c('0x28'));_0x4edd5b[_0xa74c('0x30')]=_['keys'](_0x4b80a3['query']);_0x4edd5b[_0xa74c('0x31')]=_[_0xa74c('0x32')](_0x4edd5b[_0xa74c('0x33')],_0x4edd5b[_0xa74c('0x30')]);_0x5e09c9[_0xa74c('0x34')]=_['intersection'](_0x4edd5b[_0xa74c('0x33')],qs['fields'](_0x4b80a3['query'][_0xa74c('0x35')]));_0x5e09c9['attributes']=_0x5e09c9[_0xa74c('0x34')][_0xa74c('0x36')]?_0x5e09c9[_0xa74c('0x34')]:_0x4edd5b[_0xa74c('0x33')];if(!_0x4b80a3['query'][_0xa74c('0x37')](_0xa74c('0x38'))){_0x5e09c9[_0xa74c('0x1d')]=qs[_0xa74c('0x1d')](_0x4b80a3[_0xa74c('0x30')][_0xa74c('0x1d')]);_0x5e09c9[_0xa74c('0x1c')]=qs[_0xa74c('0x1c')](_0x4b80a3[_0xa74c('0x30')][_0xa74c('0x1c')]);}_0x5e09c9[_0xa74c('0x39')]=qs['sort'](_0x4b80a3[_0xa74c('0x30')]['sort']);_0x5e09c9['where']=qs[_0xa74c('0x31')](_[_0xa74c('0x3a')](_0x4b80a3['query'],_0x4edd5b[_0xa74c('0x31')]),_0x762818);if(_0x4b80a3[_0xa74c('0x30')][_0xa74c('0x3b')]){_0x5e09c9[_0xa74c('0x3c')]=_[_0xa74c('0x3d')](_0x5e09c9['where'],{'$or':_['map'](_0x762818,function(_0x6365c3){if(_0x6365c3['type']!=='VIRTUAL'){var _0x3ab651={};_0x3ab651[_0x6365c3['name']]={'$like':'%'+_0x4b80a3['query'][_0xa74c('0x3b')]+'%'};return _0x3ab651;}})});}_0x5e09c9=_[_0xa74c('0x3d')]({},_0x5e09c9,_0x4b80a3['options']);var _0x10a1d5={'where':_0x5e09c9['where']};return db['CmHopperAdditionalPhone']['count'](_0x10a1d5)[_0xa74c('0x23')](function(_0x4518eb){_0x54c5bc[_0xa74c('0x1f')]=_0x4518eb;if(_0x4b80a3['query'][_0xa74c('0x3e')]){_0x5e09c9[_0xa74c('0x3f')]=[{'all':!![]}];}return db['CmHopperAdditionalPhone'][_0xa74c('0x40')](_0x5e09c9);})[_0xa74c('0x23')](function(_0x99726c){_0x54c5bc['rows']=_0x99726c;return _0x54c5bc;})['then'](respondWithFilteredResult(_0x4e2c1d,_0x5e09c9))[_0xa74c('0x41')](handleError(_0x4e2c1d,null));};exports[_0xa74c('0x42')]=function(_0x38e23b,_0x1b9ede){var _0x2a4b28={'raw':!![],'where':{'id':_0x38e23b[_0xa74c('0x43')]['id']}},_0x5f2de4={};_0x5f2de4[_0xa74c('0x33')]=_[_0xa74c('0x44')](db[_0xa74c('0x2b')][_0xa74c('0x2c')]);_0x5f2de4[_0xa74c('0x30')]=_[_0xa74c('0x44')](_0x38e23b['query']);_0x5f2de4['filters']=_[_0xa74c('0x32')](_0x5f2de4[_0xa74c('0x33')],_0x5f2de4[_0xa74c('0x30')]);_0x2a4b28[_0xa74c('0x34')]=_[_0xa74c('0x32')](_0x5f2de4[_0xa74c('0x33')],qs[_0xa74c('0x35')](_0x38e23b[_0xa74c('0x30')][_0xa74c('0x35')]));_0x2a4b28['attributes']=_0x2a4b28[_0xa74c('0x34')]['length']?_0x2a4b28[_0xa74c('0x34')]:_0x5f2de4['model'];if(_0x38e23b[_0xa74c('0x30')][_0xa74c('0x3e')]){_0x2a4b28[_0xa74c('0x3f')]=[{'all':!![]}];}_0x2a4b28=_[_0xa74c('0x3d')]({},_0x2a4b28,_0x38e23b['options']);return db[_0xa74c('0x2b')][_0xa74c('0x45')](_0x2a4b28)['then'](handleEntityNotFound(_0x1b9ede,null))[_0xa74c('0x23')](respondWithResult(_0x1b9ede,null))[_0xa74c('0x41')](handleError(_0x1b9ede,null));};exports['create']=function(_0x12a24a,_0x1ad740){return db[_0xa74c('0x2b')][_0xa74c('0x46')](_0x12a24a[_0xa74c('0x47')],{})[_0xa74c('0x23')](function(_0x5c0610){var _0x32dbda=_0x12a24a[_0xa74c('0x48')]['get']({'plain':!![]});if(!_0x32dbda)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x32dbda[_0xa74c('0x49')]==='user'){var _0x558fa5=_0x5c0610['get']({'plain':!![]});var _0x11aa6d=_0xa74c('0x4a');return db[_0xa74c('0x4b')]['find']({'where':{'name':_0x11aa6d,'userProfileId':_0x32dbda[_0xa74c('0x4c')]},'raw':!![]})[_0xa74c('0x23')](function(_0x19b9c7){if(_0x19b9c7&&_0x19b9c7[_0xa74c('0x4d')]===0x0){return db[_0xa74c('0x25')][_0xa74c('0x46')]({'name':_0x558fa5[_0xa74c('0x28')],'resourceId':_0x558fa5['id'],'type':_0x19b9c7[_0xa74c('0x28')],'sectionId':_0x19b9c7['id']},{})[_0xa74c('0x23')](function(){return _0x5c0610;});}else{return _0x5c0610;}})[_0xa74c('0x41')](function(_0x26704d){logger[_0xa74c('0x27')](_0xa74c('0x4e'),_0x26704d);throw _0x26704d;});}return _0x5c0610;})[_0xa74c('0x23')](respondWithResult(_0x1ad740,0xc9))[_0xa74c('0x41')](handleError(_0x1ad740,null));};exports[_0xa74c('0x22')]=function(_0xfea55d,_0x32af89){if(_0xfea55d[_0xa74c('0x47')]['id']){delete _0xfea55d[_0xa74c('0x47')]['id'];}return db[_0xa74c('0x2b')][_0xa74c('0x45')]({'where':{'id':_0xfea55d[_0xa74c('0x43')]['id']}})[_0xa74c('0x23')](handleEntityNotFound(_0x32af89,null))[_0xa74c('0x23')](saveUpdates(_0xfea55d[_0xa74c('0x47')],null))[_0xa74c('0x23')](respondWithResult(_0x32af89,null))[_0xa74c('0x41')](handleError(_0x32af89,null));};exports['destroy']=function(_0x848241,_0x3142e5){return db[_0xa74c('0x2b')][_0xa74c('0x45')]({'where':{'id':_0x848241[_0xa74c('0x43')]['id']}})[_0xa74c('0x23')](handleEntityNotFound(_0x3142e5,null))[_0xa74c('0x23')](removeEntity(_0x3142e5,null))[_0xa74c('0x41')](handleError(_0x3142e5,null));};