Built motion from commit b5413ace.|2.6.9
[motion2.git] / server / api / intZendeskField / intZendeskField.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 _0x8d7e=['api','../../config/utils','../../config/environment','../../config/license/util','status','json','offset','undefined','limit','count','apply','save','update','then','destroy','end','sendStatus','error','stack','name','send','index','map','ZendeskField','rawAttributes','fieldName','type','model','keys','intersection','query','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filters','merge','VIRTUAL','filter','options','includeAll','findAll','catch','show','params','include','find','create','body','eml-format','zip-dir','request-promise','moment','bluebird','path','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','../../config/license/hardware','../../config/logger'];(function(_0x1082f8,_0x1e466e){var _0x550c43=function(_0x3400c9){while(--_0x3400c9){_0x1082f8['push'](_0x1082f8['shift']());}};_0x550c43(++_0x1e466e);}(_0x8d7e,0x7d));var _0xe8d7=function(_0x4eaa7d,_0x5cd396){_0x4eaa7d=_0x4eaa7d-0x0;var _0xada005=_0x8d7e[_0x4eaa7d];return _0xada005;};'use strict';var emlformat=require(_0xe8d7('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xe8d7('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0xe8d7('0x2'));var moment=require(_0xe8d7('0x3'));var BPromise=require(_0xe8d7('0x4'));var Mustache=require('mustache');var util=require('util');var path=require(_0xe8d7('0x5'));var sox=require(_0xe8d7('0x6'));var csv=require(_0xe8d7('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xe8d7('0x8'));var _=require(_0xe8d7('0x9'));var squel=require(_0xe8d7('0xa'));var crypto=require(_0xe8d7('0xb'));var jsforce=require(_0xe8d7('0xc'));var deskjs=require(_0xe8d7('0xd'));var toCsv=require(_0xe8d7('0x7'));var querystring=require(_0xe8d7('0xe'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xe8d7('0xf'));var logger=require(_0xe8d7('0x10'))(_0xe8d7('0x11'));var utils=require(_0xe8d7('0x12'));var config=require(_0xe8d7('0x13'));var licenseUtil=require(_0xe8d7('0x14'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x3ec844,_0x28d841){_0x28d841=_0x28d841||0xcc;return function(_0x42700e){if(_0x42700e){return _0x3ec844['sendStatus'](_0x28d841);}return _0x3ec844[_0xe8d7('0x15')](_0x28d841)['end']();};}function respondWithResult(_0x2b13c7,_0x3c7482){_0x3c7482=_0x3c7482||0xc8;return function(_0x20b37f){if(_0x20b37f){return _0x2b13c7[_0xe8d7('0x15')](_0x3c7482)[_0xe8d7('0x16')](_0x20b37f);}};}function respondWithFilteredResult(_0x32a3d9,_0x5da271){return function(_0x59d0e3){if(_0x59d0e3){var _0x14c69d=typeof _0x5da271[_0xe8d7('0x17')]===_0xe8d7('0x18')&&typeof _0x5da271[_0xe8d7('0x19')]===_0xe8d7('0x18');var _0x2161e9=_0x59d0e3['count'];var _0xfaf03d=_0x14c69d?0x0:_0x5da271['offset'];var _0xd4b2c5=_0x14c69d?_0x59d0e3[_0xe8d7('0x1a')]:_0x5da271[_0xe8d7('0x17')]+_0x5da271[_0xe8d7('0x19')];var _0x1ee215;if(_0xd4b2c5>=_0x2161e9){_0xd4b2c5=_0x2161e9;_0x1ee215=0xc8;}else{_0x1ee215=0xce;}_0x32a3d9[_0xe8d7('0x15')](_0x1ee215);return _0x32a3d9['set']('Content-Range',_0xfaf03d+'-'+_0xd4b2c5+'/'+_0x2161e9)['json'](_0x59d0e3);}return null;};}function patchUpdates(_0x14b507){return function(_0x5bf656){try{jsonpatch[_0xe8d7('0x1b')](_0x5bf656,_0x14b507,!![]);}catch(_0xe685f1){return BPromise['reject'](_0xe685f1);}return _0x5bf656[_0xe8d7('0x1c')]();};}function saveUpdates(_0xcee535,_0x1afdc6){return function(_0x1cf73d){if(_0x1cf73d){return _0x1cf73d[_0xe8d7('0x1d')](_0xcee535)[_0xe8d7('0x1e')](function(_0x2dbe8f){return _0x2dbe8f;});}return null;};}function removeEntity(_0x2615f2,_0x27084e){return function(_0x4a8cd5){if(_0x4a8cd5){return _0x4a8cd5[_0xe8d7('0x1f')]()[_0xe8d7('0x1e')](function(){_0x2615f2['status'](0xcc)[_0xe8d7('0x20')]();});}};}function handleEntityNotFound(_0x2c910d,_0x436257){return function(_0x8ce294){if(!_0x8ce294){_0x2c910d[_0xe8d7('0x21')](0x194);}return _0x8ce294;};}function handleError(_0x1b506c,_0x583880){_0x583880=_0x583880||0x1f4;return function(_0x486424){logger[_0xe8d7('0x22')](_0x486424[_0xe8d7('0x23')]);if(_0x486424[_0xe8d7('0x24')]){delete _0x486424['name'];}_0x1b506c[_0xe8d7('0x15')](_0x583880)[_0xe8d7('0x25')](_0x486424);};}exports[_0xe8d7('0x26')]=function(_0x130902,_0x314c92){var _0x5b5c4b={},_0x1f9e46={},_0x3aa81b={'count':0x0,'rows':[]};var _0x22aaa3=_[_0xe8d7('0x27')](db[_0xe8d7('0x28')][_0xe8d7('0x29')],function(_0x220e49){return{'name':_0x220e49[_0xe8d7('0x2a')],'type':_0x220e49[_0xe8d7('0x2b')]['key']};});_0x1f9e46[_0xe8d7('0x2c')]=_['map'](_0x22aaa3,_0xe8d7('0x24'));_0x1f9e46['query']=_[_0xe8d7('0x2d')](_0x130902['query']);_0x1f9e46['filters']=_[_0xe8d7('0x2e')](_0x1f9e46['model'],_0x1f9e46[_0xe8d7('0x2f')]);_0x5b5c4b[_0xe8d7('0x30')]=_['intersection'](_0x1f9e46['model'],qs[_0xe8d7('0x31')](_0x130902[_0xe8d7('0x2f')][_0xe8d7('0x31')]));_0x5b5c4b[_0xe8d7('0x30')]=_0x5b5c4b[_0xe8d7('0x30')][_0xe8d7('0x32')]?_0x5b5c4b[_0xe8d7('0x30')]:_0x1f9e46['model'];if(!_0x130902['query'][_0xe8d7('0x33')](_0xe8d7('0x34'))){_0x5b5c4b[_0xe8d7('0x19')]=qs[_0xe8d7('0x19')](_0x130902[_0xe8d7('0x2f')][_0xe8d7('0x19')]);_0x5b5c4b[_0xe8d7('0x17')]=qs[_0xe8d7('0x17')](_0x130902[_0xe8d7('0x2f')][_0xe8d7('0x17')]);}_0x5b5c4b[_0xe8d7('0x35')]=qs[_0xe8d7('0x36')](_0x130902['query'][_0xe8d7('0x36')]);_0x5b5c4b[_0xe8d7('0x37')]=qs['filters'](_[_0xe8d7('0x38')](_0x130902[_0xe8d7('0x2f')],_0x1f9e46[_0xe8d7('0x39')]),_0x22aaa3);if(_0x130902['query']['filter']){_0x5b5c4b['where']=_[_0xe8d7('0x3a')](_0x5b5c4b['where'],{'$or':_[_0xe8d7('0x27')](_0x22aaa3,function(_0x3cc14b){if(_0x3cc14b['type']!==_0xe8d7('0x3b')){var _0x1f2c96={};_0x1f2c96[_0x3cc14b['name']]={'$like':'%'+_0x130902[_0xe8d7('0x2f')][_0xe8d7('0x3c')]+'%'};return _0x1f2c96;}})});}_0x5b5c4b=_['merge']({},_0x5b5c4b,_0x130902[_0xe8d7('0x3d')]);var _0x17f298={'where':_0x5b5c4b[_0xe8d7('0x37')]};return db['ZendeskField'][_0xe8d7('0x1a')](_0x17f298)[_0xe8d7('0x1e')](function(_0x55add4){_0x3aa81b[_0xe8d7('0x1a')]=_0x55add4;if(_0x130902['query'][_0xe8d7('0x3e')]){_0x5b5c4b['include']=[{'all':!![]}];}return db[_0xe8d7('0x28')][_0xe8d7('0x3f')](_0x5b5c4b);})[_0xe8d7('0x1e')](function(_0x2f52a4){_0x3aa81b['rows']=_0x2f52a4;return _0x3aa81b;})[_0xe8d7('0x1e')](respondWithFilteredResult(_0x314c92,_0x5b5c4b))[_0xe8d7('0x40')](handleError(_0x314c92,null));};exports[_0xe8d7('0x41')]=function(_0x44ac5a,_0x523e50){var _0x3777a3={'raw':!![],'where':{'id':_0x44ac5a[_0xe8d7('0x42')]['id']}},_0x49806c={};_0x49806c[_0xe8d7('0x2c')]=_[_0xe8d7('0x2d')](db[_0xe8d7('0x28')][_0xe8d7('0x29')]);_0x49806c[_0xe8d7('0x2f')]=_[_0xe8d7('0x2d')](_0x44ac5a['query']);_0x49806c['filters']=_[_0xe8d7('0x2e')](_0x49806c[_0xe8d7('0x2c')],_0x49806c['query']);_0x3777a3[_0xe8d7('0x30')]=_['intersection'](_0x49806c[_0xe8d7('0x2c')],qs[_0xe8d7('0x31')](_0x44ac5a[_0xe8d7('0x2f')][_0xe8d7('0x31')]));_0x3777a3[_0xe8d7('0x30')]=_0x3777a3[_0xe8d7('0x30')][_0xe8d7('0x32')]?_0x3777a3[_0xe8d7('0x30')]:_0x49806c['model'];if(_0x44ac5a[_0xe8d7('0x2f')][_0xe8d7('0x3e')]){_0x3777a3[_0xe8d7('0x43')]=[{'all':!![]}];}_0x3777a3=_['merge']({},_0x3777a3,_0x44ac5a['options']);return db[_0xe8d7('0x28')][_0xe8d7('0x44')](_0x3777a3)[_0xe8d7('0x1e')](handleEntityNotFound(_0x523e50,null))[_0xe8d7('0x1e')](respondWithResult(_0x523e50,null))[_0xe8d7('0x40')](handleError(_0x523e50,null));};exports[_0xe8d7('0x45')]=function(_0x2e0e13,_0x33b04f){return db[_0xe8d7('0x28')]['create'](_0x2e0e13['body'],{})[_0xe8d7('0x1e')](respondWithResult(_0x33b04f,0xc9))[_0xe8d7('0x40')](handleError(_0x33b04f,null));};exports[_0xe8d7('0x1d')]=function(_0x44ec88,_0x3788d9){if(_0x44ec88[_0xe8d7('0x46')]['id']){delete _0x44ec88[_0xe8d7('0x46')]['id'];}return db[_0xe8d7('0x28')]['find']({'where':{'id':_0x44ec88[_0xe8d7('0x42')]['id']}})[_0xe8d7('0x1e')](handleEntityNotFound(_0x3788d9,null))[_0xe8d7('0x1e')](saveUpdates(_0x44ec88['body'],null))[_0xe8d7('0x1e')](respondWithResult(_0x3788d9,null))['catch'](handleError(_0x3788d9,null));};exports[_0xe8d7('0x1f')]=function(_0x1f6345,_0x174713){return db['ZendeskField'][_0xe8d7('0x44')]({'where':{'id':_0x1f6345[_0xe8d7('0x42')]['id']}})[_0xe8d7('0x1e')](handleEntityNotFound(_0x174713,null))[_0xe8d7('0x1e')](removeEntity(_0x174713,null))[_0xe8d7('0x40')](handleError(_0x174713,null));};