c59f8f282ae81e90344c902a32434b37d04bd08e
[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 _0xe9ce=['UserProfileSection','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','VIRTUAL','options','count','includeAll','findAll','rows','show','params','include','find','create','body','catch','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','util','path','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','offset','limit','json','apply','reject','save','update','then','destroy','error','stack','name','send','index','map'];(function(_0x34ace0,_0x3abc6b){var _0x24c6de=function(_0x1c4d72){while(--_0x1c4d72){_0x34ace0['push'](_0x34ace0['shift']());}};_0x24c6de(++_0x3abc6b);}(_0xe9ce,0x15b));var _0xee9c=function(_0x466984,_0x2d2452){_0x466984=_0x466984-0x0;var _0x4c0e4c=_0xe9ce[_0x466984];return _0x4c0e4c;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xee9c('0x0'));var rimraf=require(_0xee9c('0x1'));var zipdir=require(_0xee9c('0x2'));var jsonpatch=require(_0xee9c('0x3'));var rp=require(_0xee9c('0x4'));var moment=require('moment');var BPromise=require(_0xee9c('0x5'));var Mustache=require('mustache');var util=require(_0xee9c('0x6'));var path=require(_0xee9c('0x7'));var sox=require('sox');var csv=require(_0xee9c('0x8'));var ejs=require(_0xee9c('0x9'));var fs=require('fs');var _=require(_0xee9c('0xa'));var squel=require(_0xee9c('0xb'));var crypto=require(_0xee9c('0xc'));var jsforce=require(_0xee9c('0xd'));var deskjs=require(_0xee9c('0xe'));var toCsv=require(_0xee9c('0x8'));var querystring=require('querystring');var Papa=require(_0xee9c('0xf'));var Redis=require('ioredis');var authService=require(_0xee9c('0x10'));var qs=require(_0xee9c('0x11'));var as=require(_0xee9c('0x12'));var hardwareService=require(_0xee9c('0x13'));var logger=require(_0xee9c('0x14'))(_0xee9c('0x15'));var utils=require(_0xee9c('0x16'));var config=require(_0xee9c('0x17'));var db=require(_0xee9c('0x18'))['db'];function respondWithStatusCode(_0x4740ef,_0x3f1ad7){_0x3f1ad7=_0x3f1ad7||0xcc;return function(_0x26057b){if(_0x26057b){return _0x4740ef[_0xee9c('0x19')](_0x3f1ad7);}return _0x4740ef[_0xee9c('0x1a')](_0x3f1ad7)[_0xee9c('0x1b')]();};}function respondWithResult(_0x220790,_0x4d5aed){_0x4d5aed=_0x4d5aed||0xc8;return function(_0x403acf){if(_0x403acf){return _0x220790['status'](_0x4d5aed)['json'](_0x403acf);}};}function respondWithFilteredResult(_0xcc31a4,_0x59f0f0){return function(_0x5da639){if(_0x5da639){var _0x53a666=_0x5da639['count'],_0x3c200f=_0x59f0f0[_0xee9c('0x1c')],_0x149f49=_0x59f0f0['offset']+_0x59f0f0[_0xee9c('0x1d')],_0x6b8b8f;if(_0x149f49>=_0x53a666){_0x149f49=_0x53a666;_0x6b8b8f=0xc8;}else{_0x6b8b8f=0xce;}_0xcc31a4['status'](_0x6b8b8f);return _0xcc31a4['set']('Content-Range',_0x3c200f+'-'+_0x149f49+'/'+_0x53a666)[_0xee9c('0x1e')](_0x5da639);}return null;};}function patchUpdates(_0x4dd78c){return function(_0x1857a3){try{jsonpatch[_0xee9c('0x1f')](_0x1857a3,_0x4dd78c,!![]);}catch(_0x553f7b){return BPromise[_0xee9c('0x20')](_0x553f7b);}return _0x1857a3[_0xee9c('0x21')]();};}function saveUpdates(_0x3874f6,_0x5c4f0c){return function(_0x39c03f){if(_0x39c03f){return _0x39c03f[_0xee9c('0x22')](_0x3874f6)[_0xee9c('0x23')](function(_0x5c499a){return _0x5c499a;});}return null;};}function removeEntity(_0x345f6e,_0x3e67fb){return function(_0x37a6fc){if(_0x37a6fc){return _0x37a6fc[_0xee9c('0x24')]()[_0xee9c('0x23')](function(){_0x345f6e['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x441769,_0x2d3953){return function(_0x50ab73){if(!_0x50ab73){_0x441769[_0xee9c('0x19')](0x194);}return _0x50ab73;};}function handleError(_0xcdc62b,_0x5c5064){_0x5c5064=_0x5c5064||0x1f4;return function(_0x3947b5){logger[_0xee9c('0x25')](_0x3947b5[_0xee9c('0x26')]);if(_0x3947b5[_0xee9c('0x27')]){delete _0x3947b5[_0xee9c('0x27')];}_0xcdc62b[_0xee9c('0x1a')](_0x5c5064)[_0xee9c('0x28')](_0x3947b5);};}exports[_0xee9c('0x29')]=function(_0x5dde99,_0x343bed){var _0x4004a3={},_0x417eef={},_0x15bad8={'count':0x0,'rows':[]};var _0x58fa5c=_[_0xee9c('0x2a')](db[_0xee9c('0x2b')][_0xee9c('0x2c')],function(_0x5bb49a){return{'name':_0x5bb49a[_0xee9c('0x2d')],'type':_0x5bb49a[_0xee9c('0x2e')][_0xee9c('0x2f')]};});_0x417eef[_0xee9c('0x30')]=_[_0xee9c('0x2a')](_0x58fa5c,_0xee9c('0x27'));_0x417eef[_0xee9c('0x31')]=_[_0xee9c('0x32')](_0x5dde99[_0xee9c('0x31')]);_0x417eef[_0xee9c('0x33')]=_[_0xee9c('0x34')](_0x417eef[_0xee9c('0x30')],_0x417eef[_0xee9c('0x31')]);_0x4004a3[_0xee9c('0x35')]=_[_0xee9c('0x34')](_0x417eef[_0xee9c('0x30')],qs['fields'](_0x5dde99['query'][_0xee9c('0x36')]));_0x4004a3['attributes']=_0x4004a3['attributes'][_0xee9c('0x37')]?_0x4004a3[_0xee9c('0x35')]:_0x417eef['model'];if(!_0x5dde99[_0xee9c('0x31')][_0xee9c('0x38')](_0xee9c('0x39'))){_0x4004a3[_0xee9c('0x1d')]=qs[_0xee9c('0x1d')](_0x5dde99[_0xee9c('0x31')][_0xee9c('0x1d')]);_0x4004a3[_0xee9c('0x1c')]=qs[_0xee9c('0x1c')](_0x5dde99[_0xee9c('0x31')]['offset']);}_0x4004a3[_0xee9c('0x3a')]=qs['sort'](_0x5dde99[_0xee9c('0x31')][_0xee9c('0x3b')]);_0x4004a3['where']=qs[_0xee9c('0x33')](_[_0xee9c('0x3c')](_0x5dde99['query'],_0x417eef[_0xee9c('0x33')]));if(_0x5dde99['query'][_0xee9c('0x3d')]){_0x4004a3[_0xee9c('0x3e')]=_[_0xee9c('0x3f')](_0x4004a3[_0xee9c('0x3e')],{'$or':_[_0xee9c('0x2a')](_0x58fa5c,function(_0x49beaa){if(_0x49beaa[_0xee9c('0x2e')]!==_0xee9c('0x40')){var _0x59f68f={};_0x59f68f[_0x49beaa[_0xee9c('0x27')]]={'$like':'%'+_0x5dde99[_0xee9c('0x31')]['filter']+'%'};return _0x59f68f;}})});}_0x4004a3=_[_0xee9c('0x3f')]({},_0x4004a3,_0x5dde99[_0xee9c('0x41')]);var _0x5e2d10={'where':_0x4004a3[_0xee9c('0x3e')]};return db[_0xee9c('0x2b')][_0xee9c('0x42')](_0x5e2d10)['then'](function(_0x45d147){_0x15bad8[_0xee9c('0x42')]=_0x45d147;if(_0x5dde99[_0xee9c('0x31')][_0xee9c('0x43')]){_0x4004a3['include']=[{'all':!![]}];}return db[_0xee9c('0x2b')][_0xee9c('0x44')](_0x4004a3);})[_0xee9c('0x23')](function(_0x482528){_0x15bad8[_0xee9c('0x45')]=_0x482528;return _0x15bad8;})[_0xee9c('0x23')](respondWithFilteredResult(_0x343bed,_0x4004a3))['catch'](handleError(_0x343bed,null));};exports[_0xee9c('0x46')]=function(_0x480fa1,_0x460b17){var _0x2d4bff={'raw':![],'where':{'id':_0x480fa1[_0xee9c('0x47')]['id']}},_0x3f83eb={};_0x3f83eb[_0xee9c('0x30')]=_[_0xee9c('0x32')](db[_0xee9c('0x2b')][_0xee9c('0x2c')]);_0x3f83eb[_0xee9c('0x31')]=_[_0xee9c('0x32')](_0x480fa1['query']);_0x3f83eb[_0xee9c('0x33')]=_[_0xee9c('0x34')](_0x3f83eb[_0xee9c('0x30')],_0x3f83eb[_0xee9c('0x31')]);_0x2d4bff[_0xee9c('0x35')]=_[_0xee9c('0x34')](_0x3f83eb[_0xee9c('0x30')],qs[_0xee9c('0x36')](_0x480fa1[_0xee9c('0x31')][_0xee9c('0x36')]));_0x2d4bff['attributes']=_0x2d4bff['attributes'][_0xee9c('0x37')]?_0x2d4bff[_0xee9c('0x35')]:_0x3f83eb[_0xee9c('0x30')];if(_0x480fa1[_0xee9c('0x31')]['includeAll']){_0x2d4bff[_0xee9c('0x48')]=[{'all':!![]}];}_0x2d4bff=_[_0xee9c('0x3f')]({},_0x2d4bff,_0x480fa1['options']);return db['UserProfileSection'][_0xee9c('0x49')](_0x2d4bff)[_0xee9c('0x23')](handleEntityNotFound(_0x460b17,null))[_0xee9c('0x23')](respondWithResult(_0x460b17,null))['catch'](handleError(_0x460b17,null));};exports[_0xee9c('0x4a')]=function(_0x336d25,_0x1ef8d5){return db[_0xee9c('0x2b')][_0xee9c('0x4a')](_0x336d25[_0xee9c('0x4b')],{})[_0xee9c('0x23')](respondWithResult(_0x1ef8d5,0xc9))[_0xee9c('0x4c')](handleError(_0x1ef8d5,null));};exports[_0xee9c('0x22')]=function(_0x49e893,_0x36ae46){if(_0x49e893[_0xee9c('0x4b')]['id']){delete _0x49e893['body']['id'];}return db['UserProfileSection'][_0xee9c('0x49')]({'where':{'id':_0x49e893[_0xee9c('0x47')]['id']}})['then'](handleEntityNotFound(_0x36ae46,null))[_0xee9c('0x23')](saveUpdates(_0x49e893[_0xee9c('0x4b')],null))[_0xee9c('0x23')](respondWithResult(_0x36ae46,null))['catch'](handleError(_0x36ae46,null));};exports[_0xee9c('0x24')]=function(_0x2e0bba,_0x17d635){return db[_0xee9c('0x2b')][_0xee9c('0x49')]({'where':{'id':_0x2e0bba[_0xee9c('0x47')]['id']}})[_0xee9c('0x23')](handleEntityNotFound(_0x17d635,null))['then'](removeEntity(_0x17d635,null))[_0xee9c('0x4c')](handleError(_0x17d635,null));};exports[_0xee9c('0x4d')]=function(_0x35cef7,_0x5ccf66){return db[_0xee9c('0x2b')][_0xee9c('0x4d')]()[_0xee9c('0x23')](respondWithResult(_0x5ccf66,null))[_0xee9c('0x4c')](handleError(_0x5ccf66,null));};