00c42bab57a948943ab93caf3a06cfc4ad0e58bb
[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 _0x9285=['include','find','create','body','destroy','describe','html-pdf','eml-format','rimraf','fast-json-patch','moment','bluebird','mustache','to-csv','ejs','lodash','jsforce','desk.js','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','json','offset','status','set','apply','reject','save','update','then','error','name','send','index','UserProfileSection','rawAttributes','type','map','filters','intersection','model','attributes','query','fields','length','nolimit','limit','order','sort','where','pick','merge','VIRTUAL','filter','options','count','findAll','rows','catch','show','params','keys','includeAll'];(function(_0x250978,_0x293da7){var _0x489aa5=function(_0x518a61){while(--_0x518a61){_0x250978['push'](_0x250978['shift']());}};_0x489aa5(++_0x293da7);}(_0x9285,0x1b0));var _0x5928=function(_0x589083,_0x2e1bb1){_0x589083=_0x589083-0x0;var _0x325acf=_0x9285[_0x589083];return _0x325acf;};'use strict';var pdf=require(_0x5928('0x0'));var emlformat=require(_0x5928('0x1'));var rimraf=require(_0x5928('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x5928('0x3'));var rp=require('request-promise');var moment=require(_0x5928('0x4'));var BPromise=require(_0x5928('0x5'));var Mustache=require(_0x5928('0x6'));var util=require('util');var path=require('path');var sox=require('sox');var csv=require(_0x5928('0x7'));var ejs=require(_0x5928('0x8'));var fs=require('fs');var _=require(_0x5928('0x9'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x5928('0xa'));var deskjs=require(_0x5928('0xb'));var toCsv=require(_0x5928('0x7'));var querystring=require('querystring');var Papa=require(_0x5928('0xc'));var Redis=require('ioredis');var authService=require(_0x5928('0xd'));var qs=require(_0x5928('0xe'));var as=require(_0x5928('0xf'));var hardwareService=require(_0x5928('0x10'));var logger=require('../../config/logger')(_0x5928('0x11'));var utils=require(_0x5928('0x12'));var config=require(_0x5928('0x13'));var licenseUtil=require(_0x5928('0x14'));var db=require(_0x5928('0x15'))['db'];function respondWithStatusCode(_0x206e45,_0x5289fa){_0x5289fa=_0x5289fa||0xcc;return function(_0x24753a){if(_0x24753a){return _0x206e45[_0x5928('0x16')](_0x5289fa);}return _0x206e45['status'](_0x5289fa)['end']();};}function respondWithResult(_0x2b0f7f,_0x21de43){_0x21de43=_0x21de43||0xc8;return function(_0xa5d773){if(_0xa5d773){return _0x2b0f7f['status'](_0x21de43)[_0x5928('0x17')](_0xa5d773);}};}function respondWithFilteredResult(_0x5a63ab,_0x1b93ae){return function(_0x3d14b6){if(_0x3d14b6){var _0x2832c2=_0x3d14b6['count'],_0x99e4a8=_0x1b93ae[_0x5928('0x18')],_0x1e5134=_0x1b93ae['offset']+_0x1b93ae['limit'],_0x2c79dd;if(_0x1e5134>=_0x2832c2){_0x1e5134=_0x2832c2;_0x2c79dd=0xc8;}else{_0x2c79dd=0xce;}_0x5a63ab[_0x5928('0x19')](_0x2c79dd);return _0x5a63ab[_0x5928('0x1a')]('Content-Range',_0x99e4a8+'-'+_0x1e5134+'/'+_0x2832c2)[_0x5928('0x17')](_0x3d14b6);}return null;};}function patchUpdates(_0x199302){return function(_0x1f0d0b){try{jsonpatch[_0x5928('0x1b')](_0x1f0d0b,_0x199302,!![]);}catch(_0x698104){return BPromise[_0x5928('0x1c')](_0x698104);}return _0x1f0d0b[_0x5928('0x1d')]();};}function saveUpdates(_0x5598ef,_0x4d5b99){return function(_0x47d709){if(_0x47d709){return _0x47d709[_0x5928('0x1e')](_0x5598ef)[_0x5928('0x1f')](function(_0x206d4e){return _0x206d4e;});}return null;};}function removeEntity(_0xc5c96e,_0x8417d2){return function(_0x574d53){if(_0x574d53){return _0x574d53['destroy']()[_0x5928('0x1f')](function(){_0xc5c96e[_0x5928('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0xba123f,_0x3206f3){return function(_0x5b4408){if(!_0x5b4408){_0xba123f[_0x5928('0x16')](0x194);}return _0x5b4408;};}function handleError(_0x11dcad,_0x55b03e){_0x55b03e=_0x55b03e||0x1f4;return function(_0xd9001a){logger[_0x5928('0x20')](_0xd9001a['stack']);if(_0xd9001a[_0x5928('0x21')]){delete _0xd9001a['name'];}_0x11dcad[_0x5928('0x19')](_0x55b03e)[_0x5928('0x22')](_0xd9001a);};}exports[_0x5928('0x23')]=function(_0x3a7b91,_0x76e848){var _0x306db3={},_0x2041a3={},_0x30061e={'count':0x0,'rows':[]};var _0x6ab2cd=_['map'](db[_0x5928('0x24')][_0x5928('0x25')],function(_0x2ab92d){return{'name':_0x2ab92d['fieldName'],'type':_0x2ab92d[_0x5928('0x26')]['key']};});_0x2041a3['model']=_[_0x5928('0x27')](_0x6ab2cd,_0x5928('0x21'));_0x2041a3['query']=_['keys'](_0x3a7b91['query']);_0x2041a3[_0x5928('0x28')]=_[_0x5928('0x29')](_0x2041a3[_0x5928('0x2a')],_0x2041a3['query']);_0x306db3[_0x5928('0x2b')]=_[_0x5928('0x29')](_0x2041a3[_0x5928('0x2a')],qs['fields'](_0x3a7b91[_0x5928('0x2c')][_0x5928('0x2d')]));_0x306db3[_0x5928('0x2b')]=_0x306db3[_0x5928('0x2b')][_0x5928('0x2e')]?_0x306db3[_0x5928('0x2b')]:_0x2041a3[_0x5928('0x2a')];if(!_0x3a7b91[_0x5928('0x2c')]['hasOwnProperty'](_0x5928('0x2f'))){_0x306db3['limit']=qs[_0x5928('0x30')](_0x3a7b91[_0x5928('0x2c')]['limit']);_0x306db3['offset']=qs[_0x5928('0x18')](_0x3a7b91[_0x5928('0x2c')]['offset']);}_0x306db3[_0x5928('0x31')]=qs[_0x5928('0x32')](_0x3a7b91[_0x5928('0x2c')][_0x5928('0x32')]);_0x306db3[_0x5928('0x33')]=qs[_0x5928('0x28')](_[_0x5928('0x34')](_0x3a7b91[_0x5928('0x2c')],_0x2041a3[_0x5928('0x28')]),_0x6ab2cd);if(_0x3a7b91[_0x5928('0x2c')]['filter']){_0x306db3[_0x5928('0x33')]=_[_0x5928('0x35')](_0x306db3['where'],{'$or':_['map'](_0x6ab2cd,function(_0x140b0b){if(_0x140b0b[_0x5928('0x26')]!==_0x5928('0x36')){var _0x56bd56={};_0x56bd56[_0x140b0b[_0x5928('0x21')]]={'$like':'%'+_0x3a7b91['query'][_0x5928('0x37')]+'%'};return _0x56bd56;}})});}_0x306db3=_[_0x5928('0x35')]({},_0x306db3,_0x3a7b91[_0x5928('0x38')]);var _0x22abfe={'where':_0x306db3['where']};return db['UserProfileSection'][_0x5928('0x39')](_0x22abfe)[_0x5928('0x1f')](function(_0x15d7bf){_0x30061e[_0x5928('0x39')]=_0x15d7bf;if(_0x3a7b91[_0x5928('0x2c')]['includeAll']){_0x306db3['include']=[{'all':!![]}];}return db['UserProfileSection'][_0x5928('0x3a')](_0x306db3);})[_0x5928('0x1f')](function(_0xd85d46){_0x30061e[_0x5928('0x3b')]=_0xd85d46;return _0x30061e;})[_0x5928('0x1f')](respondWithFilteredResult(_0x76e848,_0x306db3))[_0x5928('0x3c')](handleError(_0x76e848,null));};exports[_0x5928('0x3d')]=function(_0x8127e1,_0x1da4e7){var _0x4bf0b4={'raw':![],'where':{'id':_0x8127e1[_0x5928('0x3e')]['id']}},_0x3a2037={};_0x3a2037[_0x5928('0x2a')]=_[_0x5928('0x3f')](db[_0x5928('0x24')][_0x5928('0x25')]);_0x3a2037[_0x5928('0x2c')]=_[_0x5928('0x3f')](_0x8127e1['query']);_0x3a2037[_0x5928('0x28')]=_[_0x5928('0x29')](_0x3a2037['model'],_0x3a2037[_0x5928('0x2c')]);_0x4bf0b4[_0x5928('0x2b')]=_[_0x5928('0x29')](_0x3a2037[_0x5928('0x2a')],qs[_0x5928('0x2d')](_0x8127e1['query']['fields']));_0x4bf0b4['attributes']=_0x4bf0b4[_0x5928('0x2b')][_0x5928('0x2e')]?_0x4bf0b4['attributes']:_0x3a2037[_0x5928('0x2a')];if(_0x8127e1[_0x5928('0x2c')][_0x5928('0x40')]){_0x4bf0b4[_0x5928('0x41')]=[{'all':!![]}];}_0x4bf0b4=_[_0x5928('0x35')]({},_0x4bf0b4,_0x8127e1[_0x5928('0x38')]);return db[_0x5928('0x24')][_0x5928('0x42')](_0x4bf0b4)['then'](handleEntityNotFound(_0x1da4e7,null))['then'](respondWithResult(_0x1da4e7,null))[_0x5928('0x3c')](handleError(_0x1da4e7,null));};exports[_0x5928('0x43')]=function(_0x3631dc,_0x55319d){return db[_0x5928('0x24')][_0x5928('0x43')](_0x3631dc['body'],{})[_0x5928('0x1f')](respondWithResult(_0x55319d,0xc9))[_0x5928('0x3c')](handleError(_0x55319d,null));};exports[_0x5928('0x1e')]=function(_0x14be66,_0x232134){if(_0x14be66[_0x5928('0x44')]['id']){delete _0x14be66[_0x5928('0x44')]['id'];}return db[_0x5928('0x24')][_0x5928('0x42')]({'where':{'id':_0x14be66[_0x5928('0x3e')]['id']}})['then'](handleEntityNotFound(_0x232134,null))[_0x5928('0x1f')](saveUpdates(_0x14be66[_0x5928('0x44')],null))[_0x5928('0x1f')](respondWithResult(_0x232134,null))[_0x5928('0x3c')](handleError(_0x232134,null));};exports[_0x5928('0x45')]=function(_0x5f150a,_0x5e0ce6){return db[_0x5928('0x24')][_0x5928('0x42')]({'where':{'id':_0x5f150a['params']['id']}})[_0x5928('0x1f')](handleEntityNotFound(_0x5e0ce6,null))[_0x5928('0x1f')](removeEntity(_0x5e0ce6,null))['catch'](handleError(_0x5e0ce6,null));};exports[_0x5928('0x46')]=function(_0x1ed0a2,_0x17044e){return db[_0x5928('0x24')][_0x5928('0x46')]()[_0x5928('0x1f')](respondWithResult(_0x17044e,null))[_0x5928('0x3c')](handleError(_0x17044e,null));};