019bc5d00b88e5a9b02f7630820a3e0765289b81
[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 _0x5a3d=['undefined','limit','count','Content-Range','json','apply','reject','save','then','destroy','error','stack','name','map','UserProfileSection','fieldName','type','key','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','options','include','findAll','rows','catch','rawAttributes','includeAll','create','body','update','find','params','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','offset'];(function(_0x4cc0bc,_0x9efd86){var _0x18b135=function(_0x3b0428){while(--_0x3b0428){_0x4cc0bc['push'](_0x4cc0bc['shift']());}};_0x18b135(++_0x9efd86);}(_0x5a3d,0x1b9));var _0xd5a3=function(_0x4fb2ea,_0x45f43a){_0x4fb2ea=_0x4fb2ea-0x0;var _0x3c2b0f=_0x5a3d[_0x4fb2ea];return _0x3c2b0f;};'use strict';var emlformat=require(_0xd5a3('0x0'));var rimraf=require(_0xd5a3('0x1'));var zipdir=require(_0xd5a3('0x2'));var jsonpatch=require(_0xd5a3('0x3'));var rp=require(_0xd5a3('0x4'));var moment=require(_0xd5a3('0x5'));var BPromise=require(_0xd5a3('0x6'));var Mustache=require(_0xd5a3('0x7'));var util=require(_0xd5a3('0x8'));var path=require('path');var sox=require(_0xd5a3('0x9'));var csv=require(_0xd5a3('0xa'));var ejs=require(_0xd5a3('0xb'));var fs=require('fs');var fs_extra=require(_0xd5a3('0xc'));var _=require(_0xd5a3('0xd'));var squel=require(_0xd5a3('0xe'));var crypto=require('crypto');var jsforce=require(_0xd5a3('0xf'));var deskjs=require(_0xd5a3('0x10'));var toCsv=require(_0xd5a3('0xa'));var querystring=require(_0xd5a3('0x11'));var Papa=require(_0xd5a3('0x12'));var Redis=require('ioredis');var authService=require(_0xd5a3('0x13'));var qs=require(_0xd5a3('0x14'));var as=require(_0xd5a3('0x15'));var hardwareService=require(_0xd5a3('0x16'));var logger=require(_0xd5a3('0x17'))(_0xd5a3('0x18'));var utils=require(_0xd5a3('0x19'));var config=require(_0xd5a3('0x1a'));var licenseUtil=require(_0xd5a3('0x1b'));var db=require(_0xd5a3('0x1c'))['db'];function respondWithStatusCode(_0x3fa978,_0x30cf71){_0x30cf71=_0x30cf71||0xcc;return function(_0x241273){if(_0x241273){return _0x3fa978[_0xd5a3('0x1d')](_0x30cf71);}return _0x3fa978[_0xd5a3('0x1e')](_0x30cf71)[_0xd5a3('0x1f')]();};}function respondWithResult(_0x1cccb9,_0x559c4f){_0x559c4f=_0x559c4f||0xc8;return function(_0x8bf198){if(_0x8bf198){return _0x1cccb9[_0xd5a3('0x1e')](_0x559c4f)['json'](_0x8bf198);}};}function respondWithFilteredResult(_0x30e3c4,_0x1b362c){return function(_0x5be071){if(_0x5be071){var _0x55a263=typeof _0x1b362c[_0xd5a3('0x20')]===_0xd5a3('0x21')&&typeof _0x1b362c[_0xd5a3('0x22')]===_0xd5a3('0x21');var _0x704576=_0x5be071[_0xd5a3('0x23')];var _0x23d76f=_0x55a263?0x0:_0x1b362c[_0xd5a3('0x20')];var _0x2e2a04=_0x55a263?_0x5be071[_0xd5a3('0x23')]:_0x1b362c[_0xd5a3('0x20')]+_0x1b362c[_0xd5a3('0x22')];var _0x36451c;if(_0x2e2a04>=_0x704576){_0x2e2a04=_0x704576;_0x36451c=0xc8;}else{_0x36451c=0xce;}_0x30e3c4[_0xd5a3('0x1e')](_0x36451c);return _0x30e3c4['set'](_0xd5a3('0x24'),_0x23d76f+'-'+_0x2e2a04+'/'+_0x704576)[_0xd5a3('0x25')](_0x5be071);}return null;};}function patchUpdates(_0x4b9d9c){return function(_0x3daf39){try{jsonpatch[_0xd5a3('0x26')](_0x3daf39,_0x4b9d9c,!![]);}catch(_0x1e7d97){return BPromise[_0xd5a3('0x27')](_0x1e7d97);}return _0x3daf39[_0xd5a3('0x28')]();};}function saveUpdates(_0x5343e9,_0x4a5b79){return function(_0x4cf155){if(_0x4cf155){return _0x4cf155['update'](_0x5343e9)[_0xd5a3('0x29')](function(_0x32fb92){return _0x32fb92;});}return null;};}function removeEntity(_0x5dd669,_0x50f161){return function(_0x16e4de){if(_0x16e4de){return _0x16e4de[_0xd5a3('0x2a')]()[_0xd5a3('0x29')](function(){_0x5dd669[_0xd5a3('0x1e')](0xcc)[_0xd5a3('0x1f')]();});}};}function handleEntityNotFound(_0x41bf73,_0x272e93){return function(_0x31c34b){if(!_0x31c34b){_0x41bf73['sendStatus'](0x194);}return _0x31c34b;};}function handleError(_0x9b7590,_0x110626){_0x110626=_0x110626||0x1f4;return function(_0x4f2699){logger[_0xd5a3('0x2b')](_0x4f2699[_0xd5a3('0x2c')]);if(_0x4f2699[_0xd5a3('0x2d')]){delete _0x4f2699['name'];}_0x9b7590[_0xd5a3('0x1e')](_0x110626)['send'](_0x4f2699);};}exports['index']=function(_0x545ce4,_0x74fc90){var _0x3233d1={},_0x45da50={},_0x4152c2={'count':0x0,'rows':[]};var _0x422306=_[_0xd5a3('0x2e')](db[_0xd5a3('0x2f')]['rawAttributes'],function(_0x329c05){return{'name':_0x329c05[_0xd5a3('0x30')],'type':_0x329c05[_0xd5a3('0x31')][_0xd5a3('0x32')]};});_0x45da50[_0xd5a3('0x33')]=_[_0xd5a3('0x2e')](_0x422306,_0xd5a3('0x2d'));_0x45da50[_0xd5a3('0x34')]=_[_0xd5a3('0x35')](_0x545ce4['query']);_0x45da50[_0xd5a3('0x36')]=_[_0xd5a3('0x37')](_0x45da50[_0xd5a3('0x33')],_0x45da50[_0xd5a3('0x34')]);_0x3233d1['attributes']=_[_0xd5a3('0x37')](_0x45da50[_0xd5a3('0x33')],qs[_0xd5a3('0x38')](_0x545ce4[_0xd5a3('0x34')]['fields']));_0x3233d1[_0xd5a3('0x39')]=_0x3233d1['attributes'][_0xd5a3('0x3a')]?_0x3233d1[_0xd5a3('0x39')]:_0x45da50[_0xd5a3('0x33')];if(!_0x545ce4[_0xd5a3('0x34')][_0xd5a3('0x3b')](_0xd5a3('0x3c'))){_0x3233d1[_0xd5a3('0x22')]=qs[_0xd5a3('0x22')](_0x545ce4['query'][_0xd5a3('0x22')]);_0x3233d1['offset']=qs[_0xd5a3('0x20')](_0x545ce4[_0xd5a3('0x34')][_0xd5a3('0x20')]);}_0x3233d1[_0xd5a3('0x3d')]=qs[_0xd5a3('0x3e')](_0x545ce4[_0xd5a3('0x34')]['sort']);_0x3233d1[_0xd5a3('0x3f')]=qs['filters'](_[_0xd5a3('0x40')](_0x545ce4[_0xd5a3('0x34')],_0x45da50[_0xd5a3('0x36')]),_0x422306);if(_0x545ce4['query'][_0xd5a3('0x41')]){_0x3233d1[_0xd5a3('0x3f')]=_[_0xd5a3('0x42')](_0x3233d1[_0xd5a3('0x3f')],{'$or':_[_0xd5a3('0x2e')](_0x422306,function(_0x82ffc1){if(_0x82ffc1[_0xd5a3('0x31')]!=='VIRTUAL'){var _0x3ff958={};_0x3ff958[_0x82ffc1[_0xd5a3('0x2d')]]={'$like':'%'+_0x545ce4[_0xd5a3('0x34')][_0xd5a3('0x41')]+'%'};return _0x3ff958;}})});}_0x3233d1=_[_0xd5a3('0x42')]({},_0x3233d1,_0x545ce4[_0xd5a3('0x43')]);var _0x1eb5e8={'where':_0x3233d1[_0xd5a3('0x3f')]};return db['UserProfileSection'][_0xd5a3('0x23')](_0x1eb5e8)[_0xd5a3('0x29')](function(_0x19c75d){_0x4152c2[_0xd5a3('0x23')]=_0x19c75d;if(_0x545ce4[_0xd5a3('0x34')]['includeAll']){_0x3233d1[_0xd5a3('0x44')]=[{'all':!![]}];}return db['UserProfileSection'][_0xd5a3('0x45')](_0x3233d1);})[_0xd5a3('0x29')](function(_0x444d90){_0x4152c2[_0xd5a3('0x46')]=_0x444d90;return _0x4152c2;})[_0xd5a3('0x29')](respondWithFilteredResult(_0x74fc90,_0x3233d1))[_0xd5a3('0x47')](handleError(_0x74fc90,null));};exports['show']=function(_0xff8b67,_0xbb5658){var _0x291497={'raw':![],'where':{'id':_0xff8b67['params']['id']}},_0x38c18a={};_0x38c18a['model']=_[_0xd5a3('0x35')](db['UserProfileSection'][_0xd5a3('0x48')]);_0x38c18a[_0xd5a3('0x34')]=_[_0xd5a3('0x35')](_0xff8b67[_0xd5a3('0x34')]);_0x38c18a[_0xd5a3('0x36')]=_[_0xd5a3('0x37')](_0x38c18a[_0xd5a3('0x33')],_0x38c18a[_0xd5a3('0x34')]);_0x291497[_0xd5a3('0x39')]=_[_0xd5a3('0x37')](_0x38c18a[_0xd5a3('0x33')],qs['fields'](_0xff8b67[_0xd5a3('0x34')][_0xd5a3('0x38')]));_0x291497['attributes']=_0x291497[_0xd5a3('0x39')]['length']?_0x291497[_0xd5a3('0x39')]:_0x38c18a['model'];if(_0xff8b67[_0xd5a3('0x34')][_0xd5a3('0x49')]){_0x291497[_0xd5a3('0x44')]=[{'all':!![]}];}_0x291497=_[_0xd5a3('0x42')]({},_0x291497,_0xff8b67[_0xd5a3('0x43')]);return db['UserProfileSection']['find'](_0x291497)['then'](handleEntityNotFound(_0xbb5658,null))[_0xd5a3('0x29')](respondWithResult(_0xbb5658,null))[_0xd5a3('0x47')](handleError(_0xbb5658,null));};exports[_0xd5a3('0x4a')]=function(_0x6af52a,_0x6872e8){return db['UserProfileSection'][_0xd5a3('0x4a')](_0x6af52a[_0xd5a3('0x4b')],{})[_0xd5a3('0x29')](respondWithResult(_0x6872e8,0xc9))[_0xd5a3('0x47')](handleError(_0x6872e8,null));};exports[_0xd5a3('0x4c')]=function(_0x2ee3be,_0x13f1ba){if(_0x2ee3be[_0xd5a3('0x4b')]['id']){delete _0x2ee3be['body']['id'];}return db[_0xd5a3('0x2f')][_0xd5a3('0x4d')]({'where':{'id':_0x2ee3be['params']['id']}})['then'](handleEntityNotFound(_0x13f1ba,null))[_0xd5a3('0x29')](saveUpdates(_0x2ee3be[_0xd5a3('0x4b')],null))[_0xd5a3('0x29')](respondWithResult(_0x13f1ba,null))['catch'](handleError(_0x13f1ba,null));};exports[_0xd5a3('0x2a')]=function(_0x1e9fbc,_0x259357){return db[_0xd5a3('0x2f')]['find']({'where':{'id':_0x1e9fbc[_0xd5a3('0x4e')]['id']}})['then'](handleEntityNotFound(_0x259357,null))[_0xd5a3('0x29')](removeEntity(_0x259357,null))[_0xd5a3('0x47')](handleError(_0x259357,null));};exports['describe']=function(_0x353665,_0x2a4a41){return db['UserProfileSection']['describe']()[_0xd5a3('0x29')](respondWithResult(_0x2a4a41,null))[_0xd5a3('0x47')](handleError(_0x2a4a41,null));};