Built motion from commit (unavailable).|2.5.11
[motion2.git] / server / api / intFreshdeskField / intFreshdeskField.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 _0xb654=['json','count','offset','limit','set','Content-Range','reject','save','update','destroy','error','stack','send','FreshdeskField','rawAttributes','fieldName','type','key','model','map','name','query','keys','filters','intersection','attributes','fields','hasOwnProperty','order','sort','where','pick','filter','merge','VIRTUAL','includeAll','include','findAll','then','rows','catch','show','options','find','create','body','params','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','path','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end'];(function(_0x569407,_0x115d0f){var _0x51d1e3=function(_0x191efb){while(--_0x191efb){_0x569407['push'](_0x569407['shift']());}};_0x51d1e3(++_0x115d0f);}(_0xb654,0xc3));var _0x4b65=function(_0x57d83b,_0x1b1fa9){_0x57d83b=_0x57d83b-0x0;var _0x584460=_0xb654[_0x57d83b];return _0x584460;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x4b65('0x0'));var rimraf=require(_0x4b65('0x1'));var zipdir=require(_0x4b65('0x2'));var jsonpatch=require(_0x4b65('0x3'));var rp=require('request-promise');var moment=require(_0x4b65('0x4'));var BPromise=require(_0x4b65('0x5'));var Mustache=require(_0x4b65('0x6'));var util=require('util');var path=require(_0x4b65('0x7'));var sox=require('sox');var csv=require(_0x4b65('0x8'));var ejs=require(_0x4b65('0x9'));var fs=require('fs');var _=require(_0x4b65('0xa'));var squel=require(_0x4b65('0xb'));var crypto=require(_0x4b65('0xc'));var jsforce=require(_0x4b65('0xd'));var deskjs=require(_0x4b65('0xe'));var toCsv=require(_0x4b65('0x8'));var querystring=require(_0x4b65('0xf'));var Papa=require(_0x4b65('0x10'));var Redis=require(_0x4b65('0x11'));var authService=require(_0x4b65('0x12'));var qs=require(_0x4b65('0x13'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x4b65('0x14'));var utils=require(_0x4b65('0x15'));var config=require('../../config/environment');var licenseUtil=require(_0x4b65('0x16'));var db=require(_0x4b65('0x17'))['db'];function respondWithStatusCode(_0xe5879e,_0xb28760){_0xb28760=_0xb28760||0xcc;return function(_0x16978a){if(_0x16978a){return _0xe5879e[_0x4b65('0x18')](_0xb28760);}return _0xe5879e[_0x4b65('0x19')](_0xb28760)[_0x4b65('0x1a')]();};}function respondWithResult(_0x40a6d7,_0x51c5e6){_0x51c5e6=_0x51c5e6||0xc8;return function(_0x1c4fff){if(_0x1c4fff){return _0x40a6d7['status'](_0x51c5e6)[_0x4b65('0x1b')](_0x1c4fff);}};}function respondWithFilteredResult(_0x4e5f6e,_0x560d6b){return function(_0x5c8e6e){if(_0x5c8e6e){var _0x50b5a1=_0x5c8e6e[_0x4b65('0x1c')],_0x59b1ae=_0x560d6b[_0x4b65('0x1d')],_0x347a14=_0x560d6b['offset']+_0x560d6b[_0x4b65('0x1e')],_0x62c13e;if(_0x347a14>=_0x50b5a1){_0x347a14=_0x50b5a1;_0x62c13e=0xc8;}else{_0x62c13e=0xce;}_0x4e5f6e[_0x4b65('0x19')](_0x62c13e);return _0x4e5f6e[_0x4b65('0x1f')](_0x4b65('0x20'),_0x59b1ae+'-'+_0x347a14+'/'+_0x50b5a1)[_0x4b65('0x1b')](_0x5c8e6e);}return null;};}function patchUpdates(_0x558f61){return function(_0x2aab4b){try{jsonpatch['apply'](_0x2aab4b,_0x558f61,!![]);}catch(_0x5989cf){return BPromise[_0x4b65('0x21')](_0x5989cf);}return _0x2aab4b[_0x4b65('0x22')]();};}function saveUpdates(_0x3f0ebd,_0x1ed573){return function(_0x4f85e9){if(_0x4f85e9){return _0x4f85e9[_0x4b65('0x23')](_0x3f0ebd)['then'](function(_0x4c8e4d){return _0x4c8e4d;});}return null;};}function removeEntity(_0xcda742,_0x3362e0){return function(_0x50a8e8){if(_0x50a8e8){return _0x50a8e8[_0x4b65('0x24')]()['then'](function(){_0xcda742['status'](0xcc)[_0x4b65('0x1a')]();});}};}function handleEntityNotFound(_0x23f318,_0x50bdf4){return function(_0x37197d){if(!_0x37197d){_0x23f318['sendStatus'](0x194);}return _0x37197d;};}function handleError(_0xfa42a7,_0x359067){_0x359067=_0x359067||0x1f4;return function(_0x7e6c5){logger[_0x4b65('0x25')](_0x7e6c5[_0x4b65('0x26')]);if(_0x7e6c5['name']){delete _0x7e6c5['name'];}_0xfa42a7[_0x4b65('0x19')](_0x359067)[_0x4b65('0x27')](_0x7e6c5);};}exports['index']=function(_0x34416d,_0x36fb06){var _0x1c668c={},_0x2d07b2={},_0x2d9822={'count':0x0,'rows':[]};var _0x37fb05=_['map'](db[_0x4b65('0x28')][_0x4b65('0x29')],function(_0x18b1ce){return{'name':_0x18b1ce[_0x4b65('0x2a')],'type':_0x18b1ce[_0x4b65('0x2b')][_0x4b65('0x2c')]};});_0x2d07b2[_0x4b65('0x2d')]=_[_0x4b65('0x2e')](_0x37fb05,_0x4b65('0x2f'));_0x2d07b2[_0x4b65('0x30')]=_[_0x4b65('0x31')](_0x34416d[_0x4b65('0x30')]);_0x2d07b2[_0x4b65('0x32')]=_[_0x4b65('0x33')](_0x2d07b2[_0x4b65('0x2d')],_0x2d07b2['query']);_0x1c668c[_0x4b65('0x34')]=_['intersection'](_0x2d07b2['model'],qs[_0x4b65('0x35')](_0x34416d[_0x4b65('0x30')][_0x4b65('0x35')]));_0x1c668c[_0x4b65('0x34')]=_0x1c668c['attributes']['length']?_0x1c668c[_0x4b65('0x34')]:_0x2d07b2[_0x4b65('0x2d')];if(!_0x34416d[_0x4b65('0x30')][_0x4b65('0x36')]('nolimit')){_0x1c668c[_0x4b65('0x1e')]=qs[_0x4b65('0x1e')](_0x34416d['query'][_0x4b65('0x1e')]);_0x1c668c[_0x4b65('0x1d')]=qs[_0x4b65('0x1d')](_0x34416d[_0x4b65('0x30')]['offset']);}_0x1c668c[_0x4b65('0x37')]=qs[_0x4b65('0x38')](_0x34416d['query'][_0x4b65('0x38')]);_0x1c668c[_0x4b65('0x39')]=qs[_0x4b65('0x32')](_[_0x4b65('0x3a')](_0x34416d[_0x4b65('0x30')],_0x2d07b2[_0x4b65('0x32')]),_0x37fb05);if(_0x34416d[_0x4b65('0x30')][_0x4b65('0x3b')]){_0x1c668c[_0x4b65('0x39')]=_[_0x4b65('0x3c')](_0x1c668c[_0x4b65('0x39')],{'$or':_[_0x4b65('0x2e')](_0x37fb05,function(_0x57e1fe){if(_0x57e1fe[_0x4b65('0x2b')]!==_0x4b65('0x3d')){var _0x2672ee={};_0x2672ee[_0x57e1fe[_0x4b65('0x2f')]]={'$like':'%'+_0x34416d[_0x4b65('0x30')][_0x4b65('0x3b')]+'%'};return _0x2672ee;}})});}_0x1c668c=_[_0x4b65('0x3c')]({},_0x1c668c,_0x34416d['options']);var _0x3e3e80={'where':_0x1c668c['where']};return db[_0x4b65('0x28')][_0x4b65('0x1c')](_0x3e3e80)['then'](function(_0x2abc57){_0x2d9822['count']=_0x2abc57;if(_0x34416d[_0x4b65('0x30')][_0x4b65('0x3e')]){_0x1c668c[_0x4b65('0x3f')]=[{'all':!![]}];}return db[_0x4b65('0x28')][_0x4b65('0x40')](_0x1c668c);})[_0x4b65('0x41')](function(_0x26d235){_0x2d9822[_0x4b65('0x42')]=_0x26d235;return _0x2d9822;})['then'](respondWithFilteredResult(_0x36fb06,_0x1c668c))[_0x4b65('0x43')](handleError(_0x36fb06,null));};exports[_0x4b65('0x44')]=function(_0x323df0,_0x35a4dc){var _0x535c18={'raw':!![],'where':{'id':_0x323df0['params']['id']}},_0x315eb8={};_0x315eb8['model']=_['keys'](db['FreshdeskField'][_0x4b65('0x29')]);_0x315eb8[_0x4b65('0x30')]=_['keys'](_0x323df0['query']);_0x315eb8['filters']=_[_0x4b65('0x33')](_0x315eb8[_0x4b65('0x2d')],_0x315eb8['query']);_0x535c18[_0x4b65('0x34')]=_[_0x4b65('0x33')](_0x315eb8[_0x4b65('0x2d')],qs[_0x4b65('0x35')](_0x323df0[_0x4b65('0x30')][_0x4b65('0x35')]));_0x535c18[_0x4b65('0x34')]=_0x535c18[_0x4b65('0x34')]['length']?_0x535c18['attributes']:_0x315eb8[_0x4b65('0x2d')];if(_0x323df0[_0x4b65('0x30')][_0x4b65('0x3e')]){_0x535c18[_0x4b65('0x3f')]=[{'all':!![]}];}_0x535c18=_[_0x4b65('0x3c')]({},_0x535c18,_0x323df0[_0x4b65('0x45')]);return db[_0x4b65('0x28')][_0x4b65('0x46')](_0x535c18)['then'](handleEntityNotFound(_0x35a4dc,null))[_0x4b65('0x41')](respondWithResult(_0x35a4dc,null))['catch'](handleError(_0x35a4dc,null));};exports[_0x4b65('0x47')]=function(_0xd0859f,_0x506b2a){return db[_0x4b65('0x28')]['create'](_0xd0859f[_0x4b65('0x48')],{})[_0x4b65('0x41')](respondWithResult(_0x506b2a,0xc9))['catch'](handleError(_0x506b2a,null));};exports[_0x4b65('0x23')]=function(_0x2332ce,_0x34bd9f){if(_0x2332ce['body']['id']){delete _0x2332ce['body']['id'];}return db[_0x4b65('0x28')][_0x4b65('0x46')]({'where':{'id':_0x2332ce[_0x4b65('0x49')]['id']}})['then'](handleEntityNotFound(_0x34bd9f,null))[_0x4b65('0x41')](saveUpdates(_0x2332ce[_0x4b65('0x48')],null))[_0x4b65('0x41')](respondWithResult(_0x34bd9f,null))['catch'](handleError(_0x34bd9f,null));};exports['destroy']=function(_0x2075ed,_0x1b24a5){return db['FreshdeskField']['find']({'where':{'id':_0x2075ed[_0x4b65('0x49')]['id']}})[_0x4b65('0x41')](handleEntityNotFound(_0x1b24a5,null))[_0x4b65('0x41')](removeEntity(_0x1b24a5,null))[_0x4b65('0x43')](handleError(_0x1b24a5,null));};