ef0a8defdd6d50300cc9b8ba27b3bd849024b25e
[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 _0x5d66=['hasOwnProperty','nolimit','limit','order','sort','pick','filter','where','merge','options','count','includeAll','findAll','catch','show','params','keys','include','find','create','body','html-pdf','rimraf','fast-json-patch','request-promise','util','path','sox','to-csv','lodash','squel','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','api','../../config/utils','../../config/environment','../../mysqldb','status','json','offset','set','Content-Range','apply','save','update','then','destroy','end','name','send','index','map','ZendeskField','rawAttributes','fieldName','key','model','query','intersection','attributes','fields','length'];(function(_0x481bf7,_0x437f69){var _0x461787=function(_0xb3bc9d){while(--_0xb3bc9d){_0x481bf7['push'](_0x481bf7['shift']());}};_0x461787(++_0x437f69);}(_0x5d66,0x164));var _0x65d6=function(_0x3206d9,_0x275d5b){_0x3206d9=_0x3206d9-0x0;var _0x11c9df=_0x5d66[_0x3206d9];return _0x11c9df;};'use strict';var pdf=require(_0x65d6('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x65d6('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x65d6('0x2'));var rp=require(_0x65d6('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x65d6('0x4'));var path=require(_0x65d6('0x5'));var sox=require(_0x65d6('0x6'));var csv=require(_0x65d6('0x7'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x65d6('0x8'));var squel=require(_0x65d6('0x9'));var crypto=require('crypto');var jsforce=require(_0x65d6('0xa'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x65d6('0xb'));var Papa=require(_0x65d6('0xc'));var Redis=require(_0x65d6('0xd'));var authService=require(_0x65d6('0xe'));var qs=require(_0x65d6('0xf'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x65d6('0x10'));var logger=require('../../config/logger')(_0x65d6('0x11'));var utils=require(_0x65d6('0x12'));var config=require(_0x65d6('0x13'));var db=require(_0x65d6('0x14'))['db'];function respondWithStatusCode(_0x46fa73,_0x59b72b){_0x59b72b=_0x59b72b||0xcc;return function(_0xb767cf){if(_0xb767cf){return _0x46fa73['sendStatus'](_0x59b72b);}return _0x46fa73[_0x65d6('0x15')](_0x59b72b)['end']();};}function respondWithResult(_0x3e2525,_0x218251){_0x218251=_0x218251||0xc8;return function(_0x6e45c8){if(_0x6e45c8){return _0x3e2525[_0x65d6('0x15')](_0x218251)[_0x65d6('0x16')](_0x6e45c8);}};}function respondWithFilteredResult(_0x188a9f,_0x22839a){return function(_0x4e30fc){if(_0x4e30fc){var _0x328709=_0x4e30fc['count'],_0x598f77=_0x22839a[_0x65d6('0x17')],_0x1d8201=_0x22839a['offset']+_0x22839a['limit'],_0x402e6f;if(_0x1d8201>=_0x328709){_0x1d8201=_0x328709;_0x402e6f=0xc8;}else{_0x402e6f=0xce;}_0x188a9f[_0x65d6('0x15')](_0x402e6f);return _0x188a9f[_0x65d6('0x18')](_0x65d6('0x19'),_0x598f77+'-'+_0x1d8201+'/'+_0x328709)['json'](_0x4e30fc);}return null;};}function patchUpdates(_0x347d27){return function(_0x2ca865){try{jsonpatch[_0x65d6('0x1a')](_0x2ca865,_0x347d27,!![]);}catch(_0x3f5313){return BPromise['reject'](_0x3f5313);}return _0x2ca865[_0x65d6('0x1b')]();};}function saveUpdates(_0x5419ca,_0x2a848e){return function(_0x220130){if(_0x220130){return _0x220130[_0x65d6('0x1c')](_0x5419ca)[_0x65d6('0x1d')](function(_0x33f3af){return _0x33f3af;});}return null;};}function removeEntity(_0x46d0c0,_0x14f729){return function(_0x154e26){if(_0x154e26){return _0x154e26[_0x65d6('0x1e')]()[_0x65d6('0x1d')](function(){_0x46d0c0[_0x65d6('0x15')](0xcc)[_0x65d6('0x1f')]();});}};}function handleEntityNotFound(_0x1842fb,_0x46688f){return function(_0x5ce6be){if(!_0x5ce6be){_0x1842fb['sendStatus'](0x194);}return _0x5ce6be;};}function handleError(_0x2458ca,_0x366acc){_0x366acc=_0x366acc||0x1f4;return function(_0x2ca63a){logger['error'](_0x2ca63a['stack']);if(_0x2ca63a[_0x65d6('0x20')]){delete _0x2ca63a[_0x65d6('0x20')];}_0x2458ca[_0x65d6('0x15')](_0x366acc)[_0x65d6('0x21')](_0x2ca63a);};}exports[_0x65d6('0x22')]=function(_0x16fe83,_0x1e4599){var _0x23bdd5={},_0x2e6f3d={},_0x2eae06={'count':0x0,'rows':[]};var _0x18f47e=_[_0x65d6('0x23')](db[_0x65d6('0x24')][_0x65d6('0x25')],function(_0x121447){return{'name':_0x121447[_0x65d6('0x26')],'type':_0x121447['type'][_0x65d6('0x27')]};});_0x2e6f3d[_0x65d6('0x28')]=_['map'](_0x18f47e,_0x65d6('0x20'));_0x2e6f3d[_0x65d6('0x29')]=_['keys'](_0x16fe83['query']);_0x2e6f3d['filters']=_[_0x65d6('0x2a')](_0x2e6f3d[_0x65d6('0x28')],_0x2e6f3d[_0x65d6('0x29')]);_0x23bdd5[_0x65d6('0x2b')]=_['intersection'](_0x2e6f3d[_0x65d6('0x28')],qs[_0x65d6('0x2c')](_0x16fe83['query'][_0x65d6('0x2c')]));_0x23bdd5[_0x65d6('0x2b')]=_0x23bdd5[_0x65d6('0x2b')][_0x65d6('0x2d')]?_0x23bdd5[_0x65d6('0x2b')]:_0x2e6f3d[_0x65d6('0x28')];if(!_0x16fe83['query'][_0x65d6('0x2e')](_0x65d6('0x2f'))){_0x23bdd5[_0x65d6('0x30')]=qs[_0x65d6('0x30')](_0x16fe83['query'][_0x65d6('0x30')]);_0x23bdd5[_0x65d6('0x17')]=qs[_0x65d6('0x17')](_0x16fe83[_0x65d6('0x29')][_0x65d6('0x17')]);}_0x23bdd5[_0x65d6('0x31')]=qs[_0x65d6('0x32')](_0x16fe83[_0x65d6('0x29')][_0x65d6('0x32')]);_0x23bdd5['where']=qs['filters'](_[_0x65d6('0x33')](_0x16fe83[_0x65d6('0x29')],_0x2e6f3d['filters']),_0x18f47e);if(_0x16fe83[_0x65d6('0x29')][_0x65d6('0x34')]){_0x23bdd5[_0x65d6('0x35')]=_[_0x65d6('0x36')](_0x23bdd5[_0x65d6('0x35')],{'$or':_[_0x65d6('0x23')](_0x18f47e,function(_0x36ce31){if(_0x36ce31['type']!=='VIRTUAL'){var _0x22fa2c={};_0x22fa2c[_0x36ce31[_0x65d6('0x20')]]={'$like':'%'+_0x16fe83[_0x65d6('0x29')][_0x65d6('0x34')]+'%'};return _0x22fa2c;}})});}_0x23bdd5=_['merge']({},_0x23bdd5,_0x16fe83[_0x65d6('0x37')]);var _0x508361={'where':_0x23bdd5['where']};return db[_0x65d6('0x24')][_0x65d6('0x38')](_0x508361)[_0x65d6('0x1d')](function(_0x24fd1f){_0x2eae06[_0x65d6('0x38')]=_0x24fd1f;if(_0x16fe83['query'][_0x65d6('0x39')]){_0x23bdd5['include']=[{'all':!![]}];}return db[_0x65d6('0x24')][_0x65d6('0x3a')](_0x23bdd5);})[_0x65d6('0x1d')](function(_0x106f99){_0x2eae06['rows']=_0x106f99;return _0x2eae06;})[_0x65d6('0x1d')](respondWithFilteredResult(_0x1e4599,_0x23bdd5))[_0x65d6('0x3b')](handleError(_0x1e4599,null));};exports[_0x65d6('0x3c')]=function(_0x3e9bb9,_0x4e1d0e){var _0x4860e8={'raw':!![],'where':{'id':_0x3e9bb9[_0x65d6('0x3d')]['id']}},_0x35024a={};_0x35024a[_0x65d6('0x28')]=_[_0x65d6('0x3e')](db[_0x65d6('0x24')][_0x65d6('0x25')]);_0x35024a['query']=_['keys'](_0x3e9bb9[_0x65d6('0x29')]);_0x35024a['filters']=_['intersection'](_0x35024a[_0x65d6('0x28')],_0x35024a[_0x65d6('0x29')]);_0x4860e8[_0x65d6('0x2b')]=_[_0x65d6('0x2a')](_0x35024a[_0x65d6('0x28')],qs[_0x65d6('0x2c')](_0x3e9bb9['query'][_0x65d6('0x2c')]));_0x4860e8[_0x65d6('0x2b')]=_0x4860e8['attributes'][_0x65d6('0x2d')]?_0x4860e8[_0x65d6('0x2b')]:_0x35024a['model'];if(_0x3e9bb9['query'][_0x65d6('0x39')]){_0x4860e8[_0x65d6('0x3f')]=[{'all':!![]}];}_0x4860e8=_[_0x65d6('0x36')]({},_0x4860e8,_0x3e9bb9[_0x65d6('0x37')]);return db[_0x65d6('0x24')][_0x65d6('0x40')](_0x4860e8)[_0x65d6('0x1d')](handleEntityNotFound(_0x4e1d0e,null))[_0x65d6('0x1d')](respondWithResult(_0x4e1d0e,null))[_0x65d6('0x3b')](handleError(_0x4e1d0e,null));};exports[_0x65d6('0x41')]=function(_0x9a1f61,_0x5ba298){return db[_0x65d6('0x24')][_0x65d6('0x41')](_0x9a1f61[_0x65d6('0x42')],{})[_0x65d6('0x1d')](respondWithResult(_0x5ba298,0xc9))[_0x65d6('0x3b')](handleError(_0x5ba298,null));};exports[_0x65d6('0x1c')]=function(_0x2e4ce0,_0x13fd2f){if(_0x2e4ce0[_0x65d6('0x42')]['id']){delete _0x2e4ce0['body']['id'];}return db[_0x65d6('0x24')][_0x65d6('0x40')]({'where':{'id':_0x2e4ce0[_0x65d6('0x3d')]['id']}})[_0x65d6('0x1d')](handleEntityNotFound(_0x13fd2f,null))['then'](saveUpdates(_0x2e4ce0['body'],null))[_0x65d6('0x1d')](respondWithResult(_0x13fd2f,null))[_0x65d6('0x3b')](handleError(_0x13fd2f,null));};exports[_0x65d6('0x1e')]=function(_0x3f73ab,_0x19d32b){return db[_0x65d6('0x24')]['find']({'where':{'id':_0x3f73ab[_0x65d6('0x3d')]['id']}})['then'](handleEntityNotFound(_0x19d32b,null))[_0x65d6('0x1d')](removeEntity(_0x19d32b,null))[_0x65d6('0x3b')](handleError(_0x19d32b,null));};