Built motion from commit (unavailable).|2.5.9
[motion2.git] / server / api / intDeskField / intDeskField.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 _0x07cb=['show','params','keys','length','include','find','create','body','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','ejs','crypto','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','update','destroy','then','error','name','send','index','map','DeskField','rawAttributes','type','query','filters','intersection','attributes','model','fields','hasOwnProperty','nolimit','order','sort','where','filter','VIRTUAL','merge','options','findAll','rows','catch'];(function(_0x556bb1,_0x34830d){var _0x45455f=function(_0x13c6ba){while(--_0x13c6ba){_0x556bb1['push'](_0x556bb1['shift']());}};_0x45455f(++_0x34830d);}(_0x07cb,0x1ac));var _0xb07c=function(_0x5f0305,_0x4bdfa8){_0x5f0305=_0x5f0305-0x0;var _0x344ecf=_0x07cb[_0x5f0305];return _0x344ecf;};'use strict';var pdf=require(_0xb07c('0x0'));var emlformat=require(_0xb07c('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xb07c('0x2'));var jsonpatch=require(_0xb07c('0x3'));var rp=require(_0xb07c('0x4'));var moment=require(_0xb07c('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xb07c('0x6'));var util=require(_0xb07c('0x7'));var path=require(_0xb07c('0x8'));var sox=require(_0xb07c('0x9'));var csv=require(_0xb07c('0xa'));var ejs=require(_0xb07c('0xb'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0xb07c('0xc'));var jsforce=require('jsforce');var deskjs=require(_0xb07c('0xd'));var toCsv=require(_0xb07c('0xa'));var querystring=require('querystring');var Papa=require(_0xb07c('0xe'));var Redis=require(_0xb07c('0xf'));var authService=require(_0xb07c('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0xb07c('0x11'));var hardwareService=require(_0xb07c('0x12'));var logger=require('../../config/logger')('api');var utils=require(_0xb07c('0x13'));var config=require(_0xb07c('0x14'));var licenseUtil=require(_0xb07c('0x15'));var db=require(_0xb07c('0x16'))['db'];function respondWithStatusCode(_0x2e1817,_0x1a9774){_0x1a9774=_0x1a9774||0xcc;return function(_0x1d3fec){if(_0x1d3fec){return _0x2e1817[_0xb07c('0x17')](_0x1a9774);}return _0x2e1817[_0xb07c('0x18')](_0x1a9774)[_0xb07c('0x19')]();};}function respondWithResult(_0x3b53f4,_0x182374){_0x182374=_0x182374||0xc8;return function(_0x535b12){if(_0x535b12){return _0x3b53f4[_0xb07c('0x18')](_0x182374)[_0xb07c('0x1a')](_0x535b12);}};}function respondWithFilteredResult(_0x27aec8,_0x1906e7){return function(_0x1e9f3d){if(_0x1e9f3d){var _0x1b4c31=_0x1e9f3d[_0xb07c('0x1b')],_0x9e02c8=_0x1906e7[_0xb07c('0x1c')],_0x5079ee=_0x1906e7['offset']+_0x1906e7[_0xb07c('0x1d')],_0x4c5512;if(_0x5079ee>=_0x1b4c31){_0x5079ee=_0x1b4c31;_0x4c5512=0xc8;}else{_0x4c5512=0xce;}_0x27aec8['status'](_0x4c5512);return _0x27aec8[_0xb07c('0x1e')](_0xb07c('0x1f'),_0x9e02c8+'-'+_0x5079ee+'/'+_0x1b4c31)[_0xb07c('0x1a')](_0x1e9f3d);}return null;};}function patchUpdates(_0x532c14){return function(_0x22782f){try{jsonpatch[_0xb07c('0x20')](_0x22782f,_0x532c14,!![]);}catch(_0x57db60){return BPromise['reject'](_0x57db60);}return _0x22782f['save']();};}function saveUpdates(_0x57017e,_0x27320e){return function(_0x487441){if(_0x487441){return _0x487441[_0xb07c('0x21')](_0x57017e)['then'](function(_0xa4808f){return _0xa4808f;});}return null;};}function removeEntity(_0x56bc3a,_0x2751bb){return function(_0x126a99){if(_0x126a99){return _0x126a99[_0xb07c('0x22')]()[_0xb07c('0x23')](function(){_0x56bc3a[_0xb07c('0x18')](0xcc)[_0xb07c('0x19')]();});}};}function handleEntityNotFound(_0x34c1ac,_0x2a2094){return function(_0xbb6777){if(!_0xbb6777){_0x34c1ac['sendStatus'](0x194);}return _0xbb6777;};}function handleError(_0xc74ee8,_0x4d85a4){_0x4d85a4=_0x4d85a4||0x1f4;return function(_0x50145c){logger[_0xb07c('0x24')](_0x50145c['stack']);if(_0x50145c[_0xb07c('0x25')]){delete _0x50145c['name'];}_0xc74ee8['status'](_0x4d85a4)[_0xb07c('0x26')](_0x50145c);};}exports[_0xb07c('0x27')]=function(_0x343782,_0x12e82a){var _0x3e7cf7={},_0x1ba9ba={},_0x4f552c={'count':0x0,'rows':[]};var _0x28f1d=_[_0xb07c('0x28')](db[_0xb07c('0x29')][_0xb07c('0x2a')],function(_0x1b6755){return{'name':_0x1b6755['fieldName'],'type':_0x1b6755[_0xb07c('0x2b')]['key']};});_0x1ba9ba['model']=_['map'](_0x28f1d,_0xb07c('0x25'));_0x1ba9ba[_0xb07c('0x2c')]=_['keys'](_0x343782[_0xb07c('0x2c')]);_0x1ba9ba[_0xb07c('0x2d')]=_[_0xb07c('0x2e')](_0x1ba9ba['model'],_0x1ba9ba[_0xb07c('0x2c')]);_0x3e7cf7[_0xb07c('0x2f')]=_['intersection'](_0x1ba9ba[_0xb07c('0x30')],qs['fields'](_0x343782[_0xb07c('0x2c')][_0xb07c('0x31')]));_0x3e7cf7[_0xb07c('0x2f')]=_0x3e7cf7[_0xb07c('0x2f')]['length']?_0x3e7cf7['attributes']:_0x1ba9ba[_0xb07c('0x30')];if(!_0x343782[_0xb07c('0x2c')][_0xb07c('0x32')](_0xb07c('0x33'))){_0x3e7cf7['limit']=qs[_0xb07c('0x1d')](_0x343782[_0xb07c('0x2c')][_0xb07c('0x1d')]);_0x3e7cf7['offset']=qs[_0xb07c('0x1c')](_0x343782[_0xb07c('0x2c')][_0xb07c('0x1c')]);}_0x3e7cf7[_0xb07c('0x34')]=qs[_0xb07c('0x35')](_0x343782[_0xb07c('0x2c')]['sort']);_0x3e7cf7[_0xb07c('0x36')]=qs[_0xb07c('0x2d')](_['pick'](_0x343782[_0xb07c('0x2c')],_0x1ba9ba[_0xb07c('0x2d')]),_0x28f1d);if(_0x343782['query'][_0xb07c('0x37')]){_0x3e7cf7['where']=_['merge'](_0x3e7cf7[_0xb07c('0x36')],{'$or':_[_0xb07c('0x28')](_0x28f1d,function(_0x272f61){if(_0x272f61[_0xb07c('0x2b')]!==_0xb07c('0x38')){var _0x92d08f={};_0x92d08f[_0x272f61[_0xb07c('0x25')]]={'$like':'%'+_0x343782['query']['filter']+'%'};return _0x92d08f;}})});}_0x3e7cf7=_[_0xb07c('0x39')]({},_0x3e7cf7,_0x343782[_0xb07c('0x3a')]);var _0x15aec1={'where':_0x3e7cf7[_0xb07c('0x36')]};return db[_0xb07c('0x29')]['count'](_0x15aec1)['then'](function(_0x5e0e25){_0x4f552c[_0xb07c('0x1b')]=_0x5e0e25;if(_0x343782[_0xb07c('0x2c')]['includeAll']){_0x3e7cf7['include']=[{'all':!![]}];}return db[_0xb07c('0x29')][_0xb07c('0x3b')](_0x3e7cf7);})[_0xb07c('0x23')](function(_0x568b1b){_0x4f552c[_0xb07c('0x3c')]=_0x568b1b;return _0x4f552c;})['then'](respondWithFilteredResult(_0x12e82a,_0x3e7cf7))[_0xb07c('0x3d')](handleError(_0x12e82a,null));};exports[_0xb07c('0x3e')]=function(_0x4bb0b9,_0x61e068){var _0x3c62a7={'raw':!![],'where':{'id':_0x4bb0b9[_0xb07c('0x3f')]['id']}},_0x1583af={};_0x1583af[_0xb07c('0x30')]=_[_0xb07c('0x40')](db[_0xb07c('0x29')][_0xb07c('0x2a')]);_0x1583af[_0xb07c('0x2c')]=_[_0xb07c('0x40')](_0x4bb0b9[_0xb07c('0x2c')]);_0x1583af['filters']=_['intersection'](_0x1583af[_0xb07c('0x30')],_0x1583af[_0xb07c('0x2c')]);_0x3c62a7[_0xb07c('0x2f')]=_['intersection'](_0x1583af[_0xb07c('0x30')],qs['fields'](_0x4bb0b9[_0xb07c('0x2c')][_0xb07c('0x31')]));_0x3c62a7[_0xb07c('0x2f')]=_0x3c62a7[_0xb07c('0x2f')][_0xb07c('0x41')]?_0x3c62a7[_0xb07c('0x2f')]:_0x1583af[_0xb07c('0x30')];if(_0x4bb0b9[_0xb07c('0x2c')]['includeAll']){_0x3c62a7[_0xb07c('0x42')]=[{'all':!![]}];}_0x3c62a7=_[_0xb07c('0x39')]({},_0x3c62a7,_0x4bb0b9[_0xb07c('0x3a')]);return db[_0xb07c('0x29')][_0xb07c('0x43')](_0x3c62a7)[_0xb07c('0x23')](handleEntityNotFound(_0x61e068,null))[_0xb07c('0x23')](respondWithResult(_0x61e068,null))[_0xb07c('0x3d')](handleError(_0x61e068,null));};exports['create']=function(_0x529031,_0x185fa1){return db[_0xb07c('0x29')][_0xb07c('0x44')](_0x529031[_0xb07c('0x45')],{})[_0xb07c('0x23')](respondWithResult(_0x185fa1,0xc9))[_0xb07c('0x3d')](handleError(_0x185fa1,null));};exports['update']=function(_0x2e673e,_0x199b67){if(_0x2e673e[_0xb07c('0x45')]['id']){delete _0x2e673e[_0xb07c('0x45')]['id'];}return db[_0xb07c('0x29')][_0xb07c('0x43')]({'where':{'id':_0x2e673e['params']['id']}})[_0xb07c('0x23')](handleEntityNotFound(_0x199b67,null))['then'](saveUpdates(_0x2e673e[_0xb07c('0x45')],null))[_0xb07c('0x23')](respondWithResult(_0x199b67,null))[_0xb07c('0x3d')](handleError(_0x199b67,null));};exports['destroy']=function(_0x5412ae,_0x5355da){return db[_0xb07c('0x29')][_0xb07c('0x43')]({'where':{'id':_0x5412ae[_0xb07c('0x3f')]['id']}})['then'](handleEntityNotFound(_0x5355da,null))[_0xb07c('0x23')](removeEntity(_0x5355da,null))['catch'](handleError(_0x5355da,null));};