Built motion from commit e6806ed6.|2.6.0
[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 _0x141b=['SmsApplication','rawAttributes','fieldName','type','key','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filters','merge','VIRTUAL','include','findAll','rows','catch','params','find','create','body','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','to-csv','fs-extra','crypto','jsforce','desk.js','querystring','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','json','offset','limit','count','set','apply','reject','update','then','destroy','stack','name','index','map'];(function(_0x295b61,_0x808c6c){var _0x1f9558=function(_0x48a496){while(--_0x48a496){_0x295b61['push'](_0x295b61['shift']());}};_0x1f9558(++_0x808c6c);}(_0x141b,0x1af));var _0xb141=function(_0x2fc558,_0x150b41){_0x2fc558=_0x2fc558-0x0;var _0x2a2010=_0x141b[_0x2fc558];return _0x2a2010;};'use strict';var emlformat=require(_0xb141('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xb141('0x1'));var jsonpatch=require(_0xb141('0x2'));var rp=require(_0xb141('0x3'));var moment=require(_0xb141('0x4'));var BPromise=require(_0xb141('0x5'));var Mustache=require('mustache');var util=require('util');var path=require('path');var sox=require('sox');var csv=require(_0xb141('0x6'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xb141('0x7'));var _=require('lodash');var squel=require('squel');var crypto=require(_0xb141('0x8'));var jsforce=require(_0xb141('0x9'));var deskjs=require(_0xb141('0xa'));var toCsv=require(_0xb141('0x6'));var querystring=require(_0xb141('0xb'));var Papa=require(_0xb141('0xc'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0xb141('0xd'));var as=require(_0xb141('0xe'));var hardwareService=require(_0xb141('0xf'));var logger=require(_0xb141('0x10'))(_0xb141('0x11'));var utils=require(_0xb141('0x12'));var config=require(_0xb141('0x13'));var licenseUtil=require(_0xb141('0x14'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x199b65,_0x170081){_0x170081=_0x170081||0xcc;return function(_0x5d3b97){if(_0x5d3b97){return _0x199b65[_0xb141('0x15')](_0x170081);}return _0x199b65[_0xb141('0x16')](_0x170081)[_0xb141('0x17')]();};}function respondWithResult(_0x2249b8,_0x4ac300){_0x4ac300=_0x4ac300||0xc8;return function(_0x3796cb){if(_0x3796cb){return _0x2249b8['status'](_0x4ac300)[_0xb141('0x18')](_0x3796cb);}};}function respondWithFilteredResult(_0xffdc24,_0x51c618){return function(_0x39de15){if(_0x39de15){var _0x3ac043=typeof _0x51c618[_0xb141('0x19')]==='undefined'&&typeof _0x51c618[_0xb141('0x1a')]==='undefined';var _0x524448=_0x39de15[_0xb141('0x1b')];var _0x298a1f=_0x3ac043?0x0:_0x51c618[_0xb141('0x19')];var _0x5b443f=_0x3ac043?_0x39de15[_0xb141('0x1b')]:_0x51c618[_0xb141('0x19')]+_0x51c618[_0xb141('0x1a')];var _0x5c2ecd;if(_0x5b443f>=_0x524448){_0x5b443f=_0x524448;_0x5c2ecd=0xc8;}else{_0x5c2ecd=0xce;}_0xffdc24[_0xb141('0x16')](_0x5c2ecd);return _0xffdc24[_0xb141('0x1c')]('Content-Range',_0x298a1f+'-'+_0x5b443f+'/'+_0x524448)['json'](_0x39de15);}return null;};}function patchUpdates(_0x2551cd){return function(_0x132501){try{jsonpatch[_0xb141('0x1d')](_0x132501,_0x2551cd,!![]);}catch(_0x6118e1){return BPromise[_0xb141('0x1e')](_0x6118e1);}return _0x132501['save']();};}function saveUpdates(_0x315712,_0xb50877){return function(_0x34d32b){if(_0x34d32b){return _0x34d32b[_0xb141('0x1f')](_0x315712)[_0xb141('0x20')](function(_0x18d687){return _0x18d687;});}return null;};}function removeEntity(_0x33189b,_0x158649){return function(_0x537a88){if(_0x537a88){return _0x537a88[_0xb141('0x21')]()[_0xb141('0x20')](function(){_0x33189b[_0xb141('0x16')](0xcc)[_0xb141('0x17')]();});}};}function handleEntityNotFound(_0x242573,_0x2ea2a2){return function(_0x4def4f){if(!_0x4def4f){_0x242573[_0xb141('0x15')](0x194);}return _0x4def4f;};}function handleError(_0x594198,_0x320e47){_0x320e47=_0x320e47||0x1f4;return function(_0x447c2a){logger['error'](_0x447c2a[_0xb141('0x22')]);if(_0x447c2a[_0xb141('0x23')]){delete _0x447c2a[_0xb141('0x23')];}_0x594198['status'](_0x320e47)['send'](_0x447c2a);};}exports[_0xb141('0x24')]=function(_0x48c3bc,_0xcb0d7d){var _0x2a8595={},_0x9189a1={},_0x397f59={'count':0x0,'rows':[]};var _0x53aa56=_[_0xb141('0x25')](db[_0xb141('0x26')][_0xb141('0x27')],function(_0x1bacb1){return{'name':_0x1bacb1[_0xb141('0x28')],'type':_0x1bacb1[_0xb141('0x29')][_0xb141('0x2a')]};});_0x9189a1[_0xb141('0x2b')]=_[_0xb141('0x25')](_0x53aa56,_0xb141('0x23'));_0x9189a1[_0xb141('0x2c')]=_[_0xb141('0x2d')](_0x48c3bc[_0xb141('0x2c')]);_0x9189a1['filters']=_[_0xb141('0x2e')](_0x9189a1['model'],_0x9189a1[_0xb141('0x2c')]);_0x2a8595[_0xb141('0x2f')]=_[_0xb141('0x2e')](_0x9189a1[_0xb141('0x2b')],qs[_0xb141('0x30')](_0x48c3bc[_0xb141('0x2c')][_0xb141('0x30')]));_0x2a8595[_0xb141('0x2f')]=_0x2a8595['attributes'][_0xb141('0x31')]?_0x2a8595['attributes']:_0x9189a1[_0xb141('0x2b')];if(!_0x48c3bc[_0xb141('0x2c')][_0xb141('0x32')](_0xb141('0x33'))){_0x2a8595[_0xb141('0x1a')]=qs[_0xb141('0x1a')](_0x48c3bc[_0xb141('0x2c')][_0xb141('0x1a')]);_0x2a8595[_0xb141('0x19')]=qs[_0xb141('0x19')](_0x48c3bc[_0xb141('0x2c')][_0xb141('0x19')]);}_0x2a8595[_0xb141('0x34')]=qs[_0xb141('0x35')](_0x48c3bc['query'][_0xb141('0x35')]);_0x2a8595[_0xb141('0x36')]=qs['filters'](_[_0xb141('0x37')](_0x48c3bc['query'],_0x9189a1[_0xb141('0x38')]),_0x53aa56);if(_0x48c3bc['query']['filter']){_0x2a8595[_0xb141('0x36')]=_[_0xb141('0x39')](_0x2a8595['where'],{'$or':_[_0xb141('0x25')](_0x53aa56,function(_0x800ad5){if(_0x800ad5[_0xb141('0x29')]!==_0xb141('0x3a')){var _0x57d3f2={};_0x57d3f2[_0x800ad5[_0xb141('0x23')]]={'$like':'%'+_0x48c3bc['query']['filter']+'%'};return _0x57d3f2;}})});}_0x2a8595=_[_0xb141('0x39')]({},_0x2a8595,_0x48c3bc['options']);var _0x59eaef={'where':_0x2a8595[_0xb141('0x36')]};return db[_0xb141('0x26')][_0xb141('0x1b')](_0x59eaef)[_0xb141('0x20')](function(_0x5ded5c){_0x397f59[_0xb141('0x1b')]=_0x5ded5c;if(_0x48c3bc[_0xb141('0x2c')]['includeAll']){_0x2a8595[_0xb141('0x3b')]=[{'all':!![]}];}return db[_0xb141('0x26')][_0xb141('0x3c')](_0x2a8595);})[_0xb141('0x20')](function(_0x104303){_0x397f59[_0xb141('0x3d')]=_0x104303;return _0x397f59;})[_0xb141('0x20')](respondWithFilteredResult(_0xcb0d7d,_0x2a8595))[_0xb141('0x3e')](handleError(_0xcb0d7d,null));};exports['show']=function(_0x59eb11,_0x5f17ce){var _0x36684b={'raw':!![],'where':{'id':_0x59eb11[_0xb141('0x3f')]['id']}},_0x2ad111={};_0x2ad111[_0xb141('0x2b')]=_['keys'](db[_0xb141('0x26')][_0xb141('0x27')]);_0x2ad111[_0xb141('0x2c')]=_[_0xb141('0x2d')](_0x59eb11[_0xb141('0x2c')]);_0x2ad111[_0xb141('0x38')]=_[_0xb141('0x2e')](_0x2ad111[_0xb141('0x2b')],_0x2ad111[_0xb141('0x2c')]);_0x36684b[_0xb141('0x2f')]=_['intersection'](_0x2ad111[_0xb141('0x2b')],qs[_0xb141('0x30')](_0x59eb11[_0xb141('0x2c')]['fields']));_0x36684b[_0xb141('0x2f')]=_0x36684b[_0xb141('0x2f')][_0xb141('0x31')]?_0x36684b[_0xb141('0x2f')]:_0x2ad111[_0xb141('0x2b')];if(_0x59eb11[_0xb141('0x2c')]['includeAll']){_0x36684b[_0xb141('0x3b')]=[{'all':!![]}];}_0x36684b=_[_0xb141('0x39')]({},_0x36684b,_0x59eb11['options']);return db['SmsApplication'][_0xb141('0x40')](_0x36684b)[_0xb141('0x20')](handleEntityNotFound(_0x5f17ce,null))[_0xb141('0x20')](respondWithResult(_0x5f17ce,null))[_0xb141('0x3e')](handleError(_0x5f17ce,null));};exports['create']=function(_0x1de8f3,_0x3b0144){return db[_0xb141('0x26')][_0xb141('0x41')](_0x1de8f3[_0xb141('0x42')],{})[_0xb141('0x20')](respondWithResult(_0x3b0144,0xc9))[_0xb141('0x3e')](handleError(_0x3b0144,null));};exports[_0xb141('0x1f')]=function(_0xbd42bc,_0x4ab0c0){if(_0xbd42bc[_0xb141('0x42')]['id']){delete _0xbd42bc[_0xb141('0x42')]['id'];}return db['SmsApplication'][_0xb141('0x40')]({'where':{'id':_0xbd42bc[_0xb141('0x3f')]['id']}})[_0xb141('0x20')](handleEntityNotFound(_0x4ab0c0,null))[_0xb141('0x20')](saveUpdates(_0xbd42bc[_0xb141('0x42')],null))['then'](respondWithResult(_0x4ab0c0,null))[_0xb141('0x3e')](handleError(_0x4ab0c0,null));};exports[_0xb141('0x21')]=function(_0x41be58,_0x5eadb6){return db[_0xb141('0x26')]['find']({'where':{'id':_0x41be58[_0xb141('0x3f')]['id']}})['then'](handleEntityNotFound(_0x5eadb6,null))[_0xb141('0x20')](removeEntity(_0x5eadb6,null))[_0xb141('0x3e')](handleError(_0x5eadb6,null));};