d33b6561b9a49f6bc18311d10fcf5858d319e723
[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 _0xc4ce=['../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','status','offset','undefined','limit','count','set','Content-Range','json','reject','save','destroy','then','error','stack','name','send','map','UserProfileSection','rawAttributes','fieldName','type','key','model','query','keys','filters','fields','attributes','length','nolimit','order','sort','filter','where','merge','options','includeAll','include','findAll','rows','catch','params','intersection','find','create','body','describe','eml-format','rimraf','request-promise','bluebird','mustache','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch'];(function(_0x3199af,_0x339560){var _0x5aa4d0=function(_0x1cb5f0){while(--_0x1cb5f0){_0x3199af['push'](_0x3199af['shift']());}};_0x5aa4d0(++_0x339560);}(_0xc4ce,0xca));var _0xec4c=function(_0x5d4d47,_0x182a7d){_0x5d4d47=_0x5d4d47-0x0;var _0x1f8bdb=_0xc4ce[_0x5d4d47];return _0x1f8bdb;};'use strict';var emlformat=require(_0xec4c('0x0'));var rimraf=require(_0xec4c('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0xec4c('0x2'));var moment=require('moment');var BPromise=require(_0xec4c('0x3'));var Mustache=require(_0xec4c('0x4'));var util=require('util');var path=require(_0xec4c('0x5'));var sox=require(_0xec4c('0x6'));var csv=require(_0xec4c('0x7'));var ejs=require(_0xec4c('0x8'));var fs=require('fs');var fs_extra=require(_0xec4c('0x9'));var _=require(_0xec4c('0xa'));var squel=require(_0xec4c('0xb'));var crypto=require(_0xec4c('0xc'));var jsforce=require(_0xec4c('0xd'));var deskjs=require(_0xec4c('0xe'));var toCsv=require('to-csv');var querystring=require(_0xec4c('0xf'));var Papa=require('papaparse');var Redis=require(_0xec4c('0x10'));var authService=require(_0xec4c('0x11'));var qs=require(_0xec4c('0x12'));var as=require(_0xec4c('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xec4c('0x14'))(_0xec4c('0x15'));var utils=require('../../config/utils');var config=require(_0xec4c('0x16'));var licenseUtil=require(_0xec4c('0x17'));var db=require(_0xec4c('0x18'))['db'];function respondWithStatusCode(_0x5f59ba,_0x5de11f){_0x5de11f=_0x5de11f||0xcc;return function(_0x364dba){if(_0x364dba){return _0x5f59ba[_0xec4c('0x19')](_0x5de11f);}return _0x5f59ba['status'](_0x5de11f)[_0xec4c('0x1a')]();};}function respondWithResult(_0x32b12a,_0x42d791){_0x42d791=_0x42d791||0xc8;return function(_0x5ecf49){if(_0x5ecf49){return _0x32b12a[_0xec4c('0x1b')](_0x42d791)['json'](_0x5ecf49);}};}function respondWithFilteredResult(_0x2c4aad,_0x2e5594){return function(_0xb9d11b){if(_0xb9d11b){var _0x3b36ad=typeof _0x2e5594[_0xec4c('0x1c')]===_0xec4c('0x1d')&&typeof _0x2e5594[_0xec4c('0x1e')]===_0xec4c('0x1d');var _0x2a2216=_0xb9d11b[_0xec4c('0x1f')];var _0x51f5a3=_0x3b36ad?0x0:_0x2e5594['offset'];var _0x1ef5b9=_0x3b36ad?_0xb9d11b[_0xec4c('0x1f')]:_0x2e5594[_0xec4c('0x1c')]+_0x2e5594[_0xec4c('0x1e')];var _0x25d21a;if(_0x1ef5b9>=_0x2a2216){_0x1ef5b9=_0x2a2216;_0x25d21a=0xc8;}else{_0x25d21a=0xce;}_0x2c4aad[_0xec4c('0x1b')](_0x25d21a);return _0x2c4aad[_0xec4c('0x20')](_0xec4c('0x21'),_0x51f5a3+'-'+_0x1ef5b9+'/'+_0x2a2216)[_0xec4c('0x22')](_0xb9d11b);}return null;};}function patchUpdates(_0x3268f6){return function(_0x1cd535){try{jsonpatch['apply'](_0x1cd535,_0x3268f6,!![]);}catch(_0x1f085c){return BPromise[_0xec4c('0x23')](_0x1f085c);}return _0x1cd535[_0xec4c('0x24')]();};}function saveUpdates(_0x4e025b,_0x243723){return function(_0x40bf6e){if(_0x40bf6e){return _0x40bf6e['update'](_0x4e025b)['then'](function(_0x14cc9b){return _0x14cc9b;});}return null;};}function removeEntity(_0x246cde,_0x5b94c2){return function(_0x18db11){if(_0x18db11){return _0x18db11[_0xec4c('0x25')]()[_0xec4c('0x26')](function(){_0x246cde[_0xec4c('0x1b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x406d60,_0x1f23cc){return function(_0x38fb01){if(!_0x38fb01){_0x406d60[_0xec4c('0x19')](0x194);}return _0x38fb01;};}function handleError(_0x4e2d9a,_0x357f59){_0x357f59=_0x357f59||0x1f4;return function(_0x5c45ba){logger[_0xec4c('0x27')](_0x5c45ba[_0xec4c('0x28')]);if(_0x5c45ba['name']){delete _0x5c45ba[_0xec4c('0x29')];}_0x4e2d9a['status'](_0x357f59)[_0xec4c('0x2a')](_0x5c45ba);};}exports['index']=function(_0x29a882,_0x3c84e2){var _0x213ed8={},_0x5f5a68={},_0x30546c={'count':0x0,'rows':[]};var _0x1ff60c=_[_0xec4c('0x2b')](db[_0xec4c('0x2c')][_0xec4c('0x2d')],function(_0x41d90d){return{'name':_0x41d90d[_0xec4c('0x2e')],'type':_0x41d90d[_0xec4c('0x2f')][_0xec4c('0x30')]};});_0x5f5a68[_0xec4c('0x31')]=_[_0xec4c('0x2b')](_0x1ff60c,'name');_0x5f5a68[_0xec4c('0x32')]=_[_0xec4c('0x33')](_0x29a882[_0xec4c('0x32')]);_0x5f5a68[_0xec4c('0x34')]=_['intersection'](_0x5f5a68[_0xec4c('0x31')],_0x5f5a68[_0xec4c('0x32')]);_0x213ed8['attributes']=_['intersection'](_0x5f5a68[_0xec4c('0x31')],qs[_0xec4c('0x35')](_0x29a882[_0xec4c('0x32')][_0xec4c('0x35')]));_0x213ed8[_0xec4c('0x36')]=_0x213ed8[_0xec4c('0x36')][_0xec4c('0x37')]?_0x213ed8['attributes']:_0x5f5a68['model'];if(!_0x29a882[_0xec4c('0x32')]['hasOwnProperty'](_0xec4c('0x38'))){_0x213ed8[_0xec4c('0x1e')]=qs[_0xec4c('0x1e')](_0x29a882[_0xec4c('0x32')][_0xec4c('0x1e')]);_0x213ed8[_0xec4c('0x1c')]=qs[_0xec4c('0x1c')](_0x29a882[_0xec4c('0x32')]['offset']);}_0x213ed8[_0xec4c('0x39')]=qs[_0xec4c('0x3a')](_0x29a882[_0xec4c('0x32')][_0xec4c('0x3a')]);_0x213ed8['where']=qs[_0xec4c('0x34')](_['pick'](_0x29a882[_0xec4c('0x32')],_0x5f5a68['filters']),_0x1ff60c);if(_0x29a882[_0xec4c('0x32')][_0xec4c('0x3b')]){_0x213ed8[_0xec4c('0x3c')]=_[_0xec4c('0x3d')](_0x213ed8[_0xec4c('0x3c')],{'$or':_[_0xec4c('0x2b')](_0x1ff60c,function(_0x1742e8){if(_0x1742e8[_0xec4c('0x2f')]!=='VIRTUAL'){var _0x3c5c68={};_0x3c5c68[_0x1742e8['name']]={'$like':'%'+_0x29a882[_0xec4c('0x32')][_0xec4c('0x3b')]+'%'};return _0x3c5c68;}})});}_0x213ed8=_[_0xec4c('0x3d')]({},_0x213ed8,_0x29a882[_0xec4c('0x3e')]);var _0x1fbac0={'where':_0x213ed8[_0xec4c('0x3c')]};return db['UserProfileSection']['count'](_0x1fbac0)['then'](function(_0x235735){_0x30546c[_0xec4c('0x1f')]=_0x235735;if(_0x29a882[_0xec4c('0x32')][_0xec4c('0x3f')]){_0x213ed8[_0xec4c('0x40')]=[{'all':!![]}];}return db[_0xec4c('0x2c')][_0xec4c('0x41')](_0x213ed8);})[_0xec4c('0x26')](function(_0x1c79ef){_0x30546c[_0xec4c('0x42')]=_0x1c79ef;return _0x30546c;})[_0xec4c('0x26')](respondWithFilteredResult(_0x3c84e2,_0x213ed8))[_0xec4c('0x43')](handleError(_0x3c84e2,null));};exports['show']=function(_0x564433,_0x5ea820){var _0x1cc44e={'raw':![],'where':{'id':_0x564433[_0xec4c('0x44')]['id']}},_0x996d18={};_0x996d18[_0xec4c('0x31')]=_[_0xec4c('0x33')](db[_0xec4c('0x2c')]['rawAttributes']);_0x996d18[_0xec4c('0x32')]=_['keys'](_0x564433[_0xec4c('0x32')]);_0x996d18[_0xec4c('0x34')]=_[_0xec4c('0x45')](_0x996d18[_0xec4c('0x31')],_0x996d18['query']);_0x1cc44e['attributes']=_[_0xec4c('0x45')](_0x996d18[_0xec4c('0x31')],qs['fields'](_0x564433[_0xec4c('0x32')][_0xec4c('0x35')]));_0x1cc44e['attributes']=_0x1cc44e[_0xec4c('0x36')][_0xec4c('0x37')]?_0x1cc44e[_0xec4c('0x36')]:_0x996d18[_0xec4c('0x31')];if(_0x564433['query'][_0xec4c('0x3f')]){_0x1cc44e[_0xec4c('0x40')]=[{'all':!![]}];}_0x1cc44e=_['merge']({},_0x1cc44e,_0x564433['options']);return db[_0xec4c('0x2c')][_0xec4c('0x46')](_0x1cc44e)[_0xec4c('0x26')](handleEntityNotFound(_0x5ea820,null))['then'](respondWithResult(_0x5ea820,null))[_0xec4c('0x43')](handleError(_0x5ea820,null));};exports[_0xec4c('0x47')]=function(_0x4a0e6f,_0x4a8f68){return db[_0xec4c('0x2c')]['create'](_0x4a0e6f[_0xec4c('0x48')],{})[_0xec4c('0x26')](respondWithResult(_0x4a8f68,0xc9))[_0xec4c('0x43')](handleError(_0x4a8f68,null));};exports['update']=function(_0x1019f9,_0xea439a){if(_0x1019f9['body']['id']){delete _0x1019f9[_0xec4c('0x48')]['id'];}return db[_0xec4c('0x2c')][_0xec4c('0x46')]({'where':{'id':_0x1019f9['params']['id']}})[_0xec4c('0x26')](handleEntityNotFound(_0xea439a,null))[_0xec4c('0x26')](saveUpdates(_0x1019f9['body'],null))['then'](respondWithResult(_0xea439a,null))[_0xec4c('0x43')](handleError(_0xea439a,null));};exports[_0xec4c('0x25')]=function(_0x3a0d95,_0x3d87d6){return db['UserProfileSection']['find']({'where':{'id':_0x3a0d95['params']['id']}})[_0xec4c('0x26')](handleEntityNotFound(_0x3d87d6,null))[_0xec4c('0x26')](removeEntity(_0x3d87d6,null))[_0xec4c('0x43')](handleError(_0x3d87d6,null));};exports[_0xec4c('0x49')]=function(_0x14b61b,_0x38009c){return db[_0xec4c('0x2c')][_0xec4c('0x49')]()['then'](respondWithResult(_0x38009c,null))['catch'](handleError(_0x38009c,null));};