Built motion from commit 0900f080.|2.5.45
[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 _0x5ab2=['desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','status','end','offset','undefined','limit','count','set','json','reject','save','update','then','destroy','sendStatus','error','name','send','index','SmsApplication','fieldName','type','model','map','keys','query','intersection','fields','attributes','length','hasOwnProperty','order','sort','filters','pick','filter','where','merge','VIRTUAL','options','findAll','rows','catch','show','params','includeAll','find','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','crypto','jsforce'];(function(_0x41037b,_0x1593b5){var _0xf1f5a3=function(_0x6df698){while(--_0x6df698){_0x41037b['push'](_0x41037b['shift']());}};_0xf1f5a3(++_0x1593b5);}(_0x5ab2,0x1f1));var _0x25ab=function(_0xc67d4,_0x1f3d6b){_0xc67d4=_0xc67d4-0x0;var _0x5434bf=_0x5ab2[_0xc67d4];return _0x5434bf;};'use strict';var emlformat=require(_0x25ab('0x0'));var rimraf=require(_0x25ab('0x1'));var zipdir=require(_0x25ab('0x2'));var jsonpatch=require(_0x25ab('0x3'));var rp=require(_0x25ab('0x4'));var moment=require(_0x25ab('0x5'));var BPromise=require(_0x25ab('0x6'));var Mustache=require(_0x25ab('0x7'));var util=require(_0x25ab('0x8'));var path=require('path');var sox=require(_0x25ab('0x9'));var csv=require(_0x25ab('0xa'));var ejs=require(_0x25ab('0xb'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require('squel');var crypto=require(_0x25ab('0xc'));var jsforce=require(_0x25ab('0xd'));var deskjs=require(_0x25ab('0xe'));var toCsv=require(_0x25ab('0xa'));var querystring=require(_0x25ab('0xf'));var Papa=require(_0x25ab('0x10'));var Redis=require(_0x25ab('0x11'));var authService=require(_0x25ab('0x12'));var qs=require(_0x25ab('0x13'));var as=require(_0x25ab('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x25ab('0x15'))(_0x25ab('0x16'));var utils=require('../../config/utils');var config=require(_0x25ab('0x17'));var licenseUtil=require(_0x25ab('0x18'));var db=require(_0x25ab('0x19'))['db'];function respondWithStatusCode(_0x46f905,_0x2654c5){_0x2654c5=_0x2654c5||0xcc;return function(_0x229088){if(_0x229088){return _0x46f905['sendStatus'](_0x2654c5);}return _0x46f905[_0x25ab('0x1a')](_0x2654c5)[_0x25ab('0x1b')]();};}function respondWithResult(_0x58804c,_0x6704fa){_0x6704fa=_0x6704fa||0xc8;return function(_0x1e88df){if(_0x1e88df){return _0x58804c[_0x25ab('0x1a')](_0x6704fa)['json'](_0x1e88df);}};}function respondWithFilteredResult(_0x1f2f38,_0x21fc21){return function(_0x520a4d){if(_0x520a4d){var _0x5958e8=typeof _0x21fc21[_0x25ab('0x1c')]===_0x25ab('0x1d')&&typeof _0x21fc21[_0x25ab('0x1e')]===_0x25ab('0x1d');var _0x3ff144=_0x520a4d[_0x25ab('0x1f')];var _0x84d305=_0x5958e8?0x0:_0x21fc21['offset'];var _0x4d41d6=_0x5958e8?_0x520a4d[_0x25ab('0x1f')]:_0x21fc21[_0x25ab('0x1c')]+_0x21fc21[_0x25ab('0x1e')];var _0xf22fc2;if(_0x4d41d6>=_0x3ff144){_0x4d41d6=_0x3ff144;_0xf22fc2=0xc8;}else{_0xf22fc2=0xce;}_0x1f2f38[_0x25ab('0x1a')](_0xf22fc2);return _0x1f2f38[_0x25ab('0x20')]('Content-Range',_0x84d305+'-'+_0x4d41d6+'/'+_0x3ff144)[_0x25ab('0x21')](_0x520a4d);}return null;};}function patchUpdates(_0x2bffe1){return function(_0x2a6f8d){try{jsonpatch['apply'](_0x2a6f8d,_0x2bffe1,!![]);}catch(_0x439937){return BPromise[_0x25ab('0x22')](_0x439937);}return _0x2a6f8d[_0x25ab('0x23')]();};}function saveUpdates(_0x3f00f3,_0x43263e){return function(_0x212c0f){if(_0x212c0f){return _0x212c0f[_0x25ab('0x24')](_0x3f00f3)[_0x25ab('0x25')](function(_0x31e616){return _0x31e616;});}return null;};}function removeEntity(_0x3d9c26,_0x235d8f){return function(_0xe712f8){if(_0xe712f8){return _0xe712f8[_0x25ab('0x26')]()[_0x25ab('0x25')](function(){_0x3d9c26[_0x25ab('0x1a')](0xcc)[_0x25ab('0x1b')]();});}};}function handleEntityNotFound(_0x35611c,_0x833eed){return function(_0x234870){if(!_0x234870){_0x35611c[_0x25ab('0x27')](0x194);}return _0x234870;};}function handleError(_0x24799c,_0x20e7f5){_0x20e7f5=_0x20e7f5||0x1f4;return function(_0x1e6376){logger[_0x25ab('0x28')](_0x1e6376['stack']);if(_0x1e6376[_0x25ab('0x29')]){delete _0x1e6376[_0x25ab('0x29')];}_0x24799c[_0x25ab('0x1a')](_0x20e7f5)[_0x25ab('0x2a')](_0x1e6376);};}exports[_0x25ab('0x2b')]=function(_0x16e433,_0x3e9225){var _0x346fbe={},_0x8278c3={},_0x124974={'count':0x0,'rows':[]};var _0x1806b7=_['map'](db[_0x25ab('0x2c')]['rawAttributes'],function(_0x1b7a2b){return{'name':_0x1b7a2b[_0x25ab('0x2d')],'type':_0x1b7a2b[_0x25ab('0x2e')]['key']};});_0x8278c3[_0x25ab('0x2f')]=_[_0x25ab('0x30')](_0x1806b7,_0x25ab('0x29'));_0x8278c3['query']=_[_0x25ab('0x31')](_0x16e433[_0x25ab('0x32')]);_0x8278c3['filters']=_[_0x25ab('0x33')](_0x8278c3[_0x25ab('0x2f')],_0x8278c3[_0x25ab('0x32')]);_0x346fbe['attributes']=_[_0x25ab('0x33')](_0x8278c3[_0x25ab('0x2f')],qs[_0x25ab('0x34')](_0x16e433[_0x25ab('0x32')][_0x25ab('0x34')]));_0x346fbe[_0x25ab('0x35')]=_0x346fbe['attributes'][_0x25ab('0x36')]?_0x346fbe['attributes']:_0x8278c3[_0x25ab('0x2f')];if(!_0x16e433[_0x25ab('0x32')][_0x25ab('0x37')]('nolimit')){_0x346fbe[_0x25ab('0x1e')]=qs[_0x25ab('0x1e')](_0x16e433['query'][_0x25ab('0x1e')]);_0x346fbe[_0x25ab('0x1c')]=qs[_0x25ab('0x1c')](_0x16e433[_0x25ab('0x32')][_0x25ab('0x1c')]);}_0x346fbe[_0x25ab('0x38')]=qs['sort'](_0x16e433[_0x25ab('0x32')][_0x25ab('0x39')]);_0x346fbe['where']=qs[_0x25ab('0x3a')](_[_0x25ab('0x3b')](_0x16e433[_0x25ab('0x32')],_0x8278c3[_0x25ab('0x3a')]),_0x1806b7);if(_0x16e433[_0x25ab('0x32')][_0x25ab('0x3c')]){_0x346fbe[_0x25ab('0x3d')]=_[_0x25ab('0x3e')](_0x346fbe[_0x25ab('0x3d')],{'$or':_[_0x25ab('0x30')](_0x1806b7,function(_0x47669e){if(_0x47669e[_0x25ab('0x2e')]!==_0x25ab('0x3f')){var _0x21fda={};_0x21fda[_0x47669e[_0x25ab('0x29')]]={'$like':'%'+_0x16e433[_0x25ab('0x32')][_0x25ab('0x3c')]+'%'};return _0x21fda;}})});}_0x346fbe=_['merge']({},_0x346fbe,_0x16e433[_0x25ab('0x40')]);var _0x39324e={'where':_0x346fbe['where']};return db[_0x25ab('0x2c')][_0x25ab('0x1f')](_0x39324e)[_0x25ab('0x25')](function(_0x50041e){_0x124974[_0x25ab('0x1f')]=_0x50041e;if(_0x16e433[_0x25ab('0x32')]['includeAll']){_0x346fbe['include']=[{'all':!![]}];}return db[_0x25ab('0x2c')][_0x25ab('0x41')](_0x346fbe);})['then'](function(_0x40b935){_0x124974[_0x25ab('0x42')]=_0x40b935;return _0x124974;})[_0x25ab('0x25')](respondWithFilteredResult(_0x3e9225,_0x346fbe))[_0x25ab('0x43')](handleError(_0x3e9225,null));};exports[_0x25ab('0x44')]=function(_0x7c19e7,_0xa58e75){var _0x5e8570={'raw':!![],'where':{'id':_0x7c19e7[_0x25ab('0x45')]['id']}},_0x307392={};_0x307392[_0x25ab('0x2f')]=_['keys'](db['SmsApplication']['rawAttributes']);_0x307392[_0x25ab('0x32')]=_['keys'](_0x7c19e7[_0x25ab('0x32')]);_0x307392[_0x25ab('0x3a')]=_[_0x25ab('0x33')](_0x307392['model'],_0x307392[_0x25ab('0x32')]);_0x5e8570[_0x25ab('0x35')]=_[_0x25ab('0x33')](_0x307392[_0x25ab('0x2f')],qs[_0x25ab('0x34')](_0x7c19e7[_0x25ab('0x32')][_0x25ab('0x34')]));_0x5e8570[_0x25ab('0x35')]=_0x5e8570[_0x25ab('0x35')][_0x25ab('0x36')]?_0x5e8570[_0x25ab('0x35')]:_0x307392[_0x25ab('0x2f')];if(_0x7c19e7[_0x25ab('0x32')][_0x25ab('0x46')]){_0x5e8570['include']=[{'all':!![]}];}_0x5e8570=_[_0x25ab('0x3e')]({},_0x5e8570,_0x7c19e7[_0x25ab('0x40')]);return db['SmsApplication'][_0x25ab('0x47')](_0x5e8570)['then'](handleEntityNotFound(_0xa58e75,null))[_0x25ab('0x25')](respondWithResult(_0xa58e75,null))[_0x25ab('0x43')](handleError(_0xa58e75,null));};exports['create']=function(_0x3c6f8c,_0x2c3cbf){return db[_0x25ab('0x2c')]['create'](_0x3c6f8c[_0x25ab('0x48')],{})[_0x25ab('0x25')](respondWithResult(_0x2c3cbf,0xc9))[_0x25ab('0x43')](handleError(_0x2c3cbf,null));};exports[_0x25ab('0x24')]=function(_0x5adf36,_0x3cae32){if(_0x5adf36['body']['id']){delete _0x5adf36[_0x25ab('0x48')]['id'];}return db[_0x25ab('0x2c')][_0x25ab('0x47')]({'where':{'id':_0x5adf36[_0x25ab('0x45')]['id']}})[_0x25ab('0x25')](handleEntityNotFound(_0x3cae32,null))['then'](saveUpdates(_0x5adf36[_0x25ab('0x48')],null))[_0x25ab('0x25')](respondWithResult(_0x3cae32,null))['catch'](handleError(_0x3cae32,null));};exports[_0x25ab('0x26')]=function(_0x32533b,_0x257405){return db[_0x25ab('0x2c')][_0x25ab('0x47')]({'where':{'id':_0x32533b['params']['id']}})[_0x25ab('0x25')](handleEntityNotFound(_0x257405,null))[_0x25ab('0x25')](removeEntity(_0x257405,null))[_0x25ab('0x43')](handleError(_0x257405,null));};