Built motion from commit (unavailable).|2.5.27
[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 _0x735a=['query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','options','includeAll','findAll','rows','catch','show','keys','include','body','find','params','create','sequelize','transaction','Sequelize','text','TEXT','number','INTEGER','switch','BOOLEAN','defaultValue','queryInterface','addColumn','cm_contacts','cf_%d','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','to-csv','fs-extra','lodash','crypto','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','end','status','json','count','offset','limit','set','reject','save','update','then','sendStatus','error','stack','name','send','index','map','CmCustomField','rawAttributes','fieldName','type','key','model'];(function(_0x8c43de,_0x90ff31){var _0xa6591b=function(_0x469716){while(--_0x469716){_0x8c43de['push'](_0x8c43de['shift']());}};_0xa6591b(++_0x90ff31);}(_0x735a,0x18c));var _0xa735=function(_0x365d42,_0x5dec47){_0x365d42=_0x365d42-0x0;var _0x267066=_0x735a[_0x365d42];return _0x267066;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xa735('0x0'));var zipdir=require(_0xa735('0x1'));var jsonpatch=require(_0xa735('0x2'));var rp=require(_0xa735('0x3'));var moment=require(_0xa735('0x4'));var BPromise=require(_0xa735('0x5'));var Mustache=require('mustache');var util=require(_0xa735('0x6'));var path=require(_0xa735('0x7'));var sox=require('sox');var csv=require(_0xa735('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xa735('0x9'));var _=require(_0xa735('0xa'));var squel=require('squel');var crypto=require(_0xa735('0xb'));var jsforce=require('jsforce');var deskjs=require(_0xa735('0xc'));var toCsv=require('to-csv');var querystring=require(_0xa735('0xd'));var Papa=require('papaparse');var Redis=require(_0xa735('0xe'));var authService=require(_0xa735('0xf'));var qs=require(_0xa735('0x10'));var as=require(_0xa735('0x11'));var hardwareService=require(_0xa735('0x12'));var logger=require(_0xa735('0x13'))(_0xa735('0x14'));var utils=require(_0xa735('0x15'));var config=require(_0xa735('0x16'));var licenseUtil=require(_0xa735('0x17'));var db=require(_0xa735('0x18'))['db'];function respondWithStatusCode(_0x2b6459,_0x328feb){_0x328feb=_0x328feb||0xcc;return function(_0x45fc82){if(_0x45fc82){return _0x2b6459['sendStatus'](_0x328feb);}return _0x2b6459['status'](_0x328feb)[_0xa735('0x19')]();};}function respondWithResult(_0x22e4d7,_0xc5c7f8){_0xc5c7f8=_0xc5c7f8||0xc8;return function(_0x437dd6){if(_0x437dd6){return _0x22e4d7[_0xa735('0x1a')](_0xc5c7f8)[_0xa735('0x1b')](_0x437dd6);}};}function respondWithFilteredResult(_0xaf866a,_0x55354c){return function(_0x1ee111){if(_0x1ee111){var _0x5305c7=_0x1ee111[_0xa735('0x1c')],_0x5c141d=_0x55354c[_0xa735('0x1d')],_0x538c54=_0x55354c[_0xa735('0x1d')]+_0x55354c[_0xa735('0x1e')],_0x450602;if(_0x538c54>=_0x5305c7){_0x538c54=_0x5305c7;_0x450602=0xc8;}else{_0x450602=0xce;}_0xaf866a[_0xa735('0x1a')](_0x450602);return _0xaf866a[_0xa735('0x1f')]('Content-Range',_0x5c141d+'-'+_0x538c54+'/'+_0x5305c7)['json'](_0x1ee111);}return null;};}function patchUpdates(_0x1a7a37){return function(_0x5e0e32){try{jsonpatch['apply'](_0x5e0e32,_0x1a7a37,!![]);}catch(_0x43715){return BPromise[_0xa735('0x20')](_0x43715);}return _0x5e0e32[_0xa735('0x21')]();};}function saveUpdates(_0x481414,_0x333cb6){return function(_0x4b11a2){if(_0x4b11a2){return _0x4b11a2[_0xa735('0x22')](_0x481414)[_0xa735('0x23')](function(_0x14ec19){return _0x14ec19;});}return null;};}function removeEntity(_0x228e4c,_0x5c4d7e){return function(_0x3375e4){if(_0x3375e4){return _0x3375e4['destroy']()[_0xa735('0x23')](function(){_0x228e4c[_0xa735('0x1a')](0xcc)[_0xa735('0x19')]();});}};}function handleEntityNotFound(_0x3cc419,_0x3da811){return function(_0x370136){if(!_0x370136){_0x3cc419[_0xa735('0x24')](0x194);}return _0x370136;};}function handleError(_0x387f7f,_0x91d528){_0x91d528=_0x91d528||0x1f4;return function(_0x3a78dd){logger[_0xa735('0x25')](_0x3a78dd[_0xa735('0x26')]);if(_0x3a78dd[_0xa735('0x27')]){delete _0x3a78dd[_0xa735('0x27')];}_0x387f7f[_0xa735('0x1a')](_0x91d528)[_0xa735('0x28')](_0x3a78dd);};}exports[_0xa735('0x29')]=function(_0x24f9cb,_0x412c87){var _0x5d4751={},_0x227c79={},_0x99f3cf={'count':0x0,'rows':[]};var _0x2375f5=_[_0xa735('0x2a')](db[_0xa735('0x2b')][_0xa735('0x2c')],function(_0x1b5e6d){return{'name':_0x1b5e6d[_0xa735('0x2d')],'type':_0x1b5e6d[_0xa735('0x2e')][_0xa735('0x2f')]};});_0x227c79[_0xa735('0x30')]=_['differenceBy'](_['map'](_0x2375f5,_0xa735('0x27')),[_0xa735('0x27')]);_0x227c79[_0xa735('0x31')]=_['keys'](_0x24f9cb[_0xa735('0x31')]);_0x227c79[_0xa735('0x32')]=_[_0xa735('0x33')](_0x227c79[_0xa735('0x30')],_0x227c79[_0xa735('0x31')]);_0x5d4751[_0xa735('0x34')]=_[_0xa735('0x33')](_0x227c79[_0xa735('0x30')],qs[_0xa735('0x35')](_0x24f9cb[_0xa735('0x31')]['fields']));_0x5d4751['attributes']=_0x5d4751[_0xa735('0x34')][_0xa735('0x36')]?_0x5d4751[_0xa735('0x34')]:_0x227c79[_0xa735('0x30')];if(!_0x24f9cb[_0xa735('0x31')][_0xa735('0x37')](_0xa735('0x38'))){_0x5d4751[_0xa735('0x1e')]=qs['limit'](_0x24f9cb[_0xa735('0x31')][_0xa735('0x1e')]);_0x5d4751[_0xa735('0x1d')]=qs[_0xa735('0x1d')](_0x24f9cb[_0xa735('0x31')]['offset']);}_0x5d4751[_0xa735('0x39')]=qs['sort'](_0x24f9cb[_0xa735('0x31')][_0xa735('0x3a')]);_0x5d4751['where']=qs['filters'](_[_0xa735('0x3b')](_0x24f9cb[_0xa735('0x31')],_0x227c79['filters']),_0x2375f5);if(_0x24f9cb['query'][_0xa735('0x3c')]){_0x5d4751[_0xa735('0x3d')]=_[_0xa735('0x3e')](_0x5d4751[_0xa735('0x3d')],{'$or':_[_0xa735('0x2a')](_0x2375f5,function(_0x1d0c73){if(_0x1d0c73[_0xa735('0x2e')]!=='VIRTUAL'){var _0x59069d={};_0x59069d[_0x1d0c73[_0xa735('0x27')]]={'$like':'%'+_0x24f9cb[_0xa735('0x31')]['filter']+'%'};return _0x59069d;}})});}_0x5d4751=_[_0xa735('0x3e')]({},_0x5d4751,_0x24f9cb[_0xa735('0x3f')]);var _0x308dcf={'where':_0x5d4751[_0xa735('0x3d')]};return db[_0xa735('0x2b')][_0xa735('0x1c')](_0x308dcf)['then'](function(_0x3aa18b){_0x99f3cf[_0xa735('0x1c')]=_0x3aa18b;if(_0x24f9cb[_0xa735('0x31')][_0xa735('0x40')]){_0x5d4751['include']=[{'all':!![]}];}return db['CmCustomField'][_0xa735('0x41')](_0x5d4751);})[_0xa735('0x23')](function(_0x1c399f){_0x99f3cf[_0xa735('0x42')]=_0x1c399f;return _0x99f3cf;})[_0xa735('0x23')](respondWithFilteredResult(_0x412c87,_0x5d4751))[_0xa735('0x43')](handleError(_0x412c87,null));};exports[_0xa735('0x44')]=function(_0x16d506,_0x299722){var _0x76275f={'raw':!![],'where':{'id':_0x16d506['params']['id']}},_0x5d7e6d={};_0x5d7e6d[_0xa735('0x30')]=_[_0xa735('0x45')](db[_0xa735('0x2b')][_0xa735('0x2c')]);_0x5d7e6d['query']=_[_0xa735('0x45')](_0x16d506['query']);_0x5d7e6d['filters']=_[_0xa735('0x33')](_0x5d7e6d[_0xa735('0x30')],_0x5d7e6d['query']);_0x76275f['attributes']=_[_0xa735('0x33')](_0x5d7e6d[_0xa735('0x30')],qs['fields'](_0x16d506['query']['fields']));_0x76275f[_0xa735('0x34')]=_0x76275f[_0xa735('0x34')][_0xa735('0x36')]?_0x76275f[_0xa735('0x34')]:_0x5d7e6d[_0xa735('0x30')];if(_0x16d506[_0xa735('0x31')][_0xa735('0x40')]){_0x76275f[_0xa735('0x46')]=[{'all':!![]}];}_0x76275f=_[_0xa735('0x3e')]({},_0x76275f,_0x16d506[_0xa735('0x3f')]);return db[_0xa735('0x2b')]['find'](_0x76275f)[_0xa735('0x23')](handleEntityNotFound(_0x299722,null))[_0xa735('0x23')](respondWithResult(_0x299722,null))['catch'](handleError(_0x299722,null));};exports[_0xa735('0x22')]=function(_0x26e709,_0x3e6a13){if(_0x26e709[_0xa735('0x47')]['id']){delete _0x26e709[_0xa735('0x47')]['id'];}return db[_0xa735('0x2b')][_0xa735('0x48')]({'where':{'id':_0x26e709[_0xa735('0x49')]['id']}})[_0xa735('0x23')](handleEntityNotFound(_0x3e6a13,null))['then'](saveUpdates(_0x26e709[_0xa735('0x47')],null))['then'](respondWithResult(_0x3e6a13,null))[_0xa735('0x43')](handleError(_0x3e6a13,null));};exports['destroy']=function(_0x9c671c,_0x108e9a){return db['CmCustomField'][_0xa735('0x48')]({'where':{'id':_0x9c671c[_0xa735('0x49')]['id']}})[_0xa735('0x23')](handleEntityNotFound(_0x108e9a,null))[_0xa735('0x23')](removeEntity(_0x108e9a,null))[_0xa735('0x43')](handleError(_0x108e9a,null));};exports[_0xa735('0x4a')]=function(_0x909544,_0x262d49){var _0xa1bd90;return db[_0xa735('0x4b')][_0xa735('0x4c')](function(_0x5dad47){return db[_0xa735('0x2b')][_0xa735('0x4a')](_0x909544['body'],{'transaction':_0x5dad47})['then'](function(_0x423aa4){_0xa1bd90=_0x423aa4;var _0x261c8a={'type':db[_0xa735('0x4d')]['TEXT'],'transaction':_0x5dad47};switch(_0x909544[_0xa735('0x47')][_0xa735('0x2e')]){case _0xa735('0x4e'):_0x261c8a[_0xa735('0x2e')]=db[_0xa735('0x4d')][_0xa735('0x4f')];break;case _0xa735('0x50'):_0x261c8a[_0xa735('0x2e')]=db[_0xa735('0x4d')][_0xa735('0x51')];break;case _0xa735('0x52'):_0x261c8a[_0xa735('0x2e')]=db['Sequelize'][_0xa735('0x53')];_0x261c8a[_0xa735('0x54')]=![];break;default:}return db['sequelize'][_0xa735('0x55')][_0xa735('0x56')](_0xa735('0x57'),util['format'](_0xa735('0x58'),_0xa1bd90['id']),_0x261c8a);})[_0xa735('0x23')](function(){return _0xa1bd90;});})[_0xa735('0x23')](respondWithResult(_0x262d49,0xc9))['catch'](handleError(_0x262d49,null));};