Built motion from commit (unavailable).|2.4.4
[motion2.git] / server / api / intServicenowConfiguration / intServicenowConfiguration.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 _0x9251=['ServicenowConfiguration','model','query','keys','intersection','attributes','hasOwnProperty','nolimit','sort','where','pick','filters','filter','merge','map','type','VIRTUAL','options','includeAll','include','findAll','rows','show','params','fields','create','body','find','getFields','findOne','ServicenowField','rawAttributes','order','length','getSubjects','getDescriptions','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','ejs','lodash','squel','desk.js','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','api','../../config/utils','../../mysqldb','jayson/promise','client','http','test','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','request','then','ServicenowConfiguration,\x20%s,\x20%s','request\x20sent','debug','ServicenowConfiguration,\x20%s,\x20%s,\x20%s','stringify','error','code','message','info','catch','sendStatus','status','count','offset','limit','Content-Range','apply','reject','save','update','destroy','stack','name','send','index'];(function(_0x366d0e,_0x2d51e5){var _0x110cbf=function(_0x59b7c7){while(--_0x59b7c7){_0x366d0e['push'](_0x366d0e['shift']());}};_0x110cbf(++_0x2d51e5);}(_0x9251,0x1e6));var _0x1925=function(_0x333fc8,_0x2b292c){_0x333fc8=_0x333fc8-0x0;var _0x432439=_0x9251[_0x333fc8];return _0x432439;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x1925('0x0'));var rimraf=require(_0x1925('0x1'));var zipdir=require(_0x1925('0x2'));var jsonpatch=require(_0x1925('0x3'));var rp=require(_0x1925('0x4'));var moment=require(_0x1925('0x5'));var BPromise=require(_0x1925('0x6'));var Mustache=require(_0x1925('0x7'));var util=require(_0x1925('0x8'));var path=require(_0x1925('0x9'));var sox=require('sox');var csv=require(_0x1925('0xa'));var ejs=require(_0x1925('0xb'));var fs=require('fs');var _=require(_0x1925('0xc'));var squel=require(_0x1925('0xd'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x1925('0xe'));var toCsv=require(_0x1925('0xa'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x1925('0xf'));var authService=require(_0x1925('0x10'));var qs=require(_0x1925('0x11'));var hardwareService=require(_0x1925('0x12'));var logger=require('../../config/logger')(_0x1925('0x13'));var utils=require(_0x1925('0x14'));var config=require('../../config/environment');var db=require(_0x1925('0x15'))['db'];var jayson=require(_0x1925('0x16'));var client=jayson[_0x1925('0x17')][_0x1925('0x18')]({'port':0x232a});function checkPasswordPattern(_0x150b01,_0x5eb085,_0x480dc5){if(_0x480dc5){var _0x56a395=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x56a395[_0x1925('0x19')](_0x5eb085)){return _0x150b01;}else{throw new Error(_0x1925('0x1a'));}}else{return _0x150b01;}}function respondWithRpcPromise(_0x30337e,_0x183976,_0x57fbbe,_0x543ecb){return new BPromise(function(_0x117963,_0x3216d3){var _0x1317cc=_0x543ecb||client;return _0x1317cc[_0x1925('0x1b')](_0x30337e,_0x57fbbe)[_0x1925('0x1c')](function(_0x12d0e1){logger['info'](_0x1925('0x1d'),_0x183976,_0x1925('0x1e'));logger[_0x1925('0x1f')](_0x1925('0x20'),_0x183976,_0x1925('0x1e'),JSON[_0x1925('0x21')](_0x12d0e1));if(_0x12d0e1['error']){if(_0x12d0e1[_0x1925('0x22')][_0x1925('0x23')]===0x1f4){logger[_0x1925('0x22')](_0x1925('0x1d'),_0x183976,_0x12d0e1[_0x1925('0x22')][_0x1925('0x24')]);return _0x3216d3(_0x12d0e1['error'][_0x1925('0x24')]);}logger[_0x1925('0x22')](_0x1925('0x1d'),_0x183976,_0x12d0e1['error']['message']);return _0x117963(_0x12d0e1['error'][_0x1925('0x24')]);}else{logger[_0x1925('0x25')](_0x1925('0x1d'),_0x183976,_0x1925('0x1e'));_0x117963(_0x12d0e1['result'][_0x1925('0x24')]);}})[_0x1925('0x26')](function(_0x3bcd11){logger[_0x1925('0x22')](_0x1925('0x1d'),_0x183976,_0x3bcd11);_0x3216d3(_0x3bcd11);});});}function respondWithStatusCode(_0x1f6d00,_0x3b6168){_0x3b6168=_0x3b6168||0xcc;return function(_0x54be93){if(_0x54be93){return _0x1f6d00[_0x1925('0x27')](_0x3b6168);}return _0x1f6d00[_0x1925('0x28')](_0x3b6168)['end']();};}function respondWithResult(_0x5079b1,_0x494390){_0x494390=_0x494390||0xc8;return function(_0x49618c){if(_0x49618c){return _0x5079b1[_0x1925('0x28')](_0x494390)['json'](_0x49618c);}};}function respondWithFilteredResult(_0x1fc8b1,_0x27a13d){return function(_0xf8efa8){if(_0xf8efa8){var _0x97752b=_0xf8efa8[_0x1925('0x29')],_0x587eab=_0x27a13d[_0x1925('0x2a')],_0x44d625=_0x27a13d['offset']+_0x27a13d[_0x1925('0x2b')],_0x8e845;if(_0x44d625>=_0x97752b){_0x44d625=_0x97752b;_0x8e845=0xc8;}else{_0x8e845=0xce;}_0x1fc8b1['status'](_0x8e845);return _0x1fc8b1['set'](_0x1925('0x2c'),_0x587eab+'-'+_0x44d625+'/'+_0x97752b)['json'](_0xf8efa8);}return null;};}function patchUpdates(_0x196ee2){return function(_0x248623){try{jsonpatch[_0x1925('0x2d')](_0x248623,_0x196ee2,!![]);}catch(_0x45edeb){return BPromise[_0x1925('0x2e')](_0x45edeb);}return _0x248623[_0x1925('0x2f')]();};}function saveUpdates(_0x55bc5b,_0x53c9e2){return function(_0x33b5b2){if(_0x33b5b2){return _0x33b5b2[_0x1925('0x30')](_0x55bc5b)[_0x1925('0x1c')](function(_0x1ed137){return _0x1ed137;});}return null;};}function removeEntity(_0x2e8602,_0x938def){return function(_0x34caa7){if(_0x34caa7){return _0x34caa7[_0x1925('0x31')]()['then'](function(){_0x2e8602[_0x1925('0x28')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1558ae,_0x4b9507){return function(_0x3d2109){if(!_0x3d2109){_0x1558ae[_0x1925('0x27')](0x194);}return _0x3d2109;};}function handleError(_0x1962bc,_0x1604b6){_0x1604b6=_0x1604b6||0x1f4;return function(_0x1b29df){logger[_0x1925('0x22')](_0x1b29df[_0x1925('0x32')]);if(_0x1b29df['name']){delete _0x1b29df[_0x1925('0x33')];}_0x1962bc['status'](_0x1604b6)[_0x1925('0x34')](_0x1b29df);};}exports[_0x1925('0x35')]=function(_0x4ae64c,_0x49365b){var _0x1fda68={},_0xd418ec={},_0x5ea774={'count':0x0,'rows':[]};var _0x46ba23=db[_0x1925('0x36')]['rawAttributes'];_0xd418ec[_0x1925('0x37')]=_['keys'](_0x46ba23);_0xd418ec[_0x1925('0x38')]=_[_0x1925('0x39')](_0x4ae64c[_0x1925('0x38')]);_0xd418ec['filters']=_['intersection'](_0xd418ec[_0x1925('0x37')],_0xd418ec[_0x1925('0x38')]);_0x1fda68['attributes']=_[_0x1925('0x3a')](_0xd418ec['model'],qs['fields'](_0x4ae64c[_0x1925('0x38')]['fields']));_0x1fda68[_0x1925('0x3b')]=_0x1fda68[_0x1925('0x3b')]['length']?_0x1fda68[_0x1925('0x3b')]:_0xd418ec[_0x1925('0x37')];if(!_0x4ae64c['query'][_0x1925('0x3c')](_0x1925('0x3d'))){_0x1fda68[_0x1925('0x2b')]=qs['limit'](_0x4ae64c['query'][_0x1925('0x2b')]);_0x1fda68[_0x1925('0x2a')]=qs['offset'](_0x4ae64c['query'][_0x1925('0x2a')]);}_0x1fda68['order']=qs[_0x1925('0x3e')](_0x4ae64c['query'][_0x1925('0x3e')]);_0x1fda68[_0x1925('0x3f')]=qs['filters'](_[_0x1925('0x40')](_0x4ae64c[_0x1925('0x38')],_0xd418ec[_0x1925('0x41')]));if(_0x4ae64c['query'][_0x1925('0x42')]){_0x1fda68[_0x1925('0x3f')]=_[_0x1925('0x43')](_0x1fda68['where'],{'$or':_[_0x1925('0x44')](_0x46ba23,function(_0x3d1281){if(_0x3d1281[_0x1925('0x45')]['key']!==_0x1925('0x46')){var _0x4b1490={};_0x4b1490[_0x3d1281['field']]={'$like':'%'+_0x4ae64c[_0x1925('0x38')][_0x1925('0x42')]+'%'};return _0x4b1490;}})});}_0x1fda68=_[_0x1925('0x43')]({},_0x1fda68,_0x4ae64c[_0x1925('0x47')]);var _0x3ca2ee={'where':_0x1fda68[_0x1925('0x3f')]};return db[_0x1925('0x36')]['count'](_0x3ca2ee)[_0x1925('0x1c')](function(_0x193e48){_0x5ea774[_0x1925('0x29')]=_0x193e48;if(_0x4ae64c[_0x1925('0x38')][_0x1925('0x48')]){_0x1fda68[_0x1925('0x49')]=[{'all':!![]}];}return db['ServicenowConfiguration'][_0x1925('0x4a')](_0x1fda68);})[_0x1925('0x1c')](function(_0xffbe65){_0x5ea774[_0x1925('0x4b')]=_0xffbe65;return _0x5ea774;})[_0x1925('0x1c')](respondWithFilteredResult(_0x49365b,_0x1fda68))[_0x1925('0x26')](handleError(_0x49365b,null));};exports[_0x1925('0x4c')]=function(_0x2382ae,_0x41abcf){var _0x14c5be={'raw':![],'where':{'id':_0x2382ae[_0x1925('0x4d')]['id']}},_0x20fe8d={};_0x20fe8d[_0x1925('0x37')]=_[_0x1925('0x39')](db[_0x1925('0x36')]['rawAttributes']);_0x20fe8d[_0x1925('0x38')]=_[_0x1925('0x39')](_0x2382ae[_0x1925('0x38')]);_0x20fe8d[_0x1925('0x41')]=_[_0x1925('0x3a')](_0x20fe8d[_0x1925('0x37')],_0x20fe8d[_0x1925('0x38')]);_0x14c5be[_0x1925('0x3b')]=_[_0x1925('0x3a')](_0x20fe8d[_0x1925('0x37')],qs[_0x1925('0x4e')](_0x2382ae['query'][_0x1925('0x4e')]));_0x14c5be[_0x1925('0x3b')]=_0x14c5be[_0x1925('0x3b')]['length']?_0x14c5be[_0x1925('0x3b')]:_0x20fe8d[_0x1925('0x37')];if(_0x2382ae['query']['includeAll']){_0x14c5be[_0x1925('0x49')]=[{'all':!![]}];}_0x14c5be=_['merge']({},_0x14c5be,_0x2382ae['options']);return db['ServicenowConfiguration']['find'](_0x14c5be)[_0x1925('0x1c')](handleEntityNotFound(_0x41abcf,null))[_0x1925('0x1c')](respondWithResult(_0x41abcf,null))[_0x1925('0x26')](handleError(_0x41abcf,null));};exports[_0x1925('0x4f')]=function(_0x3eabd9,_0x4525d4){return db[_0x1925('0x36')][_0x1925('0x4f')](_0x3eabd9[_0x1925('0x50')],{})[_0x1925('0x1c')](respondWithResult(_0x4525d4,0xc9))[_0x1925('0x26')](handleError(_0x4525d4,null));};exports[_0x1925('0x30')]=function(_0x50cc08,_0x5766ba){if(_0x50cc08[_0x1925('0x50')]['id']){delete _0x50cc08[_0x1925('0x50')]['id'];}return db['ServicenowConfiguration'][_0x1925('0x51')]({'where':{'id':_0x50cc08[_0x1925('0x4d')]['id']}})[_0x1925('0x1c')](handleEntityNotFound(_0x5766ba,null))[_0x1925('0x1c')](saveUpdates(_0x50cc08[_0x1925('0x50')],null))[_0x1925('0x1c')](respondWithResult(_0x5766ba,null))[_0x1925('0x26')](handleError(_0x5766ba,null));};exports[_0x1925('0x31')]=function(_0x37fe92,_0x6ffe2b){return db['ServicenowConfiguration'][_0x1925('0x51')]({'where':{'id':_0x37fe92['params']['id']}})['then'](handleEntityNotFound(_0x6ffe2b,null))[_0x1925('0x1c')](removeEntity(_0x6ffe2b,null))[_0x1925('0x26')](handleError(_0x6ffe2b,null));};exports[_0x1925('0x52')]=function(_0x2959f4,_0x5bd50b,_0x245b30){var _0x11bc61={};var _0x52c904={};var _0x5c293f;var _0x47a325;return db[_0x1925('0x36')][_0x1925('0x53')]({'where':{'id':_0x2959f4[_0x1925('0x4d')]['id']}})[_0x1925('0x1c')](handleEntityNotFound(_0x5bd50b,null))[_0x1925('0x1c')](function(_0x261c09){if(_0x261c09){_0x5c293f=_0x261c09;_0x52c904[_0x1925('0x37')]=_[_0x1925('0x39')](db[_0x1925('0x54')][_0x1925('0x55')]);_0x52c904[_0x1925('0x38')]=_['keys'](_0x2959f4['query']);_0x52c904[_0x1925('0x41')]=_[_0x1925('0x3a')](_0x52c904[_0x1925('0x37')],_0x52c904[_0x1925('0x38')]);_0x11bc61[_0x1925('0x3b')]=_['intersection'](_0x52c904['model'],qs[_0x1925('0x4e')](_0x2959f4[_0x1925('0x38')]['fields']));_0x11bc61[_0x1925('0x3b')]=_0x11bc61[_0x1925('0x3b')]['length']?_0x11bc61[_0x1925('0x3b')]:_0x52c904['model'];_0x11bc61[_0x1925('0x56')]=qs[_0x1925('0x3e')](_0x2959f4['query'][_0x1925('0x3e')]);_0x11bc61[_0x1925('0x3f')]=qs['filters'](_[_0x1925('0x40')](_0x2959f4['query'],_0x52c904[_0x1925('0x41')]));if(_0x2959f4['query'][_0x1925('0x42')]){_0x11bc61[_0x1925('0x3f')]=_['merge'](_0x11bc61[_0x1925('0x3f')],{'$or':_[_0x1925('0x44')](_0x11bc61['attributes'],function(_0x41753c){var _0x4d64f6={};_0x4d64f6[_0x41753c]={'$like':'%'+_0x2959f4[_0x1925('0x38')][_0x1925('0x42')]+'%'};return _0x4d64f6;})});}_0x11bc61=_[_0x1925('0x43')]({},_0x11bc61,_0x2959f4[_0x1925('0x47')]);return _0x5c293f[_0x1925('0x52')](_0x11bc61);}})[_0x1925('0x1c')](function(_0x38de29){if(_0x38de29){_0x47a325=_0x38de29[_0x1925('0x57')];if(!_0x2959f4[_0x1925('0x38')]['hasOwnProperty'](_0x1925('0x3d'))){_0x11bc61[_0x1925('0x2b')]=qs[_0x1925('0x2b')](_0x2959f4[_0x1925('0x38')]['limit']);_0x11bc61[_0x1925('0x2a')]=qs[_0x1925('0x2a')](_0x2959f4[_0x1925('0x38')][_0x1925('0x2a')]);}return _0x5c293f[_0x1925('0x52')](_0x11bc61);}})[_0x1925('0x1c')](function(_0x4a24e1){if(_0x4a24e1){return _0x4a24e1?{'count':_0x47a325,'rows':_0x4a24e1}:null;}})[_0x1925('0x1c')](respondWithResult(_0x5bd50b,null))['catch'](handleError(_0x5bd50b,null));};exports['getSubjects']=function(_0x593f6d,_0x38ea1f,_0x46b263){var _0x592526={};var _0x253846={};var _0x5efed3;var _0x3126dc;return db[_0x1925('0x36')]['findOne']({'where':{'id':_0x593f6d[_0x1925('0x4d')]['id']}})[_0x1925('0x1c')](handleEntityNotFound(_0x38ea1f,null))['then'](function(_0xb18d9f){if(_0xb18d9f){_0x5efed3=_0xb18d9f;_0x253846['model']=_['keys'](db[_0x1925('0x54')]['rawAttributes']);_0x253846['query']=_[_0x1925('0x39')](_0x593f6d['query']);_0x253846[_0x1925('0x41')]=_[_0x1925('0x3a')](_0x253846[_0x1925('0x37')],_0x253846[_0x1925('0x38')]);_0x592526['attributes']=_['intersection'](_0x253846['model'],qs[_0x1925('0x4e')](_0x593f6d[_0x1925('0x38')]['fields']));_0x592526[_0x1925('0x3b')]=_0x592526[_0x1925('0x3b')][_0x1925('0x57')]?_0x592526['attributes']:_0x253846[_0x1925('0x37')];_0x592526[_0x1925('0x56')]=qs[_0x1925('0x3e')](_0x593f6d[_0x1925('0x38')][_0x1925('0x3e')]);_0x592526[_0x1925('0x3f')]=qs['filters'](_[_0x1925('0x40')](_0x593f6d[_0x1925('0x38')],_0x253846['filters']));if(_0x593f6d[_0x1925('0x38')]['filter']){_0x592526['where']=_['merge'](_0x592526[_0x1925('0x3f')],{'$or':_[_0x1925('0x44')](_0x592526['attributes'],function(_0x3ce199){var _0x346dfd={};_0x346dfd[_0x3ce199]={'$like':'%'+_0x593f6d[_0x1925('0x38')][_0x1925('0x42')]+'%'};return _0x346dfd;})});}_0x592526=_[_0x1925('0x43')]({},_0x592526,_0x593f6d[_0x1925('0x47')]);return _0x5efed3[_0x1925('0x58')](_0x592526);}})[_0x1925('0x1c')](function(_0x4a21f1){if(_0x4a21f1){_0x3126dc=_0x4a21f1[_0x1925('0x57')];if(!_0x593f6d['query'][_0x1925('0x3c')]('nolimit')){_0x592526[_0x1925('0x2b')]=qs[_0x1925('0x2b')](_0x593f6d[_0x1925('0x38')][_0x1925('0x2b')]);_0x592526[_0x1925('0x2a')]=qs[_0x1925('0x2a')](_0x593f6d[_0x1925('0x38')][_0x1925('0x2a')]);}return _0x5efed3[_0x1925('0x58')](_0x592526);}})[_0x1925('0x1c')](function(_0x2c31d2){if(_0x2c31d2){return _0x2c31d2?{'count':_0x3126dc,'rows':_0x2c31d2}:null;}})[_0x1925('0x1c')](respondWithResult(_0x38ea1f,null))[_0x1925('0x26')](handleError(_0x38ea1f,null));};exports[_0x1925('0x59')]=function(_0x14ce1a,_0x5843e1,_0x2d11ed){var _0x156f06={};var _0x480ba0={};var _0x32564f;var _0x2859b8;return db[_0x1925('0x36')][_0x1925('0x53')]({'where':{'id':_0x14ce1a[_0x1925('0x4d')]['id']}})[_0x1925('0x1c')](handleEntityNotFound(_0x5843e1,null))[_0x1925('0x1c')](function(_0x5ca0c1){if(_0x5ca0c1){_0x32564f=_0x5ca0c1;_0x480ba0[_0x1925('0x37')]=_['keys'](db[_0x1925('0x54')][_0x1925('0x55')]);_0x480ba0[_0x1925('0x38')]=_['keys'](_0x14ce1a[_0x1925('0x38')]);_0x480ba0[_0x1925('0x41')]=_[_0x1925('0x3a')](_0x480ba0['model'],_0x480ba0['query']);_0x156f06[_0x1925('0x3b')]=_['intersection'](_0x480ba0[_0x1925('0x37')],qs['fields'](_0x14ce1a['query']['fields']));_0x156f06[_0x1925('0x3b')]=_0x156f06[_0x1925('0x3b')][_0x1925('0x57')]?_0x156f06[_0x1925('0x3b')]:_0x480ba0[_0x1925('0x37')];_0x156f06[_0x1925('0x56')]=qs[_0x1925('0x3e')](_0x14ce1a[_0x1925('0x38')][_0x1925('0x3e')]);_0x156f06[_0x1925('0x3f')]=qs[_0x1925('0x41')](_[_0x1925('0x40')](_0x14ce1a[_0x1925('0x38')],_0x480ba0[_0x1925('0x41')]));if(_0x14ce1a[_0x1925('0x38')][_0x1925('0x42')]){_0x156f06['where']=_[_0x1925('0x43')](_0x156f06['where'],{'$or':_['map'](_0x156f06['attributes'],function(_0x484951){var _0x2bf4e5={};_0x2bf4e5[_0x484951]={'$like':'%'+_0x14ce1a['query'][_0x1925('0x42')]+'%'};return _0x2bf4e5;})});}_0x156f06=_[_0x1925('0x43')]({},_0x156f06,_0x14ce1a['options']);return _0x32564f[_0x1925('0x59')](_0x156f06);}})['then'](function(_0x25760d){if(_0x25760d){_0x2859b8=_0x25760d[_0x1925('0x57')];if(!_0x14ce1a[_0x1925('0x38')][_0x1925('0x3c')]('nolimit')){_0x156f06[_0x1925('0x2b')]=qs['limit'](_0x14ce1a[_0x1925('0x38')]['limit']);_0x156f06['offset']=qs['offset'](_0x14ce1a[_0x1925('0x38')][_0x1925('0x2a')]);}return _0x32564f['getDescriptions'](_0x156f06);}})[_0x1925('0x1c')](function(_0x45f171){if(_0x45f171){return _0x45f171?{'count':_0x2859b8,'rows':_0x45f171}:null;}})[_0x1925('0x1c')](respondWithResult(_0x5843e1,null))[_0x1925('0x26')](handleError(_0x5843e1,null));};