Built motion from commit (unavailable).|2.5.30
[motion2.git] / server / api / userProfileResource / userProfileResource.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 _0x1c3d=['fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','status','json','offset','limit','undefined','count','set','Content-Range','apply','reject','update','then','destroy','end','sendStatus','error','stack','name','send','UserProfileResource','rawAttributes','fieldName','key','map','query','keys','filters','intersection','model','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','type','options','include','rows','catch','show','includeAll','find','create','body','params','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','sox'];(function(_0x50dc23,_0x3ea6d6){var _0x5b9696=function(_0x2916b8){while(--_0x2916b8){_0x50dc23['push'](_0x50dc23['shift']());}};_0x5b9696(++_0x3ea6d6);}(_0x1c3d,0xdf));var _0xd1c3=function(_0x26284f,_0x22577a){_0x26284f=_0x26284f-0x0;var _0xf0d62c=_0x1c3d[_0x26284f];return _0xf0d62c;};'use strict';var emlformat=require(_0xd1c3('0x0'));var rimraf=require(_0xd1c3('0x1'));var zipdir=require(_0xd1c3('0x2'));var jsonpatch=require(_0xd1c3('0x3'));var rp=require(_0xd1c3('0x4'));var moment=require(_0xd1c3('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xd1c3('0x6'));var util=require('util');var path=require('path');var sox=require(_0xd1c3('0x7'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xd1c3('0x8'));var _=require(_0xd1c3('0x9'));var squel=require(_0xd1c3('0xa'));var crypto=require(_0xd1c3('0xb'));var jsforce=require(_0xd1c3('0xc'));var deskjs=require(_0xd1c3('0xd'));var toCsv=require('to-csv');var querystring=require(_0xd1c3('0xe'));var Papa=require(_0xd1c3('0xf'));var Redis=require(_0xd1c3('0x10'));var authService=require(_0xd1c3('0x11'));var qs=require(_0xd1c3('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xd1c3('0x13'));var logger=require(_0xd1c3('0x14'))(_0xd1c3('0x15'));var utils=require('../../config/utils');var config=require(_0xd1c3('0x16'));var licenseUtil=require(_0xd1c3('0x17'));var db=require(_0xd1c3('0x18'))['db'];function respondWithStatusCode(_0x4cb341,_0x266e70){_0x266e70=_0x266e70||0xcc;return function(_0x585bdd){if(_0x585bdd){return _0x4cb341['sendStatus'](_0x266e70);}return _0x4cb341['status'](_0x266e70)['end']();};}function respondWithResult(_0x442400,_0x27b987){_0x27b987=_0x27b987||0xc8;return function(_0x4d1f9f){if(_0x4d1f9f){return _0x442400[_0xd1c3('0x19')](_0x27b987)[_0xd1c3('0x1a')](_0x4d1f9f);}};}function respondWithFilteredResult(_0x2462bf,_0x9c985b){return function(_0x3c587b){if(_0x3c587b){var _0x37d609=typeof _0x9c985b[_0xd1c3('0x1b')]==='undefined'&&typeof _0x9c985b[_0xd1c3('0x1c')]===_0xd1c3('0x1d');var _0x277cc9=_0x3c587b['count'];var _0x5105b1=_0x37d609?0x0:_0x9c985b['offset'];var _0x26c79c=_0x37d609?_0x3c587b[_0xd1c3('0x1e')]:_0x9c985b['offset']+_0x9c985b['limit'];var _0x5a0331;if(_0x26c79c>=_0x277cc9){_0x26c79c=_0x277cc9;_0x5a0331=0xc8;}else{_0x5a0331=0xce;}_0x2462bf[_0xd1c3('0x19')](_0x5a0331);return _0x2462bf[_0xd1c3('0x1f')](_0xd1c3('0x20'),_0x5105b1+'-'+_0x26c79c+'/'+_0x277cc9)[_0xd1c3('0x1a')](_0x3c587b);}return null;};}function patchUpdates(_0x2409a8){return function(_0x53d795){try{jsonpatch[_0xd1c3('0x21')](_0x53d795,_0x2409a8,!![]);}catch(_0x10587d){return BPromise[_0xd1c3('0x22')](_0x10587d);}return _0x53d795['save']();};}function saveUpdates(_0x7058e4,_0x43023e){return function(_0x5d867e){if(_0x5d867e){return _0x5d867e[_0xd1c3('0x23')](_0x7058e4)[_0xd1c3('0x24')](function(_0x3239cf){return _0x3239cf;});}return null;};}function removeEntity(_0x1271cc,_0x5ac784){return function(_0x25ebc9){if(_0x25ebc9){return _0x25ebc9[_0xd1c3('0x25')]()[_0xd1c3('0x24')](function(){_0x1271cc[_0xd1c3('0x19')](0xcc)[_0xd1c3('0x26')]();});}};}function handleEntityNotFound(_0x31265f,_0x51a913){return function(_0x3b3b07){if(!_0x3b3b07){_0x31265f[_0xd1c3('0x27')](0x194);}return _0x3b3b07;};}function handleError(_0x158bf2,_0x346acd){_0x346acd=_0x346acd||0x1f4;return function(_0x3777aa){logger[_0xd1c3('0x28')](_0x3777aa[_0xd1c3('0x29')]);if(_0x3777aa['name']){delete _0x3777aa[_0xd1c3('0x2a')];}_0x158bf2[_0xd1c3('0x19')](_0x346acd)[_0xd1c3('0x2b')](_0x3777aa);};}exports['index']=function(_0x26d1d3,_0x4d2d3a){var _0x49ac0f={},_0x16aaec={},_0x47ad3d={'count':0x0,'rows':[]};var _0x44181d=_['map'](db[_0xd1c3('0x2c')][_0xd1c3('0x2d')],function(_0xb84fb6){return{'name':_0xb84fb6[_0xd1c3('0x2e')],'type':_0xb84fb6['type'][_0xd1c3('0x2f')]};});_0x16aaec['model']=_[_0xd1c3('0x30')](_0x44181d,_0xd1c3('0x2a'));_0x16aaec[_0xd1c3('0x31')]=_[_0xd1c3('0x32')](_0x26d1d3['query']);_0x16aaec[_0xd1c3('0x33')]=_[_0xd1c3('0x34')](_0x16aaec['model'],_0x16aaec[_0xd1c3('0x31')]);_0x49ac0f['attributes']=_['intersection'](_0x16aaec[_0xd1c3('0x35')],qs['fields'](_0x26d1d3[_0xd1c3('0x31')][_0xd1c3('0x36')]));_0x49ac0f[_0xd1c3('0x37')]=_0x49ac0f['attributes'][_0xd1c3('0x38')]?_0x49ac0f[_0xd1c3('0x37')]:_0x16aaec['model'];if(!_0x26d1d3[_0xd1c3('0x31')][_0xd1c3('0x39')](_0xd1c3('0x3a'))){_0x49ac0f['limit']=qs[_0xd1c3('0x1c')](_0x26d1d3[_0xd1c3('0x31')][_0xd1c3('0x1c')]);_0x49ac0f[_0xd1c3('0x1b')]=qs[_0xd1c3('0x1b')](_0x26d1d3[_0xd1c3('0x31')][_0xd1c3('0x1b')]);}_0x49ac0f[_0xd1c3('0x3b')]=qs[_0xd1c3('0x3c')](_0x26d1d3[_0xd1c3('0x31')][_0xd1c3('0x3c')]);_0x49ac0f[_0xd1c3('0x3d')]=qs[_0xd1c3('0x33')](_[_0xd1c3('0x3e')](_0x26d1d3[_0xd1c3('0x31')],_0x16aaec['filters']),_0x44181d);if(_0x26d1d3['query'][_0xd1c3('0x3f')]){_0x49ac0f[_0xd1c3('0x3d')]=_[_0xd1c3('0x40')](_0x49ac0f[_0xd1c3('0x3d')],{'$or':_[_0xd1c3('0x30')](_0x44181d,function(_0x1f585c){if(_0x1f585c[_0xd1c3('0x41')]!=='VIRTUAL'){var _0x42248b={};_0x42248b[_0x1f585c['name']]={'$like':'%'+_0x26d1d3[_0xd1c3('0x31')][_0xd1c3('0x3f')]+'%'};return _0x42248b;}})});}_0x49ac0f=_[_0xd1c3('0x40')]({},_0x49ac0f,_0x26d1d3[_0xd1c3('0x42')]);var _0x1ba149={'where':_0x49ac0f[_0xd1c3('0x3d')]};return db[_0xd1c3('0x2c')][_0xd1c3('0x1e')](_0x1ba149)[_0xd1c3('0x24')](function(_0xe1a9c9){_0x47ad3d[_0xd1c3('0x1e')]=_0xe1a9c9;if(_0x26d1d3['query']['includeAll']){_0x49ac0f[_0xd1c3('0x43')]=[{'all':!![]}];}return db['UserProfileResource']['findAll'](_0x49ac0f);})['then'](function(_0x58277e){_0x47ad3d[_0xd1c3('0x44')]=_0x58277e;return _0x47ad3d;})[_0xd1c3('0x24')](respondWithFilteredResult(_0x4d2d3a,_0x49ac0f))[_0xd1c3('0x45')](handleError(_0x4d2d3a,null));};exports[_0xd1c3('0x46')]=function(_0x21e25b,_0x5ce69c){var _0x4c2503={'raw':![],'where':{'id':_0x21e25b['params']['id']}},_0x4545fc={};_0x4545fc[_0xd1c3('0x35')]=_['keys'](db['UserProfileResource'][_0xd1c3('0x2d')]);_0x4545fc[_0xd1c3('0x31')]=_[_0xd1c3('0x32')](_0x21e25b['query']);_0x4545fc[_0xd1c3('0x33')]=_[_0xd1c3('0x34')](_0x4545fc['model'],_0x4545fc[_0xd1c3('0x31')]);_0x4c2503[_0xd1c3('0x37')]=_[_0xd1c3('0x34')](_0x4545fc[_0xd1c3('0x35')],qs['fields'](_0x21e25b['query'][_0xd1c3('0x36')]));_0x4c2503[_0xd1c3('0x37')]=_0x4c2503[_0xd1c3('0x37')]['length']?_0x4c2503['attributes']:_0x4545fc[_0xd1c3('0x35')];if(_0x21e25b[_0xd1c3('0x31')][_0xd1c3('0x47')]){_0x4c2503[_0xd1c3('0x43')]=[{'all':!![]}];}_0x4c2503=_[_0xd1c3('0x40')]({},_0x4c2503,_0x21e25b[_0xd1c3('0x42')]);return db[_0xd1c3('0x2c')][_0xd1c3('0x48')](_0x4c2503)[_0xd1c3('0x24')](handleEntityNotFound(_0x5ce69c,null))[_0xd1c3('0x24')](respondWithResult(_0x5ce69c,null))[_0xd1c3('0x45')](handleError(_0x5ce69c,null));};exports[_0xd1c3('0x49')]=function(_0x43ebf9,_0x432f72){return db[_0xd1c3('0x2c')][_0xd1c3('0x49')](_0x43ebf9[_0xd1c3('0x4a')],{})['then'](respondWithResult(_0x432f72,0xc9))[_0xd1c3('0x45')](handleError(_0x432f72,null));};exports[_0xd1c3('0x23')]=function(_0x3c8b8f,_0x105ad){if(_0x3c8b8f['body']['id']){delete _0x3c8b8f[_0xd1c3('0x4a')]['id'];}return db['UserProfileResource'][_0xd1c3('0x48')]({'where':{'id':_0x3c8b8f[_0xd1c3('0x4b')]['id']}})[_0xd1c3('0x24')](handleEntityNotFound(_0x105ad,null))[_0xd1c3('0x24')](saveUpdates(_0x3c8b8f[_0xd1c3('0x4a')],null))['then'](respondWithResult(_0x105ad,null))[_0xd1c3('0x45')](handleError(_0x105ad,null));};exports[_0xd1c3('0x25')]=function(_0x4b594d,_0x1c561d){return db[_0xd1c3('0x2c')]['find']({'where':{'id':_0x4b594d[_0xd1c3('0x4b')]['id']}})[_0xd1c3('0x24')](handleEntityNotFound(_0x1c561d,null))[_0xd1c3('0x24')](removeEntity(_0x1c561d,null))[_0xd1c3('0x45')](handleError(_0x1c561d,null));};exports[_0xd1c3('0x4c')]=function(_0x4d0200,_0x42d55f){return db[_0xd1c3('0x2c')]['describe']()[_0xd1c3('0x24')](respondWithResult(_0x42d55f,null))['catch'](handleError(_0x42d55f,null));};