Built motion from commit e1760111.|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 _0x6e31=['merge','where','VIRTUAL','filter','includeAll','rows','catch','show','params','include','options','find','create','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','eml-format','rimraf','fast-json-patch','mustache','util','path','sox','ejs','fs-extra','lodash','squel','jsforce','desk.js','to-csv','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','undefined','count','offset','limit','status','set','Content-Range','json','apply','reject','save','update','then','destroy','CmHopperAdditionalPhones','UserProfileResource','end','error','stack','name','send','index','CmHopperAdditionalPhone','rawAttributes','key','model','map','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','filters'];(function(_0x5b11c3,_0x126c21){var _0x586d00=function(_0x4e87b8){while(--_0x4e87b8){_0x5b11c3['push'](_0x5b11c3['shift']());}};_0x586d00(++_0x126c21);}(_0x6e31,0xb9));var _0x16e3=function(_0x3b0f26,_0x1085a9){_0x3b0f26=_0x3b0f26-0x0;var _0x41887c=_0x6e31[_0x3b0f26];return _0x41887c;};'use strict';var emlformat=require(_0x16e3('0x0'));var rimraf=require(_0x16e3('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x16e3('0x2'));var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x16e3('0x3'));var util=require(_0x16e3('0x4'));var path=require(_0x16e3('0x5'));var sox=require(_0x16e3('0x6'));var csv=require('to-csv');var ejs=require(_0x16e3('0x7'));var fs=require('fs');var fs_extra=require(_0x16e3('0x8'));var _=require(_0x16e3('0x9'));var squel=require(_0x16e3('0xa'));var crypto=require('crypto');var jsforce=require(_0x16e3('0xb'));var deskjs=require(_0x16e3('0xc'));var toCsv=require(_0x16e3('0xd'));var querystring=require('querystring');var Papa=require(_0x16e3('0xe'));var Redis=require(_0x16e3('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x16e3('0x10'));var as=require(_0x16e3('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x16e3('0x12'));var utils=require(_0x16e3('0x13'));var config=require(_0x16e3('0x14'));var licenseUtil=require('../../config/license/util');var db=require(_0x16e3('0x15'))['db'];function respondWithStatusCode(_0x3dc50d,_0x1a0f1a){_0x1a0f1a=_0x1a0f1a||0xcc;return function(_0x4a34a4){if(_0x4a34a4){return _0x3dc50d[_0x16e3('0x16')](_0x1a0f1a);}return _0x3dc50d['status'](_0x1a0f1a)['end']();};}function respondWithResult(_0x107b6a,_0x45e721){_0x45e721=_0x45e721||0xc8;return function(_0x32b330){if(_0x32b330){return _0x107b6a['status'](_0x45e721)['json'](_0x32b330);}};}function respondWithFilteredResult(_0x3dacc2,_0x1e6b5c){return function(_0x1a8a5a){if(_0x1a8a5a){var _0x191606=typeof _0x1e6b5c['offset']===_0x16e3('0x17')&&typeof _0x1e6b5c['limit']===_0x16e3('0x17');var _0xa9d87a=_0x1a8a5a[_0x16e3('0x18')];var _0x3f9e5b=_0x191606?0x0:_0x1e6b5c[_0x16e3('0x19')];var _0x54d172=_0x191606?_0x1a8a5a['count']:_0x1e6b5c['offset']+_0x1e6b5c[_0x16e3('0x1a')];var _0x5f3f9b;if(_0x54d172>=_0xa9d87a){_0x54d172=_0xa9d87a;_0x5f3f9b=0xc8;}else{_0x5f3f9b=0xce;}_0x3dacc2[_0x16e3('0x1b')](_0x5f3f9b);return _0x3dacc2[_0x16e3('0x1c')](_0x16e3('0x1d'),_0x3f9e5b+'-'+_0x54d172+'/'+_0xa9d87a)[_0x16e3('0x1e')](_0x1a8a5a);}return null;};}function patchUpdates(_0x3a6dd5){return function(_0x20001e){try{jsonpatch[_0x16e3('0x1f')](_0x20001e,_0x3a6dd5,!![]);}catch(_0x4b0f09){return BPromise[_0x16e3('0x20')](_0x4b0f09);}return _0x20001e[_0x16e3('0x21')]();};}function saveUpdates(_0x489aed,_0x528a3d){return function(_0x5a3308){if(_0x5a3308){return _0x5a3308[_0x16e3('0x22')](_0x489aed)[_0x16e3('0x23')](function(_0x1443e9){return _0x1443e9;});}return null;};}function removeEntity(_0x205a46,_0x5e317b){return function(_0x4831fd){if(_0x4831fd){return _0x4831fd[_0x16e3('0x24')]()[_0x16e3('0x23')](function(){var _0x54d4e8=_0x4831fd['get']({'plain':!![]});var _0x48c3b8=_0x16e3('0x25');return db[_0x16e3('0x26')]['destroy']({'where':{'type':_0x48c3b8,'resourceId':_0x54d4e8['id']}})['then'](function(){return _0x4831fd;});})[_0x16e3('0x23')](function(){_0x205a46[_0x16e3('0x1b')](0xcc)[_0x16e3('0x27')]();});}};}function handleEntityNotFound(_0x52b755,_0xf20fd6){return function(_0x45202c){if(!_0x45202c){_0x52b755[_0x16e3('0x16')](0x194);}return _0x45202c;};}function handleError(_0x43b6da,_0x33ea02){_0x33ea02=_0x33ea02||0x1f4;return function(_0x12e052){logger[_0x16e3('0x28')](_0x12e052[_0x16e3('0x29')]);if(_0x12e052[_0x16e3('0x2a')]){delete _0x12e052['name'];}_0x43b6da[_0x16e3('0x1b')](_0x33ea02)[_0x16e3('0x2b')](_0x12e052);};}exports[_0x16e3('0x2c')]=function(_0x1fed25,_0x1c9e67){var _0x283d62={},_0x23511c={},_0x55beb5={'count':0x0,'rows':[]};var _0x16eaaa=_['map'](db[_0x16e3('0x2d')][_0x16e3('0x2e')],function(_0xd3c23a){return{'name':_0xd3c23a['fieldName'],'type':_0xd3c23a['type'][_0x16e3('0x2f')]};});_0x23511c[_0x16e3('0x30')]=_[_0x16e3('0x31')](_0x16eaaa,'name');_0x23511c[_0x16e3('0x32')]=_[_0x16e3('0x33')](_0x1fed25[_0x16e3('0x32')]);_0x23511c['filters']=_[_0x16e3('0x34')](_0x23511c[_0x16e3('0x30')],_0x23511c[_0x16e3('0x32')]);_0x283d62[_0x16e3('0x35')]=_['intersection'](_0x23511c['model'],qs['fields'](_0x1fed25[_0x16e3('0x32')][_0x16e3('0x36')]));_0x283d62[_0x16e3('0x35')]=_0x283d62['attributes'][_0x16e3('0x37')]?_0x283d62['attributes']:_0x23511c[_0x16e3('0x30')];if(!_0x1fed25[_0x16e3('0x32')][_0x16e3('0x38')](_0x16e3('0x39'))){_0x283d62['limit']=qs['limit'](_0x1fed25[_0x16e3('0x32')][_0x16e3('0x1a')]);_0x283d62['offset']=qs[_0x16e3('0x19')](_0x1fed25[_0x16e3('0x32')][_0x16e3('0x19')]);}_0x283d62[_0x16e3('0x3a')]=qs[_0x16e3('0x3b')](_0x1fed25['query'][_0x16e3('0x3b')]);_0x283d62['where']=qs['filters'](_['pick'](_0x1fed25['query'],_0x23511c[_0x16e3('0x3c')]),_0x16eaaa);if(_0x1fed25[_0x16e3('0x32')]['filter']){_0x283d62['where']=_[_0x16e3('0x3d')](_0x283d62[_0x16e3('0x3e')],{'$or':_[_0x16e3('0x31')](_0x16eaaa,function(_0x440964){if(_0x440964['type']!==_0x16e3('0x3f')){var _0x324eb2={};_0x324eb2[_0x440964['name']]={'$like':'%'+_0x1fed25[_0x16e3('0x32')][_0x16e3('0x40')]+'%'};return _0x324eb2;}})});}_0x283d62=_[_0x16e3('0x3d')]({},_0x283d62,_0x1fed25['options']);var _0x542fbb={'where':_0x283d62[_0x16e3('0x3e')]};return db[_0x16e3('0x2d')]['count'](_0x542fbb)[_0x16e3('0x23')](function(_0x5a85d8){_0x55beb5[_0x16e3('0x18')]=_0x5a85d8;if(_0x1fed25['query'][_0x16e3('0x41')]){_0x283d62['include']=[{'all':!![]}];}return db[_0x16e3('0x2d')]['findAll'](_0x283d62);})[_0x16e3('0x23')](function(_0x245146){_0x55beb5[_0x16e3('0x42')]=_0x245146;return _0x55beb5;})['then'](respondWithFilteredResult(_0x1c9e67,_0x283d62))[_0x16e3('0x43')](handleError(_0x1c9e67,null));};exports[_0x16e3('0x44')]=function(_0x35aafc,_0x20528e){var _0x4c13ce={'raw':!![],'where':{'id':_0x35aafc[_0x16e3('0x45')]['id']}},_0x56cdfa={};_0x56cdfa[_0x16e3('0x30')]=_[_0x16e3('0x33')](db['CmHopperAdditionalPhone'][_0x16e3('0x2e')]);_0x56cdfa[_0x16e3('0x32')]=_[_0x16e3('0x33')](_0x35aafc[_0x16e3('0x32')]);_0x56cdfa[_0x16e3('0x3c')]=_[_0x16e3('0x34')](_0x56cdfa[_0x16e3('0x30')],_0x56cdfa[_0x16e3('0x32')]);_0x4c13ce[_0x16e3('0x35')]=_[_0x16e3('0x34')](_0x56cdfa[_0x16e3('0x30')],qs['fields'](_0x35aafc[_0x16e3('0x32')][_0x16e3('0x36')]));_0x4c13ce[_0x16e3('0x35')]=_0x4c13ce[_0x16e3('0x35')][_0x16e3('0x37')]?_0x4c13ce[_0x16e3('0x35')]:_0x56cdfa[_0x16e3('0x30')];if(_0x35aafc[_0x16e3('0x32')][_0x16e3('0x41')]){_0x4c13ce[_0x16e3('0x46')]=[{'all':!![]}];}_0x4c13ce=_[_0x16e3('0x3d')]({},_0x4c13ce,_0x35aafc[_0x16e3('0x47')]);return db[_0x16e3('0x2d')][_0x16e3('0x48')](_0x4c13ce)[_0x16e3('0x23')](handleEntityNotFound(_0x20528e,null))[_0x16e3('0x23')](respondWithResult(_0x20528e,null))[_0x16e3('0x43')](handleError(_0x20528e,null));};exports[_0x16e3('0x49')]=function(_0x3678d4,_0x6fd2e4){return db['CmHopperAdditionalPhone'][_0x16e3('0x49')](_0x3678d4['body'],{})['then'](function(_0x49a014){var _0x16d966=_0x3678d4['user'][_0x16e3('0x4a')]({'plain':!![]});if(!_0x16d966)throw new Error(_0x16e3('0x4b'));if(_0x16d966[_0x16e3('0x4c')]==='user'){var _0x48825d=_0x49a014[_0x16e3('0x4a')]({'plain':!![]});var _0x19f8c2=_0x16e3('0x25');return db[_0x16e3('0x4d')][_0x16e3('0x48')]({'where':{'name':_0x19f8c2,'userProfileId':_0x16d966[_0x16e3('0x4e')]},'raw':!![]})[_0x16e3('0x23')](function(_0x422abf){if(_0x422abf&&_0x422abf[_0x16e3('0x4f')]===0x0){return db[_0x16e3('0x26')]['create']({'name':_0x48825d[_0x16e3('0x2a')],'resourceId':_0x48825d['id'],'type':_0x422abf[_0x16e3('0x2a')],'sectionId':_0x422abf['id']},{})['then'](function(){return _0x49a014;});}else{return _0x49a014;}})[_0x16e3('0x43')](function(_0x1640f6){logger[_0x16e3('0x28')](_0x16e3('0x50'),_0x1640f6);throw _0x1640f6;});}return _0x49a014;})[_0x16e3('0x23')](respondWithResult(_0x6fd2e4,0xc9))[_0x16e3('0x43')](handleError(_0x6fd2e4,null));};exports['update']=function(_0x412a47,_0x5da4ba){if(_0x412a47[_0x16e3('0x51')]['id']){delete _0x412a47[_0x16e3('0x51')]['id'];}return db[_0x16e3('0x2d')]['find']({'where':{'id':_0x412a47[_0x16e3('0x45')]['id']}})[_0x16e3('0x23')](handleEntityNotFound(_0x5da4ba,null))['then'](saveUpdates(_0x412a47['body'],null))[_0x16e3('0x23')](respondWithResult(_0x5da4ba,null))[_0x16e3('0x43')](handleError(_0x5da4ba,null));};exports['destroy']=function(_0x30c39e,_0x274e55){return db['CmHopperAdditionalPhone']['find']({'where':{'id':_0x30c39e[_0x16e3('0x45')]['id']}})['then'](handleEntityNotFound(_0x274e55,null))[_0x16e3('0x23')](removeEntity(_0x274e55,null))[_0x16e3('0x43')](handleError(_0x274e55,null));};