0261a357ea84527b2bbdaf35d97cbfd98f5bbfa9
[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 _0xe0af=['../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','status','json','undefined','limit','offset','count','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','index','map','SmsApplication','rawAttributes','fieldName','type','key','model','keys','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','merge','VIRTUAL','filter','options','include','findAll','rows','catch','show','params','includeAll','find','create','body','eml-format','rimraf','zip-dir','request-promise','mustache','util','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger'];(function(_0x1838b6,_0xc4f397){var _0x49854b=function(_0x261b58){while(--_0x261b58){_0x1838b6['push'](_0x1838b6['shift']());}};_0x49854b(++_0xc4f397);}(_0xe0af,0x88));var _0xfe0a=function(_0x48961c,_0x280e9d){_0x48961c=_0x48961c-0x0;var _0x1d895d=_0xe0af[_0x48961c];return _0x1d895d;};'use strict';var emlformat=require(_0xfe0a('0x0'));var rimraf=require(_0xfe0a('0x1'));var zipdir=require(_0xfe0a('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xfe0a('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xfe0a('0x4'));var util=require(_0xfe0a('0x5'));var path=require('path');var sox=require(_0xfe0a('0x6'));var csv=require(_0xfe0a('0x7'));var ejs=require(_0xfe0a('0x8'));var fs=require('fs');var fs_extra=require(_0xfe0a('0x9'));var _=require(_0xfe0a('0xa'));var squel=require(_0xfe0a('0xb'));var crypto=require(_0xfe0a('0xc'));var jsforce=require(_0xfe0a('0xd'));var deskjs=require(_0xfe0a('0xe'));var toCsv=require(_0xfe0a('0x7'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0xfe0a('0xf'));var as=require(_0xfe0a('0x10'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xfe0a('0x11'))('api');var utils=require(_0xfe0a('0x12'));var config=require(_0xfe0a('0x13'));var licenseUtil=require(_0xfe0a('0x14'));var db=require(_0xfe0a('0x15'))['db'];function respondWithStatusCode(_0x43e940,_0x564f6e){_0x564f6e=_0x564f6e||0xcc;return function(_0x94dac8){if(_0x94dac8){return _0x43e940[_0xfe0a('0x16')](_0x564f6e);}return _0x43e940['status'](_0x564f6e)[_0xfe0a('0x17')]();};}function respondWithResult(_0xda2c00,_0x53e3ca){_0x53e3ca=_0x53e3ca||0xc8;return function(_0x271a14){if(_0x271a14){return _0xda2c00[_0xfe0a('0x18')](_0x53e3ca)[_0xfe0a('0x19')](_0x271a14);}};}function respondWithFilteredResult(_0x14ce7f,_0x1c6dfe){return function(_0xb96120){if(_0xb96120){var _0x55eec9=typeof _0x1c6dfe['offset']===_0xfe0a('0x1a')&&typeof _0x1c6dfe[_0xfe0a('0x1b')]===_0xfe0a('0x1a');var _0x79bdb6=_0xb96120['count'];var _0x4c7ae5=_0x55eec9?0x0:_0x1c6dfe[_0xfe0a('0x1c')];var _0x37fe4a=_0x55eec9?_0xb96120[_0xfe0a('0x1d')]:_0x1c6dfe[_0xfe0a('0x1c')]+_0x1c6dfe['limit'];var _0x412c30;if(_0x37fe4a>=_0x79bdb6){_0x37fe4a=_0x79bdb6;_0x412c30=0xc8;}else{_0x412c30=0xce;}_0x14ce7f['status'](_0x412c30);return _0x14ce7f[_0xfe0a('0x1e')](_0xfe0a('0x1f'),_0x4c7ae5+'-'+_0x37fe4a+'/'+_0x79bdb6)[_0xfe0a('0x19')](_0xb96120);}return null;};}function patchUpdates(_0x4c3f28){return function(_0x189bc9){try{jsonpatch[_0xfe0a('0x20')](_0x189bc9,_0x4c3f28,!![]);}catch(_0xfe03a3){return BPromise[_0xfe0a('0x21')](_0xfe03a3);}return _0x189bc9[_0xfe0a('0x22')]();};}function saveUpdates(_0x482c88,_0x4eee5a){return function(_0x5ccf24){if(_0x5ccf24){return _0x5ccf24[_0xfe0a('0x23')](_0x482c88)[_0xfe0a('0x24')](function(_0x31b18b){return _0x31b18b;});}return null;};}function removeEntity(_0x122d42,_0x4332df){return function(_0xf06115){if(_0xf06115){return _0xf06115[_0xfe0a('0x25')]()[_0xfe0a('0x24')](function(){_0x122d42[_0xfe0a('0x18')](0xcc)[_0xfe0a('0x17')]();});}};}function handleEntityNotFound(_0x5db3aa,_0x4eed72){return function(_0x2a4739){if(!_0x2a4739){_0x5db3aa[_0xfe0a('0x16')](0x194);}return _0x2a4739;};}function handleError(_0x219f83,_0x549ec2){_0x549ec2=_0x549ec2||0x1f4;return function(_0x1571d8){logger[_0xfe0a('0x26')](_0x1571d8[_0xfe0a('0x27')]);if(_0x1571d8[_0xfe0a('0x28')]){delete _0x1571d8[_0xfe0a('0x28')];}_0x219f83[_0xfe0a('0x18')](_0x549ec2)[_0xfe0a('0x29')](_0x1571d8);};}exports[_0xfe0a('0x2a')]=function(_0x282bdc,_0x3d4403){var _0x35f771={},_0x4db48f={},_0xe8fa25={'count':0x0,'rows':[]};var _0xc669fe=_[_0xfe0a('0x2b')](db[_0xfe0a('0x2c')][_0xfe0a('0x2d')],function(_0x56079c){return{'name':_0x56079c[_0xfe0a('0x2e')],'type':_0x56079c[_0xfe0a('0x2f')][_0xfe0a('0x30')]};});_0x4db48f[_0xfe0a('0x31')]=_[_0xfe0a('0x2b')](_0xc669fe,_0xfe0a('0x28'));_0x4db48f['query']=_[_0xfe0a('0x32')](_0x282bdc[_0xfe0a('0x33')]);_0x4db48f[_0xfe0a('0x34')]=_[_0xfe0a('0x35')](_0x4db48f[_0xfe0a('0x31')],_0x4db48f[_0xfe0a('0x33')]);_0x35f771['attributes']=_[_0xfe0a('0x35')](_0x4db48f[_0xfe0a('0x31')],qs[_0xfe0a('0x36')](_0x282bdc[_0xfe0a('0x33')][_0xfe0a('0x36')]));_0x35f771[_0xfe0a('0x37')]=_0x35f771[_0xfe0a('0x37')][_0xfe0a('0x38')]?_0x35f771[_0xfe0a('0x37')]:_0x4db48f[_0xfe0a('0x31')];if(!_0x282bdc['query'][_0xfe0a('0x39')](_0xfe0a('0x3a'))){_0x35f771['limit']=qs['limit'](_0x282bdc[_0xfe0a('0x33')][_0xfe0a('0x1b')]);_0x35f771[_0xfe0a('0x1c')]=qs['offset'](_0x282bdc['query'][_0xfe0a('0x1c')]);}_0x35f771[_0xfe0a('0x3b')]=qs[_0xfe0a('0x3c')](_0x282bdc[_0xfe0a('0x33')]['sort']);_0x35f771[_0xfe0a('0x3d')]=qs['filters'](_[_0xfe0a('0x3e')](_0x282bdc[_0xfe0a('0x33')],_0x4db48f['filters']),_0xc669fe);if(_0x282bdc['query']['filter']){_0x35f771[_0xfe0a('0x3d')]=_[_0xfe0a('0x3f')](_0x35f771['where'],{'$or':_[_0xfe0a('0x2b')](_0xc669fe,function(_0x1fbf70){if(_0x1fbf70[_0xfe0a('0x2f')]!==_0xfe0a('0x40')){var _0x6ef045={};_0x6ef045[_0x1fbf70[_0xfe0a('0x28')]]={'$like':'%'+_0x282bdc[_0xfe0a('0x33')][_0xfe0a('0x41')]+'%'};return _0x6ef045;}})});}_0x35f771=_[_0xfe0a('0x3f')]({},_0x35f771,_0x282bdc[_0xfe0a('0x42')]);var _0x31bace={'where':_0x35f771[_0xfe0a('0x3d')]};return db['SmsApplication'][_0xfe0a('0x1d')](_0x31bace)[_0xfe0a('0x24')](function(_0x279c6b){_0xe8fa25[_0xfe0a('0x1d')]=_0x279c6b;if(_0x282bdc[_0xfe0a('0x33')]['includeAll']){_0x35f771[_0xfe0a('0x43')]=[{'all':!![]}];}return db[_0xfe0a('0x2c')][_0xfe0a('0x44')](_0x35f771);})[_0xfe0a('0x24')](function(_0xcd1053){_0xe8fa25[_0xfe0a('0x45')]=_0xcd1053;return _0xe8fa25;})[_0xfe0a('0x24')](respondWithFilteredResult(_0x3d4403,_0x35f771))[_0xfe0a('0x46')](handleError(_0x3d4403,null));};exports[_0xfe0a('0x47')]=function(_0x1d2ef7,_0x187dc2){var _0x2aa654={'raw':!![],'where':{'id':_0x1d2ef7[_0xfe0a('0x48')]['id']}},_0x1e5def={};_0x1e5def[_0xfe0a('0x31')]=_[_0xfe0a('0x32')](db['SmsApplication'][_0xfe0a('0x2d')]);_0x1e5def[_0xfe0a('0x33')]=_[_0xfe0a('0x32')](_0x1d2ef7[_0xfe0a('0x33')]);_0x1e5def[_0xfe0a('0x34')]=_['intersection'](_0x1e5def[_0xfe0a('0x31')],_0x1e5def[_0xfe0a('0x33')]);_0x2aa654[_0xfe0a('0x37')]=_[_0xfe0a('0x35')](_0x1e5def[_0xfe0a('0x31')],qs['fields'](_0x1d2ef7[_0xfe0a('0x33')]['fields']));_0x2aa654[_0xfe0a('0x37')]=_0x2aa654[_0xfe0a('0x37')]['length']?_0x2aa654[_0xfe0a('0x37')]:_0x1e5def[_0xfe0a('0x31')];if(_0x1d2ef7['query'][_0xfe0a('0x49')]){_0x2aa654[_0xfe0a('0x43')]=[{'all':!![]}];}_0x2aa654=_[_0xfe0a('0x3f')]({},_0x2aa654,_0x1d2ef7[_0xfe0a('0x42')]);return db[_0xfe0a('0x2c')][_0xfe0a('0x4a')](_0x2aa654)[_0xfe0a('0x24')](handleEntityNotFound(_0x187dc2,null))[_0xfe0a('0x24')](respondWithResult(_0x187dc2,null))[_0xfe0a('0x46')](handleError(_0x187dc2,null));};exports[_0xfe0a('0x4b')]=function(_0x36d587,_0x5336f4){return db[_0xfe0a('0x2c')]['create'](_0x36d587[_0xfe0a('0x4c')],{})[_0xfe0a('0x24')](respondWithResult(_0x5336f4,0xc9))[_0xfe0a('0x46')](handleError(_0x5336f4,null));};exports[_0xfe0a('0x23')]=function(_0x3de96b,_0x510c44){if(_0x3de96b[_0xfe0a('0x4c')]['id']){delete _0x3de96b[_0xfe0a('0x4c')]['id'];}return db['SmsApplication'][_0xfe0a('0x4a')]({'where':{'id':_0x3de96b[_0xfe0a('0x48')]['id']}})[_0xfe0a('0x24')](handleEntityNotFound(_0x510c44,null))[_0xfe0a('0x24')](saveUpdates(_0x3de96b[_0xfe0a('0x4c')],null))[_0xfe0a('0x24')](respondWithResult(_0x510c44,null))['catch'](handleError(_0x510c44,null));};exports[_0xfe0a('0x25')]=function(_0x57469e,_0x311fa1){return db['SmsApplication'][_0xfe0a('0x4a')]({'where':{'id':_0x57469e[_0xfe0a('0x48')]['id']}})['then'](handleEntityNotFound(_0x311fa1,null))[_0xfe0a('0x24')](removeEntity(_0x311fa1,null))['catch'](handleError(_0x311fa1,null));};