Built motion from commit 7ab0e143.|2.5.49
[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 _0x5712=['moment','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','save','update','then','destroy','error','name','send','index','CmCustomField','rawAttributes','fieldName','type','key','differenceBy','map','keys','query','filters','model','attributes','intersection','hasOwnProperty','nolimit','order','where','pick','filter','merge','VIRTUAL','options','include','rows','catch','show','params','includeAll','find','body','sequelize','transaction','create','Sequelize','TEXT','text','number','switch','defaultValue','addColumn','cm_contacts','format','cf_%d','eml-format','rimraf','zip-dir','fast-json-patch','request-promise'];(function(_0x1602ef,_0x447aba){var _0x5870ee=function(_0x4d94e7){while(--_0x4d94e7){_0x1602ef['push'](_0x1602ef['shift']());}};_0x5870ee(++_0x447aba);}(_0x5712,0x106));var _0x2571=function(_0x397e5f,_0x454c8f){_0x397e5f=_0x397e5f-0x0;var _0x5302b8=_0x5712[_0x397e5f];return _0x5302b8;};'use strict';var emlformat=require(_0x2571('0x0'));var rimraf=require(_0x2571('0x1'));var zipdir=require(_0x2571('0x2'));var jsonpatch=require(_0x2571('0x3'));var rp=require(_0x2571('0x4'));var moment=require(_0x2571('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x2571('0x6'));var util=require(_0x2571('0x7'));var path=require(_0x2571('0x8'));var sox=require(_0x2571('0x9'));var csv=require(_0x2571('0xa'));var ejs=require(_0x2571('0xb'));var fs=require('fs');var fs_extra=require(_0x2571('0xc'));var _=require(_0x2571('0xd'));var squel=require(_0x2571('0xe'));var crypto=require(_0x2571('0xf'));var jsforce=require(_0x2571('0x10'));var deskjs=require(_0x2571('0x11'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x2571('0x12'));var qs=require(_0x2571('0x13'));var as=require(_0x2571('0x14'));var hardwareService=require(_0x2571('0x15'));var logger=require(_0x2571('0x16'))(_0x2571('0x17'));var utils=require(_0x2571('0x18'));var config=require(_0x2571('0x19'));var licenseUtil=require(_0x2571('0x1a'));var db=require(_0x2571('0x1b'))['db'];function respondWithStatusCode(_0x2a4a49,_0x23218f){_0x23218f=_0x23218f||0xcc;return function(_0x1f3b7c){if(_0x1f3b7c){return _0x2a4a49[_0x2571('0x1c')](_0x23218f);}return _0x2a4a49[_0x2571('0x1d')](_0x23218f)[_0x2571('0x1e')]();};}function respondWithResult(_0x15a4f3,_0x58012e){_0x58012e=_0x58012e||0xc8;return function(_0x28d41){if(_0x28d41){return _0x15a4f3[_0x2571('0x1d')](_0x58012e)[_0x2571('0x1f')](_0x28d41);}};}function respondWithFilteredResult(_0x117d4b,_0x56b646){return function(_0x5b5a3c){if(_0x5b5a3c){var _0x5f3602=typeof _0x56b646[_0x2571('0x20')]===_0x2571('0x21')&&typeof _0x56b646[_0x2571('0x22')]==='undefined';var _0x5e2044=_0x5b5a3c[_0x2571('0x23')];var _0x1f1e4e=_0x5f3602?0x0:_0x56b646[_0x2571('0x20')];var _0xd1cbb=_0x5f3602?_0x5b5a3c['count']:_0x56b646[_0x2571('0x20')]+_0x56b646[_0x2571('0x22')];var _0x5838a9;if(_0xd1cbb>=_0x5e2044){_0xd1cbb=_0x5e2044;_0x5838a9=0xc8;}else{_0x5838a9=0xce;}_0x117d4b[_0x2571('0x1d')](_0x5838a9);return _0x117d4b[_0x2571('0x24')](_0x2571('0x25'),_0x1f1e4e+'-'+_0xd1cbb+'/'+_0x5e2044)['json'](_0x5b5a3c);}return null;};}function patchUpdates(_0xd3603d){return function(_0x2b9811){try{jsonpatch['apply'](_0x2b9811,_0xd3603d,!![]);}catch(_0x2529f7){return BPromise['reject'](_0x2529f7);}return _0x2b9811[_0x2571('0x26')]();};}function saveUpdates(_0x1f6501,_0x5c71e2){return function(_0x55aaf8){if(_0x55aaf8){return _0x55aaf8[_0x2571('0x27')](_0x1f6501)[_0x2571('0x28')](function(_0x4076bc){return _0x4076bc;});}return null;};}function removeEntity(_0xe2df6c,_0x3ef2af){return function(_0x11d678){if(_0x11d678){return _0x11d678[_0x2571('0x29')]()[_0x2571('0x28')](function(){_0xe2df6c[_0x2571('0x1d')](0xcc)[_0x2571('0x1e')]();});}};}function handleEntityNotFound(_0x45337d,_0x4b26b3){return function(_0x47360a){if(!_0x47360a){_0x45337d[_0x2571('0x1c')](0x194);}return _0x47360a;};}function handleError(_0x1dd07a,_0x3b8839){_0x3b8839=_0x3b8839||0x1f4;return function(_0x3856d3){logger[_0x2571('0x2a')](_0x3856d3['stack']);if(_0x3856d3[_0x2571('0x2b')]){delete _0x3856d3[_0x2571('0x2b')];}_0x1dd07a['status'](_0x3b8839)[_0x2571('0x2c')](_0x3856d3);};}exports[_0x2571('0x2d')]=function(_0x17e116,_0x32179d){var _0x243ad5={},_0x1aafea={},_0x277645={'count':0x0,'rows':[]};var _0x3b1689=_['map'](db[_0x2571('0x2e')][_0x2571('0x2f')],function(_0x7e58b2){return{'name':_0x7e58b2[_0x2571('0x30')],'type':_0x7e58b2[_0x2571('0x31')][_0x2571('0x32')]};});_0x1aafea['model']=_[_0x2571('0x33')](_[_0x2571('0x34')](_0x3b1689,'name'),['name']);_0x1aafea['query']=_[_0x2571('0x35')](_0x17e116[_0x2571('0x36')]);_0x1aafea[_0x2571('0x37')]=_['intersection'](_0x1aafea[_0x2571('0x38')],_0x1aafea[_0x2571('0x36')]);_0x243ad5[_0x2571('0x39')]=_[_0x2571('0x3a')](_0x1aafea[_0x2571('0x38')],qs['fields'](_0x17e116[_0x2571('0x36')]['fields']));_0x243ad5['attributes']=_0x243ad5[_0x2571('0x39')]['length']?_0x243ad5['attributes']:_0x1aafea[_0x2571('0x38')];if(!_0x17e116[_0x2571('0x36')][_0x2571('0x3b')](_0x2571('0x3c'))){_0x243ad5['limit']=qs['limit'](_0x17e116[_0x2571('0x36')][_0x2571('0x22')]);_0x243ad5['offset']=qs[_0x2571('0x20')](_0x17e116[_0x2571('0x36')]['offset']);}_0x243ad5[_0x2571('0x3d')]=qs['sort'](_0x17e116[_0x2571('0x36')]['sort']);_0x243ad5[_0x2571('0x3e')]=qs['filters'](_[_0x2571('0x3f')](_0x17e116['query'],_0x1aafea['filters']),_0x3b1689);if(_0x17e116[_0x2571('0x36')][_0x2571('0x40')]){_0x243ad5[_0x2571('0x3e')]=_[_0x2571('0x41')](_0x243ad5[_0x2571('0x3e')],{'$or':_[_0x2571('0x34')](_0x3b1689,function(_0x4c2446){if(_0x4c2446[_0x2571('0x31')]!==_0x2571('0x42')){var _0x540f92={};_0x540f92[_0x4c2446[_0x2571('0x2b')]]={'$like':'%'+_0x17e116['query'][_0x2571('0x40')]+'%'};return _0x540f92;}})});}_0x243ad5=_[_0x2571('0x41')]({},_0x243ad5,_0x17e116[_0x2571('0x43')]);var _0x5cb3da={'where':_0x243ad5[_0x2571('0x3e')]};return db['CmCustomField']['count'](_0x5cb3da)[_0x2571('0x28')](function(_0x11a0a9){_0x277645[_0x2571('0x23')]=_0x11a0a9;if(_0x17e116['query']['includeAll']){_0x243ad5[_0x2571('0x44')]=[{'all':!![]}];}return db['CmCustomField']['findAll'](_0x243ad5);})['then'](function(_0x154da1){_0x277645[_0x2571('0x45')]=_0x154da1;return _0x277645;})['then'](respondWithFilteredResult(_0x32179d,_0x243ad5))[_0x2571('0x46')](handleError(_0x32179d,null));};exports[_0x2571('0x47')]=function(_0x19f7c5,_0x34d496){var _0xfbdb75={'raw':!![],'where':{'id':_0x19f7c5[_0x2571('0x48')]['id']}},_0x1f206b={};_0x1f206b[_0x2571('0x38')]=_[_0x2571('0x35')](db[_0x2571('0x2e')]['rawAttributes']);_0x1f206b['query']=_[_0x2571('0x35')](_0x19f7c5[_0x2571('0x36')]);_0x1f206b[_0x2571('0x37')]=_[_0x2571('0x3a')](_0x1f206b[_0x2571('0x38')],_0x1f206b['query']);_0xfbdb75[_0x2571('0x39')]=_[_0x2571('0x3a')](_0x1f206b[_0x2571('0x38')],qs['fields'](_0x19f7c5[_0x2571('0x36')]['fields']));_0xfbdb75['attributes']=_0xfbdb75['attributes']['length']?_0xfbdb75[_0x2571('0x39')]:_0x1f206b[_0x2571('0x38')];if(_0x19f7c5[_0x2571('0x36')][_0x2571('0x49')]){_0xfbdb75[_0x2571('0x44')]=[{'all':!![]}];}_0xfbdb75=_[_0x2571('0x41')]({},_0xfbdb75,_0x19f7c5[_0x2571('0x43')]);return db[_0x2571('0x2e')][_0x2571('0x4a')](_0xfbdb75)[_0x2571('0x28')](handleEntityNotFound(_0x34d496,null))[_0x2571('0x28')](respondWithResult(_0x34d496,null))['catch'](handleError(_0x34d496,null));};exports[_0x2571('0x27')]=function(_0x382f03,_0x2f2a1e){if(_0x382f03[_0x2571('0x4b')]['id']){delete _0x382f03['body']['id'];}return db[_0x2571('0x2e')]['find']({'where':{'id':_0x382f03[_0x2571('0x48')]['id']}})[_0x2571('0x28')](handleEntityNotFound(_0x2f2a1e,null))[_0x2571('0x28')](saveUpdates(_0x382f03['body'],null))[_0x2571('0x28')](respondWithResult(_0x2f2a1e,null))['catch'](handleError(_0x2f2a1e,null));};exports[_0x2571('0x29')]=function(_0x5dcea1,_0x1d3f41){return db[_0x2571('0x2e')][_0x2571('0x4a')]({'where':{'id':_0x5dcea1[_0x2571('0x48')]['id']}})[_0x2571('0x28')](handleEntityNotFound(_0x1d3f41,null))[_0x2571('0x28')](removeEntity(_0x1d3f41,null))[_0x2571('0x46')](handleError(_0x1d3f41,null));};exports['create']=function(_0x61c43d,_0x1b0593){var _0x550fe6;return db[_0x2571('0x4c')][_0x2571('0x4d')](function(_0x48c3a8){return db['CmCustomField'][_0x2571('0x4e')](_0x61c43d[_0x2571('0x4b')],{'transaction':_0x48c3a8})[_0x2571('0x28')](function(_0x528481){_0x550fe6=_0x528481;var _0x5570b7={'type':db[_0x2571('0x4f')][_0x2571('0x50')],'transaction':_0x48c3a8};switch(_0x61c43d['body'][_0x2571('0x31')]){case _0x2571('0x51'):_0x5570b7['type']=db[_0x2571('0x4f')][_0x2571('0x50')];break;case _0x2571('0x52'):_0x5570b7['type']=db[_0x2571('0x4f')]['INTEGER'];break;case _0x2571('0x53'):_0x5570b7[_0x2571('0x31')]=db[_0x2571('0x4f')]['BOOLEAN'];_0x5570b7[_0x2571('0x54')]=![];break;default:}return db[_0x2571('0x4c')]['queryInterface'][_0x2571('0x55')](_0x2571('0x56'),util[_0x2571('0x57')](_0x2571('0x58'),_0x550fe6['id']),_0x5570b7);})['then'](function(){return _0x550fe6;});})[_0x2571('0x28')](respondWithResult(_0x1b0593,0xc9))[_0x2571('0x46')](handleError(_0x1b0593,null));};