2290bb705e13caa2e13e373573c3825496441e85
[motion2.git] / server / api / userProfileResource / userProfileResource.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 _0x5178=['pick','filter','VIRTUAL','merge','options','includeAll','include','rows','catch','params','find','create','body','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','mustache','util','sox','ejs','lodash','squel','crypto','jsforce','to-csv','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','Content-Range','update','then','destroy','error','name','send','index','map','UserProfileResource','rawAttributes','fieldName','type','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where'];(function(_0x3174a1,_0x3b864a){var _0x1e06c8=function(_0x1959f7){while(--_0x1959f7){_0x3174a1['push'](_0x3174a1['shift']());}};_0x1e06c8(++_0x3b864a);}(_0x5178,0x171));var _0x8517=function(_0x501510,_0x61caa9){_0x501510=_0x501510-0x0;var _0x1e6ee5=_0x5178[_0x501510];return _0x1e6ee5;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x8517('0x0'));var rimraf=require(_0x8517('0x1'));var zipdir=require(_0x8517('0x2'));var jsonpatch=require(_0x8517('0x3'));var rp=require(_0x8517('0x4'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x8517('0x5'));var util=require(_0x8517('0x6'));var path=require('path');var sox=require(_0x8517('0x7'));var csv=require('to-csv');var ejs=require(_0x8517('0x8'));var fs=require('fs');var _=require(_0x8517('0x9'));var squel=require(_0x8517('0xa'));var crypto=require(_0x8517('0xb'));var jsforce=require(_0x8517('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x8517('0xd'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x8517('0xe'));var authService=require(_0x8517('0xf'));var qs=require('../../components/parsers/qs');var as=require(_0x8517('0x10'));var hardwareService=require(_0x8517('0x11'));var logger=require(_0x8517('0x12'))(_0x8517('0x13'));var utils=require(_0x8517('0x14'));var config=require(_0x8517('0x15'));var db=require(_0x8517('0x16'))['db'];function respondWithStatusCode(_0x12388f,_0x4b9768){_0x4b9768=_0x4b9768||0xcc;return function(_0x9c57de){if(_0x9c57de){return _0x12388f[_0x8517('0x17')](_0x4b9768);}return _0x12388f[_0x8517('0x18')](_0x4b9768)[_0x8517('0x19')]();};}function respondWithResult(_0x284a05,_0x49eba7){_0x49eba7=_0x49eba7||0xc8;return function(_0x385219){if(_0x385219){return _0x284a05[_0x8517('0x18')](_0x49eba7)[_0x8517('0x1a')](_0x385219);}};}function respondWithFilteredResult(_0x100280,_0x411d29){return function(_0x18a984){if(_0x18a984){var _0x260a15=_0x18a984[_0x8517('0x1b')],_0x30cea1=_0x411d29[_0x8517('0x1c')],_0x504a92=_0x411d29['offset']+_0x411d29[_0x8517('0x1d')],_0x2953dd;if(_0x504a92>=_0x260a15){_0x504a92=_0x260a15;_0x2953dd=0xc8;}else{_0x2953dd=0xce;}_0x100280[_0x8517('0x18')](_0x2953dd);return _0x100280[_0x8517('0x1e')](_0x8517('0x1f'),_0x30cea1+'-'+_0x504a92+'/'+_0x260a15)[_0x8517('0x1a')](_0x18a984);}return null;};}function patchUpdates(_0x24ca7e){return function(_0x1bfbc1){try{jsonpatch['apply'](_0x1bfbc1,_0x24ca7e,!![]);}catch(_0xd37bf1){return BPromise['reject'](_0xd37bf1);}return _0x1bfbc1['save']();};}function saveUpdates(_0x23f7d2,_0x157bea){return function(_0xf35d95){if(_0xf35d95){return _0xf35d95[_0x8517('0x20')](_0x23f7d2)[_0x8517('0x21')](function(_0xdfde16){return _0xdfde16;});}return null;};}function removeEntity(_0x512458,_0x4b145f){return function(_0x2dd1df){if(_0x2dd1df){return _0x2dd1df[_0x8517('0x22')]()[_0x8517('0x21')](function(){_0x512458[_0x8517('0x18')](0xcc)[_0x8517('0x19')]();});}};}function handleEntityNotFound(_0x2e6e47,_0x5f02ee){return function(_0x181500){if(!_0x181500){_0x2e6e47[_0x8517('0x17')](0x194);}return _0x181500;};}function handleError(_0x5578f0,_0x7f4cf8){_0x7f4cf8=_0x7f4cf8||0x1f4;return function(_0x2febd5){logger[_0x8517('0x23')](_0x2febd5['stack']);if(_0x2febd5[_0x8517('0x24')]){delete _0x2febd5['name'];}_0x5578f0[_0x8517('0x18')](_0x7f4cf8)[_0x8517('0x25')](_0x2febd5);};}exports[_0x8517('0x26')]=function(_0x2b0c19,_0x238f2c){var _0x300e3f={},_0x481ceb={},_0x39764e={'count':0x0,'rows':[]};var _0x51d516=_[_0x8517('0x27')](db[_0x8517('0x28')][_0x8517('0x29')],function(_0x355aa6){return{'name':_0x355aa6[_0x8517('0x2a')],'type':_0x355aa6[_0x8517('0x2b')]['key']};});_0x481ceb[_0x8517('0x2c')]=_['map'](_0x51d516,_0x8517('0x24'));_0x481ceb[_0x8517('0x2d')]=_[_0x8517('0x2e')](_0x2b0c19[_0x8517('0x2d')]);_0x481ceb[_0x8517('0x2f')]=_[_0x8517('0x30')](_0x481ceb[_0x8517('0x2c')],_0x481ceb[_0x8517('0x2d')]);_0x300e3f[_0x8517('0x31')]=_['intersection'](_0x481ceb[_0x8517('0x2c')],qs[_0x8517('0x32')](_0x2b0c19[_0x8517('0x2d')]['fields']));_0x300e3f['attributes']=_0x300e3f['attributes'][_0x8517('0x33')]?_0x300e3f[_0x8517('0x31')]:_0x481ceb[_0x8517('0x2c')];if(!_0x2b0c19[_0x8517('0x2d')][_0x8517('0x34')](_0x8517('0x35'))){_0x300e3f['limit']=qs[_0x8517('0x1d')](_0x2b0c19[_0x8517('0x2d')][_0x8517('0x1d')]);_0x300e3f['offset']=qs[_0x8517('0x1c')](_0x2b0c19['query'][_0x8517('0x1c')]);}_0x300e3f[_0x8517('0x36')]=qs['sort'](_0x2b0c19['query'][_0x8517('0x37')]);_0x300e3f[_0x8517('0x38')]=qs[_0x8517('0x2f')](_[_0x8517('0x39')](_0x2b0c19['query'],_0x481ceb['filters']),_0x51d516);if(_0x2b0c19[_0x8517('0x2d')][_0x8517('0x3a')]){_0x300e3f[_0x8517('0x38')]=_['merge'](_0x300e3f[_0x8517('0x38')],{'$or':_[_0x8517('0x27')](_0x51d516,function(_0x4afa5b){if(_0x4afa5b[_0x8517('0x2b')]!==_0x8517('0x3b')){var _0x15e5f0={};_0x15e5f0[_0x4afa5b[_0x8517('0x24')]]={'$like':'%'+_0x2b0c19['query'][_0x8517('0x3a')]+'%'};return _0x15e5f0;}})});}_0x300e3f=_[_0x8517('0x3c')]({},_0x300e3f,_0x2b0c19[_0x8517('0x3d')]);var _0x36ff78={'where':_0x300e3f[_0x8517('0x38')]};return db[_0x8517('0x28')][_0x8517('0x1b')](_0x36ff78)[_0x8517('0x21')](function(_0x3f338a){_0x39764e[_0x8517('0x1b')]=_0x3f338a;if(_0x2b0c19[_0x8517('0x2d')][_0x8517('0x3e')]){_0x300e3f[_0x8517('0x3f')]=[{'all':!![]}];}return db['UserProfileResource']['findAll'](_0x300e3f);})[_0x8517('0x21')](function(_0x24a74b){_0x39764e[_0x8517('0x40')]=_0x24a74b;return _0x39764e;})[_0x8517('0x21')](respondWithFilteredResult(_0x238f2c,_0x300e3f))[_0x8517('0x41')](handleError(_0x238f2c,null));};exports['show']=function(_0x2456c9,_0x5a35cd){var _0x531ca7={'raw':![],'where':{'id':_0x2456c9[_0x8517('0x42')]['id']}},_0x1472f3={};_0x1472f3[_0x8517('0x2c')]=_[_0x8517('0x2e')](db['UserProfileResource'][_0x8517('0x29')]);_0x1472f3[_0x8517('0x2d')]=_['keys'](_0x2456c9[_0x8517('0x2d')]);_0x1472f3[_0x8517('0x2f')]=_[_0x8517('0x30')](_0x1472f3['model'],_0x1472f3[_0x8517('0x2d')]);_0x531ca7[_0x8517('0x31')]=_[_0x8517('0x30')](_0x1472f3[_0x8517('0x2c')],qs[_0x8517('0x32')](_0x2456c9[_0x8517('0x2d')][_0x8517('0x32')]));_0x531ca7['attributes']=_0x531ca7[_0x8517('0x31')][_0x8517('0x33')]?_0x531ca7['attributes']:_0x1472f3[_0x8517('0x2c')];if(_0x2456c9[_0x8517('0x2d')][_0x8517('0x3e')]){_0x531ca7[_0x8517('0x3f')]=[{'all':!![]}];}_0x531ca7=_[_0x8517('0x3c')]({},_0x531ca7,_0x2456c9[_0x8517('0x3d')]);return db['UserProfileResource'][_0x8517('0x43')](_0x531ca7)[_0x8517('0x21')](handleEntityNotFound(_0x5a35cd,null))[_0x8517('0x21')](respondWithResult(_0x5a35cd,null))['catch'](handleError(_0x5a35cd,null));};exports[_0x8517('0x44')]=function(_0x197480,_0x56d08b){return db[_0x8517('0x28')][_0x8517('0x44')](_0x197480['body'],{})['then'](respondWithResult(_0x56d08b,0xc9))['catch'](handleError(_0x56d08b,null));};exports[_0x8517('0x20')]=function(_0x250a14,_0x4ec257){if(_0x250a14[_0x8517('0x45')]['id']){delete _0x250a14['body']['id'];}return db['UserProfileResource'][_0x8517('0x43')]({'where':{'id':_0x250a14[_0x8517('0x42')]['id']}})[_0x8517('0x21')](handleEntityNotFound(_0x4ec257,null))[_0x8517('0x21')](saveUpdates(_0x250a14['body'],null))[_0x8517('0x21')](respondWithResult(_0x4ec257,null))[_0x8517('0x41')](handleError(_0x4ec257,null));};exports[_0x8517('0x22')]=function(_0x5a6812,_0x15102f){return db[_0x8517('0x28')][_0x8517('0x43')]({'where':{'id':_0x5a6812[_0x8517('0x42')]['id']}})[_0x8517('0x21')](handleEntityNotFound(_0x15102f,null))[_0x8517('0x21')](removeEntity(_0x15102f,null))[_0x8517('0x41')](handleError(_0x15102f,null));};exports['describe']=function(_0x3a5adb,_0x5a8724){return db['UserProfileResource'][_0x8517('0x46')]()[_0x8517('0x21')](respondWithResult(_0x5a8724,null))[_0x8517('0x41')](handleError(_0x5a8724,null));};