Built motion from commit 746c7d2a.|2.5.35
[motion2.git] / server / api / squareMessage / squareMessage.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 _0x7ebf=['destroy','sendStatus','error','stack','name','send','index','map','rawAttributes','fieldName','type','key','model','keys','filters','intersection','query','attributes','length','hasOwnProperty','order','sort','where','pick','filter','merge','VIRTUAL','options','SquareMessage','includeAll','findAll','rows','catch','show','params','fields','include','body','find','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../config/license/hardware','../../config/utils','../../config/environment','../../mysqldb','end','offset','limit','count','status','set','Content-Range','json','apply','reject','update','then'];(function(_0x55f672,_0x5d247a){var _0x35aaee=function(_0x2d2cef){while(--_0x2d2cef){_0x55f672['push'](_0x55f672['shift']());}};_0x35aaee(++_0x5d247a);}(_0x7ebf,0x153));var _0xf7eb=function(_0x49081f,_0x46b05b){_0x49081f=_0x49081f-0x0;var _0x20397c=_0x7ebf[_0x49081f];return _0x20397c;};'use strict';var emlformat=require(_0xf7eb('0x0'));var rimraf=require(_0xf7eb('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xf7eb('0x2'));var rp=require(_0xf7eb('0x3'));var moment=require(_0xf7eb('0x4'));var BPromise=require(_0xf7eb('0x5'));var Mustache=require(_0xf7eb('0x6'));var util=require(_0xf7eb('0x7'));var path=require(_0xf7eb('0x8'));var sox=require(_0xf7eb('0x9'));var csv=require(_0xf7eb('0xa'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xf7eb('0xb'));var _=require(_0xf7eb('0xc'));var squel=require(_0xf7eb('0xd'));var crypto=require(_0xf7eb('0xe'));var jsforce=require(_0xf7eb('0xf'));var deskjs=require(_0xf7eb('0x10'));var toCsv=require(_0xf7eb('0xa'));var querystring=require(_0xf7eb('0x11'));var Papa=require('papaparse');var Redis=require(_0xf7eb('0x12'));var authService=require(_0xf7eb('0x13'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xf7eb('0x14'));var logger=require('../../config/logger')('api');var utils=require(_0xf7eb('0x15'));var config=require(_0xf7eb('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0xf7eb('0x17'))['db'];function respondWithStatusCode(_0x2d58fc,_0x4ad386){_0x4ad386=_0x4ad386||0xcc;return function(_0x39eefe){if(_0x39eefe){return _0x2d58fc['sendStatus'](_0x4ad386);}return _0x2d58fc['status'](_0x4ad386)[_0xf7eb('0x18')]();};}function respondWithResult(_0x1c019b,_0x51d97f){_0x51d97f=_0x51d97f||0xc8;return function(_0xd02a6a){if(_0xd02a6a){return _0x1c019b['status'](_0x51d97f)['json'](_0xd02a6a);}};}function respondWithFilteredResult(_0x91e683,_0x5390d1){return function(_0x1c2b1c){if(_0x1c2b1c){var _0x5d1f14=typeof _0x5390d1[_0xf7eb('0x19')]==='undefined'&&typeof _0x5390d1[_0xf7eb('0x1a')]==='undefined';var _0x9d325c=_0x1c2b1c['count'];var _0x4188b6=_0x5d1f14?0x0:_0x5390d1['offset'];var _0x14d501=_0x5d1f14?_0x1c2b1c[_0xf7eb('0x1b')]:_0x5390d1[_0xf7eb('0x19')]+_0x5390d1[_0xf7eb('0x1a')];var _0x20d407;if(_0x14d501>=_0x9d325c){_0x14d501=_0x9d325c;_0x20d407=0xc8;}else{_0x20d407=0xce;}_0x91e683[_0xf7eb('0x1c')](_0x20d407);return _0x91e683[_0xf7eb('0x1d')](_0xf7eb('0x1e'),_0x4188b6+'-'+_0x14d501+'/'+_0x9d325c)[_0xf7eb('0x1f')](_0x1c2b1c);}return null;};}function patchUpdates(_0x5efd0a){return function(_0x2e9e3e){try{jsonpatch[_0xf7eb('0x20')](_0x2e9e3e,_0x5efd0a,!![]);}catch(_0x2cdc5e){return BPromise[_0xf7eb('0x21')](_0x2cdc5e);}return _0x2e9e3e['save']();};}function saveUpdates(_0x2cc3c8,_0x16a003){return function(_0x30d178){if(_0x30d178){return _0x30d178[_0xf7eb('0x22')](_0x2cc3c8)[_0xf7eb('0x23')](function(_0x22d0ec){return _0x22d0ec;});}return null;};}function removeEntity(_0x5696fa,_0x288b84){return function(_0x5b0484){if(_0x5b0484){return _0x5b0484[_0xf7eb('0x24')]()[_0xf7eb('0x23')](function(){_0x5696fa[_0xf7eb('0x1c')](0xcc)[_0xf7eb('0x18')]();});}};}function handleEntityNotFound(_0x393e75,_0x4b8212){return function(_0x2bae73){if(!_0x2bae73){_0x393e75[_0xf7eb('0x25')](0x194);}return _0x2bae73;};}function handleError(_0x415a66,_0x252027){_0x252027=_0x252027||0x1f4;return function(_0x240cab){logger[_0xf7eb('0x26')](_0x240cab[_0xf7eb('0x27')]);if(_0x240cab['name']){delete _0x240cab[_0xf7eb('0x28')];}_0x415a66[_0xf7eb('0x1c')](_0x252027)[_0xf7eb('0x29')](_0x240cab);};}exports[_0xf7eb('0x2a')]=function(_0x3da4af,_0x5469c6){var _0x511699={},_0x523d4b={},_0x257207={'count':0x0,'rows':[]};var _0x22e349=_[_0xf7eb('0x2b')](db['SquareMessage'][_0xf7eb('0x2c')],function(_0x443aa6){return{'name':_0x443aa6[_0xf7eb('0x2d')],'type':_0x443aa6[_0xf7eb('0x2e')][_0xf7eb('0x2f')]};});_0x523d4b[_0xf7eb('0x30')]=_['map'](_0x22e349,_0xf7eb('0x28'));_0x523d4b['query']=_[_0xf7eb('0x31')](_0x3da4af['query']);_0x523d4b[_0xf7eb('0x32')]=_[_0xf7eb('0x33')](_0x523d4b[_0xf7eb('0x30')],_0x523d4b[_0xf7eb('0x34')]);_0x511699[_0xf7eb('0x35')]=_['intersection'](_0x523d4b[_0xf7eb('0x30')],qs['fields'](_0x3da4af[_0xf7eb('0x34')]['fields']));_0x511699[_0xf7eb('0x35')]=_0x511699[_0xf7eb('0x35')][_0xf7eb('0x36')]?_0x511699['attributes']:_0x523d4b[_0xf7eb('0x30')];if(!_0x3da4af[_0xf7eb('0x34')][_0xf7eb('0x37')]('nolimit')){_0x511699[_0xf7eb('0x1a')]=qs[_0xf7eb('0x1a')](_0x3da4af[_0xf7eb('0x34')][_0xf7eb('0x1a')]);_0x511699[_0xf7eb('0x19')]=qs[_0xf7eb('0x19')](_0x3da4af[_0xf7eb('0x34')][_0xf7eb('0x19')]);}_0x511699[_0xf7eb('0x38')]=qs[_0xf7eb('0x39')](_0x3da4af[_0xf7eb('0x34')][_0xf7eb('0x39')]);_0x511699[_0xf7eb('0x3a')]=qs['filters'](_[_0xf7eb('0x3b')](_0x3da4af[_0xf7eb('0x34')],_0x523d4b['filters']),_0x22e349);if(_0x3da4af[_0xf7eb('0x34')][_0xf7eb('0x3c')]){_0x511699[_0xf7eb('0x3a')]=_[_0xf7eb('0x3d')](_0x511699[_0xf7eb('0x3a')],{'$or':_[_0xf7eb('0x2b')](_0x22e349,function(_0x595959){if(_0x595959['type']!==_0xf7eb('0x3e')){var _0x4af37c={};_0x4af37c[_0x595959[_0xf7eb('0x28')]]={'$like':'%'+_0x3da4af[_0xf7eb('0x34')][_0xf7eb('0x3c')]+'%'};return _0x4af37c;}})});}_0x511699=_['merge']({},_0x511699,_0x3da4af[_0xf7eb('0x3f')]);var _0x4ff1c7={'where':_0x511699[_0xf7eb('0x3a')]};return db[_0xf7eb('0x40')][_0xf7eb('0x1b')](_0x4ff1c7)[_0xf7eb('0x23')](function(_0x524091){_0x257207[_0xf7eb('0x1b')]=_0x524091;if(_0x3da4af[_0xf7eb('0x34')][_0xf7eb('0x41')]){_0x511699['include']=[{'all':!![]}];}return db['SquareMessage'][_0xf7eb('0x42')](_0x511699);})[_0xf7eb('0x23')](function(_0x305c75){_0x257207[_0xf7eb('0x43')]=_0x305c75;return _0x257207;})[_0xf7eb('0x23')](respondWithFilteredResult(_0x5469c6,_0x511699))[_0xf7eb('0x44')](handleError(_0x5469c6,null));};exports[_0xf7eb('0x45')]=function(_0x3d07f6,_0x5eb8ff){var _0x12d68b={'raw':!![],'where':{'id':_0x3d07f6[_0xf7eb('0x46')]['id']}},_0x39dfba={};_0x39dfba[_0xf7eb('0x30')]=_[_0xf7eb('0x31')](db['SquareMessage'][_0xf7eb('0x2c')]);_0x39dfba[_0xf7eb('0x34')]=_[_0xf7eb('0x31')](_0x3d07f6['query']);_0x39dfba[_0xf7eb('0x32')]=_[_0xf7eb('0x33')](_0x39dfba[_0xf7eb('0x30')],_0x39dfba['query']);_0x12d68b[_0xf7eb('0x35')]=_[_0xf7eb('0x33')](_0x39dfba[_0xf7eb('0x30')],qs[_0xf7eb('0x47')](_0x3d07f6[_0xf7eb('0x34')][_0xf7eb('0x47')]));_0x12d68b['attributes']=_0x12d68b[_0xf7eb('0x35')][_0xf7eb('0x36')]?_0x12d68b[_0xf7eb('0x35')]:_0x39dfba[_0xf7eb('0x30')];if(_0x3d07f6[_0xf7eb('0x34')][_0xf7eb('0x41')]){_0x12d68b[_0xf7eb('0x48')]=[{'all':!![]}];}_0x12d68b=_[_0xf7eb('0x3d')]({},_0x12d68b,_0x3d07f6[_0xf7eb('0x3f')]);return db[_0xf7eb('0x40')]['find'](_0x12d68b)[_0xf7eb('0x23')](handleEntityNotFound(_0x5eb8ff,null))['then'](respondWithResult(_0x5eb8ff,null))[_0xf7eb('0x44')](handleError(_0x5eb8ff,null));};exports['create']=function(_0x25e45f,_0x993145){return db[_0xf7eb('0x40')]['create'](_0x25e45f['body'],{})[_0xf7eb('0x23')](respondWithResult(_0x993145,0xc9))[_0xf7eb('0x44')](handleError(_0x993145,null));};exports[_0xf7eb('0x22')]=function(_0x344423,_0x1bb3e2){if(_0x344423[_0xf7eb('0x49')]['id']){delete _0x344423['body']['id'];}return db[_0xf7eb('0x40')][_0xf7eb('0x4a')]({'where':{'id':_0x344423[_0xf7eb('0x46')]['id']}})[_0xf7eb('0x23')](handleEntityNotFound(_0x1bb3e2,null))['then'](saveUpdates(_0x344423['body'],null))[_0xf7eb('0x23')](respondWithResult(_0x1bb3e2,null))['catch'](handleError(_0x1bb3e2,null));};exports[_0xf7eb('0x24')]=function(_0x2a0ba8,_0x52135d){return db['SquareMessage'][_0xf7eb('0x4a')]({'where':{'id':_0x2a0ba8['params']['id']}})[_0xf7eb('0x23')](handleEntityNotFound(_0x52135d,null))[_0xf7eb('0x23')](removeEntity(_0x52135d,null))[_0xf7eb('0x44')](handleError(_0x52135d,null));};