Built motion from commit 1cfc41f6.|2.5.41
[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 _0x89da=['Content-Range','reject','save','update','then','error','stack','name','send','index','SmsApplication','fieldName','type','map','query','keys','intersection','model','attributes','fields','nolimit','order','sort','where','filters','filter','merge','VIRTUAL','includeAll','include','findAll','rows','catch','show','params','rawAttributes','length','options','find','create','body','eml-format','rimraf','zip-dir','moment','bluebird','util','path','to-csv','ejs','lodash','squel','crypto','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','end','status','json','undefined','limit','count','offset','set'];(function(_0x5e8602,_0x2ce012){var _0x4434fb=function(_0x5ea1cb){while(--_0x5ea1cb){_0x5e8602['push'](_0x5e8602['shift']());}};_0x4434fb(++_0x2ce012);}(_0x89da,0xbd));var _0xa89d=function(_0x1b09bc,_0x53005c){_0x1b09bc=_0x1b09bc-0x0;var _0x22eab3=_0x89da[_0x1b09bc];return _0x22eab3;};'use strict';var emlformat=require(_0xa89d('0x0'));var rimraf=require(_0xa89d('0x1'));var zipdir=require(_0xa89d('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xa89d('0x3'));var BPromise=require(_0xa89d('0x4'));var Mustache=require('mustache');var util=require(_0xa89d('0x5'));var path=require(_0xa89d('0x6'));var sox=require('sox');var csv=require(_0xa89d('0x7'));var ejs=require(_0xa89d('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xa89d('0x9'));var squel=require(_0xa89d('0xa'));var crypto=require(_0xa89d('0xb'));var jsforce=require('jsforce');var deskjs=require(_0xa89d('0xc'));var toCsv=require(_0xa89d('0x7'));var querystring=require('querystring');var Papa=require(_0xa89d('0xd'));var Redis=require(_0xa89d('0xe'));var authService=require(_0xa89d('0xf'));var qs=require(_0xa89d('0x10'));var as=require(_0xa89d('0x11'));var hardwareService=require(_0xa89d('0x12'));var logger=require(_0xa89d('0x13'))(_0xa89d('0x14'));var utils=require(_0xa89d('0x15'));var config=require(_0xa89d('0x16'));var licenseUtil=require(_0xa89d('0x17'));var db=require(_0xa89d('0x18'))['db'];function respondWithStatusCode(_0x51e26f,_0x308140){_0x308140=_0x308140||0xcc;return function(_0x220084){if(_0x220084){return _0x51e26f['sendStatus'](_0x308140);}return _0x51e26f['status'](_0x308140)[_0xa89d('0x19')]();};}function respondWithResult(_0x3fe74a,_0x14d6e8){_0x14d6e8=_0x14d6e8||0xc8;return function(_0x3885c8){if(_0x3885c8){return _0x3fe74a[_0xa89d('0x1a')](_0x14d6e8)[_0xa89d('0x1b')](_0x3885c8);}};}function respondWithFilteredResult(_0x216a71,_0x164f29){return function(_0x4905f5){if(_0x4905f5){var _0x14615a=typeof _0x164f29['offset']===_0xa89d('0x1c')&&typeof _0x164f29[_0xa89d('0x1d')]==='undefined';var _0x2407d5=_0x4905f5[_0xa89d('0x1e')];var _0x23c2a4=_0x14615a?0x0:_0x164f29['offset'];var _0x1319ed=_0x14615a?_0x4905f5['count']:_0x164f29[_0xa89d('0x1f')]+_0x164f29['limit'];var _0x23c3b5;if(_0x1319ed>=_0x2407d5){_0x1319ed=_0x2407d5;_0x23c3b5=0xc8;}else{_0x23c3b5=0xce;}_0x216a71[_0xa89d('0x1a')](_0x23c3b5);return _0x216a71[_0xa89d('0x20')](_0xa89d('0x21'),_0x23c2a4+'-'+_0x1319ed+'/'+_0x2407d5)[_0xa89d('0x1b')](_0x4905f5);}return null;};}function patchUpdates(_0x2e7876){return function(_0x53805b){try{jsonpatch['apply'](_0x53805b,_0x2e7876,!![]);}catch(_0x3856cf){return BPromise[_0xa89d('0x22')](_0x3856cf);}return _0x53805b[_0xa89d('0x23')]();};}function saveUpdates(_0xe5dcc,_0x1bebd6){return function(_0x43af36){if(_0x43af36){return _0x43af36[_0xa89d('0x24')](_0xe5dcc)[_0xa89d('0x25')](function(_0x586a83){return _0x586a83;});}return null;};}function removeEntity(_0x31d66a,_0x14ca7a){return function(_0x44376d){if(_0x44376d){return _0x44376d['destroy']()[_0xa89d('0x25')](function(){_0x31d66a['status'](0xcc)[_0xa89d('0x19')]();});}};}function handleEntityNotFound(_0x5241ff,_0x1badee){return function(_0x101762){if(!_0x101762){_0x5241ff['sendStatus'](0x194);}return _0x101762;};}function handleError(_0x589de9,_0x5c005b){_0x5c005b=_0x5c005b||0x1f4;return function(_0x5906b7){logger[_0xa89d('0x26')](_0x5906b7[_0xa89d('0x27')]);if(_0x5906b7[_0xa89d('0x28')]){delete _0x5906b7[_0xa89d('0x28')];}_0x589de9[_0xa89d('0x1a')](_0x5c005b)[_0xa89d('0x29')](_0x5906b7);};}exports[_0xa89d('0x2a')]=function(_0x32fb9b,_0x616d54){var _0x5801f8={},_0x1ade01={},_0x56faf8={'count':0x0,'rows':[]};var _0x53bc93=_['map'](db[_0xa89d('0x2b')]['rawAttributes'],function(_0x3cb133){return{'name':_0x3cb133[_0xa89d('0x2c')],'type':_0x3cb133[_0xa89d('0x2d')]['key']};});_0x1ade01['model']=_[_0xa89d('0x2e')](_0x53bc93,_0xa89d('0x28'));_0x1ade01[_0xa89d('0x2f')]=_[_0xa89d('0x30')](_0x32fb9b[_0xa89d('0x2f')]);_0x1ade01['filters']=_[_0xa89d('0x31')](_0x1ade01[_0xa89d('0x32')],_0x1ade01[_0xa89d('0x2f')]);_0x5801f8[_0xa89d('0x33')]=_['intersection'](_0x1ade01[_0xa89d('0x32')],qs[_0xa89d('0x34')](_0x32fb9b[_0xa89d('0x2f')]['fields']));_0x5801f8['attributes']=_0x5801f8[_0xa89d('0x33')]['length']?_0x5801f8[_0xa89d('0x33')]:_0x1ade01['model'];if(!_0x32fb9b[_0xa89d('0x2f')]['hasOwnProperty'](_0xa89d('0x35'))){_0x5801f8[_0xa89d('0x1d')]=qs[_0xa89d('0x1d')](_0x32fb9b[_0xa89d('0x2f')]['limit']);_0x5801f8['offset']=qs[_0xa89d('0x1f')](_0x32fb9b[_0xa89d('0x2f')]['offset']);}_0x5801f8[_0xa89d('0x36')]=qs[_0xa89d('0x37')](_0x32fb9b[_0xa89d('0x2f')][_0xa89d('0x37')]);_0x5801f8[_0xa89d('0x38')]=qs['filters'](_['pick'](_0x32fb9b[_0xa89d('0x2f')],_0x1ade01[_0xa89d('0x39')]),_0x53bc93);if(_0x32fb9b[_0xa89d('0x2f')][_0xa89d('0x3a')]){_0x5801f8[_0xa89d('0x38')]=_[_0xa89d('0x3b')](_0x5801f8['where'],{'$or':_['map'](_0x53bc93,function(_0x3eed02){if(_0x3eed02[_0xa89d('0x2d')]!==_0xa89d('0x3c')){var _0x3022b4={};_0x3022b4[_0x3eed02[_0xa89d('0x28')]]={'$like':'%'+_0x32fb9b[_0xa89d('0x2f')][_0xa89d('0x3a')]+'%'};return _0x3022b4;}})});}_0x5801f8=_[_0xa89d('0x3b')]({},_0x5801f8,_0x32fb9b['options']);var _0x37711a={'where':_0x5801f8[_0xa89d('0x38')]};return db[_0xa89d('0x2b')][_0xa89d('0x1e')](_0x37711a)[_0xa89d('0x25')](function(_0x2fc7bf){_0x56faf8['count']=_0x2fc7bf;if(_0x32fb9b['query'][_0xa89d('0x3d')]){_0x5801f8[_0xa89d('0x3e')]=[{'all':!![]}];}return db['SmsApplication'][_0xa89d('0x3f')](_0x5801f8);})[_0xa89d('0x25')](function(_0x2ddd79){_0x56faf8[_0xa89d('0x40')]=_0x2ddd79;return _0x56faf8;})['then'](respondWithFilteredResult(_0x616d54,_0x5801f8))[_0xa89d('0x41')](handleError(_0x616d54,null));};exports[_0xa89d('0x42')]=function(_0x47b415,_0x3746df){var _0x4851df={'raw':!![],'where':{'id':_0x47b415[_0xa89d('0x43')]['id']}},_0x2e4194={};_0x2e4194[_0xa89d('0x32')]=_['keys'](db['SmsApplication'][_0xa89d('0x44')]);_0x2e4194[_0xa89d('0x2f')]=_[_0xa89d('0x30')](_0x47b415[_0xa89d('0x2f')]);_0x2e4194[_0xa89d('0x39')]=_[_0xa89d('0x31')](_0x2e4194[_0xa89d('0x32')],_0x2e4194[_0xa89d('0x2f')]);_0x4851df[_0xa89d('0x33')]=_['intersection'](_0x2e4194[_0xa89d('0x32')],qs[_0xa89d('0x34')](_0x47b415[_0xa89d('0x2f')][_0xa89d('0x34')]));_0x4851df[_0xa89d('0x33')]=_0x4851df[_0xa89d('0x33')][_0xa89d('0x45')]?_0x4851df['attributes']:_0x2e4194[_0xa89d('0x32')];if(_0x47b415['query'][_0xa89d('0x3d')]){_0x4851df[_0xa89d('0x3e')]=[{'all':!![]}];}_0x4851df=_[_0xa89d('0x3b')]({},_0x4851df,_0x47b415[_0xa89d('0x46')]);return db['SmsApplication'][_0xa89d('0x47')](_0x4851df)[_0xa89d('0x25')](handleEntityNotFound(_0x3746df,null))[_0xa89d('0x25')](respondWithResult(_0x3746df,null))[_0xa89d('0x41')](handleError(_0x3746df,null));};exports['create']=function(_0x23b8d4,_0x2ba229){return db[_0xa89d('0x2b')][_0xa89d('0x48')](_0x23b8d4[_0xa89d('0x49')],{})[_0xa89d('0x25')](respondWithResult(_0x2ba229,0xc9))[_0xa89d('0x41')](handleError(_0x2ba229,null));};exports[_0xa89d('0x24')]=function(_0x4ecd26,_0x42b625){if(_0x4ecd26[_0xa89d('0x49')]['id']){delete _0x4ecd26['body']['id'];}return db['SmsApplication'][_0xa89d('0x47')]({'where':{'id':_0x4ecd26[_0xa89d('0x43')]['id']}})[_0xa89d('0x25')](handleEntityNotFound(_0x42b625,null))[_0xa89d('0x25')](saveUpdates(_0x4ecd26[_0xa89d('0x49')],null))['then'](respondWithResult(_0x42b625,null))['catch'](handleError(_0x42b625,null));};exports['destroy']=function(_0x56c5b0,_0xa6217c){return db[_0xa89d('0x2b')][_0xa89d('0x47')]({'where':{'id':_0x56c5b0[_0xa89d('0x43')]['id']}})['then'](handleEntityNotFound(_0xa6217c,null))[_0xa89d('0x25')](removeEntity(_0xa6217c,null))[_0xa89d('0x41')](handleError(_0xa6217c,null));};