Built motion from commit eddce310.|2.6.12
[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 _0x3585=['map','UserProfileSection','fieldName','key','model','keys','filters','query','attributes','intersection','fields','length','hasOwnProperty','nolimit','limit','order','sort','pick','where','merge','type','VIRTUAL','filter','options','include','findAll','rows','catch','show','params','includeAll','find','create','body','destroy','describe','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','fs-extra','lodash','squel','crypto','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end','undefined','count','offset','set','apply','reject','save','update','then','stack','name','send','index'];(function(_0x44defb,_0x42256e){var _0x146a99=function(_0x1d8021){while(--_0x1d8021){_0x44defb['push'](_0x44defb['shift']());}};_0x146a99(++_0x42256e);}(_0x3585,0x6f));var _0x5358=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x3585[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x5358('0x0'));var zipdir=require(_0x5358('0x1'));var jsonpatch=require(_0x5358('0x2'));var rp=require(_0x5358('0x3'));var moment=require(_0x5358('0x4'));var BPromise=require(_0x5358('0x5'));var Mustache=require(_0x5358('0x6'));var util=require(_0x5358('0x7'));var path=require(_0x5358('0x8'));var sox=require('sox');var csv=require(_0x5358('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x5358('0xa'));var _=require(_0x5358('0xb'));var squel=require(_0x5358('0xc'));var crypto=require(_0x5358('0xd'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x5358('0x9'));var querystring=require('querystring');var Papa=require(_0x5358('0xe'));var Redis=require('ioredis');var authService=require(_0x5358('0xf'));var qs=require(_0x5358('0x10'));var as=require(_0x5358('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x5358('0x12'))(_0x5358('0x13'));var utils=require(_0x5358('0x14'));var config=require('../../config/environment');var licenseUtil=require(_0x5358('0x15'));var db=require(_0x5358('0x16'))['db'];function respondWithStatusCode(_0x2148e3,_0x1e9384){_0x1e9384=_0x1e9384||0xcc;return function(_0x4bd8e8){if(_0x4bd8e8){return _0x2148e3[_0x5358('0x17')](_0x1e9384);}return _0x2148e3[_0x5358('0x18')](_0x1e9384)[_0x5358('0x19')]();};}function respondWithResult(_0xfdbd1e,_0xd8f6a){_0xd8f6a=_0xd8f6a||0xc8;return function(_0x231e4b){if(_0x231e4b){return _0xfdbd1e[_0x5358('0x18')](_0xd8f6a)['json'](_0x231e4b);}};}function respondWithFilteredResult(_0x7a1cb0,_0x7406b7){return function(_0x355eb5){if(_0x355eb5){var _0x332952=typeof _0x7406b7['offset']===_0x5358('0x1a')&&typeof _0x7406b7['limit']===_0x5358('0x1a');var _0x4463fa=_0x355eb5[_0x5358('0x1b')];var _0x45b059=_0x332952?0x0:_0x7406b7['offset'];var _0x51f622=_0x332952?_0x355eb5[_0x5358('0x1b')]:_0x7406b7[_0x5358('0x1c')]+_0x7406b7['limit'];var _0x4cdf68;if(_0x51f622>=_0x4463fa){_0x51f622=_0x4463fa;_0x4cdf68=0xc8;}else{_0x4cdf68=0xce;}_0x7a1cb0['status'](_0x4cdf68);return _0x7a1cb0[_0x5358('0x1d')]('Content-Range',_0x45b059+'-'+_0x51f622+'/'+_0x4463fa)['json'](_0x355eb5);}return null;};}function patchUpdates(_0x40db8d){return function(_0x104c8b){try{jsonpatch[_0x5358('0x1e')](_0x104c8b,_0x40db8d,!![]);}catch(_0x45fe10){return BPromise[_0x5358('0x1f')](_0x45fe10);}return _0x104c8b[_0x5358('0x20')]();};}function saveUpdates(_0x583e7d,_0x1e2fc2){return function(_0x2ed0cf){if(_0x2ed0cf){return _0x2ed0cf[_0x5358('0x21')](_0x583e7d)['then'](function(_0x3c2f37){return _0x3c2f37;});}return null;};}function removeEntity(_0x2873a0,_0x427a27){return function(_0x39707f){if(_0x39707f){return _0x39707f['destroy']()[_0x5358('0x22')](function(){_0x2873a0[_0x5358('0x18')](0xcc)['end']();});}};}function handleEntityNotFound(_0x18ca88,_0x216d36){return function(_0x5a9d00){if(!_0x5a9d00){_0x18ca88[_0x5358('0x17')](0x194);}return _0x5a9d00;};}function handleError(_0x283fbf,_0x48983a){_0x48983a=_0x48983a||0x1f4;return function(_0xa2b39b){logger['error'](_0xa2b39b[_0x5358('0x23')]);if(_0xa2b39b[_0x5358('0x24')]){delete _0xa2b39b[_0x5358('0x24')];}_0x283fbf[_0x5358('0x18')](_0x48983a)[_0x5358('0x25')](_0xa2b39b);};}exports[_0x5358('0x26')]=function(_0x2067e1,_0x5c4877){var _0x4b5822={},_0x4e6d89={},_0x493b11={'count':0x0,'rows':[]};var _0x521ea8=_[_0x5358('0x27')](db[_0x5358('0x28')]['rawAttributes'],function(_0xe6503a){return{'name':_0xe6503a[_0x5358('0x29')],'type':_0xe6503a['type'][_0x5358('0x2a')]};});_0x4e6d89[_0x5358('0x2b')]=_['map'](_0x521ea8,'name');_0x4e6d89['query']=_[_0x5358('0x2c')](_0x2067e1['query']);_0x4e6d89[_0x5358('0x2d')]=_['intersection'](_0x4e6d89[_0x5358('0x2b')],_0x4e6d89[_0x5358('0x2e')]);_0x4b5822[_0x5358('0x2f')]=_[_0x5358('0x30')](_0x4e6d89[_0x5358('0x2b')],qs[_0x5358('0x31')](_0x2067e1[_0x5358('0x2e')]['fields']));_0x4b5822[_0x5358('0x2f')]=_0x4b5822[_0x5358('0x2f')][_0x5358('0x32')]?_0x4b5822[_0x5358('0x2f')]:_0x4e6d89[_0x5358('0x2b')];if(!_0x2067e1['query'][_0x5358('0x33')](_0x5358('0x34'))){_0x4b5822['limit']=qs['limit'](_0x2067e1['query'][_0x5358('0x35')]);_0x4b5822['offset']=qs[_0x5358('0x1c')](_0x2067e1['query'][_0x5358('0x1c')]);}_0x4b5822[_0x5358('0x36')]=qs[_0x5358('0x37')](_0x2067e1[_0x5358('0x2e')][_0x5358('0x37')]);_0x4b5822['where']=qs['filters'](_[_0x5358('0x38')](_0x2067e1[_0x5358('0x2e')],_0x4e6d89[_0x5358('0x2d')]),_0x521ea8);if(_0x2067e1[_0x5358('0x2e')]['filter']){_0x4b5822[_0x5358('0x39')]=_[_0x5358('0x3a')](_0x4b5822[_0x5358('0x39')],{'$or':_['map'](_0x521ea8,function(_0x3e0533){if(_0x3e0533[_0x5358('0x3b')]!==_0x5358('0x3c')){var _0x2f5274={};_0x2f5274[_0x3e0533[_0x5358('0x24')]]={'$like':'%'+_0x2067e1[_0x5358('0x2e')][_0x5358('0x3d')]+'%'};return _0x2f5274;}})});}_0x4b5822=_[_0x5358('0x3a')]({},_0x4b5822,_0x2067e1[_0x5358('0x3e')]);var _0x10ec21={'where':_0x4b5822[_0x5358('0x39')]};return db['UserProfileSection'][_0x5358('0x1b')](_0x10ec21)[_0x5358('0x22')](function(_0xf0e4c7){_0x493b11[_0x5358('0x1b')]=_0xf0e4c7;if(_0x2067e1[_0x5358('0x2e')]['includeAll']){_0x4b5822[_0x5358('0x3f')]=[{'all':!![]}];}return db[_0x5358('0x28')][_0x5358('0x40')](_0x4b5822);})[_0x5358('0x22')](function(_0x3b7449){_0x493b11[_0x5358('0x41')]=_0x3b7449;return _0x493b11;})[_0x5358('0x22')](respondWithFilteredResult(_0x5c4877,_0x4b5822))[_0x5358('0x42')](handleError(_0x5c4877,null));};exports[_0x5358('0x43')]=function(_0x27b215,_0x5145bd){var _0x4c72de={'raw':![],'where':{'id':_0x27b215[_0x5358('0x44')]['id']}},_0x410ce4={};_0x410ce4[_0x5358('0x2b')]=_[_0x5358('0x2c')](db[_0x5358('0x28')]['rawAttributes']);_0x410ce4[_0x5358('0x2e')]=_[_0x5358('0x2c')](_0x27b215['query']);_0x410ce4[_0x5358('0x2d')]=_[_0x5358('0x30')](_0x410ce4[_0x5358('0x2b')],_0x410ce4[_0x5358('0x2e')]);_0x4c72de['attributes']=_['intersection'](_0x410ce4[_0x5358('0x2b')],qs[_0x5358('0x31')](_0x27b215[_0x5358('0x2e')][_0x5358('0x31')]));_0x4c72de[_0x5358('0x2f')]=_0x4c72de[_0x5358('0x2f')][_0x5358('0x32')]?_0x4c72de['attributes']:_0x410ce4[_0x5358('0x2b')];if(_0x27b215[_0x5358('0x2e')][_0x5358('0x45')]){_0x4c72de[_0x5358('0x3f')]=[{'all':!![]}];}_0x4c72de=_['merge']({},_0x4c72de,_0x27b215['options']);return db[_0x5358('0x28')][_0x5358('0x46')](_0x4c72de)[_0x5358('0x22')](handleEntityNotFound(_0x5145bd,null))['then'](respondWithResult(_0x5145bd,null))['catch'](handleError(_0x5145bd,null));};exports['create']=function(_0x38b9aa,_0x486b8a){return db[_0x5358('0x28')][_0x5358('0x47')](_0x38b9aa['body'],{})[_0x5358('0x22')](respondWithResult(_0x486b8a,0xc9))[_0x5358('0x42')](handleError(_0x486b8a,null));};exports[_0x5358('0x21')]=function(_0x362f60,_0x1573a5){if(_0x362f60[_0x5358('0x48')]['id']){delete _0x362f60[_0x5358('0x48')]['id'];}return db['UserProfileSection'][_0x5358('0x46')]({'where':{'id':_0x362f60[_0x5358('0x44')]['id']}})[_0x5358('0x22')](handleEntityNotFound(_0x1573a5,null))[_0x5358('0x22')](saveUpdates(_0x362f60['body'],null))[_0x5358('0x22')](respondWithResult(_0x1573a5,null))[_0x5358('0x42')](handleError(_0x1573a5,null));};exports[_0x5358('0x49')]=function(_0x4a4272,_0x1f01bc){return db[_0x5358('0x28')][_0x5358('0x46')]({'where':{'id':_0x4a4272[_0x5358('0x44')]['id']}})[_0x5358('0x22')](handleEntityNotFound(_0x1f01bc,null))[_0x5358('0x22')](removeEntity(_0x1f01bc,null))[_0x5358('0x42')](handleError(_0x1f01bc,null));};exports[_0x5358('0x4a')]=function(_0x2b0caa,_0x19f1fa){return db[_0x5358('0x28')]['describe']()[_0x5358('0x22')](respondWithResult(_0x19f1fa,null))[_0x5358('0x42')](handleError(_0x19f1fa,null));};