eb448136c8f9ffea12d17e47b922be080af024a9
[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 _0xaced=['Unauthorized','Invalid\x20user\x20setting\x20id','find','params','body','catch','lodash','ioredis','../../config/logger','api','../../config/environment','socket.io-emitter','redis','./user-setting.socket','register','defaults','status','update','then','sendStatus','error','stack','send','user','role','admin'];(function(_0x719d7a,_0x4b604a){var _0x309658=function(_0x2b3fd9){while(--_0x2b3fd9){_0x719d7a['push'](_0x719d7a['shift']());}};_0x309658(++_0x4b604a);}(_0xaced,0x18c));var _0xdace=function(_0x3d8ec6,_0x1fe244){_0x3d8ec6=_0x3d8ec6-0x0;var _0xb493ca=_0xaced[_0x3d8ec6];return _0xb493ca;};'use strict';var _=require(_0xdace('0x0'));var Redis=require(_0xdace('0x1'));var logger=require(_0xdace('0x2'))(_0xdace('0x3'));var config=require(_0xdace('0x4'));var db=require('../../mysqldb')['db'];var socket=require(_0xdace('0x5'))(new Redis(config[_0xdace('0x6')]));require(_0xdace('0x7'))[_0xdace('0x8')](socket);config['redis']=_[_0xdace('0x9')](config['redis'],{'host':'localhost','port':0x18eb});function respondWithResult(_0x198ca1,_0x27d6f3){_0x27d6f3=_0x27d6f3||0xc8;return function(_0x3521d8){if(_0x3521d8){return _0x198ca1[_0xdace('0xa')](_0x27d6f3)['json'](_0x3521d8);}};}function saveUpdates(_0x500432){return function(_0x18365e){if(_0x18365e){return _0x18365e[_0xdace('0xb')](_0x500432)[_0xdace('0xc')](function(_0x1f95ba){return _0x1f95ba;});}return null;};}function handleEntityNotFound(_0x535da1){return function(_0x390283){if(!_0x390283){_0x535da1[_0xdace('0xd')](0x194);}return _0x390283;};}function handleError(_0x14fb1d,_0x31cbbf){_0x31cbbf=_0x31cbbf||0x1f4;return function(_0x4cd60e){logger[_0xdace('0xe')](_0x4cd60e[_0xdace('0xf')]);if(_0x4cd60e['name']){delete _0x4cd60e['name'];}_0x14fb1d['status'](_0x31cbbf)[_0xdace('0x10')](_0x4cd60e);};}exports['update']=function(_0x43de90,_0x1a346b){if(_0x43de90[_0xdace('0x11')][_0xdace('0x12')]!==_0xdace('0x13'))throw new Error(_0xdace('0x14'));if(isNaN(Number(_0x43de90['params']['id'])))throw new Error(_0xdace('0x15'));return db['UserSetting'][_0xdace('0x16')]({'where':{'id':_0x43de90[_0xdace('0x17')]['id']}})[_0xdace('0xc')](handleEntityNotFound(_0x1a346b,null))[_0xdace('0xc')](saveUpdates(_0x43de90[_0xdace('0x18')],null))[_0xdace('0xc')](respondWithResult(_0x1a346b,null))[_0xdace('0x19')](handleError(_0x1a346b,null));};