Built motion from commit (unavailable).|2.5.29
[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 _0x020c=['sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','limit','undefined','count','set','Content-Range','apply','then','destroy','error','stack','name','send','index','UserProfileSection','rawAttributes','fieldName','type','key','model','map','filters','intersection','query','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','include','findAll','show','keys','includeAll','find','catch','create','update','body','describe','eml-format','rimraf','fast-json-patch','request-promise','mustache','util','path'];(function(_0x3ca1ae,_0x6d6f6f){var _0x17eaa1=function(_0x464be5){while(--_0x464be5){_0x3ca1ae['push'](_0x3ca1ae['shift']());}};_0x17eaa1(++_0x6d6f6f);}(_0x020c,0x1cd));var _0xc020=function(_0x154b97,_0x12421e){_0x154b97=_0x154b97-0x0;var _0x551bc4=_0x020c[_0x154b97];return _0x551bc4;};'use strict';var emlformat=require(_0xc020('0x0'));var rimraf=require(_0xc020('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xc020('0x2'));var rp=require(_0xc020('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xc020('0x4'));var util=require(_0xc020('0x5'));var path=require(_0xc020('0x6'));var sox=require(_0xc020('0x7'));var csv=require(_0xc020('0x8'));var ejs=require(_0xc020('0x9'));var fs=require('fs');var fs_extra=require(_0xc020('0xa'));var _=require(_0xc020('0xb'));var squel=require(_0xc020('0xc'));var crypto=require(_0xc020('0xd'));var jsforce=require(_0xc020('0xe'));var deskjs=require(_0xc020('0xf'));var toCsv=require(_0xc020('0x8'));var querystring=require(_0xc020('0x10'));var Papa=require(_0xc020('0x11'));var Redis=require(_0xc020('0x12'));var authService=require(_0xc020('0x13'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xc020('0x14'))(_0xc020('0x15'));var utils=require(_0xc020('0x16'));var config=require(_0xc020('0x17'));var licenseUtil=require(_0xc020('0x18'));var db=require(_0xc020('0x19'))['db'];function respondWithStatusCode(_0x4c892b,_0x4b2afa){_0x4b2afa=_0x4b2afa||0xcc;return function(_0x59ed24){if(_0x59ed24){return _0x4c892b[_0xc020('0x1a')](_0x4b2afa);}return _0x4c892b[_0xc020('0x1b')](_0x4b2afa)[_0xc020('0x1c')]();};}function respondWithResult(_0xb4aefa,_0x5bcd9c){_0x5bcd9c=_0x5bcd9c||0xc8;return function(_0x2e36cf){if(_0x2e36cf){return _0xb4aefa[_0xc020('0x1b')](_0x5bcd9c)[_0xc020('0x1d')](_0x2e36cf);}};}function respondWithFilteredResult(_0x1d5fe4,_0x1e2d85){return function(_0x5e93a9){if(_0x5e93a9){var _0x1d80a3=typeof _0x1e2d85[_0xc020('0x1e')]==='undefined'&&typeof _0x1e2d85[_0xc020('0x1f')]===_0xc020('0x20');var _0x1c42c5=_0x5e93a9[_0xc020('0x21')];var _0x57c14b=_0x1d80a3?0x0:_0x1e2d85[_0xc020('0x1e')];var _0x3fb897=_0x1d80a3?_0x5e93a9[_0xc020('0x21')]:_0x1e2d85[_0xc020('0x1e')]+_0x1e2d85[_0xc020('0x1f')];var _0x19b3a;if(_0x3fb897>=_0x1c42c5){_0x3fb897=_0x1c42c5;_0x19b3a=0xc8;}else{_0x19b3a=0xce;}_0x1d5fe4[_0xc020('0x1b')](_0x19b3a);return _0x1d5fe4[_0xc020('0x22')](_0xc020('0x23'),_0x57c14b+'-'+_0x3fb897+'/'+_0x1c42c5)[_0xc020('0x1d')](_0x5e93a9);}return null;};}function patchUpdates(_0x4bba90){return function(_0x457c88){try{jsonpatch[_0xc020('0x24')](_0x457c88,_0x4bba90,!![]);}catch(_0x20804e){return BPromise['reject'](_0x20804e);}return _0x457c88['save']();};}function saveUpdates(_0x510dbc,_0x130500){return function(_0x517aa2){if(_0x517aa2){return _0x517aa2['update'](_0x510dbc)[_0xc020('0x25')](function(_0x2a0ccd){return _0x2a0ccd;});}return null;};}function removeEntity(_0x115b6c,_0x4f7524){return function(_0x334f1d){if(_0x334f1d){return _0x334f1d[_0xc020('0x26')]()[_0xc020('0x25')](function(){_0x115b6c[_0xc020('0x1b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x505845,_0x18d953){return function(_0x4dc5c2){if(!_0x4dc5c2){_0x505845[_0xc020('0x1a')](0x194);}return _0x4dc5c2;};}function handleError(_0x1268a4,_0x10450f){_0x10450f=_0x10450f||0x1f4;return function(_0x43cdaa){logger[_0xc020('0x27')](_0x43cdaa[_0xc020('0x28')]);if(_0x43cdaa[_0xc020('0x29')]){delete _0x43cdaa[_0xc020('0x29')];}_0x1268a4[_0xc020('0x1b')](_0x10450f)[_0xc020('0x2a')](_0x43cdaa);};}exports[_0xc020('0x2b')]=function(_0x7011b1,_0x4b5a5d){var _0x334435={},_0x15d60d={},_0x15fe67={'count':0x0,'rows':[]};var _0x537943=_['map'](db[_0xc020('0x2c')][_0xc020('0x2d')],function(_0xd15eca){return{'name':_0xd15eca[_0xc020('0x2e')],'type':_0xd15eca[_0xc020('0x2f')][_0xc020('0x30')]};});_0x15d60d[_0xc020('0x31')]=_[_0xc020('0x32')](_0x537943,_0xc020('0x29'));_0x15d60d['query']=_['keys'](_0x7011b1['query']);_0x15d60d[_0xc020('0x33')]=_[_0xc020('0x34')](_0x15d60d[_0xc020('0x31')],_0x15d60d[_0xc020('0x35')]);_0x334435[_0xc020('0x36')]=_[_0xc020('0x34')](_0x15d60d[_0xc020('0x31')],qs[_0xc020('0x37')](_0x7011b1['query']['fields']));_0x334435[_0xc020('0x36')]=_0x334435[_0xc020('0x36')][_0xc020('0x38')]?_0x334435[_0xc020('0x36')]:_0x15d60d[_0xc020('0x31')];if(!_0x7011b1[_0xc020('0x35')][_0xc020('0x39')](_0xc020('0x3a'))){_0x334435[_0xc020('0x1f')]=qs['limit'](_0x7011b1[_0xc020('0x35')][_0xc020('0x1f')]);_0x334435[_0xc020('0x1e')]=qs[_0xc020('0x1e')](_0x7011b1['query'][_0xc020('0x1e')]);}_0x334435[_0xc020('0x3b')]=qs['sort'](_0x7011b1[_0xc020('0x35')][_0xc020('0x3c')]);_0x334435[_0xc020('0x3d')]=qs[_0xc020('0x33')](_[_0xc020('0x3e')](_0x7011b1[_0xc020('0x35')],_0x15d60d[_0xc020('0x33')]),_0x537943);if(_0x7011b1[_0xc020('0x35')][_0xc020('0x3f')]){_0x334435[_0xc020('0x3d')]=_[_0xc020('0x40')](_0x334435['where'],{'$or':_['map'](_0x537943,function(_0x26b9a0){if(_0x26b9a0[_0xc020('0x2f')]!==_0xc020('0x41')){var _0x28a036={};_0x28a036[_0x26b9a0['name']]={'$like':'%'+_0x7011b1[_0xc020('0x35')][_0xc020('0x3f')]+'%'};return _0x28a036;}})});}_0x334435=_[_0xc020('0x40')]({},_0x334435,_0x7011b1[_0xc020('0x42')]);var _0xb85a01={'where':_0x334435[_0xc020('0x3d')]};return db[_0xc020('0x2c')][_0xc020('0x21')](_0xb85a01)[_0xc020('0x25')](function(_0x13dd22){_0x15fe67['count']=_0x13dd22;if(_0x7011b1[_0xc020('0x35')]['includeAll']){_0x334435[_0xc020('0x43')]=[{'all':!![]}];}return db[_0xc020('0x2c')][_0xc020('0x44')](_0x334435);})[_0xc020('0x25')](function(_0xa58145){_0x15fe67['rows']=_0xa58145;return _0x15fe67;})[_0xc020('0x25')](respondWithFilteredResult(_0x4b5a5d,_0x334435))['catch'](handleError(_0x4b5a5d,null));};exports[_0xc020('0x45')]=function(_0x798dfe,_0x48d3b7){var _0x6ae2c2={'raw':![],'where':{'id':_0x798dfe['params']['id']}},_0x5dc3cc={};_0x5dc3cc[_0xc020('0x31')]=_[_0xc020('0x46')](db[_0xc020('0x2c')][_0xc020('0x2d')]);_0x5dc3cc[_0xc020('0x35')]=_[_0xc020('0x46')](_0x798dfe[_0xc020('0x35')]);_0x5dc3cc['filters']=_['intersection'](_0x5dc3cc[_0xc020('0x31')],_0x5dc3cc[_0xc020('0x35')]);_0x6ae2c2['attributes']=_[_0xc020('0x34')](_0x5dc3cc[_0xc020('0x31')],qs['fields'](_0x798dfe[_0xc020('0x35')][_0xc020('0x37')]));_0x6ae2c2[_0xc020('0x36')]=_0x6ae2c2[_0xc020('0x36')][_0xc020('0x38')]?_0x6ae2c2[_0xc020('0x36')]:_0x5dc3cc[_0xc020('0x31')];if(_0x798dfe[_0xc020('0x35')][_0xc020('0x47')]){_0x6ae2c2['include']=[{'all':!![]}];}_0x6ae2c2=_[_0xc020('0x40')]({},_0x6ae2c2,_0x798dfe[_0xc020('0x42')]);return db[_0xc020('0x2c')][_0xc020('0x48')](_0x6ae2c2)[_0xc020('0x25')](handleEntityNotFound(_0x48d3b7,null))[_0xc020('0x25')](respondWithResult(_0x48d3b7,null))[_0xc020('0x49')](handleError(_0x48d3b7,null));};exports[_0xc020('0x4a')]=function(_0x841bb5,_0x1e531d){return db[_0xc020('0x2c')][_0xc020('0x4a')](_0x841bb5['body'],{})[_0xc020('0x25')](respondWithResult(_0x1e531d,0xc9))[_0xc020('0x49')](handleError(_0x1e531d,null));};exports[_0xc020('0x4b')]=function(_0x5d8032,_0x11df4c){if(_0x5d8032[_0xc020('0x4c')]['id']){delete _0x5d8032[_0xc020('0x4c')]['id'];}return db[_0xc020('0x2c')][_0xc020('0x48')]({'where':{'id':_0x5d8032['params']['id']}})[_0xc020('0x25')](handleEntityNotFound(_0x11df4c,null))[_0xc020('0x25')](saveUpdates(_0x5d8032[_0xc020('0x4c')],null))[_0xc020('0x25')](respondWithResult(_0x11df4c,null))['catch'](handleError(_0x11df4c,null));};exports[_0xc020('0x26')]=function(_0x226024,_0x21d459){return db['UserProfileSection']['find']({'where':{'id':_0x226024['params']['id']}})['then'](handleEntityNotFound(_0x21d459,null))[_0xc020('0x25')](removeEntity(_0x21d459,null))[_0xc020('0x49')](handleError(_0x21d459,null));};exports['describe']=function(_0xe25151,_0x297235){return db[_0xc020('0x2c')][_0xc020('0x4d')]()[_0xc020('0x25')](respondWithResult(_0x297235,null))[_0xc020('0x49')](handleError(_0x297235,null));};