Built motion from commit 9d7072cc.|2.5.39
[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 _0xf593=['type','key','model','query','keys','filters','intersection','fields','attributes','hasOwnProperty','nolimit','order','pick','filter','where','map','VIRTUAL','merge','includeAll','include','UserProfileSection','findAll','rows','catch','show','length','options','create','body','find','params','describe','eml-format','rimraf','mustache','util','path','sox','ejs','fs-extra','lodash','crypto','jsforce','desk.js','to-csv','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','end','status','json','undefined','limit','count','offset','set','Content-Range','apply','reject','update','then','destroy','error','stack','name','index','rawAttributes'];(function(_0x39b759,_0x2187be){var _0x2d0893=function(_0x556953){while(--_0x556953){_0x39b759['push'](_0x39b759['shift']());}};_0x2d0893(++_0x2187be);}(_0xf593,0x154));var _0x3f59=function(_0x1ef008,_0x1b0994){_0x1ef008=_0x1ef008-0x0;var _0x3884c4=_0xf593[_0x1ef008];return _0x3884c4;};'use strict';var emlformat=require(_0x3f59('0x0'));var rimraf=require(_0x3f59('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x3f59('0x2'));var util=require(_0x3f59('0x3'));var path=require(_0x3f59('0x4'));var sox=require(_0x3f59('0x5'));var csv=require('to-csv');var ejs=require(_0x3f59('0x6'));var fs=require('fs');var fs_extra=require(_0x3f59('0x7'));var _=require(_0x3f59('0x8'));var squel=require('squel');var crypto=require(_0x3f59('0x9'));var jsforce=require(_0x3f59('0xa'));var deskjs=require(_0x3f59('0xb'));var toCsv=require(_0x3f59('0xc'));var querystring=require(_0x3f59('0xd'));var Papa=require(_0x3f59('0xe'));var Redis=require('ioredis');var authService=require(_0x3f59('0xf'));var qs=require(_0x3f59('0x10'));var as=require(_0x3f59('0x11'));var hardwareService=require(_0x3f59('0x12'));var logger=require(_0x3f59('0x13'))(_0x3f59('0x14'));var utils=require(_0x3f59('0x15'));var config=require(_0x3f59('0x16'));var licenseUtil=require(_0x3f59('0x17'));var db=require(_0x3f59('0x18'))['db'];function respondWithStatusCode(_0x5626a9,_0x56e69f){_0x56e69f=_0x56e69f||0xcc;return function(_0x5f4b17){if(_0x5f4b17){return _0x5626a9[_0x3f59('0x19')](_0x56e69f);}return _0x5626a9['status'](_0x56e69f)[_0x3f59('0x1a')]();};}function respondWithResult(_0x9df588,_0x44bb94){_0x44bb94=_0x44bb94||0xc8;return function(_0x5658ab){if(_0x5658ab){return _0x9df588[_0x3f59('0x1b')](_0x44bb94)[_0x3f59('0x1c')](_0x5658ab);}};}function respondWithFilteredResult(_0x3f4f23,_0x272271){return function(_0x286f59){if(_0x286f59){var _0x58d419=typeof _0x272271['offset']===_0x3f59('0x1d')&&typeof _0x272271[_0x3f59('0x1e')]===_0x3f59('0x1d');var _0x228d71=_0x286f59[_0x3f59('0x1f')];var _0x274302=_0x58d419?0x0:_0x272271[_0x3f59('0x20')];var _0xf75e3d=_0x58d419?_0x286f59[_0x3f59('0x1f')]:_0x272271[_0x3f59('0x20')]+_0x272271['limit'];var _0x2fe3b9;if(_0xf75e3d>=_0x228d71){_0xf75e3d=_0x228d71;_0x2fe3b9=0xc8;}else{_0x2fe3b9=0xce;}_0x3f4f23[_0x3f59('0x1b')](_0x2fe3b9);return _0x3f4f23[_0x3f59('0x21')](_0x3f59('0x22'),_0x274302+'-'+_0xf75e3d+'/'+_0x228d71)[_0x3f59('0x1c')](_0x286f59);}return null;};}function patchUpdates(_0x1f60b5){return function(_0x1603fa){try{jsonpatch[_0x3f59('0x23')](_0x1603fa,_0x1f60b5,!![]);}catch(_0x3ccbcb){return BPromise[_0x3f59('0x24')](_0x3ccbcb);}return _0x1603fa['save']();};}function saveUpdates(_0x27f043,_0x4eb961){return function(_0x273be2){if(_0x273be2){return _0x273be2[_0x3f59('0x25')](_0x27f043)[_0x3f59('0x26')](function(_0x2f4b81){return _0x2f4b81;});}return null;};}function removeEntity(_0x307b56,_0x26a0d4){return function(_0x3aa59d){if(_0x3aa59d){return _0x3aa59d[_0x3f59('0x27')]()[_0x3f59('0x26')](function(){_0x307b56['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x13773c,_0x2cb36){return function(_0x21502f){if(!_0x21502f){_0x13773c[_0x3f59('0x19')](0x194);}return _0x21502f;};}function handleError(_0x552bdf,_0x3f1ed6){_0x3f1ed6=_0x3f1ed6||0x1f4;return function(_0x1a8430){logger[_0x3f59('0x28')](_0x1a8430[_0x3f59('0x29')]);if(_0x1a8430[_0x3f59('0x2a')]){delete _0x1a8430[_0x3f59('0x2a')];}_0x552bdf[_0x3f59('0x1b')](_0x3f1ed6)['send'](_0x1a8430);};}exports[_0x3f59('0x2b')]=function(_0x25f502,_0xeb1ab7){var _0x2d09b5={},_0xf65bb8={},_0x173155={'count':0x0,'rows':[]};var _0x11e75a=_['map'](db['UserProfileSection'][_0x3f59('0x2c')],function(_0x3b4d8b){return{'name':_0x3b4d8b['fieldName'],'type':_0x3b4d8b[_0x3f59('0x2d')][_0x3f59('0x2e')]};});_0xf65bb8[_0x3f59('0x2f')]=_['map'](_0x11e75a,_0x3f59('0x2a'));_0xf65bb8[_0x3f59('0x30')]=_[_0x3f59('0x31')](_0x25f502[_0x3f59('0x30')]);_0xf65bb8[_0x3f59('0x32')]=_[_0x3f59('0x33')](_0xf65bb8['model'],_0xf65bb8['query']);_0x2d09b5['attributes']=_[_0x3f59('0x33')](_0xf65bb8[_0x3f59('0x2f')],qs[_0x3f59('0x34')](_0x25f502['query']['fields']));_0x2d09b5[_0x3f59('0x35')]=_0x2d09b5[_0x3f59('0x35')]['length']?_0x2d09b5[_0x3f59('0x35')]:_0xf65bb8[_0x3f59('0x2f')];if(!_0x25f502[_0x3f59('0x30')][_0x3f59('0x36')](_0x3f59('0x37'))){_0x2d09b5[_0x3f59('0x1e')]=qs[_0x3f59('0x1e')](_0x25f502['query'][_0x3f59('0x1e')]);_0x2d09b5['offset']=qs[_0x3f59('0x20')](_0x25f502[_0x3f59('0x30')]['offset']);}_0x2d09b5[_0x3f59('0x38')]=qs['sort'](_0x25f502[_0x3f59('0x30')]['sort']);_0x2d09b5['where']=qs[_0x3f59('0x32')](_[_0x3f59('0x39')](_0x25f502[_0x3f59('0x30')],_0xf65bb8[_0x3f59('0x32')]),_0x11e75a);if(_0x25f502[_0x3f59('0x30')][_0x3f59('0x3a')]){_0x2d09b5['where']=_['merge'](_0x2d09b5[_0x3f59('0x3b')],{'$or':_[_0x3f59('0x3c')](_0x11e75a,function(_0x5ad494){if(_0x5ad494[_0x3f59('0x2d')]!==_0x3f59('0x3d')){var _0x59db3e={};_0x59db3e[_0x5ad494[_0x3f59('0x2a')]]={'$like':'%'+_0x25f502['query']['filter']+'%'};return _0x59db3e;}})});}_0x2d09b5=_[_0x3f59('0x3e')]({},_0x2d09b5,_0x25f502['options']);var _0x1f4249={'where':_0x2d09b5[_0x3f59('0x3b')]};return db['UserProfileSection']['count'](_0x1f4249)[_0x3f59('0x26')](function(_0x11deca){_0x173155[_0x3f59('0x1f')]=_0x11deca;if(_0x25f502[_0x3f59('0x30')][_0x3f59('0x3f')]){_0x2d09b5[_0x3f59('0x40')]=[{'all':!![]}];}return db[_0x3f59('0x41')][_0x3f59('0x42')](_0x2d09b5);})[_0x3f59('0x26')](function(_0x52dca2){_0x173155[_0x3f59('0x43')]=_0x52dca2;return _0x173155;})[_0x3f59('0x26')](respondWithFilteredResult(_0xeb1ab7,_0x2d09b5))[_0x3f59('0x44')](handleError(_0xeb1ab7,null));};exports[_0x3f59('0x45')]=function(_0x15139d,_0x102fe8){var _0x2f2d11={'raw':![],'where':{'id':_0x15139d['params']['id']}},_0x440b20={};_0x440b20[_0x3f59('0x2f')]=_[_0x3f59('0x31')](db[_0x3f59('0x41')][_0x3f59('0x2c')]);_0x440b20[_0x3f59('0x30')]=_[_0x3f59('0x31')](_0x15139d[_0x3f59('0x30')]);_0x440b20[_0x3f59('0x32')]=_['intersection'](_0x440b20[_0x3f59('0x2f')],_0x440b20[_0x3f59('0x30')]);_0x2f2d11[_0x3f59('0x35')]=_[_0x3f59('0x33')](_0x440b20['model'],qs[_0x3f59('0x34')](_0x15139d[_0x3f59('0x30')][_0x3f59('0x34')]));_0x2f2d11[_0x3f59('0x35')]=_0x2f2d11[_0x3f59('0x35')][_0x3f59('0x46')]?_0x2f2d11[_0x3f59('0x35')]:_0x440b20[_0x3f59('0x2f')];if(_0x15139d[_0x3f59('0x30')][_0x3f59('0x3f')]){_0x2f2d11[_0x3f59('0x40')]=[{'all':!![]}];}_0x2f2d11=_[_0x3f59('0x3e')]({},_0x2f2d11,_0x15139d[_0x3f59('0x47')]);return db[_0x3f59('0x41')]['find'](_0x2f2d11)[_0x3f59('0x26')](handleEntityNotFound(_0x102fe8,null))[_0x3f59('0x26')](respondWithResult(_0x102fe8,null))[_0x3f59('0x44')](handleError(_0x102fe8,null));};exports[_0x3f59('0x48')]=function(_0x20561e,_0x266fee){return db[_0x3f59('0x41')][_0x3f59('0x48')](_0x20561e[_0x3f59('0x49')],{})[_0x3f59('0x26')](respondWithResult(_0x266fee,0xc9))[_0x3f59('0x44')](handleError(_0x266fee,null));};exports[_0x3f59('0x25')]=function(_0x486a8f,_0x150ad6){if(_0x486a8f[_0x3f59('0x49')]['id']){delete _0x486a8f[_0x3f59('0x49')]['id'];}return db[_0x3f59('0x41')][_0x3f59('0x4a')]({'where':{'id':_0x486a8f[_0x3f59('0x4b')]['id']}})[_0x3f59('0x26')](handleEntityNotFound(_0x150ad6,null))[_0x3f59('0x26')](saveUpdates(_0x486a8f['body'],null))[_0x3f59('0x26')](respondWithResult(_0x150ad6,null))['catch'](handleError(_0x150ad6,null));};exports['destroy']=function(_0x4fb5c7,_0x11fe80){return db['UserProfileSection'][_0x3f59('0x4a')]({'where':{'id':_0x4fb5c7['params']['id']}})[_0x3f59('0x26')](handleEntityNotFound(_0x11fe80,null))[_0x3f59('0x26')](removeEntity(_0x11fe80,null))['catch'](handleError(_0x11fe80,null));};exports[_0x3f59('0x4c')]=function(_0x364fb7,_0x107a69){return db['UserProfileSection']['describe']()['then'](respondWithResult(_0x107a69,null))['catch'](handleError(_0x107a69,null));};