2c4f1faf6bcc80f0aad9eedfb443628292c6700d
[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 _0xe288=['fieldName','key','model','query','keys','filters','intersection','attributes','fields','length','nolimit','order','sort','where','pick','filter','merge','map','type','VIRTUAL','options','count','includeAll','include','findAll','rows','catch','find','create','body','params','destroy','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','end','status','json','offset','limit','undefined','set','Content-Range','apply','save','update','then','error','stack','name','index','ZohoField','rawAttributes'];(function(_0x46be78,_0x5a4ee7){var _0x105199=function(_0x37e2b0){while(--_0x37e2b0){_0x46be78['push'](_0x46be78['shift']());}};_0x105199(++_0x5a4ee7);}(_0xe288,0xbc));var _0x8e28=function(_0x51ffc3,_0x5f03b2){_0x51ffc3=_0x51ffc3-0x0;var _0x14da54=_0xe288[_0x51ffc3];return _0x14da54;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x8e28('0x0'));var zipdir=require(_0x8e28('0x1'));var jsonpatch=require(_0x8e28('0x2'));var rp=require(_0x8e28('0x3'));var moment=require('moment');var BPromise=require(_0x8e28('0x4'));var Mustache=require(_0x8e28('0x5'));var util=require(_0x8e28('0x6'));var path=require(_0x8e28('0x7'));var sox=require(_0x8e28('0x8'));var csv=require(_0x8e28('0x9'));var ejs=require(_0x8e28('0xa'));var fs=require('fs');var fs_extra=require(_0x8e28('0xb'));var _=require(_0x8e28('0xc'));var squel=require(_0x8e28('0xd'));var crypto=require(_0x8e28('0xe'));var jsforce=require('jsforce');var deskjs=require(_0x8e28('0xf'));var toCsv=require(_0x8e28('0x9'));var querystring=require(_0x8e28('0x10'));var Papa=require(_0x8e28('0x11'));var Redis=require(_0x8e28('0x12'));var authService=require(_0x8e28('0x13'));var qs=require(_0x8e28('0x14'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x8e28('0x15'));var logger=require(_0x8e28('0x16'))(_0x8e28('0x17'));var utils=require(_0x8e28('0x18'));var config=require(_0x8e28('0x19'));var licenseUtil=require(_0x8e28('0x1a'));var db=require(_0x8e28('0x1b'))['db'];function respondWithStatusCode(_0x1d75d6,_0x5d0d91){_0x5d0d91=_0x5d0d91||0xcc;return function(_0x173161){if(_0x173161){return _0x1d75d6['sendStatus'](_0x5d0d91);}return _0x1d75d6['status'](_0x5d0d91)[_0x8e28('0x1c')]();};}function respondWithResult(_0x335cbc,_0x32fedb){_0x32fedb=_0x32fedb||0xc8;return function(_0x50905d){if(_0x50905d){return _0x335cbc[_0x8e28('0x1d')](_0x32fedb)[_0x8e28('0x1e')](_0x50905d);}};}function respondWithFilteredResult(_0x4bb5d7,_0x438a20){return function(_0x3fb57a){if(_0x3fb57a){var _0xcba67e=typeof _0x438a20[_0x8e28('0x1f')]==='undefined'&&typeof _0x438a20[_0x8e28('0x20')]===_0x8e28('0x21');var _0x1a3218=_0x3fb57a['count'];var _0x27b278=_0xcba67e?0x0:_0x438a20['offset'];var _0x562797=_0xcba67e?_0x3fb57a['count']:_0x438a20[_0x8e28('0x1f')]+_0x438a20[_0x8e28('0x20')];var _0x1fce61;if(_0x562797>=_0x1a3218){_0x562797=_0x1a3218;_0x1fce61=0xc8;}else{_0x1fce61=0xce;}_0x4bb5d7['status'](_0x1fce61);return _0x4bb5d7[_0x8e28('0x22')](_0x8e28('0x23'),_0x27b278+'-'+_0x562797+'/'+_0x1a3218)[_0x8e28('0x1e')](_0x3fb57a);}return null;};}function patchUpdates(_0x7e0b0b){return function(_0x6f9270){try{jsonpatch[_0x8e28('0x24')](_0x6f9270,_0x7e0b0b,!![]);}catch(_0x2abee7){return BPromise['reject'](_0x2abee7);}return _0x6f9270[_0x8e28('0x25')]();};}function saveUpdates(_0x270011,_0xc4ef24){return function(_0x355e89){if(_0x355e89){return _0x355e89[_0x8e28('0x26')](_0x270011)[_0x8e28('0x27')](function(_0x133be9){return _0x133be9;});}return null;};}function removeEntity(_0x22bedc,_0x4f44ed){return function(_0x3f61fe){if(_0x3f61fe){return _0x3f61fe['destroy']()[_0x8e28('0x27')](function(){_0x22bedc[_0x8e28('0x1d')](0xcc)[_0x8e28('0x1c')]();});}};}function handleEntityNotFound(_0x363ca8,_0x3d1c8d){return function(_0x231d2a){if(!_0x231d2a){_0x363ca8['sendStatus'](0x194);}return _0x231d2a;};}function handleError(_0x18931e,_0x2953c3){_0x2953c3=_0x2953c3||0x1f4;return function(_0x428639){logger[_0x8e28('0x28')](_0x428639[_0x8e28('0x29')]);if(_0x428639[_0x8e28('0x2a')]){delete _0x428639[_0x8e28('0x2a')];}_0x18931e[_0x8e28('0x1d')](_0x2953c3)['send'](_0x428639);};}exports[_0x8e28('0x2b')]=function(_0xf9dfdd,_0x1a21a5){var _0x410699={},_0x3056d9={},_0x586912={'count':0x0,'rows':[]};var _0x36c562=_['map'](db[_0x8e28('0x2c')][_0x8e28('0x2d')],function(_0x89fbbd){return{'name':_0x89fbbd[_0x8e28('0x2e')],'type':_0x89fbbd['type'][_0x8e28('0x2f')]};});_0x3056d9[_0x8e28('0x30')]=_['map'](_0x36c562,_0x8e28('0x2a'));_0x3056d9[_0x8e28('0x31')]=_[_0x8e28('0x32')](_0xf9dfdd[_0x8e28('0x31')]);_0x3056d9[_0x8e28('0x33')]=_[_0x8e28('0x34')](_0x3056d9[_0x8e28('0x30')],_0x3056d9[_0x8e28('0x31')]);_0x410699[_0x8e28('0x35')]=_[_0x8e28('0x34')](_0x3056d9[_0x8e28('0x30')],qs['fields'](_0xf9dfdd[_0x8e28('0x31')][_0x8e28('0x36')]));_0x410699['attributes']=_0x410699[_0x8e28('0x35')][_0x8e28('0x37')]?_0x410699[_0x8e28('0x35')]:_0x3056d9[_0x8e28('0x30')];if(!_0xf9dfdd[_0x8e28('0x31')]['hasOwnProperty'](_0x8e28('0x38'))){_0x410699[_0x8e28('0x20')]=qs['limit'](_0xf9dfdd[_0x8e28('0x31')][_0x8e28('0x20')]);_0x410699[_0x8e28('0x1f')]=qs[_0x8e28('0x1f')](_0xf9dfdd[_0x8e28('0x31')][_0x8e28('0x1f')]);}_0x410699[_0x8e28('0x39')]=qs[_0x8e28('0x3a')](_0xf9dfdd[_0x8e28('0x31')][_0x8e28('0x3a')]);_0x410699[_0x8e28('0x3b')]=qs['filters'](_[_0x8e28('0x3c')](_0xf9dfdd[_0x8e28('0x31')],_0x3056d9[_0x8e28('0x33')]),_0x36c562);if(_0xf9dfdd['query'][_0x8e28('0x3d')]){_0x410699[_0x8e28('0x3b')]=_[_0x8e28('0x3e')](_0x410699[_0x8e28('0x3b')],{'$or':_[_0x8e28('0x3f')](_0x36c562,function(_0x428dd4){if(_0x428dd4[_0x8e28('0x40')]!==_0x8e28('0x41')){var _0x5f5091={};_0x5f5091[_0x428dd4[_0x8e28('0x2a')]]={'$like':'%'+_0xf9dfdd[_0x8e28('0x31')][_0x8e28('0x3d')]+'%'};return _0x5f5091;}})});}_0x410699=_[_0x8e28('0x3e')]({},_0x410699,_0xf9dfdd[_0x8e28('0x42')]);var _0xe190c5={'where':_0x410699[_0x8e28('0x3b')]};return db[_0x8e28('0x2c')]['count'](_0xe190c5)[_0x8e28('0x27')](function(_0x4e824b){_0x586912[_0x8e28('0x43')]=_0x4e824b;if(_0xf9dfdd[_0x8e28('0x31')][_0x8e28('0x44')]){_0x410699[_0x8e28('0x45')]=[{'all':!![]}];}return db[_0x8e28('0x2c')][_0x8e28('0x46')](_0x410699);})['then'](function(_0x74937e){_0x586912[_0x8e28('0x47')]=_0x74937e;return _0x586912;})[_0x8e28('0x27')](respondWithFilteredResult(_0x1a21a5,_0x410699))[_0x8e28('0x48')](handleError(_0x1a21a5,null));};exports['show']=function(_0x2ce39e,_0x1a2c79){var _0x45229c={'raw':!![],'where':{'id':_0x2ce39e['params']['id']}},_0x5b38c1={};_0x5b38c1['model']=_[_0x8e28('0x32')](db['ZohoField']['rawAttributes']);_0x5b38c1[_0x8e28('0x31')]=_[_0x8e28('0x32')](_0x2ce39e[_0x8e28('0x31')]);_0x5b38c1[_0x8e28('0x33')]=_[_0x8e28('0x34')](_0x5b38c1[_0x8e28('0x30')],_0x5b38c1[_0x8e28('0x31')]);_0x45229c[_0x8e28('0x35')]=_[_0x8e28('0x34')](_0x5b38c1[_0x8e28('0x30')],qs[_0x8e28('0x36')](_0x2ce39e[_0x8e28('0x31')][_0x8e28('0x36')]));_0x45229c[_0x8e28('0x35')]=_0x45229c[_0x8e28('0x35')][_0x8e28('0x37')]?_0x45229c['attributes']:_0x5b38c1[_0x8e28('0x30')];if(_0x2ce39e[_0x8e28('0x31')][_0x8e28('0x44')]){_0x45229c['include']=[{'all':!![]}];}_0x45229c=_[_0x8e28('0x3e')]({},_0x45229c,_0x2ce39e[_0x8e28('0x42')]);return db[_0x8e28('0x2c')][_0x8e28('0x49')](_0x45229c)[_0x8e28('0x27')](handleEntityNotFound(_0x1a2c79,null))[_0x8e28('0x27')](respondWithResult(_0x1a2c79,null))[_0x8e28('0x48')](handleError(_0x1a2c79,null));};exports['create']=function(_0x2fb6bb,_0x555001){return db[_0x8e28('0x2c')][_0x8e28('0x4a')](_0x2fb6bb[_0x8e28('0x4b')],{})[_0x8e28('0x27')](respondWithResult(_0x555001,0xc9))[_0x8e28('0x48')](handleError(_0x555001,null));};exports[_0x8e28('0x26')]=function(_0xc2b8c3,_0x5da858){if(_0xc2b8c3[_0x8e28('0x4b')]['id']){delete _0xc2b8c3['body']['id'];}return db['ZohoField'][_0x8e28('0x49')]({'where':{'id':_0xc2b8c3[_0x8e28('0x4c')]['id']}})[_0x8e28('0x27')](handleEntityNotFound(_0x5da858,null))['then'](saveUpdates(_0xc2b8c3['body'],null))[_0x8e28('0x27')](respondWithResult(_0x5da858,null))[_0x8e28('0x48')](handleError(_0x5da858,null));};exports[_0x8e28('0x4d')]=function(_0x4bd2f2,_0xcfe5e6){return db[_0x8e28('0x2c')][_0x8e28('0x49')]({'where':{'id':_0x4bd2f2[_0x8e28('0x4c')]['id']}})[_0x8e28('0x27')](handleEntityNotFound(_0xcfe5e6,null))[_0x8e28('0x27')](removeEntity(_0xcfe5e6,null))['catch'](handleError(_0xcfe5e6,null));};