b4465e5b1fe27b81a065fe72643778ff3edb2418
[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 _0x2f2e=['Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','find','eml-format','rimraf','fast-json-patch','moment','bluebird','mustache','util','ejs','lodash','squel','crypto','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','limit','set','Content-Range','apply','reject','save','update','then','get','ContactItemTypes','UserProfileResource','destroy','error','name','send','index','ContactItemType','rawAttributes','fieldName','key','map','query','keys','filters','intersection','model','fields','attributes','length','nolimit','sort','where','filter','merge','type','VIRTUAL','options','count','includeAll','findAll','rows','catch','show','params','include','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','create'];(function(_0x321bb2,_0x202794){var _0x9c12ed=function(_0x263dd3){while(--_0x263dd3){_0x321bb2['push'](_0x321bb2['shift']());}};_0x9c12ed(++_0x202794);}(_0x2f2e,0x146));var _0xe2f2=function(_0x512f81,_0x4a7986){_0x512f81=_0x512f81-0x0;var _0xa15099=_0x2f2e[_0x512f81];return _0xa15099;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xe2f2('0x0'));var rimraf=require(_0xe2f2('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xe2f2('0x2'));var rp=require('request-promise');var moment=require(_0xe2f2('0x3'));var BPromise=require(_0xe2f2('0x4'));var Mustache=require(_0xe2f2('0x5'));var util=require(_0xe2f2('0x6'));var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xe2f2('0x7'));var fs=require('fs');var _=require(_0xe2f2('0x8'));var squel=require(_0xe2f2('0x9'));var crypto=require(_0xe2f2('0xa'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0xe2f2('0xb'));var Papa=require('papaparse');var Redis=require(_0xe2f2('0xc'));var authService=require(_0xe2f2('0xd'));var qs=require(_0xe2f2('0xe'));var as=require(_0xe2f2('0xf'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xe2f2('0x10'))(_0xe2f2('0x11'));var utils=require('../../config/utils');var config=require(_0xe2f2('0x12'));var licenseUtil=require(_0xe2f2('0x13'));var db=require(_0xe2f2('0x14'))['db'];function respondWithStatusCode(_0xec8ce1,_0x46a87e){_0x46a87e=_0x46a87e||0xcc;return function(_0x45c78b){if(_0x45c78b){return _0xec8ce1[_0xe2f2('0x15')](_0x46a87e);}return _0xec8ce1[_0xe2f2('0x16')](_0x46a87e)[_0xe2f2('0x17')]();};}function respondWithResult(_0x3392db,_0x5eb9ef){_0x5eb9ef=_0x5eb9ef||0xc8;return function(_0x3bfa74){if(_0x3bfa74){return _0x3392db[_0xe2f2('0x16')](_0x5eb9ef)[_0xe2f2('0x18')](_0x3bfa74);}};}function respondWithFilteredResult(_0x45cd29,_0x43e4e5){return function(_0x51f710){if(_0x51f710){var _0x5b7f1a=_0x51f710['count'],_0x10cc99=_0x43e4e5[_0xe2f2('0x19')],_0xb11b33=_0x43e4e5[_0xe2f2('0x19')]+_0x43e4e5[_0xe2f2('0x1a')],_0x37f965;if(_0xb11b33>=_0x5b7f1a){_0xb11b33=_0x5b7f1a;_0x37f965=0xc8;}else{_0x37f965=0xce;}_0x45cd29['status'](_0x37f965);return _0x45cd29[_0xe2f2('0x1b')](_0xe2f2('0x1c'),_0x10cc99+'-'+_0xb11b33+'/'+_0x5b7f1a)[_0xe2f2('0x18')](_0x51f710);}return null;};}function patchUpdates(_0x1c5c5a){return function(_0xf6ca03){try{jsonpatch[_0xe2f2('0x1d')](_0xf6ca03,_0x1c5c5a,!![]);}catch(_0x5d664a){return BPromise[_0xe2f2('0x1e')](_0x5d664a);}return _0xf6ca03[_0xe2f2('0x1f')]();};}function saveUpdates(_0x34a57c,_0x596dd9){return function(_0xedba85){if(_0xedba85){return _0xedba85[_0xe2f2('0x20')](_0x34a57c)[_0xe2f2('0x21')](function(_0x27ab02){return _0x27ab02;});}return null;};}function removeEntity(_0x4481b2,_0x3fac5d){return function(_0x1e9829){if(_0x1e9829){return _0x1e9829['destroy']()[_0xe2f2('0x21')](function(){var _0x3be5af=_0x1e9829[_0xe2f2('0x22')]({'plain':!![]});var _0x38c524=_0xe2f2('0x23');return db[_0xe2f2('0x24')][_0xe2f2('0x25')]({'where':{'type':_0x38c524,'resourceId':_0x3be5af['id']}})[_0xe2f2('0x21')](function(){return _0x1e9829;});})[_0xe2f2('0x21')](function(){_0x4481b2['status'](0xcc)[_0xe2f2('0x17')]();});}};}function handleEntityNotFound(_0x56ab92,_0xdf8ce8){return function(_0x3df2da){if(!_0x3df2da){_0x56ab92[_0xe2f2('0x15')](0x194);}return _0x3df2da;};}function handleError(_0x5595b2,_0xc53b25){_0xc53b25=_0xc53b25||0x1f4;return function(_0x58e1fd){logger[_0xe2f2('0x26')](_0x58e1fd['stack']);if(_0x58e1fd[_0xe2f2('0x27')]){delete _0x58e1fd[_0xe2f2('0x27')];}_0x5595b2[_0xe2f2('0x16')](_0xc53b25)[_0xe2f2('0x28')](_0x58e1fd);};}exports[_0xe2f2('0x29')]=function(_0x377e50,_0x542e69){var _0xc9e784={},_0x18c995={},_0x1b0450={'count':0x0,'rows':[]};var _0x4abae7=_['map'](db[_0xe2f2('0x2a')][_0xe2f2('0x2b')],function(_0x1ef6cf){return{'name':_0x1ef6cf[_0xe2f2('0x2c')],'type':_0x1ef6cf['type'][_0xe2f2('0x2d')]};});_0x18c995['model']=_[_0xe2f2('0x2e')](_0x4abae7,_0xe2f2('0x27'));_0x18c995[_0xe2f2('0x2f')]=_[_0xe2f2('0x30')](_0x377e50['query']);_0x18c995[_0xe2f2('0x31')]=_[_0xe2f2('0x32')](_0x18c995[_0xe2f2('0x33')],_0x18c995['query']);_0xc9e784['attributes']=_['intersection'](_0x18c995[_0xe2f2('0x33')],qs[_0xe2f2('0x34')](_0x377e50[_0xe2f2('0x2f')][_0xe2f2('0x34')]));_0xc9e784[_0xe2f2('0x35')]=_0xc9e784['attributes'][_0xe2f2('0x36')]?_0xc9e784['attributes']:_0x18c995[_0xe2f2('0x33')];if(!_0x377e50[_0xe2f2('0x2f')]['hasOwnProperty'](_0xe2f2('0x37'))){_0xc9e784[_0xe2f2('0x1a')]=qs[_0xe2f2('0x1a')](_0x377e50[_0xe2f2('0x2f')][_0xe2f2('0x1a')]);_0xc9e784[_0xe2f2('0x19')]=qs[_0xe2f2('0x19')](_0x377e50[_0xe2f2('0x2f')]['offset']);}_0xc9e784['order']=qs[_0xe2f2('0x38')](_0x377e50['query'][_0xe2f2('0x38')]);_0xc9e784[_0xe2f2('0x39')]=qs[_0xe2f2('0x31')](_['pick'](_0x377e50[_0xe2f2('0x2f')],_0x18c995['filters']),_0x4abae7);if(_0x377e50[_0xe2f2('0x2f')][_0xe2f2('0x3a')]){_0xc9e784[_0xe2f2('0x39')]=_[_0xe2f2('0x3b')](_0xc9e784[_0xe2f2('0x39')],{'$or':_[_0xe2f2('0x2e')](_0x4abae7,function(_0x51c5f1){if(_0x51c5f1[_0xe2f2('0x3c')]!==_0xe2f2('0x3d')){var _0xb39f02={};_0xb39f02[_0x51c5f1[_0xe2f2('0x27')]]={'$like':'%'+_0x377e50[_0xe2f2('0x2f')][_0xe2f2('0x3a')]+'%'};return _0xb39f02;}})});}_0xc9e784=_[_0xe2f2('0x3b')]({},_0xc9e784,_0x377e50[_0xe2f2('0x3e')]);var _0x577be0={'where':_0xc9e784['where']};return db[_0xe2f2('0x2a')]['count'](_0x577be0)[_0xe2f2('0x21')](function(_0x4ae957){_0x1b0450[_0xe2f2('0x3f')]=_0x4ae957;if(_0x377e50[_0xe2f2('0x2f')][_0xe2f2('0x40')]){_0xc9e784['include']=[{'all':!![]}];}return db[_0xe2f2('0x2a')][_0xe2f2('0x41')](_0xc9e784);})[_0xe2f2('0x21')](function(_0x260f2e){_0x1b0450[_0xe2f2('0x42')]=_0x260f2e;return _0x1b0450;})[_0xe2f2('0x21')](respondWithFilteredResult(_0x542e69,_0xc9e784))[_0xe2f2('0x43')](handleError(_0x542e69,null));};exports[_0xe2f2('0x44')]=function(_0x5a0ab7,_0x1ccd03){var _0x1a73b6={'raw':!![],'where':{'id':_0x5a0ab7[_0xe2f2('0x45')]['id']}},_0x510a6b={};_0x510a6b['model']=_['keys'](db[_0xe2f2('0x2a')][_0xe2f2('0x2b')]);_0x510a6b['query']=_[_0xe2f2('0x30')](_0x5a0ab7[_0xe2f2('0x2f')]);_0x510a6b[_0xe2f2('0x31')]=_[_0xe2f2('0x32')](_0x510a6b['model'],_0x510a6b[_0xe2f2('0x2f')]);_0x1a73b6[_0xe2f2('0x35')]=_[_0xe2f2('0x32')](_0x510a6b[_0xe2f2('0x33')],qs[_0xe2f2('0x34')](_0x5a0ab7['query']['fields']));_0x1a73b6[_0xe2f2('0x35')]=_0x1a73b6[_0xe2f2('0x35')][_0xe2f2('0x36')]?_0x1a73b6[_0xe2f2('0x35')]:_0x510a6b[_0xe2f2('0x33')];if(_0x5a0ab7[_0xe2f2('0x2f')][_0xe2f2('0x40')]){_0x1a73b6[_0xe2f2('0x46')]=[{'all':!![]}];}_0x1a73b6=_[_0xe2f2('0x3b')]({},_0x1a73b6,_0x5a0ab7[_0xe2f2('0x3e')]);return db[_0xe2f2('0x2a')]['find'](_0x1a73b6)[_0xe2f2('0x21')](handleEntityNotFound(_0x1ccd03,null))[_0xe2f2('0x21')](respondWithResult(_0x1ccd03,null))[_0xe2f2('0x43')](handleError(_0x1ccd03,null));};exports['create']=function(_0x42afaa,_0x4ea411){return db['ContactItemType']['create'](_0x42afaa[_0xe2f2('0x47')],{})[_0xe2f2('0x21')](function(_0x6c0195){var _0x34a7fa=_0x42afaa[_0xe2f2('0x48')][_0xe2f2('0x22')]({'plain':!![]});if(!_0x34a7fa)throw new Error(_0xe2f2('0x49'));if(_0x34a7fa[_0xe2f2('0x4a')]===_0xe2f2('0x48')){var _0x246c3c=_0x6c0195[_0xe2f2('0x22')]({'plain':!![]});var _0x1ac9e2=_0xe2f2('0x23');return db[_0xe2f2('0x4b')]['find']({'where':{'name':_0x1ac9e2,'userProfileId':_0x34a7fa[_0xe2f2('0x4c')]},'raw':!![]})[_0xe2f2('0x21')](function(_0x23e1ad){if(_0x23e1ad&&_0x23e1ad[_0xe2f2('0x4d')]===0x0){return db[_0xe2f2('0x24')][_0xe2f2('0x4e')]({'name':_0x246c3c['name'],'resourceId':_0x246c3c['id'],'type':_0x23e1ad[_0xe2f2('0x27')],'sectionId':_0x23e1ad['id']},{})[_0xe2f2('0x21')](function(){return _0x6c0195;});}else{return _0x6c0195;}})[_0xe2f2('0x43')](function(_0x25676f){logger['error'](_0xe2f2('0x4f'),_0x25676f);throw _0x25676f;});}return _0x6c0195;})[_0xe2f2('0x21')](respondWithResult(_0x4ea411,0xc9))[_0xe2f2('0x43')](handleError(_0x4ea411,null));};exports[_0xe2f2('0x20')]=function(_0x1d3e93,_0x13a94b){if(_0x1d3e93[_0xe2f2('0x47')]['id']){delete _0x1d3e93[_0xe2f2('0x47')]['id'];}return db[_0xe2f2('0x2a')][_0xe2f2('0x50')]({'where':{'id':_0x1d3e93[_0xe2f2('0x45')]['id']}})['then'](handleEntityNotFound(_0x13a94b,null))[_0xe2f2('0x21')](saveUpdates(_0x1d3e93['body'],null))[_0xe2f2('0x21')](respondWithResult(_0x13a94b,null))[_0xe2f2('0x43')](handleError(_0x13a94b,null));};exports[_0xe2f2('0x25')]=function(_0x5ccd2a,_0xb8394a){return db[_0xe2f2('0x2a')][_0xe2f2('0x50')]({'where':{'id':_0x5ccd2a[_0xe2f2('0x45')]['id']}})[_0xe2f2('0x21')](handleEntityNotFound(_0xb8394a,null))['then'](removeEntity(_0xb8394a,null))[_0xe2f2('0x43')](handleError(_0xb8394a,null));};