Built motion from commit 753c950e.|2.5.42
[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 _0x63be=['api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','limit','count','set','Content-Range','reject','save','update','then','destroy','stack','name','send','map','SmsApplication','rawAttributes','fieldName','type','key','query','filters','intersection','model','fields','attributes','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','catch','show','length','find','create','body','params','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger'];(function(_0x41565d,_0x5c0278){var _0x4292ae=function(_0x29fdba){while(--_0x29fdba){_0x41565d['push'](_0x41565d['shift']());}};_0x4292ae(++_0x5c0278);}(_0x63be,0x111));var _0xe63b=function(_0x1a8895,_0x4b4a34){_0x1a8895=_0x1a8895-0x0;var _0xd266ea=_0x63be[_0x1a8895];return _0xd266ea;};'use strict';var emlformat=require(_0xe63b('0x0'));var rimraf=require(_0xe63b('0x1'));var zipdir=require(_0xe63b('0x2'));var jsonpatch=require(_0xe63b('0x3'));var rp=require('request-promise');var moment=require(_0xe63b('0x4'));var BPromise=require(_0xe63b('0x5'));var Mustache=require(_0xe63b('0x6'));var util=require(_0xe63b('0x7'));var path=require(_0xe63b('0x8'));var sox=require(_0xe63b('0x9'));var csv=require(_0xe63b('0xa'));var ejs=require(_0xe63b('0xb'));var fs=require('fs');var fs_extra=require(_0xe63b('0xc'));var _=require(_0xe63b('0xd'));var squel=require('squel');var crypto=require(_0xe63b('0xe'));var jsforce=require('jsforce');var deskjs=require(_0xe63b('0xf'));var toCsv=require('to-csv');var querystring=require(_0xe63b('0x10'));var Papa=require(_0xe63b('0x11'));var Redis=require(_0xe63b('0x12'));var authService=require(_0xe63b('0x13'));var qs=require(_0xe63b('0x14'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xe63b('0x15'));var logger=require(_0xe63b('0x16'))(_0xe63b('0x17'));var utils=require(_0xe63b('0x18'));var config=require('../../config/environment');var licenseUtil=require(_0xe63b('0x19'));var db=require(_0xe63b('0x1a'))['db'];function respondWithStatusCode(_0x1119dc,_0x586d9a){_0x586d9a=_0x586d9a||0xcc;return function(_0x524d3a){if(_0x524d3a){return _0x1119dc[_0xe63b('0x1b')](_0x586d9a);}return _0x1119dc[_0xe63b('0x1c')](_0x586d9a)[_0xe63b('0x1d')]();};}function respondWithResult(_0x114230,_0x4c6fd5){_0x4c6fd5=_0x4c6fd5||0xc8;return function(_0x2c0eef){if(_0x2c0eef){return _0x114230['status'](_0x4c6fd5)[_0xe63b('0x1e')](_0x2c0eef);}};}function respondWithFilteredResult(_0x5f3f5a,_0x22d008){return function(_0x515fd7){if(_0x515fd7){var _0x52e2a8=typeof _0x22d008[_0xe63b('0x1f')]==='undefined'&&typeof _0x22d008[_0xe63b('0x20')]==='undefined';var _0xf6cdd2=_0x515fd7[_0xe63b('0x21')];var _0x1693ae=_0x52e2a8?0x0:_0x22d008['offset'];var _0x4123bb=_0x52e2a8?_0x515fd7[_0xe63b('0x21')]:_0x22d008[_0xe63b('0x1f')]+_0x22d008[_0xe63b('0x20')];var _0x4cf82a;if(_0x4123bb>=_0xf6cdd2){_0x4123bb=_0xf6cdd2;_0x4cf82a=0xc8;}else{_0x4cf82a=0xce;}_0x5f3f5a[_0xe63b('0x1c')](_0x4cf82a);return _0x5f3f5a[_0xe63b('0x22')](_0xe63b('0x23'),_0x1693ae+'-'+_0x4123bb+'/'+_0xf6cdd2)[_0xe63b('0x1e')](_0x515fd7);}return null;};}function patchUpdates(_0x55d188){return function(_0x5eac27){try{jsonpatch['apply'](_0x5eac27,_0x55d188,!![]);}catch(_0x2adb94){return BPromise[_0xe63b('0x24')](_0x2adb94);}return _0x5eac27[_0xe63b('0x25')]();};}function saveUpdates(_0x4a02ac,_0x5549bc){return function(_0x55ea00){if(_0x55ea00){return _0x55ea00[_0xe63b('0x26')](_0x4a02ac)[_0xe63b('0x27')](function(_0x6076e9){return _0x6076e9;});}return null;};}function removeEntity(_0x4cc143,_0x16c579){return function(_0x24165a){if(_0x24165a){return _0x24165a[_0xe63b('0x28')]()[_0xe63b('0x27')](function(){_0x4cc143[_0xe63b('0x1c')](0xcc)[_0xe63b('0x1d')]();});}};}function handleEntityNotFound(_0x45108d,_0xe08a66){return function(_0x18d7df){if(!_0x18d7df){_0x45108d['sendStatus'](0x194);}return _0x18d7df;};}function handleError(_0x5dfad1,_0x2fb472){_0x2fb472=_0x2fb472||0x1f4;return function(_0x5e1c3e){logger['error'](_0x5e1c3e[_0xe63b('0x29')]);if(_0x5e1c3e[_0xe63b('0x2a')]){delete _0x5e1c3e['name'];}_0x5dfad1[_0xe63b('0x1c')](_0x2fb472)[_0xe63b('0x2b')](_0x5e1c3e);};}exports['index']=function(_0x465195,_0x3764b8){var _0x28c675={},_0x401311={},_0x5418af={'count':0x0,'rows':[]};var _0x1c07da=_[_0xe63b('0x2c')](db[_0xe63b('0x2d')][_0xe63b('0x2e')],function(_0x462bcd){return{'name':_0x462bcd[_0xe63b('0x2f')],'type':_0x462bcd[_0xe63b('0x30')][_0xe63b('0x31')]};});_0x401311['model']=_['map'](_0x1c07da,_0xe63b('0x2a'));_0x401311['query']=_['keys'](_0x465195[_0xe63b('0x32')]);_0x401311[_0xe63b('0x33')]=_[_0xe63b('0x34')](_0x401311[_0xe63b('0x35')],_0x401311[_0xe63b('0x32')]);_0x28c675['attributes']=_[_0xe63b('0x34')](_0x401311[_0xe63b('0x35')],qs[_0xe63b('0x36')](_0x465195['query']['fields']));_0x28c675[_0xe63b('0x37')]=_0x28c675[_0xe63b('0x37')]['length']?_0x28c675[_0xe63b('0x37')]:_0x401311[_0xe63b('0x35')];if(!_0x465195[_0xe63b('0x32')]['hasOwnProperty']('nolimit')){_0x28c675[_0xe63b('0x20')]=qs[_0xe63b('0x20')](_0x465195['query'][_0xe63b('0x20')]);_0x28c675['offset']=qs[_0xe63b('0x1f')](_0x465195[_0xe63b('0x32')][_0xe63b('0x1f')]);}_0x28c675[_0xe63b('0x38')]=qs[_0xe63b('0x39')](_0x465195[_0xe63b('0x32')]['sort']);_0x28c675[_0xe63b('0x3a')]=qs[_0xe63b('0x33')](_[_0xe63b('0x3b')](_0x465195[_0xe63b('0x32')],_0x401311[_0xe63b('0x33')]),_0x1c07da);if(_0x465195[_0xe63b('0x32')][_0xe63b('0x3c')]){_0x28c675['where']=_[_0xe63b('0x3d')](_0x28c675[_0xe63b('0x3a')],{'$or':_[_0xe63b('0x2c')](_0x1c07da,function(_0x20fbc5){if(_0x20fbc5[_0xe63b('0x30')]!==_0xe63b('0x3e')){var _0x4bca84={};_0x4bca84[_0x20fbc5[_0xe63b('0x2a')]]={'$like':'%'+_0x465195['query'][_0xe63b('0x3c')]+'%'};return _0x4bca84;}})});}_0x28c675=_[_0xe63b('0x3d')]({},_0x28c675,_0x465195[_0xe63b('0x3f')]);var _0x390351={'where':_0x28c675['where']};return db[_0xe63b('0x2d')][_0xe63b('0x21')](_0x390351)[_0xe63b('0x27')](function(_0x1329d9){_0x5418af[_0xe63b('0x21')]=_0x1329d9;if(_0x465195[_0xe63b('0x32')][_0xe63b('0x40')]){_0x28c675[_0xe63b('0x41')]=[{'all':!![]}];}return db['SmsApplication'][_0xe63b('0x42')](_0x28c675);})[_0xe63b('0x27')](function(_0x5c87a0){_0x5418af['rows']=_0x5c87a0;return _0x5418af;})['then'](respondWithFilteredResult(_0x3764b8,_0x28c675))[_0xe63b('0x43')](handleError(_0x3764b8,null));};exports[_0xe63b('0x44')]=function(_0x507e53,_0x2bdf9c){var _0x27398a={'raw':!![],'where':{'id':_0x507e53['params']['id']}},_0x25f446={};_0x25f446[_0xe63b('0x35')]=_['keys'](db['SmsApplication'][_0xe63b('0x2e')]);_0x25f446[_0xe63b('0x32')]=_['keys'](_0x507e53[_0xe63b('0x32')]);_0x25f446[_0xe63b('0x33')]=_[_0xe63b('0x34')](_0x25f446[_0xe63b('0x35')],_0x25f446[_0xe63b('0x32')]);_0x27398a[_0xe63b('0x37')]=_['intersection'](_0x25f446[_0xe63b('0x35')],qs[_0xe63b('0x36')](_0x507e53[_0xe63b('0x32')][_0xe63b('0x36')]));_0x27398a[_0xe63b('0x37')]=_0x27398a['attributes'][_0xe63b('0x45')]?_0x27398a[_0xe63b('0x37')]:_0x25f446[_0xe63b('0x35')];if(_0x507e53[_0xe63b('0x32')][_0xe63b('0x40')]){_0x27398a[_0xe63b('0x41')]=[{'all':!![]}];}_0x27398a=_[_0xe63b('0x3d')]({},_0x27398a,_0x507e53['options']);return db[_0xe63b('0x2d')][_0xe63b('0x46')](_0x27398a)[_0xe63b('0x27')](handleEntityNotFound(_0x2bdf9c,null))[_0xe63b('0x27')](respondWithResult(_0x2bdf9c,null))[_0xe63b('0x43')](handleError(_0x2bdf9c,null));};exports['create']=function(_0x281106,_0x515d21){return db['SmsApplication'][_0xe63b('0x47')](_0x281106[_0xe63b('0x48')],{})['then'](respondWithResult(_0x515d21,0xc9))[_0xe63b('0x43')](handleError(_0x515d21,null));};exports[_0xe63b('0x26')]=function(_0x1ee731,_0x164ac4){if(_0x1ee731[_0xe63b('0x48')]['id']){delete _0x1ee731[_0xe63b('0x48')]['id'];}return db[_0xe63b('0x2d')][_0xe63b('0x46')]({'where':{'id':_0x1ee731['params']['id']}})[_0xe63b('0x27')](handleEntityNotFound(_0x164ac4,null))[_0xe63b('0x27')](saveUpdates(_0x1ee731[_0xe63b('0x48')],null))[_0xe63b('0x27')](respondWithResult(_0x164ac4,null))[_0xe63b('0x43')](handleError(_0x164ac4,null));};exports[_0xe63b('0x28')]=function(_0xd9e57b,_0x3d9661){return db['SmsApplication']['find']({'where':{'id':_0xd9e57b[_0xe63b('0x49')]['id']}})['then'](handleEntityNotFound(_0x3d9661,null))['then'](removeEntity(_0x3d9661,null))[_0xe63b('0x43')](handleError(_0x3d9661,null));};