Built motion from commit a134ab58.|2.6.29
[motion2.git] / server / api / user-setting / user-setting.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 _0xb32d=['admin','Unauthorized','params','UserSetting','find','catch','lodash','ioredis','../../config/logger','api','../../config/environment','redis','./user-setting.socket','defaults','localhost','status','json','update','then','sendStatus','error','stack','name','send','user','role'];(function(_0x3eb8a5,_0x33cba7){var _0x281142=function(_0x4be519){while(--_0x4be519){_0x3eb8a5['push'](_0x3eb8a5['shift']());}};_0x281142(++_0x33cba7);}(_0xb32d,0x1da));var _0xdb32=function(_0xe397b4,_0x37f1c0){_0xe397b4=_0xe397b4-0x0;var _0x384f1e=_0xb32d[_0xe397b4];return _0x384f1e;};'use strict';var _=require(_0xdb32('0x0'));var Redis=require(_0xdb32('0x1'));var logger=require(_0xdb32('0x2'))(_0xdb32('0x3'));var config=require(_0xdb32('0x4'));var db=require('../../mysqldb')['db'];var socket=require('socket.io-emitter')(new Redis(config[_0xdb32('0x5')]));require(_0xdb32('0x6'))['register'](socket);config[_0xdb32('0x5')]=_[_0xdb32('0x7')](config[_0xdb32('0x5')],{'host':_0xdb32('0x8'),'port':0x18eb});function respondWithResult(_0x6f4af0,_0x386309){_0x386309=_0x386309||0xc8;return function(_0x5bb076){if(_0x5bb076){return _0x6f4af0[_0xdb32('0x9')](_0x386309)[_0xdb32('0xa')](_0x5bb076);}};}function saveUpdates(_0xbe779d){return function(_0x1deacb){if(_0x1deacb){return _0x1deacb[_0xdb32('0xb')](_0xbe779d)[_0xdb32('0xc')](function(_0x112db6){return _0x112db6;});}return null;};}function handleEntityNotFound(_0x3ddfc6){return function(_0x251443){if(!_0x251443){_0x3ddfc6[_0xdb32('0xd')](0x194);}return _0x251443;};}function handleError(_0x296482,_0x2c3355){_0x2c3355=_0x2c3355||0x1f4;return function(_0x91be02){logger[_0xdb32('0xe')](_0x91be02[_0xdb32('0xf')]);if(_0x91be02[_0xdb32('0x10')]){delete _0x91be02[_0xdb32('0x10')];}_0x296482[_0xdb32('0x9')](_0x2c3355)[_0xdb32('0x11')](_0x91be02);};}exports[_0xdb32('0xb')]=function(_0x410b23,_0x5e4377){if(_0x410b23[_0xdb32('0x12')][_0xdb32('0x13')]!==_0xdb32('0x14'))throw new Error(_0xdb32('0x15'));if(isNaN(Number(_0x410b23[_0xdb32('0x16')]['id'])))throw new Error('Invalid\x20user\x20setting\x20id');return db[_0xdb32('0x17')][_0xdb32('0x18')]({'where':{'id':_0x410b23[_0xdb32('0x16')]['id']}})['then'](handleEntityNotFound(_0x5e4377,null))['then'](saveUpdates(_0x410b23['body'],null))['then'](respondWithResult(_0x5e4377,null))[_0xdb32('0x19')](handleError(_0x5e4377,null));};