Built motion from commit (unavailable).|2.5.21
[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 _0xaf43=['then','destroy','end','error','name','map','rawAttributes','fieldName','type','key','model','differenceBy','query','filters','intersection','fields','attributes','length','nolimit','limit','order','sort','where','pick','merge','VIRTUAL','CmCustomField','includeAll','include','findAll','rows','catch','show','keys','options','body','find','params','sequelize','transaction','Sequelize','TEXT','text','number','switch','defaultValue','queryInterface','addColumn','format','cf_%d','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','lodash','squel','crypto','to-csv','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','count','offset','set','apply','save'];(function(_0x15bc81,_0x4d4f77){var _0x59440e=function(_0x1b60f2){while(--_0x1b60f2){_0x15bc81['push'](_0x15bc81['shift']());}};_0x59440e(++_0x4d4f77);}(_0xaf43,0x182));var _0x3af4=function(_0x413feb,_0x10477f){_0x413feb=_0x413feb-0x0;var _0x40ee88=_0xaf43[_0x413feb];return _0x40ee88;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x3af4('0x0'));var rimraf=require(_0x3af4('0x1'));var zipdir=require(_0x3af4('0x2'));var jsonpatch=require(_0x3af4('0x3'));var rp=require(_0x3af4('0x4'));var moment=require(_0x3af4('0x5'));var BPromise=require(_0x3af4('0x6'));var Mustache=require(_0x3af4('0x7'));var util=require(_0x3af4('0x8'));var path=require(_0x3af4('0x9'));var sox=require(_0x3af4('0xa'));var csv=require('to-csv');var ejs=require(_0x3af4('0xb'));var fs=require('fs');var _=require(_0x3af4('0xc'));var squel=require(_0x3af4('0xd'));var crypto=require(_0x3af4('0xe'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x3af4('0xf'));var querystring=require('querystring');var Papa=require(_0x3af4('0x10'));var Redis=require(_0x3af4('0x11'));var authService=require(_0x3af4('0x12'));var qs=require(_0x3af4('0x13'));var as=require(_0x3af4('0x14'));var hardwareService=require(_0x3af4('0x15'));var logger=require(_0x3af4('0x16'))('api');var utils=require('../../config/utils');var config=require(_0x3af4('0x17'));var licenseUtil=require(_0x3af4('0x18'));var db=require(_0x3af4('0x19'))['db'];function respondWithStatusCode(_0x3894b1,_0x50ade3){_0x50ade3=_0x50ade3||0xcc;return function(_0x324fc0){if(_0x324fc0){return _0x3894b1[_0x3af4('0x1a')](_0x50ade3);}return _0x3894b1[_0x3af4('0x1b')](_0x50ade3)['end']();};}function respondWithResult(_0x4d552f,_0x491e47){_0x491e47=_0x491e47||0xc8;return function(_0x2dfe71){if(_0x2dfe71){return _0x4d552f[_0x3af4('0x1b')](_0x491e47)[_0x3af4('0x1c')](_0x2dfe71);}};}function respondWithFilteredResult(_0x3d0517,_0x55d840){return function(_0x37ebc5){if(_0x37ebc5){var _0x32c2a6=_0x37ebc5[_0x3af4('0x1d')],_0xf57afa=_0x55d840[_0x3af4('0x1e')],_0x37f70c=_0x55d840[_0x3af4('0x1e')]+_0x55d840['limit'],_0x12e40b;if(_0x37f70c>=_0x32c2a6){_0x37f70c=_0x32c2a6;_0x12e40b=0xc8;}else{_0x12e40b=0xce;}_0x3d0517[_0x3af4('0x1b')](_0x12e40b);return _0x3d0517[_0x3af4('0x1f')]('Content-Range',_0xf57afa+'-'+_0x37f70c+'/'+_0x32c2a6)[_0x3af4('0x1c')](_0x37ebc5);}return null;};}function patchUpdates(_0x2906cf){return function(_0x4c1a9d){try{jsonpatch[_0x3af4('0x20')](_0x4c1a9d,_0x2906cf,!![]);}catch(_0x19a58e){return BPromise['reject'](_0x19a58e);}return _0x4c1a9d[_0x3af4('0x21')]();};}function saveUpdates(_0x64fe2a,_0x34c3f0){return function(_0x38c977){if(_0x38c977){return _0x38c977['update'](_0x64fe2a)[_0x3af4('0x22')](function(_0x1d8b2b){return _0x1d8b2b;});}return null;};}function removeEntity(_0xebea27,_0x4d03e8){return function(_0x1b9a26){if(_0x1b9a26){return _0x1b9a26[_0x3af4('0x23')]()['then'](function(){_0xebea27['status'](0xcc)[_0x3af4('0x24')]();});}};}function handleEntityNotFound(_0x3a0bad,_0x3d519e){return function(_0x7b0d89){if(!_0x7b0d89){_0x3a0bad['sendStatus'](0x194);}return _0x7b0d89;};}function handleError(_0x164374,_0x399a12){_0x399a12=_0x399a12||0x1f4;return function(_0x6c6b8c){logger[_0x3af4('0x25')](_0x6c6b8c['stack']);if(_0x6c6b8c[_0x3af4('0x26')]){delete _0x6c6b8c[_0x3af4('0x26')];}_0x164374['status'](_0x399a12)['send'](_0x6c6b8c);};}exports['index']=function(_0x3a4df4,_0x3a9cd6){var _0x1c050c={},_0x2462bd={},_0x37c885={'count':0x0,'rows':[]};var _0x17fb9e=_[_0x3af4('0x27')](db['CmCustomField'][_0x3af4('0x28')],function(_0x59c2c3){return{'name':_0x59c2c3[_0x3af4('0x29')],'type':_0x59c2c3[_0x3af4('0x2a')][_0x3af4('0x2b')]};});_0x2462bd[_0x3af4('0x2c')]=_[_0x3af4('0x2d')](_['map'](_0x17fb9e,_0x3af4('0x26')),[_0x3af4('0x26')]);_0x2462bd[_0x3af4('0x2e')]=_['keys'](_0x3a4df4['query']);_0x2462bd[_0x3af4('0x2f')]=_[_0x3af4('0x30')](_0x2462bd[_0x3af4('0x2c')],_0x2462bd[_0x3af4('0x2e')]);_0x1c050c['attributes']=_[_0x3af4('0x30')](_0x2462bd[_0x3af4('0x2c')],qs[_0x3af4('0x31')](_0x3a4df4[_0x3af4('0x2e')][_0x3af4('0x31')]));_0x1c050c[_0x3af4('0x32')]=_0x1c050c['attributes'][_0x3af4('0x33')]?_0x1c050c['attributes']:_0x2462bd[_0x3af4('0x2c')];if(!_0x3a4df4[_0x3af4('0x2e')]['hasOwnProperty'](_0x3af4('0x34'))){_0x1c050c[_0x3af4('0x35')]=qs[_0x3af4('0x35')](_0x3a4df4[_0x3af4('0x2e')][_0x3af4('0x35')]);_0x1c050c[_0x3af4('0x1e')]=qs[_0x3af4('0x1e')](_0x3a4df4['query'][_0x3af4('0x1e')]);}_0x1c050c[_0x3af4('0x36')]=qs[_0x3af4('0x37')](_0x3a4df4[_0x3af4('0x2e')][_0x3af4('0x37')]);_0x1c050c[_0x3af4('0x38')]=qs[_0x3af4('0x2f')](_[_0x3af4('0x39')](_0x3a4df4['query'],_0x2462bd[_0x3af4('0x2f')]),_0x17fb9e);if(_0x3a4df4[_0x3af4('0x2e')]['filter']){_0x1c050c[_0x3af4('0x38')]=_[_0x3af4('0x3a')](_0x1c050c[_0x3af4('0x38')],{'$or':_[_0x3af4('0x27')](_0x17fb9e,function(_0x517816){if(_0x517816[_0x3af4('0x2a')]!==_0x3af4('0x3b')){var _0x269b05={};_0x269b05[_0x517816[_0x3af4('0x26')]]={'$like':'%'+_0x3a4df4[_0x3af4('0x2e')]['filter']+'%'};return _0x269b05;}})});}_0x1c050c=_[_0x3af4('0x3a')]({},_0x1c050c,_0x3a4df4['options']);var _0x16a15a={'where':_0x1c050c['where']};return db[_0x3af4('0x3c')]['count'](_0x16a15a)['then'](function(_0x352565){_0x37c885[_0x3af4('0x1d')]=_0x352565;if(_0x3a4df4[_0x3af4('0x2e')][_0x3af4('0x3d')]){_0x1c050c[_0x3af4('0x3e')]=[{'all':!![]}];}return db[_0x3af4('0x3c')][_0x3af4('0x3f')](_0x1c050c);})[_0x3af4('0x22')](function(_0x1886c9){_0x37c885[_0x3af4('0x40')]=_0x1886c9;return _0x37c885;})['then'](respondWithFilteredResult(_0x3a9cd6,_0x1c050c))[_0x3af4('0x41')](handleError(_0x3a9cd6,null));};exports[_0x3af4('0x42')]=function(_0x22ac35,_0x152720){var _0x564d9b={'raw':!![],'where':{'id':_0x22ac35['params']['id']}},_0x374abb={};_0x374abb[_0x3af4('0x2c')]=_[_0x3af4('0x43')](db[_0x3af4('0x3c')][_0x3af4('0x28')]);_0x374abb[_0x3af4('0x2e')]=_['keys'](_0x22ac35[_0x3af4('0x2e')]);_0x374abb['filters']=_[_0x3af4('0x30')](_0x374abb[_0x3af4('0x2c')],_0x374abb['query']);_0x564d9b[_0x3af4('0x32')]=_[_0x3af4('0x30')](_0x374abb[_0x3af4('0x2c')],qs[_0x3af4('0x31')](_0x22ac35[_0x3af4('0x2e')]['fields']));_0x564d9b['attributes']=_0x564d9b[_0x3af4('0x32')]['length']?_0x564d9b[_0x3af4('0x32')]:_0x374abb[_0x3af4('0x2c')];if(_0x22ac35[_0x3af4('0x2e')][_0x3af4('0x3d')]){_0x564d9b['include']=[{'all':!![]}];}_0x564d9b=_['merge']({},_0x564d9b,_0x22ac35[_0x3af4('0x44')]);return db['CmCustomField']['find'](_0x564d9b)[_0x3af4('0x22')](handleEntityNotFound(_0x152720,null))[_0x3af4('0x22')](respondWithResult(_0x152720,null))[_0x3af4('0x41')](handleError(_0x152720,null));};exports['update']=function(_0x558a8a,_0x160900){if(_0x558a8a[_0x3af4('0x45')]['id']){delete _0x558a8a[_0x3af4('0x45')]['id'];}return db[_0x3af4('0x3c')][_0x3af4('0x46')]({'where':{'id':_0x558a8a[_0x3af4('0x47')]['id']}})[_0x3af4('0x22')](handleEntityNotFound(_0x160900,null))['then'](saveUpdates(_0x558a8a[_0x3af4('0x45')],null))[_0x3af4('0x22')](respondWithResult(_0x160900,null))[_0x3af4('0x41')](handleError(_0x160900,null));};exports['destroy']=function(_0x22d763,_0x48b462){return db[_0x3af4('0x3c')][_0x3af4('0x46')]({'where':{'id':_0x22d763[_0x3af4('0x47')]['id']}})[_0x3af4('0x22')](handleEntityNotFound(_0x48b462,null))[_0x3af4('0x22')](removeEntity(_0x48b462,null))['catch'](handleError(_0x48b462,null));};exports['create']=function(_0x2cfa5c,_0x248355){var _0x14d102;return db[_0x3af4('0x48')][_0x3af4('0x49')](function(_0x49c1a4){return db['CmCustomField']['create'](_0x2cfa5c['body'],{'transaction':_0x49c1a4})['then'](function(_0x1cd1b4){_0x14d102=_0x1cd1b4;var _0x2c9175={'type':db[_0x3af4('0x4a')][_0x3af4('0x4b')],'transaction':_0x49c1a4};switch(_0x2cfa5c['body']['type']){case _0x3af4('0x4c'):_0x2c9175[_0x3af4('0x2a')]=db[_0x3af4('0x4a')][_0x3af4('0x4b')];break;case _0x3af4('0x4d'):_0x2c9175[_0x3af4('0x2a')]=db[_0x3af4('0x4a')]['INTEGER'];break;case _0x3af4('0x4e'):_0x2c9175[_0x3af4('0x2a')]=db[_0x3af4('0x4a')]['BOOLEAN'];_0x2c9175[_0x3af4('0x4f')]=![];break;default:}return db['sequelize'][_0x3af4('0x50')][_0x3af4('0x51')]('cm_contacts',util[_0x3af4('0x52')](_0x3af4('0x53'),_0x14d102['id']),_0x2c9175);})[_0x3af4('0x22')](function(){return _0x14d102;});})[_0x3af4('0x22')](respondWithResult(_0x248355,0xc9))['catch'](handleError(_0x248355,null));};