62035080d46fa1cd2a88d6a67f73b6a93bbd5aae
[motion2.git] / server / api / smsApplication / smsApplication.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 _0x3cf0=['params','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','fs-extra','lodash','squel','crypto','jsforce','desk.js','to-csv','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','status','json','undefined','limit','count','offset','set','Content-Range','apply','reject','update','then','destroy','sendStatus','error','stack','name','send','index','map','SmsApplication','rawAttributes','fieldName','type','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','findAll','catch','keys','find','create','body'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x3cf0,0xe5));var _0x03cf=function(_0x56a585,_0x1d3e03){_0x56a585=_0x56a585-0x0;var _0xb1a7fa=_0x3cf0[_0x56a585];return _0xb1a7fa;};'use strict';var emlformat=require(_0x03cf('0x0'));var rimraf=require(_0x03cf('0x1'));var zipdir=require(_0x03cf('0x2'));var jsonpatch=require(_0x03cf('0x3'));var rp=require(_0x03cf('0x4'));var moment=require(_0x03cf('0x5'));var BPromise=require(_0x03cf('0x6'));var Mustache=require(_0x03cf('0x7'));var util=require(_0x03cf('0x8'));var path=require(_0x03cf('0x9'));var sox=require(_0x03cf('0xa'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x03cf('0xb'));var _=require(_0x03cf('0xc'));var squel=require(_0x03cf('0xd'));var crypto=require(_0x03cf('0xe'));var jsforce=require(_0x03cf('0xf'));var deskjs=require(_0x03cf('0x10'));var toCsv=require(_0x03cf('0x11'));var querystring=require('querystring');var Papa=require(_0x03cf('0x12'));var Redis=require(_0x03cf('0x13'));var authService=require(_0x03cf('0x14'));var qs=require(_0x03cf('0x15'));var as=require(_0x03cf('0x16'));var hardwareService=require(_0x03cf('0x17'));var logger=require(_0x03cf('0x18'))(_0x03cf('0x19'));var utils=require('../../config/utils');var config=require(_0x03cf('0x1a'));var licenseUtil=require('../../config/license/util');var db=require(_0x03cf('0x1b'))['db'];function respondWithStatusCode(_0x16d81a,_0xcf88db){_0xcf88db=_0xcf88db||0xcc;return function(_0x736859){if(_0x736859){return _0x16d81a['sendStatus'](_0xcf88db);}return _0x16d81a[_0x03cf('0x1c')](_0xcf88db)['end']();};}function respondWithResult(_0x43e11a,_0x5960f7){_0x5960f7=_0x5960f7||0xc8;return function(_0x24f9cd){if(_0x24f9cd){return _0x43e11a[_0x03cf('0x1c')](_0x5960f7)[_0x03cf('0x1d')](_0x24f9cd);}};}function respondWithFilteredResult(_0xeb828c,_0x54c79b){return function(_0x546b27){if(_0x546b27){var _0x16df30=typeof _0x54c79b['offset']===_0x03cf('0x1e')&&typeof _0x54c79b[_0x03cf('0x1f')]==='undefined';var _0x5d188c=_0x546b27[_0x03cf('0x20')];var _0x2ef054=_0x16df30?0x0:_0x54c79b['offset'];var _0x5ce642=_0x16df30?_0x546b27['count']:_0x54c79b[_0x03cf('0x21')]+_0x54c79b[_0x03cf('0x1f')];var _0x2a8282;if(_0x5ce642>=_0x5d188c){_0x5ce642=_0x5d188c;_0x2a8282=0xc8;}else{_0x2a8282=0xce;}_0xeb828c[_0x03cf('0x1c')](_0x2a8282);return _0xeb828c[_0x03cf('0x22')](_0x03cf('0x23'),_0x2ef054+'-'+_0x5ce642+'/'+_0x5d188c)[_0x03cf('0x1d')](_0x546b27);}return null;};}function patchUpdates(_0xb7f836){return function(_0x4a21c4){try{jsonpatch[_0x03cf('0x24')](_0x4a21c4,_0xb7f836,!![]);}catch(_0x4f7a61){return BPromise[_0x03cf('0x25')](_0x4f7a61);}return _0x4a21c4['save']();};}function saveUpdates(_0x38e8c0,_0x58e6bb){return function(_0x3dde36){if(_0x3dde36){return _0x3dde36[_0x03cf('0x26')](_0x38e8c0)[_0x03cf('0x27')](function(_0x4a4deb){return _0x4a4deb;});}return null;};}function removeEntity(_0x277b12,_0x237275){return function(_0x24bca6){if(_0x24bca6){return _0x24bca6[_0x03cf('0x28')]()['then'](function(){_0x277b12['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x377820,_0x284b68){return function(_0x1a40dd){if(!_0x1a40dd){_0x377820[_0x03cf('0x29')](0x194);}return _0x1a40dd;};}function handleError(_0x43d012,_0x5f1da7){_0x5f1da7=_0x5f1da7||0x1f4;return function(_0xf144c6){logger[_0x03cf('0x2a')](_0xf144c6[_0x03cf('0x2b')]);if(_0xf144c6[_0x03cf('0x2c')]){delete _0xf144c6[_0x03cf('0x2c')];}_0x43d012['status'](_0x5f1da7)[_0x03cf('0x2d')](_0xf144c6);};}exports[_0x03cf('0x2e')]=function(_0x5b58c8,_0x170d9b){var _0x391b6b={},_0x224953={},_0x4d56c2={'count':0x0,'rows':[]};var _0x5f3542=_[_0x03cf('0x2f')](db[_0x03cf('0x30')][_0x03cf('0x31')],function(_0x2eaab3){return{'name':_0x2eaab3[_0x03cf('0x32')],'type':_0x2eaab3[_0x03cf('0x33')]['key']};});_0x224953[_0x03cf('0x34')]=_[_0x03cf('0x2f')](_0x5f3542,_0x03cf('0x2c'));_0x224953[_0x03cf('0x35')]=_['keys'](_0x5b58c8['query']);_0x224953[_0x03cf('0x36')]=_[_0x03cf('0x37')](_0x224953['model'],_0x224953[_0x03cf('0x35')]);_0x391b6b[_0x03cf('0x38')]=_[_0x03cf('0x37')](_0x224953['model'],qs[_0x03cf('0x39')](_0x5b58c8[_0x03cf('0x35')]['fields']));_0x391b6b[_0x03cf('0x38')]=_0x391b6b[_0x03cf('0x38')][_0x03cf('0x3a')]?_0x391b6b[_0x03cf('0x38')]:_0x224953[_0x03cf('0x34')];if(!_0x5b58c8[_0x03cf('0x35')][_0x03cf('0x3b')]('nolimit')){_0x391b6b[_0x03cf('0x1f')]=qs[_0x03cf('0x1f')](_0x5b58c8['query'][_0x03cf('0x1f')]);_0x391b6b[_0x03cf('0x21')]=qs[_0x03cf('0x21')](_0x5b58c8[_0x03cf('0x35')][_0x03cf('0x21')]);}_0x391b6b[_0x03cf('0x3c')]=qs[_0x03cf('0x3d')](_0x5b58c8[_0x03cf('0x35')][_0x03cf('0x3d')]);_0x391b6b[_0x03cf('0x3e')]=qs['filters'](_[_0x03cf('0x3f')](_0x5b58c8[_0x03cf('0x35')],_0x224953[_0x03cf('0x36')]),_0x5f3542);if(_0x5b58c8['query'][_0x03cf('0x40')]){_0x391b6b[_0x03cf('0x3e')]=_[_0x03cf('0x41')](_0x391b6b[_0x03cf('0x3e')],{'$or':_[_0x03cf('0x2f')](_0x5f3542,function(_0x506534){if(_0x506534[_0x03cf('0x33')]!==_0x03cf('0x42')){var _0x3cc8e4={};_0x3cc8e4[_0x506534[_0x03cf('0x2c')]]={'$like':'%'+_0x5b58c8['query']['filter']+'%'};return _0x3cc8e4;}})});}_0x391b6b=_['merge']({},_0x391b6b,_0x5b58c8[_0x03cf('0x43')]);var _0x22f5cc={'where':_0x391b6b['where']};return db[_0x03cf('0x30')][_0x03cf('0x20')](_0x22f5cc)[_0x03cf('0x27')](function(_0x15eb66){_0x4d56c2[_0x03cf('0x20')]=_0x15eb66;if(_0x5b58c8[_0x03cf('0x35')][_0x03cf('0x44')]){_0x391b6b['include']=[{'all':!![]}];}return db[_0x03cf('0x30')][_0x03cf('0x45')](_0x391b6b);})[_0x03cf('0x27')](function(_0x24ff4d){_0x4d56c2['rows']=_0x24ff4d;return _0x4d56c2;})['then'](respondWithFilteredResult(_0x170d9b,_0x391b6b))[_0x03cf('0x46')](handleError(_0x170d9b,null));};exports['show']=function(_0x3111fb,_0x2fb354){var _0x17aecf={'raw':!![],'where':{'id':_0x3111fb['params']['id']}},_0x438b0c={};_0x438b0c[_0x03cf('0x34')]=_[_0x03cf('0x47')](db[_0x03cf('0x30')]['rawAttributes']);_0x438b0c[_0x03cf('0x35')]=_['keys'](_0x3111fb[_0x03cf('0x35')]);_0x438b0c['filters']=_[_0x03cf('0x37')](_0x438b0c['model'],_0x438b0c[_0x03cf('0x35')]);_0x17aecf['attributes']=_[_0x03cf('0x37')](_0x438b0c['model'],qs['fields'](_0x3111fb[_0x03cf('0x35')]['fields']));_0x17aecf[_0x03cf('0x38')]=_0x17aecf[_0x03cf('0x38')][_0x03cf('0x3a')]?_0x17aecf[_0x03cf('0x38')]:_0x438b0c[_0x03cf('0x34')];if(_0x3111fb[_0x03cf('0x35')]['includeAll']){_0x17aecf['include']=[{'all':!![]}];}_0x17aecf=_[_0x03cf('0x41')]({},_0x17aecf,_0x3111fb[_0x03cf('0x43')]);return db[_0x03cf('0x30')][_0x03cf('0x48')](_0x17aecf)[_0x03cf('0x27')](handleEntityNotFound(_0x2fb354,null))[_0x03cf('0x27')](respondWithResult(_0x2fb354,null))[_0x03cf('0x46')](handleError(_0x2fb354,null));};exports[_0x03cf('0x49')]=function(_0x3c473a,_0x527836){return db[_0x03cf('0x30')][_0x03cf('0x49')](_0x3c473a[_0x03cf('0x4a')],{})[_0x03cf('0x27')](respondWithResult(_0x527836,0xc9))[_0x03cf('0x46')](handleError(_0x527836,null));};exports[_0x03cf('0x26')]=function(_0x18f4ea,_0x1605ee){if(_0x18f4ea[_0x03cf('0x4a')]['id']){delete _0x18f4ea[_0x03cf('0x4a')]['id'];}return db[_0x03cf('0x30')][_0x03cf('0x48')]({'where':{'id':_0x18f4ea[_0x03cf('0x4b')]['id']}})[_0x03cf('0x27')](handleEntityNotFound(_0x1605ee,null))['then'](saveUpdates(_0x18f4ea[_0x03cf('0x4a')],null))[_0x03cf('0x27')](respondWithResult(_0x1605ee,null))[_0x03cf('0x46')](handleError(_0x1605ee,null));};exports['destroy']=function(_0x6c6bdc,_0x37eac1){return db[_0x03cf('0x30')]['find']({'where':{'id':_0x6c6bdc[_0x03cf('0x4b')]['id']}})[_0x03cf('0x27')](handleEntityNotFound(_0x37eac1,null))[_0x03cf('0x27')](removeEntity(_0x37eac1,null))[_0x03cf('0x46')](handleError(_0x37eac1,null));};