Built motion from commit (unavailable).|2.5.14
[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 _0xb957=['merge','options','includeAll','include','findAll','rows','show','keys','find','catch','body','params','create','sequelize','transaction','Sequelize','TEXT','text','number','INTEGER','switch','BOOLEAN','defaultValue','queryInterface','addColumn','format','rimraf','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','lodash','squel','crypto','querystring','papaparse','ioredis','../../config/license/hardware','../../config/logger','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','count','offset','set','Content-Range','apply','save','update','then','destroy','error','stack','name','send','CmCustomField','rawAttributes','fieldName','type','key','model','map','query','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','limit','order','sort','where','pick','filter'];(function(_0x2eabd6,_0x5942be){var _0x158c26=function(_0x1af466){while(--_0x1af466){_0x2eabd6['push'](_0x2eabd6['shift']());}};_0x158c26(++_0x5942be);}(_0xb957,0x6d));var _0x7b95=function(_0x3afc8a,_0x262e99){_0x3afc8a=_0x3afc8a-0x0;var _0x4fbfa3=_0xb957[_0x3afc8a];return _0x4fbfa3;};'use strict';var pdf=require('html-pdf');var emlformat=require('eml-format');var rimraf=require(_0x7b95('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x7b95('0x1'));var rp=require(_0x7b95('0x2'));var moment=require(_0x7b95('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x7b95('0x4'));var util=require(_0x7b95('0x5'));var path=require(_0x7b95('0x6'));var sox=require(_0x7b95('0x7'));var csv=require(_0x7b95('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x7b95('0x9'));var squel=require(_0x7b95('0xa'));var crypto=require(_0x7b95('0xb'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x7b95('0x8'));var querystring=require(_0x7b95('0xc'));var Papa=require(_0x7b95('0xd'));var Redis=require(_0x7b95('0xe'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x7b95('0xf'));var logger=require(_0x7b95('0x10'))('api');var utils=require('../../config/utils');var config=require(_0x7b95('0x11'));var licenseUtil=require(_0x7b95('0x12'));var db=require(_0x7b95('0x13'))['db'];function respondWithStatusCode(_0x534650,_0x5df477){_0x5df477=_0x5df477||0xcc;return function(_0x399542){if(_0x399542){return _0x534650['sendStatus'](_0x5df477);}return _0x534650[_0x7b95('0x14')](_0x5df477)[_0x7b95('0x15')]();};}function respondWithResult(_0x7e63d3,_0x3818bd){_0x3818bd=_0x3818bd||0xc8;return function(_0x5dedf2){if(_0x5dedf2){return _0x7e63d3['status'](_0x3818bd)[_0x7b95('0x16')](_0x5dedf2);}};}function respondWithFilteredResult(_0x1fd4e5,_0x241ccf){return function(_0x1fa5ad){if(_0x1fa5ad){var _0x87f9c1=_0x1fa5ad[_0x7b95('0x17')],_0x2ee847=_0x241ccf[_0x7b95('0x18')],_0xa1874e=_0x241ccf[_0x7b95('0x18')]+_0x241ccf['limit'],_0x44e836;if(_0xa1874e>=_0x87f9c1){_0xa1874e=_0x87f9c1;_0x44e836=0xc8;}else{_0x44e836=0xce;}_0x1fd4e5[_0x7b95('0x14')](_0x44e836);return _0x1fd4e5[_0x7b95('0x19')](_0x7b95('0x1a'),_0x2ee847+'-'+_0xa1874e+'/'+_0x87f9c1)[_0x7b95('0x16')](_0x1fa5ad);}return null;};}function patchUpdates(_0x3678d9){return function(_0xc26a6e){try{jsonpatch[_0x7b95('0x1b')](_0xc26a6e,_0x3678d9,!![]);}catch(_0x3b0325){return BPromise['reject'](_0x3b0325);}return _0xc26a6e[_0x7b95('0x1c')]();};}function saveUpdates(_0x342ecc,_0x32fe1c){return function(_0x13c60e){if(_0x13c60e){return _0x13c60e[_0x7b95('0x1d')](_0x342ecc)[_0x7b95('0x1e')](function(_0x4157c3){return _0x4157c3;});}return null;};}function removeEntity(_0x1657bd,_0x2144c1){return function(_0x3deae3){if(_0x3deae3){return _0x3deae3[_0x7b95('0x1f')]()[_0x7b95('0x1e')](function(){_0x1657bd[_0x7b95('0x14')](0xcc)[_0x7b95('0x15')]();});}};}function handleEntityNotFound(_0x4acc74,_0x1c0a41){return function(_0x1ff81c){if(!_0x1ff81c){_0x4acc74['sendStatus'](0x194);}return _0x1ff81c;};}function handleError(_0x2e7795,_0x39b5fe){_0x39b5fe=_0x39b5fe||0x1f4;return function(_0x184d4f){logger[_0x7b95('0x20')](_0x184d4f[_0x7b95('0x21')]);if(_0x184d4f[_0x7b95('0x22')]){delete _0x184d4f[_0x7b95('0x22')];}_0x2e7795['status'](_0x39b5fe)[_0x7b95('0x23')](_0x184d4f);};}exports['index']=function(_0x2fdc2d,_0x41d863){var _0x1b6e6b={},_0x1c7a56={},_0x43504f={'count':0x0,'rows':[]};var _0xaa3991=_['map'](db[_0x7b95('0x24')][_0x7b95('0x25')],function(_0x47cd20){return{'name':_0x47cd20[_0x7b95('0x26')],'type':_0x47cd20[_0x7b95('0x27')][_0x7b95('0x28')]};});_0x1c7a56[_0x7b95('0x29')]=_['differenceBy'](_[_0x7b95('0x2a')](_0xaa3991,_0x7b95('0x22')),[_0x7b95('0x22')]);_0x1c7a56['query']=_['keys'](_0x2fdc2d[_0x7b95('0x2b')]);_0x1c7a56[_0x7b95('0x2c')]=_['intersection'](_0x1c7a56[_0x7b95('0x29')],_0x1c7a56['query']);_0x1b6e6b[_0x7b95('0x2d')]=_[_0x7b95('0x2e')](_0x1c7a56['model'],qs['fields'](_0x2fdc2d[_0x7b95('0x2b')][_0x7b95('0x2f')]));_0x1b6e6b[_0x7b95('0x2d')]=_0x1b6e6b[_0x7b95('0x2d')][_0x7b95('0x30')]?_0x1b6e6b[_0x7b95('0x2d')]:_0x1c7a56['model'];if(!_0x2fdc2d[_0x7b95('0x2b')][_0x7b95('0x31')](_0x7b95('0x32'))){_0x1b6e6b[_0x7b95('0x33')]=qs['limit'](_0x2fdc2d['query'][_0x7b95('0x33')]);_0x1b6e6b[_0x7b95('0x18')]=qs[_0x7b95('0x18')](_0x2fdc2d[_0x7b95('0x2b')][_0x7b95('0x18')]);}_0x1b6e6b[_0x7b95('0x34')]=qs[_0x7b95('0x35')](_0x2fdc2d[_0x7b95('0x2b')][_0x7b95('0x35')]);_0x1b6e6b[_0x7b95('0x36')]=qs[_0x7b95('0x2c')](_[_0x7b95('0x37')](_0x2fdc2d[_0x7b95('0x2b')],_0x1c7a56['filters']),_0xaa3991);if(_0x2fdc2d[_0x7b95('0x2b')][_0x7b95('0x38')]){_0x1b6e6b[_0x7b95('0x36')]=_[_0x7b95('0x39')](_0x1b6e6b[_0x7b95('0x36')],{'$or':_[_0x7b95('0x2a')](_0xaa3991,function(_0x5fd466){if(_0x5fd466[_0x7b95('0x27')]!=='VIRTUAL'){var _0x541d14={};_0x541d14[_0x5fd466[_0x7b95('0x22')]]={'$like':'%'+_0x2fdc2d[_0x7b95('0x2b')][_0x7b95('0x38')]+'%'};return _0x541d14;}})});}_0x1b6e6b=_[_0x7b95('0x39')]({},_0x1b6e6b,_0x2fdc2d[_0x7b95('0x3a')]);var _0x49851a={'where':_0x1b6e6b[_0x7b95('0x36')]};return db[_0x7b95('0x24')]['count'](_0x49851a)['then'](function(_0x41a8a7){_0x43504f[_0x7b95('0x17')]=_0x41a8a7;if(_0x2fdc2d['query'][_0x7b95('0x3b')]){_0x1b6e6b[_0x7b95('0x3c')]=[{'all':!![]}];}return db[_0x7b95('0x24')][_0x7b95('0x3d')](_0x1b6e6b);})['then'](function(_0x482c11){_0x43504f[_0x7b95('0x3e')]=_0x482c11;return _0x43504f;})[_0x7b95('0x1e')](respondWithFilteredResult(_0x41d863,_0x1b6e6b))['catch'](handleError(_0x41d863,null));};exports[_0x7b95('0x3f')]=function(_0x587ec2,_0x3a1668){var _0x548075={'raw':!![],'where':{'id':_0x587ec2['params']['id']}},_0x33c375={};_0x33c375['model']=_['keys'](db[_0x7b95('0x24')][_0x7b95('0x25')]);_0x33c375[_0x7b95('0x2b')]=_[_0x7b95('0x40')](_0x587ec2[_0x7b95('0x2b')]);_0x33c375[_0x7b95('0x2c')]=_[_0x7b95('0x2e')](_0x33c375[_0x7b95('0x29')],_0x33c375[_0x7b95('0x2b')]);_0x548075[_0x7b95('0x2d')]=_[_0x7b95('0x2e')](_0x33c375['model'],qs['fields'](_0x587ec2[_0x7b95('0x2b')][_0x7b95('0x2f')]));_0x548075[_0x7b95('0x2d')]=_0x548075['attributes'][_0x7b95('0x30')]?_0x548075[_0x7b95('0x2d')]:_0x33c375[_0x7b95('0x29')];if(_0x587ec2['query'][_0x7b95('0x3b')]){_0x548075['include']=[{'all':!![]}];}_0x548075=_[_0x7b95('0x39')]({},_0x548075,_0x587ec2[_0x7b95('0x3a')]);return db[_0x7b95('0x24')][_0x7b95('0x41')](_0x548075)[_0x7b95('0x1e')](handleEntityNotFound(_0x3a1668,null))[_0x7b95('0x1e')](respondWithResult(_0x3a1668,null))[_0x7b95('0x42')](handleError(_0x3a1668,null));};exports[_0x7b95('0x1d')]=function(_0x168f80,_0x247a6e){if(_0x168f80[_0x7b95('0x43')]['id']){delete _0x168f80[_0x7b95('0x43')]['id'];}return db['CmCustomField'][_0x7b95('0x41')]({'where':{'id':_0x168f80[_0x7b95('0x44')]['id']}})['then'](handleEntityNotFound(_0x247a6e,null))[_0x7b95('0x1e')](saveUpdates(_0x168f80[_0x7b95('0x43')],null))['then'](respondWithResult(_0x247a6e,null))['catch'](handleError(_0x247a6e,null));};exports[_0x7b95('0x1f')]=function(_0x30d7e3,_0x1b13a8){return db[_0x7b95('0x24')][_0x7b95('0x41')]({'where':{'id':_0x30d7e3[_0x7b95('0x44')]['id']}})[_0x7b95('0x1e')](handleEntityNotFound(_0x1b13a8,null))[_0x7b95('0x1e')](removeEntity(_0x1b13a8,null))[_0x7b95('0x42')](handleError(_0x1b13a8,null));};exports[_0x7b95('0x45')]=function(_0x1e8b41,_0x72281e){var _0x58f2e1;return db[_0x7b95('0x46')][_0x7b95('0x47')](function(_0x4a9540){return db[_0x7b95('0x24')][_0x7b95('0x45')](_0x1e8b41[_0x7b95('0x43')],{'transaction':_0x4a9540})['then'](function(_0x33e1b1){_0x58f2e1=_0x33e1b1;var _0x573a23={'type':db[_0x7b95('0x48')][_0x7b95('0x49')],'transaction':_0x4a9540};switch(_0x1e8b41[_0x7b95('0x43')][_0x7b95('0x27')]){case _0x7b95('0x4a'):_0x573a23[_0x7b95('0x27')]=db[_0x7b95('0x48')][_0x7b95('0x49')];break;case _0x7b95('0x4b'):_0x573a23['type']=db[_0x7b95('0x48')][_0x7b95('0x4c')];break;case _0x7b95('0x4d'):_0x573a23['type']=db[_0x7b95('0x48')][_0x7b95('0x4e')];_0x573a23[_0x7b95('0x4f')]=![];break;default:}return db[_0x7b95('0x46')][_0x7b95('0x50')][_0x7b95('0x51')]('cm_contacts',util[_0x7b95('0x52')]('cf_%d',_0x58f2e1['id']),_0x573a23);})[_0x7b95('0x1e')](function(){return _0x58f2e1;});})[_0x7b95('0x1e')](respondWithResult(_0x72281e,0xc9))[_0x7b95('0x42')](handleError(_0x72281e,null));};