Built motion from commit 092f8824.|2.5.49
[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 _0x30dc=['Content-Range','reject','update','then','destroy','sendStatus','error','stack','name','index','map','rawAttributes','type','model','keys','query','attributes','fields','length','hasOwnProperty','nolimit','order','sort','filters','pick','filter','where','merge','VIRTUAL','options','includeAll','ZendeskField','findAll','rows','catch','show','intersection','include','find','create','body','params','eml-format','zip-dir','fast-json-patch','request-promise','mustache','util','path','sox','squel','crypto','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','status','end','json','offset','undefined','limit','count','set'];(function(_0x242049,_0x154ea7){var _0x19741a=function(_0x570fa0){while(--_0x570fa0){_0x242049['push'](_0x242049['shift']());}};_0x19741a(++_0x154ea7);}(_0x30dc,0x14a));var _0xc30d=function(_0x4888e0,_0x35f563){_0x4888e0=_0x4888e0-0x0;var _0x346fee=_0x30dc[_0x4888e0];return _0x346fee;};'use strict';var emlformat=require(_0xc30d('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xc30d('0x1'));var jsonpatch=require(_0xc30d('0x2'));var rp=require(_0xc30d('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xc30d('0x4'));var util=require(_0xc30d('0x5'));var path=require(_0xc30d('0x6'));var sox=require(_0xc30d('0x7'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0xc30d('0x8'));var crypto=require(_0xc30d('0x9'));var jsforce=require('jsforce');var deskjs=require(_0xc30d('0xa'));var toCsv=require(_0xc30d('0xb'));var querystring=require(_0xc30d('0xc'));var Papa=require(_0xc30d('0xd'));var Redis=require(_0xc30d('0xe'));var authService=require(_0xc30d('0xf'));var qs=require(_0xc30d('0x10'));var as=require(_0xc30d('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0xc30d('0x12'));var utils=require(_0xc30d('0x13'));var config=require(_0xc30d('0x14'));var licenseUtil=require(_0xc30d('0x15'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x41dce2,_0x274c20){_0x274c20=_0x274c20||0xcc;return function(_0x54accf){if(_0x54accf){return _0x41dce2['sendStatus'](_0x274c20);}return _0x41dce2[_0xc30d('0x16')](_0x274c20)[_0xc30d('0x17')]();};}function respondWithResult(_0x53bac6,_0x2702a6){_0x2702a6=_0x2702a6||0xc8;return function(_0x5a1662){if(_0x5a1662){return _0x53bac6[_0xc30d('0x16')](_0x2702a6)[_0xc30d('0x18')](_0x5a1662);}};}function respondWithFilteredResult(_0xb844cd,_0x14fe6e){return function(_0x44b147){if(_0x44b147){var _0xd1d4cb=typeof _0x14fe6e[_0xc30d('0x19')]===_0xc30d('0x1a')&&typeof _0x14fe6e[_0xc30d('0x1b')]===_0xc30d('0x1a');var _0x25bdb=_0x44b147[_0xc30d('0x1c')];var _0x2ae4d8=_0xd1d4cb?0x0:_0x14fe6e[_0xc30d('0x19')];var _0x162bfc=_0xd1d4cb?_0x44b147[_0xc30d('0x1c')]:_0x14fe6e[_0xc30d('0x19')]+_0x14fe6e[_0xc30d('0x1b')];var _0x3861d0;if(_0x162bfc>=_0x25bdb){_0x162bfc=_0x25bdb;_0x3861d0=0xc8;}else{_0x3861d0=0xce;}_0xb844cd[_0xc30d('0x16')](_0x3861d0);return _0xb844cd[_0xc30d('0x1d')](_0xc30d('0x1e'),_0x2ae4d8+'-'+_0x162bfc+'/'+_0x25bdb)['json'](_0x44b147);}return null;};}function patchUpdates(_0x1c8355){return function(_0x3811df){try{jsonpatch['apply'](_0x3811df,_0x1c8355,!![]);}catch(_0x5be196){return BPromise[_0xc30d('0x1f')](_0x5be196);}return _0x3811df['save']();};}function saveUpdates(_0x12e980,_0x3133b6){return function(_0x42001d){if(_0x42001d){return _0x42001d[_0xc30d('0x20')](_0x12e980)[_0xc30d('0x21')](function(_0x417ff9){return _0x417ff9;});}return null;};}function removeEntity(_0x23eeb1,_0x558428){return function(_0x14e2e1){if(_0x14e2e1){return _0x14e2e1[_0xc30d('0x22')]()['then'](function(){_0x23eeb1['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x2b11b7,_0x2c9445){return function(_0x336597){if(!_0x336597){_0x2b11b7[_0xc30d('0x23')](0x194);}return _0x336597;};}function handleError(_0x4348c9,_0x11c5e1){_0x11c5e1=_0x11c5e1||0x1f4;return function(_0x49bc15){logger[_0xc30d('0x24')](_0x49bc15[_0xc30d('0x25')]);if(_0x49bc15[_0xc30d('0x26')]){delete _0x49bc15[_0xc30d('0x26')];}_0x4348c9[_0xc30d('0x16')](_0x11c5e1)['send'](_0x49bc15);};}exports[_0xc30d('0x27')]=function(_0x36f53b,_0x484dc7){var _0x25265c={},_0x1418d8={},_0x400b76={'count':0x0,'rows':[]};var _0x12561a=_[_0xc30d('0x28')](db['ZendeskField'][_0xc30d('0x29')],function(_0xd9e03d){return{'name':_0xd9e03d['fieldName'],'type':_0xd9e03d[_0xc30d('0x2a')]['key']};});_0x1418d8[_0xc30d('0x2b')]=_[_0xc30d('0x28')](_0x12561a,_0xc30d('0x26'));_0x1418d8['query']=_[_0xc30d('0x2c')](_0x36f53b[_0xc30d('0x2d')]);_0x1418d8['filters']=_['intersection'](_0x1418d8[_0xc30d('0x2b')],_0x1418d8['query']);_0x25265c[_0xc30d('0x2e')]=_['intersection'](_0x1418d8['model'],qs[_0xc30d('0x2f')](_0x36f53b['query'][_0xc30d('0x2f')]));_0x25265c['attributes']=_0x25265c[_0xc30d('0x2e')][_0xc30d('0x30')]?_0x25265c[_0xc30d('0x2e')]:_0x1418d8[_0xc30d('0x2b')];if(!_0x36f53b[_0xc30d('0x2d')][_0xc30d('0x31')](_0xc30d('0x32'))){_0x25265c[_0xc30d('0x1b')]=qs[_0xc30d('0x1b')](_0x36f53b['query'][_0xc30d('0x1b')]);_0x25265c[_0xc30d('0x19')]=qs['offset'](_0x36f53b['query'][_0xc30d('0x19')]);}_0x25265c[_0xc30d('0x33')]=qs[_0xc30d('0x34')](_0x36f53b[_0xc30d('0x2d')][_0xc30d('0x34')]);_0x25265c['where']=qs[_0xc30d('0x35')](_[_0xc30d('0x36')](_0x36f53b[_0xc30d('0x2d')],_0x1418d8[_0xc30d('0x35')]),_0x12561a);if(_0x36f53b['query'][_0xc30d('0x37')]){_0x25265c[_0xc30d('0x38')]=_[_0xc30d('0x39')](_0x25265c[_0xc30d('0x38')],{'$or':_[_0xc30d('0x28')](_0x12561a,function(_0x568b76){if(_0x568b76[_0xc30d('0x2a')]!==_0xc30d('0x3a')){var _0x9f9f24={};_0x9f9f24[_0x568b76[_0xc30d('0x26')]]={'$like':'%'+_0x36f53b['query'][_0xc30d('0x37')]+'%'};return _0x9f9f24;}})});}_0x25265c=_[_0xc30d('0x39')]({},_0x25265c,_0x36f53b[_0xc30d('0x3b')]);var _0x2d574f={'where':_0x25265c[_0xc30d('0x38')]};return db['ZendeskField'][_0xc30d('0x1c')](_0x2d574f)[_0xc30d('0x21')](function(_0xeca46e){_0x400b76[_0xc30d('0x1c')]=_0xeca46e;if(_0x36f53b['query'][_0xc30d('0x3c')]){_0x25265c['include']=[{'all':!![]}];}return db[_0xc30d('0x3d')][_0xc30d('0x3e')](_0x25265c);})[_0xc30d('0x21')](function(_0x5a82f8){_0x400b76[_0xc30d('0x3f')]=_0x5a82f8;return _0x400b76;})[_0xc30d('0x21')](respondWithFilteredResult(_0x484dc7,_0x25265c))[_0xc30d('0x40')](handleError(_0x484dc7,null));};exports[_0xc30d('0x41')]=function(_0x1fa1c1,_0x4e3027){var _0x46be57={'raw':!![],'where':{'id':_0x1fa1c1['params']['id']}},_0x24e081={};_0x24e081[_0xc30d('0x2b')]=_[_0xc30d('0x2c')](db[_0xc30d('0x3d')][_0xc30d('0x29')]);_0x24e081[_0xc30d('0x2d')]=_[_0xc30d('0x2c')](_0x1fa1c1['query']);_0x24e081[_0xc30d('0x35')]=_[_0xc30d('0x42')](_0x24e081[_0xc30d('0x2b')],_0x24e081[_0xc30d('0x2d')]);_0x46be57[_0xc30d('0x2e')]=_[_0xc30d('0x42')](_0x24e081[_0xc30d('0x2b')],qs['fields'](_0x1fa1c1['query'][_0xc30d('0x2f')]));_0x46be57[_0xc30d('0x2e')]=_0x46be57[_0xc30d('0x2e')]['length']?_0x46be57[_0xc30d('0x2e')]:_0x24e081[_0xc30d('0x2b')];if(_0x1fa1c1[_0xc30d('0x2d')][_0xc30d('0x3c')]){_0x46be57[_0xc30d('0x43')]=[{'all':!![]}];}_0x46be57=_[_0xc30d('0x39')]({},_0x46be57,_0x1fa1c1[_0xc30d('0x3b')]);return db[_0xc30d('0x3d')][_0xc30d('0x44')](_0x46be57)[_0xc30d('0x21')](handleEntityNotFound(_0x4e3027,null))[_0xc30d('0x21')](respondWithResult(_0x4e3027,null))[_0xc30d('0x40')](handleError(_0x4e3027,null));};exports[_0xc30d('0x45')]=function(_0x2f77b9,_0x181793){return db[_0xc30d('0x3d')][_0xc30d('0x45')](_0x2f77b9[_0xc30d('0x46')],{})[_0xc30d('0x21')](respondWithResult(_0x181793,0xc9))['catch'](handleError(_0x181793,null));};exports['update']=function(_0x1b2a2e,_0x9e4719){if(_0x1b2a2e[_0xc30d('0x46')]['id']){delete _0x1b2a2e[_0xc30d('0x46')]['id'];}return db[_0xc30d('0x3d')][_0xc30d('0x44')]({'where':{'id':_0x1b2a2e['params']['id']}})[_0xc30d('0x21')](handleEntityNotFound(_0x9e4719,null))[_0xc30d('0x21')](saveUpdates(_0x1b2a2e[_0xc30d('0x46')],null))[_0xc30d('0x21')](respondWithResult(_0x9e4719,null))[_0xc30d('0x40')](handleError(_0x9e4719,null));};exports[_0xc30d('0x22')]=function(_0x5d1143,_0x9b65bd){return db[_0xc30d('0x3d')][_0xc30d('0x44')]({'where':{'id':_0x5d1143[_0xc30d('0x47')]['id']}})[_0xc30d('0x21')](handleEntityNotFound(_0x9b65bd,null))[_0xc30d('0x21')](removeEntity(_0x9b65bd,null))[_0xc30d('0x40')](handleError(_0x9b65bd,null));};