Built motion from commit (unavailable).|2.5.26
[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 _0xe40c=['pick','filter','merge','VIRTUAL','includeAll','include','findAll','catch','show','params','keys','options','create','body','update','find','destroy','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','to-csv','fs-extra','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','json','count','offset','set','reject','save','then','sendStatus','error','stack','name','index','SquareMessage','rawAttributes','type','model','map','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','limit','order','sort','where'];(function(_0x3b5462,_0x7ede10){var _0x6616a1=function(_0x19553e){while(--_0x19553e){_0x3b5462['push'](_0x3b5462['shift']());}};_0x6616a1(++_0x7ede10);}(_0xe40c,0x1cd));var _0xce40=function(_0x50b16c,_0x5e9cce){_0x50b16c=_0x50b16c-0x0;var _0x4e939a=_0xe40c[_0x50b16c];return _0x4e939a;};'use strict';var pdf=require(_0xce40('0x0'));var emlformat=require(_0xce40('0x1'));var rimraf=require(_0xce40('0x2'));var zipdir=require(_0xce40('0x3'));var jsonpatch=require(_0xce40('0x4'));var rp=require(_0xce40('0x5'));var moment=require(_0xce40('0x6'));var BPromise=require(_0xce40('0x7'));var Mustache=require(_0xce40('0x8'));var util=require(_0xce40('0x9'));var path=require('path');var sox=require('sox');var csv=require(_0xce40('0xa'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xce40('0xb'));var _=require('lodash');var squel=require(_0xce40('0xc'));var crypto=require(_0xce40('0xd'));var jsforce=require(_0xce40('0xe'));var deskjs=require(_0xce40('0xf'));var toCsv=require(_0xce40('0xa'));var querystring=require(_0xce40('0x10'));var Papa=require(_0xce40('0x11'));var Redis=require(_0xce40('0x12'));var authService=require(_0xce40('0x13'));var qs=require(_0xce40('0x14'));var as=require(_0xce40('0x15'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0xce40('0x16'));var utils=require(_0xce40('0x17'));var config=require(_0xce40('0x18'));var licenseUtil=require(_0xce40('0x19'));var db=require(_0xce40('0x1a'))['db'];function respondWithStatusCode(_0x1cec77,_0x244f5f){_0x244f5f=_0x244f5f||0xcc;return function(_0x1f00e2){if(_0x1f00e2){return _0x1cec77['sendStatus'](_0x244f5f);}return _0x1cec77[_0xce40('0x1b')](_0x244f5f)['end']();};}function respondWithResult(_0xcf99b4,_0x2f4a38){_0x2f4a38=_0x2f4a38||0xc8;return function(_0x4b1e06){if(_0x4b1e06){return _0xcf99b4[_0xce40('0x1b')](_0x2f4a38)[_0xce40('0x1c')](_0x4b1e06);}};}function respondWithFilteredResult(_0x3a1001,_0x10e466){return function(_0x5644da){if(_0x5644da){var _0x1b6283=_0x5644da[_0xce40('0x1d')],_0x2931fb=_0x10e466[_0xce40('0x1e')],_0x51505f=_0x10e466[_0xce40('0x1e')]+_0x10e466['limit'],_0x1cb78b;if(_0x51505f>=_0x1b6283){_0x51505f=_0x1b6283;_0x1cb78b=0xc8;}else{_0x1cb78b=0xce;}_0x3a1001[_0xce40('0x1b')](_0x1cb78b);return _0x3a1001[_0xce40('0x1f')]('Content-Range',_0x2931fb+'-'+_0x51505f+'/'+_0x1b6283)['json'](_0x5644da);}return null;};}function patchUpdates(_0x2b5c0b){return function(_0x516985){try{jsonpatch['apply'](_0x516985,_0x2b5c0b,!![]);}catch(_0xe2b15c){return BPromise[_0xce40('0x20')](_0xe2b15c);}return _0x516985[_0xce40('0x21')]();};}function saveUpdates(_0x16cbfc,_0x454df6){return function(_0x2589f1){if(_0x2589f1){return _0x2589f1['update'](_0x16cbfc)['then'](function(_0x29d7e4){return _0x29d7e4;});}return null;};}function removeEntity(_0x2b5fcf,_0x36488f){return function(_0x23e097){if(_0x23e097){return _0x23e097['destroy']()[_0xce40('0x22')](function(){_0x2b5fcf[_0xce40('0x1b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2dff3f,_0x5b9a59){return function(_0x2c328d){if(!_0x2c328d){_0x2dff3f[_0xce40('0x23')](0x194);}return _0x2c328d;};}function handleError(_0x16f09d,_0x4a3321){_0x4a3321=_0x4a3321||0x1f4;return function(_0x115408){logger[_0xce40('0x24')](_0x115408[_0xce40('0x25')]);if(_0x115408[_0xce40('0x26')]){delete _0x115408[_0xce40('0x26')];}_0x16f09d[_0xce40('0x1b')](_0x4a3321)['send'](_0x115408);};}exports[_0xce40('0x27')]=function(_0x43b6a0,_0x14abf6){var _0x50efa7={},_0xeb97c8={},_0x504be1={'count':0x0,'rows':[]};var _0x2ba171=_['map'](db[_0xce40('0x28')][_0xce40('0x29')],function(_0x4ddf48){return{'name':_0x4ddf48['fieldName'],'type':_0x4ddf48[_0xce40('0x2a')]['key']};});_0xeb97c8[_0xce40('0x2b')]=_[_0xce40('0x2c')](_0x2ba171,'name');_0xeb97c8['query']=_['keys'](_0x43b6a0[_0xce40('0x2d')]);_0xeb97c8[_0xce40('0x2e')]=_['intersection'](_0xeb97c8[_0xce40('0x2b')],_0xeb97c8[_0xce40('0x2d')]);_0x50efa7['attributes']=_[_0xce40('0x2f')](_0xeb97c8[_0xce40('0x2b')],qs[_0xce40('0x30')](_0x43b6a0[_0xce40('0x2d')][_0xce40('0x30')]));_0x50efa7['attributes']=_0x50efa7[_0xce40('0x31')][_0xce40('0x32')]?_0x50efa7[_0xce40('0x31')]:_0xeb97c8[_0xce40('0x2b')];if(!_0x43b6a0[_0xce40('0x2d')][_0xce40('0x33')](_0xce40('0x34'))){_0x50efa7['limit']=qs[_0xce40('0x35')](_0x43b6a0[_0xce40('0x2d')]['limit']);_0x50efa7[_0xce40('0x1e')]=qs['offset'](_0x43b6a0[_0xce40('0x2d')][_0xce40('0x1e')]);}_0x50efa7[_0xce40('0x36')]=qs[_0xce40('0x37')](_0x43b6a0['query'][_0xce40('0x37')]);_0x50efa7[_0xce40('0x38')]=qs[_0xce40('0x2e')](_[_0xce40('0x39')](_0x43b6a0['query'],_0xeb97c8[_0xce40('0x2e')]),_0x2ba171);if(_0x43b6a0[_0xce40('0x2d')][_0xce40('0x3a')]){_0x50efa7[_0xce40('0x38')]=_[_0xce40('0x3b')](_0x50efa7[_0xce40('0x38')],{'$or':_[_0xce40('0x2c')](_0x2ba171,function(_0x324a3d){if(_0x324a3d[_0xce40('0x2a')]!==_0xce40('0x3c')){var _0x164ec9={};_0x164ec9[_0x324a3d['name']]={'$like':'%'+_0x43b6a0[_0xce40('0x2d')]['filter']+'%'};return _0x164ec9;}})});}_0x50efa7=_['merge']({},_0x50efa7,_0x43b6a0['options']);var _0x139664={'where':_0x50efa7['where']};return db[_0xce40('0x28')]['count'](_0x139664)[_0xce40('0x22')](function(_0x448465){_0x504be1[_0xce40('0x1d')]=_0x448465;if(_0x43b6a0['query'][_0xce40('0x3d')]){_0x50efa7[_0xce40('0x3e')]=[{'all':!![]}];}return db[_0xce40('0x28')][_0xce40('0x3f')](_0x50efa7);})['then'](function(_0x2c555e){_0x504be1['rows']=_0x2c555e;return _0x504be1;})[_0xce40('0x22')](respondWithFilteredResult(_0x14abf6,_0x50efa7))[_0xce40('0x40')](handleError(_0x14abf6,null));};exports[_0xce40('0x41')]=function(_0x9171a4,_0x6b5695){var _0x2ad83b={'raw':!![],'where':{'id':_0x9171a4[_0xce40('0x42')]['id']}},_0x451be3={};_0x451be3[_0xce40('0x2b')]=_[_0xce40('0x43')](db[_0xce40('0x28')]['rawAttributes']);_0x451be3['query']=_[_0xce40('0x43')](_0x9171a4[_0xce40('0x2d')]);_0x451be3[_0xce40('0x2e')]=_[_0xce40('0x2f')](_0x451be3[_0xce40('0x2b')],_0x451be3[_0xce40('0x2d')]);_0x2ad83b['attributes']=_[_0xce40('0x2f')](_0x451be3[_0xce40('0x2b')],qs[_0xce40('0x30')](_0x9171a4[_0xce40('0x2d')]['fields']));_0x2ad83b['attributes']=_0x2ad83b[_0xce40('0x31')][_0xce40('0x32')]?_0x2ad83b[_0xce40('0x31')]:_0x451be3[_0xce40('0x2b')];if(_0x9171a4['query']['includeAll']){_0x2ad83b[_0xce40('0x3e')]=[{'all':!![]}];}_0x2ad83b=_[_0xce40('0x3b')]({},_0x2ad83b,_0x9171a4[_0xce40('0x44')]);return db[_0xce40('0x28')]['find'](_0x2ad83b)[_0xce40('0x22')](handleEntityNotFound(_0x6b5695,null))[_0xce40('0x22')](respondWithResult(_0x6b5695,null))[_0xce40('0x40')](handleError(_0x6b5695,null));};exports['create']=function(_0x1b20a1,_0x1c664b){return db[_0xce40('0x28')][_0xce40('0x45')](_0x1b20a1[_0xce40('0x46')],{})[_0xce40('0x22')](respondWithResult(_0x1c664b,0xc9))[_0xce40('0x40')](handleError(_0x1c664b,null));};exports[_0xce40('0x47')]=function(_0x59088d,_0xdb8234){if(_0x59088d[_0xce40('0x46')]['id']){delete _0x59088d[_0xce40('0x46')]['id'];}return db['SquareMessage'][_0xce40('0x48')]({'where':{'id':_0x59088d[_0xce40('0x42')]['id']}})['then'](handleEntityNotFound(_0xdb8234,null))['then'](saveUpdates(_0x59088d[_0xce40('0x46')],null))[_0xce40('0x22')](respondWithResult(_0xdb8234,null))[_0xce40('0x40')](handleError(_0xdb8234,null));};exports[_0xce40('0x49')]=function(_0x5e0da1,_0x5dbba1){return db[_0xce40('0x28')][_0xce40('0x48')]({'where':{'id':_0x5e0da1[_0xce40('0x42')]['id']}})['then'](handleEntityNotFound(_0x5dbba1,null))['then'](removeEntity(_0x5dbba1,null))[_0xce40('0x40')](handleError(_0x5dbba1,null));};