804ae7ea0f3a073aec556a1975a55a7489385d7c
[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 _0xb1ca=['intersection','length','includeAll','options','find','create','body','destroy','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','fs-extra','lodash','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../config/license/hardware','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','offset','undefined','limit','count','json','apply','reject','save','update','then','error','stack','name','index','map','SmsApplication','rawAttributes','fieldName','type','key','model','query','keys','filters','fields','attributes','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','include','findAll','rows','catch','show','params'];(function(_0x238540,_0x135ede){var _0x9bc21a=function(_0x468b41){while(--_0x468b41){_0x238540['push'](_0x238540['shift']());}};_0x9bc21a(++_0x135ede);}(_0xb1ca,0x17f));var _0xab1c=function(_0x36ed48,_0x1ee0d4){_0x36ed48=_0x36ed48-0x0;var _0x51c63a=_0xb1ca[_0x36ed48];return _0x51c63a;};'use strict';var emlformat=require(_0xab1c('0x0'));var rimraf=require(_0xab1c('0x1'));var zipdir=require(_0xab1c('0x2'));var jsonpatch=require(_0xab1c('0x3'));var rp=require(_0xab1c('0x4'));var moment=require(_0xab1c('0x5'));var BPromise=require(_0xab1c('0x6'));var Mustache=require('mustache');var util=require(_0xab1c('0x7'));var path=require(_0xab1c('0x8'));var sox=require(_0xab1c('0x9'));var csv=require(_0xab1c('0xa'));var ejs=require(_0xab1c('0xb'));var fs=require('fs');var fs_extra=require(_0xab1c('0xc'));var _=require(_0xab1c('0xd'));var squel=require('squel');var crypto=require(_0xab1c('0xe'));var jsforce=require('jsforce');var deskjs=require(_0xab1c('0xf'));var toCsv=require(_0xab1c('0xa'));var querystring=require(_0xab1c('0x10'));var Papa=require(_0xab1c('0x11'));var Redis=require(_0xab1c('0x12'));var authService=require(_0xab1c('0x13'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xab1c('0x14'));var logger=require('../../config/logger')('api');var utils=require(_0xab1c('0x15'));var config=require(_0xab1c('0x16'));var licenseUtil=require(_0xab1c('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x72db7,_0x45413a){_0x45413a=_0x45413a||0xcc;return function(_0x4a4339){if(_0x4a4339){return _0x72db7[_0xab1c('0x18')](_0x45413a);}return _0x72db7[_0xab1c('0x19')](_0x45413a)[_0xab1c('0x1a')]();};}function respondWithResult(_0x556d7a,_0x3e9fd7){_0x3e9fd7=_0x3e9fd7||0xc8;return function(_0x45bdd8){if(_0x45bdd8){return _0x556d7a[_0xab1c('0x19')](_0x3e9fd7)['json'](_0x45bdd8);}};}function respondWithFilteredResult(_0x5c2c28,_0x4725d8){return function(_0x2730d1){if(_0x2730d1){var _0x1ef89a=typeof _0x4725d8[_0xab1c('0x1b')]===_0xab1c('0x1c')&&typeof _0x4725d8[_0xab1c('0x1d')]===_0xab1c('0x1c');var _0x2830f6=_0x2730d1['count'];var _0x79e136=_0x1ef89a?0x0:_0x4725d8[_0xab1c('0x1b')];var _0xcaa6d2=_0x1ef89a?_0x2730d1[_0xab1c('0x1e')]:_0x4725d8[_0xab1c('0x1b')]+_0x4725d8['limit'];var _0x4b5c06;if(_0xcaa6d2>=_0x2830f6){_0xcaa6d2=_0x2830f6;_0x4b5c06=0xc8;}else{_0x4b5c06=0xce;}_0x5c2c28[_0xab1c('0x19')](_0x4b5c06);return _0x5c2c28['set']('Content-Range',_0x79e136+'-'+_0xcaa6d2+'/'+_0x2830f6)[_0xab1c('0x1f')](_0x2730d1);}return null;};}function patchUpdates(_0x14b45a){return function(_0x231864){try{jsonpatch[_0xab1c('0x20')](_0x231864,_0x14b45a,!![]);}catch(_0x21c37d){return BPromise[_0xab1c('0x21')](_0x21c37d);}return _0x231864[_0xab1c('0x22')]();};}function saveUpdates(_0x11b8b5,_0x144b83){return function(_0x3afa52){if(_0x3afa52){return _0x3afa52[_0xab1c('0x23')](_0x11b8b5)[_0xab1c('0x24')](function(_0x449cbb){return _0x449cbb;});}return null;};}function removeEntity(_0x58ee61,_0x12aed0){return function(_0x514abe){if(_0x514abe){return _0x514abe['destroy']()[_0xab1c('0x24')](function(){_0x58ee61[_0xab1c('0x19')](0xcc)[_0xab1c('0x1a')]();});}};}function handleEntityNotFound(_0x5a8eb0,_0x55c887){return function(_0x877b62){if(!_0x877b62){_0x5a8eb0[_0xab1c('0x18')](0x194);}return _0x877b62;};}function handleError(_0x2a7fce,_0x4e43b5){_0x4e43b5=_0x4e43b5||0x1f4;return function(_0x21092c){logger[_0xab1c('0x25')](_0x21092c[_0xab1c('0x26')]);if(_0x21092c['name']){delete _0x21092c[_0xab1c('0x27')];}_0x2a7fce[_0xab1c('0x19')](_0x4e43b5)['send'](_0x21092c);};}exports[_0xab1c('0x28')]=function(_0x1deff5,_0x33de06){var _0x23ef0b={},_0x37be2f={},_0x243601={'count':0x0,'rows':[]};var _0x3590b8=_[_0xab1c('0x29')](db[_0xab1c('0x2a')][_0xab1c('0x2b')],function(_0x14c4dc){return{'name':_0x14c4dc[_0xab1c('0x2c')],'type':_0x14c4dc[_0xab1c('0x2d')][_0xab1c('0x2e')]};});_0x37be2f[_0xab1c('0x2f')]=_[_0xab1c('0x29')](_0x3590b8,'name');_0x37be2f[_0xab1c('0x30')]=_[_0xab1c('0x31')](_0x1deff5[_0xab1c('0x30')]);_0x37be2f[_0xab1c('0x32')]=_['intersection'](_0x37be2f[_0xab1c('0x2f')],_0x37be2f[_0xab1c('0x30')]);_0x23ef0b['attributes']=_['intersection'](_0x37be2f['model'],qs[_0xab1c('0x33')](_0x1deff5[_0xab1c('0x30')][_0xab1c('0x33')]));_0x23ef0b[_0xab1c('0x34')]=_0x23ef0b[_0xab1c('0x34')]['length']?_0x23ef0b[_0xab1c('0x34')]:_0x37be2f[_0xab1c('0x2f')];if(!_0x1deff5[_0xab1c('0x30')][_0xab1c('0x35')](_0xab1c('0x36'))){_0x23ef0b[_0xab1c('0x1d')]=qs[_0xab1c('0x1d')](_0x1deff5[_0xab1c('0x30')][_0xab1c('0x1d')]);_0x23ef0b[_0xab1c('0x1b')]=qs['offset'](_0x1deff5[_0xab1c('0x30')][_0xab1c('0x1b')]);}_0x23ef0b[_0xab1c('0x37')]=qs[_0xab1c('0x38')](_0x1deff5['query']['sort']);_0x23ef0b['where']=qs[_0xab1c('0x32')](_[_0xab1c('0x39')](_0x1deff5[_0xab1c('0x30')],_0x37be2f[_0xab1c('0x32')]),_0x3590b8);if(_0x1deff5['query'][_0xab1c('0x3a')]){_0x23ef0b[_0xab1c('0x3b')]=_[_0xab1c('0x3c')](_0x23ef0b[_0xab1c('0x3b')],{'$or':_[_0xab1c('0x29')](_0x3590b8,function(_0x4a9283){if(_0x4a9283[_0xab1c('0x2d')]!=='VIRTUAL'){var _0x146b1e={};_0x146b1e[_0x4a9283[_0xab1c('0x27')]]={'$like':'%'+_0x1deff5[_0xab1c('0x30')][_0xab1c('0x3a')]+'%'};return _0x146b1e;}})});}_0x23ef0b=_[_0xab1c('0x3c')]({},_0x23ef0b,_0x1deff5['options']);var _0x20f9de={'where':_0x23ef0b[_0xab1c('0x3b')]};return db[_0xab1c('0x2a')][_0xab1c('0x1e')](_0x20f9de)[_0xab1c('0x24')](function(_0x54cac5){_0x243601[_0xab1c('0x1e')]=_0x54cac5;if(_0x1deff5[_0xab1c('0x30')]['includeAll']){_0x23ef0b[_0xab1c('0x3d')]=[{'all':!![]}];}return db['SmsApplication'][_0xab1c('0x3e')](_0x23ef0b);})[_0xab1c('0x24')](function(_0x1b9218){_0x243601[_0xab1c('0x3f')]=_0x1b9218;return _0x243601;})[_0xab1c('0x24')](respondWithFilteredResult(_0x33de06,_0x23ef0b))[_0xab1c('0x40')](handleError(_0x33de06,null));};exports[_0xab1c('0x41')]=function(_0x423fb8,_0x2a5012){var _0x43da68={'raw':!![],'where':{'id':_0x423fb8[_0xab1c('0x42')]['id']}},_0x3d9feb={};_0x3d9feb[_0xab1c('0x2f')]=_[_0xab1c('0x31')](db[_0xab1c('0x2a')]['rawAttributes']);_0x3d9feb[_0xab1c('0x30')]=_[_0xab1c('0x31')](_0x423fb8[_0xab1c('0x30')]);_0x3d9feb[_0xab1c('0x32')]=_[_0xab1c('0x43')](_0x3d9feb[_0xab1c('0x2f')],_0x3d9feb[_0xab1c('0x30')]);_0x43da68[_0xab1c('0x34')]=_[_0xab1c('0x43')](_0x3d9feb['model'],qs[_0xab1c('0x33')](_0x423fb8[_0xab1c('0x30')][_0xab1c('0x33')]));_0x43da68[_0xab1c('0x34')]=_0x43da68['attributes'][_0xab1c('0x44')]?_0x43da68[_0xab1c('0x34')]:_0x3d9feb[_0xab1c('0x2f')];if(_0x423fb8[_0xab1c('0x30')][_0xab1c('0x45')]){_0x43da68[_0xab1c('0x3d')]=[{'all':!![]}];}_0x43da68=_[_0xab1c('0x3c')]({},_0x43da68,_0x423fb8[_0xab1c('0x46')]);return db[_0xab1c('0x2a')][_0xab1c('0x47')](_0x43da68)[_0xab1c('0x24')](handleEntityNotFound(_0x2a5012,null))[_0xab1c('0x24')](respondWithResult(_0x2a5012,null))[_0xab1c('0x40')](handleError(_0x2a5012,null));};exports[_0xab1c('0x48')]=function(_0x49a226,_0x1b069e){return db[_0xab1c('0x2a')]['create'](_0x49a226[_0xab1c('0x49')],{})[_0xab1c('0x24')](respondWithResult(_0x1b069e,0xc9))[_0xab1c('0x40')](handleError(_0x1b069e,null));};exports[_0xab1c('0x23')]=function(_0x1c0b29,_0x1950de){if(_0x1c0b29['body']['id']){delete _0x1c0b29[_0xab1c('0x49')]['id'];}return db[_0xab1c('0x2a')][_0xab1c('0x47')]({'where':{'id':_0x1c0b29[_0xab1c('0x42')]['id']}})[_0xab1c('0x24')](handleEntityNotFound(_0x1950de,null))['then'](saveUpdates(_0x1c0b29[_0xab1c('0x49')],null))['then'](respondWithResult(_0x1950de,null))[_0xab1c('0x40')](handleError(_0x1950de,null));};exports[_0xab1c('0x4a')]=function(_0x139058,_0x5d2499){return db[_0xab1c('0x2a')][_0xab1c('0x47')]({'where':{'id':_0x139058[_0xab1c('0x42')]['id']}})[_0xab1c('0x24')](handleEntityNotFound(_0x5d2499,null))[_0xab1c('0x24')](removeEntity(_0x5d2499,null))[_0xab1c('0x40')](handleError(_0x5d2499,null));};