Built motion from commit da617fac.|2.6.6
[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 _0xd73a=['./user-setting.socket','register','defaults','localhost','status','update','then','error','stack','name','user','role','admin','params','Invalid\x20user\x20setting\x20id','UserSetting','find','body','catch','lodash','ioredis','../../config/logger','api','../../config/environment','redis'];(function(_0xb3e981,_0x5ab32d){var _0x20b900=function(_0x1958ce){while(--_0x1958ce){_0xb3e981['push'](_0xb3e981['shift']());}};_0x20b900(++_0x5ab32d);}(_0xd73a,0x171));var _0xad73=function(_0x172b7a,_0xead108){_0x172b7a=_0x172b7a-0x0;var _0x42c484=_0xd73a[_0x172b7a];return _0x42c484;};'use strict';var _=require(_0xad73('0x0'));var Redis=require(_0xad73('0x1'));var logger=require(_0xad73('0x2'))(_0xad73('0x3'));var config=require(_0xad73('0x4'));var db=require('../../mysqldb')['db'];var socket=require('socket.io-emitter')(new Redis(config[_0xad73('0x5')]));require(_0xad73('0x6'))[_0xad73('0x7')](socket);config[_0xad73('0x5')]=_[_0xad73('0x8')](config[_0xad73('0x5')],{'host':_0xad73('0x9'),'port':0x18eb});function respondWithResult(_0x2f4736,_0x24d620){_0x24d620=_0x24d620||0xc8;return function(_0x15cf28){if(_0x15cf28){return _0x2f4736[_0xad73('0xa')](_0x24d620)['json'](_0x15cf28);}};}function saveUpdates(_0x39cd6d){return function(_0x55a66c){if(_0x55a66c){return _0x55a66c[_0xad73('0xb')](_0x39cd6d)[_0xad73('0xc')](function(_0x20222b){return _0x20222b;});}return null;};}function handleEntityNotFound(_0x5c3760){return function(_0x957fd4){if(!_0x957fd4){_0x5c3760['sendStatus'](0x194);}return _0x957fd4;};}function handleError(_0x3d5ee5,_0x5eae26){_0x5eae26=_0x5eae26||0x1f4;return function(_0x2b2f33){logger[_0xad73('0xd')](_0x2b2f33[_0xad73('0xe')]);if(_0x2b2f33['name']){delete _0x2b2f33[_0xad73('0xf')];}_0x3d5ee5[_0xad73('0xa')](_0x5eae26)['send'](_0x2b2f33);};}exports[_0xad73('0xb')]=function(_0xadb4c0,_0x2ba4d5){if(_0xadb4c0[_0xad73('0x10')][_0xad73('0x11')]!==_0xad73('0x12'))throw new Error('Unauthorized');if(isNaN(Number(_0xadb4c0[_0xad73('0x13')]['id'])))throw new Error(_0xad73('0x14'));return db[_0xad73('0x15')][_0xad73('0x16')]({'where':{'id':_0xadb4c0[_0xad73('0x13')]['id']}})[_0xad73('0xc')](handleEntityNotFound(_0x2ba4d5,null))[_0xad73('0xc')](saveUpdates(_0xadb4c0[_0xad73('0x17')],null))[_0xad73('0xc')](respondWithResult(_0x2ba4d5,null))[_0xad73('0x18')](handleError(_0x2ba4d5,null));};