Built motion from commit 20b39a97.|2.6.29
[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 _0x802c=['ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','offset','undefined','limit','count','set','Content-Range','json','apply','reject','then','end','stack','name','index','ZendeskField','rawAttributes','fieldName','type','map','query','keys','filters','intersection','model','fields','attributes','length','hasOwnProperty','order','pick','filter','where','merge','VIRTUAL','includeAll','findAll','rows','catch','params','include','options','find','create','update','body','destroy','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','fs-extra','squel','crypto','jsforce','desk.js','querystring','papaparse'];(function(_0x25a4a2,_0x354563){var _0x46016b=function(_0x3f4e1c){while(--_0x3f4e1c){_0x25a4a2['push'](_0x25a4a2['shift']());}};_0x46016b(++_0x354563);}(_0x802c,0xd1));var _0xc802=function(_0x178f52,_0x5d9675){_0x178f52=_0x178f52-0x0;var _0x556f99=_0x802c[_0x178f52];return _0x556f99;};'use strict';var emlformat=require(_0xc802('0x0'));var rimraf=require(_0xc802('0x1'));var zipdir=require(_0xc802('0x2'));var jsonpatch=require(_0xc802('0x3'));var rp=require(_0xc802('0x4'));var moment=require(_0xc802('0x5'));var BPromise=require(_0xc802('0x6'));var Mustache=require(_0xc802('0x7'));var util=require(_0xc802('0x8'));var path=require('path');var sox=require(_0xc802('0x9'));var csv=require(_0xc802('0xa'));var ejs=require(_0xc802('0xb'));var fs=require('fs');var fs_extra=require(_0xc802('0xc'));var _=require('lodash');var squel=require(_0xc802('0xd'));var crypto=require(_0xc802('0xe'));var jsforce=require(_0xc802('0xf'));var deskjs=require(_0xc802('0x10'));var toCsv=require(_0xc802('0xa'));var querystring=require(_0xc802('0x11'));var Papa=require(_0xc802('0x12'));var Redis=require(_0xc802('0x13'));var authService=require(_0xc802('0x14'));var qs=require(_0xc802('0x15'));var as=require(_0xc802('0x16'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xc802('0x17'))(_0xc802('0x18'));var utils=require(_0xc802('0x19'));var config=require('../../config/environment');var licenseUtil=require(_0xc802('0x1a'));var db=require(_0xc802('0x1b'))['db'];function respondWithStatusCode(_0xb49d2e,_0xe8ddd2){_0xe8ddd2=_0xe8ddd2||0xcc;return function(_0x4783a9){if(_0x4783a9){return _0xb49d2e[_0xc802('0x1c')](_0xe8ddd2);}return _0xb49d2e[_0xc802('0x1d')](_0xe8ddd2)['end']();};}function respondWithResult(_0x1932c0,_0x20677c){_0x20677c=_0x20677c||0xc8;return function(_0x36b8f4){if(_0x36b8f4){return _0x1932c0[_0xc802('0x1d')](_0x20677c)['json'](_0x36b8f4);}};}function respondWithFilteredResult(_0x3d4ae,_0x59c4bf){return function(_0x1696d7){if(_0x1696d7){var _0x397f95=typeof _0x59c4bf[_0xc802('0x1e')]===_0xc802('0x1f')&&typeof _0x59c4bf[_0xc802('0x20')]===_0xc802('0x1f');var _0x3eeda1=_0x1696d7[_0xc802('0x21')];var _0x1c93d5=_0x397f95?0x0:_0x59c4bf['offset'];var _0x3a5bc6=_0x397f95?_0x1696d7[_0xc802('0x21')]:_0x59c4bf['offset']+_0x59c4bf['limit'];var _0x35754a;if(_0x3a5bc6>=_0x3eeda1){_0x3a5bc6=_0x3eeda1;_0x35754a=0xc8;}else{_0x35754a=0xce;}_0x3d4ae[_0xc802('0x1d')](_0x35754a);return _0x3d4ae[_0xc802('0x22')](_0xc802('0x23'),_0x1c93d5+'-'+_0x3a5bc6+'/'+_0x3eeda1)[_0xc802('0x24')](_0x1696d7);}return null;};}function patchUpdates(_0xc8e86c){return function(_0x226ef9){try{jsonpatch[_0xc802('0x25')](_0x226ef9,_0xc8e86c,!![]);}catch(_0x526418){return BPromise[_0xc802('0x26')](_0x526418);}return _0x226ef9['save']();};}function saveUpdates(_0x5cb342,_0x38f319){return function(_0x38a236){if(_0x38a236){return _0x38a236['update'](_0x5cb342)[_0xc802('0x27')](function(_0xa01645){return _0xa01645;});}return null;};}function removeEntity(_0x2058b3,_0x160201){return function(_0xad2f94){if(_0xad2f94){return _0xad2f94['destroy']()[_0xc802('0x27')](function(){_0x2058b3[_0xc802('0x1d')](0xcc)[_0xc802('0x28')]();});}};}function handleEntityNotFound(_0x1cd2d5,_0x5014a8){return function(_0x51a720){if(!_0x51a720){_0x1cd2d5[_0xc802('0x1c')](0x194);}return _0x51a720;};}function handleError(_0x3c6603,_0x7e96ab){_0x7e96ab=_0x7e96ab||0x1f4;return function(_0x53ce48){logger['error'](_0x53ce48[_0xc802('0x29')]);if(_0x53ce48[_0xc802('0x2a')]){delete _0x53ce48[_0xc802('0x2a')];}_0x3c6603[_0xc802('0x1d')](_0x7e96ab)['send'](_0x53ce48);};}exports[_0xc802('0x2b')]=function(_0x48ecf6,_0x20cba9){var _0x402297={},_0x43aab1={},_0x33235d={'count':0x0,'rows':[]};var _0x100d85=_['map'](db[_0xc802('0x2c')][_0xc802('0x2d')],function(_0x3bdb85){return{'name':_0x3bdb85[_0xc802('0x2e')],'type':_0x3bdb85[_0xc802('0x2f')]['key']};});_0x43aab1['model']=_[_0xc802('0x30')](_0x100d85,_0xc802('0x2a'));_0x43aab1[_0xc802('0x31')]=_[_0xc802('0x32')](_0x48ecf6[_0xc802('0x31')]);_0x43aab1[_0xc802('0x33')]=_[_0xc802('0x34')](_0x43aab1[_0xc802('0x35')],_0x43aab1[_0xc802('0x31')]);_0x402297['attributes']=_[_0xc802('0x34')](_0x43aab1[_0xc802('0x35')],qs[_0xc802('0x36')](_0x48ecf6[_0xc802('0x31')][_0xc802('0x36')]));_0x402297[_0xc802('0x37')]=_0x402297[_0xc802('0x37')][_0xc802('0x38')]?_0x402297['attributes']:_0x43aab1['model'];if(!_0x48ecf6[_0xc802('0x31')][_0xc802('0x39')]('nolimit')){_0x402297[_0xc802('0x20')]=qs[_0xc802('0x20')](_0x48ecf6[_0xc802('0x31')]['limit']);_0x402297[_0xc802('0x1e')]=qs[_0xc802('0x1e')](_0x48ecf6[_0xc802('0x31')][_0xc802('0x1e')]);}_0x402297[_0xc802('0x3a')]=qs['sort'](_0x48ecf6[_0xc802('0x31')]['sort']);_0x402297['where']=qs[_0xc802('0x33')](_[_0xc802('0x3b')](_0x48ecf6[_0xc802('0x31')],_0x43aab1[_0xc802('0x33')]),_0x100d85);if(_0x48ecf6[_0xc802('0x31')][_0xc802('0x3c')]){_0x402297[_0xc802('0x3d')]=_[_0xc802('0x3e')](_0x402297['where'],{'$or':_[_0xc802('0x30')](_0x100d85,function(_0x5dac89){if(_0x5dac89[_0xc802('0x2f')]!==_0xc802('0x3f')){var _0x380a87={};_0x380a87[_0x5dac89[_0xc802('0x2a')]]={'$like':'%'+_0x48ecf6[_0xc802('0x31')][_0xc802('0x3c')]+'%'};return _0x380a87;}})});}_0x402297=_[_0xc802('0x3e')]({},_0x402297,_0x48ecf6['options']);var _0x3b436a={'where':_0x402297[_0xc802('0x3d')]};return db[_0xc802('0x2c')][_0xc802('0x21')](_0x3b436a)[_0xc802('0x27')](function(_0x504754){_0x33235d[_0xc802('0x21')]=_0x504754;if(_0x48ecf6['query'][_0xc802('0x40')]){_0x402297['include']=[{'all':!![]}];}return db[_0xc802('0x2c')][_0xc802('0x41')](_0x402297);})[_0xc802('0x27')](function(_0x404fa0){_0x33235d[_0xc802('0x42')]=_0x404fa0;return _0x33235d;})[_0xc802('0x27')](respondWithFilteredResult(_0x20cba9,_0x402297))[_0xc802('0x43')](handleError(_0x20cba9,null));};exports['show']=function(_0x31a8e2,_0x57406b){var _0x44d3fe={'raw':!![],'where':{'id':_0x31a8e2[_0xc802('0x44')]['id']}},_0x4d6309={};_0x4d6309[_0xc802('0x35')]=_[_0xc802('0x32')](db[_0xc802('0x2c')][_0xc802('0x2d')]);_0x4d6309[_0xc802('0x31')]=_[_0xc802('0x32')](_0x31a8e2['query']);_0x4d6309[_0xc802('0x33')]=_['intersection'](_0x4d6309[_0xc802('0x35')],_0x4d6309[_0xc802('0x31')]);_0x44d3fe[_0xc802('0x37')]=_[_0xc802('0x34')](_0x4d6309[_0xc802('0x35')],qs[_0xc802('0x36')](_0x31a8e2[_0xc802('0x31')][_0xc802('0x36')]));_0x44d3fe[_0xc802('0x37')]=_0x44d3fe['attributes'][_0xc802('0x38')]?_0x44d3fe[_0xc802('0x37')]:_0x4d6309[_0xc802('0x35')];if(_0x31a8e2['query'][_0xc802('0x40')]){_0x44d3fe[_0xc802('0x45')]=[{'all':!![]}];}_0x44d3fe=_[_0xc802('0x3e')]({},_0x44d3fe,_0x31a8e2[_0xc802('0x46')]);return db[_0xc802('0x2c')][_0xc802('0x47')](_0x44d3fe)[_0xc802('0x27')](handleEntityNotFound(_0x57406b,null))['then'](respondWithResult(_0x57406b,null))[_0xc802('0x43')](handleError(_0x57406b,null));};exports[_0xc802('0x48')]=function(_0x4a26d0,_0x5e8215){return db[_0xc802('0x2c')][_0xc802('0x48')](_0x4a26d0['body'],{})['then'](respondWithResult(_0x5e8215,0xc9))['catch'](handleError(_0x5e8215,null));};exports[_0xc802('0x49')]=function(_0x590847,_0x559b1a){if(_0x590847[_0xc802('0x4a')]['id']){delete _0x590847[_0xc802('0x4a')]['id'];}return db['ZendeskField']['find']({'where':{'id':_0x590847[_0xc802('0x44')]['id']}})[_0xc802('0x27')](handleEntityNotFound(_0x559b1a,null))[_0xc802('0x27')](saveUpdates(_0x590847['body'],null))['then'](respondWithResult(_0x559b1a,null))[_0xc802('0x43')](handleError(_0x559b1a,null));};exports[_0xc802('0x4b')]=function(_0x5eaaf6,_0x242fff){return db[_0xc802('0x2c')][_0xc802('0x47')]({'where':{'id':_0x5eaaf6[_0xc802('0x44')]['id']}})['then'](handleEntityNotFound(_0x242fff,null))['then'](removeEntity(_0x242fff,null))[_0xc802('0x43')](handleError(_0x242fff,null));};