Built motion from commit (unavailable).|2.5.28
[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 _0x061d=['sox','ejs','fs-extra','lodash','squel','crypto','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','offset','set','Content-Range','json','apply','reject','save','update','error','stack','name','send','map','CmCustomField','rawAttributes','fieldName','key','model','differenceBy','query','intersection','attributes','fields','length','hasOwnProperty','limit','sort','filters','pick','where','merge','type','VIRTUAL','filter','options','count','then','includeAll','include','findAll','rows','catch','show','params','keys','body','find','create','transaction','Sequelize','TEXT','text','number','INTEGER','BOOLEAN','defaultValue','sequelize','queryInterface','cm_contacts','format','zip-dir','request-promise','moment','bluebird','mustache','util','path'];(function(_0x540c10,_0x45ba7e){var _0x27530b=function(_0xcb202b){while(--_0xcb202b){_0x540c10['push'](_0x540c10['shift']());}};_0x27530b(++_0x45ba7e);}(_0x061d,0xad));var _0xd061=function(_0x12d033,_0x25fa2f){_0x12d033=_0x12d033-0x0;var _0x3b4e80=_0x061d[_0x12d033];return _0x3b4e80;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0xd061('0x0'));var jsonpatch=require('fast-json-patch');var rp=require(_0xd061('0x1'));var moment=require(_0xd061('0x2'));var BPromise=require(_0xd061('0x3'));var Mustache=require(_0xd061('0x4'));var util=require(_0xd061('0x5'));var path=require(_0xd061('0x6'));var sox=require(_0xd061('0x7'));var csv=require('to-csv');var ejs=require(_0xd061('0x8'));var fs=require('fs');var fs_extra=require(_0xd061('0x9'));var _=require(_0xd061('0xa'));var squel=require(_0xd061('0xb'));var crypto=require(_0xd061('0xc'));var jsforce=require('jsforce');var deskjs=require(_0xd061('0xd'));var toCsv=require(_0xd061('0xe'));var querystring=require(_0xd061('0xf'));var Papa=require(_0xd061('0x10'));var Redis=require(_0xd061('0x11'));var authService=require(_0xd061('0x12'));var qs=require(_0xd061('0x13'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xd061('0x14'));var logger=require(_0xd061('0x15'))(_0xd061('0x16'));var utils=require(_0xd061('0x17'));var config=require(_0xd061('0x18'));var licenseUtil=require(_0xd061('0x19'));var db=require(_0xd061('0x1a'))['db'];function respondWithStatusCode(_0x50364a,_0x5e0635){_0x5e0635=_0x5e0635||0xcc;return function(_0x37fc0f){if(_0x37fc0f){return _0x50364a[_0xd061('0x1b')](_0x5e0635);}return _0x50364a[_0xd061('0x1c')](_0x5e0635)[_0xd061('0x1d')]();};}function respondWithResult(_0x6945df,_0x3a8d76){_0x3a8d76=_0x3a8d76||0xc8;return function(_0x2e95a5){if(_0x2e95a5){return _0x6945df['status'](_0x3a8d76)['json'](_0x2e95a5);}};}function respondWithFilteredResult(_0x3d94c1,_0x2b9e6b){return function(_0x29658e){if(_0x29658e){var _0x136b83=_0x29658e['count'],_0x46889c=_0x2b9e6b[_0xd061('0x1e')],_0x29e74f=_0x2b9e6b[_0xd061('0x1e')]+_0x2b9e6b['limit'],_0x40d2ce;if(_0x29e74f>=_0x136b83){_0x29e74f=_0x136b83;_0x40d2ce=0xc8;}else{_0x40d2ce=0xce;}_0x3d94c1[_0xd061('0x1c')](_0x40d2ce);return _0x3d94c1[_0xd061('0x1f')](_0xd061('0x20'),_0x46889c+'-'+_0x29e74f+'/'+_0x136b83)[_0xd061('0x21')](_0x29658e);}return null;};}function patchUpdates(_0x573e2a){return function(_0x59f7b1){try{jsonpatch[_0xd061('0x22')](_0x59f7b1,_0x573e2a,!![]);}catch(_0x12fc25){return BPromise[_0xd061('0x23')](_0x12fc25);}return _0x59f7b1[_0xd061('0x24')]();};}function saveUpdates(_0x4860bf,_0x4437c5){return function(_0x5b1cf2){if(_0x5b1cf2){return _0x5b1cf2[_0xd061('0x25')](_0x4860bf)['then'](function(_0x13a9b5){return _0x13a9b5;});}return null;};}function removeEntity(_0x3905d9,_0x513942){return function(_0x5574a1){if(_0x5574a1){return _0x5574a1['destroy']()['then'](function(){_0x3905d9['status'](0xcc)[_0xd061('0x1d')]();});}};}function handleEntityNotFound(_0x1d87d2,_0x58ffb2){return function(_0x2933ae){if(!_0x2933ae){_0x1d87d2[_0xd061('0x1b')](0x194);}return _0x2933ae;};}function handleError(_0x3dee0b,_0x2a8884){_0x2a8884=_0x2a8884||0x1f4;return function(_0x422012){logger[_0xd061('0x26')](_0x422012[_0xd061('0x27')]);if(_0x422012[_0xd061('0x28')]){delete _0x422012['name'];}_0x3dee0b[_0xd061('0x1c')](_0x2a8884)[_0xd061('0x29')](_0x422012);};}exports['index']=function(_0x552900,_0x53d132){var _0x2d2c1a={},_0x10cfac={},_0x56b1f6={'count':0x0,'rows':[]};var _0x31719e=_[_0xd061('0x2a')](db[_0xd061('0x2b')][_0xd061('0x2c')],function(_0x5eb712){return{'name':_0x5eb712[_0xd061('0x2d')],'type':_0x5eb712['type'][_0xd061('0x2e')]};});_0x10cfac[_0xd061('0x2f')]=_[_0xd061('0x30')](_[_0xd061('0x2a')](_0x31719e,'name'),['name']);_0x10cfac[_0xd061('0x31')]=_['keys'](_0x552900[_0xd061('0x31')]);_0x10cfac['filters']=_[_0xd061('0x32')](_0x10cfac[_0xd061('0x2f')],_0x10cfac['query']);_0x2d2c1a[_0xd061('0x33')]=_[_0xd061('0x32')](_0x10cfac[_0xd061('0x2f')],qs[_0xd061('0x34')](_0x552900[_0xd061('0x31')][_0xd061('0x34')]));_0x2d2c1a[_0xd061('0x33')]=_0x2d2c1a[_0xd061('0x33')][_0xd061('0x35')]?_0x2d2c1a[_0xd061('0x33')]:_0x10cfac[_0xd061('0x2f')];if(!_0x552900[_0xd061('0x31')][_0xd061('0x36')]('nolimit')){_0x2d2c1a[_0xd061('0x37')]=qs[_0xd061('0x37')](_0x552900[_0xd061('0x31')][_0xd061('0x37')]);_0x2d2c1a['offset']=qs['offset'](_0x552900['query'][_0xd061('0x1e')]);}_0x2d2c1a['order']=qs[_0xd061('0x38')](_0x552900[_0xd061('0x31')][_0xd061('0x38')]);_0x2d2c1a['where']=qs[_0xd061('0x39')](_[_0xd061('0x3a')](_0x552900[_0xd061('0x31')],_0x10cfac[_0xd061('0x39')]),_0x31719e);if(_0x552900['query']['filter']){_0x2d2c1a[_0xd061('0x3b')]=_[_0xd061('0x3c')](_0x2d2c1a['where'],{'$or':_[_0xd061('0x2a')](_0x31719e,function(_0x37f637){if(_0x37f637[_0xd061('0x3d')]!==_0xd061('0x3e')){var _0x4fbf2d={};_0x4fbf2d[_0x37f637['name']]={'$like':'%'+_0x552900[_0xd061('0x31')][_0xd061('0x3f')]+'%'};return _0x4fbf2d;}})});}_0x2d2c1a=_['merge']({},_0x2d2c1a,_0x552900[_0xd061('0x40')]);var _0x2955ac={'where':_0x2d2c1a[_0xd061('0x3b')]};return db[_0xd061('0x2b')][_0xd061('0x41')](_0x2955ac)[_0xd061('0x42')](function(_0x4ea6b0){_0x56b1f6['count']=_0x4ea6b0;if(_0x552900[_0xd061('0x31')][_0xd061('0x43')]){_0x2d2c1a[_0xd061('0x44')]=[{'all':!![]}];}return db[_0xd061('0x2b')][_0xd061('0x45')](_0x2d2c1a);})[_0xd061('0x42')](function(_0x4e49c4){_0x56b1f6[_0xd061('0x46')]=_0x4e49c4;return _0x56b1f6;})[_0xd061('0x42')](respondWithFilteredResult(_0x53d132,_0x2d2c1a))[_0xd061('0x47')](handleError(_0x53d132,null));};exports[_0xd061('0x48')]=function(_0x355561,_0x1e1967){var _0x44819c={'raw':!![],'where':{'id':_0x355561[_0xd061('0x49')]['id']}},_0x571267={};_0x571267[_0xd061('0x2f')]=_[_0xd061('0x4a')](db[_0xd061('0x2b')][_0xd061('0x2c')]);_0x571267['query']=_[_0xd061('0x4a')](_0x355561[_0xd061('0x31')]);_0x571267['filters']=_[_0xd061('0x32')](_0x571267[_0xd061('0x2f')],_0x571267['query']);_0x44819c[_0xd061('0x33')]=_[_0xd061('0x32')](_0x571267[_0xd061('0x2f')],qs[_0xd061('0x34')](_0x355561[_0xd061('0x31')][_0xd061('0x34')]));_0x44819c[_0xd061('0x33')]=_0x44819c['attributes']['length']?_0x44819c[_0xd061('0x33')]:_0x571267[_0xd061('0x2f')];if(_0x355561[_0xd061('0x31')][_0xd061('0x43')]){_0x44819c[_0xd061('0x44')]=[{'all':!![]}];}_0x44819c=_[_0xd061('0x3c')]({},_0x44819c,_0x355561[_0xd061('0x40')]);return db['CmCustomField']['find'](_0x44819c)['then'](handleEntityNotFound(_0x1e1967,null))[_0xd061('0x42')](respondWithResult(_0x1e1967,null))[_0xd061('0x47')](handleError(_0x1e1967,null));};exports[_0xd061('0x25')]=function(_0x5974e6,_0x31f59e){if(_0x5974e6[_0xd061('0x4b')]['id']){delete _0x5974e6[_0xd061('0x4b')]['id'];}return db['CmCustomField'][_0xd061('0x4c')]({'where':{'id':_0x5974e6[_0xd061('0x49')]['id']}})[_0xd061('0x42')](handleEntityNotFound(_0x31f59e,null))[_0xd061('0x42')](saveUpdates(_0x5974e6[_0xd061('0x4b')],null))[_0xd061('0x42')](respondWithResult(_0x31f59e,null))[_0xd061('0x47')](handleError(_0x31f59e,null));};exports['destroy']=function(_0xbdcfd1,_0x41ea5f){return db[_0xd061('0x2b')][_0xd061('0x4c')]({'where':{'id':_0xbdcfd1[_0xd061('0x49')]['id']}})[_0xd061('0x42')](handleEntityNotFound(_0x41ea5f,null))[_0xd061('0x42')](removeEntity(_0x41ea5f,null))[_0xd061('0x47')](handleError(_0x41ea5f,null));};exports[_0xd061('0x4d')]=function(_0x229146,_0x807a17){var _0x2197ea;return db['sequelize'][_0xd061('0x4e')](function(_0x2a6d8e){return db[_0xd061('0x2b')][_0xd061('0x4d')](_0x229146[_0xd061('0x4b')],{'transaction':_0x2a6d8e})[_0xd061('0x42')](function(_0x10b22e){_0x2197ea=_0x10b22e;var _0x350d92={'type':db[_0xd061('0x4f')][_0xd061('0x50')],'transaction':_0x2a6d8e};switch(_0x229146[_0xd061('0x4b')]['type']){case _0xd061('0x51'):_0x350d92[_0xd061('0x3d')]=db['Sequelize'][_0xd061('0x50')];break;case _0xd061('0x52'):_0x350d92['type']=db[_0xd061('0x4f')][_0xd061('0x53')];break;case'switch':_0x350d92[_0xd061('0x3d')]=db[_0xd061('0x4f')][_0xd061('0x54')];_0x350d92[_0xd061('0x55')]=![];break;default:}return db[_0xd061('0x56')][_0xd061('0x57')]['addColumn'](_0xd061('0x58'),util[_0xd061('0x59')]('cf_%d',_0x2197ea['id']),_0x350d92);})[_0xd061('0x42')](function(){return _0x2197ea;});})[_0xd061('0x42')](respondWithResult(_0x807a17,0xc9))[_0xd061('0x47')](handleError(_0x807a17,null));};