cc0e52a937e0d68ab5bdd2a1ce31c29aa58de93e
[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 _0x5398=['../../config/utils','../../config/environment','../../mysqldb','end','status','count','offset','Content-Range','json','apply','reject','save','update','destroy','then','get','CmHopperAdditionalPhones','UserProfileResource','stack','name','send','index','map','CmHopperAdditionalPhone','fieldName','type','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','filter','where','merge','VIRTUAL','options','includeAll','findAll','rows','params','keys','rawAttributes','catch','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','error','find','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','path','sox','to-csv','ejs','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api'];(function(_0x5d6456,_0x58ecc7){var _0x4d66c1=function(_0x4335e3){while(--_0x4335e3){_0x5d6456['push'](_0x5d6456['shift']());}};_0x4d66c1(++_0x58ecc7);}(_0x5398,0xe2));var _0x8539=function(_0x3aaf82,_0x2982e4){_0x3aaf82=_0x3aaf82-0x0;var _0x2ee54f=_0x5398[_0x3aaf82];return _0x2ee54f;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x8539('0x0'));var rimraf=require(_0x8539('0x1'));var zipdir=require(_0x8539('0x2'));var jsonpatch=require(_0x8539('0x3'));var rp=require(_0x8539('0x4'));var moment=require(_0x8539('0x5'));var BPromise=require(_0x8539('0x6'));var Mustache=require('mustache');var util=require('util');var path=require(_0x8539('0x7'));var sox=require(_0x8539('0x8'));var csv=require(_0x8539('0x9'));var ejs=require(_0x8539('0xa'));var fs=require('fs');var _=require(_0x8539('0xb'));var squel=require(_0x8539('0xc'));var crypto=require('crypto');var jsforce=require(_0x8539('0xd'));var deskjs=require(_0x8539('0xe'));var toCsv=require(_0x8539('0x9'));var querystring=require(_0x8539('0xf'));var Papa=require(_0x8539('0x10'));var Redis=require(_0x8539('0x11'));var authService=require(_0x8539('0x12'));var qs=require(_0x8539('0x13'));var as=require(_0x8539('0x14'));var hardwareService=require(_0x8539('0x15'));var logger=require('../../config/logger')(_0x8539('0x16'));var utils=require(_0x8539('0x17'));var config=require(_0x8539('0x18'));var licenseUtil=require('../../config/license/util');var db=require(_0x8539('0x19'))['db'];function respondWithStatusCode(_0x377b14,_0x4d841){_0x4d841=_0x4d841||0xcc;return function(_0x25462b){if(_0x25462b){return _0x377b14['sendStatus'](_0x4d841);}return _0x377b14['status'](_0x4d841)[_0x8539('0x1a')]();};}function respondWithResult(_0x19ec7e,_0x8d56c9){_0x8d56c9=_0x8d56c9||0xc8;return function(_0x216bce){if(_0x216bce){return _0x19ec7e[_0x8539('0x1b')](_0x8d56c9)['json'](_0x216bce);}};}function respondWithFilteredResult(_0x52b95b,_0x27e479){return function(_0x24aab1){if(_0x24aab1){var _0x334def=_0x24aab1[_0x8539('0x1c')],_0x1d30e2=_0x27e479['offset'],_0x159008=_0x27e479[_0x8539('0x1d')]+_0x27e479['limit'],_0x29bf43;if(_0x159008>=_0x334def){_0x159008=_0x334def;_0x29bf43=0xc8;}else{_0x29bf43=0xce;}_0x52b95b['status'](_0x29bf43);return _0x52b95b['set'](_0x8539('0x1e'),_0x1d30e2+'-'+_0x159008+'/'+_0x334def)[_0x8539('0x1f')](_0x24aab1);}return null;};}function patchUpdates(_0x7b65df){return function(_0x260a2c){try{jsonpatch[_0x8539('0x20')](_0x260a2c,_0x7b65df,!![]);}catch(_0x324850){return BPromise[_0x8539('0x21')](_0x324850);}return _0x260a2c[_0x8539('0x22')]();};}function saveUpdates(_0x1cce5a,_0x3360b1){return function(_0x528839){if(_0x528839){return _0x528839[_0x8539('0x23')](_0x1cce5a)['then'](function(_0x3b0e38){return _0x3b0e38;});}return null;};}function removeEntity(_0x56e1b7,_0x14befc){return function(_0x59a14e){if(_0x59a14e){return _0x59a14e[_0x8539('0x24')]()[_0x8539('0x25')](function(){var _0xa3cf26=_0x59a14e[_0x8539('0x26')]({'plain':!![]});var _0x28e1da=_0x8539('0x27');return db[_0x8539('0x28')]['destroy']({'where':{'type':_0x28e1da,'resourceId':_0xa3cf26['id']}})[_0x8539('0x25')](function(){return _0x59a14e;});})['then'](function(){_0x56e1b7['status'](0xcc)[_0x8539('0x1a')]();});}};}function handleEntityNotFound(_0x28792d,_0x2f52cc){return function(_0x20d902){if(!_0x20d902){_0x28792d['sendStatus'](0x194);}return _0x20d902;};}function handleError(_0x4f04e8,_0x600cb6){_0x600cb6=_0x600cb6||0x1f4;return function(_0x327fc9){logger['error'](_0x327fc9[_0x8539('0x29')]);if(_0x327fc9[_0x8539('0x2a')]){delete _0x327fc9[_0x8539('0x2a')];}_0x4f04e8[_0x8539('0x1b')](_0x600cb6)[_0x8539('0x2b')](_0x327fc9);};}exports[_0x8539('0x2c')]=function(_0x452700,_0x60346c){var _0x2a6fba={},_0xedb079={},_0x438a5b={'count':0x0,'rows':[]};var _0x1ae9b9=_[_0x8539('0x2d')](db[_0x8539('0x2e')]['rawAttributes'],function(_0x7aae36){return{'name':_0x7aae36[_0x8539('0x2f')],'type':_0x7aae36[_0x8539('0x30')]['key']};});_0xedb079[_0x8539('0x31')]=_[_0x8539('0x2d')](_0x1ae9b9,'name');_0xedb079[_0x8539('0x32')]=_['keys'](_0x452700[_0x8539('0x32')]);_0xedb079[_0x8539('0x33')]=_[_0x8539('0x34')](_0xedb079[_0x8539('0x31')],_0xedb079[_0x8539('0x32')]);_0x2a6fba[_0x8539('0x35')]=_[_0x8539('0x34')](_0xedb079[_0x8539('0x31')],qs[_0x8539('0x36')](_0x452700['query'][_0x8539('0x36')]));_0x2a6fba[_0x8539('0x35')]=_0x2a6fba[_0x8539('0x35')][_0x8539('0x37')]?_0x2a6fba[_0x8539('0x35')]:_0xedb079[_0x8539('0x31')];if(!_0x452700[_0x8539('0x32')][_0x8539('0x38')](_0x8539('0x39'))){_0x2a6fba[_0x8539('0x3a')]=qs['limit'](_0x452700[_0x8539('0x32')]['limit']);_0x2a6fba[_0x8539('0x1d')]=qs[_0x8539('0x1d')](_0x452700['query']['offset']);}_0x2a6fba[_0x8539('0x3b')]=qs[_0x8539('0x3c')](_0x452700[_0x8539('0x32')][_0x8539('0x3c')]);_0x2a6fba['where']=qs['filters'](_['pick'](_0x452700[_0x8539('0x32')],_0xedb079[_0x8539('0x33')]),_0x1ae9b9);if(_0x452700[_0x8539('0x32')][_0x8539('0x3d')]){_0x2a6fba[_0x8539('0x3e')]=_[_0x8539('0x3f')](_0x2a6fba[_0x8539('0x3e')],{'$or':_[_0x8539('0x2d')](_0x1ae9b9,function(_0x931bd7){if(_0x931bd7[_0x8539('0x30')]!==_0x8539('0x40')){var _0x1643c8={};_0x1643c8[_0x931bd7[_0x8539('0x2a')]]={'$like':'%'+_0x452700['query'][_0x8539('0x3d')]+'%'};return _0x1643c8;}})});}_0x2a6fba=_[_0x8539('0x3f')]({},_0x2a6fba,_0x452700[_0x8539('0x41')]);var _0x10232b={'where':_0x2a6fba[_0x8539('0x3e')]};return db[_0x8539('0x2e')][_0x8539('0x1c')](_0x10232b)[_0x8539('0x25')](function(_0x3214e8){_0x438a5b[_0x8539('0x1c')]=_0x3214e8;if(_0x452700[_0x8539('0x32')][_0x8539('0x42')]){_0x2a6fba['include']=[{'all':!![]}];}return db[_0x8539('0x2e')][_0x8539('0x43')](_0x2a6fba);})['then'](function(_0x534202){_0x438a5b[_0x8539('0x44')]=_0x534202;return _0x438a5b;})['then'](respondWithFilteredResult(_0x60346c,_0x2a6fba))['catch'](handleError(_0x60346c,null));};exports['show']=function(_0x3c9f47,_0x3a69cc){var _0x24a388={'raw':!![],'where':{'id':_0x3c9f47[_0x8539('0x45')]['id']}},_0x26145b={};_0x26145b['model']=_[_0x8539('0x46')](db['CmHopperAdditionalPhone'][_0x8539('0x47')]);_0x26145b[_0x8539('0x32')]=_[_0x8539('0x46')](_0x3c9f47[_0x8539('0x32')]);_0x26145b['filters']=_[_0x8539('0x34')](_0x26145b[_0x8539('0x31')],_0x26145b[_0x8539('0x32')]);_0x24a388[_0x8539('0x35')]=_[_0x8539('0x34')](_0x26145b[_0x8539('0x31')],qs[_0x8539('0x36')](_0x3c9f47['query']['fields']));_0x24a388[_0x8539('0x35')]=_0x24a388[_0x8539('0x35')][_0x8539('0x37')]?_0x24a388[_0x8539('0x35')]:_0x26145b[_0x8539('0x31')];if(_0x3c9f47['query'][_0x8539('0x42')]){_0x24a388['include']=[{'all':!![]}];}_0x24a388=_[_0x8539('0x3f')]({},_0x24a388,_0x3c9f47[_0x8539('0x41')]);return db[_0x8539('0x2e')]['find'](_0x24a388)[_0x8539('0x25')](handleEntityNotFound(_0x3a69cc,null))['then'](respondWithResult(_0x3a69cc,null))[_0x8539('0x48')](handleError(_0x3a69cc,null));};exports[_0x8539('0x49')]=function(_0x124524,_0xe3e794){return db[_0x8539('0x2e')][_0x8539('0x49')](_0x124524[_0x8539('0x4a')],{})[_0x8539('0x25')](function(_0x5a81be){var _0x2d11b8=_0x124524[_0x8539('0x4b')]['get']({'plain':!![]});if(!_0x2d11b8)throw new Error(_0x8539('0x4c'));if(_0x2d11b8[_0x8539('0x4d')]===_0x8539('0x4b')){var _0x3814de=_0x5a81be[_0x8539('0x26')]({'plain':!![]});var _0x559c9d=_0x8539('0x27');return db[_0x8539('0x4e')]['find']({'where':{'name':_0x559c9d,'userProfileId':_0x2d11b8[_0x8539('0x4f')]},'raw':!![]})[_0x8539('0x25')](function(_0x2f6cef){if(_0x2f6cef&&_0x2f6cef[_0x8539('0x50')]===0x0){return db[_0x8539('0x28')][_0x8539('0x49')]({'name':_0x3814de[_0x8539('0x2a')],'resourceId':_0x3814de['id'],'type':_0x2f6cef[_0x8539('0x2a')],'sectionId':_0x2f6cef['id']},{})[_0x8539('0x25')](function(){return _0x5a81be;});}else{return _0x5a81be;}})[_0x8539('0x48')](function(_0x2e266d){logger[_0x8539('0x51')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x2e266d);throw _0x2e266d;});}return _0x5a81be;})[_0x8539('0x25')](respondWithResult(_0xe3e794,0xc9))[_0x8539('0x48')](handleError(_0xe3e794,null));};exports[_0x8539('0x23')]=function(_0x47d2bc,_0x41ea0b){if(_0x47d2bc['body']['id']){delete _0x47d2bc['body']['id'];}return db[_0x8539('0x2e')][_0x8539('0x52')]({'where':{'id':_0x47d2bc[_0x8539('0x45')]['id']}})['then'](handleEntityNotFound(_0x41ea0b,null))[_0x8539('0x25')](saveUpdates(_0x47d2bc['body'],null))['then'](respondWithResult(_0x41ea0b,null))[_0x8539('0x48')](handleError(_0x41ea0b,null));};exports[_0x8539('0x24')]=function(_0x2310fe,_0x23acaf){return db[_0x8539('0x2e')]['find']({'where':{'id':_0x2310fe[_0x8539('0x45')]['id']}})[_0x8539('0x25')](handleEntityNotFound(_0x23acaf,null))[_0x8539('0x25')](removeEntity(_0x23acaf,null))['catch'](handleError(_0x23acaf,null));};