Built motion from commit f623a78c.|2.6.31
[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 _0xd615=['path','sox','ejs','fs-extra','lodash','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','undefined','count','limit','set','Content-Range','apply','reject','update','then','destroy','error','stack','name','send','index','SquareMessage','rawAttributes','fieldName','type','key','map','query','keys','intersection','attributes','model','fields','nolimit','order','sort','filters','pick','merge','where','VIRTUAL','filter','includeAll','include','findAll','rows','catch','show','params','options','find','create','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment'];(function(_0x1cd9f2,_0xa74492){var _0x58db82=function(_0x2a1471){while(--_0x2a1471){_0x1cd9f2['push'](_0x1cd9f2['shift']());}};_0x58db82(++_0xa74492);}(_0xd615,0x132));var _0x5d61=function(_0x371f08,_0xdda510){_0x371f08=_0x371f08-0x0;var _0x4bc070=_0xd615[_0x371f08];return _0x4bc070;};'use strict';var emlformat=require(_0x5d61('0x0'));var rimraf=require(_0x5d61('0x1'));var zipdir=require(_0x5d61('0x2'));var jsonpatch=require(_0x5d61('0x3'));var rp=require(_0x5d61('0x4'));var moment=require(_0x5d61('0x5'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require(_0x5d61('0x6'));var sox=require(_0x5d61('0x7'));var csv=require('to-csv');var ejs=require(_0x5d61('0x8'));var fs=require('fs');var fs_extra=require(_0x5d61('0x9'));var _=require(_0x5d61('0xa'));var squel=require('squel');var crypto=require(_0x5d61('0xb'));var jsforce=require(_0x5d61('0xc'));var deskjs=require(_0x5d61('0xd'));var toCsv=require(_0x5d61('0xe'));var querystring=require(_0x5d61('0xf'));var Papa=require(_0x5d61('0x10'));var Redis=require(_0x5d61('0x11'));var authService=require(_0x5d61('0x12'));var qs=require(_0x5d61('0x13'));var as=require(_0x5d61('0x14'));var hardwareService=require(_0x5d61('0x15'));var logger=require(_0x5d61('0x16'))('api');var utils=require(_0x5d61('0x17'));var config=require(_0x5d61('0x18'));var licenseUtil=require(_0x5d61('0x19'));var db=require(_0x5d61('0x1a'))['db'];function respondWithStatusCode(_0x5cf639,_0x1dfa1e){_0x1dfa1e=_0x1dfa1e||0xcc;return function(_0x54bd5b){if(_0x54bd5b){return _0x5cf639[_0x5d61('0x1b')](_0x1dfa1e);}return _0x5cf639[_0x5d61('0x1c')](_0x1dfa1e)['end']();};}function respondWithResult(_0x413e7e,_0x10b4ff){_0x10b4ff=_0x10b4ff||0xc8;return function(_0x140cdb){if(_0x140cdb){return _0x413e7e[_0x5d61('0x1c')](_0x10b4ff)[_0x5d61('0x1d')](_0x140cdb);}};}function respondWithFilteredResult(_0x1b23b8,_0x54d8f6){return function(_0x3f5cf5){if(_0x3f5cf5){var _0x106c95=typeof _0x54d8f6[_0x5d61('0x1e')]==='undefined'&&typeof _0x54d8f6['limit']===_0x5d61('0x1f');var _0x4d0b19=_0x3f5cf5[_0x5d61('0x20')];var _0x3a6f53=_0x106c95?0x0:_0x54d8f6['offset'];var _0x4a04f9=_0x106c95?_0x3f5cf5[_0x5d61('0x20')]:_0x54d8f6[_0x5d61('0x1e')]+_0x54d8f6[_0x5d61('0x21')];var _0x500270;if(_0x4a04f9>=_0x4d0b19){_0x4a04f9=_0x4d0b19;_0x500270=0xc8;}else{_0x500270=0xce;}_0x1b23b8[_0x5d61('0x1c')](_0x500270);return _0x1b23b8[_0x5d61('0x22')](_0x5d61('0x23'),_0x3a6f53+'-'+_0x4a04f9+'/'+_0x4d0b19)[_0x5d61('0x1d')](_0x3f5cf5);}return null;};}function patchUpdates(_0x133b37){return function(_0x16a25f){try{jsonpatch[_0x5d61('0x24')](_0x16a25f,_0x133b37,!![]);}catch(_0x98fabc){return BPromise[_0x5d61('0x25')](_0x98fabc);}return _0x16a25f['save']();};}function saveUpdates(_0x4f3d49,_0x4b89fa){return function(_0x3d9fc2){if(_0x3d9fc2){return _0x3d9fc2[_0x5d61('0x26')](_0x4f3d49)[_0x5d61('0x27')](function(_0x35fd1e){return _0x35fd1e;});}return null;};}function removeEntity(_0x290701,_0x2477ef){return function(_0x4619f5){if(_0x4619f5){return _0x4619f5[_0x5d61('0x28')]()[_0x5d61('0x27')](function(){_0x290701[_0x5d61('0x1c')](0xcc)['end']();});}};}function handleEntityNotFound(_0x515b3c,_0x4ce887){return function(_0x10fe00){if(!_0x10fe00){_0x515b3c[_0x5d61('0x1b')](0x194);}return _0x10fe00;};}function handleError(_0x1ba763,_0x16d837){_0x16d837=_0x16d837||0x1f4;return function(_0x5acbdd){logger[_0x5d61('0x29')](_0x5acbdd[_0x5d61('0x2a')]);if(_0x5acbdd[_0x5d61('0x2b')]){delete _0x5acbdd[_0x5d61('0x2b')];}_0x1ba763['status'](_0x16d837)[_0x5d61('0x2c')](_0x5acbdd);};}exports[_0x5d61('0x2d')]=function(_0x1e2117,_0x3ea5ac){var _0x49e8cc={},_0x56fe6d={},_0x15d71d={'count':0x0,'rows':[]};var _0x41a748=_['map'](db[_0x5d61('0x2e')][_0x5d61('0x2f')],function(_0x30e827){return{'name':_0x30e827[_0x5d61('0x30')],'type':_0x30e827[_0x5d61('0x31')][_0x5d61('0x32')]};});_0x56fe6d['model']=_[_0x5d61('0x33')](_0x41a748,_0x5d61('0x2b'));_0x56fe6d[_0x5d61('0x34')]=_[_0x5d61('0x35')](_0x1e2117[_0x5d61('0x34')]);_0x56fe6d['filters']=_[_0x5d61('0x36')](_0x56fe6d['model'],_0x56fe6d[_0x5d61('0x34')]);_0x49e8cc[_0x5d61('0x37')]=_[_0x5d61('0x36')](_0x56fe6d[_0x5d61('0x38')],qs[_0x5d61('0x39')](_0x1e2117[_0x5d61('0x34')][_0x5d61('0x39')]));_0x49e8cc[_0x5d61('0x37')]=_0x49e8cc['attributes']['length']?_0x49e8cc[_0x5d61('0x37')]:_0x56fe6d[_0x5d61('0x38')];if(!_0x1e2117[_0x5d61('0x34')]['hasOwnProperty'](_0x5d61('0x3a'))){_0x49e8cc['limit']=qs[_0x5d61('0x21')](_0x1e2117[_0x5d61('0x34')][_0x5d61('0x21')]);_0x49e8cc['offset']=qs['offset'](_0x1e2117[_0x5d61('0x34')][_0x5d61('0x1e')]);}_0x49e8cc[_0x5d61('0x3b')]=qs[_0x5d61('0x3c')](_0x1e2117[_0x5d61('0x34')][_0x5d61('0x3c')]);_0x49e8cc['where']=qs[_0x5d61('0x3d')](_[_0x5d61('0x3e')](_0x1e2117[_0x5d61('0x34')],_0x56fe6d['filters']),_0x41a748);if(_0x1e2117[_0x5d61('0x34')]['filter']){_0x49e8cc['where']=_[_0x5d61('0x3f')](_0x49e8cc[_0x5d61('0x40')],{'$or':_[_0x5d61('0x33')](_0x41a748,function(_0x530ecc){if(_0x530ecc[_0x5d61('0x31')]!==_0x5d61('0x41')){var _0x13c297={};_0x13c297[_0x530ecc[_0x5d61('0x2b')]]={'$like':'%'+_0x1e2117['query'][_0x5d61('0x42')]+'%'};return _0x13c297;}})});}_0x49e8cc=_[_0x5d61('0x3f')]({},_0x49e8cc,_0x1e2117['options']);var _0x33346b={'where':_0x49e8cc[_0x5d61('0x40')]};return db[_0x5d61('0x2e')]['count'](_0x33346b)[_0x5d61('0x27')](function(_0x26d029){_0x15d71d[_0x5d61('0x20')]=_0x26d029;if(_0x1e2117[_0x5d61('0x34')][_0x5d61('0x43')]){_0x49e8cc[_0x5d61('0x44')]=[{'all':!![]}];}return db[_0x5d61('0x2e')][_0x5d61('0x45')](_0x49e8cc);})['then'](function(_0x48d606){_0x15d71d[_0x5d61('0x46')]=_0x48d606;return _0x15d71d;})['then'](respondWithFilteredResult(_0x3ea5ac,_0x49e8cc))[_0x5d61('0x47')](handleError(_0x3ea5ac,null));};exports[_0x5d61('0x48')]=function(_0x2394a0,_0xd40ca0){var _0x2ef583={'raw':!![],'where':{'id':_0x2394a0[_0x5d61('0x49')]['id']}},_0x231eb7={};_0x231eb7[_0x5d61('0x38')]=_[_0x5d61('0x35')](db[_0x5d61('0x2e')][_0x5d61('0x2f')]);_0x231eb7[_0x5d61('0x34')]=_[_0x5d61('0x35')](_0x2394a0['query']);_0x231eb7[_0x5d61('0x3d')]=_['intersection'](_0x231eb7[_0x5d61('0x38')],_0x231eb7[_0x5d61('0x34')]);_0x2ef583['attributes']=_[_0x5d61('0x36')](_0x231eb7[_0x5d61('0x38')],qs[_0x5d61('0x39')](_0x2394a0[_0x5d61('0x34')][_0x5d61('0x39')]));_0x2ef583[_0x5d61('0x37')]=_0x2ef583[_0x5d61('0x37')]['length']?_0x2ef583['attributes']:_0x231eb7[_0x5d61('0x38')];if(_0x2394a0['query'][_0x5d61('0x43')]){_0x2ef583[_0x5d61('0x44')]=[{'all':!![]}];}_0x2ef583=_[_0x5d61('0x3f')]({},_0x2ef583,_0x2394a0[_0x5d61('0x4a')]);return db[_0x5d61('0x2e')][_0x5d61('0x4b')](_0x2ef583)[_0x5d61('0x27')](handleEntityNotFound(_0xd40ca0,null))['then'](respondWithResult(_0xd40ca0,null))[_0x5d61('0x47')](handleError(_0xd40ca0,null));};exports[_0x5d61('0x4c')]=function(_0x30d5fc,_0x28b183){return db['SquareMessage'][_0x5d61('0x4c')](_0x30d5fc[_0x5d61('0x4d')],{})[_0x5d61('0x27')](respondWithResult(_0x28b183,0xc9))[_0x5d61('0x47')](handleError(_0x28b183,null));};exports['update']=function(_0x22ee57,_0x231a47){if(_0x22ee57[_0x5d61('0x4d')]['id']){delete _0x22ee57[_0x5d61('0x4d')]['id'];}return db[_0x5d61('0x2e')][_0x5d61('0x4b')]({'where':{'id':_0x22ee57[_0x5d61('0x49')]['id']}})[_0x5d61('0x27')](handleEntityNotFound(_0x231a47,null))[_0x5d61('0x27')](saveUpdates(_0x22ee57[_0x5d61('0x4d')],null))[_0x5d61('0x27')](respondWithResult(_0x231a47,null))[_0x5d61('0x47')](handleError(_0x231a47,null));};exports[_0x5d61('0x28')]=function(_0x3a60ab,_0x1f0649){return db['SquareMessage'][_0x5d61('0x4b')]({'where':{'id':_0x3a60ab[_0x5d61('0x49')]['id']}})[_0x5d61('0x27')](handleEntityNotFound(_0x1f0649,null))['then'](removeEntity(_0x1f0649,null))[_0x5d61('0x47')](handleError(_0x1f0649,null));};