d8fd23d98afdce48a40fe8b2887eeb261335a7d0
[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 _0x112a=['model','nolimit','order','sort','where','filters','pick','filter','merge','options','includeAll','include','rows','catch','keys','create','body','find','params','describe','eml-format','rimraf','zip-dir','request-promise','mustache','path','to-csv','ejs','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','offset','limit','set','Content-Range','apply','save','update','then','destroy','sendStatus','error','stack','name','send','index','map','UserProfileSection','rawAttributes','fieldName','type','key','query','intersection','attributes','fields','length'];(function(_0x6d2e72,_0x914cb3){var _0x554c49=function(_0x1e64dc){while(--_0x1e64dc){_0x6d2e72['push'](_0x6d2e72['shift']());}};_0x554c49(++_0x914cb3);}(_0x112a,0x1c4));var _0xa112=function(_0x4cc1f8,_0x1eca3d){_0x4cc1f8=_0x4cc1f8-0x0;var _0xe0f1a7=_0x112a[_0x4cc1f8];return _0xe0f1a7;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xa112('0x0'));var rimraf=require(_0xa112('0x1'));var zipdir=require(_0xa112('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xa112('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xa112('0x4'));var util=require('util');var path=require(_0xa112('0x5'));var sox=require('sox');var csv=require(_0xa112('0x6'));var ejs=require(_0xa112('0x7'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0xa112('0x8'));var jsforce=require(_0xa112('0x9'));var deskjs=require(_0xa112('0xa'));var toCsv=require('to-csv');var querystring=require(_0xa112('0xb'));var Papa=require(_0xa112('0xc'));var Redis=require(_0xa112('0xd'));var authService=require(_0xa112('0xe'));var qs=require(_0xa112('0xf'));var as=require(_0xa112('0x10'));var hardwareService=require(_0xa112('0x11'));var logger=require(_0xa112('0x12'))(_0xa112('0x13'));var utils=require(_0xa112('0x14'));var config=require(_0xa112('0x15'));var licenseUtil=require(_0xa112('0x16'));var db=require(_0xa112('0x17'))['db'];function respondWithStatusCode(_0x43c18b,_0x4318ba){_0x4318ba=_0x4318ba||0xcc;return function(_0xce945a){if(_0xce945a){return _0x43c18b['sendStatus'](_0x4318ba);}return _0x43c18b[_0xa112('0x18')](_0x4318ba)[_0xa112('0x19')]();};}function respondWithResult(_0x2a591e,_0x515715){_0x515715=_0x515715||0xc8;return function(_0x3cd533){if(_0x3cd533){return _0x2a591e[_0xa112('0x18')](_0x515715)['json'](_0x3cd533);}};}function respondWithFilteredResult(_0x2e58d7,_0xdef25d){return function(_0xcb4cdc){if(_0xcb4cdc){var _0x2f0185=_0xcb4cdc['count'],_0x41a359=_0xdef25d[_0xa112('0x1a')],_0x80af46=_0xdef25d['offset']+_0xdef25d[_0xa112('0x1b')],_0x42afe3;if(_0x80af46>=_0x2f0185){_0x80af46=_0x2f0185;_0x42afe3=0xc8;}else{_0x42afe3=0xce;}_0x2e58d7[_0xa112('0x18')](_0x42afe3);return _0x2e58d7[_0xa112('0x1c')](_0xa112('0x1d'),_0x41a359+'-'+_0x80af46+'/'+_0x2f0185)['json'](_0xcb4cdc);}return null;};}function patchUpdates(_0x1a01e8){return function(_0x2e18b2){try{jsonpatch[_0xa112('0x1e')](_0x2e18b2,_0x1a01e8,!![]);}catch(_0x5b0c7b){return BPromise['reject'](_0x5b0c7b);}return _0x2e18b2[_0xa112('0x1f')]();};}function saveUpdates(_0x5819a6,_0x5850f5){return function(_0x2f5b5e){if(_0x2f5b5e){return _0x2f5b5e[_0xa112('0x20')](_0x5819a6)[_0xa112('0x21')](function(_0x57eba5){return _0x57eba5;});}return null;};}function removeEntity(_0x26608f,_0x3d10ed){return function(_0x40f137){if(_0x40f137){return _0x40f137[_0xa112('0x22')]()[_0xa112('0x21')](function(){_0x26608f[_0xa112('0x18')](0xcc)[_0xa112('0x19')]();});}};}function handleEntityNotFound(_0x4efd92,_0x34ccbf){return function(_0x1f05fb){if(!_0x1f05fb){_0x4efd92[_0xa112('0x23')](0x194);}return _0x1f05fb;};}function handleError(_0x58a3f4,_0x1c0b9b){_0x1c0b9b=_0x1c0b9b||0x1f4;return function(_0x570070){logger[_0xa112('0x24')](_0x570070[_0xa112('0x25')]);if(_0x570070[_0xa112('0x26')]){delete _0x570070[_0xa112('0x26')];}_0x58a3f4[_0xa112('0x18')](_0x1c0b9b)[_0xa112('0x27')](_0x570070);};}exports[_0xa112('0x28')]=function(_0x1699c1,_0x2fddd9){var _0x13a215={},_0x384a82={},_0x9e7a88={'count':0x0,'rows':[]};var _0x342edb=_[_0xa112('0x29')](db[_0xa112('0x2a')][_0xa112('0x2b')],function(_0x394abd){return{'name':_0x394abd[_0xa112('0x2c')],'type':_0x394abd[_0xa112('0x2d')][_0xa112('0x2e')]};});_0x384a82['model']=_[_0xa112('0x29')](_0x342edb,_0xa112('0x26'));_0x384a82[_0xa112('0x2f')]=_['keys'](_0x1699c1[_0xa112('0x2f')]);_0x384a82['filters']=_[_0xa112('0x30')](_0x384a82['model'],_0x384a82[_0xa112('0x2f')]);_0x13a215[_0xa112('0x31')]=_[_0xa112('0x30')](_0x384a82['model'],qs['fields'](_0x1699c1[_0xa112('0x2f')][_0xa112('0x32')]));_0x13a215[_0xa112('0x31')]=_0x13a215[_0xa112('0x31')][_0xa112('0x33')]?_0x13a215['attributes']:_0x384a82[_0xa112('0x34')];if(!_0x1699c1['query']['hasOwnProperty'](_0xa112('0x35'))){_0x13a215[_0xa112('0x1b')]=qs[_0xa112('0x1b')](_0x1699c1[_0xa112('0x2f')][_0xa112('0x1b')]);_0x13a215[_0xa112('0x1a')]=qs[_0xa112('0x1a')](_0x1699c1[_0xa112('0x2f')][_0xa112('0x1a')]);}_0x13a215[_0xa112('0x36')]=qs[_0xa112('0x37')](_0x1699c1['query'][_0xa112('0x37')]);_0x13a215[_0xa112('0x38')]=qs[_0xa112('0x39')](_[_0xa112('0x3a')](_0x1699c1[_0xa112('0x2f')],_0x384a82['filters']),_0x342edb);if(_0x1699c1['query'][_0xa112('0x3b')]){_0x13a215[_0xa112('0x38')]=_['merge'](_0x13a215[_0xa112('0x38')],{'$or':_[_0xa112('0x29')](_0x342edb,function(_0x123c18){if(_0x123c18[_0xa112('0x2d')]!=='VIRTUAL'){var _0x5066ed={};_0x5066ed[_0x123c18[_0xa112('0x26')]]={'$like':'%'+_0x1699c1[_0xa112('0x2f')][_0xa112('0x3b')]+'%'};return _0x5066ed;}})});}_0x13a215=_[_0xa112('0x3c')]({},_0x13a215,_0x1699c1[_0xa112('0x3d')]);var _0x3e0ef9={'where':_0x13a215['where']};return db[_0xa112('0x2a')]['count'](_0x3e0ef9)[_0xa112('0x21')](function(_0x43fdff){_0x9e7a88['count']=_0x43fdff;if(_0x1699c1['query'][_0xa112('0x3e')]){_0x13a215[_0xa112('0x3f')]=[{'all':!![]}];}return db['UserProfileSection']['findAll'](_0x13a215);})[_0xa112('0x21')](function(_0x49d3f7){_0x9e7a88[_0xa112('0x40')]=_0x49d3f7;return _0x9e7a88;})[_0xa112('0x21')](respondWithFilteredResult(_0x2fddd9,_0x13a215))[_0xa112('0x41')](handleError(_0x2fddd9,null));};exports['show']=function(_0x13f70f,_0x5ecbaa){var _0x9dd5b6={'raw':![],'where':{'id':_0x13f70f['params']['id']}},_0x12073f={};_0x12073f['model']=_[_0xa112('0x42')](db[_0xa112('0x2a')][_0xa112('0x2b')]);_0x12073f['query']=_['keys'](_0x13f70f[_0xa112('0x2f')]);_0x12073f[_0xa112('0x39')]=_[_0xa112('0x30')](_0x12073f[_0xa112('0x34')],_0x12073f[_0xa112('0x2f')]);_0x9dd5b6[_0xa112('0x31')]=_['intersection'](_0x12073f[_0xa112('0x34')],qs['fields'](_0x13f70f[_0xa112('0x2f')][_0xa112('0x32')]));_0x9dd5b6[_0xa112('0x31')]=_0x9dd5b6[_0xa112('0x31')]['length']?_0x9dd5b6[_0xa112('0x31')]:_0x12073f['model'];if(_0x13f70f[_0xa112('0x2f')][_0xa112('0x3e')]){_0x9dd5b6[_0xa112('0x3f')]=[{'all':!![]}];}_0x9dd5b6=_[_0xa112('0x3c')]({},_0x9dd5b6,_0x13f70f[_0xa112('0x3d')]);return db[_0xa112('0x2a')]['find'](_0x9dd5b6)[_0xa112('0x21')](handleEntityNotFound(_0x5ecbaa,null))[_0xa112('0x21')](respondWithResult(_0x5ecbaa,null))['catch'](handleError(_0x5ecbaa,null));};exports[_0xa112('0x43')]=function(_0x2b8d05,_0x25651c){return db['UserProfileSection']['create'](_0x2b8d05[_0xa112('0x44')],{})[_0xa112('0x21')](respondWithResult(_0x25651c,0xc9))[_0xa112('0x41')](handleError(_0x25651c,null));};exports[_0xa112('0x20')]=function(_0x151e91,_0x4445e8){if(_0x151e91[_0xa112('0x44')]['id']){delete _0x151e91[_0xa112('0x44')]['id'];}return db[_0xa112('0x2a')][_0xa112('0x45')]({'where':{'id':_0x151e91['params']['id']}})[_0xa112('0x21')](handleEntityNotFound(_0x4445e8,null))[_0xa112('0x21')](saveUpdates(_0x151e91[_0xa112('0x44')],null))[_0xa112('0x21')](respondWithResult(_0x4445e8,null))[_0xa112('0x41')](handleError(_0x4445e8,null));};exports[_0xa112('0x22')]=function(_0x28f7e1,_0x7d458d){return db[_0xa112('0x2a')][_0xa112('0x45')]({'where':{'id':_0x28f7e1[_0xa112('0x46')]['id']}})['then'](handleEntityNotFound(_0x7d458d,null))[_0xa112('0x21')](removeEntity(_0x7d458d,null))[_0xa112('0x41')](handleError(_0x7d458d,null));};exports[_0xa112('0x47')]=function(_0x1e96c8,_0x36f59c){return db[_0xa112('0x2a')][_0xa112('0x47')]()[_0xa112('0x21')](respondWithResult(_0x36f59c,null))['catch'](handleError(_0x36f59c,null));};