Built motion from commit (unavailable).|2.4.20
[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 _0xc0ea=['limit','set','Content-Range','apply','update','then','destroy','error','name','send','index','fieldName','key','differenceBy','map','query','keys','intersection','model','fields','attributes','length','nolimit','order','sort','where','filters','pick','merge','type','VIRTUAL','filter','options','CmCustomField','count','findAll','rows','catch','rawAttributes','include','body','find','params','create','sequelize','transaction','Sequelize','TEXT','text','number','INTEGER','switch','BOOLEAN','defaultValue','format','cf_%d','html-pdf','eml-format','rimraf','fast-json-patch','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','offset'];(function(_0xa464c9,_0x7c86d8){var _0x3d73c4=function(_0x5c2056){while(--_0x5c2056){_0xa464c9['push'](_0xa464c9['shift']());}};_0x3d73c4(++_0x7c86d8);}(_0xc0ea,0x8f));var _0xac0e=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0xc0ea[_0x3dd15e];return _0x231fd0;};'use strict';var pdf=require(_0xac0e('0x0'));var emlformat=require(_0xac0e('0x1'));var rimraf=require(_0xac0e('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0xac0e('0x3'));var rp=require('request-promise');var moment=require(_0xac0e('0x4'));var BPromise=require(_0xac0e('0x5'));var Mustache=require(_0xac0e('0x6'));var util=require(_0xac0e('0x7'));var path=require(_0xac0e('0x8'));var sox=require(_0xac0e('0x9'));var csv=require(_0xac0e('0xa'));var ejs=require(_0xac0e('0xb'));var fs=require('fs');var _=require(_0xac0e('0xc'));var squel=require('squel');var crypto=require(_0xac0e('0xd'));var jsforce=require(_0xac0e('0xe'));var deskjs=require(_0xac0e('0xf'));var toCsv=require('to-csv');var querystring=require(_0xac0e('0x10'));var Papa=require(_0xac0e('0x11'));var Redis=require(_0xac0e('0x12'));var authService=require(_0xac0e('0x13'));var qs=require(_0xac0e('0x14'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xac0e('0x15'))(_0xac0e('0x16'));var utils=require(_0xac0e('0x17'));var config=require(_0xac0e('0x18'));var db=require(_0xac0e('0x19'))['db'];function respondWithStatusCode(_0x10df9e,_0x5e96a0){_0x5e96a0=_0x5e96a0||0xcc;return function(_0x3bc3ac){if(_0x3bc3ac){return _0x10df9e[_0xac0e('0x1a')](_0x5e96a0);}return _0x10df9e[_0xac0e('0x1b')](_0x5e96a0)[_0xac0e('0x1c')]();};}function respondWithResult(_0x19686b,_0x22e4b1){_0x22e4b1=_0x22e4b1||0xc8;return function(_0x41b2c7){if(_0x41b2c7){return _0x19686b['status'](_0x22e4b1)[_0xac0e('0x1d')](_0x41b2c7);}};}function respondWithFilteredResult(_0x496c62,_0x3a270e){return function(_0x38fe91){if(_0x38fe91){var _0x51dc81=_0x38fe91['count'],_0x3bea99=_0x3a270e[_0xac0e('0x1e')],_0x44c9a5=_0x3a270e[_0xac0e('0x1e')]+_0x3a270e[_0xac0e('0x1f')],_0x666729;if(_0x44c9a5>=_0x51dc81){_0x44c9a5=_0x51dc81;_0x666729=0xc8;}else{_0x666729=0xce;}_0x496c62[_0xac0e('0x1b')](_0x666729);return _0x496c62[_0xac0e('0x20')](_0xac0e('0x21'),_0x3bea99+'-'+_0x44c9a5+'/'+_0x51dc81)[_0xac0e('0x1d')](_0x38fe91);}return null;};}function patchUpdates(_0x2bbc6c){return function(_0x5b7bfd){try{jsonpatch[_0xac0e('0x22')](_0x5b7bfd,_0x2bbc6c,!![]);}catch(_0x52bb0b){return BPromise['reject'](_0x52bb0b);}return _0x5b7bfd['save']();};}function saveUpdates(_0x27602d,_0x92f4b){return function(_0x1f96ce){if(_0x1f96ce){return _0x1f96ce[_0xac0e('0x23')](_0x27602d)[_0xac0e('0x24')](function(_0x5908b2){return _0x5908b2;});}return null;};}function removeEntity(_0x2aa462,_0x23373c){return function(_0x5778a9){if(_0x5778a9){return _0x5778a9[_0xac0e('0x25')]()[_0xac0e('0x24')](function(){_0x2aa462[_0xac0e('0x1b')](0xcc)[_0xac0e('0x1c')]();});}};}function handleEntityNotFound(_0x3ae41d,_0x5c4781){return function(_0x37e418){if(!_0x37e418){_0x3ae41d[_0xac0e('0x1a')](0x194);}return _0x37e418;};}function handleError(_0x1d2205,_0xe40d35){_0xe40d35=_0xe40d35||0x1f4;return function(_0x3cb090){logger[_0xac0e('0x26')](_0x3cb090['stack']);if(_0x3cb090[_0xac0e('0x27')]){delete _0x3cb090[_0xac0e('0x27')];}_0x1d2205[_0xac0e('0x1b')](_0xe40d35)[_0xac0e('0x28')](_0x3cb090);};}exports[_0xac0e('0x29')]=function(_0x790d24,_0x4936d7){var _0x160a6f={},_0x5a3d74={},_0x330aa6={'count':0x0,'rows':[]};var _0x453240=_['map'](db['CmCustomField']['rawAttributes'],function(_0x5f03ad){return{'name':_0x5f03ad[_0xac0e('0x2a')],'type':_0x5f03ad['type'][_0xac0e('0x2b')]};});_0x5a3d74['model']=_[_0xac0e('0x2c')](_[_0xac0e('0x2d')](_0x453240,'name'),[_0xac0e('0x27')]);_0x5a3d74[_0xac0e('0x2e')]=_[_0xac0e('0x2f')](_0x790d24[_0xac0e('0x2e')]);_0x5a3d74['filters']=_[_0xac0e('0x30')](_0x5a3d74['model'],_0x5a3d74[_0xac0e('0x2e')]);_0x160a6f['attributes']=_['intersection'](_0x5a3d74[_0xac0e('0x31')],qs[_0xac0e('0x32')](_0x790d24[_0xac0e('0x2e')][_0xac0e('0x32')]));_0x160a6f[_0xac0e('0x33')]=_0x160a6f[_0xac0e('0x33')][_0xac0e('0x34')]?_0x160a6f[_0xac0e('0x33')]:_0x5a3d74[_0xac0e('0x31')];if(!_0x790d24[_0xac0e('0x2e')]['hasOwnProperty'](_0xac0e('0x35'))){_0x160a6f[_0xac0e('0x1f')]=qs[_0xac0e('0x1f')](_0x790d24[_0xac0e('0x2e')][_0xac0e('0x1f')]);_0x160a6f[_0xac0e('0x1e')]=qs[_0xac0e('0x1e')](_0x790d24['query']['offset']);}_0x160a6f[_0xac0e('0x36')]=qs[_0xac0e('0x37')](_0x790d24[_0xac0e('0x2e')]['sort']);_0x160a6f[_0xac0e('0x38')]=qs[_0xac0e('0x39')](_[_0xac0e('0x3a')](_0x790d24['query'],_0x5a3d74[_0xac0e('0x39')]));if(_0x790d24[_0xac0e('0x2e')]['filter']){_0x160a6f['where']=_[_0xac0e('0x3b')](_0x160a6f['where'],{'$or':_[_0xac0e('0x2d')](_0x453240,function(_0xdb3116){if(_0xdb3116[_0xac0e('0x3c')]!==_0xac0e('0x3d')){var _0x3711c9={};_0x3711c9[_0xdb3116[_0xac0e('0x27')]]={'$like':'%'+_0x790d24[_0xac0e('0x2e')][_0xac0e('0x3e')]+'%'};return _0x3711c9;}})});}_0x160a6f=_[_0xac0e('0x3b')]({},_0x160a6f,_0x790d24[_0xac0e('0x3f')]);var _0x10c07c={'where':_0x160a6f[_0xac0e('0x38')]};return db[_0xac0e('0x40')][_0xac0e('0x41')](_0x10c07c)[_0xac0e('0x24')](function(_0x5d1b56){_0x330aa6['count']=_0x5d1b56;if(_0x790d24[_0xac0e('0x2e')]['includeAll']){_0x160a6f['include']=[{'all':!![]}];}return db[_0xac0e('0x40')][_0xac0e('0x42')](_0x160a6f);})['then'](function(_0x146186){_0x330aa6[_0xac0e('0x43')]=_0x146186;return _0x330aa6;})['then'](respondWithFilteredResult(_0x4936d7,_0x160a6f))[_0xac0e('0x44')](handleError(_0x4936d7,null));};exports['show']=function(_0x52227f,_0x291883){var _0x3cb54f={'raw':!![],'where':{'id':_0x52227f['params']['id']}},_0x19099e={};_0x19099e['model']=_['keys'](db[_0xac0e('0x40')][_0xac0e('0x45')]);_0x19099e[_0xac0e('0x2e')]=_[_0xac0e('0x2f')](_0x52227f[_0xac0e('0x2e')]);_0x19099e[_0xac0e('0x39')]=_[_0xac0e('0x30')](_0x19099e['model'],_0x19099e[_0xac0e('0x2e')]);_0x3cb54f['attributes']=_[_0xac0e('0x30')](_0x19099e[_0xac0e('0x31')],qs[_0xac0e('0x32')](_0x52227f[_0xac0e('0x2e')][_0xac0e('0x32')]));_0x3cb54f[_0xac0e('0x33')]=_0x3cb54f['attributes'][_0xac0e('0x34')]?_0x3cb54f[_0xac0e('0x33')]:_0x19099e[_0xac0e('0x31')];if(_0x52227f[_0xac0e('0x2e')]['includeAll']){_0x3cb54f[_0xac0e('0x46')]=[{'all':!![]}];}_0x3cb54f=_[_0xac0e('0x3b')]({},_0x3cb54f,_0x52227f[_0xac0e('0x3f')]);return db[_0xac0e('0x40')]['find'](_0x3cb54f)[_0xac0e('0x24')](handleEntityNotFound(_0x291883,null))['then'](respondWithResult(_0x291883,null))[_0xac0e('0x44')](handleError(_0x291883,null));};exports['update']=function(_0x17cac1,_0x1a4246){if(_0x17cac1[_0xac0e('0x47')]['id']){delete _0x17cac1[_0xac0e('0x47')]['id'];}return db['CmCustomField'][_0xac0e('0x48')]({'where':{'id':_0x17cac1[_0xac0e('0x49')]['id']}})[_0xac0e('0x24')](handleEntityNotFound(_0x1a4246,null))[_0xac0e('0x24')](saveUpdates(_0x17cac1['body'],null))[_0xac0e('0x24')](respondWithResult(_0x1a4246,null))[_0xac0e('0x44')](handleError(_0x1a4246,null));};exports['destroy']=function(_0x46af7c,_0x336f8f){return db['CmCustomField'][_0xac0e('0x48')]({'where':{'id':_0x46af7c[_0xac0e('0x49')]['id']}})[_0xac0e('0x24')](handleEntityNotFound(_0x336f8f,null))['then'](removeEntity(_0x336f8f,null))[_0xac0e('0x44')](handleError(_0x336f8f,null));};exports[_0xac0e('0x4a')]=function(_0x1f006a,_0x48d853){var _0x25db2e;return db[_0xac0e('0x4b')][_0xac0e('0x4c')](function(_0x2ceba5){return db[_0xac0e('0x40')][_0xac0e('0x4a')](_0x1f006a['body'],{'transaction':_0x2ceba5})[_0xac0e('0x24')](function(_0x3581fb){_0x25db2e=_0x3581fb;var _0x1e26d8={'type':db[_0xac0e('0x4d')][_0xac0e('0x4e')],'transaction':_0x2ceba5};switch(_0x1f006a[_0xac0e('0x47')][_0xac0e('0x3c')]){case _0xac0e('0x4f'):_0x1e26d8[_0xac0e('0x3c')]=db[_0xac0e('0x4d')][_0xac0e('0x4e')];break;case _0xac0e('0x50'):_0x1e26d8[_0xac0e('0x3c')]=db[_0xac0e('0x4d')][_0xac0e('0x51')];break;case _0xac0e('0x52'):_0x1e26d8['type']=db[_0xac0e('0x4d')][_0xac0e('0x53')];_0x1e26d8[_0xac0e('0x54')]=![];break;default:}return db[_0xac0e('0x4b')]['queryInterface']['addColumn']('cm_contacts',util[_0xac0e('0x55')](_0xac0e('0x56'),_0x25db2e['id']),_0x1e26d8);})['then'](function(){return _0x25db2e;});})[_0xac0e('0x24')](respondWithResult(_0x48d853,0xc9))[_0xac0e('0x44')](handleError(_0x48d853,null));};