1 // *************************************************************************
3 // * xCALLY Motion - The Omnichannel Contact Center *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved *
6 // *************************************************************************
8 // * Email: info@xcally.com *
9 // * Website: https://www.xcally.com *
11 // *************************************************************************
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. *
17 // *************************************************************************
18 var _0x5a01=['ioredis','../../config/logger','../../mysqldb','socket.io-emitter','./user-setting.socket','register','redis','localhost','status','json','update','sendStatus','error','stack','name','send','user','role','admin','Unauthorized','params','Invalid\x20user\x20setting\x20id','UserSetting','find','then','catch','lodash'];(function(_0x57486e,_0x32283b){var _0x5f110b=function(_0xa18fc3){while(--_0xa18fc3){_0x57486e['push'](_0x57486e['shift']());}};_0x5f110b(++_0x32283b);}(_0x5a01,0x1af));var _0x15a0=function(_0x536068,_0x3de52c){_0x536068=_0x536068-0x0;var _0x4a5db2=_0x5a01[_0x536068];return _0x4a5db2;};'use strict';var _=require(_0x15a0('0x0'));var Redis=require(_0x15a0('0x1'));var logger=require(_0x15a0('0x2'))('api');var config=require('../../config/environment');var db=require(_0x15a0('0x3'))['db'];var socket=require(_0x15a0('0x4'))(new Redis(config['redis']));require(_0x15a0('0x5'))[_0x15a0('0x6')](socket);config[_0x15a0('0x7')]=_['defaults'](config['redis'],{'host':_0x15a0('0x8'),'port':0x18eb});function respondWithResult(_0x52ab0,_0x40fd51){_0x40fd51=_0x40fd51||0xc8;return function(_0x502248){if(_0x502248){return _0x52ab0[_0x15a0('0x9')](_0x40fd51)[_0x15a0('0xa')](_0x502248);}};}function saveUpdates(_0x251c9c){return function(_0x374049){if(_0x374049){return _0x374049[_0x15a0('0xb')](_0x251c9c)['then'](function(_0x4be840){return _0x4be840;});}return null;};}function handleEntityNotFound(_0x339f74){return function(_0x4541a0){if(!_0x4541a0){_0x339f74[_0x15a0('0xc')](0x194);}return _0x4541a0;};}function handleError(_0x24497a,_0x2bd954){_0x2bd954=_0x2bd954||0x1f4;return function(_0x19cad2){logger[_0x15a0('0xd')](_0x19cad2[_0x15a0('0xe')]);if(_0x19cad2[_0x15a0('0xf')]){delete _0x19cad2[_0x15a0('0xf')];}_0x24497a[_0x15a0('0x9')](_0x2bd954)[_0x15a0('0x10')](_0x19cad2);};}exports['update']=function(_0x520a82,_0x3d80e9){if(_0x520a82[_0x15a0('0x11')][_0x15a0('0x12')]!==_0x15a0('0x13'))throw new Error(_0x15a0('0x14'));if(isNaN(Number(_0x520a82[_0x15a0('0x15')]['id'])))throw new Error(_0x15a0('0x16'));return db[_0x15a0('0x17')][_0x15a0('0x18')]({'where':{'id':_0x520a82['params']['id']}})[_0x15a0('0x19')](handleEntityNotFound(_0x3d80e9,null))['then'](saveUpdates(_0x520a82['body'],null))[_0x15a0('0x19')](respondWithResult(_0x3d80e9,null))[_0x15a0('0x1a')](handleError(_0x3d80e9,null));};