Built motion from commit (unavailable).|2.5.4
[motion2.git] / server / api / contactItemType / contactItemType.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 _0x54ef=['merge','VIRTUAL','filter','options','findAll','rows','show','params','keys','fields','includeAll','find','catch','create','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','ContactItemTypes','UserProfileSection','userProfileId','autoAssociation','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','ejs','lodash','squel','jsforce','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','save','update','then','destroy','UserProfileResource','stack','name','send','index','ContactItemType','rawAttributes','fieldName','type','key','model','map','query','filters','intersection','attributes','length','sort','where','pick'];(function(_0x45e398,_0x8b9b0c){var _0x3f006c=function(_0x374fd4){while(--_0x374fd4){_0x45e398['push'](_0x45e398['shift']());}};_0x3f006c(++_0x8b9b0c);}(_0x54ef,0x112));var _0xf54e=function(_0x729191,_0x5133b2){_0x729191=_0x729191-0x0;var _0x3b3e6e=_0x54ef[_0x729191];return _0x3b3e6e;};'use strict';var pdf=require(_0xf54e('0x0'));var emlformat=require(_0xf54e('0x1'));var rimraf=require(_0xf54e('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0xf54e('0x3'));var rp=require(_0xf54e('0x4'));var moment=require(_0xf54e('0x5'));var BPromise=require(_0xf54e('0x6'));var Mustache=require(_0xf54e('0x7'));var util=require(_0xf54e('0x8'));var path=require(_0xf54e('0x9'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xf54e('0xa'));var fs=require('fs');var _=require(_0xf54e('0xb'));var squel=require(_0xf54e('0xc'));var crypto=require('crypto');var jsforce=require(_0xf54e('0xd'));var deskjs=require('desk.js');var toCsv=require(_0xf54e('0xe'));var querystring=require(_0xf54e('0xf'));var Papa=require('papaparse');var Redis=require(_0xf54e('0x10'));var authService=require(_0xf54e('0x11'));var qs=require(_0xf54e('0x12'));var as=require(_0xf54e('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xf54e('0x14'))(_0xf54e('0x15'));var utils=require(_0xf54e('0x16'));var config=require(_0xf54e('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x358c88,_0x4b0ee1){_0x4b0ee1=_0x4b0ee1||0xcc;return function(_0x4bd828){if(_0x4bd828){return _0x358c88[_0xf54e('0x18')](_0x4b0ee1);}return _0x358c88[_0xf54e('0x19')](_0x4b0ee1)[_0xf54e('0x1a')]();};}function respondWithResult(_0x380f26,_0x5644aa){_0x5644aa=_0x5644aa||0xc8;return function(_0x331732){if(_0x331732){return _0x380f26[_0xf54e('0x19')](_0x5644aa)[_0xf54e('0x1b')](_0x331732);}};}function respondWithFilteredResult(_0x15f639,_0x56828e){return function(_0x2366ee){if(_0x2366ee){var _0x389abc=_0x2366ee[_0xf54e('0x1c')],_0x3eb415=_0x56828e[_0xf54e('0x1d')],_0x5c5d00=_0x56828e[_0xf54e('0x1d')]+_0x56828e[_0xf54e('0x1e')],_0x4af633;if(_0x5c5d00>=_0x389abc){_0x5c5d00=_0x389abc;_0x4af633=0xc8;}else{_0x4af633=0xce;}_0x15f639[_0xf54e('0x19')](_0x4af633);return _0x15f639[_0xf54e('0x1f')](_0xf54e('0x20'),_0x3eb415+'-'+_0x5c5d00+'/'+_0x389abc)[_0xf54e('0x1b')](_0x2366ee);}return null;};}function patchUpdates(_0x1dcc04){return function(_0x4689fe){try{jsonpatch[_0xf54e('0x21')](_0x4689fe,_0x1dcc04,!![]);}catch(_0x50fc66){return BPromise['reject'](_0x50fc66);}return _0x4689fe[_0xf54e('0x22')]();};}function saveUpdates(_0x59f338,_0x3e1556){return function(_0x1bfe99){if(_0x1bfe99){return _0x1bfe99[_0xf54e('0x23')](_0x59f338)[_0xf54e('0x24')](function(_0xf64f12){return _0xf64f12;});}return null;};}function removeEntity(_0x3887b0,_0x388aa0){return function(_0x11985e){if(_0x11985e){return _0x11985e[_0xf54e('0x25')]()[_0xf54e('0x24')](function(){var _0x1c58bd=_0x11985e['get']({'plain':!![]});var _0x6f6d29='ContactItemTypes';return db[_0xf54e('0x26')][_0xf54e('0x25')]({'where':{'type':_0x6f6d29,'resourceId':_0x1c58bd['id']}})[_0xf54e('0x24')](function(){return _0x11985e;});})[_0xf54e('0x24')](function(){_0x3887b0[_0xf54e('0x19')](0xcc)[_0xf54e('0x1a')]();});}};}function handleEntityNotFound(_0x1e08d1,_0x43488d){return function(_0x2342a9){if(!_0x2342a9){_0x1e08d1[_0xf54e('0x18')](0x194);}return _0x2342a9;};}function handleError(_0xf6cdd7,_0x39c0ae){_0x39c0ae=_0x39c0ae||0x1f4;return function(_0x2ea001){logger['error'](_0x2ea001[_0xf54e('0x27')]);if(_0x2ea001['name']){delete _0x2ea001[_0xf54e('0x28')];}_0xf6cdd7['status'](_0x39c0ae)[_0xf54e('0x29')](_0x2ea001);};}exports[_0xf54e('0x2a')]=function(_0x21ba00,_0xa13cd0){var _0x25b643={},_0x3993e4={},_0x36f985={'count':0x0,'rows':[]};var _0x54bd8f=_['map'](db[_0xf54e('0x2b')][_0xf54e('0x2c')],function(_0x2ec92e){return{'name':_0x2ec92e[_0xf54e('0x2d')],'type':_0x2ec92e[_0xf54e('0x2e')][_0xf54e('0x2f')]};});_0x3993e4[_0xf54e('0x30')]=_[_0xf54e('0x31')](_0x54bd8f,_0xf54e('0x28'));_0x3993e4[_0xf54e('0x32')]=_['keys'](_0x21ba00['query']);_0x3993e4[_0xf54e('0x33')]=_[_0xf54e('0x34')](_0x3993e4['model'],_0x3993e4[_0xf54e('0x32')]);_0x25b643[_0xf54e('0x35')]=_[_0xf54e('0x34')](_0x3993e4[_0xf54e('0x30')],qs['fields'](_0x21ba00['query']['fields']));_0x25b643[_0xf54e('0x35')]=_0x25b643[_0xf54e('0x35')][_0xf54e('0x36')]?_0x25b643[_0xf54e('0x35')]:_0x3993e4[_0xf54e('0x30')];if(!_0x21ba00[_0xf54e('0x32')]['hasOwnProperty']('nolimit')){_0x25b643['limit']=qs[_0xf54e('0x1e')](_0x21ba00[_0xf54e('0x32')]['limit']);_0x25b643['offset']=qs[_0xf54e('0x1d')](_0x21ba00[_0xf54e('0x32')][_0xf54e('0x1d')]);}_0x25b643['order']=qs[_0xf54e('0x37')](_0x21ba00[_0xf54e('0x32')]['sort']);_0x25b643[_0xf54e('0x38')]=qs[_0xf54e('0x33')](_[_0xf54e('0x39')](_0x21ba00[_0xf54e('0x32')],_0x3993e4[_0xf54e('0x33')]),_0x54bd8f);if(_0x21ba00[_0xf54e('0x32')]['filter']){_0x25b643['where']=_[_0xf54e('0x3a')](_0x25b643[_0xf54e('0x38')],{'$or':_[_0xf54e('0x31')](_0x54bd8f,function(_0x4b1f84){if(_0x4b1f84[_0xf54e('0x2e')]!==_0xf54e('0x3b')){var _0x448054={};_0x448054[_0x4b1f84[_0xf54e('0x28')]]={'$like':'%'+_0x21ba00[_0xf54e('0x32')][_0xf54e('0x3c')]+'%'};return _0x448054;}})});}_0x25b643=_[_0xf54e('0x3a')]({},_0x25b643,_0x21ba00[_0xf54e('0x3d')]);var _0x8b4c={'where':_0x25b643[_0xf54e('0x38')]};return db[_0xf54e('0x2b')][_0xf54e('0x1c')](_0x8b4c)[_0xf54e('0x24')](function(_0x2625fd){_0x36f985[_0xf54e('0x1c')]=_0x2625fd;if(_0x21ba00['query']['includeAll']){_0x25b643['include']=[{'all':!![]}];}return db[_0xf54e('0x2b')][_0xf54e('0x3e')](_0x25b643);})['then'](function(_0x3dae9b){_0x36f985[_0xf54e('0x3f')]=_0x3dae9b;return _0x36f985;})[_0xf54e('0x24')](respondWithFilteredResult(_0xa13cd0,_0x25b643))['catch'](handleError(_0xa13cd0,null));};exports[_0xf54e('0x40')]=function(_0x13d145,_0x1e016e){var _0x794be7={'raw':!![],'where':{'id':_0x13d145[_0xf54e('0x41')]['id']}},_0x4b1931={};_0x4b1931[_0xf54e('0x30')]=_[_0xf54e('0x42')](db[_0xf54e('0x2b')]['rawAttributes']);_0x4b1931[_0xf54e('0x32')]=_[_0xf54e('0x42')](_0x13d145[_0xf54e('0x32')]);_0x4b1931[_0xf54e('0x33')]=_[_0xf54e('0x34')](_0x4b1931[_0xf54e('0x30')],_0x4b1931['query']);_0x794be7[_0xf54e('0x35')]=_['intersection'](_0x4b1931[_0xf54e('0x30')],qs['fields'](_0x13d145[_0xf54e('0x32')][_0xf54e('0x43')]));_0x794be7[_0xf54e('0x35')]=_0x794be7['attributes'][_0xf54e('0x36')]?_0x794be7[_0xf54e('0x35')]:_0x4b1931[_0xf54e('0x30')];if(_0x13d145[_0xf54e('0x32')][_0xf54e('0x44')]){_0x794be7['include']=[{'all':!![]}];}_0x794be7=_[_0xf54e('0x3a')]({},_0x794be7,_0x13d145[_0xf54e('0x3d')]);return db[_0xf54e('0x2b')][_0xf54e('0x45')](_0x794be7)['then'](handleEntityNotFound(_0x1e016e,null))[_0xf54e('0x24')](respondWithResult(_0x1e016e,null))[_0xf54e('0x46')](handleError(_0x1e016e,null));};exports['create']=function(_0x22c842,_0xd4d956){return db[_0xf54e('0x2b')][_0xf54e('0x47')](_0x22c842['body'],{})[_0xf54e('0x24')](function(_0x2b645e){var _0x2527f6=_0x22c842[_0xf54e('0x48')][_0xf54e('0x49')]({'plain':!![]});if(!_0x2527f6)throw new Error(_0xf54e('0x4a'));if(_0x2527f6[_0xf54e('0x4b')]===_0xf54e('0x48')){var _0x15bfef=_0x2b645e[_0xf54e('0x49')]({'plain':!![]});var _0xaf9bf0=_0xf54e('0x4c');return db[_0xf54e('0x4d')][_0xf54e('0x45')]({'where':{'name':_0xaf9bf0,'userProfileId':_0x2527f6[_0xf54e('0x4e')]},'raw':!![]})[_0xf54e('0x24')](function(_0x40d8ab){if(_0x40d8ab&&_0x40d8ab[_0xf54e('0x4f')]===0x0){return db[_0xf54e('0x26')][_0xf54e('0x47')]({'name':_0x15bfef['name'],'resourceId':_0x15bfef['id'],'type':_0x40d8ab['name'],'sectionId':_0x40d8ab['id']},{})[_0xf54e('0x24')](function(){return _0x2b645e;});}else{return _0x2b645e;}})[_0xf54e('0x46')](function(_0x45861b){logger[_0xf54e('0x50')](_0xf54e('0x51'),_0x45861b);throw _0x45861b;});}return _0x2b645e;})[_0xf54e('0x24')](respondWithResult(_0xd4d956,0xc9))[_0xf54e('0x46')](handleError(_0xd4d956,null));};exports[_0xf54e('0x23')]=function(_0x89b811,_0xdf63c4){if(_0x89b811[_0xf54e('0x52')]['id']){delete _0x89b811['body']['id'];}return db[_0xf54e('0x2b')][_0xf54e('0x45')]({'where':{'id':_0x89b811[_0xf54e('0x41')]['id']}})[_0xf54e('0x24')](handleEntityNotFound(_0xdf63c4,null))[_0xf54e('0x24')](saveUpdates(_0x89b811[_0xf54e('0x52')],null))[_0xf54e('0x24')](respondWithResult(_0xdf63c4,null))['catch'](handleError(_0xdf63c4,null));};exports[_0xf54e('0x25')]=function(_0x5fabd2,_0x294fa1){return db['ContactItemType'][_0xf54e('0x45')]({'where':{'id':_0x5fabd2['params']['id']}})[_0xf54e('0x24')](handleEntityNotFound(_0x294fa1,null))[_0xf54e('0x24')](removeEntity(_0x294fa1,null))[_0xf54e('0x46')](handleError(_0x294fa1,null));};