Built motion from commit (unavailable).|2.5.11
[motion2.git] / server / api / intFreshsalesAccount / intFreshsalesAccount.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 _0xe5b5=['limit','set','Content-Range','json','apply','reject','save','then','destroy','stack','name','send','index','map','FreshsalesAccount','rawAttributes','type','key','query','keys','filters','attributes','intersection','model','fields','hasOwnProperty','order','sort','where','pick','merge','options','findAll','rows','show','include','find','create','body','update','params','getConfigurations','findOne','FreshsalesConfiguration','filter','length','addConfiguration','AccountId','getSubjects','channel','Descriptions','getDescriptions','Subjects','FreshsalesField','username','apiKey','remoteUri','slice','substring','lastIndexOf','format','%s%s','users','email','Requested\x20Resource\x20not\x20Found','statusCode','getFields,\x20%s,\x20%s,\x20%s','test','Wrong\x20credentials','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../components/integrations/configuration','jayson/promise','client','http','request','info','FreshsalesAccount,\x20%s,\x20%s','request\x20sent','FreshsalesAccount,\x20%s,\x20%s,\x20%s','stringify','error','code','message','catch','sendStatus','status','end','count','offset'];(function(_0x474f47,_0x2303b7){var _0x21bfe6=function(_0x1121d1){while(--_0x1121d1){_0x474f47['push'](_0x474f47['shift']());}};_0x21bfe6(++_0x2303b7);}(_0xe5b5,0x12b));var _0x5e5b=function(_0xd1d19a,_0x1933f0){_0xd1d19a=_0xd1d19a-0x0;var _0x52a79d=_0xe5b5[_0xd1d19a];return _0x52a79d;};'use strict';var pdf=require(_0x5e5b('0x0'));var emlformat=require(_0x5e5b('0x1'));var rimraf=require(_0x5e5b('0x2'));var zipdir=require(_0x5e5b('0x3'));var jsonpatch=require(_0x5e5b('0x4'));var rp=require(_0x5e5b('0x5'));var moment=require(_0x5e5b('0x6'));var BPromise=require(_0x5e5b('0x7'));var Mustache=require(_0x5e5b('0x8'));var util=require(_0x5e5b('0x9'));var path=require(_0x5e5b('0xa'));var sox=require(_0x5e5b('0xb'));var csv=require(_0x5e5b('0xc'));var ejs=require(_0x5e5b('0xd'));var fs=require('fs');var _=require(_0x5e5b('0xe'));var squel=require(_0x5e5b('0xf'));var crypto=require(_0x5e5b('0x10'));var jsforce=require(_0x5e5b('0x11'));var deskjs=require(_0x5e5b('0x12'));var toCsv=require(_0x5e5b('0xc'));var querystring=require(_0x5e5b('0x13'));var Papa=require(_0x5e5b('0x14'));var Redis=require(_0x5e5b('0x15'));var authService=require('../../components/auth/service');var qs=require(_0x5e5b('0x16'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x5e5b('0x17'));var logger=require(_0x5e5b('0x18'))(_0x5e5b('0x19'));var utils=require(_0x5e5b('0x1a'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];var integrations=require(_0x5e5b('0x1b'));var jayson=require(_0x5e5b('0x1c'));var client=jayson[_0x5e5b('0x1d')][_0x5e5b('0x1e')]({'port':0x232a});function respondWithRpcPromise(_0x13a01e,_0x1e3483,_0x2e331d,_0x49edd0){return new BPromise(function(_0x2b37fa,_0x2e92c3){var _0x4ff37b=_0x49edd0||client;return _0x4ff37b[_0x5e5b('0x1f')](_0x13a01e,_0x2e331d)['then'](function(_0x4e9509){logger[_0x5e5b('0x20')](_0x5e5b('0x21'),_0x1e3483,_0x5e5b('0x22'));logger['debug'](_0x5e5b('0x23'),_0x1e3483,'request\x20sent',JSON[_0x5e5b('0x24')](_0x4e9509));if(_0x4e9509[_0x5e5b('0x25')]){if(_0x4e9509['error'][_0x5e5b('0x26')]===0x1f4){logger[_0x5e5b('0x25')](_0x5e5b('0x21'),_0x1e3483,_0x4e9509['error'][_0x5e5b('0x27')]);return _0x2e92c3(_0x4e9509[_0x5e5b('0x25')]['message']);}logger[_0x5e5b('0x25')](_0x5e5b('0x21'),_0x1e3483,_0x4e9509[_0x5e5b('0x25')][_0x5e5b('0x27')]);return _0x2b37fa(_0x4e9509[_0x5e5b('0x25')][_0x5e5b('0x27')]);}else{logger[_0x5e5b('0x20')](_0x5e5b('0x21'),_0x1e3483,'request\x20sent');_0x2b37fa(_0x4e9509['result'][_0x5e5b('0x27')]);}})[_0x5e5b('0x28')](function(_0x14bfaf){logger[_0x5e5b('0x25')](_0x5e5b('0x21'),_0x1e3483,_0x14bfaf);_0x2e92c3(_0x14bfaf);});});}function respondWithStatusCode(_0x28cd95,_0x135c6c){_0x135c6c=_0x135c6c||0xcc;return function(_0x18903e){if(_0x18903e){return _0x28cd95[_0x5e5b('0x29')](_0x135c6c);}return _0x28cd95[_0x5e5b('0x2a')](_0x135c6c)[_0x5e5b('0x2b')]();};}function respondWithResult(_0x4da321,_0x1ebb11){_0x1ebb11=_0x1ebb11||0xc8;return function(_0x75800d){if(_0x75800d){return _0x4da321[_0x5e5b('0x2a')](_0x1ebb11)['json'](_0x75800d);}};}function respondWithFilteredResult(_0x988e5d,_0xdb2863){return function(_0x5ee866){if(_0x5ee866){var _0x13ff91=_0x5ee866[_0x5e5b('0x2c')],_0x21c74b=_0xdb2863[_0x5e5b('0x2d')],_0x39ce16=_0xdb2863[_0x5e5b('0x2d')]+_0xdb2863[_0x5e5b('0x2e')],_0x36b595;if(_0x39ce16>=_0x13ff91){_0x39ce16=_0x13ff91;_0x36b595=0xc8;}else{_0x36b595=0xce;}_0x988e5d[_0x5e5b('0x2a')](_0x36b595);return _0x988e5d[_0x5e5b('0x2f')](_0x5e5b('0x30'),_0x21c74b+'-'+_0x39ce16+'/'+_0x13ff91)[_0x5e5b('0x31')](_0x5ee866);}return null;};}function patchUpdates(_0x4ed688){return function(_0x579c39){try{jsonpatch[_0x5e5b('0x32')](_0x579c39,_0x4ed688,!![]);}catch(_0x289f54){return BPromise[_0x5e5b('0x33')](_0x289f54);}return _0x579c39[_0x5e5b('0x34')]();};}function saveUpdates(_0x12f1ee,_0x4b9be8){return function(_0x105b82){if(_0x105b82){return _0x105b82['update'](_0x12f1ee)[_0x5e5b('0x35')](function(_0x384d8f){return _0x384d8f;});}return null;};}function removeEntity(_0x11fa95,_0xc2bc09){return function(_0x4b9801){if(_0x4b9801){return _0x4b9801[_0x5e5b('0x36')]()[_0x5e5b('0x35')](function(){_0x11fa95['status'](0xcc)[_0x5e5b('0x2b')]();});}};}function handleEntityNotFound(_0x3ce0dc,_0x34debb){return function(_0x356db0){if(!_0x356db0){_0x3ce0dc[_0x5e5b('0x29')](0x194);}return _0x356db0;};}function handleError(_0x2296dd,_0x6b7977){_0x6b7977=_0x6b7977||0x1f4;return function(_0x317451){logger['error'](_0x317451[_0x5e5b('0x37')]);if(_0x317451[_0x5e5b('0x38')]){delete _0x317451[_0x5e5b('0x38')];}_0x2296dd[_0x5e5b('0x2a')](_0x6b7977)[_0x5e5b('0x39')](_0x317451);};}exports[_0x5e5b('0x3a')]=function(_0x4fec9e,_0x5b2ba5){var _0x1d6686={},_0x322b41={},_0x8ec651={'count':0x0,'rows':[]};var _0x5b0d32=_[_0x5e5b('0x3b')](db[_0x5e5b('0x3c')][_0x5e5b('0x3d')],function(_0x470b45){return{'name':_0x470b45['fieldName'],'type':_0x470b45[_0x5e5b('0x3e')][_0x5e5b('0x3f')]};});_0x322b41['model']=_['map'](_0x5b0d32,_0x5e5b('0x38'));_0x322b41[_0x5e5b('0x40')]=_[_0x5e5b('0x41')](_0x4fec9e['query']);_0x322b41[_0x5e5b('0x42')]=_['intersection'](_0x322b41['model'],_0x322b41[_0x5e5b('0x40')]);_0x1d6686[_0x5e5b('0x43')]=_[_0x5e5b('0x44')](_0x322b41[_0x5e5b('0x45')],qs[_0x5e5b('0x46')](_0x4fec9e[_0x5e5b('0x40')][_0x5e5b('0x46')]));_0x1d6686[_0x5e5b('0x43')]=_0x1d6686[_0x5e5b('0x43')]['length']?_0x1d6686[_0x5e5b('0x43')]:_0x322b41[_0x5e5b('0x45')];if(!_0x4fec9e['query'][_0x5e5b('0x47')]('nolimit')){_0x1d6686[_0x5e5b('0x2e')]=qs[_0x5e5b('0x2e')](_0x4fec9e[_0x5e5b('0x40')][_0x5e5b('0x2e')]);_0x1d6686[_0x5e5b('0x2d')]=qs[_0x5e5b('0x2d')](_0x4fec9e[_0x5e5b('0x40')][_0x5e5b('0x2d')]);}_0x1d6686[_0x5e5b('0x48')]=qs[_0x5e5b('0x49')](_0x4fec9e[_0x5e5b('0x40')]['sort']);_0x1d6686[_0x5e5b('0x4a')]=qs[_0x5e5b('0x42')](_[_0x5e5b('0x4b')](_0x4fec9e['query'],_0x322b41[_0x5e5b('0x42')]),_0x5b0d32);if(_0x4fec9e[_0x5e5b('0x40')]['filter']){_0x1d6686[_0x5e5b('0x4a')]=_[_0x5e5b('0x4c')](_0x1d6686['where'],{'$or':_[_0x5e5b('0x3b')](_0x5b0d32,function(_0x5e32fd){if(_0x5e32fd['type']!=='VIRTUAL'){var _0x362604={};_0x362604[_0x5e32fd['name']]={'$like':'%'+_0x4fec9e[_0x5e5b('0x40')]['filter']+'%'};return _0x362604;}})});}_0x1d6686=_[_0x5e5b('0x4c')]({},_0x1d6686,_0x4fec9e[_0x5e5b('0x4d')]);var _0x2bc089={'where':_0x1d6686[_0x5e5b('0x4a')]};return db[_0x5e5b('0x3c')][_0x5e5b('0x2c')](_0x2bc089)[_0x5e5b('0x35')](function(_0x4e4d03){_0x8ec651['count']=_0x4e4d03;if(_0x4fec9e[_0x5e5b('0x40')]['includeAll']){_0x1d6686['include']=[{'all':!![]}];}return db['FreshsalesAccount'][_0x5e5b('0x4e')](_0x1d6686);})['then'](function(_0x42f42d){_0x8ec651[_0x5e5b('0x4f')]=_0x42f42d;return _0x8ec651;})[_0x5e5b('0x35')](respondWithFilteredResult(_0x5b2ba5,_0x1d6686))[_0x5e5b('0x28')](handleError(_0x5b2ba5,null));};exports[_0x5e5b('0x50')]=function(_0x192445,_0x4fd265){var _0x26a0ff={'raw':![],'where':{'id':_0x192445['params']['id']}},_0x3ae495={};_0x3ae495[_0x5e5b('0x45')]=_['keys'](db[_0x5e5b('0x3c')][_0x5e5b('0x3d')]);_0x3ae495[_0x5e5b('0x40')]=_[_0x5e5b('0x41')](_0x192445['query']);_0x3ae495[_0x5e5b('0x42')]=_[_0x5e5b('0x44')](_0x3ae495['model'],_0x3ae495[_0x5e5b('0x40')]);_0x26a0ff[_0x5e5b('0x43')]=_[_0x5e5b('0x44')](_0x3ae495[_0x5e5b('0x45')],qs[_0x5e5b('0x46')](_0x192445[_0x5e5b('0x40')]['fields']));_0x26a0ff[_0x5e5b('0x43')]=_0x26a0ff[_0x5e5b('0x43')]['length']?_0x26a0ff[_0x5e5b('0x43')]:_0x3ae495[_0x5e5b('0x45')];if(_0x192445[_0x5e5b('0x40')]['includeAll']){_0x26a0ff[_0x5e5b('0x51')]=[{'all':!![]}];}_0x26a0ff=_[_0x5e5b('0x4c')]({},_0x26a0ff,_0x192445[_0x5e5b('0x4d')]);return db['FreshsalesAccount'][_0x5e5b('0x52')](_0x26a0ff)[_0x5e5b('0x35')](handleEntityNotFound(_0x4fd265,null))[_0x5e5b('0x35')](respondWithResult(_0x4fd265,null))['catch'](handleError(_0x4fd265,null));};exports['create']=function(_0x3da13f,_0x545991){return db['FreshsalesAccount'][_0x5e5b('0x53')](_0x3da13f[_0x5e5b('0x54')],{})[_0x5e5b('0x35')](respondWithResult(_0x545991,0xc9))['catch'](handleError(_0x545991,null));};exports[_0x5e5b('0x55')]=function(_0x28ac8b,_0x148032){if(_0x28ac8b[_0x5e5b('0x54')]['id']){delete _0x28ac8b[_0x5e5b('0x54')]['id'];}return db[_0x5e5b('0x3c')]['find']({'where':{'id':_0x28ac8b['params']['id']}})[_0x5e5b('0x35')](handleEntityNotFound(_0x148032,null))[_0x5e5b('0x35')](saveUpdates(_0x28ac8b[_0x5e5b('0x54')],null))[_0x5e5b('0x35')](respondWithResult(_0x148032,null))['catch'](handleError(_0x148032,null));};exports[_0x5e5b('0x36')]=function(_0x4a86b7,_0x325f87){return db[_0x5e5b('0x3c')][_0x5e5b('0x52')]({'where':{'id':_0x4a86b7[_0x5e5b('0x56')]['id']}})[_0x5e5b('0x35')](handleEntityNotFound(_0x325f87,null))[_0x5e5b('0x35')](removeEntity(_0x325f87,null))[_0x5e5b('0x28')](handleError(_0x325f87,null));};exports[_0x5e5b('0x57')]=function(_0x549489,_0x3963eb,_0x21b1d5){var _0x42f294={};var _0x1aea38={};var _0x129026;var _0x5543eb;return db[_0x5e5b('0x3c')][_0x5e5b('0x58')]({'where':{'id':_0x549489[_0x5e5b('0x56')]['id']}})[_0x5e5b('0x35')](handleEntityNotFound(_0x3963eb,null))[_0x5e5b('0x35')](function(_0x5207e0){if(_0x5207e0){_0x129026=_0x5207e0;_0x1aea38[_0x5e5b('0x45')]=_['keys'](db[_0x5e5b('0x59')]['rawAttributes']);_0x1aea38[_0x5e5b('0x40')]=_[_0x5e5b('0x41')](_0x549489[_0x5e5b('0x40')]);_0x1aea38[_0x5e5b('0x42')]=_[_0x5e5b('0x44')](_0x1aea38[_0x5e5b('0x45')],_0x1aea38['query']);_0x42f294[_0x5e5b('0x43')]=_[_0x5e5b('0x44')](_0x1aea38[_0x5e5b('0x45')],qs[_0x5e5b('0x46')](_0x549489['query']['fields']));_0x42f294[_0x5e5b('0x43')]=_0x42f294[_0x5e5b('0x43')]['length']?_0x42f294[_0x5e5b('0x43')]:_0x1aea38[_0x5e5b('0x45')];_0x42f294[_0x5e5b('0x48')]=qs[_0x5e5b('0x49')](_0x549489[_0x5e5b('0x40')]['sort']);_0x42f294[_0x5e5b('0x4a')]=qs[_0x5e5b('0x42')](_['pick'](_0x549489['query'],_0x1aea38['filters']));if(_0x549489[_0x5e5b('0x40')][_0x5e5b('0x5a')]){_0x42f294[_0x5e5b('0x4a')]=_[_0x5e5b('0x4c')](_0x42f294[_0x5e5b('0x4a')],{'$or':_['map'](_0x42f294[_0x5e5b('0x43')],function(_0x454095){var _0x4eedb8={};_0x4eedb8[_0x454095]={'$like':'%'+_0x549489[_0x5e5b('0x40')]['filter']+'%'};return _0x4eedb8;})});}_0x42f294=_['merge']({},_0x42f294,_0x549489[_0x5e5b('0x4d')]);return _0x129026[_0x5e5b('0x57')](_0x42f294);}})[_0x5e5b('0x35')](function(_0x15b801){if(_0x15b801){_0x5543eb=_0x15b801[_0x5e5b('0x5b')];if(!_0x549489[_0x5e5b('0x40')][_0x5e5b('0x47')]('nolimit')){_0x42f294[_0x5e5b('0x2e')]=qs[_0x5e5b('0x2e')](_0x549489[_0x5e5b('0x40')][_0x5e5b('0x2e')]);_0x42f294[_0x5e5b('0x2d')]=qs[_0x5e5b('0x2d')](_0x549489[_0x5e5b('0x40')][_0x5e5b('0x2d')]);}return _0x129026[_0x5e5b('0x57')](_0x42f294);}})[_0x5e5b('0x35')](function(_0x26a17f){if(_0x26a17f){return _0x26a17f?{'count':_0x5543eb,'rows':_0x26a17f}:null;}})['then'](respondWithResult(_0x3963eb,null))[_0x5e5b('0x28')](handleError(_0x3963eb,null));};exports[_0x5e5b('0x5c')]=function(_0x3c57ad,_0x271af6,_0xc7171a){if(_0x3c57ad['body']['id']){delete _0x3c57ad[_0x5e5b('0x54')]['id'];}return db[_0x5e5b('0x3c')][_0x5e5b('0x58')]({'where':{'id':_0x3c57ad[_0x5e5b('0x56')]['id']}})[_0x5e5b('0x35')](handleEntityNotFound(_0x271af6,null))[_0x5e5b('0x35')](function(_0x4d2218){if(_0x4d2218){_0x3c57ad[_0x5e5b('0x54')][_0x5e5b('0x5d')]=_0x4d2218['id'];_0x3c57ad[_0x5e5b('0x54')]['Subjects']=integrations[_0x5e5b('0x5e')](_0x3c57ad[_0x5e5b('0x54')][_0x5e5b('0x5f')],_0x3c57ad[_0x5e5b('0x54')][_0x5e5b('0x3e')]);_0x3c57ad[_0x5e5b('0x54')][_0x5e5b('0x60')]=integrations[_0x5e5b('0x61')](_0x3c57ad[_0x5e5b('0x54')]['channel'],_0x3c57ad[_0x5e5b('0x54')]['type']);return db[_0x5e5b('0x59')][_0x5e5b('0x53')](_0x3c57ad['body'],{'include':[{'model':db['FreshsalesField'],'as':_0x5e5b('0x62')},{'model':db[_0x5e5b('0x63')],'as':'Descriptions'}]});}return null;})[_0x5e5b('0x35')](respondWithResult(_0x271af6,null))['catch'](handleError(_0x271af6,null));};exports['getFields']=function(_0x383de8,_0x5cb712,_0x3e3835){var _0x44eee0='';var _0x10aa6a='';return db['FreshsalesAccount'][_0x5e5b('0x58')]({'where':{'id':_0x383de8[_0x5e5b('0x56')]['id']},'attributes':['id',_0x5e5b('0x64'),'remoteUri',_0x5e5b('0x65')]})[_0x5e5b('0x35')](handleEntityNotFound(_0x5cb712,null))['then'](function(_0x388dbe){if(_0x388dbe){_0x10aa6a=_0x388dbe['username'];_0x44eee0=_0x388dbe['remoteUri'];var _0x1e6f7c=_0x388dbe[_0x5e5b('0x66')][_0x5e5b('0x67')](-0x1);if(_0x1e6f7c==='/'){_0x44eee0=_0x44eee0[_0x5e5b('0x68')](0x0,_0x44eee0[_0x5e5b('0x69')](_0x1e6f7c));}return rp({'method':'GET','uri':util[_0x5e5b('0x6a')](_0x5e5b('0x6b'),_0x44eee0,'/api/selector/owners'),'headers':{'Authorization':'Token\x20token='+_0x388dbe[_0x5e5b('0x65')]},'json':!![]});}})[_0x5e5b('0x35')](function(_0x313e13){if(_0x313e13){var _0x10fa87=_0x313e13[_0x5e5b('0x6c')];var _0x1ad8a9=![];var _0x55878b=null;for(_0x55878b=0x0;_0x55878b<_0x10fa87[_0x5e5b('0x5b')];_0x55878b++){if(_0x10fa87[_0x55878b][_0x5e5b('0x6d')]===_0x10aa6a){_0x1ad8a9=!![];}}if(_0x1ad8a9){return!![];}else{throw new Error({'statusCode':0x194,'message':_0x5e5b('0x6e')});}}})['then'](respondWithResult(_0x5cb712,null))['catch'](function(_0x24bcc9){var _0x1eb8cd=_0x383de8[_0x5e5b('0x40')]['test']?0x1f4:_0x24bcc9[_0x5e5b('0x6f')]||0x1f4;logger[_0x5e5b('0x25')](_0x5e5b('0x70'),'getFields',_0x1eb8cd,JSON[_0x5e5b('0x24')](_0x24bcc9));delete _0x24bcc9[_0x5e5b('0x38')];if(_0x1eb8cd===0x191){_0x1eb8cd=0x190;}_0x5cb712[_0x5e5b('0x2a')](_0x1eb8cd)['send'](_0x383de8[_0x5e5b('0x40')][_0x5e5b('0x71')]?{'message':_0x5e5b('0x72'),'statusCode':_0x24bcc9[_0x5e5b('0x6f')]}:_0x24bcc9);});};