Built motion from commit 3c2ce842.|2.6.31
[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 _0x1756=['../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','save','update','then','destroy','error','stack','name','index','map','ZendeskField','rawAttributes','type','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','include','findAll','rows','show','keys','includeAll','create','catch','body','find','params','rimraf','fast-json-patch','request-promise','mustache','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x1756,0x1ee));var _0x6175=function(_0xad1bd7,_0x440add){_0xad1bd7=_0xad1bd7-0x0;var _0x4bb97a=_0x1756[_0xad1bd7];return _0x4bb97a;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x6175('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x6175('0x1'));var rp=require(_0x6175('0x2'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x6175('0x3'));var util=require('util');var path=require(_0x6175('0x4'));var sox=require(_0x6175('0x5'));var csv=require(_0x6175('0x6'));var ejs=require(_0x6175('0x7'));var fs=require('fs');var fs_extra=require(_0x6175('0x8'));var _=require(_0x6175('0x9'));var squel=require(_0x6175('0xa'));var crypto=require(_0x6175('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x6175('0xc'));var toCsv=require(_0x6175('0x6'));var querystring=require(_0x6175('0xd'));var Papa=require('papaparse');var Redis=require(_0x6175('0xe'));var authService=require(_0x6175('0xf'));var qs=require(_0x6175('0x10'));var as=require(_0x6175('0x11'));var hardwareService=require(_0x6175('0x12'));var logger=require('../../config/logger')(_0x6175('0x13'));var utils=require(_0x6175('0x14'));var config=require(_0x6175('0x15'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x4d657f,_0x5830d7){_0x5830d7=_0x5830d7||0xcc;return function(_0x29ae73){if(_0x29ae73){return _0x4d657f['sendStatus'](_0x5830d7);}return _0x4d657f[_0x6175('0x16')](_0x5830d7)[_0x6175('0x17')]();};}function respondWithResult(_0x605416,_0x48c4a5){_0x48c4a5=_0x48c4a5||0xc8;return function(_0x7f6da0){if(_0x7f6da0){return _0x605416[_0x6175('0x16')](_0x48c4a5)[_0x6175('0x18')](_0x7f6da0);}};}function respondWithFilteredResult(_0x3dada4,_0x9f9c49){return function(_0x552df6){if(_0x552df6){var _0xc87ff1=typeof _0x9f9c49[_0x6175('0x19')]===_0x6175('0x1a')&&typeof _0x9f9c49[_0x6175('0x1b')]===_0x6175('0x1a');var _0x5311b3=_0x552df6[_0x6175('0x1c')];var _0x1a90e6=_0xc87ff1?0x0:_0x9f9c49['offset'];var _0x1f4ab4=_0xc87ff1?_0x552df6[_0x6175('0x1c')]:_0x9f9c49['offset']+_0x9f9c49[_0x6175('0x1b')];var _0x5622af;if(_0x1f4ab4>=_0x5311b3){_0x1f4ab4=_0x5311b3;_0x5622af=0xc8;}else{_0x5622af=0xce;}_0x3dada4[_0x6175('0x16')](_0x5622af);return _0x3dada4[_0x6175('0x1d')](_0x6175('0x1e'),_0x1a90e6+'-'+_0x1f4ab4+'/'+_0x5311b3)['json'](_0x552df6);}return null;};}function patchUpdates(_0x22e8c6){return function(_0x17d764){try{jsonpatch[_0x6175('0x1f')](_0x17d764,_0x22e8c6,!![]);}catch(_0x34aaa1){return BPromise['reject'](_0x34aaa1);}return _0x17d764[_0x6175('0x20')]();};}function saveUpdates(_0x296eac,_0x173943){return function(_0x33e793){if(_0x33e793){return _0x33e793[_0x6175('0x21')](_0x296eac)[_0x6175('0x22')](function(_0x2192de){return _0x2192de;});}return null;};}function removeEntity(_0x1b8060,_0x47b883){return function(_0x579f29){if(_0x579f29){return _0x579f29[_0x6175('0x23')]()[_0x6175('0x22')](function(){_0x1b8060['status'](0xcc)[_0x6175('0x17')]();});}};}function handleEntityNotFound(_0x567ad4,_0x1ce192){return function(_0x316b20){if(!_0x316b20){_0x567ad4['sendStatus'](0x194);}return _0x316b20;};}function handleError(_0x382a28,_0xbfaf42){_0xbfaf42=_0xbfaf42||0x1f4;return function(_0x46ac7a){logger[_0x6175('0x24')](_0x46ac7a[_0x6175('0x25')]);if(_0x46ac7a[_0x6175('0x26')]){delete _0x46ac7a['name'];}_0x382a28[_0x6175('0x16')](_0xbfaf42)['send'](_0x46ac7a);};}exports[_0x6175('0x27')]=function(_0x27e0e5,_0x54a72f){var _0x7fbd67={},_0x4b4c10={},_0xfaddc8={'count':0x0,'rows':[]};var _0x1e291c=_[_0x6175('0x28')](db[_0x6175('0x29')][_0x6175('0x2a')],function(_0x13e896){return{'name':_0x13e896['fieldName'],'type':_0x13e896[_0x6175('0x2b')][_0x6175('0x2c')]};});_0x4b4c10[_0x6175('0x2d')]=_[_0x6175('0x28')](_0x1e291c,'name');_0x4b4c10[_0x6175('0x2e')]=_['keys'](_0x27e0e5['query']);_0x4b4c10[_0x6175('0x2f')]=_[_0x6175('0x30')](_0x4b4c10[_0x6175('0x2d')],_0x4b4c10[_0x6175('0x2e')]);_0x7fbd67[_0x6175('0x31')]=_['intersection'](_0x4b4c10[_0x6175('0x2d')],qs[_0x6175('0x32')](_0x27e0e5[_0x6175('0x2e')][_0x6175('0x32')]));_0x7fbd67[_0x6175('0x31')]=_0x7fbd67[_0x6175('0x31')][_0x6175('0x33')]?_0x7fbd67[_0x6175('0x31')]:_0x4b4c10[_0x6175('0x2d')];if(!_0x27e0e5[_0x6175('0x2e')][_0x6175('0x34')](_0x6175('0x35'))){_0x7fbd67['limit']=qs[_0x6175('0x1b')](_0x27e0e5[_0x6175('0x2e')]['limit']);_0x7fbd67['offset']=qs['offset'](_0x27e0e5[_0x6175('0x2e')]['offset']);}_0x7fbd67[_0x6175('0x36')]=qs[_0x6175('0x37')](_0x27e0e5['query']['sort']);_0x7fbd67[_0x6175('0x38')]=qs['filters'](_[_0x6175('0x39')](_0x27e0e5[_0x6175('0x2e')],_0x4b4c10[_0x6175('0x2f')]),_0x1e291c);if(_0x27e0e5['query'][_0x6175('0x3a')]){_0x7fbd67[_0x6175('0x38')]=_[_0x6175('0x3b')](_0x7fbd67['where'],{'$or':_[_0x6175('0x28')](_0x1e291c,function(_0x4ca69c){if(_0x4ca69c['type']!==_0x6175('0x3c')){var _0x41b9f7={};_0x41b9f7[_0x4ca69c[_0x6175('0x26')]]={'$like':'%'+_0x27e0e5['query'][_0x6175('0x3a')]+'%'};return _0x41b9f7;}})});}_0x7fbd67=_[_0x6175('0x3b')]({},_0x7fbd67,_0x27e0e5[_0x6175('0x3d')]);var _0x5fe09f={'where':_0x7fbd67[_0x6175('0x38')]};return db['ZendeskField'][_0x6175('0x1c')](_0x5fe09f)['then'](function(_0x3114f1){_0xfaddc8[_0x6175('0x1c')]=_0x3114f1;if(_0x27e0e5['query']['includeAll']){_0x7fbd67[_0x6175('0x3e')]=[{'all':!![]}];}return db['ZendeskField'][_0x6175('0x3f')](_0x7fbd67);})[_0x6175('0x22')](function(_0x37a53b){_0xfaddc8[_0x6175('0x40')]=_0x37a53b;return _0xfaddc8;})['then'](respondWithFilteredResult(_0x54a72f,_0x7fbd67))['catch'](handleError(_0x54a72f,null));};exports[_0x6175('0x41')]=function(_0x3703d8,_0x449790){var _0x16cfe4={'raw':!![],'where':{'id':_0x3703d8['params']['id']}},_0x162cec={};_0x162cec[_0x6175('0x2d')]=_[_0x6175('0x42')](db[_0x6175('0x29')][_0x6175('0x2a')]);_0x162cec[_0x6175('0x2e')]=_[_0x6175('0x42')](_0x3703d8['query']);_0x162cec[_0x6175('0x2f')]=_[_0x6175('0x30')](_0x162cec[_0x6175('0x2d')],_0x162cec[_0x6175('0x2e')]);_0x16cfe4['attributes']=_[_0x6175('0x30')](_0x162cec[_0x6175('0x2d')],qs[_0x6175('0x32')](_0x3703d8[_0x6175('0x2e')]['fields']));_0x16cfe4[_0x6175('0x31')]=_0x16cfe4[_0x6175('0x31')][_0x6175('0x33')]?_0x16cfe4[_0x6175('0x31')]:_0x162cec[_0x6175('0x2d')];if(_0x3703d8[_0x6175('0x2e')][_0x6175('0x43')]){_0x16cfe4['include']=[{'all':!![]}];}_0x16cfe4=_[_0x6175('0x3b')]({},_0x16cfe4,_0x3703d8[_0x6175('0x3d')]);return db[_0x6175('0x29')]['find'](_0x16cfe4)[_0x6175('0x22')](handleEntityNotFound(_0x449790,null))[_0x6175('0x22')](respondWithResult(_0x449790,null))['catch'](handleError(_0x449790,null));};exports[_0x6175('0x44')]=function(_0x22a4bb,_0x21582b){return db[_0x6175('0x29')][_0x6175('0x44')](_0x22a4bb['body'],{})['then'](respondWithResult(_0x21582b,0xc9))[_0x6175('0x45')](handleError(_0x21582b,null));};exports[_0x6175('0x21')]=function(_0x50794f,_0x3965ce){if(_0x50794f[_0x6175('0x46')]['id']){delete _0x50794f['body']['id'];}return db[_0x6175('0x29')][_0x6175('0x47')]({'where':{'id':_0x50794f[_0x6175('0x48')]['id']}})['then'](handleEntityNotFound(_0x3965ce,null))[_0x6175('0x22')](saveUpdates(_0x50794f[_0x6175('0x46')],null))[_0x6175('0x22')](respondWithResult(_0x3965ce,null))[_0x6175('0x45')](handleError(_0x3965ce,null));};exports[_0x6175('0x23')]=function(_0x1a9431,_0x5513d6){return db[_0x6175('0x29')][_0x6175('0x47')]({'where':{'id':_0x1a9431[_0x6175('0x48')]['id']}})[_0x6175('0x22')](handleEntityNotFound(_0x5513d6,null))[_0x6175('0x22')](removeEntity(_0x5513d6,null))['catch'](handleError(_0x5513d6,null));};