Built motion from commit (unavailable).|2.4.19
[motion2.git] / server / api / cmCustomField / cmCustomField.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 _0xca9a=['eml-format','rimraf','zip-dir','bluebird','mustache','path','to-csv','ejs','lodash','squel','crypto','querystring','papaparse','ioredis','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','json','offset','limit','status','set','Content-Range','apply','then','destroy','end','error','stack','name','send','index','map','CmCustomField','rawAttributes','type','key','model','differenceBy','query','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','pick','filter','merge','options','count','includeAll','include','findAll','rows','catch','show','keys','find','update','body','params','sequelize','create','Sequelize','number','INTEGER','switch','BOOLEAN','defaultValue','addColumn','cm_contacts','format','cf_%d','html-pdf'];(function(_0x2ecd18,_0xe6ffa){var _0x2c5f78=function(_0x1a57da){while(--_0x1a57da){_0x2ecd18['push'](_0x2ecd18['shift']());}};_0x2c5f78(++_0xe6ffa);}(_0xca9a,0x1eb));var _0xaca9=function(_0xdc63c8,_0x343c94){_0xdc63c8=_0xdc63c8-0x0;var _0x4fb7ce=_0xca9a[_0xdc63c8];return _0x4fb7ce;};'use strict';var pdf=require(_0xaca9('0x0'));var emlformat=require(_0xaca9('0x1'));var rimraf=require(_0xaca9('0x2'));var zipdir=require(_0xaca9('0x3'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0xaca9('0x4'));var Mustache=require(_0xaca9('0x5'));var util=require('util');var path=require(_0xaca9('0x6'));var sox=require('sox');var csv=require(_0xaca9('0x7'));var ejs=require(_0xaca9('0x8'));var fs=require('fs');var _=require(_0xaca9('0x9'));var squel=require(_0xaca9('0xa'));var crypto=require(_0xaca9('0xb'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xaca9('0x7'));var querystring=require(_0xaca9('0xc'));var Papa=require(_0xaca9('0xd'));var Redis=require(_0xaca9('0xe'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0xaca9('0xf'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xaca9('0x10'))(_0xaca9('0x11'));var utils=require(_0xaca9('0x12'));var config=require(_0xaca9('0x13'));var db=require(_0xaca9('0x14'))['db'];function respondWithStatusCode(_0x5c2382,_0x2c1036){_0x2c1036=_0x2c1036||0xcc;return function(_0xff6609){if(_0xff6609){return _0x5c2382[_0xaca9('0x15')](_0x2c1036);}return _0x5c2382['status'](_0x2c1036)['end']();};}function respondWithResult(_0x2d5d75,_0x878cbe){_0x878cbe=_0x878cbe||0xc8;return function(_0x324b6c){if(_0x324b6c){return _0x2d5d75['status'](_0x878cbe)[_0xaca9('0x16')](_0x324b6c);}};}function respondWithFilteredResult(_0x35a460,_0x2d2164){return function(_0x44fb37){if(_0x44fb37){var _0x55e09b=_0x44fb37['count'],_0xd691ba=_0x2d2164['offset'],_0x365413=_0x2d2164[_0xaca9('0x17')]+_0x2d2164[_0xaca9('0x18')],_0x45f47c;if(_0x365413>=_0x55e09b){_0x365413=_0x55e09b;_0x45f47c=0xc8;}else{_0x45f47c=0xce;}_0x35a460[_0xaca9('0x19')](_0x45f47c);return _0x35a460[_0xaca9('0x1a')](_0xaca9('0x1b'),_0xd691ba+'-'+_0x365413+'/'+_0x55e09b)[_0xaca9('0x16')](_0x44fb37);}return null;};}function patchUpdates(_0x1828ad){return function(_0x828b75){try{jsonpatch[_0xaca9('0x1c')](_0x828b75,_0x1828ad,!![]);}catch(_0x25e670){return BPromise['reject'](_0x25e670);}return _0x828b75['save']();};}function saveUpdates(_0x3b6b5f,_0x44dc0c){return function(_0x51441c){if(_0x51441c){return _0x51441c['update'](_0x3b6b5f)[_0xaca9('0x1d')](function(_0x5dd01a){return _0x5dd01a;});}return null;};}function removeEntity(_0x338bc6,_0x4258fc){return function(_0xb4327d){if(_0xb4327d){return _0xb4327d[_0xaca9('0x1e')]()[_0xaca9('0x1d')](function(){_0x338bc6[_0xaca9('0x19')](0xcc)[_0xaca9('0x1f')]();});}};}function handleEntityNotFound(_0x323364,_0x4614e6){return function(_0x43d8c2){if(!_0x43d8c2){_0x323364[_0xaca9('0x15')](0x194);}return _0x43d8c2;};}function handleError(_0xa07014,_0x16823a){_0x16823a=_0x16823a||0x1f4;return function(_0xc87092){logger[_0xaca9('0x20')](_0xc87092[_0xaca9('0x21')]);if(_0xc87092[_0xaca9('0x22')]){delete _0xc87092[_0xaca9('0x22')];}_0xa07014[_0xaca9('0x19')](_0x16823a)[_0xaca9('0x23')](_0xc87092);};}exports[_0xaca9('0x24')]=function(_0x3f3884,_0x1d9a39){var _0xc7d850={},_0x3054c2={},_0x2c637d={'count':0x0,'rows':[]};var _0x36e042=_[_0xaca9('0x25')](db[_0xaca9('0x26')][_0xaca9('0x27')],function(_0x1621b3){return{'name':_0x1621b3['fieldName'],'type':_0x1621b3[_0xaca9('0x28')][_0xaca9('0x29')]};});_0x3054c2[_0xaca9('0x2a')]=_[_0xaca9('0x2b')](_[_0xaca9('0x25')](_0x36e042,_0xaca9('0x22')),[_0xaca9('0x22')]);_0x3054c2[_0xaca9('0x2c')]=_['keys'](_0x3f3884['query']);_0x3054c2[_0xaca9('0x2d')]=_[_0xaca9('0x2e')](_0x3054c2[_0xaca9('0x2a')],_0x3054c2[_0xaca9('0x2c')]);_0xc7d850[_0xaca9('0x2f')]=_[_0xaca9('0x2e')](_0x3054c2[_0xaca9('0x2a')],qs[_0xaca9('0x30')](_0x3f3884[_0xaca9('0x2c')]['fields']));_0xc7d850['attributes']=_0xc7d850['attributes'][_0xaca9('0x31')]?_0xc7d850[_0xaca9('0x2f')]:_0x3054c2[_0xaca9('0x2a')];if(!_0x3f3884[_0xaca9('0x2c')][_0xaca9('0x32')]('nolimit')){_0xc7d850[_0xaca9('0x18')]=qs[_0xaca9('0x18')](_0x3f3884[_0xaca9('0x2c')][_0xaca9('0x18')]);_0xc7d850['offset']=qs['offset'](_0x3f3884[_0xaca9('0x2c')]['offset']);}_0xc7d850[_0xaca9('0x33')]=qs[_0xaca9('0x34')](_0x3f3884[_0xaca9('0x2c')][_0xaca9('0x34')]);_0xc7d850[_0xaca9('0x35')]=qs[_0xaca9('0x2d')](_[_0xaca9('0x36')](_0x3f3884['query'],_0x3054c2[_0xaca9('0x2d')]));if(_0x3f3884[_0xaca9('0x2c')][_0xaca9('0x37')]){_0xc7d850['where']=_[_0xaca9('0x38')](_0xc7d850[_0xaca9('0x35')],{'$or':_[_0xaca9('0x25')](_0x36e042,function(_0x4e5f2f){if(_0x4e5f2f[_0xaca9('0x28')]!=='VIRTUAL'){var _0x54ae80={};_0x54ae80[_0x4e5f2f[_0xaca9('0x22')]]={'$like':'%'+_0x3f3884[_0xaca9('0x2c')]['filter']+'%'};return _0x54ae80;}})});}_0xc7d850=_['merge']({},_0xc7d850,_0x3f3884[_0xaca9('0x39')]);var _0x59dc26={'where':_0xc7d850[_0xaca9('0x35')]};return db['CmCustomField']['count'](_0x59dc26)[_0xaca9('0x1d')](function(_0x579000){_0x2c637d[_0xaca9('0x3a')]=_0x579000;if(_0x3f3884[_0xaca9('0x2c')][_0xaca9('0x3b')]){_0xc7d850[_0xaca9('0x3c')]=[{'all':!![]}];}return db[_0xaca9('0x26')][_0xaca9('0x3d')](_0xc7d850);})[_0xaca9('0x1d')](function(_0x356277){_0x2c637d[_0xaca9('0x3e')]=_0x356277;return _0x2c637d;})[_0xaca9('0x1d')](respondWithFilteredResult(_0x1d9a39,_0xc7d850))[_0xaca9('0x3f')](handleError(_0x1d9a39,null));};exports[_0xaca9('0x40')]=function(_0x37a953,_0x9e5609){var _0xbbb740={'raw':!![],'where':{'id':_0x37a953['params']['id']}},_0x12450d={};_0x12450d[_0xaca9('0x2a')]=_[_0xaca9('0x41')](db[_0xaca9('0x26')][_0xaca9('0x27')]);_0x12450d[_0xaca9('0x2c')]=_[_0xaca9('0x41')](_0x37a953['query']);_0x12450d[_0xaca9('0x2d')]=_['intersection'](_0x12450d[_0xaca9('0x2a')],_0x12450d[_0xaca9('0x2c')]);_0xbbb740[_0xaca9('0x2f')]=_['intersection'](_0x12450d[_0xaca9('0x2a')],qs[_0xaca9('0x30')](_0x37a953[_0xaca9('0x2c')]['fields']));_0xbbb740[_0xaca9('0x2f')]=_0xbbb740[_0xaca9('0x2f')][_0xaca9('0x31')]?_0xbbb740[_0xaca9('0x2f')]:_0x12450d[_0xaca9('0x2a')];if(_0x37a953[_0xaca9('0x2c')][_0xaca9('0x3b')]){_0xbbb740[_0xaca9('0x3c')]=[{'all':!![]}];}_0xbbb740=_['merge']({},_0xbbb740,_0x37a953[_0xaca9('0x39')]);return db[_0xaca9('0x26')][_0xaca9('0x42')](_0xbbb740)[_0xaca9('0x1d')](handleEntityNotFound(_0x9e5609,null))[_0xaca9('0x1d')](respondWithResult(_0x9e5609,null))['catch'](handleError(_0x9e5609,null));};exports[_0xaca9('0x43')]=function(_0x5c9364,_0x4648d1){if(_0x5c9364['body']['id']){delete _0x5c9364[_0xaca9('0x44')]['id'];}return db[_0xaca9('0x26')]['find']({'where':{'id':_0x5c9364[_0xaca9('0x45')]['id']}})[_0xaca9('0x1d')](handleEntityNotFound(_0x4648d1,null))[_0xaca9('0x1d')](saveUpdates(_0x5c9364[_0xaca9('0x44')],null))[_0xaca9('0x1d')](respondWithResult(_0x4648d1,null))['catch'](handleError(_0x4648d1,null));};exports[_0xaca9('0x1e')]=function(_0x32c571,_0x58f5b0){return db['CmCustomField'][_0xaca9('0x42')]({'where':{'id':_0x32c571[_0xaca9('0x45')]['id']}})['then'](handleEntityNotFound(_0x58f5b0,null))[_0xaca9('0x1d')](removeEntity(_0x58f5b0,null))['catch'](handleError(_0x58f5b0,null));};exports['create']=function(_0x1bc1d4,_0x312247){var _0x1ac668;return db[_0xaca9('0x46')]['transaction'](function(_0x432d92){return db[_0xaca9('0x26')][_0xaca9('0x47')](_0x1bc1d4[_0xaca9('0x44')],{'transaction':_0x432d92})['then'](function(_0x3fd33b){_0x1ac668=_0x3fd33b;var _0x188bb4={'type':db['Sequelize']['TEXT'],'transaction':_0x432d92};switch(_0x1bc1d4[_0xaca9('0x44')]['type']){case'text':_0x188bb4['type']=db[_0xaca9('0x48')]['TEXT'];break;case _0xaca9('0x49'):_0x188bb4[_0xaca9('0x28')]=db[_0xaca9('0x48')][_0xaca9('0x4a')];break;case _0xaca9('0x4b'):_0x188bb4[_0xaca9('0x28')]=db[_0xaca9('0x48')][_0xaca9('0x4c')];_0x188bb4[_0xaca9('0x4d')]=![];break;default:}return db[_0xaca9('0x46')]['queryInterface'][_0xaca9('0x4e')](_0xaca9('0x4f'),util[_0xaca9('0x50')](_0xaca9('0x51'),_0x1ac668['id']),_0x188bb4);})[_0xaca9('0x1d')](function(){return _0x1ac668;});})[_0xaca9('0x1d')](respondWithResult(_0x312247,0xc9))[_0xaca9('0x3f')](handleError(_0x312247,null));};