Built motion from commit c738b9ac.|2.6.25
[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 _0x0faf=['redis','./user-setting.socket','register','localhost','json','then','sendStatus','stack','name','send','update','role','Unauthorized','params','Invalid\x20user\x20setting\x20id','UserSetting','find','catch','lodash','../../config/logger','api','../../config/environment','../../mysqldb','socket.io-emitter'];(function(_0x5c3548,_0x2b5830){var _0x5a63f1=function(_0x4cb6b4){while(--_0x4cb6b4){_0x5c3548['push'](_0x5c3548['shift']());}};_0x5a63f1(++_0x2b5830);}(_0x0faf,0x132));var _0xf0fa=function(_0x1abb09,_0x18ee91){_0x1abb09=_0x1abb09-0x0;var _0xea1c07=_0x0faf[_0x1abb09];return _0xea1c07;};'use strict';var _=require(_0xf0fa('0x0'));var Redis=require('ioredis');var logger=require(_0xf0fa('0x1'))(_0xf0fa('0x2'));var config=require(_0xf0fa('0x3'));var db=require(_0xf0fa('0x4'))['db'];var socket=require(_0xf0fa('0x5'))(new Redis(config[_0xf0fa('0x6')]));require(_0xf0fa('0x7'))[_0xf0fa('0x8')](socket);config[_0xf0fa('0x6')]=_['defaults'](config[_0xf0fa('0x6')],{'host':_0xf0fa('0x9'),'port':0x18eb});function respondWithResult(_0x25b5c4,_0x3a703b){_0x3a703b=_0x3a703b||0xc8;return function(_0x2db1d9){if(_0x2db1d9){return _0x25b5c4['status'](_0x3a703b)[_0xf0fa('0xa')](_0x2db1d9);}};}function saveUpdates(_0x18db40){return function(_0x481a42){if(_0x481a42){return _0x481a42['update'](_0x18db40)[_0xf0fa('0xb')](function(_0x1e8cc0){return _0x1e8cc0;});}return null;};}function handleEntityNotFound(_0x25dfec){return function(_0x1f3bb7){if(!_0x1f3bb7){_0x25dfec[_0xf0fa('0xc')](0x194);}return _0x1f3bb7;};}function handleError(_0x1151ea,_0x379ff6){_0x379ff6=_0x379ff6||0x1f4;return function(_0x20fd09){logger['error'](_0x20fd09[_0xf0fa('0xd')]);if(_0x20fd09['name']){delete _0x20fd09[_0xf0fa('0xe')];}_0x1151ea['status'](_0x379ff6)[_0xf0fa('0xf')](_0x20fd09);};}exports[_0xf0fa('0x10')]=function(_0x39a086,_0x547952){if(_0x39a086['user'][_0xf0fa('0x11')]!=='admin')throw new Error(_0xf0fa('0x12'));if(isNaN(Number(_0x39a086[_0xf0fa('0x13')]['id'])))throw new Error(_0xf0fa('0x14'));return db[_0xf0fa('0x15')][_0xf0fa('0x16')]({'where':{'id':_0x39a086[_0xf0fa('0x13')]['id']}})[_0xf0fa('0xb')](handleEntityNotFound(_0x547952,null))[_0xf0fa('0xb')](saveUpdates(_0x39a086['body'],null))[_0xf0fa('0xb')](respondWithResult(_0x547952,null))[_0xf0fa('0x17')](handleError(_0x547952,null));};