Built motion from commit 52c8a02d.|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 _0x1f7f=['update','then','destroy','stack','name','send','index','map','ZendeskField','rawAttributes','key','model','query','keys','filters','intersection','attributes','fields','length','nolimit','order','sort','where','pick','filter','merge','type','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','create','body','find','params','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','path','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','desk.js','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','apply','reject','save'];(function(_0xf50820,_0x56f041){var _0x2a9b10=function(_0x33f0f4){while(--_0x33f0f4){_0xf50820['push'](_0xf50820['shift']());}};_0x2a9b10(++_0x56f041);}(_0x1f7f,0xbd));var _0xf1f7=function(_0x21b762,_0xc8ef11){_0x21b762=_0x21b762-0x0;var _0x2ea6d4=_0x1f7f[_0x21b762];return _0x2ea6d4;};'use strict';var emlformat=require(_0xf1f7('0x0'));var rimraf=require(_0xf1f7('0x1'));var zipdir=require(_0xf1f7('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xf1f7('0x3'));var moment=require(_0xf1f7('0x4'));var BPromise=require(_0xf1f7('0x5'));var Mustache=require(_0xf1f7('0x6'));var util=require('util');var path=require(_0xf1f7('0x7'));var sox=require(_0xf1f7('0x8'));var csv=require(_0xf1f7('0x9'));var ejs=require(_0xf1f7('0xa'));var fs=require('fs');var fs_extra=require(_0xf1f7('0xb'));var _=require(_0xf1f7('0xc'));var squel=require('squel');var crypto=require(_0xf1f7('0xd'));var jsforce=require(_0xf1f7('0xe'));var deskjs=require(_0xf1f7('0xf'));var toCsv=require(_0xf1f7('0x9'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xf1f7('0x10'));var qs=require(_0xf1f7('0x11'));var as=require(_0xf1f7('0x12'));var hardwareService=require(_0xf1f7('0x13'));var logger=require(_0xf1f7('0x14'))(_0xf1f7('0x15'));var utils=require('../../config/utils');var config=require(_0xf1f7('0x16'));var licenseUtil=require(_0xf1f7('0x17'));var db=require(_0xf1f7('0x18'))['db'];function respondWithStatusCode(_0x1c85fe,_0x2b0845){_0x2b0845=_0x2b0845||0xcc;return function(_0x533420){if(_0x533420){return _0x1c85fe[_0xf1f7('0x19')](_0x2b0845);}return _0x1c85fe[_0xf1f7('0x1a')](_0x2b0845)[_0xf1f7('0x1b')]();};}function respondWithResult(_0x158511,_0x293f75){_0x293f75=_0x293f75||0xc8;return function(_0x407f7b){if(_0x407f7b){return _0x158511[_0xf1f7('0x1a')](_0x293f75)[_0xf1f7('0x1c')](_0x407f7b);}};}function respondWithFilteredResult(_0x463ade,_0x502bb6){return function(_0x368207){if(_0x368207){var _0x2f3b43=typeof _0x502bb6[_0xf1f7('0x1d')]===_0xf1f7('0x1e')&&typeof _0x502bb6[_0xf1f7('0x1f')]===_0xf1f7('0x1e');var _0x50d779=_0x368207[_0xf1f7('0x20')];var _0x401ddb=_0x2f3b43?0x0:_0x502bb6['offset'];var _0x1d30a5=_0x2f3b43?_0x368207['count']:_0x502bb6[_0xf1f7('0x1d')]+_0x502bb6['limit'];var _0x2cc174;if(_0x1d30a5>=_0x50d779){_0x1d30a5=_0x50d779;_0x2cc174=0xc8;}else{_0x2cc174=0xce;}_0x463ade[_0xf1f7('0x1a')](_0x2cc174);return _0x463ade['set']('Content-Range',_0x401ddb+'-'+_0x1d30a5+'/'+_0x50d779)[_0xf1f7('0x1c')](_0x368207);}return null;};}function patchUpdates(_0x44b0ce){return function(_0x953206){try{jsonpatch[_0xf1f7('0x21')](_0x953206,_0x44b0ce,!![]);}catch(_0x902b8f){return BPromise[_0xf1f7('0x22')](_0x902b8f);}return _0x953206[_0xf1f7('0x23')]();};}function saveUpdates(_0x1344ea,_0x50180a){return function(_0x3e3ab1){if(_0x3e3ab1){return _0x3e3ab1[_0xf1f7('0x24')](_0x1344ea)[_0xf1f7('0x25')](function(_0x5cd5bc){return _0x5cd5bc;});}return null;};}function removeEntity(_0x58c5fa,_0x28298d){return function(_0x436d92){if(_0x436d92){return _0x436d92[_0xf1f7('0x26')]()[_0xf1f7('0x25')](function(){_0x58c5fa[_0xf1f7('0x1a')](0xcc)[_0xf1f7('0x1b')]();});}};}function handleEntityNotFound(_0x48c581,_0x39a39d){return function(_0x515e8c){if(!_0x515e8c){_0x48c581['sendStatus'](0x194);}return _0x515e8c;};}function handleError(_0xfa66b0,_0x972c69){_0x972c69=_0x972c69||0x1f4;return function(_0x212202){logger['error'](_0x212202[_0xf1f7('0x27')]);if(_0x212202[_0xf1f7('0x28')]){delete _0x212202[_0xf1f7('0x28')];}_0xfa66b0[_0xf1f7('0x1a')](_0x972c69)[_0xf1f7('0x29')](_0x212202);};}exports[_0xf1f7('0x2a')]=function(_0x220c7a,_0x31b64d){var _0x4cd757={},_0x27329d={},_0x136def={'count':0x0,'rows':[]};var _0x16715f=_[_0xf1f7('0x2b')](db[_0xf1f7('0x2c')][_0xf1f7('0x2d')],function(_0x444b34){return{'name':_0x444b34['fieldName'],'type':_0x444b34['type'][_0xf1f7('0x2e')]};});_0x27329d[_0xf1f7('0x2f')]=_['map'](_0x16715f,'name');_0x27329d[_0xf1f7('0x30')]=_[_0xf1f7('0x31')](_0x220c7a[_0xf1f7('0x30')]);_0x27329d[_0xf1f7('0x32')]=_[_0xf1f7('0x33')](_0x27329d[_0xf1f7('0x2f')],_0x27329d[_0xf1f7('0x30')]);_0x4cd757[_0xf1f7('0x34')]=_['intersection'](_0x27329d[_0xf1f7('0x2f')],qs[_0xf1f7('0x35')](_0x220c7a['query']['fields']));_0x4cd757[_0xf1f7('0x34')]=_0x4cd757[_0xf1f7('0x34')][_0xf1f7('0x36')]?_0x4cd757[_0xf1f7('0x34')]:_0x27329d[_0xf1f7('0x2f')];if(!_0x220c7a[_0xf1f7('0x30')]['hasOwnProperty'](_0xf1f7('0x37'))){_0x4cd757['limit']=qs[_0xf1f7('0x1f')](_0x220c7a[_0xf1f7('0x30')][_0xf1f7('0x1f')]);_0x4cd757[_0xf1f7('0x1d')]=qs[_0xf1f7('0x1d')](_0x220c7a['query'][_0xf1f7('0x1d')]);}_0x4cd757[_0xf1f7('0x38')]=qs[_0xf1f7('0x39')](_0x220c7a[_0xf1f7('0x30')][_0xf1f7('0x39')]);_0x4cd757[_0xf1f7('0x3a')]=qs[_0xf1f7('0x32')](_[_0xf1f7('0x3b')](_0x220c7a[_0xf1f7('0x30')],_0x27329d[_0xf1f7('0x32')]),_0x16715f);if(_0x220c7a['query'][_0xf1f7('0x3c')]){_0x4cd757[_0xf1f7('0x3a')]=_[_0xf1f7('0x3d')](_0x4cd757['where'],{'$or':_[_0xf1f7('0x2b')](_0x16715f,function(_0xc6c2f7){if(_0xc6c2f7[_0xf1f7('0x3e')]!==_0xf1f7('0x3f')){var _0x4d3ab6={};_0x4d3ab6[_0xc6c2f7['name']]={'$like':'%'+_0x220c7a[_0xf1f7('0x30')]['filter']+'%'};return _0x4d3ab6;}})});}_0x4cd757=_['merge']({},_0x4cd757,_0x220c7a[_0xf1f7('0x40')]);var _0x42228d={'where':_0x4cd757[_0xf1f7('0x3a')]};return db['ZendeskField'][_0xf1f7('0x20')](_0x42228d)['then'](function(_0xd33823){_0x136def[_0xf1f7('0x20')]=_0xd33823;if(_0x220c7a[_0xf1f7('0x30')][_0xf1f7('0x41')]){_0x4cd757[_0xf1f7('0x42')]=[{'all':!![]}];}return db[_0xf1f7('0x2c')][_0xf1f7('0x43')](_0x4cd757);})['then'](function(_0x5780c4){_0x136def[_0xf1f7('0x44')]=_0x5780c4;return _0x136def;})['then'](respondWithFilteredResult(_0x31b64d,_0x4cd757))[_0xf1f7('0x45')](handleError(_0x31b64d,null));};exports[_0xf1f7('0x46')]=function(_0x2fc45f,_0x20e764){var _0x2eee5b={'raw':!![],'where':{'id':_0x2fc45f['params']['id']}},_0x1cff8a={};_0x1cff8a['model']=_['keys'](db[_0xf1f7('0x2c')]['rawAttributes']);_0x1cff8a['query']=_[_0xf1f7('0x31')](_0x2fc45f[_0xf1f7('0x30')]);_0x1cff8a[_0xf1f7('0x32')]=_['intersection'](_0x1cff8a[_0xf1f7('0x2f')],_0x1cff8a[_0xf1f7('0x30')]);_0x2eee5b['attributes']=_[_0xf1f7('0x33')](_0x1cff8a[_0xf1f7('0x2f')],qs[_0xf1f7('0x35')](_0x2fc45f[_0xf1f7('0x30')][_0xf1f7('0x35')]));_0x2eee5b['attributes']=_0x2eee5b[_0xf1f7('0x34')][_0xf1f7('0x36')]?_0x2eee5b[_0xf1f7('0x34')]:_0x1cff8a[_0xf1f7('0x2f')];if(_0x2fc45f[_0xf1f7('0x30')][_0xf1f7('0x41')]){_0x2eee5b[_0xf1f7('0x42')]=[{'all':!![]}];}_0x2eee5b=_[_0xf1f7('0x3d')]({},_0x2eee5b,_0x2fc45f['options']);return db[_0xf1f7('0x2c')]['find'](_0x2eee5b)[_0xf1f7('0x25')](handleEntityNotFound(_0x20e764,null))[_0xf1f7('0x25')](respondWithResult(_0x20e764,null))[_0xf1f7('0x45')](handleError(_0x20e764,null));};exports[_0xf1f7('0x47')]=function(_0x229f97,_0x337b5c){return db['ZendeskField'][_0xf1f7('0x47')](_0x229f97[_0xf1f7('0x48')],{})['then'](respondWithResult(_0x337b5c,0xc9))[_0xf1f7('0x45')](handleError(_0x337b5c,null));};exports[_0xf1f7('0x24')]=function(_0x7ef38b,_0x457699){if(_0x7ef38b[_0xf1f7('0x48')]['id']){delete _0x7ef38b['body']['id'];}return db['ZendeskField'][_0xf1f7('0x49')]({'where':{'id':_0x7ef38b['params']['id']}})[_0xf1f7('0x25')](handleEntityNotFound(_0x457699,null))[_0xf1f7('0x25')](saveUpdates(_0x7ef38b[_0xf1f7('0x48')],null))[_0xf1f7('0x25')](respondWithResult(_0x457699,null))[_0xf1f7('0x45')](handleError(_0x457699,null));};exports[_0xf1f7('0x26')]=function(_0x48bce9,_0x32281b){return db[_0xf1f7('0x2c')]['find']({'where':{'id':_0x48bce9[_0xf1f7('0x4a')]['id']}})['then'](handleEntityNotFound(_0x32281b,null))[_0xf1f7('0x25')](removeEntity(_0x32281b,null))[_0xf1f7('0x45')](handleError(_0x32281b,null));};