Built motion from commit f74363e9.|2.6.34
[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 _0xa390=['model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','merge','SmsApplication','include','findAll','rows','catch','show','rawAttributes','find','create','body','params','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','map','fieldName','type','key'];(function(_0x5db657,_0x2f40b3){var _0x2d6e70=function(_0x358ed2){while(--_0x358ed2){_0x5db657['push'](_0x5db657['shift']());}};_0x2d6e70(++_0x2f40b3);}(_0xa390,0x103));var _0x0a39=function(_0x2608d3,_0x46dbb1){_0x2608d3=_0x2608d3-0x0;var _0x121bd5=_0xa390[_0x2608d3];return _0x121bd5;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x0a39('0x0'));var jsonpatch=require(_0x0a39('0x1'));var rp=require(_0x0a39('0x2'));var moment=require(_0x0a39('0x3'));var BPromise=require(_0x0a39('0x4'));var Mustache=require('mustache');var util=require(_0x0a39('0x5'));var path=require('path');var sox=require(_0x0a39('0x6'));var csv=require(_0x0a39('0x7'));var ejs=require(_0x0a39('0x8'));var fs=require('fs');var fs_extra=require(_0x0a39('0x9'));var _=require(_0x0a39('0xa'));var squel=require(_0x0a39('0xb'));var crypto=require('crypto');var jsforce=require(_0x0a39('0xc'));var deskjs=require(_0x0a39('0xd'));var toCsv=require(_0x0a39('0x7'));var querystring=require(_0x0a39('0xe'));var Papa=require(_0x0a39('0xf'));var Redis=require(_0x0a39('0x10'));var authService=require(_0x0a39('0x11'));var qs=require(_0x0a39('0x12'));var as=require(_0x0a39('0x13'));var hardwareService=require(_0x0a39('0x14'));var logger=require(_0x0a39('0x15'))(_0x0a39('0x16'));var utils=require(_0x0a39('0x17'));var config=require('../../config/environment');var licenseUtil=require(_0x0a39('0x18'));var db=require(_0x0a39('0x19'))['db'];function respondWithStatusCode(_0xe59203,_0x427f14){_0x427f14=_0x427f14||0xcc;return function(_0x202457){if(_0x202457){return _0xe59203[_0x0a39('0x1a')](_0x427f14);}return _0xe59203[_0x0a39('0x1b')](_0x427f14)[_0x0a39('0x1c')]();};}function respondWithResult(_0x3862b1,_0x190519){_0x190519=_0x190519||0xc8;return function(_0x22a509){if(_0x22a509){return _0x3862b1[_0x0a39('0x1b')](_0x190519)[_0x0a39('0x1d')](_0x22a509);}};}function respondWithFilteredResult(_0x3cab54,_0x482e20){return function(_0x5357af){if(_0x5357af){var _0x38b5bf=typeof _0x482e20[_0x0a39('0x1e')]==='undefined'&&typeof _0x482e20[_0x0a39('0x1f')]==='undefined';var _0x40aac8=_0x5357af[_0x0a39('0x20')];var _0x1f4445=_0x38b5bf?0x0:_0x482e20[_0x0a39('0x1e')];var _0x500090=_0x38b5bf?_0x5357af[_0x0a39('0x20')]:_0x482e20[_0x0a39('0x1e')]+_0x482e20[_0x0a39('0x1f')];var _0x2b2de9;if(_0x500090>=_0x40aac8){_0x500090=_0x40aac8;_0x2b2de9=0xc8;}else{_0x2b2de9=0xce;}_0x3cab54['status'](_0x2b2de9);return _0x3cab54[_0x0a39('0x21')](_0x0a39('0x22'),_0x1f4445+'-'+_0x500090+'/'+_0x40aac8)[_0x0a39('0x1d')](_0x5357af);}return null;};}function patchUpdates(_0x546af1){return function(_0x446ad2){try{jsonpatch[_0x0a39('0x23')](_0x446ad2,_0x546af1,!![]);}catch(_0x3fa906){return BPromise[_0x0a39('0x24')](_0x3fa906);}return _0x446ad2[_0x0a39('0x25')]();};}function saveUpdates(_0x52b6f8,_0x1f5d63){return function(_0x37a75a){if(_0x37a75a){return _0x37a75a[_0x0a39('0x26')](_0x52b6f8)[_0x0a39('0x27')](function(_0x1565bb){return _0x1565bb;});}return null;};}function removeEntity(_0x416586,_0x580d0d){return function(_0x4cf64c){if(_0x4cf64c){return _0x4cf64c[_0x0a39('0x28')]()[_0x0a39('0x27')](function(){_0x416586[_0x0a39('0x1b')](0xcc)[_0x0a39('0x1c')]();});}};}function handleEntityNotFound(_0x11d88f,_0x43d0c0){return function(_0x2b005b){if(!_0x2b005b){_0x11d88f[_0x0a39('0x1a')](0x194);}return _0x2b005b;};}function handleError(_0x41621b,_0x56d659){_0x56d659=_0x56d659||0x1f4;return function(_0x4fd2fd){logger[_0x0a39('0x29')](_0x4fd2fd[_0x0a39('0x2a')]);if(_0x4fd2fd[_0x0a39('0x2b')]){delete _0x4fd2fd[_0x0a39('0x2b')];}_0x41621b[_0x0a39('0x1b')](_0x56d659)[_0x0a39('0x2c')](_0x4fd2fd);};}exports['index']=function(_0x5988d3,_0x4d71cc){var _0x6a9dab={},_0x145339={},_0x50efc1={'count':0x0,'rows':[]};var _0x200d2c=_[_0x0a39('0x2d')](db['SmsApplication']['rawAttributes'],function(_0x3d85ac){return{'name':_0x3d85ac[_0x0a39('0x2e')],'type':_0x3d85ac[_0x0a39('0x2f')][_0x0a39('0x30')]};});_0x145339[_0x0a39('0x31')]=_['map'](_0x200d2c,'name');_0x145339[_0x0a39('0x32')]=_[_0x0a39('0x33')](_0x5988d3[_0x0a39('0x32')]);_0x145339[_0x0a39('0x34')]=_[_0x0a39('0x35')](_0x145339[_0x0a39('0x31')],_0x145339['query']);_0x6a9dab[_0x0a39('0x36')]=_['intersection'](_0x145339[_0x0a39('0x31')],qs[_0x0a39('0x37')](_0x5988d3[_0x0a39('0x32')]['fields']));_0x6a9dab['attributes']=_0x6a9dab[_0x0a39('0x36')][_0x0a39('0x38')]?_0x6a9dab[_0x0a39('0x36')]:_0x145339['model'];if(!_0x5988d3['query'][_0x0a39('0x39')](_0x0a39('0x3a'))){_0x6a9dab['limit']=qs[_0x0a39('0x1f')](_0x5988d3['query'][_0x0a39('0x1f')]);_0x6a9dab['offset']=qs[_0x0a39('0x1e')](_0x5988d3[_0x0a39('0x32')][_0x0a39('0x1e')]);}_0x6a9dab[_0x0a39('0x3b')]=qs[_0x0a39('0x3c')](_0x5988d3[_0x0a39('0x32')][_0x0a39('0x3c')]);_0x6a9dab[_0x0a39('0x3d')]=qs['filters'](_[_0x0a39('0x3e')](_0x5988d3[_0x0a39('0x32')],_0x145339[_0x0a39('0x34')]),_0x200d2c);if(_0x5988d3[_0x0a39('0x32')][_0x0a39('0x3f')]){_0x6a9dab['where']=_['merge'](_0x6a9dab['where'],{'$or':_['map'](_0x200d2c,function(_0x4317e2){if(_0x4317e2['type']!==_0x0a39('0x40')){var _0x1a9272={};_0x1a9272[_0x4317e2[_0x0a39('0x2b')]]={'$like':'%'+_0x5988d3['query'][_0x0a39('0x3f')]+'%'};return _0x1a9272;}})});}_0x6a9dab=_[_0x0a39('0x41')]({},_0x6a9dab,_0x5988d3['options']);var _0x173a9b={'where':_0x6a9dab[_0x0a39('0x3d')]};return db[_0x0a39('0x42')]['count'](_0x173a9b)['then'](function(_0x145c85){_0x50efc1[_0x0a39('0x20')]=_0x145c85;if(_0x5988d3[_0x0a39('0x32')]['includeAll']){_0x6a9dab[_0x0a39('0x43')]=[{'all':!![]}];}return db[_0x0a39('0x42')][_0x0a39('0x44')](_0x6a9dab);})[_0x0a39('0x27')](function(_0x20dd43){_0x50efc1[_0x0a39('0x45')]=_0x20dd43;return _0x50efc1;})[_0x0a39('0x27')](respondWithFilteredResult(_0x4d71cc,_0x6a9dab))[_0x0a39('0x46')](handleError(_0x4d71cc,null));};exports[_0x0a39('0x47')]=function(_0x593c3d,_0x143cd7){var _0x4c9ba6={'raw':!![],'where':{'id':_0x593c3d['params']['id']}},_0x318481={};_0x318481[_0x0a39('0x31')]=_[_0x0a39('0x33')](db[_0x0a39('0x42')][_0x0a39('0x48')]);_0x318481[_0x0a39('0x32')]=_[_0x0a39('0x33')](_0x593c3d['query']);_0x318481[_0x0a39('0x34')]=_[_0x0a39('0x35')](_0x318481[_0x0a39('0x31')],_0x318481[_0x0a39('0x32')]);_0x4c9ba6[_0x0a39('0x36')]=_['intersection'](_0x318481[_0x0a39('0x31')],qs['fields'](_0x593c3d[_0x0a39('0x32')]['fields']));_0x4c9ba6[_0x0a39('0x36')]=_0x4c9ba6[_0x0a39('0x36')][_0x0a39('0x38')]?_0x4c9ba6['attributes']:_0x318481['model'];if(_0x593c3d[_0x0a39('0x32')]['includeAll']){_0x4c9ba6[_0x0a39('0x43')]=[{'all':!![]}];}_0x4c9ba6=_[_0x0a39('0x41')]({},_0x4c9ba6,_0x593c3d['options']);return db['SmsApplication'][_0x0a39('0x49')](_0x4c9ba6)[_0x0a39('0x27')](handleEntityNotFound(_0x143cd7,null))['then'](respondWithResult(_0x143cd7,null))[_0x0a39('0x46')](handleError(_0x143cd7,null));};exports[_0x0a39('0x4a')]=function(_0x734c9e,_0x24dbf2){return db[_0x0a39('0x42')][_0x0a39('0x4a')](_0x734c9e['body'],{})['then'](respondWithResult(_0x24dbf2,0xc9))['catch'](handleError(_0x24dbf2,null));};exports['update']=function(_0x11cbdb,_0x3820cd){if(_0x11cbdb[_0x0a39('0x4b')]['id']){delete _0x11cbdb[_0x0a39('0x4b')]['id'];}return db[_0x0a39('0x42')][_0x0a39('0x49')]({'where':{'id':_0x11cbdb[_0x0a39('0x4c')]['id']}})[_0x0a39('0x27')](handleEntityNotFound(_0x3820cd,null))[_0x0a39('0x27')](saveUpdates(_0x11cbdb[_0x0a39('0x4b')],null))[_0x0a39('0x27')](respondWithResult(_0x3820cd,null))[_0x0a39('0x46')](handleError(_0x3820cd,null));};exports[_0x0a39('0x28')]=function(_0x2afd92,_0x4a6b07){return db[_0x0a39('0x42')][_0x0a39('0x49')]({'where':{'id':_0x2afd92[_0x0a39('0x4c')]['id']}})['then'](handleEntityNotFound(_0x4a6b07,null))[_0x0a39('0x27')](removeEntity(_0x4a6b07,null))[_0x0a39('0x46')](handleError(_0x4a6b07,null));};