b560b7c7e63649fd1196edf64dc52af12cf65973
[motion2.git] / server / api / condition / condition.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 _0xf682=['json','offset','undefined','limit','count','set','Content-Range','apply','then','destroy','end','error','stack','name','send','render','merge','body','contact','message','agent','interaction','account','update','Condition','find','params','catch','eml-format','rimraf','zip-dir','fast-json-patch','bluebird','mustache','util','path','to-csv','ejs','fs-extra','lodash','crypto','jsforce','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status'];(function(_0x3172b6,_0x3858c3){var _0x5a3762=function(_0x21288c){while(--_0x21288c){_0x3172b6['push'](_0x3172b6['shift']());}};_0x5a3762(++_0x3858c3);}(_0xf682,0x12f));var _0x2f68=function(_0x322f89,_0x308a7f){_0x322f89=_0x322f89-0x0;var _0x35fb35=_0xf682[_0x322f89];return _0x35fb35;};'use strict';var emlformat=require(_0x2f68('0x0'));var rimraf=require(_0x2f68('0x1'));var zipdir=require(_0x2f68('0x2'));var jsonpatch=require(_0x2f68('0x3'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0x2f68('0x4'));var Mustache=require(_0x2f68('0x5'));var util=require(_0x2f68('0x6'));var path=require(_0x2f68('0x7'));var sox=require('sox');var csv=require(_0x2f68('0x8'));var ejs=require(_0x2f68('0x9'));var fs=require('fs');var fs_extra=require(_0x2f68('0xa'));var _=require(_0x2f68('0xb'));var squel=require('squel');var crypto=require(_0x2f68('0xc'));var jsforce=require(_0x2f68('0xd'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x2f68('0xe'));var authService=require(_0x2f68('0xf'));var qs=require(_0x2f68('0x10'));var as=require(_0x2f68('0x11'));var hardwareService=require(_0x2f68('0x12'));var logger=require(_0x2f68('0x13'))(_0x2f68('0x14'));var utils=require(_0x2f68('0x15'));var config=require(_0x2f68('0x16'));var licenseUtil=require(_0x2f68('0x17'));var db=require(_0x2f68('0x18'))['db'];function respondWithStatusCode(_0xe71dbe,_0x2d9b69){_0x2d9b69=_0x2d9b69||0xcc;return function(_0x308cc9){if(_0x308cc9){return _0xe71dbe[_0x2f68('0x19')](_0x2d9b69);}return _0xe71dbe[_0x2f68('0x1a')](_0x2d9b69)['end']();};}function respondWithResult(_0xfb1457,_0x348383){_0x348383=_0x348383||0xc8;return function(_0x455ab1){if(_0x455ab1){return _0xfb1457[_0x2f68('0x1a')](_0x348383)[_0x2f68('0x1b')](_0x455ab1);}};}function respondWithFilteredResult(_0x1c2225,_0x421602){return function(_0x3106d2){if(_0x3106d2){var _0x4e4a11=typeof _0x421602[_0x2f68('0x1c')]===_0x2f68('0x1d')&&typeof _0x421602[_0x2f68('0x1e')]==='undefined';var _0x1b3415=_0x3106d2['count'];var _0x2ab432=_0x4e4a11?0x0:_0x421602['offset'];var _0x36abc4=_0x4e4a11?_0x3106d2[_0x2f68('0x1f')]:_0x421602[_0x2f68('0x1c')]+_0x421602[_0x2f68('0x1e')];var _0x2a8ecc;if(_0x36abc4>=_0x1b3415){_0x36abc4=_0x1b3415;_0x2a8ecc=0xc8;}else{_0x2a8ecc=0xce;}_0x1c2225['status'](_0x2a8ecc);return _0x1c2225[_0x2f68('0x20')](_0x2f68('0x21'),_0x2ab432+'-'+_0x36abc4+'/'+_0x1b3415)[_0x2f68('0x1b')](_0x3106d2);}return null;};}function patchUpdates(_0x5b7723){return function(_0x47ac88){try{jsonpatch[_0x2f68('0x22')](_0x47ac88,_0x5b7723,!![]);}catch(_0x345a67){return BPromise['reject'](_0x345a67);}return _0x47ac88['save']();};}function saveUpdates(_0x3141b4,_0x5d6ab9){return function(_0x41aa72){if(_0x41aa72){return _0x41aa72['update'](_0x3141b4)[_0x2f68('0x23')](function(_0x21e44a){return _0x21e44a;});}return null;};}function removeEntity(_0x2d0738,_0x14ef8e){return function(_0x31992a){if(_0x31992a){return _0x31992a[_0x2f68('0x24')]()['then'](function(){_0x2d0738['status'](0xcc)[_0x2f68('0x25')]();});}};}function handleEntityNotFound(_0xc2f5a,_0x49659c){return function(_0x56e1b7){if(!_0x56e1b7){_0xc2f5a[_0x2f68('0x19')](0x194);}return _0x56e1b7;};}function handleError(_0x5c8f36,_0x44876d){_0x44876d=_0x44876d||0x1f4;return function(_0x5b6039){logger[_0x2f68('0x26')](_0x5b6039[_0x2f68('0x27')]);if(_0x5b6039[_0x2f68('0x28')]){delete _0x5b6039[_0x2f68('0x28')];}_0x5c8f36['status'](_0x44876d)[_0x2f68('0x29')](_0x5b6039);};}function getMustacheRender(_0x2e3682,_0xe27015){return Mustache[_0x2f68('0x2a')](_0x2e3682,_[_0x2f68('0x2b')](_0xe27015[_0x2f68('0x2c')],{'contact':_0xe27015[_0x2f68('0x2d')],'message':_0xe27015[_0x2f68('0x2e')],'agent':_0xe27015[_0x2f68('0x2f')],'interaction':_0xe27015[_0x2f68('0x30')],'account':_0xe27015[_0x2f68('0x31')]}))||'';}exports[_0x2f68('0x32')]=function(_0x4c4d0d,_0x4a4de7){if(_0x4c4d0d[_0x2f68('0x2c')]['id']){delete _0x4c4d0d['body']['id'];}return db[_0x2f68('0x33')][_0x2f68('0x34')]({'where':{'id':_0x4c4d0d[_0x2f68('0x35')]['id']}})['then'](handleEntityNotFound(_0x4a4de7,null))['then'](saveUpdates(_0x4c4d0d['body'],null))[_0x2f68('0x23')](respondWithResult(_0x4a4de7,null))[_0x2f68('0x36')](handleError(_0x4a4de7,null));};exports['destroy']=function(_0x164105,_0x54e357){return db[_0x2f68('0x33')]['find']({'where':{'id':_0x164105[_0x2f68('0x35')]['id']}})['then'](handleEntityNotFound(_0x54e357,null))['then'](removeEntity(_0x54e357,null))[_0x2f68('0x36')](handleError(_0x54e357,null));};