6157ac126042fa6d6b41fa482c3f5dd9666e2a1a
[motion2.git] / server / api / userProfileSection / userProfileSection.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 _0x544a=['key','model','keys','query','attributes','intersection','fields','length','hasOwnProperty','nolimit','limit','sort','where','filters','pick','merge','filter','options','includeAll','findAll','rows','catch','show','params','find','body','describe','html-pdf','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','count','offset','set','Content-Range','apply','save','update','then','destroy','sendStatus','error','stack','name','send','index','map','UserProfileSection','rawAttributes','fieldName','type'];(function(_0x4c7f5d,_0x4e0ba0){var _0xff7bb4=function(_0x1f5316){while(--_0x1f5316){_0x4c7f5d['push'](_0x4c7f5d['shift']());}};_0xff7bb4(++_0x4e0ba0);}(_0x544a,0xaf));var _0xa544=function(_0x49ba83,_0x190d71){_0x49ba83=_0x49ba83-0x0;var _0xf84e81=_0x544a[_0x49ba83];return _0xf84e81;};'use strict';var pdf=require(_0xa544('0x0'));var emlformat=require(_0xa544('0x1'));var rimraf=require(_0xa544('0x2'));var zipdir=require(_0xa544('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0xa544('0x4'));var moment=require(_0xa544('0x5'));var BPromise=require(_0xa544('0x6'));var Mustache=require(_0xa544('0x7'));var util=require('util');var path=require(_0xa544('0x8'));var sox=require(_0xa544('0x9'));var csv=require(_0xa544('0xa'));var ejs=require(_0xa544('0xb'));var fs=require('fs');var _=require(_0xa544('0xc'));var squel=require(_0xa544('0xd'));var crypto=require(_0xa544('0xe'));var jsforce=require(_0xa544('0xf'));var deskjs=require(_0xa544('0x10'));var toCsv=require(_0xa544('0xa'));var querystring=require(_0xa544('0x11'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xa544('0x12'))(_0xa544('0x13'));var utils=require(_0xa544('0x14'));var config=require(_0xa544('0x15'));var licenseUtil=require(_0xa544('0x16'));var db=require(_0xa544('0x17'))['db'];function respondWithStatusCode(_0x1bead8,_0x22ee61){_0x22ee61=_0x22ee61||0xcc;return function(_0x38412d){if(_0x38412d){return _0x1bead8['sendStatus'](_0x22ee61);}return _0x1bead8[_0xa544('0x18')](_0x22ee61)[_0xa544('0x19')]();};}function respondWithResult(_0x62cd1d,_0x3144fe){_0x3144fe=_0x3144fe||0xc8;return function(_0x5406a8){if(_0x5406a8){return _0x62cd1d['status'](_0x3144fe)[_0xa544('0x1a')](_0x5406a8);}};}function respondWithFilteredResult(_0x41b544,_0x4a5831){return function(_0x1409ba){if(_0x1409ba){var _0x1b39f3=_0x1409ba[_0xa544('0x1b')],_0x4f4a65=_0x4a5831[_0xa544('0x1c')],_0x558d62=_0x4a5831[_0xa544('0x1c')]+_0x4a5831['limit'],_0x38d339;if(_0x558d62>=_0x1b39f3){_0x558d62=_0x1b39f3;_0x38d339=0xc8;}else{_0x38d339=0xce;}_0x41b544[_0xa544('0x18')](_0x38d339);return _0x41b544[_0xa544('0x1d')](_0xa544('0x1e'),_0x4f4a65+'-'+_0x558d62+'/'+_0x1b39f3)['json'](_0x1409ba);}return null;};}function patchUpdates(_0x3c2a94){return function(_0x3e8cec){try{jsonpatch[_0xa544('0x1f')](_0x3e8cec,_0x3c2a94,!![]);}catch(_0x4227ff){return BPromise['reject'](_0x4227ff);}return _0x3e8cec[_0xa544('0x20')]();};}function saveUpdates(_0x3ba847,_0x15f841){return function(_0x3fed97){if(_0x3fed97){return _0x3fed97[_0xa544('0x21')](_0x3ba847)[_0xa544('0x22')](function(_0x574e5f){return _0x574e5f;});}return null;};}function removeEntity(_0x196a54,_0x1f2e25){return function(_0xb2c3f7){if(_0xb2c3f7){return _0xb2c3f7[_0xa544('0x23')]()['then'](function(){_0x196a54[_0xa544('0x18')](0xcc)['end']();});}};}function handleEntityNotFound(_0xcdf95f,_0x586b1b){return function(_0x453de5){if(!_0x453de5){_0xcdf95f[_0xa544('0x24')](0x194);}return _0x453de5;};}function handleError(_0x4dce75,_0x16ed8d){_0x16ed8d=_0x16ed8d||0x1f4;return function(_0x1eac75){logger[_0xa544('0x25')](_0x1eac75[_0xa544('0x26')]);if(_0x1eac75['name']){delete _0x1eac75[_0xa544('0x27')];}_0x4dce75['status'](_0x16ed8d)[_0xa544('0x28')](_0x1eac75);};}exports[_0xa544('0x29')]=function(_0x1f0b5d,_0xdd8d75){var _0x2af390={},_0x57db12={},_0x31127e={'count':0x0,'rows':[]};var _0x2b361d=_[_0xa544('0x2a')](db[_0xa544('0x2b')][_0xa544('0x2c')],function(_0x526a36){return{'name':_0x526a36[_0xa544('0x2d')],'type':_0x526a36[_0xa544('0x2e')][_0xa544('0x2f')]};});_0x57db12[_0xa544('0x30')]=_[_0xa544('0x2a')](_0x2b361d,'name');_0x57db12['query']=_[_0xa544('0x31')](_0x1f0b5d[_0xa544('0x32')]);_0x57db12['filters']=_['intersection'](_0x57db12[_0xa544('0x30')],_0x57db12[_0xa544('0x32')]);_0x2af390[_0xa544('0x33')]=_[_0xa544('0x34')](_0x57db12[_0xa544('0x30')],qs[_0xa544('0x35')](_0x1f0b5d[_0xa544('0x32')][_0xa544('0x35')]));_0x2af390[_0xa544('0x33')]=_0x2af390[_0xa544('0x33')][_0xa544('0x36')]?_0x2af390[_0xa544('0x33')]:_0x57db12[_0xa544('0x30')];if(!_0x1f0b5d[_0xa544('0x32')][_0xa544('0x37')](_0xa544('0x38'))){_0x2af390[_0xa544('0x39')]=qs[_0xa544('0x39')](_0x1f0b5d[_0xa544('0x32')]['limit']);_0x2af390[_0xa544('0x1c')]=qs[_0xa544('0x1c')](_0x1f0b5d['query'][_0xa544('0x1c')]);}_0x2af390['order']=qs[_0xa544('0x3a')](_0x1f0b5d[_0xa544('0x32')][_0xa544('0x3a')]);_0x2af390[_0xa544('0x3b')]=qs[_0xa544('0x3c')](_[_0xa544('0x3d')](_0x1f0b5d[_0xa544('0x32')],_0x57db12[_0xa544('0x3c')]),_0x2b361d);if(_0x1f0b5d[_0xa544('0x32')]['filter']){_0x2af390[_0xa544('0x3b')]=_[_0xa544('0x3e')](_0x2af390[_0xa544('0x3b')],{'$or':_[_0xa544('0x2a')](_0x2b361d,function(_0x27cca9){if(_0x27cca9[_0xa544('0x2e')]!=='VIRTUAL'){var _0x1a3b1f={};_0x1a3b1f[_0x27cca9['name']]={'$like':'%'+_0x1f0b5d[_0xa544('0x32')][_0xa544('0x3f')]+'%'};return _0x1a3b1f;}})});}_0x2af390=_[_0xa544('0x3e')]({},_0x2af390,_0x1f0b5d[_0xa544('0x40')]);var _0x5d72a4={'where':_0x2af390['where']};return db['UserProfileSection'][_0xa544('0x1b')](_0x5d72a4)[_0xa544('0x22')](function(_0x5b8d5a){_0x31127e['count']=_0x5b8d5a;if(_0x1f0b5d[_0xa544('0x32')][_0xa544('0x41')]){_0x2af390['include']=[{'all':!![]}];}return db['UserProfileSection'][_0xa544('0x42')](_0x2af390);})[_0xa544('0x22')](function(_0x25f64e){_0x31127e[_0xa544('0x43')]=_0x25f64e;return _0x31127e;})[_0xa544('0x22')](respondWithFilteredResult(_0xdd8d75,_0x2af390))[_0xa544('0x44')](handleError(_0xdd8d75,null));};exports[_0xa544('0x45')]=function(_0x5081b2,_0x51d7a1){var _0x1e687f={'raw':![],'where':{'id':_0x5081b2[_0xa544('0x46')]['id']}},_0x3a6dae={};_0x3a6dae[_0xa544('0x30')]=_['keys'](db[_0xa544('0x2b')][_0xa544('0x2c')]);_0x3a6dae[_0xa544('0x32')]=_[_0xa544('0x31')](_0x5081b2[_0xa544('0x32')]);_0x3a6dae['filters']=_[_0xa544('0x34')](_0x3a6dae[_0xa544('0x30')],_0x3a6dae[_0xa544('0x32')]);_0x1e687f[_0xa544('0x33')]=_[_0xa544('0x34')](_0x3a6dae['model'],qs['fields'](_0x5081b2['query'][_0xa544('0x35')]));_0x1e687f[_0xa544('0x33')]=_0x1e687f[_0xa544('0x33')]['length']?_0x1e687f[_0xa544('0x33')]:_0x3a6dae[_0xa544('0x30')];if(_0x5081b2[_0xa544('0x32')][_0xa544('0x41')]){_0x1e687f['include']=[{'all':!![]}];}_0x1e687f=_[_0xa544('0x3e')]({},_0x1e687f,_0x5081b2[_0xa544('0x40')]);return db[_0xa544('0x2b')][_0xa544('0x47')](_0x1e687f)[_0xa544('0x22')](handleEntityNotFound(_0x51d7a1,null))[_0xa544('0x22')](respondWithResult(_0x51d7a1,null))[_0xa544('0x44')](handleError(_0x51d7a1,null));};exports['create']=function(_0x2e1e41,_0x453352){return db['UserProfileSection']['create'](_0x2e1e41[_0xa544('0x48')],{})[_0xa544('0x22')](respondWithResult(_0x453352,0xc9))[_0xa544('0x44')](handleError(_0x453352,null));};exports['update']=function(_0xf5ede6,_0x3c5a23){if(_0xf5ede6[_0xa544('0x48')]['id']){delete _0xf5ede6['body']['id'];}return db[_0xa544('0x2b')][_0xa544('0x47')]({'where':{'id':_0xf5ede6[_0xa544('0x46')]['id']}})[_0xa544('0x22')](handleEntityNotFound(_0x3c5a23,null))[_0xa544('0x22')](saveUpdates(_0xf5ede6['body'],null))[_0xa544('0x22')](respondWithResult(_0x3c5a23,null))['catch'](handleError(_0x3c5a23,null));};exports[_0xa544('0x23')]=function(_0x5f1634,_0x1523cc){return db[_0xa544('0x2b')][_0xa544('0x47')]({'where':{'id':_0x5f1634[_0xa544('0x46')]['id']}})[_0xa544('0x22')](handleEntityNotFound(_0x1523cc,null))[_0xa544('0x22')](removeEntity(_0x1523cc,null))[_0xa544('0x44')](handleError(_0x1523cc,null));};exports[_0xa544('0x49')]=function(_0x396e3b,_0x1de60){return db[_0xa544('0x2b')][_0xa544('0x49')]()['then'](respondWithResult(_0x1de60,null))['catch'](handleError(_0x1de60,null));};