0b85302bb3e65954fac3f64a2bb6489ede95b1d0
[motion2.git] / server / api / intZohoField / intZohoField.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 _0xf07f=['filter','merge','type','VIRTUAL','options','includeAll','include','ZohoField','findAll','rows','find','catch','create','body','destroy','params','eml-format','rimraf','fast-json-patch','moment','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','sendStatus','end','json','undefined','limit','count','offset','status','set','Content-Range','update','then','error','stack','name','index','map','rawAttributes','fieldName','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick'];(function(_0x52f64e,_0x1e1717){var _0xd5dfc8=function(_0x323e3a){while(--_0x323e3a){_0x52f64e['push'](_0x52f64e['shift']());}};_0xd5dfc8(++_0x1e1717);}(_0xf07f,0xa4));var _0xff07=function(_0x5d55d4,_0x1577fe){_0x5d55d4=_0x5d55d4-0x0;var _0x419d69=_0xf07f[_0x5d55d4];return _0x419d69;};'use strict';var emlformat=require(_0xff07('0x0'));var rimraf=require(_0xff07('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xff07('0x2'));var rp=require('request-promise');var moment=require(_0xff07('0x3'));var BPromise=require('bluebird');var Mustache=require(_0xff07('0x4'));var util=require(_0xff07('0x5'));var path=require(_0xff07('0x6'));var sox=require(_0xff07('0x7'));var csv=require(_0xff07('0x8'));var ejs=require(_0xff07('0x9'));var fs=require('fs');var fs_extra=require(_0xff07('0xa'));var _=require(_0xff07('0xb'));var squel=require(_0xff07('0xc'));var crypto=require(_0xff07('0xd'));var jsforce=require(_0xff07('0xe'));var deskjs=require('desk.js');var toCsv=require(_0xff07('0x8'));var querystring=require(_0xff07('0xf'));var Papa=require('papaparse');var Redis=require(_0xff07('0x10'));var authService=require('../../components/auth/service');var qs=require(_0xff07('0x11'));var as=require(_0xff07('0x12'));var hardwareService=require(_0xff07('0x13'));var logger=require(_0xff07('0x14'))(_0xff07('0x15'));var utils=require('../../config/utils');var config=require(_0xff07('0x16'));var licenseUtil=require(_0xff07('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x3ffbf9,_0x473de5){_0x473de5=_0x473de5||0xcc;return function(_0x247c0a){if(_0x247c0a){return _0x3ffbf9[_0xff07('0x18')](_0x473de5);}return _0x3ffbf9['status'](_0x473de5)[_0xff07('0x19')]();};}function respondWithResult(_0x4a990c,_0x242536){_0x242536=_0x242536||0xc8;return function(_0x15a55c){if(_0x15a55c){return _0x4a990c['status'](_0x242536)[_0xff07('0x1a')](_0x15a55c);}};}function respondWithFilteredResult(_0x1a11a6,_0x5cd138){return function(_0x4bfa19){if(_0x4bfa19){var _0x5ca77b=typeof _0x5cd138['offset']===_0xff07('0x1b')&&typeof _0x5cd138[_0xff07('0x1c')]===_0xff07('0x1b');var _0x4caff8=_0x4bfa19[_0xff07('0x1d')];var _0x4bf3f0=_0x5ca77b?0x0:_0x5cd138['offset'];var _0x57f4d2=_0x5ca77b?_0x4bfa19['count']:_0x5cd138[_0xff07('0x1e')]+_0x5cd138['limit'];var _0x176e38;if(_0x57f4d2>=_0x4caff8){_0x57f4d2=_0x4caff8;_0x176e38=0xc8;}else{_0x176e38=0xce;}_0x1a11a6[_0xff07('0x1f')](_0x176e38);return _0x1a11a6[_0xff07('0x20')](_0xff07('0x21'),_0x4bf3f0+'-'+_0x57f4d2+'/'+_0x4caff8)[_0xff07('0x1a')](_0x4bfa19);}return null;};}function patchUpdates(_0x18500b){return function(_0x372266){try{jsonpatch['apply'](_0x372266,_0x18500b,!![]);}catch(_0x27592f){return BPromise['reject'](_0x27592f);}return _0x372266['save']();};}function saveUpdates(_0x237159,_0x40fc63){return function(_0x595319){if(_0x595319){return _0x595319[_0xff07('0x22')](_0x237159)[_0xff07('0x23')](function(_0xb4212){return _0xb4212;});}return null;};}function removeEntity(_0x24b572,_0x111560){return function(_0x11294d){if(_0x11294d){return _0x11294d['destroy']()[_0xff07('0x23')](function(){_0x24b572['status'](0xcc)[_0xff07('0x19')]();});}};}function handleEntityNotFound(_0x4bf26f,_0x2f2e02){return function(_0x1a87ce){if(!_0x1a87ce){_0x4bf26f[_0xff07('0x18')](0x194);}return _0x1a87ce;};}function handleError(_0x36e7ef,_0x2cbb49){_0x2cbb49=_0x2cbb49||0x1f4;return function(_0x3c99fd){logger[_0xff07('0x24')](_0x3c99fd[_0xff07('0x25')]);if(_0x3c99fd[_0xff07('0x26')]){delete _0x3c99fd[_0xff07('0x26')];}_0x36e7ef[_0xff07('0x1f')](_0x2cbb49)['send'](_0x3c99fd);};}exports[_0xff07('0x27')]=function(_0x22fdb1,_0x56b845){var _0x2cb387={},_0x515571={},_0x5dcd53={'count':0x0,'rows':[]};var _0x47ac6c=_[_0xff07('0x28')](db['ZohoField'][_0xff07('0x29')],function(_0x2d6836){return{'name':_0x2d6836[_0xff07('0x2a')],'type':_0x2d6836['type'][_0xff07('0x2b')]};});_0x515571[_0xff07('0x2c')]=_[_0xff07('0x28')](_0x47ac6c,_0xff07('0x26'));_0x515571[_0xff07('0x2d')]=_[_0xff07('0x2e')](_0x22fdb1['query']);_0x515571[_0xff07('0x2f')]=_[_0xff07('0x30')](_0x515571[_0xff07('0x2c')],_0x515571[_0xff07('0x2d')]);_0x2cb387[_0xff07('0x31')]=_[_0xff07('0x30')](_0x515571[_0xff07('0x2c')],qs['fields'](_0x22fdb1[_0xff07('0x2d')][_0xff07('0x32')]));_0x2cb387[_0xff07('0x31')]=_0x2cb387[_0xff07('0x31')][_0xff07('0x33')]?_0x2cb387[_0xff07('0x31')]:_0x515571[_0xff07('0x2c')];if(!_0x22fdb1[_0xff07('0x2d')][_0xff07('0x34')](_0xff07('0x35'))){_0x2cb387['limit']=qs['limit'](_0x22fdb1[_0xff07('0x2d')][_0xff07('0x1c')]);_0x2cb387[_0xff07('0x1e')]=qs['offset'](_0x22fdb1['query'][_0xff07('0x1e')]);}_0x2cb387[_0xff07('0x36')]=qs[_0xff07('0x37')](_0x22fdb1[_0xff07('0x2d')][_0xff07('0x37')]);_0x2cb387[_0xff07('0x38')]=qs[_0xff07('0x2f')](_[_0xff07('0x39')](_0x22fdb1[_0xff07('0x2d')],_0x515571[_0xff07('0x2f')]),_0x47ac6c);if(_0x22fdb1[_0xff07('0x2d')][_0xff07('0x3a')]){_0x2cb387[_0xff07('0x38')]=_[_0xff07('0x3b')](_0x2cb387['where'],{'$or':_[_0xff07('0x28')](_0x47ac6c,function(_0x500218){if(_0x500218[_0xff07('0x3c')]!==_0xff07('0x3d')){var _0x592ca8={};_0x592ca8[_0x500218[_0xff07('0x26')]]={'$like':'%'+_0x22fdb1['query'][_0xff07('0x3a')]+'%'};return _0x592ca8;}})});}_0x2cb387=_[_0xff07('0x3b')]({},_0x2cb387,_0x22fdb1[_0xff07('0x3e')]);var _0x3ae8fe={'where':_0x2cb387[_0xff07('0x38')]};return db['ZohoField'][_0xff07('0x1d')](_0x3ae8fe)[_0xff07('0x23')](function(_0x5ef160){_0x5dcd53[_0xff07('0x1d')]=_0x5ef160;if(_0x22fdb1[_0xff07('0x2d')][_0xff07('0x3f')]){_0x2cb387[_0xff07('0x40')]=[{'all':!![]}];}return db[_0xff07('0x41')][_0xff07('0x42')](_0x2cb387);})[_0xff07('0x23')](function(_0x5b6473){_0x5dcd53[_0xff07('0x43')]=_0x5b6473;return _0x5dcd53;})['then'](respondWithFilteredResult(_0x56b845,_0x2cb387))['catch'](handleError(_0x56b845,null));};exports['show']=function(_0x5366ca,_0x2814d4){var _0x3a1581={'raw':!![],'where':{'id':_0x5366ca['params']['id']}},_0x565e41={};_0x565e41[_0xff07('0x2c')]=_[_0xff07('0x2e')](db[_0xff07('0x41')][_0xff07('0x29')]);_0x565e41[_0xff07('0x2d')]=_[_0xff07('0x2e')](_0x5366ca[_0xff07('0x2d')]);_0x565e41[_0xff07('0x2f')]=_[_0xff07('0x30')](_0x565e41[_0xff07('0x2c')],_0x565e41[_0xff07('0x2d')]);_0x3a1581['attributes']=_[_0xff07('0x30')](_0x565e41[_0xff07('0x2c')],qs[_0xff07('0x32')](_0x5366ca['query'][_0xff07('0x32')]));_0x3a1581[_0xff07('0x31')]=_0x3a1581[_0xff07('0x31')][_0xff07('0x33')]?_0x3a1581[_0xff07('0x31')]:_0x565e41[_0xff07('0x2c')];if(_0x5366ca['query']['includeAll']){_0x3a1581['include']=[{'all':!![]}];}_0x3a1581=_['merge']({},_0x3a1581,_0x5366ca[_0xff07('0x3e')]);return db[_0xff07('0x41')][_0xff07('0x44')](_0x3a1581)[_0xff07('0x23')](handleEntityNotFound(_0x2814d4,null))['then'](respondWithResult(_0x2814d4,null))[_0xff07('0x45')](handleError(_0x2814d4,null));};exports[_0xff07('0x46')]=function(_0x5f2d11,_0x3f3041){return db[_0xff07('0x41')][_0xff07('0x46')](_0x5f2d11[_0xff07('0x47')],{})[_0xff07('0x23')](respondWithResult(_0x3f3041,0xc9))[_0xff07('0x45')](handleError(_0x3f3041,null));};exports['update']=function(_0x4cef1d,_0x103924){if(_0x4cef1d[_0xff07('0x47')]['id']){delete _0x4cef1d[_0xff07('0x47')]['id'];}return db[_0xff07('0x41')][_0xff07('0x44')]({'where':{'id':_0x4cef1d['params']['id']}})[_0xff07('0x23')](handleEntityNotFound(_0x103924,null))[_0xff07('0x23')](saveUpdates(_0x4cef1d['body'],null))[_0xff07('0x23')](respondWithResult(_0x103924,null))[_0xff07('0x45')](handleError(_0x103924,null));};exports[_0xff07('0x48')]=function(_0x3575f7,_0x958c19){return db[_0xff07('0x41')]['find']({'where':{'id':_0x3575f7[_0xff07('0x49')]['id']}})[_0xff07('0x23')](handleEntityNotFound(_0x958c19,null))['then'](removeEntity(_0x958c19,null))[_0xff07('0x45')](handleError(_0x958c19,null));};