226d5cbfb35960010f166f0ea2ecd11e16e0fb8e
[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 _0x5c2c=['set','reject','save','update','then','destroy','stack','name','map','SmsApplication','key','model','keys','filters','intersection','query','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','VIRTUAL','filter','merge','findAll','rows','show','rawAttributes','includeAll','options','catch','create','body','find','params','eml-format','rimraf','fast-json-patch','moment','bluebird','mustache','util','path','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','json','offset','undefined','count','limit'];(function(_0x150c26,_0x1cdaea){var _0x20625a=function(_0x41a7e6){while(--_0x41a7e6){_0x150c26['push'](_0x150c26['shift']());}};_0x20625a(++_0x1cdaea);}(_0x5c2c,0xb5));var _0xc5c2=function(_0x383158,_0x415e43){_0x383158=_0x383158-0x0;var _0x507985=_0x5c2c[_0x383158];return _0x507985;};'use strict';var emlformat=require(_0xc5c2('0x0'));var rimraf=require(_0xc5c2('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xc5c2('0x2'));var rp=require('request-promise');var moment=require(_0xc5c2('0x3'));var BPromise=require(_0xc5c2('0x4'));var Mustache=require(_0xc5c2('0x5'));var util=require(_0xc5c2('0x6'));var path=require(_0xc5c2('0x7'));var sox=require('sox');var csv=require(_0xc5c2('0x8'));var ejs=require(_0xc5c2('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xc5c2('0xa'));var squel=require(_0xc5c2('0xb'));var crypto=require(_0xc5c2('0xc'));var jsforce=require(_0xc5c2('0xd'));var deskjs=require(_0xc5c2('0xe'));var toCsv=require(_0xc5c2('0x8'));var querystring=require(_0xc5c2('0xf'));var Papa=require(_0xc5c2('0x10'));var Redis=require(_0xc5c2('0x11'));var authService=require(_0xc5c2('0x12'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xc5c2('0x13'));var logger=require('../../config/logger')(_0xc5c2('0x14'));var utils=require(_0xc5c2('0x15'));var config=require(_0xc5c2('0x16'));var licenseUtil=require(_0xc5c2('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x38a71d,_0x3f1971){_0x3f1971=_0x3f1971||0xcc;return function(_0x254654){if(_0x254654){return _0x38a71d[_0xc5c2('0x18')](_0x3f1971);}return _0x38a71d[_0xc5c2('0x19')](_0x3f1971)[_0xc5c2('0x1a')]();};}function respondWithResult(_0x59a0f7,_0x1d87f3){_0x1d87f3=_0x1d87f3||0xc8;return function(_0x42e9a4){if(_0x42e9a4){return _0x59a0f7[_0xc5c2('0x19')](_0x1d87f3)[_0xc5c2('0x1b')](_0x42e9a4);}};}function respondWithFilteredResult(_0x29c7e0,_0x5dd5dd){return function(_0xdd30a7){if(_0xdd30a7){var _0x506c5b=typeof _0x5dd5dd[_0xc5c2('0x1c')]===_0xc5c2('0x1d')&&typeof _0x5dd5dd['limit']==='undefined';var _0xe396b0=_0xdd30a7['count'];var _0x256032=_0x506c5b?0x0:_0x5dd5dd[_0xc5c2('0x1c')];var _0x560869=_0x506c5b?_0xdd30a7[_0xc5c2('0x1e')]:_0x5dd5dd[_0xc5c2('0x1c')]+_0x5dd5dd[_0xc5c2('0x1f')];var _0xf5eb14;if(_0x560869>=_0xe396b0){_0x560869=_0xe396b0;_0xf5eb14=0xc8;}else{_0xf5eb14=0xce;}_0x29c7e0['status'](_0xf5eb14);return _0x29c7e0[_0xc5c2('0x20')]('Content-Range',_0x256032+'-'+_0x560869+'/'+_0xe396b0)[_0xc5c2('0x1b')](_0xdd30a7);}return null;};}function patchUpdates(_0x4f8202){return function(_0x1eea42){try{jsonpatch['apply'](_0x1eea42,_0x4f8202,!![]);}catch(_0x3a5318){return BPromise[_0xc5c2('0x21')](_0x3a5318);}return _0x1eea42[_0xc5c2('0x22')]();};}function saveUpdates(_0x5fb0ad,_0x24164a){return function(_0x58faaf){if(_0x58faaf){return _0x58faaf[_0xc5c2('0x23')](_0x5fb0ad)[_0xc5c2('0x24')](function(_0x5a8bf9){return _0x5a8bf9;});}return null;};}function removeEntity(_0x1282b3,_0x18215c){return function(_0x55bfef){if(_0x55bfef){return _0x55bfef[_0xc5c2('0x25')]()[_0xc5c2('0x24')](function(){_0x1282b3[_0xc5c2('0x19')](0xcc)[_0xc5c2('0x1a')]();});}};}function handleEntityNotFound(_0x3f2058,_0x7c2d9c){return function(_0x390e9d){if(!_0x390e9d){_0x3f2058[_0xc5c2('0x18')](0x194);}return _0x390e9d;};}function handleError(_0x4f767a,_0x445f01){_0x445f01=_0x445f01||0x1f4;return function(_0x46edc1){logger['error'](_0x46edc1[_0xc5c2('0x26')]);if(_0x46edc1[_0xc5c2('0x27')]){delete _0x46edc1[_0xc5c2('0x27')];}_0x4f767a[_0xc5c2('0x19')](_0x445f01)['send'](_0x46edc1);};}exports['index']=function(_0xd1b23c,_0x486f61){var _0x48e6ed={},_0xc479a9={},_0x2f40d2={'count':0x0,'rows':[]};var _0x27553e=_[_0xc5c2('0x28')](db[_0xc5c2('0x29')]['rawAttributes'],function(_0x25f7f0){return{'name':_0x25f7f0['fieldName'],'type':_0x25f7f0['type'][_0xc5c2('0x2a')]};});_0xc479a9[_0xc5c2('0x2b')]=_[_0xc5c2('0x28')](_0x27553e,_0xc5c2('0x27'));_0xc479a9['query']=_[_0xc5c2('0x2c')](_0xd1b23c['query']);_0xc479a9[_0xc5c2('0x2d')]=_[_0xc5c2('0x2e')](_0xc479a9[_0xc5c2('0x2b')],_0xc479a9[_0xc5c2('0x2f')]);_0x48e6ed[_0xc5c2('0x30')]=_[_0xc5c2('0x2e')](_0xc479a9[_0xc5c2('0x2b')],qs[_0xc5c2('0x31')](_0xd1b23c[_0xc5c2('0x2f')]['fields']));_0x48e6ed[_0xc5c2('0x30')]=_0x48e6ed[_0xc5c2('0x30')][_0xc5c2('0x32')]?_0x48e6ed['attributes']:_0xc479a9[_0xc5c2('0x2b')];if(!_0xd1b23c[_0xc5c2('0x2f')][_0xc5c2('0x33')](_0xc5c2('0x34'))){_0x48e6ed[_0xc5c2('0x1f')]=qs['limit'](_0xd1b23c['query']['limit']);_0x48e6ed[_0xc5c2('0x1c')]=qs[_0xc5c2('0x1c')](_0xd1b23c['query'][_0xc5c2('0x1c')]);}_0x48e6ed[_0xc5c2('0x35')]=qs[_0xc5c2('0x36')](_0xd1b23c[_0xc5c2('0x2f')][_0xc5c2('0x36')]);_0x48e6ed[_0xc5c2('0x37')]=qs['filters'](_[_0xc5c2('0x38')](_0xd1b23c['query'],_0xc479a9[_0xc5c2('0x2d')]),_0x27553e);if(_0xd1b23c[_0xc5c2('0x2f')]['filter']){_0x48e6ed[_0xc5c2('0x37')]=_['merge'](_0x48e6ed[_0xc5c2('0x37')],{'$or':_[_0xc5c2('0x28')](_0x27553e,function(_0x192ee4){if(_0x192ee4['type']!==_0xc5c2('0x39')){var _0x3936f4={};_0x3936f4[_0x192ee4[_0xc5c2('0x27')]]={'$like':'%'+_0xd1b23c[_0xc5c2('0x2f')][_0xc5c2('0x3a')]+'%'};return _0x3936f4;}})});}_0x48e6ed=_[_0xc5c2('0x3b')]({},_0x48e6ed,_0xd1b23c['options']);var _0x5d3325={'where':_0x48e6ed[_0xc5c2('0x37')]};return db[_0xc5c2('0x29')][_0xc5c2('0x1e')](_0x5d3325)[_0xc5c2('0x24')](function(_0x330072){_0x2f40d2[_0xc5c2('0x1e')]=_0x330072;if(_0xd1b23c[_0xc5c2('0x2f')]['includeAll']){_0x48e6ed['include']=[{'all':!![]}];}return db[_0xc5c2('0x29')][_0xc5c2('0x3c')](_0x48e6ed);})[_0xc5c2('0x24')](function(_0x596c0a){_0x2f40d2[_0xc5c2('0x3d')]=_0x596c0a;return _0x2f40d2;})[_0xc5c2('0x24')](respondWithFilteredResult(_0x486f61,_0x48e6ed))['catch'](handleError(_0x486f61,null));};exports[_0xc5c2('0x3e')]=function(_0x39c781,_0x9c7bdf){var _0x5ad9ef={'raw':!![],'where':{'id':_0x39c781['params']['id']}},_0x28da26={};_0x28da26['model']=_[_0xc5c2('0x2c')](db[_0xc5c2('0x29')][_0xc5c2('0x3f')]);_0x28da26[_0xc5c2('0x2f')]=_[_0xc5c2('0x2c')](_0x39c781['query']);_0x28da26['filters']=_[_0xc5c2('0x2e')](_0x28da26[_0xc5c2('0x2b')],_0x28da26['query']);_0x5ad9ef['attributes']=_[_0xc5c2('0x2e')](_0x28da26[_0xc5c2('0x2b')],qs['fields'](_0x39c781['query']['fields']));_0x5ad9ef[_0xc5c2('0x30')]=_0x5ad9ef[_0xc5c2('0x30')][_0xc5c2('0x32')]?_0x5ad9ef[_0xc5c2('0x30')]:_0x28da26['model'];if(_0x39c781[_0xc5c2('0x2f')][_0xc5c2('0x40')]){_0x5ad9ef['include']=[{'all':!![]}];}_0x5ad9ef=_[_0xc5c2('0x3b')]({},_0x5ad9ef,_0x39c781[_0xc5c2('0x41')]);return db[_0xc5c2('0x29')]['find'](_0x5ad9ef)[_0xc5c2('0x24')](handleEntityNotFound(_0x9c7bdf,null))[_0xc5c2('0x24')](respondWithResult(_0x9c7bdf,null))[_0xc5c2('0x42')](handleError(_0x9c7bdf,null));};exports[_0xc5c2('0x43')]=function(_0x5dbf24,_0x200b7f){return db[_0xc5c2('0x29')][_0xc5c2('0x43')](_0x5dbf24[_0xc5c2('0x44')],{})[_0xc5c2('0x24')](respondWithResult(_0x200b7f,0xc9))[_0xc5c2('0x42')](handleError(_0x200b7f,null));};exports[_0xc5c2('0x23')]=function(_0x57ce7f,_0x1c8237){if(_0x57ce7f[_0xc5c2('0x44')]['id']){delete _0x57ce7f[_0xc5c2('0x44')]['id'];}return db[_0xc5c2('0x29')][_0xc5c2('0x45')]({'where':{'id':_0x57ce7f[_0xc5c2('0x46')]['id']}})['then'](handleEntityNotFound(_0x1c8237,null))[_0xc5c2('0x24')](saveUpdates(_0x57ce7f['body'],null))[_0xc5c2('0x24')](respondWithResult(_0x1c8237,null))[_0xc5c2('0x42')](handleError(_0x1c8237,null));};exports[_0xc5c2('0x25')]=function(_0x3b34d5,_0x56e55f){return db[_0xc5c2('0x29')][_0xc5c2('0x45')]({'where':{'id':_0x3b34d5[_0xc5c2('0x46')]['id']}})[_0xc5c2('0x24')](handleEntityNotFound(_0x56e55f,null))[_0xc5c2('0x24')](removeEntity(_0x56e55f,null))[_0xc5c2('0x42')](handleError(_0x56e55f,null));};