Built motion from commit e1760111.|2.6.18
[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 _0x03c8=['ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','sendStatus','status','end','json','undefined','limit','count','offset','set','Content-Range','apply','reject','save','update','then','stack','name','send','index','map','UserProfileSection','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','find','catch','create','body','params','destroy','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','papaparse'];(function(_0x3e9588,_0x1ab527){var _0x28081c=function(_0x24e310){while(--_0x24e310){_0x3e9588['push'](_0x3e9588['shift']());}};_0x28081c(++_0x1ab527);}(_0x03c8,0x128));var _0x803c=function(_0x41aca0,_0x51df0c){_0x41aca0=_0x41aca0-0x0;var _0x3edfb1=_0x03c8[_0x41aca0];return _0x3edfb1;};'use strict';var emlformat=require(_0x803c('0x0'));var rimraf=require(_0x803c('0x1'));var zipdir=require(_0x803c('0x2'));var jsonpatch=require(_0x803c('0x3'));var rp=require(_0x803c('0x4'));var moment=require(_0x803c('0x5'));var BPromise=require(_0x803c('0x6'));var Mustache=require('mustache');var util=require(_0x803c('0x7'));var path=require('path');var sox=require(_0x803c('0x8'));var csv=require(_0x803c('0x9'));var ejs=require(_0x803c('0xa'));var fs=require('fs');var fs_extra=require(_0x803c('0xb'));var _=require(_0x803c('0xc'));var squel=require('squel');var crypto=require(_0x803c('0xd'));var jsforce=require(_0x803c('0xe'));var deskjs=require('desk.js');var toCsv=require(_0x803c('0x9'));var querystring=require('querystring');var Papa=require(_0x803c('0xf'));var Redis=require(_0x803c('0x10'));var authService=require(_0x803c('0x11'));var qs=require(_0x803c('0x12'));var as=require(_0x803c('0x13'));var hardwareService=require(_0x803c('0x14'));var logger=require(_0x803c('0x15'))(_0x803c('0x16'));var utils=require('../../config/utils');var config=require(_0x803c('0x17'));var licenseUtil=require(_0x803c('0x18'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x62ff92,_0x1e848b){_0x1e848b=_0x1e848b||0xcc;return function(_0x2648ee){if(_0x2648ee){return _0x62ff92[_0x803c('0x19')](_0x1e848b);}return _0x62ff92[_0x803c('0x1a')](_0x1e848b)[_0x803c('0x1b')]();};}function respondWithResult(_0x1a8967,_0x2d6be6){_0x2d6be6=_0x2d6be6||0xc8;return function(_0x3904b9){if(_0x3904b9){return _0x1a8967[_0x803c('0x1a')](_0x2d6be6)[_0x803c('0x1c')](_0x3904b9);}};}function respondWithFilteredResult(_0x39bfa4,_0x4245c3){return function(_0x4983ad){if(_0x4983ad){var _0x2c50f3=typeof _0x4245c3['offset']===_0x803c('0x1d')&&typeof _0x4245c3[_0x803c('0x1e')]==='undefined';var _0x4a7d0f=_0x4983ad[_0x803c('0x1f')];var _0x4eadea=_0x2c50f3?0x0:_0x4245c3[_0x803c('0x20')];var _0x1f249a=_0x2c50f3?_0x4983ad[_0x803c('0x1f')]:_0x4245c3[_0x803c('0x20')]+_0x4245c3['limit'];var _0x3b9fe6;if(_0x1f249a>=_0x4a7d0f){_0x1f249a=_0x4a7d0f;_0x3b9fe6=0xc8;}else{_0x3b9fe6=0xce;}_0x39bfa4['status'](_0x3b9fe6);return _0x39bfa4[_0x803c('0x21')](_0x803c('0x22'),_0x4eadea+'-'+_0x1f249a+'/'+_0x4a7d0f)[_0x803c('0x1c')](_0x4983ad);}return null;};}function patchUpdates(_0x299211){return function(_0x2b2467){try{jsonpatch[_0x803c('0x23')](_0x2b2467,_0x299211,!![]);}catch(_0x26763f){return BPromise[_0x803c('0x24')](_0x26763f);}return _0x2b2467[_0x803c('0x25')]();};}function saveUpdates(_0x34b6ea,_0x2068ea){return function(_0x4561da){if(_0x4561da){return _0x4561da[_0x803c('0x26')](_0x34b6ea)[_0x803c('0x27')](function(_0x2cecbb){return _0x2cecbb;});}return null;};}function removeEntity(_0x2692a0,_0x4a44a5){return function(_0x188fa6){if(_0x188fa6){return _0x188fa6['destroy']()[_0x803c('0x27')](function(){_0x2692a0[_0x803c('0x1a')](0xcc)[_0x803c('0x1b')]();});}};}function handleEntityNotFound(_0x2bb52c,_0x429b80){return function(_0x1a9888){if(!_0x1a9888){_0x2bb52c[_0x803c('0x19')](0x194);}return _0x1a9888;};}function handleError(_0x383988,_0x1cc7c3){_0x1cc7c3=_0x1cc7c3||0x1f4;return function(_0x69c80d){logger['error'](_0x69c80d[_0x803c('0x28')]);if(_0x69c80d[_0x803c('0x29')]){delete _0x69c80d[_0x803c('0x29')];}_0x383988[_0x803c('0x1a')](_0x1cc7c3)[_0x803c('0x2a')](_0x69c80d);};}exports[_0x803c('0x2b')]=function(_0x2b35c7,_0x1c16b8){var _0x240765={},_0x56f1d3={},_0x27a2c6={'count':0x0,'rows':[]};var _0x61d18=_[_0x803c('0x2c')](db[_0x803c('0x2d')][_0x803c('0x2e')],function(_0x3c52f1){return{'name':_0x3c52f1[_0x803c('0x2f')],'type':_0x3c52f1[_0x803c('0x30')][_0x803c('0x31')]};});_0x56f1d3[_0x803c('0x32')]=_[_0x803c('0x2c')](_0x61d18,_0x803c('0x29'));_0x56f1d3[_0x803c('0x33')]=_[_0x803c('0x34')](_0x2b35c7['query']);_0x56f1d3[_0x803c('0x35')]=_[_0x803c('0x36')](_0x56f1d3['model'],_0x56f1d3['query']);_0x240765['attributes']=_[_0x803c('0x36')](_0x56f1d3[_0x803c('0x32')],qs[_0x803c('0x37')](_0x2b35c7[_0x803c('0x33')][_0x803c('0x37')]));_0x240765[_0x803c('0x38')]=_0x240765[_0x803c('0x38')][_0x803c('0x39')]?_0x240765[_0x803c('0x38')]:_0x56f1d3['model'];if(!_0x2b35c7[_0x803c('0x33')][_0x803c('0x3a')](_0x803c('0x3b'))){_0x240765[_0x803c('0x1e')]=qs[_0x803c('0x1e')](_0x2b35c7[_0x803c('0x33')][_0x803c('0x1e')]);_0x240765[_0x803c('0x20')]=qs['offset'](_0x2b35c7['query'][_0x803c('0x20')]);}_0x240765[_0x803c('0x3c')]=qs[_0x803c('0x3d')](_0x2b35c7[_0x803c('0x33')][_0x803c('0x3d')]);_0x240765[_0x803c('0x3e')]=qs['filters'](_['pick'](_0x2b35c7[_0x803c('0x33')],_0x56f1d3[_0x803c('0x35')]),_0x61d18);if(_0x2b35c7[_0x803c('0x33')][_0x803c('0x3f')]){_0x240765[_0x803c('0x3e')]=_[_0x803c('0x40')](_0x240765[_0x803c('0x3e')],{'$or':_[_0x803c('0x2c')](_0x61d18,function(_0x4a31f4){if(_0x4a31f4[_0x803c('0x30')]!==_0x803c('0x41')){var _0x63638f={};_0x63638f[_0x4a31f4[_0x803c('0x29')]]={'$like':'%'+_0x2b35c7[_0x803c('0x33')][_0x803c('0x3f')]+'%'};return _0x63638f;}})});}_0x240765=_['merge']({},_0x240765,_0x2b35c7[_0x803c('0x42')]);var _0x180568={'where':_0x240765[_0x803c('0x3e')]};return db['UserProfileSection']['count'](_0x180568)[_0x803c('0x27')](function(_0x279d84){_0x27a2c6[_0x803c('0x1f')]=_0x279d84;if(_0x2b35c7[_0x803c('0x33')][_0x803c('0x43')]){_0x240765[_0x803c('0x44')]=[{'all':!![]}];}return db[_0x803c('0x2d')][_0x803c('0x45')](_0x240765);})[_0x803c('0x27')](function(_0x25f707){_0x27a2c6[_0x803c('0x46')]=_0x25f707;return _0x27a2c6;})[_0x803c('0x27')](respondWithFilteredResult(_0x1c16b8,_0x240765))['catch'](handleError(_0x1c16b8,null));};exports['show']=function(_0x4bff4d,_0x34e96c){var _0x4b7982={'raw':![],'where':{'id':_0x4bff4d['params']['id']}},_0x251433={};_0x251433[_0x803c('0x32')]=_[_0x803c('0x34')](db['UserProfileSection']['rawAttributes']);_0x251433['query']=_[_0x803c('0x34')](_0x4bff4d[_0x803c('0x33')]);_0x251433[_0x803c('0x35')]=_[_0x803c('0x36')](_0x251433[_0x803c('0x32')],_0x251433[_0x803c('0x33')]);_0x4b7982['attributes']=_['intersection'](_0x251433['model'],qs['fields'](_0x4bff4d[_0x803c('0x33')][_0x803c('0x37')]));_0x4b7982[_0x803c('0x38')]=_0x4b7982['attributes'][_0x803c('0x39')]?_0x4b7982[_0x803c('0x38')]:_0x251433[_0x803c('0x32')];if(_0x4bff4d[_0x803c('0x33')][_0x803c('0x43')]){_0x4b7982[_0x803c('0x44')]=[{'all':!![]}];}_0x4b7982=_[_0x803c('0x40')]({},_0x4b7982,_0x4bff4d['options']);return db[_0x803c('0x2d')][_0x803c('0x47')](_0x4b7982)[_0x803c('0x27')](handleEntityNotFound(_0x34e96c,null))['then'](respondWithResult(_0x34e96c,null))[_0x803c('0x48')](handleError(_0x34e96c,null));};exports[_0x803c('0x49')]=function(_0x42c015,_0x4a09ff){return db['UserProfileSection'][_0x803c('0x49')](_0x42c015['body'],{})[_0x803c('0x27')](respondWithResult(_0x4a09ff,0xc9))[_0x803c('0x48')](handleError(_0x4a09ff,null));};exports[_0x803c('0x26')]=function(_0x3c507e,_0x3b6100){if(_0x3c507e['body']['id']){delete _0x3c507e[_0x803c('0x4a')]['id'];}return db['UserProfileSection'][_0x803c('0x47')]({'where':{'id':_0x3c507e[_0x803c('0x4b')]['id']}})[_0x803c('0x27')](handleEntityNotFound(_0x3b6100,null))[_0x803c('0x27')](saveUpdates(_0x3c507e[_0x803c('0x4a')],null))[_0x803c('0x27')](respondWithResult(_0x3b6100,null))[_0x803c('0x48')](handleError(_0x3b6100,null));};exports[_0x803c('0x4c')]=function(_0x300f32,_0x1fbd96){return db[_0x803c('0x2d')]['find']({'where':{'id':_0x300f32[_0x803c('0x4b')]['id']}})[_0x803c('0x27')](handleEntityNotFound(_0x1fbd96,null))['then'](removeEntity(_0x1fbd96,null))[_0x803c('0x48')](handleError(_0x1fbd96,null));};exports['describe']=function(_0x5dec3b,_0x4ae397){return db[_0x803c('0x2d')][_0x803c('0x4d')]()[_0x803c('0x27')](respondWithResult(_0x4ae397,null))[_0x803c('0x48')](handleError(_0x4ae397,null));};