0b597809340e796495c5b1a22b4b3a04c02fdc0e
[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 _0x6e6d=['mustache','util','path','sox','lodash','crypto','desk.js','to-csv','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','api','../../config/utils','../../config/environment','sendStatus','end','status','json','limit','undefined','count','offset','set','Content-Range','reject','save','error','stack','name','send','map','UserProfileSection','rawAttributes','fieldName','type','query','keys','filters','intersection','model','attributes','fields','order','sort','where','pick','filter','VIRTUAL','merge','options','then','include','findAll','rows','catch','params','length','includeAll','find','body','describe','rimraf','zip-dir','request-promise','moment'];(function(_0x9df060,_0x253d33){var _0x338dfe=function(_0x17d9a5){while(--_0x17d9a5){_0x9df060['push'](_0x9df060['shift']());}};_0x338dfe(++_0x253d33);}(_0x6e6d,0x1ca));var _0xd6e6=function(_0x34eb46,_0x40956a){_0x34eb46=_0x34eb46-0x0;var _0xe92dd2=_0x6e6d[_0x34eb46];return _0xe92dd2;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xd6e6('0x0'));var zipdir=require(_0xd6e6('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0xd6e6('0x2'));var moment=require(_0xd6e6('0x3'));var BPromise=require('bluebird');var Mustache=require(_0xd6e6('0x4'));var util=require(_0xd6e6('0x5'));var path=require(_0xd6e6('0x6'));var sox=require(_0xd6e6('0x7'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xd6e6('0x8'));var squel=require('squel');var crypto=require(_0xd6e6('0x9'));var jsforce=require('jsforce');var deskjs=require(_0xd6e6('0xa'));var toCsv=require(_0xd6e6('0xb'));var querystring=require('querystring');var Papa=require(_0xd6e6('0xc'));var Redis=require('ioredis');var authService=require(_0xd6e6('0xd'));var qs=require(_0xd6e6('0xe'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xd6e6('0xf'));var logger=require('../../config/logger')(_0xd6e6('0x10'));var utils=require(_0xd6e6('0x11'));var config=require(_0xd6e6('0x12'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x25fc9b,_0x8a3f41){_0x8a3f41=_0x8a3f41||0xcc;return function(_0x5ecc54){if(_0x5ecc54){return _0x25fc9b[_0xd6e6('0x13')](_0x8a3f41);}return _0x25fc9b['status'](_0x8a3f41)[_0xd6e6('0x14')]();};}function respondWithResult(_0x115b0b,_0x2964df){_0x2964df=_0x2964df||0xc8;return function(_0x4c1efb){if(_0x4c1efb){return _0x115b0b[_0xd6e6('0x15')](_0x2964df)[_0xd6e6('0x16')](_0x4c1efb);}};}function respondWithFilteredResult(_0xc064b7,_0x4838cc){return function(_0xefce2c){if(_0xefce2c){var _0x5d08f2=typeof _0x4838cc['offset']==='undefined'&&typeof _0x4838cc[_0xd6e6('0x17')]===_0xd6e6('0x18');var _0x5f55c1=_0xefce2c[_0xd6e6('0x19')];var _0x6429c2=_0x5d08f2?0x0:_0x4838cc['offset'];var _0x567905=_0x5d08f2?_0xefce2c[_0xd6e6('0x19')]:_0x4838cc[_0xd6e6('0x1a')]+_0x4838cc[_0xd6e6('0x17')];var _0x27fe06;if(_0x567905>=_0x5f55c1){_0x567905=_0x5f55c1;_0x27fe06=0xc8;}else{_0x27fe06=0xce;}_0xc064b7[_0xd6e6('0x15')](_0x27fe06);return _0xc064b7[_0xd6e6('0x1b')](_0xd6e6('0x1c'),_0x6429c2+'-'+_0x567905+'/'+_0x5f55c1)[_0xd6e6('0x16')](_0xefce2c);}return null;};}function patchUpdates(_0x3a539d){return function(_0x28cf41){try{jsonpatch['apply'](_0x28cf41,_0x3a539d,!![]);}catch(_0x37757c){return BPromise[_0xd6e6('0x1d')](_0x37757c);}return _0x28cf41[_0xd6e6('0x1e')]();};}function saveUpdates(_0x42c237,_0x4bb6f2){return function(_0x121c0a){if(_0x121c0a){return _0x121c0a['update'](_0x42c237)['then'](function(_0x1d6d5f){return _0x1d6d5f;});}return null;};}function removeEntity(_0x47f3a4,_0x4421f9){return function(_0x22b272){if(_0x22b272){return _0x22b272['destroy']()['then'](function(){_0x47f3a4['status'](0xcc)[_0xd6e6('0x14')]();});}};}function handleEntityNotFound(_0x26aaac,_0x41ffd4){return function(_0x480aed){if(!_0x480aed){_0x26aaac[_0xd6e6('0x13')](0x194);}return _0x480aed;};}function handleError(_0x56e020,_0x44514d){_0x44514d=_0x44514d||0x1f4;return function(_0x26ff1b){logger[_0xd6e6('0x1f')](_0x26ff1b[_0xd6e6('0x20')]);if(_0x26ff1b[_0xd6e6('0x21')]){delete _0x26ff1b['name'];}_0x56e020[_0xd6e6('0x15')](_0x44514d)[_0xd6e6('0x22')](_0x26ff1b);};}exports['index']=function(_0x488f4d,_0xb95719){var _0x30e33c={},_0x1ab874={},_0x3c8be9={'count':0x0,'rows':[]};var _0x594376=_[_0xd6e6('0x23')](db[_0xd6e6('0x24')][_0xd6e6('0x25')],function(_0x32e1b1){return{'name':_0x32e1b1[_0xd6e6('0x26')],'type':_0x32e1b1[_0xd6e6('0x27')]['key']};});_0x1ab874['model']=_[_0xd6e6('0x23')](_0x594376,_0xd6e6('0x21'));_0x1ab874[_0xd6e6('0x28')]=_[_0xd6e6('0x29')](_0x488f4d[_0xd6e6('0x28')]);_0x1ab874[_0xd6e6('0x2a')]=_[_0xd6e6('0x2b')](_0x1ab874[_0xd6e6('0x2c')],_0x1ab874['query']);_0x30e33c[_0xd6e6('0x2d')]=_[_0xd6e6('0x2b')](_0x1ab874['model'],qs[_0xd6e6('0x2e')](_0x488f4d[_0xd6e6('0x28')][_0xd6e6('0x2e')]));_0x30e33c[_0xd6e6('0x2d')]=_0x30e33c['attributes']['length']?_0x30e33c[_0xd6e6('0x2d')]:_0x1ab874[_0xd6e6('0x2c')];if(!_0x488f4d[_0xd6e6('0x28')]['hasOwnProperty']('nolimit')){_0x30e33c['limit']=qs[_0xd6e6('0x17')](_0x488f4d['query'][_0xd6e6('0x17')]);_0x30e33c[_0xd6e6('0x1a')]=qs[_0xd6e6('0x1a')](_0x488f4d['query'][_0xd6e6('0x1a')]);}_0x30e33c[_0xd6e6('0x2f')]=qs[_0xd6e6('0x30')](_0x488f4d[_0xd6e6('0x28')][_0xd6e6('0x30')]);_0x30e33c[_0xd6e6('0x31')]=qs[_0xd6e6('0x2a')](_[_0xd6e6('0x32')](_0x488f4d[_0xd6e6('0x28')],_0x1ab874[_0xd6e6('0x2a')]),_0x594376);if(_0x488f4d[_0xd6e6('0x28')][_0xd6e6('0x33')]){_0x30e33c['where']=_['merge'](_0x30e33c[_0xd6e6('0x31')],{'$or':_['map'](_0x594376,function(_0xbbb2e4){if(_0xbbb2e4[_0xd6e6('0x27')]!==_0xd6e6('0x34')){var _0x14b2fb={};_0x14b2fb[_0xbbb2e4[_0xd6e6('0x21')]]={'$like':'%'+_0x488f4d['query']['filter']+'%'};return _0x14b2fb;}})});}_0x30e33c=_[_0xd6e6('0x35')]({},_0x30e33c,_0x488f4d[_0xd6e6('0x36')]);var _0x2719c0={'where':_0x30e33c[_0xd6e6('0x31')]};return db[_0xd6e6('0x24')][_0xd6e6('0x19')](_0x2719c0)[_0xd6e6('0x37')](function(_0x476d34){_0x3c8be9[_0xd6e6('0x19')]=_0x476d34;if(_0x488f4d[_0xd6e6('0x28')]['includeAll']){_0x30e33c[_0xd6e6('0x38')]=[{'all':!![]}];}return db[_0xd6e6('0x24')][_0xd6e6('0x39')](_0x30e33c);})['then'](function(_0x40bafb){_0x3c8be9[_0xd6e6('0x3a')]=_0x40bafb;return _0x3c8be9;})[_0xd6e6('0x37')](respondWithFilteredResult(_0xb95719,_0x30e33c))[_0xd6e6('0x3b')](handleError(_0xb95719,null));};exports['show']=function(_0x2f6aa5,_0x14d119){var _0xd4fe67={'raw':![],'where':{'id':_0x2f6aa5[_0xd6e6('0x3c')]['id']}},_0x3aa9fd={};_0x3aa9fd[_0xd6e6('0x2c')]=_[_0xd6e6('0x29')](db[_0xd6e6('0x24')][_0xd6e6('0x25')]);_0x3aa9fd['query']=_[_0xd6e6('0x29')](_0x2f6aa5['query']);_0x3aa9fd[_0xd6e6('0x2a')]=_['intersection'](_0x3aa9fd[_0xd6e6('0x2c')],_0x3aa9fd[_0xd6e6('0x28')]);_0xd4fe67['attributes']=_[_0xd6e6('0x2b')](_0x3aa9fd[_0xd6e6('0x2c')],qs[_0xd6e6('0x2e')](_0x2f6aa5[_0xd6e6('0x28')]['fields']));_0xd4fe67[_0xd6e6('0x2d')]=_0xd4fe67[_0xd6e6('0x2d')][_0xd6e6('0x3d')]?_0xd4fe67['attributes']:_0x3aa9fd[_0xd6e6('0x2c')];if(_0x2f6aa5[_0xd6e6('0x28')][_0xd6e6('0x3e')]){_0xd4fe67[_0xd6e6('0x38')]=[{'all':!![]}];}_0xd4fe67=_[_0xd6e6('0x35')]({},_0xd4fe67,_0x2f6aa5['options']);return db[_0xd6e6('0x24')][_0xd6e6('0x3f')](_0xd4fe67)[_0xd6e6('0x37')](handleEntityNotFound(_0x14d119,null))[_0xd6e6('0x37')](respondWithResult(_0x14d119,null))[_0xd6e6('0x3b')](handleError(_0x14d119,null));};exports['create']=function(_0x300da1,_0x3e548e){return db[_0xd6e6('0x24')]['create'](_0x300da1[_0xd6e6('0x40')],{})[_0xd6e6('0x37')](respondWithResult(_0x3e548e,0xc9))[_0xd6e6('0x3b')](handleError(_0x3e548e,null));};exports['update']=function(_0x440907,_0x244114){if(_0x440907[_0xd6e6('0x40')]['id']){delete _0x440907[_0xd6e6('0x40')]['id'];}return db[_0xd6e6('0x24')][_0xd6e6('0x3f')]({'where':{'id':_0x440907[_0xd6e6('0x3c')]['id']}})[_0xd6e6('0x37')](handleEntityNotFound(_0x244114,null))['then'](saveUpdates(_0x440907['body'],null))[_0xd6e6('0x37')](respondWithResult(_0x244114,null))[_0xd6e6('0x3b')](handleError(_0x244114,null));};exports['destroy']=function(_0x588595,_0x9fdaff){return db['UserProfileSection'][_0xd6e6('0x3f')]({'where':{'id':_0x588595[_0xd6e6('0x3c')]['id']}})['then'](handleEntityNotFound(_0x9fdaff,null))[_0xd6e6('0x37')](removeEntity(_0x9fdaff,null))[_0xd6e6('0x3b')](handleError(_0x9fdaff,null));};exports[_0xd6e6('0x41')]=function(_0x109dac,_0x1f3017){return db[_0xd6e6('0x24')][_0xd6e6('0x41')]()['then'](respondWithResult(_0x1f3017,null))[_0xd6e6('0x3b')](handleError(_0x1f3017,null));};