Built motion from commit 9d0783e6.|2.6.13
[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 _0xa7b4=['update','then','sendStatus','error','stack','send','user','role','admin','Unauthorized','params','Invalid\x20user\x20setting\x20id','UserSetting','find','body','catch','ioredis','../../config/logger','../../config/environment','../../mysqldb','register','redis','localhost','status','json'];(function(_0x1194ad,_0x3ff1b2){var _0x1a0e04=function(_0x22e803){while(--_0x22e803){_0x1194ad['push'](_0x1194ad['shift']());}};_0x1a0e04(++_0x3ff1b2);}(_0xa7b4,0x8d));var _0x4a7b=function(_0x119b4b,_0x322a87){_0x119b4b=_0x119b4b-0x0;var _0x2ca4d5=_0xa7b4[_0x119b4b];return _0x2ca4d5;};'use strict';var _=require('lodash');var Redis=require(_0x4a7b('0x0'));var logger=require(_0x4a7b('0x1'))('api');var config=require(_0x4a7b('0x2'));var db=require(_0x4a7b('0x3'))['db'];var socket=require('socket.io-emitter')(new Redis(config['redis']));require('./user-setting.socket')[_0x4a7b('0x4')](socket);config[_0x4a7b('0x5')]=_['defaults'](config[_0x4a7b('0x5')],{'host':_0x4a7b('0x6'),'port':0x18eb});function respondWithResult(_0x14e777,_0x683a48){_0x683a48=_0x683a48||0xc8;return function(_0x2f9fe5){if(_0x2f9fe5){return _0x14e777[_0x4a7b('0x7')](_0x683a48)[_0x4a7b('0x8')](_0x2f9fe5);}};}function saveUpdates(_0x39b77d){return function(_0x2ea2ef){if(_0x2ea2ef){return _0x2ea2ef[_0x4a7b('0x9')](_0x39b77d)[_0x4a7b('0xa')](function(_0x3eb79b){return _0x3eb79b;});}return null;};}function handleEntityNotFound(_0x18dd5c){return function(_0x5a02f0){if(!_0x5a02f0){_0x18dd5c[_0x4a7b('0xb')](0x194);}return _0x5a02f0;};}function handleError(_0x4c3dc3,_0x1eaaf9){_0x1eaaf9=_0x1eaaf9||0x1f4;return function(_0x6b53b3){logger[_0x4a7b('0xc')](_0x6b53b3[_0x4a7b('0xd')]);if(_0x6b53b3['name']){delete _0x6b53b3['name'];}_0x4c3dc3[_0x4a7b('0x7')](_0x1eaaf9)[_0x4a7b('0xe')](_0x6b53b3);};}exports['update']=function(_0x5010e4,_0xb8f2ec){if(_0x5010e4[_0x4a7b('0xf')][_0x4a7b('0x10')]!==_0x4a7b('0x11'))throw new Error(_0x4a7b('0x12'));if(isNaN(Number(_0x5010e4[_0x4a7b('0x13')]['id'])))throw new Error(_0x4a7b('0x14'));return db[_0x4a7b('0x15')][_0x4a7b('0x16')]({'where':{'id':_0x5010e4[_0x4a7b('0x13')]['id']}})['then'](handleEntityNotFound(_0xb8f2ec,null))[_0x4a7b('0xa')](saveUpdates(_0x5010e4[_0x4a7b('0x17')],null))[_0x4a7b('0xa')](respondWithResult(_0xb8f2ec,null))[_0x4a7b('0x18')](handleError(_0xb8f2ec,null));};