090f7a5e28ed13af02263438b1b8a55dcb154924
[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 _0x065e=['hasOwnProperty','nolimit','order','sort','pick','filters','filter','where','merge','VIRTUAL','options','include','rows','catch','show','params','fields','includeAll','find','create','body','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','bluebird','mustache','path','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','count','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','end','error','stack','name','send','index','UserProfileSection','rawAttributes','type','key','model','map','query','keys','intersection','attributes','length'];(function(_0x57b54c,_0x54ce0d){var _0x59cc19=function(_0xa33bc6){while(--_0xa33bc6){_0x57b54c['push'](_0x57b54c['shift']());}};_0x59cc19(++_0x54ce0d);}(_0x065e,0x1e3));var _0xe065=function(_0x2d00d4,_0x3e7d3d){_0x2d00d4=_0x2d00d4-0x0;var _0x45f2b6=_0x065e[_0x2d00d4];return _0x45f2b6;};'use strict';var pdf=require(_0xe065('0x0'));var emlformat=require(_0xe065('0x1'));var rimraf=require(_0xe065('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0xe065('0x3'));var rp=require(_0xe065('0x4'));var moment=require('moment');var BPromise=require(_0xe065('0x5'));var Mustache=require(_0xe065('0x6'));var util=require('util');var path=require(_0xe065('0x7'));var sox=require('sox');var csv=require(_0xe065('0x8'));var ejs=require(_0xe065('0x9'));var fs=require('fs');var _=require(_0xe065('0xa'));var squel=require(_0xe065('0xb'));var crypto=require(_0xe065('0xc'));var jsforce=require(_0xe065('0xd'));var deskjs=require(_0xe065('0xe'));var toCsv=require(_0xe065('0x8'));var querystring=require(_0xe065('0xf'));var Papa=require(_0xe065('0x10'));var Redis=require(_0xe065('0x11'));var authService=require(_0xe065('0x12'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xe065('0x13'));var logger=require('../../config/logger')(_0xe065('0x14'));var utils=require(_0xe065('0x15'));var config=require(_0xe065('0x16'));var licenseUtil=require(_0xe065('0x17'));var db=require(_0xe065('0x18'))['db'];function respondWithStatusCode(_0x2d5d5e,_0xa4faea){_0xa4faea=_0xa4faea||0xcc;return function(_0x2bb9eb){if(_0x2bb9eb){return _0x2d5d5e[_0xe065('0x19')](_0xa4faea);}return _0x2d5d5e[_0xe065('0x1a')](_0xa4faea)['end']();};}function respondWithResult(_0x1bd67b,_0x30b8e8){_0x30b8e8=_0x30b8e8||0xc8;return function(_0xebe5c9){if(_0xebe5c9){return _0x1bd67b[_0xe065('0x1a')](_0x30b8e8)[_0xe065('0x1b')](_0xebe5c9);}};}function respondWithFilteredResult(_0x3c915b,_0xbf4702){return function(_0x38305){if(_0x38305){var _0x3986e3=_0x38305[_0xe065('0x1c')],_0x3b7c15=_0xbf4702[_0xe065('0x1d')],_0xa7dc01=_0xbf4702[_0xe065('0x1d')]+_0xbf4702[_0xe065('0x1e')],_0x22737f;if(_0xa7dc01>=_0x3986e3){_0xa7dc01=_0x3986e3;_0x22737f=0xc8;}else{_0x22737f=0xce;}_0x3c915b[_0xe065('0x1a')](_0x22737f);return _0x3c915b[_0xe065('0x1f')](_0xe065('0x20'),_0x3b7c15+'-'+_0xa7dc01+'/'+_0x3986e3)[_0xe065('0x1b')](_0x38305);}return null;};}function patchUpdates(_0x2b553e){return function(_0x4cfba1){try{jsonpatch[_0xe065('0x21')](_0x4cfba1,_0x2b553e,!![]);}catch(_0x4c5c98){return BPromise[_0xe065('0x22')](_0x4c5c98);}return _0x4cfba1[_0xe065('0x23')]();};}function saveUpdates(_0x442a0e,_0x1b5fba){return function(_0x19e5dc){if(_0x19e5dc){return _0x19e5dc[_0xe065('0x24')](_0x442a0e)[_0xe065('0x25')](function(_0x29b3c1){return _0x29b3c1;});}return null;};}function removeEntity(_0x5e088a,_0x3c54a5){return function(_0x11ac06){if(_0x11ac06){return _0x11ac06[_0xe065('0x26')]()[_0xe065('0x25')](function(){_0x5e088a[_0xe065('0x1a')](0xcc)[_0xe065('0x27')]();});}};}function handleEntityNotFound(_0x559b3d,_0x1e5f83){return function(_0x392e4a){if(!_0x392e4a){_0x559b3d[_0xe065('0x19')](0x194);}return _0x392e4a;};}function handleError(_0xa91e24,_0x1c27d4){_0x1c27d4=_0x1c27d4||0x1f4;return function(_0x3d98b9){logger[_0xe065('0x28')](_0x3d98b9[_0xe065('0x29')]);if(_0x3d98b9[_0xe065('0x2a')]){delete _0x3d98b9[_0xe065('0x2a')];}_0xa91e24[_0xe065('0x1a')](_0x1c27d4)[_0xe065('0x2b')](_0x3d98b9);};}exports[_0xe065('0x2c')]=function(_0xa6103a,_0x47dd0a){var _0x16f4d4={},_0x2613f1={},_0x31844a={'count':0x0,'rows':[]};var _0x433081=_['map'](db[_0xe065('0x2d')][_0xe065('0x2e')],function(_0x1098f3){return{'name':_0x1098f3['fieldName'],'type':_0x1098f3[_0xe065('0x2f')][_0xe065('0x30')]};});_0x2613f1[_0xe065('0x31')]=_[_0xe065('0x32')](_0x433081,'name');_0x2613f1[_0xe065('0x33')]=_[_0xe065('0x34')](_0xa6103a[_0xe065('0x33')]);_0x2613f1['filters']=_[_0xe065('0x35')](_0x2613f1[_0xe065('0x31')],_0x2613f1[_0xe065('0x33')]);_0x16f4d4[_0xe065('0x36')]=_[_0xe065('0x35')](_0x2613f1['model'],qs['fields'](_0xa6103a[_0xe065('0x33')]['fields']));_0x16f4d4[_0xe065('0x36')]=_0x16f4d4['attributes'][_0xe065('0x37')]?_0x16f4d4[_0xe065('0x36')]:_0x2613f1[_0xe065('0x31')];if(!_0xa6103a[_0xe065('0x33')][_0xe065('0x38')](_0xe065('0x39'))){_0x16f4d4[_0xe065('0x1e')]=qs[_0xe065('0x1e')](_0xa6103a[_0xe065('0x33')][_0xe065('0x1e')]);_0x16f4d4[_0xe065('0x1d')]=qs[_0xe065('0x1d')](_0xa6103a[_0xe065('0x33')][_0xe065('0x1d')]);}_0x16f4d4[_0xe065('0x3a')]=qs[_0xe065('0x3b')](_0xa6103a['query'][_0xe065('0x3b')]);_0x16f4d4['where']=qs['filters'](_[_0xe065('0x3c')](_0xa6103a['query'],_0x2613f1[_0xe065('0x3d')]),_0x433081);if(_0xa6103a[_0xe065('0x33')][_0xe065('0x3e')]){_0x16f4d4[_0xe065('0x3f')]=_[_0xe065('0x40')](_0x16f4d4[_0xe065('0x3f')],{'$or':_[_0xe065('0x32')](_0x433081,function(_0x1549ab){if(_0x1549ab['type']!==_0xe065('0x41')){var _0x501351={};_0x501351[_0x1549ab[_0xe065('0x2a')]]={'$like':'%'+_0xa6103a[_0xe065('0x33')]['filter']+'%'};return _0x501351;}})});}_0x16f4d4=_[_0xe065('0x40')]({},_0x16f4d4,_0xa6103a[_0xe065('0x42')]);var _0x2b59a9={'where':_0x16f4d4[_0xe065('0x3f')]};return db[_0xe065('0x2d')]['count'](_0x2b59a9)['then'](function(_0x34e6a1){_0x31844a[_0xe065('0x1c')]=_0x34e6a1;if(_0xa6103a['query']['includeAll']){_0x16f4d4[_0xe065('0x43')]=[{'all':!![]}];}return db['UserProfileSection']['findAll'](_0x16f4d4);})['then'](function(_0x25892f){_0x31844a[_0xe065('0x44')]=_0x25892f;return _0x31844a;})[_0xe065('0x25')](respondWithFilteredResult(_0x47dd0a,_0x16f4d4))[_0xe065('0x45')](handleError(_0x47dd0a,null));};exports[_0xe065('0x46')]=function(_0x119d32,_0x4ff845){var _0x399d80={'raw':![],'where':{'id':_0x119d32[_0xe065('0x47')]['id']}},_0x427b9c={};_0x427b9c[_0xe065('0x31')]=_['keys'](db['UserProfileSection'][_0xe065('0x2e')]);_0x427b9c['query']=_[_0xe065('0x34')](_0x119d32[_0xe065('0x33')]);_0x427b9c['filters']=_['intersection'](_0x427b9c[_0xe065('0x31')],_0x427b9c[_0xe065('0x33')]);_0x399d80['attributes']=_[_0xe065('0x35')](_0x427b9c[_0xe065('0x31')],qs[_0xe065('0x48')](_0x119d32['query'][_0xe065('0x48')]));_0x399d80[_0xe065('0x36')]=_0x399d80[_0xe065('0x36')]['length']?_0x399d80[_0xe065('0x36')]:_0x427b9c[_0xe065('0x31')];if(_0x119d32[_0xe065('0x33')][_0xe065('0x49')]){_0x399d80[_0xe065('0x43')]=[{'all':!![]}];}_0x399d80=_[_0xe065('0x40')]({},_0x399d80,_0x119d32[_0xe065('0x42')]);return db['UserProfileSection'][_0xe065('0x4a')](_0x399d80)['then'](handleEntityNotFound(_0x4ff845,null))['then'](respondWithResult(_0x4ff845,null))[_0xe065('0x45')](handleError(_0x4ff845,null));};exports[_0xe065('0x4b')]=function(_0x4e59a4,_0x547dd2){return db[_0xe065('0x2d')][_0xe065('0x4b')](_0x4e59a4['body'],{})[_0xe065('0x25')](respondWithResult(_0x547dd2,0xc9))[_0xe065('0x45')](handleError(_0x547dd2,null));};exports[_0xe065('0x24')]=function(_0x266df8,_0x2967ee){if(_0x266df8[_0xe065('0x4c')]['id']){delete _0x266df8['body']['id'];}return db[_0xe065('0x2d')][_0xe065('0x4a')]({'where':{'id':_0x266df8[_0xe065('0x47')]['id']}})[_0xe065('0x25')](handleEntityNotFound(_0x2967ee,null))[_0xe065('0x25')](saveUpdates(_0x266df8[_0xe065('0x4c')],null))[_0xe065('0x25')](respondWithResult(_0x2967ee,null))[_0xe065('0x45')](handleError(_0x2967ee,null));};exports[_0xe065('0x26')]=function(_0x5df065,_0x4051eb){return db['UserProfileSection'][_0xe065('0x4a')]({'where':{'id':_0x5df065[_0xe065('0x47')]['id']}})['then'](handleEntityNotFound(_0x4051eb,null))[_0xe065('0x25')](removeEntity(_0x4051eb,null))['catch'](handleError(_0x4051eb,null));};exports['describe']=function(_0x2b41a2,_0xf207f0){return db['UserProfileSection']['describe']()[_0xe065('0x25')](respondWithResult(_0xf207f0,null))[_0xe065('0x45')](handleError(_0xf207f0,null));};